# JavaScript Daten lokal Speichern



## n00b4u (18. Dez 2015)

Guten Tag zusammen, 

ich habe folgendes Problem: 

Ich programmiere gerade ein Modul für ein ERP-System auf .Net-Basis. Sprich asp.net. Soweit auch kein Problem. 

Die Eingaben am Browser werden an den IIS übergeben und das Modul arbeitet soweit es soll schon. 


Jetzt kommt aber der Knackpunkt. Der Kunde hat zwei USB-Scanner (Sceye-Kameras). 


Das Modul das ich erstellt habe soll die Auftragseingänge erfassen. Jetzt soll zu jedem Reparaturauftrag, mit der Sceye-Kamera ein Foto des Reparaturartikels vor der Reparatur gemacht werden, das Foto wird in einem DMS-gespeichert und der Link zum Foto soll dem Auftrag hinzugefügt werden. 

Eine Schnittstelle für die Kameras habe ich auch schon ABER und hier fängt mein Problem an: 


Die Daten des Auftrags sind im BrowserCache. Die Kameras sind über USB angebunden. Ich muss jetzt also eine Methode finden, einen String bestehend aus Datum, Name und Kundennummer (bereits im Formular im Browser geladen), lokal in eine Textdatei zu speichern, damit meine Kameraschnittstelle, den String auslesen kann, dem Foto das dann gemacht wird, den String als Namen zuweist und das Foto ins DMS-schiebt. Anschliessend wird die Textdatei die den String enthielt mit dem Link überschrieben und der Link als String zurück an mein ERP geliefert. 

Jetzt habe ich ein wenig mit localStorage von js rumprobiert, aber wie kann ich auf die Textdatei die ich erzeuge, ausserhalb des Browsers zugreifen? 


Jemand eine Idee? 

Danke schonmal fürs Lesen.


----------



## n00b4u (18. Dez 2015)

P.S. ich weiß durchaus, dass Java nicht js ist, aber vielleicht gibts ja jemanden, der trotzdem nen Ansatz hat.


----------



## Thallius (18. Dez 2015)

Mir erscheint dein Ansatz irgendwie zu kompliziert...

Warum gibt es in dem Formular nicht einen Button "Foto hochladen". Dort klickt der Kunde drauf und wählt das passende Foto aus. Das ganze kannst du dann direkt mit den Formulardaten an Deinen Server schicken und der kann es kopieren wohin er möchte und einen entsprechenden Link erstellen.

Gruß

Claus


----------



## n00b4u (18. Dez 2015)

Ich will die Bilder nicht in der DB des ERP haben. Die machen auf die Art und Weise am Tag knapp 300 Bilder und haben ohnehin ein DMS das auf nem anderen Server mit mehr Storage-Kapazität läuft. Im Endeffekt reicht ja auch der Link zum Bild aus dem Auftrag heraus. Und on Top, das ERP ist etwas eigensinnig in der Verwaltung von Bildern....

Und das ganze läuft eigentlich so ab, mein Kunde erhält am Tag zwischen 200 bis 300 Pakete mit Reparaturaufträgen. Die müssen schnellstmöglich erfasst werden, weil es einfach sonst nicht kostendeckend ist. 

Jedes Paket enthält eine Kundennummer mit Barcode, der Barcode wird gescannt, und automatisch ein Beleg erzeugt, dann wird das Päckchen geöffnet und das Produkt beim Eingang fotografiert. Anschliessend wird der Beleg im Browser ergänzt und verarbeitet. 

Da das an zwei Plätzen mit zwei USB-Kameras passiert, kann ich auch nicht einfach den Link zum letzten erzeugten Beleg zuordnen sondern muss anhand der Belegdaten aus der Eingabemaske eine Zuordnung vornehmen.


----------



## Thallius (18. Dez 2015)

Dann schickst du die bilddaten halt einfach weiter an den DMS und speicherst den Link, den du dann ja kennst, in der DB. Wichtig ist, dass erstmal alle Daten zentral erfasst werden. Wohin du dann was kopierst ist ja dein Ding. Aber den Weg über lokale Daten auf dem Client halte ich für grundsätzlich falsch.

Gruß

Claus


----------



## n00b4u (18. Dez 2015)

Hm... das heisst aber, du würdest das Bild erstmal im ERP speichern, dann weiter ans DMS schicken und dann den Link ins ERP schreiben?


----------



## Thallius (18. Dez 2015)

Du kannst ja auch das Bild direkt via Ajax an den DMS schicken und dir dann den Link zurückgeben lasen. Den trägst du in ein hidden Feld deiner formulares ein und schickst es an den EMR.

Gruß

Claus


----------



## n00b4u (18. Dez 2015)

Nette Idee, aber das bekomme ich bei dem Kunden nicht durch. Da müsste der Anwender ja die Kamera-Anwendung starten, dann ein Bild erzeugen, das Bild dann selbst hochladen. Hört sich vielleicht nicht dramatisch an, ist aber absolut nicht gewünscht. Die Anforderung sagt klar: Kamera löst aus, Bild gespeichert. Jeder Mehraufwand für die Anwender wird mir gestrichen.


----------

