cancel
Showing results for 
Search instead for 
Did you mean: 

Alert query inconsistency

pcorp01
Participant
0 Kudos

I'm not sure what changed, but this query was working fine for a while then when we needed to restart SBO service, that's when it stopped working as it should. I have this scheduled to send email at 4:30pm daily, to show orders created within the last 24hours (some days it won't send an email, when there were orders created). I have a similar query, but just different where clause (to show orders created within the day) - but this query is giving duplicate orders the next day, but is consistent in firing alerts. Can someone review my query to see if I need to make corrections. TIA!

SELECT T0."CreateDate",
       T0."DocDate",
       T2."CardCode" AS "BP Code",
       T2."CardName" AS "Customer Name",
       T3."SlpName" AS "Account Executive",
       'Invoice' AS "DocType",
       '' || CAST(T0."DocNum" AS nVarChar) AS "DocNum",
       T12."DocNum" AS "Sales Order Num",
       T12."U_Quoter_Num" AS "Quoter Num",
       T12."DocStatus" AS "SO Status",
       T8."ItmsGrpNam" AS "Item Group",
       T6."FrgnName" AS "Product",
       T1."ItemCode" AS "Item No",
       T1."Dscription" AS "Item Description",
       (T1."LineNum" +1) AS "LineNum",
       T1."Quantity"
FROM OINV T0
INNER JOIN INV1 T1 ON T0."DocEntry" = T1."DocEntry"
INNER JOIN OCRD T2 ON T0."CardCode" = T2."CardCode"
INNER JOIN OSLP T3 ON T0."SlpCode" = T3."SlpCode"
INNER JOIN OACT T4 ON T1."AcctCode" = T4."AcctCode"
LEFT OUTER JOIN OITM T6 ON T1."ItemCode" = T6."ItemCode"
LEFT OUTER JOIN OITB T8 ON T6."ItmsGrpCod" = T8."ItmsGrpCod"
LEFT OUTER JOIN INV12 T5 ON T0."DocEntry" = T5."DocEntry"
LEFT OUTER JOIN OOND T7 ON T2."IndustryC" = T7."IndCode"
INNER JOIN OSLP T9 ON T2."SlpCode" = T9."SlpCode"
LEFT OUTER JOIN DLN1 T10 ON T1."BaseEntry" = T10."DocEntry"
AND T1."BaseLine" = T10."LineNum"
AND T1."BaseType" = 15
LEFT OUTER JOIN RDR1 T11 ON T10."BaseEntry" = T11."DocEntry"
AND T10."BaseLine" = T11."LineNum"
AND T10."BaseType" = 17
LEFT OUTER JOIN ORDR T12 ON T12."DocEntry" = T11."DocEntry"
LEFT OUTER
 JOIN ODLN T13 ON T13."DocEntry" = T12."DocEntry"
WHERE (T0."CreateDate") >= (ADD_SECONDS(CURRENT_TIMESTAMP, -86400))
  AND T4."FormatCode" NOT Like '%%3%%'
  AND T4."FormatCode" NOT Like '%%5%%'
  AND T4."FormatCode" NOT Like '%%6%%'
  AND T4."FormatCode" NOT Like '%%7%%'
  AND T4."FormatCode" NOT Like '%%8%%'
  AND T4."FormatCode" NOT Like '%%9%%'
  AND T4."FormatCode" NOT Like '%%221%%'
  AND T4."FormatCode" NOT Like '%%412%%'
  AND T4."FormatCode" NOT Like '%%4115%%'
  AND T4."FormatCode" NOT Like '%%216%%'
  AND T8."ItmsGrpNam" NOT Like '%%Freight%%'
  AND T1."ItemCode" NOT Like '%%Paid%%'
UNION
SELECT T0."CreateDate",
       T0."DocDate",
       T2."CardCode" AS "BP Code",
       T2."CardName" AS "Customer Name",
       T3."SlpName" AS "Account Executive",
       'Credit Memo' AS "DocType",
       '' ||CAST(T0."DocNum" AS nVarChar) AS "DocNum",
       T12."DocNum" AS "Sales Order Num",
       T12."U_Quoter_Num" AS "Quoter Num",
       T12."DocStatus" AS "SO Status",
       T8."ItmsGrpNam" AS "Item Group",
       T6."FrgnName" AS "Product",
       T1."ItemCode" AS "Item No",
       T1."Dscription" AS "Item Description",
       (T1."LineNum" +1) AS "LineNum",
       T1."Quantity"
FROM ORIN T0
INNER JOIN RIN1 T1 ON T0."DocEntry" = T1."DocEntry"
INNER JOIN OCRD T2 ON T0."CardCode" = T2."CardCode"
INNER JOIN OSLP T3 ON T0."SlpCode" = T3."SlpCode"
INNER JOIN OACT T4 ON T1."AcctCode" = T4."AcctCode"
LEFT OUTER JOIN OITM T6 ON T1."ItemCode" = T6."ItemCode"
LEFT OUTER JOIN OITB T8 ON T6."ItmsGrpCod" = T8."ItmsGrpCod"
LEFT OUTER JOIN RIN12 T5 ON T0."DocEntry" = T5."DocEntry"
LEFT OUTER JOIN OOND T7 ON T2."IndustryC" = T7."IndCode"
INNER JOIN OSLP T9 ON T2."SlpCode" = T9."SlpCode"
LEFT OUTER JOIN DLN1 T10 ON T1."BaseEntry" = T10."DocEntry"
AND T1."BaseLine" = T10."LineNum"
AND T1."BaseType" = 15
LEFT OUTER JOIN RDR1 T11 ON T10."BaseEntry" = T11."DocEntry"
AND T10."BaseLine" = T11."LineNum"
AND T10."BaseType" = 17
LEFT OUTER JOIN ORDR T12 ON T12."DocEntry" = T11."DocEntry"
LEFT OUTER JOIN ODLN T13 ON T13."DocEntry" = T12."DocEntry"
WHERE (T0."CreateDate") >= (ADD_SECONDS(CURRENT_TIMESTAMP, -86400))
  AND T4."FormatCode" NOT Like '%%3%%'
  AND T4."FormatCode" NOT Like '%%5%%'
  AND T4."FormatCode" NOT Like '%%6%%'
  AND T4."FormatCode" NOT Like '%%7%%'
  AND T4."FormatCode" NOT Like '%%8%%'
  AND T4."FormatCode" NOT Like '%%9%%'
  AND T4."FormatCode" NOT Like '%%221%%'
  AND T4."FormatCode" NOT Like '%%412%%'
  AND T4."FormatCode" NOT Like '%%4115%%'
  AND T4."FormatCode" NOT Like '%%216%%'
  AND T8."ItmsGrpNam" NOT Like '%%Freight%%'
  AND T1."ItemCode" NOT Like '%%Paid%%'
ORDER BY "CreateDate",
"Account Executive",
         "DocType",
         "DocNum",
         "LineNum",
         "DocDate",
         "Customer Name"

Accepted Solutions (0)

Answers (0)