blob: dc4b012396d5af30674121e380fec17319610003 (
plain)
- =head1 NAME
- LedgerSMB::Location - LedgerSMB class for managing Business Locations
- =head1 SYOPSIS
- This module creates object instances based on LedgerSMB's in-database ORM.
- =head1 METHODS
- The following method is static:
- =item new ($LedgerSMB object);
- The following methods are passed through to stored procedures:
- =item save
- =item get
- =item search
- =item list_all
- =item delete (via Autoload)
- The above list may grow over time, and may depend on other installed modules.
- =head1 Copyright (C) 2007, The LedgerSMB core team.
- This file is licensed under the Gnu General Public License version 2, or at your
- option any later version. A copy of the license should have been included with
- your software.
- =back
- =cut
- package LedgerSMB::Location;
- use LedgerSMB;
- use LedgerSMB::DBObject;
- use strict;
- our $VERSION = '1.0.0';
- our @ISA = qw(LedgerSMB::DBObject);
- sub AUTOLOAD {
- my $self = shift;
- my $AUTOLOAD = $LedgerSMB::Location::AUTOLOAD;
- $AUTOLOAD =~ s/^.*:://;
- my $procname = "location_$AUTOLOAD";
- $self->exec_method(procname => "location_$AUTOLOAD", args => \@_);
- }
- sub save {
- $ref = shift @{$self->exec_method(procname =>"location_save")};
- $self->merge($ref, 'id');
- }
- sub get {
- $ref = shift @{$self->exec_method(procname =>'location_get')};
- $self->merge($ref, keys %{$ref});
- }
- sub search {
- $self->{search_results} =
- $self->exec_method(procname => 'location_search');
- }
- sub list_all {
- $self->{search_results} =
- $self->exec_method(procname => 'location_list_all');
- }
|