LOY_AGGR_PT_RDM_V
Details
-
Schema: FUSION
-
Object owner: LOY
-
Object type: VIEW
Columns
Name |
---|
PROGRAM_ID MEMBER_ID PROMO_ID ATTRIB_DEFN_ID PARTNER_ID PROD_ID POINTS_REDEEMED |
Query
SQL_Statement |
---|
SELECT COALESCE(ALL_RDM.PROGRAM_ID, RDM_CANC.PROGRAM_ID) PROGRAM_ID, COALESCE(ALL_RDM.MEMBER_ID, RDM_CANC.MEMBER_ID) MEMBER_ID, COALESCE(ALL_RDM.PROMO_ID, RDM_CANC.PROMO_ID) PROMO_ID, COALESCE(ALL_RDM.ATTRIB_DEFN_ID, RDM_CANC.ATTRIB_DEFN_ID) ATTRIB_DEFN_ID, COALESCE(ALL_RDM.PARTNER_ID, RDM_CANC.PARTNER_ID) PARTNER_ID, COALESCE(ALL_RDM.PROD_ID, RDM_CANC.PROD_ID) PROD_ID, NVL(ALL_RDM.ALL_RDMS,0) - NVL(RDM_CANC.RDM_CNCS,0) POINTS_REDEEMED FROM ( SELECT MEM.PROGRAM_ID, RDM.MEMBER_ID, RDM.PROMO_ID, RDM.ATTRB_DEFN_ID ATTRIB_DEFN_ID, TXN.PARTNER_ID, TXN.PROD_ID, SUM(VALUE) ALL_RDMS FROM LOY_RDM_ITM RDM LEFT JOIN LOY_TXN TXN ON RDM.TXN_ID = TXN.LOY_TXN_ID INNER JOIN LOY_MEMBER MEM ON RDM.MEMBER_ID = MEM.LOY_MEMBER_ID WHERE RDM.CREATION_DATE >= COALESCE( ( SELECT PERIOD_END_DATE +1 FROM LOY_AGGR_POINT_PERIOD WHERE PERIOD_TYPE = 'W' AND RECENT_FLAG = 'Y'), (select LOY_POINT_AGGREGATION.GET_BEGINNING_DATE from dual), SYSDATE ) AND RDM.TYPE_CODE <> 'ORA_POINT_EXP' AND (TXN.LOY_TXN_ID IS NULL OR TXN.SUB_TYPE_CODE <> 'ORA_RED_CNCL') GROUP BY MEM.PROGRAM_ID, RDM.MEMBER_ID, RDM.PROMO_ID, RDM.ATTRB_DEFN_ID, TXN.PARTNER_ID, TXN.PROD_ID ) ALL_RDM FULL OUTER JOIN ( SELECT MEM.PROGRAM_ID, ACRL.MEMBER_ID, ACRL.PROMO_ID, ACRL.ATTRIB_DEFN_ID, TXN.PARTNER_ID, TXN.PROD_ID, SUM(ACCRUALED_VALUE) RDM_CNCS FROM LOY_ACRL_ITM ACRL INNER JOIN LOY_TXN TXN ON ACRL.TXN_ID = TXN.LOY_TXN_ID INNER JOIN LOY_MEMBER MEM ON ACRL.MEMBER_ID = MEM.LOY_MEMBER_ID INNER JOIN LOY_TXN CANCELTXN ON CANCELTXN.LOY_TXN_ID = TXN.CANCELLED_TXN_ID WHERE ACRL.PROCESS_DT >= COALESCE( ( SELECT PERIOD_END_DATE +1 FROM LOY_AGGR_POINT_PERIOD WHERE PERIOD_TYPE = 'W' AND RECENT_FLAG = 'Y'), (select LOY_POINT_AGGREGATION.GET_BEGINNING_DATE from dual), SYSDATE ) AND TXN.SUB_TYPE_CODE = 'ORA_ACC_CNCL' AND CANCELTXN.SUB_TYPE_CODE <> 'ORA_RED_CNCL' GROUP BY MEM.PROGRAM_ID, ACRL.MEMBER_ID, ACRL.PROMO_ID, ACRL.ATTRIB_DEFN_ID, TXN.PARTNER_ID, TXN.PROD_ID ) RDM_CANC ON ALL_RDM.PROGRAM_ID = RDM_CANC.PROGRAM_ID AND ALL_RDM.MEMBER_ID = RDM_CANC.MEMBER_ID AND ALL_RDM.PROMO_ID = RDM_CANC.PROMO_ID AND ALL_RDM.ATTRIB_DEFN_ID = RDM_CANC.ATTRIB_DEFN_ID AND ALL_RDM.PROD_ID = RDM_CANC.PROD_ID UNION ALL SELECT MEM.PROGRAM_ID, MEMBER_ID, PROMO_ID, ATTRDEFN_B_ID, PARTNER_ID, PROD_ID, POINTS_REDEEMED FROM LOY_AGGR_POINT_PERIOD PRD JOIN LOY_AGGR_POINT PT ON (PRD.AGGR_PERIOD_TYPE = PT.PERIOD_TYPE AND PRD.AGGR_PERIOD_CODE = PT.PERIOD_CODE) JOIN LOY_MEMBER MEM ON (MEM.LOY_MEMBER_ID = PT.MEMBER_ID) WHERE PRD.PERIOD_TYPE = 'W' AND PRD.RECENT_FLAG = 'Y' AND PT.POINTS_REDEEMED IS NOT NULL |