I am new to Perl and ARSPerl. I have experience in Java
Working on upgrade project ARS 6.3 to 7.1 Upgrade.
I have started learning Perl and ARSPerl but NOT that good so far.

With Remedy 7.1 Perl api (1.91) and latest Active perl I get following error
for my existing (6.3 working) perl script.
CGI Error
The specified CGI application misbehaved by not returning a complete set of
HTTP headers.


My Perl script functions looks like this, after using log4perl and debuggin
I got the point where I have the issue, it is getting enum values.
Line: my @enumvals = @{$fieldinfo->{limit}};

sub ARS_getreportformat {
   # returns a ptr to an array of ptrs (to arrays) containing display data
for this view
   # NOTE: the returned data is sorted by display_order!!
   my $c = $_[0];
   my $view = $_[1];
   my $ret_form;
   my %ret_report_format;
   # get grid defintions
   my $form_def = "rdpv_grid_def";
   my $qualification = qq,'View Name' = "$view",;
   unless ($qual = ars_LoadQualifier($c, "$form_def", "$qualification")) {
       print "$ars_errstr\n";
        die;
   }
      %entries = ars_GetListEntry($c, "$form_def", $qual, 0, 0) ;
   print "Grid definition not found : $view \n" if scalar(%entries) == 0 ;
   
   # should only be one!!
   foreach $entryid(keys %entries) {
      unless (%fidvals = ars_GetEntry($c, "$form_def", "$entryid")) {
        print "$ars_errstr\n";
        die ;
      }
      $ret_report_format{display}{title} = $fidvals{536870913};
      $ret_report_format{display}{excel} = $fidvals{536870914};
      $ret_report_format{sql}{order} = $fidvals{536870915};
      $ret_report_format{display}{denote_new_sorted_val} =
$fidvals{536870916};
      $ret_report_format{display}{javascript} = $fidvals{536870918};
      $ret_report_format{display}{percmain1} = $fidvals{536870919};
      }
   # get grid-column defintions
   my $form_cols = "rdpv_grid_def_cols";
   my $display_order_fid = 536870916;
   $qualification = qq,'View Name' = "$view",;
   unless ($qual = ars_LoadQualifier($c, "$form_cols", "$qualification")) {
        print "$ars_errstr\n";
        die;
   }
      %entries = ars_GetListEntry($c, "$form_cols", $qual, 0, 0);
   foreach $entryid(keys %entries) {
      unless (%fidvals = ars_GetEntry($c, "$form_cols", "$entryid")) {
                print "$ars_errstr\n";
                die;
      }
      $order = $fidvals{$display_order_fid};
      $ret_report_format{display}{columns}{$order}->{form} =
$fidvals{536870913};
      $ret_report_format{display}{columns}{$order}->{field} =
&RAD_fid_til_semi($fidvals{536870914});
      $ret_report_format{display}{columns}{$order}->{display_type} =
$fidvals{536870915};

      # if enum, pass form and fid for reference
      if ($fidvals{536870915} eq "enum") {
              $fidvals{536870913};
              my $frs_para = $c;
              my $sec_para = $fidvals{536870913};
              my $thrd_para =
$ret_report_format{display}{columns}{$order}->{field};
        $ret_report_format{display}{columns}{$order}->{enum} = 
&ARS_getEnumVals($c,
$fidvals{536870913}, $ret_report_format{display}{columns}{$order}->{field});
        }
      $ret_report_format{display}{columns}{$order}->{alternate_label} =
$fidvals{536870917}; 
      $ret_report_format{display}{columns}{$order}->{special_instructions} =
$fidvals{536870918};
      $ret_report_format{display}{columns}{$order}->{max_width} =
$fidvals{536870919};
      $ret_report_format{display}{columns}{$order}->{wrap_at} =
$fidvals{536870920};
      $ret_report_format{display}{columns}{$order}->{convert_to} =
$fidvals{536870921};
      $ret_report_format{display}{columns}{$order}->{url} =
$fidvals{536870924};
      $ret_report_format{display}{columns}{$order}->{sortorder} =
$fidvals{536870925};
      $ret_report_format{display}{columns}{$order}->{sortedby} =
$fidvals{536870926};
      $ret_form = $fidvals{536870913};
      }

   return ($ret_form, \%ret_report_format);
   }
   
   
   
   sub ARS_getEnumVals {
   my $xc = $_[0];
   my $xform = $_[1];
   my $xfid = $_[2];
      (my $fieldinfo = ars_GetField($xc, $xform, $xfid)) ||
            die "GetField: $ars_errstr";
   my @enumvals = @{$fieldinfo->{limit}};
   return (\...@enumvals);
        }

I did try different options but NO luck, I really appreciate if you can help
me fix this issue.

Thanks,
kishorkv
-- 
View this message in context: 
http://www.nabble.com/Please-Help---my-enumvals-ARS-Perl-1.91-Remedy-7.1-tp20984758p20984758.html
Sent from the ARS (Action Request System) mailing list archive at Nabble.com.

_______________________________________________________________________________
UNSUBSCRIBE or access ARSlist Archives at www.arslist.org
Platinum Sponsor: www.rmsportal.com ARSlist: "Where the Answers Are"

Reply via email to