summaryrefslogtreecommitdiff
path: root/FS/FS/UID.pm
diff options
context:
space:
mode:
authorMitch Jackson <mitch@freeside.biz>2018-09-11 03:23:52 -0400
committerMitch Jackson <mitch@freeside.biz>2018-09-11 03:23:52 -0400
commit829aa888318799d2ff4871c92b0d457abda49714 (patch)
treefb871a9623110ecd742c399902c0fedc65efc3ca /FS/FS/UID.pm
parent68cdfc7f046ac2496ed880d93e07f0eae34a5366 (diff)
RT# 78547 Allow for simulated billing within a transaction
Diffstat (limited to 'FS/FS/UID.pm')
-rw-r--r--FS/FS/UID.pm12
1 files changed, 11 insertions, 1 deletions
diff --git a/FS/FS/UID.pm b/FS/FS/UID.pm
index 50a9178..693e5d9 100644
--- a/FS/FS/UID.pm
+++ b/FS/FS/UID.pm
@@ -5,7 +5,7 @@ use strict;
use vars qw(
@EXPORT_OK $DEBUG $me $cgi $freeside_uid $conf_dir $cache_dir
$secrets $datasrc $db_user $db_pass $schema $dbh $driver_name
- $AutoCommit %callback @callback $callback_hack
+ $AutoCommit $ForceObeyAutoCommit %callback @callback $callback_hack
);
use subs qw( getsecrets );
use Carp qw( carp croak cluck confess );
@@ -26,7 +26,17 @@ $freeside_uid = scalar(getpwnam('freeside'));
$conf_dir = "%%%FREESIDE_CONF%%%";
$cache_dir = "%%%FREESIDE_CACHE%%%";
+# Code wanting to issue a COMMIT statement to the database is expected to
+# obey the convention of checking this flag first. Setting $AutoCommit = 0
+# should (usually) suppress COMMIT statements.
$AutoCommit = 1; #ours, not DBI
+
+# Not all methods obey $AutoCommit, by design choice. Setting
+# $ForceObeyAutoCommit = 1 will override that design choice for:
+# &FS::cust_main::Billing::collect
+# &FS::cust_main::Billing::do_cust_event
+$ForceObeyAutoCommit = 0;
+
$callback_hack = 0;
=head1 NAME