From 1667ab631f9fbd0f4ceeb6ec000b0f4ff3ddb51a Mon Sep 17 00:00:00 2001 From: Jonathan Prykop Date: Tue, 22 Dec 2015 00:28:53 -0600 Subject: RT#34295: Error when attempting to create batch payments [better handling of empty batches] --- FS/bin/freeside-paymentech-upload | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'FS/bin/freeside-paymentech-upload') diff --git a/FS/bin/freeside-paymentech-upload b/FS/bin/freeside-paymentech-upload index 5ae147d07..799e6c42c 100755 --- a/FS/bin/freeside-paymentech-upload +++ b/FS/bin/freeside-paymentech-upload @@ -68,6 +68,10 @@ foreach my $pay_batch (@batches) { my $filename = sprintf('%06d',$batchnum) . '-' .time2str('%Y%m%d%H%M%S', time); print STDERR "Exporting batch $batchnum to $filename...\n" if $opt_v; my $text = $pay_batch->export_batch(format => 'paymentech'); + unless ($text) { + print STDERR "Batch is empty, resolving..." if $opt_v; + next; + } $text =~ s!FILEID!$filename! or log_and_die("couldn't find FILEID tag\n"); open OUT, ">$tmpdir/$filename.xml"; @@ -80,6 +84,7 @@ foreach my $pay_batch (@batches) { log_and_die("failed to create zip file\n") if (! -f "$tmpdir/$filename.zip" ); push @filenames, $filename; } +log_and_die("All batches empty\n") if !@filenames; my $host = ($opt_t ? 'orbitalbatchvar.paymentech.net' : 'orbitalbatch.paymentech.net'); -- cgit v1.2.1