ThinPrint Management Center – Dokumentation

Endung von Freigabenamen ab Unterstrich entfernen

47 views 0

Zweck dieses SQL-Skriptes

Das Management Center zeigt im Edit-Printers-Menü einer Connection als Freigabenamen standardmäßig den Druckernamen, ergänzt um die Clientadresse in folgendem Format:

druckername_lokalerdruckserver oder clientdruckernname_clientadressse

Allerdings wollen manche KundInnen die Endung ab dem Unterstrich vom Freigabenamen entfernen, also _lokalerdruckserver bzw _clientadressse. Dies wollen Sie verständlicherweise nicht manuell ausführen müs­sen. In diesem Fall müssen die Druckernamen in der gesamten Druckumgebung eindeutig sein.

Bitte beachten! Für die Anwendung dieses Skriptes dürfen weder die Namen der lokalen Druckserver noch die Clientadressen einen Unterstrich (_) enthalten, da das Skript die Freigabenamen von rechts nach dem ersten Unterstrich durchsucht. Wenn jedoch beispielsweise alle Clientadressen einer bestimmten Connection einen Unterstrich enthalten, kann man das Skript mithilfe der Connection-ID einfach zweimal ausführen (siehe unten Alle Freigabenamen einer bestimmten Connection ändern).

Alle Freigabenamen einer SQL-Datenbank ändern

  • Ermitteln Sie den Datenbanknamen in der Konsole des Management Centers mit Extra→ Application Settings.
  • Schließen Sie die Konsole des Management Centers.
  • Öffnen Sie SQL Server Management Studio.
  • Markieren Sie (links) die betreffende Datenbank und generieren Sie eine Sicherheitskopie mit Tasks→ Back Up im Kontextmenü.
  • Klicken Sie dann New Query (linker Pfeil in folgendem Bild).
  • Skript für das Ändern von Freigabenamen aller Drucker

    Skript für das Ändern von Freigabenamen aller Drucker

  • Kopieren Sie die folgende Zeile in das Eingabefeld (rechts):

UPDATE CONPRINTER SET SHARENAME = SUBSTRING(SHARENAME, 1, LEN(SHARENAME) - CHARINDEX('_', REVERSE(SHARENAME)) )

  • Klicken Sie auf Execute (rechter Pfeil). Unten erscheint eine Bestätigungsmeldung; in dieser Meldung ist die Zahl der Zeilen doppelt so groß wie die Zahl der Druckerobjekte.
  • Schließen Sie SQL Server Management Studio.
  • Fertig. Sie können die Konsole des Management Centers wieder öffnen.
Meldung zur Bestätigung (Beispiel)

Meldung zur Bestätigung (Beispiel)

Alle Freigabenamen einer bestimmten Connection ändern

Alternativ zur Anwendung des Skriptes auf die gesamte Datenbank ist es auch möglich, dies auf eine bestimmte Connection zu begrenzen. Hierzu müssen Sie erst die betreffende Connection-ID herausfinden (siehe die Spalte FK_CONNECTION):

  • Markieren Sie die Zeile der Connection-Drucker dbo.CONPRINTER und wählen Sie Select Top 1000 Rows oder Edit Top 200 Rows.
Tabelle dbo.CONPRINTER öffnen

Tabelle dbo.CONPRINTER öffnen

Herausfinden der IDs in FK_CONNECTION oder in FK_SRCPRINTER (Beispiel)

Herausfinden der IDs in FK_CONNECTION oder in FK_SRCPRINTER (Beispiel)

  • Hierbei könnten Sie die Meldung “not accessible” erhalten. Für diesen Fall können sie – tem­porär – die Zugriffsrechte (Restrict Access) auf die Datenbank von Single_User auf Multi_User umstel­len.
Meldung, dass keine ausreichenden Rechte auf die Datenbank vorhanden sind

Meldung, dass keine ausreichenden Rechte auf die Datenbank vorhanden sind

Eigenschaft Restrict Access temporär ändern

Eigenschaft Restrict Access temporär ändern

  • Kopieren Sie dann die folgende Zeile in das Eingabefeld (rechts):

UPDATE CONPRINTER SET SHARENAME = SUBSTRING(SHARENAME, 1, LEN(SHARENAME) - CHARINDEX('_', REVERSE(SHARENAME)) ) WHERE FK_CONNECTION = 4;

Trage Sie am Ende des Skriptes die herausgefundene Connection-ID vor dem Semikolon ein – in die­sem Fall die 4.

Skript zum Ändern von Freigabenamen der Connection mit der ID 4

Skript zum Ändern von Freigabenamen der Connection mit der ID 4

  • Klicken Sie auf Execute. Unten erscheint eine Bestätigungsmeldung; in dieser Meldung ist die Zahl der Zeilen doppelt so groß wie die Zahl der Druckerobjekte.
  • Setzen Sie die Datenbank-Eigenschaft Restrict Access zurück auf Single_User, und schließen Sie SQL Server Management Studio.

Freigabenamen bestimmter Drucker ändern

Als Teil anderer Skripte kann es erforderlich sein, Freigabenamen eines bestimmten Druckers zu ändern. Ana­log zur Verwendung des Skriptes pro Connection kann es auch pro Drucker ausgeführt werden. Hierzu ermit­teln Sie zuvor die IDs der betreffenden Drucker (siehe Spalte FK_SRCPRINTER).

  • Hierbei könnten Sie die Meldung “not accessible” erhalten. Für diesen Fall können sie – tem­porär – die Zugriffsrechte (Restrict Access) auf die Datenbank von Single_User auf Multi_User umstel­len.
  • Kopieren Sie dann die folgende Zeile in das Eingabefeld (rechts):

UPDATE CONPRINTER SET SHARENAME = SUBSTRING(SHARENAME, 1, LEN(SHARENAME) - CHARINDEX('_', REVERSE(SHARENAME)) ) WHERE FK_SRCPRINTER = 15;

Tragen Sie am Ende des Skriptes die herausgefundene Drucker-ID vor dem Semikolon ein – in diesem Fall die 15.

  • Klicken Sie auf Execute. Unten erscheint eine Bestätigungsmeldung; in dieser Meldung ist die Zahl der Zeilen doppelt so groß wie die Zahl der Druckerobjekte.
  • Setzen Sie die Datenbank-Eigenschaft Restrict Access zurück auf Single_User, und schließen Sie SQL Server Management Studio.
Previous Page
Next Page

War dies hilfreich?