I was trying to test AS:LookupValue() from the Xpath testing window in the Source window of a xslt transformation from within architect. The lookup used had conditional parameters and it’s filterset was set as IsDynamic=true
I was expecting it will ignore filters if the value meets ignore condition.
Instead the filters hasn’t been ignored.
I was trying to find out why. It’s caused by the fact architect creates the only instance of AbstractSqlCommandGenerator. The class has a property ResolveAllFilters. When set, any constructed command ignores conditional parameter settings. The property ResolveAllFilters is set in a method ExpectedParameterNames - so for the reason to list all parameters for some filterset.
So it depends after architect is started whether the sql generator is called because of getting parameter names (e.g. to see all parameters for a query), or for the real query. The command generator instance is globally one and located at the service container. Therefore, the behavior seems to be unstable and wrong depending on how the command generator was used the first time after architect has started.