Sie zeigen eine alte Version dieser Seite an. Zeigen Sie die aktuelle Version an.

Unterschiede anzeigen Seitenhistorie anzeigen

« Vorherige Version anzeigen Version 2 Nächste Version anzeigen »

Beschreibung

Die Publikation zum Datensatz ist zur Zeit nicht zu beschaffen oder ist für DNB-F Handelsware, muss aber zur Prüfung auf Belegexemplar nach DNB-L geschickt werden. (Daten ohne Bestand Fallgruppe 2).
Die Funktion wechselt in den Korrekturmodus, ändert die Satzart in Aaq, erzeugt durch Besetzung der Kategorie 0701 die Exemplarkategorie 8034 mit dem Standardvermerk „Erwerbungsvormerkung“ und ergänzt die Kategorie 4700 |ERW|Standort;Namenskürzel ***.
Da die Funktion auch von anderen Abteilungen genutzt wird, ist die Bildung von 4700 $S (|...|) variabel.
Datensatz bleibt im Korrekturmodus (wg. Hinterlegen von Infos in 4700 und Überprüfung vor dem Abspeichern).

Hinweise/Fragen/Anforderungen

<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="2642df13-77eb-45a1-887f-c792df46fd2b"><ac:plain-text-body><![CDATA[

Der Standard-Vermerk Erwerbungsvormerkung soll in den Exemplardatensätzen beider Standorte in einem eigenen Unterfeld von Feld 4801 stehen: 4801 [Unterfeld]Erwerbungsvormerkung

 

]]></ac:plain-text-body></ac:structured-macro>

Feld 8034 soll nicht mehr besetzt werden.

 

Historie

Datum

geändert von

Beschreibung

2011-06-18

Althaus

neu erstellt

Datei

dnb_scripte_01.js (dnb_public.js)

Code
function Erwerbungsvormerkung() {

	__eingabeKommentar("Erwerbungsvormerkung","");

}

function __eingabeKommentar(comment,kennzeichen) {

	var Mahnstatus;
	var strKuerzel = __getProfVal("Kürzel erfassen","kuerzel","Bitte geben Sie Ihr Bearbeiterkürzel ein.");
	var strAbteilung = __getAbteilung();
	var strStandort = __getStandort();
	var strContent4700 = "|" + strAbteilung + "|" + strStandort + ";" + strKuerzel;
	
	if (application.activeWindow.getVariable("scr") != "8A"){
		__dnbFehler("Eingabekommentar","Der Datensatz muss sich in der Vollanzeige befinden!", "");
		return;
	} else {
		var Kopie = application.activeWindow.copyTitle();
		//application.messageBox("Kopie",Kopie,"");
		if (Kopie == "") {
			__dnbFehler("Retro","Es konnte keine Titelkopie erstellt werden","");
		} else {
			var Eingabe = "";
			var Pos0500 = Kopie.indexOf("0500 ");
			var Tag0500 = Kopie.substring(Pos0500,Kopie.indexOf("\n",Pos0500));
			//application.messageBox("Tag0500",Tag0500,"");
			var Satzart = Tag0500.substring(6,Tag0500.length-1);
			var Pos0599 = Kopie.indexOf("0599 ");
			var Tag0599 = Kopie.substring(Pos0599,Kopie.indexOf("\n",Pos0599));
			if (Tag0599.indexOf("m") > 0) {
				Mahnstatus = true;
			}				
			//application.messageBox("",Satzart.length,"");	
			if ((Satzart == "ac") || (Satzart == "am")) {
				application.activeWindow.command("k",false);
				__dnbUpdMatStatus("q"+kennzeichen)
				//application.messageBox("","q-Kennzeichnung","");				
			if (application.activeWindow.title.findTag("0599", 0, false, true, false)) {
				if (!Mahnstatus) {
					application.activeWindow.title.deleteLine(1);
					//application.messageBox("","0599 löeschen","");	
				}
			}
			
			__geheZuKat("4700","",true);
			application.activeWindow.title.insertText("\n4700 " + strContent4700);
			//application.messageBox("","4700 eingeben","");	
	
			if (application.activeWindow.title.findTag("2100", 0, false, true, false)) {
				application.activeWindow.title.deleteLine(1);
				//application.messageBox("","2100 löschen","");	
			}
			__geheZuKat("0701","",true);
			if (application.activeWindow.title.findTag("0701", 0, false, true, false)) {
				application.activeWindow.title.find("#", false, true, false);
				//application.messageBox("","Text eingeben","");	
				application.activeWindow.title.insertText("\n0701 /q/@" + comment + "@#");
				application.activeWindow.title.lineUp(1,false);
				//application.messageBox("","Zeile löschen","");	
				application.activeWindow.title.deleteLine(1);		
				
			} else {
				application.activeWindow.title.insertText("\n0701 /q/@" + comment + "@");
			}
			__geheZuKat("0701","",true);
			//application.activeWindow.simulateIBWKey("FR");
	
			} else {			
				__dnbFehler("Eingabekommentar","Diese Funktion lässt sich nur für die Datensatzarten\n\n" +
							"- Aac\n- Aam\n- Bac\n- Oac\n- Kac\n- Sac\n- Zac\n\naufrufen!","");
			}
		}
	}
}
VB-Script
'*****************************************************************************
Sub VormerkungNeu()
'*****************************************************************************

	On error resume next
	EingabeKommentarNeu "Erwerbungsvormerkung",""

