API para verificação de pendência MLA
Produto: | Datasul |
Ocorrência: | Documentação de API |
Nome Físico | lap/mlaapi015.p |
Objetivo
Verificação e retorno de informações no MLA (por documento).
Funcionamento
A API verifica se existem pendências de aprovação no MLA e as retorna se requisitado.
A sintaxe para a chamada da API, que deve ser de forma persistente:
run lap/mlaapi015.p persistent set h-handle. |
A variável denominada h-handle irá receber o “handle” do programa, permitindo o acesso aos “métodos” internos da API.
Método Negócio
Quando a API estiver executada em modo persistente, os seguintes métodos estarão disponíveis para execução:
pi-verifica-pendencia | ||
Requisito | Nenhum | |
Sintaxe | RUN pi-verifica-pendencia IN h-handle(INPUT p-cod-tip-doc, INPUT p-ep-codigo, INPUT p-cod-estabel, INPUT TABLE tt-mla-chave, INPUT p-somente-pendentes, OUTPUT p-existe-pendencia). | |
Descrição | Verificar se existem pendências de aprovação para o documento em questão. | |
Parâmetros | Descrição | |
p-cod-tip-doc (INTEGER) p-ep-codigo (CHARACTER) p-cod-estabel (CHARACTER) tt-mla-chave (TEMP-TABLE) p-somente-pendentes (LOGICAL) p-existe-pendencia (LOGICAL) | Código do documento Código da empresa (opcional: Somente será considerado na leitura se for diferente de branco ("")) Código do estabelecimento (opcional: Somente será considerado na leitura se for diferente de branco ("")) Chave do documento Indica que a API irá considerar apenas registros que estejam pendentes de aprovação na verificação Indica se existem pendências para o documento | |
Retorno | Retorna uma variável lógica identificando se existem pendências para o documento. |
pi-retorna-pendencia | ||
Requisito | Nenhum | |
Sintaxe | RUN pi-retorna-pendencia IN h-handle(INPUT p-cod-tip-doc, INPUT p-ep-codigo, INPUT p-cod-estabel, INPUT TABLE tt-mla-chave, INPUT p-somente-pendentes, iNPUT p-considera-historico, OUTPUT TABLE tt-pendencias). | |
Descrição | Retornar as pendências de aprovação para o documento em questão. | |
Parâmetros | Descrição | |
p-cod-tip-doc (INTEGER) p-ep-codigo (CHARACTER) p-cod-estabel (CHARACTER) tt-mla-chave (TEMP-TABLE) p-somente-pendentes (LOGICAL) p-considera-historico (LOGICAL) tt-pendencias (TEMP-TABLE) | Código do documento Código da empresa (opcional: Somente será considerado na leitura se for diferente de branco ("")) Código do estabelecimento (opcional: Somente será considerado na leitura se for diferente de branco ("")) Chave do documento Indica que a API irá considerar apenas registros que estejam pendentes de aprovação na verificação Indica se deve ser considerados os registros de histórico de aprovação Registros de pendências do documento em questão | |
Retorno | Retorna uma temp-table contendo as pendências de aprovação do documento. |
pi-gera-chave | ||
Requisito | Nenhum | |
Sintaxe | RUN pi-gera-chave IN h-handle(INPUT p-cod-tip-doc, INPUT TABLE tt-mla-chave, OUTPUT pc-chave). | |
Descrição | Gerar e retornar a chave da pendência do documento. | |
Parâmetros | Descrição | |
p-cod-tip-doc (INTEGER) tt-mla-chave (TEMP-TABLE) p-chave (CHARACTER): | Código do documento Chave do documento Chave do documento gerada | |
Retorno | Retorna uma variável caractere com a chave do documento formatada. |
Tabelas Temporárias
tt-pendencias | Entrada/Saída | ||||
Registros pendêntes de aprovação | Entrada/Saída | ||||
Atributo | Tipo | Formato | Descrição | Obrigatório | Evolução |
cod-tip-doc | INTEGER | >>9 | Documento | Sim |
|
chave-doc | CHARACTER | X(40) | Chave Documento | Não |
|
nr-trans | INTEGER | >>>,>>>,>>9 | Transação | Sim |
|
ind-situacao | INTEGER | >9 | Situação | Não |
|
cod-usuar | CHARACTER | X(12) | Aprovador | Não |
|
cod-usuar-altern | CHARACTER | X(12) | Alternativo | Não |
|
dt-geracao | DATE | 99/99/9999 | Geração | Não |
|
dt-aprova | DATE | 99/99/9999 | Aprovação | Não |
|
dt-rejeita | DATE | 99/99/9999 | Rejeição | Não |
|
dt-reaprova | DATE | 99/99/9999 | Reaprovação | Não |
|
cod-rejeicao | INTEGER | >9 | Rej | Não |
|
narrativa-apr | CHARACTER | X(2000) | Aprovação | Não |
|
narrativa-rej | CHARACTER | X(2000) | Rejeição | Não |
|
cod-tip-aprov | INTEGER | >9 | Código | Não |
|
ind-tip-aprov | INTEGER | >9 | Tipo | Não |
|
cod-lotacao-trans | CHARACTER | x(20) | Lotação Trans | Não |
|
num-faixa | INTEGER | >9 | Faixa | Não |
|
seq-aprov | INTEGER | >9 | Sequência | Não |
|
aprov-auto | LOGICAL | Sim/Não | Automática | Não |
|
motivo-doc | CHARACTER | X(40) | Motivo | Não |
|
valor-doc | DECIMAL | ->>>>,>>>,>>>,>>9.99 | Valor | Não |
|
cod-usuar-doc | CHARACTER | X(12) | Usuário Doc | Não |
|
mo-codigo | INTEGER | >9 | Moeda | Não |
|
historico | LOGICAL | Sim/Não | Histórico | Não |
|
cod-lotacao-doc | CHARACTER | x(20) | Lotação Doc | Não |
|
cod-usuar-trans | CHARACTER | X(12) | Usuário Trans | Não |
|
it-codigo | CHARACTER | X(16) | Item | Não |
|
prioridade-aprov | INTEGER | >9 | Prioridade | Não |
|
motivo-hist | CHARACTER | X(40) | Histórico | Não |
|
hora-geracao | CHARACTER | X(8) | Hora | Não |
|
char-1 | CHARACTER | x(100) | Campo livre char 1 | Não |
|
char-2 | CHARACTER | x(100) | Campo livre char 2 | Não |
|
dec-1 | DECIMAL | ->>>>>>>>>>>9.99999999 | Campo livre dec 1 | Não |
|
dec-2 | DECIMAL | ->>>>>>>>>>>9.99999999 | Campo livre dec 2 | Não |
|
int-1 | INTEGER | >>>>>>>>>9 | Campo livre int 1 | Não |
|
int-2 | INTEGER | >>>>>>>>>9 | Campo livre int 2 | Não |
|
log-1 | LOGICAL | Sim/Não | Campo livre log 1 | Não |
|
log-2 | LOGICAL | Sim/Não | Campo livre log 2 | Não |
|
data-1 | DATE | 99/99/9999 | Campo livre date 1 | Não |
|
data-2 | DATE | 99/99/9999 | Campo livre date 2 | Não |
|
seq-log-aprov | INTEGER | >>>>>>>>9 | Processo | Não |
|
char-3 | CHARACTER | x(100) | Campo livre char 3 | Não |
|
char-4 | CHARACTER | x(100) | Campo livre char 4 | Não |
|
char-5 | CHARACTER | x(100) | Campo livre char 5 | Não |
|
dec-3 | DECIMAL | ->>>>>>>>>>>9.99999999 | Campo livre dec 3 | Não |
|
dec-4 | DECIMAL | ->>>>>>>>>>>9.99999999 | Campo livre dec 4 | Não |
|
dec-5 | DECIMAL | ->>>>>>>>>>>9.99999999 | Campo livre dec 5 | Não |
|
int-3 | INTEGER | >>>>>>>>9 | Campo livre int 3 | Não |
|
int-4 | INTEGER | >>>>>>>>9 | Campo livre int 4 | Não |
|
int-5 | INTEGER | >>>>>>>>9 | Campo livre int 5 | Não |
|
log-3 | LOGICAL | Sim/Não | Campo livre log 3 | Não |
|
log-4 | LOGICAL | yes/no | Campo livre log 4 | Não |
|
log-5 | LOGICAL | yes/no | Campo livre log 5 | Não |
|
data-3 | DATE | 99/99/9999 | Campo livre date 3 | Não |
|
data-4 | DATE | 99/99/9999 | Campo livre date 4 | Não |
|
data-5 | DATE | 99/99/9999 | Campo livre date 5 | Não |
|
ep-codigo | CHARACTER | x(3) | Empresa | Não |
|
cod-estabel | CHARACTER | x(5) | Estabelecimento | Não |
|
cod-referencia | CHARACTER | x(20) | Referência | Não |
|
num-priorid-aprova-docto | INTEGER | 999 | Priorid. Aprova Doct | Não |
|
cod-cond-pagto | CHARACTER | >>9 | Condição de Pagamento | Não |
|
tt-mla-chave | Entrada/Saída | ||||
Temp-table com as chaves do documento | Entrada | ||||
Atributo | Tipo | Formato | Descrição | Obrigatório | Evolução |
valor | CHARACTER (EXTENT 10) | x(20) | Valor da chave | Sim |
|
Exemplo de criação para o documento 1 (Solicitação de Compra - Item):
/* Localizar o registro da tabela requisicao e it-requisicao */
create tt-mla-chave.
assign tt-mla-chave.valor[1] = string(requisicao.nr-requisicao)
tt-mla-chave.valor[2] = string(it-requisicao.sequencia)
tt-mla-chave.valor[3] = string(it-requisicao.it-codigo).