Hi,
I need a value list which allows the user to select multiple values. Based on this selection, I need to update the first column of a value table with 2 columns. The second column is meant for the user to input values. I am trying this in a Python toolbox.
My code looks something like that at this point:
<SPAN class="kwd" style="color: #00008b;">import</SPAN><SPAN class="pln" style="color: #000000;"> arcpy<BR /></SPAN><SPAN class="kwd" style="color: #00008b;">class</SPAN><SPAN class="pln" style="color: #000000;"> </SPAN><SPAN class="typ" style="color: #2b91af;">Tool</SPAN><SPAN class="pun" style="color: #000000;">(</SPAN><SPAN class="pln" style="color: #000000;">object</SPAN><SPAN class="pun" style="color: #000000;">):</SPAN><SPAN class="pln" style="color: #000000;"><BR /></SPAN><SPAN class="kwd" style="color: #00008b;">def</SPAN><SPAN class="pln" style="color: #000000;"> __init__</SPAN><SPAN class="pun" style="color: #000000;">(</SPAN><SPAN class="pln" style="color: #000000;">self</SPAN><SPAN class="pun" style="color: #000000;">):</SPAN><SPAN class="pln" style="color: #000000;"><BR /> </SPAN><SPAN class="str" style="color: #800000;">"""Define the tool (tool name is the name of the class)."""</SPAN><SPAN class="pln" style="color: #000000;"><BR /> self</SPAN><SPAN class="pun" style="color: #000000;">.</SPAN><SPAN class="pln" style="color: #000000;">label </SPAN><SPAN class="pun" style="color: #000000;">=</SPAN><SPAN class="pln" style="color: #000000;"> </SPAN><SPAN class="str" style="color: #800000;">"Tool"</SPAN><SPAN class="pln" style="color: #000000;"><BR /> self</SPAN><SPAN class="pun" style="color: #000000;">.</SPAN><SPAN class="pln" style="color: #000000;">description </SPAN><SPAN class="pun" style="color: #000000;">=</SPAN><SPAN class="pln" style="color: #000000;"> </SPAN><SPAN class="str" style="color: #800000;">""</SPAN><SPAN class="pln" style="color: #000000;"><BR /> self</SPAN><SPAN class="pun" style="color: #000000;">.</SPAN><SPAN class="pln" style="color: #000000;">canRunInBackground </SPAN><SPAN class="pun" style="color: #000000;">=</SPAN><SPAN class="pln" style="color: #000000;"> </SPAN><SPAN class="kwd" style="color: #00008b;">False</SPAN><SPAN class="pln" style="color: #000000;"><BR /><BR /></SPAN><SPAN class="kwd" style="color: #00008b;">def</SPAN><SPAN class="pln" style="color: #000000;"> getParameterInfo</SPAN><SPAN class="pun" style="color: #000000;">(</SPAN><SPAN class="pln" style="color: #000000;">self</SPAN><SPAN class="pun" style="color: #000000;">):</SPAN><SPAN class="pln" style="color: #000000;"><BR /> </SPAN><SPAN class="str" style="color: #800000;">"""Define parameter definitions"""</SPAN><SPAN class="pln" style="color: #000000;"><BR /> param0 </SPAN><SPAN class="pun" style="color: #000000;">=</SPAN><SPAN class="pln" style="color: #000000;"> arcpy</SPAN><SPAN class="pun" style="color: #000000;">.</SPAN><SPAN class="typ" style="color: #2b91af;">Parameter</SPAN><SPAN class="pun" style="color: #000000;">(</SPAN><SPAN class="pln" style="color: #000000;"> <BR /> displayName </SPAN><SPAN class="pun" style="color: #000000;">=</SPAN><SPAN class="pln" style="color: #000000;"> </SPAN><SPAN class="str" style="color: #800000;">"Select Fruit"</SPAN><SPAN class="pun" style="color: #000000;">,</SPAN><SPAN class="pln" style="color: #000000;"> <BR /> name </SPAN><SPAN class="pun" style="color: #000000;">=</SPAN><SPAN class="pln" style="color: #000000;"> </SPAN><SPAN class="str" style="color: #800000;">"Fruit_selection"</SPAN><SPAN class="pun" style="color: #000000;">,</SPAN><SPAN class="pln" style="color: #000000;"> <BR /> datatype </SPAN><SPAN class="pun" style="color: #000000;">=</SPAN><SPAN class="pln" style="color: #000000;"> </SPAN><SPAN class="str" style="color: #800000;">"GPString"</SPAN><SPAN class="pun" style="color: #000000;">,</SPAN><SPAN class="pln" style="color: #000000;"><BR /> parameterType </SPAN><SPAN class="pun" style="color: #000000;">=</SPAN><SPAN class="pln" style="color: #000000;"> </SPAN><SPAN class="str" style="color: #800000;">"Required"</SPAN><SPAN class="pun" style="color: #000000;">,</SPAN><SPAN class="pln" style="color: #000000;"> <BR /> direction </SPAN><SPAN class="pun" style="color: #000000;">=</SPAN><SPAN class="pln" style="color: #000000;"> </SPAN><SPAN class="str" style="color: #800000;">"Input"</SPAN><SPAN class="pun" style="color: #000000;">,</SPAN><SPAN class="pln" style="color: #000000;"><BR /> multiValue</SPAN><SPAN class="pun" style="color: #000000;">=</SPAN><SPAN class="kwd" style="color: #00008b;">True</SPAN><SPAN class="pun" style="color: #000000;">)</SPAN><SPAN class="pln" style="color: #000000;"> <BR /> param0</SPAN><SPAN class="pun" style="color: #000000;">.</SPAN><SPAN class="pln" style="color: #000000;">filter</SPAN><SPAN class="pun" style="color: #000000;">.</SPAN><SPAN class="pln" style="color: #000000;">type </SPAN><SPAN class="pun" style="color: #000000;">=</SPAN><SPAN class="pln" style="color: #000000;"> </SPAN><SPAN class="str" style="color: #800000;">"ValueList"</SPAN><SPAN class="pln" style="color: #000000;"><BR /> param0</SPAN><SPAN class="pun" style="color: #000000;">.</SPAN><SPAN class="pln" style="color: #000000;">filter</SPAN><SPAN class="pun" style="color: #000000;">.</SPAN><SPAN class="pln" style="color: #000000;">list </SPAN><SPAN class="pun" style="color: #000000;">=</SPAN><SPAN class="pln" style="color: #000000;"> </SPAN><SPAN class="pun" style="color: #000000;">[</SPAN><SPAN class="str" style="color: #800000;">"Apple"</SPAN><SPAN class="pun" style="color: #000000;">,</SPAN><SPAN class="str" style="color: #800000;">"Pear"</SPAN><SPAN class="pun" style="color: #000000;">,</SPAN><SPAN class="str" style="color: #800000;">"Peach"</SPAN><SPAN class="pun" style="color: #000000;">]</SPAN><SPAN class="pln" style="color: #000000;"><BR /><BR /> param1 </SPAN><SPAN class="pun" style="color: #000000;">=</SPAN><SPAN class="pln" style="color: #000000;"> arcpy</SPAN><SPAN class="pun" style="color: #000000;">.</SPAN><SPAN class="typ" style="color: #2b91af;">Parameter</SPAN><SPAN class="pun" style="color: #000000;">(</SPAN><SPAN class="pln" style="color: #000000;"> <BR /> displayName </SPAN><SPAN class="pun" style="color: #000000;">=</SPAN><SPAN class="pln" style="color: #000000;"> </SPAN><SPAN class="str" style="color: #800000;">"Selection"</SPAN><SPAN class="pun" style="color: #000000;">,</SPAN><SPAN class="pln" style="color: #000000;"> <BR /> name </SPAN><SPAN class="pun" style="color: #000000;">=</SPAN><SPAN class="pln" style="color: #000000;"> </SPAN><SPAN class="str" style="color: #800000;">"Value_table"</SPAN><SPAN class="pun" style="color: #000000;">,</SPAN><SPAN class="pln" style="color: #000000;"> <BR /> datatype </SPAN><SPAN class="pun" style="color: #000000;">=</SPAN><SPAN class="pln" style="color: #000000;"> </SPAN><SPAN class="str" style="color: #800000;">"GPValueTable"</SPAN><SPAN class="pun" style="color: #000000;">,</SPAN><SPAN class="pln" style="color: #000000;"><BR /> parameterType </SPAN><SPAN class="pun" style="color: #000000;">=</SPAN><SPAN class="pln" style="color: #000000;"> </SPAN><SPAN class="str" style="color: #800000;">"Required"</SPAN><SPAN class="pun" style="color: #000000;">,</SPAN><SPAN class="pln" style="color: #000000;"> <BR /> direction </SPAN><SPAN class="pun" style="color: #000000;">=</SPAN><SPAN class="pln" style="color: #000000;"> </SPAN><SPAN class="str" style="color: #800000;">"Input"</SPAN><SPAN class="pun" style="color: #000000;">)</SPAN><SPAN class="pln" style="color: #000000;"> <BR /> param1</SPAN><SPAN class="pun" style="color: #000000;">.</SPAN><SPAN class="pln" style="color: #000000;">columns </SPAN><SPAN class="pun" style="color: #000000;">=([[</SPAN><SPAN class="str" style="color: #800000;">"String"</SPAN><SPAN class="pun" style="color: #000000;">,</SPAN><SPAN class="pln" style="color: #000000;"> </SPAN><SPAN class="str" style="color: #800000;">"Fruit_name"</SPAN><SPAN class="pun" style="color: #000000;">],</SPAN><SPAN class="pln" style="color: #000000;"> </SPAN><SPAN class="pun" style="color: #000000;">[</SPAN><SPAN class="str" style="color: #800000;">"Long"</SPAN><SPAN class="pun" style="color: #000000;">,</SPAN><SPAN class="str" style="color: #800000;">"Fruit_price"</SPAN><SPAN class="pun" style="color: #000000;">]])</SPAN><SPAN class="pln" style="color: #000000;"><BR /><BR /> params </SPAN><SPAN class="pun" style="color: #000000;">=</SPAN><SPAN class="pln" style="color: #000000;"> </SPAN><SPAN class="pun" style="color: #000000;">[</SPAN><SPAN class="pln" style="color: #000000;">param0</SPAN><SPAN class="pun" style="color: #000000;">,</SPAN><SPAN class="pln" style="color: #000000;">param1</SPAN><SPAN class="pun" style="color: #000000;">]</SPAN><SPAN class="pln" style="color: #000000;"><BR /> </SPAN><SPAN class="kwd" style="color: #00008b;">return</SPAN><SPAN class="pln" style="color: #000000;"> params<BR /><BR /></SPAN><SPAN class="kwd" style="color: #00008b;">def</SPAN><SPAN class="pln" style="color: #000000;"> isLicensed</SPAN><SPAN class="pun" style="color: #000000;">(</SPAN><SPAN class="pln" style="color: #000000;">self</SPAN><SPAN class="pun" style="color: #000000;">):</SPAN><SPAN class="pln" style="color: #000000;"><BR /> </SPAN><SPAN class="str" style="color: #800000;">"""Set whether tool is licensed to execute."""</SPAN><SPAN class="pln" style="color: #000000;"><BR /> </SPAN><SPAN class="kwd" style="color: #00008b;">return</SPAN><SPAN class="pln" style="color: #000000;"> </SPAN><SPAN class="kwd" style="color: #00008b;">True</SPAN><SPAN class="pln" style="color: #000000;"><BR /><BR /></SPAN><SPAN class="kwd" style="color: #00008b;">def</SPAN><SPAN class="pln" style="color: #000000;"> updateParameters</SPAN><SPAN class="pun" style="color: #000000;">(</SPAN><SPAN class="pln" style="color: #000000;">self</SPAN><SPAN class="pun" style="color: #000000;">,</SPAN><SPAN class="pln" style="color: #000000;"> parameters</SPAN><SPAN class="pun" style="color: #000000;">):</SPAN><SPAN class="pln" style="color: #000000;"><BR /> </SPAN><SPAN class="str" style="color: #800000;">"""Modify the values and properties of parameters before internal<BR /> validation is performed. This method is called whenever a parameter<BR /> has been changed."""</SPAN><SPAN class="pln" style="color: #000000;"><BR /> vtab </SPAN><SPAN class="pun" style="color: #000000;">=</SPAN><SPAN class="pln" style="color: #000000;"> </SPAN><SPAN class="pun" style="color: #000000;">[]</SPAN><SPAN class="pln" style="color: #000000;"><BR /> </SPAN><SPAN class="kwd" style="color: #00008b;">if</SPAN><SPAN class="pln" style="color: #000000;"> str</SPAN><SPAN class="pun" style="color: #000000;">(</SPAN><SPAN class="pln" style="color: #000000;">parameters</SPAN><SPAN class="pun" style="color: #000000;">[</SPAN><SPAN class="lit" style="color: #800000;">0</SPAN><SPAN class="pun" style="color: #000000;">].</SPAN><SPAN class="pln" style="color: #000000;">value</SPAN><SPAN class="pun" style="color: #000000;">)</SPAN><SPAN class="pln" style="color: #000000;"> </SPAN><SPAN class="pun" style="color: #000000;">==</SPAN><SPAN class="pln" style="color: #000000;"> </SPAN><SPAN class="pun" style="color: #000000;">[</SPAN><SPAN class="str" style="color: #800000;">"Apple"</SPAN><SPAN class="pun" style="color: #000000;">]:</SPAN><SPAN class="pln" style="color: #000000;"><BR /> vtab</SPAN><SPAN class="pun" style="color: #000000;">.</SPAN><SPAN class="pln" style="color: #000000;">append</SPAN><SPAN class="pun" style="color: #000000;">([</SPAN><SPAN class="str" style="color: #800000;">"Jonathan"</SPAN><SPAN class="pun" style="color: #000000;">,</SPAN><SPAN class="kwd" style="color: #00008b;">2500</SPAN><SPAN class="pun" style="color: #000000;">])</SPAN><SPAN class="pln" style="color: #000000;"><BR /> vtab</SPAN><SPAN class="pun" style="color: #000000;">.</SPAN><SPAN class="pln" style="color: #000000;">append</SPAN><SPAN class="pun" style="color: #000000;">([</SPAN><SPAN class="str" style="color: #800000;">"Gold"</SPAN><SPAN class="pun" style="color: #000000;">,</SPAN><SPAN class="kwd" style="color: #00008b;">1000</SPAN><SPAN class="pun" style="color: #000000;">])</SPAN><SPAN class="pln" style="color: #000000;"><BR /> parameters</SPAN><SPAN class="pun" style="color: #000000;">[</SPAN><SPAN class="lit" style="color: #800000;">1</SPAN><SPAN class="pun" style="color: #000000;">].</SPAN><SPAN class="pln" style="color: #000000;">values </SPAN><SPAN class="pun" style="color: #000000;">=</SPAN><SPAN class="pln" style="color: #000000;"> vtab<BR /> </SPAN><SPAN class="kwd" style="color: #00008b;">elif</SPAN><SPAN class="pln" style="color: #000000;"> str</SPAN><SPAN class="pun" style="color: #000000;">(</SPAN><SPAN class="pln" style="color: #000000;">parameters</SPAN><SPAN class="pun" style="color: #000000;">[</SPAN><SPAN class="lit" style="color: #800000;">0</SPAN><SPAN class="pun" style="color: #000000;">].</SPAN><SPAN class="pln" style="color: #000000;">value</SPAN><SPAN class="pun" style="color: #000000;">)</SPAN><SPAN class="pln" style="color: #000000;"> </SPAN><SPAN class="pun" style="color: #000000;">==</SPAN><SPAN class="pln" style="color: #000000;"> </SPAN><SPAN class="pun" style="color: #000000;">[</SPAN><SPAN class="str" style="color: #800000;">"Pear"</SPAN><SPAN class="pun" style="color: #000000;">]:</SPAN><SPAN class="pln" style="color: #000000;"><BR /> vtab</SPAN><SPAN class="pun" style="color: #000000;">.</SPAN><SPAN class="pln" style="color: #000000;">append</SPAN><SPAN class="pun" style="color: #000000;">([</SPAN><SPAN class="str" style="color: #800000;">"Anjou"</SPAN><SPAN class="pun" style="color: #000000;">,</SPAN><SPAN class="kwd" style="color: #00008b;">1000</SPAN><SPAN class="pun" style="color: #000000;">])</SPAN><SPAN class="pln" style="color: #000000;"><BR /> vtab</SPAN><SPAN class="pun" style="color: #000000;">.</SPAN><SPAN class="pln" style="color: #000000;">append</SPAN><SPAN class="pun" style="color: #000000;">([</SPAN><SPAN class="str" style="color: #800000;">"Concorde"</SPAN><SPAN class="pun" style="color: #000000;">,</SPAN><SPAN class="kwd" style="color: #00008b;">2000</SPAN><SPAN class="pun" style="color: #000000;">])</SPAN><SPAN class="pln" style="color: #000000;"><BR /> parameters</SPAN><SPAN class="pun" style="color: #000000;">[</SPAN><SPAN class="lit" style="color: #800000;">1</SPAN><SPAN class="pun" style="color: #000000;">].</SPAN><SPAN class="pln" style="color: #000000;">values </SPAN><SPAN class="pun" style="color: #000000;">=</SPAN><SPAN class="pln" style="color: #000000;"> vtab<BR /> </SPAN><SPAN class="kwd" style="color: #00008b;">return</SPAN><SPAN class="pln" style="color: #000000;"><BR /><BR /></SPAN><SPAN class="kwd" style="color: #00008b;">def</SPAN><SPAN class="pln" style="color: #000000;"> updateMessages</SPAN><SPAN class="pun" style="color: #000000;">(</SPAN><SPAN class="pln" style="color: #000000;">self</SPAN><SPAN class="pun" style="color: #000000;">,</SPAN><SPAN class="pln" style="color: #000000;"> parameters</SPAN><SPAN class="pun" style="color: #000000;">):</SPAN><SPAN class="pln" style="color: #000000;"><BR /> </SPAN><SPAN class="str" style="color: #800000;">"""Modify the messages created by internal validation for each tool<BR /> parameter. This method is called after internal validation."""</SPAN><SPAN class="pln" style="color: #000000;"><BR /> </SPAN><SPAN class="kwd" style="color: #00008b;">return</SPAN><SPAN class="pln" style="color: #000000;"><BR /><BR /></SPAN><SPAN class="kwd" style="color: #00008b;">def</SPAN><SPAN class="pln" style="color: #000000;"> execute</SPAN><SPAN class="pun" style="color: #000000;">(</SPAN><SPAN class="pln" style="color: #000000;">self</SPAN><SPAN class="pun" style="color: #000000;">,</SPAN><SPAN class="pln" style="color: #000000;"> parameters</SPAN><SPAN class="pun" style="color: #000000;">,</SPAN><SPAN class="pln" style="color: #000000;"> messages</SPAN><SPAN class="pun" style="color: #000000;">):</SPAN><SPAN class="pln" style="color: #000000;"><BR /> </SPAN><SPAN class="str" style="color: #800000;">"""The source code of the tool."""</SPAN><SPAN class="pln" style="color: #000000;"><BR /> </SPAN><SPAN class="kwd" style="color: #00008b;">return</SPAN>
Any help would be much appreciated.
Thank you!