romero: Mittels Javascript & ActiveXObject auf SAP + Daten zugreifen

Hallöchen an Euch,

hab da mal eine Frage: Und zwar, ist einer unter Euch, der ein Code (mittels Javascript) geschrieben hat, mit dem man auf das SAP zugreifen kann? Bzw. mit Hilfe der Transaktionen diverse Daten abfragen / auslesen / ... kann?

Wäre Euch zu tiefst dankbar dafür.

Im Netz ist darüber eher schwer was zu finden. Das einzige brauchbare, was ich gefunden habe war das hier:

  
function SAPlogon()  
	{  
	fns = new ActiveXObject("SAP.Functions");  
	trans = fns.Transactions;  
	conn = fns.connection;  
	conn.System = "SYSTEM";  
	conn.user = "userid";  
	conn.password = "******";  
	conn.Client = "400";  
	conn.Language = "DE";  
	conn.tracelevel = 6;  
	conn.RFCWithDialog = 1;  
	conn.logon(0, 0);  
	exceptions = 0;  
	};  
  
  
function SAPlogoff()  
	{  
	conn.logoff(0, 0);  
	exceptions = 0;  
	};

Also wie gesagt, ist einer unter Euch der sich damit auskennt?

LG Romero

  1. Also wie gesagt, ist einer unter Euch der sich damit auskennt?

    Ich nicht, aber du kannst dir mit dem OLE/COM Object Viewer (oleview.exe) die IDL-Beschreibung anzeigen lassen, wenn dir das weiterhilft.
    Dann weisst du erst mal welche Schnittstellen vorhanden sind.
    ...
    Ich habe gerade mal gesucht, und finde eigentlich auch recht viel.
    Das hier sieht doch recht vielversprechend aus.

    1. Also wie gesagt, ist einer unter Euch der sich damit auskennt?

      Ich nicht, aber du kannst dir mit dem OLE/COM Object Viewer (oleview.exe) die IDL-Beschreibung anzeigen lassen, wenn dir das weiterhilft.
      Dann weisst du erst mal welche Schnittstellen vorhanden sind.
      ...
      Ich habe gerade mal gesucht, und finde eigentlich auch recht viel.
      Das hier sieht doch recht vielversprechend aus.

      Erstmal Danke. Aber ich suche, da mein Englisch nicht soooo berauschend ist, eher ne Deutsche Seite, aber werde sie mir natürlich anschauen und durchlesen?

  2. Das einzige brauchbare, was ich gefunden habe war das hier:

    Hm. Das sieht so aus, als würdest uns was verschweigen. Offenbar wird da zuvor eine Bibliothek eingebunden.

    Also wie gesagt, ist einer unter Euch der sich damit auskennt?

      
    
    >       conn.System = "SYSTEM";  
    >       conn.user = "userid";  
    >       conn.password = "******";  
    
    

    Das sieht nun wieder so aus, als würdest Du mit dem Code so harmlose Informationen wie Passwörter zum Browser senden... aus diesem Grund erscheint mir der Lösungsansatz fragwürdig. Ich würde eher vermuten, Du brauchst eine Kombination aus serverseitigem und browserseitigem Skripts.

    Also wie gesagt, ist einer unter Euch der sich damit auskennt?

    Ich nun nicht so direkt. (Ich kenne nur das Prinzip.) Aber vermutlich gibt es an der Quelle der von Dir benutzten Bibliothek auch eine Dokumentation.

    Apropos Dokumentation. Dort findet sich nichts zu Javascript oder AvtiveScript - dafür aber z.B. Bibliotheken für Pyton, Perl und PHP sowie Treiber für JDBC und ODBC. Auf welche davon greift denn dann Deine JS-Bibliothek zu? Und was setzt die offenbar verwendete JS-Bibliothek dann serverseitig noch voraus?

    Etwa SAPRFC?

    Jörg Reinholz

    1. Das einzige brauchbare, was ich gefunden habe war das hier:

      Hm. Das sieht so aus, als würdest uns was verschweigen. Offenbar wird da zuvor eine Bibliothek eingebunden.

      Also wie gesagt, ist einer unter Euch der sich damit auskennt?

      conn.System = "SYSTEM";
            conn.user = "userid";
            conn.password = "******";

      
      >   
      > Das sieht nun wieder so aus, als würdest Du mit dem Code so harmlose Informationen wie Passwörter zum Browser senden... aus diesem Grund erscheint mir der Lösungsansatz fragwürdig. Ich würde eher vermuten, Du brauchst eine Kombination aus serverseitigem und browserseitigem Skripts.  
        
      Das war nur eine Art Test, um zu schauen ob ich mittels Javascript überhaupt die "Macht" habe auf das SAP zugreifen zu können. Wenn dann würde es sowieso ein Anmeldefenster geben wo dann die Benutzernamen + Passwort einzutragen sind.  
      
      >   
      > > Also wie gesagt, ist einer unter Euch der sich damit auskennt?  
      >   
      > Ich nun nicht so direkt. (Ich kenne nur das Prinzip.) Aber vermutlich gibt es an der Quelle der von Dir benutzten Bibliothek auch eine Dokumentation.  
      >   
      > Auf welche davon greift denn dann Deine JS-Bibliothek zu? Und was setzt die offenbar verwendete JS-Bibliothek dann serverseitig noch voraus?  
        
      Jetzt haste mich :( bin da grad überfragt und hab grad kein Schimmer was du meinst.  
      Muss dazu sagen, dass ich ein Script als \*.HTA-Datei habe. Es ist ein Script, dass Daten sammelt und in eine\*.TXT ausgibt. Nun wollt ich halt die erhaltenen Daten mit den Daten aus SAP vergleichen.  
        
      Klar gibt es Möglichkeiten mittels VBA auf SAP zuzugreifen und diese auszulesen aber geht das auch mittels Javascript?  
        
      LG Romero
      
      1. Klar gibt es Möglichkeiten mittels VBA auf SAP zuzugreifen und diese auszulesen aber geht das auch mittels Javascript?

        VB oder VBA? Alles was du in VB mit ActiveX machen kannst, kannst du in jeder Sprache machen die ActiveX-Objekte anlegen kann. Also auch JScript.
        Du brauchst nur noch das entprechende Produkt welches die ActiveX-Schnittstellen bereitstellt.
        VBA ist VB in einer Anwendung integriert. Das kann u.U. mehr, weil das auch auf Interna zugreifen könnte.
        Wenn du aber schon eine VB Lösung hast, kannst du die 1:1 nach JScript umsetzen.

        1. VB oder VBA?

          Ich meine eigentlich VBScript, nicht VB.