diy solar

diy solar

Data History removed from server-us.growatt.com

itche

New Member
Joined
Oct 14, 2020
Messages
11
I've noticed recently that the Data History feature that was previously located below the settings tab is no longer available. Can someone else confirm this is missing? Or is there a new way to access the full log data from the device via the growatt site? I've looked in depth and can't seem to find it anywhere. Thanks.

Screen Shot 2022-01-22 at 3.25.56 PM.png
 
Yes, I wrote a Greasemonkey script that will insert a button for you onto the site and return the functionality. I haven't had time to officially post it somewhere. I'll paste the code here for anyone interested in using. I use Chrome and Tampermonkey extension. Go to https://server-us.growatt.com/login and then in the Tampermonkey extension options select "Create a new script", paste my code and save. Whenever you go to the site, make sure you have Tampermonkey active and enabled, and you should see a gray button called "Get Historical Data" under the "My Photovoltaic Devices" area that when clicked will return the functionality.

Hope this helps! If the code doesn't work for you let me know, I've only tested it for a single device and it probably will not work for multiple devices as currently written.

JavaScript:
// ==UserScript==
// @name         Growatt Device History
// @namespace    http://tampermonkey.net/
// @version      0.1
// @description  Adds a button on the main screen under devices to access the detailed historical data
// @author       You
// @require      https://gist.github.com/raw/2625891/waitForKeyElements.js
// @match        http*://server-us.growatt.com/index
// @icon         https://server-us.growatt.com/v3/images/favicon/favicon.ico
// @grant        none
// ==/UserScript==

(function() {
    'use strict';

    /* globals waitForKeyElements */

    var historyButton=document.createElement("input");
    historyButton.type="button";
    historyButton.value="Get Historical Data";
    historyButton.setAttribute("style", "font-size:18px;position:relative;text-align:center");
    historyButton.onclick = showHistory;

    function insertButton(jNode){
        jNode.html(historyButton)
    }

    waitForKeyElements ("#tb_device_con > div > table > tbody > tr:nth-child(1) > td:nth-child(2)", insertButton);

    function showHistory()
    {
        window.comm.dialogUrl({
                skin:"noPadding",
                id:"dialog_storageHistory",
                title:"History Data("+Object.keys(window.INVS)[0]+")",
                url:"/device/getStorageHisPage",
                btns:[[window.comm.getI18n("no-more"),function(did,dialog){window.dialog_storageHistory_search_More(did,dialog);},false,"btn_more dis"],['i18n_common_cancel',window.comm.dialogClose]],
                success:function(did,dialog){
                    window.dialog_storageHistory_init(did,dialog,Object.keys(window.INVS)[0],3)
                }
            });
    };
})();
 
If I use the script the button appears as it should. But the window doesn't show any data, no matter what date I set. At the bottom of the window it says 'No data'.
I am not using the Growatt US server, Europe has server.growatt.com as standard, if that matters.
 
If I use the script the button appears as it should. But the window doesn't show any data, no matter what date I set. At the bottom of the window it says 'No data'.
I am not using the Growatt US server, Europe has server.growatt.com as standard, if that matters.
Hi,
First, on the US server, this feature appears to now be re-enabled without my patch script. It sounds like this is not true in Europe.

If you change these two lines,
Code:
// @match        http*://server-us.growatt.com/index
// @icon         https://server-us.growatt.com/v3/images/favicon/favicon.ico
to be instead
Code:
// @match        http*://server.growatt.com/index
// @icon         https://server.growatt.com/v3/images/favicon/favicon.ico
it might work assuming they use the same codebase and just the servers are different.

Those look like comments but really the @match line controls where Tampermonkey should make the script active.

Hope this helps
 
Thanks for the help, I already fixed the URL. The button appeared and is clickable. But the window which opens doesn't show any data. I can't say if the window itself is somehow broken or if they don't provide the data anymore...

Alternatively, is there a way I can export more then the production values of the plant? I guess that was a feature of that now missing window with history data. Maybe I should try to get that data with POST requests. Their own graph shows the data day by day so I would guess I can get that raw data with Javascript.
 
Thanks for the help, I already fixed the URL. The button appeared and is clickable. But the window which opens doesn't show any data. I can't say if the window itself is somehow broken or if they don't provide the data anymore...

