Extract Data from a Text File Using the Specified Separator
Problem description & analysis
Below is text file separators.txt:
EID;NAME;SURNAME;GENDER;STATE;BIRTHDAY;HIREDATE;DEPT
9;Victoria;Davis;F;Texas;1983-12-07;2009-12-07;HR
7;Alexis;Smith;F;Illinois;1972-08-16;2002-08-16;Sales
5;Ashley;Smith;F;Texas;1975-05-13;2004-07-30;R&D
3;Rachel;Johnson;F;New Mexico;1970-12-17;2010-12-01;Sales
1;Rebecca;Moore;F;California;1974-11-20;2005-03-11;R&D
2;Ashley;Wilson;F;New York;1980-07-19;2008-03-16;Finance
4;Emily;Smith;F;Texas;1985-03-07;2006-08-15;HR
6;Matthew;Johnson;M;California;1984-07-07;2005-07-07;Sales
8;Megan;Wilson;F;California;1979-04-19;1984-04-19;Marketing
10;Ryan;Johnson;M;Pennsylvania;1976-03-12;2006-03-12;R&D
The column separator is the semicolon (";"). We are trying to use the file as the data source in BIRT, use the semicolon as the separator, and extract a data set from the text file as follows:
EID |
NAME |
SURNAME |
GENDER |
STATE |
BIRTHDAY |
HIREDATE |
DEPT |
9 |
Victoria |
Davis |
F |
Texas |
1983-12-07 |
2009-12-07 |
HR |
7 |
Alexis |
Smith |
F |
Illinois |
1972-08-16 |
2002-08-16 |
Sales |
5 |
Ashley |
Smith |
F |
Texas |
1975-05-13 |
2004-07-30 |
R&D |
3 |
Rachel |
Johnson |
F |
New Mexico |
1970-12-17 |
2010-12-01 |
Sales |
1 |
Rebecca |
Moore |
F |
California |
1974-11-20 |
2005-03-11 |
R&D |
2 |
Ashley |
Wilson |
F |
New York |
1980-07-19 |
2008-03-16 |
Finance |
4 |
Emily |
Smith |
F |
Texas |
1985-03-07 |
2006-08-15 |
HR |
6 |
Matthew |
Johnson |
M |
California |
1984-07-07 |
2005-07-07 |
Sales |
8 |
Megan |
Wilson |
F |
California |
1979-04-19 |
1984-04-19 |
Marketing |
10 |
Ryan |
Johnson |
M |
Pennsylvania |
1976-03-12 |
2006-03-12 |
R&D |
Solution
Write the following script p1.dfx in esProc:
A |
|
1 |
=file("separators.txt").import@t(;,";") |
Explanation:
A1 Use semicolon as the separator, import data from the file, and return it as table sequence. Take the first record as column headers.
Refer to How to Call an SPL Script in BIRT to learn about the method of integrating the SPL script with BIRT.
https://www.eclipse.org/forums/index.php/t/21046/
SPL Official Website 👉 https://www.scudata.com
SPL Feedback and Help 👉 https://www.reddit.com/r/esProcSPL
SPL Learning Material 👉 https://c.scudata.com
SPL Source Code and Package 👉 https://github.com/SPLWare/esProc
Discord 👉 https://discord.gg/cFTcUNs7
Youtube 👉 https://www.youtube.com/@esProc_SPL