24: l_msg_header XNP_MESSAGE.MSG_HEADER_REC_TYPE ;
25: BEGIN
26: x_error_code := 0 ;
27: x_error_message := NULL ;
28: XNP_XML_UTILS.initialize_doc ( ) ;
29: /*construct the XML header */
30: /* retreive the next message ID */
31: XNP_MESSAGE.get_sequence ( l_msg_header.message_id ) ;
32: IF (p_reference_id IS NULL) THEN
34: ELSE
35: l_msg_header.reference_id := p_reference_id ;
36: END IF ;
37: /* append header parameters to make header */
38: XNP_XML_UTILS.write_element ( 'MESSAGE_ID',l_msg_header.message_id ) ;
39: XNP_XML_UTILS.write_leaf_element ( 'REFERENCE_ID',l_msg_header.reference_id ) ;
40: l_msg_header.opp_reference_id := p_opp_reference_id ;
41: XNP_XML_UTILS.write_leaf_element ( 'OPP_REFERENCE_ID',l_msg_header.opp_reference_id ) ;
42: l_msg_header.message_code := 'CSIEAMRR' ;
35: l_msg_header.reference_id := p_reference_id ;
36: END IF ;
37: /* append header parameters to make header */
38: XNP_XML_UTILS.write_element ( 'MESSAGE_ID',l_msg_header.message_id ) ;
39: XNP_XML_UTILS.write_leaf_element ( 'REFERENCE_ID',l_msg_header.reference_id ) ;
40: l_msg_header.opp_reference_id := p_opp_reference_id ;
41: XNP_XML_UTILS.write_leaf_element ( 'OPP_REFERENCE_ID',l_msg_header.opp_reference_id ) ;
42: l_msg_header.message_code := 'CSIEAMRR' ;
43: XNP_XML_UTILS.write_leaf_element ( 'MESSAGE_CODE',l_msg_header.message_code ) ;
37: /* append header parameters to make header */
38: XNP_XML_UTILS.write_element ( 'MESSAGE_ID',l_msg_header.message_id ) ;
39: XNP_XML_UTILS.write_leaf_element ( 'REFERENCE_ID',l_msg_header.reference_id ) ;
40: l_msg_header.opp_reference_id := p_opp_reference_id ;
41: XNP_XML_UTILS.write_leaf_element ( 'OPP_REFERENCE_ID',l_msg_header.opp_reference_id ) ;
42: l_msg_header.message_code := 'CSIEAMRR' ;
43: XNP_XML_UTILS.write_leaf_element ( 'MESSAGE_CODE',l_msg_header.message_code ) ;
44: l_msg_header.version := p_version ;
45: XNP_XML_UTILS.write_leaf_element ( 'VERSION',l_msg_header.version ) ;
39: XNP_XML_UTILS.write_leaf_element ( 'REFERENCE_ID',l_msg_header.reference_id ) ;
40: l_msg_header.opp_reference_id := p_opp_reference_id ;
41: XNP_XML_UTILS.write_leaf_element ( 'OPP_REFERENCE_ID',l_msg_header.opp_reference_id ) ;
42: l_msg_header.message_code := 'CSIEAMRR' ;
43: XNP_XML_UTILS.write_leaf_element ( 'MESSAGE_CODE',l_msg_header.message_code ) ;
44: l_msg_header.version := p_version ;
45: XNP_XML_UTILS.write_leaf_element ( 'VERSION',l_msg_header.version ) ;
46: l_msg_header.creation_date := SYSDATE ;
47: l_msg_header.recipient_name := p_recipient_list ;
41: XNP_XML_UTILS.write_leaf_element ( 'OPP_REFERENCE_ID',l_msg_header.opp_reference_id ) ;
42: l_msg_header.message_code := 'CSIEAMRR' ;
43: XNP_XML_UTILS.write_leaf_element ( 'MESSAGE_CODE',l_msg_header.message_code ) ;
44: l_msg_header.version := p_version ;
45: XNP_XML_UTILS.write_leaf_element ( 'VERSION',l_msg_header.version ) ;
46: l_msg_header.creation_date := SYSDATE ;
47: l_msg_header.recipient_name := p_recipient_list ;
48: XNP_XML_UTILS.write_element ( 'CREATION_DATE',l_msg_header.creation_date ) ;
49: l_msg_header.sender_name := p_sender_name ;
44: l_msg_header.version := p_version ;
45: XNP_XML_UTILS.write_leaf_element ( 'VERSION',l_msg_header.version ) ;
46: l_msg_header.creation_date := SYSDATE ;
47: l_msg_header.recipient_name := p_recipient_list ;
48: XNP_XML_UTILS.write_element ( 'CREATION_DATE',l_msg_header.creation_date ) ;
49: l_msg_header.sender_name := p_sender_name ;
50: XNP_XML_UTILS.write_leaf_element ( 'SENDER_NAME',l_msg_header.sender_name ) ;
51: XNP_XML_UTILS.write_leaf_element ( 'RECIPIENT_NAME',l_msg_header.recipient_name ) ;
52: l_msg_header.direction_indr := 'E' ;
46: l_msg_header.creation_date := SYSDATE ;
47: l_msg_header.recipient_name := p_recipient_list ;
48: XNP_XML_UTILS.write_element ( 'CREATION_DATE',l_msg_header.creation_date ) ;
49: l_msg_header.sender_name := p_sender_name ;
50: XNP_XML_UTILS.write_leaf_element ( 'SENDER_NAME',l_msg_header.sender_name ) ;
51: XNP_XML_UTILS.write_leaf_element ( 'RECIPIENT_NAME',l_msg_header.recipient_name ) ;
52: l_msg_header.direction_indr := 'E' ;
53: l_msg_header.order_id := p_order_id ;
54: l_msg_header.wi_instance_id := p_wi_instance_id ;
47: l_msg_header.recipient_name := p_recipient_list ;
48: XNP_XML_UTILS.write_element ( 'CREATION_DATE',l_msg_header.creation_date ) ;
49: l_msg_header.sender_name := p_sender_name ;
50: XNP_XML_UTILS.write_leaf_element ( 'SENDER_NAME',l_msg_header.sender_name ) ;
51: XNP_XML_UTILS.write_leaf_element ( 'RECIPIENT_NAME',l_msg_header.recipient_name ) ;
52: l_msg_header.direction_indr := 'E' ;
53: l_msg_header.order_id := p_order_id ;
54: l_msg_header.wi_instance_id := p_wi_instance_id ;
55: l_msg_header.fa_instance_id := p_fa_instance_id ;
52: l_msg_header.direction_indr := 'E' ;
53: l_msg_header.order_id := p_order_id ;
54: l_msg_header.wi_instance_id := p_wi_instance_id ;
55: l_msg_header.fa_instance_id := p_fa_instance_id ;
56: XNP_XML_UTILS.write_leaf_element ( 'INSTANCE_ID', XNP$INSTANCE_ID );
57: XNP_XML_UTILS.write_leaf_element ( 'ORGANIZATION_ID', XNP$ORGANIZATION_ID );
58: XNP_XML_UTILS.write_leaf_element ( 'WIP_ENTITY_ID', XNP$WIP_ENTITY_ID );
59: /* retreieve the XML header */
60: XNP_XML_UTILS.get_document ( l_xml_header ) ;
53: l_msg_header.order_id := p_order_id ;
54: l_msg_header.wi_instance_id := p_wi_instance_id ;
55: l_msg_header.fa_instance_id := p_fa_instance_id ;
56: XNP_XML_UTILS.write_leaf_element ( 'INSTANCE_ID', XNP$INSTANCE_ID );
57: XNP_XML_UTILS.write_leaf_element ( 'ORGANIZATION_ID', XNP$ORGANIZATION_ID );
58: XNP_XML_UTILS.write_leaf_element ( 'WIP_ENTITY_ID', XNP$WIP_ENTITY_ID );
59: /* retreieve the XML header */
60: XNP_XML_UTILS.get_document ( l_xml_header ) ;
61: /* append the XML headerto message */
54: l_msg_header.wi_instance_id := p_wi_instance_id ;
55: l_msg_header.fa_instance_id := p_fa_instance_id ;
56: XNP_XML_UTILS.write_leaf_element ( 'INSTANCE_ID', XNP$INSTANCE_ID );
57: XNP_XML_UTILS.write_leaf_element ( 'ORGANIZATION_ID', XNP$ORGANIZATION_ID );
58: XNP_XML_UTILS.write_leaf_element ( 'WIP_ENTITY_ID', XNP$WIP_ENTITY_ID );
59: /* retreieve the XML header */
60: XNP_XML_UTILS.get_document ( l_xml_header ) ;
61: /* append the XML headerto message */
62: XNP_XML_UTILS.initialize_doc ( ) ;
56: XNP_XML_UTILS.write_leaf_element ( 'INSTANCE_ID', XNP$INSTANCE_ID );
57: XNP_XML_UTILS.write_leaf_element ( 'ORGANIZATION_ID', XNP$ORGANIZATION_ID );
58: XNP_XML_UTILS.write_leaf_element ( 'WIP_ENTITY_ID', XNP$WIP_ENTITY_ID );
59: /* retreieve the XML header */
60: XNP_XML_UTILS.get_document ( l_xml_header ) ;
61: /* append the XML headerto message */
62: XNP_XML_UTILS.initialize_doc ( ) ;
63: XNP_XML_UTILS.xml_decl ;
64: XNP_XML_UTILS.begin_segment ( 'MESSAGE') ;
58: XNP_XML_UTILS.write_leaf_element ( 'WIP_ENTITY_ID', XNP$WIP_ENTITY_ID );
59: /* retreieve the XML header */
60: XNP_XML_UTILS.get_document ( l_xml_header ) ;
61: /* append the XML headerto message */
62: XNP_XML_UTILS.initialize_doc ( ) ;
63: XNP_XML_UTILS.xml_decl ;
64: XNP_XML_UTILS.begin_segment ( 'MESSAGE') ;
65: XNP_XML_UTILS.write_element( 'HEADER', l_xml_header );
66: /* construct the message body */
59: /* retreieve the XML header */
60: XNP_XML_UTILS.get_document ( l_xml_header ) ;
61: /* append the XML headerto message */
62: XNP_XML_UTILS.initialize_doc ( ) ;
63: XNP_XML_UTILS.xml_decl ;
64: XNP_XML_UTILS.begin_segment ( 'MESSAGE') ;
65: XNP_XML_UTILS.write_element( 'HEADER', l_xml_header );
66: /* construct the message body */
67: XNP_XML_UTILS.begin_segment ( 'CSIEAMRR' ) ;
60: XNP_XML_UTILS.get_document ( l_xml_header ) ;
61: /* append the XML headerto message */
62: XNP_XML_UTILS.initialize_doc ( ) ;
63: XNP_XML_UTILS.xml_decl ;
64: XNP_XML_UTILS.begin_segment ( 'MESSAGE') ;
65: XNP_XML_UTILS.write_element( 'HEADER', l_xml_header );
66: /* construct the message body */
67: XNP_XML_UTILS.begin_segment ( 'CSIEAMRR' ) ;
68: IF ( XNP$INSTANCE_ID IS NULL) THEN
61: /* append the XML headerto message */
62: XNP_XML_UTILS.initialize_doc ( ) ;
63: XNP_XML_UTILS.xml_decl ;
64: XNP_XML_UTILS.begin_segment ( 'MESSAGE') ;
65: XNP_XML_UTILS.write_element( 'HEADER', l_xml_header );
66: /* construct the message body */
67: XNP_XML_UTILS.begin_segment ( 'CSIEAMRR' ) ;
68: IF ( XNP$INSTANCE_ID IS NULL) THEN
69: x_error_message :='Missing Mandatory Attribute - INSTANCE_ID' ;
63: XNP_XML_UTILS.xml_decl ;
64: XNP_XML_UTILS.begin_segment ( 'MESSAGE') ;
65: XNP_XML_UTILS.write_element( 'HEADER', l_xml_header );
66: /* construct the message body */
67: XNP_XML_UTILS.begin_segment ( 'CSIEAMRR' ) ;
68: IF ( XNP$INSTANCE_ID IS NULL) THEN
69: x_error_message :='Missing Mandatory Attribute - INSTANCE_ID' ;
70: fnd_message.set_name('XNP','XNP_MISSING_MANDATORY_ATTR');
71: fnd_message.set_token('ATTRIBUTE','INSTANCE_ID' ) ;
71: fnd_message.set_token('ATTRIBUTE','INSTANCE_ID' ) ;
72: x_error_message := fnd_message.get ;
73: RAISE e_MISSING_MANDATORY_DATA ;
74: END IF ;
75: XNP_XML_UTILS.write_leaf_element ( 'INSTANCE_ID', XNP$INSTANCE_ID ) ;
76: IF ( XNP$WIP_ENTITY_ID IS NULL) THEN
77: x_error_message :='Missing Mandatory Attribute - WIP_ENTITY_ID' ;
78: fnd_message.set_name('XNP','XNP_MISSING_MANDATORY_ATTR');
79: fnd_message.set_token('ATTRIBUTE','WIP_ENTITY_ID' ) ;
79: fnd_message.set_token('ATTRIBUTE','WIP_ENTITY_ID' ) ;
80: x_error_message := fnd_message.get ;
81: RAISE e_MISSING_MANDATORY_DATA ;
82: END IF ;
83: XNP_XML_UTILS.write_leaf_element ( 'WIP_ENTITY_ID', XNP$WIP_ENTITY_ID ) ;
84: IF ( XNP$ORGANIZATION_ID IS NULL) THEN
85: x_error_message :='Missing Mandatory Attribute - ORGANIZATION_ID' ;
86: fnd_message.set_name('XNP','XNP_MISSING_MANDATORY_ATTR');
87: fnd_message.set_token('ATTRIBUTE','ORGANIZATION_ID' ) ;
87: fnd_message.set_token('ATTRIBUTE','ORGANIZATION_ID' ) ;
88: x_error_message := fnd_message.get ;
89: RAISE e_MISSING_MANDATORY_DATA ;
90: END IF ;
91: XNP_XML_UTILS.write_leaf_element ( 'ORGANIZATION_ID', XNP$ORGANIZATION_ID ) ;
92: XNP_XML_UTILS.end_segment ( 'CSIEAMRR' ) ;
93: XNP_XML_UTILS.end_segment ( 'MESSAGE') ;
94: XNP_XML_UTILS.get_document( l_xml_doc ) ;
95: /* assign the header and msg text to output parameters */
88: x_error_message := fnd_message.get ;
89: RAISE e_MISSING_MANDATORY_DATA ;
90: END IF ;
91: XNP_XML_UTILS.write_leaf_element ( 'ORGANIZATION_ID', XNP$ORGANIZATION_ID ) ;
92: XNP_XML_UTILS.end_segment ( 'CSIEAMRR' ) ;
93: XNP_XML_UTILS.end_segment ( 'MESSAGE') ;
94: XNP_XML_UTILS.get_document( l_xml_doc ) ;
95: /* assign the header and msg text to output parameters */
96: x_msg_header := l_msg_header ;
89: RAISE e_MISSING_MANDATORY_DATA ;
90: END IF ;
91: XNP_XML_UTILS.write_leaf_element ( 'ORGANIZATION_ID', XNP$ORGANIZATION_ID ) ;
92: XNP_XML_UTILS.end_segment ( 'CSIEAMRR' ) ;
93: XNP_XML_UTILS.end_segment ( 'MESSAGE') ;
94: XNP_XML_UTILS.get_document( l_xml_doc ) ;
95: /* assign the header and msg text to output parameters */
96: x_msg_header := l_msg_header ;
97: x_msg_text := l_xml_doc ;
90: END IF ;
91: XNP_XML_UTILS.write_leaf_element ( 'ORGANIZATION_ID', XNP$ORGANIZATION_ID ) ;
92: XNP_XML_UTILS.end_segment ( 'CSIEAMRR' ) ;
93: XNP_XML_UTILS.end_segment ( 'MESSAGE') ;
94: XNP_XML_UTILS.get_document( l_xml_doc ) ;
95: /* assign the header and msg text to output parameters */
96: x_msg_header := l_msg_header ;
97: x_msg_text := l_xml_doc ;
98: /* handle exceptions */
264: l_error_rec.source_type := l_txn_type;
265: l_error_rec.transaction_type_id := l_txn_type_id;
266: l_error_rec.message_id := p_msg_header.message_id;
267: l_error_rec.message_string := p_msg_text;
268: xnp_xml_utils.decode(
269: p_msg_text => p_msg_text, p_tag => 'WIP_ENTITY_ID', x_value => l_wip_entity_id);
270: IF l_wip_entity_id is null THEN
271: l_error_rec.error_text := 'xnp_xml_utils.decode failed. could not derive wip_entity_id.';
272: RAISE dpl_error;
267: l_error_rec.message_string := p_msg_text;
268: xnp_xml_utils.decode(
269: p_msg_text => p_msg_text, p_tag => 'WIP_ENTITY_ID', x_value => l_wip_entity_id);
270: IF l_wip_entity_id is null THEN
271: l_error_rec.error_text := 'xnp_xml_utils.decode failed. could not derive wip_entity_id.';
272: RAISE dpl_error;
273: END IF;
274: l_error_rec.source_id := l_wip_entity_id;
275: debug(' wip_entity_id : '||l_wip_entity_id);
272: RAISE dpl_error;
273: END IF;
274: l_error_rec.source_id := l_wip_entity_id;
275: debug(' wip_entity_id : '||l_wip_entity_id);
276: xnp_xml_utils.decode(
277: p_msg_text => p_msg_text, p_tag => 'ORGANIZATION_ID', x_value => l_org_id);
278: IF l_org_id is null THEN
279: l_error_rec.error_text := 'xnp_xml_utils.decode failed. could not derive organization_id.';
280: RAISE dpl_error;
275: debug(' wip_entity_id : '||l_wip_entity_id);
276: xnp_xml_utils.decode(
277: p_msg_text => p_msg_text, p_tag => 'ORGANIZATION_ID', x_value => l_org_id);
278: IF l_org_id is null THEN
279: l_error_rec.error_text := 'xnp_xml_utils.decode failed. could not derive organization_id.';
280: RAISE dpl_error;
281: END IF;
282: debug(' org_id : '||l_org_id);
283: xnp_xml_utils.decode(
279: l_error_rec.error_text := 'xnp_xml_utils.decode failed. could not derive organization_id.';
280: RAISE dpl_error;
281: END IF;
282: debug(' org_id : '||l_org_id);
283: xnp_xml_utils.decode(
284: p_msg_text => p_msg_text, p_tag => 'INSTANCE_ID', x_value => l_instance_id);
285: IF l_instance_id is null THEN
286: l_error_rec.error_text := 'xnp_xml_utils.decode failed. could not derive instance_id.';
287: RAISE dpl_error;
282: debug(' org_id : '||l_org_id);
283: xnp_xml_utils.decode(
284: p_msg_text => p_msg_text, p_tag => 'INSTANCE_ID', x_value => l_instance_id);
285: IF l_instance_id is null THEN
286: l_error_rec.error_text := 'xnp_xml_utils.decode failed. could not derive instance_id.';
287: RAISE dpl_error;
288: END IF;
289: l_error_rec.source_id := l_instance_id;
290: debug(' instance_id : '||l_instance_id);