Ponto entrada > Módulo Vendas > Tratamento standard TRTVENPRI 

CALPFM : Acréscimo de um custo suplementar ao preço de custo calculado antes cál

Este ponto de entrada afeta o cálculo da margem das vendas.

Permite acrescentar um custo suplementar ao preço de custo calculado por X3 antes o cálculo da margem.

É chamado em cada tratamento efetuando um cálculo de margem.

Contexto e modo de funcionamento.

Transação

Não existe transação em curso quando o ponto de entrada está chamado depois o registo de uma linha (orçamento, encomenda, fatura, nota de crédito).

Existe uma transação em curso quando o ponto de entrada está chamado depois :

.          O botão entrega depois a gestão encomenda, o botão validação depois a gestão entrega

As funções entrega automática das encomendas, validação automática das entregas.

.          O botão fatura depois a gestão encomenda, o botão validação depois a gestão fatura

As funções faturação automática das encomendas, validação automática das faturas.

.          A gestão dos contratos.

           A criação de uma linha de nota de crédito com movimento de stock

A janela de modificação das saídas de stock em gestão das entregas.

A função de pagamento dos preços

Ficheiro rasto

Não existe ficheiro rasto aberto quando o ponto de entrada foi chamado no registo de uma linha (orçamento, encomenda, entrega, fatura, nota de crédito), a criação de uma linha de nota de crédito com movimento de stock, a janela de modificação das saídas de stock em gestão das entregas.

Existe um ficheiro rasto aberto quando se está nas funções de entrega ou faturação automática das encomendas, validação automatica das entregas ou das faturas, pagamento dos preços.

Diferentes casos de chamada - Variáveis e mascaras disponíveis

Uma variável global "GCALPFM" permite de identificar estes diferentes casos de chamadas.     

            GCALPFM = 0           Registo linha orçamento, encomenda, entrega, fatura ou nota de crédito.

            GCALPFM = 1           Botão "entrega" ou função "entrega automática"

            GCALPFM = 2           Botão "validação entrega" ou função "Validação das entregas"

            GCALPFM = 3           Botão "fatura" (depois uma encomenda) ou função "faturação automática das encomendas"

            GCALPFM = 4           Botão "validação fatura" ou função "validação das faturas"

            GCALPFM = 5          Registo dos contratos

            GCALPFM = 6          Criação de uma linha de nota de crédito com movimento de stock

            GCALPFM = 7          Janela de modificação das saídas de stock em gestão das entregas.

            GCALPFM = 8          Função de regularização dos preços

Poderá então ser necessário de testar esta variável para utilizar o bom contexto.

Este ponto de entrada é chamado :

.           No caso de sub-programa de cálculo da margem ( GCALPFM=0 )

Este sub-programa é um sub-programa comum a todas as funções de venda Está chamado em cada registo de uma linha (orçamento, encomenda, entrega, fatura, nota de crédito), cada vez que é necessário de recalcular a margem :

Após registo da quantidade

Efetua-se a pesquisa tarifa cujo se recupera o preço bruto. Calcula-se em seguida o preço líquido e logo a margem

Após modificação do preço bruto ou de uma coluna despesas/desconto. Uma tal modificação engendra um recálculo do preço líquido e por consequência um recálculo da margem.

Após validação da linha

A classe ecrã ligada ao objecto tratado está carregada ([M:SQH], [M:SOH], [M:SDH], [M:SIH]). Encontra-se ao interior do sub-programa CALPFM

As variáveis seguintes são as variáveis passadas em parâmetro do sub-programa :

·               MSK               :           Classe ecrã (Se não preenchido, MSK está carregado com [M])

·               NLIG               :           Índice da linha no quadro.

·               PRI                 :           Preço líquido da linha

·               VAT                :           Quadro dos 3 códigos taxas da linha (VAT(0), VAT(1), VAT(2))

·               PRITYP          :           Tipo de preço do documento

·               SIT                  :           Estabelecimento de stock

LITM :Referência artigo

·               CHGTYP        :           Tipo de cursos

DAT: Data do documento

         CUR               :           Divisa do documento

COEF : Coeficiente de conversão unidade de enc/unidade de stock da linha

·               INICPRPRI      :           "Flag" inicio do preço de custo (0=Sem início,1=Inic sem caz,2=Inic com caz)

