From 64761e56ccfbf98844d2fc8c7aa68ee608a2b162 Mon Sep 17 00:00:00 2001 From: Nick Clemens Date: Fri, 6 Jul 2018 12:56:54 +0000 Subject: [PATCH] Bug 20980: DBRev 18.06.00.004 Signed-off-by: Nick Clemens --- Koha.pm | 2 +- .../data/mysql/atomicupdate/bug_20980.perl | 39 ------------------ installer/data/mysql/updatedatabase.pl | 40 +++++++++++++++++++ 3 files changed, 41 insertions(+), 40 deletions(-) delete mode 100644 installer/data/mysql/atomicupdate/bug_20980.perl diff --git a/Koha.pm b/Koha.pm index a025b10eba..e92189f04b 100644 --- a/Koha.pm +++ b/Koha.pm @@ -29,7 +29,7 @@ use vars qw{ $VERSION }; # - #4 : the developer version. The 4th number is the database subversion. # used by developers when the database changes. updatedatabase take care of the changes itself # and is automatically called by Auth.pm when needed. -$VERSION = "18.06.00.003"; +$VERSION = "18.06.00.004"; sub version { return $VERSION; diff --git a/installer/data/mysql/atomicupdate/bug_20980.perl b/installer/data/mysql/atomicupdate/bug_20980.perl deleted file mode 100644 index 691ecd571f..0000000000 --- a/installer/data/mysql/atomicupdate/bug_20980.perl +++ /dev/null @@ -1,39 +0,0 @@ -$DBversion = 'XXX'; -if( CheckVersion( $DBversion ) ) { - - # Add 'Manual Credit' offset type - $dbh->do(q{ - INSERT IGNORE INTO `account_offset_types` (`type`) VALUES ('Manual Credit'); - }); - - # Fix wrong account offsets / Manual credits - $dbh->do(q{ - UPDATE account_offsets - SET credit_id=debit_id, - debit_id=NULL, - type='Manual Credit' - WHERE amount < 0 AND - type='Manual Debit' AND - debit_id IN - (SELECT accountlines_id AS debit_id - FROM accountlines - WHERE accounttype='C'); - }); - - # Fix wrong account offsets / Manually forgiven amounts - $dbh->do(q{ - UPDATE account_offsets - SET credit_id=debit_id, - debit_id=NULL, - type='Writeoff' - WHERE amount < 0 AND - type='Manual Debit' AND - debit_id IN - (SELECT accountlines_id AS debit_id - FROM accountlines - WHERE accounttype='FOR'); - }); - - SetVersion( $DBversion ); - print "Upgrade to $DBversion done (Bug 20980 - Manual credit offsets are stored as debits)\n"; -} diff --git a/installer/data/mysql/updatedatabase.pl b/installer/data/mysql/updatedatabase.pl index b09399e16d..cb6c225e1d 100755 --- a/installer/data/mysql/updatedatabase.pl +++ b/installer/data/mysql/updatedatabase.pl @@ -16087,6 +16087,46 @@ if( CheckVersion( $DBversion ) ) { print "Upgrade to $DBversion done (Bug 20073 - Add new types for Elasticsearch fields)\n"; } +$DBversion = '18.06.00.004'; +if( CheckVersion( $DBversion ) ) { + + # Add 'Manual Credit' offset type + $dbh->do(q{ + INSERT IGNORE INTO `account_offset_types` (`type`) VALUES ('Manual Credit'); + }); + + # Fix wrong account offsets / Manual credits + $dbh->do(q{ + UPDATE account_offsets + SET credit_id=debit_id, + debit_id=NULL, + type='Manual Credit' + WHERE amount < 0 AND + type='Manual Debit' AND + debit_id IN + (SELECT accountlines_id AS debit_id + FROM accountlines + WHERE accounttype='C'); + }); + + # Fix wrong account offsets / Manually forgiven amounts + $dbh->do(q{ + UPDATE account_offsets + SET credit_id=debit_id, + debit_id=NULL, + type='Writeoff' + WHERE amount < 0 AND + type='Manual Debit' AND + debit_id IN + (SELECT accountlines_id AS debit_id + FROM accountlines + WHERE accounttype='FOR'); + }); + + SetVersion( $DBversion ); + print "Upgrade to $DBversion done (Bug 20980 - Manual credit offsets are stored as debits)\n"; +} + # SEE bug 13068 # if there is anything in the atomicupdate, read and execute it. -- 2.39.5