• V
    Vlasta

    <facepalm> For some reason I thought that device name = data source name... </facepalm>

    Of course, if I change device names, I can filter by device and the rest becomes much easier.

    Your example works just fine too, even with my over complicated configuration.

    Thanks heaps!

    posted in Dashboard Designer & Custom AngularJS Pages read more
  • V
    Vlasta

    Hi Jared,

    Yes, by 'tags' I mean data points (different SCADA systems call it different things...)
    I'm using 2.8 because its licensing model fits better with what I'm doing. Upgrade is not likely to happen any time soon.

    What I have:
    single modbus channel ('data source') has a number of field devices attached to it. Devices are identical, each has unique slave ID. Data point names look like 'dev1_property1', 'dev1_property2', 'dev2_property1'...

    What I want to do:
    drop down list listing 'human legible' device name (so 'dev1' will be 'device name 1', and so on)
    Based on the selection, I want to populate the rest of the page with values of the data points associated with that device.

    So, only one drop down list, and some code that will use the value of the selected item, concatenate it with the suffix to form a data point name, and then query API for the value(s).
    I tried using standard html dropdown list, but got stuck with feeding the concatenated string to the API.
    Tried using Angular JS version of the dropdown, but got stuck with the custom model.

    If I'm doing it all wrong, and there is a better approach, I'm open for suggestions :-)

    posted in Dashboard Designer & Custom AngularJS Pages read more
  • V
    Vlasta

    I'm trying to set up a custom dropdown box for my dashboard. Something along the lines of select a device, and then display points related to that device. I think I need a custom model for it in Angular looking something like

    {id:1, name: field_device1, value:tag_prefix_1 }

    where I will have 'field_device1' in the drop down, and use 'tag_prefix_1'+'tag_suffix' to get tag names.

    (Device here is a physical device. I have a number of devices on the same modbus channel that are identical save for the slave ID. Tags are also identical, only having different prefix.)

    I have two questions:

    1. Am I correct to think I need a custom model for this (not new to programming, but new to AngularJS)?

    2. all the tutorials I can find seem to refer to mango 3.3, and I'm using 2.8. In my version, where should I put my customModule.js, and do I (and how) link it to app.js? Or should I just add my custom function to app.js?

    posted in Dashboard Designer & Custom AngularJS Pages read more
  • V
    Vlasta

    Re: Pop up window (face plate)

    I'm trying to set up a custom dropdown box for my dashboard. Something along the lines of select a device, and then display points related to that device. I think I need a custom model for it in Angular looking something like

    {id:1, name: field_device1, value:tag_prefix_1 }
    where I will have 'field_device1' in the drop down, and use 'tag_prefix_1'+'tag_suffix' to get tag names.

    I have two questions:

    1. Am I correct to think I need a custom model for this (not new to programming, but new to AngularJS)?

    2. all the tutorials I can find seem to refer to mango 3.3, and I'm using 2.8. In my version, where should I put my customModule.js, and do I (and how) link it to app.js? Or should I just add my custom function to app.js?

    posted in Wishlist read more
  • V
    Vlasta

    Thanks Craig.
    Using SVG is soooo much better idea than canvas.
    Works perfect!

    posted in Dashboard Designer & Custom AngularJS Pages read more
  • V
    Vlasta

    I'm trying to do a simple graphical presentation of an angle stored in a mango point as a line drawn at that angle. I created meta points to store calculated coordinates for my lines. I'd like to use HTML5 'canvas' (again, the easiest way to achieve this). I'm stuck at trying to pass point values to the script:

    I get mango values for offset:
    <ma-get-point-value point-xid="offset_left" point="left"></ma-get-point-value>
    <ma-get-point-value point-xid="offset_right" point="right"></ma-get-point-value>

    and I want to pass them to a canvas:
    <canvas id="myCanvas" width="100" height="100" style="border:1px solid #d3d3d3;"></canvas>

    <script>
    var c = document.getElementById("myCanvas");
    var ctx = c.getContext("2d");

    ctx.beginPath();
    ctx.moveTo(0, {{left.value}});
    ctx.lineTo(100, {{right.value}});
    ctx.stroke();

    </script>

    I tried using ng-init or <p id="...">, getElementByID, but no luck.

    Any suggestions?

    (I'm using Mango 2.8 on CentOS, and testing in Firefox)

    posted in Dashboard Designer & Custom AngularJS Pages read more
  • V
    Vlasta

    Thanks, both answers helped a lot.
    Is there a way to make System Settings -> 'Purge now...' remove more than 100000 records per run?

    posted in User help read more
  • V
    Vlasta

    I need to selectively remove a large portion of data points (~50k points, so doing it manually is not an option).

    I exported all my points as a csv file, and separated ones I want to keep, and ones I want to purge.

    I was hoping I could remove points via csv file import/export, but this does not seem to be possible. What is the best way to do a selective point deletion? Is it possible (and advisable) to delete directly from the database?

    Optionally, since I don't yet have any data associated with these points, could I delete the whole lot, and use csv import to only bring back points I need? If so, how would I delete it?

    posted in User help read more