"AND cust_bill.custnum = $custnum",
%params
}),
+ qsearch({
+ table => 'cust_event_fee',
+ addl_from => 'JOIN cust_event USING (eventnum) ' .
+ 'JOIN part_event USING (eventpart) ' .
+ 'JOIN cust_pay_batch ON (cust_event.tablenum = cust_pay_batch.paybatchnum)',
+ extra_sql => "$where eventtable = 'cust_pay_batch' ".
+ "AND cust_pay_batch.custnum = $custnum",
+ %params
+ }),
qsearch({
table => 'cust_event_fee',
addl_from => 'JOIN cust_event USING (eventnum) ' .
my $object = $event_fee->cust_event->cust_X;
my $part_fee = $event_fee->part_fee;
my $cust_bill;
- if ( $object->isa('FS::cust_main') or $object->isa('FS::cust_pkg') ) {
+ if ( $object->isa('FS::cust_main')
+ or $object->isa('FS::cust_pkg')
+ or $object->isa('FS::cust_pay_batch') )
+ {
# Not the real cust_bill object that will be inserted--in particular
# there are no taxes yet. If you want to charge a fee on the total
# invoice amount including taxes, you have to put the fee on the next
sub description { 'Charge a fee based on the customer\'s current invoice'; }
sub eventtable_hashref {
- { 'cust_main' => 1 };
+ { 'cust_main' => 1,
+ 'cust_pay_batch' => 1 };
}
sub hold_until_bill { 1 }