Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
Where to Find FRX Structure
Message
From
26/10/2012 02:59:29
 
 
To
26/10/2012 02:53:08
General information
Forum:
Visual FoxPro
Category:
Reports & Report designer
Miscellaneous
Thread ID:
01555851
Message ID:
01555852
Views:
106
This message has been marked as the solution to the initial question of the thread.
Likes (1)
>Hi All,
> Where in the VFP documentation (9.0) can I find the description of the FRX table? In particular, I'm looking for where the logical field "Save Printer Environment" is stored. This is the field that is set in the user interface under the menu: File | Page Setup.
> Thanks, Chaim

The printer info is in the EXPR field of the first record.

For much more details, check http://www.mattslay.com/pages/FoxPro-Report-FRX-Structure.html and http://spacefold.com/articles/RSFundaments_part1.aspx

Here's a program to remove this information. The function names and the messages are in Norwegian, unfortunately.
Private lcFilename, lcLagre, lcAlias,lnLengde,lnTemp,lcCaption,temp,words
#DEFINE CRLF CHR(13)+CHR(10)
lcAlias=SELECT()
lcCaption=_VFP.CAPTION
dimension TEMP(1,1)
dimension WORDS(3)
WORDS(1)='DRIVER='
WORDS(2)='DEVICE='
WORDS(3)='OUTPUT='

*CD reports
CD FORMAT\WIN\

do FjernePrinterInfo with 'FRX'
do FjernePrinterInfo with 'LBX'

CD ...
use
_VFP.CAPTION = lcCaption

select (lcAlias)
************************************************************************************************************

PROCEDURE FjernePrinterInfo
	LPARAMETERS lcFilter
	lcFilter='.'+lcFilter

	lnDatabases = ADIR(laDatabases, '*'+lcFilter)  && Create array

	FOR nCount = 1 TO lnDatabases
		lcFilename = STOR1(STRTRAN(laDatabases(nCount,1), lcFilter))
		_VFP.CAPTION = "Fikser " + lcFilename + lcFilter
		USE (lcFilename+lcFilter) IN 0 EXCLUSIVE
		SELECT (lcFilename)
		lnLengde=ALINES(TEMP,EXPR)
		FOR EACH lnTeller in WORDS
			lnTemp=ASCAN(TEMP,lnTeller)
			IF lnTemp>0
				ADEL(TEMP,lnTemp)
				lnLengde=lnLengde-1
			ENDIF
		ENDFOR
		lcLagre=''
		FOR EACH lnTeller in TEMP
			IF VARTYPE(lnTeller)='L'
				EXIT
			ENDIF
			IF LEN(lcLagre)>0
				lcLagre=lcLagre+CRLF
			ENDIF
			lcLagre=lcLagre+lnTeller
		ENDFOR
		REPLACE EXPR WITH lcLagre, TAG WITH "", TAG2 WITH ""
		? "Slettet fra " + lcFilename
		USE
	ENDFOR
ENDPROC
Previous
Reply
Map
View

Click here to load this message in the networking platform