·               XSTOMGTCOD :           "Flag" atualização dos stocks

As variáveis seguintes são variáveis de trabalho calculadas pelos sub-programas :

·               PHTNET         :           Prieço líquido servindo ao cálculo da margem (preço líquido)

WQTY: Quantidade em unidade de stock

·               COUTHT        :           Preço de custo calculado

As variáveis seguintes são variáveis calculadas e reenviadas pelos sub-programas :

·               XPFM             :           Margem

·               XCPRPRI        :           Preço de custo

O cálculo da margem e então o ponto de entrada são chamados unicamente quando a variável INICPRPRI está igual a 1 ou 2.

 .           No momento de entrega de uma encomenda por botão ou para a função de entrega automática ( GCALPFM=1 )

O recálculo da margem se efetua no momento de alimentação da linha detalhe a partir da linha detalhe encomenda no momento da criação de uma linha de entrega. Situa-se justo antes o registo da linha detalhe entrega.

Os buffers [F :SOH], [F :SOQ], [F :SOP] são carregados com a encomenda a entregar. [F :SDH], [F :SDD] são carregados com a entrega em curso de criação Os buffers [F :ITM], [F :ITS], estão carregados com o artigo.

.           No momento da validação de uma entrega por botão ou para a função validação automática das entregas ( GCALPFM=2 )

O recálculo da margem se efetua para os artigos geridos em stock, antes a atualização dos stocks

Os buffers [F :SDH], [F :SDD] estão carregados assim que os buffers [F :ITM], [F :ITS].

.           No momento da faturação de um encomenda por botão ou para a função de faturação automática das encomendas   ( GCALPFM=3 ) 

O cálculo da margem se efetua no momento de alimentação da linha detalhe fatura a partir da linha detalhe encomenda no momento da criação de uma linha de fatura. Situa-se justo antes o registo da linha detalhe entrega.

Os buffers [F :SOH], [F :SOP], [F :SOQ] são carregados com a encomenda a faturar. [F :SIH], [F :SIV], [F :SID] são carregados com a fatura em curso de criação. Os buffers [F :ITM], [F :ITS], estão carregados com o artigo.

.           No momento da validação de uma fatura por botão ou para a função validação automática das faturas ( GCALPFM=4 )

O recálculo da margem se efetua para as faturas de encomendas, para os artigos geridos em stock, e isto antes a atualização dos stocks.

Os buffers [F :SIH], [F :SIV], [F :SDD] estão carregados assim que os buffers [F :ITM], [F :ITS].

.           Na gestão dos contratos (GCALPFM=5)

O recálculo da margem se efetua no momento da modificação de um contrato se o regime de taxa foi modificado. Com efeito, é necessário, para cada linha artigo, de refazer a pesquisa dos códigos taxas. Se as linhas de preço foram registadas para esta linha artigo, falta igualmente recalcular os preços líquido e bruto e a margem.

Este tratamento se efetua no momento do registo da modificação, numa transação de atualização do contrato, ao nível da ação AVANT_MODFIC.

Os buffers [F :SOH], [F :SOC], [F :SOP] estão carregados com o contrato, a linha artigo e a linha de preço A classe ecrã [M:SOR1] está igualmente carregada com o contrato. Os buffers [F :ITM], [F :ITS], estão carregados com o artigo.

.           No momento de criação de uma linha de nota de crédito com movimento de stock para um artigo cuja base de cálculo de margem é o preço médio lote ( GCALPFM=6 ) 

O cálculo da margem está re-efetuado no momento da criação da linha. Neste nível, o contexto não é o mesmo que no momento do registo da linha. O cálculo se efetua na ação INICRE_LIG do objecto, no momento de alimentação da linha detalhe fatura [F:SID] a partir do ecrã [M:SIH4]. A variável NOL (nolign-1) contém o índice da linha em curso de criação de quadro das linhas [M:SIH4].  

Os buffers [F :SIH], [F :SIV], [F :SID] estão carregados com a nota de crédito em curso de criação. Os ecrãs de objeto fatura são carregados com a entrega em curso de criação. Situa-se justo antes registo do registo [F:SID]. Os registos [F :SIH], [F :SIV], estão escritos. Os buffers [F :ITM], [F :ITS], estão carregados com o artigo.

