Query Tuning Assistance - part 5

"FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND "FIN_PAYMENT"."PAYMENT_DATE"<="FIN_AGING_ARG"."AGING_DATE" AND
("FIN_AGING_ARG"."PLC_ID" IS NULL OR "FIN_AGING_ARG"."PLC_ID" IS NOT NULL AND
"FIN_PAYMENT"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND "FIN_PAYMENT"."LOCATION_ID" IS NOT NULL) AND CASE WHEN
"FIN_AGING_ARG"."AGE_CREDIT_FLAG"='Y' THEN CASE WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AG
ING_ARG"."B_1"+1 THEN 1 WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AGING_ARG"."B_2"+1 THEN 2
WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AGING_ARG"."B_3"+1 THEN 3 WHEN
"FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AGING_ARG"."B_4"+1 THEN 4 WHEN
"FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AGING_ARG"."B_5"+1 THEN 5 ELSE 6 END ELSE 1 END >0)
859 - filter("FIN_PAYMENT"."FINANCIAL_SOURCE"='A/P' AND ("FIN_PAYMENT"."INTERNAL_FLAG"='N' OR
"FIN_PAYMENT"."INTERNAL_FLAG"='Y' AND ("FIN_PAYMENT"."PAYMENT_TYPE"='C' OR "FIN_PAYMENT"."PAYMENT_TYPE"='N')))
862 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
863 - filter("FIN_TRANSACTION"."PAYMENT_NBR" IS NOT NULL AND ("FIN_AGING_ARG"."MAX_KEY"=0 OR
"FIN_TRANSACTION"."TRANSACTION_NBR"<="FIN_AGING_ARG"."MAX_KEY"))
864 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
866 - filter("A"."TRANSACTION_DATE"<=:B1 AND ("A"."TRANSACTION_NBR"<=:B2 OR :B3=0))
867 - access("A"."PAYMENT_NBR"=:B1)
868 - filter(("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2)) AND EXISTS (SELECT 0 FROM
GRAINVTRC."FIN_TRANSACTION" "A" WHERE "A"."PAYMENT_NBR"=:B3 AND ("A"."TRANSACTION_NBR"<=:B4 OR :B5=0)))
869 - filter(NULL IS NOT NULL)
872 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
873 - filter("FIN_PAYMENT"."FINANCIAL_SOURCE"='A/P' AND ("FIN_PAYMENT"."INTERNAL_FLAG"='N' OR
"FIN_PAYMENT"."INTERNAL_FLAG"='Y' AND ("FIN_PAYMENT"."PAYMENT_TYPE"='C' OR "FIN_PAYMENT"."PAYMENT_TYPE"='N')) AND
("FIN_PAYMENT"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_SOURCE" OR "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND
("UNAPPLIED_AMOUNT"<>0 OR "FIN_AGING_ARG"."AGING_DATE"<="LAST_TRANSACTION_DATE") AND ("FIN_AGING_ARG"."PLC_ID" IS NULL
OR "FIN_AGING_ARG"."PLC_ID" IS NOT NULL AND "FIN_PAYMENT"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND
"FIN_PAYMENT"."LOCATION_ID" IS NOT NULL))
874 - access("FIN_PAYMENT"."PAYMENT_DATE">"FIN_AGING_ARG"."AGING_DATE")
875 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
876 - filter("A"."TRANSACTION_NBR"<=:B1 OR :B2=0)
877 - access("A"."PAYMENT_NBR"=:B1)
878 - filter("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2))
879 - filter(NULL IS NOT NULL)
883 - filter("FIN_AGING_ARG"."INVOICE_DATE_FLAG"='N')
884 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
885 - filter("FIN_INVOICE"."FINANCIAL_SOURCE"='A/R' AND ("FIN_INVOICE"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_S
OURCE" OR "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND "FIN_INVOICE"."INVOICE_DATE"<="FIN_AGING_ARG"."AGING_DATE" AND
("FIN_AGING_ARG"."PLC_ID" IS NULL OR "FIN_INVOICE"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND "FIN_AGING_ARG"."PLC_ID"
IS NOT NULL) AND CASE WHEN (("FIN_AGING_ARG"."AGE_CREDIT_FLAG"='Y' AND "FIN_INVOICE"."ORIGINAL_AMOUNT"<0) OR
"FIN_INVOICE"."ORIGINAL_AMOUNT">0) THEN CASE WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG
"."B_1"+1 THEN 1 WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG"."B_2"+1 THEN 2 WHEN
"FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG"."B_3"+1 THEN 3 WHEN
"FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG"."B_4"+1 THEN 4 WHEN
"FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG"."B_5"+1 THEN 5 ELSE 6 END ELSE 1 END >0)
886 - filter("FIN_TRANSACTION"."INVOICE_NBR" IS NOT NULL AND
"FIN_INVOICE"."INVOICE_NBR"="FIN_TRANSACTION"."INVOICE_NBR" AND ("FIN_AGING_ARG"."MAX_KEY"=0 OR
"FIN_TRANSACTION"."TRANSACTION_NBR"<="FIN_AGING_ARG"."MAX_KEY"))
887 - access("FIN_TRANSACTION"."TRANSACTION_NBR"= (SELECT MAX("TRANSACTION_NBR") FROM GRAINVTRC."FIN_TRANSACTION" "A"
WHERE "A"."INVOICE_NBR"=:B1 AND "A"."TRANSACTION_DATE"<=:B2 AND ("A"."TRANSACTION_NBR"<=:B3 OR :B4=0)))
889 - filter("A"."TRANSACTION_DATE"<=:B1 AND ("A"."TRANSACTION_NBR"<=:B2 OR :B3=0))
890 - access("A"."INVOICE_NBR"=:B1)
891 - filter("FIN_AGING_ARG"."CREDIT_STATUS"='0' OR "FIN_AGING_ARG"."CREDIT_STATUS"='1' AND
"S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "FIN_AGING_ARG"."CREDIT_STATUS"='2' AND "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT
NULL OR "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT NULL)
892 - access("FIN_INVOICE"."CUSTOMER_VENDOR_ID"="S1_CUSTOMER_DATA"."CUSTOMER_ID")
893 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
894 - filter("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2))
895 - filter(NULL IS NOT NULL)
899 - filter("FIN_AGING_ARG"."INVOICE_DATE_FLAG"='Y')
900 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
901 - filter("FIN_INVOICE"."FINANCIAL_SOURCE"='A/R' AND ("FIN_INVOICE"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_S
OURCE" OR "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND "FIN_INVOICE"."INVOICE_DATE"<="FIN_AGING_ARG"."AGING_DATE" AND
("FIN_AGING_ARG"."PLC_ID" IS NULL OR "FIN_INVOICE"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND "FIN_AGING_ARG"."PLC_ID"
IS NOT NULL) AND CASE WHEN (("FIN_AGING_ARG"."AGE_CREDIT_FLAG"='Y' AND "FIN_INVOICE"."ORIGINAL_AMOUNT"<0) OR
"FIN_INVOICE"."ORIGINAL_AMOUNT">0) THEN CASE WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING
_ARG"."B_1"+1 THEN 1 WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING_ARG"."B_2"+1 THEN 2
WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING_ARG"."B_3"+1 THEN 3 WHEN
"FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING_ARG"."B_4"+1 THEN 4 WHEN
"FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING_ARG"."B_5"+1 THEN 5 ELSE 6 END ELSE 1 END >0)
902 - filter("FIN_TRANSACTION"."INVOICE_NBR" IS NOT NULL AND
"FIN_INVOICE"."INVOICE_NBR"="FIN_TRANSACTION"."INVOICE_NBR" AND ("FIN_AGING_ARG"."MAX_KEY"=0 OR
"FIN_TRANSACTION"."TRANSACTION_NBR"<="FIN_AGING_ARG"."MAX_KEY"))
903 - access("FIN_TRANSACTION"."TRANSACTION_NBR"= (SELECT MAX("TRANSACTION_NBR") FROM GRAINVTRC."FIN_TRANSACTION" "A"
WHERE "A"."INVOICE_NBR"=:B1 AND "A"."TRANSACTION_DATE"<=:B2 AND ("A"."TRANSACTION_NBR"<=:B3 OR :B4=0)))
905 - filter("A"."TRANSACTION_DATE"<=:B1 AND ("A"."TRANSACTION_NBR"<=:B2 OR :B3=0))
906 - access("A"."INVOICE_NBR"=:B1)
907 - filter("FIN_AGING_ARG"."CREDIT_STATUS"='0' OR "FIN_AGING_ARG"."CREDIT_STATUS"='1' AND
"S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "FIN_AGING_ARG"."CREDIT_STATUS"='2' AND "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT
NULL OR "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT NULL)
908 - access("FIN_INVOICE"."CUSTOMER_VENDOR_ID"="S1_CUSTOMER_DATA"."CUSTOMER_ID")
909 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
910 - filter(("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2)) AND EXISTS (SELECT 0 FROM
GRAINVTRC."FIN_TRANSACTION" "A" WHERE "A"."INVOICE_NBR"=:B3 AND ("A"."TRANSACTION_NBR"<=:B4 OR :B5=0)))
911 - access("FIN_INVOICE"."CUSTOMER_VENDOR_ID"="S1_CUSTOMER_DATA"."CUSTOMER_ID")
filter(("FIN_INVOICE"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_SOURCE" OR
"FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND "FIN_INVOICE"."INVOICE_DATE">"FIN_AGING_ARG"."AGING_DATE" AND
("FIN_AGING_ARG"."PLC_ID" IS NULL OR "FIN_INVOICE"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND "FIN_AGING_ARG"."PLC_ID"
IS NOT NULL) AND ("FIN_INVOICE"."INVOICE_STATUS"<>'C' OR "FIN_AGING_ARG"."AGING_DATE"<="FIN_INVOICE"."LAST_TRANSACTION_
DATE" OR "FIN_INVOICE"."BALANCE_FORWARD_PRINT_FLAG"<>'Y'))
914 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
915 - filter("FIN_AGING_ARG"."CREDIT_STATUS"='0' OR "FIN_AGING_ARG"."CREDIT_STATUS"='1' AND
"S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "FIN_AGING_ARG"."CREDIT_STATUS"='2' AND "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT
NULL OR "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT NULL)
916 - filter("FIN_INVOICE"."FINANCIAL_SOURCE"='A/R')
917 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
918 - filter("A"."TRANSACTION_NBR"<=:B1 OR :B2=0)
919 - access("A"."INVOICE_NBR"=:B1)
920 - filter(("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2)) AND "FIN_TRANSACTION"."TRANSACTION_NBR"= (SELECT
MAX("TRANSACTION_NBR") FROM GRAINVTRC."FIN_TRANSACTION" "A" WHERE "A"."PAYMENT_NBR"=:B3 AND
"A"."TRANSACTION_DATE"<=:B4 AND ("A"."TRANSACTION_NBR"<=:B5 OR :B6=0)))
921 - filter(NULL IS NOT NULL AND NULL IS NOT NULL)
922 - access("FIN_PAYMENT"."CUSTOMER_VENDOR_ID"="S1_CUSTOMER_DATA"."CUSTOMER_ID")
filter("FIN_AGING_ARG"."CREDIT_STATUS"='0' OR "FIN_AGING_ARG"."CREDIT_STATUS"='1' AND
"S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "FIN_AGING_ARG"."CREDIT_STATUS"='2' AND "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT
NULL OR "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT NULL)
924 - access("FIN_PAYMENT"."PAYMENT_NBR"="FIN_TRANSACTION"."PAYMENT_NBR")
filter(("FIN_PAYMENT"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_SOURCE" OR
"FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND "FIN_PAYMENT"."PAYMENT_DATE"<="FIN_AGING_ARG"."AGING_DATE" AND
("FIN_AGING_ARG"."PLC_ID" IS NULL OR "FIN_AGING_ARG"."PLC_ID" IS NOT NULL AND
"FIN_PAYMENT"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND "FIN_PAYMENT"."LOCATION_ID" IS NOT NULL) AND CASE WHEN
"FIN_AGING_ARG"."AGE_CREDIT_FLAG"='Y' THEN CASE WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AG
ING_ARG"."B_1"+1 THEN 1 WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AGING_ARG"."B_2"+1 THEN 2
WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AGING_ARG"."B_3"+1 THEN 3 WHEN
"FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AGING_ARG"."B_4"+1 THEN 4 WHEN
"FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AGING_ARG"."B_5"+1 THEN 5 ELSE 6 END ELSE 1 END >0)
925 - filter("FIN_PAYMENT"."FINANCIAL_SOURCE"='A/R' AND ("FIN_PAYMENT"."INTERNAL_FLAG"='N' OR
"FIN_PAYMENT"."INTERNAL_FLAG"='Y' AND ("FIN_PAYMENT"."PAYMENT_TYPE"='C' OR "FIN_PAYMENT"."PAYMENT_TYPE"='N')))
928 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
929 - filter("FIN_TRANSACTION"."PAYMENT_NBR" IS NOT NULL AND ("FIN_AGING_ARG"."MAX_KEY"=0 OR
"FIN_TRANSACTION"."TRANSACTION_NBR"<="FIN_AGING_ARG"."MAX_KEY"))
930 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
932 - filter("A"."TRANSACTION_DATE"<=:B1 AND ("A"."TRANSACTION_NBR"<=:B2 OR :B3=0))
933 - access("A"."PAYMENT_NBR"=:B1)
934 - filter(("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2)) AND EXISTS (SELECT 0 FROM
GRAINVTRC."FIN_TRANSACTION" "A" WHERE "A"."PAYMENT_NBR"=:B3 AND ("A"."TRANSACTION_NBR"<=:B4 OR :B5=0)))
935 - filter(NULL IS NOT NULL)
939 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
940 - filter("FIN_PAYMENT"."FINANCIAL_SOURCE"='A/R' AND ("FIN_PAYMENT"."INTERNAL_FLAG"='N' OR
"FIN_PAYMENT"."INTERNAL_FLAG"='Y' AND ("FIN_PAYMENT"."PAYMENT_TYPE"='C' OR "FIN_PAYMENT"."PAYMENT_TYPE"='N')) AND
("FIN_PAYMENT"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_SOURCE" OR "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND
("UNAPPLIED_AMOUNT"<>0 OR "FIN_AGING_ARG"."AGING_DATE"<="LAST_TRANSACTION_DATE") AND ("FIN_AGING_ARG"."PLC_ID" IS NULL
OR "FIN_AGING_ARG"."PLC_ID" IS NOT NULL AND "FIN_PAYMENT"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND
"FIN_PAYMENT"."LOCATION_ID" IS NOT NULL))
941 - access("FIN_PAYMENT"."PAYMENT_DATE">"FIN_AGING_ARG"."AGING_DATE")
942 - filter("FIN_AGING_ARG"."CREDIT_STATUS"='0' OR "FIN_AGING_ARG"."CREDIT_STATUS"='1' AND
"S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "FIN_AGING_ARG"."CREDIT_STATUS"='2' AND "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT
NULL OR "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT NULL)
943 - access("FIN_PAYMENT"."CUSTOMER_VENDOR_ID"="S1_CUSTOMER_DATA"."CUSTOMER_ID")
944 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
945 - filter("A"."TRANSACTION_NBR"<=:B1 OR :B2=0)
946 - access("A"."PAYMENT_NBR"=:B1)
947 - filter("A"."FINANCIAL_SOURCE"='A/R')
948 - access("FIN_AGING_INVOICE_VIEW"."SERIAL_NUMBER"="A"."INVOICE_NBR")
949 - access("A1_USER_LOCATION"."USER_ID"='BRENT' AND "A1_USER_LOCATION"."PLC_ID"="A"."LOCATION_ID")
950 - access("A"."TRADER_ID"="S1_TRADER"."TRADER_ID"(+))
953 - access("SB"."NAME_AND_ADDRESS_ID"="A"."CUSTOMER_VENDOR_ID")
955 - access("SB"."NAME_AND_ADDRESS_ID"="S1_CUSTOMER_DATA"."CUSTOMER_ID")
956 - access("FIN_TRANSACTION"."INVOICE_NBR"="A"."INVOICE_NBR")
filter("FIN_TRANSACTION"."INVOICE_NBR" IS NOT NULL)
959 - access("SA"."NAME_AND_ADDRESS_ID"="A"."LOCATION_ID")
963 - access("FIN_TRANSACTION"."TRANSACTION_TYPE"="FIN_TRANSACTION_TYPE"."CODE")
964 - filter("FIN_TRANSACTION"."PAYMENT_NBR" IS NOT NULL)
966 - access("A"."CUSTOMER_VENDOR_ID"="S1_NA_BUSINESS_TYPE"."NAME_AND_ADDRESS_ID"(+))
968 - access("A"."CURRENCY_CODE"="S1_CURRENCY"."CURRENCY_CODE")
969 - access("S1_CURRENCY_A"."CURRENCY_CODE"="SA"."CURRENCY_CODE")
977 - filter("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2))
978 - filter(NULL IS NOT NULL)
981 - filter("FIN_AGING_ARG"."INVOICE_DATE_FLAG"='N')
982 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
983 - filter("FIN_INVOICE"."FINANCIAL_SOURCE"='A/P' AND ("FIN_INVOICE"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_S
OURCE" OR "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND "FIN_INVOICE"."INVOICE_DATE"<="FIN_AGING_ARG"."AGING_DATE" AND
("FIN_AGING_ARG"."PLC_ID" IS NULL OR "FIN_INVOICE"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND "FIN_AGING_ARG"."PLC_ID"
IS NOT NULL) AND CASE WHEN (("FIN_AGING_ARG"."AGE_CREDIT_FLAG"='Y' AND "FIN_INVOICE"."ORIGINAL_AMOUNT"<0) OR
"FIN_INVOICE"."ORIGINAL_AMOUNT">0) THEN CASE WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG
"."B_1"+1 THEN 1 WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG"."B_2"+1 THEN 2 WHEN
"FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG"."B_3"+1 THEN 3 WHEN
"FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG"."B_4"+1 THEN 4 WHEN
"FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG"."B_5"+1 THEN 5 ELSE 6 END ELSE 1 END >0)
984 - filter("FIN_TRANSACTION"."INVOICE_NBR" IS NOT NULL AND
"FIN_INVOICE"."INVOICE_NBR"="FIN_TRANSACTION"."INVOICE_NBR" AND ("FIN_AGING_ARG"."MAX_KEY"=0 OR
"FIN_TRANSACTION"."TRANSACTION_NBR"<="FIN_AGING_ARG"."MAX_KEY"))
985 - access("FIN_TRANSACTION"."TRANSACTION_NBR"= (SELECT MAX("TRANSACTION_NBR") FROM GRAINVTRC."FIN_TRANSACTION" "A"
WHERE "A"."INVOICE_NBR"=:B1 AND "A"."TRANSACTION_DATE"<=:B2 AND ("A"."TRANSACTION_NBR"<=:B3 OR :B4=0)))
987 - filter("A"."TRANSACTION_DATE"<=:B1 AND ("A"."TRANSACTION_NBR"<=:B2 OR :B3=0))
988 - access("A"."INVOICE_NBR"=:B1)
989 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
990 - filter("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2))
991 - filter(NULL IS NOT NULL)
994 - filter("FIN_AGING_ARG"."INVOICE_DATE_FLAG"='Y')
995 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
996 - filter("FIN_INVOICE"."FINANCIAL_SOURCE"='A/P' AND ("FIN_INVOICE"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_S
OURCE" OR "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND "FIN_INVOICE"."INVOICE_DATE"<="FIN_AGING_ARG"."AGING_DATE" AND
("FIN_AGING_ARG"."PLC_ID" IS NULL OR "FIN_INVOICE"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND "FIN_AGING_ARG"."PLC_ID"
IS NOT NULL) AND CASE WHEN (("FIN_AGING_ARG"."AGE_CREDIT_FLAG"='Y' AND "FIN_INVOICE"."ORIGINAL_AMOUNT"<0) OR
"FIN_INVOICE"."ORIGINAL_AMOUNT">0) THEN CASE WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING
_ARG"."B_1"+1 THEN 1 WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING_ARG"."B_2"+1 THEN 2
WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING_ARG"."B_3"+1 THEN 3 WHEN
"FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING_ARG"."B_4"+1 THEN 4 WHEN
"FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING_ARG"."B_5"+1 THEN 5 ELSE 6 END ELSE 1 END >0)
997 - filter("FIN_TRANSACTION"."INVOICE_NBR" IS NOT NULL AND
"FIN_INVOICE"."INVOICE_NBR"="FIN_TRANSACTION"."INVOICE_NBR" AND ("FIN_AGING_ARG"."MAX_KEY"=0 OR
"FIN_TRANSACTION"."TRANSACTION_NBR"<="FIN_AGING_ARG"."MAX_KEY"))
998 - access("FIN_TRANSACTION"."TRANSACTION_NBR"= (SELECT MAX("TRANSACTION_NBR") FROM GRAINVTRC."FIN_TRANSACTION" "A"
WHERE "A"."INVOICE_NBR"=:B1 AND "A"."TRANSACTION_DATE"<=:B2 AND ("A"."TRANSACTION_NBR"<=:B3 OR :B4=0)))
1000 - filter("A"."TRANSACTION_DATE"<=:B1 AND ("A"."TRANSACTION_NBR"<=:B2 OR :B3=0))
1001 - access("A"."INVOICE_NBR"=:B1)
1002 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
1003 - filter(("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2)) AND EXISTS (SELECT 0 FROM
GRAINVTRC."FIN_TRANSACTION" "A" WHERE "A"."INVOICE_NBR"=:B3 AND ("A"."TRANSACTION_NBR"<=:B4 OR :B5=0)))
1006 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
1007 - filter("FIN_INVOICE"."FINANCIAL_SOURCE"='A/P' AND ("FIN_INVOICE"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_S
OURCE" OR "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND "FIN_INVOICE"."INVOICE_DATE">"FIN_AGING_ARG"."AGING_DATE" AND
("FIN_AGING_ARG"."PLC_ID" IS NULL OR "FIN_INVOICE"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND "FIN_AGING_ARG"."PLC_ID"
IS NOT NULL) AND ("FIN_INVOICE"."INVOICE_STATUS"<>'C' OR "FIN_AGING_ARG"."AGING_DATE"<="FIN_INVOICE"."LAST_TRANSACTION_
DATE" OR "FIN_INVOICE"."BALANCE_FORWARD_PRINT_FLAG"<>'Y'))
1008 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
1009 - filter("A"."TRANSACTION_NBR"<=:B1 OR :B2=0)
1010 - access("A"."INVOICE_NBR"=:B1)
1011 - filter(("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2)) AND "FIN_TRANSACTION"."TRANSACTION_NBR"= (SELECT
MAX("TRANSACTION_NBR") FROM GRAINVTRC."FIN_TRANSACTION" "A" WHERE "A"."PAYMENT_NBR"=:B3 AND
"A"."TRANSACTION_DATE"<=:B4 AND ("A"."TRANSACTION_NBR"<=:B5 OR :B6=0)))
1012 - filter(NULL IS NOT NULL AND NULL IS NOT NULL)
1013 - access("FIN_PAYMENT"."PAYMENT_NBR"="FIN_TRANSACTION"."PAYMENT_NBR")
filter(("FIN_PAYMENT"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_SOURCE" OR
"FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND "FIN_PAYMENT"."PAYMENT_DATE"<="FIN_AGING_ARG"."AGING_DATE" AND
("FIN_AGING_ARG"."PLC_ID" IS NULL OR "FIN_AGING_ARG"."PLC_ID" IS NOT NULL AND
"FIN_PAYMENT"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND "FIN_PAYMENT"."LOCATION_ID" IS NOT NULL) AND CASE WHEN
"FIN_AGING_ARG"."AGE_CREDIT_FLAG"='Y' THEN CASE WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AG
ING_ARG"."B_1"+1 THEN 1 WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AGING_ARG"."B_2"+1 THEN 2
WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AGING_ARG"."B_3"+1 THEN 3 WHEN
"FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AGING_ARG"."B_4"+1 THEN 4 WHEN
"FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AGING_ARG"."B_5"+1 THEN 5 ELSE 6 END ELSE 1 END >0)
1014 - filter("FIN_PAYMENT"."FINANCIAL_SOURCE"='A/P' AND ("FIN_PAYMENT"."INTERNAL_FLAG"='N' OR
"FIN_PAYMENT"."INTERNAL_FLAG"='Y' AND ("FIN_PAYMENT"."PAYMENT_TYPE"='C' OR "FIN_PAYMENT"."PAYMENT_TYPE"='N')))
1017 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
1018 - filter("FIN_TRANSACTION"."PAYMENT_NBR" IS NOT NULL AND ("FIN_AGING_ARG"."MAX_KEY"=0 OR
"FIN_TRANSACTION"."TRANSACTION_NBR"<="FIN_AGING_ARG"."MAX_KEY"))
1019 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
1021 - filter("A"."TRANSACTION_DATE"<=:B1 AND ("A"."TRANSACTION_NBR"<=:B2 OR :B3=0))
1022 - access("A"."PAYMENT_NBR"=:B1)
1023 - filter(("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2)) AND EXISTS (SELECT 0 FROM
GRAINVTRC."FIN_TRANSACTION" "A" WHERE "A"."PAYMENT_NBR"=:B3 AND ("A"."TRANSACTION_NBR"<=:B4 OR :B5=0)))
1024 - filter(NULL IS NOT NULL)
1027 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
1028 - filter("FIN_PAYMENT"."FINANCIAL_SOURCE"='A/P' AND ("FIN_PAYMENT"."INTERNAL_FLAG"='N' OR
"FIN_PAYMENT"."INTERNAL_FLAG"='Y' AND ("FIN_PAYMENT"."PAYMENT_TYPE"='C' OR "FIN_PAYMENT"."PAYMENT_TYPE"='N')) AND
("FIN_PAYMENT"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_SOURCE" OR "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND
("UNAPPLIED_AMOUNT"<>0 OR "FIN_AGING_ARG"."AGING_DATE"<="LAST_TRANSACTION_DATE") AND ("FIN_AGING_ARG"."PLC_ID" IS NULL
OR "FIN_AGING_ARG"."PLC_ID" IS NOT NULL AND "FIN_PAYMENT"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND
"FIN_PAYMENT"."LOCATION_ID" IS NOT NULL))
1029 - access("FIN_PAYMENT"."PAYMENT_DATE">"FIN_AGING_ARG"."AGING_DATE")
1030 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
1031 - filter("A"."TRANSACTION_NBR"<=:B1 OR :B2=0)
1032 - access("A"."PAYMENT_NBR"=:B1)
1033 - filter("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2))
1034 - filter(NULL IS NOT NULL)
1038 - filter("FIN_AGING_ARG"."INVOICE_DATE_FLAG"='N')
1039 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
1040 - filter("FIN_INVOICE"."FINANCIAL_SOURCE"='A/R' AND ("FIN_INVOICE"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_S
OURCE" OR "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND "FIN_INVOICE"."INVOICE_DATE"<="FIN_AGING_ARG"."AGING_DATE" AND
("FIN_AGING_ARG"."PLC_ID" IS NULL OR "FIN_INVOICE"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND "FIN_AGING_ARG"."PLC_ID"
IS NOT NULL) AND CASE WHEN (("FIN_AGING_ARG"."AGE_CREDIT_FLAG"='Y' AND "FIN_INVOICE"."ORIGINAL_AMOUNT"<0) OR
"FIN_INVOICE"."ORIGINAL_AMOUNT">0) THEN CASE WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG
"."B_1"+1 THEN 1 WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG"."B_2"+1 THEN 2 WHEN
"FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG"."B_3"+1 THEN 3 WHEN
"FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG"."B_4"+1 THEN 4 WHEN
"FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG"."B_5"+1 THEN 5 ELSE 6 END ELSE 1 END >0)
1041 - filter("FIN_TRANSACTION"."INVOICE_NBR" IS NOT NULL AND
"FIN_INVOICE"."INVOICE_NBR"="FIN_TRANSACTION"."INVOICE_NBR" AND ("FIN_AGING_ARG"."MAX_KEY"=0 OR
"FIN_TRANSACTION"."TRANSACTION_NBR"<="FIN_AGING_ARG"."MAX_KEY"))
1042 - access("FIN_TRANSACTION"."TRANSACTION_NBR"= (SELECT MAX("TRANSACTION_NBR") FROM GRAINVTRC."FIN_TRANSACTION" "A"
WHERE "A"."INVOICE_NBR"=:B1 AND "A"."TRANSACTION_DATE"<=:B2 AND ("A"."TRANSACTION_NBR"<=:B3 OR :B4=0)))
1044 - filter("A"."TRANSACTION_DATE"<=:B1 AND ("A"."TRANSACTION_NBR"<=:B2 OR :B3=0))
1045 - access("A"."INVOICE_NBR"=:B1)
1046 - filter("FIN_AGING_ARG"."CREDIT_STATUS"='0' OR "FIN_AGING_ARG"."CREDIT_STATUS"='1' AND
"S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "FIN_AGING_ARG"."CREDIT_STATUS"='2' AND "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT
NULL OR "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT NULL)
1047 - access("FIN_INVOICE"."CUSTOMER_VENDOR_ID"="S1_CUSTOMER_DATA"."CUSTOMER_ID")
1048 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
1049 - filter("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2))
1050 - filter(NULL IS NOT NULL)
1054 - filter("FIN_AGING_ARG"."INVOICE_DATE_FLAG"='Y')
1055 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
1056 - filter("FIN_INVOICE"."FINANCIAL_SOURCE"='A/R' AND ("FIN_INVOICE"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_S
OURCE" OR "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND "FIN_INVOICE"."INVOICE_DATE"<="FIN_AGING_ARG"."AGING_DATE" AND
("FIN_AGING_ARG"."PLC_ID" IS NULL OR "FIN_INVOICE"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND "FIN_AGING_ARG"."PLC_ID"
IS NOT NULL) AND CASE WHEN (("FIN_AGING_ARG"."AGE_CREDIT_FLAG"='Y' AND "FIN_INVOICE"."ORIGINAL_AMOUNT"<0) OR
"FIN_INVOICE"."ORIGINAL_AMOUNT">0) THEN CASE WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING
_ARG"."B_1"+1 THEN 1 WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING_ARG"."B_2"+1 THEN 2
WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING_ARG"."B_3"+1 THEN 3 WHEN
"FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING_ARG"."B_4"+1 THEN 4 WHEN
"FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING_ARG"."B_5"+1 THEN 5 ELSE 6 END ELSE 1 END >0)
1057 - filter("FIN_TRANSACTION"."INVOICE_NBR" IS NOT NULL AND
"FIN_INVOICE"."INVOICE_NBR"="FIN_TRANSACTION"."INVOICE_NBR" AND ("FIN_AGING_ARG"."MAX_KEY"=0 OR
"FIN_TRANSACTION"."TRANSACTION_NBR"<="FIN_AGING_ARG"."MAX_KEY"))
1058 - access("FIN_TRANSACTION"."TRANSACTION_NBR"= (SELECT MAX("TRANSACTION_NBR") FROM GRAINVTRC."FIN_TRANSACTION" "A"
WHERE "A"."INVOICE_NBR"=:B1 AND "A"."TRANSACTION_DATE"<=:B2 AND ("A"."TRANSACTION_NBR"<=:B3 OR :B4=0)))
1060 - filter("A"."TRANSACTION_DATE"<=:B1 AND ("A"."TRANSACTION_NBR"<=:B2 OR :B3=0))

Hi,
did u try it: SQL and PL/SQL FAQ
item 3?

Similar Messages

  • Query Tuning Assistance - part 1

    Predicate Information (identified by operation id):
    4 - access("FIN_TRANSACTION"."TRANSACTION_TYPE"="FIN_TRANSACTION_TYPE"."CODE")
    7 - access("A"."CURRENCY_CODE"="S1_CURRENCY"."CURRENCY_CODE")
    8 - access("S1_CURRENCY_A"."CURRENCY_CODE"="SA"."CURRENCY_CODE")
    17 - filter("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
    WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2))
    20 - filter("FIN_AGING_ARG"."INVOICE_DATE_FLAG"='N')
    21 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
    22 - filter("FIN_INVOICE"."FINANCIAL_SOURCE"='A/P' AND ("FIN_INVOICE"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_S
    OURCE" OR "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND "FIN_INVOICE"."INVOICE_DATE"<="FIN_AGING_ARG"."AGING_DATE" AND
    ("FIN_AGING_ARG"."PLC_ID" IS NULL OR "FIN_INVOICE"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND "FIN_AGING_ARG"."PLC_ID"
    IS NOT NULL) AND CASE WHEN (("FIN_AGING_ARG"."AGE_CREDIT_FLAG"='Y' AND "FIN_INVOICE"."ORIGINAL_AMOUNT"<0) OR
    "FIN_INVOICE"."ORIGINAL_AMOUNT">0) THEN CASE WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG
    "."B_1"+1 THEN 1 WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG"."B_2"+1 THEN 2 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG"."B_3"+1 THEN 3 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG"."B_4"+1 THEN 4 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG"."B_5"+1 THEN 5 ELSE 6 END ELSE 1 END >0)
    23 - filter("FIN_TRANSACTION"."INVOICE_NBR" IS NOT NULL AND
    "FIN_INVOICE"."INVOICE_NBR"="FIN_TRANSACTION"."INVOICE_NBR" AND ("FIN_AGING_ARG"."MAX_KEY"=0 OR
    "FIN_TRANSACTION"."TRANSACTION_NBR"<="FIN_AGING_ARG"."MAX_KEY"))
    24 - access("FIN_TRANSACTION"."TRANSACTION_NBR"= (SELECT MAX("TRANSACTION_NBR") FROM GRAINVTRC."FIN_TRANSACTION" "A"
    WHERE "A"."INVOICE_NBR"=:B1 AND "A"."TRANSACTION_DATE"<=:B2 AND ("A"."TRANSACTION_NBR"<=:B3 OR :B4=0)))
    26 - filter("A"."TRANSACTION_DATE"<=:B1 AND ("A"."TRANSACTION_NBR"<=:B2 OR :B3=0))
    27 - access("A"."INVOICE_NBR"=:B1)
    28 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
    29 - filter("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
    WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2))
    32 - filter("FIN_AGING_ARG"."INVOICE_DATE_FLAG"='Y')
    33 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
    34 - filter("FIN_INVOICE"."FINANCIAL_SOURCE"='A/P' AND ("FIN_INVOICE"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_S
    OURCE" OR "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND "FIN_INVOICE"."INVOICE_DATE"<="FIN_AGING_ARG"."AGING_DATE" AND
    ("FIN_AGING_ARG"."PLC_ID" IS NULL OR "FIN_INVOICE"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND "FIN_AGING_ARG"."PLC_ID"
    IS NOT NULL) AND CASE WHEN (("FIN_AGING_ARG"."AGE_CREDIT_FLAG"='Y' AND "FIN_INVOICE"."ORIGINAL_AMOUNT"<0) OR
    "FIN_INVOICE"."ORIGINAL_AMOUNT">0) THEN CASE WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING
    _ARG"."B_1"+1 THEN 1 WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING_ARG"."B_2"+1 THEN 2
    WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING_ARG"."B_3"+1 THEN 3 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING_ARG"."B_4"+1 THEN 4 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING_ARG"."B_5"+1 THEN 5 ELSE 6 END ELSE 1 END >0)
    35 - filter("FIN_TRANSACTION"."INVOICE_NBR" IS NOT NULL AND
    "FIN_INVOICE"."INVOICE_NBR"="FIN_TRANSACTION"."INVOICE_NBR" AND ("FIN_AGING_ARG"."MAX_KEY"=0 OR
    "FIN_TRANSACTION"."TRANSACTION_NBR"<="FIN_AGING_ARG"."MAX_KEY"))
    36 - access("FIN_TRANSACTION"."TRANSACTION_NBR"= (SELECT MAX("TRANSACTION_NBR") FROM GRAINVTRC."FIN_TRANSACTION" "A"
    WHERE "A"."INVOICE_NBR"=:B1 AND "A"."TRANSACTION_DATE"<=:B2 AND ("A"."TRANSACTION_NBR"<=:B3 OR :B4=0)))
    38 - filter("A"."TRANSACTION_DATE"<=:B1 AND ("A"."TRANSACTION_NBR"<=:B2 OR :B3=0))
    39 - access("A"."INVOICE_NBR"=:B1)
    40 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
    41 - filter(("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
    WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2)) AND EXISTS (SELECT 0 FROM
    GRAINVTRC."FIN_TRANSACTION" "A" WHERE "A"."INVOICE_NBR"=:B3 AND ("A"."TRANSACTION_NBR"<=:B4 OR :B5=0)))
    44 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
    45 - filter("FIN_INVOICE"."FINANCIAL_SOURCE"='A/P' AND ("FIN_INVOICE"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_S
    OURCE" OR "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND "FIN_INVOICE"."INVOICE_DATE">"FIN_AGING_ARG"."AGING_DATE" AND
    ("FIN_AGING_ARG"."PLC_ID" IS NULL OR "FIN_INVOICE"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND "FIN_AGING_ARG"."PLC_ID"
    IS NOT NULL) AND ("FIN_INVOICE"."INVOICE_STATUS"<>'C' OR "FIN_AGING_ARG"."AGING_DATE"<="FIN_INVOICE"."LAST_TRANSACTION_
    DATE" OR "FIN_INVOICE"."BALANCE_FORWARD_PRINT_FLAG"<>'Y'))
    46 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
    47 - filter("A"."TRANSACTION_NBR"<=:B1 OR :B2=0)
    48 - access("A"."INVOICE_NBR"=:B1)
    49 - filter(("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
    WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2)) AND "FIN_TRANSACTION"."TRANSACTION_NBR"= (SELECT
    MAX("TRANSACTION_NBR") FROM GRAINVTRC."FIN_TRANSACTION" "A" WHERE "A"."PAYMENT_NBR"=:B3 AND
    "A"."TRANSACTION_DATE"<=:B4 AND ("A"."TRANSACTION_NBR"<=:B5 OR :B6=0)))
    50 - filter(NULL IS NOT NULL)
    51 - access("FIN_PAYMENT"."PAYMENT_NBR"="FIN_TRANSACTION"."PAYMENT_NBR")
    filter(("FIN_PAYMENT"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_SOURCE" OR
    "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND "FIN_PAYMENT"."PAYMENT_DATE"<="FIN_AGING_ARG"."AGING_DATE" AND
    ("FIN_AGING_ARG"."PLC_ID" IS NULL OR "FIN_AGING_ARG"."PLC_ID" IS NOT NULL AND
    "FIN_PAYMENT"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND "FIN_PAYMENT"."LOCATION_ID" IS NOT NULL) AND CASE WHEN
    "FIN_AGING_ARG"."AGE_CREDIT_FLAG"='Y' THEN CASE WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AG
    ING_ARG"."B_1"+1 THEN 1 WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AGING_ARG"."B_2"+1 THEN 2
    WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AGING_ARG"."B_3"+1 THEN 3 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AGING_ARG"."B_4"+1 THEN 4 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AGING_ARG"."B_5"+1 THEN 5 ELSE 6 END ELSE 1 END >0)
    52 - filter("FIN_PAYMENT"."FINANCIAL_SOURCE"='A/P' AND ("FIN_PAYMENT"."INTERNAL_FLAG"='N' OR
    "FIN_PAYMENT"."INTERNAL_FLAG"='Y' AND ("FIN_PAYMENT"."PAYMENT_TYPE"='C' OR "FIN_PAYMENT"."PAYMENT_TYPE"='N')))
    55 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
    56 - filter("FIN_TRANSACTION"."PAYMENT_NBR" IS NOT NULL AND ("FIN_AGING_ARG"."MAX_KEY"=0 OR
    "FIN_TRANSACTION"."TRANSACTION_NBR"<="FIN_AGING_ARG"."MAX_KEY"))
    57 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
    59 - filter("A"."TRANSACTION_DATE"<=:B1 AND ("A"."TRANSACTION_NBR"<=:B2 OR :B3=0))
    60 - access("A"."PAYMENT_NBR"=:B1)
    61 - filter(("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
    WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2)) AND EXISTS (SELECT 0 FROM
    GRAINVTRC."FIN_TRANSACTION" "A" WHERE "A"."PAYMENT_NBR"=:B3 AND ("A"."TRANSACTION_NBR"<=:B4 OR :B5=0)))
    62 - filter(NULL IS NOT NULL)
    65 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
    66 - filter("FIN_PAYMENT"."FINANCIAL_SOURCE"='A/P' AND ("FIN_PAYMENT"."INTERNAL_FLAG"='N' OR
    "FIN_PAYMENT"."INTERNAL_FLAG"='Y' AND ("FIN_PAYMENT"."PAYMENT_TYPE"='C' OR "FIN_PAYMENT"."PAYMENT_TYPE"='N')) AND
    ("FIN_PAYMENT"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_SOURCE" OR "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND
    ("UNAPPLIED_AMOUNT"<>0 OR "FIN_AGING_ARG"."AGING_DATE"<="LAST_TRANSACTION_DATE") AND ("FIN_AGING_ARG"."PLC_ID" IS NULL
    OR "FIN_AGING_ARG"."PLC_ID" IS NOT NULL AND "FIN_PAYMENT"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND
    "FIN_PAYMENT"."LOCATION_ID" IS NOT NULL))
    67 - access("FIN_PAYMENT"."PAYMENT_DATE">"FIN_AGING_ARG"."AGING_DATE")
    68 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
    69 - filter("A"."TRANSACTION_NBR"<=:B1 OR :B2=0)
    70 - access("A"."PAYMENT_NBR"=:B1)
    71 - filter("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
    WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2))
    75 - filter("FIN_AGING_ARG"."INVOICE_DATE_FLAG"='N')
    76 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
    77 - filter("FIN_INVOICE"."FINANCIAL_SOURCE"='A/R' AND ("FIN_INVOICE"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_S
    OURCE" OR "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND "FIN_INVOICE"."INVOICE_DATE"<="FIN_AGING_ARG"."AGING_DATE" AND
    ("FIN_AGING_ARG"."PLC_ID" IS NULL OR "FIN_INVOICE"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND "FIN_AGING_ARG"."PLC_ID"
    IS NOT NULL) AND CASE WHEN (("FIN_AGING_ARG"."AGE_CREDIT_FLAG"='Y' AND "FIN_INVOICE"."ORIGINAL_AMOUNT"<0) OR
    "FIN_INVOICE"."ORIGINAL_AMOUNT">0) THEN CASE WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG
    "."B_1"+1 THEN 1 WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG"."B_2"+1 THEN 2 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG"."B_3"+1 THEN 3 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG"."B_4"+1 THEN 4 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG"."B_5"+1 THEN 5 ELSE 6 END ELSE 1 END >0)
    78 - filter("FIN_TRANSACTION"."INVOICE_NBR" IS NOT NULL AND
    "FIN_INVOICE"."INVOICE_NBR"="FIN_TRANSACTION"."INVOICE_NBR" AND ("FIN_AGING_ARG"."MAX_KEY"=0 OR
    "FIN_TRANSACTION"."TRANSACTION_NBR"<="FIN_AGING_ARG"."MAX_KEY"))
    79 - access("FIN_TRANSACTION"."TRANSACTION_NBR"= (SELECT MAX("TRANSACTION_NBR") FROM GRAINVTRC."FIN_TRANSACTION" "A"
    WHERE "A"."INVOICE_NBR"=:B1 AND "A"."TRANSACTION_DATE"<=:B2 AND ("A"."TRANSACTION_NBR"<=:B3 OR :B4=0)))
    81 - filter("A"."TRANSACTION_DATE"<=:B1 AND ("A"."TRANSACTION_NBR"<=:B2 OR :B3=0))
    82 - access("A"."INVOICE_NBR"=:B1)
    83 - filter("FIN_AGING_ARG"."CREDIT_STATUS"='0' OR "FIN_AGING_ARG"."CREDIT_STATUS"='1' AND
    "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "FIN_AGING_ARG"."CREDIT_STATUS"='2' AND "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT
    NULL OR "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT NULL)
    84 - access("FIN_INVOICE"."CUSTOMER_VENDOR_ID"="S1_CUSTOMER_DATA"."CUSTOMER_ID")
    85 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
    86 - filter("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
    WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2))
    90 - filter("FIN_AGING_ARG"."INVOICE_DATE_FLAG"='Y')
    91 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
    92 - filter("FIN_INVOICE"."FINANCIAL_SOURCE"='A/R' AND ("FIN_INVOICE"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_S
    OURCE" OR "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND "FIN_INVOICE"."INVOICE_DATE"<="FIN_AGING_ARG"."AGING_DATE" AND
    ("FIN_AGING_ARG"."PLC_ID" IS NULL OR "FIN_INVOICE"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND "FIN_AGING_ARG"."PLC_ID"
    IS NOT NULL) AND CASE WHEN (("FIN_AGING_ARG"."AGE_CREDIT_FLAG"='Y' AND "FIN_INVOICE"."ORIGINAL_AMOUNT"<0) OR
    "FIN_INVOICE"."ORIGINAL_AMOUNT">0) THEN CASE WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING
    _ARG"."B_1"+1 THEN 1 WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING_ARG"."B_2"+1 THEN 2
    WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING_ARG"."B_3"+1 THEN 3 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING_ARG"."B_4"+1 THEN 4 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING_ARG"."B_5"+1 THEN 5 ELSE 6 END ELSE 1 END >0)
    93 - filter("FIN_TRANSACTION"."INVOICE_NBR" IS NOT NULL AND
    "FIN_INVOICE"."INVOICE_NBR"="FIN_TRANSACTION"."INVOICE_NBR" AND ("FIN_AGING_ARG"."MAX_KEY"=0 OR
    "FIN_TRANSACTION"."TRANSACTION_NBR"<="FIN_AGING_ARG"."MAX_KEY"))
    94 - access("FIN_TRANSACTION"."TRANSACTION_NBR"= (SELECT MAX("TRANSACTION_NBR") FROM GRAINVTRC."FIN_TRANSACTION" "A"
    WHERE "A"."INVOICE_NBR"=:B1 AND "A"."TRANSACTION_DATE"<=:B2 AND ("A"."TRANSACTION_NBR"<=:B3 OR :B4=0)))
    96 - filter("A"."TRANSACTION_DATE"<=:B1 AND ("A"."TRANSACTION_NBR"<=:B2 OR :B3=0))
    97 - access("A"."INVOICE_NBR"=:B1)
    98 - filter("FIN_AGING_ARG"."CREDIT_STATUS"='0' OR "FIN_AGING_ARG"."CREDIT_STATUS"='1' AND
    "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "FIN_AGING_ARG"."CREDIT_STATUS"='2' AND "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT
    NULL OR "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT NULL)
    99 - access("FIN_INVOICE"."CUSTOMER_VENDOR_ID"="S1_CUSTOMER_DATA"."CUSTOMER_ID")
    100 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
    101 - filter(("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
    WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2)) AND EXISTS (SELECT 0 FROM
    GRAINVTRC."FIN_TRANSACTION" "A" WHERE "A"."INVOICE_NBR"=:B3 AND ("A"."TRANSACTION_NBR"<=:B4 OR :B5=0)))
    102 - access("FIN_INVOICE"."CUSTOMER_VENDOR_ID"="S1_CUSTOMER_DATA"."CUSTOMER_ID")
    filter(("FIN_INVOICE"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_SOURCE" OR
    "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND "FIN_INVOICE"."INVOICE_DATE">"FIN_AGING_ARG"."AGING_DATE" AND
    ("FIN_AGING_ARG"."PLC_ID" IS NULL OR "FIN_INVOICE"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND "FIN_AGING_ARG"."PLC_ID"
    IS NOT NULL) AND ("FIN_INVOICE"."INVOICE_STATUS"<>'C' OR "FIN_AGING_ARG"."AGING_DATE"<="FIN_INVOICE"."LAST_TRANSACTION_
    DATE" OR "FIN_INVOICE"."BALANCE_FORWARD_PRINT_FLAG"<>'Y'))
    105 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
    106 - filter("FIN_AGING_ARG"."CREDIT_STATUS"='0' OR "FIN_AGING_ARG"."CREDIT_STATUS"='1' AND
    "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "FIN_AGING_ARG"."CREDIT_STATUS"='2' AND "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT
    NULL OR "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT NULL)
    107 - filter("FIN_INVOICE"."FINANCIAL_SOURCE"='A/R')
    108 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
    109 - filter("A"."TRANSACTION_NBR"<=:B1 OR :B2=0)
    110 - access("A"."INVOICE_NBR"=:B1)
    111 - filter(("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
    WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2)) AND "FIN_TRANSACTION"."TRANSACTION_NBR"= (SELECT
    MAX("TRANSACTION_NBR") FROM GRAINVTRC."FIN_TRANSACTION" "A" WHERE "A"."PAYMENT_NBR"=:B3 AND
    "A"."TRANSACTION_DATE"<=:B4 AND ("A"."TRANSACTION_NBR"<=:B5 OR :B6=0)))
    112 - filter(NULL IS NOT NULL)
    113 - access("FIN_PAYMENT"."CUSTOMER_VENDOR_ID"="S1_CUSTOMER_DATA"."CUSTOMER_ID")
    filter("FIN_AGING_ARG"."CREDIT_STATUS"='0' OR "FIN_AGING_ARG"."CREDIT_STATUS"='1' AND
    "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "FIN_AGING_ARG"."CREDIT_STATUS"='2' AND "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT
    NULL OR "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT NULL)
    115 - access("FIN_PAYMENT"."PAYMENT_NBR"="FIN_TRANSACTION"."PAYMENT_NBR")
    filter(("FIN_PAYMENT"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_SOURCE" OR
    "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND "FIN_PAYMENT"."PAYMENT_DATE"<="FIN_AGING_ARG"."AGING_DATE" AND
    ("FIN_AGING_ARG"."PLC_ID" IS NULL OR "FIN_AGING_ARG"."PLC_ID" IS NOT NULL AND
    "FIN_PAYMENT"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND "FIN_PAYMENT"."LOCATION_ID" IS NOT NULL) AND CASE WHEN
    "FIN_AGING_ARG"."AGE_CREDIT_FLAG"='Y' THEN CASE WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AG
    ING_ARG"."B_1"+1 THEN 1 WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AGING_ARG"."B_2"+1 THEN 2
    WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AGING_ARG"."B_3"+1 THEN 3 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AGING_ARG"."B_4"+1 THEN 4 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AGING_ARG"."B_5"+1 THEN 5 ELSE 6 END ELSE 1 END >0)
    116 - filter("FIN_PAYMENT"."FINANCIAL_SOURCE"='A/R' AND ("FIN_PAYMENT"."INTERNAL_FLAG"='N' OR
    "FIN_PAYMENT"."INTERNAL_FLAG"='Y' AND ("FIN_PAYMENT"."PAYMENT_TYPE"='C' OR "FIN_PAYMENT"."PAYMENT_TYPE"='N')))
    119 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
    120 - filter("FIN_TRANSACTION"."PAYMENT_NBR" IS NOT NULL AND ("FIN_AGING_ARG"."MAX_KEY"=0 OR
    "FIN_TRANSACTION"."TRANSACTION_NBR"<="FIN_AGING_ARG"."MAX_KEY"))
    121 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
    123 - filter("A"."TRANSACTION_DATE"<=:B1 AND ("A"."TRANSACTION_NBR"<=:B2 OR :B3=0))
    124 - access("A"."PAYMENT_NBR"=:B1)
    125 - filter(("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
    WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2)) AND EXISTS (SELECT 0 FROM
    GRAINVTRC."FIN_TRANSACTION" "A" WHERE "A"."PAYMENT_NBR"=:B3 AND ("A"."TRANSACTION_NBR"<=:B4 OR :B5=0)))
    126 - filter(NULL IS NOT NULL)
    130 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
    131 - filter("FIN_PAYMENT"."FINANCIAL_SOURCE"='A/R' AND ("FIN_PAYMENT"."INTERNAL_FLAG"='N' OR
    "FIN_PAYMENT"."INTERNAL_FLAG"='Y' AND ("FIN_PAYMENT"."PAYMENT_TYPE"='C' OR "FIN_PAYMENT"."PAYMENT_TYPE"='N')) AND
    ("FIN_PAYMENT"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_SOURCE" OR "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND
    ("UNAPPLIED_AMOUNT"<>0 OR "FIN_AGING_ARG"."AGING_DATE"<="LAST_TRANSACTION_DATE") AND ("FIN_AGING_ARG"."PLC_ID" IS NULL
    OR "FIN_AGING_ARG"."PLC_ID" IS NOT NULL AND "FIN_PAYMENT"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND
    "FIN_PAYMENT"."LOCATION_ID" IS NOT NULL))
    132 - access("FIN_PAYMENT"."PAYMENT_DATE">"FIN_AGING_ARG"."AGING_DATE")
    133 - filter("FIN_AGING_ARG"."CREDIT_STATUS"='0' OR "FIN_AGING_ARG"."CREDIT_STATUS"='1' AND
    "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "FIN_AGING_ARG"."CREDIT_STATUS"='2' AND "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT
    NULL OR "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT NULL)
    134 - access("FIN_PAYMENT"."CUSTOMER_VENDOR_ID"="S1_CUSTOMER_DATA"."CUSTOMER_ID")
    135 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
    136 - filter("A"."TRANSACTION_NBR"<=:B1 OR :B2=0)
    137 - access("A"."PAYMENT_NBR"=:B1)
    139 - access("TB_TRANSACTION"."TRANSACTION_NBR"="FIN_AGING_INVOICE_VIEW"."MAX_TRANSACTION_NBR")
    140 - filter("A"."FINANCIAL_SOURCE"='A/R' AND ("TB_TRANSACTION"."AFTER_STATUS"<>'C' OR "A"."INVOICE_STATUS"<>'C' OR
    "A"."BALANCE_FORWARD_PRINT_FLAG"<>'Y'))
    141 - access("FIN_AGING_INVOICE_VIEW"."SERIAL_NUMBER"="A"."INVOICE_NBR")
    142 - access("A1_USER_LOCATION"."USER_ID"='BRENT' AND "A1_USER_LOCATION"."PLC_ID"="A"."LOCATION_ID")
    144 - access("SB"."NAME_AND_ADDRESS_ID"="A"."CUSTOMER_VENDOR_ID")
    146 - access("SB"."NAME_AND_ADDRESS_ID"="S1_CUSTOMER_DATA"."CUSTOMER_ID")
    148 - access("SA"."NAME_AND_ADDRESS_ID"="A"."LOCATION_ID")
    151 - filter("FIN_TRANSACTION"."PAYMENT_NBR" IS NULL)
    152 - access("FIN_TRANSACTION"."INVOICE_NBR"="A"."INVOICE_NBR")
    filter("FIN_TRANSACTION"."INVOICE_NBR" IS NOT NULL)
    153 - access("A"."TRADER_ID"="S1_TRADER"."TRADER_ID"(+))
    155 - access("A"."CUSTOMER_VENDOR_ID"="S1_NA_BUSINESS_TYPE"."NAME_AND_ADDRESS_ID"(+))
    157 - access("FIN_TRANSACTION"."TRANSACTION_TYPE"="FIN_TRANSACTION_TYPE"."CODE")
    158 - filter("FIN_TRANSACTION"."PAYMENT_NBR" IS NOT NULL)
    162 - access("A"."CURRENCY_CODE"="S1_CURRENCY"."CURRENCY_CODE")
    163 - access("S1_CURRENCY_A"."CURRENCY_CODE"="SA"."CURRENCY_CODE")
    172 - filter("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
    WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2))
    175 - filter("FIN_AGING_ARG"."INVOICE_DATE_FLAG"='N')
    176 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
    177 - filter("FIN_INVOICE"."FINANCIAL_SOURCE"='A/P' AND ("FIN_INVOICE"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_S
    OURCE" OR "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND "FIN_INVOICE"."INVOICE_DATE"<="FIN_AGING_ARG"."AGING_DATE" AND
    ("FIN_AGING_ARG"."PLC_ID" IS NULL OR "FIN_INVOICE"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND "FIN_AGING_ARG"."PLC_ID"
    IS NOT NULL) AND CASE WHEN (("FIN_AGING_ARG"."AGE_CREDIT_FLAG"='Y' AND "FIN_INVOICE"."ORIGINAL_AMOUNT"<0) OR
    "FIN_INVOICE"."ORIGINAL_AMOUNT">0) THEN CASE WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG
    "."B_1"+1 THEN 1 WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG"."B_2"+1 THEN 2 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG"."B_3"+1 THEN 3 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG"."B_4"+1 THEN 4 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG"."B_5"+1 THEN 5 ELSE 6 END ELSE 1 END >0)
    178 - filter("FIN_TRANSACTION"."INVOICE_NBR" IS NOT NULL AND
    "FIN_INVOICE"."INVOICE_NBR"="FIN_TRANSACTION"."INVOICE_NBR" AND ("FIN_AGING_ARG"."MAX_KEY"=0 OR
    "FIN_TRANSACTION"."TRANSACTION_NBR"<="FIN_AGING_ARG"."MAX_KEY"))
    179 - access("FIN_TRANSACTION"."TRANSACTION_NBR"= (SELECT MAX("TRANSACTION_NBR") FROM GRAINVTRC."FIN_TRANSACTION" "A"
    WHERE "A"."INVOICE_NBR"=:B1 AND "A"."TRANSACTION_DATE"<=:B2 AND ("A"."TRANSACTION_NBR"<=:B3 OR :B4=0)))
    181 - filter("A"."TRANSACTION_DATE"<=:B1 AND ("A"."TRANSACTION_NBR"<=:B2 OR :B3=0))
    182 - access("A"."INVOICE_NBR"=:B1)
    183 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
    184 - filter("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
    WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2))
    187 - filter("FIN_AGING_ARG"."INVOICE_DATE_FLAG"='Y')
    188 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
    189 - filter("FIN_INVOICE"."FINANCIAL_SOURCE"='A/P' AND ("FIN_INVOICE"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_S
    OURCE" OR "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND "FIN_INVOICE"."INVOICE_DATE"<="FIN_AGING_ARG"."AGING_DATE" AND
    ("FIN_AGING_ARG"."PLC_ID" IS NULL OR "FIN_INVOICE"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND "FIN_AGING_ARG"."PLC_ID"
    IS NOT NULL) AND CASE WHEN (("FIN_AGING_ARG"."AGE_CREDIT_FLAG"='Y' AND "FIN_INVOICE"."ORIGINAL_AMOUNT"<0) OR
    "FIN_INVOICE"."ORIGINAL_AMOUNT">0) THEN CASE WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING
    _ARG"."B_1"+1 THEN 1 WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING_ARG"."B_2"+1 THEN 2
    WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING_ARG"."B_3"+1 THEN 3 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING_ARG"."B_4"+1 THEN 4 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING_ARG"."B_5"+1 THEN 5 ELSE 6 END ELSE 1 END >0)
    190 - filter("FIN_TRANSACTION"."INVOICE_NBR" IS NOT NULL AND
    "FIN_INVOICE"."INVOICE_NBR"="FIN_TRANSACTION"."INVOICE_NBR" AND ("FIN_AGING_ARG"."MAX_KEY"=0 OR
    "FIN_TRANSACTION"."TRANSACTION_NBR"<="FIN_AGING_ARG"."MAX_KEY"))
    191 - access("FIN_TRANSACTION"."TRANSACTION_NBR"= (SELECT MAX("TRANSACTION_NBR") FROM GRAINVTRC."FIN_TRANSACTION" "A"
    WHERE "A"."INVOICE_NBR"=:B1 AND "A"."TRANSACTION_DATE"<=:B2 AND ("A"."TRANSACTION_NBR"<=:B3 OR :B4=0)))
    193 - filter("A"."TRANSACTION_DATE"<=:B1 AND ("A"."TRANSACTION_NBR"<=:B2 OR :B3=0))
    194 - access("A"."INVOICE_NBR"=:B1)
    195 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
    196 - filter(("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
    WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2)) AND EXISTS (SELECT 0 FROM
    GRAINVTRC."FIN_TRANSACTION" "A" WHERE "A"."INVOICE_NBR"=:B3 AND ("A"."TRANSACTION_NBR"<=:B4 OR :B5=0)))
    199 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
    200 - filter("FIN_INVOICE"."FINANCIAL_SOURCE"='A/P' AND ("FIN_INVOICE"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_S
    OURCE" OR "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND "FIN_INVOICE"."INVOICE_DATE">"FIN_AGING_ARG"."AGING_DATE" AND
    ("FIN_AGING_ARG"."PLC_ID" IS NULL OR "FIN_INVOICE"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND "FIN_AGING_ARG"."PLC_ID"
    IS NOT NULL) AND ("FIN_INVOICE"."INVOICE_STATUS"<>'C' OR "FIN_AGING_ARG"."AGING_DATE"<="FIN_INVOICE"."LAST_TRANSACTION_
    DATE" OR "FIN_INVOICE"."BALANCE_FORWARD_PRINT_FLAG"<>'Y'))
    201 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
    202 - filter("A"."TRANSACTION_NBR"<=:B1 OR :B2=0)
    203 - access("A"."INVOICE_NBR"=:B1)
    204 - filter(("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
    WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2)) AND "FIN_TRANSACTION"."TRANSACTION_NBR"= (SELECT
    MAX("TRANSACTION_NBR") FROM GRAINVTRC."FIN_TRANSACTION" "A" WHERE "A"."PAYMENT_NBR"=:B3 AND
    "A"."TRANSACTION_DATE"<=:B4 AND ("A"."TRANSACTION_NBR"<=:B5 OR :B6=0)))
    205 - filter(NULL IS NOT NULL)
    206 - access("FIN_PAYMENT"."PAYMENT_NBR"="FIN_TRANSACTION"."PAYMENT_NBR")
    filter(("FIN_PAYMENT"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_SOURCE" OR
    "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND "FIN_PAYMENT"."PAYMENT_DATE"<="FIN_AGING_ARG"."AGING_DATE" AND
    ("FIN_AGING_ARG"."PLC_ID" IS NULL OR "FIN_AGING_ARG"."PLC_ID" IS NOT NULL AND
    "FIN_PAYMENT"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND "FIN_PAYMENT"."LOCATION_ID" IS NOT NULL) AND CASE WHEN
    "FIN_AGING_ARG"."AGE_CREDIT_FLAG"='Y' THEN CASE WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AG
    ING_ARG"."B_1"+1 THEN 1 WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AGING_ARG"."B_2"+1 THEN 2
    WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AGING_ARG"."B_3"+1 THEN 3 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AGING_ARG"."B_4"+1 THEN 4 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AGING_ARG"."B_5"+1 THEN 5 ELSE 6 END ELSE 1 END >0)
    207 - filter("FIN_PAYMENT"."FINANCIAL_SOURCE"='A/P' AND ("FIN_PAYMENT"."INTERNAL_FLAG"='N' OR
    "FIN_PAYMENT"."INTERNAL_FLAG"='Y' AND ("FIN_PAYMENT"."PAYMENT_TYPE"='C' OR "FIN_PAYMENT"."PAYMENT_TYPE"='N')))
    210 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)

    Murray Sobol wrote:
    Thank you for your USELESS comments.
    If you can not or are not able to provide any meaningful suggestions, please dont waste MY time and the FORUM's space.
    You have just been promoted to my SPAM filter.You have scattered your problem in hard-to-read and unformatted text across 7 separate postings.
    Query Tuning Assistance - part 2
    Query Tuning Assistance - Part 3
    Query Tuning Assistance - part 4
    Query Tuning Assistance - part 5
    Query Tuning Assistance - part 6
    Query Tuning Assistance - part 7
    (and exactly how are we suppose to have a meaningful discussion about this problem when any such answers will be scattered across 7 different threads!?)
    You have NOT bothered to read the forum FAQ that explains in detail how to write a query tuning posting.
    And good luck with the non-existent spam filter here on OTN.
    PS. Correction. See you also posted a part 8 (Query Tuning Assistance - part 8 You just do not seem to get it, huh? Ever read http://catb.org/esr/faqs/smart-questions.html - you should. And sooner rather than later.
    Edited by: Billy Verreynne on Mar 4, 2012 2:45 PM

  • Query Tuning Assistance - part 7

    filter("FIN_TRANSACTION"."PAYMENT_NBR" IS NOT NULL)
    1271 - access("FIN_TRANSACTION"."TRANSACTION_TYPE"="FIN_TRANSACTION_TYPE"."CODE")
    1273 - access("S1_CURRENCY_A"."CURRENCY_CODE"="SA"."CURRENCY_CODE")
    1275 - access("A"."CURRENCY_CODE"="S1_CURRENCY"."CURRENCY_CODE")
    1289 - filter("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
    WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2))
    1290 - filter(NULL IS NOT NULL AND NULL IS NOT NULL)
    1293 - filter("FIN_AGING_ARG"."INVOICE_DATE_FLAG"='N')
    1294 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
    1295 - filter("FIN_INVOICE"."FINANCIAL_SOURCE"='A/P' AND ("FIN_INVOICE"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_S
    OURCE" OR "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND "FIN_INVOICE"."INVOICE_DATE"<="FIN_AGING_ARG"."AGING_DATE" AND
    ("FIN_AGING_ARG"."PLC_ID" IS NULL OR "FIN_INVOICE"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND "FIN_AGING_ARG"."PLC_ID"
    IS NOT NULL) AND CASE WHEN (("FIN_AGING_ARG"."AGE_CREDIT_FLAG"='Y' AND "FIN_INVOICE"."ORIGINAL_AMOUNT"<0) OR
    "FIN_INVOICE"."ORIGINAL_AMOUNT">0) THEN CASE WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG
    "."B_1"+1 THEN 1 WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG"."B_2"+1 THEN 2 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG"."B_3"+1 THEN 3 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG"."B_4"+1 THEN 4 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG"."B_5"+1 THEN 5 ELSE 6 END ELSE 1 END >0)
    1296 - filter("FIN_TRANSACTION"."INVOICE_NBR" IS NOT NULL AND
    "FIN_INVOICE"."INVOICE_NBR"="FIN_TRANSACTION"."INVOICE_NBR" AND ("FIN_AGING_ARG"."MAX_KEY"=0 OR
    "FIN_TRANSACTION"."TRANSACTION_NBR"<="FIN_AGING_ARG"."MAX_KEY"))
    1297 - access("FIN_TRANSACTION"."TRANSACTION_NBR"= (SELECT MAX("TRANSACTION_NBR") FROM GRAINVTRC."FIN_TRANSACTION" "A"
    WHERE "A"."INVOICE_NBR"=:B1 AND "A"."TRANSACTION_DATE"<=:B2 AND ("A"."TRANSACTION_NBR"<=:B3 OR :B4=0)))
    1299 - filter("A"."TRANSACTION_DATE"<=:B1 AND ("A"."TRANSACTION_NBR"<=:B2 OR :B3=0))
    1300 - access("A"."INVOICE_NBR"=:B1)
    1301 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
    1302 - filter("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
    WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2))
    1303 - filter(NULL IS NOT NULL AND NULL IS NOT NULL)
    1306 - filter("FIN_AGING_ARG"."INVOICE_DATE_FLAG"='Y')
    1307 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
    1308 - filter("FIN_INVOICE"."FINANCIAL_SOURCE"='A/P' AND ("FIN_INVOICE"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_S
    OURCE" OR "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND "FIN_INVOICE"."INVOICE_DATE"<="FIN_AGING_ARG"."AGING_DATE" AND
    ("FIN_AGING_ARG"."PLC_ID" IS NULL OR "FIN_INVOICE"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND "FIN_AGING_ARG"."PLC_ID"
    IS NOT NULL) AND CASE WHEN (("FIN_AGING_ARG"."AGE_CREDIT_FLAG"='Y' AND "FIN_INVOICE"."ORIGINAL_AMOUNT"<0) OR
    "FIN_INVOICE"."ORIGINAL_AMOUNT">0) THEN CASE WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING
    _ARG"."B_1"+1 THEN 1 WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING_ARG"."B_2"+1 THEN 2
    WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING_ARG"."B_3"+1 THEN 3 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING_ARG"."B_4"+1 THEN 4 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING_ARG"."B_5"+1 THEN 5 ELSE 6 END ELSE 1 END >0)
    1309 - filter("FIN_TRANSACTION"."INVOICE_NBR" IS NOT NULL AND
    "FIN_INVOICE"."INVOICE_NBR"="FIN_TRANSACTION"."INVOICE_NBR" AND ("FIN_AGING_ARG"."MAX_KEY"=0 OR
    "FIN_TRANSACTION"."TRANSACTION_NBR"<="FIN_AGING_ARG"."MAX_KEY"))
    1310 - access("FIN_TRANSACTION"."TRANSACTION_NBR"= (SELECT MAX("TRANSACTION_NBR") FROM GRAINVTRC."FIN_TRANSACTION" "A"
    WHERE "A"."INVOICE_NBR"=:B1 AND "A"."TRANSACTION_DATE"<=:B2 AND ("A"."TRANSACTION_NBR"<=:B3 OR :B4=0)))
    1312 - filter("A"."TRANSACTION_DATE"<=:B1 AND ("A"."TRANSACTION_NBR"<=:B2 OR :B3=0))
    1313 - access("A"."INVOICE_NBR"=:B1)
    1314 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
    1315 - filter(("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
    WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2)) AND EXISTS (SELECT 0 FROM
    GRAINVTRC."FIN_TRANSACTION" "A" WHERE "A"."INVOICE_NBR"=:B3 AND ("A"."TRANSACTION_NBR"<=:B4 OR :B5=0)))
    1316 - filter(NULL IS NOT NULL)
    1319 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
    1320 - filter("FIN_INVOICE"."FINANCIAL_SOURCE"='A/P' AND ("FIN_INVOICE"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_S
    OURCE" OR "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND "FIN_INVOICE"."INVOICE_DATE">"FIN_AGING_ARG"."AGING_DATE" AND
    ("FIN_AGING_ARG"."PLC_ID" IS NULL OR "FIN_INVOICE"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND "FIN_AGING_ARG"."PLC_ID"
    IS NOT NULL) AND ("FIN_INVOICE"."INVOICE_STATUS"<>'C' OR "FIN_AGING_ARG"."AGING_DATE"<="FIN_INVOICE"."LAST_TRANSACTION_
    DATE" OR "FIN_INVOICE"."BALANCE_FORWARD_PRINT_FLAG"<>'Y'))
    1321 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
    1322 - filter("A"."TRANSACTION_NBR"<=:B1 OR :B2=0)
    1323 - access("A"."INVOICE_NBR"=:B1)
    1324 - filter(("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
    WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2)) AND "FIN_TRANSACTION"."TRANSACTION_NBR"= (SELECT
    MAX("TRANSACTION_NBR") FROM GRAINVTRC."FIN_TRANSACTION" "A" WHERE "A"."PAYMENT_NBR"=:B3 AND
    "A"."TRANSACTION_DATE"<=:B4 AND ("A"."TRANSACTION_NBR"<=:B5 OR :B6=0)))
    1325 - filter(NULL IS NOT NULL)
    1326 - access("FIN_PAYMENT"."PAYMENT_NBR"="FIN_TRANSACTION"."PAYMENT_NBR")
    filter(("FIN_PAYMENT"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_SOURCE" OR
    "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND "FIN_PAYMENT"."PAYMENT_DATE"<="FIN_AGING_ARG"."AGING_DATE" AND
    ("FIN_AGING_ARG"."PLC_ID" IS NULL OR "FIN_AGING_ARG"."PLC_ID" IS NOT NULL AND
    "FIN_PAYMENT"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND "FIN_PAYMENT"."LOCATION_ID" IS NOT NULL) AND CASE WHEN
    "FIN_AGING_ARG"."AGE_CREDIT_FLAG"='Y' THEN CASE WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AG
    ING_ARG"."B_1"+1 THEN 1 WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AGING_ARG"."B_2"+1 THEN 2
    WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AGING_ARG"."B_3"+1 THEN 3 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AGING_ARG"."B_4"+1 THEN 4 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AGING_ARG"."B_5"+1 THEN 5 ELSE 6 END ELSE 1 END >0)
    1327 - filter("FIN_PAYMENT"."FINANCIAL_SOURCE"='A/P' AND ("FIN_PAYMENT"."INTERNAL_FLAG"='N' OR
    "FIN_PAYMENT"."INTERNAL_FLAG"='Y' AND ("FIN_PAYMENT"."PAYMENT_TYPE"='C' OR "FIN_PAYMENT"."PAYMENT_TYPE"='N')))
    1330 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
    1331 - filter("FIN_TRANSACTION"."PAYMENT_NBR" IS NOT NULL AND ("FIN_AGING_ARG"."MAX_KEY"=0 OR
    "FIN_TRANSACTION"."TRANSACTION_NBR"<="FIN_AGING_ARG"."MAX_KEY"))
    1332 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
    1334 - filter("A"."TRANSACTION_DATE"<=:B1 AND ("A"."TRANSACTION_NBR"<=:B2 OR :B3=0))
    1335 - access("A"."PAYMENT_NBR"=:B1)
    1336 - filter(("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
    WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2)) AND EXISTS (SELECT 0 FROM
    GRAINVTRC."FIN_TRANSACTION" "A" WHERE "A"."PAYMENT_NBR"=:B3 AND ("A"."TRANSACTION_NBR"<=:B4 OR :B5=0)))
    1339 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
    1340 - filter("FIN_PAYMENT"."FINANCIAL_SOURCE"='A/P' AND ("FIN_PAYMENT"."INTERNAL_FLAG"='N' OR
    "FIN_PAYMENT"."INTERNAL_FLAG"='Y' AND ("FIN_PAYMENT"."PAYMENT_TYPE"='C' OR "FIN_PAYMENT"."PAYMENT_TYPE"='N')) AND
    ("FIN_PAYMENT"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_SOURCE" OR "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND
    ("UNAPPLIED_AMOUNT"<>0 OR "FIN_AGING_ARG"."AGING_DATE"<="LAST_TRANSACTION_DATE") AND ("FIN_AGING_ARG"."PLC_ID" IS NULL
    OR "FIN_AGING_ARG"."PLC_ID" IS NOT NULL AND "FIN_PAYMENT"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND
    "FIN_PAYMENT"."LOCATION_ID" IS NOT NULL))
    1341 - access("FIN_PAYMENT"."PAYMENT_DATE">"FIN_AGING_ARG"."AGING_DATE")
    1342 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
    1343 - filter("A"."TRANSACTION_NBR"<=:B1 OR :B2=0)
    1344 - access("A"."PAYMENT_NBR"=:B1)
    1345 - filter("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
    WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2))
    1346 - filter(NULL IS NOT NULL AND NULL IS NOT NULL)
    1350 - filter("FIN_AGING_ARG"."INVOICE_DATE_FLAG"='N')
    1351 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
    1352 - filter("FIN_INVOICE"."FINANCIAL_SOURCE"='A/R' AND ("FIN_INVOICE"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_S
    OURCE" OR "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND "FIN_INVOICE"."INVOICE_DATE"<="FIN_AGING_ARG"."AGING_DATE" AND
    ("FIN_AGING_ARG"."PLC_ID" IS NULL OR "FIN_INVOICE"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND "FIN_AGING_ARG"."PLC_ID"
    IS NOT NULL) AND CASE WHEN (("FIN_AGING_ARG"."AGE_CREDIT_FLAG"='Y' AND "FIN_INVOICE"."ORIGINAL_AMOUNT"<0) OR
    "FIN_INVOICE"."ORIGINAL_AMOUNT">0) THEN CASE WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG
    "."B_1"+1 THEN 1 WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG"."B_2"+1 THEN 2 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG"."B_3"+1 THEN 3 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG"."B_4"+1 THEN 4 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG"."B_5"+1 THEN 5 ELSE 6 END ELSE 1 END >0)
    1353 - filter("FIN_TRANSACTION"."INVOICE_NBR" IS NOT NULL AND
    "FIN_INVOICE"."INVOICE_NBR"="FIN_TRANSACTION"."INVOICE_NBR" AND ("FIN_AGING_ARG"."MAX_KEY"=0 OR
    "FIN_TRANSACTION"."TRANSACTION_NBR"<="FIN_AGING_ARG"."MAX_KEY"))
    1354 - access("FIN_TRANSACTION"."TRANSACTION_NBR"= (SELECT MAX("TRANSACTION_NBR") FROM GRAINVTRC."FIN_TRANSACTION" "A"
    WHERE "A"."INVOICE_NBR"=:B1 AND "A"."TRANSACTION_DATE"<=:B2 AND ("A"."TRANSACTION_NBR"<=:B3 OR :B4=0)))
    1356 - filter("A"."TRANSACTION_DATE"<=:B1 AND ("A"."TRANSACTION_NBR"<=:B2 OR :B3=0))
    1357 - access("A"."INVOICE_NBR"=:B1)
    1358 - filter("FIN_AGING_ARG"."CREDIT_STATUS"='0' OR "FIN_AGING_ARG"."CREDIT_STATUS"='1' AND
    "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "FIN_AGING_ARG"."CREDIT_STATUS"='2' AND "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT
    NULL OR "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT NULL)
    1359 - access("FIN_INVOICE"."CUSTOMER_VENDOR_ID"="S1_CUSTOMER_DATA"."CUSTOMER_ID")
    1360 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
    1361 - filter("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
    WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2))
    1362 - filter(NULL IS NOT NULL AND NULL IS NOT NULL)
    1366 - filter("FIN_AGING_ARG"."INVOICE_DATE_FLAG"='Y')
    1367 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
    1368 - filter("FIN_INVOICE"."FINANCIAL_SOURCE"='A/R' AND ("FIN_INVOICE"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_S
    OURCE" OR "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND "FIN_INVOICE"."INVOICE_DATE"<="FIN_AGING_ARG"."AGING_DATE" AND
    ("FIN_AGING_ARG"."PLC_ID" IS NULL OR "FIN_INVOICE"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND "FIN_AGING_ARG"."PLC_ID"
    IS NOT NULL) AND CASE WHEN (("FIN_AGING_ARG"."AGE_CREDIT_FLAG"='Y' AND "FIN_INVOICE"."ORIGINAL_AMOUNT"<0) OR
    "FIN_INVOICE"."ORIGINAL_AMOUNT">0) THEN CASE WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING
    _ARG"."B_1"+1 THEN 1 WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING_ARG"."B_2"+1 THEN 2
    WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING_ARG"."B_3"+1 THEN 3 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING_ARG"."B_4"+1 THEN 4 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING_ARG"."B_5"+1 THEN 5 ELSE 6 END ELSE 1 END >0)
    1369 - filter("FIN_TRANSACTION"."INVOICE_NBR" IS NOT NULL AND
    "FIN_INVOICE"."INVOICE_NBR"="FIN_TRANSACTION"."INVOICE_NBR" AND ("FIN_AGING_ARG"."MAX_KEY"=0 OR
    "FIN_TRANSACTION"."TRANSACTION_NBR"<="FIN_AGING_ARG"."MAX_KEY"))
    1370 - access("FIN_TRANSACTION"."TRANSACTION_NBR"= (SELECT MAX("TRANSACTION_NBR") FROM GRAINVTRC."FIN_TRANSACTION" "A"
    WHERE "A"."INVOICE_NBR"=:B1 AND "A"."TRANSACTION_DATE"<=:B2 AND ("A"."TRANSACTION_NBR"<=:B3 OR :B4=0)))
    1372 - filter("A"."TRANSACTION_DATE"<=:B1 AND ("A"."TRANSACTION_NBR"<=:B2 OR :B3=0))
    1373 - access("A"."INVOICE_NBR"=:B1)
    1374 - filter("FIN_AGING_ARG"."CREDIT_STATUS"='0' OR "FIN_AGING_ARG"."CREDIT_STATUS"='1' AND
    "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "FIN_AGING_ARG"."CREDIT_STATUS"='2' AND "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT
    NULL OR "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT NULL)
    1375 - access("FIN_INVOICE"."CUSTOMER_VENDOR_ID"="S1_CUSTOMER_DATA"."CUSTOMER_ID")
    1376 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
    1377 - filter(("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
    WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2)) AND EXISTS (SELECT 0 FROM
    GRAINVTRC."FIN_TRANSACTION" "A" WHERE "A"."INVOICE_NBR"=:B3 AND ("A"."TRANSACTION_NBR"<=:B4 OR :B5=0)))
    1378 - filter(NULL IS NOT NULL)
    1379 - access("FIN_INVOICE"."CUSTOMER_VENDOR_ID"="S1_CUSTOMER_DATA"."CUSTOMER_ID")
    filter(("FIN_INVOICE"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_SOURCE" OR
    "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND "FIN_INVOICE"."INVOICE_DATE">"FIN_AGING_ARG"."AGING_DATE" AND
    ("FIN_AGING_ARG"."PLC_ID" IS NULL OR "FIN_INVOICE"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND "FIN_AGING_ARG"."PLC_ID"
    IS NOT NULL) AND ("FIN_INVOICE"."INVOICE_STATUS"<>'C' OR "FIN_AGING_ARG"."AGING_DATE"<="FIN_INVOICE"."LAST_TRANSACTION_
    DATE" OR "FIN_INVOICE"."BALANCE_FORWARD_PRINT_FLAG"<>'Y'))
    1382 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
    1383 - filter("FIN_AGING_ARG"."CREDIT_STATUS"='0' OR "FIN_AGING_ARG"."CREDIT_STATUS"='1' AND
    "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "FIN_AGING_ARG"."CREDIT_STATUS"='2' AND "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT
    NULL OR "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT NULL)
    1384 - filter("FIN_INVOICE"."FINANCIAL_SOURCE"='A/R')
    1385 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
    1386 - filter("A"."TRANSACTION_NBR"<=:B1 OR :B2=0)
    1387 - access("A"."INVOICE_NBR"=:B1)
    1388 - filter(("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
    WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2)) AND "FIN_TRANSACTION"."TRANSACTION_NBR"= (SELECT
    MAX("TRANSACTION_NBR") FROM GRAINVTRC."FIN_TRANSACTION" "A" WHERE "A"."PAYMENT_NBR"=:B3 AND
    "A"."TRANSACTION_DATE"<=:B4 AND ("A"."TRANSACTION_NBR"<=:B5 OR :B6=0)))
    1389 - filter(NULL IS NOT NULL)
    1390 - access("FIN_PAYMENT"."CUSTOMER_VENDOR_ID"="S1_CUSTOMER_DATA"."CUSTOMER_ID")
    filter("FIN_AGING_ARG"."CREDIT_STATUS"='0' OR "FIN_AGING_ARG"."CREDIT_STATUS"='1' AND
    "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "FIN_AGING_ARG"."CREDIT_STATUS"='2' AND "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT
    NULL OR "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT NULL)
    1392 - access("FIN_PAYMENT"."PAYMENT_NBR"="FIN_TRANSACTION"."PAYMENT_NBR")
    filter(("FIN_PAYMENT"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_SOURCE" OR
    "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND "FIN_PAYMENT"."PAYMENT_DATE"<="FIN_AGING_ARG"."AGING_DATE" AND
    ("FIN_AGING_ARG"."PLC_ID" IS NULL OR "FIN_AGING_ARG"."PLC_ID" IS NOT NULL AND
    "FIN_PAYMENT"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND "FIN_PAYMENT"."LOCATION_ID" IS NOT NULL) AND CASE WHEN
    "FIN_AGING_ARG"."AGE_CREDIT_FLAG"='Y' THEN CASE WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AG
    ING_ARG"."B_1"+1 THEN 1 WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AGING_ARG"."B_2"+1 THEN 2
    WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AGING_ARG"."B_3"+1 THEN 3 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AGING_ARG"."B_4"+1 THEN 4 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AGING_ARG"."B_5"+1 THEN 5 ELSE 6 END ELSE 1 END >0)
    1393 - filter("FIN_PAYMENT"."FINANCIAL_SOURCE"='A/R' AND ("FIN_PAYMENT"."INTERNAL_FLAG"='N' OR
    "FIN_PAYMENT"."INTERNAL_FLAG"='Y' AND ("FIN_PAYMENT"."PAYMENT_TYPE"='C' OR "FIN_PAYMENT"."PAYMENT_TYPE"='N')))
    1396 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
    1397 - filter("FIN_TRANSACTION"."PAYMENT_NBR" IS NOT NULL AND ("FIN_AGING_ARG"."MAX_KEY"=0 OR
    "FIN_TRANSACTION"."TRANSACTION_NBR"<="FIN_AGING_ARG"."MAX_KEY"))
    1398 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
    1400 - filter("A"."TRANSACTION_DATE"<=:B1 AND ("A"."TRANSACTION_NBR"<=:B2 OR :B3=0))
    1401 - access("A"."PAYMENT_NBR"=:B1)
    1402 - filter(("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
    WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2)) AND EXISTS (SELECT 0 FROM
    GRAINVTRC."FIN_TRANSACTION" "A" WHERE "A"."PAYMENT_NBR"=:B3 AND ("A"."TRANSACTION_NBR"<=:B4 OR :B5=0)))
    1406 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
    1407 - filter("FIN_PAYMENT"."FINANCIAL_SOURCE"='A/R' AND ("FIN_PAYMENT"."INTERNAL_FLAG"='N' OR
    "FIN_PAYMENT"."INTERNAL_FLAG"='Y' AND ("FIN_PAYMENT"."PAYMENT_TYPE"='C' OR "FIN_PAYMENT"."PAYMENT_TYPE"='N')) AND
    ("FIN_PAYMENT"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_SOURCE" OR "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND
    ("UNAPPLIED_AMOUNT"<>0 OR "FIN_AGING_ARG"."AGING_DATE"<="LAST_TRANSACTION_DATE") AND ("FIN_AGING_ARG"."PLC_ID" IS NULL
    OR "FIN_AGING_ARG"."PLC_ID" IS NOT NULL AND "FIN_PAYMENT"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND
    "FIN_PAYMENT"."LOCATION_ID" IS NOT NULL))
    1408 - access("FIN_PAYMENT"."PAYMENT_DATE">"FIN_AGING_ARG"."AGING_DATE")
    1409 - filter("FIN_AGING_ARG"."CREDIT_STATUS"='0' OR "FIN_AGING_ARG"."CREDIT_STATUS"='1' AND
    "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "FIN_AGING_ARG"."CREDIT_STATUS"='2' AND "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT
    NULL OR "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT NULL)
    1410 - access("FIN_PAYMENT"."CUSTOMER_VENDOR_ID"="S1_CUSTOMER_DATA"."CUSTOMER_ID")
    1411 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
    1412 - filter("A"."TRANSACTION_NBR"<=:B1 OR :B2=0)
    1413 - access("A"."PAYMENT_NBR"=:B1)
    1414 - filter("A"."LOCATION_ID" IS NOT NULL AND ("A"."INTERNAL_FLAG"='N' OR ("A"."PAYMENT_TYPE"='C' OR
    "A"."PAYMENT_TYPE"='N')))
    1415 - access("FIN_AGING_INVOICE_VIEW"."SERIAL_NUMBER"="A"."PAYMENT_NBR")
    1416 - access("A1_USER_LOCATION"."USER_ID"='BRENT' AND "A1_USER_LOCATION"."PLC_ID"="A"."LOCATION_ID")
    1418 - access("SB"."NAME_AND_ADDRESS_ID"="A"."CUSTOMER_VENDOR_ID")
    1420 - access("SB"."NAME_AND_ADDRESS_ID"="S1_CUSTOMER_DATA"."CUSTOMER_ID")
    1421 - access("SB"."TRADER_ID"="S1_TRADER"."TRADER_ID"(+))
    1423 - access("SA"."NAME_AND_ADDRESS_ID"="A"."LOCATION_ID")
    1425 - access("S1_CURRENCY_A"."CURRENCY_CODE"="SA"."CURRENCY_CODE")
    1427 - access("A"."CURRENCY_CODE"="S1_CURRENCY"."CURRENCY_CODE")
    1428 - filter("TA"."INVOICE_NBR" IS NOT NULL AND "TA"."FINANCIAL_SOURCE"='A/R' AND "TA"."TRANSACTION_TYPE"<>'PAY' AND
    "TA"."REVERSED_TRANSACTION_NBR" IS NULL)
    1429 - access("A"."PAYMENT_NBR"="TA"."PAYMENT_NBR")
    filter("TA"."PAYMENT_NBR" IS NOT NULL)
    1431 - access("TA"."TRANSACTION_TYPE"="FIN_TRANSACTION_TYPE"."CODE")
    filter("FIN_TRANSACTION_TYPE"."CODE"<>'PAY')
    1432 - access("SB"."NAME_AND_ADDRESS_ID"="S1_NA_BUSINESS_TYPE"."NAME_AND_ADDRESS_ID"(+))
    1447 - filter("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
    WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2))
    1448 - filter(NULL IS NOT NULL AND NULL IS NOT NULL)
    1451 - filter("FIN_AGING_ARG"."INVOICE_DATE_FLAG"='N')
    1452 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
    1453 - filter("FIN_INVOICE"."FINANCIAL_SOURCE"='A/P' AND ("FIN_INVOICE"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_S
    OURCE" OR "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND "FIN_INVOICE"."INVOICE_DATE"<="FIN_AGING_ARG"."AGING_DATE" AND
    ("FIN_AGING_ARG"."PLC_ID" IS NULL OR "FIN_INVOICE"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND "FIN_AGING_ARG"."PLC_ID"
    IS NOT NULL) AND CASE WHEN (("FIN_AGING_ARG"."AGE_CREDIT_FLAG"='Y' AND "FIN_INVOICE"."ORIGINAL_AMOUNT"<0) OR
    "FIN_INVOICE"."ORIGINAL_AMOUNT">0) THEN CASE WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG
    "."B_1"+1 THEN 1 WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG"."B_2"+1 THEN 2 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG"."B_3"+1 THEN 3 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG"."B_4"+1 THEN 4 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG"."B_5"+1 THEN 5 ELSE 6 END ELSE 1 END >0)
    1454 - filter("FIN_TRANSACTION"."INVOICE_NBR" IS NOT NULL AND
    "FIN_INVOICE"."INVOICE_NBR"="FIN_TRANSACTION"."INVOICE_NBR" AND ("FIN_AGING_ARG"."MAX_KEY"=0 OR
    "FIN_TRANSACTION"."TRANSACTION_NBR"<="FIN_AGING_ARG"."MAX_KEY"))
    1455 - access("FIN_TRANSACTION"."TRANSACTION_NBR"= (SELECT MAX("TRANSACTION_NBR") FROM GRAINVTRC."FIN_TRANSACTION" "A"
    WHERE "A"."INVOICE_NBR"=:B1 AND "A"."TRANSACTION_DATE"<=:B2 AND ("A"."TRANSACTION_NBR"<=:B3 OR :B4=0)))
    1457 - filter("A"."TRANSACTION_DATE"<=:B1 AND ("A"."TRANSACTION_NBR"<=:B2 OR :B3=0))
    1458 - access("A"."INVOICE_NBR"=:B1)
    1459 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
    1460 - filter("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
    WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2))
    1461 - filter(NULL IS NOT NULL AND NULL IS NOT NULL)
    1464 - filter("FIN_AGING_ARG"."INVOICE_DATE_FLAG"='Y')
    1465 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
    1466 - filter("FIN_INVOICE"."FINANCIAL_SOURCE"='A/P' AND ("FIN_INVOICE"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_S
    OURCE" OR "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND "FIN_INVOICE"."INVOICE_DATE"<="FIN_AGING_ARG"."AGING_DATE" AND
    ("FIN_AGING_ARG"."PLC_ID" IS NULL OR "FIN_INVOICE"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND "FIN_AGING_ARG"."PLC_ID"
    IS NOT NULL) AND CASE WHEN (("FIN_AGING_ARG"."AGE_CREDIT_FLAG"='Y' AND "FIN_INVOICE"."ORIGINAL_AMOUNT"<0) OR
    "FIN_INVOICE"."ORIGINAL_AMOUNT">0) THEN CASE WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING
    _ARG"."B_1"+1 THEN 1 WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING_ARG"."B_2"+1 THEN 2
    WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING_ARG"."B_3"+1 THEN 3 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING_ARG"."B_4"+1 THEN 4 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING_ARG"."B_5"+1 THEN 5 ELSE 6 END ELSE 1 END >0)
    1467 - filter("FIN_TRANSACTION"."INVOICE_NBR" IS NOT NULL AND
    "FIN_INVOICE"."INVOICE_NBR"="FIN_TRANSACTION"."INVOICE_NBR" AND ("FIN_AGING_ARG"."MAX_KEY"=0 OR
    "FIN_TRANSACTION"."TRANSACTION_NBR"<="FIN_AGING_ARG"."MAX_KEY"))
    1468 - access("FIN_TRANSACTION"."TRANSACTION_NBR"= (SELECT MAX("TRANSACTION_NBR") FROM GRAINVTRC."FIN_TRANSACTION" "A"
    WHERE "A"."INVOICE_NBR"=:B1 AND "A"."TRANSACTION_DATE"<=:B2 AND ("A"."TRANSACTION_NBR"<=:B3 OR :B4=0)))
    1470 - filter("A"."TRANSACTION_DATE"<=:B1 AND ("A"."TRANSACTION_NBR"<=:B2 OR :B3=0))
    1471 - access("A"."INVOICE_NBR"=:B1)
    1472 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
    1473 - filter(("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
    WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2)) AND EXISTS (SELECT 0 FROM
    GRAINVTRC."FIN_TRANSACTION" "A" WHERE "A"."INVOICE_NBR"=:B3 AND ("A"."TRANSACTION_NBR"<=:B4 OR :B5=0)))
    1474 - filter(NULL IS NOT NULL)
    1477 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
    1478 - filter("FIN_INVOICE"."FINANCIAL_SOURCE"='A/P' AND ("FIN_INVOICE"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_S
    OURCE" OR "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND "FIN_INVOICE"."INVOICE_DATE">"FIN_AGING_ARG"."AGING_DATE" AND
    ("FIN_AGING_ARG"."PLC_ID" IS NULL OR "FIN_INVOICE"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND "FIN_AGING_ARG"."PLC_ID"
    IS NOT NULL) AND ("FIN_INVOICE"."INVOICE_STATUS"<>'C' OR "FIN_AGING_ARG"."AGING_DATE"<="FIN_INVOICE"."LAST_TRANSACTION_
    DATE" OR "FIN_INVOICE"."BALANCE_FORWARD_PRINT_FLAG"<>'Y'))
    1479 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
    1480 - filter("A"."TRANSACTION_NBR"<=:B1 OR :B2=0)
    1481 - access("A"."INVOICE_NBR"=:B1)
    1482 - filter(("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
    WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2)) AND "FIN_TRANSACTION"."TRANSACTION_NBR"= (SELECT
    MAX("TRANSACTION_NBR") FROM GRAINVTRC."FIN_TRANSACTION" "A" WHERE "A"."PAYMENT_NBR"=:B3 AND
    "A"."TRANSACTION_DATE"<=:B4 AND ("A"."TRANSACTION_NBR"<=:B5 OR :B6=0)))
    1483 - filter(NULL IS NOT NULL)
    1484 - access("FIN_PAYMENT"."PAYMENT_NBR"="FIN_TRANSACTION"."PAYMENT_NBR")
    filter(("FIN_PAYMENT"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_SOURCE" OR
    "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND "FIN_PAYMENT"."PAYMENT_DATE"<="FIN_AGING_ARG"."AGING_DATE" AND
    ("FIN_AGING_ARG"."PLC_ID" IS NULL OR "FIN_AGING_ARG"."PLC_ID" IS NOT NULL AND
    "FIN_PAYMENT"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND "FIN_PAYMENT"."LOCATION_ID" IS NOT NULL) AND CASE WHEN
    "FIN_AGING_ARG"."AGE_CREDIT_FLAG"='Y' THEN CASE WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AG
    ING_ARG"."B_1"+1 THEN 1 WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AGING_ARG"."B_2"+1 THEN 2
    WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AGING_ARG"."B_3"+1 THEN 3 WHEN

    Murray Sobol wrote:
    Thank you for your USELESS comments.
    If you can not or are not able to provide any meaningful suggestions, please dont waste MY time and the FORUM's space.
    You have just been promoted to my SPAM filter.You have scattered your problem in hard-to-read and unformatted text across 7 separate postings.
    Query Tuning Assistance - part 2
    Query Tuning Assistance - Part 3
    Query Tuning Assistance - part 4
    Query Tuning Assistance - part 5
    Query Tuning Assistance - part 6
    Query Tuning Assistance - part 7
    (and exactly how are we suppose to have a meaningful discussion about this problem when any such answers will be scattered across 7 different threads!?)
    You have NOT bothered to read the forum FAQ that explains in detail how to write a query tuning posting.
    And good luck with the non-existent spam filter here on OTN.
    PS. Correction. See you also posted a part 8 (Query Tuning Assistance - part 8 You just do not seem to get it, huh? Ever read http://catb.org/esr/faqs/smart-questions.html - you should. And sooner rather than later.
    Edited by: Billy Verreynne on Mar 4, 2012 2:45 PM

  • Query Tuning Assistance - part 8

    "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AGING_ARG"."B_4"+1 THEN 4 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AGING_ARG"."B_5"+1 THEN 5 ELSE 6 END ELSE 1 END >0)
    1485 - filter("FIN_PAYMENT"."FINANCIAL_SOURCE"='A/P' AND ("FIN_PAYMENT"."INTERNAL_FLAG"='N' OR
    "FIN_PAYMENT"."INTERNAL_FLAG"='Y' AND ("FIN_PAYMENT"."PAYMENT_TYPE"='C' OR "FIN_PAYMENT"."PAYMENT_TYPE"='N')))
    1488 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
    1489 - filter("FIN_TRANSACTION"."PAYMENT_NBR" IS NOT NULL AND ("FIN_AGING_ARG"."MAX_KEY"=0 OR
    "FIN_TRANSACTION"."TRANSACTION_NBR"<="FIN_AGING_ARG"."MAX_KEY"))
    1490 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
    1492 - filter("A"."TRANSACTION_DATE"<=:B1 AND ("A"."TRANSACTION_NBR"<=:B2 OR :B3=0))
    1493 - access("A"."PAYMENT_NBR"=:B1)
    1494 - filter(("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
    WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2)) AND EXISTS (SELECT 0 FROM
    GRAINVTRC."FIN_TRANSACTION" "A" WHERE "A"."PAYMENT_NBR"=:B3 AND ("A"."TRANSACTION_NBR"<=:B4 OR :B5=0)))
    1497 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
    1498 - filter("FIN_PAYMENT"."FINANCIAL_SOURCE"='A/P' AND ("FIN_PAYMENT"."INTERNAL_FLAG"='N' OR
    "FIN_PAYMENT"."INTERNAL_FLAG"='Y' AND ("FIN_PAYMENT"."PAYMENT_TYPE"='C' OR "FIN_PAYMENT"."PAYMENT_TYPE"='N')) AND
    ("FIN_PAYMENT"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_SOURCE" OR "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND
    ("UNAPPLIED_AMOUNT"<>0 OR "FIN_AGING_ARG"."AGING_DATE"<="LAST_TRANSACTION_DATE") AND ("FIN_AGING_ARG"."PLC_ID" IS NULL
    OR "FIN_AGING_ARG"."PLC_ID" IS NOT NULL AND "FIN_PAYMENT"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND
    "FIN_PAYMENT"."LOCATION_ID" IS NOT NULL))
    1499 - access("FIN_PAYMENT"."PAYMENT_DATE">"FIN_AGING_ARG"."AGING_DATE")
    1500 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
    1501 - filter("A"."TRANSACTION_NBR"<=:B1 OR :B2=0)
    1502 - access("A"."PAYMENT_NBR"=:B1)
    1503 - filter("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
    WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2))
    1504 - filter(NULL IS NOT NULL AND NULL IS NOT NULL)
    1508 - filter("FIN_AGING_ARG"."INVOICE_DATE_FLAG"='N')
    1509 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
    1510 - filter("FIN_INVOICE"."FINANCIAL_SOURCE"='A/R' AND ("FIN_INVOICE"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_S
    OURCE" OR "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND "FIN_INVOICE"."INVOICE_DATE"<="FIN_AGING_ARG"."AGING_DATE" AND
    ("FIN_AGING_ARG"."PLC_ID" IS NULL OR "FIN_INVOICE"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND "FIN_AGING_ARG"."PLC_ID"
    IS NOT NULL) AND CASE WHEN (("FIN_AGING_ARG"."AGE_CREDIT_FLAG"='Y' AND "FIN_INVOICE"."ORIGINAL_AMOUNT"<0) OR
    "FIN_INVOICE"."ORIGINAL_AMOUNT">0) THEN CASE WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG
    "."B_1"+1 THEN 1 WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG"."B_2"+1 THEN 2 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG"."B_3"+1 THEN 3 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG"."B_4"+1 THEN 4 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG"."B_5"+1 THEN 5 ELSE 6 END ELSE 1 END >0)
    1511 - filter("FIN_TRANSACTION"."INVOICE_NBR" IS NOT NULL AND
    "FIN_INVOICE"."INVOICE_NBR"="FIN_TRANSACTION"."INVOICE_NBR" AND ("FIN_AGING_ARG"."MAX_KEY"=0 OR
    "FIN_TRANSACTION"."TRANSACTION_NBR"<="FIN_AGING_ARG"."MAX_KEY"))
    1512 - access("FIN_TRANSACTION"."TRANSACTION_NBR"= (SELECT MAX("TRANSACTION_NBR") FROM GRAINVTRC."FIN_TRANSACTION" "A"
    WHERE "A"."INVOICE_NBR"=:B1 AND "A"."TRANSACTION_DATE"<=:B2 AND ("A"."TRANSACTION_NBR"<=:B3 OR :B4=0)))
    1514 - filter("A"."TRANSACTION_DATE"<=:B1 AND ("A"."TRANSACTION_NBR"<=:B2 OR :B3=0))
    1515 - access("A"."INVOICE_NBR"=:B1)
    1516 - filter("FIN_AGING_ARG"."CREDIT_STATUS"='0' OR "FIN_AGING_ARG"."CREDIT_STATUS"='1' AND
    "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "FIN_AGING_ARG"."CREDIT_STATUS"='2' AND "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT
    NULL OR "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT NULL)
    1517 - access("FIN_INVOICE"."CUSTOMER_VENDOR_ID"="S1_CUSTOMER_DATA"."CUSTOMER_ID")
    1518 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
    1519 - filter("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
    WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2))
    1520 - filter(NULL IS NOT NULL AND NULL IS NOT NULL)
    1524 - filter("FIN_AGING_ARG"."INVOICE_DATE_FLAG"='Y')
    1525 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
    1526 - filter("FIN_INVOICE"."FINANCIAL_SOURCE"='A/R' AND ("FIN_INVOICE"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_S
    OURCE" OR "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND "FIN_INVOICE"."INVOICE_DATE"<="FIN_AGING_ARG"."AGING_DATE" AND
    ("FIN_AGING_ARG"."PLC_ID" IS NULL OR "FIN_INVOICE"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND "FIN_AGING_ARG"."PLC_ID"
    IS NOT NULL) AND CASE WHEN (("FIN_AGING_ARG"."AGE_CREDIT_FLAG"='Y' AND "FIN_INVOICE"."ORIGINAL_AMOUNT"<0) OR
    "FIN_INVOICE"."ORIGINAL_AMOUNT">0) THEN CASE WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING
    _ARG"."B_1"+1 THEN 1 WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING_ARG"."B_2"+1 THEN 2
    WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING_ARG"."B_3"+1 THEN 3 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING_ARG"."B_4"+1 THEN 4 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING_ARG"."B_5"+1 THEN 5 ELSE 6 END ELSE 1 END >0)
    1527 - filter("FIN_TRANSACTION"."INVOICE_NBR" IS NOT NULL AND
    "FIN_INVOICE"."INVOICE_NBR"="FIN_TRANSACTION"."INVOICE_NBR" AND ("FIN_AGING_ARG"."MAX_KEY"=0 OR
    "FIN_TRANSACTION"."TRANSACTION_NBR"<="FIN_AGING_ARG"."MAX_KEY"))
    1528 - access("FIN_TRANSACTION"."TRANSACTION_NBR"= (SELECT MAX("TRANSACTION_NBR") FROM GRAINVTRC."FIN_TRANSACTION" "A"
    WHERE "A"."INVOICE_NBR"=:B1 AND "A"."TRANSACTION_DATE"<=:B2 AND ("A"."TRANSACTION_NBR"<=:B3 OR :B4=0)))
    1530 - filter("A"."TRANSACTION_DATE"<=:B1 AND ("A"."TRANSACTION_NBR"<=:B2 OR :B3=0))
    1531 - access("A"."INVOICE_NBR"=:B1)
    1532 - filter("FIN_AGING_ARG"."CREDIT_STATUS"='0' OR "FIN_AGING_ARG"."CREDIT_STATUS"='1' AND
    "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "FIN_AGING_ARG"."CREDIT_STATUS"='2' AND "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT
    NULL OR "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT NULL)
    1533 - access("FIN_INVOICE"."CUSTOMER_VENDOR_ID"="S1_CUSTOMER_DATA"."CUSTOMER_ID")
    1534 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
    1535 - filter(("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
    WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2)) AND EXISTS (SELECT 0 FROM
    GRAINVTRC."FIN_TRANSACTION" "A" WHERE "A"."INVOICE_NBR"=:B3 AND ("A"."TRANSACTION_NBR"<=:B4 OR :B5=0)))
    1536 - filter(NULL IS NOT NULL)
    1537 - access("FIN_INVOICE"."CUSTOMER_VENDOR_ID"="S1_CUSTOMER_DATA"."CUSTOMER_ID")
    filter(("FIN_INVOICE"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_SOURCE" OR
    "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND "FIN_INVOICE"."INVOICE_DATE">"FIN_AGING_ARG"."AGING_DATE" AND
    ("FIN_AGING_ARG"."PLC_ID" IS NULL OR "FIN_INVOICE"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND "FIN_AGING_ARG"."PLC_ID"
    IS NOT NULL) AND ("FIN_INVOICE"."INVOICE_STATUS"<>'C' OR "FIN_AGING_ARG"."AGING_DATE"<="FIN_INVOICE"."LAST_TRANSACTION_
    DATE" OR "FIN_INVOICE"."BALANCE_FORWARD_PRINT_FLAG"<>'Y'))
    1540 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
    1541 - filter("FIN_AGING_ARG"."CREDIT_STATUS"='0' OR "FIN_AGING_ARG"."CREDIT_STATUS"='1' AND
    "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "FIN_AGING_ARG"."CREDIT_STATUS"='2' AND "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT
    NULL OR "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT NULL)
    1542 - filter("FIN_INVOICE"."FINANCIAL_SOURCE"='A/R')
    1543 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
    1544 - filter("A"."TRANSACTION_NBR"<=:B1 OR :B2=0)
    1545 - access("A"."INVOICE_NBR"=:B1)
    1546 - filter(("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
    WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2)) AND "FIN_TRANSACTION"."TRANSACTION_NBR"= (SELECT
    MAX("TRANSACTION_NBR") FROM GRAINVTRC."FIN_TRANSACTION" "A" WHERE "A"."PAYMENT_NBR"=:B3 AND
    "A"."TRANSACTION_DATE"<=:B4 AND ("A"."TRANSACTION_NBR"<=:B5 OR :B6=0)))
    1547 - filter(NULL IS NOT NULL)
    1548 - access("FIN_PAYMENT"."CUSTOMER_VENDOR_ID"="S1_CUSTOMER_DATA"."CUSTOMER_ID")
    filter("FIN_AGING_ARG"."CREDIT_STATUS"='0' OR "FIN_AGING_ARG"."CREDIT_STATUS"='1' AND
    "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "FIN_AGING_ARG"."CREDIT_STATUS"='2' AND "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT
    NULL OR "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT NULL)
    1550 - access("FIN_PAYMENT"."PAYMENT_NBR"="FIN_TRANSACTION"."PAYMENT_NBR")
    filter(("FIN_PAYMENT"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_SOURCE" OR
    "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND "FIN_PAYMENT"."PAYMENT_DATE"<="FIN_AGING_ARG"."AGING_DATE" AND
    ("FIN_AGING_ARG"."PLC_ID" IS NULL OR "FIN_AGING_ARG"."PLC_ID" IS NOT NULL AND
    "FIN_PAYMENT"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND "FIN_PAYMENT"."LOCATION_ID" IS NOT NULL) AND CASE WHEN
    "FIN_AGING_ARG"."AGE_CREDIT_FLAG"='Y' THEN CASE WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AG
    ING_ARG"."B_1"+1 THEN 1 WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AGING_ARG"."B_2"+1 THEN 2
    WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AGING_ARG"."B_3"+1 THEN 3 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AGING_ARG"."B_4"+1 THEN 4 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AGING_ARG"."B_5"+1 THEN 5 ELSE 6 END ELSE 1 END >0)
    1551 - filter("FIN_PAYMENT"."FINANCIAL_SOURCE"='A/R' AND ("FIN_PAYMENT"."INTERNAL_FLAG"='N' OR
    "FIN_PAYMENT"."INTERNAL_FLAG"='Y' AND ("FIN_PAYMENT"."PAYMENT_TYPE"='C' OR "FIN_PAYMENT"."PAYMENT_TYPE"='N')))
    1554 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
    1555 - filter("FIN_TRANSACTION"."PAYMENT_NBR" IS NOT NULL AND ("FIN_AGING_ARG"."MAX_KEY"=0 OR
    "FIN_TRANSACTION"."TRANSACTION_NBR"<="FIN_AGING_ARG"."MAX_KEY"))
    1556 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
    1558 - filter("A"."TRANSACTION_DATE"<=:B1 AND ("A"."TRANSACTION_NBR"<=:B2 OR :B3=0))
    1559 - access("A"."PAYMENT_NBR"=:B1)
    1560 - filter(("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
    WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2)) AND EXISTS (SELECT 0 FROM
    GRAINVTRC."FIN_TRANSACTION" "A" WHERE "A"."PAYMENT_NBR"=:B3 AND ("A"."TRANSACTION_NBR"<=:B4 OR :B5=0)))
    1564 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
    1565 - filter("FIN_PAYMENT"."FINANCIAL_SOURCE"='A/R' AND ("FIN_PAYMENT"."INTERNAL_FLAG"='N' OR
    "FIN_PAYMENT"."INTERNAL_FLAG"='Y' AND ("FIN_PAYMENT"."PAYMENT_TYPE"='C' OR "FIN_PAYMENT"."PAYMENT_TYPE"='N')) AND
    ("FIN_PAYMENT"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_SOURCE" OR "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND
    ("UNAPPLIED_AMOUNT"<>0 OR "FIN_AGING_ARG"."AGING_DATE"<="LAST_TRANSACTION_DATE") AND ("FIN_AGING_ARG"."PLC_ID" IS NULL
    OR "FIN_AGING_ARG"."PLC_ID" IS NOT NULL AND "FIN_PAYMENT"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND
    "FIN_PAYMENT"."LOCATION_ID" IS NOT NULL))
    1566 - access("FIN_PAYMENT"."PAYMENT_DATE">"FIN_AGING_ARG"."AGING_DATE")
    1567 - filter("FIN_AGING_ARG"."CREDIT_STATUS"='0' OR "FIN_AGING_ARG"."CREDIT_STATUS"='1' AND
    "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "FIN_AGING_ARG"."CREDIT_STATUS"='2' AND "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT
    NULL OR "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT NULL)
    1568 - access("FIN_PAYMENT"."CUSTOMER_VENDOR_ID"="S1_CUSTOMER_DATA"."CUSTOMER_ID")
    1569 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
    1570 - filter("A"."TRANSACTION_NBR"<=:B1 OR :B2=0)
    1571 - access("A"."PAYMENT_NBR"=:B1)
    1572 - filter("A"."LOCATION_ID" IS NOT NULL AND ("A"."INTERNAL_FLAG"='N' OR ("A"."PAYMENT_TYPE"='C' OR
    "A"."PAYMENT_TYPE"='N')))
    1573 - access("FIN_AGING_INVOICE_VIEW"."SERIAL_NUMBER"="A"."PAYMENT_NBR")
    1574 - access("A1_USER_LOCATION"."USER_ID"='BRENT' AND "A1_USER_LOCATION"."PLC_ID"="A"."LOCATION_ID")
    1575 - filter("TA"."REVERSED_TRANSACTION_NBR" IS NOT NULL AND "TA"."INVOICE_NBR" IS NOT NULL AND
    "TA"."FINANCIAL_SOURCE"='A/R' AND "TA"."TRANSACTION_TYPE"<>'PAY')
    1576 - access("A"."PAYMENT_NBR"="TA"."PAYMENT_NBR")
    filter("TA"."PAYMENT_NBR" IS NOT NULL)
    1578 - access("TA"."TRANSACTION_TYPE"="FIN_TRANSACTION_TYPE"."CODE")
    filter("FIN_TRANSACTION_TYPE"."CODE"<>'PAY')
    1580 - access("SB"."NAME_AND_ADDRESS_ID"="A"."CUSTOMER_VENDOR_ID")
    1581 - access("SB"."TRADER_ID"="S1_TRADER"."TRADER_ID"(+))
    1582 - access("SB"."NAME_AND_ADDRESS_ID"="S1_NA_BUSINESS_TYPE"."NAME_AND_ADDRESS_ID"(+))
    1584 - access("SB"."NAME_AND_ADDRESS_ID"="S1_CUSTOMER_DATA"."CUSTOMER_ID")
    1586 - access("SA"."NAME_AND_ADDRESS_ID"="A"."LOCATION_ID")
    1587 - filter("TB"."TRANSACTION_TYPE"<>'PAY')
    1588 - access("TA"."REVERSED_TRANSACTION_NBR"="TB"."TRANSACTION_NBR")
    1590 - access("S1_CURRENCY_A"."CURRENCY_CODE"="SA"."CURRENCY_CODE")
    1592 - access("A"."CURRENCY_CODE"="S1_CURRENCY"."CURRENCY_CODE")
    Statistics
    0 recursive calls
    0 db block gets
    5655572 consistent gets
    0 physical reads
    0 redo size
    SP2-0642: SQL*Plus internal error state 1075, context 1:5:4294967295
    Unsafe to proceed
    58669 bytes received via SQL*Net from client
    1076 SQL*Net roundtrips to/from client
    1 sorts (memory)
    0 sorts (disk)
    15807 rows processed
    GRAINVTRC@customer> GRAINVTRC@customer>
    The database is on an Windows 64-bit server, version 11.2.0.2.
    I noticed a "Full Table Scan" happening in table fin_invoice, column trader_id.
    This column is NOT part of the Primary Key; it is also nullable.
    This table contains ~275000 rows, this column is populated ~ 75 % of the time.
    So I created this index:
    CREATE INDEX fin_invoice_ndx12 ON fin_invoice (trader_id ASC, financial_source ASC)
    tablespace smartsoft_index
    When I run the query, either before or after I add the index, it takes ~ 1 minute before any results are produced and ~ 8 minutes to complete.
    The "autotrace" I included does NOT contain the new index; another "autotrace" with the index included still show a full table scan on this table.
    What am I missing??

    Hi,
    did u try it: SQL and PL/SQL FAQ
    item 3?

  • Query Tuning Assistance - Part 3

    422 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
    423 - filter("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
    WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2))
    424 - filter(NULL IS NOT NULL)
    428 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
    429 - filter("FIN_INVOICE"."FINANCIAL_SOURCE"='A/R' AND ("FIN_INVOICE"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_S
    OURCE" OR "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND "FIN_INVOICE"."INVOICE_DATE">"FIN_AGING_ARG"."AGING_DATE" AND
    ("FIN_AGING_ARG"."PLC_ID" IS NULL OR "FIN_INVOICE"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND "FIN_AGING_ARG"."PLC_ID"
    IS NOT NULL) AND ("FIN_INVOICE"."INVOICE_STATUS"<>'C' OR "FIN_AGING_ARG"."AGING_DATE"<="FIN_INVOICE"."LAST_TRANSACTION_
    DATE" OR "FIN_INVOICE"."BALANCE_FORWARD_PRINT_FLAG"<>'Y'))
    430 - access("FIN_INVOICE"."INVOICE_NBR"="A"."PAYMENT_NBR")
    filter( EXISTS (SELECT 0 FROM GRAINVTRC."FIN_TRANSACTION" "A" WHERE "A"."INVOICE_NBR"=:B1 AND
    ("A"."TRANSACTION_NBR"<=:B2 OR :B3=0)))
    431 - filter("A"."TRANSACTION_NBR"<=:B1 OR :B2=0)
    432 - access("A"."INVOICE_NBR"=:B1)
    433 - filter("FIN_AGING_ARG"."CREDIT_STATUS"='0' OR "FIN_AGING_ARG"."CREDIT_STATUS"='1' AND
    "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "FIN_AGING_ARG"."CREDIT_STATUS"='2' AND "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT
    NULL OR "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT NULL)
    434 - access("FIN_INVOICE"."CUSTOMER_VENDOR_ID"="S1_CUSTOMER_DATA"."CUSTOMER_ID")
    435 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
    436 - filter("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
    WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2))
    441 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
    442 - filter("FIN_PAYMENT"."FINANCIAL_SOURCE"='A/R' AND ("FIN_PAYMENT"."INTERNAL_FLAG"='N' OR
    "FIN_PAYMENT"."INTERNAL_FLAG"='Y' AND ("FIN_PAYMENT"."PAYMENT_TYPE"='C' OR "FIN_PAYMENT"."PAYMENT_TYPE"='N')) AND
    ("FIN_PAYMENT"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_SOURCE" OR "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND
    "FIN_PAYMENT"."PAYMENT_DATE"<="FIN_AGING_ARG"."AGING_DATE" AND ("FIN_AGING_ARG"."PLC_ID" IS NULL OR
    "FIN_AGING_ARG"."PLC_ID" IS NOT NULL AND "FIN_PAYMENT"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND
    "FIN_PAYMENT"."LOCATION_ID" IS NOT NULL) AND CASE WHEN "FIN_AGING_ARG"."AGE_CREDIT_FLAG"='Y' THEN CASE WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AGING_ARG"."B_1"+1 THEN 1 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AGING_ARG"."B_2"+1 THEN 2 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AGING_ARG"."B_3"+1 THEN 3 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AGING_ARG"."B_4"+1 THEN 4 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AGING_ARG"."B_5"+1 THEN 5 ELSE 6 END ELSE 1 END >0)
    443 - access("FIN_PAYMENT"."PAYMENT_NBR"="A"."PAYMENT_NBR")
    444 - filter("FIN_AGING_ARG"."CREDIT_STATUS"='0' OR "FIN_AGING_ARG"."CREDIT_STATUS"='1' AND
    "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "FIN_AGING_ARG"."CREDIT_STATUS"='2' AND "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT
    NULL OR "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT NULL)
    445 - access("FIN_PAYMENT"."CUSTOMER_VENDOR_ID"="S1_CUSTOMER_DATA"."CUSTOMER_ID")
    446 - filter("FIN_TRANSACTION"."PAYMENT_NBR"="A"."PAYMENT_NBR" AND ("FIN_AGING_ARG"."MAX_KEY"=0 OR
    "FIN_TRANSACTION"."TRANSACTION_NBR"<="FIN_AGING_ARG"."MAX_KEY"))
    447 - access("FIN_TRANSACTION"."TRANSACTION_NBR"= (SELECT MAX("TRANSACTION_NBR") FROM GRAINVTRC."FIN_TRANSACTION" "A"
    WHERE "A"."PAYMENT_NBR"=:B1 AND "A"."TRANSACTION_DATE"<=:B2 AND ("A"."TRANSACTION_NBR"<=:B3 OR :B4=0)))
    449 - filter("A"."TRANSACTION_DATE"<=:B1 AND ("A"."TRANSACTION_NBR"<=:B2 OR :B3=0))
    450 - access("A"."PAYMENT_NBR"=:B1)
    451 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
    452 - filter(("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
    WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2)) AND EXISTS (SELECT 0 FROM
    GRAINVTRC."FIN_TRANSACTION" "A" WHERE "A"."PAYMENT_NBR"=:B3 AND ("A"."TRANSACTION_NBR"<=:B4 OR :B5=0)))
    456 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
    457 - filter("FIN_PAYMENT"."PAYMENT_NBR"="A"."PAYMENT_NBR" AND "FIN_PAYMENT"."FINANCIAL_SOURCE"='A/R' AND
    ("FIN_PAYMENT"."INTERNAL_FLAG"='N' OR "FIN_PAYMENT"."INTERNAL_FLAG"='Y' AND ("FIN_PAYMENT"."PAYMENT_TYPE"='C' OR
    "FIN_PAYMENT"."PAYMENT_TYPE"='N')) AND ("FIN_PAYMENT"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_SOURCE" OR
    "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND ("UNAPPLIED_AMOUNT"<>0 OR
    "FIN_AGING_ARG"."AGING_DATE"<="LAST_TRANSACTION_DATE") AND ("FIN_AGING_ARG"."PLC_ID" IS NULL OR
    "FIN_AGING_ARG"."PLC_ID" IS NOT NULL AND "FIN_PAYMENT"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND
    "FIN_PAYMENT"."LOCATION_ID" IS NOT NULL))
    458 - access("FIN_PAYMENT"."PAYMENT_DATE">"FIN_AGING_ARG"."AGING_DATE")
    459 - filter("FIN_AGING_ARG"."CREDIT_STATUS"='0' OR "FIN_AGING_ARG"."CREDIT_STATUS"='1' AND
    "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "FIN_AGING_ARG"."CREDIT_STATUS"='2' AND "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT
    NULL OR "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT NULL)
    460 - access("FIN_PAYMENT"."CUSTOMER_VENDOR_ID"="S1_CUSTOMER_DATA"."CUSTOMER_ID")
    461 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
    462 - filter("A"."TRANSACTION_NBR"<=:B1 OR :B2=0)
    463 - access("A"."PAYMENT_NBR"=:B1)
    464 - access("A1_USER_LOCATION"."USER_ID"='BRENT' AND "A1_USER_LOCATION"."PLC_ID"="A"."LOCATION_ID")
    466 - access("SB"."NAME_AND_ADDRESS_ID"="A"."CUSTOMER_VENDOR_ID")
    467 - access("SB"."TRADER_ID"="S1_TRADER"."TRADER_ID"(+))
    468 - access("SB"."NAME_AND_ADDRESS_ID"="S1_NA_BUSINESS_TYPE"."NAME_AND_ADDRESS_ID"(+))
    470 - access("SB"."NAME_AND_ADDRESS_ID"="S1_CUSTOMER_DATA"."CUSTOMER_ID")
    472 - access("SA"."NAME_AND_ADDRESS_ID"="A"."LOCATION_ID")
    473 - filter("TB"."REMAINING_ONACCOUNT"<>0 OR "A"."UNAPPLIED_AMOUNT"<>0 OR "A"."PRINT_FLAG"<>'Y')
    474 - access("TB"."TRANSACTION_NBR"="FIN_AGING_INVOICE_VIEW"."MAX_TRANSACTION_NBR")
    476 - access("S1_CURRENCY_A"."CURRENCY_CODE"="SA"."CURRENCY_CODE")
    478 - access("A"."CURRENCY_CODE"="S1_CURRENCY"."CURRENCY_CODE")
    493 - filter("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
    WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2))
    494 - filter(NULL IS NOT NULL)
    497 - filter("FIN_AGING_ARG"."INVOICE_DATE_FLAG"='N')
    498 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
    499 - filter("FIN_INVOICE"."FINANCIAL_SOURCE"='A/P' AND ("FIN_INVOICE"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_S
    OURCE" OR "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND "FIN_INVOICE"."INVOICE_DATE"<="FIN_AGING_ARG"."AGING_DATE" AND
    ("FIN_AGING_ARG"."PLC_ID" IS NULL OR "FIN_INVOICE"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND "FIN_AGING_ARG"."PLC_ID"
    IS NOT NULL) AND CASE WHEN (("FIN_AGING_ARG"."AGE_CREDIT_FLAG"='Y' AND "FIN_INVOICE"."ORIGINAL_AMOUNT"<0) OR
    "FIN_INVOICE"."ORIGINAL_AMOUNT">0) THEN CASE WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG
    "."B_1"+1 THEN 1 WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG"."B_2"+1 THEN 2 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG"."B_3"+1 THEN 3 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG"."B_4"+1 THEN 4 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG"."B_5"+1 THEN 5 ELSE 6 END ELSE 1 END >0)
    500 - filter("FIN_TRANSACTION"."INVOICE_NBR" IS NOT NULL AND
    "FIN_INVOICE"."INVOICE_NBR"="FIN_TRANSACTION"."INVOICE_NBR" AND ("FIN_AGING_ARG"."MAX_KEY"=0 OR
    "FIN_TRANSACTION"."TRANSACTION_NBR"<="FIN_AGING_ARG"."MAX_KEY"))
    501 - access("FIN_TRANSACTION"."TRANSACTION_NBR"= (SELECT MAX("TRANSACTION_NBR") FROM GRAINVTRC."FIN_TRANSACTION" "A"
    WHERE "A"."INVOICE_NBR"=:B1 AND "A"."TRANSACTION_DATE"<=:B2 AND ("A"."TRANSACTION_NBR"<=:B3 OR :B4=0)))
    503 - filter("A"."TRANSACTION_DATE"<=:B1 AND ("A"."TRANSACTION_NBR"<=:B2 OR :B3=0))
    504 - access("A"."INVOICE_NBR"=:B1)
    505 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
    506 - filter("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
    WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2))
    507 - filter(NULL IS NOT NULL)
    510 - filter("FIN_AGING_ARG"."INVOICE_DATE_FLAG"='Y')
    511 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
    512 - filter("FIN_INVOICE"."FINANCIAL_SOURCE"='A/P' AND ("FIN_INVOICE"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_S
    OURCE" OR "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND "FIN_INVOICE"."INVOICE_DATE"<="FIN_AGING_ARG"."AGING_DATE" AND
    ("FIN_AGING_ARG"."PLC_ID" IS NULL OR "FIN_INVOICE"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND "FIN_AGING_ARG"."PLC_ID"
    IS NOT NULL) AND CASE WHEN (("FIN_AGING_ARG"."AGE_CREDIT_FLAG"='Y' AND "FIN_INVOICE"."ORIGINAL_AMOUNT"<0) OR
    "FIN_INVOICE"."ORIGINAL_AMOUNT">0) THEN CASE WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING
    _ARG"."B_1"+1 THEN 1 WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING_ARG"."B_2"+1 THEN 2
    WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING_ARG"."B_3"+1 THEN 3 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING_ARG"."B_4"+1 THEN 4 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING_ARG"."B_5"+1 THEN 5 ELSE 6 END ELSE 1 END >0)
    513 - filter("FIN_TRANSACTION"."INVOICE_NBR" IS NOT NULL AND
    "FIN_INVOICE"."INVOICE_NBR"="FIN_TRANSACTION"."INVOICE_NBR" AND ("FIN_AGING_ARG"."MAX_KEY"=0 OR
    "FIN_TRANSACTION"."TRANSACTION_NBR"<="FIN_AGING_ARG"."MAX_KEY"))
    514 - access("FIN_TRANSACTION"."TRANSACTION_NBR"= (SELECT MAX("TRANSACTION_NBR") FROM GRAINVTRC."FIN_TRANSACTION" "A"
    WHERE "A"."INVOICE_NBR"=:B1 AND "A"."TRANSACTION_DATE"<=:B2 AND ("A"."TRANSACTION_NBR"<=:B3 OR :B4=0)))
    516 - filter("A"."TRANSACTION_DATE"<=:B1 AND ("A"."TRANSACTION_NBR"<=:B2 OR :B3=0))
    517 - access("A"."INVOICE_NBR"=:B1)
    518 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
    519 - filter(("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
    WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2)) AND EXISTS (SELECT 0 FROM
    GRAINVTRC."FIN_TRANSACTION" "A" WHERE "A"."INVOICE_NBR"=:B3 AND ("A"."TRANSACTION_NBR"<=:B4 OR :B5=0)))
    520 - filter(NULL IS NOT NULL)
    523 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
    524 - filter("FIN_INVOICE"."FINANCIAL_SOURCE"='A/P' AND ("FIN_INVOICE"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_S
    OURCE" OR "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND "FIN_INVOICE"."INVOICE_DATE">"FIN_AGING_ARG"."AGING_DATE" AND
    ("FIN_AGING_ARG"."PLC_ID" IS NULL OR "FIN_INVOICE"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND "FIN_AGING_ARG"."PLC_ID"
    IS NOT NULL) AND ("FIN_INVOICE"."INVOICE_STATUS"<>'C' OR "FIN_AGING_ARG"."AGING_DATE"<="FIN_INVOICE"."LAST_TRANSACTION_
    DATE" OR "FIN_INVOICE"."BALANCE_FORWARD_PRINT_FLAG"<>'Y'))
    525 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
    526 - filter("A"."TRANSACTION_NBR"<=:B1 OR :B2=0)
    527 - access("A"."INVOICE_NBR"=:B1)
    528 - filter(("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
    WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2)) AND "FIN_TRANSACTION"."TRANSACTION_NBR"= (SELECT
    MAX("TRANSACTION_NBR") FROM GRAINVTRC."FIN_TRANSACTION" "A" WHERE "A"."PAYMENT_NBR"=:B3 AND
    "A"."TRANSACTION_DATE"<=:B4 AND ("A"."TRANSACTION_NBR"<=:B5 OR :B6=0)))
    529 - access("FIN_PAYMENT"."PAYMENT_NBR"="FIN_TRANSACTION"."PAYMENT_NBR")
    filter(("FIN_PAYMENT"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_SOURCE" OR
    "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND "FIN_PAYMENT"."PAYMENT_DATE"<="FIN_AGING_ARG"."AGING_DATE" AND
    ("FIN_AGING_ARG"."PLC_ID" IS NULL OR "FIN_AGING_ARG"."PLC_ID" IS NOT NULL AND
    "FIN_PAYMENT"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND "FIN_PAYMENT"."LOCATION_ID" IS NOT NULL) AND CASE WHEN
    "FIN_AGING_ARG"."AGE_CREDIT_FLAG"='Y' THEN CASE WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AG
    ING_ARG"."B_1"+1 THEN 1 WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AGING_ARG"."B_2"+1 THEN 2
    WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AGING_ARG"."B_3"+1 THEN 3 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AGING_ARG"."B_4"+1 THEN 4 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AGING_ARG"."B_5"+1 THEN 5 ELSE 6 END ELSE 1 END >0)
    530 - filter("FIN_PAYMENT"."FINANCIAL_SOURCE"='A/P' AND ("FIN_PAYMENT"."INTERNAL_FLAG"='N' OR
    "FIN_PAYMENT"."INTERNAL_FLAG"='Y' AND ("FIN_PAYMENT"."PAYMENT_TYPE"='C' OR "FIN_PAYMENT"."PAYMENT_TYPE"='N')))
    533 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
    534 - filter("FIN_TRANSACTION"."PAYMENT_NBR" IS NOT NULL AND ("FIN_AGING_ARG"."MAX_KEY"=0 OR
    "FIN_TRANSACTION"."TRANSACTION_NBR"<="FIN_AGING_ARG"."MAX_KEY"))
    535 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
    537 - filter("A"."TRANSACTION_DATE"<=:B1 AND ("A"."TRANSACTION_NBR"<=:B2 OR :B3=0))
    538 - access("A"."PAYMENT_NBR"=:B1)
    539 - filter(("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
    WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2)) AND EXISTS (SELECT 0 FROM
    GRAINVTRC."FIN_TRANSACTION" "A" WHERE "A"."PAYMENT_NBR"=:B3 AND ("A"."TRANSACTION_NBR"<=:B4 OR :B5=0)))
    542 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
    543 - filter("FIN_PAYMENT"."FINANCIAL_SOURCE"='A/P' AND ("FIN_PAYMENT"."INTERNAL_FLAG"='N' OR
    "FIN_PAYMENT"."INTERNAL_FLAG"='Y' AND ("FIN_PAYMENT"."PAYMENT_TYPE"='C' OR "FIN_PAYMENT"."PAYMENT_TYPE"='N')) AND
    ("FIN_PAYMENT"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_SOURCE" OR "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND
    ("UNAPPLIED_AMOUNT"<>0 OR "FIN_AGING_ARG"."AGING_DATE"<="LAST_TRANSACTION_DATE") AND ("FIN_AGING_ARG"."PLC_ID" IS NULL
    OR "FIN_AGING_ARG"."PLC_ID" IS NOT NULL AND "FIN_PAYMENT"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND
    "FIN_PAYMENT"."LOCATION_ID" IS NOT NULL))
    544 - access("FIN_PAYMENT"."PAYMENT_DATE">"FIN_AGING_ARG"."AGING_DATE")
    545 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
    546 - filter("A"."TRANSACTION_NBR"<=:B1 OR :B2=0)
    547 - access("A"."PAYMENT_NBR"=:B1)
    548 - filter("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
    WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2))
    549 - filter(NULL IS NOT NULL)
    553 - filter("FIN_AGING_ARG"."INVOICE_DATE_FLAG"='N')
    554 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
    555 - filter("FIN_INVOICE"."FINANCIAL_SOURCE"='A/R' AND ("FIN_INVOICE"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_S
    OURCE" OR "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND "FIN_INVOICE"."INVOICE_DATE"<="FIN_AGING_ARG"."AGING_DATE" AND
    ("FIN_AGING_ARG"."PLC_ID" IS NULL OR "FIN_INVOICE"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND "FIN_AGING_ARG"."PLC_ID"
    IS NOT NULL) AND CASE WHEN (("FIN_AGING_ARG"."AGE_CREDIT_FLAG"='Y' AND "FIN_INVOICE"."ORIGINAL_AMOUNT"<0) OR
    "FIN_INVOICE"."ORIGINAL_AMOUNT">0) THEN CASE WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG
    "."B_1"+1 THEN 1 WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG"."B_2"+1 THEN 2 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG"."B_3"+1 THEN 3 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG"."B_4"+1 THEN 4 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG"."B_5"+1 THEN 5 ELSE 6 END ELSE 1 END >0)
    556 - filter("FIN_TRANSACTION"."INVOICE_NBR" IS NOT NULL AND
    "FIN_INVOICE"."INVOICE_NBR"="FIN_TRANSACTION"."INVOICE_NBR" AND ("FIN_AGING_ARG"."MAX_KEY"=0 OR
    "FIN_TRANSACTION"."TRANSACTION_NBR"<="FIN_AGING_ARG"."MAX_KEY"))
    557 - access("FIN_TRANSACTION"."TRANSACTION_NBR"= (SELECT MAX("TRANSACTION_NBR") FROM GRAINVTRC."FIN_TRANSACTION" "A"
    WHERE "A"."INVOICE_NBR"=:B1 AND "A"."TRANSACTION_DATE"<=:B2 AND ("A"."TRANSACTION_NBR"<=:B3 OR :B4=0)))
    559 - filter("A"."TRANSACTION_DATE"<=:B1 AND ("A"."TRANSACTION_NBR"<=:B2 OR :B3=0))
    560 - access("A"."INVOICE_NBR"=:B1)
    561 - filter("FIN_AGING_ARG"."CREDIT_STATUS"='0' OR "FIN_AGING_ARG"."CREDIT_STATUS"='1' AND
    "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "FIN_AGING_ARG"."CREDIT_STATUS"='2' AND "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT
    NULL OR "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT NULL)
    562 - access("FIN_INVOICE"."CUSTOMER_VENDOR_ID"="S1_CUSTOMER_DATA"."CUSTOMER_ID")
    563 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
    564 - filter("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
    WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2))
    565 - filter(NULL IS NOT NULL)
    569 - filter("FIN_AGING_ARG"."INVOICE_DATE_FLAG"='Y')
    570 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
    571 - filter("FIN_INVOICE"."FINANCIAL_SOURCE"='A/R' AND ("FIN_INVOICE"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_S
    OURCE" OR "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND "FIN_INVOICE"."INVOICE_DATE"<="FIN_AGING_ARG"."AGING_DATE" AND
    ("FIN_AGING_ARG"."PLC_ID" IS NULL OR "FIN_INVOICE"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND "FIN_AGING_ARG"."PLC_ID"
    IS NOT NULL) AND CASE WHEN (("FIN_AGING_ARG"."AGE_CREDIT_FLAG"='Y' AND "FIN_INVOICE"."ORIGINAL_AMOUNT"<0) OR
    "FIN_INVOICE"."ORIGINAL_AMOUNT">0) THEN CASE WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING
    _ARG"."B_1"+1 THEN 1 WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING_ARG"."B_2"+1 THEN 2
    WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING_ARG"."B_3"+1 THEN 3 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING_ARG"."B_4"+1 THEN 4 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING_ARG"."B_5"+1 THEN 5 ELSE 6 END ELSE 1 END >0)
    572 - filter("FIN_TRANSACTION"."INVOICE_NBR" IS NOT NULL AND
    "FIN_INVOICE"."INVOICE_NBR"="FIN_TRANSACTION"."INVOICE_NBR" AND ("FIN_AGING_ARG"."MAX_KEY"=0 OR
    "FIN_TRANSACTION"."TRANSACTION_NBR"<="FIN_AGING_ARG"."MAX_KEY"))
    573 - access("FIN_TRANSACTION"."TRANSACTION_NBR"= (SELECT MAX("TRANSACTION_NBR") FROM GRAINVTRC."FIN_TRANSACTION" "A"
    WHERE "A"."INVOICE_NBR"=:B1 AND "A"."TRANSACTION_DATE"<=:B2 AND ("A"."TRANSACTION_NBR"<=:B3 OR :B4=0)))
    575 - filter("A"."TRANSACTION_DATE"<=:B1 AND ("A"."TRANSACTION_NBR"<=:B2 OR :B3=0))
    576 - access("A"."INVOICE_NBR"=:B1)
    577 - filter("FIN_AGING_ARG"."CREDIT_STATUS"='0' OR "FIN_AGING_ARG"."CREDIT_STATUS"='1' AND
    "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "FIN_AGING_ARG"."CREDIT_STATUS"='2' AND "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT
    NULL OR "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT NULL)
    578 - access("FIN_INVOICE"."CUSTOMER_VENDOR_ID"="S1_CUSTOMER_DATA"."CUSTOMER_ID")
    579 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
    580 - filter(("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
    WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2)) AND EXISTS (SELECT 0 FROM
    GRAINVTRC."FIN_TRANSACTION" "A" WHERE "A"."INVOICE_NBR"=:B3 AND ("A"."TRANSACTION_NBR"<=:B4 OR :B5=0)))
    581 - filter(NULL IS NOT NULL)
    582 - access("FIN_INVOICE"."CUSTOMER_VENDOR_ID"="S1_CUSTOMER_DATA"."CUSTOMER_ID")
    filter(("FIN_INVOICE"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_SOURCE" OR
    "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND "FIN_INVOICE"."INVOICE_DATE">"FIN_AGING_ARG"."AGING_DATE" AND
    ("FIN_AGING_ARG"."PLC_ID" IS NULL OR "FIN_INVOICE"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND "FIN_AGING_ARG"."PLC_ID"
    IS NOT NULL) AND ("FIN_INVOICE"."INVOICE_STATUS"<>'C' OR "FIN_AGING_ARG"."AGING_DATE"<="FIN_INVOICE"."LAST_TRANSACTION_
    DATE" OR "FIN_INVOICE"."BALANCE_FORWARD_PRINT_FLAG"<>'Y'))
    585 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
    586 - filter("FIN_AGING_ARG"."CREDIT_STATUS"='0' OR "FIN_AGING_ARG"."CREDIT_STATUS"='1' AND
    "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "FIN_AGING_ARG"."CREDIT_STATUS"='2' AND "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT
    NULL OR "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT NULL)
    587 - filter("FIN_INVOICE"."FINANCIAL_SOURCE"='A/R')
    588 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
    589 - filter("A"."TRANSACTION_NBR"<=:B1 OR :B2=0)
    590 - access("A"."INVOICE_NBR"=:B1)
    591 - filter(("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
    WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2)) AND "FIN_TRANSACTION"."TRANSACTION_NBR"= (SELECT
    MAX("TRANSACTION_NBR") FROM GRAINVTRC."FIN_TRANSACTION" "A" WHERE "A"."PAYMENT_NBR"=:B3 AND
    "A"."TRANSACTION_DATE"<=:B4 AND ("A"."TRANSACTION_NBR"<=:B5 OR :B6=0)))
    592 - access("FIN_PAYMENT"."CUSTOMER_VENDOR_ID"="S1_CUSTOMER_DATA"."CUSTOMER_ID")
    filter("FIN_AGING_ARG"."CREDIT_STATUS"='0' OR "FIN_AGING_ARG"."CREDIT_STATUS"='1' AND
    "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "FIN_AGING_ARG"."CREDIT_STATUS"='2' AND "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT
    NULL OR "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT NULL)
    594 - access("FIN_PAYMENT"."PAYMENT_NBR"="FIN_TRANSACTION"."PAYMENT_NBR")
    filter(("FIN_PAYMENT"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_SOURCE" OR
    "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND "FIN_PAYMENT"."PAYMENT_DATE"<="FIN_AGING_ARG"."AGING_DATE" AND
    ("FIN_AGING_ARG"."PLC_ID" IS NULL OR "FIN_AGING_ARG"."PLC_ID" IS NOT NULL AND
    "FIN_PAYMENT"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND "FIN_PAYMENT"."LOCATION_ID" IS NOT NULL) AND CASE WHEN
    "FIN_AGING_ARG"."AGE_CREDIT_FLAG"='Y' THEN CASE WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AG
    ING_ARG"."B_1"+1 THEN 1 WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AGING_ARG"."B_2"+1 THEN 2
    WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AGING_ARG"."B_3"+1 THEN 3 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AGING_ARG"."B_4"+1 THEN 4 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AGING_ARG"."B_5"+1 THEN 5 ELSE 6 END ELSE 1 END >0)
    595 - filter("FIN_PAYMENT"."FINANCIAL_SOURCE"='A/R' AND ("FIN_PAYMENT"."INTERNAL_FLAG"='N' OR
    "FIN_PAYMENT"."INTERNAL_FLAG"='Y' AND ("FIN_PAYMENT"."PAYMENT_TYPE"='C' OR "FIN_PAYMENT"."PAYMENT_TYPE"='N')))
    598 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
    599 - filter("FIN_TRANSACTION"."PAYMENT_NBR" IS NOT NULL AND ("FIN_AGING_ARG"."MAX_KEY"=0 OR
    "FIN_TRANSACTION"."TRANSACTION_NBR"<="FIN_AGING_ARG"."MAX_KEY"))
    600 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
    602 - filter("A"."TRANSACTION_DATE"<=:B1 AND ("A"."TRANSACTION_NBR"<=:B2 OR :B3=0))
    603 - access("A"."PAYMENT_NBR"=:B1)
    604 - filter(("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
    WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2)) AND EXISTS (SELECT 0 FROM
    GRAINVTRC."FIN_TRANSACTION" "A" WHERE "A"."PAYMENT_NBR"=:B3 AND ("A"."TRANSACTION_NBR"<=:B4 OR :B5=0)))
    608 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
    609 - filter("FIN_PAYMENT"."FINANCIAL_SOURCE"='A/R' AND ("FIN_PAYMENT"."INTERNAL_FLAG"='N' OR
    "FIN_PAYMENT"."INTERNAL_FLAG"='Y' AND ("FIN_PAYMENT"."PAYMENT_TYPE"='C' OR "FIN_PAYMENT"."PAYMENT_TYPE"='N')) AND
    ("FIN_PAYMENT"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_SOURCE" OR "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND
    ("UNAPPLIED_AMOUNT"<>0 OR "FIN_AGING_ARG"."AGING_DATE"<="LAST_TRANSACTION_DATE") AND ("FIN_AGING_ARG"."PLC_ID" IS NULL
    OR "FIN_AGING_ARG"."PLC_ID" IS NOT NULL AND "FIN_PAYMENT"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND
    "FIN_PAYMENT"."LOCATION_ID" IS NOT NULL))
    610 - access("FIN_PAYMENT"."PAYMENT_DATE">"FIN_AGING_ARG"."AGING_DATE")
    611 - filter("FIN_AGING_ARG"."CREDIT_STATUS"='0' OR "FIN_AGING_ARG"."CREDIT_STATUS"='1' AND
    "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "FIN_AGING_ARG"."CREDIT_STATUS"='2' AND "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT
    NULL OR "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT NULL)
    612 - access("FIN_PAYMENT"."CUSTOMER_VENDOR_ID"="S1_CUSTOMER_DATA"."CUSTOMER_ID")
    613 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
    614 - filter("A"."TRANSACTION_NBR"<=:B1 OR :B2=0)
    615 - access("A"."PAYMENT_NBR"=:B1)
    616 - filter("A"."LOCATION_ID" IS NOT NULL AND ("A"."INTERNAL_FLAG"='N' OR ("A"."PAYMENT_TYPE"='C' OR
    "A"."PAYMENT_TYPE"='N')))
    617 - access("FIN_AGING_INVOICE_VIEW"."SERIAL_NUMBER"="A"."PAYMENT_NBR")
    619 - access("SA"."NAME_AND_ADDRESS_ID"="A"."LOCATION_ID")
    621 - access("S1_CURRENCY_A"."CURRENCY_CODE"="SA"."CURRENCY_CODE")
    623 - access("A"."CURRENCY_CODE"="S1_CURRENCY"."CURRENCY_CODE")
    624 - filter("TA"."INVOICE_NBR" IS NOT NULL AND "TA"."FINANCIAL_SOURCE"='A/R' AND "TA"."TRANSACTION_TYPE"<>'PAY' AND
    "TA"."REVERSED_TRANSACTION_NBR" IS NULL)
    625 - access("A"."PAYMENT_NBR"="TA"."PAYMENT_NBR")
    filter("TA"."PAYMENT_NBR" IS NOT NULL)
    627 - access("TA"."TRANSACTION_TYPE"="FIN_TRANSACTION_TYPE"."CODE")
    filter("FIN_TRANSACTION_TYPE"."CODE"<>'PAY')
    628 - access("A1_USER_LOCATION"."USER_ID"='BRENT' AND "A1_USER_LOCATION"."PLC_ID"="A"."LOCATION_ID")
    630 - access("SB"."NAME_AND_ADDRESS_ID"="A"."CUSTOMER_VENDOR_ID")
    631 - access("SB"."TRADER_ID"="S1_TRADER"."TRADER_ID"(+))
    633 - access("SB"."NAME_AND_ADDRESS_ID"="S1_CUSTOMER_DATA"."CUSTOMER_ID")
    634 - access("SB"."NAME_AND_ADDRESS_ID"="S1_NA_BUSINESS_TYPE"."NAME_AND_ADDRESS_ID"(+))
    635 - filter("TC"."REMAINING_ONACCOUNT"<>0 OR "A"."UNAPPLIED_AMOUNT"<>0 OR "A"."PRINT_FLAG"<>'Y')

    Hi,
    did u try it: SQL and PL/SQL FAQ
    item 3?

  • Query Tuning Assistance - part 4

    636 - access("TC"."TRANSACTION_NBR"="FIN_AGING_INVOICE_VIEW"."MAX_TRANSACTION_NBR")
    649 - access("A"."PAYMENT_NBR"="TA"."PAYMENT_NBR")
    650 - filter("TA"."REVERSED_TRANSACTION_NBR" IS NOT NULL AND "TA"."PAYMENT_NBR" IS NOT NULL AND "TA"."INVOICE_NBR" IS
    NOT NULL AND "TA"."FINANCIAL_SOURCE"='A/R' AND "TA"."TRANSACTION_TYPE"<>'PAY')
    651 - filter("A"."LOCATION_ID" IS NOT NULL AND ("A"."INTERNAL_FLAG"='N' OR ("A"."PAYMENT_TYPE"='C' OR
    "A"."PAYMENT_TYPE"='N')))
    654 - filter("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
    WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2))
    655 - filter(NULL IS NOT NULL)
    658 - filter("FIN_AGING_ARG"."INVOICE_DATE_FLAG"='N')
    659 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
    660 - filter("FIN_INVOICE"."FINANCIAL_SOURCE"='A/P' AND ("FIN_INVOICE"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_S
    OURCE" OR "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND "FIN_INVOICE"."INVOICE_DATE"<="FIN_AGING_ARG"."AGING_DATE" AND
    ("FIN_AGING_ARG"."PLC_ID" IS NULL OR "FIN_INVOICE"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND "FIN_AGING_ARG"."PLC_ID"
    IS NOT NULL) AND CASE WHEN (("FIN_AGING_ARG"."AGE_CREDIT_FLAG"='Y' AND "FIN_INVOICE"."ORIGINAL_AMOUNT"<0) OR
    "FIN_INVOICE"."ORIGINAL_AMOUNT">0) THEN CASE WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG
    "."B_1"+1 THEN 1 WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG"."B_2"+1 THEN 2 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG"."B_3"+1 THEN 3 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG"."B_4"+1 THEN 4 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG"."B_5"+1 THEN 5 ELSE 6 END ELSE 1 END >0)
    661 - access("FIN_INVOICE"."INVOICE_NBR"="A"."PAYMENT_NBR")
    662 - filter("FIN_TRANSACTION"."INVOICE_NBR"="A"."PAYMENT_NBR" AND ("FIN_AGING_ARG"."MAX_KEY"=0 OR
    "FIN_TRANSACTION"."TRANSACTION_NBR"<="FIN_AGING_ARG"."MAX_KEY"))
    663 - access("FIN_TRANSACTION"."TRANSACTION_NBR"= (SELECT MAX("TRANSACTION_NBR") FROM GRAINVTRC."FIN_TRANSACTION" "A"
    WHERE "A"."INVOICE_NBR"=:B1 AND "A"."TRANSACTION_DATE"<=:B2 AND ("A"."TRANSACTION_NBR"<=:B3 OR :B4=0)))
    665 - filter("A"."TRANSACTION_DATE"<=:B1 AND ("A"."TRANSACTION_NBR"<=:B2 OR :B3=0))
    666 - access("A"."INVOICE_NBR"=:B1)
    667 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
    668 - filter("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
    WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2))
    669 - filter(NULL IS NOT NULL)
    672 - filter("FIN_AGING_ARG"."INVOICE_DATE_FLAG"='Y')
    673 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
    674 - filter("FIN_INVOICE"."FINANCIAL_SOURCE"='A/P' AND ("FIN_INVOICE"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_S
    OURCE" OR "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND "FIN_INVOICE"."INVOICE_DATE"<="FIN_AGING_ARG"."AGING_DATE" AND
    ("FIN_AGING_ARG"."PLC_ID" IS NULL OR "FIN_INVOICE"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND "FIN_AGING_ARG"."PLC_ID"
    IS NOT NULL) AND CASE WHEN (("FIN_AGING_ARG"."AGE_CREDIT_FLAG"='Y' AND "FIN_INVOICE"."ORIGINAL_AMOUNT"<0) OR
    "FIN_INVOICE"."ORIGINAL_AMOUNT">0) THEN CASE WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING
    _ARG"."B_1"+1 THEN 1 WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING_ARG"."B_2"+1 THEN 2
    WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING_ARG"."B_3"+1 THEN 3 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING_ARG"."B_4"+1 THEN 4 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING_ARG"."B_5"+1 THEN 5 ELSE 6 END ELSE 1 END >0)
    675 - access("FIN_INVOICE"."INVOICE_NBR"="A"."PAYMENT_NBR")
    676 - filter("FIN_TRANSACTION"."INVOICE_NBR"="A"."PAYMENT_NBR" AND ("FIN_AGING_ARG"."MAX_KEY"=0 OR
    "FIN_TRANSACTION"."TRANSACTION_NBR"<="FIN_AGING_ARG"."MAX_KEY"))
    677 - access("FIN_TRANSACTION"."TRANSACTION_NBR"= (SELECT MAX("TRANSACTION_NBR") FROM GRAINVTRC."FIN_TRANSACTION" "A"
    WHERE "A"."INVOICE_NBR"=:B1 AND "A"."TRANSACTION_DATE"<=:B2 AND ("A"."TRANSACTION_NBR"<=:B3 OR :B4=0)))
    679 - filter("A"."TRANSACTION_DATE"<=:B1 AND ("A"."TRANSACTION_NBR"<=:B2 OR :B3=0))
    680 - access("A"."INVOICE_NBR"=:B1)
    681 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
    682 - filter("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
    WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2))
    683 - filter(NULL IS NOT NULL)
    686 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
    687 - filter("FIN_INVOICE"."FINANCIAL_SOURCE"='A/P' AND ("FIN_INVOICE"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_S
    OURCE" OR "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND "FIN_INVOICE"."INVOICE_DATE">"FIN_AGING_ARG"."AGING_DATE" AND
    ("FIN_AGING_ARG"."PLC_ID" IS NULL OR "FIN_INVOICE"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND "FIN_AGING_ARG"."PLC_ID"
    IS NOT NULL) AND ("FIN_INVOICE"."INVOICE_STATUS"<>'C' OR "FIN_AGING_ARG"."AGING_DATE"<="FIN_INVOICE"."LAST_TRANSACTION_
    DATE" OR "FIN_INVOICE"."BALANCE_FORWARD_PRINT_FLAG"<>'Y'))
    688 - access("FIN_INVOICE"."INVOICE_NBR"="A"."PAYMENT_NBR")
    filter( EXISTS (SELECT 0 FROM GRAINVTRC."FIN_TRANSACTION" "A" WHERE "A"."INVOICE_NBR"=:B1 AND
    ("A"."TRANSACTION_NBR"<=:B2 OR :B3=0)))
    689 - filter("A"."TRANSACTION_NBR"<=:B1 OR :B2=0)
    690 - access("A"."INVOICE_NBR"=:B1)
    691 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
    692 - filter("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
    WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2))
    696 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
    697 - filter("FIN_PAYMENT"."FINANCIAL_SOURCE"='A/P' AND ("FIN_PAYMENT"."INTERNAL_FLAG"='N' OR
    "FIN_PAYMENT"."INTERNAL_FLAG"='Y' AND ("FIN_PAYMENT"."PAYMENT_TYPE"='C' OR "FIN_PAYMENT"."PAYMENT_TYPE"='N')) AND
    ("FIN_PAYMENT"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_SOURCE" OR "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND
    "FIN_PAYMENT"."PAYMENT_DATE"<="FIN_AGING_ARG"."AGING_DATE" AND ("FIN_AGING_ARG"."PLC_ID" IS NULL OR
    "FIN_AGING_ARG"."PLC_ID" IS NOT NULL AND "FIN_PAYMENT"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND
    "FIN_PAYMENT"."LOCATION_ID" IS NOT NULL) AND CASE WHEN "FIN_AGING_ARG"."AGE_CREDIT_FLAG"='Y' THEN CASE WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AGING_ARG"."B_1"+1 THEN 1 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AGING_ARG"."B_2"+1 THEN 2 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AGING_ARG"."B_3"+1 THEN 3 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AGING_ARG"."B_4"+1 THEN 4 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AGING_ARG"."B_5"+1 THEN 5 ELSE 6 END ELSE 1 END >0)
    698 - access("FIN_PAYMENT"."PAYMENT_NBR"="A"."PAYMENT_NBR")
    699 - filter("FIN_TRANSACTION"."PAYMENT_NBR"="A"."PAYMENT_NBR" AND ("FIN_AGING_ARG"."MAX_KEY"=0 OR
    "FIN_TRANSACTION"."TRANSACTION_NBR"<="FIN_AGING_ARG"."MAX_KEY"))
    700 - access("FIN_TRANSACTION"."TRANSACTION_NBR"= (SELECT MAX("TRANSACTION_NBR") FROM GRAINVTRC."FIN_TRANSACTION" "A"
    WHERE "A"."PAYMENT_NBR"=:B1 AND "A"."TRANSACTION_DATE"<=:B2 AND ("A"."TRANSACTION_NBR"<=:B3 OR :B4=0)))
    702 - filter("A"."TRANSACTION_DATE"<=:B1 AND ("A"."TRANSACTION_NBR"<=:B2 OR :B3=0))
    703 - access("A"."PAYMENT_NBR"=:B1)
    704 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
    705 - filter(("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
    WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2)) AND EXISTS (SELECT 0 FROM
    GRAINVTRC."FIN_TRANSACTION" "A" WHERE "A"."PAYMENT_NBR"=:B3 AND ("A"."TRANSACTION_NBR"<=:B4 OR :B5=0)))
    708 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
    709 - filter("FIN_PAYMENT"."PAYMENT_NBR"="A"."PAYMENT_NBR" AND "FIN_PAYMENT"."FINANCIAL_SOURCE"='A/P' AND
    ("FIN_PAYMENT"."INTERNAL_FLAG"='N' OR "FIN_PAYMENT"."INTERNAL_FLAG"='Y' AND ("FIN_PAYMENT"."PAYMENT_TYPE"='C' OR
    "FIN_PAYMENT"."PAYMENT_TYPE"='N')) AND ("FIN_PAYMENT"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_SOURCE" OR
    "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND ("UNAPPLIED_AMOUNT"<>0 OR
    "FIN_AGING_ARG"."AGING_DATE"<="LAST_TRANSACTION_DATE") AND ("FIN_AGING_ARG"."PLC_ID" IS NULL OR
    "FIN_AGING_ARG"."PLC_ID" IS NOT NULL AND "FIN_PAYMENT"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND
    "FIN_PAYMENT"."LOCATION_ID" IS NOT NULL))
    710 - access("FIN_PAYMENT"."PAYMENT_DATE">"FIN_AGING_ARG"."AGING_DATE")
    711 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
    712 - filter("A"."TRANSACTION_NBR"<=:B1 OR :B2=0)
    713 - access("A"."PAYMENT_NBR"=:B1)
    714 - filter("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
    WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2))
    715 - filter(NULL IS NOT NULL)
    719 - filter("FIN_AGING_ARG"."INVOICE_DATE_FLAG"='N')
    720 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
    721 - filter("FIN_INVOICE"."FINANCIAL_SOURCE"='A/R' AND ("FIN_INVOICE"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_S
    OURCE" OR "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND "FIN_INVOICE"."INVOICE_DATE"<="FIN_AGING_ARG"."AGING_DATE" AND
    ("FIN_AGING_ARG"."PLC_ID" IS NULL OR "FIN_INVOICE"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND "FIN_AGING_ARG"."PLC_ID"
    IS NOT NULL) AND CASE WHEN (("FIN_AGING_ARG"."AGE_CREDIT_FLAG"='Y' AND "FIN_INVOICE"."ORIGINAL_AMOUNT"<0) OR
    "FIN_INVOICE"."ORIGINAL_AMOUNT">0) THEN CASE WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG
    "."B_1"+1 THEN 1 WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG"."B_2"+1 THEN 2 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG"."B_3"+1 THEN 3 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG"."B_4"+1 THEN 4 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG"."B_5"+1 THEN 5 ELSE 6 END ELSE 1 END >0)
    722 - access("FIN_INVOICE"."INVOICE_NBR"="A"."PAYMENT_NBR")
    723 - filter("FIN_AGING_ARG"."CREDIT_STATUS"='0' OR "FIN_AGING_ARG"."CREDIT_STATUS"='1' AND
    "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "FIN_AGING_ARG"."CREDIT_STATUS"='2' AND "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT
    NULL OR "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT NULL)
    724 - access("FIN_INVOICE"."CUSTOMER_VENDOR_ID"="S1_CUSTOMER_DATA"."CUSTOMER_ID")
    725 - filter("FIN_TRANSACTION"."INVOICE_NBR"="A"."PAYMENT_NBR" AND ("FIN_AGING_ARG"."MAX_KEY"=0 OR
    "FIN_TRANSACTION"."TRANSACTION_NBR"<="FIN_AGING_ARG"."MAX_KEY"))
    726 - access("FIN_TRANSACTION"."TRANSACTION_NBR"= (SELECT MAX("TRANSACTION_NBR") FROM GRAINVTRC."FIN_TRANSACTION" "A"
    WHERE "A"."INVOICE_NBR"=:B1 AND "A"."TRANSACTION_DATE"<=:B2 AND ("A"."TRANSACTION_NBR"<=:B3 OR :B4=0)))
    728 - filter("A"."TRANSACTION_DATE"<=:B1 AND ("A"."TRANSACTION_NBR"<=:B2 OR :B3=0))
    729 - access("A"."INVOICE_NBR"=:B1)
    730 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
    731 - filter("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
    WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2))
    732 - filter(NULL IS NOT NULL)
    736 - filter("FIN_AGING_ARG"."INVOICE_DATE_FLAG"='Y')
    737 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
    738 - filter("FIN_INVOICE"."FINANCIAL_SOURCE"='A/R' AND ("FIN_INVOICE"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_S
    OURCE" OR "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND "FIN_INVOICE"."INVOICE_DATE"<="FIN_AGING_ARG"."AGING_DATE" AND
    ("FIN_AGING_ARG"."PLC_ID" IS NULL OR "FIN_INVOICE"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND "FIN_AGING_ARG"."PLC_ID"
    IS NOT NULL) AND CASE WHEN (("FIN_AGING_ARG"."AGE_CREDIT_FLAG"='Y' AND "FIN_INVOICE"."ORIGINAL_AMOUNT"<0) OR
    "FIN_INVOICE"."ORIGINAL_AMOUNT">0) THEN CASE WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING
    _ARG"."B_1"+1 THEN 1 WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING_ARG"."B_2"+1 THEN 2
    WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING_ARG"."B_3"+1 THEN 3 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING_ARG"."B_4"+1 THEN 4 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING_ARG"."B_5"+1 THEN 5 ELSE 6 END ELSE 1 END >0)
    739 - access("FIN_INVOICE"."INVOICE_NBR"="A"."PAYMENT_NBR")
    740 - filter("FIN_AGING_ARG"."CREDIT_STATUS"='0' OR "FIN_AGING_ARG"."CREDIT_STATUS"='1' AND
    "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "FIN_AGING_ARG"."CREDIT_STATUS"='2' AND "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT
    NULL OR "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT NULL)
    741 - access("FIN_INVOICE"."CUSTOMER_VENDOR_ID"="S1_CUSTOMER_DATA"."CUSTOMER_ID")
    742 - filter("FIN_TRANSACTION"."INVOICE_NBR"="A"."PAYMENT_NBR" AND ("FIN_AGING_ARG"."MAX_KEY"=0 OR
    "FIN_TRANSACTION"."TRANSACTION_NBR"<="FIN_AGING_ARG"."MAX_KEY"))
    743 - access("FIN_TRANSACTION"."TRANSACTION_NBR"= (SELECT MAX("TRANSACTION_NBR") FROM GRAINVTRC."FIN_TRANSACTION" "A"
    WHERE "A"."INVOICE_NBR"=:B1 AND "A"."TRANSACTION_DATE"<=:B2 AND ("A"."TRANSACTION_NBR"<=:B3 OR :B4=0)))
    745 - filter("A"."TRANSACTION_DATE"<=:B1 AND ("A"."TRANSACTION_NBR"<=:B2 OR :B3=0))
    746 - access("A"."INVOICE_NBR"=:B1)
    747 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
    748 - filter("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
    WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2))
    749 - filter(NULL IS NOT NULL)
    753 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
    754 - filter("FIN_INVOICE"."FINANCIAL_SOURCE"='A/R' AND ("FIN_INVOICE"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_S
    OURCE" OR "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND "FIN_INVOICE"."INVOICE_DATE">"FIN_AGING_ARG"."AGING_DATE" AND
    ("FIN_AGING_ARG"."PLC_ID" IS NULL OR "FIN_INVOICE"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND "FIN_AGING_ARG"."PLC_ID"
    IS NOT NULL) AND ("FIN_INVOICE"."INVOICE_STATUS"<>'C' OR "FIN_AGING_ARG"."AGING_DATE"<="FIN_INVOICE"."LAST_TRANSACTION_
    DATE" OR "FIN_INVOICE"."BALANCE_FORWARD_PRINT_FLAG"<>'Y'))
    755 - access("FIN_INVOICE"."INVOICE_NBR"="A"."PAYMENT_NBR")
    filter( EXISTS (SELECT 0 FROM GRAINVTRC."FIN_TRANSACTION" "A" WHERE "A"."INVOICE_NBR"=:B1 AND
    ("A"."TRANSACTION_NBR"<=:B2 OR :B3=0)))
    756 - filter("A"."TRANSACTION_NBR"<=:B1 OR :B2=0)
    757 - access("A"."INVOICE_NBR"=:B1)
    758 - filter("FIN_AGING_ARG"."CREDIT_STATUS"='0' OR "FIN_AGING_ARG"."CREDIT_STATUS"='1' AND
    "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "FIN_AGING_ARG"."CREDIT_STATUS"='2' AND "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT
    NULL OR "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT NULL)
    759 - access("FIN_INVOICE"."CUSTOMER_VENDOR_ID"="S1_CUSTOMER_DATA"."CUSTOMER_ID")
    760 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
    761 - filter("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
    WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2))
    766 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
    767 - filter("FIN_PAYMENT"."FINANCIAL_SOURCE"='A/R' AND ("FIN_PAYMENT"."INTERNAL_FLAG"='N' OR
    "FIN_PAYMENT"."INTERNAL_FLAG"='Y' AND ("FIN_PAYMENT"."PAYMENT_TYPE"='C' OR "FIN_PAYMENT"."PAYMENT_TYPE"='N')) AND
    ("FIN_PAYMENT"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_SOURCE" OR "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND
    "FIN_PAYMENT"."PAYMENT_DATE"<="FIN_AGING_ARG"."AGING_DATE" AND ("FIN_AGING_ARG"."PLC_ID" IS NULL OR
    "FIN_AGING_ARG"."PLC_ID" IS NOT NULL AND "FIN_PAYMENT"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND
    "FIN_PAYMENT"."LOCATION_ID" IS NOT NULL) AND CASE WHEN "FIN_AGING_ARG"."AGE_CREDIT_FLAG"='Y' THEN CASE WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AGING_ARG"."B_1"+1 THEN 1 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AGING_ARG"."B_2"+1 THEN 2 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AGING_ARG"."B_3"+1 THEN 3 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AGING_ARG"."B_4"+1 THEN 4 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AGING_ARG"."B_5"+1 THEN 5 ELSE 6 END ELSE 1 END >0)
    768 - access("FIN_PAYMENT"."PAYMENT_NBR"="A"."PAYMENT_NBR")
    769 - filter("FIN_AGING_ARG"."CREDIT_STATUS"='0' OR "FIN_AGING_ARG"."CREDIT_STATUS"='1' AND
    "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "FIN_AGING_ARG"."CREDIT_STATUS"='2' AND "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT
    NULL OR "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT NULL)
    770 - access("FIN_PAYMENT"."CUSTOMER_VENDOR_ID"="S1_CUSTOMER_DATA"."CUSTOMER_ID")
    771 - filter("FIN_TRANSACTION"."PAYMENT_NBR"="A"."PAYMENT_NBR" AND ("FIN_AGING_ARG"."MAX_KEY"=0 OR
    "FIN_TRANSACTION"."TRANSACTION_NBR"<="FIN_AGING_ARG"."MAX_KEY"))
    772 - access("FIN_TRANSACTION"."TRANSACTION_NBR"= (SELECT MAX("TRANSACTION_NBR") FROM GRAINVTRC."FIN_TRANSACTION" "A"
    WHERE "A"."PAYMENT_NBR"=:B1 AND "A"."TRANSACTION_DATE"<=:B2 AND ("A"."TRANSACTION_NBR"<=:B3 OR :B4=0)))
    774 - filter("A"."TRANSACTION_DATE"<=:B1 AND ("A"."TRANSACTION_NBR"<=:B2 OR :B3=0))
    775 - access("A"."PAYMENT_NBR"=:B1)
    776 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
    777 - filter(("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
    WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2)) AND EXISTS (SELECT 0 FROM
    GRAINVTRC."FIN_TRANSACTION" "A" WHERE "A"."PAYMENT_NBR"=:B3 AND ("A"."TRANSACTION_NBR"<=:B4 OR :B5=0)))
    781 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
    782 - filter("FIN_PAYMENT"."PAYMENT_NBR"="A"."PAYMENT_NBR" AND "FIN_PAYMENT"."FINANCIAL_SOURCE"='A/R' AND
    ("FIN_PAYMENT"."INTERNAL_FLAG"='N' OR "FIN_PAYMENT"."INTERNAL_FLAG"='Y' AND ("FIN_PAYMENT"."PAYMENT_TYPE"='C' OR
    "FIN_PAYMENT"."PAYMENT_TYPE"='N')) AND ("FIN_PAYMENT"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_SOURCE" OR
    "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND ("UNAPPLIED_AMOUNT"<>0 OR
    "FIN_AGING_ARG"."AGING_DATE"<="LAST_TRANSACTION_DATE") AND ("FIN_AGING_ARG"."PLC_ID" IS NULL OR
    "FIN_AGING_ARG"."PLC_ID" IS NOT NULL AND "FIN_PAYMENT"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND
    "FIN_PAYMENT"."LOCATION_ID" IS NOT NULL))
    783 - access("FIN_PAYMENT"."PAYMENT_DATE">"FIN_AGING_ARG"."AGING_DATE")
    784 - filter("FIN_AGING_ARG"."CREDIT_STATUS"='0' OR "FIN_AGING_ARG"."CREDIT_STATUS"='1' AND
    "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "FIN_AGING_ARG"."CREDIT_STATUS"='2' AND "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT
    NULL OR "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT NULL)
    785 - access("FIN_PAYMENT"."CUSTOMER_VENDOR_ID"="S1_CUSTOMER_DATA"."CUSTOMER_ID")
    786 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
    787 - filter("A"."TRANSACTION_NBR"<=:B1 OR :B2=0)
    788 - access("A"."PAYMENT_NBR"=:B1)
    789 - filter("TC"."REMAINING_ONACCOUNT"<>0 OR "A"."UNAPPLIED_AMOUNT"<>0 OR "A"."PRINT_FLAG"<>'Y')
    790 - access("TC"."TRANSACTION_NBR"="FIN_AGING_INVOICE_VIEW"."MAX_TRANSACTION_NBR")
    791 - access("A1_USER_LOCATION"."USER_ID"='BRENT' AND "A1_USER_LOCATION"."PLC_ID"="A"."LOCATION_ID")
    793 - access("SB"."NAME_AND_ADDRESS_ID"="A"."CUSTOMER_VENDOR_ID")
    795 - access("SB"."NAME_AND_ADDRESS_ID"="S1_CUSTOMER_DATA"."CUSTOMER_ID")
    796 - access("SB"."TRADER_ID"="S1_TRADER"."TRADER_ID"(+))
    798 - access("SA"."NAME_AND_ADDRESS_ID"="A"."LOCATION_ID")
    800 - access("S1_CURRENCY_A"."CURRENCY_CODE"="SA"."CURRENCY_CODE")
    802 - access("A"."CURRENCY_CODE"="S1_CURRENCY"."CURRENCY_CODE")
    804 - access("TA"."TRANSACTION_TYPE"="FIN_TRANSACTION_TYPE"."CODE")
    filter("FIN_TRANSACTION_TYPE"."CODE"<>'PAY')
    805 - filter("TB"."TRANSACTION_TYPE"<>'PAY')
    806 - access("TA"."REVERSED_TRANSACTION_NBR"="TB"."TRANSACTION_NBR")
    807 - access("SB"."NAME_AND_ADDRESS_ID"="S1_NA_BUSINESS_TYPE"."NAME_AND_ADDRESS_ID"(+))
    808 - access("A"."CURRENCY_CODE"="S1_CURRENCY"."CURRENCY_CODE")
    809 - access("S1_CURRENCY_A"."CURRENCY_CODE"="SA"."CURRENCY_CODE")
    811 - access("FIN_TRANSACTION"."TRANSACTION_TYPE"="FIN_TRANSACTION_TYPE"."CODE")
    812 - filter("FIN_TRANSACTION"."PAYMENT_NBR" IS NULL)
    816 - access("A"."CUSTOMER_VENDOR_ID"="S1_NA_BUSINESS_TYPE"."NAME_AND_ADDRESS_ID"(+))
    822 - filter("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
    WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2))
    823 - filter(NULL IS NOT NULL)
    826 - filter("FIN_AGING_ARG"."INVOICE_DATE_FLAG"='N')
    827 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
    828 - filter("FIN_INVOICE"."FINANCIAL_SOURCE"='A/P' AND ("FIN_INVOICE"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_S
    OURCE" OR "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND "FIN_INVOICE"."INVOICE_DATE"<="FIN_AGING_ARG"."AGING_DATE" AND
    ("FIN_AGING_ARG"."PLC_ID" IS NULL OR "FIN_INVOICE"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND "FIN_AGING_ARG"."PLC_ID"
    IS NOT NULL) AND CASE WHEN (("FIN_AGING_ARG"."AGE_CREDIT_FLAG"='Y' AND "FIN_INVOICE"."ORIGINAL_AMOUNT"<0) OR
    "FIN_INVOICE"."ORIGINAL_AMOUNT">0) THEN CASE WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG
    "."B_1"+1 THEN 1 WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG"."B_2"+1 THEN 2 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG"."B_3"+1 THEN 3 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG"."B_4"+1 THEN 4 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG"."B_5"+1 THEN 5 ELSE 6 END ELSE 1 END >0)
    829 - filter("FIN_TRANSACTION"."INVOICE_NBR" IS NOT NULL AND
    "FIN_INVOICE"."INVOICE_NBR"="FIN_TRANSACTION"."INVOICE_NBR" AND ("FIN_AGING_ARG"."MAX_KEY"=0 OR
    "FIN_TRANSACTION"."TRANSACTION_NBR"<="FIN_AGING_ARG"."MAX_KEY"))
    830 - access("FIN_TRANSACTION"."TRANSACTION_NBR"= (SELECT MAX("TRANSACTION_NBR") FROM GRAINVTRC."FIN_TRANSACTION" "A"
    WHERE "A"."INVOICE_NBR"=:B1 AND "A"."TRANSACTION_DATE"<=:B2 AND ("A"."TRANSACTION_NBR"<=:B3 OR :B4=0)))
    832 - filter("A"."TRANSACTION_DATE"<=:B1 AND ("A"."TRANSACTION_NBR"<=:B2 OR :B3=0))
    833 - access("A"."INVOICE_NBR"=:B1)
    834 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
    835 - filter("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
    WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2))
    836 - filter(NULL IS NOT NULL)
    839 - filter("FIN_AGING_ARG"."INVOICE_DATE_FLAG"='Y')
    840 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
    841 - filter("FIN_INVOICE"."FINANCIAL_SOURCE"='A/P' AND ("FIN_INVOICE"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_S
    OURCE" OR "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND "FIN_INVOICE"."INVOICE_DATE"<="FIN_AGING_ARG"."AGING_DATE" AND
    ("FIN_AGING_ARG"."PLC_ID" IS NULL OR "FIN_INVOICE"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND "FIN_AGING_ARG"."PLC_ID"
    IS NOT NULL) AND CASE WHEN (("FIN_AGING_ARG"."AGE_CREDIT_FLAG"='Y' AND "FIN_INVOICE"."ORIGINAL_AMOUNT"<0) OR
    "FIN_INVOICE"."ORIGINAL_AMOUNT">0) THEN CASE WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING
    _ARG"."B_1"+1 THEN 1 WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING_ARG"."B_2"+1 THEN 2
    WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING_ARG"."B_3"+1 THEN 3 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING_ARG"."B_4"+1 THEN 4 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING_ARG"."B_5"+1 THEN 5 ELSE 6 END ELSE 1 END >0)
    842 - filter("FIN_TRANSACTION"."INVOICE_NBR" IS NOT NULL AND
    "FIN_INVOICE"."INVOICE_NBR"="FIN_TRANSACTION"."INVOICE_NBR" AND ("FIN_AGING_ARG"."MAX_KEY"=0 OR
    "FIN_TRANSACTION"."TRANSACTION_NBR"<="FIN_AGING_ARG"."MAX_KEY"))
    843 - access("FIN_TRANSACTION"."TRANSACTION_NBR"= (SELECT MAX("TRANSACTION_NBR") FROM GRAINVTRC."FIN_TRANSACTION" "A"
    WHERE "A"."INVOICE_NBR"=:B1 AND "A"."TRANSACTION_DATE"<=:B2 AND ("A"."TRANSACTION_NBR"<=:B3 OR :B4=0)))
    845 - filter("A"."TRANSACTION_DATE"<=:B1 AND ("A"."TRANSACTION_NBR"<=:B2 OR :B3=0))
    846 - access("A"."INVOICE_NBR"=:B1)
    847 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
    848 - filter(("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
    WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2)) AND EXISTS (SELECT 0 FROM
    GRAINVTRC."FIN_TRANSACTION" "A" WHERE "A"."INVOICE_NBR"=:B3 AND ("A"."TRANSACTION_NBR"<=:B4 OR :B5=0)))
    851 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
    852 - filter("FIN_INVOICE"."FINANCIAL_SOURCE"='A/P' AND ("FIN_INVOICE"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_S
    OURCE" OR "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND "FIN_INVOICE"."INVOICE_DATE">"FIN_AGING_ARG"."AGING_DATE" AND
    ("FIN_AGING_ARG"."PLC_ID" IS NULL OR "FIN_INVOICE"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND "FIN_AGING_ARG"."PLC_ID"
    IS NOT NULL) AND ("FIN_INVOICE"."INVOICE_STATUS"<>'C' OR "FIN_AGING_ARG"."AGING_DATE"<="FIN_INVOICE"."LAST_TRANSACTION_
    DATE" OR "FIN_INVOICE"."BALANCE_FORWARD_PRINT_FLAG"<>'Y'))
    853 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
    854 - filter("A"."TRANSACTION_NBR"<=:B1 OR :B2=0)
    855 - access("A"."INVOICE_NBR"=:B1)
    856 - filter(("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
    WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2)) AND "FIN_TRANSACTION"."TRANSACTION_NBR"= (SELECT
    MAX("TRANSACTION_NBR") FROM GRAINVTRC."FIN_TRANSACTION" "A" WHERE "A"."PAYMENT_NBR"=:B3 AND
    "A"."TRANSACTION_DATE"<=:B4 AND ("A"."TRANSACTION_NBR"<=:B5 OR :B6=0)))
    857 - filter(NULL IS NOT NULL AND NULL IS NOT NULL)
    858 - access("FIN_PAYMENT"."PAYMENT_NBR"="FIN_TRANSACTION"."PAYMENT_NBR")
    filter(("FIN_PAYMENT"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_SOURCE" OR

    Hi,
    did u try it: SQL and PL/SQL FAQ
    item 3?

  • Query Tuning Assistance - part 6

    1061 - access("A"."INVOICE_NBR"=:B1)
    1062 - filter("FIN_AGING_ARG"."CREDIT_STATUS"='0' OR "FIN_AGING_ARG"."CREDIT_STATUS"='1' AND
    "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "FIN_AGING_ARG"."CREDIT_STATUS"='2' AND "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT
    NULL OR "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT NULL)
    1063 - access("FIN_INVOICE"."CUSTOMER_VENDOR_ID"="S1_CUSTOMER_DATA"."CUSTOMER_ID")
    1064 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
    1065 - filter(("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
    WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2)) AND EXISTS (SELECT 0 FROM
    GRAINVTRC."FIN_TRANSACTION" "A" WHERE "A"."INVOICE_NBR"=:B3 AND ("A"."TRANSACTION_NBR"<=:B4 OR :B5=0)))
    1066 - access("FIN_INVOICE"."CUSTOMER_VENDOR_ID"="S1_CUSTOMER_DATA"."CUSTOMER_ID")
    filter(("FIN_INVOICE"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_SOURCE" OR
    "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND "FIN_INVOICE"."INVOICE_DATE">"FIN_AGING_ARG"."AGING_DATE" AND
    ("FIN_AGING_ARG"."PLC_ID" IS NULL OR "FIN_INVOICE"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND "FIN_AGING_ARG"."PLC_ID"
    IS NOT NULL) AND ("FIN_INVOICE"."INVOICE_STATUS"<>'C' OR "FIN_AGING_ARG"."AGING_DATE"<="FIN_INVOICE"."LAST_TRANSACTION_
    DATE" OR "FIN_INVOICE"."BALANCE_FORWARD_PRINT_FLAG"<>'Y'))
    1069 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
    1070 - filter("FIN_AGING_ARG"."CREDIT_STATUS"='0' OR "FIN_AGING_ARG"."CREDIT_STATUS"='1' AND
    "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "FIN_AGING_ARG"."CREDIT_STATUS"='2' AND "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT
    NULL OR "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT NULL)
    1071 - filter("FIN_INVOICE"."FINANCIAL_SOURCE"='A/R')
    1072 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
    1073 - filter("A"."TRANSACTION_NBR"<=:B1 OR :B2=0)
    1074 - access("A"."INVOICE_NBR"=:B1)
    1075 - filter(("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
    WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2)) AND "FIN_TRANSACTION"."TRANSACTION_NBR"= (SELECT
    MAX("TRANSACTION_NBR") FROM GRAINVTRC."FIN_TRANSACTION" "A" WHERE "A"."PAYMENT_NBR"=:B3 AND
    "A"."TRANSACTION_DATE"<=:B4 AND ("A"."TRANSACTION_NBR"<=:B5 OR :B6=0)))
    1076 - filter(NULL IS NOT NULL AND NULL IS NOT NULL)
    1077 - access("FIN_PAYMENT"."CUSTOMER_VENDOR_ID"="S1_CUSTOMER_DATA"."CUSTOMER_ID")
    filter("FIN_AGING_ARG"."CREDIT_STATUS"='0' OR "FIN_AGING_ARG"."CREDIT_STATUS"='1' AND
    "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "FIN_AGING_ARG"."CREDIT_STATUS"='2' AND "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT
    NULL OR "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT NULL)
    1079 - access("FIN_PAYMENT"."PAYMENT_NBR"="FIN_TRANSACTION"."PAYMENT_NBR")
    filter(("FIN_PAYMENT"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_SOURCE" OR
    "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND "FIN_PAYMENT"."PAYMENT_DATE"<="FIN_AGING_ARG"."AGING_DATE" AND
    ("FIN_AGING_ARG"."PLC_ID" IS NULL OR "FIN_AGING_ARG"."PLC_ID" IS NOT NULL AND
    "FIN_PAYMENT"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND "FIN_PAYMENT"."LOCATION_ID" IS NOT NULL) AND CASE WHEN
    "FIN_AGING_ARG"."AGE_CREDIT_FLAG"='Y' THEN CASE WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AG
    ING_ARG"."B_1"+1 THEN 1 WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AGING_ARG"."B_2"+1 THEN 2
    WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AGING_ARG"."B_3"+1 THEN 3 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AGING_ARG"."B_4"+1 THEN 4 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AGING_ARG"."B_5"+1 THEN 5 ELSE 6 END ELSE 1 END >0)
    1080 - filter("FIN_PAYMENT"."FINANCIAL_SOURCE"='A/R' AND ("FIN_PAYMENT"."INTERNAL_FLAG"='N' OR
    "FIN_PAYMENT"."INTERNAL_FLAG"='Y' AND ("FIN_PAYMENT"."PAYMENT_TYPE"='C' OR "FIN_PAYMENT"."PAYMENT_TYPE"='N')))
    1083 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
    1084 - filter("FIN_TRANSACTION"."PAYMENT_NBR" IS NOT NULL AND ("FIN_AGING_ARG"."MAX_KEY"=0 OR
    "FIN_TRANSACTION"."TRANSACTION_NBR"<="FIN_AGING_ARG"."MAX_KEY"))
    1085 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
    1087 - filter("A"."TRANSACTION_DATE"<=:B1 AND ("A"."TRANSACTION_NBR"<=:B2 OR :B3=0))
    1088 - access("A"."PAYMENT_NBR"=:B1)
    1089 - filter(("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
    WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2)) AND EXISTS (SELECT 0 FROM
    GRAINVTRC."FIN_TRANSACTION" "A" WHERE "A"."PAYMENT_NBR"=:B3 AND ("A"."TRANSACTION_NBR"<=:B4 OR :B5=0)))
    1090 - filter(NULL IS NOT NULL)
    1094 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
    1095 - filter("FIN_PAYMENT"."FINANCIAL_SOURCE"='A/R' AND ("FIN_PAYMENT"."INTERNAL_FLAG"='N' OR
    "FIN_PAYMENT"."INTERNAL_FLAG"='Y' AND ("FIN_PAYMENT"."PAYMENT_TYPE"='C' OR "FIN_PAYMENT"."PAYMENT_TYPE"='N')) AND
    ("FIN_PAYMENT"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_SOURCE" OR "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND
    ("UNAPPLIED_AMOUNT"<>0 OR "FIN_AGING_ARG"."AGING_DATE"<="LAST_TRANSACTION_DATE") AND ("FIN_AGING_ARG"."PLC_ID" IS NULL
    OR "FIN_AGING_ARG"."PLC_ID" IS NOT NULL AND "FIN_PAYMENT"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND
    "FIN_PAYMENT"."LOCATION_ID" IS NOT NULL))
    1096 - access("FIN_PAYMENT"."PAYMENT_DATE">"FIN_AGING_ARG"."AGING_DATE")
    1097 - filter("FIN_AGING_ARG"."CREDIT_STATUS"='0' OR "FIN_AGING_ARG"."CREDIT_STATUS"='1' AND
    "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "FIN_AGING_ARG"."CREDIT_STATUS"='2' AND "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT
    NULL OR "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT NULL)
    1098 - access("FIN_PAYMENT"."CUSTOMER_VENDOR_ID"="S1_CUSTOMER_DATA"."CUSTOMER_ID")
    1099 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
    1100 - filter("A"."TRANSACTION_NBR"<=:B1 OR :B2=0)
    1101 - access("A"."PAYMENT_NBR"=:B1)
    1102 - filter("A"."FINANCIAL_SOURCE"='A/R')
    1103 - access("FIN_AGING_INVOICE_VIEW"."SERIAL_NUMBER"="A"."INVOICE_NBR")
    1104 - access("A1_USER_LOCATION"."USER_ID"='BRENT' AND "A1_USER_LOCATION"."PLC_ID"="A"."LOCATION_ID")
    1106 - access("SB"."NAME_AND_ADDRESS_ID"="A"."CUSTOMER_VENDOR_ID")
    1108 - access("SB"."NAME_AND_ADDRESS_ID"="S1_CUSTOMER_DATA"."CUSTOMER_ID")
    1110 - access("SA"."NAME_AND_ADDRESS_ID"="A"."LOCATION_ID")
    1113 - access("A"."TRADER_ID"="S1_TRADER"."TRADER_ID"(+))
    1115 - access("FIN_TRANSACTION"."INVOICE_NBR"="A"."INVOICE_NBR")
    filter("FIN_TRANSACTION"."INVOICE_NBR" IS NOT NULL)
    1118 - access("FIN_PAYMENT"."PAYMENT_NBR"="FIN_TRANSACTION"."PAYMENT_NBR")
    1132 - filter("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
    WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2))
    1133 - filter(NULL IS NOT NULL AND NULL IS NOT NULL)
    1136 - filter("FIN_AGING_ARG"."INVOICE_DATE_FLAG"='N')
    1137 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
    1138 - filter("FIN_INVOICE"."FINANCIAL_SOURCE"='A/P' AND ("FIN_INVOICE"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_S
    OURCE" OR "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND "FIN_INVOICE"."INVOICE_DATE"<="FIN_AGING_ARG"."AGING_DATE" AND
    ("FIN_AGING_ARG"."PLC_ID" IS NULL OR "FIN_INVOICE"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND "FIN_AGING_ARG"."PLC_ID"
    IS NOT NULL) AND CASE WHEN (("FIN_AGING_ARG"."AGE_CREDIT_FLAG"='Y' AND "FIN_INVOICE"."ORIGINAL_AMOUNT"<0) OR
    "FIN_INVOICE"."ORIGINAL_AMOUNT">0) THEN CASE WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG
    "."B_1"+1 THEN 1 WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG"."B_2"+1 THEN 2 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG"."B_3"+1 THEN 3 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG"."B_4"+1 THEN 4 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG"."B_5"+1 THEN 5 ELSE 6 END ELSE 1 END >0)
    1139 - filter("FIN_TRANSACTION"."INVOICE_NBR" IS NOT NULL AND
    "FIN_INVOICE"."INVOICE_NBR"="FIN_TRANSACTION"."INVOICE_NBR" AND ("FIN_AGING_ARG"."MAX_KEY"=0 OR
    "FIN_TRANSACTION"."TRANSACTION_NBR"<="FIN_AGING_ARG"."MAX_KEY"))
    1140 - access("FIN_TRANSACTION"."TRANSACTION_NBR"= (SELECT MAX("TRANSACTION_NBR") FROM GRAINVTRC."FIN_TRANSACTION" "A"
    WHERE "A"."INVOICE_NBR"=:B1 AND "A"."TRANSACTION_DATE"<=:B2 AND ("A"."TRANSACTION_NBR"<=:B3 OR :B4=0)))
    1142 - filter("A"."TRANSACTION_DATE"<=:B1 AND ("A"."TRANSACTION_NBR"<=:B2 OR :B3=0))
    1143 - access("A"."INVOICE_NBR"=:B1)
    1144 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
    1145 - filter("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
    WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2))
    1146 - filter(NULL IS NOT NULL AND NULL IS NOT NULL)
    1149 - filter("FIN_AGING_ARG"."INVOICE_DATE_FLAG"='Y')
    1150 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
    1151 - filter("FIN_INVOICE"."FINANCIAL_SOURCE"='A/P' AND ("FIN_INVOICE"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_S
    OURCE" OR "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND "FIN_INVOICE"."INVOICE_DATE"<="FIN_AGING_ARG"."AGING_DATE" AND
    ("FIN_AGING_ARG"."PLC_ID" IS NULL OR "FIN_INVOICE"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND "FIN_AGING_ARG"."PLC_ID"
    IS NOT NULL) AND CASE WHEN (("FIN_AGING_ARG"."AGE_CREDIT_FLAG"='Y' AND "FIN_INVOICE"."ORIGINAL_AMOUNT"<0) OR
    "FIN_INVOICE"."ORIGINAL_AMOUNT">0) THEN CASE WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING
    _ARG"."B_1"+1 THEN 1 WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING_ARG"."B_2"+1 THEN 2
    WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING_ARG"."B_3"+1 THEN 3 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING_ARG"."B_4"+1 THEN 4 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING_ARG"."B_5"+1 THEN 5 ELSE 6 END ELSE 1 END >0)
    1152 - filter("FIN_TRANSACTION"."INVOICE_NBR" IS NOT NULL AND
    "FIN_INVOICE"."INVOICE_NBR"="FIN_TRANSACTION"."INVOICE_NBR" AND ("FIN_AGING_ARG"."MAX_KEY"=0 OR
    "FIN_TRANSACTION"."TRANSACTION_NBR"<="FIN_AGING_ARG"."MAX_KEY"))
    1153 - access("FIN_TRANSACTION"."TRANSACTION_NBR"= (SELECT MAX("TRANSACTION_NBR") FROM GRAINVTRC."FIN_TRANSACTION" "A"
    WHERE "A"."INVOICE_NBR"=:B1 AND "A"."TRANSACTION_DATE"<=:B2 AND ("A"."TRANSACTION_NBR"<=:B3 OR :B4=0)))
    1155 - filter("A"."TRANSACTION_DATE"<=:B1 AND ("A"."TRANSACTION_NBR"<=:B2 OR :B3=0))
    1156 - access("A"."INVOICE_NBR"=:B1)
    1157 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
    1158 - filter(("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
    WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2)) AND EXISTS (SELECT 0 FROM
    GRAINVTRC."FIN_TRANSACTION" "A" WHERE "A"."INVOICE_NBR"=:B3 AND ("A"."TRANSACTION_NBR"<=:B4 OR :B5=0)))
    1159 - filter(NULL IS NOT NULL)
    1162 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
    1163 - filter("FIN_INVOICE"."FINANCIAL_SOURCE"='A/P' AND ("FIN_INVOICE"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_S
    OURCE" OR "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND "FIN_INVOICE"."INVOICE_DATE">"FIN_AGING_ARG"."AGING_DATE" AND
    ("FIN_AGING_ARG"."PLC_ID" IS NULL OR "FIN_INVOICE"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND "FIN_AGING_ARG"."PLC_ID"
    IS NOT NULL) AND ("FIN_INVOICE"."INVOICE_STATUS"<>'C' OR "FIN_AGING_ARG"."AGING_DATE"<="FIN_INVOICE"."LAST_TRANSACTION_
    DATE" OR "FIN_INVOICE"."BALANCE_FORWARD_PRINT_FLAG"<>'Y'))
    1164 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
    1165 - filter("A"."TRANSACTION_NBR"<=:B1 OR :B2=0)
    1166 - access("A"."INVOICE_NBR"=:B1)
    1167 - filter(("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
    WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2)) AND "FIN_TRANSACTION"."TRANSACTION_NBR"= (SELECT
    MAX("TRANSACTION_NBR") FROM GRAINVTRC."FIN_TRANSACTION" "A" WHERE "A"."PAYMENT_NBR"=:B3 AND
    "A"."TRANSACTION_DATE"<=:B4 AND ("A"."TRANSACTION_NBR"<=:B5 OR :B6=0)))
    1168 - filter(NULL IS NOT NULL)
    1169 - access("FIN_PAYMENT"."PAYMENT_NBR"="FIN_TRANSACTION"."PAYMENT_NBR")
    filter(("FIN_PAYMENT"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_SOURCE" OR
    "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND "FIN_PAYMENT"."PAYMENT_DATE"<="FIN_AGING_ARG"."AGING_DATE" AND
    ("FIN_AGING_ARG"."PLC_ID" IS NULL OR "FIN_AGING_ARG"."PLC_ID" IS NOT NULL AND
    "FIN_PAYMENT"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND "FIN_PAYMENT"."LOCATION_ID" IS NOT NULL) AND CASE WHEN
    "FIN_AGING_ARG"."AGE_CREDIT_FLAG"='Y' THEN CASE WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AG
    ING_ARG"."B_1"+1 THEN 1 WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AGING_ARG"."B_2"+1 THEN 2
    WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AGING_ARG"."B_3"+1 THEN 3 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AGING_ARG"."B_4"+1 THEN 4 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AGING_ARG"."B_5"+1 THEN 5 ELSE 6 END ELSE 1 END >0)
    1170 - filter("FIN_PAYMENT"."FINANCIAL_SOURCE"='A/P' AND ("FIN_PAYMENT"."INTERNAL_FLAG"='N' OR
    "FIN_PAYMENT"."INTERNAL_FLAG"='Y' AND ("FIN_PAYMENT"."PAYMENT_TYPE"='C' OR "FIN_PAYMENT"."PAYMENT_TYPE"='N')))
    1173 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
    1174 - filter("FIN_TRANSACTION"."PAYMENT_NBR" IS NOT NULL AND ("FIN_AGING_ARG"."MAX_KEY"=0 OR
    "FIN_TRANSACTION"."TRANSACTION_NBR"<="FIN_AGING_ARG"."MAX_KEY"))
    1175 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
    1177 - filter("A"."TRANSACTION_DATE"<=:B1 AND ("A"."TRANSACTION_NBR"<=:B2 OR :B3=0))
    1178 - access("A"."PAYMENT_NBR"=:B1)
    1179 - filter(("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
    WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2)) AND EXISTS (SELECT 0 FROM
    GRAINVTRC."FIN_TRANSACTION" "A" WHERE "A"."PAYMENT_NBR"=:B3 AND ("A"."TRANSACTION_NBR"<=:B4 OR :B5=0)))
    1182 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
    1183 - filter("FIN_PAYMENT"."FINANCIAL_SOURCE"='A/P' AND ("FIN_PAYMENT"."INTERNAL_FLAG"='N' OR
    "FIN_PAYMENT"."INTERNAL_FLAG"='Y' AND ("FIN_PAYMENT"."PAYMENT_TYPE"='C' OR "FIN_PAYMENT"."PAYMENT_TYPE"='N')) AND
    ("FIN_PAYMENT"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_SOURCE" OR "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND
    ("UNAPPLIED_AMOUNT"<>0 OR "FIN_AGING_ARG"."AGING_DATE"<="LAST_TRANSACTION_DATE") AND ("FIN_AGING_ARG"."PLC_ID" IS NULL
    OR "FIN_AGING_ARG"."PLC_ID" IS NOT NULL AND "FIN_PAYMENT"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND
    "FIN_PAYMENT"."LOCATION_ID" IS NOT NULL))
    1184 - access("FIN_PAYMENT"."PAYMENT_DATE">"FIN_AGING_ARG"."AGING_DATE")
    1185 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
    1186 - filter("A"."TRANSACTION_NBR"<=:B1 OR :B2=0)
    1187 - access("A"."PAYMENT_NBR"=:B1)
    1188 - filter("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
    WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2))
    1189 - filter(NULL IS NOT NULL AND NULL IS NOT NULL)
    1193 - filter("FIN_AGING_ARG"."INVOICE_DATE_FLAG"='N')
    1194 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
    1195 - filter("FIN_INVOICE"."FINANCIAL_SOURCE"='A/R' AND ("FIN_INVOICE"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_S
    OURCE" OR "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND "FIN_INVOICE"."INVOICE_DATE"<="FIN_AGING_ARG"."AGING_DATE" AND
    ("FIN_AGING_ARG"."PLC_ID" IS NULL OR "FIN_INVOICE"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND "FIN_AGING_ARG"."PLC_ID"
    IS NOT NULL) AND CASE WHEN (("FIN_AGING_ARG"."AGE_CREDIT_FLAG"='Y' AND "FIN_INVOICE"."ORIGINAL_AMOUNT"<0) OR
    "FIN_INVOICE"."ORIGINAL_AMOUNT">0) THEN CASE WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG
    "."B_1"+1 THEN 1 WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG"."B_2"+1 THEN 2 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG"."B_3"+1 THEN 3 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG"."B_4"+1 THEN 4 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG"."B_5"+1 THEN 5 ELSE 6 END ELSE 1 END >0)
    1196 - filter("FIN_TRANSACTION"."INVOICE_NBR" IS NOT NULL AND
    "FIN_INVOICE"."INVOICE_NBR"="FIN_TRANSACTION"."INVOICE_NBR" AND ("FIN_AGING_ARG"."MAX_KEY"=0 OR
    "FIN_TRANSACTION"."TRANSACTION_NBR"<="FIN_AGING_ARG"."MAX_KEY"))
    1197 - access("FIN_TRANSACTION"."TRANSACTION_NBR"= (SELECT MAX("TRANSACTION_NBR") FROM GRAINVTRC."FIN_TRANSACTION" "A"
    WHERE "A"."INVOICE_NBR"=:B1 AND "A"."TRANSACTION_DATE"<=:B2 AND ("A"."TRANSACTION_NBR"<=:B3 OR :B4=0)))
    1199 - filter("A"."TRANSACTION_DATE"<=:B1 AND ("A"."TRANSACTION_NBR"<=:B2 OR :B3=0))
    1200 - access("A"."INVOICE_NBR"=:B1)
    1201 - filter("FIN_AGING_ARG"."CREDIT_STATUS"='0' OR "FIN_AGING_ARG"."CREDIT_STATUS"='1' AND
    "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "FIN_AGING_ARG"."CREDIT_STATUS"='2' AND "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT
    NULL OR "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT NULL)
    1202 - access("FIN_INVOICE"."CUSTOMER_VENDOR_ID"="S1_CUSTOMER_DATA"."CUSTOMER_ID")
    1203 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
    1204 - filter("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
    WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2))
    1205 - filter(NULL IS NOT NULL AND NULL IS NOT NULL)
    1209 - filter("FIN_AGING_ARG"."INVOICE_DATE_FLAG"='Y')
    1210 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
    1211 - filter("FIN_INVOICE"."FINANCIAL_SOURCE"='A/R' AND ("FIN_INVOICE"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_S
    OURCE" OR "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND "FIN_INVOICE"."INVOICE_DATE"<="FIN_AGING_ARG"."AGING_DATE" AND
    ("FIN_AGING_ARG"."PLC_ID" IS NULL OR "FIN_INVOICE"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND "FIN_AGING_ARG"."PLC_ID"
    IS NOT NULL) AND CASE WHEN (("FIN_AGING_ARG"."AGE_CREDIT_FLAG"='Y' AND "FIN_INVOICE"."ORIGINAL_AMOUNT"<0) OR
    "FIN_INVOICE"."ORIGINAL_AMOUNT">0) THEN CASE WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING
    _ARG"."B_1"+1 THEN 1 WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING_ARG"."B_2"+1 THEN 2
    WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING_ARG"."B_3"+1 THEN 3 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING_ARG"."B_4"+1 THEN 4 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING_ARG"."B_5"+1 THEN 5 ELSE 6 END ELSE 1 END >0)
    1212 - filter("FIN_TRANSACTION"."INVOICE_NBR" IS NOT NULL AND
    "FIN_INVOICE"."INVOICE_NBR"="FIN_TRANSACTION"."INVOICE_NBR" AND ("FIN_AGING_ARG"."MAX_KEY"=0 OR
    "FIN_TRANSACTION"."TRANSACTION_NBR"<="FIN_AGING_ARG"."MAX_KEY"))
    1213 - access("FIN_TRANSACTION"."TRANSACTION_NBR"= (SELECT MAX("TRANSACTION_NBR") FROM GRAINVTRC."FIN_TRANSACTION" "A"
    WHERE "A"."INVOICE_NBR"=:B1 AND "A"."TRANSACTION_DATE"<=:B2 AND ("A"."TRANSACTION_NBR"<=:B3 OR :B4=0)))
    1215 - filter("A"."TRANSACTION_DATE"<=:B1 AND ("A"."TRANSACTION_NBR"<=:B2 OR :B3=0))
    1216 - access("A"."INVOICE_NBR"=:B1)
    1217 - filter("FIN_AGING_ARG"."CREDIT_STATUS"='0' OR "FIN_AGING_ARG"."CREDIT_STATUS"='1' AND
    "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "FIN_AGING_ARG"."CREDIT_STATUS"='2' AND "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT
    NULL OR "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT NULL)
    1218 - access("FIN_INVOICE"."CUSTOMER_VENDOR_ID"="S1_CUSTOMER_DATA"."CUSTOMER_ID")
    1219 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
    1220 - filter(("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
    WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2)) AND EXISTS (SELECT 0 FROM
    GRAINVTRC."FIN_TRANSACTION" "A" WHERE "A"."INVOICE_NBR"=:B3 AND ("A"."TRANSACTION_NBR"<=:B4 OR :B5=0)))
    1221 - filter(NULL IS NOT NULL)
    1222 - access("FIN_INVOICE"."CUSTOMER_VENDOR_ID"="S1_CUSTOMER_DATA"."CUSTOMER_ID")
    filter(("FIN_INVOICE"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_SOURCE" OR
    "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND "FIN_INVOICE"."INVOICE_DATE">"FIN_AGING_ARG"."AGING_DATE" AND
    ("FIN_AGING_ARG"."PLC_ID" IS NULL OR "FIN_INVOICE"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND "FIN_AGING_ARG"."PLC_ID"
    IS NOT NULL) AND ("FIN_INVOICE"."INVOICE_STATUS"<>'C' OR "FIN_AGING_ARG"."AGING_DATE"<="FIN_INVOICE"."LAST_TRANSACTION_
    DATE" OR "FIN_INVOICE"."BALANCE_FORWARD_PRINT_FLAG"<>'Y'))
    1225 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
    1226 - filter("FIN_AGING_ARG"."CREDIT_STATUS"='0' OR "FIN_AGING_ARG"."CREDIT_STATUS"='1' AND
    "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "FIN_AGING_ARG"."CREDIT_STATUS"='2' AND "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT
    NULL OR "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT NULL)
    1227 - filter("FIN_INVOICE"."FINANCIAL_SOURCE"='A/R')
    1228 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
    1229 - filter("A"."TRANSACTION_NBR"<=:B1 OR :B2=0)
    1230 - access("A"."INVOICE_NBR"=:B1)
    1231 - filter(("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
    WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2)) AND "FIN_TRANSACTION"."TRANSACTION_NBR"= (SELECT
    MAX("TRANSACTION_NBR") FROM GRAINVTRC."FIN_TRANSACTION" "A" WHERE "A"."PAYMENT_NBR"=:B3 AND
    "A"."TRANSACTION_DATE"<=:B4 AND ("A"."TRANSACTION_NBR"<=:B5 OR :B6=0)))
    1232 - filter(NULL IS NOT NULL)
    1233 - access("FIN_PAYMENT"."CUSTOMER_VENDOR_ID"="S1_CUSTOMER_DATA"."CUSTOMER_ID")
    filter("FIN_AGING_ARG"."CREDIT_STATUS"='0' OR "FIN_AGING_ARG"."CREDIT_STATUS"='1' AND
    "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "FIN_AGING_ARG"."CREDIT_STATUS"='2' AND "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT
    NULL OR "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT NULL)
    1235 - access("FIN_PAYMENT"."PAYMENT_NBR"="FIN_TRANSACTION"."PAYMENT_NBR")
    filter(("FIN_PAYMENT"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_SOURCE" OR
    "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND "FIN_PAYMENT"."PAYMENT_DATE"<="FIN_AGING_ARG"."AGING_DATE" AND
    ("FIN_AGING_ARG"."PLC_ID" IS NULL OR "FIN_AGING_ARG"."PLC_ID" IS NOT NULL AND
    "FIN_PAYMENT"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND "FIN_PAYMENT"."LOCATION_ID" IS NOT NULL) AND CASE WHEN
    "FIN_AGING_ARG"."AGE_CREDIT_FLAG"='Y' THEN CASE WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AG
    ING_ARG"."B_1"+1 THEN 1 WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AGING_ARG"."B_2"+1 THEN 2
    WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AGING_ARG"."B_3"+1 THEN 3 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AGING_ARG"."B_4"+1 THEN 4 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AGING_ARG"."B_5"+1 THEN 5 ELSE 6 END ELSE 1 END >0)
    1236 - filter("FIN_PAYMENT"."FINANCIAL_SOURCE"='A/R' AND ("FIN_PAYMENT"."INTERNAL_FLAG"='N' OR
    "FIN_PAYMENT"."INTERNAL_FLAG"='Y' AND ("FIN_PAYMENT"."PAYMENT_TYPE"='C' OR "FIN_PAYMENT"."PAYMENT_TYPE"='N')))
    1239 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
    1240 - filter("FIN_TRANSACTION"."PAYMENT_NBR" IS NOT NULL AND ("FIN_AGING_ARG"."MAX_KEY"=0 OR
    "FIN_TRANSACTION"."TRANSACTION_NBR"<="FIN_AGING_ARG"."MAX_KEY"))
    1241 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
    1243 - filter("A"."TRANSACTION_DATE"<=:B1 AND ("A"."TRANSACTION_NBR"<=:B2 OR :B3=0))
    1244 - access("A"."PAYMENT_NBR"=:B1)
    1245 - filter(("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
    WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2)) AND EXISTS (SELECT 0 FROM
    GRAINVTRC."FIN_TRANSACTION" "A" WHERE "A"."PAYMENT_NBR"=:B3 AND ("A"."TRANSACTION_NBR"<=:B4 OR :B5=0)))
    1249 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
    1250 - filter("FIN_PAYMENT"."FINANCIAL_SOURCE"='A/R' AND ("FIN_PAYMENT"."INTERNAL_FLAG"='N' OR
    "FIN_PAYMENT"."INTERNAL_FLAG"='Y' AND ("FIN_PAYMENT"."PAYMENT_TYPE"='C' OR "FIN_PAYMENT"."PAYMENT_TYPE"='N')) AND
    ("FIN_PAYMENT"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_SOURCE" OR "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND
    ("UNAPPLIED_AMOUNT"<>0 OR "FIN_AGING_ARG"."AGING_DATE"<="LAST_TRANSACTION_DATE") AND ("FIN_AGING_ARG"."PLC_ID" IS NULL
    OR "FIN_AGING_ARG"."PLC_ID" IS NOT NULL AND "FIN_PAYMENT"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND
    "FIN_PAYMENT"."LOCATION_ID" IS NOT NULL))
    1251 - access("FIN_PAYMENT"."PAYMENT_DATE">"FIN_AGING_ARG"."AGING_DATE")
    1252 - filter("FIN_AGING_ARG"."CREDIT_STATUS"='0' OR "FIN_AGING_ARG"."CREDIT_STATUS"='1' AND
    "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "FIN_AGING_ARG"."CREDIT_STATUS"='2' AND "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT
    NULL OR "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT NULL)
    1253 - access("FIN_PAYMENT"."CUSTOMER_VENDOR_ID"="S1_CUSTOMER_DATA"."CUSTOMER_ID")
    1254 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
    1255 - filter("A"."TRANSACTION_NBR"<=:B1 OR :B2=0)
    1256 - access("A"."PAYMENT_NBR"=:B1)
    1257 - filter("A"."LOCATION_ID" IS NOT NULL AND ("A"."PAYMENT_TYPE"='C' OR "A"."PAYMENT_TYPE"='N' OR
    "A"."PAYMENT_TYPE"='P') AND ("A"."INTERNAL_FLAG"='N' OR ("A"."PAYMENT_TYPE"='C' OR "A"."PAYMENT_TYPE"='N')))
    1258 - access("FIN_AGING_INVOICE_VIEW"."SERIAL_NUMBER"="A"."PAYMENT_NBR")
    1259 - access("A1_USER_LOCATION"."USER_ID"='BRENT' AND "A1_USER_LOCATION"."PLC_ID"="A"."LOCATION_ID")
    1261 - access("SB"."NAME_AND_ADDRESS_ID"="A"."CUSTOMER_VENDOR_ID")
    1262 - access("SB"."TRADER_ID"="S1_TRADER"."TRADER_ID"(+))
    1263 - access("SB"."NAME_AND_ADDRESS_ID"="S1_NA_BUSINESS_TYPE"."NAME_AND_ADDRESS_ID"(+))
    1265 - access("SB"."NAME_AND_ADDRESS_ID"="S1_CUSTOMER_DATA"."CUSTOMER_ID")
    1267 - access("SA"."NAME_AND_ADDRESS_ID"="A"."LOCATION_ID")
    1268 - filter("FIN_TRANSACTION"."INVOICE_NBR" IS NULL AND "FIN_TRANSACTION"."FINANCIAL_SOURCE"='A/R' AND
    ("FIN_TRANSACTION"."REVERSED_TRANSACTION_NBR" IS NULL OR ("A"."PAYMENT_TYPE"='C' OR "A"."PAYMENT_TYPE"='N')))
    1269 - access("A"."PAYMENT_NBR"="FIN_TRANSACTION"."PAYMENT_NBR")

    Hi,
    did u try it: SQL and PL/SQL FAQ
    item 3?

  • Query Tuning Assistance - part 2

    211 - filter("FIN_TRANSACTION"."PAYMENT_NBR" IS NOT NULL AND ("FIN_AGING_ARG"."MAX_KEY"=0 OR
    "FIN_TRANSACTION"."TRANSACTION_NBR"<="FIN_AGING_ARG"."MAX_KEY"))
    212 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
    214 - filter("A"."TRANSACTION_DATE"<=:B1 AND ("A"."TRANSACTION_NBR"<=:B2 OR :B3=0))
    215 - access("A"."PAYMENT_NBR"=:B1)
    216 - filter(("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
    WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2)) AND EXISTS (SELECT 0 FROM
    GRAINVTRC."FIN_TRANSACTION" "A" WHERE "A"."PAYMENT_NBR"=:B3 AND ("A"."TRANSACTION_NBR"<=:B4 OR :B5=0)))
    217 - filter(NULL IS NOT NULL)
    220 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
    221 - filter("FIN_PAYMENT"."FINANCIAL_SOURCE"='A/P' AND ("FIN_PAYMENT"."INTERNAL_FLAG"='N' OR
    "FIN_PAYMENT"."INTERNAL_FLAG"='Y' AND ("FIN_PAYMENT"."PAYMENT_TYPE"='C' OR "FIN_PAYMENT"."PAYMENT_TYPE"='N')) AND
    ("FIN_PAYMENT"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_SOURCE" OR "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND
    ("UNAPPLIED_AMOUNT"<>0 OR "FIN_AGING_ARG"."AGING_DATE"<="LAST_TRANSACTION_DATE") AND ("FIN_AGING_ARG"."PLC_ID" IS NULL
    OR "FIN_AGING_ARG"."PLC_ID" IS NOT NULL AND "FIN_PAYMENT"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND
    "FIN_PAYMENT"."LOCATION_ID" IS NOT NULL))
    222 - access("FIN_PAYMENT"."PAYMENT_DATE">"FIN_AGING_ARG"."AGING_DATE")
    223 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
    224 - filter("A"."TRANSACTION_NBR"<=:B1 OR :B2=0)
    225 - access("A"."PAYMENT_NBR"=:B1)
    226 - filter("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
    WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2))
    230 - filter("FIN_AGING_ARG"."INVOICE_DATE_FLAG"='N')
    231 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
    232 - filter("FIN_INVOICE"."FINANCIAL_SOURCE"='A/R' AND ("FIN_INVOICE"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_S
    OURCE" OR "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND "FIN_INVOICE"."INVOICE_DATE"<="FIN_AGING_ARG"."AGING_DATE" AND
    ("FIN_AGING_ARG"."PLC_ID" IS NULL OR "FIN_INVOICE"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND "FIN_AGING_ARG"."PLC_ID"
    IS NOT NULL) AND CASE WHEN (("FIN_AGING_ARG"."AGE_CREDIT_FLAG"='Y' AND "FIN_INVOICE"."ORIGINAL_AMOUNT"<0) OR
    "FIN_INVOICE"."ORIGINAL_AMOUNT">0) THEN CASE WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG
    "."B_1"+1 THEN 1 WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG"."B_2"+1 THEN 2 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG"."B_3"+1 THEN 3 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG"."B_4"+1 THEN 4 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG"."B_5"+1 THEN 5 ELSE 6 END ELSE 1 END >0)
    233 - filter("FIN_TRANSACTION"."INVOICE_NBR" IS NOT NULL AND
    "FIN_INVOICE"."INVOICE_NBR"="FIN_TRANSACTION"."INVOICE_NBR" AND ("FIN_AGING_ARG"."MAX_KEY"=0 OR
    "FIN_TRANSACTION"."TRANSACTION_NBR"<="FIN_AGING_ARG"."MAX_KEY"))
    234 - access("FIN_TRANSACTION"."TRANSACTION_NBR"= (SELECT MAX("TRANSACTION_NBR") FROM GRAINVTRC."FIN_TRANSACTION" "A"
    WHERE "A"."INVOICE_NBR"=:B1 AND "A"."TRANSACTION_DATE"<=:B2 AND ("A"."TRANSACTION_NBR"<=:B3 OR :B4=0)))
    236 - filter("A"."TRANSACTION_DATE"<=:B1 AND ("A"."TRANSACTION_NBR"<=:B2 OR :B3=0))
    237 - access("A"."INVOICE_NBR"=:B1)
    238 - filter("FIN_AGING_ARG"."CREDIT_STATUS"='0' OR "FIN_AGING_ARG"."CREDIT_STATUS"='1' AND
    "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "FIN_AGING_ARG"."CREDIT_STATUS"='2' AND "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT
    NULL OR "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT NULL)
    239 - access("FIN_INVOICE"."CUSTOMER_VENDOR_ID"="S1_CUSTOMER_DATA"."CUSTOMER_ID")
    240 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
    241 - filter("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
    WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2))
    245 - filter("FIN_AGING_ARG"."INVOICE_DATE_FLAG"='Y')
    246 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
    247 - filter("FIN_INVOICE"."FINANCIAL_SOURCE"='A/R' AND ("FIN_INVOICE"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_S
    OURCE" OR "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND "FIN_INVOICE"."INVOICE_DATE"<="FIN_AGING_ARG"."AGING_DATE" AND
    ("FIN_AGING_ARG"."PLC_ID" IS NULL OR "FIN_INVOICE"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND "FIN_AGING_ARG"."PLC_ID"
    IS NOT NULL) AND CASE WHEN (("FIN_AGING_ARG"."AGE_CREDIT_FLAG"='Y' AND "FIN_INVOICE"."ORIGINAL_AMOUNT"<0) OR
    "FIN_INVOICE"."ORIGINAL_AMOUNT">0) THEN CASE WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING
    _ARG"."B_1"+1 THEN 1 WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING_ARG"."B_2"+1 THEN 2
    WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING_ARG"."B_3"+1 THEN 3 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING_ARG"."B_4"+1 THEN 4 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING_ARG"."B_5"+1 THEN 5 ELSE 6 END ELSE 1 END >0)
    248 - filter("FIN_TRANSACTION"."INVOICE_NBR" IS NOT NULL AND
    "FIN_INVOICE"."INVOICE_NBR"="FIN_TRANSACTION"."INVOICE_NBR" AND ("FIN_AGING_ARG"."MAX_KEY"=0 OR
    "FIN_TRANSACTION"."TRANSACTION_NBR"<="FIN_AGING_ARG"."MAX_KEY"))
    249 - access("FIN_TRANSACTION"."TRANSACTION_NBR"= (SELECT MAX("TRANSACTION_NBR") FROM GRAINVTRC."FIN_TRANSACTION" "A"
    WHERE "A"."INVOICE_NBR"=:B1 AND "A"."TRANSACTION_DATE"<=:B2 AND ("A"."TRANSACTION_NBR"<=:B3 OR :B4=0)))
    251 - filter("A"."TRANSACTION_DATE"<=:B1 AND ("A"."TRANSACTION_NBR"<=:B2 OR :B3=0))
    252 - access("A"."INVOICE_NBR"=:B1)
    253 - filter("FIN_AGING_ARG"."CREDIT_STATUS"='0' OR "FIN_AGING_ARG"."CREDIT_STATUS"='1' AND
    "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "FIN_AGING_ARG"."CREDIT_STATUS"='2' AND "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT
    NULL OR "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT NULL)
    254 - access("FIN_INVOICE"."CUSTOMER_VENDOR_ID"="S1_CUSTOMER_DATA"."CUSTOMER_ID")
    255 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
    256 - filter(("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
    WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2)) AND EXISTS (SELECT 0 FROM
    GRAINVTRC."FIN_TRANSACTION" "A" WHERE "A"."INVOICE_NBR"=:B3 AND ("A"."TRANSACTION_NBR"<=:B4 OR :B5=0)))
    257 - access("FIN_INVOICE"."CUSTOMER_VENDOR_ID"="S1_CUSTOMER_DATA"."CUSTOMER_ID")
    filter(("FIN_INVOICE"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_SOURCE" OR
    "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND "FIN_INVOICE"."INVOICE_DATE">"FIN_AGING_ARG"."AGING_DATE" AND
    ("FIN_AGING_ARG"."PLC_ID" IS NULL OR "FIN_INVOICE"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND "FIN_AGING_ARG"."PLC_ID"
    IS NOT NULL) AND ("FIN_INVOICE"."INVOICE_STATUS"<>'C' OR "FIN_AGING_ARG"."AGING_DATE"<="FIN_INVOICE"."LAST_TRANSACTION_
    DATE" OR "FIN_INVOICE"."BALANCE_FORWARD_PRINT_FLAG"<>'Y'))
    260 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
    261 - filter("FIN_AGING_ARG"."CREDIT_STATUS"='0' OR "FIN_AGING_ARG"."CREDIT_STATUS"='1' AND
    "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "FIN_AGING_ARG"."CREDIT_STATUS"='2' AND "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT
    NULL OR "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT NULL)
    262 - filter("FIN_INVOICE"."FINANCIAL_SOURCE"='A/R')
    263 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
    264 - filter("A"."TRANSACTION_NBR"<=:B1 OR :B2=0)
    265 - access("A"."INVOICE_NBR"=:B1)
    266 - filter(("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
    WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2)) AND "FIN_TRANSACTION"."TRANSACTION_NBR"= (SELECT
    MAX("TRANSACTION_NBR") FROM GRAINVTRC."FIN_TRANSACTION" "A" WHERE "A"."PAYMENT_NBR"=:B3 AND
    "A"."TRANSACTION_DATE"<=:B4 AND ("A"."TRANSACTION_NBR"<=:B5 OR :B6=0)))
    267 - filter(NULL IS NOT NULL)
    268 - access("FIN_PAYMENT"."CUSTOMER_VENDOR_ID"="S1_CUSTOMER_DATA"."CUSTOMER_ID")
    filter("FIN_AGING_ARG"."CREDIT_STATUS"='0' OR "FIN_AGING_ARG"."CREDIT_STATUS"='1' AND
    "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "FIN_AGING_ARG"."CREDIT_STATUS"='2' AND "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT
    NULL OR "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT NULL)
    270 - access("FIN_PAYMENT"."PAYMENT_NBR"="FIN_TRANSACTION"."PAYMENT_NBR")
    filter(("FIN_PAYMENT"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_SOURCE" OR
    "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND "FIN_PAYMENT"."PAYMENT_DATE"<="FIN_AGING_ARG"."AGING_DATE" AND
    ("FIN_AGING_ARG"."PLC_ID" IS NULL OR "FIN_AGING_ARG"."PLC_ID" IS NOT NULL AND
    "FIN_PAYMENT"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND "FIN_PAYMENT"."LOCATION_ID" IS NOT NULL) AND CASE WHEN
    "FIN_AGING_ARG"."AGE_CREDIT_FLAG"='Y' THEN CASE WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AG
    ING_ARG"."B_1"+1 THEN 1 WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AGING_ARG"."B_2"+1 THEN 2
    WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AGING_ARG"."B_3"+1 THEN 3 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AGING_ARG"."B_4"+1 THEN 4 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AGING_ARG"."B_5"+1 THEN 5 ELSE 6 END ELSE 1 END >0)
    271 - filter("FIN_PAYMENT"."FINANCIAL_SOURCE"='A/R' AND ("FIN_PAYMENT"."INTERNAL_FLAG"='N' OR
    "FIN_PAYMENT"."INTERNAL_FLAG"='Y' AND ("FIN_PAYMENT"."PAYMENT_TYPE"='C' OR "FIN_PAYMENT"."PAYMENT_TYPE"='N')))
    274 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
    275 - filter("FIN_TRANSACTION"."PAYMENT_NBR" IS NOT NULL AND ("FIN_AGING_ARG"."MAX_KEY"=0 OR
    "FIN_TRANSACTION"."TRANSACTION_NBR"<="FIN_AGING_ARG"."MAX_KEY"))
    276 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
    278 - filter("A"."TRANSACTION_DATE"<=:B1 AND ("A"."TRANSACTION_NBR"<=:B2 OR :B3=0))
    279 - access("A"."PAYMENT_NBR"=:B1)
    280 - filter(("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
    WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2)) AND EXISTS (SELECT 0 FROM
    GRAINVTRC."FIN_TRANSACTION" "A" WHERE "A"."PAYMENT_NBR"=:B3 AND ("A"."TRANSACTION_NBR"<=:B4 OR :B5=0)))
    281 - filter(NULL IS NOT NULL)
    285 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
    286 - filter("FIN_PAYMENT"."FINANCIAL_SOURCE"='A/R' AND ("FIN_PAYMENT"."INTERNAL_FLAG"='N' OR
    "FIN_PAYMENT"."INTERNAL_FLAG"='Y' AND ("FIN_PAYMENT"."PAYMENT_TYPE"='C' OR "FIN_PAYMENT"."PAYMENT_TYPE"='N')) AND
    ("FIN_PAYMENT"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_SOURCE" OR "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND
    ("UNAPPLIED_AMOUNT"<>0 OR "FIN_AGING_ARG"."AGING_DATE"<="LAST_TRANSACTION_DATE") AND ("FIN_AGING_ARG"."PLC_ID" IS NULL
    OR "FIN_AGING_ARG"."PLC_ID" IS NOT NULL AND "FIN_PAYMENT"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND
    "FIN_PAYMENT"."LOCATION_ID" IS NOT NULL))
    287 - access("FIN_PAYMENT"."PAYMENT_DATE">"FIN_AGING_ARG"."AGING_DATE")
    288 - filter("FIN_AGING_ARG"."CREDIT_STATUS"='0' OR "FIN_AGING_ARG"."CREDIT_STATUS"='1' AND
    "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "FIN_AGING_ARG"."CREDIT_STATUS"='2' AND "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT
    NULL OR "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT NULL)
    289 - access("FIN_PAYMENT"."CUSTOMER_VENDOR_ID"="S1_CUSTOMER_DATA"."CUSTOMER_ID")
    290 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
    291 - filter("A"."TRANSACTION_NBR"<=:B1 OR :B2=0)
    292 - access("A"."PAYMENT_NBR"=:B1)
    294 - access("TB_TRANSACTION"."TRANSACTION_NBR"="FIN_AGING_INVOICE_VIEW"."MAX_TRANSACTION_NBR")
    295 - filter("A"."FINANCIAL_SOURCE"='A/R' AND ("TB_TRANSACTION"."AFTER_STATUS"<>'C' OR "A"."INVOICE_STATUS"<>'C' OR
    "A"."BALANCE_FORWARD_PRINT_FLAG"<>'Y'))
    296 - access("FIN_AGING_INVOICE_VIEW"."SERIAL_NUMBER"="A"."INVOICE_NBR")
    297 - access("A1_USER_LOCATION"."USER_ID"='BRENT' AND "A1_USER_LOCATION"."PLC_ID"="A"."LOCATION_ID")
    299 - access("SB"."NAME_AND_ADDRESS_ID"="A"."CUSTOMER_VENDOR_ID")
    301 - access("SB"."NAME_AND_ADDRESS_ID"="S1_CUSTOMER_DATA"."CUSTOMER_ID")
    303 - access("SA"."NAME_AND_ADDRESS_ID"="A"."LOCATION_ID")
    306 - access("A"."TRADER_ID"="S1_TRADER"."TRADER_ID"(+))
    307 - access("A"."CUSTOMER_VENDOR_ID"="S1_NA_BUSINESS_TYPE"."NAME_AND_ADDRESS_ID"(+))
    308 - access("FIN_TRANSACTION"."INVOICE_NBR"="A"."INVOICE_NBR")
    filter("FIN_TRANSACTION"."INVOICE_NBR" IS NOT NULL)
    311 - access("FIN_PAYMENT"."PAYMENT_NBR"="FIN_TRANSACTION"."PAYMENT_NBR")
    322 - access("A"."PAYMENT_NBR"="FIN_TRANSACTION"."PAYMENT_NBR")
    filter("FIN_TRANSACTION"."REVERSED_TRANSACTION_NBR" IS NULL OR "A"."PAYMENT_TYPE"='C' OR "A"."PAYMENT_TYPE"='N')
    323 - filter("A"."LOCATION_ID" IS NOT NULL AND ("A"."PAYMENT_TYPE"='C' OR "A"."PAYMENT_TYPE"='N' OR
    "A"."PAYMENT_TYPE"='P') AND ("A"."INTERNAL_FLAG"='N' OR ("A"."PAYMENT_TYPE"='C' OR "A"."PAYMENT_TYPE"='N')))
    324 - access("FIN_TRANSACTION"."TRANSACTION_TYPE"="FIN_TRANSACTION_TYPE"."CODE")
    326 - filter("FIN_TRANSACTION"."INVOICE_NBR" IS NULL AND "FIN_TRANSACTION"."PAYMENT_NBR" IS NOT NULL AND
    "FIN_TRANSACTION"."FINANCIAL_SOURCE"='A/R')
    329 - filter("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
    WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2))
    330 - filter(NULL IS NOT NULL)
    333 - filter("FIN_AGING_ARG"."INVOICE_DATE_FLAG"='N')
    334 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
    335 - filter("FIN_INVOICE"."FINANCIAL_SOURCE"='A/P' AND ("FIN_INVOICE"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_S
    OURCE" OR "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND "FIN_INVOICE"."INVOICE_DATE"<="FIN_AGING_ARG"."AGING_DATE" AND
    ("FIN_AGING_ARG"."PLC_ID" IS NULL OR "FIN_INVOICE"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND "FIN_AGING_ARG"."PLC_ID"
    IS NOT NULL) AND CASE WHEN (("FIN_AGING_ARG"."AGE_CREDIT_FLAG"='Y' AND "FIN_INVOICE"."ORIGINAL_AMOUNT"<0) OR
    "FIN_INVOICE"."ORIGINAL_AMOUNT">0) THEN CASE WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG
    "."B_1"+1 THEN 1 WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG"."B_2"+1 THEN 2 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG"."B_3"+1 THEN 3 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG"."B_4"+1 THEN 4 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG"."B_5"+1 THEN 5 ELSE 6 END ELSE 1 END >0)
    336 - access("FIN_INVOICE"."INVOICE_NBR"="A"."PAYMENT_NBR")
    337 - filter("FIN_TRANSACTION"."INVOICE_NBR"="A"."PAYMENT_NBR" AND ("FIN_AGING_ARG"."MAX_KEY"=0 OR
    "FIN_TRANSACTION"."TRANSACTION_NBR"<="FIN_AGING_ARG"."MAX_KEY"))
    338 - access("FIN_TRANSACTION"."TRANSACTION_NBR"= (SELECT MAX("TRANSACTION_NBR") FROM GRAINVTRC."FIN_TRANSACTION" "A"
    WHERE "A"."INVOICE_NBR"=:B1 AND "A"."TRANSACTION_DATE"<=:B2 AND ("A"."TRANSACTION_NBR"<=:B3 OR :B4=0)))
    340 - filter("A"."TRANSACTION_DATE"<=:B1 AND ("A"."TRANSACTION_NBR"<=:B2 OR :B3=0))
    341 - access("A"."INVOICE_NBR"=:B1)
    342 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
    343 - filter("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
    WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2))
    344 - filter(NULL IS NOT NULL)
    347 - filter("FIN_AGING_ARG"."INVOICE_DATE_FLAG"='Y')
    348 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
    349 - filter("FIN_INVOICE"."FINANCIAL_SOURCE"='A/P' AND ("FIN_INVOICE"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_S
    OURCE" OR "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND "FIN_INVOICE"."INVOICE_DATE"<="FIN_AGING_ARG"."AGING_DATE" AND
    ("FIN_AGING_ARG"."PLC_ID" IS NULL OR "FIN_INVOICE"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND "FIN_AGING_ARG"."PLC_ID"
    IS NOT NULL) AND CASE WHEN (("FIN_AGING_ARG"."AGE_CREDIT_FLAG"='Y' AND "FIN_INVOICE"."ORIGINAL_AMOUNT"<0) OR
    "FIN_INVOICE"."ORIGINAL_AMOUNT">0) THEN CASE WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING
    _ARG"."B_1"+1 THEN 1 WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING_ARG"."B_2"+1 THEN 2
    WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING_ARG"."B_3"+1 THEN 3 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING_ARG"."B_4"+1 THEN 4 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING_ARG"."B_5"+1 THEN 5 ELSE 6 END ELSE 1 END >0)
    350 - access("FIN_INVOICE"."INVOICE_NBR"="A"."PAYMENT_NBR")
    351 - filter("FIN_TRANSACTION"."INVOICE_NBR"="A"."PAYMENT_NBR" AND ("FIN_AGING_ARG"."MAX_KEY"=0 OR
    "FIN_TRANSACTION"."TRANSACTION_NBR"<="FIN_AGING_ARG"."MAX_KEY"))
    352 - access("FIN_TRANSACTION"."TRANSACTION_NBR"= (SELECT MAX("TRANSACTION_NBR") FROM GRAINVTRC."FIN_TRANSACTION" "A"
    WHERE "A"."INVOICE_NBR"=:B1 AND "A"."TRANSACTION_DATE"<=:B2 AND ("A"."TRANSACTION_NBR"<=:B3 OR :B4=0)))
    354 - filter("A"."TRANSACTION_DATE"<=:B1 AND ("A"."TRANSACTION_NBR"<=:B2 OR :B3=0))
    355 - access("A"."INVOICE_NBR"=:B1)
    356 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
    357 - filter("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
    WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2))
    358 - filter(NULL IS NOT NULL)
    361 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
    362 - filter("FIN_INVOICE"."FINANCIAL_SOURCE"='A/P' AND ("FIN_INVOICE"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_S
    OURCE" OR "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND "FIN_INVOICE"."INVOICE_DATE">"FIN_AGING_ARG"."AGING_DATE" AND
    ("FIN_AGING_ARG"."PLC_ID" IS NULL OR "FIN_INVOICE"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND "FIN_AGING_ARG"."PLC_ID"
    IS NOT NULL) AND ("FIN_INVOICE"."INVOICE_STATUS"<>'C' OR "FIN_AGING_ARG"."AGING_DATE"<="FIN_INVOICE"."LAST_TRANSACTION_
    DATE" OR "FIN_INVOICE"."BALANCE_FORWARD_PRINT_FLAG"<>'Y'))
    363 - access("FIN_INVOICE"."INVOICE_NBR"="A"."PAYMENT_NBR")
    filter( EXISTS (SELECT 0 FROM GRAINVTRC."FIN_TRANSACTION" "A" WHERE "A"."INVOICE_NBR"=:B1 AND
    ("A"."TRANSACTION_NBR"<=:B2 OR :B3=0)))
    364 - filter("A"."TRANSACTION_NBR"<=:B1 OR :B2=0)
    365 - access("A"."INVOICE_NBR"=:B1)
    366 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
    367 - filter("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
    WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2))
    371 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
    372 - filter("FIN_PAYMENT"."FINANCIAL_SOURCE"='A/P' AND ("FIN_PAYMENT"."INTERNAL_FLAG"='N' OR
    "FIN_PAYMENT"."INTERNAL_FLAG"='Y' AND ("FIN_PAYMENT"."PAYMENT_TYPE"='C' OR "FIN_PAYMENT"."PAYMENT_TYPE"='N')) AND
    ("FIN_PAYMENT"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_SOURCE" OR "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND
    "FIN_PAYMENT"."PAYMENT_DATE"<="FIN_AGING_ARG"."AGING_DATE" AND ("FIN_AGING_ARG"."PLC_ID" IS NULL OR
    "FIN_AGING_ARG"."PLC_ID" IS NOT NULL AND "FIN_PAYMENT"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND
    "FIN_PAYMENT"."LOCATION_ID" IS NOT NULL) AND CASE WHEN "FIN_AGING_ARG"."AGE_CREDIT_FLAG"='Y' THEN CASE WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AGING_ARG"."B_1"+1 THEN 1 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AGING_ARG"."B_2"+1 THEN 2 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AGING_ARG"."B_3"+1 THEN 3 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AGING_ARG"."B_4"+1 THEN 4 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_PAYMENT"."PAYMENT_DATE"<"FIN_AGING_ARG"."B_5"+1 THEN 5 ELSE 6 END ELSE 1 END >0)
    373 - access("FIN_PAYMENT"."PAYMENT_NBR"="A"."PAYMENT_NBR")
    374 - filter("FIN_TRANSACTION"."PAYMENT_NBR"="A"."PAYMENT_NBR" AND ("FIN_AGING_ARG"."MAX_KEY"=0 OR
    "FIN_TRANSACTION"."TRANSACTION_NBR"<="FIN_AGING_ARG"."MAX_KEY"))
    375 - access("FIN_TRANSACTION"."TRANSACTION_NBR"= (SELECT MAX("TRANSACTION_NBR") FROM GRAINVTRC."FIN_TRANSACTION" "A"
    WHERE "A"."PAYMENT_NBR"=:B1 AND "A"."TRANSACTION_DATE"<=:B2 AND ("A"."TRANSACTION_NBR"<=:B3 OR :B4=0)))
    377 - filter("A"."TRANSACTION_DATE"<=:B1 AND ("A"."TRANSACTION_NBR"<=:B2 OR :B3=0))
    378 - access("A"."PAYMENT_NBR"=:B1)
    379 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
    380 - filter(("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
    WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2)) AND EXISTS (SELECT 0 FROM
    GRAINVTRC."FIN_TRANSACTION" "A" WHERE "A"."PAYMENT_NBR"=:B3 AND ("A"."TRANSACTION_NBR"<=:B4 OR :B5=0)))
    383 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
    384 - filter("FIN_PAYMENT"."PAYMENT_NBR"="A"."PAYMENT_NBR" AND "FIN_PAYMENT"."FINANCIAL_SOURCE"='A/P' AND
    ("FIN_PAYMENT"."INTERNAL_FLAG"='N' OR "FIN_PAYMENT"."INTERNAL_FLAG"='Y' AND ("FIN_PAYMENT"."PAYMENT_TYPE"='C' OR
    "FIN_PAYMENT"."PAYMENT_TYPE"='N')) AND ("FIN_PAYMENT"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_SOURCE" OR
    "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND ("UNAPPLIED_AMOUNT"<>0 OR
    "FIN_AGING_ARG"."AGING_DATE"<="LAST_TRANSACTION_DATE") AND ("FIN_AGING_ARG"."PLC_ID" IS NULL OR
    "FIN_AGING_ARG"."PLC_ID" IS NOT NULL AND "FIN_PAYMENT"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND
    "FIN_PAYMENT"."LOCATION_ID" IS NOT NULL))
    385 - access("FIN_PAYMENT"."PAYMENT_DATE">"FIN_AGING_ARG"."AGING_DATE")
    386 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
    387 - filter("A"."TRANSACTION_NBR"<=:B1 OR :B2=0)
    388 - access("A"."PAYMENT_NBR"=:B1)
    389 - filter("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
    WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2))
    390 - filter(NULL IS NOT NULL)
    394 - filter("FIN_AGING_ARG"."INVOICE_DATE_FLAG"='N')
    395 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
    396 - filter("FIN_INVOICE"."FINANCIAL_SOURCE"='A/R' AND ("FIN_INVOICE"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_S
    OURCE" OR "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND "FIN_INVOICE"."INVOICE_DATE"<="FIN_AGING_ARG"."AGING_DATE" AND
    ("FIN_AGING_ARG"."PLC_ID" IS NULL OR "FIN_INVOICE"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND "FIN_AGING_ARG"."PLC_ID"
    IS NOT NULL) AND CASE WHEN (("FIN_AGING_ARG"."AGE_CREDIT_FLAG"='Y' AND "FIN_INVOICE"."ORIGINAL_AMOUNT"<0) OR
    "FIN_INVOICE"."ORIGINAL_AMOUNT">0) THEN CASE WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG
    "."B_1"+1 THEN 1 WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG"."B_2"+1 THEN 2 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG"."B_3"+1 THEN 3 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG"."B_4"+1 THEN 4 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."DUE_DATE"<"FIN_AGING_ARG"."B_5"+1 THEN 5 ELSE 6 END ELSE 1 END >0)
    397 - access("FIN_INVOICE"."INVOICE_NBR"="A"."PAYMENT_NBR")
    398 - filter("FIN_AGING_ARG"."CREDIT_STATUS"='0' OR "FIN_AGING_ARG"."CREDIT_STATUS"='1' AND
    "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "FIN_AGING_ARG"."CREDIT_STATUS"='2' AND "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT
    NULL OR "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT NULL)
    399 - access("FIN_INVOICE"."CUSTOMER_VENDOR_ID"="S1_CUSTOMER_DATA"."CUSTOMER_ID")
    400 - filter("FIN_TRANSACTION"."INVOICE_NBR"="A"."PAYMENT_NBR" AND ("FIN_AGING_ARG"."MAX_KEY"=0 OR
    "FIN_TRANSACTION"."TRANSACTION_NBR"<="FIN_AGING_ARG"."MAX_KEY"))
    401 - access("FIN_TRANSACTION"."TRANSACTION_NBR"= (SELECT MAX("TRANSACTION_NBR") FROM GRAINVTRC."FIN_TRANSACTION" "A"
    WHERE "A"."INVOICE_NBR"=:B1 AND "A"."TRANSACTION_DATE"<=:B2 AND ("A"."TRANSACTION_NBR"<=:B3 OR :B4=0)))
    403 - filter("A"."TRANSACTION_DATE"<=:B1 AND ("A"."TRANSACTION_NBR"<=:B2 OR :B3=0))
    404 - access("A"."INVOICE_NBR"=:B1)
    405 - access("TVC"."DAILY_REPORT_NBR"=:B1 AND "VENDOR_CUSTOMER_ID"=:B2)
    406 - filter("FIN_AGING_ARG"."VENDOR_CUSTOMER_FLAG"='N' OR EXISTS (SELECT 0 FROM GRAINVTRC."FIN_AGING_ARG_VC" "TVC"
    WHERE "VENDOR_CUSTOMER_ID"=:B1 AND "TVC"."DAILY_REPORT_NBR"=:B2))
    407 - filter(NULL IS NOT NULL)
    411 - filter("FIN_AGING_ARG"."INVOICE_DATE_FLAG"='Y')
    412 - access("FIN_AGING_ARG"."DAILY_REPORT_NBR"=36)
    413 - filter("FIN_INVOICE"."FINANCIAL_SOURCE"='A/R' AND ("FIN_INVOICE"."FINANCIAL_SOURCE"="FIN_AGING_ARG"."FINANCIAL_S
    OURCE" OR "FIN_AGING_ARG"."FINANCIAL_SOURCE"='APR') AND "FIN_INVOICE"."INVOICE_DATE"<="FIN_AGING_ARG"."AGING_DATE" AND
    ("FIN_AGING_ARG"."PLC_ID" IS NULL OR "FIN_INVOICE"."LOCATION_ID"="FIN_AGING_ARG"."PLC_ID" AND "FIN_AGING_ARG"."PLC_ID"
    IS NOT NULL) AND CASE WHEN (("FIN_AGING_ARG"."AGE_CREDIT_FLAG"='Y' AND "FIN_INVOICE"."ORIGINAL_AMOUNT"<0) OR
    "FIN_INVOICE"."ORIGINAL_AMOUNT">0) THEN CASE WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING
    _ARG"."B_1"+1 THEN 1 WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING_ARG"."B_2"+1 THEN 2
    WHEN "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING_ARG"."B_3"+1 THEN 3 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING_ARG"."B_4"+1 THEN 4 WHEN
    "FIN_AGING_ARG"."AGING_DATE"-"FIN_INVOICE"."INVOICE_DATE"<"FIN_AGING_ARG"."B_5"+1 THEN 5 ELSE 6 END ELSE 1 END >0)
    414 - access("FIN_INVOICE"."INVOICE_NBR"="A"."PAYMENT_NBR")
    415 - filter("FIN_AGING_ARG"."CREDIT_STATUS"='0' OR "FIN_AGING_ARG"."CREDIT_STATUS"='1' AND
    "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "FIN_AGING_ARG"."CREDIT_STATUS"='2' AND "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT
    NULL OR "S1_CUSTOMER_DATA"."HOLD_FLAG"='Y' OR "S1_CUSTOMER_DATA"."CREDIT_LIMIT" IS NOT NULL)
    416 - access("FIN_INVOICE"."CUSTOMER_VENDOR_ID"="S1_CUSTOMER_DATA"."CUSTOMER_ID")
    417 - filter("FIN_TRANSACTION"."INVOICE_NBR"="A"."PAYMENT_NBR" AND ("FIN_AGING_ARG"."MAX_KEY"=0 OR
    "FIN_TRANSACTION"."TRANSACTION_NBR"<="FIN_AGING_ARG"."MAX_KEY"))
    418 - access("FIN_TRANSACTION"."TRANSACTION_NBR"= (SELECT MAX("TRANSACTION_NBR") FROM GRAINVTRC."FIN_TRANSACTION" "A"
    WHERE "A"."INVOICE_NBR"=:B1 AND "A"."TRANSACTION_DATE"<=:B2 AND ("A"."TRANSACTION_NBR"<=:B3 OR :B4=0)))
    420 - filter("A"."TRANSACTION_DATE"<=:B1 AND ("A"."TRANSACTION_NBR"<=:B2 OR :B3=0))
    421 - access("A"."INVOICE_NBR"=:B1)

    Hi,
    did u try it: SQL and PL/SQL FAQ
    item 3?

  • Query tuning request

    This is my first post in this forum regarding query tuning, so my sincere apologies in advance if I have:
    1) not included sufficient information,
    2) included too much information,
    3) not posted to the correct forum
    I read through Randolf Geist's web page on instructions to post a query tuning request
    and attempted to follow it as closely as possible.
    I am attempting to figure out where a view I have constructed can be optimized.
    It takes approx. 45 seconds to 1 minute to run; I would like to cut that down to 10 seconds if possible.
    The view itself is somewhat complex; I will post the actual code if it will help you help me. Please advise.
    I was under the impression that posting the code was not necessary, but if it is, let me know and I will post it.
    I have been doing SQL development for a few years, but only recently in Oracle.
    I have no experience in looking through the following output and being able to tell where I can improve performance,
    so this will be a learning experience for me. Thanks in advance for your help - I appreciate it.
    Some additional information - my view is based on tables over which I have no control - it is a third-party application
    which I do reporting from. I do have the freedom to create indexes on columns within the tables if necessary.
    The statement is simply
    SELECT * FROM LLU_V_PRODUCTION_DETAIL_03
    which is the name of my view.
    here's all the information I've been able to retrieve by following Randolf's instructions:
    Oracle version is 10.2.0.1.0 - 64bit
    Here are optimizer parameters:
    NAME                                 TYPE        VALUE
    user_dump_dest                       string      C:\ORACLE\PRODUCT\10.2.0\ADMIN
                                                     \AXIUMPRODUCTION\UDUMP
    NAME                                 TYPE        VALUE
    optimizer_dynamic_sampling           integer     2
    optimizer_features_enable            string      10.2.0.1
    optimizer_index_caching              integer     90
    optimizer_index_cost_adj             integer     20
    optimizer_mode                       string      ALL_ROWS
    optimizer_secure_view_merging        boolean     TRUE
    NAME                                 TYPE        VALUE
    db_file_multiblock_read_count        integer     16
    NAME                                 TYPE        VALUE
    db_block_size                        integer     8192
    NAME                                 TYPE        VALUE
    cursor_sharing                       string      EXACT
    SNAME                PNAME                     PVAL1 PVAL2
    SYSSTATS_INFO        STATUS                          COMPLETED
    SYSSTATS_INFO        DSTART                          10-29-2005 01:36
    SYSSTATS_INFO        DSTOP                           10-29-2005 01:36
    SYSSTATS_INFO        FLAGS                         1
    SYSSTATS_MAIN        CPUSPEEDNW           1298.56584
    SYSSTATS_MAIN        IOSEEKTIM                    10
    SYSSTATS_MAIN        IOTFRSPEED                 4096
    SYSSTATS_MAIN        SREADTIM
    SYSSTATS_MAIN        MREADTIM
    SYSSTATS_MAIN        CPUSPEED
    SYSSTATS_MAIN        MBRC
    SYSSTATS_MAIN        MAXTHR
    SYSSTATS_MAIN        SLAVETHR
    13 rows selected.Here is the output of EXPLAIN PLAN:
    PLAN_TABLE_OUTPUT
    Plan hash value: 662813077
    | Id  | Operation                              | Name                        | Rows  | Bytes |TempSpc| Cost (%CPU)| Time     |
    |   0 | SELECT STATEMENT                       |                             |    23M|    53G|       | 62330   (2)| 00:12:28 |
    |   1 |  VIEW                                  | LLU_V_PRODUCTION_DETAIL_03  |    23M|    53G|       | 62330   (2)| 00:12:28 |
    |   2 |   UNION-ALL                            |                             |       |       |       |            |          |
    |*  3 |    HASH JOIN                           |                             |    18M|  5062M|       |  1525  (10)| 00:00:19 |
    |   4 |     VIEW                               | index$_join$_007            |  1725 | 25875 |       |     4  (25)| 00:00:01 |
    |*  5 |      HASH JOIN                         |                             |       |       |       |            |          |
    |   6 |       INDEX FAST FULL SCAN             | USERS_PRIMARY               |  1725 | 25875 |       |     1   (0)| 00:00:01 |
    |   7 |       INDEX FAST FULL SCAN             | USERS_PRODUCER              |  1725 | 25875 |       |     2   (0)| 00:00:01 |
    |*  8 |     HASH JOIN                          |                             |   416K|   105M|       |  1399   (2)| 00:00:17 |
    |   9 |      TABLE ACCESS FULL                 | PRODUCER                    |  1396 |   118K|       |    24   (0)| 00:00:01 |
    |* 10 |      HASH JOIN                         |                             | 29819 |  5183K|       |  1372   (2)| 00:00:17 |
    |  11 |       TABLE ACCESS FULL                | CLASS                       |    20 |  1660 |       |     3   (0)| 00:00:01 |
    |* 12 |       TABLE ACCESS FULL                | QR_PRODUCTION               |   149K|    13M|       |  1367   (2)| 00:00:17 |
    |* 13 |    FILTER                              |                             |       |       |       |            |          |
    |* 14 |     HASH JOIN                          |                             |    16M|  5651M|       | 32983   (2)| 00:06:36 |
    |  15 |      VIEW                              | index$_join$_014            |  1725 | 25875 |       |     4  (25)| 00:00:01 |
    |* 16 |       HASH JOIN                        |                             |       |       |       |            |          |
    |  17 |        INDEX FAST FULL SCAN            | USERS_PRIMARY               |  1725 | 25875 |       |     1   (0)| 00:00:01 |
    |  18 |        INDEX FAST FULL SCAN            | USERS_PRODUCER              |  1725 | 25875 |       |     2   (0)| 00:00:01 |
    |* 19 |      HASH JOIN                         |                             |   149K|    49M|       | 32874   (1)| 00:06:35 |
    |  20 |       TABLE ACCESS FULL                | CLASS                       |    20 |  1660 |       |     3   (0)| 00:00:01 |
    |* 21 |       HASH JOIN                        |                             |   149K|    37M|       | 32870   (1)| 00:06:35 |
    |  22 |        TABLE ACCESS FULL               | PRODUCER                    |  1396 |   118K|       |    24   (0)| 00:00:01 |
    |* 23 |        HASH JOIN                       |                             |   222K|    37M|    12M| 32844   (1)| 00:06:35 |
    |  24 |         TABLE ACCESS FULL              | PATIENT                     |   188K|    10M|       |  6979   (1)| 00:01:24 |
    |* 25 |         HASH JOIN                      |                             |   222K|    24M|       | 23860   (2)| 00:04:47 |
    |* 26 |          TABLE ACCESS FULL             | PROCEDUR                    |   888 | 44400 |       |    11   (0)| 00:00:01 |
    |* 27 |          TABLE ACCESS FULL             | TRX                         |   442K|    28M|       | 23845   (2)| 00:04:47 |
    |* 28 |     TABLE ACCESS FULL                  | USERS                       |     1 |    11 |       |    55   (0)| 00:00:01 |
    |  29 |    NESTED LOOPS                        |                             |     1 |   473 |       | 25798   (1)| 00:05:10 |
    |  30 |     NESTED LOOPS                       |                             |     1 |   413 |       | 25797   (1)| 00:05:10 |
    |  31 |      NESTED LOOPS                      |                             |     1 |   398 |       | 25796   (1)| 00:05:10 |
    |  32 |       NESTED LOOPS                     |                             |     1 |   390 |       | 25795   (1)| 00:05:10 |
    |* 33 |        HASH JOIN                       |                             |     1 |   303 |       | 25794   (1)| 00:05:10 |
    |  34 |         TABLE ACCESS FULL              | LLU_EVALUATION_DESCRIPTIONS |    95 |  6175 |       |     3   (0)| 00:00:01 |
    |* 35 |         HASH JOIN                      |                             |  4630 |  1076K|       | 25791   (1)| 00:05:10 |
    |* 36 |          HASH JOIN                     |                             |  9607 |  1623K|       | 23834   (1)| 00:04:47 |
    |  37 |           MERGE JOIN                   |                             |   888 | 91464 |       |    13   (8)| 00:00:01 |
    |  38 |            TABLE ACCESS BY INDEX ROWID | CLASS                       |    20 |  1660 |       |     1   (0)| 00:00:01 |
    |  39 |             INDEX FULL SCAN            | CLASS_PRIMARY               |    20 |       |       |     1   (0)| 00:00:01 |
    |* 40 |            SORT JOIN                   |                             |   888 | 17760 |       |    12   (9)| 00:00:01 |
    |* 41 |             TABLE ACCESS FULL          | PROCEDUR                    |   888 | 17760 |       |    11   (0)| 00:00:01 |
    |* 42 |           TABLE ACCESS FULL            | TRX                         | 19125 |  1307K|       | 23820   (1)| 00:04:46 |
    |* 43 |          TABLE ACCESS FULL             | GRADITEM                    |   655K|    40M|       |  1952   (1)| 00:00:24 |
    |  44 |        TABLE ACCESS BY INDEX ROWID     | PRODUCER                    |     1 |    87 |       |     1   (0)| 00:00:01 |
    |* 45 |         INDEX UNIQUE SCAN              | PRODUCER_PRIMARY            |     1 |       |       |     1   (0)| 00:00:01 |
    |* 46 |       TABLE ACCESS BY INDEX ROWID      | GRADING                     |     1 |     8 |       |     1   (0)| 00:00:01 |
    |* 47 |        INDEX UNIQUE SCAN               | GRADING_PRIMARY             |     1 |       |       |     1   (0)| 00:00:01 |
    |  48 |      TABLE ACCESS BY INDEX ROWID       | USERS                       |   221 |  3315 |       |     1   (0)| 00:00:01 |
    |* 49 |       INDEX RANGE SCAN                 | USERS_PRODUCER              |     1 |       |       |     1   (0)| 00:00:01 |
    |  50 |     TABLE ACCESS BY INDEX ROWID        | PATIENT                     |     1 |    60 |       |     1   (0)| 00:00:01 |
    |* 51 |      INDEX UNIQUE SCAN                 | PATIENT_PRIMARY             |     1 |       |       |     1   (0)| 00:00:01 |
    |  52 |    TABLE ACCESS BY INDEX ROWID         | USERS                       |   109 |  1635 |       |     1   (0)| 00:00:01 |
    |  53 |     NESTED LOOPS                       |                             |     1 |   438 |       |  2023   (1)| 00:00:25 |
    |  54 |      NESTED LOOPS                      |                             |     1 |   423 |       |  2022   (1)| 00:00:25 |
    |  55 |       NESTED LOOPS                     |                             |     1 |   363 |       |  2021   (1)| 00:00:25 |
    |  56 |        NESTED LOOPS                    |                             |     1 |   276 |       |  2020   (1)| 00:00:25 |
    |  57 |         NESTED LOOPS                   |                             |     1 |   193 |       |  2019   (1)| 00:00:25 |
    |  58 |          NESTED LOOPS                  |                             |     1 |   185 |       |  2018   (1)| 00:00:25 |
    |  59 |           NESTED LOOPS                 |                             |     1 |   173 |       |  2017   (1)| 00:00:25 |
    |  60 |            NESTED LOOPS                |                             |     1 |   140 |       |  2016   (1)| 00:00:25 |
    |* 61 |             TABLE ACCESS FULL          | GRADITEM                    |   317 | 23141 |       |  1953   (2)| 00:00:24 |
    |* 62 |             TABLE ACCESS BY INDEX ROWID| TRX                         |     1 |    67 |       |     1   (0)| 00:00:01 |
    |* 63 |              INDEX UNIQUE SCAN         | TRX_PRIMARY                 |     1 |       |       |     1   (0)| 00:00:01 |
    |* 64 |            TABLE ACCESS BY INDEX ROWID | TRX                         |     1 |    33 |       |     1   (0)| 00:00:01 |
    |* 65 |             INDEX UNIQUE SCAN          | TRX_PRIMARY                 |     1 |       |       |     1   (0)| 00:00:01 |
    |* 66 |           TABLE ACCESS BY INDEX ROWID  | GRADITEM                    |     1 |    12 |       |     1   (0)| 00:00:01 |
    |* 67 |            INDEX RANGE SCAN            | GRADITEM_ID                 |    19 |       |       |     1   (0)| 00:00:01 |
    |* 68 |          TABLE ACCESS BY INDEX ROWID   | GRADING                     |     1 |     8 |       |     1   (0)| 00:00:01 |
    |* 69 |           INDEX UNIQUE SCAN            | GRADING_PRIMARY             |     1 |       |       |     1   (0)| 00:00:01 |
    |  70 |         TABLE ACCESS BY INDEX ROWID    | CLASS                       |     1 |    83 |       |     1   (0)| 00:00:01 |
    |* 71 |          INDEX UNIQUE SCAN             | CLASS_PRIMARY               |     1 |       |       |     1   (0)| 00:00:01 |
    |  72 |        TABLE ACCESS BY INDEX ROWID     | PRODUCER                    |     1 |    87 |       |     1   (0)| 00:00:01 |
    |* 73 |         INDEX UNIQUE SCAN              | PRODUCER_PRIMARY            |     1 |       |       |     1   (0)| 00:00:01 |
    |  74 |       TABLE ACCESS BY INDEX ROWID      | PATIENT                     |     1 |    60 |       |     1   (0)| 00:00:01 |
    |* 75 |        INDEX UNIQUE SCAN               | PATIENT_PRIMARY             |     1 |       |       |     1   (0)| 00:00:01 |
    |* 76 |      INDEX RANGE SCAN                  | USERS_PRODUCER              |     1 |       |       |     1   (0)| 00:00:01 |
    Predicate Information (identified by operation id):
       3 - access("QRP"."ProviderID"="U1"."Producer")
       5 - access(ROWID=ROWID)
       8 - access(TRIM("QRP"."ProviderID")=TRIM("P"."Producer"))
      10 - access(TRIM("QRP"."axiUm_Discipline")=TRIM("CLASS"."Class"))
      12 - filter("QRP"."ProviderID" IS NOT NULL AND "QRP"."Location"<'9990' AND "QRP"."ProcedureID"<>185 AND
                  "QRP"."PatientFirstName"<>'NON-PATIENT' AND ("QRP"."PatientFirstName"<>'TED' OR "QRP"."PatientLastName" NOT LIKE
                  'CAVENDER%'))
      13 - filter( NOT EXISTS (SELECT 0 FROM AXIUM."USERS" "USERS" WHERE "Custom3"='YES' AND LNNVL("User"<>:B1)) OR
                  TO_CHAR(INTERNAL_FUNCTION("P"."EndDate"),'YYYY')<'2011' OR TRIM(TO_CHAR(INTERNAL_FUNCTION("P"."EndDate"),'YYYY')) IS
                  NULL OR "TRX"."Procedure"='A0021' OR "TRX"."Procedure"='A0022')
      14 - access("TRX"."Producer"="U1"."Producer")
      16 - access(ROWID=ROWID)
      19 - access("PROC"."Discipline"="CLASS"."Class")
      21 - access("TRX"."Producer"="P"."Producer")
      23 - access("TRX"."Patient"="PAT"."Patient")
      25 - access("TRX"."Procedure"="PROC"."Procedure")
      26 - filter("PROC"."Discipline" IS NOT NULL)
      27 - filter("TRX"."Deleted"=0 AND "TRX"."Status"='C' AND "TRX"."Procedure" NOT LIKE 'D0149%' AND
                  "TRX"."Procedure"<>'D5001C')
      28 - filter("Custom3"='YES' AND LNNVL("User"<>:B1))
      33 - access(TRIM(UPPER("GI"."QuestionText"))=TRIM(UPPER("LLU"."GRADITEM_QuestionText")) AND
                  TRIM(UPPER("GI"."Text"))=TRIM(UPPER("LLU"."GRADITEM_Text")) AND TRIM("TRX"."Procedure")=TRIM("LLU"."ProcedureCode"))
      35 - access("TRX"."Type"="GI"."Type" AND "TRX"."Id"="GI"."Id" AND "TRX"."Treatment"="GI"."Treatment")
      36 - access("TRX"."Procedure"="PROC"."Procedure")
      40 - access("PROC"."Discipline"="CLASS"."Class")
           filter("PROC"."Discipline"="CLASS"."Class")
      41 - filter("PROC"."Discipline" IS NOT NULL)
      42 - filter("TRX"."Grading"<>0 AND "TRX"."Deleted"=0 AND "TRX"."Status"='C')
      43 - filter("GI"."Grading"<>0)
      45 - access("TRX"."Producer"="P"."Producer")
      46 - filter("G"."Deleted"=0)
      47 - access("TRX"."Grading"="G"."Grading")
           filter("G"."Grading"<>0 AND "G"."Grading"="GI"."Grading")
      49 - access("TRX"."Producer"="U1"."Producer")
      51 - access("TRX"."Patient"="PAT"."Patient")
      61 - filter("GI"."IsHeading"=3 AND TRIM("GI"."QuestionText")='Comments' AND "GI"."Grading"<>0)
      62 - filter("TRX"."Grading"<>0 AND "TRX"."Deleted"=0 AND "TRX"."Status"='C' AND ("TRX"."Procedure"='G1002' OR
                  "TRX"."Procedure"='G1003'))
      63 - access("GI"."Type"="TRX"."Type" AND "GI"."Id"="TRX"."Id" AND "GI"."Treatment"="TRX"."Treatment")
      64 - filter("TRX"."Grading"<>0 AND "TRX"."Deleted"=0 AND "TRX"."Status"='C' AND ("TRX"."Procedure"='G1002' OR
                  "TRX"."Procedure"='G1003') AND "TRX"."Grading"="TRX"."Grading")
      65 - access("TRX"."Type"="TRX"."Type" AND "TRX"."Id"="TRX"."Id" AND "TRX"."Treatment"="TRX"."Treatment")
      66 - filter("GI"."RelValue"<>0 AND "TRX"."Type"="GI"."Type" AND "TRX"."Treatment"="GI"."Treatment")
      67 - access("TRX"."Id"="GI"."Id")
      68 - filter("G"."Deleted"=0)
      69 - access("TRX"."Grading"="G"."Grading")
           filter("G"."Grading"<>0 AND "GI"."Grading"="G"."Grading")
      71 - access("TRX"."Discipline"="CLASS"."Class")
      73 - access("TRX"."Producer"="P"."Producer")
      75 - access("TRX"."Patient"="PAT"."Patient")
      76 - access("TRX"."Producer"="U1"."Producer")
    138 rows selected.
    Elapsed: 00:00:00.62
    631015 rows selected.
    Elapsed: 00:01:49.13Output from AUTOTRACE (I think)
    NOTE: this post was too long for the forum, so I have removed a number of lines in the following output which appeared to be duplicating the above section (EXPLAIN PLAN).
    Statistics
           2657  recursive calls
              0  db block gets
       12734113  consistent gets
          13499  physical reads
              0  redo size
      103697740  bytes sent via SQL*Net to client
          69744  bytes received via SQL*Net from client
           6312  SQL*Net roundtrips to/from client
             76  sorts (memory)
              0  sorts (disk)
         631015  rows processedThe TKPROF output
    select * from llu_v_production_detail_03
    call     count       cpu    elapsed       disk      query    current        rows
    Parse        1      0.51       0.51          0          0          0           0
    Execute      1      0.00       0.00          0          0          0           0
    Fetch     6312     88.09      98.01      13490   12733584          0      631015
    total     6314     88.60      98.52      13490   12733584          0      631015
    Misses in library cache during parse: 1
    Optimizer mode: ALL_ROWS
    Parsing user id: 57 
    Rows     Row Source Operation
    631015  VIEW  LLU_V_PRODUCTION_DETAIL_03 (cr=12733584 pr=13490 pw=0 time=92145592 us)
    631015   UNION-ALL  (cr=12733584 pr=13490 pw=0 time=91514573 us)
    125485    HASH JOIN  (cr=8099 pr=6396 pw=0 time=1523326 us)
       1725     VIEW  index$_join$_007 (cr=24 pr=0 pw=0 time=4777 us)
       1725      HASH JOIN  (cr=24 pr=0 pw=0 time=3051 us)
       1725       INDEX FAST FULL SCAN USERS_PRIMARY (cr=7 pr=0 pw=0 time=50 us)(object id 55023)
       1725       INDEX FAST FULL SCAN USERS_PRODUCER (cr=17 pr=0 pw=0 time=16 us)(object id 55024)
    144513     HASH JOIN  (cr=8075 pr=6396 pw=0 time=2326445 us)
       1396      TABLE ACCESS FULL PRODUCER (cr=107 pr=0 pw=0 time=29 us)
    144513      HASH JOIN  (cr=7968 pr=6396 pw=0 time=2035684 us)
         20       TABLE ACCESS FULL CLASS (cr=7 pr=0 pw=0 time=71 us)
    151043       TABLE ACCESS FULL QR_PRODUCTION (cr=7961 pr=6396 pw=0 time=313553 us)
    462685    FILTER  (cr=10755862 pr=7094 pw=0 time=58570941 us)
    466790     HASH JOIN  (cr=145247 pr=7094 pw=0 time=11007301 us)
       1725      VIEW  index$_join$_014 (cr=24 pr=0 pw=0 time=6817 us)
       1725       HASH JOIN  (cr=24 pr=0 pw=0 time=5091 us)
       1725        INDEX FAST FULL SCAN USERS_PRIMARY (cr=7 pr=0 pw=0 time=35 us)(object id 55023)
       1725        INDEX FAST FULL SCAN USERS_PRODUCER (cr=17 pr=0 pw=0 time=19 us)(object id 55024)
    485205      HASH JOIN  (cr=145223 pr=7094 pw=0 time=10945107 us)
         20       TABLE ACCESS FULL CLASS (cr=7 pr=0 pw=0 time=105 us)
    507772       HASH JOIN  (cr=145216 pr=7094 pw=0 time=11947534 us)
       1396        TABLE ACCESS FULL PRODUCER (cr=107 pr=0 pw=0 time=18 us)
    507772        HASH JOIN  (cr=145109 pr=7094 pw=0 time=10924473 us)
    188967         TABLE ACCESS FULL PATIENT (cr=31792 pr=0 pw=0 time=188998 us)
    507772         HASH JOIN  (cr=113317 pr=7094 pw=0 time=9652037 us)
        895          TABLE ACCESS FULL PROCEDUR (cr=46 pr=0 pw=0 time=65 us)
    509321          TABLE ACCESS FULL TRX (cr=113271 pr=7094 pw=0 time=5604567 us)
       8548     TABLE ACCESS FULL USERS (cr=10610615 pr=0 pw=0 time=39053120 us)
      42669    NESTED LOOPS  (cr=507317 pr=0 pw=0 time=3686506 us)
      42669     NESTED LOOPS  (cr=421535 pr=0 pw=0 time=3217140 us)
      45269      NESTED LOOPS  (cr=301155 pr=0 pw=0 time=2449542 us)
      45323       NESTED LOOPS  (cr=210131 pr=0 pw=0 time=2134056 us)
      45323        HASH JOIN  (cr=119056 pr=0 pw=0 time=1635472 us)
         95         TABLE ACCESS FULL LLU_EVALUATION_DESCRIPTIONS (cr=7 pr=0 pw=0 time=118 us)
      98272         HASH JOIN  (cr=119049 pr=0 pw=0 time=1446703 us)
      46996          HASH JOIN  (cr=109018 pr=0 pw=0 time=944857 us)
        786           MERGE JOIN  (cr=50 pr=0 pw=0 time=1528 us)
         20            TABLE ACCESS BY INDEX ROWID CLASS (cr=4 pr=0 pw=0 time=99 us)
         20             INDEX FULL SCAN CLASS_PRIMARY (cr=1 pr=0 pw=0 time=10 us)(object id 53850)
        786            SORT JOIN (cr=46 pr=0 pw=0 time=750 us)
        895             TABLE ACCESS FULL PROCEDUR (cr=46 pr=0 pw=0 time=18 us)
      47196           TABLE ACCESS FULL TRX (cr=108968 pr=0 pw=0 time=805137 us)
    696300          TABLE ACCESS FULL GRADITEM (cr=10031 pr=0 pw=0 time=277 us)
      45323        TABLE ACCESS BY INDEX ROWID PRODUCER (cr=91075 pr=0 pw=0 time=414937 us)
      45323         INDEX UNIQUE SCAN PRODUCER_PRIMARY (cr=45752 pr=0 pw=0 time=198709 us)(object id 54581)
      45269       TABLE ACCESS BY INDEX ROWID GRADING (cr=91024 pr=0 pw=0 time=353081 us)
      45270        INDEX UNIQUE SCAN GRADING_PRIMARY (cr=45753 pr=0 pw=0 time=173185 us)(object id 54088)
      42669      TABLE ACCESS BY INDEX ROWID USERS (cr=120380 pr=0 pw=0 time=703786 us)
      42669       INDEX RANGE SCAN USERS_PRODUCER (cr=46127 pr=0 pw=0 time=249186 us)(object id 55024)
      42669     TABLE ACCESS BY INDEX ROWID PATIENT (cr=85782 pr=0 pw=0 time=407452 us)
      42669      INDEX UNIQUE SCAN PATIENT_PRIMARY (cr=43098 pr=0 pw=0 time=198477 us)(object id 54370)
        176    TABLE ACCESS BY INDEX ROWID USERS (cr=49426 pr=0 pw=0 time=1783886 us)
        367     NESTED LOOPS  (cr=49149 pr=0 pw=0 time=6159428 us)
        190      NESTED LOOPS  (cr=48953 pr=0 pw=0 time=409391 us)
        190       NESTED LOOPS  (cr=48569 pr=0 pw=0 time=407105 us)
        190        NESTED LOOPS  (cr=48185 pr=0 pw=0 time=404820 us)
        191         NESTED LOOPS  (cr=47991 pr=0 pw=0 time=410291 us)
        193          NESTED LOOPS  (cr=47603 pr=0 pw=0 time=422507 us)
        193           NESTED LOOPS  (cr=46979 pr=0 pw=0 time=416890 us)
        193            NESTED LOOPS  (cr=46396 pr=0 pw=0 time=414374 us)
      14285             TABLE ACCESS FULL GRADITEM (cr=9602 pr=0 pw=0 time=85793 us)
        193             TABLE ACCESS BY INDEX ROWID TRX (cr=36794 pr=0 pw=0 time=128427 us)
       8218              INDEX UNIQUE SCAN TRX_PRIMARY (cr=28576 pr=0 pw=0 time=64353 us)(object id 54930)
        193            TABLE ACCESS BY INDEX ROWID TRX (cr=583 pr=0 pw=0 time=2169 us)
        193             INDEX UNIQUE SCAN TRX_PRIMARY (cr=390 pr=0 pw=0 time=918 us)(object id 54930)
        193           TABLE ACCESS BY INDEX ROWID GRADITEM (cr=624 pr=0 pw=0 time=4840 us)
       1547            INDEX RANGE SCAN GRADITEM_ID (cr=395 pr=0 pw=0 time=2910 us)(object id 54093)
        191          TABLE ACCESS BY INDEX ROWID GRADING (cr=388 pr=0 pw=0 time=1887 us)
        191           INDEX UNIQUE SCAN GRADING_PRIMARY (cr=197 pr=0 pw=0 time=943 us)(object id 54088)
        190         TABLE ACCESS BY INDEX ROWID CLASS (cr=194 pr=0 pw=0 time=1306 us)
        190          INDEX UNIQUE SCAN CLASS_PRIMARY (cr=4 pr=0 pw=0 time=551 us)(object id 53850)
        190        TABLE ACCESS BY INDEX ROWID PRODUCER (cr=384 pr=0 pw=0 time=1617 us)
        190         INDEX UNIQUE SCAN PRODUCER_PRIMARY (cr=194 pr=0 pw=0 time=715 us)(object id 54581)
        190       TABLE ACCESS BY INDEX ROWID PATIENT (cr=384 pr=0 pw=0 time=1941 us)
        190        INDEX UNIQUE SCAN PATIENT_PRIMARY (cr=194 pr=0 pw=0 time=939 us)(object id 54370)
        176      INDEX RANGE SCAN USERS_PRODUCER (cr=196 pr=0 pw=0 time=1389 us)(object id 55024)
    Elapsed times include waiting on following events:
      Event waited on                             Times   Max. Wait  Total Waited
      ----------------------------------------   Waited  ----------  ------------
      SQL*Net message to client                    6312        0.00          0.00
      db file scattered read                       1614        0.02          2.08
      SQL*Net message from client                  6312        0.00         10.11
      SQL*Net more data to client                 48662        0.00          0.70
      db file sequential read                      4645        0.02          7.11
      latch: shared pool                              7        0.00          0.00
      latch: cache buffers chains                     1        0.00          0.00
    ********************************************************************************Again, I apologize if this is way more information than is necessary.
    All advice/suggestions/assistance will be gratefully accepted.
    Carl

    Hi Rob,
    Thank you for replying. Here is the view definition . . . it looks pretty convoluted, I know.
    I am reporting from a database which I have no control over other than to add indexes where needed.
    For reporting purposes, I am needing to create the dataset from a number of different tables; hence all the UNION clauses.
    -- CODE FOLLOWS
    CREATE OR REPLACE VIEW LLU_V_PRODUCTION_DETAIL_03
    AS
    SELECT
      'QR' AS "Source",
      U1."User" AS "UserID",
      QRP."ProviderID" AS "ProviderID",
      P."LastName" AS "ProviderLastName",
      P."FirstName" AS "ProviderFirstName",
      TO_CHAR(P."EndDate",'YYYY') AS "GraduationYear",
      P."PGroup",
      QRP."PatientID",
      QRP."ChartNumber",
      QRP."PatientLastName",
      QRP."PatientFirstName",
      QRP."ProcedureID" || '-' || QRP."ProcedureSuffix" AS "Procedure",
      QRP."ProcedureDescription",
      QRP."Tooth" AS "Site",
      QRP."Surface",
      QRP."axiUm_Discipline" AS "Discipline",
      "CLASS"."Rank" AS "DisciplineSorter",
      "CLASS"."Name" AS "DisciplineName",
      QRP."Points",
      0 AS "Hours",
      QRP."ServiceDate",
      0 AS "Id",
      QRP."UniqueID" AS "Grading",
      0 AS "LastSort",
      QRP."CategoryID",
      '' AS "CPAR comments"
    FROM QR_PRODUCTION QRP
    INNER JOIN PRODUCER P
      ON TRIM(QRP."ProviderID") = TRIM(P."Producer")
    INNER JOIN CLASS
      ON TRIM(QRP."axiUm_Discipline") = TRIM(CLASS."Class")
    INNER JOIN USERS U1
      ON QRP."ProviderID" = U1."Producer"
    WHERE (QRP."Location" < '9990')
    AND (QRP."ProviderID" IS NOT NULL)
    AND (QRP."ProcedureID" <> 185)
    -- skip the Cavender family - training patients
    AND NOT (QRP."PatientLastName" LIKE 'CAVENDER%' AND QRP."PatientFirstName" = 'TED')
    AND QRP."PatientFirstName" <> 'NON-PATIENT'
    --ORDER BY QRP."ProcedureID"
    UNION ALL
    SELECT
      'axiUm TRX' AS "Source",
      U1."User" AS "UserID",
      TRX."Producer" AS "ProviderID",
      P."LastName",
      P."FirstName",
      TO_CHAR(P."EndDate",'YYYY') AS "GraduationYear",
      P."PGroup",
      PAT."Patient",
      PAT."Chart",
      PAT."Last" AS "PatientLastName",
      PAT."First" AS "PatientFirstName",
      TRX."Procedure",
      PROC."Description",
      TRX."Site",
      TRX."Surface",
      TRIM(PROC."Discipline") AS "Discipline",
      "CLASS"."Rank" AS "DisciplineSorter",
      "CLASS"."Name",
      CASE WHEN
          ((TRX."Procedure" IN ('A0013','A0019','A0020','A0021','A0023','A0024','A0025','A0026','A0027','A0028','A0029','A0030','O179'))
          OR
          -- no points are to be awarded for any procedures performed on typodonts
          (EXISTS (SELECT 1 FROM PTTYPES PTT WHERE PTT."Patient" = PAT."Patient" and PTT."PatType" = 'TYPO' and PTT."Deleted" = 0)))
        AND  -- except for the following procedures
          (TRX."Procedure" NOT IN ('A0015','A0016','A0018','D0210'))
        THEN 0 ELSE PROC."RelValue" END AS "Points",
      CASE WHEN TRX."Procedure" IN ('A0013','A0019','A0020','A0021','A0023','A0024','A0025','A0026','A0027','A0028','A0029','A0030','O179')
        THEN PROC."RelValue" ELSE 0 END AS "Hours",
      TRX."TreatmentDate",
      TRX."Id",
      TRX."Grading",
      -1 AS "LastSort",
      -- additional link conditions added and table name changed on 1 July 2009 - cji
      SELECT "CategoryID" FROM LLU_CATEGORIES_X_PROCEDURES_03 LLU
      WHERE TRX."Procedure" = LLU."ProcedureID"
      AND TO_CHAR(P."EndDate",'YYYY') = LLU."GraduationYear"
      AND SUBSTR(TRX."Producer",1,1) = LLU."ProviderType"
      AND LLU."CategoryID" NOT IN (82)
      ) AS "CategoryID",
      '' AS "CPAR comments"
    FROM TRX
    INNER JOIN PATIENT PAT
      ON TRX."Patient" = PAT."Patient"
    INNER JOIN USERS U1
      ON TRX."Producer" = U1."Producer"
    INNER JOIN PROCEDUR PROC
      ON TRX."Procedure" = PROC."Procedure"
    INNER JOIN CLASS
      ON PROC."Discipline" = CLASS."Class"
    INNER JOIN PRODUCER P
      ON TRX."Producer" = P."Producer"
    WHERE (TRX."Status" = 'C')
    AND (TRX."Deleted" = 0)
    --AND (TRX."Grading" = 0)
    AND (TRX."Procedure" NOT LIKE 'D0149%')
    AND (TRX."Procedure" <> 'D5001C')
    -- exclude all procedures approved by Peds faculty ONLY FOR CLASS OF 2011 AND LATER
    -- EXCEPT FOR the Peds Block code (A0021 and A0022) - always include those
    AND NOT
    TRX."AppUser" IN (SELECT "User" FROM USERS WHERE "Custom3" = 'YES') -- Peds faculty
    AND
    TO_CHAR(P."EndDate",'YYYY') >= '2011'
    AND
    TRIM(TO_CHAR(P."EndDate",'YYYY')) IS NOT NULL
    AND
    TRX."Procedure" NOT IN ('A0021','A0022')
    UNION ALL
    SELECT
      'axiUm GRADING' AS "Source",
      U1."User" AS "UserID",
      TRX."Producer" AS "ProviderID",
      P."LastName",
      P."FirstName",
      TO_CHAR(P."EndDate",'YYYY'), -- Graduation year
      P."PGroup",
      PAT."Patient",
      PAT."Chart",
      PAT."Last" AS "PatientLastName",
      PAT."First" AS "PatientFirstName",
      TRX."Procedure",
      LLU."Description",
      TRX."Site",
      TRX."Surface",
      TRIM(PROC."Discipline") AS "Discipline",
      "CLASS"."Rank" AS "DisciplineSorter",
      "CLASS"."Name",
      LLU."Points", --LLU_POINTS_FROM_EVALUATIONS(TRX."Procedure", nvl(GI."Text",0)),
      0 AS "Hours",
      TRX."TreatmentDate",
      GI."Id",
      GI."Grading",
      GI."Row" AS "LastSort",
      LLU."CategoryID",
      '' AS "CPAR comments"
    FROM TRX
    INNER JOIN PATIENT PAT
      ON TRX."Patient" = PAT."Patient"
    INNER JOIN PRODUCER P
      ON TRX."Producer" = P."Producer"
    INNER JOIN GRADING G
      ON TRX."Grading" = G."Grading"
    INNER JOIN GRADITEM GI
      ON G."Grading" = GI."Grading"
      AND TRX."Type" = GI."Type"
      AND TRX."Id" = GI."Id"
      AND TRX."Treatment" = GI."Treatment"
    INNER JOIN PROCEDUR PROC
      ON TRX."Procedure" = PROC."Procedure"
    INNER JOIN CLASS
      ON PROC."Discipline" = CLASS."Class"
    INNER JOIN LLU_EVALUATION_DESCRIPTIONS LLU
      ON (TRIM(UPPER(GI."QuestionText")) = TRIM(UPPER(LLU."GRADITEM_QuestionText")))
      AND (TRIM(UPPER(GI."Text")) = TRIM(UPPER(LLU."GRADITEM_Text")))
      AND (TRIM(TRX."Procedure") = TRIM(LLU."ProcedureCode"))
    INNER JOIN USERS U1
      ON TRX."Producer" = U1."Producer"
    WHERE (TRX."Status" = 'C')
    AND (TRX."Deleted" = 0)
    AND (TRX."Grading" <> 0)
    AND (G."Deleted" = 0)
    UNION ALL
    SELECT 'ClinPtsAdj',
      U1."User" AS "UserID",
      TRX."Producer",
      P."LastName", P."FirstName",
      TO_CHAR(P."EndDate",'YYYY'), -- Graduation year
      P."PGroup", PAT."Patient", PAT."Chart", PAT."Last", PAT."First",
      TRX."Procedure",
      'Clinic points adjustment',
      '' AS "Site",
      '' AS "Surface",
      TRIM(TRX."Discipline"),
      "CLASS"."Rank",
      "CLASS"."Name",
      DERIVED."Points",
      0 AS "Hours",
      GI."Date",
      GI."Id",
      GI."Grading",
      GI."Row",
      NULL AS "CategoryID",
      TRIM(REPLACE(GI."Note", CHR(13) || CHR(10), ' '))
    FROM TRX
    INNER JOIN PATIENT PAT
      ON (TRX."Patient" = PAT."Patient")
    INNER JOIN PRODUCER P
      ON (TRX."Producer" = P."Producer")
    INNER JOIN CLASS
      ON (TRX."Discipline" = CLASS."Class")
    INNER JOIN GRADING G
      ON (TRX."Grading" = G."Grading")
    INNER JOIN GRADITEM GI
      ON (GI."Grading" = G."Grading")
      AND (GI."Type" = TRX."Type")
      AND (GI."Id" = TRX."Id")
      AND (GI."Treatment" = TRX."Treatment")
    INNER JOIN USERS U1
      ON TRX."Producer" = U1."Producer"
    INNER JOIN
      SELECT TRX."Type", TRX."Id", TRX."Treatment", TRX."Grading",
        CASE WHEN TRX."Procedure" = 'G1003' THEN GI."RelValue" * -1 ELSE "RelValue" END AS "Points"
      FROM TRX, GRADITEM GI
      WHERE (TRX."Type" = GI."Type")
      AND (TRX."Id" = GI."Id")
      AND (TRX."Treatment" = GI."Treatment")
      AND (TRX."Procedure" IN ('G1002','G1003'))
      AND (TRX."Status" = 'C')
      AND (TRX."Deleted" = 0)
      AND (TRX."Grading" <> 0)
      AND (GI."RelValue" <> 0)
      ) DERIVED
      ON (TRX."Type" = DERIVED."Type")
      AND (TRX."Id" = DERIVED."Id")
      AND (TRX."Treatment" = DERIVED."Treatment")
      AND (TRX."Grading" = DERIVED."Grading")
    WHERE (TRX."Status" = 'C')
    AND (TRX."Deleted" = 0)
    AND (TRX."Grading" <> 0)
    AND (G."Deleted" = 0)
    AND (TRX."Procedure" IN ('G1002','G1003'))
    AND (GI."IsHeading" = 3)
    AND (TRIM(GI."QuestionText") = 'Comments')
    --ORDER BY "ProviderID", "DisciplineSorter", "Id", "Grading", "Site", "LastSort";A couple of additional points:
    The table USERS already had an index on column "Producer"; I added an index on column "Custom3" but it did not seem to make any difference.
    Table USERS has 1,725 rows
    Table PRODUCER (aliased as P) has 1,396 rows
    Table TRX has 1,443,764 rows.
    Any additional information you need I will be glad to provide.
    Thanks a bunch; it may not be too late to teach an old dog new tricks.
    And thank you all for the kind words about the posting; about the only thing I can do well is follow directions.
    Carl

  • Help for query tuning

    hello all
    my one of query is returning result in 1-2 mins only for 1 lakh record but i am not sure if it showed me complete rows or not because when I an trying to get count of result ..its taking lot of time .when I am using this query on plsql code ..code is running slow so just wanted to confirm on query tuning point of view if its fine or not ..please look onto it and let me know if query is fine or not by explain plan .my oracle version is 11g
    this is my query
    SELECT ROWNUM , TRUNC(rownum/5000) + 20000 ,'FOR_UPDATE', sku_org.NAME ,
    acct_promo_sku.src_num , acct_promo_sku.sub_type ,
    promo_actual.sku_actual_pos
    FROM siebel.s_src acct_promo_hdr,
    siebel.s_src acct_title_format,
    siebel.s_src acct_promo_sku,
    siebel.s_src_x acct_promo_hdrx,
    siebel.s_src_x acct_promo_skux,
    siebel.s_prod_int prod,
    siebel.s_bu promo_hdr_org,
    siebel.s_bu sku_org,
    siebelwb.stg_sbl_acct_promo_actuals2 promo_actual
    WHERE acct_promo_hdr.sub_type = 'PLAN_ACCOUNT_PROMOTION'
    AND acct_promo_hdr.row_id = acct_title_format.par_src_id
    AND acct_title_format.sub_type = 'PLAN_ACCT_PROMOTION_CATEGORY'
    AND acct_title_format.row_id = acct_promo_sku.par_src_id
    AND acct_promo_sku.sub_type = 'PLAN_ACCOUNT_PROMOTION_PRODUCT'
    AND acct_promo_hdr.row_id = acct_promo_hdrx.par_row_id
    AND acct_promo_sku.row_id = acct_promo_skux.par_row_id(+)
    AND acct_promo_sku.prod_id = prod.row_id
    AND acct_promo_hdr.bu_id = promo_hdr_org.row_id
    AND acct_promo_sku.bu_id = sku_org.row_id
    AND prod.x_prod_material_num = promo_actual.material_number
    and prod.X_PROD_SALES_ORG=promo_actual.sales_org
    AND acct_promo_hdr.row_id = promo_actual.acct_promo_id
    and nvl(acct_promo_hdr.pr_accnt_id,0)=nvl(promo_actual.acct_siebel_rowid,0)
    and nvl(acct_promo_hdr.x_indirect_id,0)=nvl(promo_actual.indirect_acct_siebel_rowid,0)
    AND promo_actual.load_date >= TRUNC(SYSDATE)
    AND promo_actual.load_date < TRUNC(SYSDATE + 1)
    explain plan
    PLAN_TABLE_OUTPUT
    Plan hash value: 3864590768
    | Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time |
    | 0 | SELECT STATEMENT | | 1 | 298 | 2300 (1)| 00:00:28 |
    | 1 | COUNT | | | | | |
    |* 2 | FILTER | | | | | |
    | 3 | NESTED LOOPS | | | | | |
    | 4 | NESTED LOOPS | | 1 | 298 | 2300 (1)| 00:00:28 |
    | 5 | NESTED LOOPS OUTER | | 1 | 273 | 2298 (1)| 00:00:28 |
    | 6 | NESTED LOOPS | | 1 | 263 | 2296 (1)| 00:00:28 |
    | 7 | NESTED LOOPS | | 1 | 236 | 2295 (1)| 00:00:28 |
    | 8 | NESTED LOOPS | | 1 | 165 | 2292 (1)| 00:00:28 |
    | 9 | NESTED LOOPS | | 1 | 117 | 2289 (1)| 00:00:28 |
    | 10 | NESTED LOOPS | | 1 | 109 | 2289 (1)| 00:00:28 |
    | 11 | NESTED LOOPS | | 1 | 99 | 2287 (1)| 00:00:28 |
    |* 12 | TABLE ACCESS FULL | STG_SBL_ACCT_PROMO_ACTUALS2 | 1 | 49 | 2285 (1)| 00:0
    |* 13 | TABLE ACCESS BY INDEX ROWID| S_SRC | 1 | 50 | 2 (0)| 00:00:01 |
    |* 14 | INDEX UNIQUE SCAN | S_SRC_P1 | 1 | | 1 (0)| 00:00:01 |
    |* 15 | INDEX RANGE SCAN | S_SRC_X_U1 | 1 | 10 | 2 (0)| 00:00:01 |
    |* 16 | INDEX UNIQUE SCAN | S_BU_P1 | 1 | 8 | 0 (0)| 00:00:01 |
    |* 17 | TABLE ACCESS BY INDEX ROWID | S_SRC | 1 | 48 | 3 (0)| 00:00:01 |
    |* 18 | INDEX RANGE SCAN | S_SRC_F2 | 2 | | 2 (0)| 00:00:01 |
    |* 19 | TABLE ACCESS BY INDEX ROWID | S_SRC | 1 | 71 | 3 (0)| 00:00:01 |
    |* 20 | INDEX RANGE SCAN | S_SRC_F2 | 2 | | 2 (0)| 00:00:01 |
    | 21 | TABLE ACCESS BY INDEX ROWID | S_BU | 1 | 27 | 1 (0)| 00:00:01 |
    |* 22 | INDEX UNIQUE SCAN | S_BU_P1 | 1 | | 0 (0)| 00:00:01 |
    |* 23 | INDEX RANGE SCAN | S_SRC_X_U1 | 1 | 10 | 2 (0)| 00:00:01 |
    |* 24 | INDEX UNIQUE SCAN | S_PROD_INT_P1 | 1 | | 1 (0)| 00:00:01 |
    |* 25 | TABLE ACCESS BY INDEX ROWID | S_PROD_INT | 1 | 25 | 2 (0)| 00:00:
    Predicate Information (identified by operation id):
    2 - filter(TRUNC(SYSDATE@!)<TRUNC(SYSDATE@!+1))
    12 - filter("PROMO_ACTUAL"."LOAD_DATE">=TRUNC(SYSDATE@!) AND "PROMO_ACTUAL"."LOAD_DATE"<TRUNC(SYSD
    13 - filter("ACCT_PROMO_HDR"."SUB_TYPE"='PLAN_ACCOUNT_PROMOTION' AND
    NVL("ACCT_PROMO_HDR"."PR_ACCNT_ID",'0')=NVL("PROMO_ACTUAL"."ACCT_SIEBEL_ROWID",'0') AND
    NVL("ACCT_PROMO_HDR"."X_INDIRECT_ID",'0')=NVL("PROMO_ACTUAL"."INDIRECT_ACCT_SIEBEL_ROWID",'0'
    14 - access("ACCT_PROMO_HDR"."ROW_ID"="PROMO_ACTUAL"."ACCT_PROMO_ID")
    15 - access("ACCT_PROMO_HDR"."ROW_ID"="ACCT_PROMO_HDRX"."PAR_ROW_ID")
    16 - access("ACCT_PROMO_HDR"."BU_ID"="PROMO_HDR_ORG"."ROW_ID")
    17 - filter("ACCT_TITLE_FORMAT"."SUB_TYPE"='PLAN_ACCT_PROMOTION_CATEGORY')
    18 - access("ACCT_PROMO_HDR"."ROW_ID"="ACCT_TITLE_FORMAT"."PAR_SRC_ID")
    19 - filter("ACCT_PROMO_SKU"."PROD_ID" IS NOT NULL AND
    "ACCT_PROMO_SKU"."SUB_TYPE"='PLAN_ACCOUNT_PROMOTION_PRODUCT')
    20 - access("ACCT_TITLE_FORMAT"."ROW_ID"="ACCT_PROMO_SKU"."PAR_SRC_ID")
    22 - access("ACCT_PROMO_SKU"."BU_ID"="SKU_ORG"."ROW_ID")
    23 - access("ACCT_PROMO_SKU"."ROW_ID"="ACCT_PROMO_SKUX"."PAR_ROW_ID"(+))
    24 - access("ACCT_PROMO_SKU"."PROD_ID"="PROD"."ROW_ID")
    25 - filter("PROD"."X_PROD_MATERIAL_NUM" IS NOT NULL AND
    "PROD"."X_PROD_MATERIAL_NUM"="PROMO_ACTUAL"."MATERIAL_NUMBER" AND
    "PROD"."X_PROD_SALES_ORG"="PROMO_ACTUAL"."SALES_ORG")
    55 rows selected.
    thanks

    Hi,
    the plan you posted has the cost of 2300, i.e. 2300 single-block reads or equivalent number f multi-block reads. Even if none of the blocks is found in cache, 2300 reas shouldn't take more than a couple of minutes, beacause for most of the hard drives available today a disk read is typically within 5-10 ms.
    This means that if there is a problem, we will never find out about it by looking in the plan. And it's quite likely that there is, in fact, a problem, because the plan contains a bunch of nested joins, and the cost of each nested join is directly proportional to the cardinality of the previous nested loop. I.e. it suffices to make one bad mistake in estimating the number of rows coming fom one of the nested rows to screw up the entire plan and get all remaining estimates (including the total cost of the query) completely wrong.
    In order for us to be able to tell more, we need to see the plan with rowsource statistics, and please don't forget to use tags to preserve formatting (use the preview tab to make sure the posted plan is actually readable).
    Best regards,
      Nikolay                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           

  • Complex SQL query Tuning

    Hi Fellas,
    I am new to query tuning. I have a big query with a TKPROF details. It is just fetching 34 records and taking approx 30 mins.
    The TKPROF detail will follow after the query.
    SELECT /*+ NO_INDEX(A, RA_CUSTOMER_TRX_N11 ) USE_NL(TYPES,A) */ a.customer_trx_id CUSTOMER_TRX_ID ,
    a.trx_number TRX_NUMBER ,
    A . INTERFACE_HEADER_ATTRIBUTE5 BILLING_STAGE ,
    A . INTERFACE_HEADER_CONTEXT PBRR_TYPE ,
    A . INTERFACE_HEADER_ATTRIBUTE11 BILLING_TERM ,
    NVL ( TL . SEQUENCE_NUM , 1 ) TERM_SEQUENCE_NUMBER ,
    types.type TRX_TYPE ,
    l_types.meaning TRX_TYPE_NAME ,
    TYPES . ACCOUNTING_AFFECT_FLAG OPEN_RECEIVABLE_FLAG ,
    a.trx_date TRX_DATE , SHIP_TO_CUSTOMER_ID SHIP_TO_CUSTOMER_ID ,
    SHIP_TO_CONTACT_ID SHIP_TO_CONTACT_ID ,
    REMIT_TO_ADDRESS_ID REMIT_TO_ADDRESS_ID ,
    A . PRIMARY_SALESREP_ID PRIMARY_SALESREP_ID ,
    B . ACCOUNT_NUMBER CUSTOMER_NUMBER ,
    A . INTERNAL_NOTES INTERNAL_NOTES ,
    A . COMMENTS TRX_COMMENTS ,
    PREVIOUS_CUSTOMER_TRX_ID PREVIOUS_CUSTOMER_TRX_ID ,
    SHIP_TO_SITE_USE_ID SHIP_TO_SITE_USE_ID ,
    NVL ( PRINTING_COUNT , 0 ) PRINTING_COUNT ,
    PRINTING_ORIGINAL_DATE PRINTING_ORIGINAL_DATE ,
    PRINTING_LAST_PRINTED PRINTING_LAST_PRINTED ,
    PRINTING_PENDING PRINTING_PENDING ,
    LAST_PRINTED_SEQUENCE_NUM LAST_PRINTED_SEQUENCE_NUMBER ,
    START_DATE_COMMITMENT START_DATE_COMMITMENT ,
    END_DATE_COMMITMENT END_DATE_COMMITMENT ,
    INITIAL_CUSTOMER_TRX_ID INITIAL_CUSTOMER_TRX_ID ,
    A . INVOICE_CURRENCY_CODE INVOICE_CURRENCY_CODE ,
    A . REASON_CODE CREDIT_HEADER_REASON_CODE_CSTM ,
    A . TERM_ID TERM_ID ,
    A . SHIP_DATE_ACTUAL SHIP_DATE_ACTUAL ,
    A . SHIP_VIA SHIP_VIA ,
    A . WAYBILL_NUMBER WAYBILL_NUMBER ,
    A . PURCHASE_ORDER PURCHASE_ORDER_NUMBER ,
    A . PURCHASE_ORDER_REVISION PURCHASE_ORDER_REVISION ,
    A . PURCHASE_ORDER_DATE PURCHASE_ORDER_DATE ,
    A . CREATED_BY ORDER_CREATED_BY_CSTM ,
    P . DUE_DATE TERM_DUE_DATE_FROM_PS ,
    NVL ( TL . RELATIVE_AMOUNT , 100 ) * ( 100 / NVL ( T . BASE_AMOUNT , 100 ) ) TERM_RELATIVE_AMOUNT ,
    T . NAME TERM_NAME ,
    A . BILL_TO_CUSTOMER_ID BILL_TO_CUSTOMER_ID ,
    A . BILL_TO_CONTACT_ID BILL_TO_CONTACT_ID ,
    A . BILL_TO_SITE_USE_ID BILL_TO_SITE_USE_ID ,
    U_BILL . LOCATION BILL_TO_LOCATION ,
    SUBSTRB ( PARTY . PARTY_NAME , 1 , 50 ) BILL_CUST_NAME ,
    RTRIM ( RPAD ( LOC . ADDRESS1 , 40 ) ) BILL_ADDRESS1 ,
    RTRIM ( RPAD ( LOC . ADDRESS2 , 40 ) ) BILL_ADDRESS2 ,
    RTRIM ( RPAD ( LOC . ADDRESS3 , 40 ) ) BILL_ADDRESS3 ,
    RTRIM ( RPAD ( LOC . ADDRESS4 , 40 ) ) BILL_ADDRESS4 ,
    LOC . CITY BILL_CITY , NVL ( LOC . STATE ,
    LOC . PROVINCE ) BILL_STATE ,
    LOC . POSTAL_CODE BILL_POSTAL_CODE ,
    LOC . COUNTRY BILL_COUNTRY ,
    U_BILL . TAX_REFERENCE BILL_SITE_TAX_REFERENCE ,
    PARTY . TAX_REFERENCE BILL_CUST_TAX_REFERENCE ,
    nvl(amount_line_items_original + decode(a.initial_customer_trx_id, '', 0, nvl(com_adj.amount,0)), to_number(null)) TRX_LINE_AMOUNT ,
    nvl(tax_original, to_number(null)) TRX_TAX_AMOUNT ,
    nvl(freight_original, to_number(null)) TRX_FREIGHT_AMOUNT ,
    p.amount_due_original + decode(a.initial_customer_trx_id, '', 0, nvl(com_adj.amount,0)) TRX_ALL_AMOUNT ,
    DECODE ( : P_ORDER_BY , 'TRX_NUMBER' , A . TRX_NUMBER , 'ADJUSTMENT_NUMBER' , A.TRX_NUMBER , 'CUSTOMER' , SUBSTRB ( PARTY . PARTY_NAME , 1 , 50 ) , 'POSTAL_CODE' , LOC . POSTAL_CODE , A . TRX_NUMBER ) ORDER_BY ,
    LOC . ADDRESS1 BILL_TO_ADDRESS1 ,
    LOC . ADDRESS2 BILL_TO_ADDRESS2 ,
    LOC . ADDRESS3 BILL_TO_ADDRESS3 ,
    LOC . ADDRESS4 BILL_TO_ADDRESS4 ,
    LOC . STATE BILL_TO_STATE ,
    LOC . PROVINCE BILL_TO_PROVINCE ,
    T . description Term_Description ,
    a . org_id ,
    a . created_from
    FROM
    AR_ADJUSTMENTS COM_ADJ,
    AR_PAYMENT_SCHEDULES P,
    RA_CUST_TRX_LINE_GL_DIST REC,
    RA_CUSTOMER_TRX A,
    HZ_CUST_ACCOUNTS B,
    RA_TERMS T,
    RA_TERMS_LINES TL,
    RA_CUST_TRX_TYPES TYPES,
    AR_LOOKUPS L_TYPES,
    HZ_PARTIES      PARTY,
    HZ_CUST_ACCT_SITES A_BILL,
    HZ_PARTY_SITES PARTY_SITE,
    HZ_LOCATIONS LOC,
    HZ_CUST_SITE_USES U_BILL
    WHERE
    A.BILL_TO_CUSTOMER_ID = B.CUST_ACCOUNT_ID AND
    REC.CUSTOMER_TRX_ID = A.CUSTOMER_TRX_ID AND
    REC.LATEST_REC_FLAG = 'Y' AND
    REC.ACCOUNT_CLASS = 'REC' AND
    P.PAYMENT_SCHEDULE_ID + DECODE ( P.CLASS , 'INV' , 0 , '' ) = COM_ADJ.PAYMENT_SCHEDULE_ID (+) AND
    COM_ADJ.SUBSEQUENT_TRX_ID IS NULL AND 'C' = COM_ADJ.ADJUSTMENT_TYPE (+) AND
    A.COMPLETE_FLAG = 'Y' AND
    A.CUST_TRX_TYPE_ID = TYPES.CUST_TRX_TYPE_ID AND
    L_TYPES.LOOKUP_TYPE = 'INV/CM/ADJ' AND
    A.PRINTING_OPTION IN ( 'PRI' , 'REP' ) AND
    L_TYPES.LOOKUP_CODE = DECODE ( TYPES.TYPE , 'DEP' , 'INV' , TYPES.TYPE ) AND
    NVL ( P.TERMS_SEQUENCE_NUMBER , nvl ( TL.SEQUENCE_NUM , 0 ) ) = nvl ( TL.SEQUENCE_NUM , nvl ( p.terms_sequence_number , 0 ) ) AND
    DECODE ( P.PAYMENT_SCHEDULE_ID , '' , 0 , NVL ( T.PRINTING_LEAD_DAYS , 0 ) ) = 0 AND
    A.BILL_TO_SITE_USE_ID = U_BILL.SITE_USE_ID AND
    U_BILL.CUST_ACCT_SITE_ID = A_BILL.CUST_ACCT_SITE_ID AND
    A_BILL.party_site_id = party_site.party_site_id AND
    B.PARTY_ID = PARTY.PARTY_ID AND
    loc.location_id = party_site.location_id AND
    NVL ( P.AMOUNT_DUE_REMAINING , 0 ) <> 0 AND
    A.CUST_TRX_TYPE_ID = 2526 AND
    TYPES.TYPE = 'INV' AND
    A.TERM_ID = TL.TERM_ID (+) AND
    A.TERM_ID = T.TERM_ID (+) AND
    A.CUSTOMER_TRX_ID = P.CUSTOMER_TRX_ID (+) AND
    A.PRINTING_PENDING = 'Y' AND
    NVL ( TL.SEQUENCE_NUM , 1 ) > NVL ( A.LAST_PRINTED_SEQUENCE_NUM , 0 ) and 1 = 1 AND
    NOT EXISTS ( SELECT 'X' from ECE_TP_DETAILS ETD ,
                        ECE_TP_HEADERS ETH
    WHERE
    ETH.TP_HEADER_ID = A_BILL.TP_HEADER_ID AND
    ETD.TP_HEADER_ID = ETH.TP_HEADER_ID AND
    ETD.EDI_FLAG = 'Y' AND
    ETD.DOCUMENT_ID = 'INO' AND
    ETD.DOCUMENT_TYPE = DECODE ( TYPES.TYPE , 'CM' , DECODE ( A.PREVIOUS_CUSTOMER_TRX_ID , NULL , 'OACM' , 'CM' ) , TYPES.TYPE ) ) AND
    A.PRINTING_OPTION IN ( 'PRI' , 'REP' ) AND
    T.NAME not like 'PB%' AND
    1 = 1 AND
    MIT_AR.GE_AR_COAKLEY_ELIGIBLE ( 'NEW' , P.CUSTOMER_TRX_ID , A.ORG_ID ) = 0 AND
    A.org_id = TYPES.org_id UNION SELECT /*+ NO_INDEX(A, RA_CUSTOMER_TRX_N11 ) USE_NL(TYPES,A) */
    a.customer_trx_id , a.trx_number ,
    A . INTERFACE_HEADER_ATTRIBUTE5 ,
    A . INTERFACE_HEADER_CONTEXT ,
    A . INTERFACE_HEADER_ATTRIBUTE11 ,
    NVL ( P . TERMS_SEQUENCE_NUMBER , 1 ) ,
    types.type , l_types.meaning ,
    TYPES . ACCOUNTING_AFFECT_FLAG ,
    a.trx_date ,
    A . SHIP_TO_CUSTOMER_ID ,
    A . SHIP_TO_CONTACT_ID ,
    A . REMIT_TO_ADDRESS_ID ,
    A . PRIMARY_SALESREP_ID ,
    B . ACCOUNT_NUMBER ,
    A . INTERNAL_NOTES ,
    A . COMMENTS ,
    PREVIOUS_CUSTOMER_TRX_ID ,
    SHIP_TO_SITE_USE_ID ,
    NVL ( PRINTING_COUNT , 0 ) ,
    PRINTING_ORIGINAL_DATE ,
    PRINTING_LAST_PRINTED ,
    PRINTING_PENDING ,
    LAST_PRINTED_SEQUENCE_NUM ,
    START_DATE_COMMITMENT ,
    END_DATE_COMMITMENT ,
    INITIAL_CUSTOMER_TRX_ID ,
    A . INVOICE_CURRENCY_CODE ,
    A . REASON_CODE ,
    A . TERM_ID ,
    A . SHIP_DATE_ACTUAL ,
    A . SHIP_VIA ,
    A . WAYBILL_NUMBER ,
    A . PURCHASE_ORDER ,
    A . PURCHASE_ORDER_REVISION ,
    A . PURCHASE_ORDER_DATE ,
    A . CREATED_BY ,
    P . DUE_DATE ,
    NVL ( TL . RELATIVE_AMOUNT , 100 ) * ( 100 / NVL ( T . BASE_AMOUNT , 100 ) ) ,
    T . NAME , A . BILL_TO_CUSTOMER_ID ,
    A . BILL_TO_CONTACT_ID ,
    A . BILL_TO_SITE_USE_ID ,
    U_BILL . LOCATION BILL_TO_LOCATION ,
    SUBSTRB ( PARTY . PARTY_NAME , 1 , 50 ) BILL_CUST_NAME ,
    RTRIM ( RPAD ( LOC . ADDRESS1 , 40 ) ) ,
    RTRIM ( RPAD ( LOC . ADDRESS2 , 40 ) ) ,
    RTRIM ( RPAD ( LOC . ADDRESS3 , 40 ) ) ,
    RTRIM ( RPAD ( LOC . ADDRESS4 , 40 ) ) ,
    LOC . CITY ,
    NVL ( LOC . STATE , LOC . PROVINCE ) ,
    LOC . POSTAL_CODE ,
    LOC . COUNTRY ,
    U_BILL . TAX_REFERENCE ,
    PARTY . TAX_REFERENCE ,
    nvl(amount_line_items_original + decode(a.initial_customer_trx_id, '', 0, nvl(com_adj.amount,0)), to_number(null)) ,
    nvl(tax_original, to_number(null)) ,
    nvl(freight_original, to_number(null)) ,
    p.amount_due_original + decode(a.initial_customer_trx_id, '', 0, nvl(com_adj.amount,0)) ,
    DECODE ( : P_ORDER_BY , 'TRX_NUMBER' ,
    A . TRX_NUMBER , 'ADJUSTMENT_NUMBER' ,
    A.TRX_NUMBER , 'CUSTOMER' ,
    SUBSTRB ( PARTY . PARTY_NAME , 1 , 50 ) , 'POSTAL_CODE' ,
    LOC . POSTAL_CODE , A . TRX_NUMBER ) ORDER_BY ,
    LOC . ADDRESS1 ,
    LOC . ADDRESS2 ,
    LOC . ADDRESS3 ,
    LOC . ADDRESS4 ,
    LOC . STATE ,
    LOC . PROVINCE ,
    T . description ,
    a . org_id ,
    a . created_from
    FROM
    RA_TERMS_LINES TL,
    RA_CUST_TRX_TYPES TYPES,
    AR_LOOKUPS L_TYPES,
         HZ_CUST_ACCOUNTS B,
    HZ_PARTIES      PARTY,
    HZ_CUST_SITE_USES U_BILL,
    HZ_CUST_ACCT_SITES A_BILL,
    HZ_PARTY_SITES PARTY_SITE,
    HZ_LOCATIONS LOC,
    AR_ADJUSTMENTS COM_ADJ,
    RA_CUSTOMER_TRX A,
    AR_PAYMENT_SCHEDULES P,
    RA_TERMS T
    WHERE
    A.BILL_TO_CUSTOMER_ID = B.CUST_ACCOUNT_ID
    AND P.PAYMENT_SCHEDULE_ID + DECODE ( P.CLASS , 'INV' , 0 , '' ) = COM_ADJ.PAYMENT_SCHEDULE_ID (+) AND
    COM_ADJ.SUBSEQUENT_TRX_ID IS NULL AND
    'C' = COM_ADJ.ADJUSTMENT_TYPE (+) AND
    A.COMPLETE_FLAG = 'Y' AND
    A.CUSTOMER_TRX_ID = P.CUSTOMER_TRX_ID AND
    A.CUST_TRX_TYPE_ID = TYPES.CUST_TRX_TYPE_ID AND
    L_TYPES.LOOKUP_TYPE = 'INV/CM/ADJ' AND
    A.PRINTING_OPTION IN ( 'PRI' , 'REP' ) AND
    L_TYPES.LOOKUP_CODE = DECODE ( TYPES.TYPE , 'DEP' , 'INV' , TYPES.TYPE ) AND
    NVL ( T.PRINTING_LEAD_DAYS , 0 ) > 0 AND
    A.BILL_TO_SITE_USE_ID = U_BILL.SITE_USE_ID AND
    U_BILL.CUST_ACCT_SITE_ID = A_BILL.CUST_ACCT_SITE_ID AND
    A_BILL.PARTY_SITE_ID = PARTY_SITE.PARTY_SITE_ID AND
    B.PARTY_ID = PARTY.PARTY_ID AND
    LOC.LOCATION_ID = PARTY_SITE.LOCATION_ID AND
    NVL ( P.TERMS_SEQUENCE_NUMBER , TL.SEQUENCE_NUM ) = TL.SEQUENCE_NUM AND
    NVL ( P.AMOUNT_DUE_REMAINING , 0 ) <> 0 AND
    A.CUST_TRX_TYPE_ID = 2526 AND
    TYPES.TYPE = 'INV' AND
    T.TERM_ID = P.TERM_ID AND
    TL.TERM_ID (+) = T.TERM_ID AND
    A.PRINTING_PENDING = 'Y' AND
    P.TERMS_SEQUENCE_NUMBER > NVL ( A.LAST_PRINTED_SEQUENCE_NUM , 0 ) and 1 = 1 AND
    NOT EXISTS ( SELECT 'X' from
    ECE_TP_DETAILS ETD ,
    ECE_TP_HEADERS ETH
    WHERE
    ETH.TP_HEADER_ID = A_BILL.TP_HEADER_ID AND
    ETD.TP_HEADER_ID = ETH.TP_HEADER_ID AND
    ETD.EDI_FLAG = 'Y' AND
    ETD.DOCUMENT_ID = 'INO' AND
    ETD.DOCUMENT_TYPE = DECODE ( TYPES.TYPE , 'CM' , DECODE ( A.PREVIOUS_CUSTOMER_TRX_ID , NULL , 'OACM' , 'CM' ) , TYPES.TYPE ) ) AND
    NVL ( A.PRINTING_OPTION , 'REP' ) IN ( 'PRI' , 'REP' ) AND
    T.NAME not like 'PB%' AND 1 = 1 AND
    MIT_AR.GE_AR_COAKLEY_ELIGIBLE ( 'NEW' , P.CUSTOMER_TRX_ID , A.ORG_ID ) = 0 AND
    A.org_id = TYPES.org_id
    ORDER BY 60 ASC,68 ASC,2 ASC,3 ASC,4 ASC,5 ASC,44 ASC
    call count cpu elapsed disk query current rows
    Parse 1 0.06 0.08 0 364 0 0
    Execute 1 5.11 4.98 0 0 0 0
    Fetch 18 81.35 1375.73 203636 357435 0 34
    total 20 86.52 1380.80 203636 357799 0 34
    Misses in library cache during parse: 1
    Optimizer mode: ALL_ROWS
    Parsing user id: 25
    Number of plan statistics captured: 1
    Rows (1st) Rows (avg) Rows (max) Row Source Operation
    34 34 34 SORT UNIQUE (cr=569992 pr=227554 pw=0 time=1658548772 us)
    34 34 34 UNION-ALL (cr=569992 pr=227554 pw=0 time=773822949 us)
    34 34 34 FILTER (cr=228022 pr=107808 pw=0 time=773820837 us)
    34 34 34 FILTER (cr=228022 pr=107808 pw=0 time=773820394 us)
    34 34 34 NESTED LOOPS OUTER (cr=228022 pr=107808 pw=0 time=771070499 us)
    34 34 34 NESTED LOOPS (cr=227986 pr=107806 pw=0 time=773799735 us)
    34 34 34 NESTED LOOPS (cr=227882 pr=107806 pw=0 time=773742298 us)
    34 34 34 NESTED LOOPS (cr=227812 pr=107806 pw=0 time=773688021 us)
    34 34 34 NESTED LOOPS (cr=227708 pr=107806 pw=0 time=773636699 us)
    34 34 34 FILTER (cr=227638 pr=107806 pw=0 time=773566978 us)
    4616 4616 4616 NESTED LOOPS OUTER (cr=220679 pr=106836 pw=0 time=823009777 us)
    4610 4610 4610 NESTED LOOPS (cr=206836 pr=102712 pw=0 time=623651066 us)
    4610 4610 4610 NESTED LOOPS (cr=188367 pr=96450 pw=0 time=531982352 us)
    4610 4610 4610 NESTED LOOPS (cr=179145 pr=96449 pw=0 time=530980660 us)
    4610 4610 4610 FILTER (cr=165290 pr=96448 pw=0 time=529149297 us)
    4610 4610 4610 NESTED LOOPS OUTER (cr=165290 pr=96448 pw=0 time=530066499 us)
    4607 4607 4607 NESTED LOOPS (cr=156074 pr=96442 pw=0 time=762671095 us)
    4615 4615 4615 NESTED LOOPS (cr=146842 pr=96441 pw=0 time=751255741 us)
    4615 4615 4615 NESTED LOOPS (cr=137610 pr=96435 pw=0 time=751144978 us)
    4615 4615 4615 NESTED LOOPS (cr=123763 pr=96435 pw=0 time=750949543 us)
    4615 4615 4615 TABLE ACCESS BY INDEX ROWID RA_CUSTOMER_TRX_ALL (cr=114531 pr=96435 pw=0 time=750675597 us)
    *329687 329687 329687 INDEX RANGE SCAN RA_CUSTOMER_TRX_N17 (cr=6232 pr=6046 pw=0 time=31982795 us)(object id 4788)* 4615 4615 4615 TABLE ACCESS BY INDEX ROWID RA_CUST_TRX_TYPES_ALL (cr=9232 pr=0 pw=0 time=239450 us)
    4615 4615 4615 INDEX UNIQUE SCAN RA_CUST_TRX_TYPES_U1 (cr=4617 pr=0 pw=0 time=160139 us)(object id 55731)
    4615 4615 4615 TABLE ACCESS BY INDEX ROWID FND_LOOKUP_VALUES (cr=13847 pr=0 pw=0 time=180337 us)
    4615 4615 4615 INDEX UNIQUE SCAN FND_LOOKUP_VALUES_U1 (cr=9232 pr=0 pw=0 time=135717 us)(object id 491822)
    4615 4615 4615 TABLE ACCESS BY INDEX ROWID RA_TERMS_B (cr=9232 pr=6 pw=0 time=155074 us)
    4615 4615 4615 INDEX UNIQUE SCAN RA_TERMS_B_U1 (cr=4617 pr=0 pw=0 time=60566 us)(object id 55734)
    4607 4607 4607 TABLE ACCESS BY INDEX ROWID RA_TERMS_TL (cr=9232 pr=1 pw=0 time=181115 us)
    4615 4615 4615 INDEX UNIQUE SCAN RA_TERMS_TL_U1 (cr=4617 pr=1 pw=0 time=82153 us)(object id 55755)
    4610 4610 4610 TABLE ACCESS BY INDEX ROWID RA_TERMS_LINES (cr=9216 pr=6 pw=0 time=259864 us)
    4610 4610 4610 INDEX RANGE SCAN RA_TERMS_LINES_U1 (cr=4609 pr=1 pw=0 time=104110 us)(object id 6703)
    4610 4610 4610 TABLE ACCESS BY INDEX ROWID HZ_CUST_SITE_USES_ALL (cr=13855 pr=1 pw=0 time=1350357 us)
    4610 4610 4610 INDEX UNIQUE SCAN HZ_CUST_SITE_USES_U1 (cr=9222 pr=1 pw=0 time=434079 us)(object id 44870)
    4610 4610 4610 TABLE ACCESS BY INDEX ROWID HZ_CUST_ACCT_SITES_ALL (cr=9222 pr=1 pw=0 time=1024466 us)
    4610 4610 4610 INDEX UNIQUE SCAN HZ_CUST_ACCT_SITES_U1 (cr=4612 pr=1 pw=0 time=337477 us)(object id 46883)
    4610 4610 4610 TABLE ACCESS BY INDEX ROWID RA_CUST_TRX_LINE_GL_DIST_ALL (cr=18469 pr=6262 pw=0 time=86754686 us)
    4610 4610 4610 INDEX RANGE SCAN RA_CUST_TRX_LINE_GL_DIST_N6 (cr=13836 pr=4061 pw=0 time=55844483 us)(object id 1510967)
    4616 4616 4616 TABLE ACCESS BY INDEX ROWID AR_PAYMENT_SCHEDULES_ALL (cr=13843 pr=4124 pw=0 time=50689789 us)
    4616 4616 4616 INDEX RANGE SCAN AR_PAYMENT_SCHEDULES_N2 (cr=9233 pr=1494 pw=0 time=15169412 us)(object id 4877)
    34 34 34 TABLE ACCESS BY INDEX ROWID HZ_CUST_ACCOUNTS (cr=70 pr=0 pw=0 time=24450 us)
    34 34 34 INDEX UNIQUE SCAN HZ_CUST_ACCOUNTS_U1 (cr=36 pr=0 pw=0 time=5962 us)(object id 85278)
    34 34 34 TABLE ACCESS BY INDEX ROWID HZ_PARTY_SITES (cr=104 pr=0 pw=0 time=58609 us)
    34 34 34 INDEX UNIQUE SCAN HZ_PARTY_SITES_U1 (cr=70 pr=0 pw=0 time=31189 us)(object id 45527)
    34 34 34 TABLE ACCESS BY INDEX ROWID HZ_LOCATIONS (cr=70 pr=0 pw=0 time=52502 us)
    34 34 34 INDEX UNIQUE SCAN HZ_LOCATIONS_U1 (cr=36 pr=0 pw=0 time=23883 us)(object id 45692)
    34 34 34 TABLE ACCESS BY INDEX ROWID HZ_PARTIES (cr=104 pr=0 pw=0 time=49042 us)
    34 34 34 INDEX UNIQUE SCAN HZ_PARTIES_U1 (cr=70 pr=0 pw=0 time=22106 us)(object id 757879)
    0 0 0 TABLE ACCESS BY INDEX ROWID AR_ADJUSTMENTS_ALL (cr=36 pr=2 pw=0 time=19638 us)
    0 0 0 INDEX RANGE SCAN AR_ADJUSTMENTS_N3 (cr=36 pr=2 pw=0 time=19271 us)(object id 5473)
    0 0 0 NESTED LOOPS (cr=0 pr=0 pw=0 time=9 us)
    0 0 0 INDEX UNIQUE SCAN ECE_TP_HEADERS_U1 (cr=0 pr=0 pw=0 time=7 us)(object id 46119)
    0 0 0 TABLE ACCESS BY INDEX ROWID ECE_TP_DETAILS (cr=0 pr=0 pw=0 time=0 us)
    0 0 0 INDEX UNIQUE SCAN ECE_TP_DETAILS_U2 (cr=0 pr=0 pw=0 time=0 us)(object id 6271)
    0 0 0 FILTER (cr=341970 pr=119746 pw=0 time=883424760 us)
    0 0 0 FILTER (cr=341970 pr=119746 pw=0 time=883424758 us)
    0 0 0 NESTED LOOPS OUTER (cr=341970 pr=119746 pw=0 time=883424757 us)
    0 0 0 NESTED LOOPS (cr=341970 pr=119746 pw=0 time=883424752 us)
    0 0 0 NESTED LOOPS (cr=341970 pr=119746 pw=0 time=883424749 us)
    0 0 0 NESTED LOOPS (cr=341970 pr=119746 pw=0 time=883424742 us)
    0 0 0 NESTED LOOPS (cr=341970 pr=119746 pw=0 time=883424740 us)
    0 0 0 NESTED LOOPS (cr=341970 pr=119746 pw=0 time=883424735 us)
    0 0 0 NESTED LOOPS (cr=341970 pr=119746 pw=0 time=883424731 us)
    0 0 0 NESTED LOOPS (cr=341970 pr=119746 pw=0 time=883424726 us)
    0 0 0 NESTED LOOPS (cr=341970 pr=119746 pw=0 time=883424724 us)
    0 0 0 NESTED LOOPS (cr=341970 pr=119746 pw=0 time=883424721 us)
    0 0 0 NESTED LOOPS (cr=341970 pr=119746 pw=0 time=883424715 us)
    34 34 34 NESTED LOOPS (cr=341900 pr=119746 pw=0 time=882400482 us)
    4615 4615 4615 NESTED LOOPS (cr=123763 pr=93484 pw=0 time=674293279 us)
    4615 4615 4615 TABLE ACCESS BY INDEX ROWID RA_CUSTOMER_TRX_ALL (cr=114531 pr=93484 pw=0 time=674030164 us)
    329687 329687 329687 INDEX RANGE SCAN RA_CUSTOMER_TRX_N17 (cr=6232 pr=6130 pw=0 time=36621510 us)(object id 4788)
    4615 4615 4615 TABLE ACCESS BY INDEX ROWID RA_CUST_TRX_TYPES_ALL (cr=9232 pr=0 pw=0 time=249893 us)
    4615 4615 4615 INDEX UNIQUE SCAN RA_CUST_TRX_TYPES_U1 (cr=4617 pr=0 pw=0 time=169485 us)(object id 55731)
    34 34 34 TABLE ACCESS BY INDEX ROWID AR_PAYMENT_SCHEDULES_ALL (cr=218137 pr=26262 pw=0 time=310068873 us)
    3304 3304 3304 INDEX RANGE SCAN AR_PAYMENT_SCHEDULES_N2 (cr=214841 pr=24355 pw=0 time=283359418 us)(object id 4877)
    0 0 0 TABLE ACCESS BY INDEX ROWID RA_TERMS_B (cr=70 pr=0 pw=0 time=829 us)
    34 34 34 INDEX UNIQUE SCAN RA_TERMS_B_U1 (cr=36 pr=0 pw=0 time=527 us)(object id 55734)
    0 0 0 TABLE ACCESS BY INDEX ROWID HZ_CUST_SITE_USES_ALL (cr=0 pr=0 pw=0 time=0 us)
    0 0 0 INDEX UNIQUE SCAN HZ_CUST_SITE_USES_U1 (cr=0 pr=0 pw=0 time=0 us)(object id 44870)
    0 0 0 TABLE ACCESS BY INDEX ROWID HZ_CUST_ACCT_SITES_ALL (cr=0 pr=0 pw=0 time=0 us)
    0 0 0 INDEX UNIQUE SCAN HZ_CUST_ACCT_SITES_U1 (cr=0 pr=0 pw=0 time=0 us)(object id 46883)
    0 0 0 TABLE ACCESS BY INDEX ROWID HZ_CUST_ACCOUNTS (cr=0 pr=0 pw=0 time=0 us)
    0 0 0 INDEX UNIQUE SCAN HZ_CUST_ACCOUNTS_U1 (cr=0 pr=0 pw=0 time=0 us)(object id 85278)
    0 0 0 TABLE ACCESS BY INDEX ROWID HZ_PARTIES (cr=0 pr=0 pw=0 time=0 us)
    0 0 0 INDEX UNIQUE SCAN HZ_PARTIES_U1 (cr=0 pr=0 pw=0 time=0 us)(object id 757879)
    0 0 0 TABLE ACCESS BY INDEX ROWID HZ_PARTY_SITES (cr=0 pr=0 pw=0 time=0 us)
    0 0 0 INDEX UNIQUE SCAN HZ_PARTY_SITES_U1 (cr=0 pr=0 pw=0 time=0 us)(object id 45527)
    0 0 0 TABLE ACCESS BY INDEX ROWID HZ_LOCATIONS (cr=0 pr=0 pw=0 time=0 us)
    0 0 0 INDEX UNIQUE SCAN HZ_LOCATIONS_U1 (cr=0 pr=0 pw=0 time=0 us)(object id 45692)
    0 0 0 TABLE ACCESS BY INDEX ROWID RA_TERMS_TL (cr=0 pr=0 pw=0 time=0 us)
    0 0 0 INDEX UNIQUE SCAN RA_TERMS_TL_U1 (cr=0 pr=0 pw=0 time=0 us)(object id 55755)
    0 0 0 TABLE ACCESS BY INDEX ROWID RA_TERMS_LINES (cr=0 pr=0 pw=0 time=0 us)
    0 0 0 INDEX RANGE SCAN RA_TERMS_LINES_U1 (cr=0 pr=0 pw=0 time=0 us)(object id 6703)
    0 0 0 TABLE ACCESS BY INDEX ROWID FND_LOOKUP_VALUES (cr=0 pr=0 pw=0 time=0 us)
    0 0 0 INDEX UNIQUE SCAN FND_LOOKUP_VALUES_U1 (cr=0 pr=0 pw=0 time=0 us)(object id 491822)
    0 0 0 TABLE ACCESS BY INDEX ROWID AR_ADJUSTMENTS_ALL (cr=0 pr=0 pw=0 time=0 us)
    0 0 0 INDEX RANGE SCAN AR_ADJUSTMENTS_N3 (cr=0 pr=0 pw=0 time=0 us)(object id 5473)
    0 0 0 NESTED LOOPS (cr=0 pr=0 pw=0 time=0 us)
    0 0 0 INDEX UNIQUE SCAN ECE_TP_HEADERS_U1 (cr=0 pr=0 pw=0 time=0 us)(object id 46119)
    0 0 0 TABLE ACCESS BY INDEX ROWID ECE_TP_DETAILS (cr=0 pr=0 pw=0 time=0 us)
    0 0 0 INDEX UNIQUE SCAN ECE_TP_DETAILS_U2 (cr=0 pr=0 pw=0 time=0 us)(object id 6271)
    Elapsed times include waiting on following events:
    Event waited on Times Max. Wait Total Waited
    ---------------------------------------- Waited ---------- ------------
    row cache lock 6 0.00 0.00
    SQL*Net message to client 18 0.00 0.00
    SQL*Net more data to client 2 0.00 0.00
    gc current block 2-way 5375 0.02 3.76
    gc cr grant 2-way 49175 0.05 24.09
    db file sequential read 203636 0.51 1289.70
    gcs drm freeze in enter server mode 7 0.28 1.30
    latch: KCL gc element parent latch 4 0.00 0.00
    gc remaster 2 0.07 0.12
    latch: gcs resource hash 26 0.00 0.00
    latch free 1 0.00 0.00
    gc cr block 2-way 9 0.00 0.00
    latch: cache buffers chains 1 0.00 0.00
    SQL*Net message from client 18 0.00 0.00
    Thanks in Advance..

    Hi,
    it looks like your problem stems from the wrong choice of the driving table:
    4615 4615 4615            NESTED LOOPS (cr=123763 pr=96435 pw=0 time=750949543 us)
    4615 4615 4615              TABLE ACCESS BY INDEX ROWID RA_CUSTOMER_TRX_ALL (cr=114531 pr=96435 pw=0 time=750675597 us)
    329687 329687 329687       INDEX RANGE SCAN RA_CUSTOMER_TRX_N17 (cr=6232 pr=6046 pw=0 time=31982795 us)(object id 4788) 4615 4615 4615 TABLE ACCESS BY INDEX ROWID RA_CUST_TRX_TYPES_ALL (cr=9232 pr=0 pw=0 time=239450 us)
    4615 4615 4615              INDEX UNIQUE SCAN RA_CUST_TRX_TYPES_U1 (cr=4617 pr=0 pw=0 time=160139 us)(object id 55731)
    4615 4615 4615              TABLE ACCESS BY INDEX ROWID FND_LOOKUP_VALUES (cr=13847 pr=0 pw=0 time=180337 us)Here, you are spending 750 seconds retriveing 329k rows, 98% of which are rejected on the next step. And the reason this is happening is because the optimizer underestimates the cardinatlity of this step by a factor of x50 (6.2k estimated, 329k actual value). Find out why this is happening or post relevant diagnostic information here (predicates, columns stats etc.), and fix this -- this should make your query twice as fast.
    The second half is coming from the SORT UNIQUE step. This looks weird: why on Earth it would take over 800 seconds to sort 34 rows?! Maybe there is something in the plan that I'm missing -- it's really hard to read because it's not formatted. Please obtain a plan with rowsource stats using dbms_xplan.display_cursor and post it here (google dbms_xplan.display_cursor allstats last if not sure how to do that).
    Best regards,
    Nikolay

  • Please reply for the query tuning

    Hi, i am a beginner in oracle dba, I have to know if i have studied little bit about query tuning in ORACLE.
    I wanna know if i have the following query and its plan then how it can be tuned:
    QUERY:
              SELECT z.emplid ,h.first_name || ' ' || h.last_name  ,z.grade ,z.DEPTID ,z.LOCATION
                              FROM sysadm.ps_lnt_latestbu_vw z, sysadm.ps_personal_data h
                                    WHERE  z.empl_status ='A'    --index access
                                    AND z.emplid = h.emplid      --join
                                    and z.emplid not in   (select g.emplid from sysadm.ps_lnt_asn_skl_tbl g)    --join
                                    and z.Business_unit=
                                                               (      select l.lnt_subunit from sysadm.ps_position_data l where l.position_nbr in
                                                                                                    ( select b.position_nbr from sysadm.ps_job b,sysadm.psoprdefn y
                                                                                                              where b.effdt=(     select max(g.effdt) from sysadm.ps_job g
                                                                                                                                            where g.emplid=b.emplid           --join costs high
                                                                                                                                                and g.effdt<=SYSDATE)               --filter/index
                                                                                                                    and b.effseq=
                                                                                                                             (select max(h.effseq) from sysadm.ps_job h
                                                                                                                                       where h.emplid=b.emplid           --join costs high
                                                                                                                                      and h.effdt=b.effdt)               --join costs high
                                                                                                                and b.empl_rcd=0          --filter/index access
                                                                                                                and y.EMPLID=b.EMPLID  --join
                                                                                                                and y.OPRID='1112'   -- filter/index access
                                               order by z.emplid
                                            /AND its plan is:
    Execution Plan
       0      SELECT STATEMENT Optimizer=CHOOSE (Cost=6 Card=1 Bytes=64)
       1    0   SORT (ORDER BY) (Cost=6 Card=1 Bytes=64)
       2    1     NESTED LOOPS (ANTI) (Cost=4 Card=1 Bytes=64)
       3    2       NESTED LOOPS (Cost=3 Card=1 Bytes=56)
       4    3         VIEW OF 'PS_LNT_LATESTBU_VW' (Cost=2 Card=1 Bytes=31)
       5    4           UNION-ALL
       6    5             CONCATENATION
       7    6               TABLE ACCESS (BY INDEX ROWID) OF 'PS_POSITION_DATA' (Cost=5 Card=90 Bytes=1890)
       8    7                 NESTED LOOPS
       9    8                   NESTED LOOPS (Cost=275 Card=1 Bytes=90)
      10    9                     NESTED LOOPS (Cost=275 Card=1 Bytes=82)
      11   10                       TABLE ACCESS (BY INDEX ROWID) OF 'PS_JOB' (Cost=3 Card=1 Bytes=50)
      12   11                         INDEX (RANGE SCAN) OF 'PS2JOB' (NON-UNIQUE) (Cost=2 Card=1)
      13   12                           SORT (AGGREGATE)
      14   13                             FIRST ROW (Cost=3 Card=1 Bytes=19)
      15   14                               INDEX (RANGE SCAN (MIN/MAX)) OF 'PSAJOB' (NON-UNIQUE) (Cost=3 Card=207700)
      16   12                           SORT (AGGREGATE)
      17   16                             FIRST ROW (Cost=3 Card=1 Bytes=22)
      18   17                               INDEX (RANGE SCAN (MIN/MAX)) OF 'PSAJOB' (NON-UNIQUE) (Cost=3 Card=207700)
      19   10                       INDEX (UNIQUE SCAN) OF 'PS_EMPLOYMENT'(UNIQUE)
      20    9                     INDEX (UNIQUE SCAN) OF 'PS_PERSONAL_DATA' (UNIQUE)
      21    8                   INDEX (RANGE SCAN) OF 'PS_POSITION_DATA' (UNIQUE) (Cost=5 Card=90)
      22    6               FILTER
      23   22                 NESTED LOOPS (Cost=275 Card=1 Bytes=90)
      24   23                   NESTED LOOPS (Cost=275 Card=1 Bytes=82)
      25   24                     NESTED LOOPS (Cost=275 Card=1 Bytes=71)
      26   25                       INDEX (FAST FULL SCAN) OF 'PS8POSITION_DATA' (NON-UNIQUE) (Cost=5 Card=90 Bytes=1890)
      27   25                       TABLE ACCESS (BY INDEX ROWID) OF 'PS_JOB' (Cost=3 Card=1 Bytes=50)
      28   27                         INDEX (RANGE SCAN) OF 'PS2JOB' (NON-UNIQUE) (Cost=2 Card=1)
      29   28                           SORT (AGGREGATE)
      30   29                             FIRST ROW (Cost=3 Card=1 Bytes=22)
      31   30                               INDEX (RANGE SCAN (MIN/MAX)) OF 'PSAJOB' (NON-UNIQUE) (Cost=3 Card=207700)
      32   28                           SORT (AGGREGATE)
      33   32                             FIRST ROW (Cost=3 Card=1 Bytes=19)
      34   33                               INDEX (RANGE SCAN (MIN/MAX)) OF 'PSAJOB' (NON-UNIQUE) (Cost=3 Card=207700)
      35   24                     INDEX (UNIQUE SCAN) OF 'PS_EMPLOYMENT' (UNIQUE)
      36   23                   INDEX (UNIQUE SCAN) OF 'PS_PERSONAL_DATA'(UNIQUE)
      37   22                 SORT (AGGREGATE)
      38   37                   FIRST ROW (Cost=2 Card=1 Bytes=17)
      39   38                     INDEX (RANGE SCAN (MIN/MAX)) OF 'PS_POSITION_DATA' (UNIQUE) (Cost=2 Card=9000)
      40    5             FILTER
      41   40               NESTED LOOPS (Cost=751 Card=1 Bytes=191)
      42   41                 NESTED LOOPS (OUTER) (Cost=750 Card=1 Bytes=167)
      43   42                   NESTED LOOPS (OUTER) (Cost=749 Card=1 Bytes=143)
      44   43                     NESTED LOOPS (Cost=748 Card=1 Bytes=134)
      45   44                       NESTED LOOPS (Cost=748 Card=1 Bytes=123)
      46   45                         NESTED LOOPS (Cost=748 Card=1 Bytes=119)
      47   46                           NESTED LOOPS (Cost=747 Card=1 Bytes=98)
      48   47                             NESTED LOOPS (Cost=744 Card=1 Bytes=62)
      49   48                               NESTED LOOPS (Cost=744 Card=1Bytes=54)
      50   49                                 VIEW OF 'PS_LNTPRJOBSYSJRVW'(Cost=741 Card=1 Bytes=9)
      51   50                                   FILTER
      52   51                                     NESTED LOOPS (OUTER) (Cost=735 Card=1 Bytes=68)
      53   52                                       NESTED LOOPS (Cost=734Card=1 Bytes=51)
      54   53                                         NESTED LOOPS (Cost=734 Card=1 Bytes=43)
      55   54                                           TABLE ACCESS (BY INDEX ROWID) OF 'PS_JOB' (Cost=734 Card=1 Bytes=32)
      56   55                                             INDEX (RANGE SCAN) OF 'PSCJOB' (NON-UNIQUE) (Cost=206 Card=1013)
      57   54                                           INDEX (UNIQUE SCAN) OF 'PS_EMPLOYMENT' (UNIQUE)
      58   53                                         INDEX (UNIQUE SCAN) OF 'PS_PERSONAL_DATA' (UNIQUE)
      59   52                                       INDEX (RANGE SCAN) OF'PS_POSITION_DATA' (UNIQUE) (Cost=1 Card=1 Bytes=17)
      60   51                                     SORT (AGGREGATE)
      61   60                                       FIRST ROW (Cost=3 Card=1 Bytes=19)
      62   61                                         INDEX (RANGE SCAN (MIN/MAX)) OF 'PSAJOB' (NON-UNIQUE) (Cost=3 Card=207700)
      63   51                                     SORT (AGGREGATE)
      64   63                                       FIRST ROW (Cost=3 Card=1 Bytes=22)
      65   64                                         INDEX (RANGE SCAN (MIN/MAX)) OF 'PSAJOB' (NON-UNIQUE) (Cost=3 Card=207700)
      66   51                                     SORT (AGGREGATE)
      67   66                                       FIRST ROW (Cost=2 Card=1 Bytes=17)
      68   67                                         INDEX (RANGE SCAN (MIN/MAX)) OF 'PS_POSITION_DATA' (UNIQUE) (Cost=2 Card=9000)
      69   49                                 TABLE ACCESS (BY INDEX ROWID) OF 'PS_JOB' (Cost=3 Card=1 Bytes=45)
      70   69                                   INDEX (RANGE SCAN) OF 'PSAJOB' (NON-UNIQUE) (Cost=2 Card=1)
      71   70                                     SORT (AGGREGATE)
      72   71                                       INDEX (RANGE SCAN) OF'PSAJOB' (NON-UNIQUE) (Cost=3 Card=1 Bytes=19)
      73   72                                         SORT (AGGREGATE)
      74   73                                           FIRST ROW (Cost=3Card=8 Bytes=88)
      75   74                                             INDEX (RANGE SCAN (MIN/MAX)) OF 'PSAJOB' (NON-UNIQUE) (Cost=3 Card=25963)
      76   70                                     SORT (AGGREGATE)
      77   76                                       FIRST ROW (Cost=3 Card=8 Bytes=88)
      78   77                                         INDEX (RANGE SCAN (MIN/MAX)) OF 'PSAJOB' (NON-UNIQUE) (Cost=3 Card=25963)
      79   48                               INDEX (UNIQUE SCAN) OF 'PS_PERSONAL_DATA' (UNIQUE)
      80   47                             TABLE ACCESS (BY INDEX ROWID) OF'PS_JOB' (Cost=3 Card=1 Bytes=36)
      81   80                               INDEX (RANGE SCAN) OF 'PSAJOB'(NON-UNIQUE) (Cost=2 Card=1)
      82   81                                 SORT (AGGREGATE)
      83   82                                   FIRST ROW (Cost=3 Card=1 Bytes=19)
      84   83                                     INDEX (RANGE SCAN (MIN/MAX)) OF 'PSAJOB' (NON-UNIQUE) (Cost=3 Card=207700)
      85   81                                 SORT (AGGREGATE)
      86   85                                   FIRST ROW (Cost=3 Card=1 Bytes=22)
      87   86                                     INDEX (RANGE SCAN (MIN/MAX)) OF 'PSAJOB' (NON-UNIQUE) (Cost=3 Card=207700)
      88   46                           INDEX (RANGE SCAN) OF 'PS8POSITION_DATA' (NON-UNIQUE) (Cost=1 Card=1 Bytes=21)
      89   45                         INDEX (UNIQUE SCAN) OF 'PS_BUS_UNIT_TBL_HR' (UNIQUE)
      90   44                       INDEX (UNIQUE SCAN) OF 'PS_EMPLOYMENT'(UNIQUE)
      91   43                     INDEX (RANGE SCAN) OF 'PS_POSITION_DATA'(UNIQUE) (Cost=1 Card=1 Bytes=9)
      92   42                   INDEX (FULL SCAN) OF 'PS0LOCATION_TBL' (NON-UNIQUE) (Cost=1 Card=1 Bytes=24)
      93   41                 INDEX (RANGE SCAN) OF 'PS0LOCATION_TBL' (NON-UNIQUE) (Cost=1 Card=1 Bytes=24)
      94   40               SORT (AGGREGATE)
      95   94                 FIRST ROW (Cost=2 Card=1 Bytes=17)
      96   95                   INDEX (RANGE SCAN (MIN/MAX)) OF 'PS_POSITION_DATA' (UNIQUE) (Cost=2 Card=9000)
      97    4           TABLE ACCESS (BY INDEX ROWID) OF 'PS_POSITION_DATA' (Cost=2 Card=1 Bytes=13)
      98   97             NESTED LOOPS (Cost=9 Card=1 Bytes=19)
      99   98               VIEW OF 'VW_NSO_1' (Cost=5 Card=1 Bytes=6)
    100   99                 SORT (UNIQUE)
    101  100                   NESTED LOOPS (Cost=5 Card=1 Bytes=44)
    102  101                     TABLE ACCESS (BY INDEX ROWID) OF 'PSOPRDEFN' (Cost=2 Card=1 Bytes=14)
    103  102                       INDEX (UNIQUE SCAN) OF 'PS_PSOPRDEFN'(UNIQUE) (Cost=1 Card=1)
    104  101                     TABLE ACCESS (BY INDEX ROWID) OF 'PS_JOB' (Cost=3 Card=1 Bytes=30)
    105  104                       INDEX (RANGE SCAN) OF 'PSAJOB' (NON-UNIQUE) (Cost=2 Card=1)
    106  105                         SORT (AGGREGATE)
    107  106                           INDEX (RANGE SCAN) OF 'PSAJOB' (NON-UNIQUE) (Cost=3 Card=8 Bytes=128)
    108  105                         SORT (AGGREGATE)
    109  108                           INDEX (RANGE SCAN) OF 'PSAJOB' (NON-UNIQUE) (Cost=3 Card=1 Bytes=19)
    110   98               INDEX (RANGE SCAN) OF 'PS_POSITION_DATA' (UNIQUE) (Cost=1 Card=1)
    111    3         TABLE ACCESS (BY INDEX ROWID) OF 'PS_PERSONAL_DATA'(Cost=1 Card=1 Bytes=25)
    112  111           INDEX (UNIQUE SCAN) OF 'PS_PERSONAL_DATA' (UNIQUE)
    113    2       INDEX (RANGE SCAN) OF 'PS_LNT_ASN_SKL_TBL' (UNIQUE) (Cost=1 Card=10076 Bytes=80608)
    Statistics
             70  recursive calls
              0  db block gets
        1186931  consistent gets
           5660  physical reads
             60  redo size
            462  bytes sent via SQL*Net to client
            373  bytes received via SQL*Net from client
              2  SQL*Net roundtrips to/from client
              2  sorts (memory)
              0  sorts (disk)
              0  rows processedMy thoughts for this is:
    1. NLJ high cost -- rewrite inner sub-query
    2. sort is done for each join for max function every time so,     therefore try use use sort merge hint
    3. h           alias has been referenced twice for table name.
    PLEASE TELL ME WHAT TO DO IF I AM ORACLE DBA.
    Thanks in advance.
    Edited by: user2060331 on Mar 25, 2010 9:17 AM
    Edited by: user2060331 on Mar 25, 2010 9:21 AM
    Edited by: user2060331 on Mar 25, 2010 9:32 AM
    Edited by: user2060331 on Mar 25, 2010 9:47 AM

    No it's not. You should see indentations for each level of the explain plan. You've lost all of it. It should look like this (not your query):
    PLAN_TABLE_OUTPUT
    | Id  | Operation                   | Name                | Rows  | Bytes | Cost  | Inst   |IN-OUT|
    |   0 | SELECT STATEMENT            |                     | 16116 |  2911K|   712 |        |      |
    |   1 |  FILTER                     |                     |       |       |       |        |      |
    |   2 |   CONNECT BY WITH FILTERING |                     |       |       |       |        |      |
    |   3 |    FILTER                   |                     |       |       |       |        |      |
    |   4 |     COUNT                   |                     |       |       |       |        |      |
    |   5 |      HASH JOIN RIGHT OUTER  |                     | 16116 |  2911K|   712 |        |      |
    |   6 |       REMOTE                | LSW_USR_GRP_XREF    |   518 | 13986 |     4 | MYPROJ~ | R->S |
    |   7 |       HASH JOIN RIGHT OUTER |                     | 16116 |  2486K|   707 |        |      |
    |   8 |        REMOTE               | LSW_USR_XREF        |   222 |  2886 |     4 | MYPROJ~ | R->S |
    |   9 |        HASH JOIN RIGHT OUTER|                     | 16116 |  2282K|   702 |        |      |
    |  10 |         TABLE ACCESS FULL   | MYPROJ_PROCESS_MAP   |   176 |  4752 |     4 |        |      |
    |  11 |         HASH JOIN OUTER     |                     | 16116 |  1857K|   698 |        |      |
    |  12 |          TABLE ACCESS FULL  | MYPROJ_MPPA | 16116 |  1243K|    71 |        |      |
    |  13 |          REMOTE             | LSW_TASK            | 80730 |  3074K|   625 | MYPROJ~ | R->S |
    |  14 |    HASH JOIN                |                     |       |       |       |        |      |
    |  15 |     CONNECT BY PUMP         |                     |       |       |       |        |      |
    |  16 |     COUNT                   |                     |       |       |       |        |      |
    |  17 |      HASH JOIN RIGHT OUTER  |                     | 16116 |  2911K|   712 |        |      |
    |  18 |       REMOTE                | LSW_USR_GRP_XREF    |   518 | 13986 |     4 | MYPROJ~ | R->S |
    |  19 |       HASH JOIN RIGHT OUTER |                     | 16116 |  2486K|   707 |        |      |
    |  20 |        REMOTE               | LSW_USR_XREF        |   222 |  2886 |     4 | MYPROJ~ | R->S |
    |  21 |        HASH JOIN RIGHT OUTER|                     | 16116 |  2282K|   702 |        |      |
    |  22 |         TABLE ACCESS FULL   | MYPROJ_PROCESS_MAP   |   176 |  4752 |     4 |        |      |
    |  23 |         HASH JOIN OUTER     |                     | 16116 |  1857K|   698 |        |      |
    |  24 |          TABLE ACCESS FULL  | MYPROJ_MPPA | 16116 |  1243K|    71 |        |      |
    |  25 |          REMOTE             | LSW_TASK            | 80730 |  3074K|   625 | MYPROJ~ | R->S |
    ---------------------------------------------------------------------------------------------------

  • The workbook report no authorization, but related query can show part data

    Dear All,
    We meet an error, The workbook report no authorization, but related query can show part data.
    We have a workbook, it have 1 queries, and when we key in condition to run it, in one field we put on one more condition(Z3XXX = ' WZO'  & ' WZA")(User didn't have authorization for this condition),  and workbook report no authorization.
    Then we checked  authorization check log and it show "You do not have sufficient authorization on Z3XXX = ' WCO'.
    But when we execute the related query with same condition. the query can open and show WZA's data.
    I'd like to know the reason.
    thanks & Best Regards,
    Kent Yu

    Dear All,
    We meet an error, The workbook report no authorization, but related query can show part data.
    We have a workbook, it have 1 queries, and when we key in condition to run it, in one field we put on one more condition(Z3XXX = ' WZO'  & ' WZA")(User didn't have authorization for this condition),  and workbook report no authorization.
    Then we checked  authorization check log and it show "You do not have sufficient authorization on Z3XXX = ' WCO'.
    But when we execute the related query with same condition. the query can open and show WZA's data.
    I'd like to know the reason.
    thanks & Best Regards,
    Kent Yu

  • Query Tuning - using CASE statement in the WHERE clause - Duplicate Post

    Duplicate Post by mistake.
    Please check
    Query Tuning - using CASE statement in the WHERE clause
    Edited by: Chaitanya on Jun 9, 2011 2:45 AM
    Edited by: Chaitanya on Jun 9, 2011 2:46 AM

    Duplicate Post by mistake.
    Please check
    Query Tuning - using CASE statement in the WHERE clause
    Edited by: Chaitanya on Jun 9, 2011 2:45 AM
    Edited by: Chaitanya on Jun 9, 2011 2:46 AM

  • Query tuning : you can do it yourself

    Hello,
    This thread is not a question.
    How tune my query ?
    My query didn't use indexes why ?
    I have indexes on table, stats are up-to-date why Oracle does a full scan on table ?
    What are the hint which I can use ?
    etc...
    I would like try to answer to many such questions posted in this forum about query tuning.
    And explain that tuning is not always complicated, is not always reserved to some consultants, is not always solved by hints usage, and not require to buy some books which would give some magic solutions.
    By this thread, I would explain to people which have some query performance issues, that the solution is maybe here, in front of their eyes, inside the query itself. The solution may come from their own side, and that they can be happy to solve such question themself.
    I'll develop here below a case from a real word situation encountered some time ago.

    At this point, remove this huge and nightmarish hint. We'll use it only if no other ways may found.
    First, a look into the data model to see if the joins may be rewrite differently.
    Original joins :
        dw.AIRPORT_ROUTING_ID = ar.AIRPORT_ROUTING_ID and
        dw.COUNTRY_ROUTING_ID = cor.COUNTRY_ROUTING_ID and
        dw.REGION_ROUTING_ID = rr.REGION_ROUTING_ID and
        dw.CITY_ROUTING_ID  = cr.CITY_ROUTING_ID andAnd indeed, the join may be rewrite as below :
        and dw.AIRPORT_ROUTING_ID = ar.AIRPORT_ROUTING_ID
        and ar.CITY_ROUTING_ID    = cr.CITY_ROUTING_ID
        and cr.COUNTRY_ROUTING_ID = cor.COUNTRY_ROUTING_ID 
        and cor.REGION_ROUTING_ID = rr.REGION_ROUTING_IDNote the aliases were change here. Is it complicated to try to rewrite query like that ?
    Secondly, we will try to see how avoid or, at least, workaround the all OR conditions. It would be well if we could merge all the FROM (bind variable :a) in one column, same for all TO (bind variable :b), unfortunately, the data model cannot be change (of course). Ok, we will try to work with a temporary table by combining all the possiblities between the two conditions.
    create global temporary table REGION_ROUTING_TMP
    on commit preserve rows
    as
    select REGION_ROUTING_NAMES, REGION_ROUTING_ID, REGION_FROM as REGION_FROM, REGION_STOP1 as REGION_TO
    from   REGION_ROUTING
    where  1=2;And an index based on the two mains criteria of the query may help :
    create index IDX_REGION_ROUTING_TMP on REGION_ROUTING_TMP(REGION_FROM,REGION_TO);Then we'll populate table :
    insert into REGION_ROUTING_TMP
    select REGION_ROUTING_NAMES, REGION_ROUTING_ID, REGION_FROM as REGION_FROM, REGION_STOP1 as REGION_TO
    from   REGION_ROUTING
    union
    select REGION_ROUTING_NAMES, REGION_ROUTING_ID, REGION_FROM as REGION_FROM, REGION_STOP2 as REGION_TO
    from   REGION_ROUTING
    union
    select REGION_ROUTING_NAMES, REGION_ROUTING_ID, REGION_FROM as REGION_FROM, REGION_STOP3 as REGION_TO
    from   REGION_ROUTING
    union
    select REGION_ROUTING_NAMES, REGION_ROUTING_ID, REGION_FROM as REGION_FROM, REGION_TO as REGION_TO
    from   REGION_ROUTING
    union
    select REGION_ROUTING_NAMES, REGION_ROUTING_ID, REGION_STOP1 as REGION_FROM, REGION_STOP2 as REGION_TO
    from   REGION_ROUTING
    union
    select REGION_ROUTING_NAMES, REGION_ROUTING_ID, REGION_STOP1 as REGION_FROM, REGION_STOP3 as REGION_TO
    from   REGION_ROUTING
    union
    select REGION_ROUTING_NAMES, REGION_ROUTING_ID, REGION_STOP1 as REGION_FROM, REGION_TO as REGION_TO
    from   REGION_ROUTING
    union
    select REGION_ROUTING_NAMES, REGION_ROUTING_ID, REGION_STOP2 as REGION_FROM, REGION_STOP3 as REGION_TO
    from   REGION_ROUTING
    union
    select REGION_ROUTING_NAMES, REGION_ROUTING_ID, REGION_STOP2 as REGION_FROM, REGION_TO as REGION_TO
    from   REGION_ROUTING
    union
    select REGION_ROUTING_NAMES, REGION_ROUTING_ID, REGION_STOP3 as REGION_FROM, REGION_TO as REGION_TO
    from   REGION_ROUTING;The insert take near 9 seconds, which is a reasonnable elapse time.
    At this point, the query become :
    Select
       ap.AIRPORT_PAIR,  
       dw.DELIVERY_PERIOD,
       dw.TOTAL_PAX As Demand,
       od.GLOBAL_TOTAL_PAX as Total_OD_Demand,
       dw.REPORTED_PAX As ReportedPax,
       ap.AIRPORT_FROM,
       ap.AIRPORT_TO,
       ap.CITY_FROM,
       ap.CITY_TO,
       ap.COUNTRY_FROM_NAME,
       ap.COUNTRY_TO_NAME,
       ap.REGION_FROM_NAME,
       ap.REGION_TO_NAME,
       ar.AIRPORT_ROUTING,
       cr.CITY_ROUTING,
       cor.COUNTRY_ROUTING_NAMES,
       rr.REGION_ROUTING_NAMES,
       ar.NUMBER_OF_STOP,
       dw.PERCENT_OF_TOTAL_PAX_VS_OD,
       dw.AIRLINE1,
       dw.AIRLINE2,
       dw.AIRLINE3,
       dw.AIRLINE4,
       dw.NUMBER_OF_AIRLINE,
       dw.AIRCRAFTCLASS_NAME,
       dw.FARE
    From
       REGION_ROUTING_TMP rr, -- here we use now the temporary table instead of REGION_ROUTING table
       DETAILED_FLIGHTS dw,
       AIRPORT_PAIR ap,
       AIRPORT_ROUTING ar,
       CITY_ROUTING cr,
       COUNTRY_ROUTING cor,
       OD od
    where
            dw.DELIVERY_PERIOD  in ('2006-09','2006-08','2006-07')
    and dw.AIRPORT_PAIR_ID    = ap.AIRPORT_PAIR_ID
    and dw.OD_ID              = od.OD_ID
    and dw.AIRPORT_ROUTING_ID = ar.AIRPORT_ROUTING_ID
    and ar.CITY_ROUTING_ID    = cr.CITY_ROUTING_ID
    and     cr.COUNTRY_ROUTING_ID = cor.COUNTRY_ROUTING_ID 
    and cor.REGION_ROUTING_ID = rr.REGION_ROUTING_ID
    and rr.REGION_FROM        = '7'  |
    and rr.REGION_TO          = '8'  |-> these two lines replace all the OR conditions;And explain plan :
    | Id  | Operation                             |  Name                          | Rows  | Bytes | Cost  | Pstart| Pstop |
    |   0 | SELECT STATEMENT                      |                                |   469 |   174K|  3462 |       |       |
    |   1 |  NESTED LOOPS                         |                                |   469 |   174K|  3462 |       |       |
    |   2 |   NESTED LOOPS                        |                                |   458 |   166K|  3004 |       |       |
    |   3 |    NESTED LOOPS                       |                                |   454 |   127K|  2096 |       |       |
    |   4 |     NESTED LOOPS                      |                                |   258 | 58308 |   548 |       |       |
    |   5 |      NESTED LOOPS                     |                                |   246 | 48216 |    56 |       |       |
    |   6 |       NESTED LOOPS                    |                                |    26 |  4420 |     4 |       |       |
    |   7 |        TABLE ACCESS BY INDEX ROWID    | REGION_ROUTING_TMP             |     1 |   123 |   
    |*  8 |         INDEX RANGE SCAN              | IDX_REGION_ROUTING_TMP         |     1 |       |     1 |       | 
    |   9 |        TABLE ACCESS BY INDEX ROWID    | COUNTRY_ROUTING                |    32 |  1504 |     2
    |* 10 |         INDEX RANGE SCAN              | IX9_COUNTRY_ROUTING            |    32 |       |     1 |       | 
    |  11 |       TABLE ACCESS BY INDEX ROWID     | CITY_ROUTING                   |     9 |   234 |     2 | 
    |* 12 |        INDEX RANGE SCAN               | IX9_CITY_ROUTING               |    12 |       |     1 |    
    |  13 |      TABLE ACCESS BY INDEX ROWID      | AIRPORT_ROUTING                |     1 |    30 |     2
    |* 14 |       INDEX RANGE SCAN                | IX10_AIRPORT_ROUTING           |     1 |       |     1 |   
    |* 15 |     TABLE ACCESS BY GLOBAL INDEX ROWID| DETAILED_FLIGHTS               |     2 |   122 |   
    |* 16 |      INDEX RANGE SCAN                 | IX3_DETAILED_FLIGHTS           |     9 |       |     2 |    
    |  17 |    TABLE ACCESS BY INDEX ROWID        | AIRPORT_PAIR                   |     1 |    85 |     2 |  
    |* 18 |     INDEX RANGE SCAN                  | IX1_AIRPORT_PAIR               |     1 |       |     1 |       |
    |  19 |   TABLE ACCESS BY INDEX ROWID         | OD                             |     1 |    10 |     1 |       |   
    |* 20 |    INDEX UNIQUE SCAN                  | PK_OD                          |     1 |       |       |       |       |
    ----------------------------------------------------------------------------------------------------Ouf, this sound like better, isn't it ? Was it complicated to arrive as such result ?
    Ok, now launch the query and see the elapse time :
    104103 rows selected.
    Elapsed: 00:09:00.12
    Statistics
              0  recursive calls
              0  db block gets
        1214845  consistent gets
         272481  physical reads
              0  redo size
       11164355  bytes sent via SQL*Net to client
         257032  bytes received via SQL*Net from client
           6942  SQL*Net roundtrips to/from client
              0  sorts (memory)
              0  sorts (disk)
         104103  rows processedWoaw, developer is now very happy, less than 10 minutes instead of one hour... and without modify anything else in database and server settings, without add indexes, without add any hints...
    Ok, now the problem is in the number of returned lines. Have you see the number of return client/server ? We'll now to try to reduce this one. Increasing the number of line returned by fetch :
    set arraysize 5000
    --run the query
    104103 rows selected.
    Elapsed: 00:02:25.49
    Statistics
              0  recursive calls
              0  db block gets
        1150893  consistent gets
         271432  physical reads
              0  redo size
       11018641  bytes sent via SQL*Net to client
           1013  bytes received via SQL*Net from client
             22  SQL*Net roundtrips to/from client
              0  sorts (memory)
              0  sorts (disk)
         104103  rows processedOk, the number of retunr client/server is now low, and elapse time is ok user.

Maybe you are looking for

  • Foreign currency conversion is wrong in line item report

    Hi All, I have a system which went live recently as of 1st of Sept. 2011. Hence my cut off is 31st Aug.2011. Now, i have uploaded customer open line items in foreign currency. Hence, at cutover my exchange rate was as per month of Aug. Now when I wan

  • How to change the maximum frame rate of the camera by changing the image size?

    I have two  acA2040-180km cameras which are connected to 2 NI PCIe-1433 framegrabbers, I am monitoring my cameras by LabView, maximum allowable frame rate is about 187 for full resolution images, but I just need a small fraction of the images, I know

  • Multi Database Support: TimeQuery setting for non-oracle

    Hello, I wanted to develop ADF Application which is database-neutral and thus SQL92 type application. I actually wanted to make sure that my application runs fine at least on MySQL DB. Therefore I set up my connection in JDeveloper to Mysql database

  • Output in a comma list

    Hi all, i am need the change the output of the below query. SQL> select department_id,employee_id from employees order by department_id; DEPARTMENT_ID EMPLOYEE_ID            10         200            20         201            20         202          

  • Registering MDM servers in SLD - Is it required?

    Hello mates, I was going thru this doc MDM 5.5 SP04 - <a href="https://websmp208.sap-ag.de/~sapidb/011000358700006117152006E">Register MDM Servers in the SLD</a>. My questions..what is the advanatage of registering MDM servers in SLD? Isn't it enough