Advertisement
Guest User

Untitled

a guest
May 28th, 2018
118
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. INSERT INTO TRANSCRICAO_CHECK
  2. (
  3.     ID,
  4.  
  5.     ID_USUARIO,
  6.     TEMPOPROCESSAMENTO,
  7.     DATA_CRIACAO,
  8.     USED_EXTRA_TIME,
  9.  
  10.     MATCH,
  11.  
  12.     ID_TRANSCRICAO,
  13.     ID_IMAGEM,
  14.  
  15.     ID_FORMA_PAGAMENTO,
  16.     DATA_NOTA,
  17.     NUMERO_NOTA,
  18.     EMITENTE_CNPJ,
  19.     EMITENTE_RAZAO_SOCIAL,
  20.     EMITENTE_VERIFICADO,
  21.     VALOR,
  22.     ECF,
  23.     VENDEDOR,
  24.     VALOR_BRUTO,
  25.     CPF,
  26.  
  27.     STATUS,
  28.     INFO,
  29.     ORIGINAL,
  30.     ERROS
  31. )
  32.  
  33. SELECT
  34.     TRANSCRICAO_CHECK_ID_SEQ.NEXTVAL,
  35.  
  36.     -- T
  37.     ID_USUARIO,
  38.     TEMPOPROCESSAMENTO,
  39.     DATA_CRIACAO,
  40.     USED_EXTRA_TIME,
  41.  
  42.     MATCH,
  43.  
  44.     ID_TRANSCRICAO,
  45.     ID_IMAGEM,
  46.  
  47.     ID_FORMA_PAGAMENTO,
  48.     DATA_NOTA,
  49.     NUMERO_NOTA,
  50.     EMITENTE_CNPJ,
  51.     EMITENTE_RAZAO_SOCIAL,
  52.     EMITENTE_VERIFICADO,
  53.     VALOR,
  54.     ECF,
  55.     VENDEDOR,
  56.     VALOR_BRUTO,
  57.     CPF,
  58.  
  59.     STATUS,
  60.     INFO,
  61.     ORIGINAL,
  62.     '0'
  63.  
  64.  
  65. FROM (
  66.     SELECT
  67.         T.ID_USUARIO,
  68.         T.TEMPOPROCESSAMENTO,
  69.         T.DATA_CRIACAO,
  70.         T.USED_EXTRA_TIME,
  71.  
  72.         (
  73.             CASE WHEN (
  74.                 SELECT COUNT(1)
  75.                 FROM TRANSCRICAO TCOUNT
  76.                 WHERE T.ID_IMAGEM = TCOUNT.ID_IMAGEM
  77.             ) > 1
  78.             THEN (
  79.                 CASE WHEN T.DATA_CRIACAO = (
  80.                     SELECT MAX(TDUP.DATA_CRIACAO)
  81.                     FROM TRANSCRICAO TDUP
  82.                     WHERE T.ID_IMAGEM = TDUP.ID_IMAGEM
  83.                 ) THEN '4' ELSE '2' END
  84.             )
  85.             ELSE '4' END
  86.         ) MATCH,
  87.  
  88.         T.ID ID_TRANSCRICAO,
  89.         T.ID_IMAGEM,
  90.        
  91.         NF.ID_FORMA_PAGAMENTO,
  92.         NF.DATA_NOTA,
  93.         NF.NUMERO_NOTA,
  94.         NF.EMITENTE_CNPJ,
  95.         NF.EMITENTE_RAZAO_SOCIAL,
  96.         NF.EMITENTE_VERIFICADO,
  97.         NF.VALOR,
  98.         NF.ECF,
  99.         NF.VENDEDOR,
  100.         NF.VALOR_BRUTO,
  101.         NF.CPF,
  102.  
  103.         T.STATUS,
  104.         T.INFO,
  105.  
  106.         (
  107.             CASE WHEN (
  108.                 SELECT COUNT(1)
  109.                 FROM TRANSCRICAO TCOUNT
  110.                 WHERE T.ID_IMAGEM = TCOUNT.ID_IMAGEM
  111.             ) > 1
  112.             THEN (
  113.                 CASE WHEN T.DATA_CRIACAO = (
  114.                     SELECT MIN(TDUP.DATA_CRIACAO)
  115.                     FROM TRANSCRICAO TDUP
  116.                     WHERE T.ID_IMAGEM = TDUP.ID_IMAGEM
  117.                 ) THEN '1' ELSE '0' END
  118.             )
  119.             ELSE '1' END
  120.         ) ORIGINAL
  121.  
  122.     FROM TRANSCRICAO T
  123.     JOIN IMAGEM I ON T.ID_IMAGEM = I.ID
  124.     JOIN DOCUMENTO D ON D.ID = I.ID_DOCUMENTO
  125.     LEFT JOIN NOTA_FISCAL NF ON D.ID_NOTA_FISCAL = NF.ID AND T.INFO IS NULL
  126.  
  127.     WHERE NOT EXISTS (
  128.         SELECT * FROM TRANSCRICAO_CHECK TC WHERE T.ID = TC.ID_IMAGEM
  129.     )
  130. );
  131.  
  132.  
  133. -- DELETE
  134. SELECT *
  135.  
  136. FROM TRANSCRICAO
  137. WHERE ROWID IN (
  138.     SELECT RID FROM (
  139.         SELECT
  140.             ROWID RID,
  141.             ROW_NUMBER() OVER (PARTITION BY ID_IMAGEM ORDER BY ID_IMAGEM) RN
  142.         FROM TRANSCRICAO
  143.     )
  144.     WHERE RN > 1
  145. );
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement