Skip to main content

Hi all,

I’d like to use a FeatureReader transformer to read in an ArcGIS Feature Server and then have a user specify which specific Feature Service they would like to process. The Feature Server has ~15 services whose names I have added into a parameter. I added the parameter to the “Feature Types to Read” option, but can’t get the tool to successfully read in the service that I specify. I attached a screencap of how I have things set up so far...does anyone know how I can accomplish this? I think I’m close and might just be missing something small.

 

Hello @smithgk, the FeatureReader looks alright to me, suspect the issue could be with how the user parameter is defined / configured. Can you take a look at the provided workspace and let me know if this accomplishes the goal? The workspace built in Form 24.1 build 24612. Please reach out if you have any questions. Happy to help, Kailin.


Hi @kailinatsafe! That helped and I can now interactively select and read which feature types I need. Thank you! Next question...once I have a feature selected (regardless of which one is selected), I’d like to process the features along the same set of transformers and then output as a shapefile. The issue I’m running in to is that all the feature’s schemas are merged at the next transformer, even if only one feature is processed. Do you know if there is a way to only have a single schema move on to the next transformer, or will all the schemas always be read in since they all technically feed in to the transformer? 

 


Hello @smithgk, I think you may need to use separate streams to keep schemas separate. If you are using transformers that support GroupBy, you could GroupBy the feature type. 

If you are doing the same process for each potential feature type, you could try making a custom transformer to reduce transformer count in the workspace / declutter. 

Sorry I don’t have a better answer for! Feel free to reach out if you get stuck somewhere! Best, Kailin.


Hey @kailinatsafe , thanks for the info! That worked well, I didn’t have many subsequent transformers so it was pretty easy to make individual lanes.

 

My next issue is now on FME Flow. I tested my workspace in Form and everything works well. I can run multiple feature types through the workspace and get good exported results. When I deploy to Flow and test however, I’m starting to get all sorts of errors that aren’t present in Form. The first error is:

The file/folder 'https://services5.arcgis.com/ttNGmDvKQA7oeDQ3/ArcGIS/rest/services/CPWAdminData/FeatureServer' does not seem to exist, the modified date could not be determined.

Then:

 

ArcGIS Feature Service Reader: Could not find a layer/table matching feature type ''

Python Exception <FeatureTypeNotFoundException>: FMEException: 928219: ArcGIS Feature Service Reader: Could not find a layer/table matching feature type ''

 

The error has something to do with how FME Flow is reading the Feature Types parameter in the data. If I hardcode a value into the FeatureReader and then republish, it works fine. If I keep the parameter in place (that works in Form) and then publish & test, I get the error no matter if I select 1, 2, or any number of feature services. Do you know if Flow has a particular way of handling parameters like this?

 

EDIT: do you ever post a question and then immediately figure out the answer? The answer is in regards to a <Space> vs comma option in the parameter I was using in the feature reader. For the Feature Types to Download Parameter I was using, under the List/Tree Settings there is an option for ‘Choice List Delimiter’. It was set to <space> and working fine in Form, but failing in Flow. When I changed it to a comma (,), it now works perfectly in Flow.


Reply