Wednesday, July 18, 2012

Transaction Nature & Suffix F7611B Vs F76432 Integrity


SELECT T1.PRITM,
       T1.PRLITM,
       T1.PRMCU,
       T1.PRKCOO,
       T1.PRDOCO,
       T1.PRDCTO,
       T1.PRLNID,
       T1.PRSFXO,
       T1.PRDOC,
       T1.PRDCT,
       T1.PRGLC,
       (SELECT T2.PJBNOP || T2.PJBSOP
          FROM PRODDTA.F76432 T2
         WHERE T1.PRDOCO = T2.PJDOCO
           AND T1.PRDCTO = T2.PJDCTO
           AND T1.PRLNID = T2.PJLNID
           AND T1.PRKCOO = T2.PJKCOO
           AND T1.PRSFXO = T2.PJSFXO) "F76432_Trans_Nat_Sfx",
       (T3.FDBNOP || T3.FDBSOP) "F7611B_Trans_Nat_Sfx",
       (SELECT TO_DATE(CONCAT('20',
                              CONCAT(SUBSTR(TO_CHAR(T1.PRTRDJ), 2, 2),
                                     SUBSTR(TO_CHAR(T1.PRTRDJ), 4, 3))),
                       'YYYYDDD')
          FROM DUAL) AS TRANSACTIONDATE,
       (SELECT TO_DATE(CONCAT('20',
                              CONCAT(SUBSTR(TO_CHAR(T1.PRDGL), 2, 2),
                                     SUBSTR(TO_CHAR(T1.PRDGL), 4, 3))),
                       'YYYYDDD')
          FROM DUAL) AS GLDATE,
       SUM(T1.PRQTYS / 1000),
       SUM(T1.PRAREC / 100)
  FROM PRODDTA.F43121 T1, PRODDTA.F7611B T3
 WHERE T1.PRMATC = 1
   AND T1.PRDCT = 'OV'
   AND T1.PRDGL >= 112153
   AND T1.PRDGL <= 112182
   AND T1.PRDOCO = 138019
   AND T1.PRDOCO = T3.FDDOCO
   AND T1.PRDCTO = T3.FDPDCT
   AND T1.PRKCOO = T3.FDKCOO
   AND T1.PRLNID = T3.FDLNID
   AND T1.PRSFXO = T3.FDSFXO
   AND T1.PRDCT = T3.FDDCTO
   AND T1.PRDOC = T3.FDDOC
 GROUP BY T1.PRITM,
          T1.PRLITM,
          T1.PRMCU,
          T1.PRKCOO,
          T1.PRDOCO,
          T1.PRDCTO,
          T1.PRDOC,
          T1.PRDCT,
          T1.PRGLC,
          T1.PRTRDJ,
          T1.PRDGL,
          T1.PRLNID,
          T1.PRSFXO,
          T3.FDBNOP,
          T3.FDBSOP
 ORDER BY T1.PRMCU, T1.PRDOCO, T1.PRDCTO;

F4111 Vs F30026 broken down by Cost Element


