Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Reconnection also can be configured within engine.properties file: Settings of Session Reconnection

How can I get a message (std::vector<const Engine::TagValue*>) as a string or set of fields? I have found only getFields() function, but it isn't implemented. I am also interested in how can I get any field by tag. For example, I am trying to call getField(279) function and then toString() and I have got error message “Not supported: CharFiledValue::toString Tag 279.” How should I convert or get tag values?

...

May I use environment variables as values of configuration parameters

Yes, please see How to configure properties with environment variables article for more details. 

...

In order to use Myricom DBL it is required to utilize their specific API. Because of that, we added and described its distinct support.

Solarflare cards do not use separate API and their drivers work transparently for the application. Thus Solarflare OpenOnload does not require separate code support and can be used with our products.


FIX Engine doesn't start with getaddrinfo() failed error.

...

Code Block
languagecpp
        std::auto_ptr<Engine::FIXMessage> pMessage2(pSI2->newSkel("X"), session->getAppVer());

Is it possible to define the same tags across multiple repeating groups in the FIX message with the same MsgType.

FIX Antenna-based products support FIX messages containing the same tags in multiple repeating groups including the case when repeating groups have different nested levels.

Info

There is a limitation of this functionality. There should be no same tags in different groups within a single message. Such messages would be rejected with reason: "Tag XXXX appears more than once. Parsing stopped"

If validation is disabled some repeating tags would be removed or not accessible during processing.

Information on how to modify dictionaries can be found in the FIX and FIXML Dictionaries Customization Guide.

The dictionary update (additional dictionary) below demonstrates how to add two user-defined tags 7028 and 7029 to different repeating groups and to the root of Execution Report (8) message.

Code Block
languagexml
titleadditional.xml
collapsetrue
<fixdics>
	<update>
		<fixdic fixversion="4.4" title="FIX 4.4" date="2021/11/29" id="FIX44">
			<fielddic>
				<fielddef tag="7028" name="UserDefinedField1" type="String" />
				<fielddef tag="7029" name="UserDefinedField2" type="String" />
				<!-- ... -->
			</fielddic>
			
			<msgdic>
				<msgdef msgtype="8">
					<field tag="7028"/>
					<field tag="7029"/> <!-- 35=8 / 7028 -->
     				<!-- ... -->

					<field tag="78"/>
					<group nofield="78" startfield="79">
						<field tag="79" name="AllocAccount" condreq="T$78>0" />
						<field tag="80"/>
					 	<!-- ... -->
					
						<field tag="7028"/>  <!-- 35=8 / 78 / 7028 -->
						<field tag="7029"/>						
					</group>
    				<!-- ... -->
					
					<field tag="555"/>
					<group nofield="555" startfield="600">
						<block idref="InstrumentLeg" condreq="T$555>0"/>
						<field tag="670" name="NoLegAllocs"/>
						<group nofield="670" startfield="671">
							<field tag="671" name="LegAllocAccount" condreq="T$670>0"/>
							<field tag="673" name="LegAllocQty"/>
       						<!-- ... -->
									
							<field tag="7028"/>	<!-- 35=8 / 555 / 670 / 7028 -->
							<field tag="7029"/>								
						</group>
					</group>
				</msgdef>
			</msgdic>
			
		</fixdic>
	</update>
</fixdics>