Jump to content

RAFAEL HENRIQUE DE SOUZA

Members
  • Content count

    4
  • Joined

  • Last visited

Community Reputation

0 Comum

About RAFAEL HENRIQUE DE SOUZA

Contato

  1. RAFAEL HENRIQUE DE SOUZA

    Query recursiva comparando datas

    Boa noite pessoal. Estou com um problema e não consegui sair do lugar, tenho uma tabela de documentos (id, doc, path, ext, id_cli) e outra tabela de controle contendo o Id_documento, tipo_doc, data_criacao. Preciso informar se o documento listado ja foi substituído. A regra é a seguinte: Para o documento de mesmo cliente e mesmo tipo ele compara as datas alimentando a coluna de status para o mais recente e substituído par os demais. Segue o código para ajuda. create table `tb_documento` ( `ID_DOCUMENTO` int (11), `DOCUMENTO` varchar (60), `PATH` varchar (60), `EXTENCAO` varchar (15), `ID_CLIENTE` int (11) ); insert into `tb_documento` (`ID_DOCUMENTO`, `DOCUMENTO`, `PATH`, `EXTENCAO`, `ID_CLIENTE`) values('1','TESTE1','C:\\DOCUMENTOS','PDF','1'); insert into `tb_documento` (`ID_DOCUMENTO`, `DOCUMENTO`, `PATH`, `EXTENCAO`, `ID_CLIENTE`) values('2','TESTE DOC','C:\\DOCUMENTOS','XLS','1'); insert into `tb_documento` (`ID_DOCUMENTO`, `DOCUMENTO`, `PATH`, `EXTENCAO`, `ID_CLIENTE`) values('3','ASLJDBASIHD','C:\\DOCUMENTOS','XLS','1'); insert into `tb_documento` (`ID_DOCUMENTO`, `DOCUMENTO`, `PATH`, `EXTENCAO`, `ID_CLIENTE`) values('4','EXTREME','C:\\DOCUMENTOS','PDF','1'); insert into `tb_documento` (`ID_DOCUMENTO`, `DOCUMENTO`, `PATH`, `EXTENCAO`, `ID_CLIENTE`) values('5','TESTE NOVO','C:\\DOCUMENTOS','DOC','2'); insert into `tb_documento` (`ID_DOCUMENTO`, `DOCUMENTO`, `PATH`, `EXTENCAO`, `ID_CLIENTE`) values('6','WIN','C:\\DOCUMENTOS','DOC','2'); insert into `tb_documento` (`ID_DOCUMENTO`, `DOCUMENTO`, `PATH`, `EXTENCAO`, `ID_CLIENTE`) values('7','XTREME','C:\\DOCUMENTOS','PDF','2'); insert into `tb_documento` (`ID_DOCUMENTO`, `DOCUMENTO`, `PATH`, `EXTENCAO`, `ID_CLIENTE`) values('8','SAMSUNG','C:\\DOCUMENTOS','XLS','2'); insert into `tb_documento` (`ID_DOCUMENTO`, `DOCUMENTO`, `PATH`, `EXTENCAO`, `ID_CLIENTE`) values('9','CPD','C:\\DOCUMENTOS','DOC','3'); insert into `tb_documento` (`ID_DOCUMENTO`, `DOCUMENTO`, `PATH`, `EXTENCAO`, `ID_CLIENTE`) values('10','QQWAS','C:\\DOCUMENTOS','PDF','4'); ------------------------------------------------------------------------------------- create table `tb_tipo_documento` ( `ID_TIPO` int (11), `ID_DOCUMENTO` int (11), `DATA_CRIACAO` datetime ); insert into `tb_tipo_documento` (`ID_TIPO`, `ID_DOCUMENTO`, `DATA_CRIACAO`) values('1','1','2019-06-23 18:18:15'); insert into `tb_tipo_documento` (`ID_TIPO`, `ID_DOCUMENTO`, `DATA_CRIACAO`) values('3','2','2019-06-24 18:19:52'); insert into `tb_tipo_documento` (`ID_TIPO`, `ID_DOCUMENTO`, `DATA_CRIACAO`) values('2','3','2019-06-19 18:20:22'); insert into `tb_tipo_documento` (`ID_TIPO`, `ID_DOCUMENTO`, `DATA_CRIACAO`) values('4','9','2019-06-11 18:31:21'); insert into `tb_tipo_documento` (`ID_TIPO`, `ID_DOCUMENTO`, `DATA_CRIACAO`) values('4','10','2019-06-07 18:31:44'); insert into `tb_tipo_documento` (`ID_TIPO`, `ID_DOCUMENTO`, `DATA_CRIACAO`) values('5','5','2019-06-26 18:32:15'); insert into `tb_tipo_documento` (`ID_TIPO`, `ID_DOCUMENTO`, `DATA_CRIACAO`) values('1','4','2019-06-03 18:32:21'); insert into `tb_tipo_documento` (`ID_TIPO`, `ID_DOCUMENTO`, `DATA_CRIACAO`) values('1','6','2019-06-01 18:36:17'); insert into `tb_tipo_documento` (`ID_TIPO`, `ID_DOCUMENTO`, `DATA_CRIACAO`) values('3','7','2019-06-14 18:36:35'); insert into `tb_tipo_documento` (`ID_TIPO`, `ID_DOCUMENTO`, `DATA_CRIACAO`) values('1','8','2019-06-20 18:36:59'); ------------------------------------------------------------------------ Modelo de resultado esperado: SELECT TD.*, TTP.ID_TIPO, TTP.DATA_CRIACAO, '' AS 'STATUS' FROM TB_DOCUMENTO TD LEFT JOIN TB_TIPO_DOCUMENTO TTP ON TTP.ID_DOCUMENTO = TD.ID_DOCUMENTO; ---------------------------------------------------------------------- Pessoal muito obrigado, qualquer ajuda é bem vinda!
  2. RAFAEL HENRIQUE DE SOUZA

    [Resolvido] Comunicação soap wsdl

    Gabriel bom dia! Não estava faltando um campo, apesar da mensagem. A chamada estava errada, segue a correta: $response = $conexao->__soapCall('servico' , array('servico'=>array (parametros)); As 'fault' foram tratadas e tudo esta como o esperado. Agradeço a ajuda!
  3. RAFAEL HENRIQUE DE SOUZA

    [Resolvido] Comunicação soap wsdl

    Gabriel, obrigado pela ajuda. Já não utilizo mais o NuSoap, o código ficou da seguinte forma: Código:_____________________________________________________________________________ $login = 'login'; $password = 'pass'; $soapServer = 'https://homologacao.../SscAdminWS?wsdl'; $conexao = new SoapClient( $soapServer, array( 'login' => $login, 'password' => $password, 'proxy_host' => 'proxy', 'proxy_port' => 8080 )); $response = $conexao->__soapCall('retornaUsuario' , array('cpf' => '000.000.000-00')); Retorno:___________________________________________________________________________ Fatal error: Uncaught SoapFault exception: [soap:Server] Campo de preenchimento obrigatório não fornecido: login in /var/www/html/iomg/lab/teste.php:20Stack trace:#0 /var/www/html/iomg/lab/teste.php(20): SoapClient->__soapCall('retornaUsuario', Array)#1 {main} thrown in /var/www/html/iomg/lab/teste.php on line 20
  4. RAFAEL HENRIQUE DE SOUZA

    [Resolvido] Comunicação soap wsdl

    Boa tarde pessoal, sou novo aqui, então desculpe se minha dúvida não for explanada conforme orientação do fórum. Estou precisando consumir uma solução de segurança via SOAP, estou utilizando a biblioteca nusoap.php, fiz as chamadas conforme exemplos que achei. Me parece que ele comunica e trás o modelo xml, porem exibe a seguinte mensagem: wsdl error: XML error parsing WSDL from https://homologacao....scAdminWS?wsdl on line 1: Not well-formed (invalid token) Não achei mais nada sobre este erro. Para ajudar a entender o que fiz segue abaixo o código: _____________________________________________________________________________________ include ('lib/nusoap.php'); $username = 'user'; $password = 'pass'; $useCURL = isset($_POST['usecurl']) ? $_POST['usecurl'] : '0'; $proxyhost = isset($_POST['proxyhost']) ? $_POST['proxyhost'] : 'proxy'; $proxyport = isset($_POST['proxyport']) ? $_POST['proxyport'] : '8080'; $client = new nusoap_client("https://homologacao.../SscAdminWS?wsdl", 'wsdl', $proxyhost, $proxyport); $err = $client->getError(); if ($err) { echo '<h2>Constructor error</h2><pre>' . $err . '</pre>'; } //$client->setUseCurl($useCURL);; //$client->loadWSDL(); $client->setCredentials($username, $password); $result = $client->call('retornaUsuario', array('cpf'=>'123.456.789-10')); if ($client->fault) { echo '<h2>Fault</h2><pre>'; print_r($result); echo '</pre>'; } else { // Check for errors $err = $client->getError(); if ($err) { // Display the error echo '<h2>Error</h2><pre>' . $err . '</pre>'; } else { // Display the result echo '<h2>Result</h2><pre>'; print_r($result); echo '</pre>'; } } print_r($result); echo '<h2>Request</h2><pre>' . htmlspecialchars($client->request, ENT_QUOTES) . '</pre>'; echo '<h2>Response</h2><pre>' . htmlspecialchars($client->response, ENT_QUOTES) . '</pre>'; echo '<h2>Debug</h2><pre>' . htmlspecialchars($client->debug_str, ENT_QUOTES) . '</pre>'; Obrigado.
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.