<?xml version="1.0" encoding="utf-8"?>
<ManualTopic ID="/baanerp/ec/onlinemanual/000072" xml:lang="en">
   <Header>
      <Title>BEMIS - Design Principles</Title>
      <Keyword type="header" order="d1e308098">
         <Level1>BEMIS</Level1>
         <Level2>design principles</Level2>
      </Keyword>
      <Keyword type="header" order="d1e308103">
         <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 type="section" order="d1e308115">
               <Level1>EDI message</Level1>
               <Level2>naming and versioning</Level2>
            </Keyword>
            <Keyword type="section" order="d1e308120">
               <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" borderstyle="default" space-and-orientation="indented-estimated">
                  <TBODY noTR="2">
                     <TR no="1" isLast="false">
                        <TH rowspan="1" colspan="1">Message Name</TH>
                        <TH rowspan="1" colspan="1">Version</TH>
                     </TR>
                     <TR no="2" isLast="true">
                        <TD rowspan="1" colspan="1">ORD for
						Order</TD>
                        <TD rowspan="1" colspan="1">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 type="section" order="d1e308154">
               <Level1>Conversion setup</Level1>
               <Level2>naming and versioning</Level2>
            </Keyword>
            <Keyword type="section" order="d1e308159">
               <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 Infor LN.</Paragraph>
               <Paragraph>Changes are made to EDI Message ORD001 in Infor LN SP1. This results in a new conversion setup called ORD002.</Paragraph>
               <Paragraph>In Infor LN 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 type="section" order="d1e308192">
               <Level1>Data segment</Level1>
               <Level2>naming and versioning</Level2>
            </Keyword>
            <Keyword type="section" order="d1e308197">
               <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 type="section" order="d1e308210">
               <Level1>Backwards compatibility</Level1>
               <Level2>position</Level2>
            </Keyword>
            <Keyword type="section" order="d1e308215">
               <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 LN. 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 type="section" order="d1e308232">
               <Level1>Backwards compatibility</Level1>
               <Level2>conversion setup</Level2>
            </Keyword>
            <Keyword type="section" order="d1e308237">
               <Level1>Conversion setup</Level1>
               <Level2>backwards compatibility</Level2>
            </Keyword>
            <Paragraph>Within a specific LN 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 type="section" order="d1e308249">
            <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 LN application. The following table displays the content of the message
		  overhead.</Paragraph>
         <TABLE border="1" borderstyle="default" space-and-orientation="indented-estimated">
            <TBODY noTR="4">
               <TR no="1" isLast="false">
                  <TH colspan="2" valign="middle" align="center" rowspan="1">SA1 Message Overhead</TH>
               </TR>
               <TR valign="top" no="2" isLast="false">
                  <TD valign="top" align="left" rowspan="1" colspan="1">Status</TD>
                  <TD valign="top" align="left" rowspan="1" colspan="1">Mandatory</TD>
               </TR>
               <TR valign="top" no="3" isLast="false">
                  <TD valign="top" align="left" rowspan="1" colspan="1">Frequency</TD>
                  <TD valign="top" align="left" rowspan="1" colspan="1">Once for each EDI message</TD>
               </TR>
               <TR valign="top" no="4" isLast="true">
                  <TD valign="top" align="left" rowspan="1" colspan="1">Description</TD>
                  <TD valign="top" align="left" rowspan="1" colspan="1">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/>
         <TABLE border="1" borderstyle="default" space-and-orientation="indented-estimated">
            <TBODY noTR="14">
               <TR no="1" isLast="false">
                  <TH width="383" colspan="4" align="center" valign="middle" rowspan="1">BEMIS format</TH>
                  <TH width="168" valign="middle" align="center" rowspan="1" colspan="1">Mapping table fields (OUT)</TH>
                  <TH width="168" valign="middle" align="center" rowspan="1" colspan="1">Mapping table fields (IN)</TH>
               </TR>
               <TR no="2" isLast="false">
                  <TH width="35" align="center" rowspan="1" colspan="1">Pos.</TH>
                  <TH width="202" rowspan="1" colspan="1">Description</TH>
                  <TH width="41" valign="middle" align="center" rowspan="1" colspan="1">Key</TH>
                  <TH width="93" valign="middle" rowspan="1" colspan="1">Mandatory</TH>
                  <TH width="168" rowspan="1" colspan="1">Code</TH>
                  <TH width="168" rowspan="1" colspan="1">Code</TH>
               </TR>
               <TR no="3" isLast="false">
                  <TD width="35" align="center" valign="top" rowspan="1" colspan="1">1</TD>
                  <TD width="202" valign="top" align="left" rowspan="1" colspan="1">Data
				  Segment</TD>
                  <TD width="41" valign="top" align="center" rowspan="1" colspan="1">-</TD>
                  <TD width="93" valign="top" align="left" rowspan="1" colspan="1">Yes</TD>
                  <TD valign="top" align="left" width="168" rowspan="1" colspan="1">"SA1"</TD>
                  <TD valign="top" align="left" width="168" rowspan="1" colspan="1">-</TD>
               </TR>
               <TR no="4" isLast="false">
                  <TD width="35" align="center" valign="top" rowspan="1" colspan="1">2</TD>
                  <TD width="202" valign="top" align="left" rowspan="1" colspan="1">Message Reference</TD>
                  <TD width="41" valign="top" align="center" rowspan="1" colspan="1">X</TD>
                  <TD width="93" valign="top" align="left" rowspan="1" colspan="1">Yes</TD>
                  <TD valign="top" align="left" width="168" rowspan="1" colspan="1">ecedi701.bano</TD>
                  <TD valign="top" align="left" width="168" rowspan="1" colspan="1">ecedi702.bano</TD>
               </TR>
               <TR no="5" isLast="false">
                  <TD width="35" align="center" valign="top" rowspan="1" colspan="1">3</TD>
                  <TD width="202" valign="top" align="left" rowspan="1" colspan="1">Identification of
				  the Sender</TD>
                  <TD width="41" valign="top" align="center" rowspan="1" colspan="1">X</TD>
                  <TD width="93" valign="top" align="left" rowspan="1" colspan="1">Yes</TD>
                  <TD valign="top" align="left" width="168" rowspan="1" colspan="1">ecedi020.neta</TD>
                  <TD valign="top" align="left" width="168" rowspan="1" colspan="1">ecedi702.bpid</TD>
               </TR>
               <TR no="6" isLast="false">
                  <TD width="35" align="center" valign="top" rowspan="1" colspan="1">4</TD>
                  <TD width="202" valign="top" align="left" rowspan="1" colspan="1">EDI Message
				  Reference</TD>
                  <TD width="41" valign="top" align="center" rowspan="1" colspan="1">X</TD>
                  <TD width="93" valign="top" align="left" rowspan="1" colspan="1">Yes</TD>
                  <TD valign="top" align="left" width="168" rowspan="1" colspan="1">Object Identification, for example, tdpur400.orno</TD>
                  <TD valign="top" align="left" width="168" rowspan="1" colspan="1">ecedi702.msno</TD>
               </TR>
               <TR no="7" isLast="false">
                  <TD width="35" align="center" valign="top" rowspan="1" colspan="1">5</TD>
                  <TD width="202" valign="top" align="left" rowspan="1" colspan="1">EDI
				  message</TD>
                  <TD width="41" valign="top" align="center" rowspan="1" colspan="1">-</TD>
                  <TD width="93" valign="top" align="left" rowspan="1" colspan="1">Yes</TD>
                  <TD valign="top" align="left" width="168" rowspan="1" colspan="1">ecedi001.code</TD>
                  <TD valign="top" align="left" width="168" rowspan="1" colspan="1">ecedi702.mess</TD>
               </TR>
               <TR no="8" isLast="false">
                  <TD width="35" align="center" valign="top" rowspan="1" colspan="1">6</TD>
                  <TD width="202" valign="top" align="left" rowspan="1" colspan="1">Organization</TD>
                  <TD width="41" valign="top" align="center" rowspan="1" colspan="1">-</TD>
                  <TD width="93" valign="top" align="left" rowspan="1" colspan="1">Yes</TD>
                  <TD valign="top" align="left" width="168" rowspan="1" colspan="1">ecedi003.code</TD>
                  <TD valign="top" align="left" width="168" rowspan="1" colspan="1">ecedi702.orga</TD>
               </TR>
               <TR no="9" isLast="false">
                  <TD width="35" align="center" valign="top" rowspan="1" colspan="1">7</TD>
                  <TD width="202" valign="top" align="left" rowspan="1" colspan="1">Order Type</TD>
                  <TD width="41" valign="top" align="center" rowspan="1" colspan="1">-</TD>
                  <TD width="93" valign="top" align="left" rowspan="1" colspan="1">Yes</TD>
                  <TD valign="top" align="left" width="168" rowspan="1" colspan="1">ecedi011.koor</TD>
                  <TD valign="top" align="left" width="168" rowspan="1" colspan="1">ecedi702.koor</TD>
               </TR>
               <TR no="10" isLast="false">
                  <TD width="35" align="center" valign="top" rowspan="1" colspan="1">8</TD>
                  <TD width="202" valign="top" align="left" rowspan="1" colspan="1">Identification of the Receiver</TD>
                  <TD width="41" valign="top" align="center" rowspan="1" colspan="1">-</TD>
                  <TD width="93" valign="top" align="left" rowspan="1" colspan="1">No</TD>
                  <TD valign="top" align="left" width="168" rowspan="1" colspan="1">ecedi028.neta</TD>
                  <TD valign="top" align="left" width="168" rowspan="1" colspan="1">-</TD>
               </TR>
               <TR no="11" isLast="false">
                  <TD width="35" align="center" valign="top" rowspan="1" colspan="1">9</TD>
                  <TD width="202" valign="top" align="left" rowspan="1" colspan="1">Transmission Date</TD>
                  <TD width="41" valign="top" align="center" rowspan="1" colspan="1">-</TD>
                  <TD width="93" valign="top" align="left" rowspan="1" colspan="1">Yes</TD>
                  <TD valign="top" align="left" width="168" rowspan="1" colspan="1">date()</TD>
                  <TD valign="top" align="left" width="168" rowspan="1" colspan="1">ecedi702.send</TD>
               </TR>
               <TR no="12" isLast="false">
                  <TD width="35" align="center" valign="top" rowspan="1" colspan="1">10</TD>
                  <TD width="202" valign="top" align="left" rowspan="1" colspan="1">Transmission Time</TD>
                  <TD width="41" valign="top" align="center" rowspan="1" colspan="1">-</TD>
                  <TD width="93" valign="top" align="left" rowspan="1" colspan="1">No</TD>
                  <TD valign="top" align="left" width="168" rowspan="1" colspan="1">time()</TD>
                  <TD valign="top" align="left" width="168" rowspan="1" colspan="1">-</TD>
               </TR>
               <TR no="13" isLast="false">
                  <TD width="35" align="center" valign="top" rowspan="1" colspan="1">11</TD>
                  <TD width="202" valign="top" align="left" rowspan="1" colspan="1">Identification of Test Message</TD>
                  <TD width="41" valign="top" align="center" rowspan="1" colspan="1">-</TD>
                  <TD width="93" valign="top" align="left" rowspan="1" colspan="1">No</TD>
                  <TD valign="top" align="left" width="168" rowspan="1" colspan="1">""</TD>
                  <TD valign="top" align="left" width="168" rowspan="1" colspan="1">ecedi702.test</TD>
               </TR>
               <TR no="14" isLast="true">
                  <TD width="35" align="center" valign="top" rowspan="1" colspan="1">12</TD>
                  <TD width="202" valign="top" align="left" rowspan="1" colspan="1">Data Segment End
				  Sign</TD>
                  <TD width="41" valign="top" align="center" rowspan="1" colspan="1">-</TD>
                  <TD width="93" valign="top" align="left" rowspan="1" colspan="1">Yes</TD>
                  <TD valign="top" align="left" width="168" rowspan="1" colspan="1">"SA_END"</TD>
                  <TD valign="top" align="left" width="168" rowspan="1" colspan="1">-</TD>
               </TR>
            </TBODY>
         </TABLE>
      </GeneralSection>
      <GeneralSection>
         <SectionTitle>Data segment start and end signs</SectionTitle>
         <Keyword type="section" order="d1e308466">
            <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 type="section" order="d1e308476">
            <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 type="section" order="d1e308486">
            <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 type="section" order="d1e308496">
            <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" borderstyle="default" space-and-orientation="indented-estimated">
            <TBODY noTR="2">
               <TR no="1" isLast="false">
                  <TD rowspan="1" colspan="1">Alphanumeric</TD>
                  <TD rowspan="1" colspan="1">“SA1”;…;””;…;”SA1_END”</TD>
               </TR>
               <TR no="2" isLast="true">
                  <TD rowspan="1" colspan="1">Numeric</TD>
                  <TD rowspan="1" colspan="1">“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 type="section" order="d1e308518">
            <Level1>Single file</Level1>
         </Keyword>
         <Keyword type="section" order="d1e308521">
            <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>