Breadcrumbs

Como consultar a saída SEFAZ utilizada pelos job através do banco?

Introdução

Quando precisamos realizar uma consulta a diversos job, o processo via connector é trabalhoso, caso houvesse uma forma mais ágil seria interessante.

Existe alguma forma de fazer esse processo mais rapidamente?

Passo a passo

Para realizar uma consulta rápida de todos os Job, pode-se utilizar o seguinte script:

/* TBC = TBCONNECTION
TBJ = TBNDDJOB
TBL = TBNDDLINKCOMPONENT
*****************************
DESCRIÇÃO KIND

KIND 1 = NFE

KIND 4 = CTE

KIND 7 = MDFe

*/
SELECT

TBC.NAME,

TBJ.JOBNAME
FROM
TBCONNECTION TBC
INNER JOIN TBNDDLINKCOMPONENT TBL ON TBC.ID = TBL.OUTPUTID
INNER JOIN TBNDDJOB TBJ ON TBJ.NDDLINKCOMPONENTID = TBL.ID
WHERE
TBJ.KIND = 1 -- ALTERAR DE ACORDO COM A NECESSIDADE
ORDER BY
Caso precisem filtrar um Job especifico, basta adicionar a seguinte condição após o WHERE "AND TBJ.ID = NUMERO_ DO_JOB"

Simplificado:

select tj.jobname, tc.name
from tbnddlinkcomponent tl
join tbnddjob tj on tl.id = tj.NDDLINKCOMPONENTID
join tbconnection tc on tl.outputid = tc.id

Informação Complementar

Se tiver acesso ao bando de dados utilize este query.

visualizar quais Jobs utilizam uma determinada saída Sefaz ( versão 2.5)

select ID, JOBNAME from TBNDDJOB where NDDLINKCOMPONENTID in (select distinct(id) from TBNDDLINKCOMPONENT where OUTPUTID = 0) –substituir o valor “0” pelo id da saída desejada

[NDD]

Outras informações

Fonte: Elcio Hintze, Paulo Roberto Almeida, Luan Cesar Hanke