Versionen im Vergleich

Schlüssel

  • Diese Zeile wurde hinzugefügt.
  • Diese Zeile wurde entfernt.
  • Formatierung wurde geändert.

Anker
begin
begin

...

Beschreibung

Verlangt Eingabe von H, M oder Z für HLS, MLS bzw. ZLS, liest die Vollanzeige aus und editiert
Datensatz entsprechend der Eingabe. Ausgangsfenster: DNB-Hauptbestand, Vollanzeige Titeldatensatz mit Exemplardaten
Zeile 4627 - 4773

Code in WinIBW2 (Makro/VBScript)

Codeblock
Sub HBHMZLS()

	On error resume next

	Dim InputLS, K4801, K5301, K7109, SearchK4700, SearchK5301, SearchK7001, c0

	Set WinA = Application.ActiveWindow

	if not WinA.Variable("scr") = "8A" then
		Fehler "Es liegt kein Datensatz in Vollanzeige vor!"
		exit sub
	end if
	WinAct = WinA.CopyTitle
	K7001 = mid(WinAct, instr(WinAct,"7001 "))
	K7001 = left(K7001, instr(K7001,vbcr))
	'msgbox K7001
	If K7001 = "" then
		Msgbox "Keine Exemplardatensätze gefunden!" & vbExclamation
		Exit Sub

	End if

	InputLS = InputBox("Bitte geben Sie ein ""H"" für HLS, ein ""M"" für MLS oder ein ""Z"" für ZLS ein!", 		  "Lesesaal-Eingabe", Input)


	If	 (InputLS = "H") or (InputLS = "h") then
		 InputLS = "HLS"

	elseif   (InputLS = "M") or (InputLS = "m") then
		 InputLS = "MLS"

	elseif   (InputLS = "Z") or (InputLS = "z") then
		 InputLS = "ZLS"

	else 	Achtung "Sie haben kein ""H"", ""M"" oder ""Z"" eingegeben," & vbcrlf & "die Funktion wird abgebrochen!"

		exit sub

	end if

	K4801 = vbcr & "4801 "
	K5301 = vbcr & "5301 "
	K7109 = vbcr & "7109 !!" & InputLS & "!! ; "

	WinA.Command "k", False


	SearchK7001 = WinA.Title.StartOfBuffer
	SearchK7001 = WinA.Title.FindTag ("7001", 0, False, True)
	ArSearchK7001 = split(SearchK7001, " ")
	SelKey = len(ArSearchK7001(2))
	'msgbox Len(SearchK7001) & vbcrlf & ArSearchK7001(2) & vbcrlf & SelKey
	if	SearchK7001 <> "" then
		WinA.Title.WordRight 2, true
		'WinA.Title.DeleteSelection
			if 	SelKey = 1 then
				WinA.Title.EndOfField
				WinA.Title.InsertText "xp" & K4801 & K7109
			elseif	SelKey >= 2 then
				WinA.Title.EndOfField
				WinA.Title.InsertText K4801 & K7109
			end if
	end if

	SearchK5301 = WinA.Title.StartOfBuffer
	SearchK5301 = WinA.Title.FindTag ("5301", 0, True, True)

	if	SearchK5301 <> "" then
		WinA.Title.EndOfField
	Else	WinA.Title.StartOfBuffer
		WinA.Title.FindTag "7109", 0, True, True
		WinA.Title.EndOfField
		WinA.Title.InsertText K5301
	End if
End Sub

Code in WinIBW3 (Javascript)

Erforderliche Änderungen / Ergänzungen

Auszug

Diese Funktion der Handbibliotheksverwaltung verlangt die Eingabe eines Buchstabens für den jeweiligen Lesesaal ("h"=HLS, "m"=MLS, "z"=ZLS). Der angezeigte Titeldatensatz wird zur Korrektur aufgerufen und es werden die Felder 4801, 7109 !!_Lesesaal_!! ergänzt. Falls der Selektionscode in Feld 7100 aus nur einem Buchstaben besteht, wird "xp" angehängt. Fehler werden gemeldet, wenn sich der Datensatz nicht in der Vollanzeige befindet und wenn es keine Exemplardaten im Datensatz gibt.

Standard-Konfiguration

Die Funktion steht in der Funktionsleiste Benutzung zur Verfügung.

Historie

Datum

geändert von

Beschreibung

2011-09-30

Althaus

neu erstellt

Scriptdatei(en)

dnb_benutzung.js

Seitenanfangkeine