File Layout Peoplecode Peoplesoft
Hi, I am reading an XML file using a file layout I need to insert the data coming in this file into a PS staging record, the tag structure in the XML file has been mapped to the file layout which uses this staging record. However, I fail to understand how to proceed for fetching the data and inserting using App Engine peoplecode.
In case of a CSV file, we split the data and pass it into an array for processing, but I am not really sure on what needs to be done on this case, any inputs on this would be of great help Thanks, Dan.
'Hi, I am still learning the rowsets, rows, record functions in the Peopelcode. I have to export a file using the file layout. So I have created a file layout based on the record and application engine to export the file. I went through the Peoplecode books to do this.
PeopleSoft recommends regenerating all file layout definitions after any upgrade, to avoid any corruption caused by changes to the database. See Using Standalone Rowsets for more examples of writing from and reading to files. Next step is to cross check your Record in which you are going to insert the entry from CSV file through File Layout. Now Create a File Layout. Steps involved. Create new File Layout definition. Right click on New file and Insert Record. In File Layout Use Properties, set File Layout Format as CSV. In Preview of File Layout, Browse your CSV file from. Creating a File Layout. Create or Select a Record for your data. I used a view, to avoid having to deal with joins in PeopleCode. Create a File.
But the example mentioned in the peoplebooks is using the 'writerecord' function. But the write record function is not working for me. I just have to select all the data from the record and write that data into the file. So below is the code which is working but the issue is that there are 2 fields that are not getting populated in the file.the 2fields are POID and ADDRESS2 field. I am not sure why. Please help me.
Local File &FILE1; Local SQL &SQL1; Local Rowset &RS &FILE1 = GetFile('C: temp sample.csv', 'W', 'A',%FilePathAbsolute); If &FILE1.IsOpen Then If &FILE1.SetFileLayout(FileLayout.MFRGVNDREXPFL) Then &RS = CreateRowset(Record.MFRGVNDREXP); &RS.Fill; &FILE1.WriteRowset(&RS, True); End-If; End-If; &FILE1.Close;'. Hi Mothi, Can you query the record MFRGVNDREXP from toad and verify if there are no blank values in POID and ADDRESS2 fields? Please try the following code to write to an output file using WriteRecord. Local Record &REC1; Local File &FILE1; Local SQL &SQL; &FILE1 = GetFile('C: temp sample.csv', 'W', 'A',%FilePathAbsolute); If &FILE1.IsOpen Then &FILE1.SetFileLayout(FileLayout.MFRGVNDREXP FL); &REC1 = CreateRecord(Record.MFRGVNDREXP); &SQL = CreateSQL('%Selectall(:1)', &REC1); While &SQL.Fetch(&REC1) &File1.WriteRecord(&REC1); End-While; End-If; &FILE1.Close; Aditya. @Adithya, When I try it with your code, I am getting the error.the error is pasted below.This was the reason, I tried with rowset. Atleast with rowset something is getting in the file except the 2 files that I mentioned above. The error for your code is 11096:: PSPAL::Abort: Unrecoverable exception received 11096:: PSPAL::Abort: Location: E: pt85017b-retail peopletools SRC pspal exceptionwinunhandled.cpp:577: PSPAL::UnhandledExceptionFilter::RecoverableExceptionFilter 11096:: PSPAL::Abort: Abort diagnostics generation is currently disabled 11096:: PSPAL::Abort: Terminating process now.
Caira mr5412 drivers. Restore point before installing a device driver. This will help if you installed a wrong driver. Problems can arise when your hardware. Hercules Terminator Beast BIOS driver. It is highly recommended to always use the most recent driver version available.Do not forget to check with our site.
Peoplesoft File Layout Examples
@joe This is the same code adithya has pasted above. I used the same but I recreated the fiel layout again then it worked. If you are not getting it, what issue are you getting? And maybe you can open a new thread on your issue and paste the thread address link here. Local Record &REC1; Local File &FILE1; Local SQL &SQL; &FILE1 = GetFile('C: temp sample.csv', 'W', 'A',%FilePathAbsolute); If &FILE1.IsOpen Then &FILE1.SetFileLayout(FileLayout.MFRGVNDREXP FL); &REC1 = CreateRecord(Record.MFRGVNDREXP); &SQL = CreateSQL('%Selectall(:1)', &REC1); While &SQL.Fetch(&REC1) &File1.WriteRecord(&REC1); End-While; End-If; &FILE1.Close; Aditya.