.           No momento da sua modificação das saidas de stocks sobre uma entrega validada depois o click direito sobre as linhas "Modificação das saídas" em gestão das entregas ( GCALPFM=7 )

A modificação das saídas pode registar um recálculo de preço de custo no caso onde se modifica o lote e ou a base de cálculo de margem é o preço médio lote. O cálculo se efetua na ação ENR da ação SAISTOSORM no momento das atualizações complementares efetuadas após registo das modificações nos stocks.

Os buffers [F :SDH], [F :SDD], estão carregados com a entrega. Os buffers [F :ITM], [F :ITS] estão carregados com o artigo. A classe ecrã [M:SOM] (ecrã de modificação das saidas) está em linha.

.           No momento da regularização dos preços depois a função regularização dos preços ( GCALPFM=8 )podendo atualizar o valor dos movimentos de stock ligados a uma entrega

Esta função pode atualizar o valor dos movimentos de stocks ligados a uma entrega. Ela recalcula o PMP assim que as margens.

Os buffers [F :SDH], [F :SDD], estão carregados com a entrega. Os buffers [F :ITM], [F :ITS], estão carregados com o artigo.

Em todos os casos.

A variável COUTHT contém o preço de custo calculado.

O ponto de entrada se situa justo após à chamada ao sub-programa de cálculo do preço de custo e justo antes o cálculo da margem. As variáveis seguintes são utilizadas :

·               WPOINT_COUT (local decimal)      :

Ela está declarada antes a chamada do ponto de entrada. É o custo suplementar a impactar sobre a margem. O ponto de entrada deve alimentar.

·               WPOINT_RET (local integer)                       :

Ela está inicializada a 0 antes a chamada do ponto de entrada. É a variável de estatuto de devolução O ponto de entrada deve posicioná-la a 1 para que WPOINT_COUT seja utilizado.

O ponto de entrada deve então posicionar estas 2 variáveis.

Na saida do ponto de entrada, se WPOINT_RET vale 1, o novo preço de custo está calculado :

COUTHT= COUTHT+WPOINT_COUT

A margem está calculada :

PFM=PHTNET-COUTHT 

Notes importantes           :          

O preço de custo X3 está calculado na divisa da sociedade (dado pela variável global GLOCALDEV). Está convertido na divisa do documento se esta divisa é diferente de GLOCALDEV.

Falta então que WPOINT_COUT seja reenviado na divisa do documento.

O preço de custo X3 está calculado em unidade de stock. É convertido em unidade de encomenda. (Multiplica-se pela variável COEF que é o coeficiente de conversão UV-US)

Falta então que WPOINT_COUT seja enviado em unidade de encomenda.

O sub-programa de cálculo de margem sendo comum a todas as funções, é necessário de conhecer o contexto, falta utilizar a variável GCALPFM tal que indicada anteriormente.

CALPFM1 : Cálculo do preço de custo e da margem

Este ponto de entrada afeta o cálculo do preço de custo e da margem nas vendas.

Permite intervir diretamente sobre o preço de custo calculado e a margem afim de as modificar.

É chamado em cada tratamento efetuando um cálculo de margem.

Contexto e modo de funcionamento.

Transação

Não existe transação em curso quando o ponto de entrada está chamado depois o registo de uma linha (orçamento, encomenda, fatura, nota de crédito).

Existe uma transação em curso quando o ponto de entrada está chamado depois :

.          O botão entrega depois a gestão encomenda, o botão validação depois a gestão entrega

As funções entrega automática das encomendas, validação automática das entregas.

.          O botão fatura depois a gestão encomenda, o botão validação depois a gestão fatura

As funções faturação automática das encomendas, validação automática das faturas.

.          A gestão dos contratos.

           A criação de uma linha de nota de crédito com movimento de stock

A janela de modificação das saídas de stock em gestão das entregas.

A função de pagamento dos preços

Ficheiro rasto

Não existe ficheiro rasto aberto quando o ponto de entrada foi chamado no registo de uma linha (orçamento, encomenda, entrega, fatura, nota de crédito), a criação de uma linha de nota de crédito com movimento de stock, a janela de modificação das saídas de stock em gestão das entregas.

