fixFilterRule is rule of filter. To fix filter can be added more than one rule
Attribute | Description | Default | Required |
refid | Reference name of the fix filter task. | None | Yes |
active | Enable fix filter rule or not. | true | No |
fixFilterRule supports nested elements
<fixFilterMatchField> element is filter filed rule. fixFilterMatchField is not required for fixFilterRule. If one or more <fixFilterMatchField> do not pass successfully then action will not apply to message.
Attribute | Description | Default | Required |
tag | Field tag which will be looking in filtered message. | None | Yes |
value | Field value. Can be regular expressions if condition type is regexp | None | Yes |
condition | Type of conditions used for comparing the message fields. Possible values are:
equals notEquals regexp |
None | Yes |
req | Field in message required or not. | True | No |
<fixFilterMatchCounter> element is filter counter rule. fixFilterMatchCounter is not required for fixFilterRule. This element can be only one in fixFilterRule. One of attribute(from/to) must be present in <fixFilterMatchCounter>. If <fixFilterMatchCounter> do not pass successfully then action will not apply to message.
Attribute | Description | Default | Required |
from | Number of filtered messages, after which the rule will be successful. | None | Condition |
to | Number of filtered messages, after which the rule will be not successful. | None | Condition |
<fixFilterAction> is action which will be apply to filtered message if all matchers are successful.
Attribute | Description | Default | Required |
operation | Type of action over the filtered message. Possible values are:
insertBefore insertAfter replace |
None | Yes |
The <fixFilterAction> element should contain a list of FIX messages.
<fixFilterRule refid="ini_fix_out" active="true"> <fixFilterMatchField tag="35" value="D" condition="equals" req="true"/> <fixFilterMatchField tag="55" value="ZX*" condition="regexp"/> <fixFilterMatchCounter from="0" to="1"/> <fixFilterAction operation="insertAfter"> <fixMessage> <field name="MsgType" value="D"/> <field name="HandlInst" value="1"/>> <field name="Symbol" value="ZXZZT"/> <field name="Side" value="1"/> <field name="OrderQty" value="150"/> <field name="OrdType" value="2"/> <field name="ClOrdID" value="Order#2"/> <field name="Price" value="34.7"/> <field name="TransactTime" value="${new_order_trn_time}"/> </fixMessage> </fixFilterAction> </fixFilterRule>