SmartObject Input Parameters... Multiple Values and Conditions?

  • 13 March 2014
  • 2 replies

Badge +9

I'm wondering if there's someway to pass more than 1 value or perhaps a conditional value into a SmartObject Input Parameter.


This might be a bad example, but I think it gets my point across... Open your SmartObject Services Tester, and execute the SmartObject UMUser method "Get Users".  You will see one of the input parameters is "Display Name".  If I put in "Victoria D'Auria", any records that exactly match that "Display Name" will display fine.  But what if I want to put a conditional input, like contains?  Get all users whose "Display Name" CONTAINS "Victoria".  How do I accomplish that?

And what if I want to search for multiple display names?  Like get users whose "Display Name" contains "Victoria" or "D'Auria".

Or get users whose "Display Name" starts with "Victoria".


I understand that I could just use the filter in this case, but I'm asking for the sake of doing it in other places than the SmartObject Service Tester.  Like, in an InfoPath form or in a SmartObject Event.  I figure if it's possible to do it in the Input Mapping then I can do that everywhere...  But if I can do it by other means I'm also open to that.


In InfoPath, I need to be able to set the parameters before querying the data source or else it'll exceed the maximum records it can retrieve.  For the SmartObject Event Wizard I am stuck at the Input Mapping because it's looking for a static value, so I don't understand how set conditions or multiple values in this case.


Does this make sense? :)


2 replies

Badge +9

Despite being stuck on this for hours, of course I find something that brings me a bit closer as soon as I finally post to the forum...  Or at least puts me in some kind of direction.  I still need some help though :)


I decided to try asterisk instead of a percent symbol and was amazed it worked.  So that solves my problem of "contains" or "starts with", one can simply enter "*victoria*" or "victoria*" Eureka!  Haven't figured anything else though, pipes | don't seem to work for my "or" operator situation...


Please let me know if you know any other tricks you can do here.

i am looking for reverse of this. My smart object is returning data that starts with the passed parameter, but i am looking for equal to the passed parameter.