| Author | Message | 
		
		  | ksrocks9 | 
			  
				|  Posted: Fri Apr 08, 2016 9:17 am    Post subject: Unable to copy NULL value from DFDL to XML attribute |   |  | 
		
		  | Apprentice
 
 
 Joined: 11 Mar 2015Posts: 35
 
 
 | 
			  
				| Hi 
 I created message model with a copybook, Mainframe is sending NULL values in some fields. That null values are not coping XML attributes(NULL value in the tag) to output root.
 
 Earlier I used message set for parsing. I am getting the output correctly.
 SET OutputRoot.XMLNSC.Shop.(XMLNSC.Attribute)Code = InputBody.Shopcode;
 
 Output is :
 <Exempt Code="">ABC</Exempt>
 
 I used the same copy book to create message model and getting same input message. I followed all the instructions in this document https://developer.ibm.com/integration/wp-content/uploads/sites/25/2015/02/IIB9000_MessageModeling_Lab2_COBOL.pdf
 
 
 SET OutputRoot.XMLNSC.Shop.(XMLNSC.Attribute)Code =  InputRoot.DFDL.Shop.Shopcode;
 
 I am getting out put like
 <Exempt>ABC</Exempt> (Missing XML attribute).
 
 How to copy that Null value to output.
 
 
 Thanks for your help in advance
  |  | 
		
		  | Back to top |  | 
		
		  |  | 
		
		  | timber | 
			  
				|  Posted: Fri Apr 08, 2016 2:31 pm    Post subject: |   |  | 
		
		  |  Grand Master
 
 
 Joined: 25 Aug 2015Posts: 1292
 
 
 | 
			  
				| I have given some clear advice in your other ( almost duplicate ) thread. Have you done those things? If not, why not? |  | 
		
		  | Back to top |  | 
		
		  |  | 
		
		  | ksrocks9 | 
			  
				|  Posted: Mon Apr 11, 2016 8:30 am    Post subject: |   |  | 
		
		  | Apprentice
 
 
 Joined: 11 Mar 2015Posts: 35
 
 
 | 
			  
				| I was unable to explain properly last time (Sorry for that) that's why I posted again. what you said was correct
 "I think this is what is happening:
 - The field reference InputRoot.DFDL.Shop.CODE does not exist in InputRoot, so it evaluates to NULL
 - The attribute is not created in OutputRoot.XMLNSC because ESQL cannot create an attribute from a non-existent field.
 "
 It's unable to create the XML attribute for non- exist FIELD.
 
 I am migrating flow from MB7 to IIB. In MB7 I used message set, with that, it's creating XML attribute. If I create message model with the same copybook I am getting this issue. How can I come out from this issue.
 
 Thanks for you help
  |  | 
		
		  | Back to top |  | 
		
		  |  | 
		
		  | joebuckeye | 
			  
				|  Posted: Mon Apr 11, 2016 10:58 am    Post subject: |   |  | 
		
		  |  Partisan
 
 
 Joined: 24 Aug 2007Posts: 365
 Location: Columbus, OH
 
 | 
			  
				| 
   
	| ksrocks9 wrote: |  
	| - The attribute is not created in OutputRoot.XMLNSC because ESQL cannot create an attribute from a non-existent field. 
 |  Not quite.  Setting any field to NULL in ESQL removes it from your outgoing message.
 
 COALESCE is your friend.
 |  | 
		
		  | Back to top |  | 
		
		  |  | 
		
		  | ksrocks9 | 
			  
				|  Posted: Wed Apr 13, 2016 8:08 am    Post subject: |   |  | 
		
		  | Apprentice
 
 
 Joined: 11 Mar 2015Posts: 35
 
 
 | 
			  
				| It was able to create the attribute with MRM parser. I used the same copybook and same input message. |  | 
		
		  | Back to top |  | 
		
		  |  | 
		
		  | ksrocks9 | 
			  
				|  Posted: Wed Apr 13, 2016 2:43 pm    Post subject: |   |  | 
		
		  | Apprentice
 
 
 Joined: 11 Mar 2015Posts: 35
 
 
 | 
			  
				| Thanks Joe. COALESCE worked for me. Thanks for your help. |  | 
		
		  | Back to top |  | 
		
		  |  | 
		
		  |  |