10/10
Submitting an Order
XML for Submitting an Order from the Test Center Interface
<FULFILL_SO_001>
<CNTRLAREA>
<BSR>
<VERB>FULFILL</VERB>
<NOUN>SO</NOUN>
<REVISION>001</REVISION>
</BSR>
</CNTROLAREA>
<DATAAREA>
<SOHEADER execmode = "ASYNC">
<ORDERNUM>RV_22004004</ORDERNUM>
<VERSION>1</VERSION>
<SCHEDULE>
<PRIORITY>100</PRIORITY>
<JEOPARDYENABLED>N</JEOPARDYENABLED>
</SCHEDULE>
<PARAM>
<PARAMNAME>FULFILLMENT_STATUS</PARAMNAME>
<PARAMVALUE>Open</PARAMVALUE>
</PARAM>
<PARAM>
<PARAMNAME>FULFILLMENT_RESULT</PARAMNAME>
<PARAMVALUE>Submitted</PARAMVALUE>
</PARAM>
<EXTENSION>
<ATTRIBUTE index = "1">Test</ATTRIBUTE>
<ATTRIBUTE index = "2">Test 2</ATTRIBUTE>
</EXTENSION>
</SOHEADER>
<SOLINEITEM fulfillrequired = "Y">
<LINENUM>1</LINENUM>
<ACTIONCODE>ADD</ACTIONCODE>
<SERVICE>
<ITEMNAME>SFM_NUM_PORT</ITEMNAME>
</SERVICE>
<ORGANIZATION>
<ORGID>204</ORGID>
</ORGANIZATION>
<IBINSTANCEID source = "NONE"/>
<SEQUENCE>2</SEQUENCE>
<SCHEDULE>
<PRIORITY>100</PRIORITY>
<JEOPARDYENABLED>N</JEOPARDYENABLED>
</SCHEDULE>
<PARAM>
<PARAMNAME>SP_NAME</PARAMNAME>
<PARAMVALUE>SUPERTEL1</PARAMVALUE>
</PARAM>
<PARAM>
<PARAMNAME>DONOR_SP_ID</PARAMNAME>
<PARAMVALUE>SUPERTEL2</PARAMVALUE>
</PARAM>
<PARAM>
<PARAMNAME>RECIPIENT_NAME</PARAMNAME>
<PARAMVALUE>SUPERTEL1</PARAMVALUE>
</PARAM>
<PARAM>
<PARAMNAME>RECIPIENT_SP_ID</PARAMNAME>
<PARAMVALUE>SUPERTEL1</PARAMVALUE>
</PARAM>
<PARAM>
<PARAMNAME>ROUTING_NUMBER</PARAMNAME>
<PARAMVALUE>2100</PARAMVALUE>
</PARAM>
<PARAM>
<PARAMNAME>STARTING_NUMBER</PARAMNAME>
<PARAMVALUE>22004004</PARAMVALUE>
</PARAM>
<PARAM>
<PARAMNAME>ENDING_NUMBER</PARAMNAME>
<PARAMVALUE>22004004</PARAMVALUE>
</PARAM>
</SOLINEITEM>
</DATAAREA>
</FULFILL_SO_001>
PL/SQL Script for Submitting an Order
--SET SERVEROUTPUT ON
UNDEFINE SUFFIX
UNDEFINE SUFFIX_TO
DECLARE
l_error_code NUMBER := NULL;
l_error_message VARCHAR(2000) := NULL;
l_ORDER_HEADER XDP_TYPES.ORDER_HEADER;
l_ORDER_PARAMETER_LIST XDP_TYPES.ORDER_PARAMETER_LIST;
l_ORDER_LINE_LIST XDP_TYPES.ORDER_LINE_LIST ;
l_PARAM_LIST XDP_TYPES.LINE_PARAM_LIST ;
l_ORDER_ID NUMBER := 0;
l_PORTING_ID NUMBER := 0;
l_porting_date date := SYSDATE;
l_can_porting_date varchar2(40) := NULL;
BEGIN
l_ERROR_CODE := 0;
SELECT XNP_SVA_ID_SEQ.NEXTVAL INTO l_PORTING_ID FROM DUAL;
-- Get the date to provision in the Canonical format
l_can_porting_date := XNP_UTILS.DATE_TO_CANONICAL(l_porting_date);
-- Set the Order Header values
l_ORDER_HEADER.order_number := ’SUP1_22&GROUP.6&SUFFIX’;
l_ORDER_HEADER.order_version := ’1’;
-- Set the number of Line items and number
-- them sequentially. In this case there is just one
l_ORDER_LINE_LIST(1).LINE_NUMBER := 1;
-- l_ORDER_LINE_LIST(1).provisioning_required_flag := ’Y’;
-- l_ORDER_LINE_LIST(1).PROVISIONING_DATE := SYSDATE;
-- Set the line item name as the Work Item name
-- l_ORDER_LINE_LIST(1).LINE_ITEM_NAME := ’SUP1_PORT_IN’;
l_ORDER_LINE_LIST(1).LINE_ITEM_NAME := ’PORTING_ORDER_FROM_
OMS’;
l_ORDER_LINE_LIST(1).IS_WORKITEM_FLAG := ’Y’;
-- Set all the parameters needed for the
-- porting inquiry Work Item
l_PARAM_LIST(1).line_number := 1;
l_PARAM_LIST(1).parameter_name := ’STARTING_NUMBER’;
l_PARAM_LIST(1).parameter_value := ’22&GROUP.6&SUFFIX’;
l_PARAM_LIST(2).line_number := 1;
l_PARAM_LIST(2).parameter_name := ’ENDING_NUMBER’;
l_PARAM_LIST(2).parameter_value := ’22&GROUP.6&SUFFIX_TO’;
l_PARAM_LIST(3).line_number := 1;
l_PARAM_LIST(3).parameter_name := ’CUSTOMER_ID’;
l_PARAM_LIST(3).parameter_value := ’CUST_&SUFFIX’;
l_PARAM_LIST(4).line_number := 1;
l_PARAM_LIST(4).parameter_name := ’NEW_SP_DUE_DATE’;
l_PARAM_LIST(4).parameter_value :=
XNP_UTILS.DATE_TO_CANONICAL(TRUNC(SYSDATE) + 0);
l_PARAM_LIST(5).line_number := 1;
l_PARAM_LIST(5).parameter_name := ’DONOR_SP_ID’;
l_PARAM_LIST(5).parameter_value := ’SUPERTEL2’; /* SuperTel 2 */
l_PARAM_LIST(6).line_number := 1;
l_PARAM_LIST(6).parameter_name := ’RECIPIENT_SP_ID’;
l_PARAM_LIST(6).parameter_value := ’SUPERTEL1’; /* SuperTel 1 */
-- Assign routing numbers belonging to the
-- recipient SP id only
l_PARAM_LIST(7).line_number := 1;
l_PARAM_LIST(7).parameter_name := ’ROUTING_NUMBER’;
l_PARAM_LIST(7).parameter_value := to_char(2100);
l_PARAM_LIST(8).line_number := 1;
l_PARAM_LIST(8).parameter_name := ’SP_NAME’;
l_PARAM_LIST(8).parameter_value := ’SUPERTEL1’;
l_PARAM_LIST(9).line_number := 1;
l_PARAM_LIST(9).parameter_name := ’PORTING_ID’;
l_PARAM_LIST(9).parameter_value := to_char(l_porting_id);
l_PARAM_LIST(10).line_number := 1;
l_PARAM_LIST(10).parameter_name := ’RV_FILENAME’;
l_PARAM_LIST(10).parameter_value := ’RVfile1’; /* SuperTel 1 */
l_PARAM_LIST(11).line_number := 1;
l_PARAM_LIST(11).parameter_name := ’PTO_FLAG’;
l_PARAM_LIST(11).parameter_value := ’N’; /* SuperTel 1 */
-- Invoke the API to submit this order
XDP_INTERFACES.PROCESS_ORDER
(l_ORDER_HEADER
,l_ORDER_PARAMETER_LIST
,l_ORDER_LINE_LIST
,l_PARAM_LIST
,l_ORDER_ID
,l_ERROR_CODE
,l_ERROR_MESSAGE
);
IF l_ERROR_CODE != 0
THEN
DBMS_OUTPUT.put_line(
’Error Code: ’||substr(to_char(l_error_code),1,400));
DBMS_OUTPUT.put_line(’Error Message: ’||substr(l_error_message,1,400));
RETURN;
ELSE
DBMS_OUTPUT.put_line(
’PROCESS_ORDER: SUCCESS: ORDER ID =
’||to_char(l_ORDER_ID));
END IF;
COMMIT;
END;
/