<?xml version="1.0" encoding="utf-8"?>
<Session ID="/baanerp/da/nch/danch2510m000" xml:lang="en">
	<Header>
		<Title xmlns:HTML="http://www.w3.org/TR/REC-html40">Synchronization Objects (danch2510m000)</Title>
	</Header>
	<HelpTopic xml:lang="en"><AimSection><Paragraph class="Default">
                                 Use this session to view and maintain <Link href="/baanerp/da/glossary/glossary#58" role="glossary" Update="No">synchronization objects</Link>. When you start the session, an overview dialog is started. When you add or modify a synchronization object a details dialog is started.</Paragraph>
		</AimSection>
		<GeneralSection><SectionTitle>Overview dialog</SectionTitle>
			<Paragraph class="Default">This dialog provides an overview of the existing synchronization objects. You can add or delete synchronization objects. You cannot delete a synchronization object if it is running.</Paragraph>
			<Note><SectionTitle>
                                    Note
                                 </SectionTitle>
				<Paragraph class="Default">When you use the <Link href="/baanerp/da/glossary/glossary#61" role="glossary">PublishChanges</Link> and <Link href="/baanerp/da/glossary/glossary#62" role="glossary">UnpublishChanges</Link> methods as available in the Business Object Layer, synchronization objects are added and deleted automatically.</Paragraph>
			</Note>
			<List><ListIntro>You can start the following sessions:</ListIntro>
				<ListItem><Link href="/baanerp/da/nch/danch2510m000" role="session">Synchronization Objects (danch2510m000)</Link>- Details dialog</ListItem>
				<ListItem><Link href="/baanerp/da/nch/danch2213m000" role="session">Start Publishing (danch2213m000)</Link>
				</ListItem>
				<ListItem><Link href="/baanerp/da/nch/danch2214m000" role="session">Stop Publishing (danch2214m000)</Link>
				</ListItem>
				<ListItem><Link href="/baanerp/da/nch/danch2210m000" role="session">Check and Continue Servers (danch2210m000)</Link>
				</ListItem>
				<ListItem><Link href="/baanerp/da/nch/danch2410m000" role="session">Print Synchronization Objects (danch2410m000)</Link>
				</ListItem>
			</List>
			<Paragraph class="Default">When you duplicate an existing synchronization object, the selection and filter texts are also duplicated. Additionally the runtime information (configuration library, audit profile and date / times) is reset, because that runtime information only belongs to the original synchronization object.</Paragraph>
		</GeneralSection>
		<GeneralSection><SectionTitle>Details dialog</SectionTitle>
			<Paragraph class="Default">This dialog shows the details for a synchronization object. You can update the synchronization object. But note that if the server is currently running, changes of the settings will only be effective after the server is stopped and continued or started again. When saving a change while a server is running, you will receive a warning message explaining this.</Paragraph>
			<Paragraph class="Default">Additionally, a warning is given when you change the <GUIRef href="/baanerp/da/nch/danch2510m000#danch210.bobj" role="manual">Business Object Name</GUIRef>, <GUIRef href="/baanerp/da/nch/danch2510m000#danch210.txts" role="manual">Selections</GUIRef> or <GUIRef href="/baanerp/da/nch/danch2510m000#danch210.txtf" role="manual">Filter</GUIRef> when the server is running or has been running before. These changes will impact the existing clients.</Paragraph>
			<List><ListIntro>If a synchronization object having the same name as a business object was not created via the public interface but via the session, it may get changed or deleted via the public interface. For that reason, the following constraints are implemented in this session:</ListIntro>
				<ListItem>You cannot ‘manually’ create a synchronization object having a name equal to a business object.</ListItem>
				<ListItem>You cannot change the business object name for such a synchronization object. Other settings can be changed and start and/or stop can also be done.</ListItem>
				<ListItem>You are warned when changing selections or filter for a synchronization object having a business object name (i.e. a synchronization object that is created via the public interface). Note that a user must be able to change the selection for a synchronization object having a name that is equal to a business object name. The reason for this is that the settings of ‘includeUnchanges’ cannot be changed via the public interface, but it is likely that the need to be changed by a customer. The only way to do this is via the Synchronization Objects session.</ListItem>
			</List>
			<Paragraph class="Default">Limitation: if a business object is delivered later, it will not be checked whether a synchronization object having that name already exists. So such a synchronization object may be overwritten by a <Link href="/baanerp/da/glossary/glossary#61" role="glossary">PublishChanges</Link> request.</Paragraph>
		</GeneralSection>
	</HelpTopic>
	<Fields><FieldHelp ID="danch210.serv"><Header>
				<Title xmlns:HTML="http://www.w3.org/TR/REC-html40">Synchronization Object</Title>
			</Header>
			<FuncDesc>An identifying name for the <Link href="/baanerp/da/glossary/glossary#58" role="glossary">synchronization object</Link>.</FuncDesc>
		</FieldHelp>
		<FieldHelp ID="danch210.dsca"><Header>
				<Title xmlns:HTML="http://www.w3.org/TR/REC-html40">Description</Title>
			</Header>
			<FuncDesc>A logical name or description of the <Link href="/baanerp/da/glossary/glossary#58" role="glossary">synchronization object</Link>.</FuncDesc>
		</FieldHelp>
		<FieldHelp ID="danch210.bobj"><Header>
				<Title xmlns:HTML="http://www.w3.org/TR/REC-html40">Business Object Name</Title>
			</Header>
			<FuncDesc>The name of the business object from the Business Object Repository.</FuncDesc>
			<SimpleSection><Paragraph class="Default">You can zoom to the <GUIRef href="/baanerp/tt/adv/ttadv7503m000" role="session">Business Objects (ttadv7503m000)</GUIRef> session. This session displays the current business objects without showing the development VRCs.</Paragraph>
				<Paragraph class="Default">This field must be filled.</Paragraph>
			</SimpleSection>
		</FieldHelp>
		<FieldHelp ID="danch210.txts"><Header>
				<Title xmlns:HTML="http://www.w3.org/TR/REC-html40">Selections</Title>
			</Header>
			<FuncDesc>A text containing an XML structure that defines which components and attributes must be included, and which ones must also be included if they are unchanged.</FuncDesc>
			<SimpleSection><Paragraph class="Default">The text is displayed directly in the session.</Paragraph>
				<List><ListIntro>You can edit the text in 2 ways:</ListIntro>
					<ListItem>directly in the session</ListItem>
					<ListItem>Via the <GUIRef href="" role="manual">Edit Text</GUIRef> command in the session's standard tool bar. This command starts a text editor in a separate window, which can be useful depending on the width and length of the text.</ListItem>
				</List>
				<Paragraph class="Default">Refer to <Link href="/baanerp/da/onlinemanual/000501" role="manual">Selection</Link> for more information, including an example.</Paragraph>
			</SimpleSection>
		</FieldHelp>
		<FieldHelp ID="danch210.txtf"><Header>
				<Title xmlns:HTML="http://www.w3.org/TR/REC-html40">Filter</Title>
			</Header>
			<FuncDesc>A text containing an XML structure that defines what object or component instances must be included.</FuncDesc>
			<SimpleSection><Paragraph class="Default">If this field is empty, no filter will be used.</Paragraph>
				<Paragraph class="Default">The text is displayed directly in the session.</Paragraph>
				<List><ListIntro>You can edit the text in 2 ways:</ListIntro>
					<ListItem>directly in the session</ListItem>
					<ListItem>Via the <GUIRef href="" role="manual">Edit Text</GUIRef> command in the session's standard tool bar. This command starts a text editor in a separate window, which can be useful depending on the width and length of the text.</ListItem>
				</List>
				<Paragraph class="Default">Refer to <Link href="/baanerp/da/onlinemanual/000502" role="manual">Filter</Link> for more information, including an example.</Paragraph>
			</SimpleSection>
		</FieldHelp>
		<FieldHelp ID="danch210.bufs"><Header>
				<Title xmlns:HTML="http://www.w3.org/TR/REC-html40">Buffer Size</Title>
			</Header>
			<FuncDesc>The memory (in Mb) used for the buffer.</FuncDesc>
			<SimpleSection><Paragraph class="Default">The buffer is used for the correction mechanism, to make sure changes and unchanged data (which may be read a different moments) are consistent. When the buffer size is exceeded, the system will swap data to a file.</Paragraph>
			</SimpleSection>
		</FieldHelp>
		<FieldHelp ID="danch210.rdel"><Header>
				<Title xmlns:HTML="http://www.w3.org/TR/REC-html40">Read Delay</Title>
			</Header>
			<FuncDesc>The delay, in seconds, between logging a transaction in the audit files and the reading of the transaction by the <Link href="/baanerp/da/glossary/glossary#59" role="glossary">synchronization server</Link>. A delete delay is only necessary for databases that use 'dirty reads'.</FuncDesc>
			<SimpleSection><Paragraph class="Default">When using other a database management system (DBMS), other than Oracle (DB2, SQL Server, Informix), the DBMS uses a 'dirty read' mode. This means uncommitted (and incomplete) transactions from one process can be read by other processes.</Paragraph>
				<Paragraph class="Default">To avoid reading incomplete transactions, you can specify a Read Delay. The read delay indicates that transactions must only be picked up one or a few seconds after they were logged by the audit trail. This will make sure that only complete transactions are picked up.</Paragraph>
				<Paragraph class="Default">When using a DBMS implies 'dirty reads', it is necessary to set a Read Delay of a few seconds. Normally, 4 or 5 seconds should be safe; on heavily loaded system a slightly higher value can be chosen. When using Oracle, the Read Delay setting can be 0.</Paragraph>
			</SimpleSection>
		</FieldHelp>
		<FieldHelp ID="poll"><Header>
				<Title xmlns:HTML="http://www.w3.org/TR/REC-html40">Polling Frequency</Title>
			</Header>
			<FuncDesc>Indicates how often the audit trail is checked when no transactions are being processed. The default setting is once per second, but you can select a lower or higher frequency.</FuncDesc>
			<SimpleSection><Paragraph class="Default">The polling frequency must be greater than 0. When selecting a high polling frequency (greater than 10), a warning message is given regarding the performance impact.</Paragraph>
			</SimpleSection>
			<Note><SectionTitle>
                                    Note
                                 </SectionTitle>
				<Paragraph class="Default">When the Synchronization Server reads transactions from the audit trail, these transactions are picked up and processed quickly. But if no new transactions are arriving, the server is by default polling once per second. This may give quite some overhead for the system if the audit trail is very large (for example, because it was not purged for a few years). For that reason, you can select a slower polling frequency: a number of seconds per try instead of the number of tries per second. You can specify 1-99 retries per second or 1-99 seconds per retry. The default value is 1 (note that 1 try per second is the same as 1 second per try).</Paragraph>
				<Paragraph class="Default">If the polling frequency is relatively high, a warning message is displayed regarding the system performance impact (due to the higher load). If the polling frequency is relatively low, a warning message is given regarding the increased backlog and risk of inconsistencies (when adding unchanged data to the business object changes). Note that when retrying less than once per second, the backlog for the server increases, because incoming transactions will not be processed for some time. For that reason a boundary is set for the number of seconds per retry that can be used.</Paragraph>
			</Note>
		</FieldHelp>
		<FieldHelp ID="danch210.logf"><Header>
				<Title xmlns:HTML="http://www.w3.org/TR/REC-html40">Log Folder</Title>
			</Header>
			<FuncDesc>The folder where errors are logged.</FuncDesc>
			<SimpleSection><Paragraph class="Default">When you specify a log folder, the program checks whether the folder exists. If the folder does not exist, the program creates it.</Paragraph>
				<Paragraph class="Default">An error message is displayed if the folder cannot be created, or if the program cannot write files into it.</Paragraph>
				<Paragraph class="Default">You must always specify a log folder.</Paragraph>
			</SimpleSection>
		</FieldHelp>
		<FieldHelp ID="danch210.tchn"><Header>
				<Title xmlns:HTML="http://www.w3.org/TR/REC-html40">Trace</Title>
			</Header>
			<FuncDesc>
                                 If this check box is selected, tracing is done. Detailed technical information is stored in trace files in the <GUIRef href="/baanerp/da/nch/danch2510m000#danch210.logf" role="manual">Log Folder</GUIRef>.</FuncDesc>
			<SimpleSection><Paragraph class="Default">The trace log can be used for trouble-shooting and gives more detailed information than the server log file. It shows the server activity, for example, what transactions were read and how they are processed. It does not only log exceptions, but also transactions that were processed successfully.</Paragraph>
				<Paragraph class="Default">The amount of data that is stored depends on the <GUIRef href="/baanerp/da/nch/danch2510m000#danch210.tlev" role="manual">Trace Level</GUIRef> that is specified for the <Link href="/baanerp/da/glossary/glossary#58" role="glossary">synchronization object</Link>.</Paragraph>
			</SimpleSection>
			<Note><SectionTitle>
                                    Note
                                 </SectionTitle>
				<Paragraph class="Default">Use the trace options for trouble-shooting purposes only: the tracing will decrease the performance.</Paragraph>
			</Note>
		</FieldHelp>
		<FieldHelp ID="danch210.tlev"><Header>
				<Title xmlns:HTML="http://www.w3.org/TR/REC-html40">Trace Level</Title>
			</Header>
			<FuncDesc>The level of detail for the trace. You can select one of the following levels:</FuncDesc>
			<SimpleSection><List><ListItem>Low: only events are logged to show the server activity and the processing steps being executed. For each transaction being processed only the transaction ID and commit time will be written.</ListItem>
					<ListItem>Medium: in addition to the events, some transaction data are logged. For the transaction data, only the status at the beginning of the process (just after reading the transaction from the audit trail), the status at the end of the process, and the status in case of errors are included.</ListItem>
					<ListItem>High: events and transaction data details are logged. The status of the transaction data after each process step is logged. This can result in a very large trace file.</ListItem>
				</List>
			</SimpleSection>
		</FieldHelp>
		<FieldHelp ID="danch210.cvmc"><Header>
				<Title xmlns:HTML="http://www.w3.org/TR/REC-html40">Run in Current Virtual Machine</Title>
			</Header>
			<FuncDesc>
                                 If this check box is selected, the <Link href="/baanerp/da/glossary/glossary#59" role="glossary">synchronization server</Link> runs in the same virtual machine as the <Link href="/baanerp/da/glossary/glossary#63" role="glossary">BW</Link> interface. This is necessary if you want to debug or profile the <Link href="/baanerp/da/glossary/glossary#55" role="glossary">configuration library</Link>. Running in the current virtual machine also enables you to run multiple servers within a single virtual machine. However, this will impact the performance of those servers. Note that the BW interface must keep running after you started the synchronization server(s).</FuncDesc>
			<Note><SectionTitle>
                                    Note
                                 </SectionTitle>
				<Paragraph class="Default">Select this check box for trouble shooting purposes only. Usually this check box is cleared: the synchronization server runs in background in a separate virtual machine without a user interface. This means you can close the BW client after starting one or more servers, without interrupting the process.</Paragraph>
			</Note>
		</FieldHelp>
		<FieldHelp ID="danch210.libr"><Header>
				<Title xmlns:HTML="http://www.w3.org/TR/REC-html40">Configuration Library</Title>
			</Header>
			<FuncDesc>The name of the <Link href="/baanerp/da/glossary/glossary#55" role="glossary">configuration library</Link> that belongs to the <Link href="/baanerp/da/glossary/glossary#58" role="glossary">synchronization object</Link>.</FuncDesc>
		</FieldHelp>
		<FieldHelp ID="danch210.audp"><Header>
				<Title xmlns:HTML="http://www.w3.org/TR/REC-html40">Audit Profile</Title>
			</Header>
			<FuncDesc>The name of the generated audit profile (if any).</FuncDesc>
		</FieldHelp>
		<FieldHelp ID="danch210.udat"><Header>
				<Title xmlns:HTML="http://www.w3.org/TR/REC-html40">Last Definition Time</Title>
			</Header>
			<FuncDesc>This date / time is set when a new synchronization object is created, and is updated when the <GUIRef href="/baanerp/da/nch/danch2510m000#danch210.bobj" role="manual">Business Object Name</GUIRef>, <GUIRef href="/baanerp/da/nch/danch2510m000#danch210.txts" role="manual">Selections</GUIRef> or <GUIRef href="/baanerp/da/nch/danch2510m000#danch210.txtf" role="manual">Filter</GUIRef> are changed.</FuncDesc>
		</FieldHelp>
		<FieldHelp ID="danch210.idat"><Header>
				<Title xmlns:HTML="http://www.w3.org/TR/REC-html40">Last Generation Time</Title>
			</Header>
			<FuncDesc>This date/time is set or updated when (re)generating the configuration library.</FuncDesc>
			<Note><SectionTitle>
                                    Note
                                 </SectionTitle>
				<Paragraph class="Default">If the <GUIRef href="/baanerp/da/nch/danch2510m000#danch210.idat" role="manual">Last Generation Time</GUIRef> is empty or less than the <GUIRef href="/baanerp/da/nch/danch2510m000#danch210.udat" role="manual">Last Definition Time</GUIRef>, then the configuration library is not up-to-date. In that case a warning message is displayed to indicate that no runtime configuration library is generated, or the runtime configuration library is outdated and must be regenerated.</Paragraph>
			</Note>
		</FieldHelp>
		<FieldHelp ID="run.status"><Header>
				<Title xmlns:HTML="http://www.w3.org/TR/REC-html40">Run Status</Title>
			</Header>
			<FuncDesc>The status of the highest server run.</FuncDesc>
			<SimpleSection><Paragraph class="Default">If no run exists, the status is ‘Idle’.</Paragraph>
			</SimpleSection>
		</FieldHelp>
		<FieldHelp ID="backlog"><Header>
				<Title xmlns:HTML="http://www.w3.org/TR/REC-html40">Backlog</Title>
			</Header>
			<FuncDesc>This is the current time -/- the highest commit time processed. The backlog is represented as a value plus a time-unit (seconds, minutes, hours or days). The time-unit is displayed in the next field.</FuncDesc>
			<SimpleSection><Paragraph class="Default">Minutes and hours are rounded using one decimal. Days are rounded in the same way if less than 10. If the backlog is more than 10 days, rounding is done without decimals.</Paragraph>
			</SimpleSection>
		</FieldHelp>
		<FieldHelp ID="backlog.unit"><Header>
				<Title xmlns:HTML="http://www.w3.org/TR/REC-html40">Backlog</Title>
			</Header>
			<FuncDesc>The time-unit (seconds, minutes, hours or days) for the <GUIRef href="/baanerp/da/nch/danch2510m000#backlog" role="manual">Backlog</GUIRef> value that is displayed in the previous field.</FuncDesc>
		</FieldHelp>
	</Fields>
	<FormCommands><CommandHelp ID="command.create.runtime"><Header>
				<Title xmlns:HTML="http://www.w3.org/TR/REC-html40">Create Runtime</Title>
			</Header>
			<FuncDesc>This command (re)generates the <Link href="/baanerp/da/glossary/glossary#55" role="glossary">configuration library</Link>, based on the business object and the selections and filters defined. It generates the configuration library for the <Link href="/baanerp/da/glossary/glossary#58" role="glossary">synchronization object</Link> in the package VRC that contains the current version of the business object. (This does not have to be the same VRC as the VRC corresponding to the package combination of the company the Synchronization Object is defined in.)</FuncDesc>
			<SimpleSection><Paragraph class="Default">Additionally, this command (re)generates the audit profile. If an audit profile was created or changed, a message is displayed to indicate that a conversion to runtime must still be done. The audit profile is not generated if the configuration library generation resulted in an error.</Paragraph>
				<Paragraph class="Default">The actual conversion to runtime for the audit profile is an application administrator's task. The session to be used is <Link href="/baanerp/tt/aud/ttaud3200s000" role="session">Create Runtime Audit Definitions (ttaud3200s000)</Link>, which can be started from the <Link href="/baanerp/tt/aud/ttaud3110m000" role="session">Audit Profiles (ttaud3110m000)</Link> session.</Paragraph>
				<Paragraph class="Default">The name of an audit profile can contain 15 characters. The naming convention for the audit profile is: “sync” &amp; company (three digits) &amp; the first five characters of the synchronization object (lower case) &amp; a sequence number (three digits).</Paragraph>
				<Paragraph class="Default">The description will be: “Generated for &lt;synchronization object&gt;”.</Paragraph>
				<Paragraph class="Default">Audit profiles are handled in a similar way as configuration libraries: they are deleted if the synchronization object is deleted. A company group is created for each company that has a generated audit profile. If the company group already exists it is reused.</Paragraph>
			</SimpleSection>
		</CommandHelp>
		<CommandHelp ID="command.reset"><Header>
				<Title xmlns:HTML="http://www.w3.org/TR/REC-html40">Reset</Title>
			</Header>
			<FuncDesc>This command deletes all server runs. You are asked to confirm the action before it is executed.</FuncDesc>
		</CommandHelp>
	</FormCommands>
</Session>
