ERP - WebServices - Qual comando pode ser utilizado para encontrar requisições de WebServices em banco de dados Microsoft SQLServer
Dúvida
Qual comando pode ser utilizado para encontrar requisições de WebServices em banco de dados Microsoft SQlServer?
Solução
Importante
- Este artigo demonstra apenas um exemplo de comando que pode ser executado no banco de dados Microsoft SQLServer para localizar requisições de WebServices armazenadas nas tabelas R960REQ e R960PAR. Caso ocorra alguma situação na execução do comando, entre em contato com o DBA da sua empresa, pois o comando pode precisar de ajustes dependendo da versão do banco de dados e outras características do seu ambiente;
- Este comando não é compatível com Oracle ou Postgres. Para executar um comando similar no Oracle, verifique o artigo ERP - WebServices - Qual comando pode ser utilizado para encontrar requisições de WebServices em banco de dados Oracle
Segue exemplo de comando:
SELECT A.IDREQ, A.DATINI
FROM R960REQ A
INNER JOIN R960PAR B ON (A.IDREQ = B.IDREQ)
WHERE
A.TIPSER = 'COM.SENIOR.G5.CO.MCM.VEN.PEDIDOS@GRAVARPEDIDOS_13' AND --PREENCHER COM O NOME DO WEBSERVICE E A PORTA UTILIZADA
A.DATINI >= CONVERT(DATETIME, '2023-03-17', 120) AND --PREENCHER COM A DATA DA REQUISIÇÃO
CAST(CONVERT(VARCHAR(MAX), CONVERT(VARBINARY(MAX), PARVAL)) AS VARCHAR(MAX)) LIKE '%BLOQUEADO EM FUNÇÃO DA INTEGRAÇÃO%' AND --PREENCHER COM O TEXTO A SER PROCURADO DENTRO DA REQUISIÇÃO
CAST(CONVERT(VARCHAR(MAX), CONVERT(VARBINARY(MAX), PARVAL)) AS VARCHAR(MAX)) LIKE '%<CODPRO>C01REV0105</CODPRO>%' --PREENCHER COM O TEXTO A SER PROCURADO DENTRO DA REQUISIÇÃO
FROM R960REQ A
INNER JOIN R960PAR B ON (A.IDREQ = B.IDREQ)
WHERE
A.TIPSER = 'COM.SENIOR.G5.CO.MCM.VEN.PEDIDOS@GRAVARPEDIDOS_13' AND --PREENCHER COM O NOME DO WEBSERVICE E A PORTA UTILIZADA
A.DATINI >= CONVERT(DATETIME, '2023-03-17', 120) AND --PREENCHER COM A DATA DA REQUISIÇÃO
CAST(CONVERT(VARCHAR(MAX), CONVERT(VARBINARY(MAX), PARVAL)) AS VARCHAR(MAX)) LIKE '%BLOQUEADO EM FUNÇÃO DA INTEGRAÇÃO%' AND --PREENCHER COM O TEXTO A SER PROCURADO DENTRO DA REQUISIÇÃO
CAST(CONVERT(VARCHAR(MAX), CONVERT(VARBINARY(MAX), PARVAL)) AS VARCHAR(MAX)) LIKE '%<CODPRO>C01REV0105</CODPRO>%' --PREENCHER COM O TEXTO A SER PROCURADO DENTRO DA REQUISIÇÃO
Com base nos retornos dos comandos executados, o acesso ao XML completo de entrada e de saída poderá ser realizado através da Consulta de Requisições do próprio sistema, baseando-se na data de inicio da execução da requisição e no ID da requisição retornados pelo Select. Para maiores informações sobre a Consulta de Requisições, verifique o artigo ERP - WebServices - Como efetuar a Consulta de Requisições de WebServices.
Atenção
- Nos comandos de exemplo você deve preencher as informações conforme destaque em negrito:
- Nome e Porta do WebService (no mesmo padrão conforme exemplo);
- Data da Requisição. A data é opcional, mas você deve levar em conta que ela é um filtro importante para retorno de menor quantidade de registros). O formato da data poderá variar de acordo com o seu ambiente (dia/mês/ano, mês/dia/ano, ano/mês/dia, ...)
- Texto a ser procurado nas requisições: o texto pode variar de acordo com o trecho que você deseja procurar. A busca será realizada tanto em parâmetros de entrada com parâmetros de saída;
- Tome cuidado na execução do comando com relação a utilização de letras minúsculas e maiúsculas. O comando de exemplo está todo em letras maiúsculas, mas o seu banco de dados pode diferenciar os dois tipos e não retornar informações de acordo com a forma que o seu banco de dados interpreta o select.
Observação
Para mais informações sobre os WebServices do Gestão Empresarial | ERP, consulte o artigo ERP - WebServices - Onde é possível encontrar informações diversas sobre processo de integração via WebServices (índice).