use DBI; require formats.pl; $dbh = DBI->connect("dbi:SQLite:dbname=K&M","","") || die "\nCan't open Database!\n"; $row = $dbh->selectrow_arrayref( "SELECT COUNT(*) from INV" ); $count = $row->[0]; $results = $dbh->selectall_arrayref("SELECT * FROM INV ORDER BY VENDOR, CODE"); open INVENTORY,">print.txt"; select INVENTORY; my $inventory_format = select(INVENTORY); $^L = ""; $= = 54; select($inventory_format); for(my $i=0; $i <= $count; $i++) { $user = $results->[$i]; if ($vendor ne $user->[6]) { $left=$-; $dap=$%; close($inventory_format); close INVENTORY; open TOTALS,">>print.txt"; select TOTALS; my $totals_format = select(TOTALS); $^L = ""; $= = 54; select($totals_format); $-=$left; write; $left=$-; for(my $y=$left;$y>=1;$y--){ print "\n"; } $TOTAL_ITEMS=0; $TOTAL_DWT=0; $TOTAL_DWT_COST=0; $TOTAL_COST=0; $TOTAL_PRICE=0; open INVENTORY,">>print.txt"; select INVENTORY; my $inventory_format = select(INVENTORY); $^L = ""; $= = 54; select($inventory_format); $- = 0; } $vendor=$user->[6]; write; $TOTAL_ITEMS++; $TOTAL_DWT+=$user->[1]; $TOTAL_DWT_COST+=$user->[0]; $TOTAL_COST+=$user->[2]; $TOTAL_PRICE+=$user->[3]; }