none
if nodes are not mapped in positional flat file crlf is getting added

    Question

  • Hi All,

    I am having positional flat file schema, where very few fields are mapped as per requirement and remaining fields are blank or not mapped.

    for fields which are not mapped CRLF is getting added for every node.

    Please let me know why it is happpening. Thanks in Advance.


    Pooja Jagtap Software Engineer KPIT Cummins

    Thursday, July 18, 2013 2:31 PM

Answers

  • Finally Issue has been resolved by adding below statement to orchestration before sending out the message:

    xmlDoc.PreserveWhitespace = true;


    Pooja Jagtap Software Engineer KPIT Cummins

    • Marked as answer by Pooja Jagtap Wednesday, July 24, 2013 9:06 AM
    Wednesday, July 24, 2013 9:06 AM

All replies

  • If you mean blank lines, it's because the map is creating the Record element but none of the child nodes are getting populated.

    That, you'd have to fix in the Map.

    Thursday, July 18, 2013 5:32 PM
  • Are you trying to serialize a flat file (assembler) or parse a flat file (disassembler)?

    If you are trying to serialize a flat file from XML, you can use your map to eliminate the empty nodes.

    If you are trying to parse a flat file, you can try using the <Schema> node property "Suppress empty nodes" and set it to "Yes".


    David Downing... If this answers your question, please Mark as the Answer. If this post is helpful, please vote as helpful.

    Thursday, July 18, 2013 6:45 PM
  • Suppress emtpy node is already set to Yes, but still not working.

    Pooja Jagtap Software Engineer KPIT Cummins

    Friday, July 19, 2013 8:50 AM
  • Is this a receive or a send operation?
    Friday, July 19, 2013 1:14 PM
  • This is Send operation. for some of files it is working fine, for others it is failing.

    Specially for large files more than 3000kb it is failing.




    Pooja Jagtap Software Engineer KPIT Cummins

    Friday, July 19, 2013 1:17 PM
  • The "Suppress Empty Nodes" is a parsing annotation and has no effect when serializing from XML to flat file.  Can you elaborate on how it is failing?  Are you getting any errors?  Is it structuring the output flat file incorrectly?

    David Downing... If this answers your question, please Mark as the Answer. If this post is helpful, please vote as helpful.

    Friday, July 19, 2013 1:58 PM
  • It is not failing but file is not structuring properly. For nodes which are not mapped CRLF is getting displayed in output.

    Below is screenshot from output file:


    Pooja Jagtap Software Engineer KPIT Cummins

    Friday, July 19, 2013 2:12 PM
  • Can you repro this in Visual Studio?  Because there you can debug the xslt to maybe see why the inappropriate elements are getting created.

    First though, set the text output to Xml and see if empty Record elements are created.

    Friday, July 19, 2013 2:48 PM
  • I will try by debugging map. But empty records not created in XML output.

    In my map there is only one input schema and two Destination schemas are there, so i cant check it with native output format.


    Pooja Jagtap Software Engineer KPIT Cummins

    Friday, July 19, 2013 2:53 PM
  • The mapping may automatically generate required elements within a sequence... did you check to see if the nodes that are getting generated have a maxOccurs > 0?

    David Downing... If this answers your question, please Mark as the Answer. If this post is helpful, please vote as helpful.

    Friday, July 19, 2013 2:57 PM
  • MaxOccurs property is not set for individual node.

    There are four records under root node CLI,PRO,CLM and CCI. out of which only CLM is having minoccurs = 0 and Maxoccurs = 1, remaining all are set minoccurs = 0 and Maxoccurs = unbounded.


    Pooja Jagtap Software Engineer KPIT Cummins

    Friday, July 19, 2013 3:28 PM
  • If you send me your schema(s), map and test instance, I'll take a look.  Send them (zipped up) to my MSDN email at: ddownin@hotmail.com

    David Downing... If this answers your question, please Mark as the Answer. If this post is helpful, please vote as helpful.

    Friday, July 19, 2013 4:55 PM
  • Hi All,

    Above issue is Biztalk Legacywhitespace issue, which has been resolved before 6 months by doing below changes:

    1.  Open Registry Editor
    2.  Locate and then click the following registry subkey on an x86-based computer:
    • HKEY_LOCAL_MACHINE\Software\Microsoft\BizTalk Server\3.0\Administration
    For an x64-based computer, click the following registry subkeys:
    • HKEY_LOCAL_MACHINE\Software\Microsoft\BizTalk Server\3.0\Administration 
    • HKEY_LOCAL_MACHINE\Software\Wow6432Node\Microsoft\BizTalk Server\3.0\Administration 
    3.  Right-click and choose DWORD value. 
    4.  Type LegacyWhitespace for the value name and then double-click on it and set the Value data to 1.
    5.  Exit Registry Editor. 
    6.  Restart the BizTalk Host Instances on this machine

    but this change is not working now.

    What we can do to avoid this, LegacyWhitespace key is already there?


    Pooja Jagtap Software Engineer KPIT Cummins

    Tuesday, July 23, 2013 12:54 PM
  • Finally Issue has been resolved by adding below statement to orchestration before sending out the message:

    xmlDoc.PreserveWhitespace = true;


    Pooja Jagtap Software Engineer KPIT Cummins

    • Marked as answer by Pooja Jagtap Wednesday, July 24, 2013 9:06 AM
    Wednesday, July 24, 2013 9:06 AM