As of December 1, 2020, Focal Point is retired and repurposed as a reference repository. We value the wealth of knowledge that's been shared here over the years. You'll continue to have access to this treasure trove of knowledge, for search purposes only. Moving forward, myibi is our community platform to learn, share, and collaborate. We have the same Focal Point forum categories in myibi, so you can continue to have all new conversations there. If you need access to myibi, contact us at myibi@ibi.com and provide your corporate email address, company, and name.
I need get the data from file. Because my source information coming from file. My File naming conventions is "KFC_REPORT_161019862000.txt". Whenever i am getting the new file, file name will be changed. How can i proceed with file mask like "KFC_REPORT_**********.txt"
Can you help us to proceed further ?
Thanks kalaiThis message has been edited. Last edited by: FP Mod Chuck,
You can use wildcards when mapping a MAS to flat files. Just remember that you will read all the files that match the pattern, so you will need to move the file when you have finished reading it. The GUI will walk you through how to do it, but below is the relevant components of the MAS and ACX
MAS
FILENAME=ALLORDERS, SUFFIX=DFIX ,
CODEPAGE=1252, $
VARIABLE NAME=&&FL_DIRECTORY, PROMPT='Application directory name to poll for files', DEFAULT='C:\iDM\8201m\ibi\apps\infiles', $
VARIABLE NAME=&&FL_NAME, PROMPT='File name pattern', USAGE=A80, DEFAULT='orders_*', $
VARIABLE NAME=&&FL_EXTENSION, PROMPT='Data File Extension', USAGE=A80, DEFAULT='ftm', $
VARIABLE NAME=&&FL_CONNECTION, PROMPT='Connection to local or remote data files location', DEFAULT='<local>', $
Something like the following should do what you want. You can place the following three files in an application folder, set the &AppFolder variable, and run the fex.
&AppFolder = Application folder where your files are located.
This will report on the kfc_report_*.txt with the highest serial number. You can change HIGHEST to LOWEST to flip that behavior.
kfc_report_161019862000.txt
———————————————————————————
Midwest 11400665
Northeast 11392300
Southeast 11710379
West 11652946
kfc_report.mas
——————————————
FILENAME=KFC_REPORT, SUFFIX=FIX , IOTYPE=STREAM, $
SEGMENT=KFC_REPO, SEGTYPE=S1, $
FIELDNAME=REGION, ALIAS=E01, USAGE=A11, ACTUAL=A11, $
FIELDNAME=DOLLARS, ALIAS=E02, USAGE=I08, ACTUAL=A08, $
kfc_report.fex
——————————————
-DEFAULTH &AppFolder = 'baseapp/1metadata',&FILENAME = ' ';
SET PAGE-NUM=OFF,HOLDLIST=PRINTONLY
APP QUERY &AppFolder HOLD
TABLE FILE FOCAPPQ
PRINT FILENAME
BY HIGHEST FILENAME NOPRINT
WHERE LOWER(FILENAME) LIKE 'kfc_report%.txt'
ON TABLE HOLD AS kfcfile
END
-RUN
-READFILE kfcfile
FILEDEF kfc_report DISK &AppFolder../&FILENAME
TABLE FILE kfc_report
"&AppFolder../&FILENAME"
PRINT REGION DOLLARS
END
WebFOCUS 8.2.06
Posts: 210 | Location: Sterling Heights, Michigan | Registered: October 19, 2010