+++ /dev/null
-#=====================================================================
-# LX-Office ERP
-# Copyright (C) 2004
-# Based on SQL-Ledger Version 2.1.9
-# Web http://www.lx-office.org
-#
-#
-# XIII form retrieval
-#
-#======================================================================
-
-package XIII;
-
-sub retrieve_form {
- $main::lxdebug->enter_sub();
-
- my ($self, $myconfig, $form) = @_;
-
- my $dbh = $form->dbconnect($myconfig);
- my $query = qq|SELECT f.line
- FROM xiii_forms f
- WHERE f.file = '$form->{file}'
- AND f.dbname = '$myconfig->{dbname}'
- ORDER BY f.oid|;
- my $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- my $ref;
-
- while ($ref = $sth->fetchrow_hashref(NAME_lc)) {
- push @{ $form->{body} }, $ref->{line};
- }
-
- $sth->finish;
-
- $dbh->disconnect;
-
- $main::lxdebug->leave_sub();
-}
-
-sub delete_form {
- $main::lxdebug->enter_sub();
-
- my ($self, $myconfig, $form) = @_;
-
- # connect to database, turn AutoCommit off
- my $dbh = $form->dbconnect_noauto($myconfig);
-
- my $query = qq|DELETE FROM xiii_forms
- WHERE file = '$form->{file}'
- AND dbname = '$myconfig->{dbname}'|;
- $dbh->do($query) || $form->dberror($query);
-
- # commit and redirect
- $rc = $dbh->commit;
- $dbh->disconnect;
-
- $main::lxdebug->leave_sub();
-
- return $rc;
-}
-
-sub save_form {
- $main::lxdebug->enter_sub();
-
- my ($self, $myconfig, $form) = @_;
-
- # connect to database, turn AutoCommit off
- my $dbh = $form->dbconnect_noauto($myconfig);
-
- my $query = qq|DELETE FROM xiii_forms
- WHERE file = '$form->{file}'
- AND dbname = '$myconfig->{dbname}'|;
- $dbh->do($query) || $form->dberror($query);
-
- $query = qq|INSERT INTO xiii_forms (line, file, dbname)
- VALUES (?, '$form->{file}', '$myconfig->{dbname}')|;
-
- $sth = $dbh->prepare($query);
-
- foreach $line (split /\r/, $form->{body}) {
- $sth->execute($line) || $form->dberror($query);
- $sth->finish;
- }
-
- $rc = $dbh->commit;
- $dbh->disconnect;
-
- $main::lxdebug->leave_sub();
-
- return $rc;
-}
-
-1;
-