I am building a Workspace which takes an integer as one of it's parameters. Depending on the value of the parameter it will query a different ArcSDE layer.
I have an AttributeValueMapper to map the number to the layer name e.g.
Number : LayerName
1 : dbo.layerA
2 : dbo.layerB
etc
After this I have a FeatureReader where the Feature Types to Read value is set to @LayerName as set above. This all works nicely - the data comes out of the Generic port.
However, I also want to detect and report on any layers that don't exist. So if dbo.layerA is being set in the AttributeValueMapper but does not exist in ArcSDE, how do I detect this? I thought it would come out of the Rejected port of the FeatureReader, but it doesn't. I do get a WARNing line in the log saying the layer could not be found in the geodatabase, but there is seemingly nothing I can use in the Workspace.
I already have a NoFeaturesTester attached to the Generic port to handle a successful query of the layer that returns no results.
The only thing I can think of is attaching a NoFeaturesTester to the Schema port of the FeatureReader. With a valid layer, I get something out of this port. When I test a non-existent layer name, nothing comes out of the Schema port.