Existe um ficheiro rasto aberto quando se está nas funções de entrega ou faturação automática das encomendas, validação automatica das entregas ou das faturas, regularização dos preços.

Diferentes casos de chamada - Variáveis e mascaras disponíveis

Uma variável global "GCALPFM" permite de identificar estes diferentes casos de chamadas.     

            GCALPFM = 0           Registo linha orçamento, encomenda, entrega, fatura ou nota de crédito.

            GCALPFM = 1           Botão "entrega" ou função "entrega automática"

            GCALPFM = 2           Botão "validação entrega" ou função "Validação das entregas"

            GCALPFM = 3           Botão "fatura" (depois uma encomenda) ou função "faturação automática das encomendas"

            GCALPFM = 4           Botão "validação fatura" ou função "validação das faturas"

            GCALPFM = 5          Registo dos contratos

            GCALPFM = 6          Criação de uma linha de nota de crédito com movimento de stock

            GCALPFM = 7          Janela de modificação das saídas em gestão das entregas.

            GCALPFM = 8          Função de regularização dos preços

Poderá então ser necessário de testar esta variável para utilizar o bom contexto.

 

Este ponto de entrada é chamado :

.           No caso de sub-programa de cálculo da margem ( GCALPFM=0 )

Este sub-programa é um sub-programa comum a todas as funções de venda. Está chamado em cada registo de uma linha (orçamento, encomenda, entrega, fatura, nota de crédito), cada vez que é necessário de recalcular a margem :

Após registo da quantidade

Efetua-se a pesquisa tarifa cujo se recupera o preço bruto. Calcula-se em seguida o preço líquido e logo a margem

Após modificação do preço bruto ou de uma coluna despesas/desconto. Uma tal modificação engendra um recálculo do preço líquido e por consequência um recálculo da margem.

Após validação da linha

A classe ecrã ligada ao objecto tratado está carregada ([M:SQH], [M:SOH], [M:SDH], [M:SIH]). Encontra-se no interior do sub-programa CALPFM

As variáveis seguintes são as variáveis passadas em parâmetro do sub-programa :

·               MSK               :           Classe ecrã (Se não preenchido, MSK está carregado com [M])

·               NLIG               :           Índice da linha no quadro.

·               PRI                 :           Preço líquido da linha

·               VAT                :           Quadro dos 3 códigos taxas da linha (VAT(0), VAT(1), VAT(2))

·               PRITYP          :           Tipo de preço do documento

·               SIT                  :           Estabelecimento de stock

LITM :Referência artigo

·               CHGTYP        :           Tipo de cursos

DAT: Data do documento

         CUR               :           Divisa do documento

COEF : Coeficiente de conversão unidade de enc/unidade de stock da linha

·               INICPRPRI      :           "Flag" inicio do preço de custo (0=Sem início,1=Inic sem caz,2=Inic com caz)

·               XSTOMGTCOD :           "Flag" atualização dos stocks

As variáveis seguintes são variáveis de trabalho calculadas pelos sub-programas :

·               PHTNET         :           Prieço líquido servindo ao cálculo da margem (preço líquido)

WQTY: Quantidade em unidade de stock

·               COUTHT        :           Preço de custo calculado

As variáveis seguintes são variáveis calculadas e reenviadas pelos sub-programas :

·               XPFM             :           Margem

·               XCPRPRI        :           Preço de custo

O ponto de entrada foi chamado qualquer que seja o valor da variável INICPRPRI.

.           No momento de entrega de uma encomenda por botão ou para a função de entrega automática ( GCALPFM=1 )

O recálculo da margem se efetua no momento de alimentação da linha detalhe a partir da linha detalhe encomenda no momento da criação de uma linha de entrega. Situa-se justo antes o registo da linha detalhe entrega.

Os buffers [F :SOH], [F :SOQ], [F :SOP] são carregados com a encomenda a entregar. [F :SDH], [F :SDD] são carregados com a entrega em curso de criação Os buffers [F :ITM], [F :ITS], estão carregados com o artigo.

.           No momento da validação de uma entrega por botão ou para a função validação automática das entregas ( GCALPFM=2 )

O recálculo da margem se efetua para os artigos geridos em stock, antes a atualização dos stocks

Os buffers [F :SDH], [F :SDD] estão carregados assim que os buffers [F :ITM], [F :ITS].

