Datenbak-Information : - Servername

Moin moin, kann mir bitte einer sagen, wo ich den Servernamen ( Tabelle, Variable, ? ) finde, über den ich mit Navision ( Vers. 2.01 ) aktuell verbunden bin ? Visuell finde ich ihn unter : Datei, Datenbank, Informationen, Verbindungen, Servername. Wie kann ich das Feld in einem Objekt ansprechen / wie bekomme ich den Namen ? Ich freue mich schon auf eine positive Antwort. Gruss Rolf

Hallo Rolf Ich glaube Du suchst nach ContextURL. Aus der Hilfe: **CONTEXTURL** Use this function to return a context string that defines the current position of the running objects. String:=CONTEXTURL String Data type: text or code Example Here are two examples of a context string: navision://client/run?database=filename&company=companyname navision://client/run?server=servername&company=companyname&servertype=MSSQL bye Andre

Hallo, den Servernamen gibt es erst ab Version 2.60 in der System-Tabelle 2000000051 (Navision Server) im Feld 3. MfG Josef Metz PS. für Infos über System-Tabellen eignet sich eine Form auf die Tabelle 2000000041 (Field); hier werden neben den “normalen” Tabellen auch die Felder der System-Tabellen angezeigt.

Hallo! CONTEXTURL ist (leider?) erst ab Attain 3.x verfügbar (oder schon ab 2.65?) … Josef: Was mich brennend interessiert ist: wie/wo wird diese Table gefüllt bzw. wie kann ich den Servernamen tatsächlich auslesen? Bei mir steht da nämlich nur … bla, bla, [Client Only], bla, … drin!? Rolf: Was genau möchtest Du damit tun? Vielleicht gibt’s ja 'nen “Workaround”? Gruß, Jörg

Hallo, Joerg: du hast Recht, das Feld gibt wirklich nicht den gewünschten Inhalt her. Rolf: eine Möglichkeit wäre: beim Start des Client eine Umgebungsvariable mit dem Servernamen versorgen und dann in Navision mit “ENVIRON” abfragen. MfG Josef Metz

Hallo Josef, das mit ENVIRON hört sich gut an. Hast du vielleicht ein Beispiel wie ich die Umgebungsvariable erstelle und dort den Servernamen reinbekomme? Und kann ich dann in Navision direkt mit ENVIRON(Umgebungsvariable) den Servernamen bereitgestellt bekommen ? und noch zu Jörg: ich muss diesen Namen in ein Feld in einer selbstdefinierte Tabelle abspeichern. Gruss Rolf

Hi! Hier noch’n Vorschlag (so machen wir’s): Jeder Client verbindet sich mit einem bestimmten Server durch eine eigene Verknüpfung auf dem Desktop. Jede dieser Verknüpfungen enthält also u.a. den Parameter servername=. Beim Systemstart wird die System-Variable COMMANDLINE gelesen und daraus der Servername “ausgeschnitten” … Gruß, Jörg

quote:


Originally posted by Heinsohn
Hast du vielleicht ein Beispiel wie ich die Umgebungsvariable erstelle und dort den Servernamen reinbekomme? Und kann ich dann in Navision direkt mit ENVIRON(Umgebungsvariable) den Servernamen bereitgestellt bekommen ?


Hallo Rolf, In der Systemsteuerung->System und dann je nach Windows-Version Umgebung oder Erweitert->Umgebung etc. kannst Du Umgebungsvariablen erstellen. Das ist empfehlenswert, wenn es nur einen einzigen Server gibt. Wenn es mehrere Server gibt, kannst Du für jeden Server eine .BAT Datei erstellen, in der zuerst mit einem set-Kommando die Umgebungsvariable gesetzt (z.B. set NAVSERVER=foo) und dann Navision gestartet wird. Es ist dann halt für jeden Server die richtige .BAT Datei auszuführen. In Navision kannst Du dann, wie schon richtig vermutet, mit ENVIRON direkt den Wert der Variable, also den zuvor gesetzten Servernamen, auslesen.

Hi Jörg, das mit COMMANDLINE ist genau der richtige Weg, schnell und easy. Dafür meinen grossen Dank! Allen anderen auch vielen Dank für die gute Unterstützung. Gruss Rolf