Alternatively, is there a way I can export more then the production values of the plant? I guess that was a feature of that now missing window with history data. Maybe I should try to get that data with POST requests. Their own graph shows the data day by day so I would guess I can get that raw data with Javascript.
Ah! I see. Sorry I misunderstood. I was able to replicate your issue by using the demo accounts on the server.growatt.com I'm not sure of a solution right now, it seems the feature may be disabled on that server, or possibly accessed in a different way.

As for trying to get the data with a custom POST request, I recommend using something like postman interceptor, it is how I figured out the historical data feature functionality. You have to make sure to send the authentication cookie with each request, which is easy to grab and temporarily store with the postman tool.

You could also write a scraper or something in python or similar and there are ways to intercept the traffic from the growatt data logger prior to sending to the main servers. There are several posts on this site and on the internet describing this approach. I thought about these options but in the end the simplest path for me was to restore the history data tool.

If I get a chance to work on this and find a fix, I'll be sure to post back.
 
@Plasm Please use the following script, which should now hopefully work for any type of Growatt device on either server-us.growatt.com or server.growatt.com

I tested it on several demo accounts and it seemed to work fine. Please let me know if it works for you.

Code:
// ==UserScript==
// @name         Growatt Device History
// @namespace    http://tampermonkey.net/
// @version      0.2
// @description  Adds a button on the main screen under devices to access the detailed historical data
// @author       You
// @require      https://gist.github.com/raw/2625891/waitForKeyElements.js
// @match        http*://*.growatt.com/index
// @icon         https://server-us.growatt.com/v3/images/favicon/favicon.ico
// @grant        none
// ==/UserScript==