.           No momento da faturação de um encomenda por botão ou para a função de faturação automática das encomendas   ( GCALPFM=3 ) 

O cálculo da margem se efetua no momento de alimentação da linha detalhe fatura a partir da linha detalhe encomenda no momento da criação de uma linha de fatura. Situa-se justo antes o registo da linha detalhe entrega.

Os buffers [F :SOH], [F :SOP], [F :SOQ] estão carregados com a encomenda a faturar. [F :SIH], [F :SIV], [F :SID] são carregados com a fatura em curso de criação. Os buffers [F :ITM], [F :ITS], estão carregados com o artigo.

.           No momento da validação de uma fatura por botão ou para a função validação automática das faturas ( GCALPFM=4 )

O recálculo da margem se efetua para as faturas de encomendas, para os artigos geridos em stock, e isto antes a atualização dos stocks.

Os buffers [F :SIH], [F :SIV], [F :SDD] estão carregados assim que os buffers [F :ITM], [F :ITS].

.           Na gestão dos contratos (GCALPFM=5)

O recálculo da margem se efetua no momento da modificação de um contrato se o regime de taxa foi modificado. Com efeito, é necessário, para cada linha artigo, de refazer a pesquisa dos códigos taxas. Se as linhas de preço foram registadas para esta linha artigo, falta igualmente recalcular os preços líquido e bruto e a margem.

Este tratamento se efetua no momento do registo da modificação, numa transação de atualização do contrato, ao nível da ação AVANT_MODFIC.

Os buffers [F :SOH], [F :SOC], [F :SOP] estão carregados com o contrato, a linha artigo e a linha de preço A classe ecrã [M:SOR1] está igualmente carregada com o contrato. Os buffers [F :ITM], [F :ITS], estão carregados com o artigo.

.           No momento de criação de uma linha de nota de crédito com movimento de stock para um artigo cuja base de cálculo de margem é o preço médio do lote ( GCALPFM=6 ) 

O cálculo da margem está re-efetuado no momento da criação da linha. Neste nível, o contexto não é o mesmo que no momento do registo da linha. O cálculo se efetua na ação INICRE_LIG do objecto, no momento de alimentação da linha detalhe fatura [F:SID] a partir do ecrã [M:SIH4]. A variável NOL (nolign-1) contém o índice da linha em curso de criação de quadro das linhas [M:SIH4].  

Os buffers [F :SIH], [F :SIV], [F :SID] estão carregados com a nota de crédito em curso de criação. Os ecrãs de objeto fatura são carregados com a entrega em curso de criação. Situa-se justo antes da escrita do registo [F:SID]. Os registos [F :SIH], [F :SIV], estão escritos. Os buffers [F :ITM], [F :ITS], estão carregados com o artigo.

.           No momento da sua modificação das saidas de stocks sobre uma entrega validada depois o click direito sobre as linhas "Modificação das saídas" em gestão das entregas ( GCALPFM=7 )

A modificação das saídas pode registar um recálculo de preço de custo no caso onde se modifica o lote e ou a base de cálculo de margem é o preço médio lote. O cálculo se efetua na ação ENR da ação SAISTOSORM no momento das atualizações complementares efetuadas após registo das modificações nos stocks.

Os buffers [F :SDH], [F :SDD], estão carregados com a entrega. Os buffers [F :ITM], [F :ITS] estão carregados com o artigo. A classe ecrã [M:SOM] (ecrã de modificação das saidas) está em linha.

.           No momento da regularização dos preços depois a função regularização dos preços ( GCALPFM=8 )podendo atualizar o valor dos movimentos de stock ligados a uma entrega

Esta função pode atualizar o valor dos movimentos de stocks ligados a uma entrega. Ela recalcula o PMP assim que as margens.

Os buffers [F :SDH], [F :SDD] estão carregados com a entrega assim que os buffers [F :ITM], [F :ITS].

Em todos os casos.

O ponto de entrada se situa justo após à chamada ao sub-programa de cálculo do preço de custo e justo antes o cálculo da margem.

A variável XPFM contém a margem calculada.

A variável XCPRPRI contém o preço de custo calculado.

Este ponto de entrada permite intervir sobre estas 2 variáveis.

Notes importantes           :          

