Oracle® Retail Merchandising Foundation Cloud Service Operations Guide Volume 2 - Message Publication and Subscription Designs Release 16.0.028 E97817-01 |
|
![]() Previous |
![]() Next |
This chapter gives an overview about the SOAP Web service Consumer Implementation API designs used in the RMS environment and various functional attributes used in the APIs.
This section describes the GA account validation service.
RMS holds the general ledger chart of account (GLCOA) information in the FIF_GL_ACCT table. A chart of account is essentially the financial application's debit and credit account segments (for example, company, cost center, account, and so on) that apply to the RMS product hierarchy. In some financial applications, this is known as code combination IDs (CCID). The GL Cross Reference form is then used to associate the appropriate department, class, subclass, and location data to a CCID and to populate that data to the GL_FIF_CROSS_REF table.
From RMS's GL Cross Reference form, RMS invokes a GL Account Validation Web service to validate the general ledger chart of accounts information against an external financial application. The segments like department, class, subclass and location cross reference to a CCID can only be established if the account is valid for the same segment combination in financial application.
This document describes the GL Account Validation Web service integration between RMS and an external financial application. In this integration context, RMS acts as the service consumer that invokes a Web service hosted by an external financial application.
The process flow for the Web service API.
Filename: rmsaiapub_coavals/b.pls
ACC_VALIDATE_API.VALIDATE_ACC (O_error_message OUT RTK_ERRORS.RTK_TEXT%TYPE, O_acc_val_rec IN OUT ACC_VALIDATE_API.ACC_VALIDATE_TBL) RETURN BOOLEAN;
This function validates the segments, set_of_book_id and ccid combination in the input collection. It invokes AIA_WEBSERVICE_SQL.VALIDATE_ACCOUNT to do that.
Filename: rmsaiapub_dbcoawebss/b.pls
VALIDATE_ACCOUNT (O_error_message IN OUT RTK_ERRORS.RTK_TEXT%TYPE, O_requesting_system IN OUT VARCHAR2, O_set_of_books_id IN OUT ORG_UNIT.SET_OF_BOOKS_ID%TYPE, O_ccid IN OUT FIF_GL_CROSS_REF.DR_CCID%TYPE, O_segment1 IN OUT FIF_GL_CROSS_REF.DR_SEQUENCE1%TYPE, O_segment2 IN OUT FIF_GL_CROSS_REF.DR_SEQUENCE1%TYPE, O_segment3 IN OUT FIF_GL_CROSS_REF.DR_SEQUENCE1%TYPE, O_segment4 IN OUT FIF_GL_CROSS_REF.DR_SEQUENCE1%TYPE, O_segment5 IN OUT FIF_GL_CROSS_REF.DR_SEQUENCE1%TYPE, O_segment6 IN OUT FIF_GL_CROSS_REF.DR_SEQUENCE1%TYPE, O_segment7 IN OUT FIF_GL_CROSS_REF.DR_SEQUENCE1%TYPE, O_segment8 IN OUT FIF_GL_CROSS_REF.DR_SEQUENCE1%TYPE, O_segment9 IN OUT FIF_GL_CROSS_REF.DR_SEQUENCE1%TYPE, O_segment10 IN OUT FIF_GL_CROSS_REF.DR_SEQUENCE1%TYPE, O_segment11 IN OUT FIF_GL_CROSS_REF.DR_SEQUENCE1%TYPE, O_segment12 IN OUT FIF_GL_CROSS_REF.DR_SEQUENCE1%TYPE, O_segment13 IN OUT FIF_GL_CROSS_REF.DR_SEQUENCE1%TYPE, O_segment14 IN OUT FIF_GL_CROSS_REF.DR_SEQUENCE1%TYPE, O_segment15 IN OUT FIF_GL_CROSS_REF.DR_SEQUENCE1%TYPE, O_segment16 IN OUT FIF_GL_CROSS_REF.DR_SEQUENCE1%TYPE, O_segment17 IN OUT FIF_GL_CROSS_REF.DR_SEQUENCE1%TYPE, O_segment18 IN OUT FIF_GL_CROSS_REF.DR_SEQUENCE1%TYPE, O_segment19 IN OUT FIF_GL_CROSS_REF.DR_SEQUENCE1%TYPE, O_segment20 IN OUT FIF_GL_CROSS_REF.DR_SEQUENCE1%TYPE, O_account_status IN OUT VARCHAR2, I_requesting_system IN VARCHAR2, I_set_of_books_id IN ORG_UNIT.SET_OF_BOOKS_ID%TYPE, I_ccid IN FIF_GL_CROSS_REF.DR_CCID%TYPE, I_segment1 IN FIF_GL_CROSS_REF.DR_SEQUENCE1%TYPE, I_segment2 IN FIF_GL_CROSS_REF.DR_SEQUENCE1%TYPE, I_segment3 IN FIF_GL_CROSS_REF.DR_SEQUENCE1%TYPE, I_segment4 IN FIF_GL_CROSS_REF.DR_SEQUENCE1%TYPE, I_segment5 IN FIF_GL_CROSS_REF.DR_SEQUENCE1%TYPE, I_segment6 IN FIF_GL_CROSS_REF.DR_SEQUENCE1%TYPE, I_segment7 IN FIF_GL_CROSS_REF.DR_SEQUENCE1%TYPE, I_segment8 IN FIF_GL_CROSS_REF.DR_SEQUENCE1%TYPE, I_segment9 IN FIF_GL_CROSS_REF.DR_SEQUENCE1%TYPE, I_segment10 IN FIF_GL_CROSS_REF.DR_SEQUENCE1%TYPE, I_segment11 IN FIF_GL_CROSS_REF.DR_SEQUENCE1%TYPE, I_segment12 IN FIF_GL_CROSS_REF.DR_SEQUENCE1%TYPE, I_segment13 IN FIF_GL_CROSS_REF.DR_SEQUENCE1%TYPE, I_segment14 IN FIF_GL_CROSS_REF.DR_SEQUENCE1%TYPE, I_segment15 IN FIF_GL_CROSS_REF.DR_SEQUENCE1%TYPE, I_segment16 IN FIF_GL_CROSS_REF.DR_SEQUENCE1%TYPE, I_segment17 IN FIF_GL_CROSS_REF.DR_SEQUENCE1%TYPE, I_segment18 IN FIF_GL_CROSS_REF.DR_SEQUENCE1%TYPE, I_segment19 IN FIF_GL_CROSS_REF.DR_SEQUENCE1%TYPE, I_segment20 IN FIF_GL_CROSS_REF.DR_SEQUENCE1%TYPE) RETURN BOOLEAN;
This function validates the segments, set_of_book_id and ccid combination in the input. It invokes the RSE generated service contract as defined in the GlAccountValidationServiceCons package to make a secure Web service call.
The service function that validates the account (validateGlAccount takes an OBJ_GLACCTCOLDESC as the input and returns OBJ_GLACCTCOLREF as the output. The structure of the objects is also defined in the service contract.
This section describes the Customer Order Address service.
The primary role of this service is to query customer/shipping address details related to a customer order.
This section describes the Query Customer Order Address service.
This query service is used to retrieve customer/shipping address details from an endpoint such as an Order Management System (for example, Oracle OMS). It accepts a customer order number, fulfillment order number, fulfillment location, and source location, and returns customer/shipping address details related to the customer order.
In RMS, this service is only utilized if the Persist Customer Data system option is set to ’N'. The retrieved data will be displayed in the Order Customer screen. No update will be made to the ORDCUST table.
RMS acts as the consumer of the service provided by an Order Management System. Integration between RMS and Oracle OMS is NOT provided out-of-the-box at this point.
Parameter Name | Required | Description | Valid Values |
---|---|---|---|
customer_order_no | Yes | Unique customer order number | NA |
fulfill_order_no | Yes | Unique order number from an endpoint related to the fulfillment details | NA |
fulfill_loc_type | Yes | Indicates the fulfillment location type. | NA |
fulfill_loc_id | Yes | Indicates the store or warehouse number associated with fulfilling the customer order. | NA |
source_loc_type | No | Indicates the source location type. | NA |
source_loc_id | No | Indicates the location number associated with sourcing the customer order. | NA |
customer_no
deliver_first_name
deliver_phonetic_first
deliver_last_name
deliver_phonetic_last
deliver_preferred_name
deliver_company_name
deliver_add1
deliver_add2
deliver_add3
deliver_county
deliver_city
deliver_state
deliver_country_id
deliver_post
deliver_jurisdiction
deliver_phone
deliver_email
bill_first_name
bill_phonetic_first
bill_last_name
bill_phonetic_last
bill_preferred_name
bill_company_name
bill_add1
bill_add2
bill_add3
bill_county
bill_city
bill_state
bill_country_id
bill_post
bill_jurisdiction
bill_phone
bill_email
Filename: omswebsvcb/s.pls
Package Name: OMS_WEBSERVICE_SQL
GET_CUSTOMER_ORDER_ADDRESS(O_error_message IN OUT VARCHAR2, O_customer_no IN OUT VARCHAR2, O_deliver_first_name IN OUT VARCHAR2, O_deliver_phonetic_first IN OUT VARCHAR2, O_deliver_last_name IN OUT VARCHAR2, O_deliver_phonetic_last IN OUT VARCHAR2, O_deliver_preferred_name IN OUT VARCHAR2, O_deliver_company_name IN OUT VARCHAR2, O_deliver_add1 IN OUT VARCHAR2, O_deliver_add2 IN OUT VARCHAR2, O_deliver_add3 IN OUT VARCHAR2, O_deliver_county IN OUT VARCHAR2, O_deliver_city IN OUT VARCHAR2, O_deliver_state IN OUT VARCHAR2, O_deliver_country_id IN OUT VARCHAR2, O_deliver_post IN OUT VARCHAR2, O_deliver_jurisdiction IN OUT VARCHAR2, O_deliver_phone IN OUT VARCHAR2, O_deliver_email IN OUT VARCHAR2, O_bill_first_name IN OUT VARCHAR2, O_bill_phonetic_first IN OUT VARCHAR2, O_bill_last_name IN OUT VARCHAR2, O_bill_phonetic_last IN OUT VARCHAR2, O_bill_preferred_name IN OUT VARCHAR2, O_bill_company_name IN OUT VARCHAR2, O_bill_add1 IN OUT VARCHAR2, O_bill_add2 IN OUT VARCHAR2, O_bill_add3 IN OUT VARCHAR2, O_bill_county IN OUT VARCHAR2, O_bill_city IN OUT VARCHAR2, O_bill_state IN OUT VARCHAR2, O_bill_country_id IN OUT VARCHAR2, O_bill_post IN OUT VARCHAR2, O_bill_jurisdiction IN OUT VARCHAR2, O_bill_phone IN OUT VARCHAR2, O_bill_email IN OUT VARCHAR2, I_customer_order_no IN VARCHAR2, I_fulfill_order_no IN VARCHAR2, I_source_loc_type IN VARCHAR2, I_source_loc_id IN NUMBER, I_fulfill_loc_type IN VARCHAR2, I_fulfill_loc_id IN NUMBER)
This function begins by fetching service URL details found in RETAIL_SERVICE_REPORT_URL table where the RS_CODE is equal to 'COA'.
The CustomerOrderAddressServiceCon system properties for secure service call are set. Then the CustomerOrderAddressServiceCon.queryCustomerOrderAddress () function is called to retrieve the customer order address details.
This section describes the Customer Address service.
The primary role of this service is to query customer address details related to a ReSA transaction.
This section describes the Retrieve Customer service.
This query service is used to retrieve customer address details from an endpoint such as a Customer Engagement System (for example, Oracle RCE). It accepts a transaction customer ID as the input, and returns customer address details related to the customer.
In ReSA, this service is only utilized if the Persist Customer Data system option is set to ’N'. The retrieved data will be displayed in the ReSA Transaction Customer screen. No update will be made to the SA_CUSTOMER table.
ReSA acts as the consumer of the service provided by a Customer Engagement System. Integration between ReSA and Oracle RCE is NOT provided out-of-the-box at this point.
Parameter Name | Required | Description | Valid Values |
---|---|---|---|
customer_id | Yes | The unique identifier for a customer. | NA |
first_name
last_name
company_name
add1
add2
add3
county
city
state
country_id
post
jurisdiction
phone
birthdate
Filename: rcewebsvcb/s.pls
Package Name: RCE_WEBSERVICE_SQL
GET_CUSTOMER_ADDRESS(O_error_message IN OUT VARCHAR2, O_first_name IN OUT VARCHAR2, O_last_name IN OUT VARCHAR2, O_company_name IN OUT VARCHAR2, O_add1 IN OUT VARCHAR2, O_add2 IN OUT VARCHAR2, O_add3 IN OUT VARCHAR2, O_county IN OUT VARCHAR2, O_city IN OUT VARCHAR2, O_state IN OUT VARCHAR2, O_country_id IN OUT VARCHAR2, O_post IN OUT VARCHAR2, O_jurisdiction IN OUT VARCHAR2, O_phone IN OUT VARCHAR2, O_email IN OUT VARCHAR2, O_birthdate IN OUT DATE, I_customer_id IN VARCHAR2)
This function begins by fetching service URL details found in the RETAIL_SERVICE_REPORT_URL table where the RS_CODE is equal to 'CAS'.
The CustomerServiceConsumer system properties for secure service call are set. Then the CustomerServiceConsumer.retrieveCustomer() function is called to retrieve the customer address details.
This section describes the Transfer Management API.
In addition to RIB (please see Transfer Subscription API), RMS also exposes a Transfer Management web service to allow an external application to create, update, and delete transfers in RMS. The web service takes in a collection of transfers and will return success and failure through the service response object.
For a web service deployment, the 'Transfer Management' service with supported operations is available for an external system to send Transfer requests to RMS. Each supported operation will invoke the public interfaces in the TransferManagementService package as follows:
createXTsfColDesc
createDetail
modifyHeader
modifyDetail
deleteHeader
deleteDetail
These public interfaces will call the corresponding procedures in svcprov_xtsf, which will in turn call rmssub_xtsf.consume to do the major processing logic.
Procedures called from Transfer web service public interfaces in the TransferManagementService package to perform major processing.
If error happens, it calls SVCPROV_UTLITY.BUILD_SERVICE_OP_STATUS to build and return "RIB_ServiceOpStatus_REC"with a failure message; if no errors, it builds and returns "RIB_InvocationSuccess_REC" with a success message.
Here are the filenames that correspond with each message type. Please consult the RIB documentation for each message type in order to get a detailed picture of the composition of each message.
Message Types | Message Type Description | XML Schema Definition (XSD) |
---|---|---|
createXTsfColDesc | Create Transfer Service Operation | XTsfColDesc.xsd |
createDetail | Create Transfer Detail Service Operation | XTsfColDesc.xsd |
modifyHeader | Modify Transfer Service Operation | XTsfColDesc.xsd |
modifyDetail | Modify Transfer Detail Service Operation | XTsfColDesc.xsd |
deleteHeader | Delete Transfer Service Operation | XTsfColRef.xsd |
deleteDetail | Delete Transfer Detail Service Operation | XTsfColRef.xsd |