SELECT T0.IBITM,
       T0.IBLITM,
       T0.IBAITM,
       IM.IMDSC1,
       T0.IBMCU,
       T0.IBSRP6,
       T0.IBPRP5,
       T0.IBSTKT,
       T1.ILITM,
       T1.ILMCU,
       T1.ILMMCU,
       T1.ILDOC,
       T1.ILDCT,
       T1.ILDGL,
       T1.ILGLPT,
       T1.ILDCTO,
       T1.ILDOCO,
       T1.ILKCOO,
       T3.IECOST,
       T3.IECSL / 10000 "H1_Cost",
       T1.ILUNCS / 10000 "Unit_Cost",
       T1.ILTRQT / 1000 "Quantity",
       T1.ILPAID / 100 "Amount",
       T1.ILUKID,
       T1.ILAID,
       T1.ILAN8,
       T1.ILSHAN
  FROM PRODDTA.F4101  IM,
       PRODDTA.F4102  T0,
       PRODDTA.F4111  T1,
       PRODDTA.F30026 T3
 WHERE T1.ILDCT = 'OV'
   AND T1.ILDCTO = 'ON'
   AND T1.ILMCU < '     1000998'
   AND T1.ILGLPT <> 'IN61'
   AND T1.ILTRQT <> 0
   AND T1.ILDGL >= 111092
   AND T1.ILDGL <= 112092
   AND ROWNUM <= 10 --Comment this line if you want all records
   AND IM.IMITM = T0.IBITM
   AND T0.IBITM = T1.ILITM
   AND T0.IBMCU = T1.ILMCU
   AND IEITM = T0.IBITM
   AND IEMMCU = '     1000999'
   AND IELEDG = 'H1'
   AND IELOCN = ' '
   AND IELOTN = ' '
 ORDER BY T0.IBITM ASC;

Tuesday, July 17, 2012

Reversals in Current month Vs Receipts in Prior Month


SELECT T1.PRITM,
       T1.PRLITM,
       T1.PRMCU,
       T1.PRDOCO,
       T1.PRDCTO,
       T1.PRLNID,
       T1.PRSFXO,
       T1.PRDOC,
       T1.PRDCT,
       T1.PRGLC,
       T2.PJBNOP,
       T2.PJBSOP,
       (SELECT TO_DATE(CONCAT('20',
                              CONCAT(SUBSTR(TO_CHAR(T1.PRTRDJ), 2, 2),
                                     SUBSTR(TO_CHAR(T1.PRTRDJ), 4, 3))),
                       'YYYYDDD')
          FROM DUAL) AS TRANSACTIONDATE,
       (SELECT TO_DATE(CONCAT('20',
                              CONCAT(SUBSTR(TO_CHAR(T1.PRDGL), 2, 2),
                                     SUBSTR(TO_CHAR(T1.PRDGL), 4, 3))),
                       'YYYYDDD')
          FROM DUAL) AS GLDATE,
       SUM(T1.PRQTYS / 1000),
       SUM(T1.PRAREC / 100)
  FROM PRODDTA.F43121 T1, PRODDTA.F76432 T2
 WHERE T1.PRMATC = 1
   AND T1.PRDCT = 'OV'
   AND T1.PRDGL >= 112153
   AND T1.PRDGL <= 112182
   AND T1.PRDOCO = T2.PJDOCO
   AND T1.PRDCTO = T2.PJDCTO
   AND T1.PRLNID = T2.PJLNID
   AND T1.PRDOCO = 138019
   AND EXISTS (SELECT 'X'
          FROM PRODDTA.F43121 T3
         WHERE T1.PRDOCO = T3.PRDOCO
           AND T1.PRDCTO = T3.PRDCTO
           AND T1.PRLNID = T3.PRLNID
           AND T3.PRMATC = 4
           AND T3.PRDGL >= 112183
           AND T3.PRDGL <= 112213)
 GROUP BY T1.PRITM,
          T1.PRLITM,
          T1.PRMCU,
          T1.PRDOCO,
          T1.PRDCTO,
          T1.PRDOC,
          T1.PRDCT,
          T1.PRGLC,
          T1.PRTRDJ,
          T1.PRDGL,
          T1.PRLNID,
          T1.PRSFXO,
          T2.PJBNOP,
          T2.PJBSOP
 ORDER BY T1.PRMCU, T1.PRDOCO, T1.PRDCTO;