O preço de custo XCPRPRI e a margem XPFM são calculados por unidade de venda e na divisa do documento.

Estes 2 valores devem estar arredondados em função do número de decimais do preço GDECPRI

O sub-programa de cálculo de margem sendo comum a todas as funções, é necessário conhecer o contexto, falta utilizar a variável GCALPFM tal que ela é indicada precedentemente.

DSPCTLPFM : Modificação da afixação da mensagem de controlo de margem

Este ponto de entrada afeta o cálculo da margem das vendas.

Permite intervir no momento de afixação da mensagem de advertência utilizador que a margem é inferior à margem mínima definida no artigo venda. Permite seja de modificar seja de não fazer o controlo.

É chamado no momento de cada controlo do cálculo de margem.

Contexto e modo de funcionamento.

Transação

Não existe transação em curso.

Ficheiro rasto

Não existe ficheiro rasto aberto.

Diferentes casos de chamada - Variáveis e mascaras disponíveis

O PE está chamado no sub-programa CTLPFM do controlo da margem.

O sub-programa está chamado no momento do registo de linhas de orçamentos,encomendas, contrato-artigo, entregas, faturas, em fim de linha e a cada vez que se modifica um elemento entrando no cálculo da margem (após cada pesquisa tarifa, após modificação do estabelecimento, despesas/descontos, do preço de custo). Este sub-programa é comum a todas as funções de venda

A classe ecrã ligada ao objeto tratado está carregado ([M:SQH], [M:SOH], [M:SDH], [M:SIH], [M:SOI]). Encontra-se no interior do sub-programa CTLPFM

As variáveis seguintes são as variáveis passadas em parâmetro do sub-programa :

         CUR               :           Divisa do documento

·               XCPRPRI       :           Preço de custo da linha

·               NLIG               :           Índice da linha no quadro. Não preenchidos e não significativo se contrato-artigo

As variáveis seguintes são utilizadas :

·               WITMREF     :            Referência artigo

·               WSAU            :           Unidade de venda

·               PFMRAT        :           % de margem calculada.

Quando o PE está chamado, o cálculo da % de margem foi realizada, esta % é inferior à % mínima definida no artigo-venda.

GMESSAGE está carregada com a mensagem a afixar.

O PE permite modificar esta mensagem Para tal, falta modificar a variável GMESSAGE. Se GMESSAGE está colocada a branco, nenhuma mensagem será afixada e o controlo não estará ativo (sem advertência ou sem bloqueio).

Tabelas abertas

No quadro a seguir, a flag conteúdo significativo significa que o conteúdo está em fase com o contexto (o cliente corrente está carregado…).

Tabela

Conteúdo significativo

Título Tabela

ITMSALES

Sim

Artigo venda

 

DSPCTLPRI : Modificação de afixação da mensagem de controlo do preço líquido

Este ponto de entrada afeta o controlo do preço líquido nas vendas.

Permite intervir no momento de afixação da mensagem de advertência utilizador que o preço líquido é inferior ao preço limite inferior no artigo venda. Permite seja de modificar seja de não fazer o controlo.

É chamado no momento de cada controlo do cálculo do preço líquido.

Contexto e modo de funcionamento.

Transação

Não existe transação em curso.

Ficheiro rasto

Não existe ficheiro rasto aberto.

Diferentes casos de chamada - Variáveis e mascaras disponíveis

O PE está chamado no sub-programa CTLNETPRI do controlo do preço líquido.

Este sub-programa está chamado no momento do registo de linhas de orçamentos,encomendas, contrato-artigo, entregas, faturas, em fim de linha e a cada vez que se modifica um elemento entrando no cálculo do preço líquido (após cada pesquisa tarifa, após modificação do coeficiente de conversão UV-US, das despesas/descontos). Este sub-programa é comum a todas as funções de venda

A classe ecrã ligada ao objeto tratado está carregado ([M:SQH], [M:SOH], [M:SDH], [M:SIH], [M:SOI]). Encontra-se ao interior do sub-programa CTLNETPRI.

As variáveis seguintes são as variáveis passadas em parâmetro do sub-programa :

·               BPC               :           Cliente

·               CHGTYP        :           Tipo de preço

·               DAT               :           Data

·               CUR               :           Divisa

