Beefy Boxes and Bandwidth Generously Provided by pair Networks
"be consistent"

Re: Changing a MS-Access report's RecordSource property

by MZSanford (Curate)
on Jun 24, 2003 at 19:32 UTC ( #268653=note: print w/replies, xml ) Need Help??

in reply to Changing a MS-Access report's RecordSource property

For exploration you may want to tey something like :
use Win32::OLE qw(in); # ... my @reports = in $access->{Reports}; printf("Found %d reports\n",scalar(@reports));
This way you can see how many reports are returned, and use them from the array. I have found that some of the office COM objects have odd collections and i end up having to use indexes that don't seem correct to the non-Gatesian mind.
from the frivolous to the serious

Replies are listed 'Best First'.
Re: Re: Changing a MS-Access report's RecordSource property
by Grygonos (Chaplain) on Jun 24, 2003 at 19:58 UTC
    I took what you did with the showing how many reports are there... and bastardized it slowly back to what my original idea was... and somehow it worked this time... here's how it's done.
    #!/Perl/bin/perl use Win32::OLE; my $path = "XXX"; my $access = Win32::OLE->new('Access.Application'); $access->OpenCurrentDatabase($path); #Don't show the window $access->{Visible} = 0; #Open the report in design mode $access->DoCmd->OpenReport("XXX",1); #Change the recordsource $access->Reports->Item(0)->{RecordSource} = "XXX"; #Save the report $access->DoCmd->Save(3,XXX); #Quit $access->DoCmd->Quit(2);
    Thanks to all who offered assistance with this quite sucky problem. Much appreciate guys and gals... thank you.

    sorry about the comment indention... something was lost in the transalation(read:paste) from Textpad :P

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://268653]
and all is quiet...

How do I use this? | Other CB clients
Other Users?
Others wandering the Monastery: (12)
As of 2018-06-20 18:23 GMT
Find Nodes?
    Voting Booth?
    Should cpanminus be part of the standard Perl release?

    Results (117 votes). Check out past polls.