...print/preview MS Access reports?

Author: Mike Shkolnik
Homepage: http://www.scalabium.com

Category: Objects/ActiveX

uses ComObj;

procedure TForm1.Button1Click(Sender: TObject);
var
  
Access: Variant;
begin
  
{open the Access application}
  
try
    
Access := GetActiveOleObject('Access.Application');
  except
    
Access := CreateOleObject('Access.Application');
  end;
  Access.Visible := True;

  { open the database 
   The second parameter specifies whether you want to open the
   database in Exclusive mode}
  
Access.OpenCurrentDatabase('C:\test.mdb', True);

  { open the report 
   The value for the second parameter should be one of
   acViewDesign, acViewNormal, or acViewPreview. acViewNormal, which is the
   default, prints the report immediately. If you are not using the type
   library, you can define these values like this: 

  const 
    acViewNormal = $00000000; 
    acViewDesign = $00000001;
    acViewPreview = $00000002; 

  The third parameter is for the name of a query in the current 
  database. The fourth parameter is for a SQL WHERE clause - the string must
  be valid SQL, minus the WHERE.}
  
Access.DoCmd.OpenReport('A Report name', 2, EmptyParam, EmptyParam);

  {close the database}
  
Access.CloseCurrentDatabase;

  {close the Access application}
  {const
    acQuitPrompt = $00000000; 
    acQuitSaveAll = $00000001;
    acQuitSaveNone = $00000002;}
  
Access.Quit(1);
end;

 

printed from
www.swissdelphicenter.ch
developers knowledge base