Ponto-de-Entrada: M460QRY - Adição de elementos em Query
Abrangências: | Microsiga Protheus 8.11 , Microsiga Protheus 10, Microsiga Protheus 11, Microsiga Protheus 12 |
Versões: | Microsiga Protheus 8.11 , Microsiga Protheus 10, Microsiga Protheus 11, Microsiga Protheus 12 |
Compatível Países: | Todos |
Sistemas Operacionais: | Todos |
Compatível às Bases de Dados: | Todas TotvsDbAccess |
Idiomas: | Português (Brasil) , Português (Portugal) , Espanhol , Inglês |
Descrição:
Ponto de entrada executado antes da exibição da tela de seleção de itens para a geração de Doc. de Saída (Markbrowse) e ao realizar o cálculo dos rateios de Despesas Acessórias (Frete/Seguro/Despesa) e de Desconto entre os itens do pedido a ser faturado (para mais informações sobre esses rateios acesse https://tdn.totvs.com/x/mDc-Dg).
Ao utilizar o ponto de entrada M460FIL é necessário utilizar o ponto de entrada M460QRY, pois as regras de filtro customizadas implementadas na tela de seleção (Markbrowse) devem ser replicadas no ponto de entrada M460QRY, utilizando a sintaxe da linguagem SQL do Banco de Dados utilizado para execução do sistema. No momento da geração dos documentos de saída, o sistema deve utilizar as mesmas regras de filtro utilizadas na tela de seleção (Markbrowse) para selecionar os registros no banco de dados. O meio para informar as mesmas regras utilizada no ponto de entrada M460FIL é o ponto de entrada M460QRY. Neste caso o código da query (ParamIxb[2]) a ser executada é "1".
No momento de realizar o cálculo dos rateios de Despesas Acessórias (Frete/Seguro/Despesa) e de Desconto entre os itens do pedido a ser faturado, o sistema também executa o ponto de entrada M460QRY. Neste momento é possível obter a query preparada pelo sistema e adicionar filtros customizados nas queries utilizadas pelo sistema para o processamento deste cálculo. O ponto de entrada é executado duas vezes para cada um desses cálculos (rateio de despesas acessórias e rateio de desconto) quando for necessário:
- A primeira vez é informada a query (ParamIxb[1]) para obter o valor total do pedido, que é necessário realizar o cálculo do percentual do rateio. Neste caso o código da query (ParamIxb[2]) a ser executada é "2".
- A segunda vez é informada a query (ParamIxb[1]) que calculará o valor do rateado para o item (da despesa e/ou do desconto) para o item. Neste caso o código da query (ParamIxb[2]) a ser executada é "3".
Apesar de poder alterar a query passada como parâmetro, isto não deve ser efetuado sob nenhuma hipótese, deve-se apenas adicionar elementos à cláusula 'Where'.
Este ponto de entrada somente será executado para a versão TOTVS DbAccess (TopConnect).
Programa Fonte
MATA461.PRW
Sintaxe
M460QRY - Adição de elementos ( < UPAR> ) --> URET
Parâmetros:
Nome | Tipo | Descrição | Default | Obrigatório | Referência | ||||||||||||
UPAR | Qualquer | ParamIXB[1] : Expressão da Query a ser executada no banco. / ParamIxb[2] : Código da Query a ser executada. | X |
Retorno
cRET
- (Caractere)
- ExpC1: Expressão da Query a ser executada no Banco.
Exemplos
#include "rwmake.ch"
User Function M460QRY()
Local _volta := " and C9_CODISS = ' '"
Local cQuery :=paramixb[1]
Local cCodQry := paramixb[2]
If cCodQry == "1"
cQuery+=_volta
EndIf
Return(cQuery)
Visão Geral
Import HTML Content
Conteúdo das Ferramentas
Tarefas