Hi!

I am looking for way to reduce the following code,  a better way, a perl
way.  Any ideas?

  while ( my ( $Site, $Description, $Part_Number, $Part_Serial_Number, $Qty,
$RMA_Number, $Customer_Contac, $RMA_Date, $Part_Rec ) = $sth->fetchrow()) {
#  while ( $data ) = $sth->fetchrow()) {
    $l = length( $Site );
    if( $l != 5 ) {
      $s = substr( "            ", 0, 5 - $l );
      $Site .= $s;
    }
    $l = length( $Description );
    if( $l > 15 ) {
      $Description = substr( $Description, 0, 14 );
    }elsif( $l != 15 ) {
      $s = substr( "                             ", 0, 14 - $l );
      $Description .= $s;
    }

    $l = length( $Part_Number );
    if( $l > 15 ) {
      $Part_Number = substr( $Part_Number, 0, 14 );
    }elsif( $l != 15 ) {
      $s = substr( "                             ", 0, 14 - $l );
      $Part_Number .= $s;
    }

    $l = length( $Part_Serial_Number );
    if( $l > 10 ) {
      $Part_Serial_Number = substr( $Part_Serial_Number, 0, 9 );
    }elsif( $l != 1 ) {
      $s = substr( "                             ", 0, 9 - $l );
      $Part_Serial_Number .= $s;
    }

    $l = length( $Qty );
    if( $l > 3 ) {
      $Qty = substr( $Qty, 0, 2 );
    }elsif( $l != 1 ) {
      $s = substr( "                             ", 0, 3 - $l );
      $Qty .= $s;
    }


    if( $Site !~ /test/i ) {
      $_ = "$Site|$Description |$Part_Number |$Part_Serial_Number |$Qty
|$RMA_Number |$Customer_Contact |$RMA_ Date |$Part_ Rec\n";
#      print $_;
      print FO $_;
    }
  }

Thanks,

Jerry

Reply via email to