$ perl 'f$env("procedure")' 'p1' 'p2' 'p3' 'p4' 'p5' 'p6' 'p7' 'p8' !
$ exit++ + ++$status != 0 and $exit = $status = undef;

use strict;
use diagnostics;
use English;
use File::Copy;
use File::Spec::VMS qw( catfile catdir );
use VMS::Filespec qw ( rmsexpand );
use VMS::Queue qw( submit entry_info entry_bitmap_decode file_list file_bitmap_decode );

my $entry = 
    {
    "QUEUE" => 'LPSRVM$BATCH',
    "LOG_SPECIFICATION" => rmsexpand ('SYS$SCRATCH:'),
    "NO_LOG_DELETE" => 1,
    "NO_LOG_SPOOL" => 1,
    };
my $entryfile = 
    {
    "FILE_SPECIFICATION" => 'CTS_PROGRAMMER:[PSPINLER.TEMP]TEST.COM'
    };

my $entrynum;

$entrynum = submit ($entry, $entryfile) 
    || die ("Error $!:$^E submitting entry");

#my $entryinfo = VMS::Queue::entry_properties;
#my $entryref = VMS::Queue::entry_info ($ARGV[0]);
my $entryref = VMS::Queue::entry_info ($entrynum);

foreach my $entrykey (sort keys %$entryref)
    {
    printf("%s = %s\n", $entrykey, 
	   defined ($$entryref{$entrykey}) ? $$entryref{$entrykey} : "");
    if (defined ($$entryref{$entrykey}) && $entrykey =~ m/.*flag.*|.*status.*/i)
	{
	my $entryitem = $$entryref{$entrykey};
	my $bitmapref = entry_bitmap_decode ($entrykey, $entryitem);
	foreach my $bitmapkey (sort keys %$bitmapref)
	    {
	    if (defined ($$bitmapref{$bitmapkey}) && $$bitmapref{$bitmapkey})
		{
		printf("  BITMAP: %s = %s\n", $bitmapkey,
		       $$bitmapref{$bitmapkey});
		}
	    }
	}
    }

my @filereflist = file_list ($$entryref{'ENTRY_NUMBER'});
foreach my $fileinforef (@filereflist)
    {
    foreach my $fileinfokey (sort keys %$fileinforef)
	{
	printf("%s = %s\n", $fileinfokey, 
	       defined ($$fileinforef{$fileinfokey}) ? $$fileinforef{$fileinfokey} : "");
	if (defined ($$fileinforef{$fileinfokey}) && $fileinfokey =~ m/.*flag.*|.*status.*/i)
	    {
	    my $fileinfoitem = $$fileinforef{$fileinfokey};
	    my $bitmapref = file_bitmap_decode ($fileinfokey, $fileinfoitem);
	    foreach my $bitmapkey (sort keys %$bitmapref)
		{
		if (defined ($$bitmapref{$bitmapkey}) && $$bitmapref{$bitmapkey})
		    {
		    printf("  BITMAP: %s = %s\n", $bitmapkey,
			   $$bitmapref{$bitmapkey});
		    }
		}
	    }
	}	
    }

