Jump to content

asacap1000

Members
  • Content count

    166
  • Joined

  • Last visited

Posts posted by asacap1000


  1. Galera estou com uma dúvida, tenho a parte de envio de dados para em Post, com encode json e curl. Já pesquisei em todos os lugares e não encontrei nada pra clarear as idéias.

     

    a parte final é essa do envio (cliente)

    header("Content-Type: ".$mediaType);
    	
    	$headers = array();
    	$headers[] = "Accept: ".$mediaType;
    	$headers[] = "Accept-Charset: ".$charSet;
    	$headers[] = "Accept-Encoding: ".$mediaType;
    	$headers[] = "Content-Type: ".$mediaType.";charset=".$charSet;
    	$headers[] = "Authorization: Basic ".$AuthorizationHeaderBase64;
    
    $ch = curl_init();
              curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
    		  curl_setopt($ch, CURLOPT_URL, $url);
    		  curl_setopt($ch, CURLOPT_POST, 1);
    		  curl_setopt($ch, CURLOPT_POSTFIELDS,"contatos=$contatos"); #campos que serão enviados
    		  curl_setopt($ch, CURLOPT_USERPWD, $AuthorizationHeaderBase64);
    		  curl_setopt($ch, CURLOPT_HEADER, $headers);
    		  curl_setopt($ch, CURLINFO_HTTP_CODE, true);
    		  curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
    		  curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);#ativa se for ter retorno do chamada
    		  
     
    		  $result = curl_exec($ch);
    		  
    		  $result2 = json_decode($result,true);
    		  	  
    		  curl_close($ch);
    
    		  if($result2 === false) {
    
    			$err = 'Curl error: ' . curl_error($ch);
    			
    			$result2 = $err;
    
    			echo "This is text".$err;
    		  }
    
    		var_dump ($result2);

     

    Preciso de ajuda para entender como deve ser feito a página que será chamada, no caso lado servidor.

     

    Como pode ver tenho um header configurado e será enviado com chave de autorização agora como isso é feito do lado servidor??

     

    Se alguém puder me ajudar, preciso entregar este webservice sexta feira 18/10. Todos os dados recebidos serão salvos no BD Oracle.

     

     


  2. Galera salve a todos.

     

    Gostaria de saber se é possivel e se for como fazer.  Tenho um select de faturamento, e nesta consulta ele me traz o numero da NF, ele me traz os ítens faturados. Gostaria de saber se´no próprio select é possível trazer o numero da NF apenas uma vez, e nas outras linhas que estarão vindo os ítens cobrados estes campos ficarem vazios.

     

    Segue exemplo hoje como está e como eu preciso.

     

    image.png.5cac7eb47f9845dea95bd8b64675a4b1.png

     

    Como eu preciso:

     

    image.png.aecf4b67929c8bca0dfabd46a0b03274.png

     

     

    Abaixo o select

     

    SELECT A.ID_KLIENT COD,
           K.NAME NOME,
           A.BILLITE ITEM,
           I.DESCRIPTION DESC_ITEM,
           SUM(A.MNG) QUANT,
           SUM(ROUND(A.PREIS, 3))  VALOR,
           BO.NR_NF NF
      FROM BILL_OS_ITEM A,
           BILL_ITEM I,
           KLIENTEN K,
           BILL_OS BO,
           (SELECT T.DOCSVE_REF, D.DOCHD_DOC_ID
              FROM FISCAL.DOCSVE T, FISCAL.DOCHD D
             WHERE T.DOCSVE_DOC_PRC_ID = D.DOCHD_DOC_PRC_ID) REFE
     WHERE I.BILLITE = A.BILLITE
       AND A.ID_KLIENT = K.ID_KLIENT
       AND BO.NR_NF = REFE.DOCHD_DOC_ID(+)
       AND BO.ID_KLIENT = K.ID_KLIENT
       AND BO.STATUS <> '80'
       AND BO.ID_OS = A.ID_OS
       AND TRUNC(BO.DATE_EMISS) >= TO_DATE('01/09/2019', 'DD/MM/YYYY')
       AND TRUNC(BO.DATE_EMISS) <= TO_DATE('30/09/2019', 'DD/MM/YYYY')
     GROUP BY A.ID_KLIENT,
              K.NAME,
              A.BILLITE,
              I.DESCRIPTION,
              BO.NR_NF,
              BO.LOTE,
              REFE.DOCSVE_REF
     ORDER BY K.NAME, A.ID_KLIENT, A.BILLITE

     


  3. Galera estou com um problema, não sei como montar a estrura para receber os dados vindo deste script e salvar no banco de dados.

    Se alguem puder me dar uma força, pelo menos como montar essa estrutura já vai ajudar muito.

     

    Segue script de envio.

    <?php
    	$charSet = "UTF-8"; 
    	$mediaType = "application/json";
    
    	//header("Content-Type: ".$mediaType);
    
    	//Configuracoes do sistema
    
    	$url_integra_aurora = 'http://webservice.test/verify.php';////INFORMAR O LINK QUE SERÁ SOLICITADO NO ENVIO DOS DADOS
    	
    	//receber neste campo todos os dados via POST//////
    	
    	
    
    	/////ABAIXO INSERIR OS DADOS DO POST EM UMA ARRAY/////
    	$contatos = array(
    				'nome'=>urlencode("Ricardo"),
    				'idade'=>urlencode("4321"),
    				'email'=>urlencode("ricardo@mane.com"),
    				'telefone'=>urlencode("666-999")
    );
    
    
    	/////APÓS RECEBER LANÇAR OS DADOS EM UMA ARRAY ABAIXO SERÁ CODFICADO PARA JSON
    	
    	$data_post = json_encode($contatos); 
    	
    		 
    	$url = $url_integra_aurora."";
    	
    	$Datasecurity = date('Ymd'); ///ASSIM SEERÁ GERADA UMA CHAVE POR DIA
    
    	$SecurityId = $Datasecurity.':'.'CNPJ'; ////ADICIONA A DATA UMA IDENTIFICAÇÃO DA EMRPESA NESTE CASO CNPJ 
    
    	$SecurityKey = "d1ZLpLQRGyb-h6ZEqnbhlS23WjBWl_hUGpB615sKGfw"; ////CHAVE DE SEGURANÇA SECUNDÁRIA FIXA
    
    	$headers = array();
    	$headers[] = "Accept: ".$mediaType;
    	$headers[] = "Accept-Charset: ".$charSet;
    	$headers[] = "Accept-Encoding: ".$mediaType;
    	$headers[] = "Content-Type: ".$mediaType.";charset=".$charSet;
    
    	
    	$AuthorizationHeader = $SecurityId.":".$SecurityKey; //// CHAVE DE SEGURANÇA GERADA DIARIAMENTE JUNTO COM CHAVE DE SEGURANÇA FIXA
    	
    	$AuthorizationHeaderBase64 = base64_encode($AuthorizationHeader); // APÓS JUNTAR AS CHAVES ELAS SÃO CODIFICADAS EM HASH BASE64 E ENVIADAS PARA O SERVIDOR VALIDAR
    
    	
    	$headers[] = "Authorization: Basic ".$AuthorizationHeaderBase64;
    
    	$ch = curl_init();
    		  curl_setopt($ch, CURLOPT_URL, $url);
    		  curl_setopt($ch, CURLOPT_POST, 1);
    		  curl_setopt($ch, CURLOPT_POSTFIELDS, $data_post);
    		  curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
    		  curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    	$result = curl_exec($ch);
    	
    	
    	
    	$result2 = json_decode($result,true);
    	
    	var_dump($result2);
    	
    	curl_close($ch);
    	
    	
    	
    ?>
    	
    	

     


  4. Galera estou com uma consulta que ainda não consegui entender o porque. gostaria que ela trouxesse em apenas uma linha mas não vem de forma alguma.

     

    SELECT BO.LAGER,
                   BO.ID_OS,
                   K.ID_KLIENT,
                   K.SUCHBEGRIFF CNPJ_CPF,
                   K.NAME,
                   BI.DIV_1 LOTE,
                   BI.DIV_10 DI_DDE,
                   (SELECT DISTINCT DIS.ID_DISPATCHER
                      FROM FISCAL.DOCHD DC, WMS_EADI.DISPATCHER DIS
                     WHERE DC.DOCHD_DOC_ID = BO.NR_NF
                       AND DC.DOCHD_RPS_DESP = DIS.SUCHBEGRIFF) COD_COMISSARIA,
                   (SELECT DISTINCT DIS.BEZ
                      FROM FISCAL.DOCHD DC, WMS_EADI.DISPATCHER DIS
                     WHERE DC.DOCHD_DOC_ID = BO.NR_NF
                       AND DC.DOCHD_RPS_DESP = DIS.SUCHBEGRIFF) COMISSARIA,
                   BO.NR_NF,
                   BO.DATE_BILL,
                   BO.DATE_EMISS,
                --------ABAIXO OS TIPOS DE SERVIÇOS ONDE ESTÃO OCORRENDO CADA RESULTADO ELE CRIA UMA LINHA----------------   
                   (SELECT SUM(ROUND(OSI.PREIS, 2))
                      FROM BILL_OS_ITEM OSI
                     WHERE OSI.LAGER = BO.LAGER
                       AND OSI.ID_KLIENT = K.ID_KLIENT
                       AND OSI.ID_OS = BO.ID_OS
                       AND OSI.BILLITE = BI.BILLITE
                       AND OSI.DIV_1 = BI.DIV_1
                          --AND NVL(OSI.DIV_10, 'x') = NVL(BI.DIV_10, 'x')
                       AND OSI.BILLITE IN
                           (SELECT BLL.BILLITE
                              FROM BILL_ITEM BLL, WERTE WER
                             WHERE BLL.TIPO_FAT = WER.WERT
                               AND WER.WERTE_BER = 'ITENSF'
                               AND WER.WERT = 'ARMAZ')) VLR_ARMAZ,
                               
                               
                   (SELECT SUM(ROUND(OSI.PREIS, 2))
                      FROM BILL_OS_ITEM OSI
                     WHERE OSI.LAGER = BO.LAGER
                       AND OSI.ID_KLIENT = K.ID_KLIENT
                       AND OSI.ID_OS = BO.ID_OS
                       AND OSI.BILLITE = BI.BILLITE
                       AND OSI.DIV_1 = BI.DIV_1
                          --AND NVL(OSI.DIV_10, 'x') = NVL(BI.DIV_10, 'x')
                       AND OSI.BILLITE IN
                           (SELECT BLL.BILLITE
                              FROM BILL_ITEM BLL, WERTE WER
                             WHERE BLL.TIPO_FAT = WER.WERT
                               AND WER.WERTE_BER = 'ITENSF'
                               AND WER.WERT = 'GER.RISCO')) VLR_GER_RISCO,
                               
                               
                   (SELECT SUM(ROUND(OSI.PREIS, 2))
                      FROM BILL_OS_ITEM OSI
                     WHERE OSI.LAGER = BO.LAGER
                       AND OSI.ID_KLIENT = K.ID_KLIENT
                       AND OSI.ID_OS = BO.ID_OS
                       AND OSI.BILLITE = BI.BILLITE
                       AND OSI.DIV_1 = BI.DIV_1
                          --AND NVL(OSI.DIV_10, 'x') = NVL(BI.DIV_10, 'x')
                       AND OSI.BILLITE IN
                           (SELECT BLL.BILLITE
                              FROM BILL_ITEM BLL, WERTE WER
                             WHERE BLL.TIPO_FAT = WER.WERT
                               AND WER.WERTE_BER = 'ITENSF'
                               AND WER.WERT = 'MOVIMENT')) VLR_MOVIMENTACAO,
                               
                               
                   (SELECT SUM(ROUND(OSI.PREIS, 2))
                      FROM BILL_OS_ITEM OSI
                     WHERE OSI.LAGER = BO.LAGER
                       AND OSI.ID_KLIENT = K.ID_KLIENT
                       AND OSI.ID_OS = BO.ID_OS
                       AND OSI.BILLITE = BI.BILLITE
                       AND OSI.DIV_1 = BI.DIV_1
                          --AND NVL(OSI.DIV_10, 'x') = NVL(BI.DIV_10, 'x')
                       AND OSI.BILLITE IN
                           (SELECT BLL.BILLITE
                              FROM BILL_ITEM BLL, WERTE WER
                             WHERE BLL.TIPO_FAT = WER.WERT
                               AND WER.WERTE_BER = 'ITENSF'
                               AND WER.WERT = 'DESUNIT')) VLR_DESUNIT,
                               
                               
                   (SELECT SUM(ROUND(OSI.PREIS, 2))
                      FROM BILL_OS_ITEM OSI
                     WHERE OSI.LAGER = BO.LAGER
                       AND OSI.ID_KLIENT = K.ID_KLIENT
                       AND OSI.ID_OS = BO.ID_OS
                       AND OSI.BILLITE = BI.BILLITE
                       AND OSI.DIV_1 = BI.DIV_1
                          --AND NVL(OSI.DIV_10, 'x') = NVL(BI.DIV_10, 'x')
                       AND OSI.BILLITE IN
                           (SELECT BLL.BILLITE
                              FROM BILL_ITEM BLL, WERTE WER
                             WHERE BLL.TIPO_FAT = WER.WERT
                               AND WER.WERTE_BER = 'ITENSF'
                               AND WER.WERT = 'PESAGEM')) VLR_PESAGEM,
                               
                               
                   (SELECT SUM(ROUND(OSI.PREIS, 2))
                      FROM BILL_OS_ITEM OSI
                     WHERE OSI.LAGER = BO.LAGER
                       AND OSI.ID_KLIENT = K.ID_KLIENT
                       AND OSI.ID_OS = BO.ID_OS
                       AND OSI.BILLITE = BI.BILLITE
                       AND OSI.DIV_1 = BI.DIV_1
                          --AND NVL(OSI.DIV_10, 'x') = NVL(BI.DIV_10, 'x')
                       AND OSI.BILLITE IN
                           (SELECT BLL.BILLITE
                              FROM BILL_ITEM BLL, WERTE WER
                             WHERE BLL.TIPO_FAT = WER.WERT
                               AND WER.WERTE_BER = 'ITENSF'
                               AND WER.WERT LIKE 'AVERBA%')) VLR_AVERBACAO,
                               
                               
                   (SELECT SUM(ROUND(OSI.PREIS, 2))
                      FROM BILL_OS_ITEM OSI
                     WHERE OSI.LAGER = BO.LAGER
                       AND OSI.ID_KLIENT = K.ID_KLIENT
                       AND OSI.ID_OS = BO.ID_OS
                       AND OSI.BILLITE = BI.BILLITE
                       AND OSI.BILLITE IN
                           (SELECT BLL.BILLITE
                              FROM BILL_ITEM BLL, WERTE WER
                             WHERE BLL.TIPO_FAT = WER.WERT
                               AND WER.WERTE_BER = 'ITENSF'
                               AND WER.WERT = 'FAT.MINIMO.')) VLR_FAT_MINIMO,
                               
                               
                   (SELECT SUM(ROUND(OSI.PREIS, 2))
                      FROM BILL_OS_ITEM OSI
                     WHERE OSI.LAGER = BO.LAGER
                       AND OSI.ID_KLIENT = K.ID_KLIENT
                       AND OSI.ID_OS = BO.ID_OS
                       AND OSI.BILLITE = BI.BILLITE
                       AND OSI.DIV_1 = BI.DIV_1
                          --AND NVL(OSI.DIV_10, 'x') = NVL(BI.DIV_10, 'x')
                       AND OSI.BILLITE IN
                           (SELECT BLL.BILLITE
                              FROM BILL_ITEM BLL, WERTE WER
                             WHERE BLL.TIPO_FAT = WER.WERT
                               AND WER.WERTE_BER = 'ITENSF'
                               AND BLL.BILLITE NOT IN ('21.02', '21.03')
                               AND WER.WERT = 'OUT.SERV.')) VLR_OUTROS_SERV,
                               
                               
                   (SELECT SUM(ROUND(OSI.PREIS, 2))
                      FROM BILL_OS_ITEM OSI
                     WHERE OSI.LAGER = BO.LAGER
                       AND OSI.ID_KLIENT = K.ID_KLIENT
                       AND OSI.ID_OS = BO.ID_OS
                       AND OSI.BILLITE = BI.BILLITE
                       AND OSI.DIV_1 = BI.DIV_1
                          --AND NVL(OSI.DIV_10, 'x') = NVL(BI.DIV_10, 'x')
                       AND OSI.BILLITE IN
                           (SELECT BLL.BILLITE
                              FROM BILL_ITEM BLL, WERTE WER
                             WHERE BLL.TIPO_FAT = WER.WERT
                               AND WER.WERTE_BER = 'ITENSF'
                               AND BLL.BILLITE = '21.02'
                               AND WER.WERT = 'OUT.SERV.')) TRANSF_IN,
                               
                               
                   (SELECT SUM(ROUND(OSI.PREIS, 2))
                      FROM BILL_OS_ITEM OSI
                     WHERE OSI.LAGER = BO.LAGER
                       AND OSI.ID_KLIENT = K.ID_KLIENT
                       AND OSI.ID_OS = BO.ID_OS
                       AND OSI.BILLITE = BI.BILLITE
                       AND OSI.DIV_1 = BI.DIV_1
                          --AND NVL(OSI.DIV_10, 'x') = NVL(BI.DIV_10, 'x')
                       AND OSI.BILLITE IN
                           (SELECT BLL.BILLITE
                              FROM BILL_ITEM BLL, WERTE WER
                             WHERE BLL.TIPO_FAT = WER.WERT
                               AND WER.WERTE_BER = 'ITENSF'
                               AND BLL.BILLITE = '21.03'
                               AND WER.WERT = 'OUT.SERV.')) TRANSF_OUT
                               
                               
              FROM BILL_OS BO, BILL_OS_ITEM BI, KLIENTEN K
             WHERE BO.LAGER = BI.LAGER
               AND BO.ID_KLIENT = BI.ID_KLIENT
               AND BO.ID_OS = BI.ID_OS
               AND BO.LAGER = K.LAGER
               AND BO.ID_KLIENT = K.ID_KLIENT
               and k.id_klient = '3099'
               and BO.NR_NF = '121304'
               AND BO.STATUS = '90'
            AND TRUNC(BO.DATE_BILL) BETWEEN '28/08/2019' AND '28/08/2019'
             GROUP BY BO.LAGER,
                      BO.ID_OS,
                      K.ID_KLIENT,
                      K.SUCHBEGRIFF,
                      K.NAME,
                      BO.DATE_EMISS,
                      BO.NR_NF,
                      BO.DATE_BILL,
                      BI.BILLITE,
                      BI.DIV_1,
                      BI.DIV_10

    image.thumb.png.29f19a5fe8c0bfd8f729fa044db4a1f6.png

     

    Alguem consegue identificar neste select porque ele vem assim?


  5. Galera não sei o porque mas n select abaixo eu preciso mostrar o ultimo registro de uma das datas que são lançadas.

    SELECT IO.ID_IN_OUT TICKET,
           TO_CHAR(IO.TIME_ARRIVAL, 'DD/MM/YYYY HH24:MI') CHEGADA,
           TO_CHAR(IO.TIME_RELEASE_IN, 'DD/MM/YYYY HH24:MI') LIBERADO,
           TO_CHAR(IO.TIME_IN, 'DD/MM/YYYY HH24:MI') ENTRADA,
           SUBSTR(SP.NAME, 0, 18) TRANSPORTADORA,
           SUBSTR(DR.NAME, 0, 18) MOTORISTA,
           VE.PLATE PLACA,
           (SELECT DISTINCT MAX(TOS.PLATZ) DOCA
              FROM PICKAUF PI,
                   AUFTRAEGE TOS,
                   (SELECT IO.ID_IN_OUT,
                           MAX(IO.TIME_RELEASE_PP) TIME_RELEASE_PP,
                           IOP.DOCUMENT,
                           MAX(IO.TIME_OUT) TIME_OUT
                      FROM IN_OUT IO, IN_OUT_POS IOP
                     WHERE IO.ID_IN_OUT = IOP.ID_IN_OUT
                          --AND IO.ART_IN_OUT IN ('CA', 'CCE', 'CC')
                       AND IO.STAT <> '80'
                     GROUP BY IOP.DOCUMENT, IO.ID_IN_OUT) SAD
             WHERE PI.CHARGE = TOS.NR_AUF
               AND SAD.ID_IN_OUT = IO.ID_IN_OUT
               AND SAD.DOCUMENT(+) =
                   REPLACE(TRANSLATE(TOS.HINW_ZUST, '/-', '  '), ' ')
             GROUP BY SAD.ID_IN_OUT) DOCA
      FROM IN_OUT IO, SPEDITEURE SP, VEHICLE VE, TRACTOR TR, DRIVER DR
     WHERE IO.STAT <> '80'
       AND IO.TIME_ARRIVAL IS NOT NULL
       AND TR.ID_TRACTOR = IO.ID_TRACTOR
       AND DR.ID_DRIVER = IO.ID_DRIVER
       AND VE.ID_VEHICLE = IO.ID_VEHICLE
    	  
       AND IO.TIME_RELEASE_PP IS NULL
       AND SP.ID_SPEDITEUR = IO.ID_SPEDITEUR
       AND IO.ART_IN_OUT IN ('CA', 'CC', 'CCE', 'CV')
       and rownum = '1'
     ORDER BY TO_CHAR(IO.TIME_RELEASE_IN, 'DD/MM/YYYY HH24:MI')

    Neste Select temos as datas de CHEGADA, LIBERADO, ENTRADA. eu preciso mostrar o ultimo registro do LIBERADO. Eu já fiz um max porém não retornou.Ela será utilizada em um telão no pátio de uma empresa.

     

    O telão será desta forma

     

    Capturar.thumb.JPG.e2b79e58f62bec652aef5e76fbd6af9d.JPG


  6. Galera poderiam me ajudar. Tenho um servidor (Server 2008) com mysql etc instalado. Preciso replicar esse banco para outro servidor que será utilizado como testes. Tudo que eu adicionar ou remover do servidor master deve ser replicado para o servidor Homol mas não pode ocorrer o inverso.

     

    Se puderem me passar algum tutorial ou dar algumas dicas aqui ficarei muito agradecido.


  7. Galera me ajudem por favor, estou pirando kkkkk

     

    Seguinte, tenho um form que realiza o submit via javascrit enviando os dados para uma página php formatada em json.

    Está gravando perfeitamente porém preciso dos dados do retorno, como Link do boleto, e alguns outros resultados para inserir no banco nesse ponto já pesquisei um monte testei de tudo até a página bugar e nada kkkk

     

    o Script que utilizo para o envio é esse:

     

    <script src="//ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js" type="text/javascript"></script>
    <script type="text/javascript">
    $("#frmBoleto").submit(function(){
    
      $.ajax({
        type: "POST",
        url: "https://www.sitedaloja.com.br/action/boleto_bradesco/gerando_boleto.php",
        data: $(this).serializeArray(),
        }).done(function( msg ) {
    	  	  
        });
    
      return false; 
    
    });
    	
    </script>

    Como fazer para capturar os dados  da resposta do json?  


  8. Salve galera, preciso de uma ajuda aqui....eu preciso trazer algumas fotos de usuarios que estão gravados em outro servidor e mostrar em uma página.

     

    O que estou usando inicialmente apenas para carregar as fotos e depois vou personalizar com outras funções. Mas o basico é esse:

     

    <? 					
    $diretorio = "//SRVCAMARAFRIA/Sistema de Acesso/AcessoNet/fotos/"; // esta linha não precisas é só um exemplo do conteudo que a variável vai ter
    
    // selecionar só .jpg
    $imagens = glob($diretorio."*.jpg");
    
    // fazer echo de cada imagem
    foreach($imagens as $imagem){
      echo '<a href="'.$imagem.'"><img src="'.$imagem.'" /></a>';
    }		
    						
    						?>

    Ele busca as imagens mas não as mostra segue print do resultado:

     

    image.thumb.png.3aa31d03b24f0ad42dbf3b2320dd48e6.png

     

    Se eu posicionar o cursor em cima de uma delas ela aparece no rodapé o caminho e o nome da foto

     

    image.png.d53f1bfa0f8e3a5ce248902432fc2665.png

     

     

    O link para abrir ela eu nem preciso apenas para mostrar na tela, poderiam me ajudar?

     

    Desde já Agradeço.


  9. 12 minutos atrás, Motta disse:

    Cheque os "types" dos campos , chars ordenam diferente de numéricos.

     

    Cheque se fez todos os "joins" das chaves

     

    O comando

    
    AND OS.NR_NF = '119247'

    está inibido, foi um teste ?

     

    Sim todos os joins estão corretos, este que está inibido foi teste para confirmar se essa NF aparecia na tabela, a consulta é baseada apenas no lote. Agora vou verificar os campos mesmo não tinha pensado nisso. Assim que verificar posto a situação


  10. Galera estou com uma consulta que travei em uma situação.

    Eu preciso buscar as ultimas informações de uma Nota fiscal.

     

    NUMERO DA NF | DATA FATURAMENTO | COBERTURA

     

    neste select ele utiliza como parâmetro o lote cadastrado no sistema de estoque, e ao pesquisar ele volta a Data do faturamento e cobertura corretos porém o numero da NF é outro bem antiga.

    O que posso estar fazendo errado nesta consulta?? segue a query 

    SELECT TO_CHAR(MAX(OS.NR_NF)) NOTA,
           TO_CHAR(MAX(TO_DATE(REPLACE(OS.DATE_BILL, '/.', ''), 'dd/mm/yy')),
                   'dd/mm/yyyy') DATA_FAT,
           TO_CHAR(MAX(TO_DATE(REPLACE(IT.DIV_6, '/.', ''), 'dd/mm/yy')),
                   'dd/mm/yyyy') COBERTURA
      FROM BILL_OS_ITEM IT, BILL_OS OS, BILL_ITEM B
     WHERE OS.LAGER = IT.LAGER
       AND OS.ID_KLIENT = IT.ID_KLIENT
       AND OS.ID_OS = IT.ID_OS
       AND IT.LAGER = OS.LAGER
       AND IT.ID_OS = OS.ID_OS
       AND IT.BILLITE = B.BILLITE
       AND OS.STATUS <> '80'
          --AND OS.NR_NF = '119247'
       AND IT.DIV_1 = 'EX16208816'

    A nota fiscal que deveria retornar ´seria a 119247, porém vem  99336.


  11. 1 hora atrás, Motta disse:

    Os campos estão no formato DATE ?

    Se tem a data e hora ?

     

    Quando se subtrai duas "dates" se obtem uma diferença em dias (ou fração) 

    Uma solução é trabalahr em segundos e depois converter estes valores.

     

    Não sei se o AVG é aceito para DATE , nunca tentei.

     

    veja se isto ajuda  

     Motta boa tarde olha o que eu fiz, acho que deu certo:

     

    SELECT LPAD(TRUNC(AVG((F.TEMPO)) / (24 * 60 * 60)), 2, '0') || ':' ||
           TO_CHAR(TO_DATE('01/01/2013 00:00:00', 'DD/MM/YYYY HH24:MI:SS') +
                   (AVG(F.TEMPO)) / (24 * 60 * 60),
                   'HH24:MI:SS') MEDIA
      FROM (SELECT X.ID_IN_OUT, 24 * 60 * 60 * (X.SAIDA - X.ENTRADA) TEMPO
              FROM (SELECT IO.ID_IN_OUT,
                           IOP.DOCUMENT,
                           IO.TIME_IN         ENTRADA,
                           IO.TIME_RELEASE_PP SAIDA
                      FROM DESMEMBR   DD,
                           IN_OUT_POS IOP,
                           IN_OUT     IO,
                           SPEDITEURE S,
                           VEHICLE    V,
                           DRIVER     D
                     WHERE DD.TYP_PROCESS = 'DINACI'
                       AND 'DI' = IOP.TYP_DOCUMENT
                       AND DD.NR_DI = IOP.DOCUMENT
                       AND IOP.ID_IN_OUT = IO.ID_IN_OUT
                       AND IO.ART_IN_OUT IN ('CA', 'CC', 'CCE')
                       AND IO.STAT <> '80'
                       AND S.ID_SPEDITEUR = IO.ID_SPEDITEUR
                       AND V.ID_VEHICLE = IO.ID_VEHICLE
                          --AND IO.ID_IN_OUT = '385617'
                       AND IO.TIME_IN >= TO_DATE('01/12/2018', 'dd/mm/yyyy')
                       AND IO.TIME_IN <= TO_DATE('31/12/2018', 'dd/mm/yyyy')
                       AND D.ID_DRIVER = IO.ID_DRIVER) X) F

    image.png.ee27da9bde485f9f25ac7ddba70ec96d.png


  12. Salve Galera, estou quase finalizando um relatório porém travei em um campo.

    Este relatório consiste em subtrair hora de entrada e saída, trazer em dias horas e minutos de um período.

    Depois preciso calcular a média destes resultados.

    eu barrei na parte de dias não vem a informação correta.

     

    Segue select se alguem puder me dar uma força.

     

    SELECT io.id_in_out, IOP.DOCUMENT,IO.TIME_IN entrada, IO.TIME_RELEASE_PP saida,
           LPAD(TRUNC(((IO.TIME_RELEASE_PP - IO.TIME_IN) /24 )), 2, '0') || ':' ||
           LPAD(TRUNC(((IO.TIME_RELEASE_PP - IO.TIME_IN) * 24 )), 2, '0') || ':' ||
           LPAD(TRUNC(MOD((IO.TIME_RELEASE_PP - IO.TIME_IN) * 86400, 3600) / 60), 2, '0')  || ':' ||
           LPAD(TRUNC(MOD(MOD((IO.TIME_RELEASE_PP - IO.TIME_IN) * 86400, 3600), 60)), 2, '0')  TEMPO
      FROM DESMEMBR   DD,
           IN_OUT_POS IOP,
           IN_OUT     IO,
           SPEDITEURE S,
           VEHICLE    V,
           DRIVER     D
     WHERE DD.TYP_PROCESS = 'DINACI'
       AND 'DI' = IOP.TYP_DOCUMENT
       AND DD.NR_DI = IOP.DOCUMENT
       AND IOP.ID_IN_OUT = IO.ID_IN_OUT
       AND IO.ART_IN_OUT IN ('CA', 'CC', 'CCE')
       AND IO.STAT <> '80'
       AND S.ID_SPEDITEUR = IO.ID_SPEDITEUR
       AND V.ID_VEHICLE = IO.ID_VEHICLE
       AND IO.TIME_IN >= TO_DATE('01/12/2018', 'dd/mm/yyyy')
       AND IO.TIME_IN <= TO_DATE('31/12/2018', 'dd/mm/yyyy')
       AND D.ID_DRIVER = IO.ID_DRIVER

    O resultado acima está vindo assim:

     

    1    378470    1211942181    14/12/2017 09:35:41    14/12/2017 13:32:31    00:03:56:50
    2    378470    1211942181    14/12/2017 09:35:41    14/12/2017 13:32:31    00:03:56:50
     

    Depois de acertar isso preciso realizar a média que a principio eu utilizaria o AVG mas dá erro.

     

    Agradeço quem puder me ajudar.


  13. Galera preciso de uma ajuda, não sei mais nem como procurar a cabeça está dando nó kkkk.

    Tenho projeto que estará controlando o tempo de acesso no estabelecimento impondo um limite de 100 minutos.

    Dentro do mesmo dia estou conseguindo realizar os calculos normais, porém se o usuário entrar 23:00 ele terá que sair no máximo às 00:40.

    O horário eu consegui montar conforme o select abaixo a data mantém a mesma da entrada.

    select aces.seqreg SEQUENCIA,
           aces.diracc SENTIDO,
           
    	   aces.horacc MINUTOS, --acesso em minutos 
    	   (aces.horacc + 100) LIMITE, --limite de acesso foi adicionado mais 100 minutos
    
    	   CONVERT(varchar(2), Day(aces.datacc)) + '/' +
           CONVERT(varchar(2), MONTH(aces.datacc)) + '/' +
           CONVERT(varchar(4), Year(aces.datacc)) + '  ' +
           right( '00' + cast(aces.horacc / 60 as varchar), 2) + ':' +
           right( '00' + cast(aces.horacc - ((aces.horacc / 60) * 60) as varchar), 2 ) AS HORA,--data e hora  de entrada
    
    	CONVERT(varchar(2), Day(aces.datacc)) + '/' +
        CONVERT(varchar(2), MONTH(aces.datacc)) + '/' +
        CONVERT(varchar(4), Year(aces.datacc)) + '  ' +
        right( '00' + cast( ((aces.horacc + 100)%1440)/60 as varchar), 2) + ':' +
        right( '00' + cast(((aces.horacc + 100)%1440)%60 as varchar), 2 ) 'SAIDA', --data e hora que deve sair
    	
    	Convert(Char(5),GetDate(),114) ATUAL
       
      from kansas.kansas.r070ara aces
      LEFT JOIN kansas.kansas.r090mvi mv
        on aces.numcra = mv.numcra
       and aces.numdoc = mv.numdoc
     where CONVERT(DATETIME, CONVERT(NVARCHAR(10), aces.datacc, 103), 103) >=
           CONVERT(DATETIME, '29/09/2018', 103)
       and CONVERT(DATETIME, CONVERT(VARCHAR(10), aces.datacc, 103), 103) <=
           CONVERT(DATETIME, '29/09/2018', 103)
       and (aces.coddsp like '1')
       and aces.numdoc = '325605397'
     order by aces.seqreg, aces.nompes, aces.coddsp

    O problema está nesta parte do select:

     

    CONVERT(varchar(2), Day(aces.datacc)) + '/' +
        CONVERT(varchar(2), MONTH(aces.datacc)) + '/' +
        CONVERT(varchar(4), Year(aces.datacc)) + '  ' +
        right( '00' + cast( ((aces.horacc + 100)%1440)/60 as varchar), 2) + ':' +
        right( '00' + cast(((aces.horacc + 100)%1440)%60 as varchar), 2 ) 'SAIDA', --data e hora que deve sair

    A parte de data ele não traz a data seguinte na imagem abaixo a saída deveria ser 30/09/2018 01:27

     

    image.png.99e360d4568aa033ae2a5b1a3396e321.png

     

    Alguém poderia me dar uma força tenho que entregar essa semana este projeto no trabalho e está muito punk a bagaça...

     


  14. Galera salve salve a todos,

     

    Estou com um problema em um select  e preciso da ajuda de vocês.

     

    O select se refere a calculo de faturamentos os quais calculam os itens cobrados na NF.

    Eu preciso gerar um relatório destes lançamentos e com isso criei o select  abaixo.

    select bo.lager,
                   bo.id_os,
                   k.id_klient,
                   k.suchbegriff cnpj_cpf,
                   k.name,
                   bi.div_1 lote,
                   bi.div_10 di_dde,
                   (select distinct dis.id_dispatcher
                      from fiscal.dochd dc, wms_eadi.dispatcher dis
                     where dc.dochd_doc_id = bo.nr_nf
                       and dc.dochd_rps_desp = dis.suchbegriff) cod_comissaria,
                   (select distinct dis.bez
                      from fiscal.dochd dc, wms_eadi.dispatcher dis
                     where dc.dochd_doc_id = bo.nr_nf
                       and dc.dochd_rps_desp = dis.suchbegriff) comissaria,
                   bo.nr_nf,
                   bo.date_bill,
                   bo.date_emiss,
                   (select sum(round(osi.preis, 2))
                      from bill_os_item osi
                     where osi.lager = bo.lager
                       and osi.id_klient = k.id_klient
                       and osi.id_os = bo.id_os
                       and osi.billite = bi.billite
                       and osi.div_1 = bi.div_1
                       and nvl(osi.div_10, 'x') = nvl(bi.div_10, 'x')
                       and osi.billite in
                           (select bll.billite
                              from bill_item bll, werte wer
                             where bll.tipo_fat = wer.wert
                               and wer.werte_ber = 'ITENSF'
                               and wer.wert = 'ARMAZ')) vlr_armaz,
                   (select sum(round(osi.preis, 2))
                      from bill_os_item osi
                     where osi.lager = bo.lager
                       and osi.id_klient = k.id_klient
                       and osi.id_os = bo.id_os
                       and osi.billite = bi.billite
                       and osi.div_1 = bi.div_1
                       and nvl(osi.div_10, 'x') = nvl(bi.div_10, 'x')
                       and osi.billite in
                           (select bll.billite
                              from bill_item bll, werte wer
                             where bll.tipo_fat = wer.wert
                               and wer.werte_ber = 'ITENSF'
                               and wer.wert = 'GER.RISCO')) vlr_ger_risco,
                   (select sum(round(osi.preis, 2))
                      from bill_os_item osi
                     where osi.lager = bo.lager
                       and osi.id_klient = k.id_klient
                       and osi.id_os = bo.id_os
                       and osi.billite = bi.billite
                       and osi.div_1 = bi.div_1
                       and nvl(osi.div_10, 'x') = nvl(bi.div_10, 'x')
                       and osi.billite in
                           (select bll.billite
                              from bill_item bll, werte wer
                             where bll.tipo_fat = wer.wert
                               and wer.werte_ber = 'ITENSF'
                               and wer.wert = 'MOVIMENT')) vlr_movimentacao,
                   (select sum(round(osi.preis, 2))
                      from bill_os_item osi
                     where osi.lager = bo.lager
                       and osi.id_klient = k.id_klient
                       and osi.id_os = bo.id_os
                       and osi.billite = bi.billite
                       and osi.div_1 = bi.div_1
                       and nvl(osi.div_10, 'x') = nvl(bi.div_10, 'x')
                       and osi.billite in
                           (select bll.billite
                              from bill_item bll, werte wer
                             where bll.tipo_fat = wer.wert
                               and wer.werte_ber = 'ITENSF'
                               and wer.wert = 'DESUNIT')) vlr_desunit,
                   (select sum(round(osi.preis, 2))
                      from bill_os_item osi
                     where osi.lager = bo.lager
                       and osi.id_klient = k.id_klient
                       and osi.id_os = bo.id_os
                       and osi.billite = bi.billite
                       and osi.div_1 = bi.div_1
                       and nvl(osi.div_10, 'x') = nvl(bi.div_10, 'x')
                       and osi.billite in
                           (select bll.billite
                              from bill_item bll, werte wer
                             where bll.tipo_fat = wer.wert
                               and wer.werte_ber = 'ITENSF'
                               and wer.wert = 'PESAGEM')) vlr_pesagem,
                   (select sum(round(osi.preis, 2))
                      from bill_os_item osi
                     where osi.lager = bo.lager
                       and osi.id_klient = k.id_klient
                       and osi.id_os = bo.id_os
                       and osi.billite = bi.billite
                       and osi.div_1 = bi.div_1
                       and nvl(osi.div_10, 'x') = nvl(bi.div_10, 'x')
                       and osi.billite in
                           (select bll.billite
                              from bill_item bll, werte wer
                             where bll.tipo_fat = wer.wert
                               and wer.werte_ber = 'ITENSF'
                               and wer.wert = 'AVERBAÇÃO')) vlr_averbacao,
                   (select sum(round(osi.preis, 2))
                      from bill_os_item osi
                     where osi.lager = bo.lager
                       and osi.id_klient = k.id_klient
                       and osi.id_os = bo.id_os
                       and osi.billite = bi.billite
                       and osi.billite in
                           (select bll.billite
                              from bill_item bll, werte wer
                             where bll.tipo_fat = wer.wert
                               and wer.werte_ber = 'ITENSF'
                               and wer.wert = 'FAT.MINIMO.')) vlr_fat_minimo,
                   (select sum(round(osi.preis, 2))
                      from bill_os_item osi
                     where osi.lager = bo.lager
                       and osi.id_klient = k.id_klient
                       and osi.id_os = bo.id_os
                       and osi.billite = bi.billite
                       and osi.div_1 = bi.div_1
                       and nvl(osi.div_10, 'x') = nvl(bi.div_10, 'x')
                       and osi.billite in
                           (select bll.billite
                              from bill_item bll, werte wer
                             where bll.tipo_fat = wer.wert
                               and wer.werte_ber = 'ITENSF'
                               and bll.billite not in ('21.02', '21.03')
                               and wer.wert = 'OUT.SERV.')) vlr_outros_serv,
                   (select sum(round(osi.preis, 2))
                      from bill_os_item osi
                     where osi.lager = bo.lager
                       and osi.id_klient = k.id_klient
                       and osi.id_os = bo.id_os
                       and osi.billite = bi.billite
                       and osi.div_1 = bi.div_1
                       and nvl(osi.div_10, 'x') = nvl(bi.div_10, 'x')
                       and osi.billite in
                           (select bll.billite
                              from bill_item bll, werte wer
                             where bll.tipo_fat = wer.wert
                               and wer.werte_ber = 'ITENSF'
                               and bll.billite = '21.02'
                               and wer.wert = 'OUT.SERV.')) transf_in,
                   (select sum(round(osi.preis, 2))
                      from bill_os_item osi
                     where osi.lager = bo.lager
                       and osi.id_klient = k.id_klient
                       and osi.id_os = bo.id_os
                       and osi.billite = bi.billite
                       and osi.div_1 = bi.div_1
                       and nvl(osi.div_10, 'x') = nvl(bi.div_10, 'x')
                       and osi.billite in
                           (select bll.billite
                              from bill_item bll, werte wer
                             where bll.tipo_fat = wer.wert
                               and wer.werte_ber = 'ITENSF'
                               and bll.billite = '21.03'
                               and wer.wert = 'OUT.SERV.')) transf_out
            
              from bill_os bo, bill_os_item bi, klienten k
             where bo.lager = bi.lager
               and bo.id_klient = bi.id_klient
               and bo.id_os = bi.id_os
               and bo.lager = k.lager
               and bo.id_klient = k.id_klient
               and bo.status = '90'
               and k.id_klient = '2464'
            --and trunc(bo.date_bill) between '$inicio' and '$fim'
             group by bo.lager,
                      bo.id_os,
                      k.id_klient,
                      k.suchbegriff,
                      k.name,
                      bo.date_emiss,
                      bo.nr_nf,
                      bo.date_bill,
                      bi.billite,
                      bi.div_1,
                      bi.div_10

    Ele me traz os resultados por linhas de cada tipo de cobrança.

    Segue imagem do resultado.

    image.thumb.png.5548630874b10747847395f6f0768cb1.png

     

    Eu preciso que os resultados viessem em apenas uma linha, estou quebrando a cabeça com isso.

    o resultado tem que ser assim:

     

    image.thumb.png.ee2d8248173fd8433404ec0c608e2df3.png


  15. Fala galera, estou com um problema na consulta no banco.

    Tenho uma tabela que dois campos foram criados como timestamp,

    No select eu não consigo trazer os resultados, somente tratando o campo como to_char.

    É obrigatório eu configurar desta forma? 

    Segue o select:

     

    SELECT DISTINCT T.ID,
                    T.FINISH_EVENT,--ASSIM NÃO RETORNA E DÁ ERRO
                    TO_CHAR(T.FINISH_EVENT, 'DD/MM/YYYY HH24:MI'),--ASSIM RETORNA
                    T.GATE_ID,
                    T.GATE_TYPE,
                    I.TYPE,
                    I.VALUE_CONFIRMED,
                    T.SENT,
                    TO_CHAR(T.START_EVENT, 'DD/MM/YYYY HH24:MI'),
                    T.STATUS,
                    T.USERNAME,
                    T.UUID,
                    T.WAY,
                    TO_CHAR(T.START_EVENT, 'YYYYMMDD HH24:MI')
      FROM EASYGATE.INTGR_EVENT T, EASYGATE.INTGR_ASSET I
     WHERE T.STATUS = 'CRIADO_EASYGATE'
       AND T.ID = I.INTEGRATION_EVENT_ID
       AND I.VALUE_CONFIRMED IS NOT NULL
     GROUP BY T.ID,
              T.FINISH_EVENT,
              T.GATE_ID,
              T.GATE_TYPE,
              T.SENT,
              TO_CHAR(T.START_EVENT, 'DD/MM/YYYY HH24:MI'),
              TO_CHAR(T.START_EVENT, 'YYYYMMDD HH24:MI'),
              T.STATUS,
              T.USERNAME,
              T.UUID,
              T.WAY,
              I.TYPE,
              I.VALUE_CONFIRMED
     ORDER BY T.ID DESC

    ORA3115.PNG.afdd049525a6295131d8c8f4ba295b0e.PNG

    No PLSql esse é o erro que aparece.

     

     

    Aguardo ajuda :) 

×

Important Information

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