IntraWeb: Connection mit Variable %Computername% ??

Hallo,
ich versuche einen Connectionstring in einer HTML-Datei zu realisieren. Hauptanliegen ist hierbei, daß der Datenbankserver genauso heisst wie der Computer. Die Systemvariable %Computername% kann zwar in Dos und innerhalb von HTML auch in einem VBScript eingelesen werden, aber leider finde ich bisher keinen Weg, diese Variable in meinen Connectionsstring zur Datenbank zu integrieren.

Beispiel:

<OBJECT id=MSODSC tabIndex=-1
classid=CLSID:0002E553-0000-0000-C000-000000000046><PARAM NAME="XMLData" VALUE='<xml xmlns:a="urn:schemas-microsoft-com:office:access">&#13;&#10; <a:DataSourceControl>&#13;&#10;  <a:OWCVersion>10.0.0.6619         </a:OWCVersion>&#13;&#10;  <a:ConnectionString>Provider=SQLOLEDB.1;Integrated
Security=SSPI;Persist Security Info=True;Initial Catalog=VIS;

Data Source=WER\SQL;
(Data Source="NamederDB\SQL";)

Use Procedure for Prepare=1;Auto Translate=True;Packet Size=4096;

Workstation ID=WER;
(Workstation ID="Username";)

usw usw. usw.
</OBJECT>

****************************************************************
Also...
bei Data Source und bei Workstation ID= will ich eine
Variable WER verwenden, die die Inhalt %Computername% besitzt.

Ich habe bereits versucht, diesen Tag in ein Script-Tag zu packen,
leider klappt das nicht. Habe innerhalb VBScript die Variable WER belegt, aber leider ist WER innerhalb des Tags OBJECT ohne Wirkung.