(function() {
    'use strict';

    /* globals waitForKeyElements */

    var historyButton=document.createElement("input");
    historyButton.type="button";
    historyButton.value="Get Historical Data";
    historyButton.setAttribute("style", "font-size:18px;position:relative;text-align:center");
    historyButton.onclick = showHistory;

    function insertButton(jNode){
        jNode.html(historyButton)
    }

    waitForKeyElements ("#tb_device_con > div > table > tbody > tr:nth-child(1) > td:nth-child(2)", insertButton);

    function showHistory(){
        var inv = window.INVS[Object.keys(window.INVS)[0]];
        if(inv.deviceTypeName=="inv"){
            window.comm.dialogUrl({
                skin:"noPadding",
                id:"dialog_inverterHistory",
                title:"History Data("+inv.sn+")",
                url:"/device/getInverterHisPage",
                btns:[[window.comm.getI18n("no-more"),function(did,dialog){window.dialog_inverterHistory_search_More(did,dialog);},false,"btn_more dis"],['i18n_common_cancel',window.comm.dialogClose]],
                success:function(did,dialog){
                    window.dialog_inverterHistory_init(did,dialog,inv.sn);
                }
            });
        }else if(inv.deviceTypeName=="max"){
            window.comm.dialogUrl({
                skin:"noPadding",
                id:"dialog_maxHistory",
                title:"History Data("+inv.sn+")",
                url:"/device/getMAXHisPage",
                btns:[[window.comm.getI18n("no-more"),function(did,dialog){window.dialog_maxHistory_search_More(did,dialog);},false,"btn_more dis"],['i18n_common_cancel',window.comm.dialogClose]],
                success:function(did,dialog){
                    window.dialog_maxHistory_init(did,dialog,inv.sn,inv.deviceType);
                }
            });
        }else if(inv.deviceTypeName=="storage"){
            window.comm.dialogUrl({
                skin:"noPadding",
                id:"dialog_storageHistory",
                title:"History Data("+inv.sn+")",
                url:"/device/getStorageHisPage",
                btns:[[window.comm.getI18n("no-more"),function(did,dialog){window.dialog_storageHistory_search_More(did,dialog);},false,"btn_more dis"],['i18n_common_cancel',window.comm.dialogClose]],
                success:function(did,dialog){
                    window.dialog_storageHistory_init(did,dialog,inv.sn,inv.deviceType);
                }
            });
        }else if(inv.deviceTypeName=="mix"){
            window.comm.dialogUrl({
                skin:"noPadding",
                id:"dialog_mixHistory",
                title:"History Data("+inv.sn+")",
                url:"/device/getMIXHisPage?mixSn="+inv.sn,
                btns:[[window.comm.getI18n("no-more"),function(did,dialog){window.dialog_mixHistory_search_More(did,dialog);},false,"btn_more dis"],['i18n_common_cancel',window.comm.dialogClose]],
                success:function(did,dialog){
                    window.dialog_mixHistory_init(did,dialog,inv.sn);
                }
            });
        }else if(inv.deviceTypeName=="pcs"){
            window.comm.dialogUrl({
                skin:"noPadding",
                id:"dialog_pcsHistory",
                title:"History Data("+inv.sn+")",
                url:"/device/getPCSHisPage",
                btns:[[window.comm.getI18n("no-more"),function(did,dialog){window.dialog_pcsHistory_search_More(did,dialog);},false,"btn_more dis"],['i18n_common_cancel',window.comm.dialogClose]],
                success:function(did,dialog){
                    window.dialog_pcsHistory_init(did,dialog,inv.sn);
                }
            });
        }else if(inv.deviceTypeName=="hps"){
            window.comm.dialogUrl({
                skin:"noPadding",
                id:"dialog_hpsHistory",
                title:"History Data("+inv.sn+")",
                url:"/device/getHPSHisPage",
                btns:[[window.comm.getI18n("no-more"),function(did,dialog){window.dialog_hpsHistory_search_More(did,dialog);},false,"btn_more dis"],['i18n_common_cancel',window.comm.dialogClose]],
                success:function(did,dialog){
                    window.dialog_hpsHistory_init(did,dialog,inv.sn);
                }
            });
        }else if(inv.deviceTypeName=="spa"){
            window.comm.dialogUrl({
                skin:"noPadding",
                id:"dialog_spaHistory",
                title:"History Data("+inv.sn+")",
                url:"/device/getSPAHisPage",
                btns:[[window.comm.getI18n("no-more"),function(did,dialog){window.dialog_spaHistory_search_More(did,dialog);},false,"btn_more dis"],['i18n_common_cancel',window.comm.dialogClose]],
                success:function(did,dialog){
                    window.dialog_spaHistory_init(did,dialog,inv);
                }
            });
        }else if(inv.deviceTypeName=="tlx"){
            window.comm.dialogUrl({
                skin:"noPadding",
                id:"dialog_tlxHistory",
                title:"History Data("+inv.sn+")",
                url:"/device/getTLXHisPage",
                btns:[[window.comm.getI18n("no-more"),function(did,dialog){window.dialog_tlxHistory_search_More(did,dialog);},false,"btn_more dis"],['i18n_common_cancel',window.comm.dialogClose]],
                success:function(did,dialog){
                    window.dialog_tlxHistory_init(did,dialog,inv);
                }
            });
        }else if(inv.deviceTypeName=="jlInv"){
            window.comm.dialogUrl({
                skin:"noPadding",
                id:"dialog_jlInvHistory",
                title:"History Data("+inv.sn+")",
                url:"/device/getJlInvHisPage",
                btns:[[window.comm.getI18n("no-more"),function(did,dialog){window.dialog_jlInvHistory_search_More(did,dialog);},false,"btn_more dis"],['i18n_common_cancel',window.comm.dialogClose]],
                success:function(did,dialog){
                    window.dialog_jlInvHistory_init(did,dialog,inv);
                }
            });
        }else if(inv.deviceTypeName=="jfyInv"){
            window.comm.dialogUrl({
                skin:"noPadding",
                id:"dialog_jfyInvHistory",
                title:"History Data("+inv.sn+")",
                url:"/device/getJfyInvHisPage",
                btns:[[window.comm.getI18n("no-more"),function(did,dialog){window.dialog_jfyInvHistory_search_More(did,dialog);},false,"btn_more dis"],['i18n_common_cancel',window.comm.dialogClose]],
                success:function(did,dialog){
                    window.dialog_jfyInvHistory_init(did,dialog,inv);
                }
            });
        }else if(inv.deviceTypeName=="pbd"){
            window.comm.dialogUrl({
                skin:"noPadding",
                id:"dialog_pbdHistory",
                title:"History Data("+inv.sn+")",
                url:"/device/getPBDHisPage",
                btns:[[window.comm.getI18n("no-more"),function(did,dialog){window.dialog_pbdHistory_search_More(did,dialog);},false,"btn_more dis"],['i18n_common_cancel',window.comm.dialogClose]],
                success:function(did,dialog){
                    window.dialog_pbdHistory_init(did,dialog,inv);
                }
            });
        }else if(inv.deviceTypeName=="eybondInv"){
            window.comm.dialogUrl({
                skin:"noPadding",
                id:"dialog_eybondInvHistory",
                title:"History Data("+inv.sn+")",
                url:"/device/getEybondInvHisPage",
                btns:[[window.comm.getI18n("no-more"),function(did,dialog){window.dialog_eybondInvHistory_search_More(did,dialog);},false,"btn_more dis"],['i18n_common_cancel',window.comm.dialogClose]],
                success:function(did,dialog){
                    window.dialog_eybondInvHistory_init(did,dialog,inv.sn);
                }
            });
        }else if(inv.deviceTypeName=="igenInv"){
            window.comm.dialogUrl({
                skin:"noPadding",
                id:"dialog_igenInvHistory",
                title:"History Data("+inv.sn+")",
                url:"/device/getIgenInvHisPage",
                btns:[[window.comm.getI18n("no-more"),function(did,dialog){window.dialog_igenInvHistory_search_More(did,dialog);},false,"btn_more dis"],['i18n_common_cancel',window.comm.dialogClose]],
                success:function(did,dialog){
                    window.dialog_igenInvHistory_init(did,dialog,inv.sn);
                }
            });
        }else if(inv.deviceTypeName=="pumper"){
            window.comm.dialogUrl({
                skin:"noPadding",
                id:"dialog_pumperHistory",
                title:"History Data("+inv.sn+")",
                url:"/device/getPumperHisPage",
                btns:[[window.comm.getI18n("no-more"),function(did,dialog){window.dialog_pumperHistory_search_More(did,dialog);},false,"btn_more dis"],['i18n_common_cancel',window.comm.dialogClose]],
                success:function(did,dialog){
                    window.dialog_pumperHistory_init(did,dialog,inv.sn);
                }
            });
        }
    };


})();
 
