http://qs321.pair.com?node_id=983758


in reply to Re: Downloading attachment from Lotus Notes via Perl script
in thread Delete emails(documents) from Lotus Notes inbox by using Perl

Hi, I tried to remove the single quotes,but it had a compile error:"Global symbol $FILE requires explicit package name".

Replies are listed 'Best First'.
Re^3: Downloading attachment from Lotus Notes via Perl script
by kcott (Archbishop) on Jul 26, 2012 at 08:02 UTC

    G'day facudy,

    Using incorrect quotes is a common problem we see here - hence my initial suggestion.

    If $FILE hasn't been exported (by a module you've used) and you haven't declared it (e.g. my $FILE = ...), then you will get that error message.

    I don't have Lotus Notes, so I can't actually test anything locally. However, here's some troubleshooting suggestions.

    In GetInfo(), you've commented out the Data::Dumper line. Uncomment this line to confirm (commented) output:

    The doc hash is $VAR1 = bless( {}, 'Win32::OLE' );

    Assuming this is correct, then $doc has no key/value pairs.

    On the next line you call $doc->Created. Call Dumper again after this line to see whether $doc is still empty.

    You then have some code that conditionally creates directories followed by a number of print TEXTFILE ... lines.

    In these print lines, you've referenced half a dozen keys: $doc->{Form} ... $doc->{Body}. Where did you get the names of these keys? Does the source of that information indicate anything like $doc->{Files} or $doc->{Attachments} (or even $doc->{'$FILE'})?

    Call Dumper $doc; again after close TEXTFILE; and see what's changed.

    Take a look at the messages.txt file you created. Does it look like what you expected?

    Is there a method $doc can invoke to get the attachment information (e.g. $doc->get_attachments();)?

    While doing the above tests, you may want to temporarily comment out the code after # Save attachments as files, if any.

    -- Ken

      Thank you Ken,my problem got resolved

        Really? Could you please share with the rest of the class? And by that, I mean those of us who are following along at home?

        Thank you.