});
+# XXX dpavlin -- signatura zatvorenog spremista
+sub ffzg_zs_callnumber {
+ my ($record) = @_;
+ my ($tagfield,$tagsubfield) = &GetMarcFromKohaField("items.itemcallnumber",$frameworkcode);
+ if ($record->field($tagfield)->subfield($tagsubfield) =~ m/^ZS#(\w\w)\s(\d+)-(\d+)$/ ) {
+ my ( $prefix, $min, $max ) = ( $1, $2, $3 );
+ my $sth = $dbh->prepare(qq{ select ffzg_zs_nextval(?) });
+ $sth->execute( $prefix );
+ my ($itemcallnumber) = $sth->fetchrow;
+
+warn "ZS: $prefix $min - $max => $itemcallnumber\n";
+
+ if ( $itemcallnumber < $min || $itemcallnumber > $max ) {
+ die "can't find next itemcallnumber for $prefix $min-$max, got: $itemcallnumber";
+ }
+ my $fieldItem = $record->field($tagfield);
+ $fieldItem->update($tagsubfield => $prefix . ' ' . $itemcallnumber);
+ }
+ return $record;
+}
+
+
+
my $today_iso = C4::Dates->today('iso');
$template->param(today_iso => $today_iso);
$record = _increment_barcode($record, $frameworkcode);
}
+ $record = ffzg_zs_callnumber( $record ); # XXX dpavlin
+
my $addedolditem = TransformMarcToKoha($dbh,$record);
# If we have to add or add & duplicate, we add the item
# MARC::Record builded => now, record in DB
# warn "R: ".$record->as_formatted;
# check that the barcode don't exist already
+
+ $itemtosave = ffzg_zs_callnumber( $itemtosave ); # XXX dpavlin
+
my $addedolditem = TransformMarcToKoha($dbh,$itemtosave);
my $exist_itemnumber = get_item_from_barcode($addedolditem->{'barcode'});
if ($exist_itemnumber && $exist_itemnumber != $itemnumber) {