<?xml version="1.0" encoding="utf-8"?>
<ManualTopic ID="/baanerp/ec/onlinemanual/000072" xml:lang="en">
	<Header>
		<Title xmlns:ssa="http://www.ssaglobal.com" xmlns:HTML="http://www.w3.org/TR/REC-html40">BEMIS - Design Principles</Title>
		<Keyword><Level1>BEMIS</Level1>
			<Level2>design principles</Level2>
		</Keyword>
		<Keyword><Level1>Design principles</Level1>
		</Keyword>
	</Header>
	<GeneralSection><Paragraph>A BEMIS business document must be designed following a predefined set of rules. If these rules are not met, the business document does not comply with the BEMIS standards.</Paragraph>
		<GeneralSection><SectionTitle>Naming and versioning</SectionTitle>
			<GeneralSection><SectionTitle>EDI message</SectionTitle>
				<Keyword><Level1>EDI message</Level1>
					<Level2>naming and versioning</Level2>
				</Keyword>
				<Keyword><Level1>Naming and versioning</Level1>
					<Level2>EDI message</Level2>
				</Keyword>
				<Paragraph>The code of an EDI message within a business document includes the name and version (XXX999). The name is alphanumeric and the version is numeric. Both have a length of 3.</Paragraph>
				<ExampleSection><SectionTitle>Example</SectionTitle>
					<Paragraph>The order EDI Message is called ORD 001.</Paragraph>
					<TABLE border="1"><TBODY><TR><TH>Message Name</TH>
								<TH>Version</TH>
							</TR>
							<TR><TD>ORD for Order</TD>
								<TD>001</TD>
							</TR>
						</TBODY>
					</TABLE>
				</ExampleSection>
				<List><ListIntro>Sometimes multiple versions of an EDI message exist. This can, for example, occur if:</ListIntro>
					<ListItem>80% of the customers require a simple version and 20% require a complex version of the message.</ListItem>
					<ListItem>Two external standards conflict.</ListItem>
				</List>
			</GeneralSection>
			<GeneralSection><SectionTitle>Conversion setup</SectionTitle>
				<Keyword><Level1>Conversion setup</Level1>
					<Level2>naming and versioning</Level2>
				</Keyword>
				<Keyword><Level1>Naming and versioning</Level1>
					<Level2>conversion setup</Level2>
				</Keyword>
				<Paragraph>If changes are made to the EDI message within a service/feature pack, a new <Link href="/baanerp/ec/glossary/glossary#000075" role="glossary" Update="No">conversion setup</Link> is created for that feature pack.</Paragraph>
				<List><ListIntro>The format of the conversion setup is XXX999, in which:</ListIntro>
					<ListItem>The first three positions are equal to the first three positions of the EDI Message.</ListItem>
					<ListItem>The last 3 positions are sequential.</ListItem>
				</List>
				<Paragraph>Each time a change is made, the number increases with 1.</Paragraph>
				<ExampleSection><SectionTitle>Example</SectionTitle>
					<Paragraph>The order EDI Message is called ORD 001.</Paragraph>
					<Paragraph>The first conversion setup is called ORD001 in SSA® ERP LN 6.1.</Paragraph>
					<Paragraph>Changes are made to EDI Message ORD001 in SSA ERP LN 6.1 SP1. This results in a new conversion setup called ORD002.</Paragraph>
					<Paragraph>In SSA ERP LN 6.1 FP2 no changes are made to EDI Messages ORD001. As a result, the conversion setup does not change and remains ORD002.</Paragraph>
				</ExampleSection>
			</GeneralSection>
			<GeneralSection><SectionTitle>Data segment</SectionTitle>
				<Keyword><Level1>Data segment</Level1>
					<Level2>naming and versioning</Level2>
				</Keyword>
				<Keyword><Level1>Naming and versioning</Level1>
					<Level2>data segment</Level2>
				</Keyword>
				<Paragraph>Each data segment has a unique code within an EDI message. The format of the data segment code is SA99. The unique code of the first data segment is SA1, the second is SA2, the tenth is SA10, and so on.</Paragraph>
			</GeneralSection>
		</GeneralSection>
		<GeneralSection><SectionTitle>Backwards compatibility</SectionTitle>
			<GeneralSection><SectionTitle>Position</SectionTitle>
				<Keyword><Level1>Backwards compatibility</Level1>
					<Level2>position</Level2>
				</Keyword>
				<Keyword><Level1>Position</Level1>
					<Level2>backwards compatibility</Level2>
				</Keyword>
				<Paragraph>A business document consists of multiple EDI messages that contain multiple data segments with multiple positions. On those positions, data elements can be defined. Once the functional meaning of a position is determined, do not change it.</Paragraph>
				<Paragraph>For example, on the data segment Order Line, position 10 contains the item (tdsls401.item). In a new version of a business document the item must still be on position 10.</Paragraph>
				<Important><SectionTitle>Important!</SectionTitle>
					<Paragraph>Do not change positions to minimize the impact when implementing a new version/release or feature pack of SSA ERP. If the functional meaning of a position changes, you must also adapt the EDI translation software that converts the external standard into the internal (BEMIS) standard or the other way around.</Paragraph>
				</Important>
			</GeneralSection>
			<GeneralSection><SectionTitle>Conversion setup</SectionTitle>
				<Keyword><Level1>Backwards compatibility</Level1>
					<Level2>conversion setup</Level2>
				</Keyword>
				<Keyword><Level1>Conversion setup</Level1>
					<Level2>backwards compatibility</Level2>
				</Keyword>
				<Paragraph>Within a specific SSA ERP version/release, you can use business documents of older feauture packs in new feature packs. In this way, the impact of implementing a new feature pack is reduced, because customizations on business documents need not be re-executed.</Paragraph>
				<Paragraph>Only if you want to use new functionality, customizations must be executed on the new business document, or the new functionality must be added to existing business documents.</Paragraph>
			</GeneralSection>
		</GeneralSection>
		<GeneralSection><SectionTitle>Generic interface</SectionTitle>
			<Keyword><Level1>Generic interface</Level1>
			</Keyword>
			<Paragraph>To set up a generic interface in which data can be reused and costs are reduced, you must define business documents/EDI messages that are related to different external standards.</Paragraph>
			<Paragraph>All relevant information concerning the related business processes must be defined in the business document/EDI message in such a way that different external standards are supported. Only in case of conflicting external standards, multiple business documents/EDI messages can be defined.</Paragraph>
		</GeneralSection>
		<GeneralSection><SectionTitle>Message overhead</SectionTitle>
			<Paragraph>Each EDI message within a business document always contains a data segment, called message overhead (data segment SA1).</Paragraph>
			<Paragraph>The information of the message overhead is standardized and in accordance with the SSA ERP application. The following table displays the content of the message overhead.</Paragraph>
			<TABLE border="1"><TBODY><TR><TH colspan="2" valign="middle" align="center">SA1 Message Overhead</TH>
					</TR>
					<TR valign="top">
						<TD valign="top" align="left">Status</TD>
						<TD valign="top" align="left">Mandatory</TD>
					</TR>
					<TR valign="top">
						<TD valign="top" align="left">Frequency</TD>
						<TD valign="top" align="left">Once for each EDI message</TD>
					</TR>
					<TR valign="top">
						<TD valign="top" align="left">Description</TD>
						<TD valign="top" align="left">The message overhead data segment contains information about the transmitter, the message type and the time of the transmission. The message reference identifies all related data segments of this message.</TD>
					</TR>
				</TBODY>
			</TABLE>
			<Paragraph></Paragraph>
			<TABLE border="1"><TBODY><TR><TH width="383" colspan="4" align="center" valign="middle">BEMIS format</TH>
						<TH width="168" valign="middle" align="center">Mapping table fields (OUT)</TH>
						<TH width="168" valign="middle" align="center">Mapping table fields (IN)</TH>
					</TR>
					<TR><TH width="35" align="center">Pos.</TH>
						<TH width="202">Description</TH>
						<TH width="41" valign="middle" align="center">Key</TH>
						<TH width="93" valign="middle">Mandatory</TH>
						<TH width="168">Code</TH>
						<TH width="168">Code</TH>
					</TR>
					<TR><TD width="35" align="center" valign="top">1</TD>
						<TD width="202" valign="top" align="left">Data Segment</TD>
						<TD width="41" valign="top" align="center">-</TD>
						<TD width="93" valign="top" align="left">Yes</TD>
						<TD valign="top" align="left" width="168">"SA1"</TD>
						<TD valign="top" align="left" width="168">-</TD>
					</TR>
					<TR><TD width="35" align="center" valign="top">2</TD>
						<TD width="202" valign="top" align="left">Message Reference</TD>
						<TD width="41" valign="top" align="center">X</TD>
						<TD width="93" valign="top" align="left">Yes</TD>
						<TD valign="top" align="left" width="168">ecedi701.bano</TD>
						<TD valign="top" align="left" width="168">ecedi702.bano</TD>
					</TR>
					<TR><TD width="35" align="center" valign="top">3</TD>
						<TD width="202" valign="top" align="left">Identification of the Sender</TD>
						<TD width="41" valign="top" align="center">X</TD>
						<TD width="93" valign="top" align="left">Yes</TD>
						<TD valign="top" align="left" width="168">ecedi020.neta</TD>
						<TD valign="top" align="left" width="168">ecedi702.bpid</TD>
					</TR>
					<TR><TD width="35" align="center" valign="top">4</TD>
						<TD width="202" valign="top" align="left">EDI Message Reference</TD>
						<TD width="41" valign="top" align="center">X</TD>
						<TD width="93" valign="top" align="left">Yes</TD>
						<TD valign="top" align="left" width="168">Object Identification, for example, tdpur400.orno</TD>
						<TD valign="top" align="left" width="168">ecedi702.msno</TD>
					</TR>
					<TR><TD width="35" align="center" valign="top">5</TD>
						<TD width="202" valign="top" align="left">EDI message</TD>
						<TD width="41" valign="top" align="center">-</TD>
						<TD width="93" valign="top" align="left">Yes</TD>
						<TD valign="top" align="left" width="168">ecedi001.code</TD>
						<TD valign="top" align="left" width="168">ecedi702.mess</TD>
					</TR>
					<TR><TD width="35" align="center" valign="top">6</TD>
						<TD width="202" valign="top" align="left">Organization</TD>
						<TD width="41" valign="top" align="center">-</TD>
						<TD width="93" valign="top" align="left">Yes</TD>
						<TD valign="top" align="left" width="168">ecedi003.code</TD>
						<TD valign="top" align="left" width="168">ecedi702.orga</TD>
					</TR>
					<TR><TD width="35" align="center" valign="top">7</TD>
						<TD width="202" valign="top" align="left">Order Type</TD>
						<TD width="41" valign="top" align="center">-</TD>
						<TD width="93" valign="top" align="left">Yes</TD>
						<TD valign="top" align="left" width="168">ecedi011.koor</TD>
						<TD valign="top" align="left" width="168">ecedi702.koor</TD>
					</TR>
					<TR><TD width="35" align="center" valign="top">8</TD>
						<TD width="202" valign="top" align="left">Identification of the Receiver</TD>
						<TD width="41" valign="top" align="center">-</TD>
						<TD width="93" valign="top" align="left">No</TD>
						<TD valign="top" align="left" width="168">ecedi028.neta</TD>
						<TD valign="top" align="left" width="168">-</TD>
					</TR>
					<TR><TD width="35" align="center" valign="top">9</TD>
						<TD width="202" valign="top" align="left">Transmission Date</TD>
						<TD width="41" valign="top" align="center">-</TD>
						<TD width="93" valign="top" align="left">Yes</TD>
						<TD valign="top" align="left" width="168">date()</TD>
						<TD valign="top" align="left" width="168">ecedi702.send</TD>
					</TR>
					<TR><TD width="35" align="center" valign="top">10</TD>
						<TD width="202" valign="top" align="left">Transmission Time</TD>
						<TD width="41" valign="top" align="center">-</TD>
						<TD width="93" valign="top" align="left">No</TD>
						<TD valign="top" align="left" width="168">time()</TD>
						<TD valign="top" align="left" width="168">-</TD>
					</TR>
					<TR><TD width="35" align="center" valign="top">11</TD>
						<TD width="202" valign="top" align="left">Identification of Test Message</TD>
						<TD width="41" valign="top" align="center">-</TD>
						<TD width="93" valign="top" align="left">No</TD>
						<TD valign="top" align="left" width="168">""</TD>
						<TD valign="top" align="left" width="168">ecedi702.test</TD>
					</TR>
					<TR><TD width="35" align="center" valign="top">12</TD>
						<TD width="202" valign="top" align="left">Data Segment End Sign</TD>
						<TD width="41" valign="top" align="center">-</TD>
						<TD width="93" valign="top" align="left">Yes</TD>
						<TD valign="top" align="left" width="168">"SA_END"</TD>
						<TD valign="top" align="left" width="168">-</TD>
					</TR>
				</TBODY>
			</TABLE>
		</GeneralSection>
		<GeneralSection><SectionTitle>Data segment start and end signs</SectionTitle>
			<Keyword><Level1>Data segment</Level1>
				<Level2>start and end signs</Level2>
			</Keyword>
			<Paragraph>Each data segment starts with a data segment identification and ends with a data segment end tag. So, the first data segment starts with SA1 and ends with SA1_END, following the data segment naming and versioning.</Paragraph>
		</GeneralSection>
		<GeneralSection><SectionTitle>Data element length</SectionTitle>
			<Keyword><Level1>Data element</Level1>
				<Level2>length</Level2>
			</Keyword>
			<Paragraph>The BEMIS standard uses a variable field length. A fixed field length is not allowed within the BEMIS standard.</Paragraph>
		</GeneralSection>
		<GeneralSection><SectionTitle>Data record separator</SectionTitle>
			<Keyword><Level1>Data record</Level1>
				<Level2>separating</Level2>
			</Keyword>
			<Paragraph>The BEMIS standard uses the “LF” control character for separating data records.</Paragraph>
		</GeneralSection>
		<GeneralSection><SectionTitle>Empty positions</SectionTitle>
			<Keyword><Level1>Empty position</Level1>
			</Keyword>
			<Paragraph>If the delimiter is ";" and the sign around the strings is “ on the network, the BEMIS standard shows an empty position as follows:</Paragraph>
			<TABLE border="1"><TBODY><TR><TD>Alphanumeric</TD>
						<TD>“SA1”;…;””;…;”SA1_END”</TD>
					</TR>
					<TR><TD>Numeric</TD>
						<TD>“SA1”;…;;…;”SA1_END”</TD>
					</TR>
				</TBODY>
			</TABLE>
			<Paragraph>If the sign around strings on the network is empty, no difference exists between alphnumeric and numeric. In this case, the BEMIS standard shows the empty position as shown for numeric data elements in the above table.</Paragraph>
		</GeneralSection>
		<GeneralSection><SectionTitle>Single/multi file</SectionTitle>
			<Keyword><Level1>Single file</Level1>
			</Keyword>
			<Keyword><Level1>Multi file</Level1>
			</Keyword>
			<Paragraph>In <GUIRef href="/baanerp/ec" role="package">Electronic Commerce</GUIRef>, you can define single and multi files. In case of a single file, the entire EDI Message is stored in one file. In case of multi files, each data segment of the EDI message is stored in a separate file.</Paragraph>
			<Paragraph>The BEMIS standard only supports the single file option for incoming and outgoing EDI messages.</Paragraph>
		</GeneralSection>
	</GeneralSection>
	<RelatedTopics><SectionTitle>Related topics</SectionTitle>
		<RelTopic><Link href="/baanerp/ec/onlinemanual/000073" role="manual">BEMIS - Content</Link>
		</RelTopic>
		<RelTopic><Link href="/baanerp/ec/onlinemanual/000071" role="manual">An overview of BEMIS</Link>
		</RelTopic>
		<RelTopic><Link href="/baanerp/ec/onlinemanual/000052" role="manual">Electronic Data Interchange</Link>
		</RelTopic>
	</RelatedTopics>
</ManualTopic>
