Jerry Preston wrote: > > Hi! Hello,
> 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; > } $Site = sprintf '%-5s ', $Site; > $l = length( $Description ); > if( $l > 15 ) { > $Description = substr( $Description, 0, 14 ); > }elsif( $l != 15 ) { > $s = substr( " ", 0, 14 - $l ); > $Description .= $s; > } $Description = sprintf '%-14.14s ', $Description; > $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; > } $Part_Number = sprintf '%-14.14s ', $Part_Number; > $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; > } $Part_Serial_Number = sprintf '%-9.9s ', $Part_Serial_Number; > $l = length( $Qty ); > if( $l > 3 ) { > $Qty = substr( $Qty, 0, 2 ); > }elsif( $l != 1 ) { > $s = substr( " ", 0, 3 - $l ); > $Qty .= $s; > } $Qty = sprintf '%-2.2s ', $Qty; > if( $Site !~ /test/i ) { > $_ = "$Site|$Description |$Part_Number |$Part_Serial_Number |$Qty > |$RMA_Number |$Customer_Contact |$RMA_ Date |$Part_ Rec\n"; > # print $_; > print FO $_; local $_ = join( '|', $Site, $Description, $Part_Number, $Part_Serial_Number, $Qty, $RMA_Number, $Customer_Contact, $RMA_ Date, $Part_ Rec ) . "\n"; # print; print FO; > } > } John -- use Perl; program fulfillment -- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]