% include( '/elements/header.html', 'Developer Documentation' ) %> <& /elements/menubar.html, 'Freeside Perl Modules' => $fsurl.'docs/library/FS.html', 'Complete Index' => $fsurl.'docs/library/index.html', &>
FS::upgrade_journal - Object methods for upgrade_journal records
use FS::upgrade_journal;
$record = new FS::upgrade_journal \%hash;
$record = new FS::upgrade_journal { 'column' => 'value' };
$error = $record->insert;
# Typical use case
my $upgrade = 'rename_all_customers_to_Bob';
if ( ! FS::upgrade_journal->is_done($upgrade) ) {
... # do the upgrade, then, if it succeeds
FS::upgrade_journal->set_done($upgrade);
}
An FS::upgrade_journal object records an upgrade procedure that was run on the database. FS::upgrade_journal inherits from FS::Record. The following fields are currently supported:
Creates a new upgrade record. To add it to the database, see "insert".
Note that this stores the hash reference, not a distinct copy of the hash it points to. You can ask the object for a copy with the hash method.
Adds this record to the database. If there is an error, returns the error, otherwise returns false.
Checks all fields to make sure this is a valid example. If there is an error, returns the error, otherwise returns false. Called by the insert and replace methods.
Returns the upgrade entry with identifier UPGRADE and status 'done', if there is one. This is an easy way to check whether an upgrade has been done.
Creates and inserts an upgrade entry with the current time, status 'done', and identifier UPGRADE. Dies on error.
Despite how it looks, this is not currently suitable for use as a mutex.
FS::Record, schema.html from the base documentation.
Hey! The above document had some coding errors, which are explained below:
You forgot a '=back' before '=head1'