Documento de API
Produto: | Datasul |
Ocorrência: | Documentação de API |
Nome Físico | imp/imapi006.p |
Objetivo: para cada despesa já cotada e nas despesas influenciadas por esta, recalcula o valor da despesa caso o mapa e a cotação estiverem aprovados, ou marca para ser recalculada, caso não estiverem.
Considerações Gerais:
Esta API irá receber como parâmetro a despesa que foi alterada, quando o campo alterado impactar em recálculo do valor de alguma outra despesa influenciada, esta situação ocorrerá em 2 situações:
1. Quando a despesa alterada fizer parte da fórmula de outra, assim, a despesa principal deverá ser recalculada, caso o mapa de cotação e a própria cotação em compras estiverem aprovados, ou simplesmente marcada para ser recalculada, caso contrário.
2. Quando no mapa existirem despesas de impostos (II, IPI, ICMS, PIS ou COFINS), e a despesa alterada influencia na base de cálculo de um destes impostos.
Serão pesquisadas todas as despesas do mapa, e como um mapa de cotação pode ter duas origens (cotacao-item-cex ou desp-cot-ordem), faze-se necessário passar os parâmetros conforme exemplos abaixo:
Exemplo 1:
RUN imp/imapi006.p (INPUT “cotacao-item-cex”,
INPUT ROWID(cotacao-item-cex),
INPUT cotacao-item-cex.cod-desp,
INPUT 0,
INPUT-OUTPUT tt-desp-ja-recalc).
Exemplo 2:
RUN imp/imapi006.p (INPUT “desp-cot-ordem”,
INPUT ROWID(desp-cot-ordem),
INPUT desp-cot-ordem.cod-desp,
INPUT 0,
INPUT-OUTPUT tt-desp-ja-recalc).
- Como esta api não depende de procedimentos anteriores, não será feita nenhuma validação, apenas será verificada a integridade da base, e como entende-se que se a base não estiver íntegra, o problema é na base de dados, não será tratado nenhum tipo de erro. Porém se a base não estiver íntegra, será retornado “NOK” no RETURN-VALUE, desta api.
- Esta api utiliza recursividade (a api chama ela própria), e os 2 últimos parâmetros passados são exclusivos deste recurso.
Parâmetros de Entrada/Saída
input p-table-name: parâmetro com o nome da tabela tomada como base para buscar as despesas do mapa.
Input p-rowid-table: parâmetro com o rowid da tabela base.
Input p-cod-desp-original: este parâmetro será sempre passado igual a zero. (utilizado para tratar recursividade).
Input-output table: parâmetro com a temp-table tt-desp-já-recalc (utilizado para tratar recursividade).
Atributo | Tipo | Formato | Valor Inicial | Obrigatório |
p-table-name | Char | X(30) | Não | Sim |
p-rowid-table | Rowid | | Não | Sim |
p-cod-desp-alterada | Integer | Like desp-imp.cod-desp | Não | sim |
p-cod-desp-original | Integer | Like desp-imp.cod-desp | Não | sim |
tt-desp-ja-recalc | | | | |
#trackbackRdf ($trackbackUtils.getContentIdentifier($page) $page.title $trackbackUtils.getPingUrl($page))