use strict;
use warnings;
use Win32::OLE;
use Data::Dumper::Simple;
my $Notes = Win32::OLE->new('Notes.NotesSession')
or die "Cannot start Lotus Notes Session object.\n";
my $db = $Notes->GetDatabase("server", "c_dir/theDBase.nsf")
or die "Could not open database.\n";
my ($Version) = ($Notes->{NotesVersion} =~ /\s*(.*\S)\s*$/);
#
print "The current user is $Notes->{UserName}.\n";
print "Running Notes \"$Version\" on \"$Notes->{Platform}\".\n\n\n";
my $Count = $db->AllDocuments->Count;
print "\nConnected to ", $db->{Title}, " on ", $db->{Server};
print "\nThere are $Count documents in the database.\n";
my $AllDocuments = $db->AllDocuments;
my $doc = $AllDocuments->GetFirstDocument;
while ( $doc ) {
my $NextDoc = $AllDocuments->GetNextDocument($doc);
my $abst = $doc->GetItemValue("Abstract");
if ($abst)
{
warn Dumper($abst);
print "abstract = $abst\n";
}
$doc = $NextDoc;
}
####
There are 49765 documents in the database.
abstract = ARRAY(0x1a8fd4c)
$abst = [
''
];
abstract = ARRAY(0x1a4b4bc)
$abst = [
''
];
abstract = ARRAY(0x1a8fe4c)
$abst = [
''
];
abstract = ARRAY(0x1a8fddc)
$abst = [
''
];
abstract = ARRAY(0x1a4b45c)
$abst = [
''
];
abstract = ARRAY(0x1a8fe0c)
$abst = [
''
];
####
my $AllDocuments = $db->AllDocuments;
my $doc = $AllDocuments->GetFirstDocument;
while ( $doc ) {
my $NextDoc = $AllDocuments->GetNextDocument($doc);
my $abst = $doc->GetFirstItem("Abstract");
if ($abst)
{
warn Dumper($abst);
print "abstract = $abst\n";
}
$doc = $NextDoc;
}
}
####
There are 49771 documents in the database.
$abst = bless( {}, 'Win32::OLE' );
abstract = Win32::OLE=HASH(0x1a4b53c)
$abst = bless( {}, 'Win32::OLE' );
abstract = Win32::OLE=HASH(0x1a4b4cc)
$abst = bless( {}, 'Win32::OLE' );
abstract = Win32::OLE=HASH(0x1a4b4ec)