Versionen im Vergleich

Schlüssel

  • Diese Zeile wurde hinzugefügt.
  • Diese Zeile wurde entfernt.
  • Formatierung wurde geändert.
Kommentar: Migrated to Confluence 5.3

...

Inhalt
Beschreibung

Auszug

Nach Eingabe des kompletten Pfades einer IDN-Liste, werden die dazugehörigen Datensätze gesucht und im Speicherset aufgelistet. Zu Beginn wird der Speicherset geleert. Am Ende der Ausführung wird eine Fehlerliste der Datensätze, die nicht gefunden werden konnten, angezeigt. Der Kleinbuchstabe "x" wird durch die Funktion in einen Großbuchstaben "X" umgewandelt. Es werden nicht mehr als 1000 IDNs verarbeitet.

...

Datum

geändert von

Beschreibung

2011-06-20

Althaus

neu erstellt

2011-07-01

Althaus

Funktion überarbeitet:
- Fehler mit Kleinbuchstabe "x" behoben (Senftleben, Juni 2011 gemeldet)
- Leerzeilen (IDN < 9) werden ignoriert.
- Es werden nur 1000 Datensätze gelesen.

...

Scriptdatei

dnb_public.js

...

Code
Codeblock

function LeseIDNListe() {

	var intMaxSetSize = 1000;
	var strIDN;
	var charEnd;
	var intLength;
	var strErrorList = "";
	var boolError = false;
	var dnbPrompt = utility.newPrompter();
	var fileInput = Components.classes["@oclcpica.nl/scriptinputfile;1"]
						.createInstance(Components.interfaces.IInputTextFile);
	var strFileName;
	var msg = dnbPrompt.prompt("Funktion: LeseIDNListe","Bitte geben Sie den kompletten Dateinamen inklusive absolutem Pfad ein!\nEs werden max. 1000 Datensätze gelesen!",strFileName,null,null);
	if (msg == true)	{
		strFileName = dnbPrompt.getEditValue();
	} else {
		//__dnbMeldung("ErstelleIDNListe","Die Funktion wird abgebrochen!","");
		return false;
	}
	if (fileInput.open(strFileName)) {
		application.activeWindow.command("del s0",false);
		var i = 0;
		while (((strIDN = fileInput.readLine()) != null) && (i < intMaxSetSize)) {
			intLength = strIDN.length;
			if (intLength > 8) {
				charEnd = strIDN.charAt(intLength-1);
				if (charEnd == "x") {
					strIDN = strIDN.substring(0,intLength-1) + "X";
					//application.messageBox("","Länge IDN: " + intLength + "\nLetztes Zeichen: " + charEnd + "\nNeue IDN: " + strIDN,"");
				}
				application.activeWindow.command("f idn " + strIDN,false);
				if (strIDN != application.activeWindow.getVariable("P3GPP")) {
					strErrorList = strErrorList + strIDN + "\n";
					boolError = true;
				} else {
					application.activeWindow.command("save",false);
				}
				i = i+1;
			}
		}
		//__dnbMeldung("ErstelleIDNListe","Anzahl der aus der Datei gelesenen Zeilen: " + i,"");
		application.activeWindow.command("s s0",false);
		if (boolError) {
			__dnbFehler("LeseIDNListe","Zu folgenden IDNs konnten keine Datensätze gefunden werden: \n" + strErrorList,"");
		}
	} else {
		__dnbFehler("LeseIDNListe","Fehler beim Öffnen der Datei!","");
	}

}

Seitenanfang