Focal Point Banner
Community Center Education Summit Technical Support User Groups
Let's Get Social!

Facebook Twitter LinkedIn YouTube
Focal Point    Focal Point Forums  Hop To Forum Categories  iWay Software Product Forum on Focal Point    Handling NULLS between PS and Oracle
Go
New
Search
Notify
Tools
Reply
  
Handling NULLS between PS and Oracle
 Login/Join
 
Platinum Member
posted
I am using iWay 5.3 to load an Oracle 9x table. The source data is a PeopleSoft 8.4 table (oracle database).

The problem I am experiencing is with the use of nulls. Both of my tables (source and target) are both defined with all columns as NOT NULL. We did this because of the PeopleSoft side of the equation.

Specifically, I am receiving the following error when loading the Oracle table:

(FOC1574) ASSIGNMENT OF A NULL VALUE TO A NOT NULL COLUMN IS NOT ALLOWED
: ORA-01400: cannot insert NULL into ("SCR_STG"."PCR_SCR_VSRC3"."NAME2")
(FOC1416) EXECUTE ERROR : PCR_SCR_VSRC3

On the PeopleSoft side, NAME2 contains a space (NOT A NULL). Because of this, I am confused as to why the column appears to have a NULL when I insert into the Oracle table.

To get this to work, I had to include the following on the NAME2 column:

IF NAME2 IS MISSING THEN '.' ELSE IF NAME2 EQ ' ' THEN '.' ELSE NAME2;

My question is why does this occur? In the Peoplesoft table the value of the NAME2 column contains a space (if no value is present). Why would the transformation take this to be a null?

Ken
 
Posts: 177 | Location: Calgary, Alberta, Canada | Registered: April 25, 2005Reply With QuoteReport This Post
Guru
posted Hide Post
 
Posts: 406 | Location: Canada | Registered: May 31, 2004Reply With QuoteReport This Post
Virtuoso
posted Hide Post
Ken,

Is your column PCR_SCR_VSRC3.NAME2 defined as CHAR or VARCHAR2 in Oracle?

I don't directly work with iWay 5.3 but I now about some issues it has when dealing with CHAR columns in Oracle .. somehow, if the field constains only spaces it's treated as empty (and thus converted to NULL) before sending it to Oracle, so when this one receives it what it gets is NULL and that would explain the error. Changing the data type to VARCHAR2 solved the problem (and provided some other significant advantages that VARCHAR2 has over CHAR in Oracle).

I don't know if that would be a problem in your case taking into account the interaction with PeopleSoft but it might be worth giving it a try.
 
Posts: 1533 | Registered: August 12, 2005Reply With QuoteReport This Post
Platinum Member
posted Hide Post
Interesting because my columns are defined as VARCHAR2 in Oracle.

Hmmmm.

A viable workaround for me right now is to define the columns as NULL. My main concern with with several Peoplesoft panels that would be used to update the tables and if the columns were defined to allow NULLS then how would PS react with it. However, this does not appear to be a problem with the PS panels as they display empty cells.

Your explanation on the conversion to nulls makes complete sense to me given the trials that I have performed. Thanks for the info! I definitely think this is more of an issue with Oracle.

Depending on future requirements, I may revisit this but I find it interesting that I cannot add a space to the Oracle columns.

Ken
 
Posts: 177 | Location: Calgary, Alberta, Canada | Registered: April 25, 2005Reply With QuoteReport This Post
<sandy_16>
posted
quote:
IF NAME2 IS MISSING THEN '.' ELSE IF NAME2 EQ ' ' THEN '.' ELSE NAME2;

Hi Ken,
I needed a clarification on this error.I am getting the same error.as mentioned by you.where did you include the ELSE IF clause.

Regards
Sandeep
 
Reply With QuoteReport This Post
  Powered by Social Strata  
 

Focal Point    Focal Point Forums  Hop To Forum Categories  iWay Software Product Forum on Focal Point    Handling NULLS between PS and Oracle

Copyright © 1996-2018 Information Builders, leaders in enterprise business intelligence.