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

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

Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post; it's "PerlMonks-approved HTML":