LabVIEWForum.de
Javascript einbinden - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+---- Forum: DLL & externer Code (/Forum-DLL-externer-Code)
+---- Thema: Javascript einbinden (/Thread-Javascript-einbinden)



Javascript einbinden - seuk - 18.03.2020 08:18

Hallo Zusammen,

folgende Ausgangslage: Ein Hersteller bietet auf seiner Webseite einen Kalkulator an: Der Benutzer wählt die verwendete Hardware aus, tippt einen Abstandswert ein und bekommt nun einige Werte berechnet. Da es hier um eine berufliche Anwendung geht, bleibe ich leider unkonkret.

Ziel: Wir benötigen diese Werte in unserem Programm.

Bisher heißt es also, Lieber Benutzer, geh auf die Webseite und tippe die Ergebnisse in unserem Programm ein. Dies würde ich gerne komfortabler gestalten. Der Kalkulator kann auf der Webseite heruntergeladen werden. In der HTML Datei werden zunächst große JS-Arrays mit Parametern für die Hardware definiert und anschließend werden einige Javascript Funktionen aufgerufen, um die Werte zu berechen.

Also in etwa:

Code:
HW[1]["param1"] = 4.56;
HW[1]["param2"] = 8.23;
HW[1]["param3"] = 4.77;
...

function calcX(distance, counter){
var col = findCol(distance);
var x1 = HW[counter][col];
...
}
...

Ich habe probehalber mal in einem VI angefangen das nachzubauen, was doch sehr mühsam ist: Ein Arrayeintrag hat 40 Parameter und das Array hat 50 Elemente. In den Funktionen passieren dann so schöne einfache Zugriffe wie assoziative Arrays: findCol liefert einen String zurück, der zum Zugriff auf ein Arrayelement genutzt wird. Das kriegt man natürlich alles irgendwie in Labview auch hin, aber erscheint mir jetzt doch nicht der richtige Weg, z.B. wegen Aktualisierungen des Kalkulator, Fehleranfälligkeit, etc.

Meine aktuelle Lösung: Den Kalkulator als HTML Datei mit an den Kunden ausliefern, da auf den Maschinen nicht unbedingt Internet zur Verfügung steht und mittels "open URL in Default Browser.vi" öffnen.

Das Teil im Labview Browser laufen zu lassen, scheint wegen der Verwendung von Jquery zu scheitern.
[attachment=60767][attachment=60768]

Hat vielleicht hier jemand eine Idee? Es wäre natürlich nur zu schön, wenn der Benutzer die GUI des Herstellers, also die HTML Ansicht, in unserer Anwendung verwenden würde und wir die Werte irgendwie auslesen könnten. Die stehen am Ende ja in DIV Tags mit IDs, die wir kennen. Wenn wir es mit Labview irgendwie programmatisch schaffen würden die zwei Eingaben zu machen und die Werte auszulesen.... 2hands


Schönen Gruß,
seuk


RE: Javascript einbinden - seuk - 20.03.2020 14:03

Update: Ich habe es geschafft die JS-Funktionen unter Labview NXG mit dem WebModule nach dieser Anleitung aufzurufen. Dies hat sehr schön funktioniert. Schade nur, dass unsere Anwendung nicht unter NXG läuft und das Web Module nochmal ordentlich extra kostet...

Edit Off Topic an einen Mod: Wenn ich bei meinem ersten Beitrag oben auf Bearbeiten klicke -> "Öffne im Editor" bekomme ich die Fehlermeldung, dass mir die nötigen Berechtigungen fehlen würden. Bei "Öffne im Inline Editor" kommt die Meldung nicht. Hier beim zweiten Beitrag klappen dann beide. Blink