#===================================================================== # LedgerSMB Small Medium Business Accounting # http://www.ledgersmb.org/ # # Copyright (C) 2006 # This work contains copyrighted information from a number of sources all used # with permission. # # This file contains source code included with or based on SQL-Ledger which # is Copyright Dieter Simader and DWS Systems Inc. 2000-2005 and licensed # under the GNU General Public License version 2 or, at your option, any later # version. For a full list including contact information of contributors, # maintainers, and copyright holders, see the CONTRIBUTORS file. # # Original Copyright Notice from SQL-Ledger 2.6.17 (before the fork): # Copyright (c) 2001 # # Author: DWS Systems Inc. # Web: http://www.sql-ledger.org # # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. #====================================================================== # # Order entry module # Quotation module # #====================================================================== use LedgerSMB::OE; use LedgerSMB::IR; use LedgerSMB::IS; use LedgerSMB::PE; use LedgerSMB::Tax; use LedgerSMB::Locale; require "bin/arap.pl"; require "bin/io.pl"; 1; # end of main sub add { if ( $form->{type} eq 'purchase_order' ) { $form->{title} = $locale->text('Add Purchase Order'); $form->{vc} = 'vendor'; } if ( $form->{type} eq 'sales_order' ) { $form->{title} = $locale->text('Add Sales Order'); $form->{vc} = 'customer'; } if ( $form->{type} eq 'request_quotation' ) { $form->{title} = $locale->text('Add Request for Quotation'); $form->{vc} = 'vendor'; } if ( $form->{type} eq 'sales_quotation' ) { $form->{title} = $locale->text('Add Quotation'); $form->{vc} = 'customer'; } $form->{callback} = "$form->{script}?action=add&type=$form->{type}&vc=$form->{vc}&login=$form->{login}&path=$form->{path}&sessionid=$form->{sessionid}" unless $form->{callback}; $form->{rowcount} = 0; &order_links; &prepare_order; &display_form; } sub edit { if ( $form->{type} =~ /(purchase_order|bin_list)/ ) { $form->{title} = $locale->text('Edit Purchase Order'); $form->{vc} = 'vendor'; $form->{type} = 'purchase_order'; } if ( $form->{type} =~ /((sales|work)_order|(packing|pick)_list)/ ) { $form->{title} = $locale->text('Edit Sales Order'); $form->{vc} = 'customer'; $form->{type} = 'sales_order'; } if ( $form->{type} eq 'request_quotation' ) { $form->{title} = $locale->text('Edit Request for Quotation'); $form->{vc} = 'vendor'; } if ( $form->{type} eq 'sales_quotation' ) { $form->{title} = $locale->text('Edit Quotation'); $form->{vc} = 'customer'; } &order_links; &prepare_order; &display_form; } sub order_links { # retrieve order/quotation OE->retrieve( \%myconfig, \%$form ); # get customer/vendor $form->all_vc( \%myconfig, $form->{vc}, ( $form->{vc} eq 'customer' ) ? "AR" : "AP", undef, $form->{transdate}, 1 ); # currencies @curr = split /:/, $form->{currencies}; $form->{defaultcurrency} = $curr[0]; chomp $form->{defaultcurrency}; $form->{currency} = $form->{defaultcurrency} unless $form->{currency}; for (@curr) { $form->{selectcurrency} .= "