Code Samples - Neevia docuPrinter SDK

Example 7: Convert a MS Access report into PDF - Delphi Copy 

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
   procedure TForm1.Button1Click(Sender: TObject);
   var
     RVal : Integer;
     DPSDK,
     objAccess       : Variant;
     docToConvert    : String;
     defPrinter      : String;
   begin
      docToConvert:='c:\users\public\access.mdb';

      try
        DPSDK:=CreateOleObject('docuPrinter.SDK');
        DPSDK.DocumentOutputFormat:= 'PDF';
        DPSDK.DocumentOutputName:= 'demoAccess';
        DPSDK.DocumentOutputFolder:= 'c:\users\public\';

        DPSDK.PDFAutoRotatePage:= 'PageByPage';
        DPSDK.DocumentResolution:= 300;
        DPSDK.HideSaveAsWindow:= true;
        DPSDK.DefaultAction:=1;
        DPSDK.ApplySettings;

        try
          objAccess:= CreateOleObject('Access.Application');

          defPrinter:=DPSDK.GetDefaultPrinter;
          DPSDK.SetDefaultPrinter('docuPrinter');
          objAccess.OpenCurrentDatabase(docToConvert, true);

          objAccess.DoCmd.OpenReport('rptCatalog', 0);
          // rptCtatalog is the repport name

          objAccess.Quit(2);

          RVal:= DPSDK.Create; // Create output document
          If (RVal <> 0) Then 
            ShowMessage('Error while creating document!!! Code: '+IntToStr(RVal))
          else
            ShowMessage('Document Created !!!');

        except
          on E: Exception do
            ShowMessage(E.Message);
        end;
        DPSDK.SetDefaultPrinter(defPrinter);  
      finally
        DPSDK:= Unassigned;
        objAccess:= Unassigned;
      end;  

   end;