X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=formats%2Fmedium.tcl;h=52ea4af63d4ebcd473535b4a770b747825a4f7c6;hb=f20928a0fccad0c1f312bb40377198a74c323e31;hp=2e2b68ecd2a5110b653d2d8b959789baf920e563;hpb=a9e94b1c52d13b2a95330b3df5c009b767ebcb36;p=ir-tcl-moved-to-github.git diff --git a/formats/medium.tcl b/formats/medium.tcl index 2e2b68e..52ea4af 100644 --- a/formats/medium.tcl +++ b/formats/medium.tcl @@ -4,7 +4,18 @@ # Sebastian Hammer, Adam Dickmeiss # # $Log: medium.tcl,v $ -# Revision 1.2 1995-06-12 15:18:10 adam +# Revision 1.5 1995-06-22 13:16:29 adam +# Feature: SUTRS. Setting getSutrs implemented. +# Work on display formats. +# +# Revision 1.4 1995/06/14 12:16:42 adam +# Minor presentation format changes. +# +# Revision 1.3 1995/06/13 14:39:06 adam +# Fix: if {$var != ""} doesn't work if var is a large numerical! +# Highlight when line format is used. +# +# Revision 1.2 1995/06/12 15:18:10 adam # Work on presentation formats. These are used in the main window as well # as popup windows. # @@ -16,22 +27,43 @@ proc display-medium {sno no w hflag} { } else { $w delete 0.0 end } - set i [z39.$sno getMarc $no field 245 * a] - if {$i != ""} { - set i [lindex $i 0] + set type [z39.$sno type $no] + if {$type == "SD"} { + set err [lindex [z39.$sno diag $no] 1] + set add [lindex [z39.$sno diag $no] 2] + if {$add != {}} { + set add " :${add}" + } + insertWithTags $w "Error ${err}${add}\n" marc-id + return + } + if {$type != "DB"} { + return + } + set rtype [z39.$sno recordType $no] + if {$rtype == "SUTRS"} { + insertWithTags $w [join [z39.$sno getSutrs $no]] {} + $w insert end "\n" + return + } + if {[catch {set i [z39.$sno getMarc $no field 245 * a]}]} { + insertWithTags $w "Unknown record type: $rtype\n" marc-id + return + } + if {"x$i" != "x"} { insertWithTags $w "Title: " marc-tag - insertWithTags $w $i marc-data + insertWithTags $w [string trimright [lindex $i 0] /] marc-data set i [z39.$sno getMarc $no field 245 * b] - if {$i != ""} { - insertWithTags $w [lindex $i 0] marc-data + if {"x$i" != "x"} { + insertWithTags $w [string trimright [lindex $i 0] /] marc-data } $w insert end "\n" } set i [z39.$sno getMarc $no field 700 * a] - if {$i == ""} { + if {"x$i" == "x"} { set i [z39.$sno getMarc $no field 100 * a] } - if {$i != ""} { + if {"x$i" != "x"} { if {[llength $i] > 1} { insertWithTags $w "Authors: " marc-tag } else { @@ -43,7 +75,7 @@ proc display-medium {sno no w hflag} { $w insert end "\n" } set i [z39.$sno getMarc $no field 110 * *] - if {$i != ""} { + if {"x$i" != "x"} { insertWithTags $w "Co-Author: " marc-tag foreach x $i { insertWithTags $w $x marc-data @@ -52,7 +84,7 @@ proc display-medium {sno no w hflag} { } set i [z39.$sno getMarc $no field 650 * *] - if {$i != ""} { + if {"x$i" != "x"} { set n 0 insertWithTags $w "Keywords: " marc-tag foreach x $i { @@ -66,7 +98,7 @@ proc display-medium {sno no w hflag} { } set i [concat [z39.$sno getMarc $no field 260 * a] \ [z39.$sno getMarc $no field 260 * b]] - if {$i != ""} { + if {"x$i" != "x"} { insertWithTags $w "Publisher: " marc-tag foreach x $i { insertWithTags $w $x marc-data @@ -74,7 +106,7 @@ proc display-medium {sno no w hflag} { $w insert end "\n" } set i [z39.$sno getMarc $no field 020 * a] - if {$i != ""} { + if {"x$i" != "x"} { insertWithTags $w "ISBN: " marc-tag foreach x $i { insertWithTags $w $x marc-data @@ -82,7 +114,7 @@ proc display-medium {sno no w hflag} { $w insert end "\n" } set i [z39.$sno getMarc $no field 022 * a] - if {$i != ""} { + if {"x$i" != "x"} { insertWithTags $w "ISSN: " marc-tag foreach x $i { insertWithTags $w $x marc-data @@ -90,7 +122,7 @@ proc display-medium {sno no w hflag} { $w insert end "\n" } set i [z39.$sno getMarc $no field 030 * a] - if {$i != ""} { + if {"x$i" != "x"} { insertWithTags $w "CODEN: " marc-tag foreach x $i { insertWithTags $w $x marc-data @@ -98,7 +130,7 @@ proc display-medium {sno no w hflag} { $w insert end "\n" } set i [z39.$sno getMarc $no field 015 * a] - if {$i != ""} { + if {"x$i" != "x"} { insertWithTags $w "Ctl number: " marc-tag foreach x $i { insertWithTags $w $x marc-data @@ -106,7 +138,7 @@ proc display-medium {sno no w hflag} { $w insert end "\n" } set i [z39.$sno getMarc $no field 010 * a] - if {$i != ""} { + if {"x$i" != "x"} { insertWithTags $w "LC number: " marc-tag foreach x $i { insertWithTags $w $x marc-data