E-PC: File ReadLine Ignores Newline Character At The End Of Some Rows And Reads Multiple Lines (Doc ID 2164824.1)

Last updated on FEBRUARY 20, 2017

Applies to:

PeopleSoft Enterprise PT PeopleTools - Version 8.55 to 8.55 [Release 8.4]
Information in this document applies to any platform.

Symptoms

File ReadLine ignores newline character at the end of some rows and reads multiple lines

When flat text files are created in windows and read using file.ReadLine(&str) in PeopleSoft, the newline character at the end of some rows are ignored and multiple lines are read in to the string.

Example:
A flat file is created with a list of IDs in it. Each ID is 7 characters long. (ABCD001 to ABCD600) When read using file.ReadLine in a while loop the 569th row reads multiple lines (ABCD569 and ABCD570).

If each line contains 3 characters the newline at the end of 205th row is ignored.
If each line contains 5 characters the newline at the end of 439th row is ignored.
If each line contains 7 characters the newline at the end of 569th row is ignored.

This results in bad data being read from file imports when using the PeopleCode File Object class ReadLine() function.

The problem affects any delivered/custom programs that use the ReadLine() function to read an input file, for example:

- SCM: Catalog Management -> Catalog management Home -> Import Catalog Source -> Import catalog Source Master
- FIN: Banking > Bank Statements > Import Bank Statements (Note 2177131.1: E-PC: INVALID RECORD COUNT (9450,1201) when Loading Bank Statements)

 

Changes

There was a code change for the PeopleCode File Object as it was re-written in 8.55. The new code has the wrong expectation that the input files will use linefeed characters of the OS where the app server/process scheduler resides. So if the app server/process scheduler OS is Windows, then it expects a Windows new line character. But this is not the case for some customers, as they would have Windows servers processing input files from Linux machines, and vice versa. 

Cause

Sign In with your My Oracle Support account

Don't have a My Oracle Support account? Click to get started

My Oracle Support provides customers with access to over a
Million Knowledge Articles and hundreds of Community platforms