<?xml version="1.0" encoding="utf-8"?>
<Session ID="/baanerp/ti/pcf/tipcf2110m000" xml:lang="en">
   <Header>
      <Title>Configurable Item - Constraints (tipcf2110m000)</Title>
   </Header>
   <HelpTopic>
      <AimSection>
         <Paragraph>Use this session to define <Link href="/baanerp/ti/glossary/glossary#100003" role="glossary">constraints</Link> by generic item.
		  You can use these constraints to control the whole product configuration
		  process.</Paragraph>
      </AimSection>
      <GeneralSection>
         <Paragraph>With constraints, you
		  can define a generic product model in a flexible manner. Constraints consist of
		  a mix of formalized data recorded in the database and a number of decision
		  rules, which can be defined by means of a constraint editor. Among other
		  things, constraints enable you to indicate under which conditions certain
		  combinations of options are acceptable, mandatory, or not acceptable for
		  product features. You can also indicate which bill of material components or
		  operations must be included or excluded, what the purchase or sales price
		  structure for a product variant is, and so on.</Paragraph>
         <Paragraph>In each constraint
		  section, global or local variables can be defined, which can be supplied with
		  certain values, with or without the help of a formula. Global variables keep
		  their value during the whole configuration or generation process.</Paragraph>
         <Paragraph>Constraints can be
		  used with product features to control the configuration process. This is
		  important for horizontal dependencies between option sets, relations between
		  price list lines in connection with surcharges or discounts, and so
		  on.</Paragraph>
         <Paragraph>You can select a
		  record and click the Text Editor button to activate the constraint
		  editor.</Paragraph>
         <List>
            <ListIntro>You can choose Start Zoom Session on the Options menu in
			 the constraint editor. ERP then displays a menu with the following
			 sessions:</ListIntro>
            <ListItem> 
               <GUIRef href="/baanerp/ti/pcf/tipcf0150m000" role="session">Product Feature (tipcf0150m000)</GUIRef>.</ListItem>
            <ListItem> 
               <GUIRef href="/baanerp/ti/pcf/tipcf0160m000" role="session">Options by Product Feature (tipcf0160m000)</GUIRef>.</ListItem>
            <ListItem> 
               <GUIRef href="/baanerp/ti/pcf/tipcf1101m000" role="session">Product Features by Configurable Item (tipcf1101m000)</GUIRef>.</ListItem>
            <ListItem> 
               <GUIRef href="/baanerp/ti/pcf/tipcf1110m000" role="session">Options by Product Feature and Configurable Item (tipcf1110m000)</GUIRef>.</ListItem>
            <ListItem> 
               <GUIRef href="/baanerp/ti/pcf/tipcf2120m000" role="session">Constraint Validation Messages (tipcf2120m000)</GUIRef>.</ListItem>
         </List>
         <Paragraph>You can select one of
		  the preceding sessions, and select a record to include this record in the
		  constraint. If you use the editor and you want to add an option to a feature,
		  you must first select the feature before you can zoom to the <GUIRef href="/baanerp/ti/pcf/tipcf0160m000" role="session">Options by Product Feature (tipcf0160m000)</GUIRef> session, or to the <GUIRef href="/baanerp/ti/pcf/tipcf1110m000" role="session">Options by Product Feature and Configurable Item (tipcf1110m000)</GUIRef> session. ERP Enterprise displays the options
		  that belong to the selected feature. You can then choose an option to add to
		  this option in the editor.</Paragraph>
         <Paragraph>A meta language that
		  is specially devised for this purpose and that is a subset of ERP Enterprise is used to define
		  constraint expressions. For online Help about the potential of this meta
		  language, and the possibilities of the constraint syntax, refer to <Link href="/baanerp/ti/onlinemanual/100002" role="manual">Constraint editor</Link>.</Paragraph>
         <Note>
            <SectionTitle>Note</SectionTitle>
            <Paragraph>If you started this
			 session by zooming, you cannot maintain the constraint text.</Paragraph>
         </Note>
      </GeneralSection>
      <Tip>
         <SectionTitle>Tip</SectionTitle>
         <Paragraph>To get an overview of all <Link href="/baanerp/ti/glossary/glossary#Constraint_ti" role="glossary">constraints</Link> using a particular <Link href="/baanerp/ti/glossary/glossary#100000" role="glossary">feature</Link> or <Link href="/baanerp/ti/glossary/glossary#100001" role="glossary">option</Link>, use the <GUIRef href="/baanerp/ti/pcf/tipcf0450m100" role="session">Print Where-used Product Feature and Option (tipcf0450m100)</GUIRef> session.</Paragraph>
      </Tip>
      <RelatedTopics>
         <SectionTitle>Related topics</SectionTitle>
         <RelTopic>
            <Link href="/baanerp/ti/onlinemanual/100004" role="manual">How to define a product model</Link>
         </RelTopic>
         <RelTopic>
            <Link href="/baanerp/ti/onlinemanual/100002" role="manual">Constraint editor</Link>
         </RelTopic>
      </RelatedTopics>
   </HelpTopic>
   <Fields>
      <FieldHelp ID="tipcf210.item">
         <Header>
            <Title>Item</Title>
         </Header>
         <FuncDesc>The code of the <Link href="/baanerp/tc/glossary/glossary#000440" role="glossary">configurable item</Link>.</FuncDesc>
      </FieldHelp>
      <FieldHelp ID="tcibd001.srce">
         <Header>
            <Title>Default Supply Source</Title>
         </Header>
         <FuncDesc>The source that supplies an item by default. An item can be
		supplied by using purchase orders, production orders, assembly orders, or
		warehousing orders.</FuncDesc>
         <SimpleSection>
            <Paragraph>The default supply source determines what type of order is
		  used to supply the item, but in general, you can override the default and
		  specify an alternate source.</Paragraph>
         </SimpleSection>
         <SimpleSection>
            <Paragraph>This field can be used to determine what type of supply
			 order ERP Enterprise must create if
			 you enter a sales order for this item and the item's <Link href="/baanerp/wh/glossary/glossary#000330" role="glossary">inventory on hand</Link> is not sufficient.</Paragraph>
         </SimpleSection>
         <SimpleSection>
            <List>
               <ListIntro>The possible values are:</ListIntro>
               <ListItemHead>
                  <GUIRef href="/baanerp/tc/domains/srce#shopfloor" role="option">Shop Floor</GUIRef>
               </ListItemHead>
               <ListItem>The item is obtained by creating a <Link href="/baanerp/ti/glossary/glossary#000022" role="glossary">production order</Link>.</ListItem>
               <ListItemHead>
                  <GUIRef href="/baanerp/tc/domains/srce#assembly" role="option">Assembly</GUIRef>
               </ListItemHead>
               <ListItem>The item is obtained by creating an <Link href="/baanerp/tp/glossary/glossary#000319" role="glossary">assembly order</Link>.</ListItem>
               <ListItemHead>
                  <GUIRef href="/baanerp/tc/domains/srce#purchase" role="option">Purchase</GUIRef>
               </ListItemHead>
               <ListItem>The item is obtained by creating a <Link href="/baanerp/td/glossary/glossary#PurchaOrders_td" role="glossary">purchase order</Link>.</ListItem>
            </List>
         </SimpleSection>
         <SimpleSection>
            <Paragraph>If the <Link href="/baanerp/tc/glossary/glossary#000006" role="glossary">item type</Link> is <GUIRef href="/baanerp/tc/domains/kitm#manufacture" role="option">Manufactured</GUIRef> or <GUIRef href="/baanerp/tc/domains/kitm#generic" role="option">Generic</GUIRef>,
			 this field can be <GUIRef href="/baanerp/tc/domains/srce#shopfloor" role="option">Shop Floor</GUIRef> or <GUIRef href="/baanerp/tc/domains/srce#assembly" role="option">Assembly</GUIRef>.</Paragraph>
            <Paragraph>If the <Link href="/baanerp/tc/glossary/glossary#000006" role="glossary">item type</Link> is <GUIRef href="/baanerp/tc/domains/kitm#engineering" role="option">Engineering Module</GUIRef>, this field is <GUIRef href="/baanerp/tc/domains/srce#assembly" role="option">Assembly</GUIRef> and cannot be changed.</Paragraph>
            <Paragraph>If the item type is <GUIRef href="/baanerp/tc/domains/kitm#purchase" role="option">Purchased</GUIRef>, this field is <GUIRef href="/baanerp/tc/domains/srce#purchase" role="option">Purchase</GUIRef> and cannot be changed.</Paragraph>
         </SimpleSection>
         <RelatedTopics>
            <SectionTitle>Related topics</SectionTitle>
            <RelTopic>
               <Link href="/baanerp/ti/onlinemanual/000517" role="manual">Assembly items</Link>
            </RelTopic>
         </RelatedTopics>
      </FieldHelp>
      <FieldHelp ID="tipcf210.cnsc">
         <Header>
            <Title>Constraint ID</Title>
         </Header>
         <FuncDesc>The code that uniquely identifies a <Link href="/baanerp/ti/glossary/glossary#100003" role="glossary">constraint</Link> of a generic
		  item.</FuncDesc>
      </FieldHelp>
      <FieldHelp ID="tipcf210.cnss">
         <Header>
            <Title>Constraint Section</Title>
         </Header>
         <FuncDesc>Choose from the following:</FuncDesc>
         <SimpleSection>
            <SectionTitle>Before Input</SectionTitle>
            <Paragraph>The <GUIRef href="/baanerp/tc/domains/cnss#before.input" role="option">Before Input</GUIRef> option section is carried out by the product configurator before
			 you can enter an option value for a product feature. You can set default option
			 values in this constraint section and also indicate under which conditions the
			 input or representation of a product feature is allowed.</Paragraph>
         </SimpleSection>
         <SimpleSection>
            <SectionTitle>Validation</SectionTitle>
            <Paragraph>This section is used
			 by both the product configurator and the product generator to validate option
			 values for product features. The section is also used to validate or select
			 generic item data, components in the generic product structure, operations in
			 the generic routing and price list lines in the generic price list. If the
			 validation section is carried out by the product configurator for the <GUIRef href="/baanerp/tc/domains/cnss#validation" role="option">Validation</GUIRef> option value,
			 the product configurator can generate messages to support the configuration
			 process, which will be displayed on the screen.</Paragraph>
         </SimpleSection>
         <SimpleSection>
            <SectionTitle>Parameter Substitution</SectionTitle>
            <List>
               <ListIntro>The <GUIRef href="/baanerp/tc/domains/cnss#substitution" role="option">Parameter Substitution</GUIRef> section is used by both the product configurator and the
				product generator to calculate parameter values in the generic product
				structure. The parameter values can include fixed option values for product
				features:</ListIntro>
               <ListItem>Length</ListItem>
               <ListItem>Width</ListItem>
               <ListItem>Number of
				units</ListItem>
               <ListItem>Material quantity in
				the generic bill of material</ListItem>
               <ListItem>Setup
				time</ListItem>
               <ListItem>Production
				rate</ListItem>
               <ListItem>Cycle time in the
				generic routing</ListItem>
               <ListItem>Purchase or sales
				prices and price factors in the generic price list</ListItem>
            </List>
         </SimpleSection>
      </FieldHelp>
      <FieldHelp ID="ctxt.yn">
         <Header>
            <Title>Constraint Text</Title>
         </Header>
         <FuncDesc>If this check box is selected, a constraint source code
		  is present for the <Link href="/baanerp/ti/glossary/glossary#100003" role="glossary">constraint</Link>.</FuncDesc>
      </FieldHelp>
   </Fields>
   <FormCommands>
      <CommandHelp ID="check.constraint.expr">
         <Header>
            <Title>Check Constraint</Title>
         </Header>
         <FuncDesc>ERP Enterprise checks whether the constraint is built according to the syntax.</FuncDesc>
      </CommandHelp>
      <CommandHelp ID="execute.constraint">
         <Header>
            <Title>Execute Constraint</Title>
         </Header>
         <FuncDesc>ERP Enterprise executes the constraint. You can check if the results are in accordance with
		  your request.</FuncDesc>
      </CommandHelp>
   </FormCommands>
</Session>