@itche thank you very much for your effort. Everything seems to be working as intended including the export function. :)
 
For some strange reason I am not being allowed to sign into my account on the server.growatt.com server. It tells me my account does not exist and then sends me to the oss.growatt.com login page

Anyone experiencing this?
 
For some strange reason I am not being allowed to sign into my account on the server.growatt.com server. It tells me my account does not exist and then sends me to the oss.growatt.com login page

Anyone experiencing this?
Are you US based? If so, try going here https://server-us.growatt.com/login If this is not working, are you using a VPN? Maybe the site is redirecting you based off where it thinks you are coming from.
 
This issue started happening to me yesterday - not sure if it's a coincidence or not, but I added another data logger to my account for a 2nd SPF 3000TL LVM I got for my shed, and now the "history" button is missing for both dataloggers:

dHNL4FN.png


I'm using server-us.growatt.com

Did this happen to anyone else? I use that history button frequently so hoping it's a temporary glitch.
 
Hello,

I found myself searching for an option to extract data from Growatt Server (EU) which lead me to this thread :)

The solution posted my Itche works very well, my only problem is that I have two devices, and it seems only to work for one of them.

Is there a way to modify the code to create history for multiple devices?

Any help would be greatly appreciated - I have spent far too much time trying to get data from Growatt and this is the closest I have come.

Udklip.JPG
 
Hello,

I found myself searching for an option to extract data from Growatt Server (EU) which lead me to this thread :)

The solution posted my Itche works very well, my only problem is that I have two devices, and it seems only to work for one of them.

Is there a way to modify the code to create history for multiple devices?

Any help would be greatly appreciated - I have spent far too much time trying to get data from Growatt and this is the closest I have come.

View attachment 104424
It should be pretty straight forward to make this work for multiple devices. I'll see what I can do.
 
JavaScript:
// ==UserScript==
// @name         Growatt Device History
// @namespace    http://tampermonkey.net/
// @version      0.3
// @description  Adds a button on the main screen under devices to access the detailed historical data
// @author       You
// @require      https://gist.github.com/raw/2625891/waitForKeyElements.js
// @match        http*://*.growatt.com/index
// @icon         https://server-us.growatt.com/v3/images/favicon/favicon.ico
// @grant        none
// ==/UserScript==

