Se ha denunciado esta presentación.
Utilizamos tu perfil de LinkedIn y tus datos de actividad para personalizar los anuncios y mostrarte publicidad más relevante. Puedes cambiar tus preferencias de publicidad en cualquier momento.

Promotions_2nd_SYS4U I&C

  • Inicia sesión para ver los comentarios

  • Sé el primero en recomendar esto

Promotions_2nd_SYS4U I&C

  1. 1. Promotions The 2nd section 2013.02.21 이준서 수석
  2. 2. Master 기본 구조 Promotion Master Promotion Master Seq.(PK) 프로모션 명 프로모션 타입코드 마스터 시작일자 마스터 종료일자 할인금액(율) Promotion Detail 정액/정률코드 Promotion Master Seq.(PK) 사용여부 Seq.(PK) 대상단위 시작일자 대상단위 종료일자 Promotion Assign (CPN) 대상코드(상품/카테고리) Promotion Master Seq.(PK) 할인금액(율) Seq.(PK) 정액/정률코드 회원번호 사용여부 © 2005 Wisepost Business Partners All rights reserved 사용여부 주문번호 지불번호
  3. 3. SELECT Logic (1/4) : Parameter PRODUCT VALUE : [ 상품코드, 구매수량, 판매가격… ] SESSION VALUE : [ 회원번호, 등급... ] CREATE OR REPLACE FUNCTION FN_RTN_PROMO (pStr VARCHAR2, pToken1 VARCHAR2, pToken2 VARCHAR2 DEFAULT NULL) RETURN T_GEN_TABLE is CREATE OR REPLACE TYPE GEN_TABLE AS OBJECT out_rec gen_table := gen_table(NULL,NULL,NULL,NULL,NULL); ( mHowStr NUMBER; COL_01 VARCHAR2(50), mTempStr VARCHAR2(500) := ; COL_02 VARCHAR2(50), mRst_ItemList t_gen_table := t_gen_table(); COL_03 VARCHAR2(50) ); begin mHowStr := fn_gettokencnt(pStr,pToken1); for i in 1..mHowStr loop BEGIN Product Value mTempStr := fn_gettoken(pStr,pToken1,i); Like Table… out_rec.COL_01 := fn_gettoken(mTempStr,pToken2,1); 상품코드 out_rec.COL_02 := fn_gettoken(mTempStr,pToken2,2); out_rec.COL_03 := fn_gettoken(mTempStr,pToken2,3); © 2005 Wisepost Business Partners All rights reserved EXCEPTION WHEN OTHERS THEN 구매수량 out_rec.COL_03 := ERR; END; 판매가격 mRst_ItemList.Extend; mRst_ItemList(mRst_ItemList.Last) := out_rec; ︙ end loop; RETURN mRst_ItemList; end;
  4. 4. SELECT Logic (2/4) : Calculate 1. 정률 계산법 2. N+1 계산법 © 2005 Wisepost Business Partners All rights reserved
  5. 5. SELECT Logic (3/4) : Calculate 3. 연관 에누리 계산법 © 2005 Wisepost Business Partners All rights reserved
  6. 6. SELECT Logic (4/4) : Result Set • 주문 데이터 생성 및 프로모션 적용 데이터 생성을 위한 결과 값을 도출한다. • 기본적으로 프로모션단위-상품단위의 적용내용들을 Result-set에 포함시키고, Application 단에서 handling을 할 부분과 Query에서 control 해야 할 부분들을 case by case에 맞추어 판단하는 것 이 중요하다. (ex. 중복적용 및 적용 우선순위, 특정 지불수단의 제어 등) • N+1, 연관할인 등에서 발생되는 단수처리 Looping을 적용하여 Result set에 반영한다. • 재계산, 취소계산에서도 공통적으로 사용이 가능하도록 날짜항목에 대한 Parameter처리를 고려하여 Logic을 구현한다. (SYSDATE의 사용을 최대한 지양할 것.) © 2005 Wisepost Business Partners All rights reserved ORDER Data Make & Make PROMOTION APPLY Data
  7. 7. Promotion 적용 구조 주문생성에 따른 프로모션의 적용 방법은 주문번호 – 주문상품 순번 – 프로모션 적용순서의 원칙으로 적용시킨다. Promotion Apply 주문번호(PK) 주문상품 순번(PK) Promotion 적용순서(PK) 적용구분(상품단위/주문단위) Promotion Master Seq. 실제 적용금액 적용여부 © 2005 Wisepost Business Partners All rights reserved ※ Promotion Apply는 주문 취소/재계산의 기준이 될 뿐 아니라, 매출을 넘기는 데 있어서의 기본 근거 자료가 되는 Dataset 이므로 Order Data에 버금가는 정합성을 가져야 한다.

×