Skip to content
  • Home
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • 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

  • Default (No Skin)
  • No Skin
Collapse
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. JavaScript
  5. Stromzählerscript PV Anlage Finanzamt in Json oder html

NEWS

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

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

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.5k

Stromzählerscript PV Anlage Finanzamt in Json oder html

Scheduled Pinned Locked Moved JavaScript
84 Posts 9 Posters 11.0k Views 12 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • smartboartS smartboart

    @paul53
    super vielen lieben Dank...

    smartboartS Offline
    smartboartS Offline
    smartboart
    wrote on last edited by smartboart
    #7

    @ArnoD
    hier das widget zum script ( matrial design Tabelle)

    Unbenannt.JPG


    [{"tpl":"tplVis-materialdesign-Table","data":{"oid":"javascript.1.PVAnlage.Stromzaehler.Zaehlerstaende.JsonTable","g_fixed":false,"g_visibility":false,"g_css_font_text":false,"g_css_background":true,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"g_last_change":false,"countCols":"8","tableLayout":"cardOutlined","showHeader":true,"headerTextSize":"small","showColumn0":true,"colType0":"text","textAlign0":"center","showColumn1":true,"colType1":"text","textAlign1":"center","signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis/signals/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis/signals/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis/signals/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false,"lc-type":"last-change","lc-is-interval":true,"lc-is-moment":false,"lc-format":"","lc-position-vert":"top","lc-position-horz":"right","lc-offset-vert":0,"lc-offset-horz":0,"lc-font-size":"12px","lc-font-family":"","lc-font-style":"","lc-bkg-color":"","lc-color":"","lc-border-width":"0","lc-border-style":"","lc-border-color":"","lc-border-radius":10,"lc-zindex":0,"showColumn2":true,"colType2":"text","textAlign2":"center","showColumn3":true,"colType3":"text","textAlign3":"center","showColumn4":true,"colType4":"text","textAlign4":"center","showColumn5":true,"colType5":"text","textAlign5":"center","showColumn6":true,"colType6":"text","textAlign6":"center","showColumn7":"true","colType7":"text","textAlign7":"center","showColumn8":true,"colType8":"text","textAlign8":"center","showColumn9":"true","colType9":"text","textAlign9":"center","showColumn10":"true","colType10":"text","textAlign10":"center","showColumn11":"true","colType11":"text","textAlign11":"center","showColumn12":"true","colType12":"text","textAlign12":"center","showColumn13":"true","colType13":"text","textAlign13":"center","showColumn14":"true","colType14":"text","textAlign14":"center","showColumn15":"true","colType15":"text","textAlign15":"center","showColumn16":"true","colType16":"text","textAlign16":"center","showColumn17":"true","colType17":"text","textAlign17":"center","headerRowHeight":"50","label0":"Ablese-<br>Datum","colTextColor0":"#9c9c9c","prefix0":"","colorHeaderRowText":"#9c9c9c","dividers":"#9c9c9c","colorBackground":"rgb(50,50,50)","colorHeaderRowBackground":"rgb(50,50,50)","columnWidth0":"","label1":"Einspeisung","label2":"Netzbezug","label3":"Solarproduktion","suffix3":"","suffix2":"","suffix1":"","label4":"Eigen-<br>Verbrauch","suffix4":"","label5":"Autarkie","suffix5":"","label6":"Netzeinspeise-<br>Zähler","suffix6":"","label7":"Netzbezugs-<br>Zähler","suffix7":"","label8":"PV Zähler","suffix8":"","label9":"Datum","suffix9":"","label10":"Dauer","rowHeight":"30","colorRowText":"#9c9c9c","borderColor":"transparent","colorRowBackground":"rgb(50,50,50)","dataJson":"","colNoWrap1":true,"colNoWrap0":true,"colNoWrap3":false,"showColumn18":"true","colType18":"text","textAlign18":"center","showColumn19":"true","colType19":"text","textAlign19":"center","showColumn20":"true","colType20":"text","textAlign20":"center","colNoWrap5":true,"colNoWrap4":false,"colNoWrap6":true,"colNoWrap7":true,"colNoWrap8":true,"colNoWrap9":true,"colNoWrap10":true,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","colTextColor2":"red","colTextColor10":"lightgreen","fixedHeader":true,"colTextColor3":"green","colTextColor1":"lightgreen","colTextColor4":"orange","colTextColor5":"yellow","colNoWrap2":true,"columnWidth6":"120","colTextColor6":"lightgreen","colTextColor7":"red","colTextColor8":"green","columnWidth7":"120","columnWidth3":"110","columnWidth4":"120"},"style":{"left":"0px","top":"1px","width":"942px","height":"430px","z-index":"1","background-color":"rgb(50,50,50)","overflow-x":"auto","overflow-y":"auto"},"widgetSet":"materialdesign"}]

    EDIT:
    Skript zuammen gekürzt nur noch die benötigten States enthalten.

    // Hausstromverbrauch aktuell berechnen **************************************************************************
    createState('PVAnlage.Stromzaehler.Zaehlerstaende.NetzbezugAlt',    0, {name: 'lezter Zählerstand Monatsbeginn', type: 'number', unit: 'kWh' });
    createState('PVAnlage.Stromzaehler.Zaehlerstaende.NetzeinspeisungAlt',    0, {name: 'lezter Zählerstand Monatsbeginn', type: 'number', unit: 'kWh' });
    createState('PVAnlage.Stromzaehler.Zaehlerstaende.SolarproduktionAlt',    0, {name: 'lezter Zählerstand Monatsbeginn', type: 'number', unit: 'kWh' });
    
    const idJson = 'PVAnlage.Stromzaehler.Zaehlerstaende.JsonTable';
    
    // Zählerstände Monatlich um 23:55 speichern für Finanzamt
    
    schedule("0 0 1 * *", function() {   
    var nBezugZaehlerAktuell = Math.floor(getState('smartmeter.0.1-0:1_8_0__255.value').val);
    var nEinspeiseZaehlerAktuell = Math.floor(getState('smartmeter.0.1-0:2_8_0__255.value').val);
    var PvZaehlerAktuell=Math.floor(getState('modbus.0.holdingRegisters.12288_E3DC_Lieferung Summe'/*12288 E3dc Lieferung Summe*/).val);
    var nBezugZaehlerAlt = getState('PVAnlage.Stromzaehler.Zaehlerstaende.NetzbezugAlt').val;
    var nEinspeiseZaehlerAlt = getState('PVAnlage.Stromzaehler.Zaehlerstaende.NetzeinspeisungAlt').val;
    var PvZaehlerAlt=getState('PVAnlage.Stromzaehler.Zaehlerstaende.SolarproduktionAlt').val;
    var nBezugZaehlerNeu = nBezugZaehlerAktuell - nBezugZaehlerAlt;
    var nEinspeiseZaehlerNeu = nEinspeiseZaehlerAktuell - nEinspeiseZaehlerAlt;
    var PvZaehlerNeu = PvZaehlerAktuell - PvZaehlerAlt;
    var EigenverbrauchNeu = PvZaehlerNeu - nEinspeiseZaehlerNeu;
    var AutarkieNeu = EigenverbrauchNeu / ((nBezugZaehlerNeu+EigenverbrauchNeu)/100);
    // Datum vom Vortag berechnen
    var jetzt = new Date();
    var Theute = jetzt.getDate();
    var Tgestern = new Date();
    Tgestern.setDate(Theute-1);
    var DatumAkt=((Tgestern.getDate())+'.'+ (Tgestern.getMonth()+1) +'.'+ Tgestern.getFullYear());
    var MonatAkt=(Tgestern.getMonth()+1);
    setState('PVAnlage.Stromzaehler.Zaehlerstaende.NetzeinspeisungAlt',nEinspeiseZaehlerAktuell);
    setState('PVAnlage.Stromzaehler.Zaehlerstaende.NetzbezugAlt',nBezugZaehlerAktuell);
    setState('PVAnlage.Stromzaehler.Zaehlerstaende.SolarproduktionAlt',PvZaehlerAktuell);
    // für Json aufbereiten
    let obj = {};
    // 9 Spalten
    obj.Datum = DatumAkt;
    obj.Netzeinspeisezähler = nEinspeiseZaehlerNeu + ' kWh';
    obj.Netzbezugszähler = nBezugZaehlerNeu + ' kWh';
    obj.PVzähler = PvZaehlerNeu + ' kWh';
    obj.Einspeisung = nEinspeiseZaehlerNeu + ' kWh';
    obj.Netzbezug = nBezugZaehlerNeu + ' kWh';
    obj.Solarproduktion = PvZaehlerNeu + ' kWh';
    obj.Eigenverbrauch = EigenverbrauchNeu + ' kWh';
    obj.Autarkie = AutarkieNeu + ' %';
    let arr = [];
    if(existsState(idJson)) arr = JSON.parse(getState(idJson).val);
    arr.push(obj);
    if(arr.length > 12) arr.shift;
    if(existsState(idJson)) setState(idJson, JSON.stringify(arr), true);
    else createState(idJson, JSON.stringify(arr), {type: 'string'});
    });
    
    smartboartS paul53P 2 Replies Last reply
    0
    • smartboartS smartboart

      @ArnoD
      hier das widget zum script ( matrial design Tabelle)

      Unbenannt.JPG


      [{"tpl":"tplVis-materialdesign-Table","data":{"oid":"javascript.1.PVAnlage.Stromzaehler.Zaehlerstaende.JsonTable","g_fixed":false,"g_visibility":false,"g_css_font_text":false,"g_css_background":true,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"g_last_change":false,"countCols":"8","tableLayout":"cardOutlined","showHeader":true,"headerTextSize":"small","showColumn0":true,"colType0":"text","textAlign0":"center","showColumn1":true,"colType1":"text","textAlign1":"center","signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis/signals/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis/signals/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis/signals/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false,"lc-type":"last-change","lc-is-interval":true,"lc-is-moment":false,"lc-format":"","lc-position-vert":"top","lc-position-horz":"right","lc-offset-vert":0,"lc-offset-horz":0,"lc-font-size":"12px","lc-font-family":"","lc-font-style":"","lc-bkg-color":"","lc-color":"","lc-border-width":"0","lc-border-style":"","lc-border-color":"","lc-border-radius":10,"lc-zindex":0,"showColumn2":true,"colType2":"text","textAlign2":"center","showColumn3":true,"colType3":"text","textAlign3":"center","showColumn4":true,"colType4":"text","textAlign4":"center","showColumn5":true,"colType5":"text","textAlign5":"center","showColumn6":true,"colType6":"text","textAlign6":"center","showColumn7":"true","colType7":"text","textAlign7":"center","showColumn8":true,"colType8":"text","textAlign8":"center","showColumn9":"true","colType9":"text","textAlign9":"center","showColumn10":"true","colType10":"text","textAlign10":"center","showColumn11":"true","colType11":"text","textAlign11":"center","showColumn12":"true","colType12":"text","textAlign12":"center","showColumn13":"true","colType13":"text","textAlign13":"center","showColumn14":"true","colType14":"text","textAlign14":"center","showColumn15":"true","colType15":"text","textAlign15":"center","showColumn16":"true","colType16":"text","textAlign16":"center","showColumn17":"true","colType17":"text","textAlign17":"center","headerRowHeight":"50","label0":"Ablese-<br>Datum","colTextColor0":"#9c9c9c","prefix0":"","colorHeaderRowText":"#9c9c9c","dividers":"#9c9c9c","colorBackground":"rgb(50,50,50)","colorHeaderRowBackground":"rgb(50,50,50)","columnWidth0":"","label1":"Einspeisung","label2":"Netzbezug","label3":"Solarproduktion","suffix3":"","suffix2":"","suffix1":"","label4":"Eigen-<br>Verbrauch","suffix4":"","label5":"Autarkie","suffix5":"","label6":"Netzeinspeise-<br>Zähler","suffix6":"","label7":"Netzbezugs-<br>Zähler","suffix7":"","label8":"PV Zähler","suffix8":"","label9":"Datum","suffix9":"","label10":"Dauer","rowHeight":"30","colorRowText":"#9c9c9c","borderColor":"transparent","colorRowBackground":"rgb(50,50,50)","dataJson":"","colNoWrap1":true,"colNoWrap0":true,"colNoWrap3":false,"showColumn18":"true","colType18":"text","textAlign18":"center","showColumn19":"true","colType19":"text","textAlign19":"center","showColumn20":"true","colType20":"text","textAlign20":"center","colNoWrap5":true,"colNoWrap4":false,"colNoWrap6":true,"colNoWrap7":true,"colNoWrap8":true,"colNoWrap9":true,"colNoWrap10":true,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","colTextColor2":"red","colTextColor10":"lightgreen","fixedHeader":true,"colTextColor3":"green","colTextColor1":"lightgreen","colTextColor4":"orange","colTextColor5":"yellow","colNoWrap2":true,"columnWidth6":"120","colTextColor6":"lightgreen","colTextColor7":"red","colTextColor8":"green","columnWidth7":"120","columnWidth3":"110","columnWidth4":"120"},"style":{"left":"0px","top":"1px","width":"942px","height":"430px","z-index":"1","background-color":"rgb(50,50,50)","overflow-x":"auto","overflow-y":"auto"},"widgetSet":"materialdesign"}]

      EDIT:
      Skript zuammen gekürzt nur noch die benötigten States enthalten.

      // Hausstromverbrauch aktuell berechnen **************************************************************************
      createState('PVAnlage.Stromzaehler.Zaehlerstaende.NetzbezugAlt',    0, {name: 'lezter Zählerstand Monatsbeginn', type: 'number', unit: 'kWh' });
      createState('PVAnlage.Stromzaehler.Zaehlerstaende.NetzeinspeisungAlt',    0, {name: 'lezter Zählerstand Monatsbeginn', type: 'number', unit: 'kWh' });
      createState('PVAnlage.Stromzaehler.Zaehlerstaende.SolarproduktionAlt',    0, {name: 'lezter Zählerstand Monatsbeginn', type: 'number', unit: 'kWh' });
      
      const idJson = 'PVAnlage.Stromzaehler.Zaehlerstaende.JsonTable';
      
      // Zählerstände Monatlich um 23:55 speichern für Finanzamt
      
      schedule("0 0 1 * *", function() {   
      var nBezugZaehlerAktuell = Math.floor(getState('smartmeter.0.1-0:1_8_0__255.value').val);
      var nEinspeiseZaehlerAktuell = Math.floor(getState('smartmeter.0.1-0:2_8_0__255.value').val);
      var PvZaehlerAktuell=Math.floor(getState('modbus.0.holdingRegisters.12288_E3DC_Lieferung Summe'/*12288 E3dc Lieferung Summe*/).val);
      var nBezugZaehlerAlt = getState('PVAnlage.Stromzaehler.Zaehlerstaende.NetzbezugAlt').val;
      var nEinspeiseZaehlerAlt = getState('PVAnlage.Stromzaehler.Zaehlerstaende.NetzeinspeisungAlt').val;
      var PvZaehlerAlt=getState('PVAnlage.Stromzaehler.Zaehlerstaende.SolarproduktionAlt').val;
      var nBezugZaehlerNeu = nBezugZaehlerAktuell - nBezugZaehlerAlt;
      var nEinspeiseZaehlerNeu = nEinspeiseZaehlerAktuell - nEinspeiseZaehlerAlt;
      var PvZaehlerNeu = PvZaehlerAktuell - PvZaehlerAlt;
      var EigenverbrauchNeu = PvZaehlerNeu - nEinspeiseZaehlerNeu;
      var AutarkieNeu = EigenverbrauchNeu / ((nBezugZaehlerNeu+EigenverbrauchNeu)/100);
      // Datum vom Vortag berechnen
      var jetzt = new Date();
      var Theute = jetzt.getDate();
      var Tgestern = new Date();
      Tgestern.setDate(Theute-1);
      var DatumAkt=((Tgestern.getDate())+'.'+ (Tgestern.getMonth()+1) +'.'+ Tgestern.getFullYear());
      var MonatAkt=(Tgestern.getMonth()+1);
      setState('PVAnlage.Stromzaehler.Zaehlerstaende.NetzeinspeisungAlt',nEinspeiseZaehlerAktuell);
      setState('PVAnlage.Stromzaehler.Zaehlerstaende.NetzbezugAlt',nBezugZaehlerAktuell);
      setState('PVAnlage.Stromzaehler.Zaehlerstaende.SolarproduktionAlt',PvZaehlerAktuell);
      // für Json aufbereiten
      let obj = {};
      // 9 Spalten
      obj.Datum = DatumAkt;
      obj.Netzeinspeisezähler = nEinspeiseZaehlerNeu + ' kWh';
      obj.Netzbezugszähler = nBezugZaehlerNeu + ' kWh';
      obj.PVzähler = PvZaehlerNeu + ' kWh';
      obj.Einspeisung = nEinspeiseZaehlerNeu + ' kWh';
      obj.Netzbezug = nBezugZaehlerNeu + ' kWh';
      obj.Solarproduktion = PvZaehlerNeu + ' kWh';
      obj.Eigenverbrauch = EigenverbrauchNeu + ' kWh';
      obj.Autarkie = AutarkieNeu + ' %';
      let arr = [];
      if(existsState(idJson)) arr = JSON.parse(getState(idJson).val);
      arr.push(obj);
      if(arr.length > 12) arr.shift;
      if(existsState(idJson)) setState(idJson, JSON.stringify(arr), true);
      else createState(idJson, JSON.stringify(arr), {type: 'string'});
      });
      
      smartboartS Offline
      smartboartS Offline
      smartboart
      wrote on last edited by
      #8

      im Prinzip braucht man die ganzen states garnicht mehr...
      ob ein Export ins filesystem nötig ist , bin ich mir garnicht so sicher...Ein screenschot würde mir schon reichen fürs Finanzamt...

      1 Reply Last reply
      0
      • smartboartS smartboart

        @ArnoD
        hier das widget zum script ( matrial design Tabelle)

        Unbenannt.JPG


        [{"tpl":"tplVis-materialdesign-Table","data":{"oid":"javascript.1.PVAnlage.Stromzaehler.Zaehlerstaende.JsonTable","g_fixed":false,"g_visibility":false,"g_css_font_text":false,"g_css_background":true,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"g_last_change":false,"countCols":"8","tableLayout":"cardOutlined","showHeader":true,"headerTextSize":"small","showColumn0":true,"colType0":"text","textAlign0":"center","showColumn1":true,"colType1":"text","textAlign1":"center","signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis/signals/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis/signals/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis/signals/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false,"lc-type":"last-change","lc-is-interval":true,"lc-is-moment":false,"lc-format":"","lc-position-vert":"top","lc-position-horz":"right","lc-offset-vert":0,"lc-offset-horz":0,"lc-font-size":"12px","lc-font-family":"","lc-font-style":"","lc-bkg-color":"","lc-color":"","lc-border-width":"0","lc-border-style":"","lc-border-color":"","lc-border-radius":10,"lc-zindex":0,"showColumn2":true,"colType2":"text","textAlign2":"center","showColumn3":true,"colType3":"text","textAlign3":"center","showColumn4":true,"colType4":"text","textAlign4":"center","showColumn5":true,"colType5":"text","textAlign5":"center","showColumn6":true,"colType6":"text","textAlign6":"center","showColumn7":"true","colType7":"text","textAlign7":"center","showColumn8":true,"colType8":"text","textAlign8":"center","showColumn9":"true","colType9":"text","textAlign9":"center","showColumn10":"true","colType10":"text","textAlign10":"center","showColumn11":"true","colType11":"text","textAlign11":"center","showColumn12":"true","colType12":"text","textAlign12":"center","showColumn13":"true","colType13":"text","textAlign13":"center","showColumn14":"true","colType14":"text","textAlign14":"center","showColumn15":"true","colType15":"text","textAlign15":"center","showColumn16":"true","colType16":"text","textAlign16":"center","showColumn17":"true","colType17":"text","textAlign17":"center","headerRowHeight":"50","label0":"Ablese-<br>Datum","colTextColor0":"#9c9c9c","prefix0":"","colorHeaderRowText":"#9c9c9c","dividers":"#9c9c9c","colorBackground":"rgb(50,50,50)","colorHeaderRowBackground":"rgb(50,50,50)","columnWidth0":"","label1":"Einspeisung","label2":"Netzbezug","label3":"Solarproduktion","suffix3":"","suffix2":"","suffix1":"","label4":"Eigen-<br>Verbrauch","suffix4":"","label5":"Autarkie","suffix5":"","label6":"Netzeinspeise-<br>Zähler","suffix6":"","label7":"Netzbezugs-<br>Zähler","suffix7":"","label8":"PV Zähler","suffix8":"","label9":"Datum","suffix9":"","label10":"Dauer","rowHeight":"30","colorRowText":"#9c9c9c","borderColor":"transparent","colorRowBackground":"rgb(50,50,50)","dataJson":"","colNoWrap1":true,"colNoWrap0":true,"colNoWrap3":false,"showColumn18":"true","colType18":"text","textAlign18":"center","showColumn19":"true","colType19":"text","textAlign19":"center","showColumn20":"true","colType20":"text","textAlign20":"center","colNoWrap5":true,"colNoWrap4":false,"colNoWrap6":true,"colNoWrap7":true,"colNoWrap8":true,"colNoWrap9":true,"colNoWrap10":true,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","colTextColor2":"red","colTextColor10":"lightgreen","fixedHeader":true,"colTextColor3":"green","colTextColor1":"lightgreen","colTextColor4":"orange","colTextColor5":"yellow","colNoWrap2":true,"columnWidth6":"120","colTextColor6":"lightgreen","colTextColor7":"red","colTextColor8":"green","columnWidth7":"120","columnWidth3":"110","columnWidth4":"120"},"style":{"left":"0px","top":"1px","width":"942px","height":"430px","z-index":"1","background-color":"rgb(50,50,50)","overflow-x":"auto","overflow-y":"auto"},"widgetSet":"materialdesign"}]

        EDIT:
        Skript zuammen gekürzt nur noch die benötigten States enthalten.

        // Hausstromverbrauch aktuell berechnen **************************************************************************
        createState('PVAnlage.Stromzaehler.Zaehlerstaende.NetzbezugAlt',    0, {name: 'lezter Zählerstand Monatsbeginn', type: 'number', unit: 'kWh' });
        createState('PVAnlage.Stromzaehler.Zaehlerstaende.NetzeinspeisungAlt',    0, {name: 'lezter Zählerstand Monatsbeginn', type: 'number', unit: 'kWh' });
        createState('PVAnlage.Stromzaehler.Zaehlerstaende.SolarproduktionAlt',    0, {name: 'lezter Zählerstand Monatsbeginn', type: 'number', unit: 'kWh' });
        
        const idJson = 'PVAnlage.Stromzaehler.Zaehlerstaende.JsonTable';
        
        // Zählerstände Monatlich um 23:55 speichern für Finanzamt
        
        schedule("0 0 1 * *", function() {   
        var nBezugZaehlerAktuell = Math.floor(getState('smartmeter.0.1-0:1_8_0__255.value').val);
        var nEinspeiseZaehlerAktuell = Math.floor(getState('smartmeter.0.1-0:2_8_0__255.value').val);
        var PvZaehlerAktuell=Math.floor(getState('modbus.0.holdingRegisters.12288_E3DC_Lieferung Summe'/*12288 E3dc Lieferung Summe*/).val);
        var nBezugZaehlerAlt = getState('PVAnlage.Stromzaehler.Zaehlerstaende.NetzbezugAlt').val;
        var nEinspeiseZaehlerAlt = getState('PVAnlage.Stromzaehler.Zaehlerstaende.NetzeinspeisungAlt').val;
        var PvZaehlerAlt=getState('PVAnlage.Stromzaehler.Zaehlerstaende.SolarproduktionAlt').val;
        var nBezugZaehlerNeu = nBezugZaehlerAktuell - nBezugZaehlerAlt;
        var nEinspeiseZaehlerNeu = nEinspeiseZaehlerAktuell - nEinspeiseZaehlerAlt;
        var PvZaehlerNeu = PvZaehlerAktuell - PvZaehlerAlt;
        var EigenverbrauchNeu = PvZaehlerNeu - nEinspeiseZaehlerNeu;
        var AutarkieNeu = EigenverbrauchNeu / ((nBezugZaehlerNeu+EigenverbrauchNeu)/100);
        // Datum vom Vortag berechnen
        var jetzt = new Date();
        var Theute = jetzt.getDate();
        var Tgestern = new Date();
        Tgestern.setDate(Theute-1);
        var DatumAkt=((Tgestern.getDate())+'.'+ (Tgestern.getMonth()+1) +'.'+ Tgestern.getFullYear());
        var MonatAkt=(Tgestern.getMonth()+1);
        setState('PVAnlage.Stromzaehler.Zaehlerstaende.NetzeinspeisungAlt',nEinspeiseZaehlerAktuell);
        setState('PVAnlage.Stromzaehler.Zaehlerstaende.NetzbezugAlt',nBezugZaehlerAktuell);
        setState('PVAnlage.Stromzaehler.Zaehlerstaende.SolarproduktionAlt',PvZaehlerAktuell);
        // für Json aufbereiten
        let obj = {};
        // 9 Spalten
        obj.Datum = DatumAkt;
        obj.Netzeinspeisezähler = nEinspeiseZaehlerNeu + ' kWh';
        obj.Netzbezugszähler = nBezugZaehlerNeu + ' kWh';
        obj.PVzähler = PvZaehlerNeu + ' kWh';
        obj.Einspeisung = nEinspeiseZaehlerNeu + ' kWh';
        obj.Netzbezug = nBezugZaehlerNeu + ' kWh';
        obj.Solarproduktion = PvZaehlerNeu + ' kWh';
        obj.Eigenverbrauch = EigenverbrauchNeu + ' kWh';
        obj.Autarkie = AutarkieNeu + ' %';
        let arr = [];
        if(existsState(idJson)) arr = JSON.parse(getState(idJson).val);
        arr.push(obj);
        if(arr.length > 12) arr.shift;
        if(existsState(idJson)) setState(idJson, JSON.stringify(arr), true);
        else createState(idJson, JSON.stringify(arr), {type: 'string'});
        });
        
        paul53P Offline
        paul53P Offline
        paul53
        wrote on last edited by
        #9

        @smartboart sagte:

        Skript zuammen gekürzt

        Die Masseinheiten sind falsch. Richtig: kWh

        Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
        Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

        smartboartS 1 Reply Last reply
        0
        • paul53P paul53

          @smartboart sagte:

          Skript zuammen gekürzt

          Die Masseinheiten sind falsch. Richtig: kWh

          smartboartS Offline
          smartboartS Offline
          smartboart
          wrote on last edited by
          #10

          @paul53 Danke für den Hinweis..habs geändert.

          smartboartS 1 Reply Last reply
          0
          • smartboartS smartboart

            @paul53 Danke für den Hinweis..habs geändert.

            smartboartS Offline
            smartboartS Offline
            smartboart
            wrote on last edited by
            #11

            Habe noch die 3 Spalten hinzu genommen...
            hatte ich vergessen...

            obj.Netzeinspeisezähler = nEinspeiseZaehlerNeu + ' kWh';
            obj.Netzbezugszähler = nBezugZaehlerNeu + ' kWh';
            obj.PVzähler = PvZaehlerNeu + ' kWh';

            Skript oben aktualisiert...

            smartboartS 1 Reply Last reply
            0
            • smartboartS smartboart

              Habe noch die 3 Spalten hinzu genommen...
              hatte ich vergessen...

              obj.Netzeinspeisezähler = nEinspeiseZaehlerNeu + ' kWh';
              obj.Netzbezugszähler = nBezugZaehlerNeu + ' kWh';
              obj.PVzähler = PvZaehlerNeu + ' kWh';

              Skript oben aktualisiert...

              smartboartS Offline
              smartboartS Offline
              smartboart
              wrote on last edited by
              #12

              so ich habe mal den 1. Beitrag aktualisiert...
              hier findet sich dann immer das aktuellste Skript..

              ich habe das Skript von ArnoD mit Hilfe von paul53 weiter aufgebohrt und zusätzlich um die Kostenberechnung für die Privatentnahme erweitert. Ebenfalls 2 States hinzu um die Stromkosten und mittlerweile wechselhafte MWST über vis anzupassen.
              Die widgets gibts noch obendrauf...
              Wie das ganze aussieht... siehe im 1. Beitrag

              A 1 Reply Last reply
              0
              • smartboartS smartboart

                so ich habe mal den 1. Beitrag aktualisiert...
                hier findet sich dann immer das aktuellste Skript..

                ich habe das Skript von ArnoD mit Hilfe von paul53 weiter aufgebohrt und zusätzlich um die Kostenberechnung für die Privatentnahme erweitert. Ebenfalls 2 States hinzu um die Stromkosten und mittlerweile wechselhafte MWST über vis anzupassen.
                Die widgets gibts noch obendrauf...
                Wie das ganze aussieht... siehe im 1. Beitrag

                A Online
                A Online
                ArnoD
                wrote on last edited by
                #13

                @smartboart tolle Arbeit, sieht ja klasse aus.
                Werde ich gleich mal bei mir testen.

                Danke auch an paul53 :-)

                1 Reply Last reply
                0
                • A Online
                  A Online
                  ArnoD
                  wrote on last edited by ArnoD
                  #14

                  @smartboart
                  Hier hast du noch Kopierfehler drin. richtig ist:

                      
                      obj.Netzeinspeisezähler = nBezugZaehlerAktuell + ' kWh';
                      obj.Netzbezugszähler = nEinspeiseZaehlerAktuell + ' kWh';
                      obj.PVzähler = PvZaehlerAktuell + ' kWh';
                      
                  
                  smartboartS 1 Reply Last reply
                  0
                  • A ArnoD

                    @smartboart
                    Hier hast du noch Kopierfehler drin. richtig ist:

                        
                        obj.Netzeinspeisezähler = nBezugZaehlerAktuell + ' kWh';
                        obj.Netzbezugszähler = nEinspeiseZaehlerAktuell + ' kWh';
                        obj.PVzähler = PvZaehlerAktuell + ' kWh';
                        
                    
                    smartboartS Offline
                    smartboartS Offline
                    smartboart
                    wrote on last edited by
                    #15

                    @ArnoD sagte in Stromzählerscript PV Anlage Finanzamt in Json oder html:

                    @smartboart
                    Hier hast du noch Kopierfehler drin. richtig ist:

                        
                        obj.Netzeinspeisezähler = nBezugZaehlerAktuell + ' kWh';
                        obj.Netzbezugszähler = nEinspeiseZaehlerAktuell + ' kWh';
                        obj.PVzähler = PvZaehlerAktuell + ' kWh';
                        
                    

                    Oh ja super....Gut aufgepasst....Danke sehr....
                    ist mir nicht aufgefallen, weil beim 1. Monat hats ja gestimmt..

                    Habs geändert...

                    A 1 Reply Last reply
                    0
                    • smartboartS smartboart

                      @ArnoD sagte in Stromzählerscript PV Anlage Finanzamt in Json oder html:

                      @smartboart
                      Hier hast du noch Kopierfehler drin. richtig ist:

                          
                          obj.Netzeinspeisezähler = nBezugZaehlerAktuell + ' kWh';
                          obj.Netzbezugszähler = nEinspeiseZaehlerAktuell + ' kWh';
                          obj.PVzähler = PvZaehlerAktuell + ' kWh';
                          
                      

                      Oh ja super....Gut aufgepasst....Danke sehr....
                      ist mir nicht aufgefallen, weil beim 1. Monat hats ja gestimmt..

                      Habs geändert...

                      A Online
                      A Online
                      ArnoD
                      wrote on last edited by ArnoD
                      #16

                      @smartboart
                      Ich habe diese Zeile auch noch geänder, da bei dem % Wert keine Nachkommastellen benötigt werden und spart Platz in der Tabelle in VIS :-)

                      var AutarkieNeu = Math.round(EigenverbrauchNeu / ((nBezugZaehlerNeu+EigenverbrauchNeu)/100));
                      
                      smartboartS 1 Reply Last reply
                      0
                      • A ArnoD

                        @smartboart
                        Ich habe diese Zeile auch noch geänder, da bei dem % Wert keine Nachkommastellen benötigt werden und spart Platz in der Tabelle in VIS :-)

                        var AutarkieNeu = Math.round(EigenverbrauchNeu / ((nBezugZaehlerNeu+EigenverbrauchNeu)/100));
                        
                        smartboartS Offline
                        smartboartS Offline
                        smartboart
                        wrote on last edited by
                        #17

                        @ArnoD habs geändert

                        1 Reply Last reply
                        0
                        • A Online
                          A Online
                          ArnoD
                          wrote on last edited by
                          #18

                          @smartboart
                          Habe mal eine Frage, wie berechnest du eigentlich den Strompreis ohne Grundpreis? oder hast du keinen Grundpreis

                          1 Reply Last reply
                          0
                          • A Online
                            A Online
                            ArnoD
                            wrote on last edited by
                            #19

                            Steuerlich richtig wäre doch folgende Berechnung:

                            StromPreis =(NettoGrundpreis / (nBezugZaehlerNeu+EigenverbrauchNeu))+ NettoStrompreis
                            Entnahme = Math.round((EigenverbrauchNeu*StromPreis)100)/100;
                            UstAnmeldung = Math.round((Entnahme/100
                            MWST)*100)/100;

                            smartboartS 1 Reply Last reply
                            0
                            • A Online
                              A Online
                              ArnoD
                              wrote on last edited by ArnoD
                              #20

                              Habe es mal geändert falls du es übernehmen willst:

                              // Hausstromverbrauch aktuell berechnen **************************************************************************
                              createState('Test.Stromzaehler.Zaehlerstaende.NetzbezugAlt',    0, {name: 'lezter Zählerstand Monatsbeginn', type: 'number', unit: 'kWh' });
                              createState('Test.Stromzaehler.Zaehlerstaende.NetzeinspeisungAlt',    0, {name: 'lezter Zählerstand Monatsbeginn', type: 'number', unit: 'kWh' });
                              createState('Test.Stromzaehler.Zaehlerstaende.SolarproduktionAlt',    0, {name: 'lezter Zählerstand Monatsbeginn', type: 'number', unit: 'kWh' });
                              createState('Test.Stromzaehler.Zaehlerstaende.Mehrwertsteuersatz',    16, {name: 'aktueller Mehrwertsteuersatz', type: 'number', unit: '%' });
                              createState('Test.Stromzaehler.Zaehlerstaende.Nettostrompreis',    0.2638, {name: 'Strompreis netto pro kwh', type: 'number', unit: '€' });
                              createState('Test.Stromzaehler.Zaehlerstaende.NettoGrundpreis',    8.5, {name: 'Grundpreis netto pro Monat', type: 'number', unit: '€' });
                              
                              const idJson = 'Test.Stromzaehler.Zaehlerstaende.JsonTable';
                              
                              var debug = true;
                              //Math.round((ProduktionGesamt-EinspeisungGesamt)*100)/100,true,200 );
                              // Zählerstände Monatlich um 23:55 speichern für Finanzamt
                              schedule("0 0 1 * *", function() { 
                                  if (debug)log('Schedule für Monatliche Berechnung fürs Finanzamt aktiv');      
                                  var nBezugZaehlerAktuell = Math.floor(getState('hm-rpc.0.QEQ0337064.1.IEC_ENERGY_COUNTER').val);
                                  var nEinspeiseZaehlerAktuell = Math.floor(getState('hm-rpc.0.QEQ0337064.2.IEC_ENERGY_COUNTER').val);
                                  var PvZaehlerAktuell=Math.floor(getState('hm-rpc.0.QEQ0337042.1.IEC_ENERGY_COUNTER').val);
                                  var MWST = getState('Test.Stromzaehler.Zaehlerstaende.Mehrwertsteuersatz').val;
                                  var NettoStrompreis = getState('Test.Stromzaehler.Zaehlerstaende.Nettostrompreis').val;
                                  var NettoGrundpreis = getState('Test.Stromzaehler.Zaehlerstaende.NettoGrundpreis').val;
                                  var nBezugZaehlerAlt = getState('Test.Stromzaehler.Zaehlerstaende.NetzbezugAlt').val;
                                  var nEinspeiseZaehlerAlt = getState('Test.Stromzaehler.Zaehlerstaende.NetzeinspeisungAlt').val;
                                  var PvZaehlerAlt=getState('Test.Stromzaehler.Zaehlerstaende.SolarproduktionAlt').val;
                                  var nBezugZaehlerNeu = nBezugZaehlerAktuell - nBezugZaehlerAlt;
                                  var nEinspeiseZaehlerNeu = nEinspeiseZaehlerAktuell - nEinspeiseZaehlerAlt;
                                  var PvZaehlerNeu = PvZaehlerAktuell - PvZaehlerAlt;
                                  var EigenverbrauchNeu = PvZaehlerNeu - nEinspeiseZaehlerNeu;
                                  var AutarkieNeu = Math.round(EigenverbrauchNeu / ((nBezugZaehlerNeu+EigenverbrauchNeu)/100));
                                  var StromPreis = (NettoGrundpreis/(nBezugZaehlerNeu+EigenverbrauchNeu))+NettoStrompreis;
                                  var Entnahme = Math.round((EigenverbrauchNeu*StromPreis)*100)/100;
                                  var UstAnmeldung = Math.round((Entnahme/100*MWST)*100)/100;
                              
                                  // Datum vom Vortag berechnen
                                  var jetzt = new Date();
                                  var Theute = jetzt.getDate();
                                  var Tgestern = new Date();
                                  Tgestern.setDate(Theute-1);
                                  var DatumAkt=((Tgestern.getDate())+'.'+ (Tgestern.getMonth()+1) +'.'+ Tgestern.getFullYear());
                                  var MonatAkt=(Tgestern.getMonth()+1);
                                  setState('Test.Stromzaehler.Zaehlerstaende.NetzeinspeisungAlt',nEinspeiseZaehlerAktuell);
                                  setState('Test.Stromzaehler.Zaehlerstaende.NetzbezugAlt',nBezugZaehlerAktuell);
                                  setState('Test.Stromzaehler.Zaehlerstaende.SolarproduktionAlt',PvZaehlerAktuell);
                                  if(debug)setTimeout(function(){log('Json aktualisiert ' + JSON.stringify(arr))},200);
                              
                                  // für Json aufbereiten
                                  let obj = {};
                              
                                  // 12 Spalten
                                  obj.Datum = DatumAkt;
                                  obj.Einspeisung = nEinspeiseZaehlerNeu + ' kWh';
                                  obj.Netzbezug = nBezugZaehlerNeu + ' kWh';
                                  obj.Solarproduktion = PvZaehlerNeu + ' kWh';
                                  obj.Eigenverbrauch = EigenverbrauchNeu + ' kWh';
                                  obj.Autarkie = AutarkieNeu + ' %';
                                  obj.Netzeinspeisezähler = nBezugZaehlerAktuell + ' kWh';
                                  obj.Netzbezugszähler = nEinspeiseZaehlerAktuell + ' kWh';
                                  obj.PVzähler = PvZaehlerAktuell + ' kWh';
                                  obj.Privatentnahme = Entnahme + ' €';
                                  obj.Ust = UstAnmeldung + ' €';
                                  obj.Mwst = MWST + ' %'
                                  obj.Strompreis = StromPreis + ' €/kWh';
                                  let arr = [];
                                  if(existsState(idJson)) arr = JSON.parse(getState(idJson).val);
                                  arr.push(obj);
                                  if(arr.length > 12) arr.shift;
                                  if(existsState(idJson)) setState(idJson, JSON.stringify(arr), true);
                                  else createState(idJson, JSON.stringify(arr), {type: 'string'});
                              });
                              
                              smartboartS 1 Reply Last reply
                              0
                              • A ArnoD

                                Habe es mal geändert falls du es übernehmen willst:

                                // Hausstromverbrauch aktuell berechnen **************************************************************************
                                createState('Test.Stromzaehler.Zaehlerstaende.NetzbezugAlt',    0, {name: 'lezter Zählerstand Monatsbeginn', type: 'number', unit: 'kWh' });
                                createState('Test.Stromzaehler.Zaehlerstaende.NetzeinspeisungAlt',    0, {name: 'lezter Zählerstand Monatsbeginn', type: 'number', unit: 'kWh' });
                                createState('Test.Stromzaehler.Zaehlerstaende.SolarproduktionAlt',    0, {name: 'lezter Zählerstand Monatsbeginn', type: 'number', unit: 'kWh' });
                                createState('Test.Stromzaehler.Zaehlerstaende.Mehrwertsteuersatz',    16, {name: 'aktueller Mehrwertsteuersatz', type: 'number', unit: '%' });
                                createState('Test.Stromzaehler.Zaehlerstaende.Nettostrompreis',    0.2638, {name: 'Strompreis netto pro kwh', type: 'number', unit: '€' });
                                createState('Test.Stromzaehler.Zaehlerstaende.NettoGrundpreis',    8.5, {name: 'Grundpreis netto pro Monat', type: 'number', unit: '€' });
                                
                                const idJson = 'Test.Stromzaehler.Zaehlerstaende.JsonTable';
                                
                                var debug = true;
                                //Math.round((ProduktionGesamt-EinspeisungGesamt)*100)/100,true,200 );
                                // Zählerstände Monatlich um 23:55 speichern für Finanzamt
                                schedule("0 0 1 * *", function() { 
                                    if (debug)log('Schedule für Monatliche Berechnung fürs Finanzamt aktiv');      
                                    var nBezugZaehlerAktuell = Math.floor(getState('hm-rpc.0.QEQ0337064.1.IEC_ENERGY_COUNTER').val);
                                    var nEinspeiseZaehlerAktuell = Math.floor(getState('hm-rpc.0.QEQ0337064.2.IEC_ENERGY_COUNTER').val);
                                    var PvZaehlerAktuell=Math.floor(getState('hm-rpc.0.QEQ0337042.1.IEC_ENERGY_COUNTER').val);
                                    var MWST = getState('Test.Stromzaehler.Zaehlerstaende.Mehrwertsteuersatz').val;
                                    var NettoStrompreis = getState('Test.Stromzaehler.Zaehlerstaende.Nettostrompreis').val;
                                    var NettoGrundpreis = getState('Test.Stromzaehler.Zaehlerstaende.NettoGrundpreis').val;
                                    var nBezugZaehlerAlt = getState('Test.Stromzaehler.Zaehlerstaende.NetzbezugAlt').val;
                                    var nEinspeiseZaehlerAlt = getState('Test.Stromzaehler.Zaehlerstaende.NetzeinspeisungAlt').val;
                                    var PvZaehlerAlt=getState('Test.Stromzaehler.Zaehlerstaende.SolarproduktionAlt').val;
                                    var nBezugZaehlerNeu = nBezugZaehlerAktuell - nBezugZaehlerAlt;
                                    var nEinspeiseZaehlerNeu = nEinspeiseZaehlerAktuell - nEinspeiseZaehlerAlt;
                                    var PvZaehlerNeu = PvZaehlerAktuell - PvZaehlerAlt;
                                    var EigenverbrauchNeu = PvZaehlerNeu - nEinspeiseZaehlerNeu;
                                    var AutarkieNeu = Math.round(EigenverbrauchNeu / ((nBezugZaehlerNeu+EigenverbrauchNeu)/100));
                                    var StromPreis = (NettoGrundpreis/(nBezugZaehlerNeu+EigenverbrauchNeu))+NettoStrompreis;
                                    var Entnahme = Math.round((EigenverbrauchNeu*StromPreis)*100)/100;
                                    var UstAnmeldung = Math.round((Entnahme/100*MWST)*100)/100;
                                
                                    // Datum vom Vortag berechnen
                                    var jetzt = new Date();
                                    var Theute = jetzt.getDate();
                                    var Tgestern = new Date();
                                    Tgestern.setDate(Theute-1);
                                    var DatumAkt=((Tgestern.getDate())+'.'+ (Tgestern.getMonth()+1) +'.'+ Tgestern.getFullYear());
                                    var MonatAkt=(Tgestern.getMonth()+1);
                                    setState('Test.Stromzaehler.Zaehlerstaende.NetzeinspeisungAlt',nEinspeiseZaehlerAktuell);
                                    setState('Test.Stromzaehler.Zaehlerstaende.NetzbezugAlt',nBezugZaehlerAktuell);
                                    setState('Test.Stromzaehler.Zaehlerstaende.SolarproduktionAlt',PvZaehlerAktuell);
                                    if(debug)setTimeout(function(){log('Json aktualisiert ' + JSON.stringify(arr))},200);
                                
                                    // für Json aufbereiten
                                    let obj = {};
                                
                                    // 12 Spalten
                                    obj.Datum = DatumAkt;
                                    obj.Einspeisung = nEinspeiseZaehlerNeu + ' kWh';
                                    obj.Netzbezug = nBezugZaehlerNeu + ' kWh';
                                    obj.Solarproduktion = PvZaehlerNeu + ' kWh';
                                    obj.Eigenverbrauch = EigenverbrauchNeu + ' kWh';
                                    obj.Autarkie = AutarkieNeu + ' %';
                                    obj.Netzeinspeisezähler = nBezugZaehlerAktuell + ' kWh';
                                    obj.Netzbezugszähler = nEinspeiseZaehlerAktuell + ' kWh';
                                    obj.PVzähler = PvZaehlerAktuell + ' kWh';
                                    obj.Privatentnahme = Entnahme + ' €';
                                    obj.Ust = UstAnmeldung + ' €';
                                    obj.Mwst = MWST + ' %'
                                    obj.Strompreis = StromPreis + ' €/kWh';
                                    let arr = [];
                                    if(existsState(idJson)) arr = JSON.parse(getState(idJson).val);
                                    arr.push(obj);
                                    if(arr.length > 12) arr.shift;
                                    if(existsState(idJson)) setState(idJson, JSON.stringify(arr), true);
                                    else createState(idJson, JSON.stringify(arr), {type: 'string'});
                                });
                                
                                smartboartS Offline
                                smartboartS Offline
                                smartboart
                                wrote on last edited by smartboart
                                #21

                                @ArnoD ja hast du richtig erkannt.. Im Moment habe ich noch einen Tarif ohne Grundpreis... Das wird bestimmt aber bei mir auch bald ein Thema,da ich mir nicht vorstellen kann, dass die mich in dem Tarif lassen werden.. Vermutlich nach vertragsablauf wird das akut..

                                Aber wenn du dafür ne Lösung gefunden hast.. Nehme ich die natürlich auch gleich mit..

                                Mit 0 € wird die Formel glaube ich nicht funktionieren...

                                Müsste das in vis konfigurierbar machen.. Mit und ohne Grundpreis.. Denke ein boolean zusätzlich mit ner if erledigt das im Handumdrehen..
                                Ahh Sollte auch ohne gehen if 0 tuts bestimmt auch...
                                super...

                                smartboartS 1 Reply Last reply
                                0
                                • smartboartS smartboart

                                  @ArnoD ja hast du richtig erkannt.. Im Moment habe ich noch einen Tarif ohne Grundpreis... Das wird bestimmt aber bei mir auch bald ein Thema,da ich mir nicht vorstellen kann, dass die mich in dem Tarif lassen werden.. Vermutlich nach vertragsablauf wird das akut..

                                  Aber wenn du dafür ne Lösung gefunden hast.. Nehme ich die natürlich auch gleich mit..

                                  Mit 0 € wird die Formel glaube ich nicht funktionieren...

                                  Müsste das in vis konfigurierbar machen.. Mit und ohne Grundpreis.. Denke ein boolean zusätzlich mit ner if erledigt das im Handumdrehen..
                                  Ahh Sollte auch ohne gehen if 0 tuts bestimmt auch...
                                  super...

                                  smartboartS Offline
                                  smartboartS Offline
                                  smartboart
                                  wrote on last edited by
                                  #22

                                  Komme heute aber nicht mehr dazu... Vlt. In der Mittagspause morgen. Brennt ja nicht an und du hast es ja schon hier eingestellt.. Ist ja nur ein spezieller Fall für mich den ich hier noch abbilden möchte..

                                  1 Reply Last reply
                                  0
                                  • A ArnoD

                                    Steuerlich richtig wäre doch folgende Berechnung:

                                    StromPreis =(NettoGrundpreis / (nBezugZaehlerNeu+EigenverbrauchNeu))+ NettoStrompreis
                                    Entnahme = Math.round((EigenverbrauchNeu*StromPreis)100)/100;
                                    UstAnmeldung = Math.round((Entnahme/100
                                    MWST)*100)/100;

                                    smartboartS Offline
                                    smartboartS Offline
                                    smartboart
                                    wrote on last edited by
                                    #23

                                    @ArnoD sagte in Stromzählerscript PV Anlage Finanzamt in Json oder html:

                                    StromPreis =(NettoGrundpreis / (nBezugZaehlerNeu+EigenverbrauchNeu))+ NettoStrompreis

                                    Im Beitrag hast es noch richtig...

                                    im Script unten hast du + NettoGrundpreis....

                                    Habe das Script oben angepasst... mit ner if Bedingung...

                                    meinst du wird sollten der Tabelle nen Timeout / bisschen Zeit geben bis die Variablen alle Sicher berechnet wurden?

                                    A 1 Reply Last reply
                                    0
                                    • smartboartS smartboart

                                      @ArnoD sagte in Stromzählerscript PV Anlage Finanzamt in Json oder html:

                                      StromPreis =(NettoGrundpreis / (nBezugZaehlerNeu+EigenverbrauchNeu))+ NettoStrompreis

                                      Im Beitrag hast es noch richtig...

                                      im Script unten hast du + NettoGrundpreis....

                                      Habe das Script oben angepasst... mit ner if Bedingung...

                                      meinst du wird sollten der Tabelle nen Timeout / bisschen Zeit geben bis die Variablen alle Sicher berechnet wurden?

                                      A Online
                                      A Online
                                      ArnoD
                                      wrote on last edited by
                                      #24

                                      @smartboart sagte in Stromzählerscript PV Anlage Finanzamt in Json oder html:

                                      @ArnoD sagte in Stromzählerscript PV Anlage Finanzamt in Json oder html:

                                      StromPreis =(NettoGrundpreis / (nBezugZaehlerNeu+EigenverbrauchNeu))+ NettoStrompreis

                                      Im Beitrag hast es noch richtig...

                                      im Script unten hast du + NettoGrundpreis....

                                      Habe das Script oben angepasst... mit ner if Bedingung...

                                      meinst du wird sollten der Tabelle nen Timeout / bisschen Zeit geben bis die Variablen alle Sicher berechnet wurden?

                                      Ja hast recht ist ein Kopierfehler, Danke.
                                      Etwas Zeit schadet nie, haben es ja nicht eilig die Umsatzsteuer zu zahlen :-)
                                      Du hast mich aber mit dem aufzeichnen der Kosten noch auf eine Idee gebracht.
                                      Würde gerne den Gewinn bzw. Einsparung in einer Spalte aufsummieren, ist einfach schön zu sehen wie die Summe steigt. :grinning:

                                      smartboartS 1 Reply Last reply
                                      0
                                      • A ArnoD

                                        @smartboart sagte in Stromzählerscript PV Anlage Finanzamt in Json oder html:

                                        @ArnoD sagte in Stromzählerscript PV Anlage Finanzamt in Json oder html:

                                        StromPreis =(NettoGrundpreis / (nBezugZaehlerNeu+EigenverbrauchNeu))+ NettoStrompreis

                                        Im Beitrag hast es noch richtig...

                                        im Script unten hast du + NettoGrundpreis....

                                        Habe das Script oben angepasst... mit ner if Bedingung...

                                        meinst du wird sollten der Tabelle nen Timeout / bisschen Zeit geben bis die Variablen alle Sicher berechnet wurden?

                                        Ja hast recht ist ein Kopierfehler, Danke.
                                        Etwas Zeit schadet nie, haben es ja nicht eilig die Umsatzsteuer zu zahlen :-)
                                        Du hast mich aber mit dem aufzeichnen der Kosten noch auf eine Idee gebracht.
                                        Würde gerne den Gewinn bzw. Einsparung in einer Spalte aufsummieren, ist einfach schön zu sehen wie die Summe steigt. :grinning:

                                        smartboartS Offline
                                        smartboartS Offline
                                        smartboart
                                        wrote on last edited by
                                        #25

                                        @ArnoD ja gute Idee... Warum nicht gleich ne amotisierungseechnung mit rein packen? Nen konfigteil für Investitionskosten mit rein packen.

                                        A 1 Reply Last reply
                                        0
                                        • smartboartS smartboart

                                          @ArnoD ja gute Idee... Warum nicht gleich ne amotisierungseechnung mit rein packen? Nen konfigteil für Investitionskosten mit rein packen.

                                          A Online
                                          A Online
                                          ArnoD
                                          wrote on last edited by
                                          #26

                                          @smartboart Das wäre dann perfekt. Denke nur das es dann zu viele Daten sind die man manuell eingeben muss, aber wir können es ja mal versuchen.

                                          1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          737

                                          Online

                                          32.7k

                                          Users

                                          82.4k

                                          Topics

                                          1.3m

                                          Posts
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Home
                                          • Recent
                                          • Tags
                                          • Unread 0
                                          • Categories
                                          • Unreplied
                                          • Popular
                                          • GitHub
                                          • Docu
                                          • Hilfe