Totali Middleware
- Modelos Fórmulas
- Totali Middleware
Resumo
Esse artigo tem por objetivo apresentar como trabalhar com as fórmulas para Retaguarda.
Criando Fórmula
As fórmulas atualmente devem ser inseridas manualmente no banco. Elas são feitas por SQL e devem retornar o dado necessário. Para cada tipo de fórmula existem parâmetros diferentes. Caso se necessite de novo parâmetro será necessário customizar. Abaixo alguns tipos de fórmulas e seus parâmetros:
1. Fórmulas de Observação de Notas
Chave: OBSFIS_MID
Parâmetros disponíveis:
:str_Tipnat - Tipo de Natureza. (TD_NAT.TIPNAT) :str_Filial - Filial (TT_VEN.CODFIL) :str_Sequen - Sequência (TT_VEN.SEQUEN) :str_FilialUF - UF Filial (TD_FIL.UFLOJA) :str_Serie - Série (TD_SER.CODSER) :str_ICMSDiferido - Valor do ICMS Diferido (TT_VEN.VLRICMDIF)
Exemplo de fórmula
insert into tt_qry (qrychv, qrydes, qryati, qryexp) values ('OBSFIS_MID', 'Observação Fiscal','T', 'SELECT ''ICMS Diferido conforme art. 8º, III do Anexo 3 do RICMS/SC-2001'' AS OBSFIS FROM DUAL '||CHR(13)||CHR(10)||' where ''S'' = '||CHR(58)||'str_Tipnat ');
Exemplo de fórmula com adição das informações de pagamento de Dav (TT_RDV.VLRDOC, TT_RDV.DATVEN)
insert into tt\_qry
(qrychv, qrydes, qryati, qryexp) values ('OBSFIS_MID', 'Observação Fiscal','T', 'SELECT ''ICMS Diferido conforme art. 8º, III do Anexo 3 do RICMS/SC-2001'' ||CHR(13)||CHR(10)||
(SELECT CAST(REPLACE(AGREGATXT(''Valor do Documento: R$'' ||TO_CHAR(RDV.VLRDOC) || '' Data de Vencimento: '' ||TO_CHAR(RDV.DATVEN, ''DD/MM/YYYY'')),CHR(13)||CHR(10), ''/'') AS VARCHAR(254)) FROM tt_rdv rdv '||CHR(13)||CHR(10)||' WHERE 1=1 and (rdv.codfil, rdv.tipped, rdv.numped) in ( SELECT ior.codfil, ior.tipped, ior.numped FROM TT_IOR ior WHERE 1=1 AND ior.filive = '||CHR(58)||'str_Filial AND ior.seqive = '||CHR(58)||'str_Sequen ) )' ' AS OBSFIS FROM DUAL '||CHR(13)||CHR(10)||' where ''S'' = '||CHR(58)||'str_Tipnat ');
Exemplo de fórmula com exibição apenas das informações de pagamento de Dav (TT_RDV.VLRDOC, TT_RDV.DATVEN)
insert into tt\_qry
(qrychv, qrydes, qryati, qryexp) values ('OBSFIS_MID', 'Observação Fiscal','T', 'SELECT (SELECT CAST(REPLACE(AGREGATXT(''Valor do Documento: R$'' ||TO_CHAR(RDV.VLRDOC) || '' Data de Vencimento: '' ||TO_CHAR(RDV.DATVEN, ''DD/MM/YYYY'')|| '' Tipo de Recebimento: '' ||DescricaoDominio(''RDV'',''TIPRDV'', RDV.TIPRDV)),CHR(13)||CHR(10), ''/'') AS VARCHAR(254)) FROM tt_rdv rdv
WHERE 1=1 and (rdv.codfil, rdv.tipped, rdv.numped) in (
SELECT ior.codfil, ior.tipped, ior.numped
FROM TT\_IOR ior
WHERE 1=1
AND ior.filive = '||CHR(58)||'str\_Filial
AND ior.seqive = '||CHR(58)||'str\_Sequen
)
) AS OBSFIS FROM DUAL ');
Referenciado por: Totali Middleware |