Split biblio functions in Acquisitions.pm out to new Biblio.pm

This commit is contained in:
amillar 2002-06-14 21:20:26 +00:00
parent 32541c7c26
commit 3281b19222
37 changed files with 896 additions and 796 deletions

View File

@ -3,6 +3,8 @@ package C4::Acquisitions; #assumes C4/Acquisitions.pm
use strict;
require Exporter;
use C4::Database;
#use C4::Biblio;
use warnings;
use vars qw($VERSION @ISA @EXPORT @EXPORT_OK %EXPORT_TAGS);
@ -10,16 +12,17 @@ use vars qw($VERSION @ISA @EXPORT @EXPORT_OK %EXPORT_TAGS);
$VERSION = 0.01;
@ISA = qw(Exporter);
@EXPORT = qw(&getorders &bookseller &breakdown &basket &newbasket &bookfunds
&ordersearch &newbiblio &newbiblioitem &newsubject &newsubtitle &neworder
&newordernum &modbiblio &modorder &getsingleorder &invoice &receiveorder
&bookfundbreakdown &curconvert &updatesup &insertsup &newitems &modbibitem
&getcurrencies &modsubtitle &modsubject &modaddauthor &moditem &countitems
&findall &needsmod &delitem &delbibitem &delbiblio &delorder &branches
&getallorders &getrecorders &updatecurrencies &getorder &getcurrency &updaterecorder
&updatecost &checkitems &modnote &getitemtypes &getbiblio
&getbiblioitem &getitemsbybiblioitem &isbnsearch &keywordsearch
&websitesearch &addwebsite &updatewebsite &deletewebsite);
@EXPORT = qw(
&getorders &bookseller &breakdown &basket &newbasket &bookfunds
&ordersearch &neworder &newordernum
&modorder &getsingleorder &invoice &receiveorder
&delorder
&bookfundbreakdown &curconvert &updatesup &insertsup
&getcurrencies
&branches &getallorders &getrecorders &updatecurrencies
&getorder &getcurrency &updaterecorder
);
%EXPORT_TAGS = ( ); # eg: TAG => [ qw!name1 name2! ],
# your exported package globals go here,
@ -385,306 +388,6 @@ sub bookfundbreakdown {
}
# Create a new biblio entry
sub newbiblio {
my ($biblio) = @_; # input is ref to hash of fields
my ($bibnum,$error); # return resulting biblio number
$error="";
my $dbh = &C4Connect;
# Get next biblionumber in sequence
my $query = "Select max(biblionumber) from biblio";
my $sth = $dbh->prepare($query);
$sth->execute;
my $data = $sth->fetchrow_arrayref;
$bibnum = $$data[0] + 1;
my $serial; # is this item part of a series?
if ($biblio->{'seriestitle'}) { $serial = 1 } else { $serial = 0 };
$sth->finish;
$query = "insert into biblio set
biblionumber = ?,
title = ?,
author = ?,
copyrightdate = ?,
serial = ?,
seriestitle = ?,
notes = ? ";
# print $query;
$sth = $dbh->prepare($query);
if ( $sth->execute(
$bibnum,
$biblio->{'title'},
$biblio->{'author'},
$biblio->{'copyright'},
$serial,
$biblio->{'seriestitle'} ,
$biblio->{'notes'}
) ) {
$error='';
} else {
$error=$sth->errstr;
$bibnum = "";
} # if exec error
$sth->finish;
$dbh->disconnect;
return($bibnum,$error);
}
sub modbiblio {
my ($bibnum,$title,$author,$copyright,$seriestitle,$serial,$unititle,$notes)=@_;
my $dbh=C4Connect;
my $query = "Update biblio set
title = '$title',
author = '$author',
copyrightdate = '$copyright',
seriestitle = '$seriestitle',
serial = '$serial',
unititle = '$unititle',
notes = '$notes'
where biblionumber = $bibnum";
my $sth=$dbh->prepare($query);
$sth->execute;
$sth->finish;
$dbh->disconnect;
return($bibnum);
}
sub modsubtitle {
my ($bibnum,$subtitle)=@_;
my $dbh=C4Connect;
my $query="update bibliosubtitle set subtitle='$subtitle' where biblionumber=$bibnum";
my $sth=$dbh->prepare($query);
$sth->execute;
$sth->finish;
$dbh->disconnect;
}
sub modaddauthor {
my ($bibnum,$author)=@_;
my $dbh=C4Connect;
my $query="Delete from additionalauthors where biblionumber=$bibnum";
my $sth=$dbh->prepare($query);
$sth->execute;
$sth->finish;
if ($author ne ''){
$query = "Insert into additionalauthors set
author = '$author',
biblionumber = '$bibnum'";
$sth=$dbh->prepare($query);
$sth->execute;
$sth->finish;
} # if
$dbh->disconnect;
} # sub modaddauthor
sub modsubject {
my ($bibnum,$force,@subject)=@_;
my $dbh=C4Connect;
my $count=@subject;
my $error;
for (my $i=0;$i<$count;$i++){
$subject[$i]=~ s/^ //g;
$subject[$i]=~ s/ $//g;
my $query = "select * from catalogueentry
where entrytype = 's'
and catalogueentry = '$subject[$i]'";
my $sth=$dbh->prepare($query);
$sth->execute;
if (my $data = $sth->fetchrow_hashref) {
} else {
if ($force eq $subject[$i]){
#subject not in aut, chosen to force anway
#so insert into cataloguentry so its in auth file
$query = "Insert into catalogueentry
(entrytype,catalogueentry)
values ('s','$subject[$i]')";
my $sth2=$dbh->prepare($query);
$sth2->execute;
$sth2->finish;
} else {
$error="$subject[$i]\n does not exist in the subject authority file";
$query = "Select * from catalogueentry
where entrytype = 's'
and (catalogueentry like '$subject[$i] %'
or catalogueentry like '% $subject[$i] %'
or catalogueentry like '% $subject[$i]')";
my $sth2=$dbh->prepare($query);
$sth2->execute;
while (my $data=$sth2->fetchrow_hashref){
$error=$error."<br>$data->{'catalogueentry'}";
} # while
$sth2->finish;
} # else
} # else
$sth->finish;
} # else
if ($error eq ''){
my $query="Delete from bibliosubject where biblionumber=$bibnum";
my $sth=$dbh->prepare($query);
$sth->execute;
$sth->finish;
for (my $i=0;$i<$count;$i++){
$sth = $dbh->prepare("Insert into bibliosubject
values ('$subject[$i]', $bibnum)");
$sth->execute;
$sth->finish;
} # for
} # if
$dbh->disconnect;
return($error);
} # sub modsubject
sub modbibitem {
my ($bibitemnum,$itemtype,$isbn,$publishercode,$publicationdate,$classification,$dewey,$subclass,$illus,$pages,$volumeddesc,$notes,$size,$place)=@_;
my $dbh=C4Connect;
my $query="update biblioitems set itemtype='$itemtype',
isbn='$isbn',publishercode='$publishercode',publicationyear='$publicationdate',
classification='$classification',dewey='$dewey',subclass='$subclass',illus='$illus',
pages='$pages',volumeddesc='$volumeddesc',notes='$notes',size='$size',place='$place'
where
biblioitemnumber=$bibitemnum";
my $sth=$dbh->prepare($query);
# print $query;
$sth->execute;
$sth->finish;
$dbh->disconnect;
}
sub modnote {
my ($bibitemnum,$note)=@_;
my $dbh=C4Connect;
my $query="update biblioitems set notes='$note' where
biblioitemnumber='$bibitemnum'";
my $sth=$dbh->prepare($query);
$sth->execute;
$sth->finish;
$dbh->disconnect;
}
sub newbiblioitem {
my ($biblioitem) = @_;
my $dbh = C4Connect;
my $data;
my $bibitemnum;
my $error;
# Get next unused number
my $query = "Select max(biblioitemnumber) from biblioitems";
my $sth = $dbh->prepare($query);
$sth->execute;
$data = $sth->fetchrow_arrayref;
$bibitemnum = $$data[0] + 1;
$sth->finish;
$query = "insert into biblioitems set
biblioitemnumber = ?,
biblionumber = ?,
volume = ?,
number = ?,
classification = ?,
itemtype = ?,
url = ?,
isbn = ?,
issn = ?,
lccn = ?,
dewey = ?,
subclass = ?,
publicationyear = ?,
publishercode = ?,
volumedate = ?,
volumeddesc = ?,
illus = ?,
pages = ?,
notes = ?,
size = ?,
marc = ?,
place = ? ";
$sth = $dbh->prepare($query);
$sth->execute(
$bibitemnum,
$biblioitem->{'biblionumber'},
$biblioitem->{'volume'},
$biblioitem->{'number'},
$biblioitem->{'classification'},
$biblioitem->{'itemtype'},
$biblioitem->{'url'},
$biblioitem->{'isbn'},
$biblioitem->{'issn'},
$biblioitem->{'lccn'},
$biblioitem->{'dewey'},
$biblioitem->{'subclass'},
$biblioitem->{'publicationyear'},
$biblioitem->{'publishercode'},
$biblioitem->{'volumedate'},
$biblioitem->{'volumeddesc'},
$biblioitem->{'illus'},
$biblioitem->{'pages'},
$biblioitem->{'notes'},
$biblioitem->{'size'},
$biblioitem->{'marc'},
$biblioitem->{'place'},
) or $error=$sth->errstr;
$sth->finish;
$dbh->disconnect;
return($bibitemnum);
} # sub newbiblioitem
sub newsubject {
my ($bibnum)=@_;
my $dbh=C4Connect;
my $query="insert into bibliosubject (biblionumber) values
($bibnum)";
my $sth=$dbh->prepare($query);
# print $query;
$sth->execute;
$sth->finish;
$dbh->disconnect;
}
sub newsubtitle {
my ($bibnum, $subtitle) = @_;
my $dbh = C4Connect;
$subtitle = $dbh->quote($subtitle);
my $query = "insert into bibliosubtitle set
biblionumber = $bibnum,
subtitle = $subtitle";
my $sth = $dbh->prepare($query);
$sth->execute;
$sth->finish;
$dbh->disconnect;
}
sub neworder {
my ($bibnum,$title,$ordnum,$basket,$quantity,$listprice,$supplier,$who,$notes,$bookfund,$bibitemnum,$rrp,$ecost,$gst,$budget,$cost,$sub,$invoice)=@_;
if ($budget eq 'now'){
@ -918,489 +621,4 @@ sub insertsup {
}
sub newitems {
my ($item, @barcodes) = @_;
my $dbh=C4Connect;
my $query = "Select max(itemnumber) from items";
my $sth = $dbh->prepare($query);
my $data;
my $itemnumber;
my $error;
$sth->execute;
$data = $sth->fetchrow_hashref;
$itemnumber = $data->{'max(itemnumber)'} + 1;
$sth->finish;
$item->{'booksellerid'} = $dbh->quote($item->{'bookselletid'});
$item->{'homebranch'} = $dbh->quote($item->{'homebranch'});
$item->{'price'} = $dbh->quote($item->{'price'});
$item->{'replacementprice'} = $dbh->quote($item->{'replacementprice'});
$item->{'itemnotes'} = $dbh->quote($item->{'itemnotes'});
foreach my $barcode (@barcodes) {
$barcode = uc($barcode);
$query = "Insert into items set
itemnumber = $itemnumber,
biblionumber = $item->{'biblionumber'},
biblioitemnumber = $item->{'biblioitemnumber'},
barcode = $barcode,
booksellerid = $item->{'booksellerid'},
dateaccessioned = NOW(),
homebranch = $item->{'homebranch'},
holdingbranch = $item->{'homebranch'},
price = $item->{'price'},
replacementprice = $item->{'replacementprice'},
replacementpricedate = NOW(),
itemnotes = $item->{'itemnotes'}";
if ($item->{'loan'}) {
$query .= ",
notforloan = $item->{'loan'}";
} # if
$sth = $dbh->prepare($query);
$sth->execute;
$error=$sth->errstr;
$sth->finish;
$itemnumber++;
} # for
$dbh->disconnect;
return($error);
}
sub checkitems{
my ($count,@barcodes)=@_;
my $dbh=C4Connect;
my $error;
for (my $i=0;$i<$count;$i++){
$barcodes[$i]=uc $barcodes[$i];
my $query="Select * from items where barcode='$barcodes[$i]'";
my $sth=$dbh->prepare($query);
$sth->execute;
if (my $data=$sth->fetchrow_hashref){
$error.=" Duplicate Barcode: $barcodes[$i]";
}
$sth->finish;
}
$dbh->disconnect;
return($error);
}
sub moditem {
my ($loan,$itemnum,$bibitemnum,$barcode,$notes,$homebranch,$lost,$wthdrawn,$replacement)=@_;
my $dbh=C4Connect;
my $query="update items set biblioitemnumber=$bibitemnum,
barcode='$barcode',itemnotes='$notes'
where itemnumber=$itemnum";
if ($barcode eq ''){
$query="update items set biblioitemnumber=$bibitemnum,notforloan=$loan where itemnumber=$itemnum";
}
if ($lost ne ''){
$query="update items set biblioitemnumber=$bibitemnum,
barcode='$barcode',itemnotes='$notes',homebranch='$homebranch',
itemlost='$lost',wthdrawn='$wthdrawn' where itemnumber=$itemnum";
}
if ($replacement ne ''){
$query=~ s/ where/,replacementprice='$replacement' where/;
}
my $sth=$dbh->prepare($query);
$sth->execute;
$sth->finish;
$dbh->disconnect;
}
sub updatecost{
my($price,$rrp,$itemnum)=@_;
my $dbh=C4Connect;
my $query="update items set price='$price',replacementprice='$rrp'
where itemnumber=$itemnum";
my $sth=$dbh->prepare($query);
$sth->execute;
$sth->finish;
$dbh->disconnect;
}
sub countitems{
my ($bibitemnum)=@_;
my $dbh=C4Connect;
my $query="Select count(*) from items where biblioitemnumber='$bibitemnum'";
my $sth=$dbh->prepare($query);
$sth->execute;
my $data=$sth->fetchrow_hashref;
$sth->finish;
$dbh->disconnect;
return($data->{'count(*)'});
}
sub findall {
my ($biblionumber)=@_;
my $dbh=C4Connect;
my $query="Select * from biblioitems,items,itemtypes where
biblioitems.biblionumber=$biblionumber
and biblioitems.biblioitemnumber=items.biblioitemnumber and
itemtypes.itemtype=biblioitems.itemtype
order by items.biblioitemnumber";
my $sth=$dbh->prepare($query);
$sth->execute;
my @results;
my $i;
while (my $data=$sth->fetchrow_hashref){
$results[$i]=$data;
$i++;
}
$sth->finish;
$dbh->disconnect;
return(@results);
}
sub needsmod{
my ($bibitemnum,$itemtype)=@_;
my $dbh=C4Connect;
my $query="Select * from biblioitems where biblioitemnumber=$bibitemnum
and itemtype='$itemtype'";
my $sth=$dbh->prepare($query);
$sth->execute;
my $result=0;
if (my $data=$sth->fetchrow_hashref){
$result=1;
}
$sth->finish;
$dbh->disconnect;
return($result);
}
sub delitem{
my ($itemnum)=@_;
my $dbh=C4Connect;
my $query="select * from items where itemnumber=$itemnum";
my $sth=$dbh->prepare($query);
$sth->execute;
my @data=$sth->fetchrow_array;
$sth->finish;
$query="Insert into deleteditems values (";
foreach my $temp (@data){
$query=$query."'$temp',";
}
$query=~ s/\,$/\)/;
# print $query;
$sth=$dbh->prepare($query);
$sth->execute;
$sth->finish;
$query = "Delete from items where itemnumber=$itemnum";
$sth=$dbh->prepare($query);
$sth->execute;
$sth->finish;
$dbh->disconnect;
}
sub delbibitem{
my ($itemnum)=@_;
my $dbh=C4Connect;
my $query="select * from biblioitems where biblioitemnumber=$itemnum";
my $sth=$dbh->prepare($query);
$sth->execute;
if (my @data=$sth->fetchrow_array){
$sth->finish;
$query="Insert into deletedbiblioitems values (";
foreach my $temp (@data){
$temp=~ s/\'/\\\'/g;
$query=$query."'$temp',";
}
$query=~ s/\,$/\)/;
# print $query;
$sth=$dbh->prepare($query);
$sth->execute;
$sth->finish;
$query = "Delete from biblioitems where biblioitemnumber=$itemnum";
$sth=$dbh->prepare($query);
$sth->execute;
$sth->finish;
}
$sth->finish;
$dbh->disconnect;
}
sub delbiblio{
my ($biblio)=@_;
my $dbh=C4Connect;
my $query="select * from biblio where biblionumber=$biblio";
my $sth=$dbh->prepare($query);
$sth->execute;
if (my @data=$sth->fetchrow_array){
$sth->finish;
$query="Insert into deletedbiblio values (";
foreach my $temp (@data){
$temp=~ s/\'/\\\'/g;
$query=$query."'$temp',";
}
$query=~ s/\,$/\)/;
# print $query;
$sth=$dbh->prepare($query);
$sth->execute;
$sth->finish;
$query = "Delete from biblio where biblionumber=$biblio";
$sth=$dbh->prepare($query);
$sth->execute;
$sth->finish;
}
$sth->finish;
$dbh->disconnect;
}
sub getitemtypes {
my $dbh = C4Connect;
my $query = "select * from itemtypes";
my $sth = $dbh->prepare($query);
# || die "Cannot prepare $query" . $dbh->errstr;
my $count = 0;
my @results;
$sth->execute;
# || die "Cannot execute $query\n" . $sth->errstr;
while (my $data = $sth->fetchrow_hashref) {
$results[$count] = $data;
$count++;
} # while
$sth->finish;
$dbh->disconnect;
return($count, @results);
} # sub getitemtypes
sub getbiblio {
my ($biblionumber) = @_;
my $dbh = C4Connect;
my $query = "Select * from biblio where biblionumber = $biblionumber";
my $sth = $dbh->prepare($query);
# || die "Cannot prepare $query\n" . $dbh->errstr;
my $count = 0;
my @results;
$sth->execute;
# || die "Cannot execute $query\n" . $sth->errstr;
while (my $data = $sth->fetchrow_hashref) {
$results[$count] = $data;
$count++;
} # while
$sth->finish;
$dbh->disconnect;
return($count, @results);
} # sub getbiblio
sub getbiblioitem {
my ($biblioitemnum) = @_;
my $dbh = C4Connect;
my $query = "Select * from biblioitems where
biblioitemnumber = $biblioitemnum";
my $sth = $dbh->prepare($query);
my $count = 0;
my @results;
$sth->execute;
while (my $data = $sth->fetchrow_hashref) {
$results[$count] = $data;
$count++;
} # while
$sth->finish;
$dbh->disconnect;
return($count, @results);
} # sub getbiblioitem
sub getitemsbybiblioitem {
my ($biblioitemnum) = @_;
my $dbh = C4Connect;
my $query = "Select * from items, biblio where
biblio.biblionumber = items.biblionumber and biblioitemnumber
= $biblioitemnum";
my $sth = $dbh->prepare($query);
# || die "Cannot prepare $query\n" . $dbh->errstr;
my $count = 0;
my @results;
$sth->execute;
# || die "Cannot execute $query\n" . $sth->errstr;
while (my $data = $sth->fetchrow_hashref) {
$results[$count] = $data;
$count++;
} # while
$sth->finish;
$dbh->disconnect;
return($count, @results);
} # sub getitemsbybiblioitem
sub isbnsearch {
my ($isbn) = @_;
my $dbh = C4Connect;
my $count = 0;
my $query;
my $sth;
my @results;
$isbn = $dbh->quote($isbn);
$query = "Select * from biblioitems where isbn = $isbn";
$sth = $dbh->prepare($query);
$sth->execute;
while (my $data = $sth->fetchrow_hashref) {
$results[$count] = $data;
$count++;
} # while
$sth->finish;
$dbh->disconnect;
return($count, @results);
} # sub isbnsearch
sub keywordsearch {
my ($keywordlist) = @_;
my $dbh = C4Connect;
my $query = "Select * from biblio where";
my $count = 0;
my $sth;
my @results;
my @keywords = split(/ +/, $keywordlist);
my $keyword = shift(@keywords);
$keyword =~ s/%/\\%/g;
$keyword =~ s/_/\\_/;
$keyword = "%" . $keyword . "%";
$keyword = $dbh->quote($keyword);
$query .= " (author like $keyword) or
(title like $keyword) or (unititle like $keyword) or
(notes like $keyword) or (seriestitle like $keyword) or
(abstract like $keyword)";
foreach $keyword (@keywords) {
$keyword =~ s/%/\\%/;
$keyword =~ s/_/\\_/;
$keyword = "%" . $keyword . "%";
$keyword = $dbh->quote($keyword);
$query .= " or (author like $keyword) or
(title like $keyword) or (unititle like $keyword) or
(notes like $keyword) or (seriestitle like $keyword) or
(abstract like $keyword)";
} # foreach
$sth = $dbh->prepare($query);
$sth->execute;
while (my $data = $sth->fetchrow_hashref) {
$results[$count] = $data;
$count++;
} # while
$sth->finish;
$dbh->disconnect;
return($count, @results);
} # sub keywordsearch
sub websitesearch {
my ($keywordlist) = @_;
my $dbh = C4Connect;
my $query = "Select distinct biblio.* from biblio, biblioitems where
biblio.biblionumber = biblioitems.biblionumber and (";
my $count = 0;
my $sth;
my @results;
my @keywords = split(/ +/, $keywordlist);
my $keyword = shift(@keywords);
$keyword =~ s/%/\\%/g;
$keyword =~ s/_/\\_/;
$keyword = "%" . $keyword . "%";
$keyword = $dbh->quote($keyword);
$query .= " (url like $keyword)";
foreach $keyword (@keywords) {
$keyword =~ s/%/\\%/;
$keyword =~ s/_/\\_/;
$keyword = "%" . $keyword . "%";
$keyword = $dbh->quote($keyword);
$query .= " or (url like $keyword)";
} # foreach
$query .= ")";
$sth = $dbh->prepare($query);
$sth->execute;
while (my $data = $sth->fetchrow_hashref) {
$results[$count] = $data;
$count++;
} # while
$sth->finish;
$dbh->disconnect;
return($count, @results);
} # sub websitesearch
sub addwebsite {
my ($website) = @_;
my $dbh = C4Connect;
my $query;
$website->{'biblionumber'} = $dbh->quote($website->{'biblionumber'});
$website->{'title'} = $dbh->quote($website->{'title'});
$website->{'description'} = $dbh->quote($website->{'description'});
$website->{'url'} = $dbh->quote($website->{'url'});
$query = "Insert into websites set
biblionumber = $website->{'biblionumber'},
title = $website->{'title'},
description = $website->{'description'},
url = $website->{'url'}";
$dbh->do($query);
$dbh->disconnect;
} # sub website
sub updatewebsite {
my ($website) = @_;
my $dbh = C4Connect;
my $query;
$website->{'title'} = $dbh->quote($website->{'title'});
$website->{'description'} = $dbh->quote($website->{'description'});
$website->{'url'} = $dbh->quote($website->{'url'});
$query = "Update websites set
title = $website->{'title'},
description = $website->{'description'},
url = $website->{'url'}
where websitenumber = $website->{'websitenumber'}";
$dbh->do($query);
$dbh->disconnect;
} # sub updatewebsite
sub deletewebsite {
my ($websitenumber) = @_;
my $dbh = C4Connect;
my $query = "Delete from websites where websitenumber = $websitenumber";
$dbh->do($query);
$dbh->disconnect;
} # sub deletewebsite
END { } # module clean-up code here (global destructor)

847
C4/Biblio.pm Normal file
View File

@ -0,0 +1,847 @@
package C4::Biblio; #assumes C4/Biblio.pm
use strict;
require Exporter;
use C4::Database;
use warnings;
use vars qw($VERSION @ISA @EXPORT @EXPORT_OK %EXPORT_TAGS);
# set the version for version checking
$VERSION = 0.01;
@ISA = qw(Exporter);
@EXPORT = qw(
&newbiblio &newbiblioitem &newsubject &newsubtitle
&modbiblio &newitems &modbibitem
&modsubtitle &modsubject &modaddauthor &moditem &countitems
&delitem &delbibitem &delbiblio
&checkitems &modnote &getitemtypes &getbiblio
&findall &needsmod &updatecost
&getbiblioitem &getitemsbybiblioitem &isbnsearch &keywordsearch
&websitesearch &addwebsite &updatewebsite &deletewebsite
);
%EXPORT_TAGS = ( ); # eg: TAG => [ qw!name1 name2! ],
# your exported package globals go here,
# as well as any optionally exported functions
@EXPORT_OK = qw($Var1 %Hashit);
# non-exported package globals go here
use vars qw(@more $stuff);
# initalize package globals, first exported ones
my $Var1 = '';
my %Hashit = ();
# then the others (which are still accessible as $Some::Module::stuff)
my $stuff = '';
my @more = ();
# all file-scoped lexicals must be created before
# the functions below that use them.
# file-private lexicals go here
my $priv_var = '';
my %secret_hash = ();
# here's a file-private function as a closure,
# callable as &$priv_func; it cannot be prototyped.
my $priv_func = sub {
# stuff goes here.
};
# make all your functions, whether exported or not;
#------------------------------------------------
# Create a new biblio entry
sub newbiblio {
my ($biblio) = @_; # input is ref to hash of fields
my ($bibnum,$error); # return resulting biblio number
$error="";
my $dbh = &C4Connect;
# Get next biblionumber in sequence
my $query = "Select max(biblionumber) from biblio";
my $sth = $dbh->prepare($query);
$sth->execute;
my $data = $sth->fetchrow_arrayref;
$bibnum = $$data[0] + 1;
my $serial; # is this item part of a series?
if ($biblio->{'seriestitle'}) { $serial = 1 } else { $serial = 0 };
$sth->finish;
$query = "insert into biblio set
biblionumber = ?,
title = ?,
author = ?,
copyrightdate = ?,
serial = ?,
seriestitle = ?,
notes = ? ";
# print $query;
$sth = $dbh->prepare($query);
if ( $sth->execute(
$bibnum,
$biblio->{'title'},
$biblio->{'author'},
$biblio->{'copyright'},
$serial,
$biblio->{'seriestitle'} ,
$biblio->{'notes'}
) ) {
$error='';
} else {
$error=$sth->errstr;
$bibnum = "";
} # if exec error
$sth->finish;
$dbh->disconnect;
return($bibnum,$error);
}
sub modbiblio {
my ($bibnum,$title,$author,$copyright,$seriestitle,$serial,$unititle,$notes)=@_;
my $dbh=C4Connect;
my $query = "Update biblio set
title = '$title',
author = '$author',
copyrightdate = '$copyright',
seriestitle = '$seriestitle',
serial = '$serial',
unititle = '$unititle',
notes = '$notes'
where biblionumber = $bibnum";
my $sth=$dbh->prepare($query);
$sth->execute;
$sth->finish;
$dbh->disconnect;
return($bibnum);
}
sub modsubtitle {
my ($bibnum,$subtitle)=@_;
my $dbh=C4Connect;
my $query="update bibliosubtitle set subtitle='$subtitle' where biblionumber=$bibnum";
my $sth=$dbh->prepare($query);
$sth->execute;
$sth->finish;
$dbh->disconnect;
}
sub modaddauthor {
my ($bibnum,$author)=@_;
my $dbh=C4Connect;
my $query="Delete from additionalauthors where biblionumber=$bibnum";
my $sth=$dbh->prepare($query);
$sth->execute;
$sth->finish;
if ($author ne ''){
$query = "Insert into additionalauthors set
author = '$author',
biblionumber = '$bibnum'";
$sth=$dbh->prepare($query);
$sth->execute;
$sth->finish;
} # if
$dbh->disconnect;
} # sub modaddauthor
sub modsubject {
my ($bibnum,$force,@subject)=@_;
my $dbh=C4Connect;
my $count=@subject;
my $error;
for (my $i=0;$i<$count;$i++){
$subject[$i]=~ s/^ //g;
$subject[$i]=~ s/ $//g;
my $query = "select * from catalogueentry
where entrytype = 's'
and catalogueentry = '$subject[$i]'";
my $sth=$dbh->prepare($query);
$sth->execute;
if (my $data = $sth->fetchrow_hashref) {
} else {
if ($force eq $subject[$i]){
#subject not in aut, chosen to force anway
#so insert into cataloguentry so its in auth file
$query = "Insert into catalogueentry
(entrytype,catalogueentry)
values ('s','$subject[$i]')";
my $sth2=$dbh->prepare($query);
$sth2->execute;
$sth2->finish;
} else {
$error="$subject[$i]\n does not exist in the subject authority file";
$query = "Select * from catalogueentry
where entrytype = 's'
and (catalogueentry like '$subject[$i] %'
or catalogueentry like '% $subject[$i] %'
or catalogueentry like '% $subject[$i]')";
my $sth2=$dbh->prepare($query);
$sth2->execute;
while (my $data=$sth2->fetchrow_hashref){
$error=$error."<br>$data->{'catalogueentry'}";
} # while
$sth2->finish;
} # else
} # else
$sth->finish;
} # else
if ($error eq ''){
my $query="Delete from bibliosubject where biblionumber=$bibnum";
my $sth=$dbh->prepare($query);
$sth->execute;
$sth->finish;
for (my $i=0;$i<$count;$i++){
$sth = $dbh->prepare("Insert into bibliosubject
values ('$subject[$i]', $bibnum)");
$sth->execute;
$sth->finish;
} # for
} # if
$dbh->disconnect;
return($error);
} # sub modsubject
sub modbibitem {
my ($bibitemnum,$itemtype,$isbn,$publishercode,$publicationdate,$classification,$dewey,$subclass,$illus,$pages,$volumeddesc,$notes,$size,$place)=@_;
my $dbh=C4Connect;
my $query="update biblioitems set itemtype='$itemtype',
isbn='$isbn',publishercode='$publishercode',publicationyear='$publicationdate',
classification='$classification',dewey='$dewey',subclass='$subclass',illus='$illus',
pages='$pages',volumeddesc='$volumeddesc',notes='$notes',size='$size',place='$place'
where
biblioitemnumber=$bibitemnum";
my $sth=$dbh->prepare($query);
# print $query;
$sth->execute;
$sth->finish;
$dbh->disconnect;
}
sub modnote {
my ($bibitemnum,$note)=@_;
my $dbh=C4Connect;
my $query="update biblioitems set notes='$note' where
biblioitemnumber='$bibitemnum'";
my $sth=$dbh->prepare($query);
$sth->execute;
$sth->finish;
$dbh->disconnect;
}
sub newbiblioitem {
my ($biblioitem) = @_;
my $dbh = C4Connect;
my $data;
my $bibitemnum;
my $error;
# Get next unused number
my $query = "Select max(biblioitemnumber) from biblioitems";
my $sth = $dbh->prepare($query);
$sth->execute;
$data = $sth->fetchrow_arrayref;
$bibitemnum = $$data[0] + 1;
$sth->finish;
$query = "insert into biblioitems set
biblioitemnumber = ?,
biblionumber = ?,
volume = ?,
number = ?,
classification = ?,
itemtype = ?,
url = ?,
isbn = ?,
issn = ?,
lccn = ?,
dewey = ?,
subclass = ?,
publicationyear = ?,
publishercode = ?,
volumedate = ?,
volumeddesc = ?,
illus = ?,
pages = ?,
notes = ?,
size = ?,
marc = ?,
place = ? ";
$sth = $dbh->prepare($query);
$sth->execute(
$bibitemnum,
$biblioitem->{'biblionumber'},
$biblioitem->{'volume'},
$biblioitem->{'number'},
$biblioitem->{'classification'},
$biblioitem->{'itemtype'},
$biblioitem->{'url'},
$biblioitem->{'isbn'},
$biblioitem->{'issn'},
$biblioitem->{'lccn'},
$biblioitem->{'dewey'},
$biblioitem->{'subclass'},
$biblioitem->{'publicationyear'},
$biblioitem->{'publishercode'},
$biblioitem->{'volumedate'},
$biblioitem->{'volumeddesc'},
$biblioitem->{'illus'},
$biblioitem->{'pages'},
$biblioitem->{'notes'},
$biblioitem->{'size'},
$biblioitem->{'marc'},
$biblioitem->{'place'},
) or $error=$sth->errstr;
$sth->finish;
$dbh->disconnect;
return($bibitemnum);
} # sub newbiblioitem
sub newsubject {
my ($bibnum)=@_;
my $dbh=C4Connect;
my $query="insert into bibliosubject (biblionumber) values
($bibnum)";
my $sth=$dbh->prepare($query);
# print $query;
$sth->execute;
$sth->finish;
$dbh->disconnect;
}
sub newsubtitle {
my ($bibnum, $subtitle) = @_;
my $dbh = C4Connect;
$subtitle = $dbh->quote($subtitle);
my $query = "insert into bibliosubtitle set
biblionumber = $bibnum,
subtitle = $subtitle";
my $sth = $dbh->prepare($query);
$sth->execute;
$sth->finish;
$dbh->disconnect;
}
sub newitems {
my ($item, @barcodes) = @_;
my $dbh=C4Connect;
my $query = "Select max(itemnumber) from items";
my $sth = $dbh->prepare($query);
my $data;
my $itemnumber;
my $error;
$sth->execute;
$data = $sth->fetchrow_hashref;
$itemnumber = $data->{'max(itemnumber)'} + 1;
$sth->finish;
$item->{'booksellerid'} = $dbh->quote($item->{'bookselletid'});
$item->{'homebranch'} = $dbh->quote($item->{'homebranch'});
$item->{'price'} = $dbh->quote($item->{'price'});
$item->{'replacementprice'} = $dbh->quote($item->{'replacementprice'});
$item->{'itemnotes'} = $dbh->quote($item->{'itemnotes'});
foreach my $barcode (@barcodes) {
$barcode = uc($barcode);
$query = "Insert into items set
itemnumber = $itemnumber,
biblionumber = $item->{'biblionumber'},
biblioitemnumber = $item->{'biblioitemnumber'},
barcode = $barcode,
booksellerid = $item->{'booksellerid'},
dateaccessioned = NOW(),
homebranch = $item->{'homebranch'},
holdingbranch = $item->{'homebranch'},
price = $item->{'price'},
replacementprice = $item->{'replacementprice'},
replacementpricedate = NOW(),
itemnotes = $item->{'itemnotes'}";
if ($item->{'loan'}) {
$query .= ",
notforloan = $item->{'loan'}";
} # if
$sth = $dbh->prepare($query);
$sth->execute;
$error=$sth->errstr;
$sth->finish;
$itemnumber++;
} # for
$dbh->disconnect;
return($error);
}
sub checkitems{
my ($count,@barcodes)=@_;
my $dbh=C4Connect;
my $error;
for (my $i=0;$i<$count;$i++){
$barcodes[$i]=uc $barcodes[$i];
my $query="Select * from items where barcode='$barcodes[$i]'";
my $sth=$dbh->prepare($query);
$sth->execute;
if (my $data=$sth->fetchrow_hashref){
$error.=" Duplicate Barcode: $barcodes[$i]";
}
$sth->finish;
}
$dbh->disconnect;
return($error);
}
sub moditem {
my ($loan,$itemnum,$bibitemnum,$barcode,$notes,$homebranch,$lost,$wthdrawn,$replacement)=@_;
my $dbh=C4Connect;
my $query="update items set biblioitemnumber=$bibitemnum,
barcode='$barcode',itemnotes='$notes'
where itemnumber=$itemnum";
if ($barcode eq ''){
$query="update items set biblioitemnumber=$bibitemnum,notforloan=$loan where itemnumber=$itemnum";
}
if ($lost ne ''){
$query="update items set biblioitemnumber=$bibitemnum,
barcode='$barcode',itemnotes='$notes',homebranch='$homebranch',
itemlost='$lost',wthdrawn='$wthdrawn' where itemnumber=$itemnum";
}
if ($replacement ne ''){
$query=~ s/ where/,replacementprice='$replacement' where/;
}
my $sth=$dbh->prepare($query);
$sth->execute;
$sth->finish;
$dbh->disconnect;
}
sub updatecost{
my($price,$rrp,$itemnum)=@_;
my $dbh=C4Connect;
my $query="update items set price='$price',replacementprice='$rrp'
where itemnumber=$itemnum";
my $sth=$dbh->prepare($query);
$sth->execute;
$sth->finish;
$dbh->disconnect;
}
sub countitems{
my ($bibitemnum)=@_;
my $dbh=C4Connect;
my $query="Select count(*) from items where biblioitemnumber='$bibitemnum'";
my $sth=$dbh->prepare($query);
$sth->execute;
my $data=$sth->fetchrow_hashref;
$sth->finish;
$dbh->disconnect;
return($data->{'count(*)'});
}
sub findall {
my ($biblionumber)=@_;
my $dbh=C4Connect;
my $query="Select * from biblioitems,items,itemtypes where
biblioitems.biblionumber=$biblionumber
and biblioitems.biblioitemnumber=items.biblioitemnumber and
itemtypes.itemtype=biblioitems.itemtype
order by items.biblioitemnumber";
my $sth=$dbh->prepare($query);
$sth->execute;
my @results;
my $i;
while (my $data=$sth->fetchrow_hashref){
$results[$i]=$data;
$i++;
}
$sth->finish;
$dbh->disconnect;
return(@results);
}
sub needsmod{
my ($bibitemnum,$itemtype)=@_;
my $dbh=C4Connect;
my $query="Select * from biblioitems where biblioitemnumber=$bibitemnum
and itemtype='$itemtype'";
my $sth=$dbh->prepare($query);
$sth->execute;
my $result=0;
if (my $data=$sth->fetchrow_hashref){
$result=1;
}
$sth->finish;
$dbh->disconnect;
return($result);
}
sub delitem{
my ($itemnum)=@_;
my $dbh=C4Connect;
my $query="select * from items where itemnumber=$itemnum";
my $sth=$dbh->prepare($query);
$sth->execute;
my @data=$sth->fetchrow_array;
$sth->finish;
$query="Insert into deleteditems values (";
foreach my $temp (@data){
$query=$query."'$temp',";
}
$query=~ s/\,$/\)/;
# print $query;
$sth=$dbh->prepare($query);
$sth->execute;
$sth->finish;
$query = "Delete from items where itemnumber=$itemnum";
$sth=$dbh->prepare($query);
$sth->execute;
$sth->finish;
$dbh->disconnect;
}
sub delbibitem{
my ($itemnum)=@_;
my $dbh=C4Connect;
my $query="select * from biblioitems where biblioitemnumber=$itemnum";
my $sth=$dbh->prepare($query);
$sth->execute;
if (my @data=$sth->fetchrow_array){
$sth->finish;
$query="Insert into deletedbiblioitems values (";
foreach my $temp (@data){
$temp=~ s/\'/\\\'/g;
$query=$query."'$temp',";
}
$query=~ s/\,$/\)/;
# print $query;
$sth=$dbh->prepare($query);
$sth->execute;
$sth->finish;
$query = "Delete from biblioitems where biblioitemnumber=$itemnum";
$sth=$dbh->prepare($query);
$sth->execute;
$sth->finish;
}
$sth->finish;
$dbh->disconnect;
}
sub delbiblio{
my ($biblio)=@_;
my $dbh=C4Connect;
my $query="select * from biblio where biblionumber=$biblio";
my $sth=$dbh->prepare($query);
$sth->execute;
if (my @data=$sth->fetchrow_array){
$sth->finish;
$query="Insert into deletedbiblio values (";
foreach my $temp (@data){
$temp=~ s/\'/\\\'/g;
$query=$query."'$temp',";
}
$query=~ s/\,$/\)/;
# print $query;
$sth=$dbh->prepare($query);
$sth->execute;
$sth->finish;
$query = "Delete from biblio where biblionumber=$biblio";
$sth=$dbh->prepare($query);
$sth->execute;
$sth->finish;
}
$sth->finish;
$dbh->disconnect;
}
sub getitemtypes {
my $dbh = C4Connect;
my $query = "select * from itemtypes";
my $sth = $dbh->prepare($query);
# || die "Cannot prepare $query" . $dbh->errstr;
my $count = 0;
my @results;
$sth->execute;
# || die "Cannot execute $query\n" . $sth->errstr;
while (my $data = $sth->fetchrow_hashref) {
$results[$count] = $data;
$count++;
} # while
$sth->finish;
$dbh->disconnect;
return($count, @results);
} # sub getitemtypes
sub getbiblio {
my ($biblionumber) = @_;
my $dbh = C4Connect;
my $query = "Select * from biblio where biblionumber = $biblionumber";
my $sth = $dbh->prepare($query);
# || die "Cannot prepare $query\n" . $dbh->errstr;
my $count = 0;
my @results;
$sth->execute;
# || die "Cannot execute $query\n" . $sth->errstr;
while (my $data = $sth->fetchrow_hashref) {
$results[$count] = $data;
$count++;
} # while
$sth->finish;
$dbh->disconnect;
return($count, @results);
} # sub getbiblio
sub getbiblioitem {
my ($biblioitemnum) = @_;
my $dbh = C4Connect;
my $query = "Select * from biblioitems where
biblioitemnumber = $biblioitemnum";
my $sth = $dbh->prepare($query);
my $count = 0;
my @results;
$sth->execute;
while (my $data = $sth->fetchrow_hashref) {
$results[$count] = $data;
$count++;
} # while
$sth->finish;
$dbh->disconnect;
return($count, @results);
} # sub getbiblioitem
sub getitemsbybiblioitem {
my ($biblioitemnum) = @_;
my $dbh = C4Connect;
my $query = "Select * from items, biblio where
biblio.biblionumber = items.biblionumber and biblioitemnumber
= $biblioitemnum";
my $sth = $dbh->prepare($query);
# || die "Cannot prepare $query\n" . $dbh->errstr;
my $count = 0;
my @results;
$sth->execute;
# || die "Cannot execute $query\n" . $sth->errstr;
while (my $data = $sth->fetchrow_hashref) {
$results[$count] = $data;
$count++;
} # while
$sth->finish;
$dbh->disconnect;
return($count, @results);
} # sub getitemsbybiblioitem
sub isbnsearch {
my ($isbn) = @_;
my $dbh = C4Connect;
my $count = 0;
my $query;
my $sth;
my @results;
$isbn = $dbh->quote($isbn);
$query = "Select * from biblioitems where isbn = $isbn";
$sth = $dbh->prepare($query);
$sth->execute;
while (my $data = $sth->fetchrow_hashref) {
$results[$count] = $data;
$count++;
} # while
$sth->finish;
$dbh->disconnect;
return($count, @results);
} # sub isbnsearch
sub keywordsearch {
my ($keywordlist) = @_;
my $dbh = C4Connect;
my $query = "Select * from biblio where";
my $count = 0;
my $sth;
my @results;
my @keywords = split(/ +/, $keywordlist);
my $keyword = shift(@keywords);
$keyword =~ s/%/\\%/g;
$keyword =~ s/_/\\_/;
$keyword = "%" . $keyword . "%";
$keyword = $dbh->quote($keyword);
$query .= " (author like $keyword) or
(title like $keyword) or (unititle like $keyword) or
(notes like $keyword) or (seriestitle like $keyword) or
(abstract like $keyword)";
foreach $keyword (@keywords) {
$keyword =~ s/%/\\%/;
$keyword =~ s/_/\\_/;
$keyword = "%" . $keyword . "%";
$keyword = $dbh->quote($keyword);
$query .= " or (author like $keyword) or
(title like $keyword) or (unititle like $keyword) or
(notes like $keyword) or (seriestitle like $keyword) or
(abstract like $keyword)";
} # foreach
$sth = $dbh->prepare($query);
$sth->execute;
while (my $data = $sth->fetchrow_hashref) {
$results[$count] = $data;
$count++;
} # while
$sth->finish;
$dbh->disconnect;
return($count, @results);
} # sub keywordsearch
sub websitesearch {
my ($keywordlist) = @_;
my $dbh = C4Connect;
my $query = "Select distinct biblio.* from biblio, biblioitems where
biblio.biblionumber = biblioitems.biblionumber and (";
my $count = 0;
my $sth;
my @results;
my @keywords = split(/ +/, $keywordlist);
my $keyword = shift(@keywords);
$keyword =~ s/%/\\%/g;
$keyword =~ s/_/\\_/;
$keyword = "%" . $keyword . "%";
$keyword = $dbh->quote($keyword);
$query .= " (url like $keyword)";
foreach $keyword (@keywords) {
$keyword =~ s/%/\\%/;
$keyword =~ s/_/\\_/;
$keyword = "%" . $keyword . "%";
$keyword = $dbh->quote($keyword);
$query .= " or (url like $keyword)";
} # foreach
$query .= ")";
$sth = $dbh->prepare($query);
$sth->execute;
while (my $data = $sth->fetchrow_hashref) {
$results[$count] = $data;
$count++;
} # while
$sth->finish;
$dbh->disconnect;
return($count, @results);
} # sub websitesearch
sub addwebsite {
my ($website) = @_;
my $dbh = C4Connect;
my $query;
$website->{'biblionumber'} = $dbh->quote($website->{'biblionumber'});
$website->{'title'} = $dbh->quote($website->{'title'});
$website->{'description'} = $dbh->quote($website->{'description'});
$website->{'url'} = $dbh->quote($website->{'url'});
$query = "Insert into websites set
biblionumber = $website->{'biblionumber'},
title = $website->{'title'},
description = $website->{'description'},
url = $website->{'url'}";
$dbh->do($query);
$dbh->disconnect;
} # sub website
sub updatewebsite {
my ($website) = @_;
my $dbh = C4Connect;
my $query;
$website->{'title'} = $dbh->quote($website->{'title'});
$website->{'description'} = $dbh->quote($website->{'description'});
$website->{'url'} = $dbh->quote($website->{'url'});
$query = "Update websites set
title = $website->{'title'},
description = $website->{'description'},
url = $website->{'url'}
where websitenumber = $website->{'websitenumber'}";
$dbh->do($query);
$dbh->disconnect;
} # sub updatewebsite
sub deletewebsite {
my ($websitenumber) = @_;
my $dbh = C4Connect;
my $query = "Delete from websites where websitenumber = $websitenumber";
$dbh->do($query);
$dbh->disconnect;
} # sub deletewebsite
END { } # module clean-up code here (global destructor)

View File

@ -17,6 +17,7 @@ use C4::Database;
use CGI;
use strict;
use C4::Acquisitions;
use C4::Biblio;
use C4::Output;
use C4::Circulation::Circ2;

View File

@ -17,6 +17,7 @@ use C4::Database;
use CGI;
use strict;
use C4::Acquisitions;
use C4::Biblio;
use C4::Output;
use C4::Circulation::Circ2;

View File

@ -30,6 +30,7 @@ use CGI;
use DBI;
#use strict;
use C4::Acquisitions;
use C4::Biblio;
use C4::Output;
my $dbh=C4Connect;
my $userid=$ENV{'REMOTE_USER'};

View File

@ -18,6 +18,7 @@ use C4::Database;
use C4::Acquisitions;
use C4::Output;
use C4::Input;
use C4::Biblio;
#------------------
# Constants
@ -529,7 +530,7 @@ EOF
my $elapsed=time()-$starttimer;
print "<hr>It took $elapsed seconds to process this page.\n";
} else {
print "<b>No results found for query $id</b>/n";
print "<b>No results found for query $id</b>\n";
} # if rows
} else {
# This is an uploaded Marc record

View File

@ -3,6 +3,7 @@ use C4::Database;
use DBI;
#use strict;
use C4::Acquisitions;
use C4::Biblio;
use C4::Output;
use Net::Z3950;
my $dbh=C4Connect;

View File

@ -12,6 +12,7 @@ use C4::Database;
use CGI;
use strict;
use C4::Acquisitions;
use C4::Biblio;
use C4::Output;

View File

@ -4,6 +4,7 @@
#written by chris@katipo.co.nz 24/2/2000
use C4::Acquisitions;
use C4::Biblio;
use C4::Output;
use C4::Database;
use C4::Search;

View File

@ -7,6 +7,7 @@ use strict;
use CGI;
use C4::Output;
use C4::Acquisitions;
use C4::Biblio;
#use Date::Manip;
my $input = new CGI;

View File

@ -4,6 +4,7 @@
#written by chris@katipo.co.nz 24/2/2000
use C4::Acquisitions;
use C4::Biblio;
use C4::Output;
use CGI;
use strict;

View File

@ -5,6 +5,7 @@
use C4::Output;
use C4::Acquisitions;
use C4::Biblio;
use CGI;
use C4::Search;

View File

@ -7,6 +7,7 @@ use strict;
use CGI;
use C4::Output;
use C4::Acquisitions;
use C4::Biblio;
#use Date::Manip;
my $input = new CGI;

View File

@ -4,6 +4,7 @@
#written by chris@katipo.co.nz 24/2/2000
use C4::Acquisitions;
use C4::Biblio;
use C4::Output;
use CGI;
use strict;

View File

@ -7,6 +7,7 @@ use C4::Search;
use CGI;
use C4::Output;
use C4::Acquisitions;
use C4::Biblio;
my $env;
my $input = new CGI;

View File

@ -4,6 +4,7 @@
#written by chris@katipo.co.nz 24/2/2000
use C4::Acquisitions;
use C4::Biblio;
use C4::Output;
use C4::Search;
use C4::Database;

View File

@ -4,6 +4,7 @@
#written by chris@katipo.co.nz 23/2/2000
use C4::Acquisitions;
use C4::Biblio;
use C4::Output;
use CGI;
use strict;

View File

@ -4,6 +4,7 @@
#written by chris@katipo.co.nz 24/2/2000
use C4::Acquisitions;
use C4::Biblio;
use C4::Output;
use CGI;
use strict;

View File

@ -4,6 +4,7 @@
#written by chris@katipo.co.nz 24/2/2000
use C4::Acquisitions;
use C4::Biblio;
use C4::Output;
use CGI;
use strict;

View File

@ -4,6 +4,7 @@
#written by chris@katipo.co.nz 24/2/2000
use C4::Acquisitions;
use C4::Biblio;
use C4::Output;
use CGI;
use strict;

View File

@ -4,6 +4,7 @@
#written by chris@katipo.co.nz 23/2/2000
use C4::Acquisitions;
use C4::Biblio;
use C4::Output;
use CGI;
use strict;

View File

@ -6,6 +6,7 @@
use CGI;
use C4::Acquisitions;
use C4::Biblio;
my $input=new CGI;

View File

@ -10,6 +10,7 @@ use C4::Search;
use CGI;
use C4::Output;
use C4::Acquisitions;
use C4::Biblio;
my $input = new CGI;
#print $input->header;

View File

@ -10,6 +10,7 @@ use C4::Search;
use CGI;
use C4::Output;
use C4::Acquisitions;
use C4::Biblio;
my $input = new CGI;
#print $input->header;

View File

@ -5,6 +5,7 @@
#called as an include by the acquisitions index page
use C4::Acquisitions;
use C4::Biblio;
use C4::Search;
use CGI;
my $input=new CGI;

View File

@ -13,6 +13,7 @@ use CGI;
use DBI;
#use strict;
use C4::Acquisitions;
use C4::Biblio;
use C4::Output;
my $dbh=C4Connect;
my $userid=$ENV{'REMOTE_USER'};

View File

@ -8,6 +8,7 @@ use CGI;
use DBI;
#use strict;
use C4::Acquisitions;
use C4::Biblio;
use C4::Output;
my $userid=$ENV{'REMOTE_USER'};

View File

@ -12,6 +12,7 @@ use C4::Database;
use CGI;
use strict;
use C4::Acquisitions;
use C4::Biblio;
use C4::Output;

View File

@ -10,6 +10,7 @@ use C4::Search;
use CGI;
use C4::Output;
use C4::Acquisitions;
use C4::Biblio;
my $input = new CGI;
my $submit=$input->param('delete.x');

View File

@ -9,6 +9,7 @@ use C4::Search;
use C4::Koha;
use C4::Output;
use C4::Acquisitions;
use C4::Biblio;
use CGI;
my $input = new CGI;

View File

@ -4,6 +4,7 @@
#written by chris@katipo.co.nz 31/01/2000
use C4::Acquisitions;
use C4::Biblio;
use C4::Output;
use CGI;
my $input=new CGI;

View File

@ -9,6 +9,7 @@ use C4::Search;
use C4::Output;
use C4::Reserves2;
use C4::Acquisitions;
use C4::Biblio;
use C4::Koha;
use CGI;

View File

@ -5,6 +5,7 @@
#called as an include by the acquisitions index page
use C4::Acquisitions;
use C4::Biblio;
#use CGI;
#my $inp=new CGI;
#print $inp->header;

View File

@ -4,6 +4,7 @@ use C4::Database;
use CGI;
use strict;
use C4::Acquisitions;
use C4::Biblio;
use C4::Output;
use C4::Search;

View File

@ -4,6 +4,7 @@ use C4::Database;
use CGI;
use strict;
use C4::Acquisitions;
use C4::Biblio;
use C4::Output;
my $input= new CGI;

View File

@ -4,6 +4,7 @@ use C4::Database;
use CGI;
use strict;
use C4::Acquisitions;
use C4::Biblio;
use C4::Output;
use C4::Circulation::Circ2;
use C4::Accounts2;

View File

@ -17,6 +17,7 @@ use C4::Database;
use C4::Catalogue;
use DBI;
use C4::Acquisitions;
use C4::Biblio;
use C4::Output;
sub droptable {