SELECT T1.PRITM,
       T1.PRLITM,
       T1.PRMCU,
       T1.PRDOCO,
       T1.PRDCTO,
       T1.PRLNID,
       T1.PRSFXO,
       T1.PRDOC,
       T1.PRDCT,
       T1.PRGLC,
       (SELECT TO_DATE(CONCAT('20',
                              CONCAT(SUBSTR(TO_CHAR(T1.PRTRDJ), 2, 2),
                                     SUBSTR(TO_CHAR(T1.PRTRDJ), 4, 3))),
                       'YYYYDDD')
          FROM DUAL) AS TRANSACTIONDATE,
       (SELECT TO_DATE(CONCAT('20',
                              CONCAT(SUBSTR(TO_CHAR(T1.PRDGL), 2, 2),
                                     SUBSTR(TO_CHAR(T1.PRDGL), 4, 3))),
                       'YYYYDDD')
          FROM DUAL) AS GLDATE,
       SUM(T1.PRQTYS / 1000),
       SUM(T1.PRAREC / 100)
          FROM PRODDTA.F43121 T1
         WHERE T1.PRDOCO = 138019
           AND T1.PRDCTO = 'OP'
           AND T1.PRMATC = 4
           AND T1.PRDGL >= 112183
           AND T1.PRDGL <= 112213
            GROUP BY T1.PRITM,
          T1.PRLITM,
          T1.PRMCU,
          T1.PRDOCO,
          T1.PRDCTO,
          T1.PRDOC,
          T1.PRDCT,
          T1.PRGLC,
          T1.PRTRDJ,
          T1.PRDGL,
          T1.PRLNID,
          T1.PRSFXO;

Compare Cardex Transactions with 07 Vs H1 Costs


SELECT T0.IBITM,
       T0.IBLITM,
       T0.IBAITM,
       T0.IBMCU,
       T0.IBSRP6,
       T0.IBPRP5,
       T0.IBSTKT,
       T1.ILITM,
       T1.ILMCU,
       T1.ILMMCU,
       T1.ILDOC,
       T1.ILDCT,
       T1.ILDGL,
       T1.ILGLPT,
       T1.ILDCTO,
       T1.ILDOCO,
       T1.ILKCOO,
       T1.ILTRQT / 1000,
       T1.ILPAID / 100,
       T1.ILUKID,
       T1.ILAID,
       T1.ILAN8,
       T1.ILSHAN,
       (SELECT SUM(IECSL / 10000)
          FROM PRODDTA.F30026
         WHERE IEITM = T0.IBITM
           AND IEMMCU = '     1000999'
           AND IELEDG = '07'
           AND IELOCN = ' '
           AND IELOTN = ' '
         GROUP BY IEITM, IEMMCU, IELEDG, IELOCN, IELOTN) "07_COST",
       (SELECT SUM(IECSL / 10000)
          FROM PRODDTA.F30026
         WHERE IEITM = T0.IBITM
           AND IEMMCU = '     1000999'
           AND IELEDG = 'H1'
           AND IELOCN = ' '
           AND IELOTN = ' '
         GROUP BY IEITM, IEMMCU, IELEDG, IELOCN, IELOTN) "H1_COST"
  FROM PRODDTA.F4102 T0, PRODDTA.F4111 T1
 WHERE ((T1.ILDCT = 'OV' AND T1.ILDCTO = 'ON' AND T1.ILMCU < '     1000998' AND
       T1.ILGLPT <> 'IN61' AND T1.ILTRQT <> 0) AND
       (T1.ILDGL >= 111092 AND T1.ILDGL <= 112092))
   AND ROWNUM <= 10
   AND (T0.IBITM = T1.ILITM AND T0.IBMCU = T1.ILMCU)
 ORDER BY T0.IBITM ASC;

Wednesday, July 11, 2012

Integrity Check between F4111 Vs F43121 with join on F76432


