* reportfix.prg 05-Dec-97 * Takeout the Printer specific information from a report file repo_dir = GetDir("Choose report folder","Choose report folder","Clear reports",64) IF EMPTY(repo_dir) MessageBox("You must choose a folder where FRX resides?") RETURN ENDIF repo_dir = ALLTRIM(repo_dir) repo_dir = IIF(RIGHT(repo_dir,1)#"\",repo_dir+"\",repo_dir) mmm = ADIR(mm_repo,repo_dir+"*.frx") FOR asd = 1 TO mmm WAIT WINDOW "REPORT "+mm_repo[asd,1] NOWAIT ReportFix(repo_dir, mm_repo[asd,1]) NEXT WAIT CLEAR RETURN FUNCTION ReportFix(lcDir,lcFile) i = at( '.', lcFile ) if ( i > 0 ) lcFile = left( lcFile, i-1 ) endif lcFile = lcFile + ".frx" use (lcDir+lcFile) EXCLUSIVE replace Expr with DePrinter( Expr ), Tag with "", Tag2 with "", Environ WITH .f. use RETURN function DePrinter( lcExpr ) local lcLine, lcRetVal lcRetVal = "" for i = 1 to memlines( lcExpr ) lcLine = mline( lcExpr, i ) do case case "DRIVER=" $ lcLine lcRetVal = lcRetVal + "DRIVER=" + chr(13) + chr(10) case "OUTPUT=" $ lcLine lcRetVal = lcRetVal + "OUTPUT=" + chr(13) + chr(10) case "DEVICE=" $ lcLine * strip it case "PRINTQUALITY=" $ lcLine * strip it case "YRESOLUTION=" $ lcLine * strip it otherwise lcRetVal = lcRetVal + lcLine + chr(13) + chr(10) endcase endfor return lcRetValThen try:
REPORT FORM YourReport TO PRINTER PROMPT PREVIEW