·               NLIG               :           Índice da linha no quadro. Não preenchidos e não significativo se contrato-artigo

As variáveis seguintes são utilizadas :

·               WITMREF     :            Referência artigo

·               WSAU            :           Unidade de venda

·               WNETPRINOT  :           Prix net HT

·               MONT             :           Preço limite inferior calculado (convertido no limite unidade e a boa divisa).

Quando o PE está chamado, o cálculo do preço líquido foi realizado, este preço líquido é inferior ao preço linite inferior definido no artigo venda.

GMESSAGE está carregada com a mensagem a afixar.

O PE permite modificar esta mensagem Para tal, falta modificar a variável GMESSAGE. Se GMESSAGE está colocada a branco, nenhuma mensagem será afixada e o controlo não estará ativo (sem advertência ou sem bloqueio).

Tabelas abertas

No quadro a seguir, a flag conteúdo significativo significa que o conteúdo está em fase com o contexto (o cliente corrente está carregado…).

Tabela

Conteúdo significativo

Título Tabela

ITMSALES

Sim

Artigo venda

ITMMASTER

Sim

Artigo

 

CALPFM0 : Cálculo do preço líquido e bruto e a margem

Este ponto de entrada afeta o cálculo do preço líquido e bruto e da margem nas vendas.

Permite intervir antes o cálculo da margem no momento do preço líquido e do preço bruto.

É chamado no momento do registo de uma linha de documento venda (orçamento, encomeda, fatura, nota de crédito)

Contexto e modo de funcionamento

Transação

Não existe transação em curso.

Ficheiro rasto

Não existe ficheiro rasto aberto.

Diferentes casos de chamada - Variáveis e mascaras disponíveis

Uma variável WABREV permite identificar o contexto e mais particularmente o documento tratado :

WABREV= SQH2  Registo linha orçamento

WABREV= SOH4  Registo linha encomenda

WABREV= SDH1 Registo linha entrega

WABREV= SIH4 Registo linha fatura

Este ponto de entrada está chamado no sub-programa de cálculo da margem. Este sub-programa é um sub-programa comum a todas as funções de venda. Está chamado em cada registo de uma linha (orçamento, encomenda, entrega, fatura, nota de crédito), cada vez que é necessário de recalcular a margem :

Após registo da quantidade

Efetua-se a pesquisa tarifa cujo se recupera o preço bruto. Calcula-se em seguida o preço líquido e a margem.

Após modificação do preço bruto ou de uma coluna despesas/desconto. Uma tal modificação engendra um recálculo do preço líquido e da margem.

Após validação da linha

A classe ecrã ligada ao objecto tratado está carregada ([M:SQH], [M:SOH], [M:SDH], [M:SIH]). Encontra-se no interior do sub-programa CALPFM

As variáveis seguintes são as variáveis passadas em parâmetro do sub-programa :

· MSK : Classe ecrã (Se não preenchido, MSK está carregado com [M])

NLIG :                     : Índice da linha no quadro.

· PRI : Preço líquido da linha

· VAT : Quadro dos 3 códigos taxas da linha (VAT(0), VAT(1), VAT(2))

· PRITYP : Tipo de preço do documento

- SIT : Estabelecimento de stock

- LITM Referência artigo.

· CHGTYP : Tipo de câmbio

- DAT : Data do documento

- CUR : Divisa do documento

- COEF : Coeficiente de conversão unidade de enc/unidade de stock da linha

· INICPRPRI : "Flag" inicio do preço de custo (0=Sem início,1=Inic sem caz,2=Inic com caz)

· XSTOMGTCOD : "Flag" atualização dos stocks

As variáveis seguintes são variáveis de trabalho calculadas pelos sub-programas :

. LQTY : Quantidade em unidade de venda

. WITMREF : Referência artigo.

. LCLCAMT1 : Montante de base de cálculo de taxa1

. LCLCAMT2 : Montante de base de cálculo de taxa2

O ponto de entrada se situa antes a chamada ao sub-programa de cálculo do preço líquido em função do preço líquido no caso de um documento em líquido, ou do preço líquido em função do preço líquido bruto num caso de um documento Bruto.

O sub-programa de cálculo de margem sendo comum a todas as funções, é necessário conhecer o contexto, falta utilizar a variável WABREV tal que ela é indicada precedentemente.