Reporter Forum

  | Discussion |

Bottom | Unframe

New reports output

From: Nadya Nosonovsky
Keywords: Reporter, Addition, Enhancement, Suggestion
Remote Name: 216.112.191.129
Remote User:
Date: 06/19/00
Time: 09:45

Comments

As I mentioned on Friday, June 16th, there are could be three new report's output: Word Document, HTML and PDF. First two require Word to be installed on the user machine (the latest Word 2000 is preferable), the latest requires the full installation of Adobe Acrobat (e.g. not only Adobe Acrobat reader, but Adobe Acrobat writer also). First two outputs could be prepared using John Koziol Frx2Word utility. There is another utility, which allows output to HTML format (it could be found in UT Files section). I did some tests with earliest version of Frx2Word utility, and though it's a little time consuming (and I doubt, there is some visual indication like progress bar), it does its job well. So, in my opinion, the end result may be worth the time, spending on this utility. The UT members references are also quite impressive.

Now about PDF. As I said above, this requires full installation of Adobe. If Adobe writer installed, it now very easy to produce PDF. There is a program, which allows us to specify the name of output file. This program could be easy enhanced by adding a search of required DLL.

*******************************************************************************
*  Description.......: CreatePDFFile - creates PDF file for specified filename
*  Calling Samples...: CreatePDFFile('c:\temp\temp.pdf')
*  Parameter List....: pcFileName
*  Created by........: Houston Brennan 06/12/2000
*  Modified by.......: Nadya Nosonovsky 06/16/2000 10:56:51 AM
******************************************************************************
lparameter pcFileName
if empty(pcFileName)
  pcFileName='c:\windows\temp\tempfile.pdf'
endif 

SET SAFETY OFF
CLEAR
CLEAR DLLS

cPdfDLLFile = "c:\Program Files\Adobe\Acrobat 4.0\Macros\Office95\PDFMon.DLL"

IF NOT FILE(cPdfDLLFile )
      wait window nowait "Required Acrobat Writter DLL is not present on your local drive" +;
      chr(13)+"Will print to default printer..."
      return .t.
ENDIF

DECLARE INTEGER PDFMonInitialize IN (cPdfDLLFile)
DECLARE INTEGER PDFMonIsOSNT IN (cPdfDLLFile)
DECLARE INTEGER IsPDFWriterInstalled IN (cPdfDLLFile) ;
      STRING@ cPDFWriterName , ;
      STRING@ cPort
DECLARE INTEGER PDFMonDoPrompt IN (cPdfDLLFile) ;
      INTEGER iWhichProgram

DECLARE INTEGER PDFMonSetPrompt IN (cPdfDLLFile) ;
      INTEGER iWhichProgram , ;
      INTEGER iNewValue

#DEFINE SETPROMPTOFF 0
#DEFINE SETPROMPTON 1

DECLARE INTEGER PDFMonSetOutputFilename IN (cPdfDLLFile) ;
      STRING cFileName
DECLARE INTEGER PDFMonCleanup IN (cPdfDLLFile)

iInitialise = PDFMonInitialize()
*? "Initialise : "
*?? iInitialise

iIsNT = PDFMonIsOSNT()
*? "Is NT : "
*?? iIsNT

cPdfWriter = SPACE(100)
cPort = SPACE(100)
iInstalled = IsPDFWriterInstalled( @cPdfWriter, @cPort )
if iInstalled=1 && PDF Writer is installed
   set printer to name 'Acrobat PDFWriter'
endif  
*? "Installed "
*?? iInstalled
*? "PDF Writer : "
*?? cPdfWriter
*? "Port : "
*?? cPort
*?

iDoPrompt = PDFMonDoPrompt( SETPROMPTOFF )
*? iDoPrompt
*cFileName = "c:\Temp\Test.Pdf"
iSetFileName = PDFMonSetOutputFilename(pcFileName)
*? iSetFileName
*!* pcFileName = ""
*!* iSetFileName = PDFMonSetOutputFilename(pcFileName)
*!* ? iSetFileName

*? PDFMonCleanup()
CLEAR DLLS
*? "Finished."
RETURN .T.


So, as I think, we can enhance user screen by adding these new options. This is not a big priority issue right now, but we should keep it in mind.

 

 

| Top | Unframe | Help |

 | Contents | Discussion |


Brought to you by SpaceTime Systems.  All rights reserved.