Wer hat nen Tip`?

Gruß
Dieter

  1. Hallo, IntraWeb!

    Ich habe bereits versucht, diesen Tag in ein Script-Tag zu packen,
    leider klappt das nicht. Habe innerhalb VBScript die Variable WER belegt, aber leider ist WER innerhalb des Tags OBJECT ohne Wirkung.

    du hast den code

    <OBJECT id=MSODSC tabIndex=-1
    usw usw. usw.
    </OBJECT>

    auch per script ins dokument geschrieben?

    freundl. Grüsse aus Berlin, Raik

    1. Hallo, IntraWeb!

      Ich habe bereits versucht, diesen Tag in ein Script-Tag zu packen,
      leider klappt das nicht. Habe innerhalb VBScript die Variable WER belegt, aber leider ist WER innerhalb des Tags OBJECT ohne Wirkung.

      du hast den code

      <OBJECT id=MSODSC tabIndex=-1
      usw usw. usw.
      </OBJECT>
      auch per script ins dokument geschrieben?

      Die HTML-Seiten resulieren aus MS ACCESS (als html speichern)
      und müssen nun nachbearbeitet werden.
      <OBJECT....     befindet sich nicht innerhalb eines Scriptes

      • wenn ich es in <SCRIPT><!--....</SCRIPT> einbette, funktioniert
        der Connect nicht.

      freundl. Grüsse aus Berlin, Raik

      1. Hallo, IntraWeb!

        <OBJECT....     befindet sich nicht innerhalb eines Scriptes

        • wenn ich es in <SCRIPT><!--....</SCRIPT> einbette, funktioniert
          der Connect nicht.

        tscha, "object" weis nichts davon, dass "WER" eine variable ist. du musst also "WER" an der entsprechenden stelle vom script ausgeben lassen.
        ich kann mir aber nicht vorstellen, dass das nicht funktionieren soll, wenn du den gesamten object-code in document.write()'s verpackst und dabei an der netsprechenden stelle "WER" ausgeben lässt.
        wie hast du es denn versucht? (am besten nen link zu deinem versuch angeben)

        freundl. Grüsse aus Berlin, Raik

        1. Hallo, IntraWeb!

          <OBJECT....     befindet sich nicht innerhalb eines Scriptes

          • wenn ich es in <SCRIPT><!--....</SCRIPT> einbette, funktioniert
            der Connect nicht.

          tscha, "object" weis nichts davon, dass "WER" eine variable ist. du musst also "WER" an der entsprechenden stelle vom script ausgeben lassen.
          ich kann mir aber nicht vorstellen, dass das nicht funktionieren soll, wenn du den gesamten object-code in document.write()'s verpackst und dabei an der netsprechenden stelle "WER" ausgeben lässt.
          wie hast du es denn versucht? (am besten nen link zu deinem versuch angeben)

          freundl. Grüsse aus Berlin, Raik

          ****************************************++++
          <script language="VBScript">
          <!--
          Set objNetwork = CreateObject("WScript.Network")
          pcname=objNetwork.ComputerName
          wer=objNetwork.UserName
          //-->
          </script>

          <OBJECT id=MSODSC tabIndex=-1
          classid=CLSID:0002E553-0000-0000-C000-000000000046><PARAM NAME="XMLData" VALUE='<xml xmlns:a="urn:schemas-microsoft-com:office:access">&#13;&#10; <a:DataSourceControl>&#13;&#10;  <a:OWCVersion>10.0.0.6619         </a:OWCVersion>&#13;&#10;  <a:ConnectionString>Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=True;Initial Catalog=VIS;Data Source=wer&\SQL;Use Procedure for Prepare=1;Auto Translate=True;Packet Size=4096;Workstation ID=wer;Use Encryption for Data=False;Tag with column collation when possible=False</a:ConnectionString>&#13;&#10;  <a:MaxRecords>0</a:MaxRecords>&#13;&#10;  <a:GridX>10</a:GridX>&#13;&#10;  <a:GridY>10</a:GridY>&#13;&#10;  <a:OfflineType>2</a:OfflineType>&#13;&#10;  <a:OfflinePublication></a:OfflinePublication>&#13;&#10;  <a:XMLLocation>0</a:XMLLocation>&#13;&#10;  <a:XMLDataTarget></a:XMLDataTarget>&#13;&#10;  <a:ConnectionFile></a:ConnectionFile>&#13;&#10;  <a:ElementExtension>&#13;&#10;   <a:ElementID>TAG</a:ElementID>&#13;&#10;   <a:ControlSource>TAG</a:ControlSource>&#13;&#10;   <a:ChildLabel>TAG_Bezeichnungsfeld</a:ChildLabel>&#13;&#10;  </a:ElementExtension>&#13;&#10;  <a:ElementExtension>&#13;&#10;   <a:ElementID>KDNR</a:ElementID>&#13;&#10;   <a:ControlSource>KDNR</a:ControlSource>&#13;&#10;   <a:ChildLabel>KDNR_Bezeichnungsfeld</a:ChildLabel>&#13;&#10;  </a:ElementExtension>&#13;&#10;  <a:ElementExtension>&#13;&#10;   <a:ElementID>NAME</a:ElementID>&#13;&#10;   <a:ControlSource>NAME</a:ControlSource>&#13;&#10;
          ...uswusw usw
          </a:DataSourceControl>&#13;&#10;</xml>'></OBJECT>

          Gruß aus dem Allgäu

          1. Hallo, IntraWeb!

            <script language="VBScript">
            <!--
            Set objNetwork = CreateObject("WScript.Network")
            pcname=objNetwork.ComputerName
            wer=objNetwork.UserName

            var source = '<OBJECT id=MSODSC tabIndex=-1 classid=CLSID:0002E553-0000-0000-C000-000000000046>'+
                         '<PARAM NAME="XMLData" VALUE='<xml xmlns:a="urn:schemas-microsoft-com:office:access">&#13;&#10; '+
                         '<a:DataSourceControl>&#13;&#10;  <a:OWCVersion>10.0.0.6619         </a:OWCVersion>&#13;&#10; '+
                         '...... Catalog=VIS;Data Source=' + wer + '&\SQL;Use Procedure  ....... '+
                         '...... ID=' + wer + ';Use Encryption for Data=False; ....... '+
                         ' ..... '+
                         '</a:DataSourceControl>&#13;&#10;</xml>'></OBJECT>';

            document-write(source);

            //-->
            </script>

            innerhalb des textes, der eingefügt werden soll, müssen alle ' maskiert werden: '

            freundl. Grüsse aus Berlin, Raik

            1. Danke!
              Werds morgen gleich probieren.

              Gruß aus dem Allgäu
              http://www.sonnigelehne.de

  2. Im Grunde geht es darum, innerhalb von <OBJECT> ... </OBJECT>
    eine außerhalb mit VBScript definierte Variable mit dem Namen WER
    zu verwenden.

    Die Anwendung wird dann auf beliebigen Rechnern lauffähig sein,
    weil die Variable WER jeweils den %Computername% beinhaltet.

    Es handelt sich um eine Offline-Lösung, die in HTML realisiert
    werden soll und mit MSDE / MS-SQL dynamisch arbeiten wird.

    Gruß
    aus dem Allgäu

    1. Hallo IntraWeb,

      Im Grunde geht es darum, innerhalb von <OBJECT> ... </OBJECT>
      eine außerhalb mit VBScript definierte Variable mit dem Namen WER
      zu verwenden.

      Ich vermute, dass dies überflüssig ist. Du denkst zu kompliziert.

      Es handelt sich um eine Offline-Lösung, die in HTML realisiert
      werden soll und mit MSDE / MS-SQL dynamisch arbeiten wird.

      Auch der MSSQL-Server respektive die MSDE auf der lokalen Maschine
      läßt sich wunderbar über den Rechnernamen

      localhost

      ansprechen. Probiere zuerst mal "localhost", bevor Du versuchst
      dynamisch einen Namen auszulesen.

      Freundliche Grüsse,

      Vinzenz