Facility Control

 View Only
  • 1.  Hide paramater from datalinq

    Posted 13 days ago

    I tried the advice here: Hide from datalinq

    with the stream="false" option in my params.

    However, it only seems to work if I do it with one or two params. 

    It stops working if I block too many.

    Also, does it work for subparams?

    There's a lot of params in this dashboard, but I really only want to send a limited amount.



    ------------------------------
    David Levy
    Lead Real Time Graphics Developer
    ESPN
    Charlotte United States
    ------------------------------


  • 2.  RE: Hide paramater from datalinq

    Posted 13 days ago

    It seems like I can block most things, but struct tables can't be blocked.



    ------------------------------
    David Levy
    Lead Real Time Graphics Developer
    ESPN
    Charlotte United States
    ------------------------------



  • 3.  RE: Hide paramater from datalinq

    Posted 13 days ago

    Hi David.

    I have good news and bad news.  The bad news is that the way this property is handled, it needs to be applied separately to every instance of every sub-param in the struct.  The good news is that the property is exposed via the params.getParam(OID, INDEX).setStream(true/false) script call.  

    This example panel turns-off streaming for most parameters in the struct right after they are created.  The relevant part is in the <api/> tag at the top:

    for (var i = 0; i < params.getElementCount('playerList'); i++) {
       params.getParam('playerList.' + i + '.name', 0).setStream(false);
       params.getParam('playerList.' + i + '.identifier', 0).setStream(false);
       params.getParam('playerList.' + i + '.position', 0).setStream(false);
    }
    

    The entire panel is here:

    <abs contexttype="opengear" dblinqport="2222" jsonport="5678" keepalive="false">
       <meta>
          <api immediate="true">for (var i = 0; i &lt; params.getElementCount('playerList'); i++) {
       params.getParam('playerList.' + i + '.name', 0).setStream(false);
       params.getParam('playerList.' + i + '.identifier', 0).setStream(false);
       params.getParam('playerList.' + i + '.position', 0).setStream(false);
    }
    </api>
          <params>
             <param access="1" name="Player Definition" oid="playerDefinition" stream="false" type="STRUCT" widget="table">
                <value>
                   <subparam access="1" maxlength="-1" name="Race Name" stream="false" suboid="name" type="STRING" value="Test" widget="default"/>
                   <subparam access="1" maxlength="-1" name="Id" suboid="identifier" type="STRING" value="Test" widget="default"/>
                   <subparam access="1" constrainttype="STRING_CHOICE" maxlength="-1" name="Position" suboid="position" type="STRING" value="Test" widget="combo">
                      <constraint>Value 1</constraint>
                      <constraint>Value 2</constraint>
                      <constraint>Value 3</constraint>
                   </subparam>
                   <subparam access="1" constrainttype="STRUCT" name="stats" suboid="stats" type="STRUCT_ARRAY" widget="table">
                      <value>
                         <subparam access="1" maxlength="-1" name="Stat Name" suboid="name" type="STRING" value="Test" widget="default"/>
                         <subparam access="1" constrainttype="INT_NULL" name="Stat Value" precision="0" suboid="value" type="INT16" value="0" widget="default"/>
                      </value>
                   </subparam>
                </value>
             </param>
             <param access="1" constrainttype="STRUCT" name="Player Definition" oid="playerList" structtype="playerInfo" templateoid="playerDefinition" type="STRUCT_ARRAY" widget="table">
                <value>
                   <subparam stream="false" suboid="name" value="Name 0"/>
                   <subparam suboid="identifier" value="ID 0"/>
                   <subparam suboid="position" value="Position 0"/>
                   <subparam suboid="stats">
                      <value>
                         <subparam suboid="name" value="Stat 1"/>
                         <subparam suboid="value" value="0"/>
                      </value>
                   </subparam>
                </value>
                <value>
                   <subparam suboid="name" value="Name 1"/>
                   <subparam suboid="identifier" value="ID 1"/>
                   <subparam suboid="position" value="Position 1"/>
                   <subparam suboid="stats">
                      <value>
                         <subparam suboid="name" value="Stat 1"/>
                         <subparam suboid="value" value="0"/>
                      </value>
                      <value>
                         <subparam suboid="name" value="Stat 1"/>
                         <subparam suboid="value" value="0"/>
                      </value>
                      <value>
                         <subparam suboid="name" value="Stat 1"/>
                         <subparam suboid="value" value="0"/>
                      </value>
                      <value>
                         <subparam suboid="name" value="Stat 1"/>
                         <subparam suboid="value" value="0"/>
                      </value>
                   </subparam>
                </value>
                <value>
                   <subparam suboid="name" value="Name 2"/>
                   <subparam suboid="identifier" value="ID 2"/>
                   <subparam suboid="position" value="Position 2"/>
                   <subparam suboid="stats">
                      <value>
                         <subparam suboid="name" value="Stat 1"/>
                         <subparam suboid="value" value="0"/>
                      </value>
                   </subparam>
                </value>
                <value>
                   <subparam suboid="name" value="Name 3"/>
                   <subparam suboid="identifier" value="ID 3"/>
                   <subparam suboid="position" value="Position 3"/>
                   <subparam suboid="stats">
                      <value>
                         <subparam suboid="name" value="Stat 1"/>
                         <subparam suboid="value" value="0"/>
                      </value>
                   </subparam>
                </value>
                <value>
                   <subparam suboid="name" value="Name 4"/>
                   <subparam suboid="identifier" value="ID 4"/>
                   <subparam suboid="position" value="Position 4"/>
                   <subparam suboid="stats">
                      <value>
                         <subparam suboid="name" value="Stat 1"/>
                         <subparam suboid="value" value="0"/>
                      </value>
                   </subparam>
                </value>
                <value>
                   <subparam suboid="name" value="Name 5"/>
                   <subparam suboid="identifier" value="ID 5"/>
                   <subparam suboid="position" value="Position 5"/>
                   <subparam suboid="stats">
                      <value>
                         <subparam suboid="name" value="Stat 1"/>
                         <subparam suboid="value" value="0"/>
                      </value>
                   </subparam>
                </value>
             </param>
             <param access="1" constrainttype="INT_NULL" name="Selection" oid="selection" precision="0" type="INT16" value="1" widget="default"/>
          </params>
          <ogscript handles="onload">function handler(tObj, rowIndex, subOid, paramObj, index)
    {
       ogscript.debug("CHANGE TO: " + subOid + " [" + rowIndex + "]");
    }
    
    var raceParam = params.getParam('playerList', 0);
    raceParam.addSubParamListener(raceParam, handler, null);</ogscript>
          <listener autostart="true" connecthost="localhost" connectport="2222" delimiter="/&gt;" delimitertype="string" name="&lt;stat " syncword="3C">
             <task tasktype="ogscript">if (event.isMessageEvent()) {
       ogscript.debug("GOT " + event.getBytesAsString());
    }</task>
          </listener>
       </meta>
       <param expand="true" height="308" left="17" oid="playerList" showlabel="false" top="17" width="448">
          <config key="w.selectionparam">selection</config>
          <config key="w.columns">identifier,name,position</config>
       </param>
       <button buttontype="push" height="53" left="18" name="Add" top="337" width="297">
          <task tasktype="ogscript">var structCount = params.getElementCount('playerList');
    
    if (structCount == 1 &amp;&amp; params.getValue('playerList.0.identifier', 0) == "") // If this is the first element and it has not been set yet
    {
       structCount = 0;
    }
    
    var newValue = {
       "name": "Name " + structCount,
       "identifier": "ID " + structCount,
       "position": "Position " + structCount,
       "stats": [
          {
            "name": "Stat 1",
            "value": 0
          }
        ]
       };
    
    params.setValue('playerList', structCount, newValue);</task>
       </button>
       <button buttontype="push" height="54" left="318" name="Clear" top="337" width="140">
          <task tasktype="ogscript">params.setValue('selection', 0, 0);
    var empty = [{"name":"", "identifier":"", "position":"", "stats":[{"name": "", "value": 0}]}];
    params.setAllValues('playerList', empty);</task>
       </button>
       <param expand="true" height="308" id="stats-table" left="488" oid="playerList.0.stats" showlabel="false" top="18" width="448"/>
       <param expand="true" height="47" left="964" oid="selection" runtasksonload="true" showlabel="false" top="8" width="87">
          <task tasktype="ogscript">params.updateParamView('stats-table', 'playerList.' + params.getValue('selection', 0) + '.stats', 0);</task>
       </param>
       <button buttontype="push" height="53" left="488" name="Add" top="335" width="297">
          <task tasktype="ogscript">var selection = params.getValue('selection', 0);
    var structCount = params.getElementCount('playerList.' + selection + '.stats');
    
    var newValue = 
          {
            "name": "Stat 1",
            "value": 0
          };
    
    params.setValue('playerList.' + selection + '.stats', structCount, newValue);</task>
       </button>
       <button buttontype="push" height="54" left="798" name="Clear" top="334" width="140">
          <task tasktype="ogscript">var selection = params.getValue('selection', 0);
    var empty = [{"name": "", "value": 0}];
    params.setAllValues('playerList.' + selection + '.stats', empty);</task>
       </button>
       <button buttontype="push" height="53" left="24" name="Add with setAllValues" top="416" width="297">
          <task tasktype="ogscript">var oldValue = params.getAllValues('playerList');
    
    var newArray = [];
    for (var i = 0; i &lt; oldValue.length; i++)
    {
       newArray.push(oldValue[i]);
    }
    
    var newValue = {
       "name": "Name " + oldValue.length,
       "identifier": "ID " + oldValue.length,
       "position": "Position " + oldValue.length,
       "stats": [
          {
            "name": "Stat 1",
            "value": 0
          }
        ]
       };
    newArray.push(newValue);
    params.setAllValues('playerList', newArray);</task>
       </button>
    </abs>
    



    ------------------------------
    James Peltzer
    Ross Video
    ------------------------------



  • 4.  RE: Hide paramater from datalinq

    Posted 13 days ago

    Ok, I manually added the attribute to all params and subparams, but some are still coming through and I can't figure out why.

    Here's a param that makes it through for some reason:

    <param access="1" constrainttype="STRUCT" name="Teams" oid="teams" stream="false" templateoid="teamTemplate" type="STRUCT_ARRAY" widget="table">
       <value>
          <subparam stream="false" suboid="applicationColor" value="#C17A48"/>
          <subparam stream="false" suboid="rank" value="1"/>
          <subparam stream="false" suboid="tricode" value="FLA"/>
          <subparam stream="false" suboid="city" value="FLORIDA"/>
          <subparam stream="false" suboid="name" value="FLORIDA"/>
          <subparam stream="false" suboid="mascot" value="Gators"/>
          <subparam stream="false" suboid="logo" value="file:/T:/MasterLogos/NCAA/Primary_Logos/FLORIDA.PNG"/>
          <subparam stream="false" suboid="altLogo" value="file:/T:/MasterLogos/NCAA/Alternate_Logos/FLORIDA.PNG"/>
          <subparam stream="false" suboid="swatch" value="file:/T:/MasterSwatches/NCAA/Primary_Logos/FLORIDA.PNG"/>
          <subparam stream="false" suboid="swatchSelection" value="0"/>
          <subparam stream="false" suboid="headshotFolder" value=""/>
          <subparam stream="false" suboid="sessionSelector" value="1"/>
          <subparam stream="false" suboid="wVaultScore" value="0.0"/>
          <subparam stream="false" suboid="mVaultScore" value="0.0"/>
          <subparam stream="false" suboid="unevenBarsScore" value="0.0"/>
          <subparam stream="false" suboid="beamScore" value="0.0"/>
          <subparam stream="false" suboid="wFloorScore" value="0.0"/>
          <subparam stream="false" suboid="mFloorScore" value="0.0"/>
          <subparam stream="false" suboid="pommelHorseScore" value="0.0"/>
          <subparam stream="false" suboid="stillRingsScore" value="0.0"/>
          <subparam stream="false" suboid="parallelBarsScore" value="0.0"/>
          <subparam stream="false" suboid="horizBarScore" value="0.0"/>
       </value>
       <value>
          <subparam stream="false" suboid="applicationColor" value="#636363"/>
          <subparam stream="false" suboid="rank" value=""/>
          <subparam stream="false" suboid="tricode" value=""/>
          <subparam stream="false" suboid="city" value=""/>
          <subparam stream="false" suboid="name" value=""/>
          <subparam stream="false" suboid="mascot" value=""/>
          <subparam stream="false" suboid="logo" value=""/>
          <subparam stream="false" suboid="altLogo" value=""/>
          <subparam stream="false" suboid="swatch" value=""/>
          <subparam stream="false" suboid="swatchSelection" value="0"/>
          <subparam stream="false" suboid="headshotFolder" value=""/>
          <subparam stream="false" suboid="sessionSelector" value="1"/>
          <subparam stream="false" suboid="wVaultScore" value="0.0"/>
          <subparam stream="false" suboid="mVaultScore" value="0.0"/>
          <subparam stream="false" suboid="unevenBarsScore" value="0.0"/>
          <subparam stream="false" suboid="beamScore" value="0.0"/>
          <subparam stream="false" suboid="wFloorScore" value="0.0"/>
          <subparam stream="false" suboid="mFloorScore" value="0.0"/>
          <subparam stream="false" suboid="pommelHorseScore" value="0.0"/>
          <subparam stream="false" suboid="stillRingsScore" value="0.0"/>
          <subparam stream="false" suboid="parallelBarsScore" value="0.0"/>
          <subparam stream="false" suboid="horizBarScore" value="0.0"/>
       </value>
       <value>
          <subparam stream="false" suboid="applicationColor" value="#FCD9D9"/>
          <subparam stream="false" suboid="rank" value=""/>
          <subparam stream="false" suboid="tricode" value=""/>
          <subparam stream="false" suboid="city" value=""/>
          <subparam stream="false" suboid="name" value=""/>
          <subparam stream="false" suboid="mascot" value=""/>
          <subparam stream="false" suboid="logo" value=""/>
          <subparam stream="false" suboid="altLogo" value=""/>
          <subparam stream="false" suboid="swatch" value=""/>
          <subparam stream="false" suboid="swatchSelection" value="0"/>
          <subparam stream="false" suboid="headshotFolder" value=""/>
          <subparam stream="false" suboid="sessionSelector" value="1"/>
          <subparam stream="false" suboid="wVaultScore" value="0.0"/>
          <subparam stream="false" suboid="mVaultScore" value="0.0"/>
          <subparam stream="false" suboid="unevenBarsScore" value="0.0"/>
          <subparam stream="false" suboid="beamScore" value="0.0"/>
          <subparam stream="false" suboid="wFloorScore" value="0.0"/>
          <subparam stream="false" suboid="mFloorScore" value="0.0"/>
          <subparam stream="false" suboid="pommelHorseScore" value="0.0"/>
          <subparam stream="false" suboid="stillRingsScore" value="0.0"/>
          <subparam stream="false" suboid="parallelBarsScore" value="0.0"/>
          <subparam stream="false" suboid="horizBarScore" value="0.0"/>
       </value>
       <value>
          <subparam stream="false" suboid="applicationColor" value="#E40F0F"/>
          <subparam stream="false" suboid="rank" value=""/>
          <subparam stream="false" suboid="tricode" value=""/>
          <subparam stream="false" suboid="city" value=""/>
          <subparam stream="false" suboid="name" value=""/>
          <subparam stream="false" suboid="mascot" value=""/>
          <subparam stream="false" suboid="logo" value=""/>
          <subparam stream="false" suboid="altLogo" value=""/>
          <subparam stream="false" suboid="swatch" value=""/>
          <subparam stream="false" suboid="swatchSelection" value="0"/>
          <subparam stream="false" suboid="headshotFolder" value=""/>
          <subparam stream="false" suboid="sessionSelector" value="1"/>
          <subparam stream="false" suboid="wVaultScore" value="0.0"/>
          <subparam stream="false" suboid="mVaultScore" value="0.0"/>
          <subparam stream="false" suboid="unevenBarsScore" value="0.0"/>
          <subparam stream="false" suboid="beamScore" value="0.0"/>
          <subparam stream="false" suboid="wFloorScore" value="0.0"/>
          <subparam stream="false" suboid="mFloorScore" value="0.0"/>
          <subparam stream="false" suboid="pommelHorseScore" value="0.0"/>
          <subparam stream="false" suboid="stillRingsScore" value="0.0"/>
          <subparam stream="false" suboid="parallelBarsScore" value="0.0"/>
          <subparam stream="false" suboid="horizBarScore" value="0.0"/>
       </value>
       <value>
          <subparam stream="false" suboid="applicationColor" value="#E40F0F"/>
          <subparam stream="false" suboid="rank" value=""/>
          <subparam stream="false" suboid="tricode" value=""/>
          <subparam stream="false" suboid="city" value=""/>
          <subparam stream="false" suboid="name" value=""/>
          <subparam stream="false" suboid="mascot" value=""/>
          <subparam stream="false" suboid="logo" value=""/>
          <subparam stream="false" suboid="altLogo" value=""/>
          <subparam stream="false" suboid="swatch" value=""/>
          <subparam stream="false" suboid="swatchSelection" value="0"/>
          <subparam stream="false" suboid="headshotFolder" value=""/>
          <subparam stream="false" suboid="sessionSelector" value="1"/>
          <subparam stream="false" suboid="wVaultScore" value="0.0"/>
          <subparam stream="false" suboid="mVaultScore" value="0.0"/>
          <subparam stream="false" suboid="unevenBarsScore" value="0.0"/>
          <subparam stream="false" suboid="beamScore" value="0.0"/>
          <subparam stream="false" suboid="wFloorScore" value="0.0"/>
          <subparam stream="false" suboid="mFloorScore" value="0.0"/>
          <subparam stream="false" suboid="pommelHorseScore" value="0.0"/>
          <subparam stream="false" suboid="stillRingsScore" value="0.0"/>
          <subparam stream="false" suboid="parallelBarsScore" value="0.0"/>
          <subparam stream="false" suboid="horizBarScore" value="0.0"/>
       </value>
       <value>
          <subparam stream="false" suboid="applicationColor" value="#E40F0F"/>
          <subparam stream="false" suboid="rank" value=""/>
          <subparam stream="false" suboid="tricode" value=""/>
          <subparam stream="false" suboid="city" value=""/>
          <subparam stream="false" suboid="name" value=""/>
          <subparam stream="false" suboid="mascot" value=""/>
          <subparam stream="false" suboid="logo" value=""/>
          <subparam stream="false" suboid="altLogo" value=""/>
          <subparam stream="false" suboid="swatch" value=""/>
          <subparam stream="false" suboid="swatchSelection" value="0"/>
          <subparam stream="false" suboid="headshotFolder" value=""/>
          <subparam stream="false" suboid="sessionSelector" value="1"/>
          <subparam stream="false" suboid="wVaultScore" value="0.0"/>
          <subparam stream="false" suboid="mVaultScore" value="0.0"/>
          <subparam stream="false" suboid="unevenBarsScore" value="0.0"/>
          <subparam stream="false" suboid="beamScore" value="0.0"/>
          <subparam stream="false" suboid="wFloorScore" value="0.0"/>
          <subparam stream="false" suboid="mFloorScore" value="0.0"/>
          <subparam stream="false" suboid="pommelHorseScore" value="0.0"/>
          <subparam stream="false" suboid="stillRingsScore" value="0.0"/>
          <subparam stream="false" suboid="parallelBarsScore" value="0.0"/>
          <subparam stream="false" suboid="horizBarScore" value="0.0"/>
       </value>
       <value>
          <subparam stream="false" suboid="applicationColor" value="#E40F0F"/>
          <subparam stream="false" suboid="rank" value=""/>
          <subparam stream="false" suboid="tricode" value=""/>
          <subparam stream="false" suboid="city" value=""/>
          <subparam stream="false" suboid="name" value=""/>
          <subparam stream="false" suboid="mascot" value=""/>
          <subparam stream="false" suboid="logo" value=""/>
          <subparam stream="false" suboid="altLogo" value=""/>
          <subparam stream="false" suboid="swatch" value=""/>
          <subparam stream="false" suboid="swatchSelection" value="0"/>
          <subparam stream="false" suboid="headshotFolder" value=""/>
          <subparam stream="false" suboid="sessionSelector" value="1"/>
          <subparam stream="false" suboid="wVaultScore" value="0.0"/>
          <subparam stream="false" suboid="mVaultScore" value="0.0"/>
          <subparam stream="false" suboid="unevenBarsScore" value="0.0"/>
          <subparam stream="false" suboid="beamScore" value="0.0"/>
          <subparam stream="false" suboid="wFloorScore" value="0.0"/>
          <subparam stream="false" suboid="mFloorScore" value="0.0"/>
          <subparam stream="false" suboid="pommelHorseScore" value="0.0"/>
          <subparam stream="false" suboid="stillRingsScore" value="0.0"/>
          <subparam stream="false" suboid="parallelBarsScore" value="0.0"/>
          <subparam stream="false" suboid="horizBarScore" value="0.0"/>
       </value>
       <value>
          <subparam stream="false" suboid="applicationColor" value="#925E5E"/>
          <subparam stream="false" suboid="rank" value=""/>
          <subparam stream="false" suboid="tricode" value=""/>
          <subparam stream="false" suboid="city" value=""/>
          <subparam stream="false" suboid="name" value=""/>
          <subparam stream="false" suboid="mascot" value=""/>
          <subparam stream="false" suboid="logo" value=""/>
          <subparam stream="false" suboid="altLogo" value=""/>
          <subparam stream="false" suboid="swatch" value=""/>
          <subparam stream="false" suboid="swatchSelection" value="0"/>
          <subparam stream="false" suboid="headshotFolder" value=""/>
          <subparam stream="false" suboid="sessionSelector" value="1"/>
          <subparam stream="false" suboid="wVaultScore" value="0.0"/>
          <subparam stream="false" suboid="mVaultScore" value="0.0"/>
          <subparam stream="false" suboid="unevenBarsScore" value="0.0"/>
          <subparam stream="false" suboid="beamScore" value="0.0"/>
          <subparam stream="false" suboid="wFloorScore" value="0.0"/>
          <subparam stream="false" suboid="mFloorScore" value="0.0"/>
          <subparam stream="false" suboid="pommelHorseScore" value="0.0"/>
          <subparam stream="false" suboid="stillRingsScore" value="0.0"/>
          <subparam stream="false" suboid="parallelBarsScore" value="0.0"/>
          <subparam stream="false" suboid="horizBarScore" value="0.0"/>
       </value>
    </param>
    


    ------------------------------
    David Levy
    Lead Real Time Graphics Developer
    ESPN
    Charlotte United States
    ------------------------------



  • 5.  RE: Hide paramater from datalinq

    Posted 13 days ago

    It's a byproduct of the way DashBoard processes structs.  The script mechanism I show in my example is the only way I'm aware of to apply the property thoroughly to everything in a struct array.



    ------------------------------
    James Peltzer
    Ross Video
    ------------------------------



  • 6.  RE: Hide paramater from datalinq

    Posted 13 days ago

    Is this time-limited?

    I seem to be only able to hide 5 out of 8 rosters.

    The rosters are admitted big, with 33 elements each



    ------------------------------
    David Levy
    Lead Real Time Graphics Developer
    ESPN
    Charlotte United States
    ------------------------------



  • 7.  RE: Hide paramater from datalinq

    Posted 13 days ago

    never mind, figured it out



    ------------------------------
    David Levy
    Lead Real Time Graphics Developer
    ESPN
    Charlotte United States
    ------------------------------