@@ -1182,7 +1164,8 @@ $shipto
-|;
+| . $form->write_trigger(\%myconfig, 2, "fromB", "BL", "trigger_from",
+ "toB", "BL", "trigger_to");
$lxdebug->leave_sub();
}
@@ -1199,13 +1182,6 @@ sub form_footer {
($form->{db} eq 'customer')
? $locale->text('Save and AR Transaction')
: $locale->text('Save and AP Transaction');
- if ($vertreter) {
- $update_button =
- qq||;
- } else {
- $update_button = "";
- }
##
##
@@ -1214,11 +1190,9 @@ sub form_footer {
print qq|
{id}>
-
-{path}>
{login}>
{password}>
@@ -1228,7 +1202,6 @@ sub form_footer {
-$update_button
\n|;
}
- if ($form->{menubar}) {
- require "$form->{path}/menu.pl";
- &menubar;
+ # button for saving history
+ if($form->{id} ne "") {
+ print qq|
+ {id}
+ . qq|); name=history id=history value=|
+ . $locale->text('history')
+ . qq|>|;
}
+ # /button for saving history
print qq|
@@ -1269,18 +1248,25 @@ initializetabcontent("maintab")
sub add_transaction {
$lxdebug->enter_sub();
+# # saving the history
+# if(!exists $form->{addition}) {
+# $form->{addition} = "ADD TRANSACTION";
+# $form->save_history($form->dbconnect(\%myconfig));
+# }
+# # /saving the history
+
$form->isblank("name", $locale->text("Name missing!"));
- if ($vertreter && $form->{db} eq "customer") {
- $form->isblank("salesman_id", $locale->text("Salesman missing!"));
+ if ($form->{"db"} eq "customer") {
+ CT->save_customer(\%myconfig, \%$form);
+ } else {
+ CT->save_vendor(\%myconfig, \%$form);
}
- &{"CT::save_$form->{db}"}("", \%myconfig, \%$form);
$form->{callback} = $form->escape($form->{callback}, 1);
$name = $form->escape("$form->{name}", 1);
$form->{callback} =
- "$form->{script}?login=$form->{login}&path=$form->{path}&password=$form->{password}&action=add&vc=$form->{db}&$form->{db}_id=$form->{id}&$form->{db}=$name&type=$form->{type}&callback=$form->{callback}";
-
+ "$form->{script}?login=$form->{login}&password=$form->{password}&action=add&vc=$form->{db}&$form->{db}_id=$form->{id}&$form->{db}=$name&type=$form->{type}&callback=$form->{callback}";
$form->redirect;
$lxdebug->leave_sub();
@@ -1290,8 +1276,14 @@ sub save_and_ap_transaction {
$lxdebug->enter_sub();
$form->{script} = "ap.pl";
+ # saving the history
+ if(!exists $form->{addition}) {
+ $form->{snumbers} = qq|invnumber_| . $form->{invnumber};
+ $form->{addition} = "SAVED";
+ $form->save_history($form->dbconnect(\%myconfig));
+ }
+ # /saving the history
&add_transaction;
-
$lxdebug->leave_sub();
}
@@ -1299,8 +1291,14 @@ sub save_and_ar_transaction {
$lxdebug->enter_sub();
$form->{script} = "ar.pl";
+ # saving the history
+ if(!exists $form->{addition}) {
+ $form->{snumbers} = qq|invnumber_| . $form->{invnumber};
+ $form->{addition} = "SAVED";
+ $form->save_history($form->dbconnect(\%myconfig));
+ }
+ # /saving the history
&add_transaction;
-
$lxdebug->leave_sub();
}
@@ -1309,8 +1307,14 @@ sub save_and_invoice {
$form->{script} = ($form->{db} eq 'customer') ? "is.pl" : "ir.pl";
$form->{type} = "invoice";
+ # saving the history
+ if(!exists $form->{addition}) {
+ $form->{snumbers} = qq|invnumber_| . $form->{invnumber};
+ $form->{addition} = "SAVED";
+ $form->save_history($form->dbconnect(\%myconfig));
+ }
+ # /saving the history
&add_transaction;
-
$lxdebug->leave_sub();
}
@@ -1319,8 +1323,14 @@ sub save_and_rfq {
$form->{script} = "oe.pl";
$form->{type} = "request_quotation";
+ # saving the history
+ if(!exists $form->{addition}) {
+ $form->{snumbers} = qq|ordnumber_| . $form->{ordnumber};
+ $form->{addition} = "SAVED";
+ $form->save_history($form->dbconnect(\%myconfig));
+ }
+ # /saving the history
&add_transaction;
-
$lxdebug->leave_sub();
}
@@ -1329,8 +1339,14 @@ sub save_and_quotation {
$form->{script} = "oe.pl";
$form->{type} = "sales_quotation";
+ # saving the history
+ if(!exists $form->{addition}) {
+ $form->{snumbers} = qq|ordnumber_| . $form->{ordnumber};
+ $form->{addition} = "SAVED";
+ $form->save_history($form->dbconnect(\%myconfig));
+ }
+ # /saving the history
&add_transaction;
-
$lxdebug->leave_sub();
}
@@ -1340,8 +1356,14 @@ sub save_and_order {
$form->{script} = "oe.pl";
$form->{type} =
($form->{db} eq 'customer') ? "sales_order" : "purchase_order";
+ # saving the history
+ if(!exists $form->{addition}) {
+ $form->{snumbers} = qq|ordnumber_| . $form->{ordnumber};
+ $form->{addition} = "SAVED";
+ $form->save_history($form->dbconnect(\%myconfig));
+ }
+ # /saving the history
&add_transaction;
-
$lxdebug->leave_sub();
}
@@ -1355,13 +1377,21 @@ sub save_and_close {
$imsg .= " saved!";
$form->isblank("name", $locale->text("Name missing!"));
- if ($vertreter && $form->{db} eq "customer") {
- $form->isblank("salesman_id", $locale->text("Salesman missing!"));
+ if ($form->{"db"} eq "customer") {
+ $rc = CT->save_customer(\%myconfig, \%$form);
+ } else {
+ $rc = CT->save_vendor(\%myconfig, \%$form);
}
- $rc = &{"CT::save_$form->{db}"}("", \%myconfig, \%$form);
if ($rc == 3) {
$form->error($locale->text('customernumber not unique!'));
}
+ # saving the history
+ if(!exists $form->{addition}) {
+ $form->{snumbers} = ($form->{"db"} eq "customer" ? qq|customernumber_| . $form->{customernumber} : qq|vendornumber_| . $form->{vendornumber});
+ $form->{addition} = "SAVED";
+ $form->save_history($form->dbconnect(\%myconfig));
+ }
+ # /saving the history
$form->redirect($locale->text($msg));
$lxdebug->leave_sub();
@@ -1377,12 +1407,28 @@ sub save {
$imsg .= " saved!";
$form->isblank("name", $locale->text("Name missing!"));
- if ($vertreter && $form->{db} eq "customer") {
- $form->isblank("salesman_id", $locale->text("Salesman missing!"));
+
+ my $res;
+ if ($form->{"db"} eq "customer") {
+ $res = CT->save_customer(\%myconfig, \%$form);
+ } else {
+ $res = CT->save_vendor(\%myconfig, \%$form);
}
- print(STDERR "SHIPTO in sub save $form->{shipto_id}\n");
- &{"CT::save_$form->{db}"}("", \%myconfig, \%$form);
+ if (3 == $res) {
+ if ($form->{"db"} eq "customer") {
+ $form->error($locale->text('This customer number is already in use.'));
+ } else {
+ $form->error($locale->text('This vendor number is already in use.'));
+ }
+ }
+ # saving the history
+ if(!exists $form->{addition}) {
+ $form->{snumbers} = ($form->{"db"} eq "customer" ? qq|customernumber_| . $form->{customernumber} : qq|vendornumber_| . $form->{vendornumber});
+ $form->{addition} = "SAVED";
+ $form->save_history($form->dbconnect(\%myconfig));
+ }
+ # /saving the history
&edit;
exit;
$lxdebug->leave_sub();
@@ -1400,6 +1446,13 @@ sub delete {
$msg = ucfirst $form->{db};
$msg .= " deleted!";
+ # saving the history
+ if(!exists $form->{addition}) {
+ $form->{snumbers} = ($form->{"db"} eq "customer" ? qq|customernumber_| . $form->{customernumber} : qq|vendornumber_| . $form->{vendornumber});
+ $form->{addition} = "DELETED";
+ $form->save_history($form->dbconnect(\%myconfig));
+ }
+ # /saving the history
$form->redirect($locale->text($msg));
$msg = "Cannot delete $form->{db}";
@@ -1420,179 +1473,10 @@ sub display {
sub update {
$lxdebug->enter_sub();
- &check_salesman($form->{salesman});
-
- # $form->get_salesman(\%myconfig, $form->{salesman});
&display();
$lxdebug->leave_sub();
}
-sub check_salesman {
- $lxdebug->enter_sub();
-
- my ($name) = @_;
-
- my ($new_name, $new_id) = split /--/, $form->{$name};
- my $i = 0;
-
- # check name, combine name and id
- if ($form->{"oldsalesman"} ne $form->{"salesman"}) {
-
- # return one name or a list of names in $form->{name_list}
- if (($i = $form->get_salesman(\%myconfig, $name)) > 1) {
- &select_salesman($name);
- exit;
- }
-
- if ($i == 1) {
-
- # we got one name
- $form->{"salesman_id"} = $form->{salesman_list}[0]->{id};
- $form->{salesman} = $form->{salesman_list}[0]->{name};
- $form->{"oldsalesman"} = $form->{salesman};
-
- } else {
-
- # name is not on file
- # $locale->text('Customer not on file!')
- # $locale->text('Vendor not on file!')
- $msg = ucfirst $name . " not on file or locked!";
- $form->error($locale->text($msg));
- }
- }
-
- $lxdebug->leave_sub();
-
- return $i;
-}
-
-sub select_salesman {
- $lxdebug->enter_sub();
-
- my ($table) = @_;
-
- @column_index = qw(ndx name);
-
- $label = ucfirst $table;
- $column_data{ndx} = qq| | | |;
- $column_data{name} =
- qq|| . $locale->text($label) . qq| | |;
-
- # list items with radio button on a form
- $form->header;
-
- $title = $locale->text('Select from one of the names below');
-
- print qq|
-
-
-
-
-
-
-|;
-
- $lxdebug->leave_sub();
-}
-
-sub salesman_selected {
- $lxdebug->enter_sub();
-
- # replace the variable with the one checked
-
- # index for new item
- $i = $form->{ndx};
-
- $form->{salesman} = $form->{"new_name_$i"};
- $form->{"salesman_id"} = $form->{"new_id_$i"};
- $form->{"oldsalesman"} = $form->{salesman};
-
- # delete all the new_ variables
- for $i (1 .. $form->{lastndx}) {
- map { delete $form->{"new_${_}_$i"} } (id, name);
- }
-
- map { delete $form->{$_} } qw(ndx lastndx nextsub);
-
- &update(1);
-
- $lxdebug->leave_sub();
-}
-
sub get_contact {
$lxdebug->enter_sub();
@@ -1607,7 +1491,6 @@ sub get_contact {
}
-
sub get_shipto {
$lxdebug->enter_sub();
@@ -1705,4 +1588,4 @@ sub get_delivery {
}
-sub continue { &{ $form->{nextsub} } }
+sub continue { call_sub($form->{nextsub}); }