Identificador de Regra
INT-000MESC001
Finalidade: é executado através do processo automático e seu objetivo é permitir a inclusão de um filtro adicional ao SQL de busca das solicitações de compra que serão integradas ao Mercado Eletrônico.
Comando:
SELECT E405SOL.CODEMP, E405SOL.NUMSOL, E405SOL.SEQSOL, E405SOL.CCURES, (E405SOL.QTDSOL - E405SOL.QTDAPR - E405SOL.QTDCAN) AS QTDSOL,
E405SOL.UNIMED, E405SOL.CODPRO, E075PRO.DESPRO, E405SOL.CODDER, E405SOL.CODSER, E080SER.DESSER, E405SOL.PRESOL, E405SOL.DATPRV,
E405SOL.CPLPRO, E405SOL.BEMPRI, E405SOL.CTARED, E405SOL.CTAFIN, E405SOL.CODFPJ, E405SOL.NUMPRJ, E405SOL.USUSOL, E405SOL.FILSOL,
E405SOL.SEQENT, E405SOL.PROSER, E012FAM.DESFAM, E012FAM.CODFAM, E075DER.DESDER, E000CIX.CODINT, E000CIX.IDEINT, E000SOL.SEQINT,
E000SOL.CODFIL, E405SOL.CODMOD, E405MOD.DESMOD, E405SOL.CODPRI, E405SOL.CODAGC, E405SOL.CODAGE, E405SOL.OBSSOL,
COALESCE(E022CLF.CLAFIS, '') AS CLAFIS, COALESCE(E013AGP.DESAGP, '') AS DESAGP, R999USU.NOMUSU
FROM E405SOL
INNER JOIN E000SOL ON E000SOL.CODEMP = E405SOL.CODEMP
AND E000SOL.NUMSOL = E405SOL.NUMSOL
AND E000SOL.SEQSOL = E405SOL.SEQSOL
INNER JOIN E000CIX ON E000CIX.SEQINT = E000SOL.SEQINT
INNER JOIN E000SIS ON E000SIS.CODINT = E000CIX.CODINT
INNER JOIN R999USU ON R999USU.CODUSU = E405SOL.USUSOL
LEFT JOIN E075PRO ON E075PRO.CODEMP = E405SOL.CODEMP
AND E075PRO.CODPRO = E405SOL.CODPRO
LEFT JOIN E080SER ON E080SER.CODEMP = E405SOL.CODEMP
AND E080SER.CODSER = E405SOL.CODSER
LEFT JOIN E012FAM ON E012FAM.CODEMP = E405SOL.CODEMP
AND (E012FAM.CODFAM = E075PRO.CODFAM OR E012FAM.CODFAM = E080SER.CODFAM)
LEFT JOIN E075DER ON E075DER.CODEMP = E405SOL.CODEMP
AND E075DER.CODPRO = E405SOL.CODPRO
AND E075DER.CODDER = E405SOL.CODDER
LEFT JOIN E405MOD ON E405MOD.CODEMP = E405SOL.CODEMP
AND E405MOD.CODMOD = E405SOL.CODMOD
LEFT JOIN E022CLF ON E022CLF.CODCLF = E075PRO.CODCLF
OR E022CLF.CODCLF = E080SER.CODCLF
LEFT JOIN E013AGP ON E013AGP.CODEMP = E405SOL.CODEMP
AND E013AGP.CODAGP = E405SOL.CODAGE
WHERE (0 = {Código da empresa} OR E000SOL.CODEMP = {Código da empresa} )
AND E000CIX.IDEINT = 198
AND E000CIX.CODINT = {Código do sistema integrado}
AND E405SOL.DATSOL >= (SELECT MIN(E191CPV.DATGER)
FROM E191CPV
INNER JOIN E191CPT ON E191CPT.IDEUNI = E191CPV.IDECPT
WHERE E191CPT.CPTGRU = 'MERCADO_ELETRONICO'
AND E191CPV.CODEMP = E405SOL.CODEMP)
AND E000CIX.INDEXP = 'N'
AND E000CIX.SITIEX = 'P'
AND (E405SOL.QTDSOL - E405SOL.QTDAPR - E405SOL.QTDCAN) > 0
AND (E405SOL.SITAPR = 'APR' OR E405SOL.SITAPR = ' ')
AND (E405SOL.NUMCOT = 0 AND E405SOL.NUMPCT = 0)
AND ( IntAFiltroSC )
|
Módulo: INT - Integrações.
Transação: Não se aplica.
Regra:
Exemplo de regra:
Para a empresa 120, somente as solicitações com código de prioridade 1 e 2 irão integrar.
Definir Alfa IntAFiltroSC; Definir Numero IntNCodEmpFiltroSC; Se (IntNCodEmpFiltroSC= 120) Inicio IntAFiltroSC= " E405SOL.CODPRI IN (1,2) "; Fim; |
Variáveis Disponibilizadas:
| Nome | Tipo | Observações | Retorna Valor |
|---|---|---|---|
| IntNCodEmpFiltroSC | NÚMERO | Código da Empresa | N |
| IntAFiltroSC | ALFA | String que será incluída no SQL | S |
Atenção
Caso o parâmetro global LisVarReg esteja habilitado, a variável ListaVariaveis estará disponível em todos os identificadores de regras do sistema. O conteúdo desta variável lista os campos disponibilizados no identificador de regras em questão.
Não é aconselhada a ativação desse parâmetro global para o uso cotidiano. Esse recurso de listagem dos campos de identificadores auxilia a construção de regras e o Suporte para, por exemplo, depuração ou quando não houver acesso à documentação dos identificadores de regras.
English
Español
English
Español