End Sub

'*****************************************************************************
Private Sub EingabeKommentarNeu(comment,kennzeichen)
'*****************************************************************************

	On error resume next
	'Prüfung: Datensatz in Vollanzeige? Wenn nicht: Funktionsabbruch!
	if not Application.ActiveWindow.Variable("scr") = "8A" then
		Fehler "Es liegt kein Datensatz in Vollanzeige vor!"
		exit sub
	end if
	'Bei Vollanzeige: Kopie der Vollanzeige und Extraktion des kompletten Inhaltes von 0500
	K0500 = mid(Application.ActiveWindow.Variable("P3CLIP"), instr(Application.ActiveWindow.Variable("P3CLIP"),"0500"))
	Satzart = mid((left(K0500, instr(K0500,vbcr))),6,3)
	K0599 = mid(Application.ActiveWindow.Variable("P3CLIP"), instr(Application.ActiveWindow.Variable("P3CLIP"),"0599"))
	K0599 = left(K0599, instr(K0599,vbcr))
	'Bestimmung des Mahnstatus
	MahnStatus = instr(K0599, "m")
	'Prüfung: wenn Satzart ungleich Aaa, Aac, Bac, Oac, Kac, Sac dann Funktionsabbruch
	if not (Satzart = "Aac" or Satzart = "Aam" or _ 
		  Satzart = "Bac" or Satzart = "Oac" or Satzart = "Sac" or Satzart = "Kac" or Satzart = "Zac") Then
			Fehler "Diese Funktion lässt sich nur für die Datensatzarten" & vbcr & vbcr & _
					 "- Aac" & vbcr & _
					 "- Aam" & vbcr & _
					 "- Bac" & vbcr & _
					 "- Oac" & vbcr & _
					 "- Kac" & vbcr & _
					 "- Sac" & vbcr & _
					 "- Zac" & vbcr & vbcr & "aufrufen!"
			exit sub
	end if
	Application.ActiveWindow.Command "k", False
	Application.ActiveWindow.Title.Find "0500", True, False, False
	Application.ActiveWindow.Title.WordRight 1, False
	Application.ActiveWindow.Title.CharRight 2, False
	Application.ActiveWindow.Title.CharRight 1, True
	Application.ActiveWindow.Title.DeleteSelection()
	Application.ActiveWindow.Title.InsertText "q" & kennzeichen & vbCR
	if ((Application.ActiveWindow.Title.FindTag ("0701", 0, false, true)) <> "" ) then
		Application.ActiveWindow.Title.Find "#", false, true, false
		if (kennzeichen <> "") then
			Application.ActiveWindow.Title.InsertText vbCR & "0701 /q/@" & comment & "@#"
			Application.ActiveWindow.Title.LineUp
			Application.ActiveWindow.Title.DeleteLine
		else
			Application.ActiveWindow.Title.InsertText vbCR & "0701 /q/#"
			Application.ActiveWindow.Title.LineUp
			Application.ActiveWindow.Title.DeleteLine
			Application.ActiveWindow.Title.EndOfBuffer
			Application.ActiveWindow.Title.InsertText vbCR & "4801 " & comment
		End if
	else
		if (kennzeichen <> "") then
			Application.ActiveWindow.Title.InsertText "0701 /q/@" & comment & "@" & vbCR
		else
			Application.ActiveWindow.Title.InsertText "0701 /q/"
			Application.ActiveWindow.Title.EndOfBuffer
			Application.ActiveWindow.Title.InsertText vbCR & "4801 " & comment
		End if
	End if
	'Löschung von 0599 nur, wenn Mahnstatus nicht gesetzt
	if ((Application.ActiveWindow.Title.FindTag ("0599", 0, false, true)) <> "" ) then		
		Application.ActiveWindow.Title.StartOfField False
		if Mahnstatus = 0 then
				Application.ActiveWindow.Title.DeleteToEndOfLine
		End If
	End if


	'if ((Application.ActiveWindow.Title.FindTag ("0599", 0, false, true)) <> "" ) then
	'Application.ActiveWindow.Title.DeleteToEndOfLine
	'End if
	if ((Application.ActiveWindow.Title.FindTag ("2100", 0, false, true)) <> "" ) then
	Application.ActiveWindow.Title.DeleteToEndOfLine
	End if	
	'Application.ActiveWindow.SimulateIBWKey "FR"

End Sub

Seitenanfang

  • Keine Stichwörter