Ponto-de-Entrada: MTA190D1 - Manipulação do valor do custo do Documento de Entrada
Versões: | Microsiga Protheus 10, Microsiga Protheus 11, Microsiga Protheus 12 |
Compatível Países: | Todos |
Sistemas Operacionais: | Todos |
Compatível às Bases de Dados: | Todos |
Idiomas: | Espanhol , Inglês |
Descrição: Manipula valores de custo da NF de entrada (SD1).
Localização: Function Recalc() - Responsável por recalcular o custo de entrada.
Em que ponto: O ponto é acionado antes de regravar o custo no arquivo de itens de NF de entrada (SD1).
Programa Fonte:MATA190.PRX
Sintaxe: MTA190D1() - Manipulação do valor do custo da NF de entrada ( < PARAMIXB> ) --> aRet
Parâmetros:
Nome | Tipo | Descrição | Default | Obrigatório | Referência | ||||||||||||
PARAMIXB[1] | Vetor | O programa recebe como parâmetro um array contendo os custos que serão gravados pelo sistema no arquivo SD1. | X | ||||||||||||||
PARAMIXB[2] | Vetor | O programa recebe como parâmetro um array contendo os custos, número da nota, série e número do item. |
Retorno: aRet
Exemplo
#INCLUDE "PROTHEUS.CH" User Function MTA190D1() Local aCustEnt := PARAMIXB[1] Local aItem := PARAMIXB[2] local nCusto1 local ncusto2 local ncusto3 local ncusto4 local ncusto5 local cDoc local cSerie local nitem local aCusRet aCusRet := aclone(aCustEnt) //ordenação do array n = D1_FILIAL+D1_DOC+D1_SERIE+D1_FORNECE+D1_LOJA+D1_COD+D1_ITEM nCusto1 := aCustEnt [n,1] nCusto2 := aCustEnt [n,2] nCusto3 := aCustEnt [n,3] nCusto4 := aCustEnt [n,4] nCusto5 := aCustEnt [n,5] // aItem mesma ordenação n = D1_FILIAL+D1_DOC+D1_SERIE+D1_FORNECE+D1_LOJA+D1_COD+D1_ITEM porem com referencia da nota e item nCusto1 := aItem [n,1] nCusto2 := aItem [n,2] nCusto3 := aItem [n,3] nCusto4 := aItem [n,4] nCusto5 := aItem [n,5] cDoc := aItem [n,6,1] cSerie := aItem [n,6,2] nItem := aItem [n,6,3] // IMPORTANTE não mudar a ordenação do array de saida aCusret [n,1] := aCustEnt [n,1] //ou aItem [n,1] aCusret [n,2] := aCustEnt [n,2] //ou aItem [n,2] aCusret [n,3] := aCustEnt [n,3] //ou aItem [n,3] aCusret [n,4] := aCustEnt [n,4] //ou aItem [n,1] aCusret [n,5] := aCustEnt [n,5] //ou aItem [n,1] return (aCusret)
Observações: Cada elemento do PARAMIXB[1] se refere ao item na SD1, a ordenação do index é D1_FILIAL+D1_DOC+D1_SERIE+D1_FORNECE+D1_LOJA+D1_COD+D1_ITEM. O ponto de entrada deve retornar o array com o custo nas 5 moedas. No PARAMIXB[2], segue o mesmo index do PARAMIXB[1], porém, contém os valores D1_DOC, D1_SERIE e D1_ITEM.
Visão Geral
Import HTML Content
Conteúdo das Ferramentas
Tarefas