mysql billing fixes, 1.9
[freeside.git] / FS / FS / part_event / Condition / cust_bill_has_service.pm
index 91d75dd..d85af26 100644 (file)
@@ -38,14 +38,16 @@ sub condition {
 }
 
 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 = CAST( $servicenum AS integer )
+      AND cs.svcpart = CAST( $servicenum AS $integer )
   )
   |;
   return $sql;