SELECT ILITM,
       ILLITM,
       ILMCU,
       ILGLPT,
       ILKCOO,
       ILDOCO,
       ILDCTO,
       ILLNID,
       ILDOC,
       ILDCT,
       (SELECT PJBNOP || PJBSOP
          FROM PRODDTA.F76432
         WHERE ILKCOO = PJKCOO
           AND ILDOCO = PJDOCO
           AND ILDCTO = PJDCTO
           AND ILLNID = PJLNID
           AND PJSFXO = '000') "TransNature_Suffix",
       (SELECT TO_DATE(CONCAT('20',
                              CONCAT(SUBSTR(TO_CHAR(ILTRDJ), 2, 2),
                                     SUBSTR(TO_CHAR(ILTRDJ), 4, 3))),
                       'YYYYDDD')
          FROM DUAL) AS TRANSACTIONDATE,
       (SELECT TO_DATE(CONCAT('20',
                              CONCAT(SUBSTR(TO_CHAR(ILDGL), 2, 2),
                                     SUBSTR(TO_CHAR(ILDGL), 4, 3))),
                       'YYYYDDD')
          FROM DUAL) AS GLDATE,
       SUM(ILTRQT / 1000),
       SUM(ILPAID / 100)
  FROM PRODDTA.F4111
 WHERE ILDCT = 'OV'
   AND ILDGL >= 112153
   AND ILDGL <= 112182
--   AND ROWNUM <= 1000
   AND NOT EXISTS (SELECT 'X'
          FROM PRODDTA.F43121
         WHERE PRDOCO = ILDOCO
           AND PRDCTO = ILDCTO
           AND PRLNID = ILLNID
           AND PRDOC = ILDOC
           AND PRKCOO = ILKCOO)
 GROUP BY ILITM,
          ILLITM,
          ILMCU,
          ILGLPT,
          ILKCOO,
          ILDOCO,
          ILDCTO,
          ILLNID,
          ILDOC,
          ILDCT,
          ILTRDJ,
          ILDGL
 ORDER BY ILMCU, ILDOCO, ILDCTO;
---------------------------------------------------------------------------------------------------------
SELECT ILDCTO, COUNT(DISTINCT(ILDOC))
  FROM PRODDTA.F4111
 WHERE ILDCT = 'OV'
   AND ILDGL >= 112032
   AND ILDGL <= 112060
   AND ILKCO = '00311' --AND ROWNUM <=1000
      --   AND ILDcto = 'OP'
   AND NOT EXISTS (SELECT *
          FROM PRODDTA.F43121
         WHERE ILDOCO = PRDOCO
           AND ILDCTO = PRDCTO
              --AND ILLNID = PRLNID
           AND ILDOC = PRDOC)
 GROUP BY ILDCTO
 ORDER BY ILDCTO ASC;


Saturday, July 7, 2012

Find Job Queues of all UBEs running



SELECT T1.JCPID, T0.JCJOBQUE, COUNT(*)
  FROM SVM812.F986110 T0, SVM812.F986114 T1
 WHERE T0.JCJOBNBR = T1.JCJOBNBR
   AND T0.JCEXEHOST = 'ryelxjdlabtp'
--AND T0.JCFNDFUF2 LIKE 'R31802A%'
 GROUP BY T1.JCPID, T0.JCJOBQUE
 ORDER BY T1.JCPID, T0.JCJOBQUE;

Wednesday, July 4, 2012

Integrity between Cardex Vs As off


SELECT ILITM, ILLITM, ILMCU, ILLOCN, ILLOTN, ILGLPT, INNQ06, SUM(ILTRQT)
  FROM PRODDTA.F4111, PRODDTA.F41112
 WHERE ILITM = INITM
   AND ILMCU = INMCU
   AND ILLOCN = INLOCN
   AND ILLOTN = INLOTN
   AND ILGLPT = INGLPT
   AND INDCT = 'BF'
   AND INCTRY = 20
   AND INFY = 12
   AND ILIPCD = 'Y'
   --AND ILITM = 405239
   AND ILMCU = '     3110082'
   AND ILDGL >= 112153
   AND ILDGL <= 112182
   AND ILUKID >= 9257279 --AND ROWNUM <=100000
 GROUP BY ILITM, ILLITM, ILMCU, ILLOCN, ILLOTN, ILGLPT, INNQ06
 HAVING SUM(iltrqt) <> innq06;