my($self, $cust_bill) = @_;
my $servicenum = $self->option('has_service');
- grep { $servicenum == $_->svcnum }
+ grep { $servicenum == $_->svcpart }
map { $_->cust_pkg->cust_svc }
$cust_bill->cust_bill_pkg ;
}
sub condition_sql {
- my( $class, $table ) = @_;
+ my( $class, $table, %opt ) = @_;
+
+ my $integer = $opt{'driver_name'} =~ /^mysql/ ? 'UNSIGNED INTEGER' : 'INTEGER';
my $servicenum = $class->condition_sql_option('has_service');
my $sql = qq| 0 < ( SELECT COUNT(cs.svcpart)
FROM cust_bill_pkg cbp, cust_svc cs
WHERE cbp.invnum = cust_bill.invnum
AND cs.pkgnum = cbp.pkgnum
- AND cs.svcpart = $servicenum
+ AND cs.svcpart = CAST( $servicenum AS $integer )
)
|;
return $sql;