Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Error/Bug
  4. JavaScript startet nach update von CSV-parse nicht mehr

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    16
    1
    1.8k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    893

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.1k

JavaScript startet nach update von CSV-parse nicht mehr

Geplant Angeheftet Gesperrt Verschoben Gelöst Error/Bug
csv-parse javasript update
41 Beiträge 4 Kommentatoren 2.6k Aufrufe 3 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • N Offline
    N Offline
    Nobody28
    schrieb am zuletzt editiert von
    #32

    Oh man...Asche auf mein Haupt ;(

    Habe das fälschlicherweise in ein anderes Sript eingefügt und nicht bemerkt...

    Schedule scheint es jetzt zu geben ==>

    javascript.0	2019-03-05 15:06:18.564	info	script.js.common.HMT.Zemo-CSV-in-Objekte: registered 0 subscriptions and 1 schedule
    

    Sorry nochmal dafür... manchmal sieht man den Wald vor lauter Bäumen nicht :)

    die Splitzeile habe ich auch wieder zurückgeändert...aber es werden keine Objekte erzeugt!

    foxriver76F 1 Antwort Letzte Antwort
    0
    • N Offline
      N Offline
      Nobody28
      schrieb am zuletzt editiert von
      #33

      Mmmmhhh...

      verstehe ich gerade noch nicht... wenn ich das manuel ausführe macht er nichts...

      kann es sein, dass ich immer auf die vollen 5 Minuten warten muss, damit das Script auch läuft?!
      Dann war es unwissenheit und ungeduld von mit... das bitte ich dann zu entschuldigen.

      1 Antwort Letzte Antwort
      0
      • N Nobody28

        Oh man...Asche auf mein Haupt ;(

        Habe das fälschlicherweise in ein anderes Sript eingefügt und nicht bemerkt...

        Schedule scheint es jetzt zu geben ==>

        javascript.0	2019-03-05 15:06:18.564	info	script.js.common.HMT.Zemo-CSV-in-Objekte: registered 0 subscriptions and 1 schedule
        

        Sorry nochmal dafür... manchmal sieht man den Wald vor lauter Bäumen nicht :)

        die Splitzeile habe ich auch wieder zurückgeändert...aber es werden keine Objekte erzeugt!

        foxriver76F Offline
        foxriver76F Offline
        foxriver76
        Developer
        schrieb am zuletzt editiert von
        #34

        @Nobody28 sagte in JavaScript startet nach update von CSV-parse nicht mehr:

        Oh man...Asche auf mein Haupt ;(

        Habe das fälschlicherweise in ein anderes Sript eingefügt und nicht bemerkt...

        Schedule scheint es jetzt zu geben ==>

        javascript.0	2019-03-05 15:06:18.564	info	script.js.common.HMT.Zemo-CSV-in-Objekte: registered 0 subscriptions and 1 schedule
        

        Sorry nochmal dafür... manchmal sieht man den Wald vor lauter Bäumen nicht :)

        die Splitzeile habe ich auch wieder zurückgeändert...aber es werden keine Objekte erzeugt!

        Das Skript läuft nicht beim Start sondern alle 5 Minuten, sprich 15:15 --> 15:20 --> 15:25 ... vermutlich wurde deshalb noch nichts erzeugt.

        Videotutorials & mehr

        Hier könnt ihr mich unterstützen.

        1 Antwort Letzte Antwort
        0
        • N Offline
          N Offline
          Nobody28
          schrieb am zuletzt editiert von
          #35

          Super...vielen vielen Dank :)
          Du bist mein Held...

          javascript.0	2019-03-05 15:20:00.010	info	script.js.common.HMT.Zemo-CSV-in-Objekte: Start: ==>
          javascript.0	2019-03-05 15:15:00.004	info	script.js.common.HMT.Zemo-CSV-in-Objekte: Start: ==>
          

          Der vollständigkeithalber, falls es damit auch jemand anderem hilft, hier das derzeitige Script ==>

          schedule('*/5 * * * *', () => {
              console.log("Start: ==>");
              const input = require('fs').readFileSync('/mnt/hmtw2k-d/ZEMO-MDE/Zemo-Anzeige/ioBroker/ioBroker-Zemo.csv').toString();
              const Zeilen = input.split('\n');
              for (const Zeile of Zeilen) {
                  const Terminialnr = parseFloat(Zeile.split(';')[0]);
                  if(!Terminialnr) continue;
                  const Menge_1 = parseInt(Zeile.split(';')[1]);
                  const Menge_2 = parseInt(Zeile.split(';')[2]);
                  const Zeit = Zeile.split(';')[3];
                  const Menge_Total = parseInt(Zeile.split(';')[4]);
                  const Auftragsnummer = parseInt(Zeile.split(';')[5]);
                  const HubIst = parseFloat(Zeile.split(';')[6]);
                  const HubSoll = parseFloat(Zeile.split(';')[7]);
                  const Kostenstelle = parseInt(Zeile.split(';')[8]);
                  const Maschinennr = parseInt(Zeile.split(';')[9]);
                  const Maschinenname = Zeile.split(';')[10];
                  const HubStatus = parseInt(Zeile.split(';')[11]);
                  createState('Zemo.'+Terminialnr+'.'+'Terminialnr', {name: 'Terminialnr', type: 'number', role: 'value'});
                  createState('Zemo.'+Terminialnr+'.'+'Menge_1', {name: 'Menge_1', desc: 'Menge_1', type: 'number', role: 'value'});
                  createState('Zemo.'+Terminialnr+'.'+'Menge_2', {name: 'Menge_2', desc: 'Menge_2', type: 'number', role: 'value'});
                  createState('Zemo.'+Terminialnr+'.'+'Zeit', {name: 'Zeit', desc: 'Zeit', type: 'string', role: 'value'});
                  createState('Zemo.'+Terminialnr+'.'+'Menge_Total', {name: 'Menge_Total', desc: 'Menge_Total', type: 'number', role: 'value'});
                  createState('Zemo.'+Terminialnr+'.'+'Auftragsnummer', {name: 'Auftragsnummer', desc: 'Auftragsnummer', type: 'number', role: 'value'});
                  createState('Zemo.'+Terminialnr+'.'+'HubIst', {name: 'HubIst', desc: 'HubIst', type: 'number', role: 'value'});
                  createState('Zemo.'+Terminialnr+'.'+'HubSoll', {name: 'HubSoll', desc: 'HubSoll', type: 'number', role: 'value'});
                  createState('Zemo.'+Terminialnr+'.'+'Kostenstelle', {name: 'Kostenstelle', desc: 'Kostenstelle', type: 'number', role: 'value'});
                  createState('Zemo.'+Terminialnr+'.'+'Maschinennr', {name: 'Maschinennr', desc: 'Maschinennr', type: 'number', role: 'value'});
                  createState('Zemo.'+Terminialnr+'.'+'Maschinenname', {name: 'Maschinenname', desc: 'Maschinenname', type: 'string', role: 'value'});
                  createState('Zemo.'+Terminialnr+'.'+'HubStatus', {name: 'HubStatus', desc: 'HubStatus', type: 'number', role: 'value'} ,() => {
                      setState('Zemo.'+Terminialnr+'.'+'Terminialnr',Terminialnr, true);
                      setState('Zemo.'+Terminialnr+'.'+'Menge_1',Menge_1, true);
                      setState('Zemo.'+Terminialnr+'.'+'Menge_2',Menge_2, true);
                      setState('Zemo.'+Terminialnr+'.'+'Zeit',Zeit, true);
                      setState('Zemo.'+Terminialnr+'.'+'Menge_Total',Menge_Total, true);
                      setState('Zemo.'+Terminialnr+'.'+'Auftragsnummer',Auftragsnummer, true);
                      setState('Zemo.'+Terminialnr+'.'+'HubIst',HubIst, true);
                      setState('Zemo.'+Terminialnr+'.'+'HubSoll',HubSoll, true);
                      setState('Zemo.'+Terminialnr+'.'+'Kostenstelle',Kostenstelle, true);
                      setState('Zemo.'+Terminialnr+'.'+'Maschinennr',Maschinennr, true);
                      setState('Zemo.'+Terminialnr+'.'+'Maschinenname',Maschinenname, true);
                      setState('Zemo.'+Terminialnr+'.'+'HubStatus',HubStatus, true);
                  });
              }
          });
          

          Nun kann es weitergehen !!!

          Danke... Danke... Danke

          foxriver76F 1 Antwort Letzte Antwort
          0
          • N Nobody28

            Super...vielen vielen Dank :)
            Du bist mein Held...

            javascript.0	2019-03-05 15:20:00.010	info	script.js.common.HMT.Zemo-CSV-in-Objekte: Start: ==>
            javascript.0	2019-03-05 15:15:00.004	info	script.js.common.HMT.Zemo-CSV-in-Objekte: Start: ==>
            

            Der vollständigkeithalber, falls es damit auch jemand anderem hilft, hier das derzeitige Script ==>

            schedule('*/5 * * * *', () => {
                console.log("Start: ==>");
                const input = require('fs').readFileSync('/mnt/hmtw2k-d/ZEMO-MDE/Zemo-Anzeige/ioBroker/ioBroker-Zemo.csv').toString();
                const Zeilen = input.split('\n');
                for (const Zeile of Zeilen) {
                    const Terminialnr = parseFloat(Zeile.split(';')[0]);
                    if(!Terminialnr) continue;
                    const Menge_1 = parseInt(Zeile.split(';')[1]);
                    const Menge_2 = parseInt(Zeile.split(';')[2]);
                    const Zeit = Zeile.split(';')[3];
                    const Menge_Total = parseInt(Zeile.split(';')[4]);
                    const Auftragsnummer = parseInt(Zeile.split(';')[5]);
                    const HubIst = parseFloat(Zeile.split(';')[6]);
                    const HubSoll = parseFloat(Zeile.split(';')[7]);
                    const Kostenstelle = parseInt(Zeile.split(';')[8]);
                    const Maschinennr = parseInt(Zeile.split(';')[9]);
                    const Maschinenname = Zeile.split(';')[10];
                    const HubStatus = parseInt(Zeile.split(';')[11]);
                    createState('Zemo.'+Terminialnr+'.'+'Terminialnr', {name: 'Terminialnr', type: 'number', role: 'value'});
                    createState('Zemo.'+Terminialnr+'.'+'Menge_1', {name: 'Menge_1', desc: 'Menge_1', type: 'number', role: 'value'});
                    createState('Zemo.'+Terminialnr+'.'+'Menge_2', {name: 'Menge_2', desc: 'Menge_2', type: 'number', role: 'value'});
                    createState('Zemo.'+Terminialnr+'.'+'Zeit', {name: 'Zeit', desc: 'Zeit', type: 'string', role: 'value'});
                    createState('Zemo.'+Terminialnr+'.'+'Menge_Total', {name: 'Menge_Total', desc: 'Menge_Total', type: 'number', role: 'value'});
                    createState('Zemo.'+Terminialnr+'.'+'Auftragsnummer', {name: 'Auftragsnummer', desc: 'Auftragsnummer', type: 'number', role: 'value'});
                    createState('Zemo.'+Terminialnr+'.'+'HubIst', {name: 'HubIst', desc: 'HubIst', type: 'number', role: 'value'});
                    createState('Zemo.'+Terminialnr+'.'+'HubSoll', {name: 'HubSoll', desc: 'HubSoll', type: 'number', role: 'value'});
                    createState('Zemo.'+Terminialnr+'.'+'Kostenstelle', {name: 'Kostenstelle', desc: 'Kostenstelle', type: 'number', role: 'value'});
                    createState('Zemo.'+Terminialnr+'.'+'Maschinennr', {name: 'Maschinennr', desc: 'Maschinennr', type: 'number', role: 'value'});
                    createState('Zemo.'+Terminialnr+'.'+'Maschinenname', {name: 'Maschinenname', desc: 'Maschinenname', type: 'string', role: 'value'});
                    createState('Zemo.'+Terminialnr+'.'+'HubStatus', {name: 'HubStatus', desc: 'HubStatus', type: 'number', role: 'value'} ,() => {
                        setState('Zemo.'+Terminialnr+'.'+'Terminialnr',Terminialnr, true);
                        setState('Zemo.'+Terminialnr+'.'+'Menge_1',Menge_1, true);
                        setState('Zemo.'+Terminialnr+'.'+'Menge_2',Menge_2, true);
                        setState('Zemo.'+Terminialnr+'.'+'Zeit',Zeit, true);
                        setState('Zemo.'+Terminialnr+'.'+'Menge_Total',Menge_Total, true);
                        setState('Zemo.'+Terminialnr+'.'+'Auftragsnummer',Auftragsnummer, true);
                        setState('Zemo.'+Terminialnr+'.'+'HubIst',HubIst, true);
                        setState('Zemo.'+Terminialnr+'.'+'HubSoll',HubSoll, true);
                        setState('Zemo.'+Terminialnr+'.'+'Kostenstelle',Kostenstelle, true);
                        setState('Zemo.'+Terminialnr+'.'+'Maschinennr',Maschinennr, true);
                        setState('Zemo.'+Terminialnr+'.'+'Maschinenname',Maschinenname, true);
                        setState('Zemo.'+Terminialnr+'.'+'HubStatus',HubStatus, true);
                    });
                }
            });
            

            Nun kann es weitergehen !!!

            Danke... Danke... Danke

            foxriver76F Offline
            foxriver76F Offline
            foxriver76
            Developer
            schrieb am zuletzt editiert von
            #36

            @Nobody28 Top, gerne.

            Videotutorials & mehr

            Hier könnt ihr mich unterstützen.

            1 Antwort Letzte Antwort
            0
            • N Offline
              N Offline
              Nobody28
              schrieb am zuletzt editiert von
              #37

              Baue mir gerade noch das Ende Signal fürs Log ein :)

              Dann kann ich die Laufzeit besser erfassen und kann auch besser feststellen, wenn das Script ggf. mal nciht zuende läuft.

              Danke :)

              1 Antwort Letzte Antwort
              0
              • N Offline
                N Offline
                Nobody28
                schrieb am zuletzt editiert von
                #38

                @foxriver76 und nattürlich die anderen, ich hatte da mal noch ein Problem :)

                Das ist das derzeitige Script ==>

                schedule('*/5 * * * *', () => {
                var hist = {
                     "history.0": {
                        "enabled": true,
                        "changesOnly": true,
                        "debounce": 10000,
                        "maxLength": 360,
                        "retention": 31536000
                     }
                };
                    console.log("Start ZEMO Daten import alle 5 Minuten ==>");
                    const input = require('fs').readFileSync('/mnt/hmtw2k-d/ZEMO-MDE/Zemo-Anzeige/ioBroker/ioBroker-Zemo.csv').toString();
                    const Zeilen = input.split('\n');
                    for (const Zeile of Zeilen) {
                        const Terminialnr = parseFloat(Zeile.split(';')[0]);
                        if(!Terminialnr) continue;
                        const Menge_1 = parseInt(Zeile.split(';')[1]);
                        const Menge_2 = parseInt(Zeile.split(';')[2]);
                        const Zeit = Zeile.split(';')[3];
                        const Menge_Total = parseInt(Zeile.split(';')[4]);
                        const Auftragsnummer = parseInt(Zeile.split(';')[5]);
                        const HubIst = parseFloat(Zeile.split(';')[6]);
                        const HubSoll = parseFloat(Zeile.split(';')[7]);
                        const Kostenstelle = parseInt(Zeile.split(';')[8]);
                        const Maschinennr = parseInt(Zeile.split(';')[9]);
                        const Maschinenname = Zeile.split(';')[10];
                        const HubStatus = parseInt(Zeile.split(';')[11]);
                        const StatusAktuell = Zeile.split(';')[12];
                        createState('Zemo.'+Terminialnr+'.'+'Terminialnr', {name: 'Terminialnummer', type: 'number', role: 'value'});
                        createState('Zemo.'+Terminialnr+'.'+'Menge_1', {name: 'Menge 1', desc: 'Menge 1', type: 'number', role: 'value'});
                        createState('Zemo.'+Terminialnr+'.'+'Menge_2', {name: 'Menge 2', desc: 'Menge 2', type: 'number', role: 'value'});
                        createState('Zemo.'+Terminialnr+'.'+'Zeit', {name: 'Zeit', desc: 'Zeit', type: 'string', role: 'value'});
                        createState('Zemo.'+Terminialnr+'.'+'Menge_Total', {name: 'Menge Total', desc: 'Menge Total', type: 'number', role: 'value'});
                        createState('Zemo.'+Terminialnr+'.'+'Auftragsnummer', {name: 'Auftragsnummer', desc: 'Auftragsnummer', type: 'number', role: 'value'});
                        createState('Zemo.'+Terminialnr+'.'+'HubIst', {name: 'Hub Ist', desc: 'Hub Ist', type: 'number', role: 'value'});
                        createState('Zemo.'+Terminialnr+'.'+'HubSoll', {name: 'Hub Soll', desc: 'Hub Soll', type: 'number', role: 'value'});
                        createState('Zemo.'+Terminialnr+'.'+'Kostenstelle', {name: 'Kostenstelle', desc: 'Kostenstelle', type: 'number', role: 'value'});
                        createState('Zemo.'+Terminialnr+'.'+'Maschinennr', {name: 'Maschinennummer', desc: 'Maschinennummer', type: 'number', role: 'value'});
                        createState('Zemo.'+Terminialnr+'.'+'Maschinenname', {name: 'Maschinenname', desc: 'Maschinenname', type: 'string', role: 'value'});
                        createState('Zemo.'+Terminialnr+'.'+'HubStatus', {name: 'HubStatus', desc: 'HubStatus', type: 'string', role: 'value'});
                        createState('Zemo.'+Terminialnr+'.'+'StatusAktuell', {name: 'Status Aktuell', desc: 'Status Aktuell', type: 'number', role: 'value'} ,() => {
                            setState('Zemo.'+Terminialnr+'.'+'Terminialnr',Terminialnr, true);
                            setState('Zemo.'+Terminialnr+'.'+'Menge_1',Menge_1, true);
                            setState('Zemo.'+Terminialnr+'.'+'Menge_2',Menge_2, true);
                            setState('Zemo.'+Terminialnr+'.'+'Zeit',Zeit, true);
                            setState('Zemo.'+Terminialnr+'.'+'Menge_Total',Menge_Total, true);
                            setState('Zemo.'+Terminialnr+'.'+'Auftragsnummer',Auftragsnummer, true);
                            setState('Zemo.'+Terminialnr+'.'+'HubIst',HubIst, true);
                            setState('Zemo.'+Terminialnr+'.'+'HubSoll',HubSoll, true);
                            setState('Zemo.'+Terminialnr+'.'+'Kostenstelle',Kostenstelle, true);
                            setState('Zemo.'+Terminialnr+'.'+'Maschinennr',Maschinennr, true);
                            setState('Zemo.'+Terminialnr+'.'+'Maschinenname',Maschinenname, true);
                            setState('Zemo.'+Terminialnr+'.'+'HubStatus',HubStatus, true);
                            setState('Zemo.'+Terminialnr+'.'+'StatusAktuell',StatusAktuell, true);
                        });
                    }
                console.log("<== Ende ZEMO Daten import");    
                });
                

                Ich bekomme dezeit nach einfügen der Zeilen 28, und 54 den folgenden Fehler ==>

                09:48:00.009	info	javascript.0 script.js.common.HMT.Zemo-CSV-in-Objekte: Start ZEMO Daten import alle 5 Minuten ==>
                09:48:00.009	info	javascript.0 script.js.common.HMT.Zemo-CSV-in-Objekte: <== Ende ZEMO Daten import
                09:48:00.114	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                09:48:00.115	info	javascript.0 script.js.common.HMT.Zemo-CSV-in-Objekte: StatusAktuell 10110 Produktion
                09:48:00.115	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                09:48:00.116	info	javascript.0 script.js.common.HMT.Zemo-CSV-in-Objekte: StatusAktuell 10120 Produktion
                09:48:00.116	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                09:48:00.117	info	javascript.0 script.js.common.HMT.Zemo-CSV-in-Objekte: StatusAktuell 10130 Ruesten
                09:48:00.117	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                09:48:00.118	info	javascript.0 script.js.common.HMT.Zemo-CSV-in-Objekte: StatusAktuell 10140 Werkzeug Reparatur
                09:48:00.119	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                09:48:00.119	info	javascript.0 script.js.common.HMT.Zemo-CSV-in-Objekte: StatusAktuell 10150 Ruesten
                09:48:00.119	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                09:48:00.120	info	javascript.0 script.js.common.HMT.Zemo-CSV-in-Objekte: StatusAktuell 10160 Reinigung
                09:48:00.120	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                09:48:00.121	info	javascript.0 script.js.common.HMT.Zemo-CSV-in-Objekte: StatusAktuell 10200 Unbegründet
                09:48:00.121	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                09:48:00.122	info	javascript.0 script.js.common.HMT.Zemo-CSV-in-Objekte: StatusAktuell 10220 Materialhandling
                09:48:00.122	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                09:48:00.123	info	javascript.0 script.js.common.HMT.Zemo-CSV-in-Objekte: StatusAktuell 10230 Produktion
                09:48:00.123	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                09:48:00.124	info	javascript.0 script.js.common.HMT.Zemo-CSV-in-Objekte: StatusAktuell 10240 Produktion
                09:48:00.124	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                09:48:00.125	info	javascript.0 script.js.common.HMT.Zemo-CSV-in-Objekte: StatusAktuell 10250 Qualitaetssicherung
                09:48:00.125	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                09:48:00.126	info	javascript.0 script.js.common.HMT.Zemo-CSV-in-Objekte: StatusAktuell 10280 Ruhe
                09:48:00.126	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                09:48:00.130	info	javascript.0 script.js.common.HMT.Zemo-CSV-in-Objekte: StatusAktuell 10290 Produktion
                09:48:00.130	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                09:48:00.130	info	javascript.0 script.js.common.HMT.Zemo-CSV-in-Objekte: StatusAktuell 10291 Produktion
                09:48:00.130	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                09:48:00.131	info	javascript.0 script.js.common.HMT.Zemo-CSV-in-Objekte: StatusAktuell 10300 Produktion
                09:48:00.131	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                09:48:00.131	info	javascript.0 script.js.common.HMT.Zemo-CSV-in-Objekte: StatusAktuell 10310 Ruhe
                09:48:00.132	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                09:48:00.132	info	javascript.0 script.js.common.HMT.Zemo-CSV-in-Objekte: StatusAktuell 10320 Produktion
                09:48:00.132	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                09:48:00.133	info	javascript.0 script.js.common.HMT.Zemo-CSV-in-Objekte: StatusAktuell 10340 Produktion
                09:48:00.133	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                09:48:00.133	info	javascript.0 script.js.common.HMT.Zemo-CSV-in-Objekte: StatusAktuell 10341 Produktion
                09:48:00.134	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                09:48:00.134	info	javascript.0 script.js.common.HMT.Zemo-CSV-in-Objekte: StatusAktuell 10370 MaStoer Laseranlage
                09:48:00.134	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                09:48:00.135	info	javascript.0 script.js.common.HMT.Zemo-CSV-in-Objekte: StatusAktuell 10380 Produktion
                09:48:00.135	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                09:48:00.135	info	javascript.0 script.js.common.HMT.Zemo-CSV-in-Objekte: StatusAktuell 10390 Produktion
                09:48:00.135	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                09:48:00.136	info	javascript.0 script.js.common.HMT.Zemo-CSV-in-Objekte: StatusAktuell 10400 Produktion
                09:48:00.136	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                09:48:00.136	info	javascript.0 script.js.common.HMT.Zemo-CSV-in-Objekte: StatusAktuell 10410 Ruhe
                09:48:00.136	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                09:48:00.137	info	javascript.0 script.js.common.HMT.Zemo-CSV-in-Objekte: StatusAktuell 10411 Ruhe
                09:48:00.137	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                09:48:00.138	info	javascript.0 script.js.common.HMT.Zemo-CSV-in-Objekte: StatusAktuell 10420 Unbegründet
                09:48:00.138	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                09:48:00.138	info	javascript.0 script.js.common.HMT.Zemo-CSV-in-Objekte: StatusAktuell 10421 Werkzeugstoerung
                09:48:00.139	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                09:48:00.139	info	javascript.0 script.js.common.HMT.Zemo-CSV-in-Objekte: StatusAktuell 10490 Produktion
                09:48:00.139	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                09:48:00.139	info	javascript.0 script.js.common.HMT.Zemo-CSV-in-Objekte: StatusAktuell 10500 Materialhandling
                09:48:00.140	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                09:48:00.140	info	javascript.0 script.js.common.HMT.Zemo-CSV-in-Objekte: StatusAktuell 10540 Werkzeug Reparatur
                09:48:00.140	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                09:48:00.140	info	javascript.0 script.js.common.HMT.Zemo-CSV-in-Objekte: StatusAktuell 10560 Behaelterwechsel
                09:48:00.140	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                09:48:00.141	info	javascript.0 script.js.common.HMT.Zemo-CSV-in-Objekte: StatusAktuell 10570 Produktion
                09:48:00.141	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                09:48:00.142	info	javascript.0 script.js.common.HMT.Zemo-CSV-in-Objekte: StatusAktuell 10580 Produktion
                09:48:00.142	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                09:48:00.143	info	javascript.0 script.js.common.HMT.Zemo-CSV-in-Objekte: StatusAktuell 10800 Produktion
                09:48:00.143	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                09:48:00.143	info	javascript.0 script.js.common.HMT.Zemo-CSV-in-Objekte: StatusAktuell 10810 Produktion
                09:48:00.143	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                09:48:00.147	info	javascript.0 script.js.common.HMT.Zemo-CSV-in-Objekte: StatusAktuell 10820 Produktion
                09:48:53.325	info	javascript.0 Stop script script.js.common.HMT.Zemo-CSV-in-Objekte
                09:48:53.333	info	javascript.0 Start javascript script.js.common.HMT.Zemo-CSV-in-Objekte
                09:48:53.333	info	javascript.0 script.js.common.HMT.Zemo-CSV-in-Objekte: registered 0 subscriptions and 1 schedule
                09:50:00.032	info	javascript.0 script.js.common.HMT.Zemo-CSV-in-Objekte: Start ZEMO Daten import alle 5 Minuten ==>
                09:50:00.032	info	javascript.0 script.js.common.HMT.Zemo-CSV-in-Objekte: <== Ende ZEMO Daten import
                09:50:00.052	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                09:50:00.052	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                09:50:00.053	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                09:50:00.054	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                09:50:00.054	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                09:50:00.126	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                09:50:00.127	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                09:50:00.128	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                09:50:00.129	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                09:50:00.129	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                09:50:00.130	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                09:50:00.131	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                09:50:00.132	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                09:50:00.133	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                09:50:00.134	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                09:50:00.135	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                09:50:00.136	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                09:50:00.136	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                09:50:00.137	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                09:50:00.144	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                

                Mein Verdacht sind die Leerzeichen im 12 Token!!!

                Hier ein Ausschnitt der erweiterten Datei ==>

                10110;3862;25444;09:50;3817;1901083010;8.70;21.00;421014;421014;MW 450 to;1;Produktion; 
                10120;3057;23147;09:49;3006;1900887010;8.11;19.00;421012;421012;MW 630 to;0;WKZStoerung eigenRep; 
                10130;2431;6463;00:06;2405;1900694010;18.46;37.00;421011;421011;Raster 630 to;0;Ruesten             ; 
                10140;7688;177936;08:01;7667;1900277010;12.24;60.00;421022;421022;Kaiser 250 to;0;Werkzeug Reparatur  ; 
                10150;8521;12896;09:27;8487;1901558010;46.15;45.00;421024;421024;HR 160 to;0;Ruesten             ; 
                10160;15704;15538;08:49;15514;1901146010;6.52;36.00;421015;421015;MW 400 to;0;Ruesten             ; 
                10200;153;1271;09:50;153;1900565020;0.59;1.25;432120;432120;Mercedes Punkt-Schw.;1;Produktion; 
                10220;247;66500;09:36;247;1900560010;1.78;3.75;450020;450020;6290 Passat;0;Materialhandling    ; 
                10230;128;2584;09:50;128;1900931010;0.59;0.96;442026;442026;Mercedes Magschweissen;1;Produktion; 
                

                Bei Rüsten sind die Leerzeichen gut zu sehen. Der Text kommt in der Regel immer mit einer Länge von 20 Zeichen. Da war das derzeit nciht der Fall ist, wie bei Produktion, kann ich das ggf. manuell einbauen.

                Aber vielleicht gibt es eine einfache Lösung?!

                Erwähnt sei noch, dass die Variable "hist" schon als vorbereitung für die aktivierung von Historydaten für Hubist, HubSoll und Statusaktuell sein soll. Ich möchte aber erstmal die Fehlermeldungen wieder wegbekommen, bevor ich mich daran mache.

                Ich sage schon mal danke.

                foxriver76F 1 Antwort Letzte Antwort
                0
                • N Nobody28

                  @foxriver76 und nattürlich die anderen, ich hatte da mal noch ein Problem :)

                  Das ist das derzeitige Script ==>

                  schedule('*/5 * * * *', () => {
                  var hist = {
                       "history.0": {
                          "enabled": true,
                          "changesOnly": true,
                          "debounce": 10000,
                          "maxLength": 360,
                          "retention": 31536000
                       }
                  };
                      console.log("Start ZEMO Daten import alle 5 Minuten ==>");
                      const input = require('fs').readFileSync('/mnt/hmtw2k-d/ZEMO-MDE/Zemo-Anzeige/ioBroker/ioBroker-Zemo.csv').toString();
                      const Zeilen = input.split('\n');
                      for (const Zeile of Zeilen) {
                          const Terminialnr = parseFloat(Zeile.split(';')[0]);
                          if(!Terminialnr) continue;
                          const Menge_1 = parseInt(Zeile.split(';')[1]);
                          const Menge_2 = parseInt(Zeile.split(';')[2]);
                          const Zeit = Zeile.split(';')[3];
                          const Menge_Total = parseInt(Zeile.split(';')[4]);
                          const Auftragsnummer = parseInt(Zeile.split(';')[5]);
                          const HubIst = parseFloat(Zeile.split(';')[6]);
                          const HubSoll = parseFloat(Zeile.split(';')[7]);
                          const Kostenstelle = parseInt(Zeile.split(';')[8]);
                          const Maschinennr = parseInt(Zeile.split(';')[9]);
                          const Maschinenname = Zeile.split(';')[10];
                          const HubStatus = parseInt(Zeile.split(';')[11]);
                          const StatusAktuell = Zeile.split(';')[12];
                          createState('Zemo.'+Terminialnr+'.'+'Terminialnr', {name: 'Terminialnummer', type: 'number', role: 'value'});
                          createState('Zemo.'+Terminialnr+'.'+'Menge_1', {name: 'Menge 1', desc: 'Menge 1', type: 'number', role: 'value'});
                          createState('Zemo.'+Terminialnr+'.'+'Menge_2', {name: 'Menge 2', desc: 'Menge 2', type: 'number', role: 'value'});
                          createState('Zemo.'+Terminialnr+'.'+'Zeit', {name: 'Zeit', desc: 'Zeit', type: 'string', role: 'value'});
                          createState('Zemo.'+Terminialnr+'.'+'Menge_Total', {name: 'Menge Total', desc: 'Menge Total', type: 'number', role: 'value'});
                          createState('Zemo.'+Terminialnr+'.'+'Auftragsnummer', {name: 'Auftragsnummer', desc: 'Auftragsnummer', type: 'number', role: 'value'});
                          createState('Zemo.'+Terminialnr+'.'+'HubIst', {name: 'Hub Ist', desc: 'Hub Ist', type: 'number', role: 'value'});
                          createState('Zemo.'+Terminialnr+'.'+'HubSoll', {name: 'Hub Soll', desc: 'Hub Soll', type: 'number', role: 'value'});
                          createState('Zemo.'+Terminialnr+'.'+'Kostenstelle', {name: 'Kostenstelle', desc: 'Kostenstelle', type: 'number', role: 'value'});
                          createState('Zemo.'+Terminialnr+'.'+'Maschinennr', {name: 'Maschinennummer', desc: 'Maschinennummer', type: 'number', role: 'value'});
                          createState('Zemo.'+Terminialnr+'.'+'Maschinenname', {name: 'Maschinenname', desc: 'Maschinenname', type: 'string', role: 'value'});
                          createState('Zemo.'+Terminialnr+'.'+'HubStatus', {name: 'HubStatus', desc: 'HubStatus', type: 'string', role: 'value'});
                          createState('Zemo.'+Terminialnr+'.'+'StatusAktuell', {name: 'Status Aktuell', desc: 'Status Aktuell', type: 'number', role: 'value'} ,() => {
                              setState('Zemo.'+Terminialnr+'.'+'Terminialnr',Terminialnr, true);
                              setState('Zemo.'+Terminialnr+'.'+'Menge_1',Menge_1, true);
                              setState('Zemo.'+Terminialnr+'.'+'Menge_2',Menge_2, true);
                              setState('Zemo.'+Terminialnr+'.'+'Zeit',Zeit, true);
                              setState('Zemo.'+Terminialnr+'.'+'Menge_Total',Menge_Total, true);
                              setState('Zemo.'+Terminialnr+'.'+'Auftragsnummer',Auftragsnummer, true);
                              setState('Zemo.'+Terminialnr+'.'+'HubIst',HubIst, true);
                              setState('Zemo.'+Terminialnr+'.'+'HubSoll',HubSoll, true);
                              setState('Zemo.'+Terminialnr+'.'+'Kostenstelle',Kostenstelle, true);
                              setState('Zemo.'+Terminialnr+'.'+'Maschinennr',Maschinennr, true);
                              setState('Zemo.'+Terminialnr+'.'+'Maschinenname',Maschinenname, true);
                              setState('Zemo.'+Terminialnr+'.'+'HubStatus',HubStatus, true);
                              setState('Zemo.'+Terminialnr+'.'+'StatusAktuell',StatusAktuell, true);
                          });
                      }
                  console.log("<== Ende ZEMO Daten import");    
                  });
                  

                  Ich bekomme dezeit nach einfügen der Zeilen 28, und 54 den folgenden Fehler ==>

                  09:48:00.009	info	javascript.0 script.js.common.HMT.Zemo-CSV-in-Objekte: Start ZEMO Daten import alle 5 Minuten ==>
                  09:48:00.009	info	javascript.0 script.js.common.HMT.Zemo-CSV-in-Objekte: <== Ende ZEMO Daten import
                  09:48:00.114	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                  09:48:00.115	info	javascript.0 script.js.common.HMT.Zemo-CSV-in-Objekte: StatusAktuell 10110 Produktion
                  09:48:00.115	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                  09:48:00.116	info	javascript.0 script.js.common.HMT.Zemo-CSV-in-Objekte: StatusAktuell 10120 Produktion
                  09:48:00.116	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                  09:48:00.117	info	javascript.0 script.js.common.HMT.Zemo-CSV-in-Objekte: StatusAktuell 10130 Ruesten
                  09:48:00.117	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                  09:48:00.118	info	javascript.0 script.js.common.HMT.Zemo-CSV-in-Objekte: StatusAktuell 10140 Werkzeug Reparatur
                  09:48:00.119	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                  09:48:00.119	info	javascript.0 script.js.common.HMT.Zemo-CSV-in-Objekte: StatusAktuell 10150 Ruesten
                  09:48:00.119	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                  09:48:00.120	info	javascript.0 script.js.common.HMT.Zemo-CSV-in-Objekte: StatusAktuell 10160 Reinigung
                  09:48:00.120	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                  09:48:00.121	info	javascript.0 script.js.common.HMT.Zemo-CSV-in-Objekte: StatusAktuell 10200 Unbegründet
                  09:48:00.121	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                  09:48:00.122	info	javascript.0 script.js.common.HMT.Zemo-CSV-in-Objekte: StatusAktuell 10220 Materialhandling
                  09:48:00.122	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                  09:48:00.123	info	javascript.0 script.js.common.HMT.Zemo-CSV-in-Objekte: StatusAktuell 10230 Produktion
                  09:48:00.123	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                  09:48:00.124	info	javascript.0 script.js.common.HMT.Zemo-CSV-in-Objekte: StatusAktuell 10240 Produktion
                  09:48:00.124	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                  09:48:00.125	info	javascript.0 script.js.common.HMT.Zemo-CSV-in-Objekte: StatusAktuell 10250 Qualitaetssicherung
                  09:48:00.125	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                  09:48:00.126	info	javascript.0 script.js.common.HMT.Zemo-CSV-in-Objekte: StatusAktuell 10280 Ruhe
                  09:48:00.126	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                  09:48:00.130	info	javascript.0 script.js.common.HMT.Zemo-CSV-in-Objekte: StatusAktuell 10290 Produktion
                  09:48:00.130	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                  09:48:00.130	info	javascript.0 script.js.common.HMT.Zemo-CSV-in-Objekte: StatusAktuell 10291 Produktion
                  09:48:00.130	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                  09:48:00.131	info	javascript.0 script.js.common.HMT.Zemo-CSV-in-Objekte: StatusAktuell 10300 Produktion
                  09:48:00.131	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                  09:48:00.131	info	javascript.0 script.js.common.HMT.Zemo-CSV-in-Objekte: StatusAktuell 10310 Ruhe
                  09:48:00.132	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                  09:48:00.132	info	javascript.0 script.js.common.HMT.Zemo-CSV-in-Objekte: StatusAktuell 10320 Produktion
                  09:48:00.132	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                  09:48:00.133	info	javascript.0 script.js.common.HMT.Zemo-CSV-in-Objekte: StatusAktuell 10340 Produktion
                  09:48:00.133	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                  09:48:00.133	info	javascript.0 script.js.common.HMT.Zemo-CSV-in-Objekte: StatusAktuell 10341 Produktion
                  09:48:00.134	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                  09:48:00.134	info	javascript.0 script.js.common.HMT.Zemo-CSV-in-Objekte: StatusAktuell 10370 MaStoer Laseranlage
                  09:48:00.134	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                  09:48:00.135	info	javascript.0 script.js.common.HMT.Zemo-CSV-in-Objekte: StatusAktuell 10380 Produktion
                  09:48:00.135	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                  09:48:00.135	info	javascript.0 script.js.common.HMT.Zemo-CSV-in-Objekte: StatusAktuell 10390 Produktion
                  09:48:00.135	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                  09:48:00.136	info	javascript.0 script.js.common.HMT.Zemo-CSV-in-Objekte: StatusAktuell 10400 Produktion
                  09:48:00.136	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                  09:48:00.136	info	javascript.0 script.js.common.HMT.Zemo-CSV-in-Objekte: StatusAktuell 10410 Ruhe
                  09:48:00.136	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                  09:48:00.137	info	javascript.0 script.js.common.HMT.Zemo-CSV-in-Objekte: StatusAktuell 10411 Ruhe
                  09:48:00.137	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                  09:48:00.138	info	javascript.0 script.js.common.HMT.Zemo-CSV-in-Objekte: StatusAktuell 10420 Unbegründet
                  09:48:00.138	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                  09:48:00.138	info	javascript.0 script.js.common.HMT.Zemo-CSV-in-Objekte: StatusAktuell 10421 Werkzeugstoerung
                  09:48:00.139	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                  09:48:00.139	info	javascript.0 script.js.common.HMT.Zemo-CSV-in-Objekte: StatusAktuell 10490 Produktion
                  09:48:00.139	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                  09:48:00.139	info	javascript.0 script.js.common.HMT.Zemo-CSV-in-Objekte: StatusAktuell 10500 Materialhandling
                  09:48:00.140	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                  09:48:00.140	info	javascript.0 script.js.common.HMT.Zemo-CSV-in-Objekte: StatusAktuell 10540 Werkzeug Reparatur
                  09:48:00.140	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                  09:48:00.140	info	javascript.0 script.js.common.HMT.Zemo-CSV-in-Objekte: StatusAktuell 10560 Behaelterwechsel
                  09:48:00.140	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                  09:48:00.141	info	javascript.0 script.js.common.HMT.Zemo-CSV-in-Objekte: StatusAktuell 10570 Produktion
                  09:48:00.141	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                  09:48:00.142	info	javascript.0 script.js.common.HMT.Zemo-CSV-in-Objekte: StatusAktuell 10580 Produktion
                  09:48:00.142	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                  09:48:00.143	info	javascript.0 script.js.common.HMT.Zemo-CSV-in-Objekte: StatusAktuell 10800 Produktion
                  09:48:00.143	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                  09:48:00.143	info	javascript.0 script.js.common.HMT.Zemo-CSV-in-Objekte: StatusAktuell 10810 Produktion
                  09:48:00.143	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                  09:48:00.147	info	javascript.0 script.js.common.HMT.Zemo-CSV-in-Objekte: StatusAktuell 10820 Produktion
                  09:48:53.325	info	javascript.0 Stop script script.js.common.HMT.Zemo-CSV-in-Objekte
                  09:48:53.333	info	javascript.0 Start javascript script.js.common.HMT.Zemo-CSV-in-Objekte
                  09:48:53.333	info	javascript.0 script.js.common.HMT.Zemo-CSV-in-Objekte: registered 0 subscriptions and 1 schedule
                  09:50:00.032	info	javascript.0 script.js.common.HMT.Zemo-CSV-in-Objekte: Start ZEMO Daten import alle 5 Minuten ==>
                  09:50:00.032	info	javascript.0 script.js.common.HMT.Zemo-CSV-in-Objekte: <== Ende ZEMO Daten import
                  09:50:00.052	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                  09:50:00.052	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                  09:50:00.053	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                  09:50:00.054	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                  09:50:00.054	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                  09:50:00.126	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                  09:50:00.127	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                  09:50:00.128	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                  09:50:00.129	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                  09:50:00.129	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                  09:50:00.130	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                  09:50:00.131	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                  09:50:00.132	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                  09:50:00.133	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                  09:50:00.134	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                  09:50:00.135	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                  09:50:00.136	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                  09:50:00.136	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                  09:50:00.137	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                  09:50:00.144	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:54:13)
                  

                  Mein Verdacht sind die Leerzeichen im 12 Token!!!

                  Hier ein Ausschnitt der erweiterten Datei ==>

                  10110;3862;25444;09:50;3817;1901083010;8.70;21.00;421014;421014;MW 450 to;1;Produktion; 
                  10120;3057;23147;09:49;3006;1900887010;8.11;19.00;421012;421012;MW 630 to;0;WKZStoerung eigenRep; 
                  10130;2431;6463;00:06;2405;1900694010;18.46;37.00;421011;421011;Raster 630 to;0;Ruesten             ; 
                  10140;7688;177936;08:01;7667;1900277010;12.24;60.00;421022;421022;Kaiser 250 to;0;Werkzeug Reparatur  ; 
                  10150;8521;12896;09:27;8487;1901558010;46.15;45.00;421024;421024;HR 160 to;0;Ruesten             ; 
                  10160;15704;15538;08:49;15514;1901146010;6.52;36.00;421015;421015;MW 400 to;0;Ruesten             ; 
                  10200;153;1271;09:50;153;1900565020;0.59;1.25;432120;432120;Mercedes Punkt-Schw.;1;Produktion; 
                  10220;247;66500;09:36;247;1900560010;1.78;3.75;450020;450020;6290 Passat;0;Materialhandling    ; 
                  10230;128;2584;09:50;128;1900931010;0.59;0.96;442026;442026;Mercedes Magschweissen;1;Produktion; 
                  

                  Bei Rüsten sind die Leerzeichen gut zu sehen. Der Text kommt in der Regel immer mit einer Länge von 20 Zeichen. Da war das derzeit nciht der Fall ist, wie bei Produktion, kann ich das ggf. manuell einbauen.

                  Aber vielleicht gibt es eine einfache Lösung?!

                  Erwähnt sei noch, dass die Variable "hist" schon als vorbereitung für die aktivierung von Historydaten für Hubist, HubSoll und Statusaktuell sein soll. Ich möchte aber erstmal die Fehlermeldungen wieder wegbekommen, bevor ich mich daran mache.

                  Ich sage schon mal danke.

                  foxriver76F Offline
                  foxriver76F Offline
                  foxriver76
                  Developer
                  schrieb am zuletzt editiert von
                  #39

                  @Nobody28 Status aktuell ist ja eine Zeichenkette und der State wurde mit type: number angelegt in Zeile 41, wenn du das durch String ersetzt und den entsprechenden State ein mal löschst sollte der Fehler verschwinden. Um Leerzeichen am rechten Ende weg zu machen, könntest du einfach in Zeile 28 eine trim Methode hinzufügen.

                  const StatusAktuell = Zeile.split(';')[12].trim();
                  

                  siehe https://developer.mozilla.org/de/docs/Web/JavaScript/Reference/Global_Objects/String/Trim

                  beste Grüße

                  fox

                  Videotutorials & mehr

                  Hier könnt ihr mich unterstützen.

                  1 Antwort Letzte Antwort
                  0
                  • N Offline
                    N Offline
                    Nobody28
                    schrieb am zuletzt editiert von Nobody28
                    #40

                    @foxriver76

                    Auf String hatte ich das schon gesetzt...deshalb blieben aus meiner leienhaften Sicht nur noch die Leerzeichen!
                    Das mit dem trim hat schon mal div. Meldungen elemeniert!!! Lieben Dank.

                    Nun bleibt noch dieses ==>

                    07:24:27.109	info	javascript.0 Stop script script.js.common.HMT.Zemo-CSV-in-Objekte
                    07:24:27.118	info	javascript.0 Start javascript script.js.common.HMT.Zemo-CSV-in-Objekte
                    07:24:27.118	info	javascript.0 script.js.common.HMT.Zemo-CSV-in-Objekte: registered 0 subscriptions and 1 schedule
                    07:25:00.026	info	javascript.0 script.js.common.HMT.Zemo-CSV-in-Objekte: Start ZEMO Daten import alle 5 Minuten ==>
                    07:25:00.027	info	javascript.0 script.js.common.HMT.Zemo-CSV-in-Objekte: <== Ende ZEMO Daten import
                    07:25:00.179	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:152:13)
                    07:25:00.180	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:152:13)
                    07:25:00.180	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:152:13)
                    07:25:00.181	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:152:13)
                    07:25:00.182	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:152:13)
                    07:25:00.183	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:152:13)
                    07:25:00.183	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:152:13)
                    07:25:00.184	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:152:13)
                    07:25:00.184	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:152:13)
                    07:25:00.185	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:152:13)
                    07:25:00.185	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:152:13)
                    07:25:00.186	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:152:13)
                    07:25:00.186	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:152:13)
                    07:25:00.186	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:152:13)
                    07:25:00.187	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:152:13)
                    07:25:00.187	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:152:13)
                    07:25:00.188	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:152:13)
                    07:25:00.188	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:152:13)
                    07:25:00.189	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:152:13)
                    07:25:00.189	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:152:13)
                    07:25:00.190	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:152:13)
                    07:27:21.759	info	javascript.0 Stop script script.js.common.HMT.Zemo-CSV-in-Objekte
                    

                    Das Script sieht mittlerweile so aus ==>

                    schedule('*/5 * * * *', () => {
                        console.log("Start ZEMO Daten import alle 5 Minuten ==>");
                        const input = require('fs').readFileSync('/mnt/hmtw2k-d/ZEMO-MDE/Zemo-Anzeige/ioBroker/ioBroker-Zemo.csv').toString();
                        const Zeilen = input.split('\n');
                        for (const Zeile of Zeilen) {
                            const Terminialnr = parseFloat(Zeile.split(';')[0]);
                            if(!Terminialnr) continue;
                            const Menge_1 = parseInt(Zeile.split(';')[1]);
                            const Menge_2 = parseInt(Zeile.split(';')[2]);
                            const Zeit = Zeile.split(';')[3];
                            const Menge_Total = parseInt(Zeile.split(';')[4]);
                            const Auftragsnummer = parseInt(Zeile.split(';')[5]);
                            const HubIst = parseFloat(Zeile.split(';')[6]);
                            const HubSoll = parseFloat(Zeile.split(';')[7]);
                            const Kostenstelle = parseInt(Zeile.split(';')[8]);
                            const Maschinennr = parseInt(Zeile.split(';')[9]);
                            const Maschinenname = Zeile.split(';')[10];
                            const HubStatus = parseInt(Zeile.split(';')[11]);
                            const StatusAktuell = Zeile.split(';')[12].trim();
                            const Artikelbezeichnung = Zeile.split(';')[13];
                            createState('Zemo.'+Terminialnr+'.'+'Terminialnr', {name: 'Terminialnummer', type: 'number', role: 'value'});
                            createState('Zemo.'+Terminialnr+'.'+'Menge_1', {name: 'Menge 1', desc: 'Menge 1', type: 'number', role: 'value'});
                            createState('Zemo.'+Terminialnr+'.'+'Menge_2', {name: 'Menge 2', desc: 'Menge 2', type: 'number', role: 'value'});
                            createState('Zemo.'+Terminialnr+'.'+'Zeit', {name: 'Zeit', desc: 'Zeit', type: 'string', role: 'value'});
                            createState('Zemo.'+Terminialnr+'.'+'Menge_Total', {name: 'Menge Total', desc: 'Menge Total', type: 'number', role: 'value'});
                            createState('Zemo.'+Terminialnr+'.'+'Auftragsnummer', {name: 'Auftragsnummer', desc: 'Auftragsnummer', type: 'number', role: 'value'});
                            createState('Zemo.'+Terminialnr+'.'+'HubIst', {name: 'Hub Ist', desc: 'Hub Ist', type: 'number', role: 'value'});
                            createState('Zemo.'+Terminialnr+'.'+'HubSoll', {name: 'Hub Soll', desc: 'Hub Soll', type: 'number', role: 'value'});
                            createState('Zemo.'+Terminialnr+'.'+'Kostenstelle', {name: 'Kostenstelle', desc: 'Kostenstelle', type: 'number', role: 'value'});
                            createState('Zemo.'+Terminialnr+'.'+'Maschinennr', {name: 'Maschinennummer', desc: 'Maschinennummer', type: 'number', role: 'value'});
                            createState('Zemo.'+Terminialnr+'.'+'Maschinenname', {name: 'Maschinenname', desc: 'Maschinenname', type: 'string', role: 'value'});
                            createState('Zemo.'+Terminialnr+'.'+'HubStatus', {name: 'HubStatus', desc: 'HubStatus', type: 'string', role: 'value'});
                            createState('Zemo.'+Terminialnr+'.'+'StatusAktuell', {name: 'StatusAktuell', desc: 'Status Aktuell', type: 'string', role: 'value'}); 
                            createState('Zemo.'+Terminialnr+'.'+'Artikelbezeichnung', {name: 'Artikelbezeichnung', desc: 'Artikelbezeichnung', type: 'string', role: 'value'} ,() => {
                                setState('Zemo.'+Terminialnr+'.'+'Terminialnr',Terminialnr, true);
                                setState('Zemo.'+Terminialnr+'.'+'Menge_1',Menge_1, true);
                                sendTo('history.0', 'enableHistory', {
                                    id: 'javascript.0.Zemo.'+Terminialnr+'.'+'Menge_1',
                                    options: {
                                        changesOnly:  true,
                                        debounce:     10000,
                                        retention:    31536000,
                                        maxLength:    360,
                                    }
                                }, function (result) {
                                    if (result.error) {
                                     console.log(result.error);
                                    }
                                });
                                setState('Zemo.'+Terminialnr+'.'+'Menge_2',Menge_2, true);
                                sendTo('history.0', 'enableHistory', {
                                    id: 'javascript.0.Zemo.'+Terminialnr+'.'+'Menge_2',
                                    options: {
                                        changesOnly:  true,
                                        debounce:     10000,
                                        retention:    31536000,
                                        maxLength:    360,
                                    }
                                }, function (result) {
                                    if (result.error) {
                                        console.log(result.error);
                                    }
                                });            
                                setState('Zemo.'+Terminialnr+'.'+'Zeit',Zeit, true);
                                sendTo('history.0', 'enableHistory', {
                                    id: 'javascript.0.Zemo.'+Terminialnr+'.'+'Zeit',
                                    options: {
                                        changesOnly:  true,
                                        debounce:     10000,
                                        retention:    31536000,
                                        maxLength:    360,
                                    }
                                }, function (result) {
                                    if (result.error) {
                                        console.log(result.error);
                                    }
                                });  
                                setState('Zemo.'+Terminialnr+'.'+'Menge_Total',Menge_Total, true);
                                sendTo('history.0', 'enableHistory', {
                                    id: 'javascript.0.Zemo.'+Terminialnr+'.'+'Menge_Total',
                                    options: {
                                        changesOnly:  true,
                                        debounce:     10000,
                                        retention:    31536000,
                                        maxLength:    360,
                                    }
                                }, function (result) {
                                    if (result.error) {
                                        console.log(result.error);
                                    }
                                });              
                                setState('Zemo.'+Terminialnr+'.'+'Auftragsnummer',Auftragsnummer, true);
                                sendTo('history.0', 'enableHistory', {
                                    id: 'javascript.0.Zemo.'+Terminialnr+'.'+'Auftragsnummer',
                                    options: {
                                        changesOnly:  true,
                                        debounce:     10000,
                                        retention:    31536000,
                                        maxLength:    360,
                                    }
                                }, function (result) {
                                    if (result.error) {
                                        console.log(result.error);
                                    }
                                });            
                                setState('Zemo.'+Terminialnr+'.'+'HubIst',HubIst, true);
                                sendTo('history.0', 'enableHistory', {
                                    id: 'javascript.0.Zemo.'+Terminialnr+'.'+'HubIst',
                                    options: {
                                        changesOnly:  true,
                                        debounce:     10000,
                                        retention:    31536000,
                                        maxLength:    360,
                                    }
                                }, function (result) {
                                    if (result.error) {
                                        console.log(result.error);
                                    }
                                });              
                                setState('Zemo.'+Terminialnr+'.'+'HubSoll',HubSoll, true);
                                sendTo('history.0', 'enableHistory', {
                                    id: 'javascript.0.Zemo.'+Terminialnr+'.'+'HubSoll',
                                    options: {
                                        changesOnly:  true,
                                        debounce:     10000,
                                        retention:    31536000,
                                        changesRelogInterval:        300000, 
                                        maxLength:    360,
                                    }
                                }, function (result) {
                                    if (result.error) {
                                        console.log(result.error);
                                    }
                                });               
                                setState('Zemo.'+Terminialnr+'.'+'Kostenstelle',Kostenstelle, true);
                                setState('Zemo.'+Terminialnr+'.'+'Maschinennr',Maschinennr, true);
                                setState('Zemo.'+Terminialnr+'.'+'Maschinenname',Maschinenname, true);
                                setState('Zemo.'+Terminialnr+'.'+'HubStatus',HubStatus, true);
                                sendTo('history.0', 'enableHistory', {
                                    id: 'javascript.0.Zemo.'+Terminialnr+'.'+'HubStatus',
                                    options: {
                                        changesOnly:  true,
                                        debounce:     10000,
                                        retention:    31536000,
                                        maxLength:    360,
                                    }
                                }, function (result) {
                                    if (result.error) {
                                        console.log(result.error);
                                    }
                                });              
                                setState('Zemo.'+Terminialnr+'.'+'StatusAktuell',StatusAktuell, true);
                                sendTo('history.0', 'enableHistory', {
                                    id: 'javascript.0.Zemo.'+Terminialnr+'.'+'StatusAktuell',
                                    options: {
                                        changesOnly:  true,
                                        debounce:     10000,
                                        retention:    31536000,
                                        maxLength:    360,
                                    }
                                }, function (result) {
                                    if (result.error) {
                                        console.log(result.error);
                                    }
                                });                 
                                setState('Zemo.'+Terminialnr+'.'+'Artikelbezeichnung',Artikelbezeichnung, true);
                                sendTo('history.0', 'enableHistory', {
                                    id: 'javascript.0.Zemo.'+Terminialnr+'.'+'Artikelbezeichnung',
                                    options: {
                                        changesOnly:  true,
                                        debounce:     10000,
                                        retention:    31536000,
                                        maxLength:    360,
                                    }
                                }, function (result) {
                                    if (result.error) {
                                        console.log(result.error);
                                    }
                                });               
                            });
                        }
                    console.log("<== Ende ZEMO Daten import");    
                    });
                    

                    Den Status im History Adapter zu aktivieren lässt sich sicher eleganter lösen, aber hier fehlt mir noch das Wissen...

                    Aber jetzt die Frage:
                    Wenn ich Objekte lösche, wo Daten im History-Adapter sind, und das Script danach alle Objekte wieder anlegt, sind dann die Daten alle weg?! Oder wie wäre hier das bessere Vorgehen?! Auch, gibt es eine einfache Lösung wie ich die Objekte relativ einfach löschen kann?! Mehrere Markierungen funktionieren ja leider nicht.

                    Evtl. sind dann die Fehlermeldungen aus dem Beginn dieses Posts erledigt :)

                    Danke das Du Dir die Mühe machst :) Viele neue Möglichkeiten ergeben sich nun :)

                    foxriver76F 1 Antwort Letzte Antwort
                    0
                    • N Nobody28

                      @foxriver76

                      Auf String hatte ich das schon gesetzt...deshalb blieben aus meiner leienhaften Sicht nur noch die Leerzeichen!
                      Das mit dem trim hat schon mal div. Meldungen elemeniert!!! Lieben Dank.

                      Nun bleibt noch dieses ==>

                      07:24:27.109	info	javascript.0 Stop script script.js.common.HMT.Zemo-CSV-in-Objekte
                      07:24:27.118	info	javascript.0 Start javascript script.js.common.HMT.Zemo-CSV-in-Objekte
                      07:24:27.118	info	javascript.0 script.js.common.HMT.Zemo-CSV-in-Objekte: registered 0 subscriptions and 1 schedule
                      07:25:00.026	info	javascript.0 script.js.common.HMT.Zemo-CSV-in-Objekte: Start ZEMO Daten import alle 5 Minuten ==>
                      07:25:00.027	info	javascript.0 script.js.common.HMT.Zemo-CSV-in-Objekte: <== Ende ZEMO Daten import
                      07:25:00.179	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:152:13)
                      07:25:00.180	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:152:13)
                      07:25:00.180	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:152:13)
                      07:25:00.181	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:152:13)
                      07:25:00.182	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:152:13)
                      07:25:00.183	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:152:13)
                      07:25:00.183	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:152:13)
                      07:25:00.184	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:152:13)
                      07:25:00.184	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:152:13)
                      07:25:00.185	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:152:13)
                      07:25:00.185	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:152:13)
                      07:25:00.186	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:152:13)
                      07:25:00.186	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:152:13)
                      07:25:00.186	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:152:13)
                      07:25:00.187	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:152:13)
                      07:25:00.187	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:152:13)
                      07:25:00.188	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:152:13)
                      07:25:00.188	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:152:13)
                      07:25:00.189	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:152:13)
                      07:25:00.189	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:152:13)
                      07:25:00.190	warn	javascript.0 at Object.createState (script.js.common.HMT.Zemo-CSV-in-Objekte:152:13)
                      07:27:21.759	info	javascript.0 Stop script script.js.common.HMT.Zemo-CSV-in-Objekte
                      

                      Das Script sieht mittlerweile so aus ==>

                      schedule('*/5 * * * *', () => {
                          console.log("Start ZEMO Daten import alle 5 Minuten ==>");
                          const input = require('fs').readFileSync('/mnt/hmtw2k-d/ZEMO-MDE/Zemo-Anzeige/ioBroker/ioBroker-Zemo.csv').toString();
                          const Zeilen = input.split('\n');
                          for (const Zeile of Zeilen) {
                              const Terminialnr = parseFloat(Zeile.split(';')[0]);
                              if(!Terminialnr) continue;
                              const Menge_1 = parseInt(Zeile.split(';')[1]);
                              const Menge_2 = parseInt(Zeile.split(';')[2]);
                              const Zeit = Zeile.split(';')[3];
                              const Menge_Total = parseInt(Zeile.split(';')[4]);
                              const Auftragsnummer = parseInt(Zeile.split(';')[5]);
                              const HubIst = parseFloat(Zeile.split(';')[6]);
                              const HubSoll = parseFloat(Zeile.split(';')[7]);
                              const Kostenstelle = parseInt(Zeile.split(';')[8]);
                              const Maschinennr = parseInt(Zeile.split(';')[9]);
                              const Maschinenname = Zeile.split(';')[10];
                              const HubStatus = parseInt(Zeile.split(';')[11]);
                              const StatusAktuell = Zeile.split(';')[12].trim();
                              const Artikelbezeichnung = Zeile.split(';')[13];
                              createState('Zemo.'+Terminialnr+'.'+'Terminialnr', {name: 'Terminialnummer', type: 'number', role: 'value'});
                              createState('Zemo.'+Terminialnr+'.'+'Menge_1', {name: 'Menge 1', desc: 'Menge 1', type: 'number', role: 'value'});
                              createState('Zemo.'+Terminialnr+'.'+'Menge_2', {name: 'Menge 2', desc: 'Menge 2', type: 'number', role: 'value'});
                              createState('Zemo.'+Terminialnr+'.'+'Zeit', {name: 'Zeit', desc: 'Zeit', type: 'string', role: 'value'});
                              createState('Zemo.'+Terminialnr+'.'+'Menge_Total', {name: 'Menge Total', desc: 'Menge Total', type: 'number', role: 'value'});
                              createState('Zemo.'+Terminialnr+'.'+'Auftragsnummer', {name: 'Auftragsnummer', desc: 'Auftragsnummer', type: 'number', role: 'value'});
                              createState('Zemo.'+Terminialnr+'.'+'HubIst', {name: 'Hub Ist', desc: 'Hub Ist', type: 'number', role: 'value'});
                              createState('Zemo.'+Terminialnr+'.'+'HubSoll', {name: 'Hub Soll', desc: 'Hub Soll', type: 'number', role: 'value'});
                              createState('Zemo.'+Terminialnr+'.'+'Kostenstelle', {name: 'Kostenstelle', desc: 'Kostenstelle', type: 'number', role: 'value'});
                              createState('Zemo.'+Terminialnr+'.'+'Maschinennr', {name: 'Maschinennummer', desc: 'Maschinennummer', type: 'number', role: 'value'});
                              createState('Zemo.'+Terminialnr+'.'+'Maschinenname', {name: 'Maschinenname', desc: 'Maschinenname', type: 'string', role: 'value'});
                              createState('Zemo.'+Terminialnr+'.'+'HubStatus', {name: 'HubStatus', desc: 'HubStatus', type: 'string', role: 'value'});
                              createState('Zemo.'+Terminialnr+'.'+'StatusAktuell', {name: 'StatusAktuell', desc: 'Status Aktuell', type: 'string', role: 'value'}); 
                              createState('Zemo.'+Terminialnr+'.'+'Artikelbezeichnung', {name: 'Artikelbezeichnung', desc: 'Artikelbezeichnung', type: 'string', role: 'value'} ,() => {
                                  setState('Zemo.'+Terminialnr+'.'+'Terminialnr',Terminialnr, true);
                                  setState('Zemo.'+Terminialnr+'.'+'Menge_1',Menge_1, true);
                                  sendTo('history.0', 'enableHistory', {
                                      id: 'javascript.0.Zemo.'+Terminialnr+'.'+'Menge_1',
                                      options: {
                                          changesOnly:  true,
                                          debounce:     10000,
                                          retention:    31536000,
                                          maxLength:    360,
                                      }
                                  }, function (result) {
                                      if (result.error) {
                                       console.log(result.error);
                                      }
                                  });
                                  setState('Zemo.'+Terminialnr+'.'+'Menge_2',Menge_2, true);
                                  sendTo('history.0', 'enableHistory', {
                                      id: 'javascript.0.Zemo.'+Terminialnr+'.'+'Menge_2',
                                      options: {
                                          changesOnly:  true,
                                          debounce:     10000,
                                          retention:    31536000,
                                          maxLength:    360,
                                      }
                                  }, function (result) {
                                      if (result.error) {
                                          console.log(result.error);
                                      }
                                  });            
                                  setState('Zemo.'+Terminialnr+'.'+'Zeit',Zeit, true);
                                  sendTo('history.0', 'enableHistory', {
                                      id: 'javascript.0.Zemo.'+Terminialnr+'.'+'Zeit',
                                      options: {
                                          changesOnly:  true,
                                          debounce:     10000,
                                          retention:    31536000,
                                          maxLength:    360,
                                      }
                                  }, function (result) {
                                      if (result.error) {
                                          console.log(result.error);
                                      }
                                  });  
                                  setState('Zemo.'+Terminialnr+'.'+'Menge_Total',Menge_Total, true);
                                  sendTo('history.0', 'enableHistory', {
                                      id: 'javascript.0.Zemo.'+Terminialnr+'.'+'Menge_Total',
                                      options: {
                                          changesOnly:  true,
                                          debounce:     10000,
                                          retention:    31536000,
                                          maxLength:    360,
                                      }
                                  }, function (result) {
                                      if (result.error) {
                                          console.log(result.error);
                                      }
                                  });              
                                  setState('Zemo.'+Terminialnr+'.'+'Auftragsnummer',Auftragsnummer, true);
                                  sendTo('history.0', 'enableHistory', {
                                      id: 'javascript.0.Zemo.'+Terminialnr+'.'+'Auftragsnummer',
                                      options: {
                                          changesOnly:  true,
                                          debounce:     10000,
                                          retention:    31536000,
                                          maxLength:    360,
                                      }
                                  }, function (result) {
                                      if (result.error) {
                                          console.log(result.error);
                                      }
                                  });            
                                  setState('Zemo.'+Terminialnr+'.'+'HubIst',HubIst, true);
                                  sendTo('history.0', 'enableHistory', {
                                      id: 'javascript.0.Zemo.'+Terminialnr+'.'+'HubIst',
                                      options: {
                                          changesOnly:  true,
                                          debounce:     10000,
                                          retention:    31536000,
                                          maxLength:    360,
                                      }
                                  }, function (result) {
                                      if (result.error) {
                                          console.log(result.error);
                                      }
                                  });              
                                  setState('Zemo.'+Terminialnr+'.'+'HubSoll',HubSoll, true);
                                  sendTo('history.0', 'enableHistory', {
                                      id: 'javascript.0.Zemo.'+Terminialnr+'.'+'HubSoll',
                                      options: {
                                          changesOnly:  true,
                                          debounce:     10000,
                                          retention:    31536000,
                                          changesRelogInterval:        300000, 
                                          maxLength:    360,
                                      }
                                  }, function (result) {
                                      if (result.error) {
                                          console.log(result.error);
                                      }
                                  });               
                                  setState('Zemo.'+Terminialnr+'.'+'Kostenstelle',Kostenstelle, true);
                                  setState('Zemo.'+Terminialnr+'.'+'Maschinennr',Maschinennr, true);
                                  setState('Zemo.'+Terminialnr+'.'+'Maschinenname',Maschinenname, true);
                                  setState('Zemo.'+Terminialnr+'.'+'HubStatus',HubStatus, true);
                                  sendTo('history.0', 'enableHistory', {
                                      id: 'javascript.0.Zemo.'+Terminialnr+'.'+'HubStatus',
                                      options: {
                                          changesOnly:  true,
                                          debounce:     10000,
                                          retention:    31536000,
                                          maxLength:    360,
                                      }
                                  }, function (result) {
                                      if (result.error) {
                                          console.log(result.error);
                                      }
                                  });              
                                  setState('Zemo.'+Terminialnr+'.'+'StatusAktuell',StatusAktuell, true);
                                  sendTo('history.0', 'enableHistory', {
                                      id: 'javascript.0.Zemo.'+Terminialnr+'.'+'StatusAktuell',
                                      options: {
                                          changesOnly:  true,
                                          debounce:     10000,
                                          retention:    31536000,
                                          maxLength:    360,
                                      }
                                  }, function (result) {
                                      if (result.error) {
                                          console.log(result.error);
                                      }
                                  });                 
                                  setState('Zemo.'+Terminialnr+'.'+'Artikelbezeichnung',Artikelbezeichnung, true);
                                  sendTo('history.0', 'enableHistory', {
                                      id: 'javascript.0.Zemo.'+Terminialnr+'.'+'Artikelbezeichnung',
                                      options: {
                                          changesOnly:  true,
                                          debounce:     10000,
                                          retention:    31536000,
                                          maxLength:    360,
                                      }
                                  }, function (result) {
                                      if (result.error) {
                                          console.log(result.error);
                                      }
                                  });               
                              });
                          }
                      console.log("<== Ende ZEMO Daten import");    
                      });
                      

                      Den Status im History Adapter zu aktivieren lässt sich sicher eleganter lösen, aber hier fehlt mir noch das Wissen...

                      Aber jetzt die Frage:
                      Wenn ich Objekte lösche, wo Daten im History-Adapter sind, und das Script danach alle Objekte wieder anlegt, sind dann die Daten alle weg?! Oder wie wäre hier das bessere Vorgehen?! Auch, gibt es eine einfache Lösung wie ich die Objekte relativ einfach löschen kann?! Mehrere Markierungen funktionieren ja leider nicht.

                      Evtl. sind dann die Fehlermeldungen aus dem Beginn dieses Posts erledigt :)

                      Danke das Du Dir die Mühe machst :) Viele neue Möglichkeiten ergeben sich nun :)

                      foxriver76F Offline
                      foxriver76F Offline
                      foxriver76
                      Developer
                      schrieb am zuletzt editiert von
                      #41

                      @Nobody28 Würde es eher unter Objekte hinten auf dem Schraubenschlüssel aktivieren, da kann man dann auch ein Alias festlegen (zumindest bei SQL, bei History bin ich mir nicht sicher), dass über das Löschen des Objektes hinaus existiert. Ansonsten gehen die History Daten (glaube ich) verloren.

                      Objekte löschen, wenn es mal so umfangreich ist und nur bei bestimmten Kriterien, geht das per Skript, ansonsten kannst du auch einen Channel markieren und alles darunterliegende wird gelöscht.

                      Videotutorials & mehr

                      Hier könnt ihr mich unterstützen.

                      1 Antwort Letzte Antwort
                      0
                      Antworten
                      • In einem neuen Thema antworten
                      Anmelden zum Antworten
                      • Älteste zuerst
                      • Neuste zuerst
                      • Meiste Stimmen


                      Support us

                      ioBroker
                      Community Adapters
                      Donate

                      516

                      Online

                      32.6k

                      Benutzer

                      82.1k

                      Themen

                      1.3m

                      Beiträge
                      Community
                      Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                      ioBroker Community 2014-2025
                      logo
                      • Anmelden

                      • Du hast noch kein Konto? Registrieren

                      • Anmelden oder registrieren, um zu suchen
                      • Erster Beitrag
                        Letzter Beitrag
                      0
                      • Home
                      • Aktuell
                      • Tags
                      • Ungelesen 0
                      • Kategorien
                      • Unreplied
                      • Beliebt
                      • GitHub
                      • Docu
                      • Hilfe