(function() {
    'use strict';

    /* globals waitForKeyElements */

    var counter = 0;
    function createHistoryButton(device_sn) {
        var historyButton=document.createElement("input");
        historyButton.setAttribute("device_sn", device_sn);
        historyButton.type="button";
        historyButton.value="Get Historical Data";
        historyButton.setAttribute("style", "font-size:18px;position:relative;text-align:center");
        historyButton.addEventListener('click', function(){showHistory(device_sn);});
        return historyButton;
    }

    function insertButton(jNode){
        var devices_div = jNode.find("tr:nth-child(1) > td:nth-child(2)")
        var device_sn = jNode.find("tr:nth-child(2) > td:nth-child(2) > span").text()
        devices_div.html(createHistoryButton(device_sn));
    }

    waitForKeyElements ("#tb_device_con > div", insertButton);

    function showHistory(device_sn){
        var inv = window.INVS[device_sn];
        if(inv.deviceTypeName=="inv"){
            window.comm.dialogUrl({
                skin:"noPadding",
                id:"dialog_inverterHistory",
                title:"History Data("+inv.sn+")",
                url:"/device/getInverterHisPage",
                btns:[[window.comm.getI18n("no-more"),function(did,dialog){window.dialog_inverterHistory_search_More(did,dialog);},false,"btn_more dis"],['i18n_common_cancel',window.comm.dialogClose]],
                success:function(did,dialog){
                    window.dialog_inverterHistory_init(did,dialog,inv.sn);
                }
            });
        }else if(inv.deviceTypeName=="max"){
            window.comm.dialogUrl({
                skin:"noPadding",
                id:"dialog_maxHistory",
                title:"History Data("+inv.sn+")",
                url:"/device/getMAXHisPage",
                btns:[[window.comm.getI18n("no-more"),function(did,dialog){window.dialog_maxHistory_search_More(did,dialog);},false,"btn_more dis"],['i18n_common_cancel',window.comm.dialogClose]],
                success:function(did,dialog){
                    window.dialog_maxHistory_init(did,dialog,inv.sn,inv.deviceType);
                }
            });
        }else if(inv.deviceTypeName=="storage"){
            window.comm.dialogUrl({
                skin:"noPadding",
                id:"dialog_storageHistory",
                title:"History Data("+inv.sn+")",
                url:"/device/getStorageHisPage",
                btns:[[window.comm.getI18n("no-more"),function(did,dialog){window.dialog_storageHistory_search_More(did,dialog);},false,"btn_more dis"],['i18n_common_cancel',window.comm.dialogClose]],
                success:function(did,dialog){
                    window.dialog_storageHistory_init(did,dialog,inv.sn,inv.deviceType);
                }
            });
        }else if(inv.deviceTypeName=="mix"){
            window.comm.dialogUrl({
                skin:"noPadding",
                id:"dialog_mixHistory",
                title:"History Data("+inv.sn+")",
                url:"/device/getMIXHisPage?mixSn="+inv.sn,
                btns:[[window.comm.getI18n("no-more"),function(did,dialog){window.dialog_mixHistory_search_More(did,dialog);},false,"btn_more dis"],['i18n_common_cancel',window.comm.dialogClose]],
                success:function(did,dialog){
                    window.dialog_mixHistory_init(did,dialog,inv.sn);
                }
            });
        }else if(inv.deviceTypeName=="pcs"){
            window.comm.dialogUrl({
                skin:"noPadding",
                id:"dialog_pcsHistory",
                title:"History Data("+inv.sn+")",
                url:"/device/getPCSHisPage",
                btns:[[window.comm.getI18n("no-more"),function(did,dialog){window.dialog_pcsHistory_search_More(did,dialog);},false,"btn_more dis"],['i18n_common_cancel',window.comm.dialogClose]],
                success:function(did,dialog){
                    window.dialog_pcsHistory_init(did,dialog,inv.sn);
                }
            });
        }else if(inv.deviceTypeName=="hps"){
            window.comm.dialogUrl({
                skin:"noPadding",
                id:"dialog_hpsHistory",
                title:"History Data("+inv.sn+")",
                url:"/device/getHPSHisPage",
                btns:[[window.comm.getI18n("no-more"),function(did,dialog){window.dialog_hpsHistory_search_More(did,dialog);},false,"btn_more dis"],['i18n_common_cancel',window.comm.dialogClose]],
                success:function(did,dialog){
                    window.dialog_hpsHistory_init(did,dialog,inv.sn);
                }
            });
        }else if(inv.deviceTypeName=="spa"){
            window.comm.dialogUrl({
                skin:"noPadding",
                id:"dialog_spaHistory",
                title:"History Data("+inv.sn+")",
                url:"/device/getSPAHisPage",
                btns:[[window.comm.getI18n("no-more"),function(did,dialog){window.dialog_spaHistory_search_More(did,dialog);},false,"btn_more dis"],['i18n_common_cancel',window.comm.dialogClose]],
                success:function(did,dialog){
                    window.dialog_spaHistory_init(did,dialog,inv);
                }
            });
        }else if(inv.deviceTypeName=="tlx"){
            window.comm.dialogUrl({
                skin:"noPadding",
                id:"dialog_tlxHistory",
                title:"History Data("+inv.sn+")",
                url:"/device/getTLXHisPage",
                btns:[[window.comm.getI18n("no-more"),function(did,dialog){window.dialog_tlxHistory_search_More(did,dialog);},false,"btn_more dis"],['i18n_common_cancel',window.comm.dialogClose]],
                success:function(did,dialog){
                    window.dialog_tlxHistory_init(did,dialog,inv);
                }
            });
        }else if(inv.deviceTypeName=="jlInv"){
            window.comm.dialogUrl({
                skin:"noPadding",
                id:"dialog_jlInvHistory",
                title:"History Data("+inv.sn+")",
                url:"/device/getJlInvHisPage",
                btns:[[window.comm.getI18n("no-more"),function(did,dialog){window.dialog_jlInvHistory_search_More(did,dialog);},false,"btn_more dis"],['i18n_common_cancel',window.comm.dialogClose]],
                success:function(did,dialog){
                    window.dialog_jlInvHistory_init(did,dialog,inv);
                }
            });
        }else if(inv.deviceTypeName=="jfyInv"){
            window.comm.dialogUrl({
                skin:"noPadding",
                id:"dialog_jfyInvHistory",
                title:"History Data("+inv.sn+")",
                url:"/device/getJfyInvHisPage",
                btns:[[window.comm.getI18n("no-more"),function(did,dialog){window.dialog_jfyInvHistory_search_More(did,dialog);},false,"btn_more dis"],['i18n_common_cancel',window.comm.dialogClose]],
                success:function(did,dialog){
                    window.dialog_jfyInvHistory_init(did,dialog,inv);
                }
            });
        }else if(inv.deviceTypeName=="pbd"){
            window.comm.dialogUrl({
                skin:"noPadding",
                id:"dialog_pbdHistory",
                title:"History Data("+inv.sn+")",
                url:"/device/getPBDHisPage",
                btns:[[window.comm.getI18n("no-more"),function(did,dialog){window.dialog_pbdHistory_search_More(did,dialog);},false,"btn_more dis"],['i18n_common_cancel',window.comm.dialogClose]],
                success:function(did,dialog){
                    window.dialog_pbdHistory_init(did,dialog,inv);
                }
            });
        }else if(inv.deviceTypeName=="eybondInv"){
            window.comm.dialogUrl({
                skin:"noPadding",
                id:"dialog_eybondInvHistory",
                title:"History Data("+inv.sn+")",
                url:"/device/getEybondInvHisPage",
                btns:[[window.comm.getI18n("no-more"),function(did,dialog){window.dialog_eybondInvHistory_search_More(did,dialog);},false,"btn_more dis"],['i18n_common_cancel',window.comm.dialogClose]],
                success:function(did,dialog){
                    window.dialog_eybondInvHistory_init(did,dialog,inv.sn);
                }
            });
        }else if(inv.deviceTypeName=="igenInv"){
            window.comm.dialogUrl({
                skin:"noPadding",
                id:"dialog_igenInvHistory",
                title:"History Data("+inv.sn+")",
                url:"/device/getIgenInvHisPage",
                btns:[[window.comm.getI18n("no-more"),function(did,dialog){window.dialog_igenInvHistory_search_More(did,dialog);},false,"btn_more dis"],['i18n_common_cancel',window.comm.dialogClose]],
                success:function(did,dialog){
                    window.dialog_igenInvHistory_init(did,dialog,inv.sn);
                }
            });
        }else if(inv.deviceTypeName=="pumper"){
            window.comm.dialogUrl({
                skin:"noPadding",
                id:"dialog_pumperHistory",
                title:"History Data("+inv.sn+")",
                url:"/device/getPumperHisPage",
                btns:[[window.comm.getI18n("no-more"),function(did,dialog){window.dialog_pumperHistory_search_More(did,dialog);},false,"btn_more dis"],['i18n_common_cancel',window.comm.dialogClose]],
                success:function(did,dialog){
                    window.dialog_pumperHistory_init(did,dialog,inv.sn);
                }
            });
}};})();
 
@tga82 I barely got the code to fit in the 10000 character limit on this board, I had to take out a few formatted tabs and spaces here and there. I have only been able to test on the demo server. Please let me know if you have any issues.
 
Back
Top