KG22

Feature Set parameter in a tool destined to be a gp service

Discussion created by KG22 on Oct 25, 2012
Latest reply on Oct 26, 2012 by KG22
I'm converting some 10.0 python code into a 10.1 python toolbox.
One of my parameters is a Feature Set.
in my 10.0 code if i run this in arcmap i get the interactive buttons to digitize a shape
in 10.1 i don't get this option. i just get the layers in the map or a folder icon to load other layers.

I think this has something to do with the schema. this is an input parameter.
in 10.0 world i would have used catalog to point this tool at a dummy schema just to get it stubbed out.

At 10.1 i think it is supposed to work differently but i can't figure it out and i don't see enough in the docs to help me.
there is alot of stuff in the docs about schema for output fs params, mine is input.
i want to serve this script as a gp tool in ags. the app would upload features in a format that the fs param can understand.

i saw something in the doc about needing geometryType and fieldRule params but i could use a working code sample.
here is what i have thus far (this is in a python toolbox):

class TestTool(object):
    def __init__(self):
        self.label = "TestTool"
        self.description = "TestTool"
        self.canRunInBackground = False

    def getParameterInfo(self):
        #Feature Set you pick a layer or load a layer
        param0 = arcpy.Parameter(
        displayName="aFeatureSet",
        name="aFeatureSet",
        datatype="Feature Set",
        parameterType="Required",
        direction="Input")
        #param0.value = ""

        param1 = arcpy.Parameter(
        displayName="aString",
        name="aString",
        datatype="String",
        parameterType="Required",
        direction="Input")
        param1.value = ""


        params = [param0, param1]
        return params

    def isLicensed(self):
        return True

    def updateParameters(self, parameters):
        return

    def updateMessages(self, parameters):
        return

    def execute(self, parameters, messages):
        #do stuff

Outcomes