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,
WebFOCUS 8 Windows, All Outputs
June 14, 2018, 11:47 AM
FP Mod Chuck
Kalai
There is no wildcard for a file name, it will not find the file for processing without the exact name
Thank you for using Focal Point!
Chuck Wolff - Focal Point Moderator WebFOCUS 7x and 8x, Windows, Linux All output Formats
June 15, 2018, 08:15 AM
dhagen
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>', $
"There is no limit to what you can achieve ... if you don’t care who gets the credit." Roger Abbott
June 15, 2018, 10:03 AM
dbeagan
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