Focal Point
[SOLVED] Flat File (FORMAT ALPHA) contains an extra line

This topic can be found at:
http://forums.informationbuilders.com/eve/forums/a/tpc/f/7971057331/m/3241006703

November 17, 2008, 04:04 PM
Dan_Bam
[SOLVED] Flat File (FORMAT ALPHA) contains an extra line
We create a flat file (Format Alpha) that we send to the bank for positive pay. They must have new software because they now have problems with what appears to be a blank line at the end of the file. If we go to the the end of the file and delete any characters after the last "good" character and save the file is fine. Is there anyway to eliminate this programatically?

This message has been edited. Last edited by: Kerry,


Webfocus 7.65
UNIX
November 17, 2008, 04:16 PM
FrankDutch
If you try other formats (COM, COMT ) do they have the blank last line too?




Frank

prod: WF 7.6.10 platform Windows,
databases: msSQL2000, msSQL2005, RMS, Oracle, Sybase,IE7
test: WF 7.6.10 on the same platform and databases,IE7

November 17, 2008, 04:29 PM
Francis Mariani
Nothing unusual about this, the last line does not contain any characters, it's created because of the carriage-return/line-feed at the end of the previous line.

As far as I can tell, this is the behaviour since forever.

FILEDEF H001 DISK TESTFM/H001.TXT
-RUN

TABLE FILE CAR
PRINT
SALES 
SEATS
BY COUNTRY
BY CAR
BY MODEL
ON TABLE HOLD AS H001 FORMAT ALPHA
END
-RUN




Francis


Give me code, or give me retirement. In FOCUS since 1991

Production: WF 7.7.05M, Dev Studio, BID, MRE, WebSphere, DB2 / Test: WF 8.1.05M, App Studio, BI Portal, Report Caster, jQuery, HighCharts, Apache Tomcat, MS SQL Server
November 17, 2008, 09:25 PM
Waz
With a tweek, you can sort of do this.
DEFINE FILE CAR
 ASEATS/A3 = FTOA(SEATS,'(F3)','A3') ;
 ASALES/A6 = FTOA(SALES,'(F6)','A6') ;
 MAXCNTR/I9 WITH MODEL = LAST MAXCNTR+ 1 ;
END
TABLE FILE CAR
SUM MAX.MAXCNTR
PRINT
ASALES
ASEATS
COMPUTE
 CNTR/I9 = LAST CNTR + 1 ;
BY COUNTRY
BY CAR
BY MODEL
ON TABLE HOLD AS H001
ON TABLE SET ASNAMES ON
END
-RUN
TABLE FILE H001
PRINT
ASALES
ASEATS
COMPUTE
CRLF/A2 = IF CNTR EQ MAXCNTR THEN ' ' ELSE HEXBYT(13,'A1') | HEXBYT(10,'A1') ;
BY COUNTRY
BY CAR
BY MODEL
ON TABLE HOLD AS H002 FORMAT INTERNAL
ON TABLE SET HOLDLIST PRINTONLY
END



Waz...

Prod:WebFOCUS 7.6.10/8.1.04Upgrade:WebFOCUS 8.2.07OS:LinuxOutputs:HTML, PDF, Excel, PPT
In Focus since 1984
Pity the lost knowledge of an old programmer!

November 19, 2008, 01:53 PM
<JG>
As you are on Unix try calling sed to remove the blank lines via a command line call.
November 19, 2008, 01:56 PM
Dan_Bam
WAZ, thanks for the solution. That worked great. Thank you also to all those who responded. This has been the way WebFocus creates a flat file for as long as I can remember, but it was never a problem for us until the bank required it to be different. I think that wraps this one up.


Webfocus 7.65
UNIX