I have created 2 Triggers that each have a subscription to the same Broker Doctype. Each Trigger has a filter with 1 condition in it. For example, Trigger 1 has the filter condition %hello%=“yes” and Trigger 2 has the conditon, %hello% = “no”. I can see the Triigers listed in the Broker manager along with their Subscriptions. When I view the Subscription, I can see the Broker Doctype for each Trigger listed, however, the filter column is blank. What I am trying to do is be sure that the Triggers along with their filters are being evaluated at the Broker Level rather than in IS. Can anyone point to what I can do to ensure that these filters are being evaluted at the Broker Level? Note when I saved the Triggers with the filters I did not get any error message in the server log.
Much appreciated.
Sue G.
This happens if the filter condition is valid on the Integration Server but not valid on the Broker. The broker has limitations to the filter conditions. The document “Building integration solutions using publication” has examples that are not valid on the broker. In this case, I think you should not use the % around the variables as the broker does not understand that.
Hello Rupinder: Thanks for the suggestion of taking out the %'s. I did this, but I still don’t see the Filters listed in the subscription for the Trigger in Broker Administrator. So, I still have the question, is there some place I can look when the Trigger is executed to see where the Filter is being evaluated, either on the Broker or IS?
Susan,
You have to use LEXCIAL RELATIONAL OPERATORS instead of normal RELATIONAL OPERATORS. For Example, if you want to compare a string then you have to say %hello% L_EQUALS “yes”. Refer the sections “Filter Evaluation at Design Time”, “Conditional Expressions” and “Rules for Use of Expression Syntax with the Broker” in Publish-Subscribe Developer’s Guide.
However having filters using LEXICAL RELATIONAL OPERATORS doesnt seems to work at Broker level incase of Notification Publishable Document (The Publishable document created by Polling Notification).
Hope this information helps!
Shahul.