1

We have a Lawson Oracle Database Table called GLTRASREL, where we need to insert the values from the CSV file and this is taken care by the BizTalk Application. Certain fields in the Table is like

JRNL-BOOK-NBR Alpha 12 GL165 GL65.1 Element: Journal Book NThe journal book assigned to the IFLR.1 transaction.

So when I try pass nothing into this field it says "ORA-01400: cannot insert NULL into ("DEVLAW"."GLTRANSREL"."JRNL_BOOK_NBR")"

In mapping I tried to pass the 12 blank spaces using the Scripting Functoid like

 public string GetJournalBookNo()
 {
   return "            ";
 }

It again throws the same error. If I give 10 blankspaces with Single quotes (12chars total)like

    return '          ';

It inserts but like shown below

enter image description here

How should I be inserting blank spaces in to this field.

Tried enabling tracking to see what is being passed in to the Oracle DB, I see the blank spaces in the field but still throws error like. ORA-01400: cannot insert NULL into ("DEVLAW"."GLTRANSREL"."JRNL_BOOK_NBR")

enter image description here

trx
  • 2,077
  • 9
  • 48
  • 97
  • Are you using the WCF Oracle Adapter or the Lawson LOB Adapter? – Johns-305 Oct 28 '16 at 12:36
  • I am using WCF-Custom Adapter here – trx Oct 28 '16 at 13:38
  • 1
    With Message Tracking enabled, can you check the message that hit's the Adapter? Do you see the blanks? – Johns-305 Oct 28 '16 at 13:40
  • @Johns-305 I tried tracking enabled when I see the tracked messgaes i can see the blank spaces like I edited in the question – trx Oct 31 '16 at 18:49
  • And I presume if you put some actual character in there it works...this is unexpected. I've not experienced the adapter doing anything like a trim on it's own. – Johns-305 Oct 31 '16 at 19:42
  • Yes if we any characters it is working like we tried putting ' ' blanks spaces enclosed in single quotes. It inserts them. – trx Nov 01 '16 at 17:48
  • So, this is super weird. Can you try a non-breaking space? char 160? Be aware, that might break downstream components. – Johns-305 Nov 01 '16 at 18:09
  • how would I be passing the non-breaking space in the maps. I am sorry I am not getting you. – trx Nov 01 '16 at 19:43
  • you can try something like return " ".Replace(" ", "\u00A0"); The non-breaking space is a space character with a different value. – Johns-305 Nov 01 '16 at 20:25

0 Answers0