26: l_loop_index_1 NUMBER ;
27: BEGIN
28: x_error_code := 0 ;
29: x_error_message := NULL ;
30: XNP_XML_UTILS.initialize_doc ( ) ;
31: /*construct the XML header */
32: /* retreive the next message ID */
33: XNP_MESSAGE.get_sequence ( l_msg_header.message_id ) ;
34: IF (p_reference_id IS NULL) THEN
37: l_msg_header.reference_id := p_reference_id ;
38:
39: END IF ;
40: /* append header parameters to make header */
41: XNP_XML_UTILS.write_element ( 'MESSAGE_ID',l_msg_header.message_id ) ;
42: XNP_XML_UTILS.write_leaf_element ( 'REFERENCE_ID',l_msg_header.reference_id ) ;
43:
44: l_msg_header.opp_reference_id := p_opp_reference_id ;
45: XNP_XML_UTILS.write_leaf_element ( 'OPP_REFERENCE_ID',l_msg_header.opp_reference_id ) ;
38:
39: END IF ;
40: /* append header parameters to make header */
41: XNP_XML_UTILS.write_element ( 'MESSAGE_ID',l_msg_header.message_id ) ;
42: XNP_XML_UTILS.write_leaf_element ( 'REFERENCE_ID',l_msg_header.reference_id ) ;
43:
44: l_msg_header.opp_reference_id := p_opp_reference_id ;
45: XNP_XML_UTILS.write_leaf_element ( 'OPP_REFERENCE_ID',l_msg_header.opp_reference_id ) ;
46:
41: XNP_XML_UTILS.write_element ( 'MESSAGE_ID',l_msg_header.message_id ) ;
42: XNP_XML_UTILS.write_leaf_element ( 'REFERENCE_ID',l_msg_header.reference_id ) ;
43:
44: l_msg_header.opp_reference_id := p_opp_reference_id ;
45: XNP_XML_UTILS.write_leaf_element ( 'OPP_REFERENCE_ID',l_msg_header.opp_reference_id ) ;
46:
47: l_msg_header.message_code := 'XDP_LINE_DONE' ;
48: XNP_XML_UTILS.write_leaf_element ( 'MESSAGE_CODE',l_msg_header.message_code ) ;
49: l_msg_header.version := p_version ;
44: l_msg_header.opp_reference_id := p_opp_reference_id ;
45: XNP_XML_UTILS.write_leaf_element ( 'OPP_REFERENCE_ID',l_msg_header.opp_reference_id ) ;
46:
47: l_msg_header.message_code := 'XDP_LINE_DONE' ;
48: XNP_XML_UTILS.write_leaf_element ( 'MESSAGE_CODE',l_msg_header.message_code ) ;
49: l_msg_header.version := p_version ;
50: XNP_XML_UTILS.write_leaf_element ( 'VERSION',l_msg_header.version ) ;
51: l_msg_header.creation_date := SYSDATE ;
52: l_msg_header.recipient_name := p_recipient_list ;
46:
47: l_msg_header.message_code := 'XDP_LINE_DONE' ;
48: XNP_XML_UTILS.write_leaf_element ( 'MESSAGE_CODE',l_msg_header.message_code ) ;
49: l_msg_header.version := p_version ;
50: XNP_XML_UTILS.write_leaf_element ( 'VERSION',l_msg_header.version ) ;
51: l_msg_header.creation_date := SYSDATE ;
52: l_msg_header.recipient_name := p_recipient_list ;
53: XNP_XML_UTILS.write_element ( 'CREATION_DATE',l_msg_header.creation_date ) ;
54: l_msg_header.sender_name := p_sender_name ;
49: l_msg_header.version := p_version ;
50: XNP_XML_UTILS.write_leaf_element ( 'VERSION',l_msg_header.version ) ;
51: l_msg_header.creation_date := SYSDATE ;
52: l_msg_header.recipient_name := p_recipient_list ;
53: XNP_XML_UTILS.write_element ( 'CREATION_DATE',l_msg_header.creation_date ) ;
54: l_msg_header.sender_name := p_sender_name ;
55: XNP_XML_UTILS.write_leaf_element ( 'SENDER_NAME',l_msg_header.sender_name ) ;
56: XNP_XML_UTILS.write_leaf_element ( 'RECIPIENT_NAME',l_msg_header.recipient_name ) ;
57:
51: l_msg_header.creation_date := SYSDATE ;
52: l_msg_header.recipient_name := p_recipient_list ;
53: XNP_XML_UTILS.write_element ( 'CREATION_DATE',l_msg_header.creation_date ) ;
54: l_msg_header.sender_name := p_sender_name ;
55: XNP_XML_UTILS.write_leaf_element ( 'SENDER_NAME',l_msg_header.sender_name ) ;
56: XNP_XML_UTILS.write_leaf_element ( 'RECIPIENT_NAME',l_msg_header.recipient_name ) ;
57:
58: l_msg_header.direction_indr := 'E' ;
59: l_msg_header.order_id := p_order_id ;
52: l_msg_header.recipient_name := p_recipient_list ;
53: XNP_XML_UTILS.write_element ( 'CREATION_DATE',l_msg_header.creation_date ) ;
54: l_msg_header.sender_name := p_sender_name ;
55: XNP_XML_UTILS.write_leaf_element ( 'SENDER_NAME',l_msg_header.sender_name ) ;
56: XNP_XML_UTILS.write_leaf_element ( 'RECIPIENT_NAME',l_msg_header.recipient_name ) ;
57:
58: l_msg_header.direction_indr := 'E' ;
59: l_msg_header.order_id := p_order_id ;
60:
59: l_msg_header.order_id := p_order_id ;
60:
61: l_msg_header.wi_instance_id := p_wi_instance_id ;
62: l_msg_header.fa_instance_id := p_fa_instance_id ;
63: XNP_XML_UTILS.write_leaf_element ( 'LINE_ITEM_ID', XNP$LINE_ITEM_ID );
64: /* retreieve the XML header */
65: XNP_XML_UTILS.get_document ( l_xml_header ) ;
66: /* append the XML headerto message */
67: XNP_XML_UTILS.initialize_doc ( ) ;
61: l_msg_header.wi_instance_id := p_wi_instance_id ;
62: l_msg_header.fa_instance_id := p_fa_instance_id ;
63: XNP_XML_UTILS.write_leaf_element ( 'LINE_ITEM_ID', XNP$LINE_ITEM_ID );
64: /* retreieve the XML header */
65: XNP_XML_UTILS.get_document ( l_xml_header ) ;
66: /* append the XML headerto message */
67: XNP_XML_UTILS.initialize_doc ( ) ;
68: XNP_XML_UTILS.xml_decl ;
69: XNP_XML_UTILS.begin_segment ( 'MESSAGE') ;
63: XNP_XML_UTILS.write_leaf_element ( 'LINE_ITEM_ID', XNP$LINE_ITEM_ID );
64: /* retreieve the XML header */
65: XNP_XML_UTILS.get_document ( l_xml_header ) ;
66: /* append the XML headerto message */
67: XNP_XML_UTILS.initialize_doc ( ) ;
68: XNP_XML_UTILS.xml_decl ;
69: XNP_XML_UTILS.begin_segment ( 'MESSAGE') ;
70: XNP_XML_UTILS.write_element( 'HEADER', l_xml_header );
71: /* construct the message body */
64: /* retreieve the XML header */
65: XNP_XML_UTILS.get_document ( l_xml_header ) ;
66: /* append the XML headerto message */
67: XNP_XML_UTILS.initialize_doc ( ) ;
68: XNP_XML_UTILS.xml_decl ;
69: XNP_XML_UTILS.begin_segment ( 'MESSAGE') ;
70: XNP_XML_UTILS.write_element( 'HEADER', l_xml_header );
71: /* construct the message body */
72: XNP_XML_UTILS.begin_segment ( 'XDP_LINE_DONE' ) ;
65: XNP_XML_UTILS.get_document ( l_xml_header ) ;
66: /* append the XML headerto message */
67: XNP_XML_UTILS.initialize_doc ( ) ;
68: XNP_XML_UTILS.xml_decl ;
69: XNP_XML_UTILS.begin_segment ( 'MESSAGE') ;
70: XNP_XML_UTILS.write_element( 'HEADER', l_xml_header );
71: /* construct the message body */
72: XNP_XML_UTILS.begin_segment ( 'XDP_LINE_DONE' ) ;
73: l_loop_index_1 := 0 ;
66: /* append the XML headerto message */
67: XNP_XML_UTILS.initialize_doc ( ) ;
68: XNP_XML_UTILS.xml_decl ;
69: XNP_XML_UTILS.begin_segment ( 'MESSAGE') ;
70: XNP_XML_UTILS.write_element( 'HEADER', l_xml_header );
71: /* construct the message body */
72: XNP_XML_UTILS.begin_segment ( 'XDP_LINE_DONE' ) ;
73: l_loop_index_1 := 0 ;
74:
68: XNP_XML_UTILS.xml_decl ;
69: XNP_XML_UTILS.begin_segment ( 'MESSAGE') ;
70: XNP_XML_UTILS.write_element( 'HEADER', l_xml_header );
71: /* construct the message body */
72: XNP_XML_UTILS.begin_segment ( 'XDP_LINE_DONE' ) ;
73: l_loop_index_1 := 0 ;
74:
75: FOR XNP$XDP_LINE_DONE IN (SELECT ORDER_ID,
76: LINE_ITEM_ID,
85: x_error_message := fnd_message.get ;
86: RAISE e_MISSING_MANDATORY_DATA ;
87: END IF ;
88:
89: XNP_XML_UTILS.write_leaf_element ( 'ORDER_ID', XNP$XDP_LINE_DONE.ORDER_ID ) ;
90:
91: IF ( XNP$LINE_ITEM_ID IS NULL) THEN
92: x_error_message :='Missing Mandatory Attribute - LINE_ITEM_ID' ;
93: fnd_message.set_name('XNP','XNP_MISSING_MANDATORY_ATTR');
94: fnd_message.set_token('ATTRIBUTE','LINE_ITEM_ID' ) ;
95: x_error_message := fnd_message.get ;
96: RAISE e_MISSING_MANDATORY_DATA ;
97: END IF ;
98: XNP_XML_UTILS.write_leaf_element ( 'LINE_ITEM_ID', XNP$LINE_ITEM_ID ) ;
99: XNP_XML_UTILS.write_leaf_element ( 'LINE_ITEM_STATUS', XNP$XDP_LINE_DONE.STATUS_CODE ) ;
100: XNP_XML_UTILS.write_leaf_element ( 'SDP_RESULT_CODE', XNP$XDP_LINE_DONE.STATUS_CODE ) ;
101:
102: EXIT ;
95: x_error_message := fnd_message.get ;
96: RAISE e_MISSING_MANDATORY_DATA ;
97: END IF ;
98: XNP_XML_UTILS.write_leaf_element ( 'LINE_ITEM_ID', XNP$LINE_ITEM_ID ) ;
99: XNP_XML_UTILS.write_leaf_element ( 'LINE_ITEM_STATUS', XNP$XDP_LINE_DONE.STATUS_CODE ) ;
100: XNP_XML_UTILS.write_leaf_element ( 'SDP_RESULT_CODE', XNP$XDP_LINE_DONE.STATUS_CODE ) ;
101:
102: EXIT ;
103: END LOOP ;
96: RAISE e_MISSING_MANDATORY_DATA ;
97: END IF ;
98: XNP_XML_UTILS.write_leaf_element ( 'LINE_ITEM_ID', XNP$LINE_ITEM_ID ) ;
99: XNP_XML_UTILS.write_leaf_element ( 'LINE_ITEM_STATUS', XNP$XDP_LINE_DONE.STATUS_CODE ) ;
100: XNP_XML_UTILS.write_leaf_element ( 'SDP_RESULT_CODE', XNP$XDP_LINE_DONE.STATUS_CODE ) ;
101:
102: EXIT ;
103: END LOOP ;
104: IF ( l_loop_index_1 = 0 ) THEN
106: fnd_message.set_token( 'ELEMENT',', ORDER_ID, LINE_ITEM_ID' ) ;
107: x_error_message := fnd_message.get ;
108: RAISE e_MISSING_MANDATORY_DATA ;
109: END IF ;
110: XNP_XML_UTILS.end_segment ( 'XDP_LINE_DONE' ) ;
111:
112: XNP_XML_UTILS.end_segment ( 'MESSAGE') ;
113: XNP_XML_UTILS.get_document( l_xml_doc ) ;
114: /* assign the header and msg text to output parameters */
108: RAISE e_MISSING_MANDATORY_DATA ;
109: END IF ;
110: XNP_XML_UTILS.end_segment ( 'XDP_LINE_DONE' ) ;
111:
112: XNP_XML_UTILS.end_segment ( 'MESSAGE') ;
113: XNP_XML_UTILS.get_document( l_xml_doc ) ;
114: /* assign the header and msg text to output parameters */
115: x_msg_header := l_msg_header ;
116: x_msg_text := l_xml_doc ;
109: END IF ;
110: XNP_XML_UTILS.end_segment ( 'XDP_LINE_DONE' ) ;
111:
112: XNP_XML_UTILS.end_segment ( 'MESSAGE') ;
113: XNP_XML_UTILS.get_document( l_xml_doc ) ;
114: /* assign the header and msg text to output parameters */
115: x_msg_header := l_msg_header ;
116: x_msg_text := l_xml_doc ;
117: /* handle exceptions */