Facility Control

 View Only
  • 1.  Struct Table of Dropdowns acting funny.

    Posted 11-04-2024 10:18

    I made a param that is a struct of "STRING_STRING_CHOICE" contraints.  It's acting a bit strange though.

    When I make a struct table out of it, it adds a "1" to all the column headers, 

    Also, the rowheader param won't work for it.

    <params>
             <param access="1" constrainttype="STRUCT" name="Womens Session Template" oid="womensSession.template" stream="false" type="STRUCT" widget="table">
          <value>
             <subparam access="1" constraintstrict="false" constrainttype="STRING_STRING_CHOICE" maxlength="0" name="Vault" precision="0" suboid="vaultSelector" type="STRING_ARRAY" widget="combo">
                <value>None</value>
                <constraint key="0">None</constraint>
                <constraint key="team1">Team 1</constraint>
                <constraint key="team2">Team 2</constraint>
                <constraint key="team3">Team 3</constraint>
                <constraint key="team4">Team 4</constraint>
                <constraint key="team5">Team 5</constraint>
                <constraint key="team6">Team 6</constraint>
                <constraint key="team7">Team 7</constraint>
                <constraint key="team8">Team 8</constraint>
             </subparam>
             <subparam access="1" constraintstrict="false" constrainttype="STRING_STRING_CHOICE" maxlength="0" name="Bars" precision="0" suboid="barsSelector" type="STRING_ARRAY" widget="combo">
                <value>None</value>
                <constraint key="0">None</constraint>
                <constraint key="team1">Team 1</constraint>
                <constraint key="team2">Team 2</constraint>
                <constraint key="team3">Team 3</constraint>
                <constraint key="team4">Team 4</constraint>
                <constraint key="team5">Team 5</constraint>
                <constraint key="team6">Team 6</constraint>
                <constraint key="team7">Team 7</constraint>
                <constraint key="team8">Team 8</constraint>
             </subparam>
             <subparam access="1" constraintstrict="false" constrainttype="STRING_STRING_CHOICE" maxlength="0" name="Beam" precision="0" suboid="beamSelector" type="STRING_ARRAY" widget="combo">
                <value>None</value>
                <constraint key="0">None</constraint>
                <constraint key="team1">Team 1</constraint>
                <constraint key="team2">Team 2</constraint>
                <constraint key="team3">Team 3</constraint>
                <constraint key="team4">Team 4</constraint>
                <constraint key="team5">Team 5</constraint>
                <constraint key="team6">Team 6</constraint>
                <constraint key="team7">Team 7</constraint>
                <constraint key="team8">Team 8</constraint>
             </subparam>
             <subparam access="1" constraintstrict="false" constrainttype="STRING_STRING_CHOICE" maxlength="0" name="Floor" precision="0" suboid="floorSelector" type="STRING_ARRAY" widget="combo">
                <value>None</value>
                <constraint key="0">None</constraint>
                <constraint key="team1">Team 1</constraint>
                <constraint key="team2">Team 2</constraint>
                <constraint key="team3">Team 3</constraint>
                <constraint key="team4">Team 4</constraint>
                <constraint key="team5">Team 5</constraint>
                <constraint key="team6">Team 6</constraint>
                <constraint key="team7">Team 7</constraint>
                <constraint key="team8">Team 8</constraint>
             </subparam>
          </value>
       </param>
             <param access="1" constrainttype="STRUCT" name="Womens Session 1" oid="womensSession1" stream="false" templateoid="womensSession.template" type="STRUCT_ARRAY" widget="table">
          <value>
             <subparam suboid="vaultSelector">
                <value>team1</value>
             </subparam>
             <subparam suboid="barsSelector">
                <value>team2</value>
             </subparam>
             <subparam suboid="beamSelector">
                <value>team3</value>
             </subparam>
             <subparam suboid="floorSelector">
                <value>team4</value>
             </subparam>
          </value>
          <value>
             <subparam suboid="vaultSelector">
                <value>team2</value>
             </subparam>
             <subparam suboid="barsSelector">
                <value>team3</value>
             </subparam>
             <subparam suboid="beamSelector">
                <value>team4</value>
             </subparam>
             <subparam suboid="floorSelector">
                <value>team1</value>
             </subparam>
          </value>
          <value>
             <subparam suboid="vaultSelector">
                <value>team3</value>
             </subparam>
             <subparam suboid="barsSelector">
                <value>team4</value>
             </subparam>
             <subparam suboid="beamSelector">
                <value>team1</value>
             </subparam>
             <subparam suboid="floorSelector">
                <value>team2</value>
             </subparam>
          </value>
          <value>
             <subparam suboid="vaultSelector">
                <value>team4</value>
             </subparam>
             <subparam suboid="barsSelector">
                <value>team1</value>
             </subparam>
             <subparam suboid="beamSelector">
                <value>team2</value>
             </subparam>
             <subparam suboid="floorSelector">
                <value>team3</value>
             </subparam>
          </value>
          <value>
             <subparam suboid="vaultSelector">
                <value>team1</value>
             </subparam>
             <subparam suboid="barsSelector">
                <value>team1</value>
             </subparam>
             <subparam suboid="beamSelector">
                <value>team1</value>
             </subparam>
             <subparam suboid="floorSelector">
                <value>team1</value>
             </subparam>
          </value>
          <value>
             <subparam suboid="vaultSelector">
                <value>team1</value>
             </subparam>
             <subparam suboid="barsSelector">
                <value>team1</value>
             </subparam>
             <subparam suboid="beamSelector">
                <value>team1</value>
             </subparam>
             <subparam suboid="floorSelector">
                <value>team1</value>
             </subparam>
          </value>
          <value>
             <subparam suboid="vaultSelector">
                <value>team1</value>
             </subparam>
             <subparam suboid="barsSelector">
                <value>team1</value>
             </subparam>
             <subparam suboid="beamSelector">
                <value>team1</value>
             </subparam>
             <subparam suboid="floorSelector">
                <value>team1</value>
             </subparam>
          </value>
          <value>
             <subparam suboid="vaultSelector">
                <value>team1</value>
             </subparam>
             <subparam suboid="barsSelector">
                <value>team1</value>
             </subparam>
             <subparam suboid="beamSelector">
                <value>team1</value>
             </subparam>
             <subparam suboid="floorSelector">
                <value>team1</value>
             </subparam>
          </value>
       </param>
    </params>

    I don't see any examples of this.  Is this supported by dashboard?

    Here's the code:



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


  • 2.  RE: Struct Table of Dropdowns acting funny.

    Posted 11-04-2024 11:32

    The issue isn't related to the STRING_STRING_CHOICE constraint.  The problem is that you are using an STRING_ARRAY inside of a STRUCT.  In this case, DashBoard is processing the sub-parameter as though it will have multiple entries (since it is an array) and attaching the array element index as a suffix to the column name.  The solution is to declare the sub-params as STRING since each sub-param will have only one value.  One quirk with your data format is that you will need to change from using a <value/> tag nested in the <param/> tag to using a value attribute directly inside of the <param/> tag.

          <params>
             <param access="1" constrainttype="STRUCT" name="Womens Session Template" oid="womensSession.template" stream="false" type="STRUCT" widget="table">
                <value>
                   <subparam access="1" constraintstrict="false" constrainttype="STRING_STRING_CHOICE" maxlength="0" name="Vault" precision="0" suboid="vaultSelector" type="STRING" value="None" widget="combo">
                      <constraint key="0">None</constraint>
                      <constraint key="team1">Team 1</constraint>
                      <constraint key="team2">Team 2</constraint>
                      <constraint key="team3">Team 3</constraint>
                      <constraint key="team4">Team 4</constraint>
                      <constraint key="team5">Team 5</constraint>
                      <constraint key="team6">Team 6</constraint>
                      <constraint key="team7">Team 7</constraint>
                      <constraint key="team8">Team 8</constraint>
                   </subparam>
                   <subparam access="1" constraintstrict="false" constrainttype="STRING_STRING_CHOICE" maxlength="0" name="Bars" precision="0" suboid="barsSelector" type="STRING" value="None" widget="combo">
                      <constraint key="0">None</constraint>
                      <constraint key="team1">Team 1</constraint>
                      <constraint key="team2">Team 2</constraint>
                      <constraint key="team3">Team 3</constraint>
                      <constraint key="team4">Team 4</constraint>
                      <constraint key="team5">Team 5</constraint>
                      <constraint key="team6">Team 6</constraint>
                      <constraint key="team7">Team 7</constraint>
                      <constraint key="team8">Team 8</constraint>
                   </subparam>
                   <subparam access="1" constraintstrict="false" constrainttype="STRING_STRING_CHOICE" maxlength="0" name="Beam" precision="0" suboid="beamSelector" type="STRING" value="None" widget="combo">
                      <constraint key="0">None</constraint>
                      <constraint key="team1">Team 1</constraint>
                      <constraint key="team2">Team 2</constraint>
                      <constraint key="team3">Team 3</constraint>
                      <constraint key="team4">Team 4</constraint>
                      <constraint key="team5">Team 5</constraint>
                      <constraint key="team6">Team 6</constraint>
                      <constraint key="team7">Team 7</constraint>
                      <constraint key="team8">Team 8</constraint>
                   </subparam>
                   <subparam access="1" constraintstrict="false" constrainttype="STRING_STRING_CHOICE" maxlength="0" name="Floor" precision="0" suboid="floorSelector" type="STRING" value="None" widget="combo">
                      <constraint key="0">None</constraint>
                      <constraint key="team1">Team 1</constraint>
                      <constraint key="team2">Team 2</constraint>
                      <constraint key="team3">Team 3</constraint>
                      <constraint key="team4">Team 4</constraint>
                      <constraint key="team5">Team 5</constraint>
                      <constraint key="team6">Team 6</constraint>
                      <constraint key="team7">Team 7</constraint>
                      <constraint key="team8">Team 8</constraint>
                   </subparam>
                </value>
             </param>
             <param access="1" constrainttype="STRUCT" name="Womens Session 1" oid="womensSession1" stream="false" templateoid="womensSession.template" type="STRUCT_ARRAY" widget="table">
                <value>
                   <subparam suboid="vaultSelector" value="team1"/>
                   <subparam suboid="barsSelector" value="team2"/>
                   <subparam suboid="beamSelector" value="team3"/>
                   <subparam suboid="floorSelector" value="team4"/>
                </value>
                <value>
                   <subparam suboid="vaultSelector" value="team1"/>
                   <subparam suboid="barsSelector" value="team2"/>
                   <subparam suboid="beamSelector" value="team3"/>
                   <subparam suboid="floorSelector" value="team4"/>
                </value>
                <value>
                   <subparam suboid="vaultSelector" value="team1"/>
                   <subparam suboid="barsSelector" value="team2"/>
                   <subparam suboid="beamSelector" value="team3"/>
                   <subparam suboid="floorSelector" value="team4"/>
                </value>
                <value>
                   <subparam suboid="vaultSelector" value="team1"/>
                   <subparam suboid="barsSelector" value="team2"/>
                   <subparam suboid="beamSelector" value="team3"/>
                   <subparam suboid="floorSelector" value="team4"/>
                </value>
                <value>
                   <subparam suboid="vaultSelector" value="team1"/>
                   <subparam suboid="barsSelector" value="team2"/>
                   <subparam suboid="beamSelector" value="team3"/>
                   <subparam suboid="floorSelector" value="team4"/>
                </value>
                <value>
                   <subparam suboid="vaultSelector" value="team1"/>
                   <subparam suboid="barsSelector" value="team2"/>
                   <subparam suboid="beamSelector" value="team3"/>
                   <subparam suboid="floorSelector" value="team4"/>
                </value>
                <value>
                   <subparam suboid="vaultSelector" value="team1"/>
                   <subparam suboid="barsSelector" value="team2"/>
                   <subparam suboid="beamSelector" value="team3"/>
                   <subparam suboid="floorSelector" value="team4"/>
                </value>
                <value>
                   <subparam suboid="vaultSelector" value="team1"/>
                   <subparam suboid="barsSelector" value="team2"/>
                   <subparam suboid="beamSelector" value="team3"/>
                   <subparam suboid="floorSelector" value="team4"/>
                </value>
             </param>
          </params>


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