오더 수정 구현
제한사항
- 오더 및 오더 라인을 수정할 수 있으려면
ISF000058를 포함하여 모든 필수 자원 권한이 있어야 합니다. - 오더 수정은 판매오더에 대해서만 지원됩니다.
- 이월 라인의 수정은 지원되지 않습니다.
- 다음 컨디션 중 하나에 해당하는 경우 오더 수정이 사용 안함으로 설정됩니다.
MaxOrderStatus는3700(Order shipped) 보다 크거나 같습니다.- 오더에 운반 라인만 포함되어 있습니다.
- 다른 사용자가 오더를 잠갔습니다. 즉, 주문에 보류 중인 변경사항 (
HasPendingChanges = 'Y') 이 있고currentLoginId이PendingChangesUserID와 같지 않은 경우입니다.
주문 정보 요약 페이지의 편집 버튼을 사용하여 주문 수정
순서 요약 페이지에서 편집 단추를 클릭하면 순서 편집 페이지가 열립니다. 오더 라인뿐만 아니라 오더도 수정할 수 있습니다. 주문 수정 중에 수행할 수 있는 작업에 대한 자세한 내용은 주문 수정을 참조하십시오.
확인된 주문에 대한 모든 수정 사항은 사용자가 변경 사항을 저장하거나 롤백할 때까지 보류 중인 상태로 유지되거나 애플리케이션 관리자에서 정의한 사전 구성된 기간이 지나면 변경 사항이 자동으로 만료됩니다. 지정된 시간이 지나면 보류 중인 변경사항이 자동으로 만료되고 주문이 원래 상태로 롤백됩니다.
오더 및 오더 라인 상세내역 (예: 오더 총계, 적용된 쿠폰 등) 을 검색하기 위해 getCompleteOrderDetails API가 호출됩니다.
기존 주문에 새 상품 추가
- 기존 오더에 오더 라인을 추가하려면
ISF000059자원 권한이 있어야 합니다. - 현재 날짜가 오더 유효 기간을 지나면 오더에 새 제품을 추가할 수 없습니다.
WSC_ORDER_AGE규칙은 최대 오더 유효 기간을 페치하는 데 사용됩니다. 그러나 쿠폰 적용 또는 배송방법 변경과 같은 다른 수정을 수행할 수 있습니다. - 스캔하여 제품이 오더에 추가되고 사용 가능한 수량이 충분한 경우 기본 수량이 1이고 배송방법이 SHIP인오더에 제품을 추가하기 위해
getCompleteItemListAPI가 호출됩니다. 제품을 사용할 수 없는 경우 제품 세부사항 페이지로 경로 재지정됩니다. - 키워드를 사용하여 주문에 추가할 상품을 검색하는 경우 검색 키워드와 일치하는 상품 목록이 있는 상품 검색 결과 페이지가 열립니다. 이러한 결과에서 오더에 추가할 제품을 선택할 수 있습니다.
- 새 오더 라인을 추가하고
YCD_MULTI_ADD_LINES_INFO사유 코드가 있는 메모를 추가하기 위해modifyFulfillmentOptionsAPI가 호출됩니다. - 오더에 대한 변경사항은
changeOrderAPI를 트리거하는 저장을 클릭하는 경우에만 데이터베이스에 커미트됩니다. - 변경사항이 오더에 저장되면
getCompleteOrderDetailsAPI가 호출되어 페이지를 새로 고치고 성공 메시지를 표시합니다. 그런 다음 계속 진행하여 지불 세부사항을 업데이트할 수 있습니다. - 오더를 수정하여 오더에 이월 오더 라인을 추가할 수 없습니다.
- 일반 및 변형 항목만 추가할 수 있습니다.
- 애플리케이션 관리자를 사용하여 주문 수준에서 다음 주문 수정 규칙을 사용하도록 설정해야 합니다:
ADD_LINEADD_NOTE
- 기존 오더에 새 제품을 추가하기 위해 다음 API가 호출됩니다.
getRuleDetailsWSC_ORDER_AGE규칙에서 최대 오더 유효 기간을 페치합니다.getCompleteItemList제품 세부사항을 검색합니다.modifyFulfillmentOptions주문에 상품을 추가합니다.getCompleteOrderDetails업데이트된 주문 총계 및 지불 금액 또는 환불 금액을 표시하는 메시지가 있는 페이지를 최신 정보로 고칩니다.changeOrder주문에 대한 변경사항을 저장합니다.
기존 주문에서 주문 라인 제거
- 기존 오더에서 오더 라인을 제거하려면
ISF000060자원 권한이 있어야 합니다. - 오더 라인 취소는
MaxLineStatus < 3700(Shipped) 이고1100.7777(CARRIED) 와 같지 않은 경우에만 사용 가능합니다. - 고객이 오더에서 하나 이상의 제품을 취소하기로 결정하는 경우 해당 오더 라인에 대해 제거 버튼을 클릭할 수 있습니다.
취소 이유를 선택하고 확인할 수 있는 확인 창이 표시됩니다. 제품을 제거하기 위해
modifyFulfillmentOptionsAPI가 호출됩니다. - 오더 라인 취소 시
YCD_CANCEL_INFO사유 코드와 함께 메모가 추가됩니다. - 취소 후에는 취소된 라인에 추가된 메모만 볼 수 있으며 다른 액션을 수행할 수 없습니다.
- 오더 라인이 새로 추가된 경우 오더에서 제품을 제거하도록 확인하기만 하면 됩니다. 취소 이유가 필요하지 않습니다.
changeOrderAPI는 오더에 새로 추가된 제품을 제거하는 데 사용됩니다. - 저장 시 오더에 변경사항을 적용하기 위해
changeOrderAPI가 호출됩니다. - 애플리케이션 관리자를 사용하여 다음 순서 수정 규칙을 사용하도록 설정해야 합니다:
CANCEL- 취소된 주문 상태를 가져오기 위한 주문 레벨의
ADD_NOTE.
- 기존 오더에서 오더 라인을 제거하기 위해 다음 API가 호출됩니다.
CodeType를YCD_CANCEL_REASON로 사용하는getCommonCodeList. 취소 사유를 표시합니다.modifyFulfillmentOptions(Action="CANCEL"포함). 보류 중인 변경 모드에서 오더 라인을 취소합니다.changeOrder(Action="REMOVE"포함). 보류 중인 변경 모드에서 새 오더 라인을 취소합니다.changeOrder데이터베이스에 대한 변경사항을 커미트합니다.
오더 라인 수량 편집
- 오더 라인 수량을 업데이트하려면
ISF000049자원 권한이 필요합니다. - 다음 컨디션이 충족되는 경우에만 오더 라인 수량을 업데이트할 수 있습니다.
MaxLineStatus < 3700(Shipped) 및MaxLineStatus는1100.7777(CARRIED) 와 같지 않습니다.DeliveryMethod이 (가)DEL과 (와) 같지 않습니다.
- 고객의 요구사항에 따라 오더 라인의 수량을 늘리거나 줄일 수 있습니다.
- 오더된 수량을 줄이면
AvailableQtyForCancelAndStopDelivery속성에 대해 유효성 검증됩니다. - 오더 라인 수량이 변경되면
getItemAvailabilityForStoreAPI가 호출됩니다. - 필요한 재고가 사용 가능한 경우 계류 중인 변경 모드에서
modifyFulfillmentOptionsAPI가 호출되어 입력된 수량을 업데이트합니다. getCompleteOrderDetailsAPI가 호출되어 업데이트된 오더 총계 및 예정된 금액 또는 환불 상세내역을 표시하는 메시지와 함께 페이지를 새로 고칩니다. 저장을 클릭하면 오더에 대한 변경사항을 저장하기 위해changeOrderAPI가 호출됩니다.- 애플리케이션 관리자를 사용하여 다음 순서 수정 규칙을 사용하도록 설정해야 합니다:
ADD_QUANTITY- 현재 주문 상태를 가져오기 위한 주문 레벨의
ADD_NOTE.
- 오더 라인 수량을 편집하기 위해 다음 API가 호출됩니다.
getItemAvailabilityForStore업데이트된 수량에 대한 제품의 실시간 가용성을 검색합니다.modifyFulfillmentOptions편집된 수량을 업데이트합니다.getCompleteOrderDetails갱신된 주문 총계 및 주문에 대한 예정 금액 또는 환불 금액을 표시하는 메시지가 있는 페이지를 최신 정보로 고칩니다.changeOrder데이터베이스에 대한 변경사항을 커미트합니다.
주문의 상품을 해당 변형으로 바꾸기
주문 편집 페이지에서 상품 설명 링크를 클릭하여 상품 정보 페이지를 열 수 있습니다. 제품에 대한 변형을 보고 이를 카트에 추가할 수 있습니다.
그런 다음 필요하지 않은 경우 오더에서 이전에 추가된 변형을 제거할 수 있습니다.
getRuleDetailsWSC_ORDER_AGE규칙에서 최대 오더 유효 기간을 페치합니다.modifyFulfillmentOptions변형 제품을 업데이트하려면 다음을 수행하십시오.changeOrder데이터베이스에 대한 변경사항을 커미트합니다.
배송방법 수정
- 오더 라인의 배송방법을 수정하려면
ISF000061자원 권한이 필요합니다. - 오더 라인 배송방법이 CARRY,
Canceled또는DEL(Delivery line) 인 경우 배송방법 편집 옵션을 사용할 수 없습니다. - 배송방법 편집을 클릭하여 오더 라인의 배송방법을 수정할 수 있습니다. 두 개의 탭 (선적 및 픽업) 이 있는 배송방법 편집 창이 표시됩니다. 기본적으로 배송방법 편집 창에는 오더 라인의 현재 배송방법에 해당하는 탭이 표시됩니다.
- 오더 라인의 배송방법이 픽업에서 선적으로 변경되면
modifyFulfillmentOptionsAPI가 호출되어DeliveryMethod속성을SHP로 설정하고 적용 가능한 경우 선택된 운송서비스상품 옵션을 기반으로CarrierServiceCode속성을 설정합니다.선적 탭에서 운송서비스상품 목록을 검색하기 위해
getCarrierServiceOptionsForOrderingAPI가 호출됩니다. 또한 modifyFulfillmentOptions 주문이 아직 배송 주소를 가지고 있지 않은 경우, 주문 라인의 배송 주소를 설정합니다. - 제품의 배송방법이 선적에서 픽업으로 변경되면
DeliveryMethod속성을PICK로 설정하고ShipNode속성을 선택된 상점으로 설정하기 위해modifyFulfillmentOptionsAPI가 호출됩니다. 상점을 선택하거나 변경하기 위해 구현되는 로직은 적용 가능합니다.기존의 계류 중인 변경사항이 없고 오더 라인의 상태가
Scheduled미만인 경우 계류 중인 변경 모드에서modifyFulfillmentOptionsAPI가 호출됩니다.주문 라인의 상태가
Scheduled(MaxLineStatus >= '1500') 이상이고 스털링 비즈니스 센터에서 예약된 상태 이상의 주문 수정 허용 규칙(WSC_ALLOW_ORDER_MODIFICATION_POST_RELEASE)이 활성화되어 있으면 보류 중인 변경 사항이 커밋됩니다. 확인 시 오더 라인의 스케줄이 취소됩니다.마찬가지로, 오더 라인에 대한 쉽먼트가 생성되면 변경을 진행하기 전에 쉽먼트에서 오더 라인이 제거됩니다.
- 새 전달 방법으로 페이지를 새로 고치기 위해
getCompleteOrderDetailsAPI가 호출됩니다. - 저장을 클릭하면 오더에 대한 변경사항을 저장하기 위해
changeOrderAPI가 호출됩니다. - 애플리케이션 관리자를 사용하여
CHANGE_DELIVERY_METHOD주문 수정 규칙을 사용하도록 설정해야 합니다 - 전달 메소드를 수정하기 위해 다음 API가 호출됩니다.
modifyFulfillmentOptions오더의 기존 오더 라인 배송방법을 업데이트합니다.changeOrder오더에서 새 라인 배송방법을 업데이트합니다.getCarrierServiceOptionsForOrdering선적 탭에 표시할 운송서비스상품 목록을 검색합니다.getRuleDetailsWSC_ALLOW_ORDER_MODIFICATION_POST_RELEASE규칙에서 오더 수정이 스케줄된 상태를 초과하여 허용되는지 여부를 페치합니다.getCompleteOrderDetails새 전달 방법으로 페이지를 새로 고치려면 다음을 수행하십시오.changeOrder데이터베이스에 대한 변경사항을 커미트합니다.
오더 라인에서 비용 추가, 수정, 제거 및 가격 재설정
오더 라인의 배송방법을 수정하려면 ISF000050 (오더 라인 비용 추가 또는 수정) 및 ISF000045 (가격 재설정) 자원 권한이 필요합니다.
비용 보기 및 수정-상점 직원으로서 각 오더 라인의 아이템 총계 링크를 클릭하여 제품의 비용을 조회하고 수정할 수 있습니다.
- 오더 라인에 적용된 비용 목록을 표시하기 위해
getCompleteOrderDetailsAPI가 호출됩니다. - 현재 적용되는 비용을 추가하거나 수정하기 위해 오더 라인 비용을 추가하고 수정하는 데 필요한 권한이 있어야 합니다.
- 수동으로 적용된 비용만 편집할 수 있습니다. 가격 책정 엔진에 의해 자동으로 생성되는 비용은 읽기 전용으로 표시됩니다.
- 오더 라인 상태가 쉽먼트에 포함됨 미만이거나 운송되지 않은 경우에만 비용을 수정할 수 있으며 오더 라인 배송방법은
DEL(Delivery line) 와 같지 않습니다. - 비용을 추가하거나 수정하는 동안 입력되는 메모는
YCD_ADD_MODIFY_CHARGES를 사유 코드로 사용하여 오더 또는 오더 라인에 저장됩니다. - 기존 오더 라인의 제품에 대해서만 가격을 재설정할 수 있습니다.
- 애플리케이션 관리자를 사용하여 다음 순서 수정 규칙을 사용하도록 설정해야 합니다:
PRICE- 현재 오더 라인 상태를 가져오기 위한 오더 라인 레벨의
ADD_NOTE입니다.
- 오더 라인의 비용을 수정하기 위해 다음 API가 호출됩니다.
getChargeCategoryList비용 카테고리 목록을 검색합니다.getChargeNameList비용 이름 목록을 검색합니다.changeOrder비용 수정을 적용합니다.getCompleteOrderDetails오더 라인에 적용된 비용 목록을 표시합니다.
오더의 비용 추가, 수정 및 제거
오더 총계를 클릭하여 오더의 모든 제품에 대한 비용을 조회하고 수정할 수 있습니다.
- 오더의 비용을 수정하려면
ISF000051(오더 헤더 비용 추가 또는 수정) 자원 권한이 필요합니다. - 오더에 적용된 비용 목록을 표시하기 위해
getCompleteOrderDetailsAPI가 호출됩니다. - 현재 적용되는 비용을 추가하거나 수정하기 위해 오더 헤더 비용을 추가하고 수정하는 데 필요한 권한이 있어야 합니다.
- 수동으로 적용된 비용만 편집할 수 있습니다. 가격 책정 엔진에 의해 자동으로 생성되는 비용은 읽기 전용으로 표시됩니다.
- 오더 상태가 쉽먼트에 포함됨보다 작거나 운송되지 않은 경우에만 비용을 수정할 수 있습니다.
- 비용을 추가하거나 수정하는 동안 입력되는 메모는
YCD_ADD_MODIFY_CHARGES를 사유 코드로 사용하여 오더 또는 오더 라인에 저장됩니다. - 애플리케이션 관리자를 사용하여 다음 순서 수정 규칙을 사용하도록 설정해야 합니다:
PRICE- 현재 주문 상태를 가져오기 위한 주문 레벨의
ADD_NOTE.
- 오더의 비용을 수정하기 위해 다음 API가 호출됩니다.
getChargeCategoryList비용 카테고리 목록을 검색합니다.getChargeNameList비용 이름 목록을 검색합니다.changeOrder비용 수정을 적용합니다.getCompleteOrderDetails오더에 적용된 비용 목록을 표시합니다.
쿠폰 적용 및 제거
- 특별 판매 또는 쿠폰을 업데이트하려면
ISF000052자원 권한이 필요합니다. - 편집 을 클릭하고 적용된 쿠폰을 클릭하여 기존 오더에 새 쿠폰을 추가할 수 있습니다. 그런 다음 쿠폰 적용 창에서 특별 판매 코드를 스캔하거나 입력할 수 있습니다.
translateBarCodeAPI가 호출된 후changeOrderAPI가 호출되어 특별 판매를 적용합니다. changeOrderAPI를 호출하는 적용된 쿠폰을 제거할 수도 있습니다.- 쿠폰 적용 창이 닫히면 오더 상세내역에서 유효하지 않은 프로모션을 제거하기 위해
changeOrderAPI가 호출됩니다. - 데이터는 저장 버튼을 클릭할 때까지 오더에 대해 영구적으로 저장되지 않습니다. 저장을 클릭하면
ApplyPendingChanges="Y"속성을 전달하는 기존changeOrderAPI가 호출됩니다. - 주문 편집 페이지는 기존
getCompleteOrderDetailsAPI를 호출하여 주문 총계 및 할인과 같은 업데이트된 데이터로 최신 정보로 고쳐집니다. - 애플리케이션 관리자를 사용하여 다음 순서 수정 규칙을 사용하도록 설정해야 합니다:
CHANGE_PROMOTIONREMOVE_PROMOTION
- 쿠폰을 적용하거나 제거하여 오더를 수정하기 위해 다음 API가 호출됩니다.
getCompleteOrderDetails쿠폰을 추가하거나 제거한 후 적용된 쿠폰 목록을 가져오고 주문 데이터를 최신 정보로 고칩니다.translateBarCode(BarCodeType="StoreCoupon"포함). 쿠폰 바코드를 변환하려면 다음을 수행하십시오.changeOrderPromotion조치가CREATE인 새 쿠폰을 추가하고Promotion조치가REMOVE인 쿠폰을 제거합니다.
선물 옵션 수정
- 고객이 이미 운송한 기존 CARRY 라인에 대한 선물 옵션을 수정할 수 없습니다.
- 구성된 수정 권한에 따라 기존 선적 및 피킹 오더 라인의 선물 옵션을 변경할 수 있습니다.
- 새로 추가된 오더 라인을 선물로 표시할 수 있습니다. 오더 라인을 선물로 표시하는 옵션은
MaxLineStatus < 3350(Included in shipment) 이고1100.7777(CARRIED) 와 같지 않은 경우에만 사용 가능합니다. - 오더 레벨의 선물 옵션 버튼은 하나 이상의 오더 라인이 선물 옵션을 적용하는 데 유효하고 수정 권한이 있는 경우에만 사용 가능합니다. 기타 모든 경우에는 오더 라인 레벨에서 선물 옵션 을 사용할 수 있습니다.
- 오더의 선물 정보를 업데이트하기 위해
modifyFulfillmentOptionsAPI가 호출됩니다. - 보류 중인 변경사항은
changeOrderAPI를 호출하여 저장 을 클릭하는 경우에만 커미트됩니다. - 애플리케이션 관리자를 사용하여 다음 순서 수정 규칙을 사용하도록 설정해야 합니다:
CHANGE_GIFT_FLAGCHANGE_GIFT_WRAPMARKFORCHANGE_INSTRUCTION
- 선물 옵션을 수정하기 위해 다음 API가 호출됩니다.
getCompleteOrderLineList오더 라인 레벨에서 적용되는 선물 옵션의 상세내역을 가져옵니다.getCompleteOrderDetails주문 세부사항을 가져오려면 다음을 수행하십시오.modifyFulfillmentOptions오더의 선물 정보를 업데이트합니다.changeOrder데이터베이스에 대한 변경사항을 커미트합니다.
주소 수정
- 오더 주소를 변경하려면
ISF000062자원 권한이 필요합니다. maxOrderStatus < 1500(Scheduled)- 주문 편집 페이지에서 고객 이름 링크를 클릭하면 고객 식별 창이 열립니다. 운송 주소 편집을 눌러 표시되는 현재 주소를 편집할 수 있습니다. 오더 주소를 변경할 때 오더 주소와 연관된 오더 라인도 새 주소로 업데이트됩니다.
- 업데이트된 주소는 주문 편집 페이지에서 저장 단추를 클릭하는 경우에만 주문에 대해 저장됩니다. 저장 을 클릭하면
ApplyPendingChanges="Y"속성을 전달하는 기존changeOrderAPI가 페이지에서 호출됩니다. - 주소를 수정하기 위해 다음 API가 호출됩니다.
verifyAddress주소를 확인합니다.modifyFulfillmentOptions새 주소로 주문을 업데이트합니다.
오더 라인 및 오더 레벨에서 메모 추가
- 새 메모를 추가하려면
ISF000057(AddCommentsToOrder) 자원 권한이 필요합니다. 이 자원 권한이 없는 경우 기존 메모만 볼 수 있습니다. - 오더 라인 레벨에서 메모 링크를 클릭하면 추가된 모든 메모를 표시하는 제품 메모 창이 열립니다. 새 메모 추가 를 클릭하여 오더 라인 레벨 메모를 추가할 수 있습니다.
- 동작 메뉴에서 메모 옵션을 클릭하여 오더 레벨에서 추가된 모든 메모를 표시하는 메모 창을 열 수도 있습니다. 새 메모 추가 를 클릭하여 오더 레벨 메모를 추가할 수 있습니다.
- 메모는 오더에 직접 저장되므로
ApplyPendingChanges를 호출할 필요가 없습니다. - 애플리케이션 관리자를 사용하여
ADD_NOTE주문 수정 규칙을 사용하도록 설정해야 합니다.
오더 총계의 변경에 대한 지불 캡처
- 새 오더 라인을 추가하면 새 오더 총계 및 보류 중인 지불 상세내역과 함께 메시지가 표시됩니다.
- 주문 편집 페이지에서 변경사항을 저장하면 지불 캡처 페이지로 진행하기 위한 링크와 함께 확인 메시지가 표시됩니다.
- 지불 캡처 페이지에서 이전에 캡처된 지불 (있는 경우) 을 볼 수도 있습니다. 지불을 완료하기 위해 만기 금액을 캡처할 수 있습니다.
- 전체 금액이 지불되면 주문 정보 요약 페이지가 열립니다.
취소된 오더 라인에 대한 환불 처리
- 오더 라인을 취소하면 새 오더 총계 및 환불 상세내역과 함께 메시지가 표시됩니다.
- 금액이 청구되면 정확한 환불 금액이 표시됩니다.
- 환불 금액이 승인되면 승인된 금액이 곧 취소됩니다. 메시지에 정확한 승인된 환불 금액이 표시되지 않습니다.
- 금액이 청구되고 승인된 경우 정확한 환불 금액이 표시되고 승인된 금액은 곧 취소됩니다.
- 비용이 청구되었지만 승인되지 않은 금액의 지불 또는 환불이 저장된 주문에 대해 보류 중인 경우 경고 메시지가 표시됩니다.
- 변경사항을 저장하면
processOrderPaymentsAPI를 사용하여 백그라운드에서 환불도 처리됩니다. 주문 편집 페이지에 환불 정보 요약과 함께 확인 메시지가 표시됩니다.processOrderPaymentsAPI가 실패하면 재시도 옵션과 함께 오류 메시지가 표시됩니다. 재시도를 클릭하면processOrderPaymentsAPI가 호출됩니다. API가 반복적으로 실패하는 경우 오더 요약정보 페이지로 이동할 수 있는 옵션이 있습니다. 그런 다음 주문을 다시 편집하여 재시도할 수 있습니다. 그렇지 않으면 일정 시간 후에 환불이 자동으로 처리됩니다.