Top Banner
Epicor ERP Configurator Technical Reference Guide 9.05.702
383
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Epicor Configurator

Epicor ERPConfigurator TechnicalReference Guide9.05.702

Page 2: Epicor Configurator

Disclaimer

This document is for informational purposes only and is subject to change without notice. This document and itscontents, including the viewpoints, dates and functional content expressed herein are believed to be accurate as of itsdate of publication. However, Epicor Software Corporation makes no guarantee, representations or warranties withregard to the enclosed information and specifically disclaims any applicable implied warranties, such as fitness for aparticular purpose, merchantability, satisfactory quality or reasonable skill and care. As each user of Epicor software islikely to be unique in their requirements in the use of such software and their business processes, users of this documentare always advised to discuss the content of this document with their Epicor account manager. All information containedherein is subject to change without notice and changes to this document since printing and other important informationabout the software product are made or published in release notes, and you are urged to obtain the current releasenotes for the software product. We welcome user comments and reserve the right to revise this publication and/ormake improvements or changes to the products or programs described in this publication at any time, without notice.The usage of any Epicor software shall be pursuant to an Epicor end user license agreement and the performance ofany consulting services by Epicor personnel shall be pursuant to Epicor's standard services terms and conditions. Usageof the solution(s) described in this document with other Epicor software or third party products may require the purchaseof licenses for such other products. Where any software is expressed to be compliant with local laws or requirementsin this document, such compliance is not a warranty and is based solely on Epicor's current understanding of such lawsand requirements. All laws and requirements are subject to varying interpretations as well as to change and accordinglyEpicor cannot guarantee that the software will be compliant and up to date with such changes. All statements ofplatform and product compatibility in this document shall be considered individually in relation to the products referredto in the relevant statement, i.e., where any Epicor software is stated to be compatible with one product and alsostated to be compatible with another product, it should not be interpreted that such Epicor software is compatiblewith both of the products running at the same time on the same platform or environment. Additionally platform orproduct compatibility may require the application of Epicor or third-party updates, patches and/or service packs andEpicor has no responsibility for compatibility issues which may be caused by updates, patches and/or service packsreleased by third parties after the date of publication of this document. Epicor® is a registered trademark and/ortrademark of Epicor Software Corporation in the United States, certain other countries and/or the EU. All othertrademarks mentioned are the property of their respective owners. Copyright © Epicor Software Corporation 2013.All rights reserved. No part of this publication may be reproduced in any form without the prior written consent ofEpicor Software Corporation.

DOC0091E9

9.05.702

Revision: April 01, 2013 2:37 a.m.

Total pages: 383

sys.ditaval

Page 3: Epicor Configurator

Contents

Introduction..........................................................................................................................26Purpose of this Guide.....................................................................................................................................26

Intended Audience.........................................................................................................................................26

How it is Organized.......................................................................................................................................26

Configurator Concepts and Base Components...................................................................28The Configuration Session.............................................................................................................................28

The Evaluation Process...................................................................................................................................30

Smart String Configuration Parsing.........................................................................................................31

Page Level Processing.............................................................................................................................31

Input Control Display Processing.............................................................................................................32

On Leave and Prompt When Expression Processing.................................................................................33

Dynamic List Processing..........................................................................................................................33

Method Rules Processing........................................................................................................................34

Configuration Price Processing................................................................................................................35

Part Creation Processing.........................................................................................................................35

Smart String Processing..........................................................................................................................37

Configurator in a Multi-Company Enterprise..................................................................................................39

Sales Company Processing......................................................................................................................41

Manufacturing Company Processing.......................................................................................................42

Use of Configuration Rules.....................................................................................................................43

Configurator Synchronization.................................................................................................................44

Implementation Components and Calculations.................................................................45Pre-Implementation Planning.........................................................................................................................45

Information Collection for Configuration Implementation.......................................................................45

Super BOMs Versus Template BOMs..............................................................................................................46

Using a Super BOM................................................................................................................................47

Using a Template BOM...........................................................................................................................48

Other Implementation Considerations............................................................................................................49

Question & Answer Input Sequence........................................................................................................49

Dynamic Lists and External Lookups........................................................................................................49

Free-Form Fields......................................................................................................................................50

Testing Configuration Input Pages and Defining Rules............................................................................50

Configurator Setup (Single Company Environment)........................................................................................51

Base "Universal" Part / Part Revision..............................................................................................................54

Programs and Their Modifiers.................................................................................................................54

Example..................................................................................................................................................57

Method of Manufacture................................................................................................................................58

Programs and Their Modifiers.................................................................................................................60

Logic/Algorithms.....................................................................................................................................60

Example..................................................................................................................................................61

Assemblies and Subassemblies (Materials)......................................................................................................61

3Epicor ERP | 9.05.702

ContentsConfigurator Technical Reference Guide

Page 4: Epicor Configurator

Programs and Their Modifiers.................................................................................................................62

Example..................................................................................................................................................63

Operations.....................................................................................................................................................63

Programs and Their Modifiers.................................................................................................................64

Part Maintenance...................................................................................................................................64

Example..................................................................................................................................................64

Resources and Resource Groups.....................................................................................................................65

Configurator Designer...................................................................................................................................66

Programs and Their Modifiers.................................................................................................................67

Part/Rev.........................................................................................................................................................68

Programs and Their Modifiers.................................................................................................................69

Logic/Algorithms.....................................................................................................................................69

Example..................................................................................................................................................69

Using Configuration Rules (Single Company)..................................................................................................69

Input and Document Rules......................................................................................................................70

Method Rules.........................................................................................................................................70

Selecting a Configured Part....................................................................................................................71

Input Rules > Page / Design Toolbox...............................................................................................................72

Programs and Their Modifiers.................................................................................................................73

Input Rules > Inputs > Detail..........................................................................................................................74

Programs and Their Modifiers.................................................................................................................75

Global Input Variables....................................................................................................................................88

Programs and Their Modifiers.................................................................................................................90

Logic/Algorithms.....................................................................................................................................91

Examples................................................................................................................................................92

Expression Builder / Context Functions...........................................................................................................93

Configurator Expression Example............................................................................................................95

Additional Context Functions..................................................................................................................97

Use of Rules Types in Rules Processing...........................................................................................................97

Rule Types Selection...............................................................................................................................98

Calculation.............................................................................................................................................99

Set Field................................................................................................................................................100

Program Call.........................................................................................................................................102

Keep When..........................................................................................................................................103

Rule Function........................................................................................................................................104

Input Rules > Inputs > Detail > Dynamic Lists > Detail / Criteria....................................................................108

Programs and Their Modifiers...............................................................................................................109

Logic/Algorithms...................................................................................................................................112

Example(s)............................................................................................................................................112

Input Rules > Inputs > Detail > Prompt When...............................................................................................114

Programs and Their Modifiers...............................................................................................................114

Logic/Algorithms...................................................................................................................................115

Examples..............................................................................................................................................115

Input Rules > Inputs > On Leave...................................................................................................................116

Programs and Their Modifiers...............................................................................................................116

Epicor ERP | 9.05.7024

Configurator Technical Reference GuideContents

Page 5: Epicor Configurator

Logic/Algorithms...................................................................................................................................117

Examples..............................................................................................................................................117

Input Rules > Page Detail.............................................................................................................................118

Programs and Their Modifiers...............................................................................................................118

Input Rules > Prompt When.........................................................................................................................120

Programs and Their Modifiers...............................................................................................................121

Input Rules > On Leave................................................................................................................................122

Programs and Their Modifiers...............................................................................................................123

Input Rules > Pricing > Options....................................................................................................................124

Programs and Their Modifiers...............................................................................................................125

Logic/Algorithms...................................................................................................................................126

Input Rules > Pricing > General > Input Pricing > Order / Quote / Purchase / Demand > Detail......................127

Programs and Their Modifiers...............................................................................................................128

Logic/Algorithms...................................................................................................................................129

Input Rules > Part > Creation.......................................................................................................................130

Programs and Their Modifiers...............................................................................................................130

Logic/Algorithms...................................................................................................................................134

Example................................................................................................................................................135

Input Rules > Part > Smart String.................................................................................................................136

Programs and Their Modifiers...............................................................................................................137

Logic/Algorithms...................................................................................................................................139

Example................................................................................................................................................139

Input Rules > Document Rules......................................................................................................................140

Programs and Their Modifiers...............................................................................................................141

Logic/Algorithms...................................................................................................................................142

Example................................................................................................................................................142

Method Rules > Method / Rules...................................................................................................................143

Programs and Their Modifiers...............................................................................................................144

Example................................................................................................................................................147

Status..........................................................................................................................................................148

Programs and Their Modifiers...............................................................................................................148

Logic/Algorithms...................................................................................................................................151

Example................................................................................................................................................152

Regenerate Configurations..........................................................................................................................152

Regenerate Configurations Features.....................................................................................................153

Smart String Configuration Processing.........................................................................................................154

Programs and Their Modifiers...............................................................................................................155

Configuration Listing...................................................................................................................................156

Programs and Their Modifiers...............................................................................................................157

Logic/Algorithms...................................................................................................................................158

Import / Export Configuration......................................................................................................................158

Exporting Configurations......................................................................................................................159

Programs and Their Modifiers........................................................................................................159

Logic and Algorithms.....................................................................................................................161

Importing Configurations......................................................................................................................162

5Epicor ERP | 9.05.702

ContentsConfigurator Technical Reference Guide

Page 6: Epicor Configurator

Programs and Their Modifiers........................................................................................................162

Verify Existing Configuration........................................................................................................................164

Programs and Their Modifiers...............................................................................................................165

Logic/Algorithms...................................................................................................................................166

Multi-Company Configurator - Setup and Operation....................................................................................166

Other Prerequisites...............................................................................................................................166

Multi-Company Configuration Processing.............................................................................................166

Input Rules > Pricing > Options......................................................................................................168

Programs and Their Modifiers.................................................................................................169

Input Rules > Pricing > General > Detail (Multi-Company)..............................................................170

Programs and Their Modifiers.................................................................................................170

Structure Rules > Definition / Rules (Multi-Company).....................................................................172

Programs and Their Modifiers.................................................................................................173

Creating Subconfigurator Part Swaps in a Multi-Company Configurator Environment.............175

Enterprise Configurator Server Process / Enterprise Configurator Direct Server Process...................176

Programs and Their Modifiers.................................................................................................177

Creating Subconfigurator Part Swaps in a Multi-Company Configurator Environment....................179

Modifiers.............................................................................................................................181Allow Reconfiguration in PO........................................................................................................................181

Where Located.....................................................................................................................................181

All Values.....................................................................................................................................................182

Where Located.....................................................................................................................................182

Example................................................................................................................................................182

Approved / Not Approved............................................................................................................................182

Where Located.....................................................................................................................................183

Logic/Algorithms...................................................................................................................................183

Automatically create a new part number......................................................................................................184

Where Located.....................................................................................................................................184

Logic/Algorithms...................................................................................................................................184

Automatically Mark Methods Global............................................................................................................185

Where Located.....................................................................................................................................185

Available Methods.......................................................................................................................................185

Where Located.....................................................................................................................................186

Logic/Algorithms...................................................................................................................................186

Available Styles............................................................................................................................................186

Where Located.....................................................................................................................................187

Logic/Algorithms...................................................................................................................................187

Available Inputs/Selected Inputs...................................................................................................................187

Where Located.....................................................................................................................................188

Logic/Algorithms...................................................................................................................................188

Example................................................................................................................................................188

Buttons........................................................................................................................................................188

Where Located.....................................................................................................................................189

Example................................................................................................................................................189

Character Value / Date Value / Decimal Value / Logical Value.......................................................................189

Epicor ERP | 9.05.7026

Configurator Technical Reference GuideContents

Page 7: Epicor Configurator

Where Located.....................................................................................................................................189

Logic/Algorithms...................................................................................................................................190

Example................................................................................................................................................190

ColumnName / Condition / Value.................................................................................................................190

Where Located.....................................................................................................................................190

Condition....................................................................................................................................................191

Where Located.....................................................................................................................................191

Logic/Algorithms...................................................................................................................................191

Example................................................................................................................................................191

Create Alternative Methods.........................................................................................................................192

Where Located.....................................................................................................................................192

Create a new part number at zero cost........................................................................................................192

Where Located.....................................................................................................................................192

Logic/Algorithms...................................................................................................................................193

Example................................................................................................................................................193

Create a new part number for each configuration........................................................................................193

Where Located.....................................................................................................................................193

Logic/Algorithms...................................................................................................................................193

Create a new part number in.......................................................................................................................194

Where Located.....................................................................................................................................194

Logic/Algorithms...................................................................................................................................194

Customer Part Number................................................................................................................................195

Where Located.....................................................................................................................................195

Logic/Algorithms...................................................................................................................................195

Create Revision............................................................................................................................................195

Where Located.....................................................................................................................................196

Default ECO Group......................................................................................................................................196

Where Located.....................................................................................................................................196

Demand Entry..............................................................................................................................................197

Where Located.....................................................................................................................................197

Digit Structure.............................................................................................................................................197

Where Located.....................................................................................................................................197

Example................................................................................................................................................198

Do not notify the user if new part number already exists..............................................................................198

Where Located.....................................................................................................................................198

Example................................................................................................................................................198

Do not process On Leave expressions when page loads................................................................................199

Where Located.....................................................................................................................................199

Example................................................................................................................................................199

Don't Display Input in Configuration Summary Grid.....................................................................................199

Where Located.....................................................................................................................................200

End Position.................................................................................................................................................200

Where Located.....................................................................................................................................200

Enterprise Configurator................................................................................................................................201

Where Located.....................................................................................................................................201

7Epicor ERP | 9.05.702

ContentsConfigurator Technical Reference Guide

Page 8: Epicor Configurator

Logic/Algorithms...................................................................................................................................201

Format (Character).......................................................................................................................................201

Where Located.....................................................................................................................................202

Example................................................................................................................................................202

Format (Date)...............................................................................................................................................202

Where Located.....................................................................................................................................203

Example................................................................................................................................................203

Format (Decimal)..........................................................................................................................................203

Generate Method........................................................................................................................................203

Where Located.....................................................................................................................................204

Generate Methods Using Resulting Quote Method......................................................................................204

Where Located.....................................................................................................................................204

Global..........................................................................................................................................................205

Where Located.....................................................................................................................................205

Example................................................................................................................................................205

Global Input Variable...................................................................................................................................206

Where Located.....................................................................................................................................206

Logic/Algorithms...................................................................................................................................207

Global Variable Name..................................................................................................................................207

Where Located.....................................................................................................................................207

Input Name..................................................................................................................................................208

Where Located.....................................................................................................................................208

Initial Value..................................................................................................................................................208

Where Located.....................................................................................................................................209

Input Name (Global Input Variables).............................................................................................................209

Where Located.....................................................................................................................................209

Invisible........................................................................................................................................................210

Where Located.....................................................................................................................................210

Invoice Comments.......................................................................................................................................210

Where Located.....................................................................................................................................210

Logic/Algorithms...................................................................................................................................211

Job Entry......................................................................................................................................................211

Where Located.....................................................................................................................................211

Logic/Algorithms...................................................................................................................................211

Job/Pick List Comments................................................................................................................................212

Where Located.....................................................................................................................................212

Logic/Algorithms...................................................................................................................................212

List Items (Inputs > Detail)............................................................................................................................212

Where Located.....................................................................................................................................213

List Items (Inputs - Detail - Dynamic Lists).....................................................................................................213

Where Located.....................................................................................................................................213

Minimum, Maximum (Date).........................................................................................................................214

Where Located.....................................................................................................................................214

Minimum, Maximum, Increment (Decimal)...................................................................................................214

Where Located.....................................................................................................................................215

Epicor ERP | 9.05.7028

Configurator Technical Reference GuideContents

Page 9: Epicor Configurator

Multiplier.....................................................................................................................................................215

Where Located.....................................................................................................................................215

Logic/Algorithms...................................................................................................................................216

Negatives.....................................................................................................................................................216

Where Located.....................................................................................................................................216

Example................................................................................................................................................216

Number of Decimals....................................................................................................................................217

Where Located.....................................................................................................................................217

Logic/Algorithms...................................................................................................................................217

Example................................................................................................................................................217

Number of Digits.........................................................................................................................................218

Where Located.....................................................................................................................................218

Logic/Algorithms...................................................................................................................................218

Example................................................................................................................................................218

Only process dynamic lists with higher tab sequences...................................................................................218

Where Located.....................................................................................................................................219

Order Entry..................................................................................................................................................219

Where Located.....................................................................................................................................219

Logic/Algorithms...................................................................................................................................219

Order/Quote Comments..............................................................................................................................220

Where Located.....................................................................................................................................220

Logic/Algorithms...................................................................................................................................220

Packing Slip Comments................................................................................................................................220

Where Located.....................................................................................................................................220

Logic/Algorithms...................................................................................................................................221

Page............................................................................................................................................................221

Where Located.....................................................................................................................................221

Page Sequence............................................................................................................................................222

Where Located.....................................................................................................................................222

Page Title.....................................................................................................................................................222

Where Located.....................................................................................................................................222

Logic/Algorithms...................................................................................................................................223

Part Description...........................................................................................................................................223

Where Located.....................................................................................................................................223

Position and Sizing Fields (X, Y, Width and Height).......................................................................................223

Where Located.....................................................................................................................................224

Preface w/ Part Number...............................................................................................................................224

Where Located.....................................................................................................................................224

Price For Value.............................................................................................................................................224

Where Located.....................................................................................................................................225

Process dynamic lists before On Leave expressions for this page...................................................................225

Where Located.....................................................................................................................................225

Process Input On Leave expressions if page is skipped..................................................................................225

Where Located.....................................................................................................................................226

Prompt For Checkout...................................................................................................................................226

9Epicor ERP | 9.05.702

ContentsConfigurator Technical Reference Guide

Page 10: Epicor Configurator

Where Located.....................................................................................................................................226

Prompt For Configuration............................................................................................................................227

Where Located.....................................................................................................................................227

Quote Entry.................................................................................................................................................228

Where Located.....................................................................................................................................228

Logic/Algorithms...................................................................................................................................228

Remove Link From Base Configured Part......................................................................................................228

Where Located.....................................................................................................................................229

Run BAQ / BAQ / Display Value / Input Value................................................................................................229

Where Located.....................................................................................................................................229

Run Program / Program Name / Program Inputs...........................................................................................230

Where Located.....................................................................................................................................231

Logic/Algorithms...................................................................................................................................231

Example................................................................................................................................................231

Save Input Values.........................................................................................................................................232

Where Located.....................................................................................................................................233

Separator Character.....................................................................................................................................233

Where Located.....................................................................................................................................233

Example................................................................................................................................................234

Set Part Number Only..................................................................................................................................234

Where Located.....................................................................................................................................234

Logic/Algorithms...................................................................................................................................234

Show Distinct Items.....................................................................................................................................234

Logic/Algorithms...................................................................................................................................235

Where Located.....................................................................................................................................236

Single Level Configuration...........................................................................................................................236

Where Located.....................................................................................................................................236

Logic/Algorithms...................................................................................................................................237

Example................................................................................................................................................237

Skip page if all inputs are disabled or invisible..............................................................................................237

Where Located.....................................................................................................................................237

Smart String Configuration..........................................................................................................................238

Where Located.....................................................................................................................................238

Starting Sequence........................................................................................................................................239

Where Located.....................................................................................................................................239

Start Position...............................................................................................................................................239

Where Located.....................................................................................................................................239

Synchronize.................................................................................................................................................240

Where Located.....................................................................................................................................240

Synchronize Revision Approval.....................................................................................................................240

Where Located.....................................................................................................................................241

Tab Order....................................................................................................................................................241

Where Located.....................................................................................................................................241

Thousands Separator...................................................................................................................................242

Where Located.....................................................................................................................................242

Epicor ERP | 9.05.70210

Configurator Technical Reference GuideContents

Page 11: Epicor Configurator

Type (Global Input Variables)........................................................................................................................242

Where Located.....................................................................................................................................242

Type (Part)...................................................................................................................................................243

Where Located.....................................................................................................................................243

Logic/Algorithms...................................................................................................................................243

Update Saved Input Values and Set Fields in Part Table.................................................................................243

Where Located.....................................................................................................................................244

Example................................................................................................................................................244

Use Component Pricing...............................................................................................................................244

Where Located.....................................................................................................................................245

Logic/Algorithms...................................................................................................................................245

Use Generated Method When Getting Details..............................................................................................246

Where Located.....................................................................................................................................246

Valid List......................................................................................................................................................246

Where Located.....................................................................................................................................247

Value...........................................................................................................................................................247

Where Located.....................................................................................................................................247

Verify Existing Job Configurations................................................................................................................248

Where Located.....................................................................................................................................248

Logic/Algorithms...................................................................................................................................248

Example................................................................................................................................................248

Verify Existing Order Configurations.............................................................................................................249

Where Located.....................................................................................................................................249

Logic/Algorithms...................................................................................................................................249

Example................................................................................................................................................249

Verify Existing Quote Configurations............................................................................................................250

Where Located.....................................................................................................................................250

Logic/Algorithms...................................................................................................................................250

Example................................................................................................................................................250

Web Input Name.........................................................................................................................................251

Where Located.....................................................................................................................................251

Expression Builder Functions.............................................................................................252Absolute Value............................................................................................................................................252

Where Located.....................................................................................................................................252

Proper Syntax.......................................................................................................................................252

Resulting Data Type..............................................................................................................................252

Logic/Algorithms...................................................................................................................................252

Example................................................................................................................................................252

Add.............................................................................................................................................................253

Where Located.....................................................................................................................................253

Proper Syntax.......................................................................................................................................253

Resulting Data Type..............................................................................................................................253

Logic/Algorithms...................................................................................................................................253

Example................................................................................................................................................253

Add Days to Date Value...............................................................................................................................253

11Epicor ERP | 9.05.702

ContentsConfigurator Technical Reference Guide

Page 12: Epicor Configurator

Where Located.....................................................................................................................................253

Proper Syntax.......................................................................................................................................253

Resulting Data Type..............................................................................................................................254

Logic/Algorithms...................................................................................................................................254

Example................................................................................................................................................254

Begins..........................................................................................................................................................254

Where Located.....................................................................................................................................254

Proper Syntax.......................................................................................................................................254

Resulting Data Type..............................................................................................................................254

Logic/Algorithms...................................................................................................................................254

Example................................................................................................................................................255

Combine Strings..........................................................................................................................................255

Where Located.....................................................................................................................................255

Proper Syntax.......................................................................................................................................255

Resulting Data Type..............................................................................................................................255

Logic/Algorithms...................................................................................................................................255

Example................................................................................................................................................255

Convert Date to String.................................................................................................................................256

Where Located.....................................................................................................................................256

Proper Syntax.......................................................................................................................................256

Resulting Data Type..............................................................................................................................256

Logic/Algorithms...................................................................................................................................256

Example................................................................................................................................................256

Convert Logical to String..............................................................................................................................256

Where Located.....................................................................................................................................256

Proper Syntax.......................................................................................................................................256

Resulting Data Type..............................................................................................................................257

Logic/Algorithms...................................................................................................................................257

Example................................................................................................................................................257

Convert Number to String............................................................................................................................257

Where Located.....................................................................................................................................257

Proper Syntax.......................................................................................................................................257

Resulting Data Type..............................................................................................................................257

Logic/Algorithms...................................................................................................................................257

Example................................................................................................................................................258

Convert String to Decimal............................................................................................................................258

Where Located.....................................................................................................................................258

Proper Syntax.......................................................................................................................................258

Resulting Data Type..............................................................................................................................258

Logic/Algorithms...................................................................................................................................258

Example................................................................................................................................................258

Convert String to Integer.............................................................................................................................259

Where Located.....................................................................................................................................259

Proper Syntax.......................................................................................................................................259

Resulting Data Type..............................................................................................................................259

Epicor ERP | 9.05.70212

Configurator Technical Reference GuideContents

Page 13: Epicor Configurator

Logic/Algorithms...................................................................................................................................259

Example................................................................................................................................................259

Cosecant.....................................................................................................................................................260

Where Located.....................................................................................................................................260

Proper Syntax.......................................................................................................................................260

Resulting Data Type..............................................................................................................................260

Logic/Algorithms...................................................................................................................................260

Example................................................................................................................................................260

Cosine.........................................................................................................................................................260

Where Located.....................................................................................................................................260

Proper Syntax.......................................................................................................................................260

Resulting Data Type..............................................................................................................................261

Logic/Algorithms...................................................................................................................................261

Example................................................................................................................................................261

Cotangent...................................................................................................................................................261

Where Located.....................................................................................................................................261

Proper Syntax.......................................................................................................................................261

Resulting Data Type..............................................................................................................................261

Logic/Algorithms...................................................................................................................................261

Example................................................................................................................................................261

Cube Root...................................................................................................................................................262

Where Located.....................................................................................................................................262

Proper Syntax.......................................................................................................................................262

Resulting Data Type..............................................................................................................................262

Logic/Algorithms...................................................................................................................................262

Example................................................................................................................................................262

Current Date................................................................................................................................................263

Where Located.....................................................................................................................................263

Proper Syntax.......................................................................................................................................263

Resulting Data Type..............................................................................................................................263

Logic/Algorithms...................................................................................................................................263

Example................................................................................................................................................263

Current Time...............................................................................................................................................263

Where Located.....................................................................................................................................263

Proper Syntax.......................................................................................................................................263

Resulting Data Type..............................................................................................................................264

Logic/Algorithms...................................................................................................................................264

Example................................................................................................................................................264

Date Constant/Field/Input/Calculation..........................................................................................................264

Where Located.....................................................................................................................................264

Proper Syntax.......................................................................................................................................264

Resulting Data Type..............................................................................................................................264

Examples..............................................................................................................................................265

Dates Equal..................................................................................................................................................265

Where Located.....................................................................................................................................265

13Epicor ERP | 9.05.702

ContentsConfigurator Technical Reference Guide

Page 14: Epicor Configurator

Proper Syntax.......................................................................................................................................265

Resulting Data Type..............................................................................................................................265

Logic/Algorithms...................................................................................................................................265

Example................................................................................................................................................266

Dates Greater or Equal.................................................................................................................................266

Where Located.....................................................................................................................................266

Proper Syntax.......................................................................................................................................266

Resulting Data Type..............................................................................................................................266

Logic/Algorithms...................................................................................................................................266

Example................................................................................................................................................266

Dates Greater Than......................................................................................................................................267

Where Located.....................................................................................................................................267

Proper Syntax.......................................................................................................................................267

Resulting Data Type..............................................................................................................................267

Logic/Algorithms...................................................................................................................................267

Example................................................................................................................................................267

Dates Less or Equal......................................................................................................................................267

Where Located.....................................................................................................................................267

Proper Syntax.......................................................................................................................................267

Resulting Data Type..............................................................................................................................268

Logic/Algorithms...................................................................................................................................268

Example................................................................................................................................................268

Dates Less Than...........................................................................................................................................268

Where Located.....................................................................................................................................268

Proper Syntax.......................................................................................................................................268

Resulting Data Type..............................................................................................................................268

Logic/Algorithms...................................................................................................................................268

Example................................................................................................................................................269

Dates Not Equal...........................................................................................................................................269

Where Located.....................................................................................................................................269

Proper Syntax.......................................................................................................................................269

Resulting Data Type..............................................................................................................................269

Logic/Algorithms...................................................................................................................................269

Example................................................................................................................................................269

Day of Month..............................................................................................................................................270

Where Located.....................................................................................................................................270

Proper Syntax.......................................................................................................................................270

Resulting Data Type..............................................................................................................................270

Logic/Algorithms...................................................................................................................................270

Example................................................................................................................................................270

Day of Week................................................................................................................................................270

Where Located.....................................................................................................................................270

Proper Syntax.......................................................................................................................................270

Resulting Data Type..............................................................................................................................271

Logic/Algorithms...................................................................................................................................271

Epicor ERP | 9.05.70214

Configurator Technical Reference GuideContents

Page 15: Epicor Configurator

Example................................................................................................................................................271

Difference between Two Dates....................................................................................................................271

Where Located.....................................................................................................................................271

Proper Syntax.......................................................................................................................................271

Resulting Data Type..............................................................................................................................271

Logic/Algorithms...................................................................................................................................271

Example................................................................................................................................................272

Display as Time............................................................................................................................................272

Where Located.....................................................................................................................................272

Proper Syntax.......................................................................................................................................272

Resulting Data Type..............................................................................................................................272

Logic/Algorithms...................................................................................................................................272

Example................................................................................................................................................272

Divide..........................................................................................................................................................273

Where Located.....................................................................................................................................273

Proper Syntax.......................................................................................................................................273

Resulting Data Type..............................................................................................................................273

Logic/Algorithms...................................................................................................................................273

Example................................................................................................................................................273

Earlier of Two Dates.....................................................................................................................................273

Where Located.....................................................................................................................................274

Proper Syntax.......................................................................................................................................274

Resulting Data Type..............................................................................................................................274

Logic/Algorithms...................................................................................................................................274

Example................................................................................................................................................274

ExcelLookup.................................................................................................................................................274

Where Located.....................................................................................................................................274

Proper Syntax.......................................................................................................................................274

Resulting Data Type..............................................................................................................................275

Example................................................................................................................................................275

Factorial.......................................................................................................................................................276

Where Located.....................................................................................................................................276

Proper Syntax.......................................................................................................................................276

Resulting Data Type..............................................................................................................................276

Logic/Algorithms...................................................................................................................................276

Example................................................................................................................................................276

FieldHeight..................................................................................................................................................276

Where Located.....................................................................................................................................276

Proper Syntax.......................................................................................................................................276

Example................................................................................................................................................277

FieldIncrement.............................................................................................................................................277

Where Located.....................................................................................................................................277

Proper Syntax.......................................................................................................................................277

Example................................................................................................................................................277

FieldInitialValue............................................................................................................................................277

15Epicor ERP | 9.05.702

ContentsConfigurator Technical Reference Guide

Page 16: Epicor Configurator

Where Located.....................................................................................................................................277

Proper Syntax.......................................................................................................................................277

Example................................................................................................................................................278

FieldInvisible.................................................................................................................................................278

Where Located.....................................................................................................................................278

Proper Syntax.......................................................................................................................................278

Example................................................................................................................................................278

FieldLabel.....................................................................................................................................................278

Where Located.....................................................................................................................................278

Proper Syntax.......................................................................................................................................278

Example................................................................................................................................................279

FieldMaximumDate......................................................................................................................................279

Where Located.....................................................................................................................................279

Proper Syntax.......................................................................................................................................279

Example................................................................................................................................................279

FieldMinimumDate.......................................................................................................................................279

Where Located.....................................................................................................................................279

Proper Syntax.......................................................................................................................................279

Example................................................................................................................................................280

FieldMaximumDecimal.................................................................................................................................280

Where Located.....................................................................................................................................280

Proper Syntax.......................................................................................................................................280

Example................................................................................................................................................280

FieldMinimumDecimal..................................................................................................................................280

Where Located.....................................................................................................................................280

Proper Syntax.......................................................................................................................................280

Example................................................................................................................................................281

FieldRequired...............................................................................................................................................281

Where Located.....................................................................................................................................281

Proper Syntax.......................................................................................................................................281

Example................................................................................................................................................281

FieldSummaryLabel......................................................................................................................................281

Where Located.....................................................................................................................................281

Proper Syntax.......................................................................................................................................281

Example................................................................................................................................................282

FieldToolTip.................................................................................................................................................282

Where Located.....................................................................................................................................282

Proper Syntax.......................................................................................................................................282

Example................................................................................................................................................282

FieldValidList................................................................................................................................................282

Where Located.....................................................................................................................................282

Proper Syntax.......................................................................................................................................282

Example................................................................................................................................................283

FieldWidth...................................................................................................................................................283

Where Located.....................................................................................................................................283

Epicor ERP | 9.05.70216

Configurator Technical Reference GuideContents

Page 17: Epicor Configurator

Proper Syntax.......................................................................................................................................283

Example................................................................................................................................................283

FieldXPosition..............................................................................................................................................284

Where Located.....................................................................................................................................284

Proper Syntax.......................................................................................................................................284

Example................................................................................................................................................284

FieldYPosition..............................................................................................................................................284

Where Located.....................................................................................................................................284

Proper Syntax.......................................................................................................................................284

Example................................................................................................................................................284

Greater of Two Numbers.............................................................................................................................285

Where Located.....................................................................................................................................285

Proper Syntax.......................................................................................................................................285

Resulting Data Type..............................................................................................................................285

Logic/Algorithms...................................................................................................................................285

Example................................................................................................................................................285

Greater of Two Strings.................................................................................................................................286

Where Located.....................................................................................................................................286

Proper Syntax.......................................................................................................................................286

Resulting Data Type..............................................................................................................................286

Logic/Algorithms...................................................................................................................................286

Example................................................................................................................................................286

If first expression is true return second else third date...................................................................................287

Where Located.....................................................................................................................................287

Proper Syntax.......................................................................................................................................287

Resulting Data Type..............................................................................................................................287

Logic/Algorithms...................................................................................................................................287

Example................................................................................................................................................287

If first expression is true return second else third number.............................................................................288

Where Located.....................................................................................................................................288

Proper Syntax.......................................................................................................................................288

Resulting Data Type..............................................................................................................................288

Logic/Algorithms...................................................................................................................................288

Example................................................................................................................................................288

If first expression is true return second else third string.................................................................................289

Where Located.....................................................................................................................................289

Proper Syntax.......................................................................................................................................289

Resulting Data Type..............................................................................................................................289

Logic/Algorithms...................................................................................................................................289

Example................................................................................................................................................289

Later of Two Dates.......................................................................................................................................289

Where Located.....................................................................................................................................290

Proper Syntax.......................................................................................................................................290

Resulting Data Type..............................................................................................................................290

Logic/Algorithms...................................................................................................................................290

17Epicor ERP | 9.05.702

ContentsConfigurator Technical Reference Guide

Page 18: Epicor Configurator

Example................................................................................................................................................290

Least Common Multiple...............................................................................................................................290

Where Located.....................................................................................................................................290

Proper Syntax.......................................................................................................................................290

Resulting Data Type..............................................................................................................................290

Logic/Algorithms...................................................................................................................................291

Example................................................................................................................................................291

Length of String...........................................................................................................................................291

Where Located.....................................................................................................................................291

Proper Syntax.......................................................................................................................................291

Resulting Data Type..............................................................................................................................291

Logic/Algorithms...................................................................................................................................291

Example................................................................................................................................................291

Lesser of Two Strings...................................................................................................................................292

Where Located.....................................................................................................................................292

Proper Syntax.......................................................................................................................................292

Resulting Data Type..............................................................................................................................292

Logic/Algorithms...................................................................................................................................292

Example................................................................................................................................................292

Log Base e...................................................................................................................................................292

Where Located.....................................................................................................................................292

Proper Syntax.......................................................................................................................................292

Resulting Data Type..............................................................................................................................293

Logic/Algorithms...................................................................................................................................293

Example................................................................................................................................................293

Log Base n...................................................................................................................................................293

Where Located.....................................................................................................................................293

Proper Syntax.......................................................................................................................................293

Resulting Data Type..............................................................................................................................293

Logic/Algorithms...................................................................................................................................293

Example................................................................................................................................................294

Logical AND.................................................................................................................................................294

Where Located.....................................................................................................................................294

Proper Syntax.......................................................................................................................................294

Resulting Data Type..............................................................................................................................294

Logic/Algorithms...................................................................................................................................294

Example................................................................................................................................................294

Logical Constant/Field/Input/Calculation.......................................................................................................295

Where Located.....................................................................................................................................295

Proper Syntax.......................................................................................................................................295

Resulting Data Type..............................................................................................................................295

Examples..............................................................................................................................................295

Logical expression........................................................................................................................................296

Where Located.....................................................................................................................................296

Proper Syntax.......................................................................................................................................296

Epicor ERP | 9.05.70218

Configurator Technical Reference GuideContents

Page 19: Epicor Configurator

Resulting Data Type..............................................................................................................................296

Logic/Algorithms...................................................................................................................................296

Example................................................................................................................................................296

Logical OR...................................................................................................................................................296

Where Located.....................................................................................................................................296

Proper Syntax.......................................................................................................................................296

Resulting Data Type..............................................................................................................................297

Logic/Algorithms...................................................................................................................................297

Example................................................................................................................................................297

Matches.......................................................................................................................................................297

Where Located.....................................................................................................................................297

Proper Syntax.......................................................................................................................................297

Resulting Data Type..............................................................................................................................298

Logic/Algorithms...................................................................................................................................298

Example................................................................................................................................................298

Month of Year.............................................................................................................................................298

Where Located.....................................................................................................................................298

Proper Syntax.......................................................................................................................................298

Resulting Data Type..............................................................................................................................298

Logic/Algorithms...................................................................................................................................298

Example................................................................................................................................................299

Multiply.......................................................................................................................................................299

Where Located.....................................................................................................................................299

Proper Syntax.......................................................................................................................................299

Resulting Data Type..............................................................................................................................299

Logic/Algorithms...................................................................................................................................299

Example................................................................................................................................................299

Negate logical expression (NOT)...................................................................................................................300

Where Located.....................................................................................................................................300

Proper Syntax.......................................................................................................................................300

Resulting Data Type..............................................................................................................................300

Logic/Algorithms...................................................................................................................................300

Example................................................................................................................................................300

Numbers Equal............................................................................................................................................301

Where Located.....................................................................................................................................301

Proper Syntax.......................................................................................................................................301

Resulting Data Type..............................................................................................................................301

Logic/Algorithms...................................................................................................................................301

Example................................................................................................................................................301

Numbers Greater or Equal............................................................................................................................302

Where Located.....................................................................................................................................302

Proper Syntax.......................................................................................................................................302

Resulting Data Type..............................................................................................................................302

Logic/Algorithms...................................................................................................................................302

Example................................................................................................................................................302

19Epicor ERP | 9.05.702

ContentsConfigurator Technical Reference Guide

Page 20: Epicor Configurator

Numbers Greater Than.................................................................................................................................303

Where Located.....................................................................................................................................303

Proper Syntax.......................................................................................................................................303

Resulting Data Type..............................................................................................................................303

Logic/Algorithms...................................................................................................................................303

Example................................................................................................................................................303

Numbers Less or Equal.................................................................................................................................304

Where Located.....................................................................................................................................304

Proper Syntax.......................................................................................................................................304

Resulting Data Type..............................................................................................................................304

Logic/Algorithms...................................................................................................................................304

Example................................................................................................................................................304

Numbers Less Than......................................................................................................................................305

Where Located.....................................................................................................................................305

Proper Syntax.......................................................................................................................................305

Resulting Data Type..............................................................................................................................305

Logic/Algorithms...................................................................................................................................305

Example................................................................................................................................................305

Numbers Not Equal......................................................................................................................................306

Where Located.....................................................................................................................................306

Proper Syntax.......................................................................................................................................306

Resulting Data Type..............................................................................................................................306

Logic/Algorithms...................................................................................................................................306

Example................................................................................................................................................306

Numeric Constant/Field/Input/Calculation.....................................................................................................306

Where Located.....................................................................................................................................307

Proper Syntax.......................................................................................................................................307

Resulting Data Type..............................................................................................................................307

Examples..............................................................................................................................................307

Raise to a Power..........................................................................................................................................308

Where Located.....................................................................................................................................308

Proper Syntax.......................................................................................................................................308

Resulting Data Type..............................................................................................................................308

Logic/Algorithms...................................................................................................................................308

Example................................................................................................................................................308

Random.......................................................................................................................................................308

Where Located.....................................................................................................................................308

Proper Syntax.......................................................................................................................................308

Resulting Data Type..............................................................................................................................309

Logic/Algorithms...................................................................................................................................309

Example................................................................................................................................................309

Remainder...................................................................................................................................................309

Where Located.....................................................................................................................................309

Proper Syntax.......................................................................................................................................309

Resulting Data Type..............................................................................................................................309

Epicor ERP | 9.05.70220

Configurator Technical Reference GuideContents

Page 21: Epicor Configurator

Logic/Algorithms...................................................................................................................................309

Example................................................................................................................................................310

Round..........................................................................................................................................................310

Where Located.....................................................................................................................................310

Proper Syntax.......................................................................................................................................310

Resulting Data Type..............................................................................................................................310

Logic/Algorithms...................................................................................................................................310

Example................................................................................................................................................310

Secant.........................................................................................................................................................311

Where Located.....................................................................................................................................311

Proper Syntax.......................................................................................................................................311

Resulting Data Type..............................................................................................................................311

Logic/Algorithms...................................................................................................................................311

Example................................................................................................................................................311

Set Next Input Page.....................................................................................................................................311

Where Located.....................................................................................................................................312

Proper Syntax.......................................................................................................................................312

Resulting Data Type..............................................................................................................................312

Logic/Algorithms...................................................................................................................................312

Example................................................................................................................................................312

Set Part Number..........................................................................................................................................312

Set Previous Input Page................................................................................................................................313

Where Located.....................................................................................................................................314

Proper Syntax.......................................................................................................................................314

Resulting Data Type..............................................................................................................................314

Logic/Algorithms...................................................................................................................................314

Example................................................................................................................................................314

Sine.............................................................................................................................................................314

Where Located.....................................................................................................................................314

Proper Syntax.......................................................................................................................................314

Resulting Data Type..............................................................................................................................314

Logic/Algorithms...................................................................................................................................315

Example................................................................................................................................................315

Smaller of Two Numbers..............................................................................................................................315

Where Located.....................................................................................................................................315

Proper Syntax.......................................................................................................................................315

Resulting Data Type..............................................................................................................................315

Logic/Algorithms...................................................................................................................................315

Example................................................................................................................................................315

Square Root.................................................................................................................................................316

Where Located.....................................................................................................................................316

Proper Syntax.......................................................................................................................................316

Resulting Data Type..............................................................................................................................316

Logic/Algorithms...................................................................................................................................316

Example................................................................................................................................................316

21Epicor ERP | 9.05.702

ContentsConfigurator Technical Reference Guide

Page 22: Epicor Configurator

String Constant/Field/Input/Calculation........................................................................................................316

Where Located.....................................................................................................................................317

Proper Syntax.......................................................................................................................................317

Resulting Data Type..............................................................................................................................317

Examples..............................................................................................................................................317

Strings Equal................................................................................................................................................317

Where Located.....................................................................................................................................317

Proper Syntax.......................................................................................................................................317

Resulting Data Type..............................................................................................................................318

Logic/Algorithms...................................................................................................................................318

Example................................................................................................................................................318

Strings Greater or Equal...............................................................................................................................318

Where Located.....................................................................................................................................318

Proper Syntax.......................................................................................................................................318

Resulting Data Type..............................................................................................................................318

Logic/Algorithms...................................................................................................................................318

Example................................................................................................................................................319

Strings Greater Than....................................................................................................................................319

Where Located.....................................................................................................................................319

Proper Syntax.......................................................................................................................................319

Resulting Data Type..............................................................................................................................319

Logic/Algorithms...................................................................................................................................319

Example................................................................................................................................................319

Strings Less or Equal....................................................................................................................................320

Where Located.....................................................................................................................................320

Proper Syntax.......................................................................................................................................320

Resulting Data Type..............................................................................................................................320

Logic/Algorithms...................................................................................................................................320

Example................................................................................................................................................320

Strings Less Than.........................................................................................................................................321

Where Located.....................................................................................................................................321

Proper Syntax.......................................................................................................................................321

Resulting Data Type..............................................................................................................................321

Logic/Algorithms...................................................................................................................................321

Example................................................................................................................................................321

Strings Not Equal.........................................................................................................................................322

Where Located.....................................................................................................................................322

Proper Syntax.......................................................................................................................................322

Resulting Data Type..............................................................................................................................322

Logic/Algorithms...................................................................................................................................322

Example................................................................................................................................................322

Substring.....................................................................................................................................................323

Where Located.....................................................................................................................................323

Proper Syntax.......................................................................................................................................323

Resulting Data Type..............................................................................................................................323

Epicor ERP | 9.05.70222

Configurator Technical Reference GuideContents

Page 23: Epicor Configurator

Logic/Algorithms...................................................................................................................................323

Example................................................................................................................................................323

Subtract.......................................................................................................................................................323

Where Located.....................................................................................................................................324

Proper Syntax.......................................................................................................................................324

Resulting Data Type..............................................................................................................................324

Logic/Algorithms...................................................................................................................................324

Example................................................................................................................................................324

Subtract Days from Date Value....................................................................................................................324

Where Located.....................................................................................................................................324

Proper Syntax.......................................................................................................................................324

Resulting Data Type..............................................................................................................................325

Logic/Algorithms...................................................................................................................................325

Example................................................................................................................................................325

Tangent.......................................................................................................................................................325

Where Located.....................................................................................................................................325

Proper Syntax.......................................................................................................................................325

Resulting Data Type..............................................................................................................................325

Logic/Algorithms...................................................................................................................................325

Example................................................................................................................................................325

Truncate......................................................................................................................................................326

Where Located.....................................................................................................................................326

Proper Syntax.......................................................................................................................................326

Resulting Data Type..............................................................................................................................326

Logic/Algorithms...................................................................................................................................326

Example................................................................................................................................................326

Year Value...................................................................................................................................................327

Where Located.....................................................................................................................................327

Proper Syntax.......................................................................................................................................327

Resulting Data Type..............................................................................................................................327

Logic/Algorithms...................................................................................................................................327

Example................................................................................................................................................327

Context Functions...............................................................................................................328Current Configuration Mode.......................................................................................................................328

Where Located.....................................................................................................................................328

Proper Syntax.......................................................................................................................................328

Resulting Data Type..............................................................................................................................329

Logic/Algorithms...................................................................................................................................329

Example................................................................................................................................................329

Current Company........................................................................................................................................329

Where Located.....................................................................................................................................329

Proper Syntax.......................................................................................................................................329

Resulting Data Type..............................................................................................................................329

Logic/Algorithms...................................................................................................................................329

Example................................................................................................................................................329

23Epicor ERP | 9.05.702

ContentsConfigurator Technical Reference Guide

Page 24: Epicor Configurator

Current Job Number....................................................................................................................................330

Where Located.....................................................................................................................................330

Proper Syntax.......................................................................................................................................330

Resulting Data Type..............................................................................................................................330

Logic/Algorithms...................................................................................................................................330

Example................................................................................................................................................330

Current Order Number.................................................................................................................................331

Where Located.....................................................................................................................................331

Proper Syntax.......................................................................................................................................331

Resulting Data Type..............................................................................................................................331

Logic/Algorithms...................................................................................................................................331

Example................................................................................................................................................331

Current Order Line.......................................................................................................................................332

Where Located.....................................................................................................................................332

Proper Syntax.......................................................................................................................................332

Resulting Data Type..............................................................................................................................332

Logic/Algorithms...................................................................................................................................332

Example................................................................................................................................................332

Current Plant...............................................................................................................................................333

Where Located.....................................................................................................................................333

Proper Syntax.......................................................................................................................................333

Resulting Data Type..............................................................................................................................333

Logic/Algorithms...................................................................................................................................333

Example................................................................................................................................................333

Current Quote Number................................................................................................................................334

Where Located.....................................................................................................................................334

Proper Syntax.......................................................................................................................................334

Resulting Data Type..............................................................................................................................334

Logic/Algorithms...................................................................................................................................334

Example................................................................................................................................................334

Current Quote Line......................................................................................................................................335

Where Located.....................................................................................................................................335

Proper Syntax.......................................................................................................................................335

Resulting Data Type..............................................................................................................................335

Logic/Algorithms...................................................................................................................................335

Example................................................................................................................................................335

Current Assembly Sequence.........................................................................................................................336

Where Located.....................................................................................................................................336

Proper Syntax.......................................................................................................................................336

Resulting Data Type..............................................................................................................................336

Logic/Algorithms...................................................................................................................................336

Example................................................................................................................................................336

Current Material Sequence..........................................................................................................................336

Where Located.....................................................................................................................................336

Proper Syntax.......................................................................................................................................336

Epicor ERP | 9.05.70224

Configurator Technical Reference GuideContents

Page 25: Epicor Configurator

Resulting Data Type..............................................................................................................................337

Logic/Algorithms...................................................................................................................................337

Example................................................................................................................................................337

Current Operation Detail Sequence..............................................................................................................337

Where Located.....................................................................................................................................337

Proper Syntax.......................................................................................................................................337

Resulting Data Type..............................................................................................................................337

Logic/Algorithms...................................................................................................................................337

Example(s)............................................................................................................................................337

Current Operation Sequence........................................................................................................................338

Where Located.....................................................................................................................................338

Proper Syntax.......................................................................................................................................338

Resulting Data Type..............................................................................................................................338

Logic/Algorithms...................................................................................................................................338

Example(s)............................................................................................................................................338

Current User ID............................................................................................................................................338

Where Located.....................................................................................................................................338

Proper Syntax.......................................................................................................................................338

Logic/Algorithms...................................................................................................................................339

Example(s)............................................................................................................................................339

Configurator in Action.......................................................................................................340Wavy Rider Products....................................................................................................................................340

Wavy Rider Configurator Q&A Input Page.............................................................................................341

Creating an Options Planning Spreadsheet...........................................................................................342

Creating the Base "Universal" Part and Part Revision............................................................................342

Creating the Configuration Q&A Input Page.........................................................................................343

Creating a No Input Configurator................................................................................................................371

Defining a No Input Configuration........................................................................................................372

Appendix: Epicor-Supplied Programs................................................................................378

25Epicor ERP | 9.05.702

ContentsConfigurator Technical Reference Guide

Page 26: Epicor Configurator

Introduction

Purpose of this Guide

The Configurator Technical Reference Guide examines, in detail, the primary components that make up theConfigurator, the base calculations used when defining configured items, and the modifiers used to refine thesuggestion results. Many of the primary components discussed in this guide perform more functions than whatis described.

For more information about these features, review the related topics in the online Help System, contact yourconsultant, or enroll in an appropriate Epicor course.

When you finish reading this guide, you will understand the logic behind the Configurator. This information willhelp you when you design configuration processes for Make-to-Order (MTO) products. You will be able to setup configurations to best create accurate Methods of Manufacture (that specify the exact material content andmanufacturing sequences) when these items are ordered, quoted or manufactured.

Intended Audience

This guide is intended for individuals within your company responsible or partially responsible for configuringand designing products.

Individuals who have this responsibility:

• Are involved with some aspect of Product Design or Engineering.

• Assist in configuring highly engineered products with complex requirements and a myriad of material andmanufacturing options.

• Design and modify the manufacturing processes required to build configured products.

• Uses Order Entry, Opportunity/Quote Entry, Purchase Order Entry, Job Entry or Demand Entry to quote, orderor purchase materials or start the manufacturing of configured items.

• Note Individuals who perform all or some of these tasks will benefit from reviewing the ConfiguratorTechnical Reference Guide. To review demand order processing, refer to the EDI / DemandManagement Technical Reference Guide.

How it is Organized

This guide first explores the concepts behind the Configurator and then details the items that affect the outcomeof the configured product. Each subsequent section explores more detailed information than the previous section.

The following are the main sections of this guide:

1. Configurator Concepts and Base Components - This section explores the underlying concepts behindthe Configurator. We recommend that you read this section first, as the rest of the guide references the

Epicor ERP | 9.05.70226

Configurator Technical Reference GuideIntroduction

Page 27: Epicor Configurator

information contained in this section. It also documents the main records used by the Configurator, suchas the Configurator Designer, rules, part creation and expression functions.

2. Implementation Calculations and Values - This section explores the main calculations and base valuesof the Configurator. Review this material to learn about designing configurations, defining rules, usingexpression functions, and verifying configurations.

3. Modifiers - This section documents any fields or functions that you can use to adjust the outcome of theConfigurator. The material examines input designer detail modifiers, dynamic lists, part creation, On Leave/ Prompt When expressions and Global Input Variables.

4. Expression Builder Functions - This section details expression functions that are used when defining aconfiguration On Leave, Prompt When, Dynamic List or Rule expressions for a part.

5. Context Functions - This section details context functions that have been developed by Epicor for use whendefining a configuration for a part. Context functions can be used in expressions for pricing, Prompt When,On Leave and Dynamic List processing.

6. Configurator in Action - This section contains a detailed example that explores how to implement theConfigurator with a product line.

Please note that to clarify how the Configurator works, the concepts behind each item are often repeated withinother items. This is done to show how the various components, calculations, values, and modifiers work togetherto create accurate configuration designs.

27Epicor ERP | 9.05.702

IntroductionConfigurator Technical Reference Guide

Page 28: Epicor Configurator

Configurator Concepts and Base Components

The Configurator is designed to facilitate the efficient ordering and manufacture of items with complexrequirements and a myriad of options. It provides companies that build highly customizable and dimensionalMake-to-Order (MTO) products with the ability to create accurate Methods of Manufacture (manufacturingroutings and material content).

Actual on-the-fly product configuration takes place using an interactive Question and Answer input session whenthe base universal part is entered into Order Entry, Opportunity/Quote Entry, Purchase Order Entry, Job Entry orDemand Entry. This configuration process is also Web-enabled, available to remotely connected users throughuse of the Mobile Connect functionality in their Epicor ERP solution. The Configurator can be used to automatesales force efforts, facilitate closer supplier-customer partnerships, lower the workload of the Engineeringdepartment or to generate standardized parts and components.

The Configuration Session

When the base universal part is entered on a quote, order, job, purchase order or demand order, and the userelects to configure the item, an interactive Question and Answer session (referred to as the configuration sessionthroughout this document) appears. Part records contain base information that the Configurator uses to identifyan item as configured part; this is the top-level "universal" base assembly item for which a product configurationis being defined.

Epicor ERP | 9.05.70228

Configurator Technical Reference GuideConfigurator Concepts and Base Components

Page 29: Epicor Configurator

Depending on how the configuration has been designed, the configuration session prompts for entry of a "SmartString", or for entry or selection of the specific product parameters required to create end-item productconfigurations unique to specific customer requirements.

• The configuration page pictured above has been implemented for use by Wavy Rider Products, manufacturersof a complete line of pontoon boats. Specific pontoon models are designed and intended for use for certaintypes of water activities - fishing, family/leisure or water sports. The customer's primary use of the boat hasa strong bearing on what type of model should be selected, and how it should be configured (that is, whatspecific options can be selected and added to the boat during its manufacture). Each model is highlyconfigurable - the customer can select color, motor size, and electronics (Fisher Finder and sound system).

• The manner in which the Configurator operates, and the specific input pages that display in these sessionsare designed and created using a highly sophisticated, very flexible Configurator Designer. This providesyou with the means to capture in-depth product design engineering knowledge and translate it into aneasy-to-use Expert system for use by order, quote, job, purchase or demand entry personnel.

• Building the universal part and an associated product configuration mechanism requires several distinct steps.Refer to the Implementation Components and Calculations section for detailed information on each ofthese Configurator components. For a detailed explanation of how the Wavy Rider Products configurator wasconstructed, refer to Wavy Rider Products in the Configurator in Action section.

Note If using the Multi-Company Configurator functions, you can also invoke a Configurator Q&A sessionto configure purchased materials associated with enterprise configurator parts when they are added asmaterial content in Opportunity/Quote Entry and in Job Entry. These are items for which the Type fieldhas been set to Purchased in the Part Maintenance > Part > Detail sheet, and have been designated asan Enterprise Configurator. Refer to the Manufacturing Company Processing topic in the Configuratorin a Multi-Company Enterprise section.

29Epicor ERP | 9.05.702

Configurator Concepts and Base ComponentsConfigurator Technical Reference Guide

Page 30: Epicor Configurator

The Evaluation Process

As the user operates configuration input pages and enters or selects specific parameters, the Configurator collectsthis information and performs a series of evaluations required to generate end-item configurations unique to thecustomer's specific requirements.

Epicor ERP | 9.05.70230

Configurator Technical Reference GuideConfigurator Concepts and Base Components

Page 31: Epicor Configurator

It performs the following evaluations at the input control and page-levels during and after configuration parameterprocessing:

• If (optional) Smart String Configuration processing is being used, the Epicor application attempts to parse,process and load all associated configuration input values from the supplied string value.

• Applies any On Leave and Prompt When rules associated with the input page and individual input controls.If designated in the configuration, this occurs during page-level processing, rather than being processed atthe input control level.

• Determines the manner in which attributes and controls that have been placed on the input page shouldoperate.

• Processes applicable method rules that determine the behavior of specific controls, and calculate specificmaterial requirements for the configured end-item.

• Collects information from the configuration entries (and from the originating sales order, quote, purchaseorder or demand order) to calculate unit pricing for the configured end-item.

• Generates part master and Smart String information for the configured end-item.

Smart String Configuration Parsing

In a traditional configuration session, after you click the Configure button in Opportunity/Quote Entry, OrderEntry, Purchase Order Entry, Job Entry or Demand Entry, the Epicor application directly accesses, and sequentiallydisplays each of the configuration input pages you have created for the current configurator in the ConfiguratorDesigner.

When the Smart String Configuration check box in the Configurator Designer > Status sheet has selected forthe item being configured, the Epicor application displays a dialog box during the actual configuration session,prompting for entry of smart string value. It then attempts to process and load all associated configuration inputvalues from the supplied string.

• To properly process the smart string values, the Epicor application determines the starting and endingpositions for each of configuration values contained within a typical smart string, based on the parametersdefined in the Configurator Designer > Smart String sheet.

• For example, the first string position (Color) might be start in position 1, end in position 2 and represent thecolor of the item, while positions 3 and 4 (Metal Type) might represent the type of metal used for the item.

Page Level Processing

The Configurator Designer - Input Rules > Page Detail sheet can be used during Configurator implementationto specify how dynamic lists, On Leave and Prompt When expressions should be processed and loaded for aspecific input page during a configuration session.

The Configurator Designer > Input Rules > Page Detail sheet can be used during Configurator implementationto specify how dynamic lists, On Leave and Prompt When expressions should be processed and loaded for aspecific input page during a configuration session. The behavior of the input page being operated is dependenton how these parameters have been defined:

• For example, when an input page normally loads during a configuration session, the Epicor application loadsall On Leave expressions that have been defined for specific input pages or individual controls (fields) beforedata entry commences, or after leaving a page. This normal loading can be suspended for a specific page.Refer to On Leave and Prompt When Expression Processing on the next page for more details.

• During a normal configuration session, On Leave expressions are first evaluated before dynamic list conditionsfor a combo box control. If page level processing is in effect for the input page, parameters can be set thatdesignate that dynamic list conditions should be evaluated and processed before On Leave expressions for allcombo box controls. Refer to Dynamic List Processing on the next page for more details.

31Epicor ERP | 9.05.702

Configurator Concepts and Base ComponentsConfigurator Technical Reference Guide

Page 32: Epicor Configurator

• Parameters can be set to process Prompt When expressions associated with the input page, but skip displayof the input page itself during a configuration session if all inputs are disabled or are invisible (either ifdesignated as such in the Invisible check box in the Input Rules > Inputs > Detail sheet, or when inputs aredynamically displayed or disabled based on specified rules). Another parameter designates if any On Leaveexpressions that have been defined for controls on the input page should still be processed even if the inputpage itself is being skipped.

• If On Leave or Prompt When logic has been defined for the page itself, the Epicor application applies the logicat the page level in the same manner as it does at the controls (field) level. Refer to On Leave and PromptWhen Expression Processing on the pages that follow for more details.

Input Control Display Processing

The Input Rules > Page and Input Rules > Inputs > Detail sheets, used during configuration implementation,define the manner in which attributes and controls that have been placed on the input page should operate.They designate how the Epicor application should display information about for input control: the name, type,format, and necessary conditions for the input.

These parameters include (but are not limited to) the following:

• If the Global check box has been selected for the input control being operated, it designates that traitsspecified for the input field (such as Color) are global for an entire sales order, quote, purchase order ordemand order. In this scenario, when the user enters a value into this field while configuring the part inOpportunity/Quote Entry, Order Entry, Job Entry, Purchase Order Entry or Demand Entry, the following appearsasking if they would like to apply this value across all detail lines:

• The Global Input Variable check box designates if information entered into an input control can be sharedbetween parent and child configurations that are executed in a single Q&A session for a single quote line,order line, job, purchase order or demand order. It allows linking of the global variable in each configurationto a local input variable.

• For example, the pontoon configurator consists of a parent configuration (model selection) and childconfigurations for other options on the selected boat. If Global Input Variable processing has enabled for theColor control, the Epicor application passes the selected color to the associated "child" configurations, resultingin a color -coordinated set.

• This eliminates the need to prompt for color selection for each option unless the configurator has beenconstructed to do this. Refer to Global Input Variables for detailed information how this is set up and howit operates.

• The Required check box designates if the control is a required field. The user must enter a value into theinput during an actual configuration session.

• The Tab Order field designates the order in which the cursor moves through the input fields when the Tabkey is used.

• The Format field designates the acceptable format for Character, Date and Decimal type input controls.

• The Initial Value field sets the default value (if any) for the input control being operated (for example, ABC).

• The Minimum and Maximum fields specify the range of valid dates or numbers that can be entered intoDate or Decimal type input controls.

Refer to Input Rules > Page / Design Toolbox and Input Rules > Inputs > Detail for detailed information.

Epicor ERP | 9.05.70232

Configurator Technical Reference GuideConfigurator Concepts and Base Components

Page 33: Epicor Configurator

On Leave and Prompt When Expression Processing

At the input control level, the Configurator determines if On Leave or Prompt When expressions have beendefined for the input page, and individual input control being operated. During a configuration session, theEpicor application normally processes Prompt When logic when the entire page loads, when you physically leavea control for which an On Leave expression is defined, or when you exit a page.

• Prompt When expressions contain the conditions under which a particular control (field) should appear onan input page. If the condition is satisfied (is true), the Epicor application enables the control during theconfiguration session. Conversely, if the condition is false (is not satisfied), the control is disabled (does notappear) during the session.

• Prompt When logic that has been defined for an input may be dependent on the value of another input, andthe value of this input may have changed during the processing of the On Leave expression. The Epicorapplication processes the Prompt When logic with the resulting input values after the On Leave expressionhas been processed, and then appropriately enables or disables the field.

• If no Prompt When has been defined for a specific input control, it is always enabled.

• On Leave expressions designate the actions that should take place when exiting a particular control (field) onan input page during an actual configuration session. For example, expressions can be constructed that assignvalues to other inputs after leaving the current control or field, or that call external programs to performadditional processing.

• The settings of the Configurator Designer > Input Rules > Page Detail sheet have a profound impact on howOn Leave expressions are loaded and handled when an input page is processed during an actual configurationsession. Refer to Input Rules > Page Detail for more information.

For example, the Sound System selection check box contains an On Leave expression that states that the checkbox can only be used when a premium model has been selected for configuration. If a lower-priced base modelhas been selected, the Epicor application disables the control and it cannot be used.

Dynamic List Processing

If a combo box input control is being used, the Configurator determines if Dynamic List logic has been enabledfor the control. The display of specific options often times depend on the entries or selections made in otherfields in a configuration session.

If a combo box input control is being used, the Configurator determines if Dynamic List logic has been enabledfor the control. The display of specific options often times depend on the entries or selections made in otherfields in a configuration session. Unlike standard combo-boxes that offer a fixed set of option selections, dynamiclists causes dynamic display of sets of option selections during a configuration session that based on conditionspreviously defined during the configuration implementation process in the Expression Builder.

• If Dynamic List logic is being used for the control, the Epicor application determines if the associated expressionconditions have been satisfied.

• If the condition has been satisfied, the input control displays the specific set of options specified for thatcondition. The dynamic lists can also be constructed so that option sets are populated based on inputs orvalues passed in an external list or files. Refer to Input Rules > Inputs > Detail > Dynamic Lists > Detailfor detailed information on Dynamic Lists processing.

In the Wavy Rider Products example, specific pontoon models are designed and intended for use for certain typesof water activities - fishing, family/leisure or water sports. The customer's primary use of the boat has a strongbearing on what type of model should be selected, and how it should be configured. Depending on the selectionmade in the Activity combo box, the Model combo box displays a dynamic listing of model option selectionsthat are appropriate for the selected activity. This information is passed in to the configurator from an externalExcel spreadsheet..

33Epicor ERP | 9.05.702

Configurator Concepts and Base ComponentsConfigurator Technical Reference Guide

Page 34: Epicor Configurator

Method Rules Processing

At the input control level, the Configurator determines if method rules have been defined for the control beingoperated. These method rules determine what specific raw materials, subassemblies and operations are requiredto generate unique Method of Manufacture records for a specific configuration when creating quote or jobdetails.

Other types of rules perform computations, such as material "quantity per" or operation run time durations.Refer to Use of Rules Types in Rules Processing for detailed information.

Calculation Rules

If Calculation type rules have been defined for the input control, the Epicor application performs the calculationas entries are made during a configuration session. It stores calculated values that may be required for use inother rules, based on the formula specified in the method rule.

• This allows the configurator to accommodate non-standard values that vary based on configuration sessionentries (for example, calculation of area for component materials with varying widths and heights).

• If a series of Set Field type rules have been defined that are updated based on the results of an identicalcalculation that each one uses, the Epicor application can perform the same calculation using a single Calculationrule instead of duplicating the same calculation over and over (on multiple assemblies, materials, operations).

• For example, if you created a Calculation Rule called Area, that application calculates area based on multiplyingwidth and height entries during a configuration session, the Epicor application stores the results of thecalculation in the generated rule programs in a shared variable called Area.

Keep When Rules

If Keep When type rules have been defined for the input control, the Epicor application selects the materials andassemblies and operations required for a particular configuration, based on user input during a configurationsession. This rule type specifies the conditions under which this material or operation should remain in the Methodof Manufacture.

• A better method of referring to these rules is as "Only Keep When" rules (that is, defining only those conditionsunder which specified materials or operations should remain on the Method of Manufacture for the configuredpart). They instruct the Epicor application to select operation or material during a configuration session (basedon date, numeric, logical, or string data).

• For example, Wavy Rider Products offers two different types of Fish Finders for their pontoon boats - a standardmodel and a GPS-enabled model. The Configurator uses Keep When rules to eliminate the fish finder completelyif none is selected.

Program Call Rules

If Program Call type rules have been defined for the input control, the Epicor application transfers control to thespecified external program to perform instructions, and returns the result to the configuration.

Rule Types Used by Get Details Sheet in Order Entry, Opportunity/Quote Entry or Job Entry

The Epicor application uses the following rules to populate the Get Details sheet when creating a job for theconfigured part in Order Entry, Opportunity/Quote Entry or Job Entry:

• Set Field Rules - If Set Field rules been defined for the configuration, it assigns a value to a data field in anoperation or material record for a quote or job, based on the calculations and inputs made during aconfiguration session. The Set Field rule if often defined for those fields whose values change based on theinputs. The most common use of this rule type is for calculation of run times on manufacturing operations.Based on entries made during a configuration session, the Epicor application uses Set Field rules to properlypopulate the Get Details sheet when creating a job for the configured part in Job Entry or Quote Entry.

Epicor ERP | 9.05.70234

Configurator Technical Reference GuideConfigurator Concepts and Base Components

Page 35: Epicor Configurator

• Rule Function Rules - If Rule Function rules been defined for the configuration, it returns values for operations,operation details, and materials using specified Context functions. If example, if the Retain Existing Methodscontext function is associated with a rule being processed, it designates that the Epicor application shouldretrieve the Method of Manufacture for the original part number (the part number that was originally definedas the subassembly of the configured part) in the event that a subassembly part number may have beenchanged by a Set Field rule, Rule functions are processed when using the Get Details sheet in Order Entry,Opportunity/Quote Entry or Job Entry. Each of the rule functions serve a different purpose - refer to Use ofRules Types in Rules Processing for more details.

• Collects information from the configuration entries (and from the originating sales order, quote or job) tocalculate unit pricing for the configured end-item.

Configuration Price Processing

After performing all rules associated with the page input controls, the Epicor application calculates unit pricingfor the configured item, and then updates the associated sales order, quote, purchase order or demand order.It does this based on the pricing parameters defined for the input page controls in the Input Rules > Pricing >Options sheet, and the sheets located under the Input Rules > Pricing > General > Input Pricing tab.

• If the Use Component Pricing check box has been selected for the configuration in the Input Rules > Pricing> General > Options sheet, the Epicor application calculates the component price using the resulting bill ofmaterial, based on the price lists of each remaining components after all applicable method rules have beenapplied. The resulting component price is the total component price plus any additional input pricing thatmay have been defined. Refer to Input Rules > Pricing > Options for detailed information

• The pricing parameters defined in the the sheets located under the Configurator Designer > Input Rules >Pricing > General > Input Pricing tab designate the input controls and values for which base pricing is beingcalculated. They also specify the operator (plus, minus, multiply, and divide) and multiplier expressions to usewith the base pricing.

• The Epicor application collects information from the configuration entries (and from the originating salesorder, quote, job, purchase order or demand order) to calculate unit pricing for the configured end-item. Thisinformation can include the customer number, order quantity, discount percentage and other parameters

• When a configured part contains configurable subassemblies, the Epicor application adds the pricing structuresfrom the subassemblies and the main part, resulting in a new unit price for the configured item. Refer toInput Rules > Pricing > General > Input Pricing > Order / Quote / Purchase / Demand > Detail helpfor detailed information.

Part Creation Processing

After calculating unit pricing for the configured item, the Epicor applications uses parameters defined forconfiguration in the Configurator Designer > Input Rules > Part > Creation sheet to determine if and how partrecords should be entered or created when the item is configured.

These parameters include (but are not limited to) the following:

• If the Create a new part number for each configuration check box has been selected, the Epicor applicationautomatically creates a part number each time a new configuration is created (saved) for the base configuredpart in a configuration session.

• If the Set Part Number Only check box has been selected, the Epicor application generates a part number,but skip creation of a Part record itself. It assigns the generated part number to the quote line, order line, job,purchase order or demand order according to where the base configured part is being configured.

• If the Save Input Values check box has been selected, the input value settings entered in the configurationsession are saved in the record for the new configured part and revision number, and not be linked to aspecific quote, order, job, purchase order or demand order. It can then be used "as-is" on any quote, order,job, purchase order or demand order without the need for reconfiguration. This is useful because it allows

35Epicor ERP | 9.05.702

Configurator Concepts and Base ComponentsConfigurator Technical Reference Guide

Page 36: Epicor Configurator

you to define a collection of pre-configured parts (with saved input values that "travel" with the part) thatcan be reused at a later time. This ensures that when the Get Details sheet is used in Job Entry, the Epicorapplication uses the correct engineering structure at the time it creates an associated job order.

• If the Use Smart String as the new part number option has been selected in the Available Methods field,the Epicor application uses Smart String generated in the configuration session as the new part number. Ifthe Prompt for a new part number was selected, the Epicor application displays a message during theconfiguration session that prompts for manual entry of a part number for the configuration when it is saved.

• If the Job Entry, Order Entry or Quote Entry check boxes were selected, the Epicor application allows entryof a new part number, or use of the Smart String when the item is configured in Job Entry, Order Entry.

• If the Automatically create a new part number check box has been selected, the Epicor applicationautomatically creates part numbers in the Part file; in this scenario no message is displayed during aconfiguration session. If cleared, the following message appears in the configuration session asking the userif a new part number should be created:

The following input window appears in the configuration session after clicking Yes:

• If the Create new part number at zero cost check box has been selected, the Epicor application sets thecost of the new part at zero. If cleared, it uses the cost of the base part as the cost of the new part.

• When the Create a new part number for each configuration and the Save Input Values check box havebeen selected, the Epicor application creates a new part number and generates a method of manufacturewhen a configuration is saved after completing a Configuration session. (existing functionality). It automaticallylinks this newly created part number back to the base part number, allowing it to be reconfigured at any time.If the Remove Link From Base Configured Part check box has selected, the Epicor application removes thelink back to the base configured part. It then treats the newly created part as a standard part and it is nolonger considered a reconfigurable part.

• When the Create a new part number for each configuration check box has been selected, the Epicorapplication creates a new part number when a configuration is saved after completing a Configuration session.If the Create Revision check box has been selected, the Epicor application also creates a new part revisionrecord for the newly created part when a configuration is saved after completing a Configuration session.

• Normally, when the Create a new part number for each configuration check box has been selected, andthe Save Input Values check box has been cleared, the Epicor application creates a new configured part,but it does not generate an associated method of manufacture.

• If the Generate Method check box has been selected, the Epicor application also generates a method ofmanufacture at the same time.

• This works in a manner similar to the Save Input Values functionality; it processes associated method rulesand generates a method of manufacture based on the application of the method rules. Unlike the SaveInput Values functionality, it does not save the input values for later reuse.

• If the Prompt For Checkout check box has been selected, the Part Revision Checkout automatically displayswhen a configuration is saved after completing a Configuration session. This can be used when the Save

Epicor ERP | 9.05.70236

Configurator Technical Reference GuideConfigurator Concepts and Base Components

Page 37: Epicor Configurator

Input Values or Create Revision check boxes have been selected, and the Epicor application is creating anew part revision record when a configuration is saved.

• This check box, when selected, causes Part Revision Checkout to display when a configuration is savedafter completing a Configuration session. This allows for check out of the newly created configured partrevision to the Engineering Workbench.

• Clear the check box to skip display of Part Revision Checkout when a configuration is saved after completinga Configuration session

• Default ECO Group - If the Prompt For Checkout check box has been selected, you can use this field tospecify the default value that should appear in the ECO Group field in Part Revision Check Out (invoked whenyou use the Check Out Revision selection, located under the Revision submenu in the Part MaintenanceActions menu).

Enter the ECO Group number (as defined in ECO Group Maintenance), or click Default ECO Group to accessECO Group Search to browse a listing of valid ECO Group numbers.

Note If Part Creation parameters have been defined for a subassembly configured part, the Epicorapplication processes these parameters for the lower level configured part when the associated top-levelconfiguration is saved during a Configurator Q&A session.

Smart String Processing

After generating part numbers for the configured item, the Epicor application uses parameters defined for theconfiguration in the Configurator Designer > Input Rules > Part > Smart String sheet to determine how a specialidentifying number (a Smart String, or unique part number) should be constructed. It identifies the configurationof the item, based on the entries made during the configuration session.

These parameters specify the basis of how the Smart String should be constructed and include (but is not limitedto) the following:

• The Available Styles parameter the basis of how the Smart String should be constructed. The Epicor applicationdoes not generate a Smart String if the No Smart String Functionality option has been selected. If theSmart String Constructed from Inputs option was selected, the Epicor application constructs the SmartString based on inputs entered by the user during the configuration session. When this option is selected, ituses one of the following parameters to generate the Smart String:

• Part Number + Order Number/Quote Number + Order/Quote Line - The Epicor application constructsthe Smart String from the part number, the number of order or quote, and the line number from the orderor quote. The Digit Structure parameter specify the structure of the digits for the Smart String.

• Part Number + Sequential Number - The Epicor application constructs the Smart String from the partnumber and a sequential number. The Starting Sequence parameters specify the starting sequence numberfor the Smart String (for example, 1000). As each Smart String is generated, this sequence numberautomatically increments by one

• The Separator Character parameter specifies the delimiter character (dash, space, slash, underscore orno separator) that should separate the individual element sections of the Smart String.

• Refer to Smart Strings for details on the remaining parameters in the Configurator Designer > Input Rules> Part > Smart String sheet.

After clicking Save during an actual configuration session, the Epicor application determines if an available stylehas been defined for the configured part (in the Available Styles field in the Configurator Designer > InputRules - Part > Smart String sheet) prior to saving the input value records.

• If an available style was selected, the Epicor application builds the Smart String according to the selectedparameters defined in the Input Rules > Part > Smart String sheet. Once it builds the Smart String, it verifies

37Epicor ERP | 9.05.702

Configurator Concepts and Base ComponentsConfigurator Technical Reference Guide

Page 38: Epicor Configurator

if any of the "assignment" parameters were specified for the configured part in the Input Rules > Part > SmartString sheet and update the appropriate fields accordingly on the associated order or quote.

• When saving a configuration, the Epicor application processes all of the selections made in the Input Rules >Part > Smart String sheet. For example, if the Customer Part Number check box has been selected, it updatesthe Customer Part Number field in Order Entry or Quote Entry with the newly created part number.

• When using the Get Details sheet in Job Entry, the Epicor application also processes all applicable rules todetermine the exact material and operations content for the Method of Manufacture for the newly configuredpart. Therefore, if you create a Set Field rule that updates the value of the customer part number on thequote, it overwrites the newly created part number that was assigned to the Customer Part Number fieldwith the new customer part number that results from processing of the Set Field rule.

Note If Smart String parameters have been defined for a subassembly configured part, the Epicor applicationprocesses these parameters for the lower level configured part when the associated top-level configurationis saved during a Configurator Q&A session.

Epicor ERP | 9.05.70238

Configurator Technical Reference GuideConfigurator Concepts and Base Components

Page 39: Epicor Configurator

Configurator in a Multi-Company Enterprise

The Epicor application provides several sophisticated functions that allow you to manage configured parts in amulti-company enterprise. These functions automate business situations in which a Sales company configuresand sells products that are designed and manufactured in another company.

39Epicor ERP | 9.05.702

Configurator Concepts and Base ComponentsConfigurator Technical Reference Guide

Page 40: Epicor Configurator

These companies can be located within the same database, or can be located in separate external databases.This is a typical business scenario that can be automated using the multi-company configuration functions:

• A multi-national enterprise based in the United States has several domestic and foreign Sales companies, andone or more domestic or foreign Manufacturing companies.

Epicor ERP | 9.05.70240

Configurator Technical Reference GuideConfigurator Concepts and Base Components

Page 41: Epicor Configurator

• The enterprise sells configured items that are designated as manufactured parts in the Manufacturingcompanies, and designated as purchased parts in the Sales companies.

• The enterprise maintains the configurations in one of the Manufacturing companies; these definedconfigurations are then used by the Sales companies when they receive customer orders for the items.

Important For extended details on the multi-company set up and operation, refer to the Multi-SiteTechnical Reference Guide in the Application Help. In particular, refer to the following sections in thatdocument:

• The Multi-Site Concepts section explores, in detail, all possible setup scenarios related to multi-siteprocessing.

• The Multi-Company/Multi-Site Processes > Configurator in a Multi-Company Enterprise sectioncovers, in detail, the setup and operation of a multi-company Configurator.

Tip The Epicor application does not export manufacturing (method) rules or the method of manufactureto the Sales companies at the time of configurator synchronization. By separating the manufacturing rulesand the Method of Manufacture from the other rules, synchronization of the method of manufacture fora configured part is not required between the Manufacturing company and Sales companies. This allowsyou to protect proprietary information from potential distribution to unwanted parties.

The following sections describe how the configuration process operates in a typical Sales and Manufacturingcompany.

Sales Company Processing

This is a typical business scenario that describes how the configuration process operates in a Sales company:

A configurator is defined in, and managed by a U.S. parent company. The Epicor application automaticallysynchronizes it with the database of the United Kingdom (U.K.) Sales Company. When the U.K.-based companyreceives an order from a customer, it configures the end-item in Order Entry using the configurator originallydefined by product engineers in the U.S. Manufacturing parent.

• If the Manufacturing company is drop shipping the item, the Sales company must specify Need By and ShipBy dates in the Header sheet. These dates are used in PO suggestions generated for the Buy to Order configuredpart.

• To generate a sales configuration, the data entry operator creates a new order line item, enters the base partinto the Part/Rev field and an order quantity into the Order Quantity field. After clicking Configure, theyproceed to configure the part using the configuration process defined in the Manufacturing company.

• Once the entry person has completed the configuration process and has saved it, the Epicor applicationautomatically updates the pricing for the item; this is based on the order and component pricing parametersspecified for the configuration in the Manufacturing company, and (optionally) the price lists of the U.K. Salescompany. The Epicor application uses the configuration rules and parameters specified in the Manufacturingcompany to generate the configuration

• If the ordered item is being drop shipped directly to the customer from the Manufacturing company, theyselect the Buy to Order and Drop Shipment check boxes, and enter supplier information in the Releases >Detail sheet. The supplier for the part is the U.S. Manufacturing company.

After an order has been entered, running the Generate PO Suggestions program creates PO suggestions for thesales order in the U.K. Sales company (this normally runs as a background process). In effect, the Sales companyis purchasing the configured items from the U.S. Manufacturing company; the configuration information mayalso contain a calculated purchase price

41Epicor ERP | 9.05.702

Configurator Concepts and Base ComponentsConfigurator Technical Reference Guide

Page 42: Epicor Configurator

The New PO Suggestions program converts the PO suggestion into a purchase order (this also runs as a backgroundprocess). The person running this program selects the PO suggestion generated for the configuration part, andthen uses the Generate Purchase Orders option on the Actions menu to generate the actual purchase order.

• Once the purchase order has been generated. they use the Purchase Order Entry program to verify the priceand approve the purchase order. Once approved, the Epicor application automatically synchronizes it to theManufacturing company.

• It passes the configuration information for the ordered item back to the U.S. Manufacturing company throughthis synchronization process. This is the purchase order used by the Sales company to purchase the configuredpart from the Manufacturing company.

Tip A sales configuration does not necessarily need to result in the purchase of a part that requiresconfiguration in an internal Manufacturing company. If it is not a configured part, it can be purchasedfrom any supplier, including other Manufacturing companies. If the supplier is an internal Manufacturingcompany, and it is not a configured part, the Epicor application automatically creates a sales order in theManufacturing company, but does not synchronize the configurator rules. This is often the case for thesetypes of items - after they have custom configured in the same manner over time, an enterprise may electto simply manufacture it as a standard "off-the-shelf" stocked item.

Manufacturing Company Processing

This is a typical business scenario that describes how the configuration process operates in the associatedManufacturing company.

This is a typical business scenario that describes how the configuration process operates in the associatedManufacturing company. The following tasks generally take place in the Manufacturing company after thepurchase order for the ordered item is synchronized from the Sales company:

By specifying the purchase order, selecting the Ready for Order check box and using the Accept All selectionon the Actions menu in Incoming Intercompany Purchase Order Suggestions, the Epicor application converts theSales company purchase order to a sales order in the Manufacturing company. In effect, the Manufacturingcompany is selling the manufactured configured part to the Sales company (the Sales company is considered acustomer of the Manufacturing company).

• It synchronizes the sales price in the Manufacturing company with the purchase order price in the Salescompany. This includes the configurator inputs from the U.S. sales company; they can modified in the salesorder depending on the synchronization settings.

• If Document rules have been defined in the product configuration, the Epicor application automatically updatesthe associated information contained in the resulting sales order, based on syntax of the applied rule.

• Once the sales order is approved, the Epicor application flags the ordered part as a Manufactured part.

The Epicor application then processes it as it would any other manufactured part by generating a job when yourun MRP, or it generates a job suggestion for the sales order line. It generates the Method of Manufacture forthe generated job method using the configurator inputs of the Sales company, and the input rules, structurerules and method rules defined in the Manufacturing company.

After completion of the job, the configured items are shipped to the U.K. Sales company or direct shipped tothe customer, depending on the drop ship settings entered for the order in the U.K. Sales company. The Epicorapplication automatically synchronizes shipment information through the Multi-Company module functions.

Tip The Manufacturing company maintains the Configurator design for all companies. You have the abilityto define different input rules for different sales companies, and a differentiate between the manufacturingcompany and the sales companies. The structure rules are the same for each company, but the companyID can be incorporated in the conditions of the structure rules; making sure that some components arenot configured in some sales companies.

Epicor ERP | 9.05.70242

Configurator Technical Reference GuideConfigurator Concepts and Base Components

Page 43: Epicor Configurator

Note You can configure purchased materials associated with enterprise configurator parts when they areadded as material content in Opportunity/Quote Entry and in Job Entry. These are items for which the Typefield has been set to Purchased in the Part Maintenance > Part > Detail sheet, and have been designatedas an Enterprise Configurator.

• To do this for a quote line, you add the part to the Material node in Opportunity/Quote Entry > Line> Mfg Details > Tree sheet. After you have added the part, simply right-click it, then select Configureto access a Configurator Q&A session.

• To do this for a job, you add the part to the Material node in the Job Entry Tree View. After you haveadded the part, simply right-click it, then select Configure to access a Configurator Q&A session.

Use of Configuration Rules

The Configurator employs Keep When method rules that specify what materials and operations should be addedto the method of manufacture for a configured item. The method of manufacture contains the company proprietaryinformation that designates how a product should be built; it is also linked to many company specific maintenancetables such as resources and resource groups.

To protect the proprietary nature of this information, the Product Configuration module makes extensive use ofseveral types of rules that you define during the initial product configuration definition phase:

Input and Document Rules

Input Rules, entered into the Input Rules tab and accompanying sheets in the Configurator Designer, defineconfiguration pages, input page parameters, Prompt When rules, On Leave expressions, inputs, configurationpart and pricing parameters for the configurator.

They also include Document Rules that allow for automatic updating of the source documents (quotes, salesorders, job orders, purchase orders or demand orders) that initiate production of a configured item. For instance,based on syntax defined in Document rules, you can automatically update the description of the sales order line,based on the components selected for the configured item. By separating the Document rules from themanufacturing (Method) rules, the Epicor application can execute them without the need to run the Get Detailsprocess in Opportunity/Quote Entry or Job Entry.

Method Rules

Method Rules, entered into the Method Rules tab and accompanying sheets in the Configurator Designer,specify how a method of manufacturing should be created for use in producing a part configured in a Salescompany. Method rules include Keep When Rules that determine the specific material content, and designatewhat components and operations should be included when the configured part is manufactured. The Epicorapplication does not export manufacturing (method) rules or the method of manufacture at the time ofconfigurator synchronization to the Sales companies in which configurations have been created (when a quote,order, job, purchase order or demand order is initially entered).

By separating the manufacturing rules and the Method of Manufacture from the other rules, synchronization ofthe method of manufacture for a configured part is not required between the Manufacturing company and Salescompanies. This allows you to protect proprietary product information from potential distribution to unwantedparties.

Structure Rules (Multi-Company Configurator Only)

Structure Rules, entered into the Structure Rules tab and accompanying sheets in the Configurator Designer,are rules that build the structure of configurable subcomponents. This structure is necessary to determine whichother configurators must be present in the Sales company in order to collect all the required inputs for theManufacturing company. Structure rules are also required for component pricing; if component pricing is used,each component affecting the pricing must be listed in the Structure rules.

43Epicor ERP | 9.05.702

Configurator Concepts and Base ComponentsConfigurator Technical Reference Guide

Page 44: Epicor Configurator

Structure rules can only be defined for configured parts for which the Enterprise Configurator check box hasbeen selected in the Status sheet. They cannot be defined or used when the Configurator is being operated ina single company (the configuration is being designed in the same company database in which the configuredpart is being sold and manufactured).

Configurator Synchronization

Depending on the data transfer method being used in your multi-company environment (SONIC or DIRECT),you must use the Enterprise Configurator Server Process (or Enterprise Configurator Direct Server Process) andthe Multi-Company Server Process (or Multi-Company Direct Server Process) programs to synchronize configurationdata between multiple companies in a single database, or companies located in external databases. These areall designed to run as continuous background processes.

These programs are designed to run as continuous background processes.

• The Enterprise Configurator Server Process (or Enterprise Configurator Direct Server Process) programssynchronize configuration data between a Manufacturing company and Sales companies (the System Monitorcan be used to view transactional activity for these processes).

• When you run the companion Multi-Company Server Process (or Multi-Company Direct Server Process)programs, it sends the configured part to the Sales companies.

• They need to be used on a continuing basis to properly synchronize purchase order, sales order andconfiguration input information between the Manufacturing and Sales companies.

Tip The Enterprise Configurator Server Process (or Enterprise Configurator Direct Server Process) programsdo not export manufacturing (method) rules or the method of manufacture at the time of synchronizationfrom Manufacturing companies to Sales companies. By separating the manufacturing rules and the Methodof Manufacture from the other rules, synchronization of the method of manufacture is not required betweenthe Manufacturing company and Sales companies. This allows you to protect proprietary product informationfrom potential distribution to unwanted parties.

Epicor ERP | 9.05.70244

Configurator Technical Reference GuideConfigurator Concepts and Base Components

Page 45: Epicor Configurator

Implementation Components and Calculations

This section explores the main calculations and base values of the Configurator. Review this material to learnabout designing configurations, defining rules, using expression functions, and verifying configurations.

Pre-Implementation Planning

The Configurator uses several components together as a base for defining the manner is which a universal partcan be configured during actual configuration sessions in Order Entry, Opportunity/Quote Entry, Purchase OrderEntry, Job Entry or Demand Entry. The values defined on these components affect how the Epicor applicationhandles product configuration at your company.

• When you set up these primary components to reflect how you want the Epicor application to handleconfiguration tasks, you fine -tune the Configurator to fit your business practices. The Configurator will thenallow accurate configuration of items that may potentially have thousands of variations in material contentand associated manufacturing requirements.

• This section details the main components that users must define in order to use the Configurator functionality.It contains descriptive information, the program in which the component is located, logic/algorithms andexamples for many of the components and calculations.

• The sequence in which topics appear in this section generally follows the approximate order in which youimplement (design and setup) a configuration for a specific product or product line.

Prior to the actual implementation of the Configurator, you must first take time to carefully consider how it willbe used in your operations, and how it will evolve over time. The Configurator is a very flexible, highly sophisticatedtool that has a considerable impact on how you plan for material requirements and ultimately manufacture theproducts you sell to your customers. It must be implemented in a manner that leads to acceptable results, andthat can easily be maintained and modified as your product offerings evolve over time.

The Configurator, is, in its essence, a programming entity designed for use by your product engineers.

• It provides you with the means of capturing their in -depth product design engineering knowledge andtranslating it into an easy-to-use, Q&A-based Expert system / configuration tool for use by order, quote, job,purchase order or demand order entry personnel.

• Due its extreme flexibility, there are many differing ways to implement and use it. Some will yield acceptableresults in your operations, others may not.

• If it is not properly implemented, problems could arise in the future when you attempt to modify it to conformto, and properly reflect, the design changes made to the products you offer.

Information Collection for Configuration Implementation

Prior to implementing the Configurator, you should compile a list of questions related to how you design andmarket your product (lines) to your target customer base. The answers to these questions will help you determinehow you should implement the Configurator in your operations.

For example, it is possible to structure a "no-input, behind-the-scenes" configurator that does not prompt forentry of information. Instead, it simply uses the customer, product and pricing information entered on a quote,sales order, job, purchase order or demand order to perform internal calculations (such as determining setup andruntimes, or generating bills of materials). Refer to Creating a No Input Configurator in the Configurator inAction section of this document.

45Epicor ERP | 9.05.702

Implementation Components and CalculationsConfigurator Technical Reference Guide

Page 46: Epicor Configurator

Initially, you must collect all information required to properly design the Configurator Designer - this includesdetermining:

Current Configuration Methods

Do you use or maintain any programs, spreadsheets or data lists that could be useful in translating your presentmethods into an accurate, easy-to-use online configuration process?

• Refer to the Wavy Rider Products example in the Configurator in Action section. They made extensiveuse of comma -separated (csv) files and Excel spreadsheets they used for pricing and option selections in theirmanual (pre-Epicor) configuration process.

• Likewise, your current manual product configuration methods could be a very fertile source for informationyou use to structure input pages and select options in your new Epicor Configurator.

Current Product Structure and How it Might Change

Are your methods of manufacture highly componentized? Does the material content of a "standard" productvary based on where it is used or shipped? For instance, cars shipped to Alaska come equipped with winter tiresand engine heating, while cars shipped California have summer tires and a sun roof. Other customers or partnersmay want machines shipped without a motor so they can mount their own.

Structure of Your Current and Future Products

Should you use the Super BOM or Template BOM methods for configuration definition in your new Configurator?The Super BOM method is easier to understand and setup initially, but is much more difficult to maintain in thefuture as your designs evolve. The Template BOM method is a bit trickier to setup initially, but is much moreeffective and easier to maintain in the future. Refer to the Super BOMs Versus Template BOMs section.

Use of Structured Part Number for Current Configurations

Do you use structured part numbering for your current configurations? If so, what is the part numbering scheme,and how is it assigned? Is the part number printed on documents? If so, which ones?

Desired Outputs from the Configurator

Do you want the Configurator to generate a detailed Method of Manufacture with complete material, operation,resource and resource group detail information required to manufacture the end-item on a job order? Do yousimply want to generate a part number or Smart String that can be printed on order or quote forms? Do youwant it to simply calculate and order or quote configuration price? Do you want to simply calculate setup andruntimes for a manufacturing process, based on sales or quote entries?

Super BOMs Versus Template BOMs

A crucial decision that needs to be made prior to Configurator implementation is to decide whether you will usethe Super BOM or Template BOM methods for configuration definition. The granularity and structure of yourcurrent and future products (and product lines) has a profound influence on which method you use in your newconfigurator.

• As mentioned previously, the Super BOM method is easier to understand and setup initially, but can be muchmore difficult to maintain in the future as your designs evolve.

• The Template BOM method is a bit trickier to setup initially, but is much more efficient and far easier tomaintain in the future.

Depending on granularity of the component levels required for your product or product lines, you can design asingle large-scale configurator that covers all levels of the product or product line (a Super BOM), or one

Epicor ERP | 9.05.70246

Configurator Technical Reference GuideImplementation Components and Calculations

Page 47: Epicor Configurator

single-level configuration with placeholders (a Template BOM). It then allows the user to select the top-levelassemblies themselves, or depending on the selections made during the configuration session, execute separateconfigurators for each subassembly. This decision also depends on the need for component configuration formultiple main configurations, and on the need for configuring components as spare parts. For simple productssuch as a window, your choices are to:

• Use one single-level configurator for each window type you offer (for example, separate configurators forbay windows, another for bedroom windows) with substitutable placeholders.

• Use one multi-level configurator for each window type covering all conceivable configuration options at alllevels.

• Use a multi-level configurator for each order, where each window is a separate subcomponent.

For more complex items such industrial valves, computers, boats:

• Use one bulky Super BOM configurator for all similar valves using Keep When rules, component replacement,or both.

• Use a multi-level Template BOM configurator where most assemblies are themselves configurators that useKeep When rules, or component replacement using Method rules (or both) at each level. Setting up a multi-levelmulti-configurator option might cost some more design time initially but maintenance is the big issue to solve;when options, components and new product lines are added later on then the single configurator will quitedifficult to modify and errors are quite easily made.

Using a Super BOM

When using the Super BOM method, the person designing and implementing the Configurator has to definean initial Method of Manufacture for the base universal part that contains all materials and operations that

47Epicor ERP | 9.05.702

Implementation Components and CalculationsConfigurator Technical Reference Guide

Page 48: Epicor Configurator

could possibly be included to manufacture the end-item configured part, regardless of the actualselected configuration options. It is in essence multi-level, and makes extensive use of Keep When rules toselect the materials and assemblies and operations that should remain for a particular configuration. Keep Whenrules specify the conditions under which specific materials or operations should remain in the Method ofManufacture.

This is easy to understand and is basically the way in which the configurator should be designed on paper. It isin essence a monolithic configurator that covers all conceivable options for all products within a specific productline.

The problem with using this method is that when new products or product lines are added in the future, theKeep When rules can become very complex and somewhat convoluted. This is due to the fact that the SuperBOM represents a single monolithic large-scale configuration for an entire product line.

• For example, the logic for Keep When rule might read as "Keep Operation AA for Product XX, Product YYand Product ZZ, except when XX has Assembly 77 or Option 867, and except when Product ZZ has Option756 but not Option 43."

• Maintenance of the rules and parameters for a monolithic Super BOM can be very problematic when youneed to change a product or product line in the future that share common operations or materials. Whenchanges are made in the future, all possible variations due to option or rules changes need to be testedbecause they are all intertwined in a monolithic structure.

The Super BOM concept is analogous to old hard-wired computer technology in which changes to existingsystem configurations were difficult and sometimes painful to make.

• If company required more computing power, a technician had to shut down the system, and make internalchanges such as updating circuit boards or swapping hard drives. Often times it also meant that the supportinginfrastructure and system software also had to be changed or updated to accommodate the increasedcomputing power. If a board was not functioning properly, it had to be removed while the system was out-of-service.

• Any changes made to the system configuration adversely affected its ongoing functioning. It could not continueto operate while upgrades were made, or components were replaced.

Similarly, as you develop new products, or update existing ones, the changes that are required to an associatedSuper BOM configuration (such as modifying or adding Keep When rules to reflect the material changes madeto the product) are often difficult, disruptive and time-consuming to make.

Using a Template BOM

The Template BOM (or Replacement BOM) is a method that defines a configuration that contains a maximumnumber of assemblies, and per assembly, the maximum number of materials and operations that can be included.Keep when rules are used when a lesser number of assemblies, materials or operations are needed than themaximum number specified in the configuration.

• Each assembly, material and operation is a simply a placeholder for the actual assemblies, materials andoperations. The Configurator determines the actual assemblies, materials and operations for a specificconfiguration using Calculation rules (rather than Keep When rules) if the numbering is logically structured,or by performing Excel spreadsheet or UD table lookups.

• Adding new product lines simply involves adding that new "piece" of the configurator and the new options,changing the external spreadsheet or UD table. However, the basic functions to determine the calculation orperform the actual lookups does not need to change in most cases. In contrast to the Super BOM method,testing only needs to focus on the new options.

• For example, a configurator may have 20 options, but some options rule out other options, or are only availablein certain combinations. Effectively, you may have only a maximum of 14 different options available for anypossible combination. The configurator may require that a minimum of five options be selected. The resultingTemplate BO would have 14 placeholders, nine Keep When rules and 15 -20 replacement rules. A Super BOMfor this same configuration would have 20 components and possible 15 to 20 Keep When rules. If options

Epicor ERP | 9.05.70248

Configurator Technical Reference GuideImplementation Components and Calculations

Page 49: Epicor Configurator

become more dependent on each other, and more options are added, the Keep When rules become morecomplex in the Super bom, and become increasingly dependent on each other. In the Template BOM, theKeep When rules are relatively simple, and replacement rules can be added more easily without affectingother replacements rules too much.

The Template BOM concept is analogous to modern blade server computer technology. A blade server isone that consists of a rack with power/connection slots that contain separate, installed processor blades. Thepower/connection slots on the server are analogous to the placeholders defined in a Template BOM configuration.

• The blades themselves are simply self -contained modular servers on a single circuit board. If company requiresmore computing power, they simply insert a new blade into an empty power slot, or remove/replace anexisting one.

• A blade that is out -of-date technologically, or is not functioning can be easily removed.

• The changes made to the server configuration do not upset its ongoing functioning. The entire blade serveritself continues to operate continuously when new blades are added, or old blades are removed.

Similarly, as you develop new products, or update existing ones, all that needs to be changed in the TemplateBOM-based configuration is the piece of the configuration related to the product upgrade. You then simply insertthe changed piece into it.

Other Implementation Considerations

When these decisions are made and a global schema of the required configurators is laid out for each configurator,you should also consider the following:

Question & Answer Input Sequence

The questions / options that need to be included in the design of the configuration need to determined and putinto a sequence. Sequencing the questions eliminates asking for the same information multiple times during aconfiguration session, and it allows the designer to eliminate options based on prior answers.

Any option that can be calculated based on prior answers should not be asked during a configuration session.

• A general thumb of rule is to put no more than 15 - 20 questions on an input page.

• Due to the fact pages can be completely skipped, it might make sense to group certain questions on onepage.

Dynamic Lists and External Lookups

Usage of dynamic lists in combination with Excel lookups or external programs, referencing UD tables or otherEpicor database tables is more time-consuming to setup initially, but saves a great deal of time later when newoptions have to be added. Wavy Rider Products made extensive use of these functions in their Configurator setup.

Refer to the Wavy Rider Products example in the Configurator in Action section.

49Epicor ERP | 9.05.702

Implementation Components and CalculationsConfigurator Technical Reference Guide

Page 50: Epicor Configurator

Free-Form Fields

The use of free-form fields should not be discarded because the Engineering department has to have a look atthe free form options before releasing the item to production, This makes the configurator much simpler tomaintain because rarely used, complex options are not automatically configured.

Testing Configuration Input Pages and Defining Rules

We recommend that you create and test configuration input pages before adding any rules or pricing optionsto the configurator. When defining rules, a top-down approach is recommended.

• First apply the rules for the assemblies, materials and operations at the highest level before defining the detailsand rules at the next level. You must also decide if Keep When rules or replacement function should be used.If you are creating fairly small (single-level) configurator, using Keep When rules is a good idea.

• For more complex configurators, use of the replacement function is highly recommended. It allows you toreplace assemblies, materials and operations based on a Calculation rule, an Excel spreadsheet looking or useof an external function calculation/query. The replacement function results in a quite smaller set of dynamicrules that are easier to expand and maintain.

Epicor ERP | 9.05.70250

Configurator Technical Reference GuideImplementation Components and Calculations

Page 51: Epicor Configurator

Configurator Setup (Single Company Environment)

This is a typical setup flow if you are planning to use the Configurator in a single company environment; this isone in which you define the configuration process, and then sell, configure and manufacture the part all withinthe same company.

51Epicor ERP | 9.05.702

Implementation Components and CalculationsConfigurator Technical Reference Guide

Page 52: Epicor Configurator

Tip If you are operating the Configurator in a multi-company environment, refer to the ConfguratorSetup (Multi-Company Environment) topic for detailed information on multi-company setup andoperation. Setting up a configurator in a multi-company environment is more complex than in a singlecompany environment, but the basics remain the same.

1. Create the configuration (non-stock) part in Part Maintenance.

Epicor ERP | 9.05.70252

Configurator Technical Reference GuideImplementation Components and Calculations

Page 53: Epicor Configurator

2. In the Engineering Workbench, build the Method of Manufacture for the configured part, and then checkit in using the Part Revision Checkin process.

3. Open the configured part and revision using the Part/Rev sheet in the Configurator Designer.

4. Design the input pages using the sheets found under the Input Rules tab. Optionally, Document rules canalso be defined that automatically update configuration source documents such the sales orders, job ordersor quotes.

5. Set order, quote, purchase order and demand order pricing parameters for the configured part using thesheets found under the Input Rules > Pricing tab. Using the Configurator Designer > Input Rules > Pricing> Options sheet, designate If component pricing is used; these components must be defined in the structurerules.

6. Add method rules for the configured part using the sheets found under the Method Rules tab. These rulesdetermine which subassemblies, materials, operations and operation details are included in the method ofmanufacture when a configuration is built that is created when the part configured in Order Entry,Opportunity/Quote Entry, Purchase Order Entry, Job Entry or Demand Entry.

7. Add method rules for the configured part using the sheets found under the Method Rules tab. These rulesdetermine which subassemblies, materials, operations and operation details are included in the method ofmanufacture when a configuration is built that is created when the part configured in Order Entry,Opportunity/Quote Entry, Purchase Order Entry, Job Entry or Demand Entry.

8. When the configuration is ready for deployment, approve it using the Approve check box in the Statussheet.

9. Use Regenerate Configurations as needed after a new service pack or patch has been installed to regenerateconfigurations that have been created in the Configurator Designer for base part numbers .You can specifyif all configurations should be regenerated, or if only configurations for individual parts selected in the Filtersheet should be regenerated. When you run this program, it selects previously approved configurations (forwhich the Approved check box has been selected), and performs the following functions:

• Regenerates associated rules programs

• Regenerates the assigned configuration sequence

• Recalculates internal "Has Leave Trigger" flags

53Epicor ERP | 9.05.702

Implementation Components and CalculationsConfigurator Technical Reference Guide

Page 54: Epicor Configurator

Base "Universal" Part / Part Revision

Part records contain base information that the Configurator uses to identify a configured part; this is the top-level"universal" base assembly item for which a product configuration is being defined. Beyond entry of a partidentifier and description, the requirements for defining the base part in Part Maintenance are minimal. It mustbe designated as non-stocked; otherwise, all remaining required setups in Part Maintenance are the same.

• Once you have created a part, you then create revision numbers for the configured item. The Part Revision isa number or letter that represents the number of times that a part specification has been modified. You enterrevision information for each part into the Revisions sheet in Part Maintenance. Whenever you refer to a partin the Epicor application, you also specify a revision number. A revision implies a change in the Method ofManufacture, or some change in the part that makes it unique from the same part number purchased ormanufactured at a different point in time.

• Once a revision number has been assigned to a top-level base configured part, it can then be checked out toan ECO group. From the Actions menu in Part Maintenance, select the Revision option, and then click CheckOut Revision.

• Once checked out to an ECO group, a Method of Manufacture and the related configuration can then bedeveloped in the Engineering Workbench. The Method of Manufacture you create in the EngineeringWorkbench for a configured part is defined by part revision. Refer to Method of Manufacture for moredetails.

• Once the Method of Manufacture has been defined for the configured part/revision in the EngineeringWorkbench, the revision must be approved on the Revision > Detail sheet in Engineering Workbench andthen checked in using the Revision > Check In option on the Actions menu in the Engineering Workbench.

Programs and Their Modifiers

Part Maintenance

You can use this program to enter part master and revision information. Refer to Assemblies and Subassembliesfor details on how to launch it from the Main Menu.

Epicor ERP | 9.05.70254

Configurator Technical Reference GuideImplementation Components and Calculations

Page 55: Epicor Configurator

To create a new part, select New Part. Entry of both a part number and description are required. These are theother values you must modify for this item:

• Non-Stock Item - When selected, this check box indicates that this part is not normally stocked as part ofinventory. When a manufactured part is a non-stock part, all demand for this part will be satisfied by jobs. Ifthe demand comes from a sales order, the sales order is linked to a job that will satisfy its demand. If thedemand comes from another record that uses this part on a sub-assembly, the demand is satisfied by creatinga sub-assembly level on the original job. This check box must be selected to identify an item as a configuredpart.

• Type - This indicates if you normally purchase or manufacture this part, or sell it as a sales kit. It is also usedas selection criteria on various reports and searches. It does not, however, limit how you can use this partrecord.

• Manufactured - This value indicates that the part is produced by your company. The MRP engine createsjob suggestions against the part record.

• Sales Kit - A sales kit part is not calculated by the MRP engine. The component parts that make up a saleskit, however, will generate both job and purchase suggestions. When all the component part quantitiesare manufactured, the sales kit is ready to be assembled. This process, however, is handled outside of theConfigurator.

• Purchased - Purchase parts can be configured in the sales order. If the Buy To Order check box has beenselected for the part, the purchase order header and line items containing the part can be updated usingDocument and Pricing rules. The Configurator cannot be executed from a purchase order line.

You then enter revision information for the top-level base configured part in the Revisions sheet in PartMaintenance.

To create a new revision for the configured base part, select New Part Revision. These are the values you canmodify for this item:

• Description - Enter a brief description of the revision. A longer detailed description of the reason(s) for therevision can be entered on the Revision Change Description sheet.

• Draw - Enter any optional engineering drawing reference. This appears as a default reference in Job Entry.

• ECO - Enter any optional engineering change order reference.

• Effective - Enter the date on which this revision becomes effective. The Epicor application uses this date todetermine the default revision whenever a part with revisions is entered. This date is also used in theEngineering module reporting to determine current revisions in the bill of material structure.

55Epicor ERP | 9.05.702

Implementation Components and CalculationsConfigurator Technical Reference Guide

Page 56: Epicor Configurator

• Rev - Enter the revision reference for the configured part. This can be referred to throughout the Epicorapplication when you enter this part. For example, if you enter an order for a certain part number, the currentrevision for this part appears by default. To enter any bill of material or routing information, you must entera revision record with an effective date and description. You define this value on the Revisions > Detail sheet.

• Approved/Not Approved - This indicates whether this revision has been approved for use.

• Only approved revisions are considered valid revisions in entry programs. Once a revision is approved, youcannot make any maintenance changes to that revision or enter any bill of material or routing information.

• When this check box is selected, the Not Approved button to the left of the check box appears ashighlighted (the default highlight color is green), and the text on the button changes to Approved.

• The Not Approved check box is disabled and won't allow you to approve the revision if an unapprovedconfiguration exists (the Approve check box on the Configurator Designer > Status sheet isn't selected forthis specific revision), or if the revision is checked out to an ECO group.

• When you clear the Not Approved check box to approve the revision, the Revision Change Descriptionsheet appears for entry of any descriptive comments for this is approval. The Epicor application stores theuser ID, system date and comments every time you approve a revision.

Once a revision number has been assigned to the part, it can then be checked out to an ECO group. Once checkedout to an ECO group, a Method of Manufacture and the related configuration can then be developed in theEngineering Workbench.

From the Actions menu in Part Maintenance, choose the Revision option and select Check Out Revision. Theseare the values you can modify for this item in the Part Revision Checkout form that is displayed when Check OutRevision is selected:

• ECO - Enter the ECO number to which the part revision is being checked out, or click New ECO to create anew ECO number.

These are general guidelines for defining a part and a Method of Manufacture for the part:

• Creating a new part - Select New Part from the File menu in Part Maintenance. Assign the part numberand enter an accompanying description. Select Manufactured in the Type field and select the Non-StockItem check box.

• Creating a new revision - Select New Part Revision from the File menu in Part Maintenance. Enter arevision number and description into the Rev and Description fields.

Epicor ERP | 9.05.70256

Configurator Technical Reference GuideImplementation Components and Calculations

Page 57: Epicor Configurator

• Checking out the revision to an ECO group - From the Actions menu in Part Maintenance, choose theRevision option and click Check Out Revision. Enter a valid ECO group into the Check Out Revision form,or create a new ECO group by clicking the New ECO button.

• Defining the Method of Manufacture for the revision in the Engineering Workbench - From theActions menu in Part Maintenance, choose the Revision option and click Engineering Workbench. In theEngineering Workbench, add operations and materials defining the method of manufacture.

• Approving and checking in the revision - When you're finished adding operations and materials, approvethe revision by selecting the Not Approved check box in the Revision > Detail sheet in Engineering Workbench.From the Actions menu, choose the Revision option and click Check In. Enter a description of the changeand close the Engineering Workbench.

Example

When trying to decide how to implement their Configurator, Wavy Rider Products determined that there weremultiple ways in which the universal part (or parts) could be defined for their pontoon boat configuration process,including:

• Assigning a separate universal part assigned for each individual model, or

• Defining a single general "CFGPontoon" part that acts as a "placeholder" for subsequent selection of theboat model, based on its intended use. This is the method Wavy Rider Products has elected to use.

Wavy Rider Products created a part revision that includes the following parameters:

57Epicor ERP | 9.05.702

Implementation Components and CalculationsConfigurator Technical Reference Guide

Page 58: Epicor Configurator

Method of Manufacture

The Method of Manufacture is the process through which a configured part is produced. Each Method ofManufacture is made up of two distinct components:

• A bill of operations, or routing, that defines the various tasks that need to be run in order to manufacturethe part. This defines the sequence of manufacturing and assembly operations required to build the finalproduct.

• A bill of materials that specifies the materials required to complete the part; this includes all purchased andmanufactured components.

The Method of Manufacture you create in the Engineering Workbench for the base universal part is defined bypart revision, as specified in the Revisions Detail sheet in Part Maintenance (refer to Base "Universal" Part /Part Revision for more details). There is a major difference between defining a Method of Manufacturing fornon-configured parts, and for configured parts:

• For non-configured parts (that is, those that do not use the Configurator), product definition consists ofdefining the exact material and operations content required to build the item as designed. Any changes fromthe design (or revision) must be done manually during Quote Entry or Job Entry, or at any time during the lifecycle of the job.

• A configured part uses the method rules base (as defined in the Configurator Designer > Method Rules >Rules > Detail) to select the materials and assemblies and operations required for a particular configuration.There are two general methods for creation of the Method of Manufacture for the base universal part - theSuper BOM and the Template BOM. This is discussed on the following page - however, refer to the SuperBOMs and Template BOMs topic in the Implementation Components and Calculations section for amore detailed discussion.

Epicor ERP | 9.05.70258

Configurator Technical Reference GuideImplementation Components and Calculations

Page 59: Epicor Configurator

Super BOM

• The Method of Manufacture for the Super BOM contains all component parts and operations that couldpossibly be included to manufacture the configured part, regardless of the actual selectedconfiguration options.

• One of the most powerful features of the Configurator is its ability to perform calculations through formulas,and determine which specific components should be retained in the Method of Manufacture generated forthe configured assembly. This is accomplished through the use of defined Keep When rules.

• For example, you manufacture scissors, which could be black, white, red, or green. The standard build is right-handed scissors but, but you can also manufacture left-handed scissors. A single configuration called Scissorsincludes the operations and materials to accommodate all possible variations of color and function.

Template BOM

• The Method of Manufacture for the Template BOM consists of placeholders that the Epicor applicationreplaces (after a configuration session) with the actual assemblies, materials and operations requiredfor the resulting configured item.

• When a job or quote is created, it uses this base Method of Manufacture, and processes any rules that mayhave been defined on each component (as defined in the Configurator Designer). This results in a refinedversion of the base Method of Manufacture. Refer to Wavy Rider Products in the Configurator in Actionsection for a detailed example of how this is set up for a complex product.

The Super BOM is easier to setup initially, but the Template BOM is easier to expand and maintain over thelong-term. For small-scale configurations, use of the Super BOM is recommended, while for all other configurations,use of the Template BOM is recommended. Refer to the Super BOMs and Template BOMs topic in theImplementation Components and Calculations section for detailed information.

59Epicor ERP | 9.05.702

Implementation Components and CalculationsConfigurator Technical Reference Guide

Page 60: Epicor Configurator

Programs and Their Modifiers

Engineering Workbench

This tool allows you to create methods of manufacturing for part revisions. The methods can be defined astemplates. They can be used later by the jobs that will produce the parts engineered through this tool.

Menu Path

Navigate to this program from the Main Menu:

• Production Management > Engineering > General Operations > Engineering Workbench

Part Maintenance

The Engineering Workbench can also be launched from Part Maintenance. Refer to Assemblies andSubassemblies for details on how to launch it from the Main Menu.

From the Actions menu in Part Maintenance, select the Revision option and then select Engineering Workbench.When in the Engineering Workbench, click Method of Manufacturing. These are the other values you canmodify for this item:

• Assembly - Each of these items defines a specific step, or component, on a job or quote method that willproduce each material quantity required to make the final part quantity. A method can have one assemblyor multiple assemblies. An assembly can contain one or more subassemblies and a subassembly can becomea parent assembly by containing one or more subassemblies. This hierarchy lets you engineer part methodsof manufacturing that are as simple or as complex as you need. You can create a method that details theentire production flow of a part by creating assemblies and sub-assemblies. Also, you can create a methodthat references component parts as materials. Each assembly has its own number and material requirements.A parent assembly is any assembly that is made up of one or more child subassemblies. Parent assembliesare used to determine the correct manufacturing hierarchy of the operations defined for the job.

• Operation -These items define the various processes your company uses to manufacture products. Operationsare manufacturing actions like Welding, Painting and Engineering. There are two types of operations - thoseyou perform within your company, and those that you subcontract out to an outside supplier. Refer to theOperations section more details.

• Materials - Unlike the conventional method of part definition, the method of manufacturing that is definedfor a configured part revision contains all component parts that could possibly be included to manufacturethe configured part, regardless of the actual selected configuration options.

Placeholder parts can be used for components and then substituted with actual parts, based on the rulesdefined for the configuration, and the options selected when creating a quote, sales order, job order, purchaseorder or demand order. This is true for assemblies, subassembly (subconfigurators) and operations as well.

Note For information on how to define subconfigurator placeholders "swaps" in a multi-companyenvironment, refer to Creating Subconfigurator Part Swaps in a Multi-Company ConfiguratorEnvironment.

Logic/Algorithms

When a quote or job is created for a standard, non-configured part, it creates the Method of Manufacture onthe job or quote as it has been defined in the Engineering Workbench. With a configured part, it uses the Methodof Manufacture that was defined in Engineering Workbench for the configured part, but as it retrieves eachcomponent (for example, assembly, material, operation), it processes any Set Field rules, Keep When rules, andrule functions that may have been defined for that specific component in the Configurator Designer.

If a Keep When rule is returned false, the component won't be included on the quote or job.

Epicor ERP | 9.05.70260

Configurator Technical Reference GuideImplementation Components and Calculations

Page 61: Epicor Configurator

Example

Wavy Rider Products builds pontoon boats with various combinations of lengths, models, colors, seating, electronicsand other options. The number of combinations could reach into the thousands and assigning a model (part)number to each combination would be difficult, especially for those combinations that appear infrequently, ifever.

Rather than defining unique part numbers and bill of materials, you create a Method of Manufacture for theuniversal part that contains all conceivable components and operations. The Configurator then selects/subtractsthe appropriate materials and operations comprise the manufacturing item for that particular quote, sales order,job order, purchase order or demand order. It performs this task based on user input when the base part isactually configured during quote, sales order or job order creation, and through the application of Keep Whenrules. Refer to Use of Rules Types in Rules Processing for more details.

In the case of Wavy Rider Products, they have elected to create a single universal part number "CFGPontoon"part that acts as a "placeholder" for subsequent selection of the boat model, based on its intended use. TheMethod of Manufacture for this single part number includes all materials and operations required to build all oftheir models, including:

• Install Tubes

• Install Cross Members

• Square Deck

• Install Plywood Decking

• Install Walls

• Install Furniture

• Install Mooring Covers

• Install engines, helm seating, steering/navigation and electronics.

Assemblies and Subassemblies (Materials)

An assembly defines a specific step, or component, on a job or quote method that produces each materialrequired to make the final configured part. A method can have one assembly or multiple assemblies.

An assembly can also contain one or more subassemblies and a subassembly can become a parent assembly bycontaining one or more subassemblies. This hierarchy lets you engineer part methods of manufacturing that areas simple or as complex as you need.

Each assembly has its own number and material requirements. A parent assembly is any assembly that is madeup of one or more child subassemblies. Parent assemblies are used by the engine to determine the correctmanufacturing hierarchy of the operations defined for the job.

If a part, job, or quote method does not have subassemblies, only one parent assembly is needed for the productionpart quantity. If a part requires several assembles, however, there can be as many parent assemblies as needed.Each tier on a complex method is typically called a level within the manufacturing hierarchy.

One reason to create multiple parent assembly levels is to let the engine concurrently schedule these assemblies.Each parent assembly typically contains operations and subassemblies that are unique for that area of the methodof manufacturing. If an assembly can run at the same time (concurrently) as another assembly they are consideredpeer assemblies.

A subassembly defines a specific step, or component, within a parent assembly. Each parent assembly can haveone or more subassemblies. Each subassembly can also contain one or more subassemblies, which causes thesubassembly to become a parent assembly as well. This hierarchy lets you engineer as simple or as complex part

61Epicor ERP | 9.05.702

Implementation Components and CalculationsConfigurator Technical Reference Guide

Page 62: Epicor Configurator

methods of manufacturing as you need. Parent assemblies typically contain operations or subassemblies that areunique for their area of the method of manufacturing.

Programs and Their Modifiers

Engineering Workbench

This tool allows you to create methods of manufacturing for part revisions. The methods can be defined astemplates. They can be used later by the jobs that will produce the parts engineered through this tool.

Menu Path

Navigate to this program from the Main Menu:

• Production Management > Engineering > General Operations > Engineering Workbench

Part Maintenance

The Engineering Workbench can also be launched from Part Maintenance.

Menu Path

Navigate to this program from the Main Menu:

• Material Management > Inventory Management > Setup > Part

• Material Management > Purchase Contracts Management > Setup > Part

• Material Management > Purchase Management > Setup > Part

• Material Management > Supplier Relationship Management > Setup > Part

• Production Management > Engineering > Setup > Part

• Production Management > Job Management > Setup > Part

• Production Management > Material Requirements Planning > Setup > Part

• Production Management > Quality Assurance > Setup > Part

• Sales Management > Configurator Management > Setup > Part

• Sales Management > Demand Management > Setup > Part

• Sales Management > Order Management > Setup > Part

• Service Management > Field Service > Setup > Part

• System Management > Distribution Vertical > Distribution Proof of Concepts > Gift Cards > Gift Card - Item

• System Management > Distribution Vertical > Inventory > Item with Attributes

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > Setup > Part

• Customer Relationship Management > Demand Management > Setup > Part

• Customer Relationship Management > Order Management > Setup > Part

Epicor ERP | 9.05.70262

Configurator Technical Reference GuideImplementation Components and Calculations

Page 63: Epicor Configurator

From the Actions menu, select the Revision option and then select Engineering Workbench. When in theEngineering Workbench, click Method of Manufacture. Refer to the online Help and the Method ofManufacture section of this document for more details.

Example

This is a partial material listing for the pontoon boat models manufactured by Wavy Rider Products:

• Fabricated tubing, cross members and plywood decking that comprise major structural subassemblies.

• Rudders and navigational subassemblies.

• Engines, helm seating, electronic subassemblies purchased from external suppliers.

Operations

Operations define the processes your company uses to manufacture a product. They are manufacturing taskslike Welding, Painting, Cutting, Stamping and Bending.

There are two types of operations: in-house operations you perform through your company and subcontractoperations you send out to an outside supplier. When defining the Method of Manufacture routing content fora configured part, it contains:

• All operations that could possibly be included to manufacture the configured part, regardless of the actualselected configuration options.

• Placeholders can also be used for operations. They can be defined as a "generic" operation and added to theMethod of Manufacture for the configured part. A Set Field rule can also be added to this generic operationin the Configurator Designer that replaces the generic operation with a valid operation, depending on theresponses entered during the actual configuration process in Order Entry, Opportunity/Quote Entry, PurchaseOrder Entry, Job Entry, Purchase Order Entry or Demand Entry.

Resources

You set up the primary values for an operation within the Operation Maintenance program. Use this programto define the default resources, resource groups, and capabilities that are needed to run the operation. One ormore resources are required for each operation.

When you engineer the job method, you indicate how the resources will interact with each other. For example,to run a Cutting operation, you need a Fly Cutter resource. This resource is defined on the Operation Detailwithin the job method. The operation also requires a Block resource, so you create a second Operation Detail.Lastly, the Cutting operation requires an End Mill resource, so you create a third Operation Detail.

Capabilities

Operations can also be linked to a capability. A capability is a skill or ability that a resource can possess. Whenan operation (or an operation standard selected on the operation) has an associated capability, the schedulingengine searches for resources that share the capability. If a resource has available capacity, the resource is selectedfor the operation. In the case where multiple operations are competing for the same resource, the schedulingengine will place the operation load against the resource with the highest priority, then the next highest priority.

Note that capabilities and resource groups can be combined on an Operation Detail. Linking capabilities toresource groups causes the engine to schedule only the resources that share a capability within the selectedgroup. Thus, it restricts the options that the scheduling engine can use for this capability.

63Epicor ERP | 9.05.702

Implementation Components and CalculationsConfigurator Technical Reference Guide

Page 64: Epicor Configurator

Operation Time

Several values that affect how the scheduling engine calculates each operation are defined on the Operation >Details sheets within the job method. These sheets let you define the Setup Time, Production Time, andScheduling Blocks required for an operation at a specific point within the method. Also, you can define theProduction Standard, such as Pieces/Hour and Hours/Piece, that the operation follows. You can also add orupdate the default resources, resource groups, and capabilities used to run the operation.

How long each operation takes to complete depends on the values you define for its Queue Time, Setup Time,Production Time, and Move Time. Queue Time and Move Time are defined on the resource group or resourcethat is assigned to the operation. The sum of these four values indicates how long it will take to complete anoperation.

Operation Relationships

Operations do not need to be processed in linear relationships (one after the other). You can define more complexrelationships within each assembly. The first operation (predecessor) can have a Start-To-Start, Finish-To-Start,and Start-To-Finish relationship with the operation that follows it (successor). These relationships affect howthe scheduling engine calculates each operation's start and end dates and times; choosing a relationship savetime in the schedule. See the Primary Calculations and Values section for a more detailed exploration ofoperation relationships.

Tip The JobOper and JobOprDtls table contain the information for each operation within a job method.

Programs and Their Modifiers

Engineering Workbench

This tool allows you to create methods of manufacturing for part revisions. The methods can be defined astemplates. They can be used later by the jobs that will produce the parts engineered through this tool.

Menu Path

Navigate to this program from the Main Menu:

• Production Management > Engineering > General Operations > Engineering Workbench

Part Maintenance

The Engineering Workbench can also be launched from Part Maintenance. Refer to Assemblies andSubassemblies for details on how to launch it from the Main Menu.

From the Actions menu, select Revision and then select Engineering Workbench. When in the EngineeringWorkbench, click Method of Manufacture. The processing of standard and configured parts is the same - nospecial logic or algorithms are used for configured parts.

Example

This is a listing of some of the operations Wavy Rider Products must perform to build their pontoon boat models:

• Install Tubes

• Install Cross Members

• Square Deck

• Install Plywood Decking

• Install Walls

Epicor ERP | 9.05.70264

Configurator Technical Reference GuideImplementation Components and Calculations

Page 65: Epicor Configurator

• Install Furniture

• Install Mooring Covers

• Install Motor

Resources and Resource Groups

A resource is a physical facility or an asset or an employee within your manufacturing center that performs aspecific function such as producing parts. The facility might have one or more locations that contain the machinesand skill sets used to manufacture parts.

A resource can be a physical piece of equipment (like a punch press, drilling machine), a fixture (like a tool orgauge) that is required to measure various parts, or it can also be an employee (like a setter, operator, and cutter).These locations and skills sets are the resources and resource groups that are linked to the plant. Each plantmust have at least one warehouse that is used to stock and distribute parts. A warehouse does not need to beunique to each plant; warehouses can be shared with several plants.

• Also, each part can be linked to multiple plants. Either the part is produced within the plant (a manufacturedpart) or it is used at that plant (a purchased part). The Configurator considers the On-Hand Quantity availablefor each part as the total sum of the quantities in all warehouses linked to the plant. If a warehouse is sharedby two or more plants, the material in the warehouse is considered available in all plants that share thewarehouse.

• Each resource must exist within a resource group. Resource groups contain one or more related resources;use these groups to define specific work areas within your manufacturing center. A resource group can containthe machines used for a specific function, any tools used to measure parts manufactured from these machines,and the operators who run both the machines and tools. Resource groups also support the concept ofmanufacturing cells, which are collections of different resources that act as independent production unitswithin your manufacturing center.

• A resource group can hold default values used on all resources in the group. However, each resource can alsohave its own set of values that are independent from the resource group values. If you define these factorsat the resource group level, these factors are applied uniformly across all the resources contained in the group.

• In certain situations, you might want one resource be dependent on another resource. For example, this isthe case when you want to indicate that the Drill Machine is available only when the Drill Machine Operatoris also available. You indicate this on the job method by adding both resources to an operation detail.

Capabilities

Capabilities and resource groups can be combined within an operation detail. This link causes the engine toschedule the only resources that share a capability within the selected group. It restricts the options that thescheduling engine can use for this capability.

Resource Impact

Resources have a large impact on when Start Dates and End Dates are calculated for each job. If a calendar isselected on the resource, it determines which working days and hours the resource will be available. A resource'sQueue Time defines how long a part quantity must wait at the resource before it is produced. A resource's MoveTime defines how long a completed part quantity must wait before it is moved to the next operation. All of thesefactors are used together to determine the final job schedule.

65Epicor ERP | 9.05.702

Implementation Components and CalculationsConfigurator Technical Reference Guide

Page 66: Epicor Configurator

Configurator Designer

The Configurator Designer is the focal point for defining the configuration process for a specific part revision.Once the Method of Manufacture has been defined for the selected revision, you then use the ConfiguratorDesigner to define a structured configuration process used by data entry personnel to configure the base partnumber and revision in Order Entry, Opportunity/Quote Entry, Purchase Order Entry, Job Entry or Demand Entry.For example, you can define a configuration process for Revision B that differs from the one developed for RevisionA for the same part.

The Configurator Designer contains the following tabs/sheets; refer to the Application Help and associated topicsin the Primary Components and Calculations section of this document for more details on each tab/sheet:

• Part/Rev - Use to select the part revision for which the configuration process is being defined.

• Status - Use to review a log of configuration design changes, and for approving or unapproving theconfiguration design.

• Input Rules - Use the sheets located under the Input Rules tab to define the actual Input Page that displayswhen the part is configured in Order Entry, Opportunity/Quote Entry, Job Entry, Purchase Order Entry orDemand Entry. This includes anything that requires configuration for of the universal part. For example, if thepart is a picture frame, you would create inputs for width, height, material, and color.

This tab includes sheets that you use to specify input detail parameters, input page behavior (includingassociated Prompt When and On Leave rules), page comments, dynamic lists, part / Smart String creationparameters, quote/order/purchase/demand order pricing and document rules.

• Structure Rules - Use the sheets located under the Structure Rules tab to build the structure of configurablesubcomponents. This structure is necessary to determine which other configurators must be present in the

Epicor ERP | 9.05.70266

Configurator Technical Reference GuideImplementation Components and Calculations

Page 67: Epicor Configurator

Sales company in order to collect all the required inputs for the Manufacturing company. Structure rules arealso required for component pricing; if component pricing is used, each component affecting the pricing mustbe listed in the Structure rules.

Structure rules can only be defined for configured parts for which the Enterprise Configurator check boxhas been selected in the Status sheet. They cannot be used when the Configurator is being operated in asingle company (that is the configuration is being designed in the same company database in which theconfigured part is being sold and manufactured).

• Method Rules - Use the sheets located under the Input Rules tab to specify how a method of manufacturingshould be created for use in producing a part configured in a Sales company. Method rules include KeepWhen Rules that determine the specific material content, and designate what components and operationsshould be included when the configured part is manufactured. The Epicor application does not exportmanufacturing (method) rules or the method of manufacture at the time of configurator synchronization tothe external Sales companies in which configurations have been created (when a quote, order or job is initiallyentered).

• Smart String - Smart String processing can be defined for the configurator being designed. When you usethis functionality, the Epicor application displays a dialog box during an actual configuration session (invokedfrom Order Entry, Opportunity/Quote Entry, Job Entry, Purchase Order Entry or Demand Entry), promptingfor entry of a Smart String value. It then attempts to process and load all associated configuration input valuesfrom the supplied string. In order for this to operate properly, you must designate the starting and endingvalues for Smart Strings configuration entries.

Configurator Comments - Use as needed to enter free-form comment text for the configurator beingdefined. This allows you to document such topics as the purpose for the configuration, where external filescan be found and other related information. The Configurator Designer contains several comment sheets thatallow you to document formulas used when creating the rules, inputs and pricing options. By adding commentfields, you are less dependent on external documents, spreadsheets, employees or consultants who initiallybuilt the configurator but are no longer available for advice.

Refer to Use of Configuration Rules and Use of Rules Types in Rules Processing for more details on eachtype of configuration rule that can be defined in the Configurator Designer.

Programs and Their Modifiers

Configurator Designer

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Part Maintenance

The Configurator Designer sheet can also be accessed from the Revisions Sheet in Part Maintenance. Refer toAssemblies and Subassemblies for details on how to launch Part Maintenance from the Main Menu.

67Epicor ERP | 9.05.702

Implementation Components and CalculationsConfigurator Technical Reference Guide

Page 68: Epicor Configurator

To create a new configuration in the Configurator Designer, a revision number must exist for the part. If onedoes not already exist for the part, you must first create a new revision in the Revisions sheet.

• After creating the revision, specifying a Method of Manufacture in the Engineering Workbench, you thenapprove the revision by selecting the check box next to the Not Approved indicator in the Revision sheet.

• To access the Configurator Designer, you must then unapprove the revision by clearing the check box nextto the Approved indicator.

• Whenever you wish to modify the configuration process for a part and revision, you must first unapprove therevision to gain access to the Configurator Designer. From the Actions menu, select Revision, and thenselect Product Configurator.

• Alternately, if multiple revisions already exist for the part, you can use the Part/Rev sheet when you are in theConfigurator Designer sheet to select the specific revision for which a configuration process is being defined.

Refer to the online Help and associated topics in the Primary Components and Calculations section of thisdocument for more details on each tab/sheet in the Configurator Designer.

Part/Rev

If multiple revisions have already been created for a part in the Revisions sheet in Part Maintenance, use theConfigurator Designer > Part/Rev sheet to select the specific part revision for which the configuration process isbeing defined or modified. For example, you can define a configuration process for Revision B that differs fromthe one developed for Revision A for the same part. Refer to Method of Manufacture, Part / Part Revisionand Configurator Designer for more details.

Epicor ERP | 9.05.70268

Configurator Technical Reference GuideImplementation Components and Calculations

Page 69: Epicor Configurator

Programs and Their Modifiers

Configurator Designer

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Part Maintenance

The Configurator Designer sheet can also be accessed from the Revisions Sheet in Part Maintenance. Refer toAssemblies and Subassemblies for details on how to launch Part Maintenance from the Main Menu. Theseare the values you can modify for the item:

• Parts Revision - This section of the sheet displays all of the revision numbers that have already been definedfor the part; select the specific revision for which a configuration process is being defined. Refer to the onlineHelp for more details.

Logic/Algorithms

If multiple revisions have been created for the same configured part number, all revisions display for the part inthe Part Revisions grid. The selection made in this grid determines the exact revision number for which theconfiguration is being defined.

Example

Wavy Rider Products originally defined the configuration process for their pontoon boat models (Revision A) inearly 2008. Since their pontoon boat model line is undergoing significant redesign for 2008, they have createdRevision B.

When they design the configuration process for their 2008 product line, they select Revision B in the Part/Revsheet in the Configurator and then select New Configuration from the File menu. Any pages, inputs, or rulesthat are added are then linked to this newly selected revision number.

Using Configuration Rules (Single Company)

The Configurator module makes extensive use of rules that you define during the initial configuration definitionphase:

• Input Rules, including Dynamic Lists and Document Rules, that are defined in the Input Rules tab andaccompanying sheets.

• Method Rules that are defined in the Method Rules tab and accompanying sheets.

69Epicor ERP | 9.05.702

Implementation Components and CalculationsConfigurator Technical Reference Guide

Page 70: Epicor Configurator

• Structure Rules (Multi -Company only) that are defined in the Structure Rules tab and accompanying sheets.

When you define individual rules for use in Configurator processing, you specify what Boolean logic-based ruletype (and accompanying logic) is being employed in the rule. For example, for Method rules, you use the KeepWhen rule type to determine the specific material content, and designate what components and operationsshould be included when the configured part is manufactured. Note that the specific rules types that can beselected for use vary according to the kind of rule (Document, Method or Structure) being defined; only selectedrule types are available for use with each kind of rule. Refer to Use of Rules Types in Rules Processing formore details on how to define rules in the Epicor application.

Input and Document Rules

Input Rules, entered into the Input Rules tab and accompanying sheets in the Configurator Designer can beused to define configuration pages, input page parameters, Prompt When rules, On Leave expressions, inputs,configuration par and pricing parameters for the configurator.

They also include Document rules that allow for automatic updating of the source documents (quotes, salesorders, job orders, purchase orders or demand orders) that initiate production of a configured item. For instance,based on syntax defined in Document rules, you can automatically update the description of the sales order line,based on the components selected for the configured item. By separating the Document rules from themanufacturing (Method) rules, the Epicor application can execute them without the need to run the Get Detailsprocess in Quote Entry or Job Entry.

Method Rules

Method Rules, entered into the Method Rules tab and accompanying sheets in the Configurator Designer,specify how a method of manufacturing should be created for use in producing a part configured in a Salescompany. Method rules include Keep When Rules that determine the specific material content, and designatewhat components and operations should be included when the configured part is manufactured.

The Epicor application does not export manufacturing (method) rules or the method of manufacture at the timeof configurator synchronization to the external Sales companies in which configurations have been created (whena quote, order, job order, purchase order or demand order is initially entered).

By separating the manufacturing rules and the Method of Manufacture from the other rules, synchronization ofthe method of manufacture for a configured part is not required between the Manufacturing company andexternal Sales companies. This allows you to protect proprietary product information from potential distributionto unwanted parties.

Using Tag Lineage to Define Multiple Method Rules for the Same Part

Using tag lineage (rule tags), you can apply differing method rules against a part number (for example, samesub-level component) that occurs multiple times in a configuration. This is an optional feature in the ConfiguratorDesigner; you do not have to use it if it does not apply in your operations.

• You accomplish this through the use of rule tags applied to components in the Engineering Workbench, andthen by using the tagged references when defining method rules for a product configuration in the ConfiguratorDesigner. For example, if a Component A contains Subcomponent B, and Subcomponent B contains MaterialC, it is possible for Component A to occur multiple times in the bill of materials record, and have differentrules for Material C applied at each occurrence.

• When adding material parts to a bill of materials, the Rule Tag field can be used in the Engineering Workbench- Method of Manufacturing - Materials - Detail sheet to uniquely identify different occurrences of the samepart that appears multiple times in a method of manufacture.

Referring to the following graphic of the Method panel in the Method Rules - Method sheet, part 8400S-611occurs multiple times in this method of manufacture - each occurrence can be tagged individually (for example,

Epicor ERP | 9.05.70270

Configurator Technical Reference GuideImplementation Components and Calculations

Page 71: Epicor Configurator

T1, T2) for application of unique Method rules defined for each separate rules tag. Keep When rules can thenbe defined based on the assigned rule tags to handle each part occurrence differently under different circumstances.

The Epicor application uses this rule tag when creating and processing rules that may be defined under thismaterial. Method rules are based on the part material method structure, which is a duplicate of the engineeringmethod. The part material method structure is single level; sub-levels are available by reference. If Product A hasa Subcomponent B which has a Material C then C is actually not part of the method of Product A. C is part ofthe method of B and B is part of the method of A.

Selecting a Configured Part

Many of the sheets in the Configurator Designer contain an labeled part selection field (displayed in the tool bar)you use to select the specific configured part being used in that sheet. For example, if you are using the MethodRules > Method sheet to add a new method rule, you use this field to select the part for which the method ruleis being defined.

To select a configured part:

Tip For part to appear in this list, it must be designated as a non-stock part in the Part Maintenance > Part> Details sheet, a revision number must exist for the part, and a method of manufacture must have beendefined (with at least one assigned material sequence or operation) for the part/revision number in theEngineering Workbench.

71Epicor ERP | 9.05.702

Implementation Components and CalculationsConfigurator Technical Reference Guide

Page 72: Epicor Configurator

Input Rules > Page / Design Toolbox

Use the Configurator Designer > Input Rules > Page sheet to design the input pages that display when auser configures the universal part/revision in Order Entry, Opportunity/Quote Entry, Job Entry, Purchase OrderEntry or Demand Entry. It displays as a blank canvas that you use, in conjunction with a Design Toolbox, todesign the appearance of the configuration input page used in those programs.

• The Design Tool Box is a vertical menu with buttons you use to place specific types of controls on a configuratorinput page; the default is a pointer that you use to select a field for edit or deletion. It can also be used tomove other controls on the input page being designed. The other controls include labels, check boxes, comboboxes, radio sets, and data entry fields (including date, fixed character, decimal/numeric, and browser).

• These design inputs are anything that the user should specify, or needs to create a custom configuration forthe universal part. For example, if the configured part is a picture frame, you can establish inputs that specifywidth, height, material, and color. The operator then enters this information upon creation of an order, quote,job, purchase order or demand order.

• Use the Input Rules > Page sheet and Design Toolbox in conjunction with the Input Rules > Page Detail andInput Rules > Inputs > Detail sheets. The Input Rules > Page Detail sheet defines the manner in which theinput page itself should operate, while the Inputs sheet defines the manner in which each of the attributesand controls that have been placed on the input page should operate. As you select a control from the DesignToolbox and place it on the Input Rules > Page sheet, click the Input Rules > Inputs > Detail sheet to definethe attributes of the control itself. Refer to the Input Rules > Inputs > Detail and Input Rules > Page Detailtopics for more details.

• In general, the general layout of the input page should be completed in the Input Rules > Page sheet priorto defining the operational parameters for each input control using the Input Rules > Inputs > Detail sheet.

Epicor ERP | 9.05.70272

Configurator Technical Reference GuideImplementation Components and Calculations

Page 73: Epicor Configurator

It is easier to define the logic that applies to each input when the layout of the input page itself can be easilyviewed while in the input controls definition phase.

When you define and place input controls on a page, you can use the Multi-Select Controls feature as neededto select and reposition multiple configuration controls on the Input Rules > Page sheet.

• To select all of the controls, or a batch of controls that are next to each other, use your mouse to draw arectangle around them, and then drag and reposition them to their new position.

• To select multiple individual controls that are not next to each other, hold down the CTRL key as you selecteach one, and then drag them to their new position.

• When you finish, click Save on the Standard toolbar.

Programs and Their Modifiers

Part Maintenance

The Configurator Designer sheet can be accessed from the Revisions Sheet in Part Maintenance. Refer toAssemblies and Subassemblies for details on how to launch Part Maintenance from the Main Menu.

Configurator Designer

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Select the Input Rules > Page sheet. From the Actions menu, select Design Toolbox, and then select theapplicable choice for the input page. Stretch and size the control, based on its desired location and size. Afterselecting the type of control, click the portion of the Input page on which the control should appear.

• Pointer - Use to select a field for edit or deletion, and can also be used to move other controls on the inputpage being designed. This is the default button.

• Label - Use to attach a text label to an input field.

• Character - Use to place a field on the input sheet that prompts for entry of a fixed length, single-line characterstring. These fields can be used for easy comparison of character strings in calculations and Keep When rules.

• Date - Use to place a field on the input sheet that requires entry of a date.

• Decimal - Use to place a field on the input sheet that requires entry of numeric data that may or may notcontain decimal places. This control is used for both decimal and integer (whole number) values.

• Check Box - Use to place a check box on the input sheet that prompts for Yes/No conditions; if the checkbox selected during a configuration session, the condition is considered true.

• Editor - Use to place a multi-line field that allows entry of free-form text such as comments or memos.

• Combo Box - Use to place a drop-down field on the input page that prompts for a selection from a choicefrom pre-defined options.

• Rectangle - Use to draw rectangles on the input page; this is useful for separating groups of fields or foroutlining regions of the window. Rectangles provide the sheet with a neat, organized look. You can also use

73Epicor ERP | 9.05.702

Implementation Components and CalculationsConfigurator Technical Reference Guide

Page 74: Epicor Configurator

this control to draw a very thin rectangle, to serve as a straight line, such as a partition between sections ofthe window. The Configurator considers a line to be a rectangle with zero width or zero height.

• Radio Set - Use to place a set of "radio buttons", or a character field with a small number of possible values,on the input page; it then allows for selection of one and only one of a series of choices from the entire setof displayed values. If the choice is between mutually exclusive items (for example, Domestic or Imported),use a radio set.

• Browser - Use to place a character field that can be used to link to and display a specific web page.

Input Rules > Inputs > Detail

Use the Input Rules > Inputs > Detail sheet in conjunction with the Input Rules > Page sheet and Design Toolboxto define the manner in which attributes and controls that have been placed on the input page should operate.The attributes determine the display information about an input or field: the name, type, format, and necessaryconditions for an input. Prompt When and On Leave expressions can also be defined for each control. Refer toInput Rules > Inputs > Prompt When and Input Rules > Inputs > On Leave for more details.

When you add specific controls to an input page being designed in the Input Rules > Page sheet, the Epicorapplication sets certain field defaults in the Input Rules > Inputs > Detail sheet for the control type that is beingadded. It also assigns a temporary input name (for example FILLIN1) that can be changed in the Input Rules >Inputs > Detail sheet prior to saving the record. Once the record is saved, the input name field cannot be changed.

• The Epicor application also automatically populates the X and Y fields in the Input Rules > Inputs > Detailsheet with the correct horizontal/vertical placement coordinates, depending on where the control was placedon the input page. If the control is moved in the Input Rules > Page sheet using the control handles, the Epicor

Epicor ERP | 9.05.70274

Configurator Technical Reference GuideImplementation Components and Calculations

Page 75: Epicor Configurator

application automatically updates the X and Y fields in the Input Rules > Inputs > Detail sheet with the newlocation of the control (horizontal/vertical placement coordinates).

• It also sets the default value in the Input Rules > Inputs > Detail sheet for the size of the control, dependingon the type of control that is being added. If the height or width of the control is updated in the Input Rules> Page sheet using the control handles, the Epicor application automatically updates the Height or Widthfields in the Input Rules > Inputs > Detail sheet with the new sizes for the control.

To test the inputs once you have defined all controls on the input page, select Test Inputs from the Actionsmenu. This launches a separate instance of the input page where you can test the inputs you just established.

Programs and Their Modifiers

Part Maintenance

The Configurator Designer sheet can be accessed from the Revisions Sheet in Part Maintenance. Refer to Assembliesand Subassemblies for details on how to launch Part Maintenance from the Main Menu.

Configurator Designer

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Select the Input Rules > Page sheet. From the Actions menu, select Design Toolbox, and then select theapplicable choice for the input page. As you select a control from the Design Toolbox and place it on the InputRules > Page sheet, click the Input sheet to define the attributes of the control itself.

The following values in the Input Rules > Inputs > Detail sheet are common to most of the controls if you chooseto use the Input Rules > Inputs > Detail sheet independently of the Input Rules > Page sheet. This means thatyou wish to define the control in the Input Rules > Inputs > Detail page without first selecting and placing it inthe Inputs Page sheet before defining the control:

• Page - Indicates the page number that contains this input control. When you place a new input control onan input page using the Design Toolbox, the Epicor application automatically updates this field. For example,if the input control was placed on Input Page 2, 2 appears in this field. If you wish to move an existing controlto another input page, enter the page number into this field. For example, if the input control was originallyplaced on Input Page 2, but you wish to move it to Input Page 3, change the display page number from 2 to3 in this field. The Epicor application then moves the input control to the designated page and displays thechange in the Tree view.

• Input Name - Enter a unique internal name for this field/control; it is used to identifying the field whencreating rules or when setting up input-based pricing.

• The input name itself is not displayed to the user during an actual configuration session in Order Entry,Opportunity/Quote Entry, Purchase Order Entry, Job Entry or Demand Entry. Refer to Use of Rules Types inRules Processing and Input Rules > Pricing for more details.

• If you accessed the Input Rules > Inputs > Detail sheet after placing the control in the Input Rules > Pagesheet, this is a display-only field. When you place the control on the input page, you can access the Input

75Epicor ERP | 9.05.702

Implementation Components and CalculationsConfigurator Technical Reference Guide

Page 76: Epicor Configurator

Detail sheet and change the input name field. However, once the record has been saved, you are no longerable to change it.

• A good business practice is to adhere to a standard naming convention to keep track of inputs. For example,preface Global input names with the letter g and variables that are not intended to be global be prefacedwith a letter other than g.

• It is also a good idea to use the Input Rules > Input Comments sheet to document the purpose of the field,and alternately, use a separate spreadsheet to list all inputs, stating the configuration, intent, and fieldlabel. You can then attach the spreadsheet by clicking the configuration in the Tree View pane of theConfigurator Designer. This opens a context-sensitive menu containing an Add New Attachment selectionthat allows for attachment of the document to the configuration. Configuration attachments only appearin the Configurator Designer and the Configurator Tracker.

• Web Input Name - Enter the internal name of the input control field as used by the Web Configurator. Itcan be the same as previously entered into the Input Name field. If you accessed the Input Rules > Inputs >Detail sheet after placing the control in the Input Rules > Page sheet, this is a display-only field. When youplace the control on the input page, you can access the Input Detail sheet and change the input name field.However, once the record has been saved, you are no longer able to change it.

• Label - Enter the literal text that appears next to this field on the input page.

• Summary Label - Enter the abbreviated literal label that should be used in places where the full label maynot fit.

• Required - Select this check box if this is a required field. The user must enter a value into the input duringan actual configuration session.

• Global - Select this check box if the traits specified for the configuration entry for this field are global for anentire quote, order, purchase order or demand order. It would be selected if a trait (like a color) that appliesto the first line is the default for all subsequent lines. In this scenario, when the user enters a value into thisfield while configuring the part in Order Entry, Opportunity/Quote Entry, Purchase Order Entry or DemandEntry, a dialog appears asking if you would like to apply this value across all detail lines.

• Global Input Variable (check box) - Select this check box if the value entered in this input control duringan actual configuration session should also update the value of the global input variable selected in the GlobalVariable Name combo box (below).

• If selected, the Epicor application passes this value throughout a single configuration session for an orderline, quote line, purchase order line, job or demand order line; it is made available to lower subassembliesor parts that are defined in the parent BOM that are also being configured during the same configurationsession. It is useful if you want to express a lower-level input in terms of a top-level input or anotherlower-level input.

• If a configured part is added as a subassembly of another configured part, this check box allows "passingdown" of the input value of a top-level configuration for use in the configuration of the lower-levelconfiguration. It can also be used to pass a value throughout the entire configuration, or between twolower-level subassemblies. For example, a global input variable doesn't necessarily have to be assigned atthe top-level; it could simply be selected and used on two subassembly configured parts, and the valuescould be passed between the two subassemblies themselves.

• The input for the top-level configured part displays as a selectable input when creating On Leave, PromptWhen, or Rule expressions on the lower-level configured parts.

• Note that if the same global input variable has also selected in the Global Variable Name checkbox ofa lower-level configurations input, the Epicor application updates the input (for the corresponding lower-levelconfiguration) with the value that has already been assigned to the global variable from the previoustop-level configuration. The value that is assigned to this selected global variable stays consistent throughouta single configuration session.

• If the value is changed on the top-level or a lower-level configured part, the value also changes for anyother configured parts for which this same global variable has been selected. This occurs within a singleconfiguration session for a specific quote line, order line, job order, purchase order line or demand order

Epicor ERP | 9.05.70276

Configurator Technical Reference GuideImplementation Components and Calculations

Page 77: Epicor Configurator

line - this value does not pass across different line items on the same order, quote, job order, purchaseorder line or demand order line.

• Global Variable Name - If the Global Input Variable check box was selected, specify the correspondingglobal input variable that the Epicor application updates when the value of this input control is changedduring a single configuration session. The selections that display are those that have been defined usingthe Global Input Variables selection on the Actions menu.

• It only displays selections that have the same data type as the current input. For example, if the currentinput control is a Logical input, only logical global input variables selections are displayed.

• If a global input variable was defined that has the same name as one of the inputs for the currentconfiguration, it does not display as one of the selections in this field (it does not allow duplicate inputname and global variable names for the same configured part). Refer the Global Input Variables topicfor more details.

• Position and Sizing Fields (X, Y, Width and Height) - These fields allows you to enter parameters thatcontrol the precise placement and sizing of the control.

• The X and Y fields can be used to specify the X and Y coordinates, allowing you to precisely place thecontrol vertically and horizontally on the input page; they can be used in lieu of using the pointer todrag/drop the control in the Input Rules > Page sheet.

• The Width and Height fields allow you to specify, in pixels, the width and height of the control.

• Tab Order - Enter the tab order number that determines the order in which the cursor moves through theinput fields when the Tab key is used. By default, the tab order number default is the order in which the fieldsare entered on the input page. The higher the number entered into the field indicates that depth into whichthe field appears in the Tab order. Read-only fields should not have a tab value.

• Tool Tip - Enter the literal text that should appear during a configuration session when the mouse movesover the control being defined. For example, Enter the text for the tool tip.

• Invisible - Select this check box if the control being defined should not be displayed on the input page duringa configuration session. Clear the check box if the control being defined should be display on the input pageduring a configuration session, and in the designer itself.

• Don't Display Input in Configuration Summary Grid - The Configuration Summary page can be viewedby clicking a Configuration button after configuring a part during a configuration session in Opportunity/QuoteEntry, Order Entry, Purchase Order Entry, Job Entry or Demand Entry. It displays a summary of the inputs andinput values (selections) that were entered for the configuration. Select this check box if the control beingdefined should not be displayed in the Configuration Summary grid during the reconfiguration of a part.

The following values in the Detail sheet appear only for the associated input control that was selected in theDesign Toolbox; they are unique to that control and can be modified:

77Epicor ERP | 9.05.702

Implementation Components and CalculationsConfigurator Technical Reference Guide

Page 78: Epicor Configurator

Browser

• Initial Value - Enter the default URL (if any) for the field (for example, http://epicor.com). This is an optionalfield; leave it blank if you do not want a default value to display in this field during an actual configurationsession.

Note If needed, you can alternately enter a path to a file location (for example, c:nn/nnnn) on thelocal disk rather than a URL. However, in order for Epicor Web Access (EWA) to operate properly, thelocal file should also be copied into the Resources/User/Files folder on the EWA site.

• Summary Label - Enter the abbreviated literal label that should be used in places where the full label maynot fit.

These are the Dynamic field properties you can assign to a Browser control. Refer to the Expression BuilderFunctions section for more details on each:

• FieldHeight

• FieldInitialValue

• FieldInvisible

• FieldRequired

• FieldSummaryLabel

• FieldToolTip

• FieldWidth

• FieldXPosition

• FieldYPosition

Epicor ERP | 9.05.70278

Configurator Technical Reference GuideImplementation Components and Calculations

Page 79: Epicor Configurator

Character Field

These are the values you can modify for this type of control:

• Format - Click Format to access the Character Format window to specify the acceptable character formatfor this field. In the Character Format window, use the Length field to specify the number of allowablecharacters that can be entered into the field during a configuration session, and then select one of the followingcharacter formats:

• Any Character - Any character (for example, alphanumeric, punctuation marks) can be entered.

• Letters and Numbers Only - Only alphanumeric characters can be entered.

• Letters Only - Only alpha characters can be entered.

• Letters Only and Convert to Caps - Only upper-case alpha characters can be entered.

• Numbers Only - Only numbers can be entered (no alphanumeric characters).

• Label - Enter the literal text that appears next to this field on the input page.

• Summary Label - Enter the abbreviated literal label that should be used in places where the full label maynot fit.

• Initial Value - Enter the default value (if any) for the field (for example, ABC). This is an optional field; leaveit blank if you do not want a default value to display in this field during an actual configuration session

• Valid List - Enter a comma-separated list of valid (allowable) responses if the user must select one of a fewpredetermined values. For example, enter A,B,C,D if only those values are allowable, valid entries in the field.Do not use spaces within the list.

These are the Dynamic field properties you can assign to a Character Field control. Refer to the ExpressionBuilder Functions section for more details on each:

• FieldHeight

• FieldInitialValue

• FieldInvisible

• FieldLabel

• FieldRequired

• FieldSummaryLabel

• FieldToolTip

• FieldValidList

79Epicor ERP | 9.05.702

Implementation Components and CalculationsConfigurator Technical Reference Guide

Page 80: Epicor Configurator

• FieldWidth

• FieldXPosition

• FieldYPosition

Check box

These are the values you can modify for this type of control:

• Label - Enter the literal text that appears next to this check box on the input page.

• Summary Label - Enter the abbreviated literal label that should be used in places where the full label maynot fit.

• Initial Value - Select this check box if the default value for the check box control being added to the inputpage should be selected (that is, by default, the check box appears as selected). Leave it blank if you do notwant a default value to display in the check box during an actual configuration session. By default, the checkbox is cleared.

These are the Dynamic field properties you can assign to a Check box control. Refer to the Expression BuilderFunctions section for more details on each:

• FieldHeight

• FieldInitialValue

• FieldInvisible

• FieldLabel

• FieldSummaryLabel

• FieldToolTip

• FieldWidth

• FieldXPosition

• FieldYPosition

Epicor ERP | 9.05.70280

Configurator Technical Reference GuideImplementation Components and Calculations

Page 81: Epicor Configurator

Combo Box

These are the values you can modify for this type of control:

• Label - Enter the literal text that appears next to this combo box on the input page.

• List Items - Enter the list of fixed options that can be selected from the combo box during a configurationsession; each option must be separated by a comma delimiter with no spaces preceding each option, orbetween the options themselves. Erroneous entry of spaces in this field is particularly significant when any ofthe list items are selected in calculations or Keep When rules

• For example, if you are defining a Color combo box, enter Red,Blue,Green. Note that you must be carefulnot to enter spaces when entering list items into this field. Spaces entered in front of the list (for example,_Red,Blue, Green), or preceding any of the fixed options (for example, Red,_Blue, Green) display in thecombo box itself during an actual configuration Q&A session.

• To create different sets of options that are dynamic (that is, they display when certain conditions aresatisfied), use the Dynamic Lists sheet to specify the condition expressions and processing criteria. Unlikestandard combo -boxes that offer a fixed set of choices, dynamic lists present choices based on conditionsestablished in the Expression Builder. Refer to Input Rules > Inputs > Detail > Dynamic Lists > Detailfor more details.

• Required - Select this check box if this is a required field. The user must enter a value into the input duringan actual configuration session.

• Initial Value - Specify the default option selection (if any) for the combo box control being added (for example,Green in the Color combo box example). This is an optional field; leave it blank if you do not want a defaultoption selection to display in this combo box during an actual configuration session. The initial value enteredinto this field must be one of the list items that were specified in the List Items field (above).

• Show Distinct Items - Specify if the Epicor application should only display distinct input option values in thecombo box control during an actual configuration session. In this case, it eliminates any duplicate values andonly displays those input options with unique values. Duplicate input values sometimes occur when theassociated list of options has been created through a dynamic list, whether calculated from a static list orbased on running a program or a BAQ.

Select the check box to only display distinct values in the combo box control during an actual configurationsession. Clear the check box to show all input option values (unique, as well as duplicate values) in the combobox control during an actual configuration session.

Note Combo boxes contain a field property called FieldShowDistinct; it can be used in the On Leavecode created for an configurator input or configurator page to dynamically set the Show Distinct

81Epicor ERP | 9.05.702

Implementation Components and CalculationsConfigurator Technical Reference Guide

Page 82: Epicor Configurator

Values check box setting. It is important to note that the FieldShowDistinct field property overridesthe default setting in the Configurator Designer. If you decide to use this, note the following:

1. Using the FieldShowDistinct property together with a BAQ or Run Program dynamic list may causea performance impact if FieldShowDistinct is constantly changing the default value. This is becauseeach time the Show Distinct Values check box value is changed through use of the field property,the Epicor application recalculates the list of items in the combo box.

2. It is important to remember that when Show Distinct Values check box is selected (True), it onlydisplays options where the input value and display value are unique. For example, in the followingscenario:

DescriptionValue

Letter AA

Letter BB

Letter CC

Letter AA

In this case, it only displays the following values during a configuration session:

DescriptionValue

Letter AA

Letter BB

Letter CC

However, in the following scenario, where some of the option descriptions have no space, thecombo box will display ALL items in a configuration session, because the combination of the valueand description are unique in each case. This applies mostly to BAQ Dynamic lists, in the case whenthe combo box is populated from a list of items (for example, Item 1,Item 2,Item 3), the valueand description are always the same.

DescriptionValue

Letter AA

Letter BB

Letter CC

LetterAA

LetterBB

LetterCC

These are the Dynamic field properties you can assign to a Combo box control. Refer to the Expression BuilderFunctions section for more details on each:

• FieldInitialValue

• FieldInvisible

• FieldLabel

• FieldSummaryLabel

• FieldToolTip

Epicor ERP | 9.05.70282

Configurator Technical Reference GuideImplementation Components and Calculations

Page 83: Epicor Configurator

• FieldWidth

• FieldXPosition

• FieldYPosition

Date

These are the values you can modify for this type of control:

• Format - Click Format to access the Date Format window to select one of the following character formats:

• 99/99/99 - Two-character year, with month, date, and year delimited by slashes (for example, 12/31/08).

• 99 -99-99 - Two-character year, with month, date, and year delimited by dashes (for example, 12-31-08).

• 99.99.99 - Two-character year, with month, date, and year delimited by periods (for example, 12.31.08).

• 99/99/9999 - Four-character year, with month, date, and year delimited by slashes (for example,12/31/2008).

• 99 -99-9999 - Four-character year, with month, date, and year delimited by dashes (for example,12-31-2008).

• 99.99.9999 - Four-character year, with month, date, and year delimited by periods (for example,12.31.2008).

• Label - Enter the literal text that appears next to this field on the input page.

• Summary Label - Enter the abbreviated literal label that should be used in places where the full label maynot fit.

• Initial Value - Enter the default value (if any) for the field (for example, 12-31-2008). This is an optional field;leave it blank if you do not want a default value to display in this field during an actual configuration session.

• Minimum, Maximum - Enter a range of valid dates that can be entered into the field when the part is beingconfigured in Order Entry, Opportunity/Quote Entry, Purchase Order Entry, Job Entry or Demand Entry.

• For example, enter 12 -01-2008 into the Minimum field and 12-31-2008 into the Maximum field if youallow only allow entry of dates within the range from 12-01-2008 to 12-31-2008.

• These are optional fields; leave them blank if the dates entered during the actual configuration session donot have to fall within a specified date range.

These are the Dynamic field properties you can assign to a Date control. Refer to the Expression BuilderFunctions section for more details on each:

• FieldInitialValue

83Epicor ERP | 9.05.702

Implementation Components and CalculationsConfigurator Technical Reference Guide

Page 84: Epicor Configurator

• FieldInvisible

• FieldLabel

• FieldMaximumDate / FieldMinimumDate

• FieldRequired

• FieldSummaryLabel

• FieldToolTip

• FieldWidth / FieldXPosition / FieldYPosition

Decimal

Use this control when you want the user to enter a decimal numeric value, even if you do not want the field tosupport decimal points.These are the values you can modify for this type of control:

• Format - Click Format to access the Number Format window to select one of the following formats to usefor numeric-based input:

• Negatives - Specify how the field should use negative signs by doing one of the following:

Select Allow Positive Numbers Only to prevent entry of negative numbers.

Select Leading Sign on Negative Numbers Only to allow entry of negative numbers with a sign (-) infront of the number.

Select Trailing Sign on Negative Numbers Only to allow entry of negative numbers with a sign (-) thattrails the number.

• Number of Digits - Specify the number of digits before the decimal point that are allowed in the field.

• Number of Decimals - Enter the number of decimal places after the decimal point that are allowed inthe field. Note that integers are not an input type themselves, but are simply decimals with zero precision.In this case, the number of decimals would be set to zero.

• Thousands Separator - Select this check box if values with thousands (for example, 12000 or 100000)entered into this number field should be separated with commas (for example 12,000 and 100,000).

• Label - Enter the literal text that displays next to this field on the input page.

• Summary Label - Enter the abbreviated literal label that should be used in places where the full label maynot fit.

• Initial Value - Enter the default value (if any) for the field (for example, 1.2). This is an optional field; leaveit blank if you do not want a default value to display in this field during an actual configuration session.

Epicor ERP | 9.05.70284

Configurator Technical Reference GuideImplementation Components and Calculations

Page 85: Epicor Configurator

• Minimum, Maximum, Increment - Enter a starting and ending range of valid numeric responses, and anincrement value.

• For example, enter 5 into the Minimum field, 50 into the Maximum field, and 5 into the Incrementfield if you allow entry of values from 5 to 50, at increments of 5 (into the numeric field being defined)during an actual configuration session.

• These are optional fields; leave them blank if the numeric values entered during the actual configurationsession do not have to fall within a specified numeric value range.

These are the Dynamic field properties you can assign to a Decimal control. Refer to the Expression BuilderFunctions section for more details on each:

• FieldIncrement

• FieldInitialValue

• FieldInvisible

• FieldLabel

• FieldMaximumDecimal

• FieldMinimumDecimal

• FieldRequired

• FieldSummaryLabel

• FieldToolTip

• FieldWidth

• FieldXPosition

• FieldYPosition

Editor

These are the values you can modify for this type of control:

• Label - Enter the literal text that appears next to this field on the input page.

• Summary Label - Enter the abbreviated literal label that should be used in places where the full label maynot fit.

• Required - Select this check box if this is a required field. The user must enter a value into the input duringan actual configuration session.

• Initial Value - Enter the default value (if any) for the field (for example, ABC). This is an optional field; leaveit blank if you do not want a default value to display in this field during an actual configuration session.

85Epicor ERP | 9.05.702

Implementation Components and CalculationsConfigurator Technical Reference Guide

Page 86: Epicor Configurator

These are the Dynamic field properties you can assign to an Editor control. Refer to the Expression BuilderFunctions section for more details on each:

• FieldHeight

• FieldInitialValue

• FieldInvisible

• FieldLabel

• FieldRequired

• FieldSummaryLabel

• FieldToolTip

• FieldWidth

• FieldXPosition

• FieldYPosition

Label

These are the values you can modify for this type of control:

• Text - Enter the literal text that appears on the label.

Radio Set

These are the values you can modify for this type of control:

• Summary Label - Enter the abbreviated literal label that should be used in places where the full label maynot fit.

Epicor ERP | 9.05.70286

Configurator Technical Reference GuideImplementation Components and Calculations

Page 87: Epicor Configurator

• Buttons - Enter the list of option buttons from which the user can select. The user can select only one of theradio buttons during a configuration session

• The correct syntax is Item1,A,Item2,B, Item3,C, where Item1 is the label literal that displays during aconfiguration session and A is its value. The label is followed by a comma delimiter, then the value of theentry that is actually stored in the configuration itself, with no spaces between the options.

• For example, if you are defining a Color radio set, and the actual color selection is stored in the configurationitself, the radio button selection would be expressed as Red,Red,Blue,Blue,Green,Green.

• Horizontal - Select this check box if the radio set should be displayed horizontally in the input page. Clearthe check box if it should be displayed vertically.

• Initial Value - Enter the default value (if any) for the radio set (which option button should be selected as adefault). This is an optional field; leave it blank if you do not want a default value to appear in this field duringan actual configuration session.

These are the Dynamic field properties you can assign to a Radioset control. Refer to the Expression BuilderFunctions section for more details on each:

• FieldHeight

• FieldInitialValue

• FieldInvisible

• FieldLabel

• FieldRequired

• FieldSummaryLabel

• FieldToolTip

• FieldValidList

• FieldWidth

• FieldXPosition

• FieldYPosition

Rectangle

These are the Dynamic field properties you can assign to a Rectangle control. Refer to the Expression BuilderFunctions section for more details on each:

• FieldHeight

• FieldInvisible

• FieldLabel

• FieldWidth

• FieldXPosition

• FieldYPosition

Text

These are the Dynamic field properties you can assign to a Text control. Refer to the Expression Builder Functionssection for more details on each:

• FieldHeight

• FieldInvisible

• FieldLabel

• FieldWidth

• FieldXPosition / FieldYPosition

87Epicor ERP | 9.05.702

Implementation Components and CalculationsConfigurator Technical Reference Guide

Page 88: Epicor Configurator

Global Input Variables

Global variable logic can be used to share information between parent and child configurations that are executedin a single Q&A session for a single quote line, order line, job, purchase order line or demand order line. It allowslinking of the global variable in each configuration to a local input variable.

For example, when creating a configuration for an office cubicle that consists of the walls (panels and paintedframes), desktop and cabinet, a "Color" global input variable can be developed that allows selection of the colorwhen configuring the "parent" office cubicle. The selected color is then "passed down" to the associated "child"configurations (walls, desktop and cabinet), resulting in a color-coordinated set that does not require subsequentselection of color for each of the configured components. Refer to the Examples section below for a detailedexplanation of this cubicle color selection.

Epicor ERP | 9.05.70288

Configurator Technical Reference GuideImplementation Components and Calculations

Page 89: Epicor Configurator

The Global Input Variable check box in the Input Rules > Inputs > Detail sheet allows you to specify if the valueentered in the input control (for example, Color) during an actual configuration Q&A session should also updatethe value of the global input variable selected in the corresponding Global Variable Name combo box. Thiscombo box is found underneath the check box in the Input Rules > Inputs > Detail sheet.

• The combo box displays options that have been defined using the Global Input Variables selection on theActions menu (a graphic representation, and directions for its use appear on the following pages).

• It only displays selections that have the same data type as the input control that is currently being defined inthe Input Rules > Inputs > Detail sheet. Refer to Inputs > Detail for more information. For example, if thecurrent input control is a logical input, all logical global input variables selections are displayed.

• If a global input variable that was defined has the same name as one of the inputs for the current configuration,it does not display as one of the selections in this field. It does not allow duplicate input name and globalvariable names for the same configured part).

The Global Input Variable logic that is enabled using these two controls allow you to specify if the Epicor applicationshould pass a value entered into the specified input control throughout a single configuration session for anorder line, quote line, job, purchase order line or demand order line. This makes the value available to lowersubassemblies or parts defined in the parent BOM that are also being configured during the same configurationsession.

• It is useful if you want to express a lower-level input in terms of a top-level input, for passing a value (suchas Color) throughout the entire configuration, or between two lower-level subassemblies. If a configured partis added as a subassembly of another configured part, this check box allows "passing down" of the inputvalue of a top-level configuration for use in the configuration of the lower-level configuration. It can also beused to pass the value throughout the entire configuration. For example, a global input variable doesn'tnecessarily have to be assigned at the top-level; it could simply be selected and used on two subassemblyconfigured parts, and the values could be passed between the two subassemblies themselves.

89Epicor ERP | 9.05.702

Implementation Components and CalculationsConfigurator Technical Reference Guide

Page 90: Epicor Configurator

• The input for the top-level configured part displays as a selectable input when creating On Leave, PromptWhen, or Rule expressions on the lower-level configured parts.

• Note that if the same global input variable has also been selected in the Global Variable Name combo boxof another lower-level configurations input, the Epicor application updates the input for the correspondinglower-level configuration with the value that has already been assigned to the global variable from the previoustop-level or lower-level configuration.

• If two configured parts within the BOM structure need to reference or update the same Global Input Variable,the global input variable must be selected in the Global Variable Name combo box (on at least one of theinputs in each separate configured part) for both configured parts. The global input variable isn't available tothe configured part unless it is selected in the Global Variable Name combo box for one of its inputs.

• The value that is assigned to this selected global variable stays consistent throughout a single configurationsession. If the value is changed on a lower-level configured part, the value also changes for any other configuredparts for which this same global variable has been selected. This occurs within a single configuration sessionfor a specific quote line, order line, purchase order line or demand order line - this value does not pass acrossdifferent line items on the same order, quote, purchase order or demand order.

Programs and Their Modifiers

Part Maintenance

The Configurator Designer sheet can be accessed from the Revisions Sheet in Part Maintenance. Refer toAssemblies and Subassemblies for details on how to launch Part Maintenance from the Main Menu.

Configurator Designer

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

The Global Input Variables selection allows you to define global input variables that can be selected for a selectedinput control using the Global Variable Name combo box in the Input Rules > Inputs > Detail sheet. From theActions menu anywhere in the Configurator program, click Global Input Variables.

Epicor ERP | 9.05.70290

Configurator Technical Reference GuideImplementation Components and Calculations

Page 91: Epicor Configurator

These are the values you can modify for this item:

• Input Name - Enter the name of the global input variable as it should appear when displayed as a selectableoption in the Global Variable Name combo box in the Input Rules > Inputs > Detail sheet.

• Be aware when naming the global input variable selections so that they do not have the same names asinput controls themselves. For example, if an input control being used for a configured part is called Size,do not use it as the name for any of global variable selections if you want to use the global input variableon that configured part. When using the Global Variable Name combo box, the Epicor applicationprevents selection of a global input variable with the same name as a control being used for the sameconfigured part.

• Note that the global input variables you create in this program are not linked to a specific part or revision- you create the selections as part of an all-inclusive list that can be shared by many configured parts orrevisions. It is advisable to use a naming convention that clearly differentiates global input variable namesfrom the names of input controls themselves.

• Type - Select the data type (Character, Date, Logical, or Decimal) for the global input variable. Refer toInputs > Detail for more details on each data type.

• Character Value / Date Value / Decimal Value / Logical - Depending on the data type that was selectedin the Type field, specify the default input value for the global variable input being defined. The Epicorapplication assigns this as the default value during an actual configuration session if the global input variabledoesn't already have a value (that is, it hasn't already been assigned by a previous configured part during thesame configuration session). Select the Logical Value check box if the global input variable being defined isa Logical value and you wish to set the initial value for the Logical field as selected. Leave the check box clearedto set the initial value for the Logical field as cleared.

The Character Value, Date Value, Decimal Value and Logical Value check boxes are all optional entries.

Logic/Algorithms

When in an actual configuration session, if the user changes the value in an input control for which a globalinput variables has been assigned, the Epicor application automatically updates the global variable. If you changethe global variable value, the Epicor application updates the input value to which it has been assigned.

As the user progresses through the configuration session to configure the top-level configured part, the currentvalue assigned to the global variable is passed to the next (or previous) configured part. It can be referenced orchanged in that configuration as long as one of the inputs in the configuration also contains a global variableselection in the Global Variable Name combo box.

91Epicor ERP | 9.05.702

Implementation Components and CalculationsConfigurator Technical Reference Guide

Page 92: Epicor Configurator

Examples

An office furniture manufacturer produces office cubicles - each model consists of walls (seven panels and paintedframes), a desktop and a cabinet. Each of these components have their own configured options but all arenormally painted in the same color unless the customer requests otherwise.

• The main (parent) configuration is the office cubicle itself and allows selection of style and color.

• The association child configurations are the cubicle walls (panels and painted frame), the desk top and thecabinet.

• During an actual Q&A configuration session, the four separator configurations appear as one in the sameconfiguration session (they are not operated independently from each other).

A "Color" global input variable can be developed that allows selection and "passing down" of the color selectedfor the parent office cubicle to the child wall, cabinet and desk in the Input Rules - Page sheet, resulting in acolor-coordinated set that does not require individual selection of color for each configured component (unlessdesired). To set this up in the Configurator Designer, you would do the following:

• Create a global variable called globalColor using the Global Input Variables selection on the Actions menuin the Input Rules - Inputs - Detail sheet.

• In each of the configurations, add an input control called localColor in the Input Rules - Page sheet. Whendefining this input control in the Input Rules - Inputs - Detail sheet, select the Global Input Variable checkbox. Assign globalColor (as the global input name) to the localColor input variable using the Global VariableName combo box.

When creating an office cubicle configuration during the actual configuration Q&A session, the following actionstake place:

• The user enters Office Cubicle as the part number in Order Entry and clicks Configure to start theconfiguration Q&A session.

• In the parent Office Cubicle configuration, the user selects the color Blue, which is stored as the value inglobalColor.

Epicor ERP | 9.05.70292

Configurator Technical Reference GuideImplementation Components and Calculations

Page 93: Epicor Configurator

• After completion of the Office Cubicle configuration, the Epicor application immediately executes the childWalls configuration in the same Q&A session. Because the OClocalColor input control is linked to globalColor,it inherits the value Blue. The user chooses not to change the color selection, so the value Blue is also storedin globalColor.

• After completion of the child Walls configuration, the Epicor application immediately executes the childDesktop configuration in the same Q&A session. The DTlocalColor input control is linked to globalColor andinherits the value Blue, but user decides to change the color to Gray. The DTlocalColor and the global variableglobalColor are updated with the new value of Gray, but the Office Cubicle and Walls configurations are notupdated (OClocalColor and WlocalColor remain as Blue).

• After completion of the child Desktop configuration, the Epicor application immediately executes the childCabinet configuration in the same Q&A session. The ClocalColor input control is linked to globalColor andinherits the value Grey.

Note that if the child Walls, Desk Top and Cabinet configuration were entered as part numbers on separatesales order lines, the globalColor value would not be passed between them because each configuration wouldbe processed in individual Q&A sessions; global input variables are only shared between configurators in thesame Q&A session.

Expression Builder / Context Functions

Use the Expression Builder to establish expressions that determine how input values are evaluated in controlsplaced on a configuration input page using the Configurator Designer > Input Rules > Page sheet. You can defineexpressions in the following Configurator Designer > Inputs sheets:

• Prompt When - Specifies the conditions under which a particular control (field) should appear (be enabledor disabled) on an input page during a configuration session, or when a configuration page itself should beenabled or disabled. Refer to Input Rules > Inputs > Prompt When and Input Rules > Prompt When formore details.

• On Leave - Specifies the conditions that designate the actions that should take place (what should happen)when exiting a particular control (field) on an input page, or an input page itself during an actual configurationsession. Refer to Input Rules > Inputs > On Leave and Input Rules > On Leave for more details.

93Epicor ERP | 9.05.702

Implementation Components and CalculationsConfigurator Technical Reference Guide

Page 94: Epicor Configurator

• Dynamic List - A dynamic list is a set of combo box option selections that are dynamic in nature (that is, thedisplayed options change based on certain conditions being satisfied). An expression can be developed usingthe Expression Builder that allows you to construct a specific set of options that display when specific selectionshave been made in other fields in a configuration session, or certain conditions have been satisfied. Refer toInput Rules > Inputs > Detail > Dynamic Lists > Detail/Criteria for more details.

• General Pricing - Use the Input Rules > Pricing > General > Detail sheet to define sales order, quote, purchaseorder and demand order pricing options for a configuration for external companies. It can be used if theEnterprise Configurator check box has been selected in the Status sheet and you are using multi-companyconfigurator functions. Refer to Input Rules > Pricing > General > Detail for more details.

• Document Rules - Document rules allow for updating of source transactions (such as quotes, sales orders,jobs, purchase orders or demand orders) that initiated a configuration. They can be used in a single-companyenvironment, or with an Enterprise Configurator in a multi-company environment. These rules allow for thecreation of Calculation, Set Field, and Program Call rules that automatically update these transactions withapplicable data specifically related to the configuration and its manufacture in the Manufacturing company.Based on the rule expression syntax, the Epicor application updates the tables and fields defined in the rulewith the appropriate resulting values (also specified in the rule expression). Refer to Input Rules > DocumentRules for more details.

• Structure Rules - Structure rules are required in an Enterprise multi-company configurator to build thestructure of the configurable subcomponents (they cannot be used in a single-company environment). Thisstructure is necessary to determine which other configurators must be present in the Sales company to collectall the required inputs for the Manufacturing company. The structure rules only contain configurablesubassemblies and configurable materials. They can be defined in the Sales company to perform the tasksthat would normally be performed when method rules are applied against these sub configured parts whenthe Get Details function is used in Quote Entry or Job Entry. Refer to Structure Rules for more details.

• Method Rules - Method rules determine the specific material content for the resulting method of manufacturefor the part when it is configured during an actual configuration session in Order Entry, Opportunity/QuoteEntry, Purchase Order Entry, Job Entry or Demand Entry. Refer to Method Rules for more details.

Entering Expressions

Expressions can be directly entered using the following methods:

• Directly entered into the appropriate sheet (Prompt When, On Leave, Dynamic List, Rules sheets) in theConfigurator Designer; you can do this by clicking Free Form or Edit, and then typing. This applies regardlessof the purpose of its use. If you have Microsoft Word or another text editing application, you can save theexpression in a document file for later reference. The Free Form editor supports cutting and pasting to andfrom other applications. However, if you are keying the expression with the Free Form editor, you can typethe expression from left to right, as with any other text editor.

• You can also select the operations and operands from the Select wizard (see the Configurator ExpressionExample below). In this case, the expression evaluates to a legible string of text that is displayed as you buildthe expression.

Epicor ERP | 9.05.70294

Configurator Technical Reference GuideImplementation Components and Calculations

Page 95: Epicor Configurator

Refer to the Expression Builder Functions section for a complete listing of the expression functions and theiruse.

Configurator Expression Example

When using the expression functions documented in the Expression Builder Functions section of this document,the Configurator auto-populates the expression string with text, depending on what function is selected. Anywherea {number}, {string}, {date}, or {logical} that is auto-populated in the string needs to be replaced before theexpression is satisfied and it can be saved.

As you select the Next button in the Expression Builder, it steps you through each of these entries, allowing youto replace them with constant text or with another sub-expression, a field or input that corresponds with thetype that is being replaced.

To build an expression, you first select the Rule Type being defined, select operator or relationship, and thenselect the data elements.

• Refer to the Using Rules Types in Rule Processing for more details about rules types.

• If for example, a new Set Field rule is being defined for the IssuedQty field in the JobMtl table, and you havedecided to define a <Sub -Expression> for this field, you select the expression being used from a listing ofavailable expression functions for the field. The expression functions displayed are dependent on the type offield being updated.

• In the example above, when defining method rules, you can specify a rules tag that allows you to applymethod rules against a part number (for example, same sub -level component) that occurs multiple times ina configuration. This is an optional feature in the Configurator Designer; you do not have to use it if it doesnot apply in your operations. Refer to Using Tag Lineage to Define Multiple Method Rules for the SamePart for more details.

• At any point, you can click Back to go back a step. You can click Next to go forward, but this is allowedonly if the current entry is valid. The Next button becomes Finish when an expression is satisfied.

95Epicor ERP | 9.05.702

Implementation Components and CalculationsConfigurator Technical Reference Guide

Page 96: Epicor Configurator

For operands (data elements), your choices are constants, fields, calculation rules that have been defined,user-defined elements (fields that you created), or sub-expressions (results of other expressions). At this point,you are updating the highlighted section in the expression string. Whatever is selected in the next Expressionpage replaces the {Number} in the string.

• You can choose to replace this {Number} placeholder by adding another sub -expression, assigning a constantvalue, or using other functions.

• In the example above, selecting <Numeric -Constant> specifies that a constant value must be entered orselected to replace {Number} in the string.

A Constant page then appears for entry of the string constant value that replaces {Number} in the string.

In the example above, the absolute value of the 123 constant specified in the Constant form replaces {Number}in the string.

Epicor ERP | 9.05.70296

Configurator Technical Reference GuideImplementation Components and Calculations

Page 97: Epicor Configurator

This completes the definition of the rule, unless the sub-expression that was originally selected is longer andcontains more {number}, {string}, {date} or {logical} placeholders. In this case, the Next button would still beenabled and allow you to step through each, replacing them one placeholder at a time.

Tip If the expression contains a referenced program that is stored in a directory, and the directory structurein which the file is located contains spaces, you must put quotes around the directory and program name(for example,"c:\Program Files\Test.p") in expressions that reference the program.

Additional Context Functions

Epicor has also developed additional context functions that are used to define a configuration for a part. Contextfunctions can be used in expressions for pricing, Prompt When, On Leave and Dynamic List processing.

These functions are valuable if numbers from the quote, order, or job are being used as part of the configuration.As a result of using these functions, a configuration can behave differently if on a quote from how it would ifon an order or job. Refer to the Context Functions section for a complete listing of the context functions andtheir use.

Use of Rules Types in Rules Processing

The Product Configuration module makes extensive use of rules that you define during the initial productconfiguration definition phase (refer to Use of Configuration Rules for more details):

• Input Rules, including Dynamic Lists and Document Rules, that are defined in the Input Rules tab andaccompanying sheets.

• Method Rules that are defined in the Method Rules tab and accompanying sheets.

• Structure Rules (Multi-Company only) that are defined in the Structure Rules tab and accompanying sheets.

When you define individual rules for use in Configurator processing, you specify what Boolean logic-based ruletype (and accompanying logic) is being employed in the rule. For example, for Method rules, you use the KeepWhen rule type to determine the specific material content, and designate what components and operationsshould be included when the configured part is manufactured.

Note The specific rules types that can be selected for use vary according to the kind of rule (Document,Method or Structure) being defined; only selected rule types are available for use with each kind of rule.

Use of Boolean Logic - How Rules Work

Rules that you define in the Product Configuration are based on Boolean logic, which presents a statement thatmust be either true or false.

• If A is true and B is true, then choose C

• If A is true and B is false, then C is not chosen.

• If A is false and B is true, then C is not chosen.

• If A is false and B is false, then C is not chosen.

Rule Example

Suppose you are a manufacturer of kitchen appliances, one of which is a table-top mixer. These come in variousmotor sizes, depending on the end use of the item. One of the options might be to include a dough hook, usedfor kneading bread dough. Since this requires a heavy-duty motor, then selecting the dough hook attachment

97Epicor ERP | 9.05.702

Implementation Components and CalculationsConfigurator Technical Reference Guide

Page 98: Epicor Configurator

causes the Configurator to select the heavy duty motor, whereas it normally would select the medium duty motor.So, the Keep When rule would look something like this:

• "Keep "Heavy Duty motor" when Doughhook = true

• "Keep "Medium Duty motor" when Doughhook = false

How is the Configurator kept from selecting the other motor? Simply by using the opposite rule:

• "Keep "Heavy Duty motor" when (dough = "Bread Dough" or dough = "pastry crust" or heavyingredients= true).

• "Keep "Medium Duty motor" when (not (dough = "Bread Dough" or dough = "pastry crust" orheavyingredients = true)).

• A better way of accomplishing this is to define a Calculation variable - Heavy = (dough = "BreadDough" or dough = "pastry crust" or heavyingredients = true)

Now the quote will contain one of the two motors, depending on whether the user wants a dough hookattachment. The Configurator works on an exception basis - if no rule attached to an item, it is always selected.So, it is only those items that are "conditional" that would require selection rules. What if there is more thanone reason to select a component or subassembly? In the case of the table-top mixer, the heavy duty motor maybe required for a number of reasons:

• kneading bread dough

• making pastry crust

• mixing heavy ingredients

It is necessary to verify the heavy-duty motor is selected if any of the above is true, so the following rule wouldbe defined:

• "Keep "Heavy Duty motor" when heavy = true

• "Keep "Medium Duty motor" when heavy = false

If any one of the above is true, the heavy-duty motor is selected. The medium-duty motor is selected only if noneof the above is true. In each of the above examples, it is not necessary for the user to choose the heavy-dutymotor, the Configurator selects it automatically based on other selections.

Rule Types Selection

Epicor ERP | 9.05.70298

Configurator Technical Reference GuideImplementation Components and Calculations

Page 99: Epicor Configurator

When first defining a rule (be it a Document, Method or Structure Rule), you specify the rule type, usually in theExpression Builder. For example, referring to the graphic above, a Calculation rule type has been selected in theExpression Builder. Note that the specific rules types that can be selected for use vary according to the kind ofrule (Document, Method or Structure) being defined; only selected rule types are available for use with each kindof rule.

For example, when you define an individual Method rule in the sheets under the Method Rules tab, you canselect one of the following rule types:

• Calculation

• Keep When

• Set Field

• Program Call

• Rule Function

After selecting a rule type, enter the parameters for the rule itself; the information entered is dependent on thetype of rule selected in the Rule Type field. Refer to the information that follows in this section for a detailedexplanation of each rule type and how it is defined.

Calculation

This rule type (pictured on the previous page) calculates and stores a value required for use in other rules. Thisis one of the most powerful features of the Configurator; it gives it the ability to perform calculations throughformulas.

You can create complex calculations with sub-calculations, and other elements.

When you create a Calculation rule, it is also available when adding rules to any other assembly, material,operation, or operation detail sequence. This allows the Epicor application to easily perform calculations as entriesare made during a configuration session. It eliminates the need to modify the standard values on the Method ofManufacture for a universal part to accommodate non-standard values that vary based on configuration sessionentries (for example, calculation of area for component materials with varying widths and heights).

• It is also useful if you are creating a series of Set Field rules that are updated based on the results of an identicalcalculation that each one uses. Instead of duplicating the same calculation over and over (on multiple assemblies,materials, operations), you can perform the calculation once by creating a single Calculation rule.

• For example, if you create a Calculation Rule called Area, which calculates area based on multiplying widthand height entries during a configuration session, the Epicor application stores the results of the calculationin the generated rule programs in a shared variable called Area.

• When building Set Field rule expressions, the name of the calculation displays in the list of available selections(see above). The field can be updated using the results of the Calculation rule expression. You could thencreate a Set Field rule that uses the area value to set the value of the QtyPer field of the material.

To define a Calculation rule, do the following:

• Enter the name of the calculation into the Calculation field, for example, Area.

• Use the Expression Builder to build expressions containing the conditions used to perform calculations ofvalues that are stored for use in other types of rules. Refer to the Expression Builder / Content Functions,Express Builder Functions and Context Function sections for detailed information.

Example

One of the most powerful features of the Configurator is its ability to perform calculations through formulas.Wavy Rider Products allows its customers to add mirrors of different sizes to their pontoon boats. They consistof three components (frame material, glass and optional mat) that require computation of dimensions.

99Epicor ERP | 9.05.702

Implementation Components and CalculationsConfigurator Technical Reference Guide

Page 100: Epicor Configurator

Assume that the frame pieces will be cut at a 45-degree angle, so that the outside dimension of each piece willcorrespond to one of the frame dimensions. For example, a 5X7 inch frame requires four frame pieces - two atfive inches in length, and the other two at seven inches in length.

This is a total of 24 inches of material. Since the inventory unit of measure for the frame material is bar (BR), itis necessary to determine the bar length and how much of each bar is needed for each frame. Assume each pieceof frame material is purchased in 12-foot lengths, or 144 inches. The calculation for a 5X7 frame would be 24/144= 0.166666. The quantity per parent value on a job or quotation is now 0.166667 bar (BR) for each frame. Similarcalculations can be done for the other two frame sizes; the Configurator can do the calculations for us.

Set Field

This rule type assigns a value to a data field in an operation or material record for a quote or job, based on thecalculations and inputs made during a configuration session.

A second use of the Set Field rule is for eliminating the need to include all possible raw materials or componentsdefined for the universal part being configured, and skip having to define Keep When rules that would benecessary to accomplish this task.

• For example, placeholder part numbers can be used when defining Set Field Method rules for subassemblyconfigurators (subconfigurators). A sub-configurator is defined as a configurator that is a subassembly ofanother configurator; the Epicor application identifies subconfigurators that exist within a configurator whenyou run the Refresh Structure Definitions selection on the Configurator Designer Actions menu.

• A place holder is a 'dummy' part number that can be included in a Method rule; if the conditions of the ruleare satisfied during a configuration session, the Epicor application replaces the placeholder part number withanother actual part number. This eliminates the need to use Keep When rules that add each possiblesubconfigurator as a sub assembly. The Set Field replacement method is easier to maintain and requires lessongoing interaction and maintenance than you use Keep When rules for this task.

Note For information on how to define subconfigurator placeholders "swaps" in a multi-companyenvironment, refer to Creating Subconfigurator Part Swaps in a Multi-Company ConfiguratorEnvironment.

Another excellent use of the Set Field rule is for those fields whose values change based on the inputs.

• The most common rule type for operations is the Set Field rule for calculation of run times, although it maybe necessary to determine whether or not an operation is necessary by using a Keep When rule.

Epicor ERP | 9.05.702100

Configurator Technical Reference GuideImplementation Components and Calculations

Page 101: Epicor Configurator

• Based on entries made during a configuration session, the Epicor application uses Set Field rules to properlypopulate the Get Details sheet when creating a job for the configured part in Job Entry or Quote Entry.

To define a Set Field rule, specify the table for which the rule is being defined. Select one of the following. Onceyou have selected an option, it displays in the Table field:

• Job

• Job Assembly

• Quote

• Quote Assembly

• Part - You can create Set Field rules on the Part table only if the Create Part for each new configurationcheck box has been selected in the Configurator Designer > Part > Creation sheet, and only if Assembly 0(Alt) was selected in the tree display. When the Epicor application creates the part number during aconfiguration session, it processes any Set Field rules defined in the Part table, and updates the new partrecord with those values.

After selecting the table, specify the field within the table for which the rule is being defined. Only user-updatablefields displayed in the list of fields for each table. Key fields, calculated fields, and system-assigned fields do notdisplay in the Available Selections list in the Expression Builder. Once you have selected an option, it displays inthe Field field.

• After selecting the field and table, use the Expression Builder to establish expressions that contain the conditions,that when satisfied, set a value in the selected field within the selected table.

• Refer to the Expression Builder / Content Functions, Express Builder Functions and Context Functionsections for detailed information.

Example

Wavy Rider Products allows customers to add wooden doors with glass inserts; they allow easy access to thequarters below deck in the pontoon boats. There are a large number of part numbers for the glass based oncolor, thickness and other factors. Rather than including all of these combinations in the universal part, WavyRider Products has decided to create rules that the inputs to create a part number for the glass. Assume thefollowing inputs:

• P01_Num_DoorHeight, for the height of the door.

• P01_Num_DoorWidth, for the width of the door.

• P01_Cmb_DoorThick, a combo box for the thickness of the door.

• P01_Cmb_Color, for the glass color.

They have constructed a rule that creates a part number for the glass based on its dimensions, thickness andcolor. It also converts the Numeric field to a Character field. The rule looks like the following:

Set QuoteDtl.PartNum = String(P01_Num_DoorHeight) + String(P01_Num_DoorWidth)+ P01_Cmb_DoorThick+ P01_Cmb_Color

101Epicor ERP | 9.05.702

Implementation Components and CalculationsConfigurator Technical Reference Guide

Page 102: Epicor Configurator

In this example, they have created a value for the Part Number field by concatenating the four character valuestogether. This rule must be linked to material in the Method of Manufacture for the universal part, but it overridesthe material part number with the result.

Program Call

This rule type transfers control to an external program to perform instructions and return the result to theconfiguration.

• To create such a rule, enter the path to the external program, including any command line parameters, in theFree Form Editor field. For example, enter the syntax run xxx.p, where xxx is the name of the externalprogram being called.

• The rule programs that are generated when the configuration is approved are processed on the server. If noUNC path is specified with the program name, when the Run statement is executed during the configurationprocess, it searches all directories that are defined in the PROPATH for the server; the specified program mustreside in one of the directories.

• You can also specify a full UNC path if the program is located on a different server or machine. If the file islocated on another server or machine, the server where this program is located has to proper permissionsrequired to access the folder in which it is located.

Epicor ERP | 9.05.702102

Configurator Technical Reference GuideImplementation Components and Calculations

Page 103: Epicor Configurator

Keep When

Unlike non-configured parts, the Method of Manufacture that is initially defined for a configured universal partrevision contains all component parts and operations that could possibly be included to manufacturethe configured part, regardless of the actual selected configuration options.

• When these types of parts are actually configured, they use Keep When rules to select the materials andassemblies and operations required for a particular configuration, based on user input during a configurationsession. This rule type specifies the conditions under which this material or operation should remain in theMethod of Manufacture.

• A better method of referring to these rules is as "Only Keep When" rules (that is, defining only those conditionsunder which specified materials or operations should remain on the Method of Manufacture for the configuredpart). They allow for selection of an operation or material during a configuration session (based on date,numeric, logical, or string data), or construction of a logical statement consisting of one or more of these.

• For example, if a universal part is a frame and you included a "Reinforce" operation on the frame's routing.However, this operation is not necessary if the frame is smaller than three feet wide. You could then createan input called Width, and build a Keep When rule on the Reinforce operation that states that this operationshould be included in the Method of Manufacture only when the width is greater than 3.0.

• Note that if you selected Alt from the tree display, Keep When rules can be created for alternate revisions orthe top-level assembly itself.

• To create Keep When rules, select the Context function being used in construction of the rule, and use theExpression Builder to establish expressions that contain the conditions, that when satisfied, cause the specifiedmaterials or operations to remain on the Method of Manufacture for the configured part. Refer to theExpression Builder / Content Functions, Express Builder Functions and Context Function sections fordetailed information.

Example

Wavy Rider Products has developed a Keep When rule to keep the AS090-6061 part number when the calculatedtube diameter is 25". It contains the following condition expression:

Keep When - (Substring(Calc_Center_Tube_Desc,Integer(6),Integer(2))) = "25"

Note that it is better to put this calculation into a calculated field, and use the calculated field in the Keep Whenrule. The calculated field can then be used for multiple Keep When rules - this allows you to easily maintain orupdate the calculation expression in one place. Many users create the calculated fields at the top of a Methodof Manufacture tree so they can be easily found.

103Epicor ERP | 9.05.702

Implementation Components and CalculationsConfigurator Technical Reference Guide

Page 104: Epicor Configurator

Rule Function

This rule type returns values for operations, operation details, and materials using Context functions; the specificContext functions that are available are dependent on what type of record was selected in the tree display.

• This rule type is valuable for rules that refresh details when specific values are changed.

• Note that if you selected Alt from the tree display, Rule Function rules cannot be created for alternate revisionsor the top-level assembly itself. Rules functions can be defined for alternate revision, just not the top-levelassembly of an alternate revision. Refer to the Expression Builder / Content Functions and ContextFunction sections for detailed information.

• Rule functions are processed when using the Get Details sheet in Quote Entry or Job Entry. Each of these rulefunctions serve a different purpose but they are normally added after another Set Field rule has been createdon the same assembly, material, operation, or operation details sequence that would have changed the valueof an existing field. For example, the part number or operation code has been changed.

The following selections are available when defining a Rule Function; the specific selections that appear aredependent on where the rule is being added (operation, operation detail, material, or subassembly):

Get Operation Master Defaults

This function can only be added when defining rules for operation sequences.

• Since the OpCode may have been changed by a Set Field rule, this rule function can be added to retrievedefault values for the new OpCode. The default values are similar to the default values that would display ifyou manually change the OpCode on an operation detail sequence in Quote Entry or Job Entry.

• The Get Operation Master Defaults function auto -populates the GetOpMaster() string into the Rulesexpression editor.

Example

You have an operation defined in the Method of Manufacture for the base configured part. Depending on theinput values that are entered for the configuration, you may want to use a different operation. This would bedone using a Set Field rule. If the operation code is changed from the Set Field rule, all of values from the previousoperation would still exist within the quote or job. The Get Operation Master Defaults rule function could beadded to the operation sequence after the Set Field rule. This rule function still retrieves all of the defaultinformation for the new operation.

Epicor ERP | 9.05.702104

Configurator Technical Reference GuideImplementation Components and Calculations

Page 105: Epicor Configurator

Get Operation Standard Defaults

This function can only be added when defining rules for operation detail sequences.

• Since the OpStdID may have been changed by a Set Field rule, this rule function can be added to retrievedefault values for the new OpStdID. The default values are similar to the default values that would display ifyou manually change the OpStdID on an operation detail sequence in Quote Entry or Job Entry.

• This rule retrieves defaults for the current value in the OpStdID field in the parent operation of the operationdetail record. It operates on the detail record because the default detail record must exist to refresh theoperation standard. When rules run for the operation, no detail records exist, so the rules must be postponedto run on an operation detail.

• The Get Operation Standard Defaults function auto -populates the GetOpStandard() string into the Rulesexpression editor.

Example

You have an operation standard defined in the Method of Manufacture for the base configured part. Dependingon the input values that are entered for the configuration, you may want to use a different operation standard.This accomplished using a Set Field rule on the operation. If the operation standard ID is changed from the SetField rule, all of values from the previous operation standard would still exist within the quote or job. The GetOperation Standard Defaults rule function could be added to the operation detail sequence. This rule functionretrieves all of the default information for the new operation standard.

Get Resource ID Defaults

This function can only be added when defining rules for operation detail sequences.

• Since the Resource ID may have been changed by a Set Field rule, this rule function can be added to retrievedefault values for the new part number. The default values are similar to the default values that would displayif you manually change the operation detail sequence in Quote Entry or Job Entry.

• The Get Resource ID Defaults function auto -populates the GetResourceID() string into the Rules expressioneditor.

Get Resource Group ID Defaults

This function can only be added when defining rules for operation detail sequences.

• Since the Resource Group ID may have been changed by a Set Field rule, this rule function can be added toretrieve default values for the new part number. The default values are similar to the default values that woulddisplay if you manually change the operation detail sequence in Quote Entry or Job Entry.

• The Get Resource Group ID Defaults function auto -populates the GetResourceGrpID() string into the Rulesexpression editor.

Example

You have a Resource ID defined in the Method of Manufacture for the base configured part. Depending on theinput values that are entered for the configuration, you may want to use a different Resource ID. This accomplishedusing a Set Field rule on the Resource ID. If the Resource ID is changed from the Set Field rule, all of values fromthe previous Resource ID would still exist within the quote or job. The Get Resource ID Defaults rule functioncould be added to the Resource ID. This rule function retrieves all of the default information for the new ResourceID.

105Epicor ERP | 9.05.702

Implementation Components and CalculationsConfigurator Technical Reference Guide

Page 106: Epicor Configurator

Get Capability ID Defaults

This function can be added only when defining rules for operation detail sequences. It retrieves the defaults forthe current value in the Capability ID field. The Epicor application uses this rule for operations details, and runsfor both quotes and jobs. The Advanced Planning and Scheduling module must be active in order to use thisfunction.

• Since the capability ID may have been changed by a Set Field rule, this rule function can be added to retrievedefault values for the new capability ID. The default values are similar to the default values that would displayif you manually change the capability ID on an operation detail sequence in Quote Entry or Job Entry.

• The Get Capability ID Defaults function auto -populates the GetCapabilityID() string into the Rules expressioneditor.

Example

You have defined a capability in the Method of Manufacture for the base configured part, but, depending onthe input values that are entered for the configuration, you may want to use a different capability ID. This wouldbe accomplished using a Set Field rule. If the capability ID is changed from the Set Field rule, all of values fromthe previous capability ID would still exist within the quote or job. The Get Capability ID Defaults rule functioncould be added to the operation detail sequence after the Set Field rule. This rule function retrieves all of thedefault information for the new capability ID.

Get Part Defaults

This function can only be added when defining rules for material sequences.

• Since the part number may have been changed by a Set Field rule, this rule function can be added to retrievedefault values for the new part number. The default values are similar to the default values that would displayif you manually change the part number on a material sequence in Quote Entry or Job Entry.

• The Get Part Defaults function auto -populates the GetPartDefaults() string into the Rules expression editor.

Example

You have a material defined in the Method of Manufacture for the base configured part. Depending on the inputvalues that are entered for the configuration, you may want to use a different material for this material sequenceon the quote or job. This would be done using a Set Field rule on the operation. If the material part number ischanged from the Set Field rule, all of values from the previous part would still exist within the quote or job. TheGet Part Defaults rule function could be added to the material sequence. This rule function retrieves all of thedefault information for the new part number.

Set Current Revision

This function can only be added when defining rules for assembly sequences.

• Since the subassembly part number may have been changed by a Set Field rule, this rule function can beadded to retrieve the latest approved revision for the new part number, and update the job assembly or quoteassembly record with this revision number, when using the Get Details sheet in Quote Entry or Job Entry.

Epicor ERP | 9.05.702106

Configurator Technical Reference GuideImplementation Components and Calculations

Page 107: Epicor Configurator

• The Set Current Revision function auto -populates the SetCurrentRevision() string into the Rules expressioneditor.

Example

The following parts exist in the current company:

• Part number "OrigAssemblyPartNumber", revision A.

• Part number "NewAssemblyPartNumber", revision A - not approved

• Part number "NewAssemblyPartNumber", revision B. - approved

Each of the above revisions would have a unique Method of Manufacture. Part OrigAssemblyPart Number isadded as a subassembly in the Method of Manufacture in the base configured part.

• Depending on the input values that are entered for the configuration, you may want to use partNewAssemblyPartNumber instead; this would be accomplished using a Set Field rule.

• The Set Field rule would replace the part number but it would attempt to retrieve the Method of Manufacturefor revision A, because this is the revision that was defined for the original part number.

• The Set Current Revision context function could be added to retrieve the latest approved revision for the newpart number. This value would be assigned to the quote or job material record and it would use this revisionto retrieve the Method of Manufacture for the subassembly part.

Retain Existing Methods

This function can only be added when defining rules for assembly sequences.

• Since the subassembly part number may have been changed by a Set Field rule, this rule function can be usedin a case where you would want to retrieve the Method of Manufacture for the original part number (thepart number that was originally defined as the subassembly of the configured part).

• The Retain Existing Methods function auto -populates the RetainExistingMethods() string into the Rulesexpression editor.

The remaining context functions (described in Context Functions section) are all assigned to other type values(for example, {String} and{numeric}) depending on the resulting data type of the context function.

Example

The following parts exist in the current company:

Part number "OrigAssemblyPartNumber", which has the following materials defined in its Method ofManufacture:

• Operation Op A

• Material Part A

• Material Part B

Part number "NewAssemblyPartNumber", which has the following materials defined in its Method ofManufacture:

• Operation Op Z

• Material Part X

• Material Part Y

107Epicor ERP | 9.05.702

Implementation Components and CalculationsConfigurator Technical Reference Guide

Page 108: Epicor Configurator

Part OrigAssemblyPartNumber is added as a subassembly in the base configured parts Method of Manufacture.

• Depending on the input values that are entered for the configuration, you may want to use partNewAssemblyPartNumber instead; this would be accomplished using a Set Field rule. The Set Field rulewould replace the part number and it would retrieve Method of Manufacture that is defined forNewAssemblyPartNumber (Operation Op Z, Material Part X Material Part Y).

• There may be a case where you would want to replace the part number, but still retrieve the Method ofManufacture for the original part. This can be accomplished by adding the Retain Existing Methods rulefunction. When using the Get Details sheet in Quote Entry or Job Entry, the part number is replaced withNewAssemblyPartNumber, but it would retrieve the Method of Manufacture that was defined forOrigAssemblyPartNumber (Operation Op A, Material Part A, Material Part B), rather than the Method ofManufacture that was defined for NewAssemblyPartNumber (Operation Op Z, Material Part X, MaterialPart Y).

Input Rules > Inputs > Detail > Dynamic Lists > Detail / Criteria

Use the Input Rules > Inputs > Detail > Dynamic Lists > Detail and Criteria sheets to define a dynamic list for aselected combo box control. A dynamic list is a set of option selections that are dynamic in nature (that is, thedisplayed options change based on certain conditions being satisfied).

• An expression can be developed using the Expression Builder that allows you to construct a specific set ofoptions that display when specific selections have been made in other fields in a configuration session, orcertain conditions have been satisfied.

Epicor ERP | 9.05.702108

Configurator Technical Reference GuideImplementation Components and Calculations

Page 109: Epicor Configurator

• It also allows you to specify the name of a custom -coded program that passes in inputs or values from anexternal list or files to populate (generate) the dynamic list. Unlike standard combo-boxes that offer a fixedset of option selections, dynamic lists present choices during a configuration session that are based onconditions established in the Expression Builder, or passed in from an external list or file.

For example, if you are constructing a configuration for a PC, you can develop dynamic lists for selection of aspecific type of memory chips (for example, DDR / DDR2) that are dependent on the type of motherboard selectedfor the computer (one type of motherboard might support DDR type memory chips, while the other type onlysupports DDR2 type memory chips). The expression statements you develop in the Dynamic List sheet designatethe conditions under which each of the memory chip dynamic lists (each with selections associated with entirelydifferent sets of part numbers) are displayed.

Programs and Their Modifiers

Configurator Designer

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Part Maintenance

The Configurator Designer sheet can also be accessed from the Revisions Sheet in Part Maintenance. Refer toAssemblies and Subassemblies for details on how to launch Part Maintenance from the Main Menu.

Select the Input Rules > Page sheet. From the Actions menu, select Design Toolbox, and then select theapplicable choice for the input page. When you select a Combo Box control from the Design Toolbox and placeit on the Input Rules > Page sheet, click the Input sheet to define the attributes of the control itself. From theFile menu, click New Dynamic List and then click Dynamic List to define dynamic list parameters for the combobox. These are the values you can modify:

• BAQ - If the Run BAQ check box is selected, specify the identification number of the BAQ that is beingprocessed for this dynamic list. Enter the identification number or click BAQ to access the BAQ Search windowto select a BAQ identification number.

• Display Value - If the Run BAQ check box is selected, specify the value being displayed in the drop-downlist for the combo box input.

• Condition - Enter the expression statement stating the conditions that must be satisfied to display the specifieddynamic list in the selected combo box control during a configuration session, or click Edit to use the ExpressionBuilder to build the statement. Refer to the Expression Builder / Content Functions and Express BuilderFunctions sections for detailed information.

• List Items - Enter the list of fixed options that display in the combo box during a configuration session whenthe conditions of the expressions statement have been satisfied. Each option must be separated by a commadelimiter, with no spaces between the options, or preceding the options. Erroneous entry of spaces in thisfield is particularly significant when any of the list items are selected in calculations or Keep When rules. Forexample, if you are defining a dynamic list with memory chip selections, enter 500MB DDR2,1GB DDR2,2GB DDR2. If you are using a program that passes in inputs or values from an external list or file to populatethe dynamic list, this field can be left blank. Spaces entered in front of the list (for example, _Red,Blue,

109Epicor ERP | 9.05.702

Implementation Components and CalculationsConfigurator Technical Reference Guide

Page 110: Epicor Configurator

Green), or preceding any of the fixed options (for example, Red,_Blue, Green) display in the combo boxitself during an actual configuration Q&A session.

• Initial Value - Specify the default option selection (if any) for the combo box control being added (for example,1GB DDR2 in the Memory combo box example). This is an optional field; leave it blank if you do not want adefault option selection to display in this combo box during a configuration session.

• Run Program - Select this check box if you wish to run a program (whose name is specified in the ProgramName field) that passes in inputs or values from an external list or files to populate the dynamic list. Thisallows you to write an external .p program (using Notepad or another editor) that returns a comma separatedlist (.csv file) and an initial value. The following parameters must be followed to properly develop a usefulfunctioning external program:

• The external program must be a text file (with the extension .p), and the first line of the program shouldcontain the syntax {ud\dynlist.i}. The syntax {ud\dynlist.i} is a reference to an "Include" file containingthe output parameter definitions for the comma separated list and the initial value. You can open this filewith Notepad (it is located in the server\ud folder)

• A comma delimited list (.csv file) is a list of strings which are separated by commas. Each string is an itemthat can be selected in the combo box. The items in the comma separated list are both the display field,and the value the field that is stored in that database when the user has selected the item. When creatingthe accompanying comma separated list, make sure there are no space around the commas. Each characterbetween the commas is part of the string that is used in expressions and Keep When rules. Spaces arealso very difficult to locate.

• Input parameters can be added to .p program by adding the values in comma separated list into theProgram Inputs field. These values can be strings (surrounded by double quotes), numeric values, decimalvalues, logical values or date values. The values can either be hard -coded or can be input fields used inthe configuration. You have to to add corresponding code In the .p file to process the input parameters.

• For instance, if you want to pass the Color field to the .p file, then you have to place the following line ofcode to the file: Define input parameter ipColor As Character no -undo. The name ipColor can bereplaced by any other name. Character (for string), Decimal, Integer, Date and Logical are valid parametertypes.

• Example:

/* GetUDTable01.p : get Ud01 records*/

{ud\dynlist.i}

Define Input Parameter ipModel As Character No-Undo.

Define Input Parameter ipType As Character No-Undo.

Define Input Parameter ipSize As Character No-Undo.

For Each UD01 where UD01.Company = Cur-Comp

And UD01.Key1 = ipmodel

And UD01.Key2 = ipType

And UD01.Key3 = ipSize no-lock:

ASSIGN oplistitems = oplistitems + UD01.ShortChar01 + ",".

End.

• Program Name - Enter the name of the program (if any) used to generate the dynamic list, or click Programto browse your directory structure to find the program.

• An example of a program that could be called is the standard ud\test\GetTableData.p program. Examplesof .p files supplied by Epicor are cv8400belttype.p, FilelookLabels.p, filelookup.p, Filerowselect.p andGetTableData.p.

Epicor ERP | 9.05.702110

Configurator Technical Reference GuideImplementation Components and Calculations

Page 111: Epicor Configurator

• For a complete listing of Epicor -supplied utility programs, refer to Appendix: Epicor-Supplied Programs,and see Configurator Designer > Utility Programs in the application help.

• All Dynamic list programs and all referenced .csv files must exist on the AppServer for the lists to be valid.

• Note: If the directory structure in which the file is located contains spaces, you must put quotes aroundthe directory and program name (for example, "c:\Program Files\Test.p") in expressions that referencethe program.

• Program Inputs - Enter the inputs expected by the program specified in the Program Name field.

If the Run BAQ check box was selected in the Input Rules > Inputs > Detail > Dynamic Lists > Detail sheet, usethe Criteria sheet to specify BAQ column name, condition and value parameters for the BAQ being defined forthe dynamic list. The Criteria sheet functions in a manner similar to the Quick Search functions found elsewherein the Epicor application. It also contains buttons that allow you to add new BAQ columns, delete existing BAQcolumns, or move existing BAQ columns up or down in the listing.

Configurator Designer

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Part Maintenance

The Configurator Designer sheet can also be accessed from the Revisions Sheet in Part Maintenance. Refer toAssemblies and Subassemblies for details on how to launch Part Maintenance from the Main Menu.

111Epicor ERP | 9.05.702

Implementation Components and CalculationsConfigurator Technical Reference Guide

Page 112: Epicor Configurator

These are the values you can modify:

• BAQ ColumnName - Specifies the column from the BAQ that should be used for this Search field. This fieldincludes all columns associated with the BAQ selected in the BAQ field in the Dynamic Lists > Detail sheet.Select the BAQ column being used for this Search field.

• Condition - Specifies how the Search input field should evaluate the value that the user enters. The searchresults that appear resolve against the condition value you select from this list. The following selections canbe made: =,< >, >, <, >=, <=, BEGINS, MATCHES

• Value From - Specifies the return value that should be used to limit the search results. This field includes allcolumns associated with the BAQ selected in the BAQ field in the Dynamic Lists > Detail sheet. Select the BAQcolumn being used for this Search field. A constant value can also be entered into this field.

• BAQ Column - Use the BAQ column value specified in the BAQ Column Value field.

• Constant Value - Use the constant value specified in the Constant Value field. This is a static value.

• Input Value - Use the input value specified in the Input Value field. This is a value that changes the dynamiclist based input values entered before executing this BAQ.

• Constant Value - If Constant Value was selected in the Value From field, enter the constant (ststic)value from the BAQ that should be used for this Search field.

• BAQ ColumnValue - If BAQ Column was selected in the Value From field, specify the column value fromthe BAQ that should be used for this Search field.

• Input Value - If Input Value was selected in the Value From field, select the input value from the BAQ thatshould be used for this Search field. This is a value that changes the dynamic list based input values enteredbefore executing this BAQ.

• Note: if an input value, used in this criteria, changes after generating the dynamic list, then it does not triggera new list.

Logic/Algorithms

During an actual configuration session, if multiple dynamic lists are defined for the same combo box, the Epicorapplication processes the dynamic lists in the order that they are defined.

• If it processes a condition that is satisfied (returned true), it populates the combo box with that dynamic list,and none of the remaining dynamic lists are processed.

• If none of the dynamic list conditions are satisfied, it uses the list items and initial value that were defined forthe combo box itself in the Input Rules > Inputs > Detail sheet.

Example(s)

Example 1

Prior to their implementation of their Epicor ERP solution, Wavy Rider Products maintained an extensive list ofExcel spreadsheets that had been used for selection and configuration of pontoon models, based on their intendeduse (family/leisure and water sports). In conjunction with an internally developed program, Wavy Rider Productscan make excellent use of these lists in their new product configurator. For example, Activity and ModelSelection combo boxes could be added to the configuration input sheet using the following condition expression:

P01_CMB_Activity = 'Fishing' or P01_CMB_Activity = 'Family/Leisure' or P01_CMB_Activity = 'Water Sports'

After selecting the Run Program check box, the following syntax could be entered in the Program Name fieldto state the name and location of the program being used to call an external listing of pontoon models:

C:\epicor\MfgSys80\Server\ud\Test\Filerowselect.p

Epicor ERP | 9.05.702112

Configurator Technical Reference GuideImplementation Components and Calculations

Page 113: Epicor Configurator

The following syntax could be entered in the Program Input field to state the name and location of the programbeing used to call an external listing of pontoon models:

C:\lookups\Models.csv",P01_CMB_Activity,2

This allows for selection of the model type (NottaYacht, Peregrine, Bay Dweller, Wavy Rider, Wavy Rider Pro orDeck Buster IO) frome external list. Likewise, another dynamic list, using a program and external list could bedeveloped for selection ofcolor, based on the selected pontoon boat model.

It would use the following lookup expression, program name, and program input:

lookup("16 NottaYacht,18 Peregrine,18 Bay Dweller,20 Bay Dweller,20 Wavy Rider,20 Wavy Rider Pro,22Peregrine, 22 Deck Buster,22 Bay Dweller,22 Wavy Rider,22 Wavy Rider Pro,24 Deck Buster,24 Deck Buster IO,24Bay Dweller,24 Wavy Rider,24 Wavy Rider Pro,26 Deck Buster,26 Deck Buster IO",P01_CMB_Model) > 0

The lookup function returns the number in the list that matches the search item (P01_CMB_Model); if nothingis found, then 0 is returned.

• Program Name: C:\epicor\MfgSys80\Server\ud\Test\Filerowselect.p

After selecting the Run Program check box, the following syntax could be entered in the Program Inputs fieldto state the name and location of the program being used to call an external listing of pontoon models:

• Program Inputs: "C:\lookups\colors.csv",P01_CMB_Model,2

Example 2

If you have specified that the standard ud\test\GetTableData.p program is being called for the dynamic list, thefollowing inputs need to be passed to this program:

Table Name, Key Field, Description Field, Input Name 1, Input Name 2, Where String.

If you use a description field (third parameter), it produces <Key Field>;<Description> in the results that arepopulated in the combo box. Otherwise, it only includes <Key Field> in the results. If you use an input name (1or 2), this inserted into the query string wherever <var1> and <var2> is found and are located in the string(corresponding to the Input Name 1 or 2).

As an example, your input page contains a combo box called SELTYPECODE where the user selects either"Manufactured" or "Purchased", and another combo box called SELECTEDPART that is populated from a dynamiclist, depending on the value that is selected from the SELTYPECODE input. The following information would beentered into the Program Inputs field, and would be passed into the GetTableData.p program as inputs:

"Part","PartNum","PartDescription",SELTYPECODE,"","Part.TypeCode = <var1>"

When the dynamic list is processed during the actual configuration session, only parts that have the samePart.TypeCode as the value that is selected in the SELTYPECODE input would appear in the SELECTEDPART combobox.

113Epicor ERP | 9.05.702

Implementation Components and CalculationsConfigurator Technical Reference Guide

Page 114: Epicor Configurator

Input Rules > Inputs > Detail > Prompt When

Use the Input Rules > Inputs > Detail > Prompt When sheet to specify the conditions under which a particularcontrol (field) should appear on an input page. You can build expressions using the Expression Builder that, ifsatisfied (is true) enable the control during a configuration session. Conversely, if the condition is false (is notsatisfied), the control is disabled (does not appear) during the session.

For example, if you are defining a configuration for a PC, a Prompt When condition could be assigned to a HardDrive Size selection combo box that designates that it should appear in a configuration session only if the userselects a external hard drive as a Backup option, but does not appear if CD/DVD is selected as a Backup option.

Use the Configurator Designer > Input Rules > Prompt When sheet in place of this sheet if you wish tospecify the conditions under which a particular configuration input page should appear during a configurationsession.

Programs and Their Modifiers

Configurator Designer

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

Epicor ERP | 9.05.702114

Configurator Technical Reference GuideImplementation Components and Calculations

Page 115: Epicor Configurator

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Part Maintenance

The Configurator Designer sheet can also be accessed from the Revisions Sheet in Part Maintenance. Refer toAssemblies and Subassemblies for details on how to launch Part Maintenance from the Main Menu.

After defining an input control in the Input Rules > Page and Input Rules > Inputs > Detail sheets, click the InputRules > Inputs > Detail > Prompt When sheet. Select the control (for which the Prompt When expression is beingbuilt) from the tree display and click Edit to use the Expression Builder. Its purpose is to establish expressionscontaining conditions that determine how input values are evaluated in controls that are placed on a configurationinput page. Refer to the Expression Builder / Content Functions and Express Builder Functions sections fordetailed information.

Logic/Algorithms

During an actual configuration session, the Epicor application processes Prompt When logic when the entire pageloads, and when you physically leave a control for which an On Leave expression is defined.

• Prompt When logic that has been defined for an input may be dependent on the value of another input, andthe value of this input may have changed during the processing of the On Leave expression.

• The Epicor application processes the Prompt When logic with the resulting input values after the On Leaveexpression has been processed, and then appropriately enables or disables the field.

• If Prompt When logic is defined for an input, the Epicor application enables the input if the expression hasbeen satisfied (condition is true). If it is not satisfied, it disables the input.

• If no Prompt When has been defined for an input, it is always enabled.

Examples

For some Wavy Rider Products pontoon boat models, customers can add a standard Fish Finder or an upgradedGPS-enabled Fish Finder to their newly purchased pontoon boats. Fish Finders are electronic sounding devicesthat indicate where schools of fish are located in a body of water.

A customer can also choose to skip installation of this option. This option selection could be defined in theConfigurator as a radio set (with No Fish Finder, Standard Fish Finder or GPS-Enabled Fish Finder selections),a combo box or even as a series of check boxes. Wavy Rider Products has decided to create two check boxes -Standard Fish Finder, and GPS-Enabled Fish Finder. Skipping both of the check boxes during a configurationsession indicates that installation of this option should be skipped.

Since use of these boxes is conditional upon the type of pontoon boat that was selected, the following conditionalexpression would be added for the Prompt When rule for the Standard Fish Finder check box:

((P01_CMB_Model <> "20 Wavy Rider Pro") and (P01_CMB_Model <> "22 Wavy Rider Pro") and(P01_CMB_Model <> "24 Wavy Rider Pro"))

The Prompt When rule for the GPS-Enabled Fish Finder check box would contain the following conditionalexpression:

((P01_CMB_Model <> "20 Wavy Rider Pro") and (P01_CMB_Model <> "22 Wavy Rider Pro") and(P01_CMB_Model <> "24 Wavy Rider Pro"))

115Epicor ERP | 9.05.702

Implementation Components and CalculationsConfigurator Technical Reference Guide

Page 116: Epicor Configurator

Input Rules > Inputs > On Leave

Use the Input Rules > Inputs > Detail > On Leave sheet to specify the conditions that designate the actions thatshould take place when exiting a particular control (field) on an input page during an actual configurationsession. For example, you can build expressions using the Expression Builder that assign values to other inputsafter leaving the current control or field, or that call external programs to perform additional processing.

Note that the settings in the Configurator Designer > Input Rules > Page Detail sheet have a profound impacton how On Leave expressions are loaded and handled when an input page is processed during an actualconfiguration session. Refer to the Input Rules > Page Detail topic for detailed information.

Use the Configurator Designer > Input Rules > On Leave sheet in place of this sheet if you wish to designatethe actions that should take place when exiting a particular input page during an actual configuration session.

Programs and Their Modifiers

Configurator Designer

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

Epicor ERP | 9.05.702116

Configurator Technical Reference GuideImplementation Components and Calculations

Page 117: Epicor Configurator

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Part Maintenance

The Configurator Designer sheet can also be accessed from the Revisions Sheet in Part Maintenance. Refer toAssemblies and Subassemblies for details on how to launch Part Maintenance from the Main Menu.

After defining an input control in the Input Rules > Page and Inputs sheets, click the Input Rules > Inputs > Detail> On Leave sheet. Select the control (for which the On Leave expression is being built) from the tree display andclick Edit to use the Expression Builder. Its purpose is to establish expressions containing conditions that determinehow input values are evaluated in controls that are placed on a configuration input page. Refer to the ExpressionBuilder / Content Functions and Express Builder Functions sections for detailed information.

Logic/Algorithms

During an actual configuration session, the Epicor application processes On Leave logic when you physically leavea control during a configuration session. On Leave logic should never accompany a display-only input.

• If On Leave logic is defined on the first input that updates the value of a second input, and On Leave logic isalso defined for the second input, the Epicor application does not process the On Leave logic for the secondinput.

• It also processes dynamic list logic (if any) when you leave any control that has associated On Leave logic. Itprocesses the dynamic list logic after the On Leave logic has been processed.

• If On Leave logic is defined for the first input that updates the value of a second input, and a dynamic listexists on another combo box input that is dependent on the value entered in the second input, it processesthe dynamic list logic using the new value that is assigned in the second input.

• The Process Dynamic Lists Before On Leave Expressions For This Page check box in the Input Rules >Page Detail sheet allows you to designate if you would like the Epicor application to process dynamic list logicbefore the On Leave logic for all Combo box controls on a specified input page. This allows processing in amanner opposite to how it normally operates.

Examples

Example 1

Wavy Rider Products created a Browser type of input control in the Configurator Designer - Input Rules - Pagesheet that is populated with the full-color picture of the boat, based on the model that was selected in the ModelSelection combo box using a dynamic list, program and external list. An On Leave expression with the followingconditions could be created to accomplish this task:

c:/epicor/mfgsys80/server/ud/test/filelookup.p ("C:\lookups\modeldata.csv","picture",p01_cmb_model,outputp01_BRS_Model_Pic).

Example 2:

During testing of the Configurator Inputs, Wavy Rider Products personnel discovered that either or both of theselections for a Fish Finder can be chosen (see Prompt When section example for details). Since standard andGPS-enabled Fish Finders cannot be added to a pontoon boat, a method must be devised in the Configurator todisable one of the selections. These check boxes must be "mutually exclusive." In lieu of using a radio set, theyhave elected to add the following On Leave conditional expression for the standard Fish Finder:

117Epicor ERP | 9.05.702

Implementation Components and CalculationsConfigurator Technical Reference Guide

Page 118: Epicor Configurator

If P01_TGL_Fish_Finder_Std = True Then Do: P01_TGL_Fish_Finder_Upgrade = False. End.

For the GPS-enabled Fish Finder, they have added the following On Leave conditional expression:

If P01_TGL_Fish_Finder_Upgrade = True Then Do: P01_TGL_Fish_Finder_Std = False. End.

Input Rules > Page Detail

Use the Configurator Designer > Input Rules > Page Detail sheet to apply On Leave and Prompt When rules foran entire input page during an actual configuration session in Order Entry, Opportunity/Quote Entry, PurchaseOrder Entry, Job Entry, or Demand Entry. Refer to Input Rules > Prompt When,Inputs Rules > On Leave andInput Rules > Inputs > Detail > Dynamic List for more details. You would use the Input Rules > Page Detailsheet when the logic for an entire page is consistent and you wish to apply it to a broader scope than just thefields.

Programs and Their Modifiers

Configurator Designer

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

Epicor ERP | 9.05.702118

Configurator Technical Reference GuideImplementation Components and Calculations

Page 119: Epicor Configurator

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Part Maintenance

The Configurator Designer sheet can also be accessed from the Revisions Sheet in Part Maintenance. Refer toAssemblies and Subassemblies for details on how to launch Part Maintenance from the Main Menu.

As you design an input page using the Input Rules > Page and Input Rules > Input Rules > Inputs sheets, clickthe Input Rules > Inputs > Page Detail sheet to define the attributes for the entire page. These are the valuesyou can modify for the item:

• Page Sequence - Select the number of the input page to which the logic should apply. The page sequenceis the same number that is defined in the Page Number form (it can be accessed when New / New Page isselected from the File menu).

• Once the page number is selected in this form, it cannot be updated on the Input Rules > Page Detailsheet.

• The page sequence is similar to the tab order that is defined for inputs. When configuring a part in anactual configuration session, this page sequence is the order in which the pages display to the user whenclicking the Next Page or Previous Page buttons.

• Page Title - Enter the free-form title for the Input Page being created for this configuration. This title displaysin the Input Page during an actual configuration Q&A session in Opportunity/Quote Entry, Order Entry, PurchaseOrder Entry, Job Entry or Demand Entry.

• Width - Enter the total width (in pixels) for the Input Page being created for this configuration.

• Height - Enter the total width (in pixels) for the Input Page being created for this configuration.

• Do Not Process On Leave Expressions When Page Loads - When an input page normally loads during aconfiguration session, the Epicor application normally loads all On Leave expressions that have been definedfor the input page in the Input Rules > On Leave sheet, and for specific controls (fields) in the Input Rules >Inputs > On Leave sheet before data entry commences.

• Select this check box to skip this normal loading of On Leave expressions when the input page first appearsduring a configuration session. This is useful when you wish to suspend or prevent processing of On Leaveexpressions for the input page during a configuration session.

• When a page loads, it processes all On Leave logic that may exist for the current page. In some situations,you do not want On Leave logic processed until certain previous inputs have been populated by a user.This checkbox is useful when you wish to suspend or prevent the initial processing of On Leave expressionsfor the input page during configuration sessions; it only suspends the initial processing. When physicallyleaving specific controls on the page, it still processes On Leave expressions.

• Only Process Dynamic Lists with Higher Tab Sequences - Select this check box to only process dynamiclists for controls (combo boxes) that are higher in the input page, in terms of tab order, than the current fielda user is leaving.

• This provides for enhanced performance of the input page during configuration sessions involving highly-complex, large-scale configurations.

• If this checkbox is left cleared, it processes the dynamic list logic for the entire page when leaving a control.

• Process Dynamic Lists Before On Leave Expressions For This Page - During a normal configurationsession, On Leave expressions are first evaluated before dynamic list conditions for a combo box control.

119Epicor ERP | 9.05.702

Implementation Components and CalculationsConfigurator Technical Reference Guide

Page 120: Epicor Configurator

Selecting this check box designates that dynamic list conditions should be evaluated and processed beforeOn Leave expressions for all combo box controls on the input page.

• Skip page if all inputs are disabled or invisble - Select this check box to process any Prompt Whenexpressions associated with the input page, but skip display of the input page itself during a configurationsession if all inputs are disabled or are invisible (either if designated as such in the Invisible check box in theInput Rules > Inputs > Detail sheet, or when inputs are dynamically displayed or disabled based on specifiedrules).

• Process Input On Leave Expressions If Page Is Skipped - If the Skip page if all inputs are disabled orinvisble check box has been selected, select this check box to designate that any On Leave Skip expressionsthat have been defined for controls on the input page should still be processed even if the input page itselfis being skipped.

When changing pages during the configuration process, the Epicor application processes any On Leave logic thatmay be defined for each specific input on the input page.

• It then processes the page -level On Leave logic.

• If an On Leave expression is added at the page level that updates or changes an input value, and an On Leaveexpression is associated with a specific input that updates the same input with a different value, the page-level On Leave logic overwrites what is defined at the input level. The resulting value of the input is the resultof the page-level On Leave expression.

Input Rules > Prompt When

Epicor ERP | 9.05.702120

Configurator Technical Reference GuideImplementation Components and Calculations

Page 121: Epicor Configurator

Use the Input Rules > Prompt When sheet to specify Prompt When conditions for a particular input page duringan actual configuration session. You can build expressions using the Expression Builder that, if satisfied (is true)enable display of a page during a configuration session. Conversely, if the condition is false (is not satisfied), thepage is disabled (does not appear) during the session.

• Note that the settings in the Configurator Designer > Input Rules > Page Detail sheet have a profound impacton how Prompt When expressions are loaded and handled when an input page is processed during an actualconfiguration session. Refer to the Input Rules > Page Detail topic for detailed information.

• Refer to the Input Rules > Inputs > Prompt When section for more information on how to use this sheet.You would use the Input Rules > Inputs > Prompt sheet in place of this sheet if you wish to specify theconditions under which a particular control (field) should appear on an input page during an actualconfiguration session.

Programs and Their Modifiers

Configurator Designer

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Part Maintenance

The Configurator Designer can also be accessed from the Revisions sheet in Part Maintenance. Refer to Assembliesand Subassemblies for details on how to launch Part Maintenance from the Main Menu.

121Epicor ERP | 9.05.702

Implementation Components and CalculationsConfigurator Technical Reference Guide

Page 122: Epicor Configurator

Input Rules > On Leave

Use the Input Rules > On Leave sheet to specify the conditions that designate the actions that should take placewhen exiting a particular input page during an actual configuration session. For example, you can buildexpressions using the Expression Builder that assign values to other inputs after leaving the current control orfield, or that call external programs to perform additional processing.

• Note that the settings in the Configurator Designer > Input Rules > Page Detail sheet have a profound impacton how On Leave expressions are loaded and handled when an input page is processed during an actualconfiguration session. Refer to the Input Rules > Page Detail topic for detailed information.

• Refer to the Input Rules > Inputs > On Leave section for more information on how to use this sheet. Youwould use the Input Rules > Inputs > On Leave sheet in place of this sheet if you wish to specify the conditionsthat designate the actions that should take place when exiting a particular input control during an actualconfiguration session.

Epicor ERP | 9.05.702122

Configurator Technical Reference GuideImplementation Components and Calculations

Page 123: Epicor Configurator

Programs and Their Modifiers

Configurator Designer

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Part Maintenance

The Configurator Designer sheet can also be accessed from the Revisions Sheet in Part Maintenance. Refer toAssemblies and Subassemblies for details on how to launch Part Maintenance from the Main Menu.

123Epicor ERP | 9.05.702

Implementation Components and CalculationsConfigurator Technical Reference Guide

Page 124: Epicor Configurator

Input Rules > Pricing > Options

Use the Options sheet to (optionally) enable component pricing for the configuration.

• When enabled, the Epicor application uses existing component pricing defined in Price List Maintenance whenthe product is being configured in Opportunity/Quote Entry, Order Entry, Purchase Order Entry or DemandEntry.

• It also applies the appropriate supplier pricing defined in the Supplier Price List Maintenance program to direct(drop shipment) purchase orders generated for multi-company configurations.

If you are using the Configurator in a multi-company environment, use the Automatically Mark MethodsGlobal check box as needed to designate if, when this base part is configured in a multi-company environment,the resulting enterprise part should automatically be flagged as Global.

• This allows the associated method of manufacture (generated when saving a configuration after completinga configuration session) to be exported by the Multi-Company Configuration Process.

• This results in the linking of the associated material content to external companies.

Epicor ERP | 9.05.702124

Configurator Technical Reference GuideImplementation Components and Calculations

Page 125: Epicor Configurator

Programs and Their Modifiers

Configurator Designer

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

When a configured part has configurable subassemblies, and on an order, quote, purchase order or demandorder pricing configuration, the Epicor application adds the pricing structures from the subassemblies and themain part, resulting in a new unit price for the configured item.

These are the values you can modify for the item:

• Use Component Pricing - Specifies if global component pricing should be used for the entire configuration.If selected, the Epicor application calculates the component price using the resulting bill of material, basedon the price lists of each remaining components after all applicable method rules have been applied. Theresulting component price is the total component price plus any additional input pricing that may have beendefined. Clear this check box to skip use of component pricing. In this scenario, the Epicor application usesthe pricing parameters defined in the Input Rules > Pricing > Order > Detail and Input Rules > Pricing > Quote> Detail sheets to calculate pricing during a configuration session.

• Automatically Mark Methods Global - Designates if, when this base part is configured in a multi-companyenvironment, the resulting enterprise part should automatically be flagged as Global.

• Select the check box if the base part should be flagged as Global when configured in a multi-companyenvironment. This allows the associated method of manufacture (generated when saving a configurationafter completing a configuration session) to be exported by the Multi-Company Configuration Process;this results in the linking of the associated material content to external companies. Once each materialpart has been linked in the external company, component pricing can be used for the enterprise configuratorpart in the external company.

• Clear the check box if each material part contained in the resulting method of manufacture must bemanually marked as Global in Part Maintenance; if not marked as Global, the associated part is notavailable for component pricing in the external companies.

Note This check box should be used only if the Enterprise Configurator check box been selected forthis base part in the Configurator Designer > Status sheet, and the Use Component Pricing checkbox has also been selected in the Pricing > Options sheet). It does not apply to configurations performedin a single-company environment.

125Epicor ERP | 9.05.702

Implementation Components and CalculationsConfigurator Technical Reference Guide

Page 126: Epicor Configurator

Logic/Algorithms

The Use Component Pricing check box in this sheet allows you to specify if you would like to use existingcomponent pricing as the product is being configured in Opportunity/Quote Entry Order Entry, Purchase OrderEntry or Demand Entry.

Often times, components that are part of the method of manufacture for a product are already linked to existingprice lists in the Epicor application, and can also be sold separately on sales orders. If you select this check box,it designates that the standard component price lists that have already been defined in the Price List Maintenanceprogram should be used for pricing as the product is being configured.

Order Pricing

The Epicor application processes component pricing for the configuration in the following manner:

• As a user progresses through the configuration process, it applies the appropriate structure and inputs rules(including document rules) to create a virtual BOM it uses to determine the list of materials for the configuration.If the quotation already has a BOM, it uses that BOM for determining component pricing.

• Price lists depend on quantity breaks to determine the price for a part or a product group item. For eachcomponent, Epicor application finds the appropriate unit price in the price list that is linked to the customer,customer group or the part master, based on the order quantity, and the quantity per parent settings definedin the method of manufacture. It calculates any applicable quantity breaks to determine the actual unitcomponent prices to use.

• It then adds any additional pricing options defined in the Input Pricing > Order > Detail or Input Pricing >Quote > Detail sheets for the configuration to calculate the unit pricing of the configuration. This similar tohow the Epicor application determines component pricing for a sales kit item.

• It multiplies the component prices by the order quantity of the components. It then adds the extended orderprices of each component to calculate a total configurator price. This configurator price is then used in standardpricing options to calculate the order line price.

Quote Pricing

For quotations, the Epicor application calculates pricing in a similar manner, based on the entries in both theOrder Quantity and Expected Quantity fields.

• The Order Quantity field indicates what the order quantity should be if the quotation is converted to a salesorder at some point.

• The Expected Quantity field is used for estimation purposes; pricing is based on quantity break lines.

Quotations are not based on a method of manufacture but instead are based on production details. The Epicorapplication uses these production details to calculate the unit price of each component and the total price foreach price break.

Purchase Order Pricing

The Use Component Pricing check box also applies the appropriate supplier pricing defined in the SupplierPrice List Maintenance program to direct (drop shipment) purchase orders generated for multi-companyconfigurations. It processes purchase order pricing in a manner similar to how the order pricing operates, butapplies the appropriate purchase order pricing based on the quantity breaks specified for the supplier and partnumber in the Supplier Price List Maintenance program.

Epicor ERP | 9.05.702126

Configurator Technical Reference GuideImplementation Components and Calculations

Page 127: Epicor Configurator

Input Rules > Pricing > General > Input Pricing > Order / Quote / Purchase /Demand > Detail

Use the sheets located under the Input Rules > Pricing > General > Input Pricing tab to maintain logic andparameters used in pricing a configured part during an actual configuration session.

• Use the Order > Detail sheet to maintain logic and parameters used in pricing a configured part during anactual configuration session in Order Entry.

• Use the Quote > Detail sheet to maintain logic and parameters used in pricing a configured part during anactual configuration session in Opportunity/Quote Entry.

• Use the Purchase > Detail sheet to maintain logic and parameters used in pricing a drop ship purchase ordergenerated from a configuration.

• Use the Demand > Detail sheet to maintain logic and parameters used in pricing a configured part duringan actual configuration session in Demand Entry.

These sheets allows you to specify the input controls and values for which base pricing is being calculated. Youspecify pricing structures, operator (plus, minus, multiply, and divide) and multiplier expressions for specific inputcontrols to use with the base pricing when the part is configured. These sheets are especially useful if the costof the configuration varies based on the selection of the material used in the configuration. When a configuredpart has configurable subassemblies, the Epicor application adds the pricing structures from the subassembliesand the main part, resulting in a new unit price for the configured item. Selections on the Actions menu allowyou to clone order pricing parameters once you have established quotation pricing logic, or clone order pricingparameters once you have established order pricing logic.

127Epicor ERP | 9.05.702

Implementation Components and CalculationsConfigurator Technical Reference Guide

Page 128: Epicor Configurator

Once order, quote or purchase order pricing has been defined for specific inputs and input values, it can be testedby selecting Test Input on the Actions menu. You then enter values into the configuration input page in thenormal manner. After you have saved the configuration, the following message is displayed, reporting the resultingvalues of the order and quote price calculated using the values entered in the input page. This message is onlydisplayed when testing inputs within the Configurator Designer:

Programs and Their Modifiers

Configurator Designer

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Part Maintenance

The Configurator Designer sheet can also be accessed from the Revisions Sheet in Part Maintenance. Refer toAssemblies and Subassemblies for details on how to launch Part Maintenance from the Main Menu.

Select the appropriate sheet (Order > Detail, Quote > Detail, or Purchase > Detail) under the Input Rules > Pricing> General tab. To create a new input order, quote, purchase order or demand order pricing parameters, selectNew from the File menu, and then click New Order Price, New Quote Price, Purchase Price) or New DemandPrice. These are the values you can modify for the item:

• Input - Select the input control for which pricing parameters are being defined.

• Value - Enter the input value that is subject to the pricing logic being defined. For example, if you wereentering pricing logic for a Memory selection combo box, you would enter 500MB if that is the option selectionthat is subject to the pricing logic. To apply the same base pricing to all values for a specific input, leave thisfield blank and select the All Values check box.

• All Values - Select this checkbox if the pricing logic applies to all possible input values in the combo box. Forexample, select the check box if you are applying the same pricing to all memory selections for a Memorycombo box, such as 500 MB, 1GB or 2GB. Leave the check box cleared if you wish to apply different basepricing to different option selections for the same control.

• Price For Value - Enter the starting base price amount that should apply when the specified value is selectedin the designated input (or for all values if the All Values check box has been selected) during a configurationsession.

• For example, enter 50.00 if the base price for the 500MB memory should be set at 50.00 when that optionis selected during the configuration session.

Epicor ERP | 9.05.702128

Configurator Technical Reference GuideImplementation Components and Calculations

Page 129: Epicor Configurator

• If you select an operator in the Multiplier field, the Epicor application applies the selected operator andthe expression statement syntax you define (if any) to the base price to calculate pricing for the selectedinput control.

• Multiplier - Select the operator used to calculate the pricing for the input, using the base pricing specifiedin the Price For Value field, and the expression statements that you create in the field that follows. To createexpression statement syntax, click Edit to use the Expression Builder to build the statement. Refer to theExpression Builder / Content Functions and Express Builder Functions sections for detailed information.Select one of the following operators:

• Price plus- Adds the base price to the result of the expression statement.

• Price minus - Subtracts the base price from the result of the expression statement.

• Price multiplied by - Multiplies the base price by the result of the expression statement.

• Price divided by - Divides the base price by the result of the expression statement.

• <Unused> - No operator being used (default).

Logic/Algorithms

When a configuration is saved, the Epicor application retrieves all values that were entered into each input duringthe configuration session, and processes the inputs/values for which order, quote, purchase or demand orderpricing parameters were defined in the Configurator Designer > Input Rules > Pricing > General > Input Pricing> Order / Quote / Purchase / Demand > Detail sheets.

It totals all input pricing that is dependent on the retrieved values for the other inputs and updates the order,quote or purchase order unit price when the configuration is saved.

129Epicor ERP | 9.05.702

Implementation Components and CalculationsConfigurator Technical Reference Guide

Page 130: Epicor Configurator

Input Rules > Part > Creation

Use the Configurator Designer > Input Rules > Part > Creation sheet to define parameters that designate if andhow part records should be entered or created when an item is configured during an actual configuration sessionin Order Entry, Opportunity/Quote Entry, Purchase Order Entry, Job Entry or Demand Entry, and the configurationis saved. Part creation functionality can be defined for top assembly, as well as subassembly configurators.

When Part Creation (or Smart String creation) parameters are defined for a subassembly configured part, theEpicor application processes these parameters for the lower level configured part when the associated top-levelconfiguration is saved during a Configurator Q&A session.

Programs and Their Modifiers

Configurator Designer

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Epicor ERP | 9.05.702130

Configurator Technical Reference GuideImplementation Components and Calculations

Page 131: Epicor Configurator

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Part Maintenance

The Configurator Designer sheet can also be accessed from the Revisions Sheet in Part Maintenance. Refer toAssemblies and Subassemblies for details on how to launch Part Maintenance from the Main Menu. The InputRules > Part > Creation sheet can be selected as soon as a new configuration has been created in the ConfiguratorDesigner sheet.

The settings on this sheet aren't specific to configuration inputs; they apply to the entire configuration. Theseare the values you can modify:

• Create a new part number for each configuration - Select this check box to automatically create a partnumber each time a new configuration is created (saved) for the base configured part in a configurationsession. If this check box is cleared, none of the remaining fields on the Input Rules > Part > Creation sheetare enabled; their operation is all dependent on selection of this check box.

• Set Part Number Only - Select this check box to generate a part number, but skip creation of a Part recorditself. Clear the check box to generate a part number and create an actual record in the Part table. Thegenerated part number is assigned to the quote line, order line, job, purchase order or demand order accordingto where the base configured part is being configured.

• Save Input Values - Select this check box if the input value settings entered in a configuration session shouldbe saved in the record for the new configured part and revision number, and should not be linked to a specificquote, order, job, purchase order or demand order. It can then be used "as-is" on any quote, order, job,purchase order or demand order without the need for reconfiguration.

This check box is useful because it allows you to define a collection of pre -configured parts (with saved inputvalues that "travel" with the part) that can be reused at a later time. This ensures that when Get Details sheetis used in Job Entry, the Epicor application uses the correct engineering structure at the time it creates anassociated job order. In fact, if the part is reused at a later time, and an attempt is made to reconfigure thepart, the following warning message is displayed, preventing this from occurring:

"Part number xx already exists for yy configuration. Input values will not be saved to avoid overwriting theexisting part information."

Note Pricing Rules and Document Rules are still re-processed even though the values were not saved.

• If the design of the base configured part is changed in the Configurator Designer, it allows you to reconfigurethe part so that it can process any changes that may have been made in the Designer. When saving theconfiguration, the Epicor application displays the following message asking if you want to overwrite theexisting configuration: If you click Yes, any input values that may have changed during the current configurationprocess are saved in the database.

Note The Epicor application stores the saved input values by the part number that it generates when yousave the original configuration using the Part Creation logic. Clicking Yes affects the configuration of allexisting quotes, orders, jobs, purchase orders or demand orders that contain this generated part number.The part number on all of these transactions all share the same saved input values; if you change it in oneplace, it changes the configuration everywhere the part is used.

By default, the Epicor application generates methods (using the resulting job method) after it has processedany Keep When and Set Field rules on job records. Correspondingly, the Generate Methods UsingResulting Quote Method check box allows you to designate if the Epicor application should generate

131Epicor ERP | 9.05.702

Implementation Components and CalculationsConfigurator Technical Reference Guide

Page 132: Epicor Configurator

methods (using the resulting quote method) on quote records after it has processed any Keep When andSet Field rules on quote records. Select the check box to perform this task; clear the check box to skip this.

• When the Save Input Values check box has been selected for the configuration being defined, theEpicor application creates a part and method but it still handles the new part as a configured part,allowing a user to reconfigure it (if the base configured part has changed in the Configurator Designer).When using Get Details in Opportunity/Quote Entry or Job Entry, the Epicor application gets materialand labor detail information from the method of manufacture defined for the base configured part,rather than from the method of manufacture defined for the base part.

• If you select the Use Generated Method When Getting Details checkbox, it overrides this behavior;when using Get Details in Opportunity/Quote Entry or Job Entry, the Epicor application gets materialand labor detail information from the generated method of manufacture for the configured part beingused, rather than from the method of manufacture defined for the base part. If you clear this checkbox, it operates in the normal manner, as described earlier in the previous paragraph.

• Available Methods - Specify the method being used to assign a part number in the configuration session(rather than generate one). Select one of the following:

• Use Smart String as the new part number - Use the Smart String generated in the configuration sessionas the new part number. Refer to Input Rules > Part > Smart String for more details.

• Prompt for a new part number - During a configuration session, the Epicor application displays a messageprompting for manual entry of a part number for the configuration when the configuration is saved.

• If you select the Save Input Values check box, the Epicor application automatically selects theOpportunity/Quote Entry, Order Entry, Job Entry and Demand Entry check boxes in the Create newparts in section of this sheet, and also selects the Automatically Create a new part number check box.

• Job Entry - Select this check box to allow entry of a new part number for use of the Smart String whenthe item is configured in Job Entry. It is automatically selected if the Save Input Values check box, whichis also on this sheet, has been selected.

• Order Entry - Select this check box to allow entry of a new part number or use of the Smart String whenthe item is configured in Order Entry. It is automatically selected if the Save Input Values check box,which is also on this sheet, has been selected.

• Quote Entry - Select this check box to allow entry of a new part number or use of the Smart String whenthe item is configured in Opportunity/Quote Entry. It is automatically selected if the Save Input Valuescheck box, which is also on this sheet, has been selected.

• Demand Entry - Select this check box to allow entry of a new part number or use of the Smart Stringwhen the item is configured in Demand Entry. It is automatically selected if the Save Input Values checkbox, which is also on this sheet, has been selected.

• Automatically create a new part number - Select this check box to automatically create part numbersin the Part file; in this scenario no message is displayed during a configuration session. Clear the checkbox to display the following message in a configuration session asking the user if a new part numbershould be created: The following input window appears in the configuration session after clicking Yes:Note that this check box is automatically selected when the Save Input Values check box has beenselected.

Epicor ERP | 9.05.702132

Configurator Technical Reference GuideImplementation Components and Calculations

Page 133: Epicor Configurator

• Do not notify the user if the new part number already exists - Select this check box to skip display ofa notification during a configuration session when a duplicate part already exists. Clear the check box todisplay a warning message when a duplicate part already exists. If a part with the new name already exists,the existing part record is not changed.

• Create new part number at zero cost - Select this check box to set the cost of the new part at zero. If thecheck box is cleared, the cost of the base part is used as the cost of the new part.

• Create Alternative Methods - Select the check box if alternate method records should be created in otherplants when a configuration part is created (when the universal base part is configured during a configurationsession in the current plant). Clear the check box if alternate method records should not be created in otherplants when a configuration part is created (when the universal base part is configured during a configurationsession in the current plant).

• Remove Link From Base Configured Part - If you select the Create a new part number for eachconfiguration and the Save Input Values check boxes for the base part, the Epicor application creates anew part number and generates a method of manufacture when a configuration created for the base part issaved after completing a Configuration session (existing functionality). It automatically links this newly createdpart number back to the base part number, allowing it to be reconfigured at any time.

• When you select this check box, the Epicor application removes the link back to the base configured part.When you do this, the newly created part is treated as a standard part and no longer considered areconfigurable part.

• Clear the check box to skip removal of the link back to the based configured part. In this case, the part isstill considered a reconfigurable part.

• Create Revision - When the Create a new part number for each configuration check box has beenselected, the Epicor application creates a new part number when you save a configuration after completinga Configuration session.

• Select this check box if the Epicor application should also create a new part revision record for the newlycreated part when you save a configuration after completing a Configuration session.

• Clear this check box to skip creation of a new part revision record when you save a configuration aftercompleting a Configuration session.

• Generate Method - Normally, when you select the Create a new part number for each configurationcheck box, and clear the Save Input Values check box, the Epicor application creates a new configured partwhen you save a configuration after completing a Configuration session); however, it does not generate anassociated method of manufacture.

• If you select the Generate Method check box, the Epicor application also generates a method ofmanufacture at the same time. It works in a manner similar to the Save Input Values functionality; itprocesses associated method rules and generates a method of manufacture based on the application ofthe method rules. Unlike the Save Input Values functionality, it does not save the input values for laterreuse.

133Epicor ERP | 9.05.702

Implementation Components and CalculationsConfigurator Technical Reference Guide

Page 134: Epicor Configurator

• Clear this check box if a method of manufacture should not be created when a new part has been createdupon completion of a Configuration session for the base configured part.

• Prompt For Checkout - Specifies if Part Revision Checkout should automatically display when a configurationis saved after completing a Configuration session. This can be used if the Epicor application is creating a newpart revision record when a configuration is saved during a Configuration session (which takes place if youselect the Save Input Values or Create Revision check boxes for the base part).

• If you select this check box, it specifies that Part Revision Checkout should automatically display when aconfiguration created for the base part is saved after completing a Configuration session. This allows forcheck out of the newly created configured part revision to the Engineering Workbench.

• Clear the check box to skip display of Part Revision Checkout when a configuration is saved after completinga Configuration session

• Default ECO Group - If the Prompt For Checkout check box has been selected, you can use this field tospecify the default value that should appear in the ECO Group field in Part Revision Check Out (invoked whenyou use the Check Out Revision selection, located under the Revision submenu in the Part MaintenanceActions menu).

Enter the ECO Group number (as defined in ECO Group Maintenance), or click Default ECO Group to accessECO Group Search to browse a listing of valid ECO Group numbers.

Logic/Algorithms

Refer to Verify Existing Configurations for more details on how this program affects configured parts forwhich the Save Input Values check box has been selected.

Refer to Verify Existing Configurations for more details on how this program affects configured parts for whichthe Save Input Values check box has been selected.

Each time a configured part is approved in the Configurator Designer, the Epicor application assigns a configurationversion to the main configuration record, and each time the configuration is unapproved and reapproved in theConfigurator Designer, it increments this value by one. When a configuration is saved during a configurationsession in Opportunity/Quote Entry, Order Entry, Job Entry, Purchase Order Entry or Demand Entry, the Epicorapplication saves the input values (that were entered by the user) with the same configuration version numberas the main configuration record for current base configured part.

If the Saved Input Values checkbox has been selected in the Input Rules > Part > Creation sheet, and you chooseto reconfigure one of the newly created part numbers in Opportunity/Quote Entry, Order Entry, Purchase OrderEntry, Job Entry or Demand Entry, the Epicor application compares the configuration version of the saved inputvalues against the base configured part record. If they differ, the following message is displayed:

If you click Yes, it saves any changes that may have been made to the input values while you reconfigured thepart. If the configuration versions were the same, it displays a message stating a part number already exists forthis configuration and it doesn't save any of changes made to the input values.

Epicor ERP | 9.05.702134

Configurator Technical Reference GuideImplementation Components and Calculations

Page 135: Epicor Configurator

Example

Wavy Rider Products decided that want to include part numbers on sales order and quotes, but did not want tocreate new part numbers in the Part master database table.

Their personnel entered the following parameters into the Product Configuration > Input Rules > Part > Creationsheet:

135Epicor ERP | 9.05.702

Implementation Components and CalculationsConfigurator Technical Reference Guide

Page 136: Epicor Configurator

Input Rules > Part > Smart String

Use the Input Rules > Part > Smart String sheet to define if or how a special identifying number (a Smart String,or unique part number) should be constructed to identify a configuration of this part, based on the entries madeduring an actual configuration session in Order Entry, Opportunity/Quote Entry, Purchase Order Entry, Job Entry,Purchase Order Entry or Demand Entry. This smart string identifies the configuration for customer reference, andit (optionally) prints on quote or order acknowledgment forms associated with this part. Smart creation functionalitycan be defined for top assembly, as well as subassembly configurators.

• This logic is valuable when you wish to identify a specific configuration in a long list of revisions or identify itfor your customer's reference.

• The Input Rules > Part > Smart String sheet also allows you to specify additional parameters for creation ofSmart String identifiers - how they should be prefaced, if they should included as a description on varioustypes of records, and if they should be included in comments printed on specific documents.

• When Smart String (or Part Creation) parameters are defined for a subassembly configured part, the Epicorapplication processes these parameters for the lower level configured part when the associated top-levelconfiguration is saved during a Configurator Q&A session.

Epicor ERP | 9.05.702136

Configurator Technical Reference GuideImplementation Components and Calculations

Page 137: Epicor Configurator

Programs and Their Modifiers

Configurator Designer

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Part Maintenance

The Configurator Designer sheet can also be accessed from the Revisions Sheet in Part Maintenance. Refer toAssemblies and Subassemblies for details on how to launch Part Maintenance from the Main Menu.

The Input Rules > Part > Smart String sheet can be selected as soon as a new configuration has been created inthe Configurator Designer sheet. The settings on this sheet aren't specific to configuration inputs; they apply tothe entire configuration. These are the values you can modify:

• Smart String Structure - This field displays the resulting structure of the Smart String as you specify theparameters being used for its construction. The field is for display only.

• Available Styles - Specify the basis of how the Smart String should be constructed. Select one of the following:

• No Smart String Functionality - No Smart String should be created.

• Smart String Constructed from Inputs - The Smart String should be constructed based on inputs enteredby the user when the part is configured during an actual configuration session in Order Entry,Opportunity/Quote Entry, Job Entry, Purchase Order Entry or Demand Entry. When this option is selected,you must specify the selected inputs on which the Smart String is being based using the selected input.

• Part Number + Order Number/Quote Number + Order/Quote Line - The Smart String should beconstructed from the part number, the number of order or quote, and the line number from the order orquote.

• Part Number + Sequential Number - Smart String should be constructed from the part number and asequential number.

• Separator Character - Specify the delimiter character that should separate the individual element sectionsof the Smart String. Select one of the following:

• Dash (-) - Delimits the individual elements with a dash.

• Space ( ) - Delimits the individual element sections with a space.

• Slash (/) - Delimits the individual elements of the Smart String with a slash.

• Underscore (__) - Delimits the individual elements with an underscore.

• No Separator - No delimiters separate the individual elements.

137Epicor ERP | 9.05.702

Implementation Components and CalculationsConfigurator Technical Reference Guide

Page 138: Epicor Configurator

• Digit Structure - If the Part Number + Order Number/Quote Number + Order/Quote Line option wasselected in the Available Styles field, specify the structure of the digits for the Smart String. Select one ofthe following:

• All Digits (00000999) - The significant digits of the Smart String should be preceded by leading zeroes.The significant digits are comprised of the individual elements sections of the Smart String, in this casethe order/quote number and the order/quote line item.

• Only Significant Digits (999) - The digit structure only includes the significant digits of the Smart String(no leading zeroes).

• Starting Sequence - If the Part Number + Sequence Number option was selected in the Available Stylesfield, specify the starting sequence number for the Smart String (for example, 1000). As each Smart String isgenerated, this sequence number automatically increments by one.

• Available Inputs / Selected Inputs - Click Available Inputs to display a list of available inputs; one or moreof the inputs can be selected. After clicking OK, it populates the Selected Inputs field. The Selected Inputsfield establishes which inputs should be included in the Smart String for a configuration of the part.

• Use the up and down arrows to establish the order of appearance of inputs.

• Click Format to access the Smart String Display Format window to specify the formatting of the value(entered for the selected input during a configuration session) and how it should appear in the resultingSmart String. For example, if you have selected a combo box, you can specify the value that should bedisplayed in the resulting Smart String when each option is selected for the combo box during theconfiguration session.

• The formatting information options that appear in the Smart String Display Format window are dependenton the type of selected input, and are similar to those available in the Input Rules > Inputs > Detail sheet.Refer to the Input Rules > Inputs > Detail section for detailed information.

• Preface w/Part Number - Select this check box if the Smart String should begin with the part number forthe part being configured.

Note that once you select an input for construction of the Smart String, it cannot be easily removed from theSelected Inputs list (the Cut command cannot be used in this situation). To clear the inputs from the SmartString and reselect the correct inputs, select No Smart String Functionality in the Available Styles field, andthen select Smart String Constructed From Inputs again.

• Customer Part Number - Select this check box if the customer part number displayed in Order Entry orOpportunity/Quote Entry should include the resulting Smart String generated during an actual configurationsession.

• Order/Quote Comments - Select this check box if the order comments on sales orders, and quote commentson quotes should be updated with the resulting Smart String generated during an actual configuration session.

• Job/Pick List Comments - Select this check box if the pick list comments on sales orders, and if the jobcomments on quotes should be updated with the resulting Smart String generated during an actualconfiguration session.

• Packing Slip Comments - Select this check box if the packing slip comments on sales orders should beupdated with the resulting Smart String generated during an actual configuration session.

• Invoice Comments - Select this check box if the invoice comments on sales orders should be updated withthe resulting Smart String generated during an actual configuration session.

• Part Description - Select this check box if the Smart String generated during an actual configuration sessionshould be the actual part description on orders, quote lines or job lines (on the associated orders, quotes orjobs). If this check box is selected, the Smart String also becomes the new part description if new part recordsare being created during the configuration session.

Epicor ERP | 9.05.702138

Configurator Technical Reference GuideImplementation Components and Calculations

Page 139: Epicor Configurator

Logic/Algorithms

After clicking Save during an actual configuration session, the Epicor application determines if an available stylehas been defined for the configured part (in the Available Styles field in the Configurator Designer > Part >Smart String sheet) prior to saving the input value records. If an available style was selected, the Epicor applicationbuilds the Smart String according to the selected parameters defined in the Input Rules > Part > Smart Stringsheet.

Once it builds the Smart String, it verifies if any of the "assignment" parameters were specified for the configuredpart in the Input Rules > Part > Smart String sheet and update the appropriate fields accordingly on the associatedorder, quote, job, purchase order or demand order.

When saving a configuration, the Epicor application processes all of the selections made in the Input Rules > Part> Smart String sheet. For example, if the Customer Part Number check box has been selected, it updates theCustomer Part Number field in Order Entry or Opportunity/Quote Entry with the newly created part number.

When using the Get Details sheet in Job Entry, it also processes all applicable rules to determine the exact materialand operations content for the Method of Manufacture for the newly configured part. Therefore, if you createa Set Field rule that updates the value of the customer part number on the quote, it overwrites the newly createdpart number that was assigned to the Customer Part Number field with the new customer part number thatresults from processing of the Set Field Rule.

Example

Wavy Rider Products has decided to use the Smart String Constructed from Inputs option to construct theSmart String for their pontoon boat configurations. This instructs the Epicor application to create a Smart Stringbased on inputs entered by the user when the part is configured during an actual configuration session in OrderEntry or Quote Entry.

• They have also elected to use the following options in the Input Rules > Part > Smart String page:

• Automatically create a new part number - Selected

• Do not notify the user if the new part number already exists - Selected

• Create new part number at zero cost - Cleared

• Create New Part Number In:

• Quote Entry - Selected

• Order Entry - Selected

• Job Entry - Selected

• Demand Entry - Selected

In the Input Rules > Part > Creation sheet, Wavy Rider Products has elected to use the following options inconjunction with the Smart String creation options:

• Create a new part number for each configuration - Selected

• Set Part Number Only - Selected

• Available Methods - Use Smart String as the new part number

139Epicor ERP | 9.05.702

Implementation Components and CalculationsConfigurator Technical Reference Guide

Page 140: Epicor Configurator

Input Rules > Document Rules

Use the Input Rules > Document Rules > Detail sheet to define document rules. Document rules allow for updatingof source transactions (such as quotes, sales orders, jobs or purchase orders) that initiated the configuration.They can be used in a single-company environment, or with an Enterprise Configurator in a multi-companyenvironment.

• In earlier versions of the Epicor application, the associated quote or job order header, detail, and releaserecords could only be updated by performing a Get Details operation in Opportunity/Quote Entry or Job Entryusing manufacturing rules (now called Method Rules) created for the method of manufacture.

• Now, if you are using the multi-company configuration functions (the Enterprise Configurator check boxhas been selected for the configuration in the Configurator Designer > Status sheet), at the time of configuratorsynchronization, the Epicor application does not export manufacturing rules or the method of manufactureto the external Sales companies in which configurations have been created (at the time a quote, order or jobis initially entered).

• Document rules allow for the creation of Calculation, Set Field, and Program Call rules that automaticallyupdate these transactions with applicable data specifically related to the configuration and its manufacturein the Manufacturing company.

Based on the rule expression syntax, the Epicor application updates the tables and fields defined in the rule withthe appropriate resulting values (also specified in the rule expression). By separating the document rules fromthe manufacturing (method) rules, the Epicor application executes these rules against the calling document thatinitiated the configuration (quote, sales order, job or purchase order) at the time the configuration is saved. Thiseliminates the need to perform a Get Details operation in Opportunity/Quote Entry or Job Entry.

Epicor ERP | 9.05.702140

Configurator Technical Reference GuideImplementation Components and Calculations

Page 141: Epicor Configurator

Programs and Their Modifiers

Configurator Designer

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Part Maintenance

The Configurator Designer sheet can also be accessed from the Revisions Sheet in Part Maintenance. Refer toAssemblies and Subassemblies for details on how to launch Part Maintenance from the Main Menu.

To add a new document rule, from the File menu, click New, then click New Document Rule. These are thevalues you can modify:

• Company - If this document rule is being defined for a product configuration marked as an EnterpriseConfiguration in the Status sheet, specify the external company in which the document rule is beingsynchronized and executed. If it is being executed in a specific company, select the company. The name ofthe selected company appears next to this field. Leave the field blank if the document rule should be executedin all external company databases, or if you are operating the Configurator in a single-company environment.

• Company Name - Displays the name of the external company in which the document rule is being synchronizedand executed. All Companies displays in this field if no specific company has been selected in the Companyfield.

• Edit - Click Edit to launch the Expression Builder to define the Calculation, Set Field or Program Call rulesyntax associated with the document rule. Refer to the Configurator Technical Reference Guide for detailedinformation on how to use the Expression Builder to define rules syntax.

• Expression - After you have launched the Expression Builder and have defined the associated the Calculation,Set Field or Program Call rule, this field displays the rules syntax. The field is for display only.

• Rule Type - After you have launched the Expression Builder and have defined the associated the Calculation,Set Field or Program Call rule, this field displays the rule type that was selected when the document rule wascreated:

• Calculation

• Program Call

• Set Field

• Sequence - Specifies the sequence in which the document rule should be processed when the configurationto which it is being applied is saved. For example, if you are defining multiple document rules that are beingapplied for a specific external company, you can assign a free-form sequence number (for example, 10) thatdenotes when a specific rule is being applied. The Epicor application processes rules with lower sequencenumbers before it processes those with higher sequence numbers. The higher on the list (and the lower thesequence number), the sooner it is invoked. This is important if the results of one rule affect another rule.

141Epicor ERP | 9.05.702

Implementation Components and CalculationsConfigurator Technical Reference Guide

Page 142: Epicor Configurator

• Table - After you have launched the Expression Builder and have defined the associated the Calculation, SetField or Program Call rule, this field displays the database table that was selected when the document rulewas created:

• JobHead - Job Header table

• OrderHed - Order Header table

• OrderDtl - Order Detail table

• OrderHed - Quote Header table

• QuoteDtl - Quote Detail table

• POHeader - Purchase Order Header table

• PODetail - Purchase Order Detail table

Logic/Algorithms

Document rules consist of Calculation, Set Field, and Program Call rules that automatically update sourceconfiguration transactions with applicable data specifically related to the configuration and its manufacture inthe Manufacturing company. Based on the rule expression syntax, the Epicor application updates the tables andfields defined in the rule with the appropriate resulting values (also specified in the rule expression).

Example

Using a Set Field rule, data such as pricing, company code assignment or the description of the sales order linestored in the OrderDtl table can be assigned specific values based on the components selected in the configurationsession.

Epicor ERP | 9.05.702142

Configurator Technical Reference GuideImplementation Components and Calculations

Page 143: Epicor Configurator

Method Rules > Method / Rules

Use the sheets under the Method Rules tab to specify method rules and associated comment text for theconfigurator being defined.

• If you are using the multi-company configuration functions (the Enterprise Configurator check box hasbeen selected for the configuration in the Configurator Designer > Status sheet), a Manufacturing companydefines method rules to specify how a method of manufacturing should be created for use in producing apart configured in a Sales company. Method rules include Keep When rules that determine specific materialcontent and designate what components should be included when the configured part is manufactured.

• The Epicor application does not export manufacturing (method) rules or the method of manufacture at thetime of configurator synchronization to the external Sales companies in which configurations have beencreated (when a quote, order or job is initially entered). By separating the manufacturing rules and the Methodof Manufacture from the other rules, synchronization of the method of manufacture for a configured part isnot required between the Manufacturing company and external Sales companies. This allows you to protectproprietary product information from potential distribution to unwanted parties.

• Using tag lineage (rule tags), you can apply differing method rules against the same part number (forexample, same sub -level component) that occurs multiple times in a configuration. This is an optional featurein the Configurator Designer; you do not have to use it if it does not apply in your operations. You accomplishthis through the use of rule tags applied to components in the Engineering Workbench, and then by usingthe tagged references when defining method rules for a product configuration in the Configurator Designer.

Refer to the Using Tag Lineage to Define Multiple Method Rules for the Same Part section in UsingConfigurator Rules (Single-Company) for more details.

143Epicor ERP | 9.05.702

Implementation Components and CalculationsConfigurator Technical Reference Guide

Page 144: Epicor Configurator

Programs and Their Modifiers

Configurator Designer

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Part Maintenance

The Configurator Designer sheet can also be accessed from the Revisions Sheet in Part Maintenance. Refer toAssemblies and Subassemblies for details on how to launch Part Maintenance from the Main Menu.

Use the Method Rules > Method sheet to view the method rules that have been defined for the configured partin the Method Rules > Rule sheet.

• The Method Panel (to the right of the Tree display) displays the method of manufacture currently definedfor the configured part, and also indicates if a component exists multiple times in the method of manufacture.If you are using rule tags, it generates and displays the tag lineage using the rule tags that have been definedfor each material at each level in the Engineering Workbench > Method Rules > Materials > Detail sheet. Youuse this Method Panel to select the specific operation or material to which a method rule is being assigned.

• It also indicates if a component exists multiple times in the method of manufacture. If you are using rule tags,it generates and displays the tag lineage using the rule tags that have been defined for each material at eachlevel in the Engineering Workbench > Method Rules > Materials > Detail sheet. Use the Method Panel toselect the specific operation or material to which the method rules is being assigned.

• The Tree View visually displays method and structure rules for the selected product configuration usinga tree structure. This interface lets you quickly view the method of manufacture so you can see what has beenbuilt so far and what might need to be maintained.

Tip Each method item (node) in the tree displays with an icon and descriptive text called a caption.You can modify the default caption(s) for each node, and you can select other database fields/columnsto display in the tree. To do this, right -click in the Tree View, and select Tree Options from the contextmenu. Use the Tree Options window to modify the captions associated with the Tree View and to selectdifferent database columns/fields to display in the tree. To use the Tree Options window, do the following:

• Right -click Tree View and select Tree Options.

• In the Line field, select the for which you want to modify the selected columns or captions.

• If you want to modify the column(s) for the node, use the arrow buttons between the AvailableColumns and the Selected Columns group boxes to add or remove columns and to repositioncolumns once you have chosen them.

• If you want to modify the caption(s) for the node, enter the new caption text in the Caption fieldin the Selected Column Captions area of the window. Click OK.

If you want to restore one node (line) or all nodes to the system defaults, click the appropriate buttonat the top of the window.

Epicor ERP | 9.05.702144

Configurator Technical Reference GuideImplementation Components and Calculations

Page 145: Epicor Configurator

Select Alt in the tree display to define method rules that apply to Assembly 0 (top-level of a multi-level assembly)or header records.

• It also allows you to select an alternate revision (if one has been defined for the assembly in the PartMaintenance Detail > Alternate Method sheet) from the combo box on the Method Rules > Method sheetand then define method rules for the alternate Method of Manufacture for the configured part.

• If an alternate method is selected from this combo box, the Alt node in the tree displays the alternate methodand alternate method description. For example, if Alt: A -2 Alternate Method 2 is displayed, A-2 is thealternate method and Alternate Method 2 is the alternate method description that was defined in PartMaintenance for the alternate method.

• When the alternate method is selected, the Epicor application updates the tree display on the Method Rules> Method sheet with the method of manufacture that was defined for the alternate method. This allows youto create a separate set of method rules for the alternate method that differ from the method rules definedfor the regular revision. Only Calculation, Set Field and Program Call rules can be defined when selectingAlt.

• From the File menu, click New, then click New Method Rule to access the Method Rules > Rule sheet todefine the method rule for the selected item.

To assign method rules to specify operations or materials at specific levels of indenture, click Operations orMaterials on the tree, and then select the item or level at which the method rule is being defined. From the Filemenu, click New, then click New Method Rule to access the Method Rules > Detail sheet to define the methodrule for the selected item. All rule types can be defined when selecting operations, operation detail, resources ormaterials

• Related Materials appears underneath Operations and denotes materials related to a specific operation.

• Unrelated Materials are materials not related or tied to a specific operation.

• From the File menu, click New, then click New Method Rule to access the Method Rules > Rule sheet todefine the method rule for the selected item.

These are the values you can modify for the selected item:

• Rule - Displays the syntax defined in the Expression Builder for this method rule. The field is for display only.

• Rule Sequence - Displays the sequence in which the method rule should be processed when the configurationto which it is being applied is saved. For example, if you are defining multiple method rules that are beingapplied for a specific external company, the Epicor application assigns the sequence number, and it processesrules with lower sequence numbers before it processes those with higher sequence numbers.

• The higher it is on the list (and the lower the sequence number), the sooner it is invoked during aconfiguration session. This is important if the results of one rule affect another rule.

• From the Actions menu, you can select the Move Rules commands (Move Up, Move Down) to moveselected rules to an earlier or later precedence. You can also use the up and down arrow icons that appearabove the Method Panel to move the method rules up or down with respect to their processing sequence.

• To test rules and make sure they operate correctly once they have been created, select Test Rules fromthe Actions menu.

• Type - Displays the rule type (Calculation, Keep When Set Field or Program Call) that has been assigned tothis method rule. Refer to the Configurator Technical Reference for more information about rule types. Thisfield is for display only.

145Epicor ERP | 9.05.702

Implementation Components and CalculationsConfigurator Technical Reference Guide

Page 146: Epicor Configurator

Use the Rule sheet to view the method rule that has been selected in the Method Rules > Method sheet for theselected configuration part. You can access the Expression Editor to specify rule expression syntax for for creationa method of manufacture (operations and materials) for a specific part and revision, based on information selectedduring a configuration session.

These are the values you can modify for the item:

• Current Rule Tag Lineage - Displays the generated rule tag lineage, depending on what material, operation,or operation detail is selected in the Method Panel in the Method Rules > Method sheet. This field is for displayonly.

• Edit - Click Edit to launch the Expression Builder as needed to specify the syntax associated with the methodrule being defined for the material, operation, or operation detail selected in the Method Panel in the MethodRules > Method sheet. Refer to Expression Builder / Context Functions for detailed information on howto use the Expression Builder to define rules syntax.

• Expression - After you have launched the Expression Builder and have defined the associated method ruleexpression, this field displays the specified syntax. This is the expression that is processed when the configurationis saved. The field is for display only.

• Node - Displays the assembly sequence, material sequence, operation or operation detail sequence that iscurrently selected in the Method Panel in the Method Rules > Method sheet. This field is for display only.

• Parent Node - Displays the parent node for the assembly sequence, material sequence, operation or operationdetail sequence that is currently selected in the Method Panel in the Method Rules > Method sheet. This fieldis for display only.

• Rule Sequence - Displays the sequence in which the method rule should be processed when the configurationto which it is being applied is saved. The Epicor application processes rules with lower sequence numbersbefore it processes those with higher sequence numbers. The higher on the list (and the lower the sequence

Epicor ERP | 9.05.702146

Configurator Technical Reference GuideImplementation Components and Calculations

Page 147: Epicor Configurator

number), the sooner it is invoked. This is important if the results of one rule affect another rule. This field isfor display only.

• To rearrange the order of rules, select a rule in the Method Panel in the Method Rules > Method sheet,and from the Actions menu, select Move Rule - Move Up or Move Down.

• You can also use the up and down arrow icons that appear above the Method Panel to move the methodrules up or down with respect to their processing sequence.

• Rule Tag - Specifies if a rule tag is being assigned to this method rule. Keep When rules can then be definedin the Expression Builder based on the assigned rule tags to handle each part occurrence differently underdifferent circumstances.

• If a rule tag is entered in this field, the Epicor application only processes this rule if the generated rule taglineage for a part contains the same rule tag. Refer to the Using Tag Lineage to Define Multiple MethodRules for the Same Part topic for more details.

• If no rule tag is entered into this field, the rule is processed for every occurrence of the assembly sequence,material sequence, operation or operation detail sequence and isn't specific to the current generated ruletag lineage.

Example

As mentioned in examples earlier in this section, Wavy Rider Products decided to use a single general"CFGPontoon" universal part that acts as a "placeholder" for subsequent selection of the boat model and allassociated options.

This implies that multiple levels of indenture should be impacted by selection of the boat model, based on itsintended use (Fishing, Family/Leisure or Water Sports).

147Epicor ERP | 9.05.702

Implementation Components and CalculationsConfigurator Technical Reference Guide

Page 148: Epicor Configurator

Status

Use the Configurator Designer > Status sheet to review a log of changes that has already been made for designof the configuration, or approve/unapprove the configuration design. It also allows you to specify if method rulescan be defined for all levels of indenture in a multi-level Method of Manufacture, and designate if this is a SmartString configuration. The functionality for the sheet is similar to the part revision change log.

Programs and Their Modifiers

Configurator Designer

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Epicor ERP | 9.05.702148

Configurator Technical Reference GuideImplementation Components and Calculations

Page 149: Epicor Configurator

Part Maintenance

The Configurator Designer sheet can also be accessed from the Revisions Sheet in Part Maintenance. Refer toAssemblies and Subassemblies for details on how to launch Part Maintenance from the Main Menu. Theseare the values you can modify for the item:

• Approved - Select this check box to approve a configuration. You would normally do this is after you havecompleted the design and testing of the entire configuration for the selected part revision. Whenever thischeck box is changed, the Design of Change field is enabled; you must enter free-form text about the natureof the design change

• Synchronize Revision Approval - Specifies if approval of the associated part revision and inspection plan(if any) should be automatically synchronized to the approval of the configured part in the ConfiguratorDesigner. Selecting the check box causes the following to occur:

• If you select this check box, and approve or unapprove the configured part in the Configurator Designer(using the Approved check box in the Status sheet), the Epicor application automatically approves orunapproves the associated part revision in the Part Maintenance > Revisions sheet. If you select this checkbox, the warning message Revision checked out by ECO Group xxx. Do you wish to approve theconfiguration? appears when the configuration status changes and the revision is checked out to anECO group.

• If you click Yes, you can continue with the part revision status synchronization.

• If you click No, the part revision status is not automatically updated.

• If you select this check box, the Epicor application automatically synchronizes the approval of the associatedinspection plan (if any) to the approval of the configured part in the Configurator Designer (using theApproved check box in the Status sheet). The Epicor application either selects or clears the Approvecheck box in Inspection Plan Maintenance, based on the setting of the Approved check box in the Statussheet.

Clear the check box if approval of the part revision and associated inspection plan should not be automaticallysynchronized to the approval of the configured part in the Configurator Designer. This skips automaticsynchronization of the Approved check box when the part revision or inspection plan is approved.

• Enterprise Configurator - Select this check box if this is an enterprise configurator. When selected, it alsoenables the Synchronize check box in the Status sheet and the External Company field in the Input Rules >Pricing sheets. Refer to the Product Configuration in a Multi-Company Enterprise topic in the ConfiguratorConcepts and Base Components section for more details on operating the Configurator in a multi-companyenvironment.

Clear this check box if this is not an enterprise configurator. If cleared, you cannot access the Structure Rulestab and accompanying sheets to define structure rules for the configured part. You would clear this checkbox if the configuration is being used in a single company environment only. A single company environmentis one in which the configuration defined and used (the part is being configured and manufactured) in a singlecompany within the same database.

Note You can configure purchased materials associated with enterprise configurator parts when theyare added as material content in Opportunity/Opportunity/Quote Entry and in Job Entry. These are itemsfor which the Type field has been set to Purchased in the Part Maintenance > Part > Detail sheet, forwhich the Enterprise Configurator check box has been selected in the Configurator Designer > Statussheet.

• To do this for a job, you add the part to the Material node in the Job Entry Tree View. After youhave added the part, simply right-click it, then select Configure to access a Configurator Q&Asession.

• To do this for a quote line, you add the part to the Material node in Opportunity/Opportunity/QuoteEntry > Line > Mfg Details > Tree sheet. After you have added the part, simply right-click it, thenselect Configure to access a Configurator Q&A session.

149Epicor ERP | 9.05.702

Implementation Components and CalculationsConfigurator Technical Reference Guide

Page 150: Epicor Configurator

• Synchronize - Select the check box to enable synchronization functions for this Configurator. The receivingexternal companies must have an installed Configurator license; however those companies cannot modifythe configurator. The Configurator Designator only displays information in the Part/Rev and Status sheetsin external companies. The Epicor application does not synchronize the Change Log information in externalcompanies. Note that if this check box is first selected, and then cleared at a later date, the Configurator isautomatically marked as Unapproved in the external companies.

• Display Configuration Summary Grid - Select the check box to display the Configuration Summary gridwhen reconfiguring a part using this configuration in Opportunity/Quote Entry, Order Entry, Job Entry, PurchaseOrder Entry or Demand Entry. Clear the check box to skip display of the Configuration Summary grid whenreconfiguring a part using this configuration.

• Single Level Configuration - If a multi-level Method of Manufacture has been defined for the part revisionfor which the configuration process is being defined, this check box governs the bill of material and operationslevels of the indenture for which method rules can be defined. If the check box is selected, you can definemethod rules at the top-level of indenture only. This prevents you from defining method rules for subassemblies.If it is cleared, you can define method rules for all levels of indenture within the Method of Manufacture,including subassemblies.

• Smart String Configuration - In a traditional configuration session, after you click the Configure buttonin Opportunity/Quote Entry, Order Entry, Job Entry, Purchase Order Entry or Demand Entry, the Epicorapplication directly accesses, and sequentially displays each of the configuration input pages you have createdfor the current configurator in the Configurator Designer. This check box can be used to (optionally) specifyif, during an actual configuration session, all input values for the configuration can instead be loaded throughmanual entry of a 'smart string' that contains concatenated values, each representing a certain aspect of theconfigured item.

• When this functionality is enabled, the Epicor application displays a dialog box during the actualconfiguration session, prompting you to enter a smart string value. It then attempts to process and loadall associated configuration input values from the supplied string.

• To properly process the smart string values, the Epicor application must understand what the starting andending positions are for each of configuration values contained within a typical smart string. For example,the first string position (Color) might be start in position 1, end in position 2 and represent the color ofthe item, while positions 3 and 4 (Metal Type) might represent the type of metal used for the item. Todefine these positional values, you use the Configurator Designer > Smart String sheet to designate theinput name, start position and end position for each of the configuration input values.

Clear the check box to operate the Configurator in the traditional manner and skip use of a smart stringconfiguration (default setting).

Note While similarly named, the Smart String Configuration check box functionality is not relatedto the Smart String part functionality defined in the Configurator Designer > Input Rules > Part > SmartString sheet.

• Allow Reconfiguration in PO - Specifies if (for the configurator being designed for this universal base partnumber) a sales order configuration created in Order Entry can be reconfigured on-the-fly in Purchase OrderEntry.

Select this check box to allow reconfiguration in Purchase Order Entry. This enables use of the Configurebutton in the Purchase Order > Lines > Detail sheet. This allows a user to (optionally) reconfigure a configurationcreated on a sales order when it is formally purchased.

• When a sales order configuration is reconfiguring in Purchase Order Entry, the Epicor application appliesorder pricing and Document Rules to the linked sales order line when the configuration is saved.

• Conversely, when the configuration is reconfigured in Order Entry, the Epicor application applies purchaseorder pricing and Document Rules to the linked purchase order line when the configuration is saved.

If the Allow Reconfiguration in PO check box has been cleared, the Configure button is disabled in thePurchase Order > Lines > Detail sheet; this prevents reconfiguration of the sales order configuration whenpurchased.

Epicor ERP | 9.05.702150

Configurator Technical Reference GuideImplementation Components and Calculations

Page 151: Epicor Configurator

• Prompt For Configuration -

Specifies if generation of methods of manufacture in the Engineering Workbench (using the method rulesthat have been assigned to this base configured part) should be allowed.

• Select this check box to allow generation of methods of manufacture in the Engineering Workbench usingthe method rules that have been assigned to the based configured part.

For example, if you have created a Configurator for base part A (with 20 attached material parts, 15operations and a series of defined rules, including Method rules), then use the Get Details window in theEngineering Workbench to get method of manufacture details (associated with the base configured part)when engineering another assembly part, the following message is displayed:

• If you click Yes, the Engineering Workbench invokes a Configuration session for the specified basepart. This allows you to configure it; when the resulting configuration is saved, the Epicor applicationprocesses the associated method rules, resulting in tailored materials and operations content. Thisconfigured materials and operations detail is then retrieved for engineering of the assembly part.

For example, if the resulting configuration for Part A contains four parts and two operations (afterMethod rules have been applied during the Configuration session), only those materials and operationdetails are retrieved for use in engineering of the assembly part.

• If you click No, the Engineering Workbench does not invoke a Configuration session for the base part.In this case, it simply retrieves all materials or operations that have been directly attached to the baseconfigured part in the Configurator Designer; this is not the tailored content that would have resultedhad a Configuration session been invoked ( because the associated Method rules have not beenapplied).

For example, for base part A, the Epicor application retrieves the 20 attached material parts and 15operations originally attached to the base configured part for use in the engineering assembly part.

• Clear this check box to prevent generation of methods of manufacture in the Engineering Workbenchusing the method rules that have been assigned to the based configured part. In this case, the functionalitydescribed above is not available when you attempt to get details for the base configured part. It does notinvoke a Configurator session in this situation.

Logic/Algorithms

The Single Level Configuration check box has a profound impact on how you design the configuration for aselected part revision. You can configure a part as single-level to be backward-compatible with existingconfigurations.

Use of this check box is invaluable if you are running an earlier version of the Epicor application that did notsupport multi-level BOMs, and wish to have newly created parts compatible with that version.

Note that if method rules already exist at lower-levels for an indented Method of Manufacture for a part revision,and you attempt to clear the check box, a warning message appears that states that the lower-level method ruleswill be deleted, and asks if you wish to continue. If you click Yes, the Epicor application then deletes all lower-levelmethod rules for the part revision.

151Epicor ERP | 9.05.702

Implementation Components and CalculationsConfigurator Technical Reference Guide

Page 152: Epicor Configurator

Example

As mentioned in examples earlier in this section, Wavy Rider Products decided to use a single general"CFGPontoon" universal part that acts as a "placeholder" for subsequent selection of the boat model and allassociated options.

This implies that multiple levels of indenture should be impacted by selection of the boat model, based on itsintended use (Fishing, Family/Leisure or Water Sports). In this case, they would clear the Single LevelConfiguration check box so they can define method rules for all levels of indenture within the Method ofManufacture, including subassemblies.

Regenerate Configurations

Use Regenerate Configurations as needed after a new service pack or patch has been installed to regenerateconfigurations that have been created in the Configurator Designer for base part numbers.

You can specify if all configurations should be regenerated, or if only configurations for individual parts selectedin the Filter sheet should be regenerated. When you run this program, it selects previously approved configurations(for which the Approved check box has been selected), and performs the following functions:

• Regenerates associated rules programs

• Regenerates the assigned configuration sequence

• Recalculates internal "Has Leave Trigger" records

This process can also be run in a Continuous Processing mode; this allows it to run continuously in the SystemMonitor waiting for a configuration to be flagged for regeneration.

Note When running this process in any of the available modes, it generates a log file from which you areable to determine if a part returned an error and was not processed.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Regenerate Configurations

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > RegenerateConfigurations

Epicor ERP | 9.05.702152

Configurator Technical Reference GuideImplementation Components and Calculations

Page 153: Epicor Configurator

Regenerate Configurations Features

When run in the Continuous Processing mode, the Regenerate Configuration process operates in the followingmanner:

Continuous Processing Mode

Once you approve a configuration by selecting the Approval check box in the Configurator Designer, the Epicorapplication creates a record that is used by the Continuous Processing mode to determine if the configurationshould be regenerated.

• When run the Continuous Processing mode, when your approve/unapprove or modify the material content(BOM) for an item, the Revision Approving logic directs the Regenerate Configurations program to regeneratethe part in question.

• This applies to both configurable and non-configurable parts because when a part revision is approved, theEpicor application needs to determine if the bill of material for the part contains a configuration; if so, it setsthe Configurable check box in the Part Maintenance > Revision > Detail sheet.

• If you are not using the Continuous Processing mode, the Regenerate Configurations program automaticallylaunches whenever you approve a configuration.

Regardless of whether the Regenerate Configurations program is run in the Continuous Processing mode. thisprogram performs the following tasks:

Regenerates Associated Rules Programs

When run, this process regenerates the set of rule programs (associated with a particular configuration) that theConfigurator Designer originally generates at time of approval. This Progress-compiled code is saved in the PCRules directory (as defined in Company Maintenance); it includes the user-defined code entered into the ExpressionBuilder for input rules, method rules, dynamic lists, Prompt When expressions and pricing parameters defined inthe Configurator Designer for the configuration.

Regenerates Configuration Sequence

When run, this process regenerates the sequence number that is automatically assigned to a configuration whena configurable part (a part for which a configuration has been defined in Configurator Designer) contains otherconfigurable parts in its BOM, and this configurable part is entered in Opportunity/Quote Entry, Sales Order Entry,Job Entry, Purchase Order Entry or Demand Entry.

• When you click the Configure button in these programs, the resulting Q&A session displays the configurationentered for the base part, and also displays the configuration defined for those configurable parts in the basepart BOM record.

• The configuration sequence is a list of configurations that are displayed during the Q&A session, and this listis built from the subconfigurators defined in the BOM.

Recalculates Internal "Has Leave Trigger" Field

Each input that is defined for a configuration in the Configurator Designer contains a "HasLeaveTrigger" flagthat indicates where it has On Leave code, is referenced in dynamic list conditions/parameters, or if it is referencedin the PromptWhen logic defined for other inputs. When run, the Regenerate Configurations program automaticallyrecalculates this flag.

153Epicor ERP | 9.05.702

Implementation Components and CalculationsConfigurator Technical Reference Guide

Page 154: Epicor Configurator

Smart String Configuration Processing

Use the Configurator Designer > Smart String sheet when the Smart String Configuration check box has beenselected in the Status sheet for the configuration being designed.

When the Smart String Configuration check box has been selected for the configuration, the Epicor applicationdisplays a dialog box during an actual configuration session (invoked from Order Entry, Opportunity/Quote Entry,Job Entry, Purchase Order Entry or Demand Entry), prompting for entry of smart string value. It then attempts toprocess and load all associated configuration input values from the supplied string.

• To properly process the smart string values, the Epicor application must understand what the starting andending positions are for each of configuration values contained within a typical smart string. To define thesepositional values, you use the Configurator Designer > Smart String sheet to designate the input name, startposition and end position for each of the configuration input values.

• For example, the first string position (Color) might be start in position 1, end in position 2 and represent thecolor of the item, while positions 3 and 4 (Metal Type) might represent the type of metal used for the item.

Epicor ERP | 9.05.702154

Configurator Technical Reference GuideImplementation Components and Calculations

Page 155: Epicor Configurator

Programs and Their Modifiers

Configurator Designer

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Part Maintenance

The Configurator Designer can also be accessed from the Revisions Sheet in Part Maintenance. Refer to Assembliesand Subassemblies for details on how to launch Part Maintenance from the Main Menu. These are the valuesyou can modify for the item:

• Input Name - Specify the name of the input field (for example, Color, Metal Type, Engine Size) being defined.The Epicor application uses this to identify the control during actual configuration sessions (invoked fromOrder Entry, Opportunity/Quote Entry, Job Entry, Purchase Order Entry or Demand Entry).

• Start Position - Defines the starting position for the value of this input control in a smart string.

• For example, the first string position (Color) might be start in position 1, end in position 2 and representthe color of the item, while positions 3 and 4 (Metal Type) might represent the type of metal used for theitem.

• In this case, when defining the Color string position, you would specify that it starts in position 1; if definingthe next string position (Metal Type), you would specify that it starts in position 3.

• End Position - Defines the ending position for the value of this input control in a smart string.

• For example, the first string position (Color) might be start in position 1, end in position 2 and representthe color of the item, while positions 3 and 4 (Metal Type) might represent the type of metal used for theitem.

• In this case, when defining the Color string position, you would specify that it ends in position 2; if definingthe next string position (Metal Type), you would specify that it ends in position 4.

155Epicor ERP | 9.05.702

Implementation Components and CalculationsConfigurator Technical Reference Guide

Page 156: Epicor Configurator

Configuration Listing

Use this program to produce a Configuration Listing of product configuration records. You can specify whichparts and product groups should be included on the report. The following information can be printed on thereport:

• Input detail / page detail parameters and comments. Input parameters can be grouped per page and includeinput name, data type, format, and label information.

• Prompt When and On Leave Rules.

• Part Creation / Smart String parameters and comments.

• Document Rules.

• Structure Rules.

• Order, quote, purchase order or demand order pricing parameters, including general expressions and pricerule details.

• Configuration comment text of all types, including Change Log comments.

Use the Selection sheet to choose the parameters for the report. Use the Filter sheet(s) to select the specificrecords to include on the report. For more information, review the Filters Overview topic.

Epicor ERP | 9.05.702156

Configurator Technical Reference GuideImplementation Components and Calculations

Page 157: Epicor Configurator

Programs and Their Modifiers

Configuration Listing

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > Reports > Configurator Listing

These are the values you can modify for this item:

• Print Comments - Select the check box to print configuration comment text on the report. Clear the checkbox to skip printing of configuration comment text.

• Purchase Pricing - Select the check box to print configuration purchase pricing parameters on the report.Clear the check box to skip printing of configuration purchase pricing parameters.

• .Quote Pricing - Select the check box to print configuration quote pricing parameters on the report. Clearthe check box to skip printing of configuration quote pricing parameters.

• Order Pricing - Select the check box to print configuration order pricing parameters on the report. Clear thecheck box to skip printing of configuration order pricing parameters.

• New Page per Final Assembly - Select this check box if a new page should be started after each printoutof a final assembly.

• Print Document Rules - Select the check box to print document rule parameters on the report. Clear thecheck box to skip printing of document rule parameters

• Print Structure Rules - Select the check box to print structure rule parameters on the report. Clear the checkbox to skip printing of structure rule parameters.

157Epicor ERP | 9.05.702

Implementation Components and CalculationsConfigurator Technical Reference Guide

Page 158: Epicor Configurator

• Print Inputs - Select the check box to print the input parameters defined for each configuration. Clear thecheck box to skip printing of the input parameters defined for each configuration.

• New Page per Page - Select this check box if a page break should occur for each configuration input pageprinted on the report. Clear the check box to skip use of a page break for each configuration input page.

• Print Smart String - Select the check box to print Smart String parameters defined for each configuration.Clear the check box to skip printing of Smart String parameters defined for each configuration.

• Print On Leave - Select the check box to print On Leave parameters defined for each configuration. Clearthe check box to skip printing of On Leave parameters defined for each configuration.

• Print Page Information - Select the check box to print input page detail parameters defined for eachconfiguration. Clear the check box to skip printing of input page detail parameters defined for eachconfiguration.

• Print Part Creation - Select the check box to print part creation parameters defined for each configuration.Clear the check box to skip printing of part creation parameters defined for each configuration.

• Print Prompt When - Select the check box to print Prompt When parameters defined for each configuration.Clear the check box to skip printing of Prompt When parameters defined for each configuration.

• Print Method Rules - Select the check box to print method rule parameters on the report. Clear the checkbox to skip printing of method rule parameters.

Logic/Algorithms

None

Import / Export Configuration

Use the Import / Export Configuration selection on the Actions menu to export a defined configuration toanother database using the Export Configuration program, and import a defined configuration from anotherdatabase.

• These functions allow you to develop and test a product configuration in one database (for example, a trainingor test database) before easily copying and deploying it to a live database. Configurations can be "copied"across companies or across databases.

• Each program provides great flexibility in specifying exactly which types of records associated with the selectedconfiguration (input rules, pricing, part creation parameters) should be imported or exported.

Epicor ERP | 9.05.702158

Configurator Technical Reference GuideImplementation Components and Calculations

Page 159: Epicor Configurator

• The Import Configuration program also allows you to specify if the company ID associated with the importedconfiguration records should be automatically updated, and if the configuration should be approved onceimported.

Exporting Configurations

Use the Export Configuration selection to generate an XML file containing information for the currentconfiguration (part and revision number) that is open in the Configurator Designer for export to another databaseor company. Note that the target company cannot import a configuration unless you first create a configurationXML file by running the Export Configuration program in your database. This program provides great flexibilityin specifying exactly which types of records associated with the selected configuration should be exported. Youcan selectively export the following types of configuration records:

• Inputs, including page details, dynamic lists, and Prompt When and Keep When rules (both at the page andinput detail level).

• Part creation and Smart String parameters

• Order, quote, purchase order or demand order pricing parameters

• Structure, Document and Method rules

• Configuration comment text

Once you specify the name and location of the export file being created, it is submitted to the Task Agent as aprocess when you click Export.

• When the Task Agent runs the export process, it creates an XML file in the selected directory using the filename specified in Filename field and the parameters specified in each of the fields in this sheet.

• This includes all information stored in the PCnn (Product Configuration) tables that is necessary to restore theconfiguration on another database or system.

• It also includes information about the schema level at which the export file was produced, but excludes productconfiguration "version" (history) tables.

Tip If you wish to just export the user interface portion of the configuration (that is, just the existing inputsinformation including page details, dynamic lists, and page/input-level Prompt When and Keep When rules)for the currently selected configuration, select the Update Inputs check box, clear the remaining checkboxes, specify the XML file name and storage location in the Filename field, then click Export.

Tip The Export Configuration program does not export underlying records in tables such as the Part Master,Operation Master, Resource Group or Resource Maintenance. The assumption is that these records havealready been defined in the database to which the configuration records themselves are being exported(they are all present in the target database or company).

Programs and Their Modifiers

Configurator Designer

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

159Epicor ERP | 9.05.702

Implementation Components and CalculationsConfigurator Technical Reference Guide

Page 160: Epicor Configurator

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Once the Configurator Designer appears, select the configuration for the part/rev being exported. In the Actionsmenu, select Import/Export Configuration, then select Export Configuration.

These are the values you can modify for this item:

• Comments - Select this check box to export comment text linked to each of the rules being exported. Clearthe check box to skip export of configuration comment text.

• Document Rules - Specifies if Document Rules defined for the configuration (in the Configurator Designer> Input Rules > Document Rules tab) should be exported. Select this check box to export Document Rules forthe configuration. Clear the check box to skip export of configuration Document Rules.

• Export - After specifying what parameters should be exported, click this button to submit the export to theTask Agent as a process. When it runs, it creates an XML file in the selected directory using the file namespecified in Filename field, using the parameters specified in each of the fields in this sheet.

• Export Inputs - Specifies if input parameters (including page details, dynamic lists, and Prompt When andpage/input detail level Keep When rules defined for the configuration in the Configurator Designer > InputRules tab) should be exported. Select this check box to export input rules for the configuration. Clear thecheck box to skip export of configuration input rules.

• Filename - Specify the name of the XML file that contains the configuration information being exported.Click Filename to browse select the directory in which the resulting configuration file is being stored, andspecify the name of the file being created.

• Method Rules - Specifies if Method Rules defined for the configuration (in the Configurator Designer >Method Rules tab) should be exported. Select this check box to export Method Rules for the configuration.Clear the check box to skip export of configuration Method Rules.

• Order Pricing - Specifies if order pricing parameters defined for the configuration (in the Configurator Designer> Input Rules > Pricing > General > Input Pricing > Order > Detail sheet) should be exported. Select this checkbox to export order pricing parameters for the configuration. This also includes the general pricing recordthat is linked to each of the configuration inputs being exported. Clear the check box to skip export ofconfiguration order pricing parameters.

• Part Creation - Specifies if part creation parameters defined for the configuration (in the Configurator Designer> Input Rules > Part > Creation sheet) should be exported. Select this check box to export part creationparameters for the configuration. Clear the check box to skip export of configuration part creation parameters.

• Purchase Order Pricing - Specifies if purchase order pricing parameters defined for the configuration (in theConfigurator Designer > Input Rules > Pricing > General > Input Pricing > Purchase > Detail sheet) should beexported. Select this check box to export purchase order pricing parameters for the configuration. This alsoincludes the general pricing record that is linked to each of the configuration inputs being exported. Clearthe check box to skip export of configuration purchase order pricing parameters.

• Quote Pricing - Specifies if quote pricing parameters defined for the configuration (in the ConfiguratorDesigner > Input Rules > Pricing > General > Input Pricing > Quote > Detail sheet) should be exported. Selectthis check box to export quote pricing parameters for the configuration. This also includes the general pricingrecord that is linked to each of the configuration inputs being exported. Clear the check box to skip exportof configuration quote pricing parameters.

• Smart String - Specifies if Smart String parameters defined for the configuration (in the Configurator Designer> Input Rules > Part > Smart String sheet) should be exported. Select this check box to export Smart Stringparameters for the configuration. Clear the check box to skip export of configuration Smart String parameters.

• Structure Rules - Specifies if Structure Rules defined for the configuration (in the Configurator Designer >Structure Rules tab) should be exported. Select this check box to export Structure Rules for theconfiguration.Clear the check box to skip export of configuration Structure Rules.

Epicor ERP | 9.05.702160

Configurator Technical Reference GuideImplementation Components and Calculations

Page 161: Epicor Configurator

Logic and Algorithms

Depending on what check boxes been selected in the Export Configuration program, the Epicor applicationexports the following tables/records for the active part number and revision number currently selected in theConfigurator Designer:

• Comments - If this check box is selected, the Epicor application exports the following fields:

PcPage.Comments (page comments), PcInputs.Comments (input comments), PcInPrice.Comments (pricingcomments), PcStruct.Comments (structure rule comments), PcStatus.PartComments (part creation comments),and PcStatus.Comments (Configurator Comments). If this check box is cleared, it does not export anyinformation that may exist in this set of files.

• Document Rules - PcDocRules

• Export Inputs - PcPage, PcInputs, and PcDynLst.

• Method Rules - PcMethRules

• Part Creation - Part creation logic is stored in the PcStatus table. If this check box is selected, the followingfields are exported:

PcStatus.CreatePart, PcStatus.SetPartNumOnly, PcStatus.SaveInputValues, PcStatus.CrtPartUsing,PcStatus.InQuoting, PcStatus.InOrderEntry, PcStatus.InJobEntry, PcStatus.AutoCrtPart, PcStatus.NotUnique,and PcStatus.ZeroCost.

• Order Pricing - PcInPrice records with a UsedIn field value equal to Order. It also exports any parent PcPriceHedrecord associated with the PcInPrice record being exported.

• Quote Pricing - PcInPrice records with a UsedIn field value equal to Quote. It also exports any parent PcPriceHedrecord associated with the PcInPrice record being exported.

• Purchase Order Pricing - PcInPrice records with a UsedIn field value equal to PO. It also exports any parentPcPriceHed record associated with the PcInPrice record being exported.

• Smart String - Smart String logic is stored in the Pcstatus table. If this check box is selected, the PcStrComptable and the following fields in the PcStatus table are exported:

PcStatus.StringStyle, PcStatus.Separator, PcStatus.NumberFormat, PcStatus.StartNumber, PcStatus.PrefacePart,PcStatus.CrtCustPart, PcStatus.OrdQuo -Com, PcStatus.JobPick-Com, PcStatus.Ship-Com, PcStatus.Inv-Com,and PcStatus.CrtPartDesc.

• Structure Rules - PcStruct

• Version Information - Associated version tables (PcVerxxxx) are not exported.

Tip The XML configuration files does contain any Excel spreadsheet information used in Excel Lookups,or any Progress OpenEdge Programs called from dynamic lists or Rule Program Calls. The references toExcel Lookups and references to the Progress OpenEdge Programs programs are included in the XML filethough. When the XML file is imported in another company or database, it does not create master filesfor the method of manufacture, referenced ud tables or any other referenced table.

161Epicor ERP | 9.05.702

Implementation Components and CalculationsConfigurator Technical Reference Guide

Page 162: Epicor Configurator

Importing Configurations

Use the Import Configuration selection to import, for the current configuration (part and revision number),the XML configuration file created for the product configuration developed and tested in another database. Onlyunapproved configurations can imported from another company or another database (these are ones for whichthe Approved check box has been cleared in the Configurator Designer > Status sheet). Prior to use of thisprogram, the configuration XML file must have been created by running the Export Configuration program inthe export database.

This program provides great flexibility in specifying exactly which types of records associated with the selectedconfiguration file should be imported. It also allows you to specify if the company ID associated with the importedconfiguration records should be automatically updated, and if the configuration should be approved onceimported. You can selectively update the following types of configuration records:

• Inputs, including page details, dynamic lists, and Prompt When and Keep When rules (both at the page andinput detail level).

• Part creation and Smart String parameters

• Order, quote or purchase order pricing parameters

• Structure, Document and Method rules

• Configuration comment text

Tip The Export Configuration program does not export underlying records in tables such as the Part Master,Operation Master, Resource Group or Resource Maintenance. The assumption is that these records havealready been defined in the database to which the configuration records themselves are being imported(they are all present in the current database or company).

Programs and Their Modifiers

• Approve Configuration - Select the check box to automatically approve the configuration when imported.This sets the Approved check box in the Status check box in the Status page to selected. Clear this check boxto skip approval of the imported configuration.

• Document Rules - Specifies if Document Rules defined for the configuration (in the Configurator Designer> Input Rules > Document Rules tab) in the export company should be imported into the current database.Select this check box to import Document Rules for the configuration. Clear the check box to skip import ofconfiguration Document Rules.

Epicor ERP | 9.05.702162

Configurator Technical Reference GuideImplementation Components and Calculations

Page 163: Epicor Configurator

• Filename - Specify the name of the configuration XML file being imported into your database. Enter thename of the file or click Filename to browse and select the configuration XML file created by the ExportConfiguration program run in the export database.

• Import - After specifying what parameters should be imported, click this button to start the actual configurationimport process. The program imports the configuration XML file specified in the Filename field, based onthe parameters specified in each of the fields in this sheet.

• Method Rules - Specifies if Method Rules defined for the configuration (in the Configurator Designer >Method Rules tab) in the export company should be imported into the current database. Select this checkbox to import Method Rules for the configuration. Clear the check box to skip import of configuration MethodRules.

• Order Pricing - Specifies if order pricing parameters defined for the configuration (in the Configurator Designer> Input Rules > Pricing > General > Input Pricing > Order > Detail sheet) in the export company should beimported into the current database. Select this check box to import order pricing parameters for theconfiguration. This also includes the general pricing record linked to each of the configuration inputs beingimported. Clear the check box to skip import of configuration order pricing parameters.

• Purchase Order Pricing - Specifies if purchase order pricing parameters defined for the configuration (in theConfigurator Designer > Input Rules > Pricing > General > Input Pricing > Purchase > Detail sheet) in theexport company should be imported into the current database. Select this check box to import purchase orderpricing parameters for the configuration. This also includes the general pricing record linked to each of theconfiguration inputs being imported. Clear the check box to skip import of configuration purchase orderpricing parameters.

• Quote Pricing - Specifies if quote pricing parameters defined for the configuration (in the ConfiguratorDesigner > Input Rules > Pricing > General > Input Pricing > Quote > Detail sheet) in the export companyshould be imported into the current database. Select this check box to import quote pricing parameters forthe configuration. This also includes the general pricing record linked to each of the configuration inputsbeing imported.Clear the check box to skip import of configuration quote pricing parameters.

• Replace Company ID - Specifies if the company ID in the imported configuration records should be replacedwith the company ID of the current company. Select the check box to replace the company ID in the importedconfiguration records with the company ID of the current company. Clear the check box to skip replacementof the company ID in the imported configuration records (they will retain the original ID for the exportcompany).

For example, if the configuration is being imported from Company 1 to Company 2, selecting this check boxinstructs the Epicor application to change all occurrences of Company 1 in the imported configuration recordsto Company 2. If the export file was produced in another company and you do not select this check box, anerror message appears and the import is aborted.

• Structure Rules - Specifies if Structure Rules defined for the configuration (in the Configurator Designer >Structure Rules tab) in the export company should be imported into the current database. Select this checkbox to import Structure Rules for the configuration. Clear the check box to skip import of configurationStructure Rules.

• Update Comments - Specifies if configuration comments entered for the configuration (in the Commentssheets throughout the Configurator Designer) in the export company should be imported into the currentdatabase. Select this check box to import comment text linked to each of the rules being imported.Clear thecheck box to skip import of configuration comment text.

• Update Inputs - Specifies if input parameters (including page details, dynamic lists, and Prompt When andpage/input detail level Keep When rules defined for the configuration (in the Configurator Designer > InputRules tab) in the export company should be imported into the current database. Select this check box toimport input rules for the configuration. Clear the check box to skip import of configuration input rules.

• Update Part Creation - Specifies if part creation parameters defined for the configuration (in the ConfiguratorDesigner > Input Rules > Part > Creation sheet) in the export company should be imported into the currentdatabase. Select this check box to import part creation parameters for the configuration. Clear the check boxto skip import of configuration part creation parameters.

163Epicor ERP | 9.05.702

Implementation Components and CalculationsConfigurator Technical Reference Guide

Page 164: Epicor Configurator

• Update Smart String - Specifies if Smart String parameters defined for the configuration (in the ConfiguratorDesigner > Input Rules > Part > Smart String sheet) in the export company should be imported into the currentdatabase. Select this check box to import Smart String parameters for the configuration. Clear the check boxto skip import of configuration Smart String parameters.

Verify Existing Configuration

Use the Verify Existing Configurations program to verify existing PcInValue (Saved Input Values) records againstthe current version of the configuration for a base part number. The base part number is the part number onthe original configurator or the part number on the sales order line, quote line, job header, purchase order lineor demand order line can be replaced by a Smart String part number. The base part number is always stored forthe verification process and the re-configuration process.

The utility checks the input values, and combo box selections made in actual configuration sessions (invokedfrom Order Entry, Opportunity/Quote Entry, Purchase Order Entry, Job Entry or Demand Entry) against Set Field,Keep When, and Pricing rules that have been defined for the configured base part in the Configurator. If anydefinition changes are made to the product configuration (for example, rule syntax has been changed), this utilityapplies those changes to existing configurations, using the input values entered during the original Q&Aconfiguration session.

Several part numbers can be verified at a time; the Filter sheet allows you to specify additional filtering parametersused to select the parts being processed.

• If you do specify filtering parameters, the program only processes the range of part numbers entered into theParts field.

• If you have not specified filtering parameters in the Filter sheet, the program loops through all base configuredparts for which the Save Input Values checkbox has been selected in the Configurator > Part Creation sheet.It then searches for any part numbers that were generated from this base configured part.

• As it finds each part, it loads the saved input values for each configured part number and "reconfigures" thepart using the current configuration settings that have been defined in the Configurator (Designer).

If the Update Saved Input Values and Set Fields in Part Table checkbox has been selected in Verify ExistingConfigurations, it does the following:

• It updates the saved input values that are stored in the database and generates a new method of manufacturefor the generated part number using the resulting values after the "reconfiguration" of the configured part

Epicor ERP | 9.05.702164

Configurator Technical Reference GuideImplementation Components and Calculations

Page 165: Epicor Configurator

• It processes any Set Field rules that may have been defined on the Configurator Designer > Method Rules >Rules > Detail sheet, updating fields on the Part sheet. Set Field rules can only be created for updating of thevalues in the Part table if the Create a new part number for each configuration checkbox has beenselected in the Configurator > Part Creation sheet.

If the Update Saved Input Values and Set Fields in Part Table checkbox has been cleared in Verify ExistingConfigurations, it performs the following checks:

• Using the results of the "reconfigured" data, it compares the data to the saved input values that are storedin the database.

• It verifies if the resulting Smart String is the same as the part number (which was originally created using theresulting smart string), ensures that all required inputs contain values, and determines if each of the values isin a valid format as defined for the input in the Inputs > Detail sheet. It also verifies these values again afterapplying the associated dynamic list and On Leave logic (if any) that has been defined for the configured part.

If the program finds an error that has been made in an input value for a configured part, it places the part onhold and stores message that indicate the nature of the problem are stored in a designated log file.

• When it verifies existing orders, quotes, jobs, purchase orders or demand orders, it makes no changes to theactual quote, order, job, purchase order or demand order. It simply "reconfigures" the part (as describedabove) and compares the existing values on the orders, quotes, job, purchase order or demand order againstwhat the values should be after the Set Field rules have been applied.

• It also verifies the Method of Manufacture on the quote or job. It compares the reconfigured resulting Methodof Manufacture against the existing Method of Manufacture on a quote or job, making sure all Set Field andKeep When rules are correct. If it finds any error, it changes no information on the order, quote, job, purchaseorder or demand order; it simply creates messages in the log stating what varies between the two methodsof manufacture.

Programs and Their Modifiers

Verify Existing Configurations

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Verify Existing Configurations

These are the values you can modify for this item:

• Update Saved Input Values and Set Fields in Part Table - Select this check box to update the Saved InputValues and Set Fields for the part record. This is especially useful in situations in which you have made changesto the base model configuration and wish to mass-update all of the configurations that have been createdfor the base part and have already been assigned to orders, quotes, job orders, purchase orders or demandorders.

• Parts - Specify the range of part numbers for which the validation process is being run. If you do not selectany parts, the default of All Selected is displayed.

• Log File Name - Enter the name of the log file that stores the processed activity.

• Verify Existing Quote Configurations - Select this check box if the Verify Existing Configurations programshould be run on quote records that contain configured parts.

• Verify Existing Order Configurations - Select this check box if the Verify Existing Configurations programshould be run on quote records that contain configured parts.

• Verify Existing Job Configurations - Select this check box if the Verify Existing Configurations programshould be run on job records that contain configured parts.

165Epicor ERP | 9.05.702

Implementation Components and CalculationsConfigurator Technical Reference Guide

Page 166: Epicor Configurator

Logic/Algorithms

Refer to Verify Existing Quote Configurations, Verify Existing Order Configurations and Verify ExistingJob Configurations in the Modifiers section for examples of how this program operates.

Multi-Company Configurator - Setup and Operation

The Multi-Company Configurator functions operate in a business environment in which a Sales company configuresand sells products that are designed and produced in another company (refer to Configurator in aMulti-Company Enterprise for more details).

These companies can be located within the same database, or can be located in separate databases. Setting upan Enterprise configurator in a multi-company environment is more complex than in a single company environment,but the basics remain the same. Refer to Configurator Setup (Single Company) for details on setting up theConfigurator in a single company environment.

Important For extended details on the multi-company set up and operation, refer to the Multi-SiteTechnical Reference Guide in the application help. In particular, refer to the following sections in thatdocument:

• The Multi-Site Concepts section explores, in detail, all possible setup scenarios related to multi-siteprocessing.

• The Multi-Company/Multi-Site Processes - Configurator in a Multi-Company Enterprise sectioncovers, in detail, the setup and operation of a multi-company Configurator.

The following are prerequisites to use of the Configurator in a multi-company environment:

Other Prerequisites

To use the drop shipping and Buy-to-Order functions when processing the product configuration in amulti-company environment, you must perform all setups required for this processing.

Refer to the Buy To Order and Drop Shipments Processing online help topic for more details on setup anduse of these functions

Multi-Company Configuration Processing

To perform multi-company configuration processing, you must perform the following tasks:

1. Create the configuration (non-stock) part in Part Maintenance within the Manufacturing company. Designateit as a global part by selecting the Global check box in the Part Maintenance > Part > Detail sheet. Add anew revision for the configuration part.

2. In the Engineering Workbench, build the Method of Manufacture for the configured part, and then checkit in using the Part Revision Checkin process.

3. Open the configured part and revision using the Part/Rev sheet in the Configurator Designer in theManufacturing company. You then design the configuration in the Manufacturing company. Note thatMethod rules only apply to the manufacturing company, and only one set of is required.

• Design the input pages using the sheets found under the Input Rules tab; Prompt When conditions canbe defined per input page, or per input control.

Epicor ERP | 9.05.702166

Configurator Technical Reference GuideImplementation Components and Calculations

Page 167: Epicor Configurator

• Add document rules that update documents such sales orders, quote, jobs, purchase orders or demandorders. Document rules can be differentiated per company.

• Set pricing options for sales orders, quotes and for inter-company purchase orders generated for thepart when it is configured in a Sales company. Using the Configurator Designer > Input Rules > Pricing> Options sheet, designate If component pricing is used; these components must be defined in thestructure rules.

• Determine which configurable sub components (assemblies and materials) are public to other companies.These sub components will synchronize with the external companies. Define structure rules as necessaryin the sheets found under the Structure Rules tab.

4. Run the Configurator Verification program to verify that all the required global inputs for the sub configuratorsare available. This Epicor application verifies this information per company because some inputs are onlyprompted for in certain companies. It tests whether document rules use input variables that might not beavailable for a particular company, and it reports which variables are missing.

5. After designing the configuration in the Configurator Designer, you mark it as an enterprise configuration,approve it and then deploy it across companies or databases:

• Mark it as an enterprise configuration by selecting the Enterprise Configurator check box on the Statussheet.

• When the configuration is ready for deployment, approve it using the Approve check box.

• When you ready to synchronize the configuration (that is, copy to the other Sales companies), clickSynchronize.

• Now the configurator is ready for sales purposes, and has been deployed to each Sales company.

6. Schedule and run the following programs, located in the System Management Utilities menu (they can alsobe run as continuous background processes).

• If using the SONIC data transfer method, schedule the Enterprise Configurator Server Process andMulti-Company Server Process programs.

• If using the DIRECT data transfer method, schedule the Enterprise Configurator Direct Server Processand Multi-Company Direct Server Process programs.

The Multi-Company Server Process (or Multi-Company Direct Server Process) sends the configured part tothe Sales companies, while the Enterprise Configurator Server Process (or Enterprise Configurator DirectServer Process) synchronizes configuration data between the Manufacturing company and Sales companies(the System Monitor can be used to view transactional activity for these processes).

Now the configurator is ready for sales purposes, having been deployed to each Sales company.

Tip You also use these processes when using the configuration in normal business activities tosynchronize purchase order, sales order and configuration input information between the Manufacturingand Sales companies. Refer to the Processing Flow topic for more information.

7. In the Sales companies, use the Part Maintenance > Integrations > Link Part sheet to link the configurationpart that was synchronized from the Manufacturing company to a part record within the Sales company.The part is considered a Purchased type part in the Sales companies, and a Manufactured type part in theManufacturing company.

• If purchase orders for the configured part are being drop shipped to customers, select the Buy To Orderand Drop Shipment check boxes in the Part > Detail sheet, or for the appropriate plants in the Part >Plants sheet. Refer to the Refer to the Buy To Order and Drop Shipments Processing online helptopic for more details.

167Epicor ERP | 9.05.702

Implementation Components and CalculationsConfigurator Technical Reference Guide

Page 168: Epicor Configurator

• When entering a sales order for the part in the Sales company, the defaults for the Buy To Order andDrop Shipment check boxes in the Order Entry > Line > Detail sheet come from Part Maintenance inthe Sales company.

• When the configurator is synchronized to the Sales companies, the Epicor application sets the Type fieldfor the configured part to Purchased, and automatically selects the Buy To Order check box in PartMaintenance. Optionally, you can manually set the Drop Shipment check box if you would rather dropship the configured items from the Manufacturing company to the end-customer.

8. Using the Configurator Designer in the Manufacturing company, you must add Method rules for theconfigured part using the sheets found under the Method Rules tab. These rules determine whichsubassemblies, materials, operations and operation details are included in the method of manufacture whenthe Manufacturing company builds a configuration that was created when the part configured when anorder or quote is entered in the Sales company.

Input Rules > Pricing > Options

Use the Options sheet to (optionally) enable component pricing for the configuration.

• When enabled, the Epicor application uses existing component pricing defined in Price List Maintenance whenthe product is being configured in Opportunity/Quote Entry, Order Entry, Purchase Order Entry or DemandEntry.

• It also applies the appropriate supplier pricing defined in the Supplier Price List Maintenance program to direct(drop shipment) purchase orders generated for multi-company configurations.

Epicor ERP | 9.05.702168

Configurator Technical Reference GuideImplementation Components and Calculations

Page 169: Epicor Configurator

If you are using the Configurator in a multi-company environment, use the Automatically Mark MethodsGlobal check box as needed to designate if, when this base part is configured in a multi-company environment,the resulting enterprise part should automatically be flagged as Global.

• This allows the associated method of manufacture (generated when saving a configuration after completinga configuration session) to be exported by the Multi-Company Configuration Process.

• This results in the linking of the associated material content to external companies.

Programs and Their Modifiers

Configurator Designer

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

When a configured part has configurable subassemblies, and on an order, quote, purchase order or demandorder pricing configuration, the Epicor application adds the pricing structures from the subassemblies and themain part, resulting in a new unit price for the configured item.

These are the values you can modify for the item:

• Use Component Pricing - Specifies if global component pricing should be used for the entire configuration.If selected, the Epicor application calculates the component price using the resulting bill of material, basedon the price lists of each remaining components after all applicable method rules have been applied. Theresulting component price is the total component price plus any additional input pricing that may have beendefined. Clear this check box to skip use of component pricing. In this scenario, the Epicor application usesthe pricing parameters defined in the Input Rules > Pricing > Order > Detail and Input Rules > Pricing > Quote> Detail sheets to calculate pricing during a configuration session.

• Automatically Mark Methods Global - Designates if, when this base part is configured in a multi-companyenvironment, the resulting enterprise part should automatically be flagged as Global.

• Select the check box if the base part should be flagged as Global when configured in a multi-companyenvironment. This allows the associated method of manufacture (generated when saving a configurationafter completing a configuration session) to be exported by the Multi-Company Configuration Process;this results in the linking of the associated material content to external companies. Once each materialpart has been linked in the external company, component pricing can be used for the enterprise configuratorpart in the external company.

• Clear the check box if each material part contained in the resulting method of manufacture must bemanually marked as Global in Part Maintenance; if not marked as Global, the associated part is notavailable for component pricing in the external companies.

Note This check box should be used only if the Enterprise Configurator check box been selected forthis base part in the Configurator Designer > Status sheet, and the Use Component Pricing checkbox has also been selected in the Pricing > Options sheet). It does not apply to configurations performedin a single-company environment.

169Epicor ERP | 9.05.702

Implementation Components and CalculationsConfigurator Technical Reference Guide

Page 170: Epicor Configurator

Input Rules > Pricing > General > Detail (Multi-Company)

Use the Detail sheet to define order pricing options for this configuration for external companies. It can be usedif the Enterprise Configurator check box has been selected in the Status sheet and you are using multi-companyconfigurator functions.

You build the expression syntax by accessing the Expression Builder from this sheet. This is the expression thatis processed when the configuration is saved. If the result of the expression is true, the Epicor application includesthe order input pricing being defined.

Programs and Their Modifiers

Configurator Designer

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Epicor ERP | 9.05.702170

Configurator Technical Reference GuideImplementation Components and Calculations

Page 171: Epicor Configurator

Part Maintenance

The Configurator Designer sheet can also be accessed from the Revisions Sheet in Part Maintenance. Refer toAssemblies and Subassemblies for details on how to launch Part Maintenance from the Main Menu.

These are the values you can modify for the item:

• Company - Specifies the external company for which the pricing options are being defined for theconfiguration. If you are defining pricing options for the configuration for a specific company, select thecompany. The name of the selected company appears next to this field. The pricing options defined in thissheet are only synchronized with the selected company. Leave the field blank if the pricing options are beingdefined for the configuration for all external company databases. If no company is selected, the the pricingoptions are applied to all companies.

• Company Name - Displays the name of the external company in which the document rule is being synchronizedand executed. All Companies displays in this field if no specific company has been selected in the Companyfield.

• Edit - Click Edit to launch the Expression Builder as needed to specify the syntax associated with the pricingoption being defined for the configuration. Refer to the Configurator Technical Reference Guide for detailedinformation on how to use the Expression Builder to define rules syntax.

• General Expression - Specifies the general expression that should be processed when the configuration issaved. Select an existing expression previously defined in the Expression Builder. After you have launched theExpression Builder and have defined the associated pricing option expression, or have selected an existinggeneral expression, this field displays the specified syntax. This is the expression that is processed when theconfiguration is saved. If the result of the expression is true, the Epicor application includes the order inputpricing being defined. The field is for display only.

171Epicor ERP | 9.05.702

Implementation Components and CalculationsConfigurator Technical Reference Guide

Page 172: Epicor Configurator

Structure Rules > Definition / Rules (Multi-Company)

Use the sheets under the Structure Rules tab to specify structure rules for the configured part being defined. Thistab and accompanying sheets can only be accessed if the Enterprise Configurator check box has been selectedfor the configured part in the Status sheet.

• Structure rules are required to build the structure of the configurable subcomponents. This structure is necessaryto determine which other configurators must be present in the Sales company to collect all the required inputsfor the Manufacturing company. The structure rules only contain configurable subassemblies and configurablematerials.

• When configuring a part in the Sales company, the Epicor application automatically processes structure rulesafter leaving the last page of the current configuration input page in an actual configuration session.

After specifying structure rule detail in the Configurator Designer > Structure Rules > Rules > Detail sheet, usethe Refresh Structure Definitions selection on the Actions menu to build structure definition records that area compilation of any subassembly configured parts defined in the parent configuration BOM. You use this functionwhen the Configurator is being used in a multi-company environment. When configuring a part within a Salescompany, if a structure definition exists, it displays an input page for the sub assembly configured part. Whenthe configuration is synchronized with the Sales companies, the BOM is not exported with the configuration.

Epicor ERP | 9.05.702172

Configurator Technical Reference GuideImplementation Components and Calculations

Page 173: Epicor Configurator

Programs and Their Modifiers

Configurator Designer

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Part Maintenance

The Configurator Designer sheet can also be accessed from the Revisions sheet in Part Maintenance. Refer toAssemblies and Subassemblies for details on how to launch Part Maintenance from the Main Menu.

From the File menu, click New, then click New Structure Rule to access the Method Rules > Rule sheet todefine the method rule for the selected item.These are the values you can modify:

• Assembly - Displays the parent assembly where the subassembly configured part is located in the parentconfiguration BOM. The field is for display only.

• Configured Part - Displays the subassembly configured part and revision that apper when configuring theparent part within the Sales company. This field is for display only.

• Generated Rule Tag - Displays the generated rule tag (if any) of the sub configured part. This rule tag is thesame as appears on the expanded Method tree. This field is for display only.

• Label - Specifies an optional label used to identify purpose of the sub configurator. It is useful for identifyinga configurator that may be listed multiple times in the structure rule list.

• Material - Displays the material sequence that appears under the parent assembly and operation parentassembly where the subassembly configured part is located in the parent configuration BOM. The field is fordisplay only.

• Operation - Displays the operation that appears under the parent assembly and operation parent assemblywhere the subassembly configured part is located in the parent configuration BOM. The field is for displayonly.

173Epicor ERP | 9.05.702

Implementation Components and CalculationsConfigurator Technical Reference Guide

Page 174: Epicor Configurator

Use the Rules > Detail sheet to define structure rules for a specific input. Structure rules can be created for eachstructure definition to simulate the method rules that are defined on the subassembly configured part.

When configuring a part in a Sales company, the structure rules are processed after leaving the last page of thecurrent configuration input page. If a Keep When structure rule type is defined, and the resulting value of theKeep When condition is false, the lower level configuration input page does not display.

These are the values you can modify:

• Edit - Click Edit to launch the Expression Builder to define the Calculation, Set Field or Program Call rulesyntax associated with the structure rule. Refer to the Configurator Technical Reference Guide for detailedinformation on how to use the Expression Builder to define rules syntax.

• Expression - After you have launched the Expression Builder and have defined the associated the Calculation,Set Field or Program Call rule, this field displays the rules syntax. The field is for display only.

• Rule Type - After you have launched the Expression Builder and have defined the associated the Calculation,Keep When or Program Call rule, this field displays the rule type that was selected when the structure rulewas created.

• Sequence - Specifies the sequence in which the structure rule should be processed when the configurationto which it is being applied is saved. For example, if you are defining multiple structure rules that are beingapplied for a specific external company, you can assign a free-form sequence number (for example, 10) thatdenotes when a specific rule is being applied. The Epicor application processes rules with lower sequencenumbers before it processes those with higher sequence numbers. The higher on the list (and the lower thesequence number), the sooner it is invoked. This is important if the results of one rule affect another rule.

Epicor ERP | 9.05.702174

Configurator Technical Reference GuideImplementation Components and Calculations

Page 175: Epicor Configurator

Creating Subconfigurator Part Swaps in a Multi-Company Configurator Environment

In a multi-company enterprise configuration environment, the Set Part Number expression can be used whendefining structure rules in a Sales company. They can be defined to perform part number "swaps"; this worksin a manner similar to how Set Field method rules perform similar part number swaps for subassembly configuredparts in a single company environments.

When structure rules are processed during an actual Configuration session in the Sales company, the Epicorapplication determines if a Set Part Number structure rule function has been defined for the subassembly. It thenswaps out the 'dummy' part number from the structure definition with an actual configured part; this is theactual part number that is displayed when the part is configured in the external Sales company.

Manufacturing Company

For example, when a top level configured part (that contains subassembly configured parts) is configured in theManufacturing company, the Epicor application uses the Method of Manufacture (MOM) defined in the EngineeringWorkbench to determine what subassembly configured parts need to be displayed. It also processes any applicablemethod rules defined in the Configurator Designer, and applies the associated Keep When and Set Field rules(among others) to the determine the actual material content of the configured item being manufactured.

• In this environment, when this configured part is defined as an Enterprise Configurator part (by selecting theEnterprise Configurator checkbox on the Configurator Designer > Status sheet), it designates that the partcan also be configured in an external Sales company.

Note Subassembly configured parts must also be defined as enterprise configurator parts.

• Since the Method of Manufacture (MOM) and method rules defined in the Manufacturing company are notexported to the external Sales company, the Epicor application cannot determine if any configuredsubassemblies needs to be displayed when the part is actually configured in the Sales company.

• Hence, the Sales company must use structure definitions to determine the subassembly configured parts thatneed to be displayed. The Epicor application must then process these structure rules to properly process anddetermine placeholder functionality.

In order to do this, once you have designated the configured part (and its associated subassembly configuredparts) as an enterprise configurator in the Manufacturing company, you must run the Refresh StructureDefinitions selection on the Configurator Designer > Actions menu. This is only used when designing aconfigurator that is going to be used in external sales companies (enterprise configurator).

Refresh Structure Definitions identifies and defines a list of subassembly configured parts that need to be displayedduring the configuration session in the Sales companies. It processes through all levels of the configuration,determines all the subassembly configured parts that were previously defined in Engineering Workbench andcreate structure definitions. Structure rules must be then created (in the Configurator Designer > Structure Rulessheet) against the structure definitions for each subassembly configured part.

• You do this by selecting the structure definitions for the desired subassembly configurations in the Tree viewin the Configurator Designer > Structure Rules sheet.

• Once a structure definition has been selected, the New Structure Rule option is available in the toolbar. Youthen the select Set Part Number option in the Expression Builder to create a rules that swaps out theplaceholder part number and displays a different subassembly configured part. These structure rules are similarKeep When and Set Field method rules defined in a single-company configurator environment to determinewhat subassembly configured parts should be displayed.

• Once the structure definitions have been generated and corresponding structure rules have been defined inthe Manufacturing company, they are exported to external Sales companies using the Enterprise ConfiguratorSync or Enterprise Configurator Direct processes.

Sales Company

175Epicor ERP | 9.05.702

Implementation Components and CalculationsConfigurator Technical Reference Guide

Page 176: Epicor Configurator

When imported structure rules are processed during an actual Configuration session in the Sales company, theEpicor application determines if a structure rule (containing a Set Part Number expression) has been definedfor a subassembly and it processes the rule expression. If the conditions of the rule are satisfied, the Epicorapplication replaces the placeholder subassembly part number with the part number specified in the rule expression;this is the actual part number that is displayed when the part is configured in the external Sales company.

Enterprise Configurator Server Process / Enterprise Configurator Direct Server Process

If you are using the SONIC data transfer method for multi-company processing, use the Enterprise ConfiguratorServer Process to synchronize configuration data between multiple companies in a single database, or companieslocated in external databases. This window is valuable for sending and receiving Inter-Company POs and partinformation from one to another

Note If you are using the DIRECT data transfer method for multi-company processing, you must use theEnterprise Configurator Direct Server Process in place of the Enterprise Configurator Server Process forthese updates.

These processes synchronize configuration data between a Manufacturing company and Sales companies (theSystem Monitor can be used to view transactional activity for these processes).

• When you run the companion Multi-Company Server Process (or Multi-Company Direct Server Process), itsends the configured part to the Sales companies.

• Depending on the data transfer method (DIRECT or SONIC) being used, these process "pairs" need to berun to properly synchronize purchase order, sales order and configuration input information between theManufacturing and Sales companies.

• To establish regular transfer of data, select the Recurring checkbox, and then attach the Enterprise ConfiguratorServer Process or Enterprise Configurator Direct Server Process to the Startup Task Schedule option. Fromthis point forward, as of the next restarting of the application server, the selected process automaticallytransfers the multi-company configuration records as needed.

Both processes automatically synchronize the standard ud (user defined) tables associated with a configured part.However, they do not automatically synchronize non-standard key fields used for lookup for the configurator (inmost cases ud tables but also Excel sheets and sometimes customer records and part records. Even if they weresynchronized, they may be mapped, which complicates usage of lookups and external ABL programs.

• To resolve this issue, you can use Configurator Control Data to define CFG Control Data table records; it is auser-defined table specifically designed for use with the Configurator Designer. It is similar to the standardUD tables but contains several user-defined Key fields and a link to the configurator (company, part numberand revision number) and a configurator type code defined in Configurator Type Maintenance.

Epicor ERP | 9.05.702176

Configurator Technical Reference GuideImplementation Components and Calculations

Page 177: Epicor Configurator

• This allows you to define additional data (stored outside of the standard product configuration tables) thatshould also be automatically synchronized when running the Enterprise Configuration Server Process.

Note The Epicor application does not export manufacturing (method) rules or the method of manufactureat the time of configurator synchronization from Manufacturing companies to Sales companies. By separatingthe manufacturing rules and the Method of Manufacture from the other rules, synchronization of themethod of manufacture for a configured part is not required between the Manufacturing company andSales companies. This allows you to protect proprietary product information from potential distribution tounwanted parties.

For a description of all available sheets and fields, refer to the Application Help.

Menu Path

Navigate to this program from the Main Menu:

• System Management > Utilities > Enterprise Configurator Server Process

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Programs and Their Modifiers

Enterprise Configurator Server Process

Navigate to this program from the Main Menu:

• System Management > Utilities > Enterprise Configurator Server Process

These are the values you can modify for this item:

• Continuous Processing - Select this check box if the transfer of information should always be running.

• Continuous Processing Delay - Specifies the number of minutes between which transfers should occur.

• Log Filename - Specifies the name of the file that lists transferred data activity. Enter the filename and path,or click Enter the filename and path, or click Log Filename to select an existing file.

177Epicor ERP | 9.05.702

Implementation Components and CalculationsConfigurator Technical Reference Guide

Page 178: Epicor Configurator

The Enterprise Configurator Server Process automatically synchronizes the standard ud (user defined) tablesassociated with a configured part. However, it does not automatically synchronize non-standard key fields usedfor lookup for the configurator (in most cases ud tables but also Excel sheets and sometimes customer recordsand part records. Even if they were synchronized, they they may be mapped, which complicates usage of lookupsand external 4GL programs.

To resolve this issue, you can use the Configurator Control Data program to define CFG Control Data tablerecords; it is a user-defined table specifically designed for use with the Configurator.

• It is similar to the standard UD tables but contains several user -defined Key fields and a link to the configurator(company, part number and revision number) and a configurator type code defined in the Configurator TypeMaintenance program.

• This allows you to define additional data (stored outside of the standard product configuration tables) thatshould also be automatically synchronized when running the Enterprise Configuration Server Process.

Configurator Control Data

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > Setup > Configurator Control Data

These are the values you can modify for this item:

• Configurator - Specifies the configured part number for which the CFG Control Data record is being defined.Enter the part number or click Configurator to access the Search window to select the configured partnumber.

• Configurator Type - Specifies the configurator type for which the CFG Control Data record is being defined.Click Type to access the Search window to select the configurator type, as defined in the Configurator TypeMaintenance program.

• Description- Describes the purpose of the control data record.

• Key 1 - Specifies the first user-defined index field for this control data record.

• Key 2 - Specifies the second user-defined index field for this control data record.

• Key 3 - Specifies the third user-defined index field for this control data record.

Epicor ERP | 9.05.702178

Configurator Technical Reference GuideImplementation Components and Calculations

Page 179: Epicor Configurator

• Key 4 - Specifies the fourth user-defined index field for this control data record.

• Key 5 - Specifies the fifth user-defined index field for this control data record.

• Key 6 - Specifies the sixth user-defined index field for this control data record.

• Key 7 - Specifies the seventh user-defined index field for this control data record.

Creating Subconfigurator Part Swaps in a Multi-Company Configurator Environment

In a multi-company enterprise configuration environment, the Set Part Number expression can be used whendefining structure rules in a Sales company. They can be defined to perform part number "swaps"; this worksin a manner similar to how Set Field method rules perform similar part number swaps for subassembly configuredparts in a single company environments.

When structure rules are processed during an actual Configuration session in the Sales company, the Epicorapplication determines if a Set Part Number structure rule function has been defined for the subassembly. It thenswaps out the 'dummy' part number from the structure definition with an actual configured part; this is theactual part number that is displayed when the part is configured in the external Sales company.

Manufacturing Company

For example, when a top level configured part (that contains subassembly configured parts) is configured in theManufacturing company, the Epicor application uses the Method of Manufacture (MOM) defined in the EngineeringWorkbench to determine what subassembly configured parts need to be displayed. It also processes any applicablemethod rules defined in the Configurator Designer, and applies the associated Keep When and Set Field rules(among others) to the determine the actual material content of the configured item being manufactured.

• In this environment, when this configured part is defined as an Enterprise Configurator part (by selecting theEnterprise Configurator checkbox on the Configurator Designer > Status sheet), it designates that the partcan also be configured in an external Sales company.

Note Subassembly configured parts must also be defined as enterprise configurator parts.

• Since the Method of Manufacture (MOM) and method rules defined in the Manufacturing company are notexported to the external Sales company, the Epicor application cannot determine if any configuredsubassemblies needs to be displayed when the part is actually configured in the Sales company.

• Hence, the Sales company must use structure definitions to determine the subassembly configured parts thatneed to be displayed. The Epicor application must then process these structure rules to properly process anddetermine placeholder functionality.

In order to do this, once you have designated the configured part (and its associated subassembly configuredparts) as an enterprise configurator in the Manufacturing company, you must run the Refresh StructureDefinitions selection on the Configurator Designer > Actions menu. This is only used when designing aconfigurator that is going to be used in external sales companies (enterprise configurator).

Refresh Structure Definitions identifies and defines a list of subassembly configured parts that need to be displayedduring the configuration session in the Sales companies. It processes through all levels of the configuration,determines all the subassembly configured parts that were previously defined in Engineering Workbench andcreate structure definitions. Structure rules must be then created (in the Configurator Designer > Structure Rulessheet) against the structure definitions for each subassembly configured part.

• You do this by selecting the structure definitions for the desired subassembly configurations in the Tree viewin the Configurator Designer > Structure Rules sheet.

• Once a structure definition has been selected, the New Structure Rule option is available in the toolbar. Youthen the select Set Part Number option in the Expression Builder to create a rules that swaps out theplaceholder part number and displays a different subassembly configured part. These structure rules are similarKeep When and Set Field method rules defined in a single-company configurator environment to determinewhat subassembly configured parts should be displayed.

179Epicor ERP | 9.05.702

Implementation Components and CalculationsConfigurator Technical Reference Guide

Page 180: Epicor Configurator

• Once the structure definitions have been generated and corresponding structure rules have been defined inthe Manufacturing company, they are exported to external Sales companies using the Enterprise ConfiguratorSync or Enterprise Configurator Direct processes.

Sales Company

When imported structure rules are processed during an actual Configuration session in the Sales company, theEpicor application determines if a structure rule (containing a Set Part Number expression) has been definedfor a subassembly and it processes the rule expression. If the conditions of the rule are satisfied, the Epicorapplication replaces the placeholder subassembly part number with the part number specified in the rule expression;this is the actual part number that is displayed when the part is configured in the external Sales company.

Epicor ERP | 9.05.702180

Configurator Technical Reference GuideImplementation Components and Calculations

Page 181: Epicor Configurator

Modifiers

This section details the various fields and tools you can use to adjust the primary Product Configurator calculations.It contains descriptive information, the program in which the modifier is located, logic/ algorithms and examplesfor many of the modifiers.

Use the modifiers you need to generate Product Configurator results that best reflect your production workflow.Note that this section is not all-inclusive; it only includes fields, check boxes or combo boxes that actually havesome effect on the behavior of the Product Configurator. It does not include data entry fields that simply updateliterals that do not impact of the Product Configurator functionality.

Allow Reconfiguration in PO

Specifies if (for the configurator being designed for this universal base part number) a sales order configurationcreated in Order Entry can be reconfigured on-the-fly in Purchase Order Entry.

Select this check box to allow reconfiguration of these items in Purchase Order Entry. This enables use of theConfigure button in the Purchase Order > Lines > Detail sheet. This allows a user to (optionally) reconfigure aconfiguration created on a sales order when it is formally purchased. When a sales order configuration isreconfiguring in Purchase Order Entry, the Epicor application applies order pricing and Document Rules to thelinked sales order line when the configuration is saved. Conversely, when the configuration is reconfigured inOrder Entry, the Epicor application applies purchase order pricing and Document Rules to the linked purchaseorder line when the configuration is saved.

Clear the check box to prevent a sales order configuration created in Order Entry from being reconfiguredon-the-fly in Purchase Order Entry. This disables use of the Configure button in the Purchase Order > Lines >Detail sheet.

Where Located

The Allow Reconfiguration in PO check box is located on the Configurator Designer > Status sheet.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

181Epicor ERP | 9.05.702

ModifiersConfigurator Technical Reference Guide

Page 182: Epicor Configurator

All Values

Select this checkbox if the pricing logic applies to all possible input values in a configuration input field. Forexample, select the All Values check box if you are applying the same pricing to all memory selections for aMemory combo box, such as 500 MB, 1GB or 2GB.

Leave the check box cleared if you wish to apply different base pricing to different option selections for the samecontrol. Clear this check box if the pricing logic only applies to this corresponding input value and does not applyto all possible input values in the combo box.

Where Located

The All Values check box is located on the Configurator Designer > Input Rules > Pricing > General > InputPricing > Order / Quote / Purchase > Detail sheets.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Example

A combo box input COMBOBOX1 has been added to a configuration input page; the item list for COMBOBOX1is defined as Red,Blue,Green.

The All Values checkbox has been selected in the Input Rules > Pricing > General > Input Pricing > Order > Detailsheet, and 25.00 was specified in the Price For Value field. Regardless of which specific option is selected fromthe COMBOBOX1 input during the configuration session, 25.00 order pricing is always applied for this input.

Approved / Not Approved

The Approved/Not Approved buttons (and associated check box) indicate whether this revision has beenapproved for use.

• Only approved revisions are considered valid revisions in entry programs. Once a revision is approved, youcannot make any maintenance changes to that revision or enter any bill of material or routing information.

• In order to check the revision out to an ECO Group for maintenance, you must clear the Approved checkbox. When this check box is selected, the Not Approved button to the left of the check box appears ashighlighted (the default highlight color is green), and the text on the button changes to Approved.

• When you select the Approved check box, the Revision Change Description sheet appears for entry of anydescriptive comments for this is approval. The Epicor application stores the user ID, system date and commentsevery time you approve a revision.

Epicor ERP | 9.05.702182

Configurator Technical Reference GuideModifiers

Page 183: Epicor Configurator

Once a revision number has been assigned to the part, it can then be checked out to an ECO group. Once checkedout to an ECO group, a Method of Manufacture and the related configuration can then be developed in theEngineering Workbench.

Where Located

The Approved / Not Approved buttons (and associated check box) are located on the Part Maintenance -Revisions sheet.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Logic/Algorithms

When the configuration is approved, it generates external rule programs that are used during the actualconfiguration process and when using the Get Details sheet in Opportunity/Quote Entry and Job Entry. If forsome reason there is an error during the generation of these rule programs, it displays a message stating theerror and it won't allow you to approve the configuration until the problem is resolved.

The logic operates in the following manner:

• Each time a configured part is approved in the Configurator Designer, it assigns a configuration version tothe main configuration record.

• Each time the configuration is unapproved and reapproved in the Configurator Designer, it increments thisvalue by one.

• When a configuration is saved during a configuration session in Opportunity/Quote Entry, Order Entry, PurchaseOrder Entry, Job Entry or Demand Entry, it saves the input values that were entered during the configurationsession with the same configuration version number of the main configuration record for the current basepart.

• If a part is configured on a quote or job, and the configuration for the base configured part is unapprovedand reapproved in the Configurator Designer (prior to using the Get Details sheet in Job Entry orOpportunity/Quote Entry), a message appears stating that the configuration has changed and must bereconfigured. This occurs because the configuration versions no longer match due to the fact that the baseconfiguration changed since the part was configured on the quote or job. It does not allow use of the GetDetails sheet until the part is reconfigured.

183Epicor ERP | 9.05.702

ModifiersConfigurator Technical Reference Guide

Page 184: Epicor Configurator

Automatically create a new part number

Select this check box to automatically create part numbers in the Part file; in this scenario no message is displayedduring a configuration session.

Clear the check box to display the following message in a configuration session asking the user if a new partnumber should be created:

• The following input window appears in the configuration session after clicking Yes:

• Note that this check box is automatically selected when the Save Input Values check box has been selected.Note that this window only appears if the Prompt for a new part number option has been selected in theAvailable Methods field on the Input Rules > Inputs > Detail sheet. If the Use Smart String as the newpart number check box has been selected in the Smart String sheet, this window doesn't display; the Epicorapplication uses Smart String logic to automatically generate the part number.

Where Located

The Automatically create a new part number check box is located on the Configurator Designer > InputRules > Part > Creation sheet.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Logic/Algorithms

When a part number is saved during a configuration session in Quote Entry, Order Entry, Purchase Order EntryJob Entry or Demand Entry, the Epicor application verifies this setting prior to saving the configuration. If thischeckbox is selected, it does not display a message asking the user if a new part number should be created forthe configuration.

Epicor ERP | 9.05.702184

Configurator Technical Reference GuideModifiers

Page 185: Epicor Configurator

Automatically Mark Methods Global

Designates if, when this base part is configured in a multi-company environment, the resulting enterprise partshould automatically be flagged as Global.

• Select the check box if the base part should be flagged as Global when configured in a multi-companyenvironment. This allows the associated method of manufacture (generated when saving a configurationafter completing a configuration session) to be exported by the Multi-Company Configuration Process; thisresults in the linking of the associated material content to external companies. Once each material part hasbeen linked in the external company, component pricing can be used for the enterprise configurator part inthe external company.

• Clear the check box if each material part contained in the resulting method of manufacture must be manuallymarked as Global in Part Maintenance; if not marked as Global, the associated part is not available forcomponent pricing in the external companies.

Note This check box should be used only if the Enterprise Configurator check box been selected forthis base part in the Configurator Designer > Status sheet, and the Use Component Pricing check boxhas also been selected in the Pricing > Options sheet). It does not apply to configurations performed in asingle-company environment.

Where Located

The Automatically Mark Methods Global check box is located on the Product Configurator Designer >Input Rules > Pricing > General > Input Pricing > Order / Quote / Purchase / Demand > Detail sheets).

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Available Methods

Specify the method being used to assign a part number in the configuration session (rather than generate one).

Select one of the following:

• Use Smart String as the new part number - Use the Smart String generated in the configuration sessionas the new part number. Refer to Smart String for more details.

• Prompt for a new part number - During a configuration session, the Epicor application displays a messageprompting for manual entry of a part number for the configuration when the configuration is saved.

185Epicor ERP | 9.05.702

ModifiersConfigurator Technical Reference Guide

Page 186: Epicor Configurator

Where Located

The Available Methods field is located on the Configurator Designer > Input Rules > Part > Creation sheet.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Logic/Algorithms

When saving a configuration during a configuration session in Order Entry, Quote Entry, Purchase Order Entry,Job Entry or Demand Entry, the Epicor application verifies the setting of the Available Methods field in theInput Rules > Part > Creation sheet. If Use Smart String as the new part number has been selected, it processesthe settings defined in the Smart String sheet and generate a new part number using the resulting value.

If Prompt for a new part number has been selected, it displays the New Part dialog box, prompting for entryof the part number that is being used for the configuration.

Available Styles

Specify the basis of how the Smart String should be constructed.

Select one of the following:

• No Smart String Functionality - No Smart String should be created.

• Smart String Constructed from Inputs - The Smart String should be constructed based on inputs enteredby the user when the part is configured during an actual configuration session in Order Entry orOpportunity/Quote Entry. When this option is selected, you must specify the selected inputs on which theSmart String is being based using the selected input.

• Part Number + Order Number/Quote Number + Order/Quote Line - The Smart String should beconstructed from the part number, the number of order or quote, and the line number from the order orquote.

• Part Number + Sequential Number Smart String should be constructed from the part number and asequential number.

Epicor ERP | 9.05.702186

Configurator Technical Reference GuideModifiers

Page 187: Epicor Configurator

Where Located

The Available Styles field is located on the Configurator Designer > Part > Smart String sheet.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Logic/Algorithms

If the Use Smart String as the new part number option has been selected in the Use Available Methodsfield in the Input Rules > Part > Creation sheet, the Epicor application does not allow selection of the No SmartString Functionality option in the Available Styles field. You must properly define the Smart String settingused to generate the part number.

When saving a configuration during a configuration session in Order Entry, Quote Entry or Demand Entry, theEpicor application processes the settings defined in the Smart String sheet and updates any of the fields that mayhave been selected on this tab (for example, Comments, Customer Part Number and remaining fields). If youare using the Smart String to create the part number, it processes the settings and generates a part record andsets the identifier set to the resulting part number.

Available Inputs/Selected Inputs

Click Available Inputs to display a list of available inputs; one or more of the inputs can be selected. Afterclicking OK button is selected, it populates the Selected Inputs field.

The Selected Inputs field establishes which inputs should be included in the Smart String for a configuration ofthe part.

• Use the up and down arrows to establish the order of appearance of inputs.

• Click Format to access the Smart String Display Format window to specify the formatting of the value (enteredfor the selected input during a configuration session) and how it should appear in the resulting Smart String.For example, if you have selected a combo box, you can specify the value that should be displayed in theresulting Smart String when each option is selected for the combo box during the configuration session.

• The formatting information options that appear in the Smart String Display Format window are dependenton the type of selected input, and are similar to those available in the Input Rules > Inputs > Detail sheet.Refer to the Input Rules > Inputs > Detail section for detailed information.

187Epicor ERP | 9.05.702

ModifiersConfigurator Technical Reference Guide

Page 188: Epicor Configurator

Where Located

The Available Inputs / Selected Inputs fields are located on the Configurator Designer > Part > Smart Stringsheet.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Logic/Algorithms

When a configuration is saved during a configuration session in Order Entry, Opportunity/Quote Entry or DemandEntry, the Epicor application verifies if any Smart String logic has been defined. If the Smart String Constructedfrom Inputs option has been selected for the available style specified in the Configurator Designer > Part >Smart String sheet, at least one input must exist in the Selected Inputs field.

The Epicor application constructs the Smart String using the resulting values of the selected inputs.

Example

Two inputs (FILLIN1 and FILLIN2) have been defined for a configured part, FILLIN1 and FILLIN2 have been selectedfrom the Available Inputs list for use in the Selected Inputs field, and a dash (-) has been selected as the separatorcharacter in the Smart String sheet. If a value of ABC is entered into the FILLIN1 field, and XYZ is entered intothe FILLIN2 field during a configuration session, the Epicor application generates a Smart String of ABC-XYZ whensaving the configuration.

Buttons

When defining a radio button set, specify the list of option buttons from which the user can select. The user canselect only one of the radio buttons during a configuration session.

• The correct syntax is Item1,A,Item2,B,Item3,C, where Item1 is the label literal that displays during aconfiguration session, and A is its value. The label is followed by a comma delimiter, then the value of theentry that is actually stored in the configuration itself, with no spaces between the options.

• For example, if you are defining a Color radio set, and the actual color selection is stored in the configurationitself, the radio button selection would be expressed as Red,Red,Blue,Blue,Green,Green.

Epicor ERP | 9.05.702188

Configurator Technical Reference GuideModifiers

Page 189: Epicor Configurator

Where Located

The Buttons field is located on the Configurator Designer > Input Rules > Inputs > Detail sheet.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Example

You have added a radio button (RADIOSET1) to a configuration input control page with the input value settingsequal to Red,R1,Blue,B1,Green,G1 (Red, Blue, and Green display as selectable radio button options on the inputpage). If you select Red during a configuration session, the Epicor application saves the actual value as R1.

If this radio button input is being evaluated in another On Leave expression, the Epicor application evaluates theresulting string value If RADIOSET1 = "R1" then do.....

Character Value / Date Value / Decimal Value / Logical Value

Specify the default input value for the type of global variable input being defined. The Epicor application assignsthis as the default value during an actual configuration session if the global input variable doesn't already havea value (that is, it hasn't already been assigned by a previous configured part during the same configurationsession).

Where Located

The Character Value, Date Value,Logical Value, and Decimal Value fields are located on the Global InputVariables selection that can be accessed from the Actions menu in any of the Configurator Designer sheets.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

189Epicor ERP | 9.05.702

ModifiersConfigurator Technical Reference Guide

Page 190: Epicor Configurator

Logic/Algorithms

During a configuration session, if an "instance" of the global input variable hasn't already been created (thevalue wasn't passed in from another configured part during the same configuration sessions), the Epicor applicationcreates an instance of the variable and assigns the initial default value as defined in the corresponding field. Forexample, if it is a Character type field, the Epicor application places the default value (as defined in the CharacterValue field) into the input control.

It also assigns this initial value to the input that is linked to this global input variable.

Example

A logical global input variable GLOBAL1 has been created, and the Logical Value check box has been selected.You selected this global input variable for a check box input control created on a specific configuration.

When the input page that contains this check box loads during a configuration session, the Epicor applicationcreates the global input variable and assigns the initial value of selected to the value. This also sets the defaultvalue for the checkbox input to selected.

ColumnName / Condition / Value

These modifiers work together and allow you to specify the structure of a BAQ being defined for a dynamic list:

• ColumnName > Specifies the column from the BAQ that should be used for this Search field. This fieldincludes all columns associated with the BAQ selected in the BAQ field in the Dynamic Lists - Detail sheet.Select the BAQ column being used for this Search field..

• Condition - Specifies how the Search input field should evaluate the value that the user enters. The searchresults that appear resolve against the condition value you select from this list. The following selections canbe made.

• Value - Specifies the return value that should be used to limit the search results. This field includes all columnsassociated with the BAQ selected in the BAQ field in the Dynamic Lists > Detail sheet. Select the BAQ columnbeing used for this Search field. A constant value can also be entered into this field..

Where Located

The BAQ field, Display Value field, Input Value field and Run BAQ check boxes are located on the ConfiguratorDesigner > Input Rules > Inputs > Detail > Dynamic Lists > Criteria sheet.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Epicor ERP | 9.05.702190

Configurator Technical Reference GuideModifiers

Page 191: Epicor Configurator

Condition

Enter the expression statement stating the conditions that must be satisfied to display the specified dynamic listin the selected combo box control during a configuration session, or click Edit to use the Expression Builder tobuild the statement. Refer to the Expression Builder / Content Functions and Express Builder Functionssections for detailed information.

Where Located

The Condition field is located on the Configurator Designer > Input Rules > Inputs > Detail > DynamicList sheet.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Logic/Algorithms

During an actual configuration session, if multiple dynamic lists are defined for the same combo box, the Epicorapplication processes the dynamic lists in the order that they are defined.

If it processes a condition that is satisfied (returned true), it populates the combo box with that dynamic list, andskip processing of the remaining dynamic lists. If none of the dynamic list conditions are satisfied, it uses the listitems and initial value that were defined for the combo box itself in the Input Rules > Inputs > Detail sheet.

Example

Two combo box inputs COMBOBOX1 and COMBOBOX2 have been added to a configuration input page; theitem list for COMBOBOX1 is defined as Red,Blue,Green, and the item list for COMBOBOX2 is defined as A,B,C.

A dynamic list has been added to the COMBOBOX2 input with the following condition expression:

COMBOBOX1 matches "Red"

The list items defined for this dynamic list is defined as X,Y,Z. During a configuration session, when the value ofCOMBOBOX1 changes, the Epicor application evaluates the condition created for COMBOBOX2. If the valueselected for COMBOBOX1 is Red, it populates the list items for COMBOBOX2 with X,Y,Z because the dynamiclist condition was satisfied. If a different value was selected for COMBOBOX1 other than Red, the list items forCOMBOBOX2 display as A,B,C. The Epicor application uses the list items defined for the actual input becausethe dynamic list condition wasn't satisfied.

191Epicor ERP | 9.05.702

ModifiersConfigurator Technical Reference Guide

Page 192: Epicor Configurator

Create Alternative Methods

Specifies if alternate method records should be created in other plants when a part is created during configurationin the current plant.

Select the check box if alternate method records should be created in other plants when a configuration part iscreated (when the universal base part is configured during a configuration session in the current plant). Clearthe check box if alternate method records should not be created in other plants when a configuration part iscreated (when the universal base part is configured during a configuration session in the current plant).

Where Located

The Create Alternative Methods check box is located on the Configurator Designer > Input Rules > Part> Creation sheet.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Create a new part number at zero cost

Select this check box to set the cost of the new part at zero. If the check box is cleared, the cost of the base partis used as the cost of the new part.

Where Located

The Create a new part number at zero cost check box is located on the Configurator Designer > InputRules > Part > Creation sheet.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Epicor ERP | 9.05.702192

Configurator Technical Reference GuideModifiers

Page 193: Epicor Configurator

Logic/Algorithms

Normally, when a part is created (using the regular Part Creation logic), the Epicor application assigns the costfields equal to the cost defined for the base configured part. If the Create a new part number at zero costcheck box has been selected, the Epicor application creates the new part but does not assign the cost fields fromthe base configured part.

Example

A base configured part has a sales unit price of 125.00.

When saving a configuration during a configuration session in Order Entry, Opportunity/Quote Entry, PurchaseOrder Entry, Job Entry or Demand Entry, the Epicor application creates a part using the parameters defined inthe Configurator Designer > Input Rules > Part > Creation sheet. When it creates the part record, the Epicorapplication assigns a value of 125.00 as the sales unit price (the same as the base configured part). If the Createa new part number at zero cost has been selected, it creates the part number the same way, but does not assignthe 125.00 value as the sales unit price.

Create a new part number for each configuration

Select this check box to automatically create a part number each time a new configuration is created (saved) forthe base configured part in a configuration session. If this check box is cleared, none of the remaining fields onthe Input Rules > Part > Creation sheet are enabled; their operation is all dependent on selection of this checkbox.

Where Located

The Create a new part number for each configuration field is located on the Configurator Designer >Input Rules > Part > Creation sheet.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Logic/Algorithms

When saving a configuration during a configuration session, the Epicor application verifies if the Create a newpart number for each configuration check box has been selected in the Configurator Designer > Part Creationsheet. If it is, it creates a new part in the Part table based on the settings of the other parameters defined in theInput Rules > Part > Creation sheet.

193Epicor ERP | 9.05.702

ModifiersConfigurator Technical Reference Guide

Page 194: Epicor Configurator

Create a new part number in

The Create a new part number in section of the Configurator Designer > Input Rules > Part > Creation sheetcontains Job Entry, Order Entry, Quote Entry and Demand Entry check boxes that allow you to specify ifentry of a new part number or use of the Smart String is allow when an item is configured in Job Entry, OrderEntry, Demand Entry or Opportunity/Quote Entry.

Refer to Job Entry, Order Entry, Quote Entry and Demand Entry in this section for more details.

Where Located

The Create a new part number in section is located on the Configurator Designer > Input Rules > Part >Creation sheet.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Logic/Algorithms

When saving a configuration during a configuration session in Quote Entry, Order Entry, Purchase Order Entryor Job Entry, the Epicor application verifies that the Create a new part for each configuration check box hasbeen selected. If it is, the Epicor application verifies the settings of the Order Entry, Quote Entry and Job Entrycheck boxes in the Smart String sheet to determine where the part number should be created.

Depending on the program in which the part is currently being configured, the settings of these check boxesdetermine whether the Epicor application creates an actual part record for the current configuration session.

Epicor ERP | 9.05.702194

Configurator Technical Reference GuideModifiers

Page 195: Epicor Configurator

Customer Part Number

Select this check box if the customer part number displayed in Order Entry or Quote Entry should include theresulting Smart String generated during an actual configuration session. Clear the check box if it should notinclude the resulting Smart String.

Where Located

The Customer Part Number check box is located on the Configurator Designer > Part > Smart String sheet.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Logic/Algorithms

When saving a configuration during a configuration session in Quote Entry, Order Entry, Purchase Order Entryor Job Entry, the Epicor application updates the Customer Part Number field with the resulting Smart Stringvalue if the Customer Part Number check box has been selected.

Note that when you use the Get Details sheet in Quote Entry or Job Entry, the Epicor application processes allassociated rules. For example, if you created an associated Set Field rule, the Epicor application overwrites theSmart String value that was previous assigned to the Customer Part Number field when processing the SetField rule, updating the customer part number with the new value.

Create Revision

When the Create a new part number for each configuration check box has been selected, the Epicorapplication creates a new part number when a configuration is saved after completing a Configuration session.

If you select the Create a new part number for each configuration check box for the base part, the Epicorapplication creates a new configured part number (when you save a configuration created for the base part aftercompleting a Configuration session).

• Select this check box if the Epicor application should also create a new part revision record for the newlycreated part when a configuration is saved after completing a Configuration session.

• Clear this check box to skip creation of a new part revision record when a configuration is saved aftercompleting a Configuration session.

195Epicor ERP | 9.05.702

ModifiersConfigurator Technical Reference Guide

Page 196: Epicor Configurator

Where Located

The Create Revision check box is located on the Configurator Designer > Part > Creation sheet.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Default ECO Group

If you select the Prompt For Checkout check box, you can use this field to specify the default value that appearsin the ECO Group field in Part Revision Checkout (invoked when you use the Check Out Revision selection,located under the Revision submenu in the Part Maintenance Actions menu).

Enter the ECO Group number (as defined in ECO Group Maintenance), or click Default ECO Group to accessECO Group Search to browse a listing of valid ECO Group numbers.

Where Located

The Default ECO Group field is located on the Configurator Designer > Part > Creation sheet.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Epicor ERP | 9.05.702196

Configurator Technical Reference GuideModifiers

Page 197: Epicor Configurator

Demand Entry

Select this check box to allow entry of a new part number or use of the Smart String when the item is configuredin Demand Entry. It is automatically selected if the Save Input Values check box, which is also on this sheet,has been selected.

Clear this check box to prevent entry of a new part number or use of the Smart String when the item is configuredin Demand Entry.

Where Located

The Demand Entry check box is located on the Configurator Designer > Part > Creation sheet.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Digit Structure

If the Part Number + Order Number/Quote Number + Order/Quote Line option was selected in the AvailableStyles check box in the Configurator Designer > Digit Structure sheet, specify the structure of the digits for theSmart String.

Select one of the following:

• All Digits (00000999) - The significant digits of the Smart String should be preceded by leading zeroes. Thesignificant digits are comprised of the individual elements sections of the Smart String, in this case theorder/quote number and the order/quote line item.

• Only Significant Digits (999) - The digit structure only includes the significant digits of the Smart String (noleading zeroes).

Where Located

The Digit Structure field is located on the Configurator Designer > Part > Smart String sheet.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

197Epicor ERP | 9.05.702

ModifiersConfigurator Technical Reference Guide

Page 198: Epicor Configurator

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Example

If the All Digits option has been selected in the Digit Structure field in the Configurator Designer > Part >Smart String sheet, and you are configuring the part on Line 1 of Quote 123, the resulting Smart String valuewould be 00000123-001. If the Only Significant Digits option has been selected in the Digit Structure field,the resulting value would be 123-1.

Do not notify the user if new part number already exists

Select this check box to skip display of a notification during a configuration session when a duplicate part alreadyexists. Clear the check box to display a warning message when a duplicate part already exists.

If a part with the new name already exists, the existing part record is not changed.

Where Located

The Do not notify the user if new part number already exists check box is located on the ProductConfigurator - Input Rules - Part - Creation sheet.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Example

If this check box is cleared, when you create a configuration using Smart String logic (and the Create a newpart number for each configuration check box has been selected in the Input Rules > Part > Creation sheet),and then create a second configuration using the same input values (resulting in creation of the same SmartString), a message appears when saving the configuration stating the part number already exists. If the Do notnotify the user if new part number already exists check box has been selected, this message does not appearin this situation.

Epicor ERP | 9.05.702198

Configurator Technical Reference GuideModifiers

Page 199: Epicor Configurator

Do not process On Leave expressions when page loads

When an input page normally loads during a configuration session, the Epicor application normally loads all OnLeave expressions that have been defined for specific controls (fields) in the Inputs > On Leave sheet before dataentry commences.

• Select this check box to skip this normal loading of On Leave expressions when the input page first appearsduring a configuration session. This is useful when you wish to suspend or prevent processing of On Leaveexpressions for the input page during a configuration session.

• When a page loads, it processes all On Leave logic that may exist for the current page. In some situations,you do not want On Leave logic processed until certain previous inputs have been populated by a user. Thischeckbox is useful when you wish to suspend or prevent the initial processing of On Leave expressions forthe input page during configuration sessions; it only suspends the initial processing. When physically leavingspecific controls on the page, it still processes On Leave expressions.

Where Located

The Do not process On Leave expressions when page loads check box is located on the Configurator >Input Rules > Page Detail sheet.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Example

You have created a configuration with two Character input controls (FILLIN1 and FILLIN2). An On Leave statement(IF FILLIN1 = "" THEN FILLIN2 = `Must enter a value in FILLIN1') has been created for the first input (FILLIN1) thatis dependent on entry of a value.

Select the Do not process On Leave expressions when page loads check box if you wish to skip processingof OnLeave logic, and the resulting display of the Must enter a value in FILLIN1 message in FILLIN2 when thepage initially loads. Note that the Epicor application processes this logic when actually leaving the respective inputcontrols, so if FILLIN1 doesn't contain a value, the message (above) displays in FILLIN2 when leaving FILLIN1.

Don't Display Input in Configuration Summary Grid

The Configuration Summary page can be viewed by clicking a Configuration button after configuring a partduring a configuration session in Opportunity/Quote Entry, Order Entry, Purchase Order Entry, Job Entry or

199Epicor ERP | 9.05.702

ModifiersConfigurator Technical Reference Guide

Page 200: Epicor Configurator

Demand Entry. It displays a summary of the inputs and input values (selections) that were entered for theconfiguration.

Select this check box if the input control being defined should not be displayed in the Configuration Summarygrid during the reconfiguration of a part. Clear the check box if the input control being defined should be displayedin the Configuration Summary grid.

Where Located

The Don't Display Input in Configuration Summary Grid check box is located on the Configurator Designer> Input Rules > Inputs > Detail sheet.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

End Position

Defines the ending position for the value of this input control in a smart string.

• For example, the first string position (Color) might be start in position 1, end in position 2 and represent thecolor of the item, while positions 3 and 4 (Metal Type) might represent the type of metal used for the item.

• In this case, when defining the Color string position, you would specify that it ends in position 2; if definingthe next string position (Metal Type), you would specify that it ends in position 4.

Where Located

The End Position field is located on the Configurator Designer > Smart String sheet.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Epicor ERP | 9.05.702200

Configurator Technical Reference GuideModifiers

Page 201: Epicor Configurator

Enterprise Configurator

Select this check box if this is an enterprise configurator. When selected, it also enables the Synchronize checkbox in the Status sheet, and also enables the External Company field in the Input Rules > Pricing > General >Input Pricing > Order / Quote > Detail sheets.

Refer to the Product Configuration in a Multi-Company Enterprise topic in the Configurator Conceptsand Base Components section for more details on operating the Configurator in a multi-company environment.

Clear this check box if this is not an enterprise configurator. If cleared, you cannot access the Structure Rulestab and accompanying sheets to define structure rules for the configured part. You would clear this check boxif the configuration is being used in a single company environment only. A single company environment isone in which the configuration defined and used (the part is being configured and manufactured) in a singlecompany within the same database.

Where Located

The Enterprise Configurator check box is located on the Configurator Designer > Status sheet.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Logic/Algorithms

None

Format (Character)

When you define a Character data type input in the Format field in the Configurator Designer > Input Rules> Inputs > Detail sheet and click Format, the Character Format window appears and allows you to specify theacceptable character format.

In the Character Format window, use the Length field to specify the number of allowable characters that canbe entered into the field during a configuration session, and then select one of the following character formats:

• Any Character - Any character (for example, alphanumeric, punctuation marks) can be entered.

• Letters and Numbers Only - Only alphanumeric characters can be entered.

• Purchased - This option must not be used when defining a configured part.

• Letters Only - Only alpha characters can be entered.

201Epicor ERP | 9.05.702

ModifiersConfigurator Technical Reference Guide

Page 202: Epicor Configurator

• Letters Only and Convert to Caps - Only upper-case alpha characters can be entered.

• Numbers Only - Only numbers can be entered (no alphanumeric characters).

Where Located

The Format field is located on the Configurator Designer > Input Rules > Inputs > Detail sheet.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Example

Add a Character type input control to configuration input page using the Input Rules > Inputs > Detail sheet,and then select the Numbers Only option in the Characters field in the Character Format window that can beaccessed by clicking Format. Notice that the input control does not allow entry of non-numeric characters whenyou select Test Inputs from the Actions menu.

Format (Date)

When you define a Date data type input in the Format field in the Configurator Designer > Input Rules > Inputs> Detail sheet and click Format, the Date Format window appears and allows you to specify the acceptable dateformat.

Select one of the following character formats:

• 99/99/99 - Two-character year, with month, date, and year delimited by slashes (for example, 12/31/08).

• 99 -99-99 - Two-character year, with month, date, and year delimited by dashes (for example, 12-31-08).

• 99.99.99 - Two-character year, with month, date, and year delimited by periods (for example, 12.31.08).

• 99/99/9999 - Four-character year, with month, date, and year delimited by slashes (for example, 12/31/2008).

• 99 -99-9999 - Four-character year, with month, date, and year delimited by dashes (for example, 12-31-2008).

• 99.99.9999 - Four-character year, with month, date, and year delimited by periods (for example, 12.31.2008).

Epicor ERP | 9.05.702202

Configurator Technical Reference GuideModifiers

Page 203: Epicor Configurator

Where Located

The Format field is located on the Configurator Designer > Input Rules > Inputs > Detail sheet.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Example

Add a Date type input control to configuration input page using the Input Rules > Inputs > Detail sheet, and thenselect 99-99-9999 from the Date Format field in the Number Format window that can be accessed by clickingFormat. Notice that it only allows you to enter a date value in the selected format.

Format (Decimal)

When you define a Decimal data type input in the Format field in the Configurator Designer > Input Rules >Inputs > Detail sheet and click Format, the Number Format window appears and allows you to specify theacceptable number format using for the Negatives, Number of Digits, Number of Decimals and ThousandsSeparator fields. Refer to those respective topics in this section for more details.

Generate Method

Normally, when you select the Create a new part number for each configuration check box, and clear theSave Input Values check box, the Epicor application creates a new configured part when you save a configurationafter completing a Configuration session; however, it does not generate an associated method of manufacture.

• If you select the Generate Method check box, the Epicor application also generates a method of manufactureat the same time. It works in a manner similar to the Save Input Values functionality; it processes associatedmethod rules and generates a method of manufacture based on the application of the method rules. However,unlike the Save Input Values functionality, it does not save the input values for later reuse.

• Clear this check box if a method of manufacture should not be created when a new part has been createdwhen completing a Configuration session.

203Epicor ERP | 9.05.702

ModifiersConfigurator Technical Reference Guide

Page 204: Epicor Configurator

Where Located

The Generate Method check box is located on the Configurator Designer > Part > Creation sheet.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Generate Methods Using Resulting Quote Method

By default, the Epicor application generates methods (using the resulting job method) after it has processed anyKeep When and Set Field rules on job records. Correspondingly, this check box allows you to designate if theEpicor application should generate methods (using the resulting quote method) on quote records after it hasprocessed any Keep When and Set Field rules on quote records. Select the check box to perform this task; clearthe check box to skip this.

Due to the fact that the Epicor application doesn't build Set Field rules on header records and the main assemblyrecords (Assembly Sequence 0) into the resulting generated methods, they are processed as normal when usingGet Details commands. At that time, the Epicor application verifies existing configuration information. If youwould like the Epicor application to update fields on QuoteDtl Quote Detail) or main QuoteAsm (Quote Assembly)records, and you also want to update fields on the JobHead (Job Header) or main JobAsmbl (Job Assembly)records, you should defined separate Set Field rules for each situation.

Where Located

The Generate Methods Using Resulting Quote Method check box is located on the Configurator Designer> Part > Creation sheet.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Epicor ERP | 9.05.702204

Configurator Technical Reference GuideModifiers

Page 205: Epicor Configurator

Global

Select this check box if the traits specified for the configuration entry for this field are global for an entire quote,order, job, purchase order or demand order. It would be selected if a trait (like a color) that applies to the firstline is the default for all subsequent lines.

In this scenario, when the user enters a value into this field while configuring the part in Order Entry,Opportunity/Quote Entry, Job Entry, Purchase Order Entry or Demand Entry, the following appears asking if youwould like to apply this value across all detail lines:

Select this check box if the traits specified for the configuration entry for this field are not global for an entirequote or order.

Where Located

The Global check box is located on the Configurator Designer > Input Rules > Inputs > Detail sheet.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Example

If the Global check box has been selected for a configuration page input control, when you enter a value intothat control when configuring a quote line during a configuration session, and then add a second configuredquote line, the value entered into that input control for the first quote line becomes the default value for theinput control for the second quote line. If the value of the input control is changed for the second quote lineduring the current configuration session, a message appears stating the Global Input has changed, and asks ifyou would you like to apply it to all detail lines.

If click Yes, it updates the input value for the input created for the first quote line.

205Epicor ERP | 9.05.702

ModifiersConfigurator Technical Reference Guide

Page 206: Epicor Configurator

Global Input Variable

Select this check box if the value entered in this input control during an actual configuration session should alsoupdate the value of the global input variable selected in the Global Variable Name combo box.

• If selected, the Epicor application passes this value throughout a single configuration session for an order line,quote line, job, purchase order line or demand order line; it is made available to lower subassemblies or partsthat are defined in the parent BOM that are also being configured during the same configuration session. Itis useful if you want to express a lower-level input in terms of a top-level input or another lower-level input.

• If a configured part is added as a subassembly of another configured part, this check box allows "passingdown" of the input value of a top-level configuration for use in the configuration of the lower-levelconfiguration. It can also be used to pass a value throughout the entire configuration, or between twolower-level subassemblies. For example, a global input variable doesn't necessarily have to be assigned at thetop-level; it could simply be selected and used on two subassembly configured parts, and the values could bepassed between the two subassemblies themselves.

• The input for the top-level configured part displays as a selectable input when creating On Leave, PromptWhen, or Rule expressions on the lower-level configured parts.

• Note that if the same global input variable has also selected in the Global Variable Name checkbox of alower-level configurations input, the Epicor application updates the input (for the corresponding lower-levelconfiguration) with the value that has already been assigned to the global variable from the previous top-levelconfiguration. The value that is assigned to this selected global variable stays consistent throughout a singleconfiguration session.

• If the value is changed on the top-level or a lower-level configured part, the value also changes for any otherconfigured parts for which this same global variable has been selected. This occurs within a single configurationsession for a specific quote line, order line, job, purchase order line or demand order line - this value does notpass across different line items on the same order or quote.

Where Located

The Global Input Variable check box is located on the Configurator Designer > Input Rules > Inputs >Detail sheet.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Epicor ERP | 9.05.702206

Configurator Technical Reference GuideModifiers

Page 207: Epicor Configurator

Logic/Algorithms

During an actual configuration session, the Epicor application verifies if the Global Input Variable check boxhas been selected for any input control. If it is, it then determines the selected global variable input from theassociated Global Variable Name combo box.

You have selected the Global Input Variable check box in order to link a global input variable name to an inputcontrol in the Configurator Designer > Input Rules > Inputs > Detail sheet.

Global Variable Name

If the Global Input Variable check box was selected, specify the corresponding global input variable that theEpicor application updates when the value of this input control is changed during a single configuration session.The selections that display are those that have been defined using the Global Input Variables selection on theActions menu.

• It only displays selections that have the same data type as the current input. For example, if the current inputcontrol is a Logical input, only logical global input variables selections are displayed.

• If a global input variable was defined that has the same name as one of the inputs for the current configuration,it does not display as one of the selections in this field (it does not allow duplicate input name and globalvariable names for the same configured part).

• Refer the Global Input Variables topic for more details.

Where Located

The Global Variable Name combo box is located on the Configurator Designer > Input Rules > Inputs >Detail sheet.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

207Epicor ERP | 9.05.702

ModifiersConfigurator Technical Reference Guide

Page 208: Epicor Configurator

Input Name

Specifies the name of the input field (for example, Color, Metal Type, Engine Size) being defined. The Epicorapplication uses this to identify the control during actual configuration sessions in Order Entry, Opportunity/QuoteEntry, Purchase Order Entry, Job Entry or Demand Entry.

Where Located

The Input Name field is located on the Configurator Designer - Smart String sheet.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Initial Value

The entry in the Initial Value field (or check box) is dependent on the type of input control being defined:

• For a Browser field input control, enter the default URL (if any) for the field (for example, http://epicor.com).This is an optional field; leave it blank if you do not want a default value to display in this field during anactual configuration session.

• For a Character or Editor field input control, enter the default value for the field (for example, ABC). This isan optional field; leave it blank if you do not want a default value to display in this field during an actualconfiguration session.

• For a Check Box input control, select the Initial Value check box if the default value for the check box controlbeing added to the input page should be selected (that is, by default, the check box appears as selected).Leave it blank if you do not want a default value to display in the check box during an actual configurationsession. The check box is cleared by default.

• For a Combo Box input control, specify the default option selection (if any) (for example, Green). This is anoptional field; leave it blank if you do not want a default option selection to display in this combo box duringan actual configuration session. The initial value entered into this field must be one of the list items that werespecified in the List Items field.

• For a Date field input control, enter the default value (if any) for the field (for example, 12 -31-2008). This isan optional field; leave it blank if you do not want a default value to display in this field during an actualconfiguration session.

• For a Decimal field input control, enter the default value (if any) for the field (for example, 1.2). This is anoptional field; leave it blank if you do not want a default value to display in this field during an actualconfiguration session.

Epicor ERP | 9.05.702208

Configurator Technical Reference GuideModifiers

Page 209: Epicor Configurator

• For a Radio Set input control, enter the default value (if any) for the radio set (which option button shouldbe selected as a default). This is an optional field; leave it blank if you do not want a default value to displayin this field during an actual configuration session.

Where Located

The Initial Value field (check box) is located on the Configurator Designer > Input Rules > Inputs > Detailsheet.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Input Name (Global Input Variables)

Enter the name of the global input variable as it should appear when displayed as a selectable option in theGlobal Variable Name combo box in the Input Rules > Inputs > Detail sheet.

• Be aware when naming the global input variable selections so that they do not have the same names as inputcontrols themselves. For example, if an input control being used for a configured part is called Size, do notuse it as the name for any of global variable selections. When using the Global Variable Name combo box,the Epicor application prevents selection of a global input variable with the same name as a control beingused for the same configured part.

• Note that the global input variables you create in this program aren't linked to a specific part or revision - youcreate the selections as part of an all-inclusive list that can be shared by many configured parts or revisions.It may be advisable to use a naming convention that clearly differentiates global input variable names fromthe names of input controls themselves.

Where Located

The Input Name field is located on the Global Input Variables selection that can be accessed from the Actionsmenu in the Configurator Designer.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

209Epicor ERP | 9.05.702

ModifiersConfigurator Technical Reference Guide

Page 210: Epicor Configurator

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Invisible

Select this check box if the control being defined should not be displayed on the input page during a configurationsession. Clear the check box if the control being defined should be display on the input page during a configurationsession, and in the designer itself.

Where Located

The Invisible check box is located on the Configurator Designer > Input Rules > Inputs > Detail sheet.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Invoice Comments

Select this check box if the invoice comments on sales orders should be updated with the resulting Smart Stringgenerated during an actual configuration session.

Where Located

The Invoice Comments check box is located on the Configurator Designer > Part > Smart String sheet.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Epicor ERP | 9.05.702210

Configurator Technical Reference GuideModifiers

Page 211: Epicor Configurator

Logic/Algorithms

When saving a configuration during a configuration session in Order Entry or Opportunity/Quote Entry and theInvoice Comments check box has been selected in the Configurator Designer > Part > Smart String sheet, theEpicor application updates the Invoice Comments field on the sales order with the resulting Smart String value.

Job Entry

Select this check box to allow entry of a new part number or use of the Smart String when the item is configuredin Job Entry. It is automatically selected if the Save Input Values check box, which is also on this sheet, has beenselected.

Clear this check box to prevent entry of a new part number or use of the Smart String when the item is configuredin Job Entry.

Where Located

The Job Entry check box is located on the Configurator Designer > Input Rules > Part > Creation sheet.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Logic/Algorithms

If Create a new part number for each new configuration check box has been selected in Input Rules > Part> Creation sheet, the Epicor application only creates a new part number when saving the configuration (duringan actual configuration session in Job Entry) if the Job Entry checkbox has also been selected. If the Job Entrycheck box cleared, the Epicor application saves the configuration but does not create a new part record in thePart table.

211Epicor ERP | 9.05.702

ModifiersConfigurator Technical Reference Guide

Page 212: Epicor Configurator

Job/Pick List Comments

Select this check box if the pick list comments on sales orders, and the job comments on quotes should be updatedwith the resulting Smart String generated during an actual configuration session.

Where Located

The Job/Pick List Comments check box is located on the Configurator Designer > Part > Smart String sheet.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Logic/Algorithms

When saving a configuration during a configuration session in Order Entry or Opportunity/Quote Entry and theJob/Pick List Comments check box has been selected in the Configurator Designer > Part > Smart String sheet,the Epicor application updates the Pick List Comments field on the sales order, or the job comments on thequote, with the resulting Smart String value.

List Items (Inputs > Detail)

When defining a combo box input control in the Configurator Designer > Input Rules > Inputs > Detail sheet,use the List Items field to enter the list of fixed options that can be selected from the combo box during aconfiguration session; each option must be separated by a comma delimiter with no spaces between the options.

• For example, if you are defining a Color combo box, enter Red,Blue,Green.

• To create different sets of options that are dynamic (that is, they display when certain conditions are satisfied),use the Dynamic Lists sheet to specify the condition expressions and processing criteria. Unlike standard combo-boxes that offer a fixed set of choices, dynamic lists present choices based on conditions established in theExpression Builder. Refer to Input Rules > Inputs > Detail > Dynamic Lists > Detail for more details.

Epicor ERP | 9.05.702212

Configurator Technical Reference GuideModifiers

Page 213: Epicor Configurator

Where Located

The List Items field is located on the Configurator Designer > Input Rules > Inputs > Detail sheet.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

List Items (Inputs - Detail - Dynamic Lists)

Enter the list of fixed options that display in the combo box during a configuration session when the conditionsof the expressions statement have been satisfied; each option must be separated by a comma delimiter with nospaces between the options. For example, if you are defining a dynamic list with memory chip selections, enter500MB DDR2, 1GB DDR2, 500MB DDR2.

If you are using a program that passes in inputs or values from an external list or file to populate the dynamiclist, this field can be left blank.

Where Located

The List Items field is located on the Configurator Designer > Input Rules > Inputs > Detail > DynamicLists > Detail sheet.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

213Epicor ERP | 9.05.702

ModifiersConfigurator Technical Reference Guide

Page 214: Epicor Configurator

Minimum, Maximum (Date)

When defining a Data type input control in the Configurator Designer > Input Rules > Inputs > Detail sheet, usethe Minimum and Maximum to specify a range of valid dates that can be entered into the field when the partis being configured in Order Entry, Opportunity/Quote Entry, Purchase Order Entry, Job Entry or Demand Entry.

• For example, enter 12 -01-2008 into the Minimum field and 12-31-08 into the Maximum field if you allowonly allow entry of dates within the range from 12-01-2008 to 12-31-2008.

• These are optional fields; leave them blank if the dates entered during the actual configuration session donot have to fall within a specified date range.

Where Located

The Minimum and Maximum fields are located on the Configurator Designer > Input Rules > Inputs >Detail sheet.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Minimum, Maximum, Increment (Decimal)

When defining a Decimal data type input control in the Configurator Designer > Input Rules > Inputs > Detailsheet, use the Minimum, Maximum and Increment fields to specify the acceptable starting and ending rangeof valid numeric responses, and an increment value.

• For example, enter 5 into the Minimum field, 50 into the Maximum field, and 5 into the Increment fieldif you allow entry of values from 5 to 50, at increments of 5 (into the numeric field being defined) during anactual configuration session.

• These are optional fields; leave them blank if the numeric values entered during the actual configurationsession do not have to fall within a specified numeric value range.

Epicor ERP | 9.05.702214

Configurator Technical Reference GuideModifiers

Page 215: Epicor Configurator

Where Located

The Minimum, Maximum and Increment fields are located on the Configurator Designer > Input Rules >Inputs > Detail sheet.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Multiplier

Select the operator used to calculate the pricing for the specified control, using the base pricing (specified in thePrice For Value field), and expression statements that you create in the field that follows. To create expressionstatement syntax, click Edit to use the Expression Builder to build the statement.

Refer to the Expression Builder / Content Functions and Express Builder Functions sections for detailedinformation. Select one of the following operators:

• Price plus - Adds the base price to the result of the expression statement.

• Price minus - Subtracts the base price from the result of the expression statement.

• Price multiplied by - Multiplies the base price by the result of the expression statement.

• Price divided by - Divides the base price by the result of the expression statement.

• <Unused> - No operator being used (default).

Where Located

The Multiplier field is located on the Configurator Designer > Input Rules > Pricing > General > InputPricing > Order / Quote / Purchase / Demand > Detail sheets.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

215Epicor ERP | 9.05.702

ModifiersConfigurator Technical Reference Guide

Page 216: Epicor Configurator

Logic/Algorithms

When saving a configuration, the Epicor application takes all values that were entered in each input during theactual configuration sessions, and processes inputs/values for which order/quote/purchase order/demand orderpricing parameters have been defined in the Configurator Designer > Order / Quote / Purchase / Demand > Detailsheets. If a multiplier was specified for a specific order, quote, purchase order or demand order price, it takesthe resulting price calculated for the quote/order/purchase order/demand order input price and applies themultiplier to this value.

Negatives

Specify how the Decimal field should use negative signs by doing one of the following:

• Select Allow Positive Numbers Only to prevent entry of negative numbers.

• Select Leading Sign on Negative Numbers Only to allow entry of negative numbers with a sign ( -) in frontof the number.

• Select Trailing Sign on Negative Numbers Only to allow entry of negative numbers with a sign ( -) thattrails the number.

Where Located

The Negatives field is located on Number Format Window that can be accessed by clicking Format whenspecifying the format for Decimal data type inputs in the Format field in the Configurator Designer > InputsDetail sheet.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Example

Add a Decimal type input control to configuration input page using the Input Rules > Inputs > Detail sheet, andthen select the Allow Positive Numbers Only option in the Negatives field in the Number Format windowthat can be accessed by clicking Format. Notice that the input control does not allow entry of a negative numberwhen you select Test Inputs from the Actions menu.

Epicor ERP | 9.05.702216

Configurator Technical Reference GuideModifiers

Page 217: Epicor Configurator

Number of Decimals

Enter the number of decimal places, after the decimal point, that is allowed in the selected Decimal type field.Note that integers are not an input type themselves, but are simply decimals with zero precision.

In this case, the number of decimals would be set to zero.

Where Located

The Number of Decimals field is located on Number Format Window that can be accessed by clicking Formatwhen specifying the format for Decimal data type inputs in the Format field in the Configurator Designer >Inputs Detail sheet.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Logic/Algorithms

The number of decimals specified in this field determines that the number of decimals that display in the selectedin the input control. It is also the number of decimal places allowed when entering a value into the associatedinput.

Example

Add a Decimal type input control to configuration input page using the Input Rules > Inputs > Detail sheet, andthen enter a value into the Number of Decimals field in the Number Format window that can be accessed by

217Epicor ERP | 9.05.702

ModifiersConfigurator Technical Reference Guide

Page 218: Epicor Configurator

clicking Format. Notice that the input control does not allow entry of a value with a greater number of decimalplaces.

Number of Digits

Specify the number of digits, before the decimal point, that are allowed in the selected Decimal type field.

Where Located

The Number of Digits field is located on Number Format Window that can be accessed by clicking Formatwhen specifying the format for Decimal data type inputs in the Format field in the Configurator Designer >Inputs Detail sheet.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Logic/Algorithms

This logic is the same as in the Number of Decimals field, but the Number of Digits field is used to specifythe number of number of digits to the left of the decimal point.

Example

Refer to the Number of Decimals example above.

Notice that the input control does not allow entry of a value with a greater number of digits to the left of thedecimal point.

Only process dynamic lists with higher tab sequences

Select this check box to only process dynamic lists for controls (combo boxes) that are later in the page, in termsof tab order, than the current field a user is leaving.

• This provides for enhanced performance of the input page during configuration sessions involving highly-complex, large-scale configurations.

• If this checkbox is left cleared, it processes the dynamic list logic for the entire page when leaving a control.

Epicor ERP | 9.05.702218

Configurator Technical Reference GuideModifiers

Page 219: Epicor Configurator

Where Located

The Only process dynamic lists with higher tab sequences check box is located on the Configurator >Page Detail sheet.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Order Entry

Select this check box to allow entry of a new part number or use of the Smart String when the item is configuredin Order Entry. It is automatically selected if the Save Input Values check box, which is also on this sheet, hasbeen selected.

Clear this check box to prevent entry of a new part number or use of the Smart String when the item is configuredin Order Entry.

Where Located

The Order Entry check box is located on the Configurator Designer > Part > Creation sheet.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Logic/Algorithms

If the Create a new part number for each new configuration check box has been selected in Part Creationsheet, the Epicor application only creates a new part number when saving the configuration (during an actualconfiguration session in Order Entry) if the Order Entry checkbox has also been selected. If the Order Entrycheck box cleared, the Epicor application saves the configuration but does not create a new part record in thePart table.

219Epicor ERP | 9.05.702

ModifiersConfigurator Technical Reference Guide

Page 220: Epicor Configurator

Order/Quote Comments

Select this check box if the order comments on sales orders, and quote comments on quotes should be updatedwith the resulting Smart String generated during an actual configuration session.

Where Located

The Order/Quote Comments check box is located on the Configurator Designer > Part > Smart Stringsheet.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Logic/Algorithms

When saving a configuration during a configuration session in Order Entry or Opportunity/Quote Entry and theOrder/Quote Comments check box has been selected in the Configurator Designer > Part > Smart String sheet,the Epicor application updates the Order Comments field on the sales order, or the quote comments on thequote, with the resulting Smart String value.

Packing Slip Comments

Select this check box if the packing slip comments on sales orders should be updated with the resulting SmartString generated during an actual configuration session.

Where Located

The Packing Slip Comments check box is located on the Product Configurator Designer - Part - SmartString sheet.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

Epicor ERP | 9.05.702220

Configurator Technical Reference GuideModifiers

Page 221: Epicor Configurator

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Logic/Algorithms

When saving a configuration during a configuration session in Order Entry or Opportunity/Quote Entry and thePacking Slip Comments check box has been selected in the Configurator Designer > Part > Smart String sheet,the Epicor application updates the Packing Slip Comments field on the sales order with the resulting SmartString value.

Page

Indicates the page number that contains this input control. When you place a new input control on an inputpage using the Design Toolbox, the Epicor application automatically updates this field.

• For example, if the input control was placed on Input Page 2, 2 appears in this field.

• If you wish to move an existing control to another input page, enter the page number into this field. Forexample, if the input control was originally placed on Input Page 2, but you wish to move it to Input Page 3,change the display page number from 2 to 3 in this field.

• The Epicor application then moves the input control to the designated page and displays the change in theTree view.

Where Located

The Page field is located on the Configurator Designer > Input Rules > Detail sheet.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

221Epicor ERP | 9.05.702

ModifiersConfigurator Technical Reference Guide

Page 222: Epicor Configurator

Page Sequence

Select the number of the input page to which the logic should apply. The page sequence is the same numberthat is defined in the Page Number form that can be accessed when New / New Page is selected from the Filemenu.

Once the page number is selected in this form, it cannot be updated on the Page Detail sheet. The page sequenceis similar to the tab order that is defined for inputs. When configuring a part in an actual configuration session,this page sequence is the order in which the pages display to the user when clicking the Next Page or PreviousPage buttons.

Where Located

The Page Sequence field is located on the Configurator Designer > Input Rules > Page Detail sheet.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Page Title

Enter the free-form title for the Input Page being created for this configuration. This title displays in the InputPage during an actual configuration Q&A session in Opportunity/Quote Entry, Order Entry, Purchase Order Entry,Job Entry or Demand Entry.

Where Located

The Page Title field is located on the Configurator Designer > Input Rules > Page Detail sheet.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Epicor ERP | 9.05.702222

Configurator Technical Reference GuideModifiers

Page 223: Epicor Configurator

Logic/Algorithms

None

Part Description

Select this check box if the Smart String generated during an actual configuration session should be the actualpart description on orders, quote lines, job lines, purchase order lines or demand order lines (on the associatedorders, quotes jobs, purchase orders or demand orders). If this check box is selected, the Smart String also becomesthe new part description if new part records are being created during a configuration session.

Clear this check box if the Smart String should not be the actual part description that appears orders, quote lines,job lines, purchase order lines or demand order lines.

Where Located

The Part Description check box is located on the Configurator Designer > Part > Smart String sheet.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Position and Sizing Fields (X, Y, Width and Height)

These fields allow you to establish parameters that control the precise placement and sizing of a control on aconfiguration input page.

• The X and b fields can be used to specify the X and Y coordinates, allowing you to precisely place the controlvertically and horizontally on the input page; they can be used in lieu of using the pointer to drag/drop thecontrol in the Input Page sheet.

• The Width and Height fields allow you to specify, in pixels, the width and height of the control.

• Note that if the width and height for the Character, Decimal or Editor fields are set to zero, those controlsdo not display on the input page being designed. This is very useful for storing data that can be used in rulesor pricing.

223Epicor ERP | 9.05.702

ModifiersConfigurator Technical Reference Guide

Page 224: Epicor Configurator

Where Located

The X, Y, Width and Height fields are located on the Configurator Designer > Input Rules > Inputs > Detailsheet.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Preface w/ Part Number

Select this check box if the Smart String should begin with the part number for the part being configured.

Where Located

The Preface w/Part Number field is located on the Configurator Designer > Part > Smart String sheet.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Price For Value

Enter the starting base price amount that should apply when the specified value is selected in the designatedinput (or for all values if the All Values check box has been selected) during a configuration session.

• For example, enter 50.00 if the base price for the 500MB memory should be set at 50.00 when that optionis selected during a configuration session.

• If you select an operator in the Multiplier field, the Epicor application applies the selected operator and theexpression statement syntax you define (if any) to the base price to calculate pricing for the selected inputcontrol.

Epicor ERP | 9.05.702224

Configurator Technical Reference GuideModifiers

Page 225: Epicor Configurator

Where Located

The Price for Value field is located on the Configurator Designer > Pricing > General > Order / Quote /Purchase / Demand > Detail sheets).

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Process dynamic lists before On Leave expressions for this page

During a normal configuration session, On Leave expressions are first evaluated before dynamic list conditionsfor a combo box control. Selecting this check box designates that dynamic list conditions should be evaluatedand processed before On Leave expressions for all combo box controls on the input page.

Clear this check box designates if dynamic list conditions should be evaluated and processed before On Leaveexpressions for all combo box controls on the input page.

Where Located

The Process dynamic lists before On Leave expressions for this page field is located on the ConfiguratorDesigner > Input Rules > Page Detail sheet.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Process Input On Leave expressions if page is skipped

If the Skip page if all inputs are disabled or invisble check box has been selected, select this check box ifany On Leave expressions that have been defined for controls on the input page should still be processed even

225Epicor ERP | 9.05.702

ModifiersConfigurator Technical Reference Guide

Page 226: Epicor Configurator

if the input page itself is being skipped. Clear this check box if On Leave expressions that have been defined forcontrols on the input page should not be processed if the input page itself is being skipped.

Where Located

The Process Input On Leave expressions if page is skipped field is located on the Configurator Designer> Input Rules > Page Detail sheet.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Prompt For Checkout

Specifies if Part Revision Checkout should automatically display when a configuration is saved after completinga Configuration session. This can be used when the Save Input Values or Create Revision check boxes havebeen selected, and the Epicor application is creating a new part revision record when a configuration is savedduring a Configuration session.

• This check box, when selected, causes Part Revision Checkout to display when a configuration is saved aftercompleting a Configuration session. This allows for check out of the newly created configured part revisionto the Engineering Workbench.

• Clear the check box to skip display of Part Revision Checkout when a configuration is saved after completinga Configuration session

Where Located

The Prompt For Checkout check box is located on the Configurator Designer > Part > Creation sheet.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Epicor ERP | 9.05.702226

Configurator Technical Reference GuideModifiers

Page 227: Epicor Configurator

Prompt For Configuration

Specifies if generation of methods of manufacture in the Engineering Workbench (using the method rules thathave been assigned to this base configured part) should be allowed.

• Select this check box to allow generation of methods of manufacture in the Engineering Workbench usingthe method rules that have been assigned to the based configured part.

For example, if you have created a Configurator for base part A (with 20 attached material parts, 15 operationsand a series of defined rules, including Method rules), then use the Get Details window in the EngineeringWorkbench to get method of manufacture details (associated with the base configured part) when engineeringanother assembly part, the following message is displayed:

• If you click Yes, the Engineering Workbench invokes a Configuration session for the specified base part.This allows you to configure it; when the resulting configuration is saved, the Epicor application processesthe associated method rules, resulting in tailored materials and operations content. This configured materialsand operations detail is then retrieved for engineering of the assembly part.

For example, if the resulting configuration for Part A contains four parts and two operations (after Methodrules have been applied during the Configuration session), only those materials and operation details areretrieved for use in engineering of the assembly part.

• If you click No, the Engineering Workbench does not invoke a Configuration session for the base part. Inthis case, it simply retrieves all materials or operations that have been directly attached to the base configuredpart in the Configurator Designer; this is not the tailored content that would have resulted had aConfiguration session been invoked ( because the associated Method rules have not been applied).

For example, for base part A, the Epicor application retrieves the 20 attached material parts and 15operations originally attached to the base configured part for use in the engineering assembly part.

• Clear this check box to prevent generation of methods of manufacture in the Engineering Workbench usingthe method rules that have been assigned to the based configured part. In this case, the functionality describedabove is not available when you attempt to get details for the base configured part. It does not invoke aConfigurator session in this situation.

Where Located

The Prompt For Configuration check box is located on the Configurator Designer > Status sheet.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

227Epicor ERP | 9.05.702

ModifiersConfigurator Technical Reference Guide

Page 228: Epicor Configurator

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Quote Entry

Select this check box to allow entry of a new part number or use of the Smart String when the item is configuredin Quote Entry. It is automatically selected if the Save Input Values check box, which is also on this sheet, hasbeen selected.

Clear this check box to prevent entry of a new part number or use of the Smart String when the item is configuredin Quote Entry.

Where Located

The Quote Entry check box is located on the Configurator Designer > Part > Creation sheet.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Logic/Algorithms

If the Create a new part number for each new configuration check box has been selected in Part Creationsheet, the Epicor application only creates a new part number when saving the configuration (during an actualconfiguration session in Quote Entry) if the Quote Entry checkbox has also been selected. If the Quote Entrycheck box cleared, the Epicor application saves the configuration but does not create a new part record in thePart table.

Remove Link From Base Configured Part

If you select the Create a new part number for each configuration and the Save Input Values check boxesfor the base part, the Epicor application creates a new part number and generates a method of manufacturewhen a configuration created for the base part is saved after completing a Configuration session (existing

Epicor ERP | 9.05.702228

Configurator Technical Reference GuideModifiers

Page 229: Epicor Configurator

functionality). It automatically links this newly created part number back to the base part number, allowing it tobe reconfigured at any time.

• When you select this check box, the Epicor application removes the link back to the base configured part.When you do this, the newly created part is treated as a standard part and no longer considered areconfigurable part.

• Clear the check box to skip removal of the link back to the based configured part. In this case, the part is stillconsidered a reconfigurable part.

Where Located

The Remove Link From Base Configured Part check box is located on the Configurator Designer > Part >Creation sheet.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Run BAQ / BAQ / Display Value / Input Value

These modifiers work together and allow you to specify if a BAQ should be run for the Dynamic List being definedfor a specified input control (combo box):

• Run BAQ - Select the check box to run a BAQ for the dynamic list being defined. If you select this check box,you must enter values in the BAQ, Display Value and Input Value fields.

• BAQ - If the Run BAQ check box is selected, specify the identification number of the BAQ that is beingprocessed for this dynamic list. Enter the identification number or click BAQ to access the BAQ Search windowto select a BAQ identification number.

• Display Value - If the Run BAQ check box is selected, specify the value being displayed in the drop-downlist for the combo box input.

• Input Value - If the Run BAQ check box is selected, specify the actual working value that the productconfiguration processes and saves in the PcInValue (Input Answers) record.

Where Located

The BAQ field, Display Value field, Input Value field and Run BAQ check boxes are located on the ConfiguratorDesigner > Input Rules > Inputs > Detail > Dynamic Lists > Detail sheet.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

229Epicor ERP | 9.05.702

ModifiersConfigurator Technical Reference Guide

Page 230: Epicor Configurator

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Run Program / Program Name / Program Inputs

These modifiers work together and allow you to specify if an external program is being used in conjunction withDynamic List processing for a specified input control (combo box):

• Run Program - Select this check box if you wish to run a program (whose name is specified in the ProgramName field) that passes in inputs or values from an external list or files to populate the dynamic list. Thisallows you to write an external .p program (using Notepad or another editor) that returns a comma separatedlist (.csv file) and an initial value. The following parameters must be followed to properly develop a usefulexternal program:

• The external program must be a text file (with the extension .p), and the first line of the program shouldcontain the syntax {ud\dynlist.i}. The {ud\dynlist.i} syntax is a reference to an "Include" file containing theoutput parameter definitions for the comma separated list and the initial value. You can open this file withNotepad (it is located in the server\ud folder)

• A comma delimited list (.csv file) is a list of strings which are separated by commas. Each string is an itemthat can be selected in the combo box. The items in the comma separated list are both the display field,and the value the field that is stored in that database when the user has selected the item. When creatingthe accompanying comma separated list, make sure there are no space around the commas. Each characterbetween the commas is part of the string that is used in expressions and Keep When rules. Spaces arealso very difficult to locate.

• Input parameters can be added to .p program by adding the values in comma separated list into theProgram Inputs field. These values can be strings (surrounded by double quotes), numeric values, decimalvalues, logical values or date values. The values can either be hard -coded or can be input fields used inthe configuration. You have to to add corresponding code In the .p file to process the input parameters.For instance, if you want to pass the Color field to the .p file, then you have to place the following line ofcode to the file: Define input parameter ipColor As Character no-undo. The name ipColor can bereplaced by any other name. Character (for string), Decimal, Integer, Date and Logical are valid parametertypes.

• Example:

/* GetUDTable01.p : get Ud01 records*/

{ud\dynlist.i}

Define Input Parameter ipModel As Character No-Undo.

Define Input Parameter ipType As Character No-Undo.

Define Input Parameter ipSize As Character No-Undo.

For Each UD01 where UD01.Company = Cur-Comp

And UD01.Key1 = ipmodel

And UD01.Key2 = ipType

And UD01.Key3 = ipSize no-lock:

ASSIGN oplistitems = oplistitems + UD01.ShortChar01 + ",".

Epicor ERP | 9.05.702230

Configurator Technical Reference GuideModifiers

Page 231: Epicor Configurator

End.

• Program Name - Enter the name of the program (if any) used to generate the dynamic list. An example ofa program that could be called is the standard ud\test\GetTableData.p program.

• Examples of .p files supplied by Epicor are cv8400belttype.p, FilelookLabels.p, filelookup.p, Filerowselect.pand GetTableData.p. For a complete listing of Epicor -Supplied utility programs, refer to Appendix:Epicor-Supplied Programs, and see Configurator Designer > Utility Programs in the Online Help.All Dynamic list programs and all referenced files must exist on the AppServer for the lists to be valid.

Tip If the directory structure in which the file is located contains spaces, you must put quotes aroundthe directory and program name (for example, "c:\Program Files\Test.p") in expressions thatreference the program.

• Program Inputs field, enter the inputs expected by the program specified the Program Name field.

Where Located

The Program Name field, Program Inputs field and Run Program check boxes are located on the ProductConfigurator Designer - Input Rules - Inputs - Detail - Dynamic Lists - Detail sheet.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Logic/Algorithms

During an actual configuration session, if multiple dynamic lists are defined for the same combo box, the Epicorapplication processes the dynamic lists in the order that they are defined.

• If it processes a condition that is satisfied (returned true), it populates the combo box with that dynamic list,and none of the remaining dynamic lists are processed.

• If none of the dynamic list conditions are satisfied, it uses the list items and initial value that were defined forthe combo box itself in the Input Rules > Inputs > Detail sheet.

Example

If you have specified that the standard ud\test\GetTableData.p program is being called fro the dynamic list, thefollowing inputs need to be passed to this program:

• Table Name, Key Field, Description Field, Input Name 1, Input Name 2, Where String.

If you use a description field (third parameter), it produces <Key Field>;<Description> in the results that arepopulated in the combo box. Otherwise, it only includes <Key Field> in the results. If you use an input name (1

231Epicor ERP | 9.05.702

ModifiersConfigurator Technical Reference Guide

Page 232: Epicor Configurator

or 2), this inserted into the query string wherever <var1> and <var2> is found and are located in the string(corresponding to the Input Name 1 or 2).

As an example, your input page contains a combo box called SELTYPECODE where the user selects either"Manufactured" or "Purchased", and another combo box called SELECTEDPART that is populated from a dynamiclist, depending on the value that is selected from the SELTYPECODE input. The following information would beentered into the Program Inputs field, and would be passed into the GetTableDate.p program as inputs:

"Part","PartNum","PartDescription",SELTYPECODE,"","Part.TypeCode = <var1>"\

When the dynamic list is processed during the actual configuration session, only parts that have the samePart.TypeCode as the value that is selected in the SELTYPECODE input would display in the SELECTEDPART combobox.

Save Input Values

Select this check box if the input value settings entered in a configuration session should be saved in the recordfor the new configured part and revision number, and should not be linked to a specific quote, order, or job. Itcan then be used "as-is" on any quote, order, job, purchase order or demand order without the need forreconfiguration.

This check box is useful because it allows you to define a collection of pre-configured parts (with saved inputvalues that "travel" with the part) that can be reused at a later time. This ensures that when Get Details sheetis used in Job Entry, the Epicor application uses the correct engineering structure at the time it creates an associatedjob order.

• In fact, if the part is reused at a later time, and an attempt is made to reconfigure the part, the followingwarning message is displayed, preventing this from occurring:

"Part number xx already exists for yy configuration. Input values will not be saved to avoid overwriting theexisting part information."

Note Pricing Rules and Document Rules are still re-processed even though the values were not saved.

• If the design of the base configured part is changed in the Product Configurator Designer, it allows you toreconfigure the part so that it can process any changes that may have been made in the Designer. Whensaving the configuration, the Epicor application displays the following message asking if you want to overwritethe existing configuration:

• If you click Yes, any input values that may have changed during the current configuration process are savedin the database.

Tip The Epicor application stores the saved input values by the part number that it generates when yousave the original configuration using the Part Creation logic. Clicking Yes affects the configuration of allexisting quotes, orders, jobs, purchase orders or demand orders that contain this generated part number.

Epicor ERP | 9.05.702232

Configurator Technical Reference GuideModifiers

Page 233: Epicor Configurator

The part number on all of these transactions all share the same saved input values; if you change it in oneplace, it changes the configuration everywhere the part is used.

• If you select this check box, the Epicor application automatically selects the Quote Entry, Order Entry, JobEntry and Demand Entry check boxes in the Create new parts in section of the Part Creation sheet,and also selects the Automatically Create a new part number check box.

Where Located

The Save Input Values check box is located on the Product Configurator Designer - Part - Creation sheet.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Separator Character

Specify the delimiter character that should separate the individual element sections of the Smart String.

Select one of the following:

• Dash (-) - Delimits the individual elements with a dash.

• Space ( ) - Delimits the individual element sections with a space.

• Slash (/) - Delimits the individual elements of the Smart String with a slash.

• Underscore (__) - Delimits the individual elements with an underscore.

• No Separator - No delimiters separate the individual elements.

Where Located

The Separator Character field is located on the Product Configurator Designer - Part - Smart String sheet.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

233Epicor ERP | 9.05.702

ModifiersConfigurator Technical Reference Guide

Page 234: Epicor Configurator

Example

The Epicor application creates the following Smart Strings for part CV-8400, based on the corresponding settingsin the Separator Characters field in the Smart String sheet:

• Dash - CV-8400-99999999999

• Space - CV-8400 99999999999

• Slash - CV-8400/99999999999

• Underscore - CV-8400_99999999999

• No Separator - CV-840099999999999

Set Part Number Only

Select this check box to generate a part number, but skip creation of a Part record itself. Clear the check box togenerate a part number and create an actual record in the Part table.

The generated part number is assigned to the quote line, order line, job, purchase order or demand order accordingto where the base configured part is being configured.

Where Located

The Set Part Number Only check box is located on the Configurator Designer > Part > Creation sheet.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Logic/Algorithms

When you select the Set Part Number Only check box, the Epicor application processes all parameters specifiedin the Configurator Designer > Part > Creation sheet, displays the newly generated part number for a configuredpart on the order, quote, job, purchase order or demand order but doesn't create a new part record itself in thePart table.

Show Distinct Items

Specify if the Epicor application should only display distinct input option values in the combo box control duringan actual configuration session. In this case, it eliminates any duplicate values and only displays those input

Epicor ERP | 9.05.702234

Configurator Technical Reference GuideModifiers

Page 235: Epicor Configurator

options with unique values. Duplicate input values sometimes occur when the associated list of options has beencreated through a dynamic list, whether calculated from a static list or based on running a program or a BAQ.

Select the check box to only display distinct values in the combo box control during an actual configurationsession. Clear the check box to show all input option values (unique, as well as duplicate values) in the combobox control during an actual configuration session.

Logic/Algorithms

Combo boxes contain a field property called FieldShowDistinct; it can be used in the On Leave code createdfor an configurator input or configurator page to dynamically set the Show Distinct Values check box setting.It is important to note that the FieldShowDistinct field property overrides the default setting in the ConfiguratorDesigner. If you decide to use this, note the following:

1. Using the FieldShowDistinct property together with a BAQ or Run Program dynamic list may cause aperformance impact if FieldShowDistinct is constantly changing the default value. This is because each timethe Show Distinct Values check box value is changed through use of the field property, the Epicorapplication recalculates the list of items in the combo box.

2. It is important to remember that when Show Distinct Values check box is selected (True), it only displaysoptions where the input value and display value are unique. For example, in the following scenario:

DescriptionValue

Letter AA

Letter BB

Letter CC

Letter AA

In this case, it only displays the following values during a configuration session:

DescriptionValue

Letter AA

Letter BB

Letter CC

However, in the following scenario, where some of the option descriptions have no space, the combo boxwill display ALL items in a configuration session, because the combination of the value and description areunique in each case. This applies mostly to BAQ Dynamic lists, in the case when the combo box is populatedfrom a list of items (for example, Item 1,Item 2,Item 3), the value and description are always the same.

DescriptionValue

Letter AA

Letter BB

Letter CC

LetterAA

LetterBB

LetterCC

235Epicor ERP | 9.05.702

ModifiersConfigurator Technical Reference Guide

Page 236: Epicor Configurator

Where Located

The Show Distinct Items check box is located in the Configurator Designer > Input Rules > Inputs > Detailsheet when you place a combo box control on a configurator page.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Single Level Configuration

If a multi-level Method of Manufacture has been defined for the part revision for which the configuration processis being defined, this check box governs the bill of material and operations levels of the indenture for whichmethod rules can be defined. If the check box is selected, you can define method rules at the top-level of indentureonly.

This prevents you from defining method rules for subassemblies. If it is cleared, you can define method rules forall levels of indenture within the Method of Manufacture, including subassemblies.

Where Located

The Single Level Configuration check box is located on the Configurator Designer > Status sheet.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Epicor ERP | 9.05.702236

Configurator Technical Reference GuideModifiers

Page 237: Epicor Configurator

Logic/Algorithms

The Single Level Configuration check box has a profound impact on how you design the configuration for aselected part revision. You can configure a part as single-level to be backward-compatible with existingconfigurations.

Use of this check box is invaluable if you are running an earlier version of the Epicor application that did notsupport multi-level BOMs, and wish to have newly created parts compatible with that version.

Note that if method rules already exist at lower-levels for an indented Method of Manufacture for a part revision,and you attempt to clear the check box, a warning message appears that states that the lower-level method ruleswill be deleted, and asks if you wish to continue. If you click Yes, the Epicor application then deletes alllower-level method rules for the part revision.

Example

Create a multi level BOM for the parent configured part. Clear the Single Level Configuration checkbox in theProduct Configurator Designer > Status sheet.

Notice how the tree structure in the Product Configurator Designer > Method Rules > Rules > Detail sheet expandsto display lower level material and operation when the Single Level Configuration checkbox is cleared. If it isselected, it the tree structure only displays the top-level of the configured part (doesn't branch down intosubassemblies).

Skip page if all inputs are disabled or invisible

Select this check box to process any Prompt When expressions associated with the input page, but skip displayof the input page itself during a configuration session if all inputs are disabled or are invisible (either if designatedas such in the Invisible check box in the Input Rules > Inputs > Detail sheet, or when inputs are dynamicallydisplayed or disabled based on specified rules).

Where Located

The Skip page if all inputs are disabled or invisble check box is located on the Configurator Designer >Input Rules > Page Detail sheet.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

237Epicor ERP | 9.05.702

ModifiersConfigurator Technical Reference Guide

Page 238: Epicor Configurator

Smart String Configuration

In a traditional configuration session, after you click the Configure button in Opportunity/Quote Entry, OrderEntry, Purchase Order Entry, Job Entry, Purchase Order Entry or Demand Entry, the Epicor application directlyaccesses, and sequentially displays each of the configuration input pages you have created for the currentconfigurator in the Configurator Designer. This check box can be used to (optionally) specify if, during an actualconfiguration session, all input values for the configuration can instead be loaded through manual entry of a'smart string' that contains concatenated values, each representing a certain aspect of the configured item.

• When this functionality is enabled, the Epicor application displays a dialog box during the actual configurationsession, prompting you to enter a smart string value. It then attempts to process and load all associatedconfiguration input values from the supplied string.

• To properly process the smart string values, the Epicor application must understand what the starting andending positions are for each of configuration values contained within a typical smart string. For example,the first string position (Color) might be start in position 1, end in position 2 and represent the color of theitem, while positions 3 and 4 (Metal Type) might represent the type of metal used for the item. To definethese positional values, you use the Configurator Designer > Smart String sheet to designate the input name,start position and end position for each of the configuration input values.

Clear the check box to operate the Configurator in the traditional manner and skip use of a smart stringconfiguration (default setting).

Note While similarly named, the Smart String Configuration check box functionality is not related tothe Smart String part functionality defined in the Configurator Designer > Input Rules > Part > Smart Stringsheet.

Where Located

The Smart String Configuration check box is located on the Configurator Designer > Status sheet.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Epicor ERP | 9.05.702238

Configurator Technical Reference GuideModifiers

Page 239: Epicor Configurator

Starting Sequence

If the Part Number + Sequence Number option was selected in Available Styles, specify the starting sequencenumber for the Smart String (for example, 1000). As each Smart String is generated, this sequence numberautomatically increments by one.

Where Located

The Starting Sequence field is located on the Configurator Designer > Part > Smart String sheet.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Start Position

Defines the starting position for the value of this input control in a smart string.

• For example, the first string position (Color) might be start in position 1, end in position 2 and represent thecolor of the item, while positions 3 and 4 (Metal Type) might represent the type of metal used for the item.

• In this case, when defining the Color string position, you would specify that it starts in position 1; if definingthe next string position (Metal Type), you would specify that it starts in position 3.

Where Located

The Start Position field is located on the Configurator Designer > Smart String sheet.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

239Epicor ERP | 9.05.702

ModifiersConfigurator Technical Reference Guide

Page 240: Epicor Configurator

Synchronize

Select the check box to enable synchronization functions for this product configurator. The receiving externalcompanies must have an installed Product Configurator license; however those companies cannot modify theconfigurator.

The Product Configurator Designator only displays information in the Part/Rev and Status sheets in externalcompanies. The Epicor application does not synchronize the Change Log information in external companies.

Note that if this check box is first selected, and then cleared at a later date, the product configurator is automaticallymarked as Unapproved in the external companies.

Where Located

The Synchronize Part Revision Approval check box is located on the Configurator Designer > Status sheet.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Synchronize Revision Approval

Specifies if approval of the associated part revision and inspection plan (if any) should be automatically synchronizedto the approval of the configured part in the Configurator Designer.

Selecting the check box causes the following to occur:

• If you select this check box, and approve or unapprove the configured part in the Configurator Designer (usingthe Approved check box in the Status sheet), the Epicor application automatically approves or unapprovesthe associated part revision in the Part Maintenance > Revisions sheet. If you select this check box, the warningmessage Revision checked out by ECO Group xxx. Do you wish to approve the configuration? appearswhen the configuration status changes and the revision is checked out to an ECO group.

• If you click Yes, you can continue with the part revision status synchronization.

• If you click No, the part revision status is not automatically updated.

• If you select this check box, the Epicor application automatically synchronizes the approval of the associatedinspection plan (if any) to the approval of the configured part in the Configurator Designer (using the Approvedcheck box in the Status sheet). The Epicor application either selects or clears the Approve check box inInspection Plan Maintenance, based on the setting of the Approved check box in the Status sheet.

Epicor ERP | 9.05.702240

Configurator Technical Reference GuideModifiers

Page 241: Epicor Configurator

Clear the check box if approval of the part revision and associated inspection plan should not be automaticallysynchronized to the approval of the configured part in the Configurator Designer. This skips automaticsynchronization of the Approved check box when the part revision or inspection plan is approved.

Note If the Synchronize Revision Approval check box is first selected, and then cleared at a later date,and settings exist that are specific to the enterprise configurator, these settings are removed by the Epicorapplication. A warning message appears prior to deletion of any enterprise configurator-specific settings

Where Located

The Synchronize Part Revision Approval check box is located on the Configurator Designer > Status sheet.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Tab Order

Enter the tab order number that determines the order in which the cursor moves through the input fields whenthe Tab key is used. By default, the tab order number default is the order in which the fields are entered on theinput page.

The higher the number entered into the field indicates that depth into which the field appears in the Tab order.

Where Located

The Tab Order field is located on the Configurator Designer > Input Rules > Inputs > Detail sheet.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

241Epicor ERP | 9.05.702

ModifiersConfigurator Technical Reference Guide

Page 242: Epicor Configurator

Thousands Separator

Select this check box if values with thousands (for example, 12000 or 100000) entered into this number fieldshould be separated with commas (for example 12,000 and 100,000).

Where Located

The Thousands Separator check box is located on Number Format Window that can be accessed by clickingFormat when specifying the format for Decimal data type inputs in the Format field in the Configurator Designer> Input Rules > Inputs > Detail sheet.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Type (Global Input Variables)

Select the data type (Character, Date, Logical or Decimal) for the global input variable. Refer to Inputs > Detailfor more details on each data type.

The Global Variable Name combo box in the Inputs Detail sheet only displays selections that have the samedata type as the current input. For example, if the current input control is a Logical input, only logical global inputvariables selections are displayed.

Where Located

The Type field is located on the Global Input Variables selection that can be accessed from the Actions menuin the Configurator Designer.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Epicor ERP | 9.05.702242

Configurator Technical Reference GuideModifiers

Page 243: Epicor Configurator

Type (Part)

This indicates if you normally purchase or manufacture this part, or sell it as a sales kit. It is also used as selectioncriteria on various reports and searches.

It does not, however, limit how you can use this part record:

• Manufactured - This value indicates that the part is produced by your company. The MRP engine createsjob suggestions against the part record.

• Sales Kit - A sales kit part is not calculated by the MRP engine. The component parts that make up a saleskit, however, will generate both job and purchase suggestions. When all the component part quantities aremanufactured, the sales kit is ready to be assembled. This process, however, is handled outside of the ProductConfigurator.

• Purchased - This option must not be used when defining a configured part.

Where Located

The Type field is located in the Part Maintenance program.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Logic/Algorithms

For use in the Configurator, Manufactured must be selected to identify an item as a configured part.

Update Saved Input Values and Set Fields in Part Table

Select this check box to update the Saved Input Values and Set Fields for the part record. This especially usefulin situations in which you have made changes to the base model configuration and wish to mass-update all ofthe configurations that have been created for the base part and have already been assigned to orders, quotes,job orders, purchase orders or demand orders.

Clear this check box to skip update of the Saved Input Values and Set Fields for the part record.

243Epicor ERP | 9.05.702

ModifiersConfigurator Technical Reference Guide

Page 244: Epicor Configurator

Where Located

The Update Saved Input Values and Set Fields in Part Table check box is located in the Verify ExistingConfigurations program.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Example

A configured part number contains the following configuration parameters:

• Part Creation sheet - The Create a new part number for each configuration and the Save Input Valuescheck boxes have been selected.

• Smart String sheet - The Use Smart String as the new part number option has been selected in theAvailable Methods field. The Smart String Constructed from Inputs option has been selected in theAvailable Styles combo box. The Preface w/ Part Number check box has been selected. A Length inputhas been selected in the Selected Inputs field for use in the Available Inputs field.

In the Rules tab, the Alt node was highlighted and a new Set Field rule was created that updates thePart.PartDescription field with the constant value of ABC. Once the configuration was approved, a new job wascreated in Job Entry for the configured part, and a Method of Manufacturing was created in the Get Detailssheet. The part was then configured, and a value of 13.00 was entered for the configured part. When theconfiguration was saved, this resulted in the creation of a new part in the Part table with a description of ABC.

If the Set Field rule is then changed so that it updates the Part.PartDescription field with the constant value ABCDinstead of ABC, you run the Verify Existing Configuration process and select the Update Saved Input Valuesand Set Fields on Part Table check boxes, it changes the description for the newly created part to a value ofABCD (this occurred because the process applied the new Set Field rule conditions to the existing configuration).

Use Component Pricing

Specifies if global component pricing should be used for the entire configuration. If selected, the Epicor applicationcalculates the component price using the resulting bill of material, based on the price lists of each remainingcomponents after all applicable method rules have been applied.

The resulting component price is the total component price plus any additional input pricing that may have beendefined. Clear this check box to skip use of component pricing. In this scenario, the Epicor application uses thepricing parameters defined in the Input Rules > Pricing > General > Input Pricing > Order > Detail and Input Rules> Pricing > General > Input Pricing > Quote > Detail sheets to calculate pricing during a configuration session.

Epicor ERP | 9.05.702244

Configurator Technical Reference GuideModifiers

Page 245: Epicor Configurator

Where Located

The Use Component Pricing check box is located on the Product Configurator Designer > Input Rules >Pricing > General > Input Pricing > Order / Quote / Purchase / Demand > Detail sheets).

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Logic/Algorithms

The Use Component Pricing check box in this sheet allows you to specify if you would like to use existingcomponent pricing as the product is being configured in Quote Entry or Order Entry.

Often times, components that are part of the method of manufacture for a product are already linked to existingprice lists in the Epicor application, and can also be sold separately on sales orders. If you select this check box,it designates that the standard component price lists that have already been defined in the Price List Maintenanceprogram should be used for pricing as the product is being configured.

Order Pricing

The Epicor application processes component pricing for the configuration in the following manner:

• As a user progresses through the configuration process, it applies the appropriate structure and inputs rules(including document rules) to create a virtual BOM it uses to determine the list of materials for the configuration.If the quotation already has a BOM, it uses that BOM for determining component pricing.

• Price lists depend on quantity breaks to determine the price for a part or a product group item. For eachcomponent, Epicor application finds the appropriate unit price in the price list that is linked to the customer,customer group or the part master, based on the order quantity, and the quantity per parent settings definedin the method of manufacture. It calculates any applicable quantity breaks to determine the actual unitcomponent prices to use.

• It then adds any additional pricing options defined in the Input Pricing > Order > Detail or Input Pricing >Quote > Detail sheets for the configuration to calculate the unit pricing of the configuration. This similar tohow the Epicor application determines component pricing for a sales kit item.

• It multiplies the component prices by the order quantity of the components. It then adds the extended orderprices of each component to calculate a total configurator price. This configurator price is then used in standardpricing options to calculate the order line price.

Quotation Pricing

For quotations, the Epicor application calculates pricing in a similar manner, based on the entries in both theOrder Quantity and Expected Quantity fields.

• The Order Quantity field indicates what the order quantity should be if the quotation is converted to a salesorder at some point.

• The Expected Quantity field is used for estimation purposes; pricing is based on quantity break lines.

245Epicor ERP | 9.05.702

ModifiersConfigurator Technical Reference Guide

Page 246: Epicor Configurator

Quotations are not based on a method of manufacture but instead are based on production details. The Epicorapplication uses these production details to calculate the unit price of each component and the total price foreach price break.

Purchase Order Pricing

The Use Component Pricing check box also applies the appropriate supplier pricing defined in the SupplierPrice List Maintenance program to direct (drop shipment) purchase orders generated for multi-companyconfigurations. It processes purchase order pricing in a manner similar to how the order pricing operates, butapplies the appropriate purchase order pricing based on the quantity breaks specified for the supplier and partnumber in the Supplier Price List Maintenance program.

Use Generated Method When Getting Details

When the Save Input Values check box has been selected for the configuration being defined, the Epicorapplication creates a part and method but it still handles the new part as a configured part, allowing a user toreconfigure it (if the base configured part has changed in the Configurator Designer). When using Get Details inQuote Entry or Job Entry, the Epicor application gets material and labor detail information from the method ofmanufacture defined for the base configured part, rather than from the method of manufacture defined for thebase part.

If you select the Use Generated Method When Getting Details checkbox, it overrides this behavior; whenusing Get Details in Quote Entry or Job Entry, the Epicor application gets material and labor detail informationfrom the generated method of manufacture for the configured part being used, rather than from the methodof manufacture defined for the base part. If you clear this check box, it operates in the normal manner, asdescribed earlier in the previous paragraph.

Where Located

The Use Generated Method When Getting Details check box is located on the Product ConfiguratorDesigner > Part > Creation sheet.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Valid List

When defining a Character data type input control, enter a comma-separated list of valid (allowable) responsesif the user must enter one of a few predetermined values.

For example, enter A,B,C,D if only those values are allowable, valid entries in the field.

Epicor ERP | 9.05.702246

Configurator Technical Reference GuideModifiers

Page 247: Epicor Configurator

Where Located

The Valid List field is located on the Product Configurator Designer > Input Rules > Inputs > Detail sheet.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Value

Enter the input value that is subject to the pricing logic being defined. For example, if you were entering pricinglogic for a Memory selection combo box, you would enter 500MB if that is the option selection that is subjectto the pricing logic.

To apply the same base pricing to all values for a specific input, leave this field blank and select the All Valuescheck box.

Where Located

The Value field is located on the Input Rules > Pricing > General > Input Pricing > Order / Quote / Purchase/ Demand > Detail sheets.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

247Epicor ERP | 9.05.702

ModifiersConfigurator Technical Reference Guide

Page 248: Epicor Configurator

Verify Existing Job Configurations

Select this check box if the Verify Existing Configurations program should be run on job records that containconfigured parts.

Clear this check box to skip running of the Verify Existing Configurations program on job records that containconfigured parts

Where Located

The Verify Existing Job Configurations check box is located in the Verify Existing Configurations program.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Logic/Algorithms

When the Epicor application verifies existing jobs, it makes no changes to the actual job records themselves. Itsimply "reconfigures" the part (as described in the Verify Existing Configurations section) and compares theexisting values on the existing jobs against what the values should be after the Set Field rules have been applied.

It also verifies the Method of Manufacture on the job. It compares the reconfigured resulting Method ofManufacture against the existing Method of Manufacture on a job, making sure all Set Field and Keep Whenrules are correct. If it finds any error, it changes no information on the job; it simply creates messages in the logstating what varies between the two methods of manufacture.

Example

A configured part number contains the following configuration parameters:

• Part Creation sheet - The Create a new part number for each configuration and the Save Input Valuescheck boxes have been selected.

• Smart String sheet - The Use Smart String as the new part number option has been selected in theAvailable Methods field. The Smart String Constructed from Inputs option has been selected in theAvailable Styles combo box. The Preface w/ Part Number check box has been selected. A Length inputhas been selected in the Selected Inputs field for use in the Available Inputs field.

• In the Rules tab, the Alt node was highlighted and a new Set Field rule was created that updates theJobHead.PartDescription field with the constant value of ABC.

Once the configuration was approved, a new job was created in Job Entry for the configured part, and a Methodof Manufacturing was created in the Get Details sheet. The part was then configured in Job Entry, and a valueof 11.00 was entered into the Length field for the configured part. When the configuration was saved, thisresulted in creation of a new part in the Part table with a description of ABC.

Epicor ERP | 9.05.702248

Configurator Technical Reference GuideModifiers

Page 249: Epicor Configurator

If the Set Field rule is then changed so that it updates the JobHead.PartDescription field with the constant valueABCD instead of ABC, you run the Verify Existing Configuration process and select the Verify Existing Jobscheck box, it displays a message in the Verify Log stating that the job created (above) contains an incorrect valuein the PartDescription field after processing the Set Field rules.

Verify Existing Order Configurations

Select this check box if the Verify Existing Configurations program should be run on order records that containconfigured parts. Clear this check box to skip running of the Verify Existing Configurations program on orderrecords that contain configured parts.

Where Located

The Verify Existing Order Configurations check box is located in the Verify Existing Configurations program.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Logic/Algorithms

When the Epicor application verifies existing orders, it makes no changes to the actual order records themselves.It simply "reconfigures" the part (as described in the Verify Existing Configurations section) and comparesthe order price on the existing orders against what the values should be after the order input pricing has beenprocessed.

It calculates the order input pricing and compares the result with the unit price defined on the existing order anddisplays a message in the log if they differ.

Example

A configured part number contains the following configuration parameters:

• Input Rules > Part > Creation sheet - The Create a new part number for each configuration and theSave Input Values check boxes have been selected.

• Input Rules > Part > Smart String sheet - The Use Smart String as the new part number option hasbeen selected in the Available Methods field. The Smart String Constructed from Inputs option has beenselected in the Available Styles combo box. The Preface w/ Part Number check box has been selected. ALength input has been selected in the Selected Inputs field for use in the Available Inputs field.

• Input Rules > Pricing > General > Input Pricing > Order > Detail sheet - Pricing parameters have beenestablished for the Length input. The All Values check box has been selected, and 10.00 has been enteredinto the Price For Value field.

249Epicor ERP | 9.05.702

ModifiersConfigurator Technical Reference Guide

Page 250: Epicor Configurator

The part was then configured in Order Entry, and a value of 12.00 was entered in the Length field for theconfigured part. When the configuration was saved, a unit price of 10.00 returned from the configuration session.

After saving the configuration, the Price for Value field in the Input Rules > Pricing > General > Input Pricing >Order > Detail sheet was changed from 10.00 to 11.00. If you run the Verify Existing Configuration process andselect the Verify Existing Orders check box, it displays a message in the Verify Log stating that the orderconfiguration unit price differs from the unit price on the existing order.

Verify Existing Quote Configurations

Select this check box if the Verify Existing Configurations program should be run on job records that containconfigured parts. Clear this check box to skip running of the Verify Existing Configurations program on job recordsthat contain configured parts.

Where Located

The Verify Existing Quote Configurations check box is located in the Verify Existing Configurationsprogram.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

Logic/Algorithms

When the Epicor application verifies existing jobs, it makes no changes to the actual job records themselves. Itsimply "reconfigures" the part (as described in the Verify Existing Configurations section) and compares theexisting values on the existing quotes against what the values should be after the Set Field rules have been applied.

It also verifies the Method of Manufacture on the quote. It compares the reconfigured resulting Method ofManufacture against the existing Method of Manufacture on a quote, making sure all Set Field and Keep Whenrules are correct. If it finds any error, it changes no information on the quote; it simply creates messages in thelog stating what varies between the two methods of manufacture.

Example

A configured part number contains the following configuration parameters:

• Part Creation sheet - The Create a new part number for each configuration and the Save Input Valuescheck boxes have been selected.

• Smart String sheet - The Use Smart String as the new part number option has been selected in theAvailable Methods field. The Smart String Constructed from Inputs option has been selected in the

Epicor ERP | 9.05.702250

Configurator Technical Reference GuideModifiers

Page 251: Epicor Configurator

Available Styles combo box. The Preface w/ Part Number check box has been selected. A Length inputhas been selected in the Selected Inputs field for use in the Available Inputs field.

• In the Rules tab, the Alt node was highlighted and a new Set Field rule was created that updates theQuoteDtl.LineDesc field with the constant value of ABC.

The part was then configured in Quote Entry clicking the Configure button on the Line > Detail sheet in QuoteEntry, and a value of 10.00 was entered in the Length field for the configured part. When the configuration wassaved, this resulted in the update of the Description field (in the Get Details sheet in Job Entry) with a value ofABC.

If the Set Field rule is then changed so that it updates the QuoteDtl.LineDesc field with the constant value ABCDinstead of ABC, you run the Verify Existing Configuration process and select the Verify Existing Quotes checkbox, it displays a message in the Verify Log stating that the quote created (above) contains an incorrect value inthe LineDesc field (after the Set Field rules have been processed).

Web Input Name

Enter the internal name of this field as used by the Web Configurator. It can be the same entered into the InputName field.

If you accessed the Input Rules > Inputs > Detail sheet after placing the control in the Input Page sheet, this is adisplay-only field (when you place the control on the input page, you can access the Input Detail sheet and changethe input name field. However, once the record has been saved, you are no longer able to change it).

Where Located

The Web Input Name field is located in the Configurator Designer > Input Rules > Inputs > Detail sheet.

Menu Path

Navigate to this program from the Main Menu:

• Sales Management > Configurator Management > General Operations > Configurator Designer

For CRM users, the Main Menu appears as:

• Customer Relationship Management > Configurator Management > General Operations > ConfiguratorDesigner

Important This program is not available in the Epicor Web Access™ interface. You can launch this programfrom an Epicor Smart Client (Windows

®) interface.

251Epicor ERP | 9.05.702

ModifiersConfigurator Technical Reference Guide

Page 252: Epicor Configurator

Expression Builder Functions

This section details expression functions that are used when defining a product configuration On Leave, PromptWhen, Dynamic List or Rule expressions for a part. It contains descriptive information, where the contextfunction can be added, proper syntax, resulting data type, logic/algorithms and examples for each expressionfunction.

Refer to the Expression Builder / Content Functions section of this document for details on how expressionsare entered into the Configurator.

Absolute Value

Using Absolute Value performs the Absolute function on a numeric data type value expression. It returns theabsolute value of a numeric value.

Where Located

The Absolute Value expression function can be added as an On Leave or Rule expression.

Proper Syntax

The Absolute Value expression function auto-populates the following string into the expression string:

Absolute({number})

Resulting Data Type

Numeric

Logic/Algorithms

FILLIN2 = (Absolute(FILLIN1))

Example

Decimal inputs FILLIN1 and FILLIN2 have been added to a configurator input page.

The following On Leave expression is added to FILLIN1, updating the input value of FILLIN2 using the AbsoluteValue expression function:

FILLIN2 = (Absolute(FILLIN1))

If the value -5.00 is entered in the FILLIN1 input, the expression above would be processed when leaving theFILLIN1 input, and the resulting value of 5.00 would be populated in the FILLIN2 input.

Another example of the Absolute Value expression function can also be found in the Expression Functions /Content Functions topic in the Primary Components and Calculations section of this document.

Epicor ERP | 9.05.702252

Configurator Technical Reference GuideExpression Builder Functions

Page 253: Epicor Configurator

Add

Using the Add expression function adds a Numeric type value to another numeric type value, and returns aNumeric type result.

Where Located

The Add expression function can be added as an On Leave or Rule expression.

Proper Syntax

The Add expression function auto-populates the following string into the expression string:

{number} + {number}

Resulting Data Type

Numeric

Logic/Algorithms

FILLIN3 = (FILLIN1 + FILLIN2)

Example

Decimal inputs FILLIN1, FILLIN2 and FILLIN3 have been added to a configurator input page.

The following On Leave expression is added to FILLIN2, updating the input value of FILLIN3 using the Add expressionfunction:

FILLIN3 = (FILLIN1 + FILLIN2)

If the value 25 is entered in the FILLIN1 input, and the value 30 is entered in the FILLIN2 input, the expressionabove would be processed when leaving the FILLIN2 input, and the resulting value of 55 would be populated inthe FILLIN3 input.

Add Days to Date Value

Using the Add Days to Date Value expression function performs the Date function to add the number of daysto a date, producing a date String value result.

Where Located

The Add Days to Date Value expression function can be added as an On Leave or Rule expression.

Proper Syntax

The Add Days to Date Value expression function auto-populates the following string into the expression string:

253Epicor ERP | 9.05.702

Expression Builder FunctionsConfigurator Technical Reference Guide

Page 254: Epicor Configurator

{date} + {number of days}

Resulting Data Type

Date

Logic/Algorithms

FILLIN2 = (FILLIN1 + 5)

Example

Date inputs FILLIN1 and FILLIN2 have been added to a configurator input page.

The following On Leave expression is added to FILLIN1, updating the input value of FILLIN2 using the Add Daysto Date Value expression function:

FILLIN2 = (FILLIN1 + 5)

If the value 12/01/2008 is entered in the FILLIN1 input, the expression above would be processed when leavingthe FILLIN1 input, and the resulting value of 12/06/2008 would be populated in the FILLIN2 input.

Begins

Using the Begins expression function performs the Begins function using the specified string type values andreturns a logical result. It tests a character expression to determine if that expression begins with a second characterexpression.

Where Located

The Begins expression function can be added as an On Leave or Rule expression.

Proper Syntax

The Begins expression function auto-populates the following string into the expression string:

{string} Begins {string}

Resulting Data Type

Logical

Logic/Algorithms

(FILLIN1 Begins "AA")

Epicor ERP | 9.05.702254

Configurator Technical Reference GuideExpression Builder Functions

Page 255: Epicor Configurator

Example

Character inputs FILLIN1 and FILLIN2 have been added to a configurator input page.

The following Prompt When expression is added to the FILLIN2 input using the Begins expression function:

(FILLIN1 Begins "AA")

If the value AA123 is entered in the FILLIN1 input, the expression above would be processed when leaving theFILLIN1 input, the resulting value of the expression would be true, and FILLIN2 would be enabled, allowing theentry of a value. If the value AB123 is entered in the FILLIN1 input, the resulting value of the expression wouldbe false and FILLIN2 would be disabled.

Combine Strings

Using the Combine Strings expression function performs the String function to add a Numeric type value toanother Numeric type value, and return a String type result. The String function converts an expression of anydata type (Date, Logical, Number) to a character value.

Where Located

The Combine Strings expression function can be added as an On Leave or Rule expression.

Proper Syntax

The Combine Strings expression function auto-populates the following string into the expression string:

{string} + {string}

Resulting Data Type

String

Logic/Algorithms

FILLIN3 = (FILLIN1 + FILLIN2)

Example

Character inputs FILLIN1, FILLIN2 and FILLIN3 have been added to a configurator input page.

The following On Leave expression is added to the FILLIN2 input using the Combine Strings expression function:

FILLIN3 = (FILLIN1 + FILLIN2)

If the value ABC is entered in the FILLIN1 input and the value DEF is entered in the FILLIN2 input, the expressionabove would be processed when leaving the FILLIN2 input, and the resulting value of ABCDEF would be populatedin the FILLIN3 input.

255Epicor ERP | 9.05.702

Expression Builder FunctionsConfigurator Technical Reference Guide

Page 256: Epicor Configurator

Convert Date to String

Using Convert Date to String performs the Strings function on the Date type value. Refer to Combine Stringsfor detailed information about the String function.

Where Located

The Convert Date to String expression function can be added as an On Leave or Rule expression.

Proper Syntax

The Convert Date to String expression function auto-populates the following string into the expression string:

String({date})

Resulting Data Type

String

Logic/Algorithms

FILLIN2 = (String(FILLIN1))

Example

Date input FILLIN1 and Character input FILLIN2 have been added to a configurator input page.

The following On Leave expression is added to the FILLIN1 input using the Convert Date to String expressionfunction:

FILLIN2 = (String(FILLIN1))

If the value 12/01/2008 is entered in the FILLIN1 input, the expression above would be processed when leavingthe FILLIN1 input, allowing you to assign the date value to a string data type field. The resulting string value of12/01/2008 would be populated in the FILLIN2 input.

Convert Logical to String

Using Convert Logical to String performs the Strings function on the logical type value. Refer to CombineStrings for detailed information about the String function.

Where Located

The Convert Logical to String expression function can be added as an On Leave or Rule expression.

Proper Syntax

The Convert Logical to String expression function auto-populates the following string into the expression string:

Epicor ERP | 9.05.702256

Configurator Technical Reference GuideExpression Builder Functions

Page 257: Epicor Configurator

String({logical})

Resulting Data Type

String

Logic/Algorithms

FILLIN1 = (String(TOGGLEBOX1))

Example

Check box input TOGGLEBOX1 and Character input FILLIN1 have been added to a configurator input page.

The following On Leave expression is added to the TOGGLEBOX1 input using the Convert Logical to Stringexpression function:

FILLIN1 = (String(TOGGLEBOX1))

If the TOGGLEBOX1 input on the input page is selected, the expression above would be processed, allowing youto assign the logical result to a string data type field. The resulting string value of Yes would be assigned toFILLIN1 if the TOGGLEBOX1 input was selected. If TOGGLEBOX1 is cleared, the string value No would be assignedto the FILLIN1 input.

Convert Number to String

Using Convert Number to String performs the Strings function on the Numeric type value. Refer to CombineStrings for detailed information about the String function.

Where Located

The Convert Number to String expression function can be added as an On Leave or Rule expression.

Proper Syntax

The Convert Number to String expression function auto-populates the following string into the expression string:

String({number})

Resulting Data Type

String

Logic/Algorithms

FILLIN2 = (String(FILLIN1))

257Epicor ERP | 9.05.702

Expression Builder FunctionsConfigurator Technical Reference Guide

Page 258: Epicor Configurator

Example

Decimal input FILLIN1 and Character input FILLIN2 have been added to a configurator input page.

The following On Leave expression is added to the FILLIN1 input using the Convert Number to String expressionfunction:

FILLIN2 = (String(FILLIN1))

If the value 12 is entered in the FILLIN1 input, the expression above would be processed when leaving the FILLIN1input, allowing you to assign the numeric value to a string data type field. The resulting string value of 12 wouldbe populated in the FILLIN2 input.

Convert String to Decimal

Using the Convert String to Decimal expression function performs the Decimal function to add a Numerictype value to another Numeric type value, and returns a Numeric type result. The Decimal function converts anexpression of any data type (String, Logical, Number) to a decimal numeric value.

Where Located

The Convert String to Decimal expression function can be added as an On Leave or Rule expression.

Proper Syntax

The Convert String to Decimal expression function auto-populates the following string into the expression string:

Decimal({string})

Resulting Data Type

Numeric

Logic/Algorithms

FILLIN2 = (Decimal(FILLIN1))

Example

Character input FILLIN1 and Decimal input FILLIN2 have been added to a configurator input page.

The following On Leave expression is added to the FILLIN1 input using the Convert String to Decimal expressionfunction:

FILLIN2 = (Decimal(FILLIN1))

If the string value 12.34 is entered in the FILLIN1 input, the expression above would be processed when leavingthe FILLIN1 input, allowing you to assign the string value to a numeric data type field. The resulting decimal valueof 12.34 would be populated in the FILLIN2 input.

Epicor ERP | 9.05.702258

Configurator Technical Reference GuideExpression Builder Functions

Page 259: Epicor Configurator

Convert String to Integer

Using the Convert String to Integer expression function performs the Integer function to add a Numeric typevalue to another Numeric type value, and returns a Numeric type result.

The Integer function converts an expression of any data type (String, Logical, Number) to a 32-bit Integer datatype value, rounding that value if necessary.

Where Located

The Convert String to Integer expression function can be added as an On Leave or Rule expression.

Proper Syntax

The Convert String to Integer expression function auto-populates the following string into the expression string:

Integer({string})

Resulting Data Type

Numeric

Logic/Algorithms

FILLIN2 = (Integer(FILLIN1))

Example

Character input FILLIN1 and Decimal input FILLIN2 have been added to a configurator input page.

The following On Leave expression is added to the FILLIN1 input using the Convert String to Integer expressionfunction:

FILLIN2 = (Integer(FILLIN1))

If the string value 12.34 is entered in the FILLIN1 input, the expression above would be processed when leavingthe FILLIN1 input, allowing you to assign the string value to a numeric data type field. The resulting roundedinteger value of 12 would be populated in the FILLIN2 input.

259Epicor ERP | 9.05.702

Expression Builder FunctionsConfigurator Technical Reference Guide

Page 260: Epicor Configurator

Cosecant

Using the Cosecant expression function calculates the Cosecant of a Numeric type value.

Where Located

The Cosecant expression function can be added as an On Leave or Rule expression.

Proper Syntax

The Cosecant expression function auto-populates the following string into the expression string:

CSC({number})

Resulting Data Type

Numeric

Logic/Algorithms

FILLIN2 = (CSC(FILLIN1))

Example

Decimal inputs FILLIN1 and FILLIN2 have been added to a configurator input page.

The following On Leave expression is added to FILLIN1, updating the input value of FILLIN2 using the Cosecantexpression function:

FILLIN2 = (CSC(FILLIN1))

If the value 5 is entered in the FILLIN1 input, the expression above would be processed when leaving the FILLIN1input, and the resulting value of 11.47371 would be populated in the FILLIN2 input. Only use this in situationswhere you know that FILLIN1 cannot be zero.

Cosine

Using the Cosine expression function calculates the Cosine of a Numeric type value.

Where Located

The Cosine expression function can be added as an On Leave or Rule expression.

Proper Syntax

The Cosine expression function auto-populates the following string into the expression string:

COS({number})

Epicor ERP | 9.05.702260

Configurator Technical Reference GuideExpression Builder Functions

Page 261: Epicor Configurator

Resulting Data Type

Numeric

Logic/Algorithms

FILLIN2 = (COS(FILLIN1))

Example

Decimal inputs FILLIN1 and FILLIN2 have been added to a configurator input page.

The following On Leave expression is added to FILLIN1, updating the input value of FILLIN2 using the Cosineexpression function:

FILLIN2 = (COS(FILLIN1))

If the value 5 is entered in the FILLIN1 input, the expression above would be processed when leaving the FILLIN1input, and the resulting value of 0.99619 would be populated in the FILLIN2 input.

Cotangent

Using the Cotangent expression function calculates the Cotangent of a Numeric type value.

Where Located

The Cotangent expression function can be added as an On Leave or Rule expression.

Proper Syntax

The Cotangent expression function auto-populates the following string into the expression string:

COT({number})

Resulting Data Type

Numeric

Logic/Algorithms

FILLIN2 = (COT(FILLIN1))

Example

Decimal inputs FILLIN1 and FILLIN2 have been added to a configurator input page.

The following On Leave expression is added to FILLIN1, updating the input value of FILLIN2 using the Cotangentexpression function:

FILLIN2 = (COT(FILLIN1))

261Epicor ERP | 9.05.702

Expression Builder FunctionsConfigurator Technical Reference Guide

Page 262: Epicor Configurator

If the value 5 is entered in the FILLIN1 input, the expression above would be processed when leaving the FILLIN1input, and the resulting value of 11.43005 would be populated in the FILLIN2 input.

Cube Root

Using the Cube Root expression function performs the Exp function on the Numeric type value and calculatesthe Cube Root of a Numeric type value.

Where Located

The Cube Root expression function can be added as an On Leave or Rule expression.

Proper Syntax

The Cube Root expression function auto-populates the following string into the expression string:

Exp({number},1 / 3)

Resulting Data Type

Numeric

Logic/Algorithms

FILLIN2 = (Exp(FILLIN1,1 / 3))

Example

Decimal inputs FILLIN1 and FILLIN2 have been added to a configurator input page.

The following On Leave expression is added to FILLIN1, updating the input value of FILLIN2 using the Cube Rootexpression function:

FILLIN2 = (Exp(FILLIN1,1 / 3))

If the value 5 is entered in the FILLIN1 input, the expression above would be processed when leaving the FILLIN1input, and the resulting value of 1.70998 would be populated in the FILLIN2 input.

Epicor ERP | 9.05.702262

Configurator Technical Reference GuideExpression Builder Functions

Page 263: Epicor Configurator

Current Date

Using the Current Date expression function performs the Today function and returns the current system date.

Where Located

The Current Date expression function can be added as an On Leave or Rule expression.

Proper Syntax

The Current Date expression function auto-populates the following string into the expression string:

Today

Resulting Data Type

Date

Logic/Algorithms

FILLIN2 = (Today)

Example

Character input FILLIN1 and Date input FILLIN2 have been added to a configurator input page.

The following On Leave expression is added to FILLIN1, updating the input value of FILLIN2 using the CurrentDate expression function:

FILLIN2 = (Today)

If the current date is 12/01/2008, the expression above would be processed when leaving the FILLIN1 input, andthe resulting value of 12/01/2008 would be populated in the FILLIN2 input.

Current Time

Using the Current Time expression function performs the Time function, returns the current system date result,and then performs the String function on the result. Refer to Combine Strings for detailed information aboutthe String function.

Where Located

The Current Time expression function can be added as an On Leave or Rule expression.

Proper Syntax

The Current Time expression function auto-populates the following string into the expression string:

263Epicor ERP | 9.05.702

Expression Builder FunctionsConfigurator Technical Reference Guide

Page 264: Epicor Configurator

String(Time,'HH:MM:SS')

Resulting Data Type

String

Logic/Algorithms

FILLIN2 = (String(Time,'HH:MM:SS'))

Example

Character inputs FILLIN1 and FILLIN2 have been added to a configurator input page.

The following On Leave expression is added to FILLIN1, updating the input value of FILLIN2 using the CurrentTime expression function:

FILLIN2 = (String(Time,'HH:MM:SS'))

If the current time is 7:52:30 a.m., the expression above would be processed when leaving the FILLIN1 input,and the resulting string value of 07:52:30 would be populated in the FILLIN2 input.

Date Constant/Field/Input/Calculation

Using the Date Constant/Field/Input/Calculation expression function allows entry of the following values intothe expression string.

• Date Constant

• Field

• Input

• Calculation

Where Located

The Date Constant/Field/Input/Calculation expression function can be added as an On Leave or Rule expression.

Proper Syntax

The Date Constant/Field/Input/Calculation expression function auto-populates the following string into theexpression string:

{date}

Resulting Data Type

Date

Epicor ERP | 9.05.702264

Configurator Technical Reference GuideExpression Builder Functions

Page 265: Epicor Configurator

Examples

Example 1 - Date Constant

FILLIN1 = 07/10/2008, where FILLIN1 is a date input.

Example 2 - Field

dteDue = JobAsmbl.DueDate

DueDate is a field in the JobAsmbl database table.

Example 3 - Date Input

JobAsmbl.Date01 = FILLIN1

dteRequired is an input field used in the configuration Q & A session.

Example 4 - Calculation

JobAsmbl. Date02 = dteEstimated

dteEstimated is a Calculation field that is defined using a Calculation rule function. Refer to Use of Rules Typesin Rules Processing for more details.

Dates Equal

Using the Dates Equal expression function returns a logical result after processing the expression between twoDate type values.

Where Located

The Dates Equal expression function can be added as an On Leave or Rule expression.

Proper Syntax

The Dates Equal expression function auto-populates the following string into the expression string:

{date} = {date}

Resulting Data Type

Logical

Logic/Algorithms

TOGGLEBOX1 = (FILLIN1 = (Today))

265Epicor ERP | 9.05.702

Expression Builder FunctionsConfigurator Technical Reference Guide

Page 266: Epicor Configurator

Example

Date input FILLIN1 and Check box input TOGGLEBOX1 have been added to a configurator input page.

The following On Leave expression is added to FILLIN1,updating the value of TOGGLEBOX1 using the Dates Equalexpression function:

TOGGLEBOX1 = (FILLIN1 = (Today))

If the date entered in FILLIN1 is equal to the current date, the resulting value of the expression above would betrue, and the TOGGLEBOX1 check box would be selected when leaving the FILLIN1 input. If the value enteredisn't equal to the current date, the TOGGLEBOX1 check box would be cleared.

Dates Greater or Equal

Using the Dates Greater or Equal expression function returns a logical result after processing the expressionbetween two Date type values.

Where Located

The Dates Greater or Equal expression function can be added as an On Leave or Rule expression.

Proper Syntax

The Dates Greater or Equal expression function auto-populates the following string into the expression string:

{date} >= {date}

Resulting Data Type

Logical

Logic/Algorithms

TOGGLEBOX1 = (FILLIN1 >= (Today))

Example

Date inputs FILLIN1 and Check box input TOGGLEBOX1 have been added to a configurator input page.

The following On Leave expression is added to FILLIN1,, updating the value of TOGGLEBOX1 using the DatesGreater or Equal expression function:

TOGGLEBOX1 = (FILLIN1 >= (Today))

If the date entered in FILLIN1 is greater than or equal to the current date, the resulting value of the expressionabove would be true, and the TOGGLEBOX1 check box would be selected when leaving the FILLIN1 input. If thevalue entered isn't greater than or equal to the current date, the TOGGLEBOX1 check box would be cleared.

Epicor ERP | 9.05.702266

Configurator Technical Reference GuideExpression Builder Functions

Page 267: Epicor Configurator

Dates Greater Than

Using the Dates Greater Than expression function returns a logical result after processing the expression betweentwo Date type values.

Where Located

The Dates Greater Than expression function can be added as an On Leave or Rule expression.

Proper Syntax

The Dates Greater Than expression function auto-populates the following string into the expression string:

{date} > {date}

Resulting Data Type

Logical

Logic/Algorithms

TOGGLEBOX1 = (FILLIN1 > (Today))

Example

Date input FILLIN1 and Check box input TOGGLEBOX1 have been added to a configurator input page.

The following On Leave expression is added to FILLIN1,, updating the value of TOGGLEBOX1 using the DatesGreater Than expression function:

TOGGLEBOX1 = (FILLIN1 > (Today))

If the date entered in FILLIN1 is greater than the current date, the resulting value of the expression above wouldbe true, and the TOGGLEBOX1 check box would be selected when leaving the FILLIN1 input. If the value enteredisn't greater than the current date, the TOGGLEBOX1 check box would be cleared.

Dates Less or Equal

Using the Dates Less or Equal expression function returns a logical result after processing the expression betweentwo Date type values.

Where Located

The Date Less or Equal expression function can be added as an On Leave or Rule expression.

Proper Syntax

The Dates Less or Equal expression function auto-populates the following string into the expression string:

267Epicor ERP | 9.05.702

Expression Builder FunctionsConfigurator Technical Reference Guide

Page 268: Epicor Configurator

{date} <= {date}

Resulting Data Type

Logical

Logic/Algorithms

TOGGLEBOX1 = (FILLIN1 <= (Today))

Example

Date input FILLIN1 and Check box input TOGGLEBOX1 have been added to a configurator input page.

The following On Leave expression is added to FILLIN1,, updating the value of TOGGLEBOX1 using the DatesLess or Equal expression function:

TOGGLEBOX1 = (FILLIN1 <= (Today))

If the date entered in FILLIN1 is less than or equal to the current date, the resulting value of the expression abovewould be true, and the TOGGLEBOX1 check box would be selected when leaving the FILLIN1 input. If the valueentered isn't less than or equal to the current date, the TOGGLEBOX1 check box would be cleared.

Dates Less Than

Using the Dates Less Than expression function returns a logical result after processing the expression betweentwo Date type values.

Where Located

The Date Less Than expression function can be added as an On Leave or Rule expression.

Proper Syntax

The Dates Less Than expression function auto-populates the following string into the expression string:

{date} < {date}

Resulting Data Type

Logical

Logic/Algorithms

TOGGLEBOX1 = (FILLIN1 < (Today))

Epicor ERP | 9.05.702268

Configurator Technical Reference GuideExpression Builder Functions

Page 269: Epicor Configurator

Example

Date input FILLIN1 and Check box input TOGGLEBOX1 have been added to a configurator input page.

The following On Leave expression is added to FILLIN1,, updating the value of TOGGLEBOX1 using the DatesLess Than expression function:

TOGGLEBOX1 = (FILLIN1 < (Today))

If the date entered in FILLIN1 is less than the current date, the resulting value of the expression above would betrue, and the TOGGLEBOX1 check box would be selected when leaving the FILLIN1 input. If the value enteredisn't less than the current date, the TOGGLEBOX1 check box would be cleared.

Dates Not Equal

Using the Dates Not Equal expression function returns a logical result after processing the expression betweentwo Date type values. Using the Day of Week expression function performs the Weekday function to evaluatea Date type value expression, and returns a day of the week as an Integer numeric value.

Where Located

The Dates Not Equal expression function can be added as an On Leave or Rule expression.

Proper Syntax

The Dates Not Equal expression function auto-populates the following string into the expression string:

{date}<>{date}

Resulting Data Type

Logical

Logic/Algorithms

TOGGLEBOX1 = (FILLIN1 <> (Today))

Example

Date input FILLIN1 and Check box input TOGGLEBOX1 have been added to a configurator input page.

The following On Leave expression is added to FILLIN1,, updating the value of TOGGLEBOX1 using the Dates NotEqual expression function:

TOGGLEBOX1 = (FILLIN1 <> (Today))

If the date entered in FILLIN1 is not equal to the current date, the resulting value of the expression above wouldbe true, and the TOGGLEBOX1 check box would be selected when leaving the FILLIN1 input. If the value enteredis equal to the current date, the TOGGLEBOX1 check box would be cleared.

269Epicor ERP | 9.05.702

Expression Builder FunctionsConfigurator Technical Reference Guide

Page 270: Epicor Configurator

Day of Month

Using the Day of Month expression function performs the Day function to evaluate a date expression andreturns a day of the month as an Integer value (from 1 to 31 inclusive).

Where Located

The Day of Month expression function can be added as an On Leave or Rule expression.

Proper Syntax

The Day of Month expression function auto-populates the following string into the expression string:

Day({date})

Resulting Data Type

Numeric

Logic/Algorithms

FILLIN2 = (Day(FILLIN1))

Example

Date input FILLIN1 and Decimal input FILLIN2 have been added to a configurator input page.

The following On Leave expression is added to FILLIN1,, updating the value of FILLIN2 using the Day of Monthexpression function:

FILLIN2 = (Day(FILLIN1))

If the date entered in FILLIN1 is 12/02/2008, the expression above would be processed when leaving the FILLIN1input, and the resulting numeric value of 2 would be populated in the FILLIN2 input.

Day of Week

Using the Day of Week expression function performs the Weekday function to evaluate a Date type valueexpression, and returns a day of the week as an Integer numeric value (from 1 (Sunday) to 7 (Saturday)) for thatdate.

Where Located

The Day of Week expression function can be added as an On Leave or Rule expression.

Proper Syntax

The Day of Week expression function auto-populates the following string into the expression string:

Epicor ERP | 9.05.702270

Configurator Technical Reference GuideExpression Builder Functions

Page 271: Epicor Configurator

Weekday({date})

Resulting Data Type

Numeric

Logic/Algorithms

FILLIN2 = (Weekday(FILLIN1))

Example

Date input FILLIN1 and Decimal input FILLIN2 have been added to a configurator input page.

The following On Leave expression is added to FILLIN1,, updating the value of FILLIN2 using the Day of Weekexpression function:

FILLIN2 = (Weekday(FILLIN1))

If the date entered in FILLIN1 is 12/02/2008, the expression above would be processed when leaving the FILLIN1input, and the resulting numeric value of 1 would be populated in the FILLIN2 input.

Difference between Two Dates

Using the Difference between Two Dates expression function subtracts a Date type value from another Datetype value and returns a numerical result.

Where Located

The Difference between Two Dates expression function can be added as an On Leave or Rule expression.

Proper Syntax

The Difference between Two Dates expression function auto-populates the following string into the expressionstring:

{date} - {date}

Resulting Data Type

Numeric

Logic/Algorithms

FILLIN3 = (FILLIN1 - FILLIN2)

271Epicor ERP | 9.05.702

Expression Builder FunctionsConfigurator Technical Reference Guide

Page 272: Epicor Configurator

Example

Date inputs FILLIN1, FILLIN2 and Decimal input FILLIN3 have been added to a configurator input page.

The following On Leave expression is added to FILLIN2, updating the value of FILLIN3 using the Difference betweenTwo Dates expression function:

FILLIN3 = (FILLIN1 - FILLIN2)

If the date entered in FILLIN1 is 12/31/2008 and the date entered in FILLIN2 was 12/15/2008, the expressionabove would be processed when leaving the FILLIN2 input, and the resulting numeric value of 16 would bepopulated in the FILLIN3 input.

Display as Time

Using Display as Time performs the String function on the resulting value of the Integer function on {number}.Refer to Combine Strings for detailed information about the String function.

Where Located

The Display as Time expression function can be added as an On Leave or Rule expression.

Proper Syntax

The Display as Time expression function auto-populates the following string into the expression string:

String(Integer({number}),'HH:MM:SS')

Resulting Data Type

String

Logic/Algorithms

FILLIN2 = (String(Integer(FILLIN1),'HH:MM:SS'))

Example

Decimal input FILLIN1 and Character input FILLIN2 have been added to a configurator input page.

The following On Leave expression is added to FILLIN1, updating the input value of FILLIN2 using the Display asTime expression function:

FILLIN2 = (String(Integer(FILLIN1),'HH:MM:SS'))

If the value 400 is entered in the FILLIN1 input, the expression above would be processed when leaving the FILLIN1input, and the resulting string value of 00:06:40 would be populated in the FILLIN2 input.

Epicor ERP | 9.05.702272

Configurator Technical Reference GuideExpression Builder Functions

Page 273: Epicor Configurator

Divide

Using the Divide expression function divides a Numeric type value by another Numeric type value and returnsa numerical result.

Where Located

The Divide expression function can be added as an On Leave or Rule expression.

Proper Syntax

The Divide expression function auto-populates the following string into the expression string:

{number} / {number}

Resulting Data Type

Numeric

Logic/Algorithms

FILLIN3 = (FILLIN2 / FILLIN1)

Example

Decimal inputs FILLIN1, FILLIN2 and FILLIN3 have been added to a configurator input page.

The following On Leave expression is added to FILLIN2, updating the input value of FILLIN3 using the Divideexpression function:

IF FILLIN1 > 0 THEN FILLIN3 = (FILLIN2 / FILLIN1)

If the value 10 is entered in the FILLIN2 input and the value of 5 is entered in the FILLIN1 input, the expressionabove would be processed when leaving the FILLIN2 input, and the resulting value of 2 would be populated inthe FILLIN3 input. This should only be used in situations in which FILLIN1 can't be zero; using a value of zero inthe numerator results result in an error because the Epicor application can't divide denominators by a numeratorcontaining a value of zero. To work around this limitation, construct logic that prevents use of a zero value inthe numerator.

Earlier of Two Dates

Using the Earlier of Two Dates expression function performs the Minimum function to compare two or moreDate type values, and returns the smallest (earliest) result. A constant, field name, variable name, or expressioncan be used.

If there is a mixture of decimal and integer data types, it returns the Decimal type.

273Epicor ERP | 9.05.702

Expression Builder FunctionsConfigurator Technical Reference Guide

Page 274: Epicor Configurator

Where Located

The Earlier of Two Dates expression function can be added as an On Leave or expression.

Proper Syntax

The Earlier of Two Dates expression function auto-populates the following string into the expression string:

Minimum({date},{date})

Resulting Data Type

Date

Logic/Algorithms

FILLIN3 = (Minimum(FILLIN1,FILLIN2))

Example

Date inputs FILLIN1, FILLIN2 and FILLIN3 have been added to a configurator input page.

The following On Leave expression is added to FILLIN2, updating the input value of FILLIN3 using the Earlier ofTwo Dates expression function:

FILLIN3 = (Minimum(FILLIN1,FILLIN2)

If the value 12/15/2008 is entered in the FILLIN1 input and the value of 10/15/2008 is entered in the FILLIN2input, the expression above would be processed when leaving the FILLIN2 input, and the resulting value of10/15/2008 would be populated in the FILLIN3 input.

ExcelLookup

To avoid complex formulas or selection rules, the Excel Lookup express function can be used to "look up" valuesin an external Microsoft Excel spreadsheet that contains sophisticated data that should be incorporated into aproduct configuration based on specified inputs and rules.

Where Located

The Excel Lookup expression function can be added as an On Leave or Rule expression.

Proper Syntax

The Excel Lookup expression function auto-populates the following string into the expression string:

ExcelLookup({FileName}, {SheetName}, {ColValue}, {RowValue})

The expression components must be entered as follows (refer to the example found below):

• FileName - Enter the exact pathname or URL location of the Excel spreadsheet.

• SheetName - Enter the exact name of the Excel worksheet.

Epicor ERP | 9.05.702274

Configurator Technical Reference GuideExpression Builder Functions

Page 275: Epicor Configurator

• ColValue - Enter the exact name of the label of the spreadsheet column from which data is being returned.The column must be labeled with a user-specified label; the standard Excel labels (for example, A, B, C) cannotbe referenced.

• RowValue - Enter the exact content of the cell that you are referencing as a key. This data must reside infirst column of the spreadsheet. If multiple cells contact the same content, the Epicor application uses thefirst cell found.

Tip Be careful when you enter row labels or column labels. If either label is not found, the Epicor applicationsearches the entire spreadsheet (65536 rows x 256 columns); this can cause a long delay.

Resulting Data Type

String

Example

A spreadsheet entitled PartPrices.xls (found in C:\folder) contains a list of prices for parts; it only has one sheet.

The first column contains part names, the second column contains the associated price, and the third columncontains a price-break price for quantities of 10 for the part. The ExcelLookup express function supports entryof relative paths, so a valid statement might appear as pcrules\myfile.xls. The Excel spreadsheet appears as follows:

CBA

Amount2Amount1

1500200AAA-001

2500300AAA-002

3000400AAA-003

4000500AAA-004

5000600AAA-005

Accordingly, the following ExcelLookup expression returns a value of 400:

ExcelLookup(C:\folder\partprices.xls, Sheet1, Amount1, AAA-003)

The following ExcelLookup expression returns a value of 5000:

ExcelLookup(C:\folder\partprices.xls, Sheet1, Amount2, AAA-005)

Tip In the examples above, Partprices.xls must to reside in the C:\Folder directory on the server. You canalso specify a full UNC path if the file is located on a different server or machine. If the file is located onanother server or machine, the server where this code is being executed has to proper permissions requiredto access the folder where it is located.

275Epicor ERP | 9.05.702

Expression Builder FunctionsConfigurator Technical Reference Guide

Page 276: Epicor Configurator

Factorial

Using the Factorial expression function calculates the Factorial of a Numeric type value and returns a numericalresult.

Where Located

The Factorial expression function can be added as an On Leave or Rule expression.

Proper Syntax

The Factorial expression function auto-populates the following string into the expression string:

Factorial({number})

Resulting Data Type

Numeric

Logic/Algorithms

FILLIN2 = (Factorial(FILLIN1))

Example

Decimal inputs FILLIN1 and FILLIN2 have been added to a configurator input page.

The following On Leave expression is added to FILLIN1, updating the input value of FILLIN2 using the Factorialexpression function:

FILLIN2 = (Factorial(FILLIN1))

If the value 5 is entered in the FILLIN1 input, the expression above would be processed when leaving the FILLIN1input, and the resulting value of 120 would be populated in the FILLIN2 input.

FieldHeight

Changes the height of a browser, character, checkbox, editor, radio set, rectangle or text input field.

Where Located

The field property functions can be added as an On Leave or a Document Rule expression.

Proper Syntax

FieldHeight('InputFieldName', {number})

Epicor ERP | 9.05.702276

Configurator Technical Reference GuideExpression Builder Functions

Page 277: Epicor Configurator

Example

Character input FILLIN1 has been added to a configurator input page.

The following On Leave expression has been added to another input using the Field Height function:

FieldHeight('FILLIN1', 31).

The height of FILLIN1 is set to 31 points high.

FieldIncrement

Changes the incremental value of a decimal input field.

Where Located

The field property functions can be added as an On Leave or a Document Rule expression.

Proper Syntax

FieldIncrement('InputFieldName', {decimal})

Example

Decimal

FieldInitialValue

Changes the initial value of a browser, character, checkbox, combo box, date, decimal, editor or radio set inputfield.

Where Located

The field property functions can be added as an On Leave or a Document Rule expression.

Proper Syntax

Depending on the field's input type, the initial value is a date, decimal, logical or character.

The used field properties are as follows:

• Date - FieldInitValDate

• Decimal - FieldInitValDec

• Logical - FieldInitValLog

• Character - FieldInitValChar

277Epicor ERP | 9.05.702

Expression Builder FunctionsConfigurator Technical Reference Guide

Page 278: Epicor Configurator

Example

• Character: FieldInitValChar('FILLIN3'. 'ABC')

• Date: FieldInitValDate('FILLIN4'. 02/13/2012)

• Check Box: FieldInitValLog('TOGGLEBOX1'. TRUE)

• Combo Box: FieldInitValChar('COMBOBOX1'. 'XYZ')

• Radio Set: FieldInitValChar('RADIOSET1'. '1')

• Browser: FieldInitValChar('BROWSER1'. 'BROWSERDATA')

FieldInvisible

Changes the visibility of a browser, character, checkbox, combo box, date, decimal, editor, radio set, rectangleor text input field.

Where Located

The field property functions can be added as an On Leave or a Document Rule expression.

Proper Syntax

FieldInvisible('InputFieldName', {logical})

If the logical value is true then the input field becomes invisible.

Example

Decimal input FILLIN1 has been added to a configurator input page.

The following On Leave expression has been added to another input using the Field Invisible function:

FieldInvisible('FILLIN1', True).

Input field FILLIN1 is made invisible.

FieldLabel

Changes the label of a browser, character, checkbox, combo box, date, decimal, editor, radio set, rectangle ortext input field.

Where Located

The field property functions can be added as an On Leave or a Document Rule expression.

Proper Syntax

FieldLabel('InputFieldName', {string})

Epicor ERP | 9.05.702278

Configurator Technical Reference GuideExpression Builder Functions

Page 279: Epicor Configurator

Example

Character input FILLIN1 has been added to a configurator input page.

The following On Leave expression has been added to another input using the Field Label function:

FieldWidth('FILLIN1', 'This is My Label:').

The label of FILLIN1 is set to "This is My Label:".

FieldMaximumDate

Changes the end date value of a date input field.

Where Located

The field property functions can be added as an On Leave or a Document Rule expression.

Proper Syntax

FieldMaximumDate('InputFieldName', {date})

Example

Date input FILLIN1 has been added to a configurator input page.

The following On Leave expression has been added to another input using the Field Maximum Date function:

FieldMaximumDate('FILLIN1', (Today + 30)).

The end date of FILLIN1 is set to 30 days from today.

FieldMinimumDate

Changes the start date value of a date input field.

Where Located

The field property functions can be added as an On Leave or a Document Rule expression.

Proper Syntax

FieldMinimumDate('InputFieldName', {date})

279Epicor ERP | 9.05.702

Expression Builder FunctionsConfigurator Technical Reference Guide

Page 280: Epicor Configurator

Example

Date input FILLIN1 has been added to a configurator input page.

The following On Leave expression has been added to another input using the Field Minimum Date function:

FieldMinimumDate('FILLIN1', Today).

The start date of FILLIN1 is set to today.

FieldMaximumDecimal

Changes the maximum value of a decimal input field.

Where Located

The field property functions can be added as an On Leave or a Document Rule expression.

Proper Syntax

FieldMaximumDecimal('InputFieldName', {decimal})

Example

Decimal input FILLIN1 has been added to a configurator input page.

The following On Leave expression has been added to another input using the Field Maximum Decimal function:

FieldMaximumDecimal('FILLIN1', 10000).

The maximum value of FILLIN1 is set to 10,000.

FieldMinimumDecimal

Changes the minimum value of a decimal input field.

Where Located

The field property functions can be added as an On Leave or a Document Rule expression.

Proper Syntax

FieldMinimumDecimal('InputFieldName', {decimal})

Epicor ERP | 9.05.702280

Configurator Technical Reference GuideExpression Builder Functions

Page 281: Epicor Configurator

Example

Decimal input FILLIN1 has been added to a configurator input page.

The following On Leave expression has been added to another input using the Field Minimum Decimal function:

FieldMinimumDecimal('FILLIN1', 100).

The minimum value of FILLIN1 is set to 100.

FieldRequired

Changes the required status of a browser, character, date, decimal, editor or radio set input field.

Where Located

The field property functions can be added as an On Leave or a Document Rule expression.

Proper Syntax

FieldRequired('InputFieldName', {logical})

Example

Decimal input FILLIN1 has been added to a configurator input page.

The following On Leave expression has been added to another input using the Field Required function:

Field3Required('FILLIN1', True).

The input field FILLIN1 is marked as required.

FieldSummaryLabel

Changes the summary label of a browser, character, checkbox, combo box, date, decimal, editor or radio setinput field. The summary label is displayed in the summary grid when a configuration is reconfigured inOpportunity/Quote Entry, Order Entry, Job Entry, Purchase Order Entry or Demand Entry.

Where Located

The field property functions can be added as an On Leave or a Document Rule expression.

Proper Syntax

FieldSummaryLabel('InputFieldName', {string})

281Epicor ERP | 9.05.702

Expression Builder FunctionsConfigurator Technical Reference Guide

Page 282: Epicor Configurator

Example

Character input FILLIN1 has been added to a configurator input page.

The following On Leave expression has been added to another input using the Field Summary Label function:

FieldSummaryLabel('FILLIN1', 'My Summary Label").

The summary label of FILLIN1 is set to "My Summary Label".

FieldToolTip

Changes the width of a browser, character, checkbox, combo box, date, decimal, editor, radio set, rectangle ortext input field.

Where Located

The field property functions can be added as an On Leave or a Document Rule expression.

Proper Syntax

FieldToolTip('InputFieldName', {string})

Example

Character input FILLIN1 has been added to a configurator input page.

The following On Leave expression has been added to another input using the Field Tool Tip function:

FieldToolTip('FILLIN1', 'This is my ToolTip').

The tooltip of FILLIN1 is set to "This is my ToolTip".

FieldValidList

Changes the valid list of a character or radio set input field.

Where Located

The field property functions can be added as an On Leave or a Document Rule expression.

Proper Syntax

FieldValidList('InputFieldName', {string})

Epicor ERP | 9.05.702282

Configurator Technical Reference GuideExpression Builder Functions

Page 283: Epicor Configurator

Example

Character input FILLIN1 has been added to a configurator input page.

The following On Leave expression has been added to another input using the Field Valid List function:

FieldValidList('FILLIN1', 'Item 1,Item 2,Item 3').

The valid list of FILLIN1 is set to "Item 1,Item 2,Item 3".

FieldWidth

Changes the width of a browser, character, checkbox, combo box, date, decimal, editor, radio set, rectangle ortext input field.

Where Located

The field property functions can be added as an On Leave or a Document Rule expression.

Proper Syntax

FieldWidth('InputFieldName', {number})

Example

Character input FILLIN1 has been added to a configurator input page.

The following On Leave expression has been added to another input using the Field Width function:

FieldWidth('FILLIN1', 80).

The width of FILLIN1 is set to 80 points long.

283Epicor ERP | 9.05.702

Expression Builder FunctionsConfigurator Technical Reference Guide

Page 284: Epicor Configurator

FieldXPosition

Changes the X position of a browser, character, checkbox, combo box, date, decimal, editor, radio set, rectangleor text input field.

Where Located

The field property functions can be added as an On Leave or a Document Rule expression.

Proper Syntax

Changes the X position of a browser, character, checkbox, combo box, date, decimal, editor, radio set, rectangleor text input field.

Example

Character input FILLIN1 has been added to a configurator input page.

The following On Leave expression has been added to another input using the Field X position function:

FieldXPosition('FILLIN1', 100).

The X position of FILLIN1 is set to 100 points from the left of the page.

FieldYPosition

Changes the Y position of a browser, character, checkbox, combo box, date, decimal, editor, radio set, rectangleor text input field.

Where Located

The field property functions can be added as an On Leave or a Document Rule expression.

Proper Syntax

Changes the Y position of a browser, character, checkbox, combo box, date, decimal, editor, radio set, rectangleor text input field.

Example

Character input FILLIN1 has been added to a configurator input page.

The following On Leave expression has been added to another input using the Field Y position function:

FieldYPosition('FILLIN1', 200).

The Y position of FILLIN1 is set to 200 points from the top of the page.

Epicor ERP | 9.05.702284

Configurator Technical Reference GuideExpression Builder Functions

Page 285: Epicor Configurator

Greater of Two Numbers

Using Greater of Two Numbers performs the Maximum function, compares two or more Numeric type valuesand returns the largest value. A constant, field name, variable name, or expression can be used.

If there is a mixture of decimal and integer data types, it returns the Decimal type.

Where Located

The Greater of Two Numbers expression function can be added as an On Leave or Rule expression.

Proper Syntax

The Greater of Two Numbers expression function auto-populates the following string into the expression string:

Maximum({number},{number})

Resulting Data Type

Numeric

Logic/Algorithms

FILLIN3 = (Maximum(FILLIN1,FILLIN2))

Example

Decimal inputs FILLIN1, FILLIN2 and FILLIN3 have been added to a configurator input page.

The following On Leave expression is added to FILLIN2, updating the input value of FILLIN3 using the Greater ofTwo Numbers expression function:

FILLIN3 = (Maximum(FILLIN1,FILLIN2))

If the value 6 is entered in the FILLIN1 input and the value of 10 is entered in the FILLIN2 input, the expressionabove would be processed when leaving the FILLIN2 input, and the resulting numeric value of 10 would bepopulated in the FILLIN3 input.

285Epicor ERP | 9.05.702

Expression Builder FunctionsConfigurator Technical Reference Guide

Page 286: Epicor Configurator

Greater of Two Strings

Using Greater of Two Strings performs the Maximum function compares two or more string type values andreturns the largest value. Refer to Greater of Two Numbers for detailed information about the Maximumfunction.

Where Located

The Greater of Two Strings expression function can be added as an On Leave or Rule expression.

Proper Syntax

The Greater of Two Strings expression function auto-populates the following string into the expression string:

Maximum({string},{string})

Resulting Data Type

String

Logic/Algorithms

FILLIN3 = (Maximum(FILLIN1,FILLIN2))

Example

Character inputs FILLIN1, FILLIN2 and FILLIN3 have been added to a configurator input page.

The following On Leave expression is added to FILLIN2, updating the input value of FILLIN3 using the Greater ofTwo Strings expression function:

FILLIN3 = (Maximum(FILLIN1,FILLIN2))

If the value A is entered in the FILLIN1 input and the value of B is entered in the FILLIN2 input, the expressionabove would be processed when leaving the FILLIN2 input, and the resulting string value of B would be populatedin the FILLIN3 input.

Epicor ERP | 9.05.702286

Configurator Technical Reference GuideExpression Builder Functions

Page 287: Epicor Configurator

If first expression is true return second else third date

Using the If first expression is true return second else third date expression function returns either the firstor second date value depending on the result of the logical expression.

Where Located

The If first expression is true return second else third date expression function can be added as an On Leave orRule expression.

Proper Syntax

The If first expression is true return second else third date expression function auto-populates the following stringinto the expression string:

If {logical} Then ({date}) Else ({date})

Resulting Data Type

Date

Logic/Algorithms

FILLIN3 = (If TOGGLEBOX1 Then (FILLIN1) Else (FILLIN2))

Example

Check box input TOGGLEBOX1, and Date inputs FILLIN2, FILLIN3 have been added to a configurator input page.

The following On Leave expression is added to TOGGLEBOX1, updating the input value of FILLIN3 using the Iffirst expression is true return second else third date expression function:

FILLIN3 = (If TOGGLEBOX1 Then (FILLIN1) Else (FILLIN2))

The value of 12/01/2008 is entered in the FILLIN1 input and the value of 12/02/2008 is entered in the FILLIN2input. If the TOGGLEBOX1 input is selected, the expression above would be processed, and the date value of12/01/2008 would be populated in the FILLIN3 input. If the TOGGLEBOX2 input is cleared, the date value of12/02/2008 would be populated in the FILLIN3 input.

287Epicor ERP | 9.05.702

Expression Builder FunctionsConfigurator Technical Reference Guide

Page 288: Epicor Configurator

If first expression is true return second else third number

Using the If first expression is true return second else third number expression function returns either thefirst or second Numeric type value depending on the result of the logical expression.

Where Located

The If first expression is true return second else third number expression function can be added as an On Leaveor Rule expression.

Proper Syntax

The If first expression is true return second else third number expression function auto-populates the followingstring into the expression string:

If {logical} Then ({number}) Else ({number})

Resulting Data Type

Numeric

Logic/Algorithms

FILLIN3 = (If TOGGLEBOX1 Then (FILLIN1) Else (FILLIN2))

Example

Check box input TOGGLEBOX1, and Decimal inputs FILLIN2, FILLIN3 have been added to a configurator inputpage.

The following On Leave expression is added to TOGGLEBOX1, updating the input value of FILLIN3 using the Iffirst expression is true return second else third number expression function:

FILLIN3 = (If TOGGLEBOX1 Then (FILLIN1) Else (FILLIN2))

The value of 5 is entered in the FILLIN1 input and the value of 10 is entered in the FILLIN2 input. If the TOGGLEBOX1input is selected, the expression above would be processed, and the numeric value of 5 would be populated inthe FILLIN3 input. If the TOGGLEBOX2 input is cleared, the numeric value of 10 would be populated in the FILLIN3input.

Epicor ERP | 9.05.702288

Configurator Technical Reference GuideExpression Builder Functions

Page 289: Epicor Configurator

If first expression is true return second else third string

Using the If first expression is true return second else third string expression function returns either thefirst or second string value depending on the result of the logical expression.

Where Located

The If first expression is true return second else third string expression function can be added as an On Leave orRule expression.

Proper Syntax

The If first expression is true return second else third string expression function auto-populates the followingstring into the expression string:

If {logical} Then ({string}) Else ({string})

Resulting Data Type

String

Logic/Algorithms

FILLIN3 = (If TOGGLEBOX1 Then (FILLIN1) Else (FILLIN2))

Example

Check box input TOGGLEBOX1, and Character inputs FILLIN2, FILLIN3 have been added to a configurator inputpage.

The following On Leave expression is added to TOGGLEBOX1, updating the input value of FILLIN3 using the Iffirst expression is true return second else third string expression function:

FILLIN3 = (If TOGGLEBOX1 Then (FILLIN1) Else (FILLIN2))

The value of ABC is entered in the FILLIN1 input and the value of DEF is entered in the FILLIN2 input. If theTOGGLEBOX1 input is selected, the expression above would be processed, and the string value of ABC wouldbe populated in the FILLIN3 input. If the TOGGLEBOX2 input is cleared, the string value of DEF would be populatedin the FILLIN3 input.

Later of Two Dates

Using Later of Two Dates performs the Maximum function, compares two Date type values and returns eitherthe first or second string value depending on the result of the logical expression. A constant, field name, variablename, or expression can be used.

If there is a mixture of decimal and integer data types, it returns the Decimal type.

289Epicor ERP | 9.05.702

Expression Builder FunctionsConfigurator Technical Reference Guide

Page 290: Epicor Configurator

Where Located

The Later of Two Dates expression function can be added as an On Leave or Rule expression.

Proper Syntax

The Later of Two Dates expression function auto-populates the following string into the expression string:

Maximum({date},{date})

Resulting Data Type

String

Logic/Algorithms

FILLIN3 = (Maximum(FILLIN1,FILLIN2))

Example

Date inputs FILLIN1, FILLIN2 and FILLIN3 have been added to a configurator input page.

The following On Leave expression is added to FILLIN2, updating the input value of FILLIN3 using the Later ofTwo Dates expression function:

FILLIN3 = (Maximum(FILLIN1,FILLIN2))

If the value 10/15/2008 is entered in the FILLIN1 input and the value of 12/15/2008 is entered in the FILLIN2input, the expression above would be processed when leaving the FILLIN2 input, and the resulting date value of12/15/2008 would be populated in the FILLIN3 input.

Least Common Multiple

Using the Least Common Multiple expression finds the Least Common Multiple of two Numeric type values.This the smallest number that contains as factors the given numbers.

Where Located

The Least Common Multiple expression function can be added as an On Leave or Rule expression.

Proper Syntax

The Least Common Multiple expression function auto-populates the following string into the expression string:

LCM({number}, {number})

Resulting Data Type

Numeric

Epicor ERP | 9.05.702290

Configurator Technical Reference GuideExpression Builder Functions

Page 291: Epicor Configurator

Logic/Algorithms

FILLIN3 = (LCM(FILLIN1, FILLIN2))

Example

Decimal inputs FILLIN1, FILLIN2 and FILLIN3 have been added to a configurator input page.

The following On Leave expression is added to FILLIN2, updating the input value of FILLIN3 using the LeastCommon Multiple expression function:

FILLIN3 = (LCM(FILLIN1,FILLIN2)

If the value 8 is entered in the FILLIN1 input and the value of 5 is entered in the FILLIN2 input, the expressionabove would be processed when leaving the FILLIN2 input, and the resulting numeric value of 40 would bepopulated in the FILLIN3 input.

Length of String

Using Length of String performs the Length function on the String type value and returns a numeric value.

Where Located

The Length of String expression function can be added as an On Leave or Rule expression.

Proper Syntax

The Length of String expression function auto-populates the following string into the expression string:

Length({string})

Resulting Data Type

Numeric

Logic/Algorithms

FILLIN2 = (Length(FILLIN1))

Example

Character input FILLIN1 and Decimal input FILLIN2 have been added to a configurator input page.

The following On Leave expression is added to FILLIN1, updating the input value of FILLIN2 using the Length ofString expression function:

FILLIN2 = (Length(FILLIN1)

If the value ABCDEF is entered in the FILLIN1, the expression above would be processed when leaving the FILLIN1input, and the resulting numeric value of 6 would be populated in the FILLIN2 input.

291Epicor ERP | 9.05.702

Expression Builder FunctionsConfigurator Technical Reference Guide

Page 292: Epicor Configurator

Lesser of Two Strings

Using Lesser of Two Strings performs the Minimum function using the two string type values and returns astring value.

Where Located

The Lesser of Two Strings expression function can be added as an On Leave or Rule expression.

Proper Syntax

The Lesser of Two Strings expression function auto-populates the following string into the expression string:

Minimum({string},{string})

Resulting Data Type

String

Logic/Algorithms

FILLIN3 = (Minimum(FILLIN1,FILLIN2))

Example

Character inputs FILLIN1, FILLIN2 and FILLIN3 have been added to a configurator input page.

The following On Leave expression is added to FILLIN2, updating the input value of FILLIN3 using the Lesser ofTwo Strings expression function:

FILLIN3 = (Minimum(FILLIN1,FILLIN2))

If the value A is entered in the FILLIN1 input and the value of B is entered in the FILLIN2 input, the expressionabove would be processed when leaving the FILLIN2 input, and the resulting string value of A would be populatedin the FILLIN3 input.

Log Base e

Using Log Base e performs the Log expression function, in base e, on the specified Numeric type value andreturns a numeric value.

Where Located

The Log Base e expression function can be added as an On Leave or Rule expression.

Proper Syntax

The Log Base e expression function auto-populates the following string into the expression string:

Epicor ERP | 9.05.702292

Configurator Technical Reference GuideExpression Builder Functions

Page 293: Epicor Configurator

Log({number})

Resulting Data Type

Numeric

Logic/Algorithms

FILLIN2 = (Log(FILLIN1))

Example

Decimal inputs FILLIN1 and FILLIN2 have been added to a configurator input page.

The following On Leave expression is added to FILLIN1, updating the input value of FILLIN2 using the Log Basee expression function:

FILLIN2 = (Log(FILLIN1))

If the value 5 is entered in the FILLIN1 input, the expression above would be processed when leaving the FILLIN1input, and the resulting numeric value of 1.60944 would be populated in the FILLIN2 input. Use this only insituations in which you are certain that FILLIN1 cannot become zero.

Log Base n

Using Log Base n performs the Log function on the specified Numeric type values and returns a numeric value.

Where Located

The Log Base n expression function can be added as an On Leave or Rule expression.

Proper Syntax

The Log Base n expression function auto-populates the following string into the expression string:

Log({number}, {numberbase})

Resulting Data Type

Numeric

Logic/Algorithms

FILLIN3 = (Log(FILLIN1,FILLIN2))

293Epicor ERP | 9.05.702

Expression Builder FunctionsConfigurator Technical Reference Guide

Page 294: Epicor Configurator

Example

Decimal inputs FILLIN1, FILLIN2 and FILLIN3 have been added to a configurator input page.

The following On Leave expression is added to FILLIN2, updating the input value of FILLIN3 using the Log Basen expression function:

FILLIN3 = (Log(FILLIN1,FILLIN2))

If the value 5 is entered in the FILLIN1 input and 10 is entered in the FILLIN2 input, the expression above wouldbe processed when leaving the FILLIN2 input, and the resulting numeric value of 0.69897 would be populatedin the FILLIN3 input.

Use this only in situations in which you are certain that FILLIN1 and FILLIN2 cannot be zero.

Logical AND

Using the Logical AND expression function allows entry of two logical data type values into the expression string,and returns a logical type result.

Where Located

The Logical AND expression function can be added as an On Leave or Rule expression.

Proper Syntax

The Logical AND expression function auto-populates the following string into the expression string:

({logical} And {logical})

Resulting Data Type

Logical

Logic/Algorithms

TOGGLEBOX3 = ((TOGGLEBOX1 And TOGGLEBOX2))

Example

Check box inputs FILLIN1, FILLIN2 and FILLIN3 have been added to a configurator input page.

The following On Leave expression is added to TOGGLEBOX2, updating the input value of TOGGLEBOX3 usingthe Logical AND expression function:

TOGGLEBOX3 = ((TOGGLEBOX1 And TOGGLEBOX2))

If the TOGGLEBOX1 check box and the TOGGLEBOX2 check box are both selected, the expression above isprocessed and the TOGGLEBOX3 checkbox is selected. If either TOGGLEBOX1 or TOGGLEBOX2 is cleared, theTOGGLEBOX3 checkbox is cleared.

Epicor ERP | 9.05.702294

Configurator Technical Reference GuideExpression Builder Functions

Page 295: Epicor Configurator

Logical Constant/Field/Input/Calculation

Using the Logical Constant/Field/Input/Calculation expression function allows entry of the following valuesinto the expression string.

• Logical Constant

• Field

• Input

• Calculation

Where Located

The Logical Constant/Field/Input/Calculation expression function can be added as an On Leave or Rule expression.

Proper Syntax

The Logical Constant/Field/Input/Calculation expression function auto-populates the following string into theexpression string:

{logical}

Resulting Data Type

Logical

Examples

Example 1 - Logical Constant

CHECKBOX1 = True, where CHECKBOX1 is a logical input.

Example 2 - Field

JobAsmbl.CheckBox01 = TOGGLEBOX1

TOGGLEBOX1 is an input field used in the configuration Q & A session.

Example 3 - Logical Input

JobAsmbl.Character01 = Editor-1

Editor-1 is an input field used in the configuration Q & A session.

Example 4 - Calculation

JobAsmbl.CheckBox02 = lgNeedengineering

lgNeedengineering is a Calculation field that is defined using a Calculation rule function. Refer to Use of RulesTypes in Rules Processing for more details.

295Epicor ERP | 9.05.702

Expression Builder FunctionsConfigurator Technical Reference Guide

Page 296: Epicor Configurator

Logical expression

Using Logical expression allows entry of a logical data type value into the expression string, and returns a logicaltype result.

Where Located

The Logical expression function can be added as an On Leave or Rule expression.

Proper Syntax

The Logical expression function auto-populates the following string into the expression string:

({logical})

Resulting Data Type

Logical

Logic/Algorithms

TOGGLEBOX2 = (TOGGLEBOX1)

Example

Check box inputs TOGGLEBOX1 and TOGGLEBOX2 have been added to a configurator input page.

The following On Leave expression is added to TOGGLEBOX1, updating the input value of TOGGLEBOX2 usingthe Logical expression function:

TOGGLEBOX2 = (TOGGLEBOX1)

When the TOGGLEBOX1 check box is selected, the expression above is processed and the TOGGLEBOX2 checkbox is also selected. When the TOGGLEBOX1 check box is cleared, the TOGGLEBOX2 check box is also cleared.

Logical OR

Using the Logical OR expression function allows a user to enter two logical data type values into the expressionstring.

Where Located

The Logical OR expression function can be added as an On Leave or Rule expression.

Proper Syntax

The Logical OR expression function auto-populates the following string into the expression string:

Epicor ERP | 9.05.702296

Configurator Technical Reference GuideExpression Builder Functions

Page 297: Epicor Configurator

({logical} Or {logical})

Resulting Data Type

Logical

Logic/Algorithms

TOGGLEBOX3 = ((TOGGLEBOX1 Or TOGGLEBOX2))

Example

Check box inputs TOGGLEBOX1, TOGGLEBOX2 and TOGGLEBOX3 have been added to a configurator inputpage.

The following On Leave expression is added to TOGGLEBOX2, updating the input value of TOGGLEBOX3 usingthe Logical OR expression function:

TOGGLEBOX3 = ((TOGGLEBOX1 Or TOGGLEBOX2))

When the TOGGLEBOX2 check box is selected or cleared, if either the TOGGLEBOX1 or TOGGLEBOX 2 checkboxes are selected (or if both are selected), the TOGGLEBOX3 checkbox is selected. If neither is selected, theTOGGLEBOX3 check box is cleared.

Matches

Using the Matches expression function performs the Matches function on two string data type values andreturns a logical value.

Note that using Equals in expressions is much more efficient that using Matches. The Equal command performsbetter during an actual configuration Q&A session, and is less error-prone, though Matches can be used withwildcards. The Equals syntax only performs one comparison and matches many.

For example, if the user enters ABB as the value into an input field (FILLIN1) during a configuration Q&A session:

• If a Prompt When expression with the syntax If fill -in1 matches "*BB*" then True has been defined foranother input field (FILLIN2), the Epicor application must make two comparisons between BB and the valueentered into FILLIN1 - it has to compare BB with AB (FILLIN1), and with BB (FILLIN1).

• If the Prompt When expression for FILLIN2 contains the syntax If fill -in1 equals "BBB" then True, the Epicorapplication must only make one comparison - it only has to compare BBB to the actual value entered intoFILLIN (in this case ABB) to confirm that the expression has been satisfied.

Where Located

The Matches expression function can be added as an On Leave or Rule expression.

Proper Syntax

The Matches expression function auto-populates the following string into the expression string:

{string} Matches {string}

297Epicor ERP | 9.05.702

Expression Builder FunctionsConfigurator Technical Reference Guide

Page 298: Epicor Configurator

Resulting Data Type

Logical

Logic/Algorithms

TOGGLEBOX1 = (FILLIN1 Matches FILLIN2)

Example

Check box inputs TOGGLEBOX1 and Character inputs FILLIN2, FILLIN3 have been added to a configurator inputpage.

The following On Leave expression is added to FILLIN2, updating the input value of TOGGLEBOX1 using theMatches expression function:

TOGGLEBOX1 = (FILLIN1 Matches FILLIN2)

If the value ABC is entered in the FILLIN1 input and ABC is entered in the FILLIN2 input, the expression abovewould be processed when leaving the FILLIN2 input, and the TOGGLEBOX1 check box would be selected. If thevalues in FILLIN1 and FILLIN2 didn't match, the TOGGLEBOX1 checkbox would be cleared.

Month of Year

Using the Month of Year expression function performs the Month function on the Date data type values andreturns a numeric value.

Where Located

The Month of Year expression function can be added as an On Leave or Rule expression.

Proper Syntax

The Month of Year expression function auto-populates the following string into the expression string:

Month({date})

Resulting Data Type

Numeric

Logic/Algorithms

FILLIN2 = (Month(FILLIN1))

Epicor ERP | 9.05.702298

Configurator Technical Reference GuideExpression Builder Functions

Page 299: Epicor Configurator

Example

Date input FILLIN1 and Decimal input FILLIN3 have been added to a configurator input page.

The following On Leave expression is added to FILLIN1,, updating the value of FILLIN2 using the Month of Yearexpression function:

FILLIN2 = (Month(FILLIN1))

If the date entered in FILLIN1 is 12/02/2008, the expression above would be processed when leaving the FILLIN1input, and the resulting numeric value of 12 would be populated in the FILLIN2 input.

Multiply

Using the Multiply expression function multiplies a Numeric type value by another Numeric type value andreturns a numerical result.

Where Located

The Multiply expression function can be added as an On Leave or Rule expression.

Proper Syntax

The Multiply expression function auto-populates the following string into the expression string:

{number} * {number}

Resulting Data Type

Numeric

Logic/Algorithms

FILLIN3 = (FILLIN1 * FILLIN2)

Example

Decimal inputs FILLIN1, FILLIN2 and FILLIN3 have been added to a configurator input page.

The following On Leave expression is added to FILLIN2, updating the input value of FILLIN3 using the Multiplyexpression function:

FILLIN3 = (FILLIN1 * FILLIN2)

If the value 25 is entered in the FILLIN1 input and the value 30 is entered in the FILLIN2 input, the expressionabove would be processed when leaving the FILLIN2 input, and the resulting value of 750 would be populatedin the FILLIN3 input.

299Epicor ERP | 9.05.702

Expression Builder FunctionsConfigurator Technical Reference Guide

Page 300: Epicor Configurator

Negate logical expression (NOT)

Using the Negate logical expression (NOT) expression function performs the Not function on logical typevalues and returns a logical value.

Where Located

The Negate logical expression (NOT) expression function can be added as an On Leave or Rule expression.

Proper Syntax

The Negate logical expression (NOT) expression function auto-populates the following string into the expressionstring:

Not {logical}

Resulting Data Type

Logical

Logic/Algorithms

TOGGLEBOX2 = (Not TOGGLEBOX1)

Example

Check box inputs TOGGLEBOX1 and TOGGLEBOX2 have been added to a configurator input page.

The following On Leave expression is added to TOGGLEBOX1, updating the input value of TOGGLEBOX2 usingthe Negate logical expression (NOT) expression function:

TOGGLEBOX2 = (Not TOGGLEBOX1)

If the TOGGLEBOX1 check box is selected, the expression above would be processed, and the TOGGLEBOX2check box would be cleared. If the TOGGLEBOX1 check box is cleared, the TOGGLEBOX2 check box would beselected.

Epicor ERP | 9.05.702300

Configurator Technical Reference GuideExpression Builder Functions

Page 301: Epicor Configurator

Numbers Equal

Using the Numbers Equal expression function returns a logical result after processing the expression betweentwo numeric data type values.

Where Located

The Numbers Equal expression function can be added as an On Leave or Rule expression.

Proper Syntax

The Numbers Equal expression function auto-populates the following string into the expression string:

{number} = {number}

Resulting Data Type

Logical

Logic/Algorithms

TOGGLEBOX1 = (FILLIN1 = FILLIN2)

Example

Decimal inputs FILLIN1, FILLIN2 and Check box input TOGGLEBOX1 have been added to a configurator inputpage.

The following On Leave expression is added to FILLIN2, updating the value of TOGGLEBOX1 using the NumbersEqual expression function:

TOGGLEBOX1 = (FILLIN1 = FILLIN2)

If the value entered in FILLIN1 is equal to the value entered in FILLIN2, when leaving the FILLIN2 input, the resultingvalue of the expression above would be true, and the TOGGLEBOX1 check box would be selected. If the valueentered in FILLIN1 isn't equal to the value entered in FILLIN2, the TOGGLEBOX1 check box would be cleared.

301Epicor ERP | 9.05.702

Expression Builder FunctionsConfigurator Technical Reference Guide

Page 302: Epicor Configurator

Numbers Greater or Equal

Using the Numbers Greater or Equal expression function returns a logical result after processing the expressionbetween two numeric data type values.

Where Located

The Numbers Greater or Equal expression function can be added as an On Leave or Rule expression.

Proper Syntax

The Numbers Greater or Equal expression function auto-populates the following string into the expression string:

{number} >= {number}

Resulting Data Type

Logical

Logic/Algorithms

TOGGLEBOX1 = (FILLIN1 >= FILLIN2)

Example

Decimal inputs FILLIN1, FILLIN2 and Check box input TOGGLEBOX1 have been added to a configurator inputpage.

The following On Leave expression is added to FILLIN2, updating the value of TOGGLEBOX1 using the NumbersGreater or Equal expression function:

TOGGLEBOX1 = (FILLIN1 >= FILLIN2)

If the value entered in FILLIN1 is greater than or equal to the value entered in FILLIN2, the resulting value of theexpression above would be true, and the TOGGLEBOX1 check box would be selected when leaving the FILLIN2input. If the value entered in FILLIN1 isn't greater than or equal to the value entered in FILLIN2, the TOGGLEBOX1check box would be cleared.

Epicor ERP | 9.05.702302

Configurator Technical Reference GuideExpression Builder Functions

Page 303: Epicor Configurator

Numbers Greater Than

Using the Numbers Greater Than expression function returns a logical result after processing the expressionbetween two numeric data type values.

Where Located

The Numbers Greater Than expression function can be added as an On Leave or Rule expression.

Proper Syntax

The Numbers Greater Than expression function auto-populates the following string into the expression string:

{number} > {number}

Resulting Data Type

Logical

Logic/Algorithms

TOGGLEBOX1 = (FILLIN1 > FILLIN2)

Example

Decimal inputs FILLIN1, FILLIN2 and Check box input TOGGLEBOX1 have been added to a configurator inputpage.

The following On Leave expression is added to FILLIN2, updating the value of TOGGLEBOX1 using the NumbersGreater Than expression function:

TOGGLEBOX1 = (FILLIN1 > FILLIN2)

If the value entered in FILLIN1 is greater than the value entered in FILLIN2, the resulting value of the expressionabove would be true, and the TOGGLEBOX1 check box would be selected when leaving the FILLIN2 input. If thevalue entered in FILLIN1 isn't greater than the value entered in FILLIN2, the TOGGLEBOX1 check box would becleared.

303Epicor ERP | 9.05.702

Expression Builder FunctionsConfigurator Technical Reference Guide

Page 304: Epicor Configurator

Numbers Less or Equal

Using the Numbers Less or Equal expression function returns a logical result after processing the expressionbetween two numeric data type values.

Where Located

The Numbers Less or Equal expression function can be added as an On Leave or Rule expression.

Proper Syntax

The Numbers Less or Equal expression function auto-populates the following string into the expression string:

{number} <= {number}

Resulting Data Type

Logical

Logic/Algorithms

TOGGLEBOX1 = (FILLIN1 <= FILLIN2)

Example

Decimal inputs FILLIN1, FILLIN2 and Check box input TOGGLEBOX1 have been added to a configurator inputpage.

The following On Leave expression is added to FILLIN2, updating the value of TOGGLEBOX1 using the NumbersLess or Equal expression function:

TOGGLEBOX1 = (FILLIN1 <= FILLIN2)

If the value entered in FILLIN1 is less than or equal to the value entered in FILLIN2, the resulting value of theexpression above would be true, and the TOGGLEBOX1 check box would be selected when leaving the FILLIN2input. If the value entered in FILLIN1 isn't less than or equal to the value entered in FILLIN2, the TOGGLEBOX1check box would be cleared.

Epicor ERP | 9.05.702304

Configurator Technical Reference GuideExpression Builder Functions

Page 305: Epicor Configurator

Numbers Less Than

Using the Numbers Less Than expression function returns a logical result after processing the expression betweentwo numeric data type values.

Where Located

The Numbers Less Than expression function can be added as an On Leave or Rule expression.

Proper Syntax

The Numbers Less Than expression function auto-populates the following string into the expression string:

{number} < {number}

Resulting Data Type

Logical

Logic/Algorithms

TOGGLEBOX1 = (FILLIN1 < FILLIN2)

Example

Decimal inputs FILLIN1, FILLIN2 and Check box input TOGGLEBOX1 have been added to a configurator inputpage.

The following On Leave expression is added to FILLIN2, updating the value of TOGGLEBOX1 using the NumbersLess Than expression function:

TOGGLEBOX1 = (FILLIN1 < FILLIN2)

If the value entered in FILLIN1 is less than the value entered in FILLIN2, the resulting value of the expression abovewould be true, and the TOGGLEBOX1 check box would be selected when leaving the FILLIN2 input. If the valueentered in FILLIN1 isn't less than the value entered in FILLIN2, the TOGGLEBOX1 check box would be cleared.

305Epicor ERP | 9.05.702

Expression Builder FunctionsConfigurator Technical Reference Guide

Page 306: Epicor Configurator

Numbers Not Equal

Using the Numbers Not Equal expression function returns a logical result after processing the expression betweentwo numeric data type values.

Where Located

The Numbers Not Equal expression function can be added as an On Leave or Rule expression.

Proper Syntax

The Numbers Not Equal expression function auto-populates the following string into the expression string:

{number} <> {number}

Resulting Data Type

Logical

Logic/Algorithms

TOGGLEBOX1 = (FILLIN1 <> FILLIN2)

Example

Decimal inputs FILLIN1, FILLIN2 and Check box input TOGGLEBOX1 have been added to a configurator inputpage.

The following On Leave expression is added to FILLIN2, updating the value of TOGGLEBOX1 using the NumbersNot Equal expression function:

TOGGLEBOX1 = (FILLIN1 <> FILLIN2)

If the value entered in FILLIN1 is not equal to the value entered in FILLIN2, the resulting value of the expressionabove would be true, and the TOGGLEBOX1 check box would be selected when leaving the FILLIN2 input. If thevalue entered in FILLIN1 is equal to the value entered in FILLIN2, the TOGGLEBOX1 check box would be cleared.

Numeric Constant/Field/Input/Calculation

Using the Numeric Constant/Field/Input/Calculation expression function allows entry of the following typesof value into the expression string:

• Numeric Constant

• Field

• Input

• Calculation

Epicor ERP | 9.05.702306

Configurator Technical Reference GuideExpression Builder Functions

Page 307: Epicor Configurator

Where Located

The Numeric Constant/Field/Input/Calculation expression function can be added as an On Leave or Rule expression.

Proper Syntax

The Numeric Constant/Field/Input/Calculation expression function auto-populates the following string into theexpression string:

{number}

Resulting Data Type

Numeric

Examples

Example 1 - Numeric Constant

FILLIN1 = 123.67, where FILLIN1 is a decimal input.

Example 2 - Field

Quantity = JobAsmbl.QtyPer

QtyPer is a field in the JobAsmbl database table.

Example 3 - Numeric Input

JobAsmbl.Numeric01 = Temp

Temp is an input field used in the configuration Q & A session.

Example 4 - Calculation

JobAsmbl.QtyPer = decFactor

decFactor is a Calculation field that is defined using a Calculation rule function. Refer to Use of Rules Types inRules Processing for more details.

Example 5

Another example of the Numeric Constant/Field/Input/Calculation expression function can also be found in theExpression Functions / Content Functions topic in the Primary Components and Calculations section ofthis document.

307Epicor ERP | 9.05.702

Expression Builder FunctionsConfigurator Technical Reference Guide

Page 308: Epicor Configurator

Raise to a Power

Using the Raise to a Power expression function performs the Exp function using the two numeric data typevalues and returns a numeric value.

Where Located

The Raise to a Power expression function can be added as an On Leave or Rule expression.

Proper Syntax

The Raise to a Power expression function auto-populates the following string into the expression string:

Exp({number},{number})

Resulting Data Type

Numeric

Logic/Algorithms

FILLIN2 = (Exp(FILLIN1,2))

Example

Decimal inputs FILLIN1 and FILLIN2 have been added to a configurator input page.

The following On Leave expression is added to FILLIN1, updating the input value of FILLIN2 using the Raise to aPower expression function:

FILLIN2 = (Exp(FILLIN1,2))

If the value 5 is entered in the FILLIN1 input, the expression above would be processed, raising the power to 2,and the resulting value of 25 would be populated in the FILLIN2 input when leaving the FILLIN1 input.

Random

Using the Random expression function performs the Exp function using the two numeric data type values andreturns a numeric value.

Where Located

The Random expression function can be added as an On Leave or Rule expression.

Proper Syntax

The Random expression function auto-populates the following string into the expression string:

Epicor ERP | 9.05.702308

Configurator Technical Reference GuideExpression Builder Functions

Page 309: Epicor Configurator

Random({number},{number})

Resulting Data Type

Numeric

Logic/Algorithms

FILLIN2 = (Random(1,10))

Example

Decimal inputs FILLIN1 and FILLIN2 have been added to a configurator input page.

The following On Leave expression is added to FILLIN1, updating the input value of FILLIN2 using the Randomexpression function:

FILLIN2 = (Random(1,10))

The expression above would be processed when leaving the FILLIN1 input, and a random number between 1and 10 would be populated in the FILLIN2 input.

Remainder

Using the Remainder expression function performs the Modulo operator using the two numeric data typevalues and returns a numeric value.

Where Located

The Remainder expression function can be added as an On Leave or Rule expression.

Proper Syntax

The Remainder expression function auto-populates the following string into the expression string:

{number} Modulo {number}

Resulting Data Type

Numeric

Logic/Algorithms

FILLIN3 = (FILLIN1 Modulo FILLIN2)

309Epicor ERP | 9.05.702

Expression Builder FunctionsConfigurator Technical Reference Guide

Page 310: Epicor Configurator

Example

Decimal inputs FILLIN1, FILLIN2 and FILLIN3 have been added to a configurator input page.

The following On Leave expression is added to FILLIN2, updating the input value of FILLIN3 using the Remainderexpression function:

FILLIN3 = (FILLIN1 Modulo FILLIN2)

If the value 13 is entered in the FILLIN1 input and the value 5 is entered in the FILLIN2 input, the expression abovewould be processed when leaving the FILLIN2 input, and the resulting value of 3 would be populated in theFILLIN3 input (13 / 5 = 2 with a remainder of 3).

Round

Using the Round expression function performs the Round function using the two numeric data type values andreturns a numeric value.

Where Located

The Round expression function can be added as an On Leave or Rule expression.

Proper Syntax

The Round expression function auto-populates the following string into the expression string:

Round({number},0)

Resulting Data Type

Numeric

Logic/Algorithms

FILLIN2 = (Round(FILLIN1,2))

Example

Decimal inputs FILLIN1 and FILLIN2 have been added to a configurator input page.

The following On Leave expression is added to FILLIN1, updating the input value of FILLIN2 using the Roundexpression function (2 being the decimal precision):

FILLIN2 = (Round(FILLIN1,2))

If the value 13.755 is entered in the FILLIN1 input, the expression above would be processed when leaving theFILLIN1 input, and the resulting value of 13.76 would be populated in the FILLIN2 input. If you wish for FILLIN2to be an integer, enter FILLIN2 = (Round(FILLIN1,0).

Epicor ERP | 9.05.702310

Configurator Technical Reference GuideExpression Builder Functions

Page 311: Epicor Configurator

Secant

Using the Secant expression function calculates the Secant of a Numeric type value and returns a logical numericresult.

Where Located

The Secant expression function can be added as an On Leave or Rule expression.

Proper Syntax

The Secant expression function auto-populates the following string into the expression string:

SEC({number})

Resulting Data Type

Numeric

Logic/Algorithms

FILLIN2 = (SEC(FILLIN1))

Example

Decimal inputs FILLIN1 and FILLIN2 have been added to a configurator input page.

The following On Leave expression is added to FILLIN1, updating the input value of FILLIN2 using the Secantexpression function:

FILLIN2 = (SEC(FILLIN1))

If the value 100 is entered in the FILLIN1 input, the expression above would be processed when leaving the FILLIN1input, and the resulting value of -5.76 would be populated in the FILLIN2 input.

Set Next Input Page

The Set Next Input Page expression function allows you to set the next input page in a product configuration.It is executed when paging forward through a configuration.

The numeric data type value that is passed to this function is the next input page displayed to a user.

311Epicor ERP | 9.05.702

Expression Builder FunctionsConfigurator Technical Reference Guide

Page 312: Epicor Configurator

Where Located

The Set Next Input Page expression function can only be added to the On Leave expressions at the page level(located on the Page Detail sheet in Product Configurator).

Proper Syntax

The Set Next Input Page expression function auto-populates the following string into the expression string:

SetNextInputPage({number})

Resulting Data Type

PageAssignment

Logic/Algorithms

(SetNextInputPage(5))

Example

The following On Leave expression is added to the first input page using the Set Next Input Page expressionfunction:

(SetNextInputPage(5))

When selecting the next page button during the configuration process, it displays input page 5 and skips anyinput pages that may have been defined between the first input page and the fifth input page. Settings in otherProduct Configurator sheets determine whether the skipped pages should invoke On Leave logic or not.

Set Part Number

In a multi-company enterprise configuration environment, the Set Part Number expression can be used whendefining structure rules in a Sales company. They can be defined to perform part number "swaps"; this worksin a manner similar to how Set Field method rules perform similar part number swaps for subassembly configuredparts in a single company environments.

When structure rules are processed during an actual Configuration session in the Sales company, the Epicorapplication determines if a Set Part Number structure rule function has been defined for the subassembly. It thenswaps out the 'dummy' part number from the structure definition with an actual configured part; this is theactual part number that is displayed when the part is configured in the external Sales company.

Manufacturing Company

For example, when a top level configured part (that contains subassembly configured parts) is configured in theManufacturing company, the Epicor application uses the Method of Manufacture (MOM) defined in the EngineeringWorkbench to determine what subassembly configured parts need to be displayed. It also processes any applicablemethod rules defined in the Configurator Designer, and applies the associated Keep When and Set Field rules(among others) to the determine the actual material content of the configured item being manufactured.

• In this environment, when this configured part is defined as an Enterprise Configurator part (by selecting theEnterprise Configurator checkbox on the Configurator Designer > Status sheet), it designates that the partcan also be configured in an external Sales company.

Epicor ERP | 9.05.702312

Configurator Technical Reference GuideExpression Builder Functions

Page 313: Epicor Configurator

Note Subassembly configured parts must also be defined as enterprise configurator parts.

• Since the Method of Manufacture (MOM) and method rules defined in the Manufacturing company are notexported to the external Sales company, the Epicor application cannot determine if any configuredsubassemblies needs to be displayed when the part is actually configured in the Sales company.

• Hence, the Sales company must use structure definitions to determine the subassembly configured parts thatneed to be displayed. The Epicor application must then process these structure rules to properly process anddetermine placeholder functionality.

In order to do this, once you have designated the configured part (and its associated subassembly configuredparts) as an enterprise configurator in the Manufacturing company, you must run the Refresh StructureDefinitions selection on the Configurator Designer > Actions menu. This is only used when designing aconfigurator that is going to be used in external sales companies (enterprise configurator).

Refresh Structure Definitions identifies and defines a list of subassembly configured parts that need to be displayedduring the configuration session in the Sales companies. It processes through all levels of the configuration,determines all the subassembly configured parts that were previously defined in Engineering Workbench andcreate structure definitions. Structure rules must be then created (in the Configurator Designer > Structure Rulessheet) against the structure definitions for each subassembly configured part.

• You do this by selecting the structure definitions for the desired subassembly configurations in the Tree viewin the Configurator Designer > Structure Rules sheet.

• Once a structure definition has been selected, the New Structure Rule option is available in the toolbar. Youthen the select Set Part Number option in the Expression Builder to create a rules that swaps out theplaceholder part number and displays a different subassembly configured part. These structure rules are similarKeep When and Set Field method rules defined in a single-company configurator environment to determinewhat subassembly configured parts should be displayed.

• Once the structure definitions have been generated and corresponding structure rules have been defined inthe Manufacturing company, they are exported to external Sales companies using the Enterprise ConfiguratorSync or Enterprise Configurator Direct processes.

Sales Company

When imported structure rules are processed during an actual Configuration session in the Sales company, theEpicor application determines if a structure rule (containing a Set Part Number expression) has been definedfor a subassembly and it processes the rule expression. If the conditions of the rule are satisfied, the Epicorapplication replaces the placeholder subassembly part number with the part number specified in the rule expression;this is the actual part number that is displayed when the part is configured in the external Sales company.

Set Previous Input Page

The Set Previous Input Page expression function allows you to set the previous input page in a productconfiguration. It is executed when paging backward through a configuration.

The numeric data type value that is passed to this function is the previous input page displayed to a user.

313Epicor ERP | 9.05.702

Expression Builder FunctionsConfigurator Technical Reference Guide

Page 314: Epicor Configurator

Where Located

The Set Next Input Page expression function can only be added to the On Leave expressions at the page level(located on the Page Detail sheet in Product Configurator).

Proper Syntax

The Set Next Input Page expression function auto-populates the following string into the expression string:

SetPrevInputPage({number})

Resulting Data Type

PageAssignment

Logic/Algorithms

(SetPrevInputPage(2))

Example

The following On Leave expression is added to the last input page using the Set Previous Input Page expressionfunction:

(SetPrevInputPage(2))

If the last input page is currently being displayed, when the previous page button is selected, it displays inputpage 2 and skips any input pages that may have been defined between input page 2 and the last input page.

Sine

Using the Sine expression function calculates the Sine of a numeric data type and returns a value.

Where Located

The Sine expression function can be added as an On Leave or Rule expression.

Proper Syntax

The Sine expression function auto-populates the following string into the expression string:

SIN({number})

Resulting Data Type

Value

Epicor ERP | 9.05.702314

Configurator Technical Reference GuideExpression Builder Functions

Page 315: Epicor Configurator

Logic/Algorithms

FILLIN2 = (SIN(FILLIN1))

Example

Decimal inputs FILLIN1 and FILLIN2 have been added to a configurator input page.

The following On Leave expression is added to FILLIN1, updating the input value of FILLIN2 using the Sine expressionfunction:

FILLIN2 = (SIN(FILLIN1))

If the value 100 is entered in the FILLIN1 input, the expression above would be processed when leaving the FILLIN1input, and the resulting value of .17 would be populated in the FILLIN2 input.

Smaller of Two Numbers

Using the Smaller of Two Numbers expression function performs the Minimum function using the two numericdata type values and returns a numeric value.

Where Located

The Smaller of Two Numbers expression function can be added as an On Leave or Rule expression.

Proper Syntax

The Smaller of Two Numbers expression function auto-populates the following string into the expression string:

Minimum({number},{number})

Resulting Data Type

Numeric

Logic/Algorithms

FILLIN3 = (Minimum(FILLIN1,FILLIN2))

Example

Decimal inputs FILLIN1, FILLIN2 and FILLIN3 have been added to a configurator input page.

The following On Leave expression is added to FILLIN2, updating the input value of FILLIN3 using the Smaller ofTwo Numbers expression function:

FILLIN3 = (Minimum(FILLIN1,FILLIN2))

If the value 6 is entered in the FILLIN1 input and the value of 10 is entered in the FILLIN2 input, the expressionabove would be processed when leaving the FILLIN2 input, and the resulting numeric value of 6 would bepopulated in the FILLIN3 input.

315Epicor ERP | 9.05.702

Expression Builder FunctionsConfigurator Technical Reference Guide

Page 316: Epicor Configurator

Square Root

Using the Square Root expression function performs the Sqrt function using the numeric data type value andreturns a numeric value.

Where Located

The Square Root expression function can be added as an On Leave or Rule expression.

Proper Syntax

The Square Root expression function auto-populates the following string into the expression string:

SQRT({number})

Resulting Data Type

Numeric

Logic/Algorithms

FILLIN2 = (SQRT(FILLIN1))

Example

Decimal inputs FILLIN1 and FILLIN2 have been added to a configurator input page.

The following On Leave expression is added to FILLIN1, updating the input value of FILLIN2 using the Square Rootexpression function:

FILLIN2 = (SQRT(FILLIN1))

If the value 81 is entered in the FILLIN1 input, the expression above would be processed when leaving the FILLIN1input, and the resulting value of 9 would be populated in the FILLIN2 input.

String Constant/Field/Input/Calculation

Using the String Constant/Field/Input/Calculation expression function allows entry of the following valuesinto the expression string.

• String Constant

• Field

• Input

• Calculation

Epicor ERP | 9.05.702316

Configurator Technical Reference GuideExpression Builder Functions

Page 317: Epicor Configurator

Where Located

The Numeric Constant/Field/Input/Calculation expression function can be added as an On Leave or Rule expression.

Proper Syntax

The Numeric Constant/Field/Input/Calculation expression function auto-populates the following string into theexpression string:

{number}

Resulting Data Type

Numeric

Examples

Example 1 - String Constant

FILLIN1 = "No Selection", where FILLIN1 is a string input.

Example 2 - Field

DescText = JobAsmbl.Description

Description is a field in the JobAsmbl database table.

Example 3 - String Input

JobAsmbl.Character01 = Editor-1

Editor-1 is an input field used in the configuration Q & A session.

Example 4 - Calculation

JobAsmbl.Character02 = chrSpecification

chrSpecification is a Calculation field that is defined using a Calculation rule function. Refer to Use of RulesTypes in Rules Processing for more details.

Strings Equal

Using the Strings Equal expression function returns a logical result after processing the expression between twostring data type values.

Where Located

The Strings Equal expression function can be added as an On Leave or Rule expression.

Proper Syntax

The Strings Equal expression function auto-populates the following string into the expression string:

317Epicor ERP | 9.05.702

Expression Builder FunctionsConfigurator Technical Reference Guide

Page 318: Epicor Configurator

{string} = {string}

Resulting Data Type

Logical

Logic/Algorithms

TOGGLEBOX1 = (FILLIN1 = FILLIN2)

Example

Character inputs FILLIN1, FILLIN2 and Check box input TOGGLEBOX1 have been added to a configurator inputpage.

The following On Leave expression is added to FILLIN2, updating the value of TOGGLEBOX1 using the StringsEqual expression function:

TOGGLEBOX1 = (FILLIN1 = FILLIN2)

If the value entered in FILLIN1 is equal to the value entered in FILLIN2, the resulting value of the expression abovewould be true when leaving the FILLIN2 input, and the TOGGLEBOX1 check box would be selected. If the valueentered in FILLIN1 isn't equal to the value entered in FILLIN2, the TOGGLEBOX1 check box would be cleared.

Strings Greater or Equal

Using the Strings Greater or Equal expression function returns a logical result after processing the expressionbetween two string data type values.

Where Located

The Strings Greater or Equal expression function can be added as an On Leave or Rule expression.

Proper Syntax

The Strings Greater or Equal expression function auto-populates the following string into the expression string:

{string} >= {string}

Resulting Data Type

Logical

Logic/Algorithms

TOGGLEBOX1 = (FILLIN1 >= FILLIN2)

Epicor ERP | 9.05.702318

Configurator Technical Reference GuideExpression Builder Functions

Page 319: Epicor Configurator

Example

Character inputs FILLIN1, FILLIN2 and Check box input TOGGLEBOX1 have been added to a configurator inputpage.

The following On Leave expression is added to FILLIN2, updating the value of TOGGLEBOX1 using the StringsGreater or Equal expression function:

TOGGLEBOX1 = (FILLIN1 >= FILLIN2)

If the value entered in FILLIN1 is greater than or equal to the value entered in FILLIN2, the resulting value of theexpression above would be true, and the TOGGLEBOX1 check box would be selected when leaving the FILLIN2input. If the value entered in FILLIN1 isn't greater than or equal to the value entered in FILLIN2, the TOGGLEBOX1check box would be cleared.

Strings Greater Than

Using the Strings Greater Than expression function returns a logical result after processing the expressionbetween two string data type values.

Where Located

The Strings Greater Than expression function can be added as an On Leave or Rule expression.

Proper Syntax

The Strings Greater Than expression function auto-populates the following string into the expression string:

{string} > {string}

Resulting Data Type

Logical

Logic/Algorithms

TOGGLEBOX1 = (FILLIN1 > FILLIN2)

Example

Character inputs FILLIN1, FILLIN2 and Check box input TOGGLEBOX1 have been added to a configurator inputpage.

The following On Leave expression is added to FILLIN2, updating the value of TOGGLEBOX1 using the StringsGreater Than expression function:

TOGGLEBOX1 = (FILLIN1 > FILLIN2)

If the value entered in FILLIN1 is greater than the value entered in FILLIN2, the resulting value of the expressionabove would be true, and the TOGGLEBOX1 check box would be selected when leaving the FILLIN2 input. If thevalue entered in FILLIN1 isn't greater than the value entered in FILLIN2, the TOGGLEBOX1 check box would becleared.

319Epicor ERP | 9.05.702

Expression Builder FunctionsConfigurator Technical Reference Guide

Page 320: Epicor Configurator

Strings Less or Equal

Using the Strings Less or Equal expression function returns a logical result after processing the expressionbetween two string data type values.

Where Located

The Strings Less or Equal expression function can be added as an On Leave or Rule expression.

Proper Syntax

The Strings Less or Equal expression function auto-populates the following string into the expression string:

{string} <= {string}

Resulting Data Type

Logical

Logic/Algorithms

TOGGLEBOX1 = (FILLIN1 <= FILLIN2)

Example

Character inputs FILLIN1, FILLIN2 and Check box input TOGGLEBOX1 have been added to a configurator inputpage.

The following On Leave expression is added to FILLIN2, updating the value of TOGGLEBOX1 using the StringsLess or Equal expression function:

TOGGLEBOX1 = (FILLIN1 <= FILLIN2)

If the value entered in FILLIN1 is less than or equal to the value entered in FILLIN2, the resulting value of theexpression above would be true, and the TOGGLEBOX1 check box would be selected when leaving the FILLIN2input. If the value entered in FILLIN1 isn't less than or equal to the value entered in FILLIN2, the TOGGLEBOX1check box would be cleared.

Epicor ERP | 9.05.702320

Configurator Technical Reference GuideExpression Builder Functions

Page 321: Epicor Configurator

Strings Less Than

Using the Strings Less Than expression function returns a logical result after processing the expression betweentwo string data type values.

Where Located

The Strings Less Than expression function can be added as an On Leave or Rule expression.

Proper Syntax

The Strings Less Than expression function auto-populates the following string into the expression string:

{string} < {string}

Resulting Data Type

Logical

Logic/Algorithms

TOGGLEBOX1 = (FILLIN1 < FILLIN2)

Example

Character inputs FILLIN1, FILLIN2 and Check box input TOGGLEBOX1 have been added to a configurator inputpage.

The following On Leave expression is added to FILLIN2, updating the value of TOGGLEBOX1 using the StringsLess Than expression function:

TOGGLEBOX1 = (FILLIN1 < FILLIN2)

If the value entered in FILLIN1 is less than the value entered in FILLIN2, the resulting value of the expression abovewould be true, and the TOGGLEBOX1 check box would be selected when leaving the FILLIN2 input. If the valueentered in FILLIN1 isn't less than the value entered in FILLIN2, the TOGGLEBOX1 check box would be cleared.

321Epicor ERP | 9.05.702

Expression Builder FunctionsConfigurator Technical Reference Guide

Page 322: Epicor Configurator

Strings Not Equal

Using the Strings Not Equal expression function returns a logical result after processing the expression betweentwo string data type values.

Where Located

The Strings Not Equal expression function can be added as an On Leave or Rule expression.

Proper Syntax

The Strings Not Equal expression function auto-populates the following string into the expression string:

{string} <> {string}

Resulting Data Type

Logical

Logic/Algorithms

TOGGLEBOX1 = (FILLIN1 <> FILLIN2)

Example

Character inputs FILLIN1, FILLIN2 and Check box input TOGGLEBOX1 have been added to a configurator inputpage.

The following On Leave expression is added to FILLIN2, updating the value of TOGGLEBOX1 using the StringsNot Equal expression function:

TOGGLEBOX1 = (FILLIN1 <> FILLIN2)

If the value entered in FILLIN1 is not equal to the value entered in FILLIN2, the resulting value of the expressionabove would be true, and the TOGGLEBOX1 check box would be selected when leaving the FILLIN2 input. If thevalue entered in FILLIN1 is equal to the value entered in FILLIN2, the TOGGLEBOX1 check box would be cleared.

Epicor ERP | 9.05.702322

Configurator Technical Reference GuideExpression Builder Functions

Page 323: Epicor Configurator

Substring

Using the Substring expression function performs the Substring function on the string data type value, usingthe first numeric data type value as the starting position, and the second numeric data type value as the lengthof the substring. It extracts a portion of a character string from a field or variable.

Where Located

The Substring expression function can be added as an On Leave or Rule expression.

Proper Syntax

The Substring expression function auto-populates the following string into the expression string:

Substring({string},Integer({number}),Integer({number}))

Resulting Data Type

String

Logic/Algorithms

FILLIN2 = (Substring(FILLIN1,Integer(1),Integer(3)))

Example

Character inputs FILLIN1, FILLIN2 and Check box input TOGGLEBOX1 have been added to a configurator inputpage.

The following On Leave expression is added to FILLIN1, updating the input value of FILLIN2 using the Substringexpression function:

FILLIN2 = (Substring(FILLIN1,Integer(1),Integer(3)))

If the value ABCDEF is entered in the FILLIN1 input, the expression above would be processed when leaving theFILLIN1 input, and the resulting string value of ABC would be populated in the FILLIN3 input.

Subtract

Using the Subtract expression function subtracts a Numeric type value from another Numeric type value andreturns a numerical result.

Note the following:

• Subtracting one Decimal expression from another produces a Decimal value.

• Subtracting one Integer expression from another produces an Integer value.

• Subtracting an integer expression (Integer or INT64) from a decimal expression (or subtracting a decimalexpression from an integer expression) produces a Decimal value.

• Subtracting a mix of Integer and INT64 expressions produces an INT64 value.

323Epicor ERP | 9.05.702

Expression Builder FunctionsConfigurator Technical Reference Guide

Page 324: Epicor Configurator

Where Located

The Subtract expression function can be added as an On Leave or Rule expression.

Proper Syntax

The Subtract expression function auto-populates the following string into the expression string:

{number} - {number}

Resulting Data Type

Numeric

Logic/Algorithms

FILLIN3 = (FILLIN1 - FILLIN2)

Example

Decimal inputs FILLIN1, FILLIN2 and FILLIN3 have been added to a configurator input page.

The following On Leave expression is added to FILLIN2, updating the input value of FILLIN3 using the Subtractexpression function:

FILLIN3 = (FILLIN1 - FILLIN2)

If the value 10 is entered in the FILLIN1 input and the value 6 is entered in the FILLIN2 input, the expression abovewould be processed when leaving the FILLIN2 input, and the resulting value of 4 would be populated in theFILLIN3 input.

Subtract Days from Date Value

Using the Subtract Days from Date Value expression function subtracts a Numeric type value from a Datetype value and returns a Date result. It subtracts a number of days from a date to produce a date result, orsubtracts one date from another to produce an Integer result that represents the number of days between twodates.

Where Located

The Subtract Days from Date Value expression function can be added as an On Leave or Rule expression.

Proper Syntax

The Subtract Days from Date Value expression function auto-populates the following string into the expressionstring:

{date} - {number}

Epicor ERP | 9.05.702324

Configurator Technical Reference GuideExpression Builder Functions

Page 325: Epicor Configurator

Resulting Data Type

Date

Logic/Algorithms

FILLIN2 = (FILLIN1 - 5)

Example

Date inputs FILLIN1 and FILLIN1 have been added to a configurator input page.

The following On Leave expression is added to FILLIN1, updating the input value of FILLIN2 using the SubtractDays from Date Value expression function:

FILLIN2 = (FILLIN1 - 5)

If the value 12/06/2008 is entered in the FILLIN1 input, the expression above would be processed when leavingthe FILLIN1 input, and the resulting value of 12/01/2008 would be populated in the FILLIN2 input.

Tangent

Using the Tangent expression function calculates the Tangent of the numeric data type value and returns anumeric value.

Where Located

The Tangent expression function can be added as an On Leave or Rule expression.

Proper Syntax

The Tangent expression function auto-populates the following string into the expression string:

TAN({number})

Resulting Data Type

Numeric

Logic/Algorithms

FILLIN2 = (TAN(FILLIN1))

Example

Decimal inputs FILLIN1 and FILLIN1 have been added to a configurator input page.

The following On Leave expression is added to FILLIN1, updating the input value of FILLIN2 using the Tangentexpression function:

325Epicor ERP | 9.05.702

Expression Builder FunctionsConfigurator Technical Reference Guide

Page 326: Epicor Configurator

FILLIN2 = (TAN(FILLIN1))

If the value 20 is entered in the FILLIN1 input, the expression above would be processed when leaving the FILLIN1input, and the resulting value of .36 would be populated in the FILLIN2 input.

Truncate

Using the Truncate expression function performs the Truncate function to truncate a numeric data type value,and returns a Decimal numeric value result.

Where Located

The Truncate expression function can be added as an On Leave or Rule expression.

Proper Syntax

The Truncate expression function auto-populates the following string into the expression string:

Truncate({number},0)

Resulting Data Type

Numeric

Logic/Algorithms

FILLIN2 = (Truncate(FILLIN1,2))

Example

Decimal inputs FILLIN1 and FILLIN1 have been added to a configurator input page.

The following On Leave expression is added to FILLIN1, updating the input value of FILLIN2 using the Truncateexpression function (2 being the number of decimal places):

FILLIN2 = (Truncate(FILLIN1,2))

If the value 12.34567 is entered in the FILLIN1 input, the expression above would be processed when leaving theFILLIN1 input, and the resulting value of 12.34 would be populated in the FILLIN2 input. Please note that truncationdoes not yield the same results as rounding; rounding this value to two decimal places yields a result of 12.35.

Epicor ERP | 9.05.702326

Configurator Technical Reference GuideExpression Builder Functions

Page 327: Epicor Configurator

Year Value

Using the Year Value expression function performs the Year Value function on the Date data type value andreturns a numeric value result. It evaluates a date expression and returns the year value of that date (includingthe century) as an Integer value.

Where Located

The Year Value expression function can be added as an On Leave or Rule expression.

Proper Syntax

The Year Value expression function auto-populates the following string into the expression string:

Year({date})

Resulting Data Type

Numeric

Logic/Algorithms

FILLIN2 = (Year(FILLIN1))

Example

Decimal inputs FILLIN1 and FILLIN1 have been added to a configurator input page.

The following On Leave expression is added to FILLIN1, updating the value of FILLIN2 using the Year Valueexpression function:

FILLIN2 = (Year(FILLIN1))

If the date entered in FILLIN1 is 12/02/2008, the expression above would be processed when leaving the FILLIN1input, and the resulting numeric value of 2008 would be populated in the FILLIN2 input.

327Epicor ERP | 9.05.702

Expression Builder FunctionsConfigurator Technical Reference Guide

Page 328: Epicor Configurator

Context Functions

This section details context functions that have been developed by Epicor for use when defining a partconfiguration. It contains descriptive information, where the context function can be added, proper syntax,resulting data type, logic/algorithms and examples for each function.

Context functions can be used in expressions for pricing, Prompt When, On Leave and Dynamic List processing.These functions are valuable if numbers from the quote, order, job, purchase order or demand order are beingused as part of the configuration. As a result of using these functions, a configuration can behave differently ifon a quote from how it would if on an order, job, purchase order or demand order.

Note that many of these functions can be used both as Rule expressions and as On Leave expressions in theConfigurator, but they auto-populate with different strings depending on where they are added. For example,the Current Job Number function can be added as an On Leave or Rule expression. However, the method inwhich this function displays is dependent on where it is entered.

• The Epicor application executes On Leave expressions when you enter values into a Configurator Input Screenyou have designed, while it executes Rule expressions when you use the Get Detail functions inOpportunity/Quote Entry or Job Entry.

• These "multiple -use" functions return the same result but the code that is processed in the background isdifferent due to the fact that they call different functions in the generated rule programs to achieve the sameresult. It displays as GetCurrentJobNum() when added to an On Leave expression, but displays asGetRuleCurrentJobNum(CurrentTableName,CurrentInRowID) when added to a Rule expression.

Current Configuration Mode

The Current Configuration Mode function returns a string value depending on where the part is currentlybeing configured.

It then returns the following values:

• Job - If the part is being configured in Job Entry.

• Quote - If the part is being configured in Quote Entry.

• Order - If the part is being configured in Order Entry.

• Test - If the part is being configured is being configured by selecting Test Inputs or Test Rules within ProductConfigurator.

Where Located

The Current Configuration Mode function can be added as an On Leave expression.

Proper Syntax

The Current Configuration Mode function auto-populates the following string into the On Leave expressionstring:

GetContextMode()

Epicor ERP | 9.05.702328

Configurator Technical Reference GuideContext Functions

Page 329: Epicor Configurator

Resulting Data Type

String

Logic/Algorithms

GetContextMode()

Example

Character inputs FILLIN1 and FILLIN2 have been added to a configurator input page.

The following On Leave expression is added to FILLIN1, updating the input value of FILLIN2 using the CurrentConfiguration Mode context function:

IF (GetContextMode()) = "JOB" THEN FILLIN2 = "ABC"

When leaving the FILLIN1 input, the expression above would be processed. If the part is being configured in JobEntry, the value of "ABC" would be populated in the FILLIN2 input.

Current Company

The Current Company function returns a string value of the current company ID.

Where Located

The Current Company function can be added as an On Leave or Rule expression.

The Current Company function can be added as an On Leave or Rule expression.

Proper Syntax

The Current Company function auto-populates the following string into the On Leave or Rule expression string:

GetCurrentCompany()

Resulting Data Type

String

Logic/Algorithms

GetCurrentCompany()

Example

Character inputs FILLIN1 and FILLIN2 have been added to a configurator input page.

The following On Leave expression is added to FILLIN1, updating the input value of FILLIN2 using the CurrentCompany context function:

329Epicor ERP | 9.05.702

Context FunctionsConfigurator Technical Reference Guide

Page 330: Epicor Configurator

IF (GetCurrentCompany()) = "YourCompany" THEN FILLIN2 = "ABC"

When leaving the FILLIN1 input, the expression above would be processed. If the value returned from theGetCurrentCompany() function is equal to "YourCompany", the value of "ABC" would be populated in theFILLIN2 input.

Current Job Number

If you are configuring the part in Job Entry, the Current Job Number function returns a string value of thecurrent job number.

Where Located

The Current Job Number function can be added as an On Leave or Rule expression.

Proper Syntax

The method in which the Current Job Number function displays is dependent on where it is entered:

• It displays as GetCurrentJobNum() when added to an On Leave expression.

• It displays as GetRuleCurrentJobNum(CurrentTableName,CurrentInRowID) when added to a Ruleexpression.

Resulting Data Type

String

Logic/Algorithms

GetCurrentJobNum()

GetRuleCurrentJobNum()

Example

The following On Leave expression is added to FILLIN1, updating the input value of FILLIN2 using the Current JobNumber context function:

FILLIN2 = (GetCurrentJobNum())

When leaving the FILLIN1 input, the expression above would be processed and the current job number wouldbe assigned to the FILLIN2 input. This rule function is also useful to retrieve information from one of the currentjob records. The following expression is added to FILLIN1:

find JobHead where JobHead.Company = "YourCompany"

JobNum = (GetCurrentJobNum()) no-lock no-error.

if available JobHead then

assign FILLIN2 = JobHead.PartDescription.

When leaving the FILLIN1 input, the expression above would be processed, and the Part Description from thecurrent JobHead record would be assigned to the FILLIN2 input.

Epicor ERP | 9.05.702330

Configurator Technical Reference GuideContext Functions

Page 331: Epicor Configurator

Current Order Number

If you are configuring the part in Order Entry, the Current Order Number function returns a numeric value ofthe current order number.

Where Located

The Current Order Number function can be added as an On Leave or Rule expression.

Proper Syntax

The method in which the Current Order Number function displays is dependent on where it is entered:

• It displays as GetCurrentOrderNum() when added to an On Leave expression.

• It displays as GetRuleCurrentOrderNum(CurrentTableName,CurrentInRowID) when added to a Ruleexpression.

Resulting Data Type

Numeric

Logic/Algorithms

GetCurrentOrderNum()

GetRuleCurrentOrderNum(CurrentTableName,CurrentInRowID)

Example

Decimal inputs FILLIN1 and FILLIN2 have been added to a configurator input page.

The following On Leave expression is added to FILLIN1, updating the input value of FILLIN2 using the CurrentOrder Number context function:

FILLIN2 = (GetCurrentOrderNum())

When leaving the FILLIN1 input, the expression above would be processed and the current order number wouldbe assigned to the FILLIN2 input. This rule function is also useful to retrieve information from one of the currentorder records. The following expression is added to FILLIN1:

find OrderHed where OrderHed.Company = "YourCompany"

OrderNum = (GetCurrentOrderNum()) no-lock no-error.

if available OrderHed then

assign FILLIN2 = OrderHed.CustNum.

When leaving the FILLIN1 input, the expression above would be processed and the customer number from thecurrent OrderHed record would be assigned to the FILLIN2 input.

331Epicor ERP | 9.05.702

Context FunctionsConfigurator Technical Reference Guide

Page 332: Epicor Configurator

Current Order Line

If you are configuring the part in Order Entry, the Current Order Line function returns a numeric value of thecurrent order line number.

Where Located

The Current Order Line function can be added as an On Leave or Rule expression.

Proper Syntax

The method in which the Current Order Line function displays is dependent on where it is entered:

• It displays as GetCurrentOrderLine() when added to an On Leave expression.

• It displays as GetRuleCurrentOrderLine(CurrentTableName,CurrentInRowID) when added to a Ruleexpression.

Resulting Data Type

Numeric

Logic/Algorithms

GetCurrentOrderLine()

GetRuleCurrentOrderLine()

Example

Decimal inputs FILLIN1 and FILLIN2 have been added to a configurator input page.

The following On Leave expression is added to FILLIN1, updating the input value of FILLIN2 using the CurrentOrder Line context function:

FILLIN2 = (GetCurrentoOrderLine())

When leaving the FILLIN1 input, the expression above would be processed and the current order line would beassigned to the FILLIN2 input. This rule function is also useful to retrieve information from one of the currentorder line record. The following expression is added to FILLIN1:

find OrderDtl where OrderDtl.Company = "YourCompany"

OrderNum = (GetCurrentOrderNum())

and OrderDtl.OrderLine = (GetCurrentOrderLine()) no-lock no-error.

if available OrderDtl then

assign FILLIN2 = OrderDtl.LineDesc.

When leaving the FILLIN1 input, the expression above would be processed and the order line description fromthe current OrderDtl record would be assigned to the FILLIN2 input.

Epicor ERP | 9.05.702332

Configurator Technical Reference GuideContext Functions

Page 333: Epicor Configurator

Current Plant

The Current Plant function returns a string value of the current plant ID.

Where Located

The Current Plant function can be added as an On Leave or Rule expression.

Proper Syntax

The Current Plant function auto-populates the following string into the On Leave or Rules expression string:

GetCurrentPlant()

Resulting Data Type

String

Logic/Algorithms

GetCurrentPlant()

Example

Character inputs FILLIN1 and FILLIN2 have been added to a configurator input page.

The following On Leave expression is added to FILLIN1, updating the input value of FILLIN2 using the CurrentPlant context function:

IF (GetCurrentPlant()) = "YourCurrentPlant" THEN FILLIN2 = "ABC"

When leaving the FILLIN1 input, the expression above would be processed. If the value returned from theGetCurrentPlant() function is equal to "YourCurrentPlant", the value of "ABC" would be populated in the FILLIN2input.

333Epicor ERP | 9.05.702

Context FunctionsConfigurator Technical Reference Guide

Page 334: Epicor Configurator

Current Quote Number

If you are configuring the part in Quote Entry, the Current Quote Number function returns a numeric value ofthe current quote number.

Where Located

The Current Quote Number function can be added as an On Leave or Rule expression.

Proper Syntax

The method in which the Current Quote Number function displays is dependent on where it is entered:

• It displays as GetCurrentQuoteNum() when added to an On Leave expression.

• It displays as GetRuleCurrent Quote Num(CurrentTableName,CurrentInRowID) when added to a Ruleexpression.

Resulting Data Type

Numeric

Logic/Algorithms

GetCurrentQuoteNum()

GetRuleCurrentQuoteNum(CurrentTableName,CurrentInRowID)

Example

Decimal inputs FILLIN1 and FILLIN2 have been added to a configurator input page.

The following On Leave expression is added to FILLIN1, updating the input value of FILLIN2 using the CurrentQuote Number context function:

FILLIN2 = (GetCurrentQuoteNum())

When leaving the FILLIN1 input, the expression above would be processed and the current quote number wouldbe assigned to the FILLIN2 input. This rule function is also useful to retrieve information from one of the currentquote records. The following expression is added to FILLIN1:

find QuoteHed where QuoteHed.Company = "YourCompany"

OrderNum = (GetCurrentQuoteNum()) no-lock no-error.

if available QuoteHed then

assign FILLIN2 = QuoteHed.CustNum.

When leaving the FILLIN1 input, the expression above would be processed and the customer number from thecurrent QuoteHed record would be assigned to the FILLIN2 input.

Epicor ERP | 9.05.702334

Configurator Technical Reference GuideContext Functions

Page 335: Epicor Configurator

Current Quote Line

If you are configuring the part in Quote Entry, the Current Quote Line function returns a numeric value of thecurrent quote line number.

Where Located

The Current Quote Line function can be added as an On Leave or Rule expression.

Proper Syntax

The method in which the Current Quote Line function displays is dependent on where it is entered:

• It displays as GetCurrentQuoteLine() when added to an On Leave expression.

• It displays as GetRuleCurrentQuoteLine(CurrentTableName,CurrentInRowID) when added to a Ruleexpression.

Resulting Data Type

Numeric

Logic/Algorithms

GetCurrentQuoteLine()

GetRuleCurrentQuoteLine(CurrentTableName,CurrentInRowID)

Example

Decimal inputs FILLIN1 and FILLIN2 have been added to a configurator input page.

The following On Leave expression is added to FILLIN1, updating the input value of FILLIN2 using the CurrentQuote Line context function:

FILLIN2 = (GetCurrentQuoteLine())

When leaving the FILLIN1 input, the expression above would be processed and the current quote line would beassigned to the FILLIN2 input. This rule function is also useful to retrieve information from one of the currentquote line record. The following expression is added to FILLIN1:

find QuoteDtl where QuoteDtl.Company = "YourCompany"

OrderNum = (GetCurrentQuoteNum())

and QuoteDtl.OrderLine = (GetCurrentQuoteLine()) no-lock no-error.

if available QuoteDtl then

assign FILLIN2 = QuoteDtl.LineDesc.

When leaving the FILLIN1 input, the expression above would be processed and the quote line description fromthe current QuoteDtl record would be assigned to the FILLIN2 input.

335Epicor ERP | 9.05.702

Context FunctionsConfigurator Technical Reference Guide

Page 336: Epicor Configurator

Current Assembly Sequence

The Current Assembly Sequence function returns the assembly sequence of the current record that is beingprocessed when using the Get Details sheet in Job Entry or Quote Entry.

Where Located

The Current Assembly Sequence function can be added as a Rule expression.

Proper Syntax

The Current Assembly Sequence function auto-populates the following string into the Rules expression editor:

GetRuleCurrentAsmblSeq(CurrentTableName,CurrentInRowID)

Resulting Data Type

Numeric

Logic/Algorithms

GetRuleCurrentAsmblSeq(CurrentTableName,CurrentInRowID)

Example

A numeric calculation rule is created for the material on Assembly Sequence 2, material 10 of the Method ofManufacture for a configured part using the following syntax:

GetRuleCurrentAsmblSeq(CurrentTableName,

When using the Get Details sheet in Quote Entry or Job Entry, the expression above would be processed and thevalue of 2 would be assigned to the numeric calculation rule.

Current Material Sequence

The Current Material Sequence function returns the material sequence of the current record that is beingprocessed when using the Get Details sheet in Job Entry or Quote Entry.

Where Located

The Current Material Sequence function can be added as a Rule expression.

Proper Syntax

The Current Material Sequence function auto-populates the following string into the Rules expression editor:

GetRuleCurrentMtlSeq(CurrentTableName,CurrentInRowID)

Epicor ERP | 9.05.702336

Configurator Technical Reference GuideContext Functions

Page 337: Epicor Configurator

Resulting Data Type

Numeric

Logic/Algorithms

GetRuleCurrentMtlSeq(CurrentTableName,CurrentInRowID)

Example

A numeric calculation rule is created for the material on Assembly Sequence 2, material 10 of the Method ofManufacture for a configured part:

GetRuleCurrentMtlSeq(CurrentTableName,CurrentInRowID)

When using the Get Details sheet in Quote Entry or Job Entry, the expression above would be processed and thevalue of 10 would be assigned to the numeric calculation rule.

Current Operation Detail Sequence

The Current Operation Detail Sequence function returns the operation detail sequence of the current recordthat is being processed when using the Get Details sheet in Job Entry or Quote Entry.

Where Located

The Current Material Sequence function can be added as a Rule expression.

Proper Syntax

The Current Material Sequence function auto-populates the following string into the Rules expression editor:

GetRuleCurrentOpDtlSeq(CurrentTableName,CurrentInRowID)

Resulting Data Type

Numeric

Logic/Algorithms

GetRuleCurrentOpDtlSeq(CurrentTableName,CurrentInRowID)

Example(s)

A numeric calculation rule is created for the operation detail on Assembly Sequence 0, Operation Sequence 10,Operation Detail Sequence 20 of the Method of Manufacture for a configured part:

GetRuleCurrentOpDtlSeq(CurrentTableName,CurrentInRowID)

When using the Get Details sheet in Quote Entry or Job Entry, the expression above would be processed and thevalue of 20 would be assigned to the numeric calculation rule.

337Epicor ERP | 9.05.702

Context FunctionsConfigurator Technical Reference Guide

Page 338: Epicor Configurator

Current Operation Sequence

The Current Operation Sequence function returns the operation sequence of the current record that is beingprocessed when using the Get Details sheet in Job Entry or Quote Entry.

Where Located

The Current Operation Sequence function can be added as a Rule expression.

Proper Syntax

The Current Operation Sequence function auto-populates the following string into the Rules expression editor:

GetRuleCurrentOperSeq(CurrentTableName,CurrentInRowID)

Resulting Data Type

Numeric

Logic/Algorithms

GetRuleCurrentOperSeq(CurrentTableName,CurrentInRowID)

Example(s)

A numeric calculation rule is created for the operation detail on Assembly Sequence 0, Operation Sequence 40of the Method of Manufacture for a configured part:

GetRuleCurrentOperSeq(CurrentTableName,CurrentInRowID)

When using the Get Details sheet in Quote Entry or Job Entry, the expression above would be processed and thevalue of 40 would be assigned to the numeric calculation rule.

Current User ID

The Current User ID function returns a string value of the current user ID.

Where Located

The Current User ID function can be added as an On Leave or Rule expression.

Proper Syntax

The Current User ID function auto-populates the following string into the Rules expression string:

GetCurrentUserID()

Epicor ERP | 9.05.702338

Configurator Technical Reference GuideContext Functions

Page 339: Epicor Configurator

Logic/Algorithms

GetCurrentUserID()

Example(s)

Character inputs FILLIN1 and FILLIN2 have been added to a configurator input page.

The following On Leave expression is added to FILLIN1, updating the input value of FILLIN2 using the CurrentUser ID context function:

IF (GetCurrentUserID()) = "SpecificUserID" THEN FILLIN2 = "ABC"

When leaving the FILLIN1 input, the expression above would be processed. If the value returned from theGetCurrentUserID() function is equal to "SpecificUserID", the value of "ABC" would be populated in the FILLIN2input.

339Epicor ERP | 9.05.702

Context FunctionsConfigurator Technical Reference Guide

Page 340: Epicor Configurator

Configurator in Action

Wavy Rider Products

Wavy Rider Products Inc. manufactures a complete line of pontoon boats that include the Bay Dweller, DeckBuster IO, NottaYacht, Peregrine, Wavy Rider and Wavy Rider Pro models.

These models are manufactured in lengths ranging from 16 through 26 feet.

26-Foot Deck Buster IO Pontoon Model16-Foot NottaYacht Pontoon Model

Specific pontoon models are designed and intended for use for certain types of water activities - fishing,family/leisure or water sports. The customer's primary use of the boat has a strong bearing on what type of modelthat should be selected, and how it should be configured (that is, what specific options can be selected andadded to the boat during its manufacture). Each model is highly configurable and can contain the followingoptions and selections:

• Color (Plywood Shell or Vinyl, Oily Shell, Sandstone Shell or Vinyl, Balsam Shell or Vinyl, Misty Balsam Shell,Onion, Tamarack, Ruby, Salmon, Ocean Mist Green or Arctic Blue)

• Engine size (Inboard or outboard, from 40 to 300 HP)

• Helm Seating (Recliner, Bucket or Love seating arrangements)

• Steering and navigation (Stainless Steel, Burl or Soft Grip)

• Electronics (radios, entertainment and Fish Finders)

Prior to implementing their new Epicor ERP solution, the company made extensive use of Excel spreadsheets and.csv files to look up and select options suitable for each product. This manual configuration process was verytedious; it consumed a large amount of time and attention of the Customer Service, Product Engineering andManufacturing departments to create realistic, accurate and buildable pontoon boat configurations that suitedtheir customer's specific needs.

By making extensive use of dynamic lists, external programs and the existing option selection lists, Wavy RiderProducts has developed a highly sophisticated Configurator in their new Epicor ERP solution. It presents aneasy-to-use, interactive configuration process that can be used in the following situations:

• Quoting pricing to prospective customers

• Entering orders for actual customer purchases

• Purchasing component items that require configuration

Epicor ERP | 9.05.702340

Configurator Technical Reference GuideConfigurator in Action

Page 341: Epicor Configurator

• Creating accurate Methods of Manufacture (which specify the exact material content and manufacturingsequences) when creating jobs for manufacture of the pontoon boats that have been sold

• Creating demand orders from inbound EDI transactions

Wavy Rider Configurator Q&A Input Page

The first step in building a Configurator at Wavy Rider Products was to determine which products should becombined into a single configurator. The choices were simple:

• One configurator for all pontoon boats, or

• One configurator for each product line, or one configurator for each activity.

Because the options for each product were quite similar, and the methods of manufacturing of all products werethe same, Wavy Rider Product elected to define one configurator for all products.

To make the choices for the sales force easier, the boats were categorized by boating activity. Some models areavailable in different sizes and colors. One or more types of engines can be selected for each model. In a limitedrange of boat models, a sound system can be built in for the selected pontoon boat. As an additional option, astandard or GPS-enabled fish finder can be selected, while for other models, a built-in standard or GPS-enabledmodel is included as part of the purchase.

The second step in building a configurator was to determine the questions needed to be asked to the user duringthe actual configuration session, and determined the valid answers for each of the questions. These include:

• What type of activity the pontoon model is used for?

• What specific model is requested based on the selected activity?

• What is the color selection for the selected pontoon model?

• Is a sound system being installed? If so, what type of sound system?

• Is a fish finder being installed? If so, what type of fish finder?

341Epicor ERP | 9.05.702

Configurator in ActionConfigurator Technical Reference Guide

Page 342: Epicor Configurator

Creating an Options Planning Spreadsheet

For each question a list of valid answers can be compiled, usually it is a good idea to put all the valid combinationsin a spreadsheet before actually building the configurator.

Prior to starting to create the product configuration in the Epicor application, Wavy Rider Products constructedthe following spreadsheet:

The associated configuration input page that Wavy Rider Products decided to construct (see previous page)included an Activity combo box that prompts for selection of the intended use for the boat (Fishing, Family/Leisureor Water Sports). A Model combo box was also added that makes extensive use of dynamic lists (and accompanyingprograms) for user-selection of the model type (Bay Dweller, Deck Buster IO, NottaYacht, Peregrine, Wavy Riderand Wavy Rider Pro) from an external list.

The third step is actually creating the input pages for the configurator. Wavy Rider Product elected to create thisconfiguration process using the following elements:

Creating the Base "Universal" Part and Part Revision

Wavy Rider Products created a single general "CFGPontoon" part that acts as a "placeholder" for subsequentselection of the boat model, based on its intended use. It included the following parameters:

Epicor ERP | 9.05.702342

Configurator Technical Reference GuideConfigurator in Action

Page 343: Epicor Configurator

Wavy Rider Products created a part revision that included the following parameters:

Creating the Configuration Q&A Input Page

Wavy Rider Products decided to create a configuration Q&A input page that contains ten controls in all - fourcombo boxes, three check boxes and a browser.

These are the naming conventions Wavy Rider used for their configurator input controls:

These are some of the controls they created:

• To display full -color pictures of the selected model, they created a Browser type input control (andaccompanying On Leave expression) that is populated with the full-color picture of the selected boat, basedon the model that is selected by the user.

• For selection of other options (color, sound system, steering wheel, engine type/capacity and helm seating),they made extensive use dynamic lists, an associated program and their existing external lists; these controldisplay of selectable option sets based on the specified pontoon boat model.

• For some Wavy Rider Products pontoon boat models, customers can add a standard Fish Finder or an upgradedGPS -enabled Fish Finder. They have elected to create two check boxes (Standard Fish Finder andGPS-Enabled Fish Finder) for this option selection. Skipping both of the check boxes during a configurationsession indicates that installation of this option should be skipped. Since use of these boxes is conditional

343Epicor ERP | 9.05.702

Configurator in ActionConfigurator Technical Reference Guide

Page 344: Epicor Configurator

upon the type of pontoon boat that was selected, they have also added the appropriate expressions toassociated Prompt When and On Leave rules.

• A check box input was added for selection of a sound system for the selected pontoon model.

Activity Combo Box

These are the parameters Wavy Rider used to create an Activity combo box that asks the user to select theintended use for the boat (Fishing, Family/Leisure or Water Sports):

This is the Input Rules > Inputs > Detail page definition for the Activity combo box:

Picture Display Browser Control

These are the parameters Wavy Rider used to create a Browser type input control (and accompanying On Leaveexpression) that is populated with the full-color picture of the selected boat, based on the model that is selectedby the user:

This is the Input Rules > Inputs > Detail page definition for the picture-display Browser control:

Epicor ERP | 9.05.702344

Configurator Technical Reference GuideConfigurator in Action

Page 345: Epicor Configurator

Model Combo Box Using Dynamic Lists

These are the parameters Wavy Rider used to create a Model combo box that asks the user to select the typeof pontoon boat being purchased.

This is the Input Rules > Inputs > Detail page definition for the Model combo box:

Prior to their implementation of their Epicor ERP solution, Wavy Rider Products maintained an extensive list ofExcel spreadsheets that had been used for selection and configuration of pontoon models, based on their intendeduse (family/leisure and water sports). In conjunction with an internally developed program, Wavy Rider Productscan make excellent use of these lists in their new Configurator. This was accomplished using the following dynamiclist parameters:

345Epicor ERP | 9.05.702

Configurator in ActionConfigurator Technical Reference Guide

Page 346: Epicor Configurator

This is the Input Rules > Inputs > Detail > Dynamic Lists > Detail page definition for the Model combo box:

This allows for selection of the model type (NottaYacht, Peregrine, Bay Dweller, Wavy Rider, Wavy Rider Pro orDeck Buster IO) from the following external models.csv list:

The On Leave trigger for the Model combo box uses a csv file to retrieve the file location of the picture that isdisplayed in the browser.

On Leave statement (cmbModel): run c:\epicor\mfgsys803\server\ud\test\filelookup.p("c:\epicor\mfgsys803\server\ud\pontoon\modeldata.csv" ,"picture",cmbModel,output brwModelPicture).

This allows for selection of the picture of the selected model from the following external modelsdata.csv list. Theselected picture displays in the Picture-Display Browser control.

Epicor ERP | 9.05.702346

Configurator Technical Reference GuideConfigurator in Action

Page 347: Epicor Configurator

Color Combo Box Using Dynamic Lists

Likewise, another dynamic list, using a program and external list was developed for selection of color, based onthe selected pontoon boat model. These are the parameters Wavy Rider used to create a Color combo box thatasks the user to select the color of the pontoon boat being purchased:

This is the Input Rules > Inputs > Detail page definition for the Color combo box:

These are the dynamic list parameters used for this combo box:

347Epicor ERP | 9.05.702

Configurator in ActionConfigurator Technical Reference Guide

Page 348: Epicor Configurator

This is the Input Rules > Inputs > Detail > Dynamic Lists > Detail page definition for the Color combo box:

This allows for selection of the model color from the following external Colors.csv list:

This is the Input Rules > Inputs > Detail page definition for the Motor combo box:

Motor Combo Box Using Dynamic Lists

Another dynamic list, using a program and external list was developed for selection of the motor, based on theselected pontoon boat model. These are the parameters Wavy Rider used to create a Motor combo box thatasks the user to select the color of the pontoon boat being purchased:

This is the Input Rules > Inputs > Detail page definition for the Motor combo box:

Epicor ERP | 9.05.702348

Configurator Technical Reference GuideConfigurator in Action

Page 349: Epicor Configurator

These are the dynamic list parameters used for this combo box:

This is the Input Rules > Inputs > Detail > Dynamic Lists > Detail page definition for the Motor combo box:

This allows for selection of the motor using the following external UD01 program for loading of external data:

349Epicor ERP | 9.05.702

Configurator in ActionConfigurator Technical Reference Guide

Page 350: Epicor Configurator

In order to use the UD01 table, Wavy Rider added the UD01 program to the Configurator Setup menu using theMenu Maintenance program:

After refreshing the Main Menu by logging on again, Wavy Rider loaded the following data into the UD 01 table:

Fish Finder (Standard) and GPS Fish Finder Checkboxes

For some Wavy Rider Products pontoon boat models, customers can add a standard Fish Finder or an upgradedGPS-enabled Fish Finder. They have elected to create two check boxes, Fish Finder (Standard) and GPS FishFinder, for this option selection. Skipping both of the check boxes during a configuration session indicates thatinstallation of this option should be skipped. Since use of these boxes is conditional upon the type of pontoon

Epicor ERP | 9.05.702350

Configurator Technical Reference GuideConfigurator in Action

Page 351: Epicor Configurator

boat that was selected, they have also added the appropriate expressions to associated Prompt When and OnLeave rules.

These are the parameters Wavy Rider used to create the Fish Finder (Standard) check box input control:

This is the Input Rules > Inputs > Detail page definition for the Fish Finder (Standard) check box control:

These are the parameters Wavy Rider used to create the GPS Fish Finder check box input control:

This is the Input Rules > Inputs > Detail page definition for the GPS Fish Finder check box control:

351Epicor ERP | 9.05.702

Configurator in ActionConfigurator Technical Reference Guide

Page 352: Epicor Configurator

Because a customer can select or a GPS Fish Finder, Wavy Rider needed to ensure that if one is selected duringa configuration session, the other one could not be selected. They did this by adding an On Leave statement forthe GPS Fish Finder check box using the following code:

They added the following On Leave statement for the Fish Finder (Standard) check box using the followingcode:

A Fish Finder cannot be selected for certain models, and some models already have built-in Fish Finders. WavyRider set the Fish Finder check boxes in the On Leave statement associated with the Model combo box, and setPrompt When statements for each of the Fish Finder check boxes. They also added the following code to theKeep When rule for the standard Fish Finder:

They also added the following code to the Keep When rule for the GPS Fish Finder:

Wavy Rider Products also added some additional code to the On Leave trigger of the Model combo box to setthe defaults for the fish finders whenever another model is selected. All Wavy Rider Pro models come equippedwith GPS Fish Finders, and all non-pro Wavy Rider models (those models named Wavy Rider themselves) havethe standard Fish Finders. Instead of having a complex If-Then-Else statement, they have made the statementmore maintainable by storing the base model in a separate input value. This was made invisible to the data entryoperator on the input page. It was created using the following parameters:

This is the Input Rules > Inputs > Detail page definition for the GPS Fish Finder check box control.

Epicor ERP | 9.05.702352

Configurator Technical Reference GuideConfigurator in Action

Page 353: Epicor Configurator

Wavy Rider Products also added the following code to the On Leave trigger of the Model combo box to set thedefaults for the fish finders whenever another model is selected. The If-Then statement is more readable in casethey have to list all Wavy Rider and Wavy Rider Pro models. If in the future, a new Wavy Rider model is addedto the list, the code will still work. By using the Else statement, it made the code perform better and it preventsverification of the "Wavy Rider" statement when base model is "Wavy Rider Pro".

Sound System Checkbox

These are the parameters Wavy Rider used to create the Sound System check box input control:

This is the Input Rules > Inputs > Detail page definition for the Sound System check box control:

353Epicor ERP | 9.05.702

Configurator in ActionConfigurator Technical Reference Guide

Page 354: Epicor Configurator

The sound system option is only available for a limited list of models, so Wavy Rider Products added a PromptWhen expression for the sound system. They used the lookup function instead of a long if-then statement. Thelookup function lets them add additional models quite easily.

Pricing Logic

The Configurator has standard pricing rules that allow for configuration unit pricing based on the input valuesentered for sales orders, quotes, purchase orders or demand orders. However, it also allows use of external csvfiles, the ud tables or other tables within Vantage to retrieve price information and use code to calculate the unitprice. The resulting unit price can be transferred to the sales order, quote, purchase order demand order, or thesales order line, quote line, purchase order line or demand order line can be directly updated. At least one priceinput field must be defined in the configuration to store the pricing information. By setting the width and theheight of this input control to zero in the Input Rules > Inputs > Detail sheet, we can make this price field invisibleto the user.

• Certain Wavy Products customers receive discounts based on the customer group to which they are assigned.For example, customers with a customer group assignment of Silver receive a 3% discount, those belongingto a Gold customer group receive a 5% discount, and those belonging to a Platinum customer group receivea 10% discount.

• While this discounting can be set up at the customer level within a Discount field, they have elected to use amethod of assigning logic to the customer group level, making it much more dynamic. It is based on extensiveuse of On Leave logic, and hidden input controls that store order number, line number, customer name, andcustomer group information for each customer configuration. Based on the stored information, the Epicorapplication determines the applicable customer discount percentage and applies it to the selected options(for example, sound system, steering wheel, engine type/capacity, electronics and helm seating) to calculatea total discounted price for the selected model.

These are the parameters Wavy Rider used to create the "invisible" input control used to store configurationpricing:

Epicor ERP | 9.05.702354

Configurator Technical Reference GuideConfigurator in Action

Page 355: Epicor Configurator

This is the Input Rules > Inputs > Detail page definition for the "invisible" input control:

The price calculation for the Wavy Rider configuration is performed in the On Leave trigger defined (on the lastpage of the configuration) in the Configurator Designer > Page Detail sheet.

Wavy Rider created On Leave code that defined all variables required in the price calculation. It stores order andquote information that can be retrieved through context functions in the appropriate variables:

355Epicor ERP | 9.05.702

Configurator in ActionConfigurator Technical Reference Guide

Page 356: Epicor Configurator

Using the information from the context functions, the Wavy Rider configurator can retrieve customer groupinformation, which is required because some customer groups have a discount. Wavy Rider could not use thecontext functions directly in the database queries for performance reasons, and due to some query limitations.

The next section of On Leave code retrieves the model price from the modeldat.csv file that was used earlier toretrieve the picture information for the models:

The next section of On Leave code retrieves the price information of the sound system and the Fish Finder basedon the unit price of part table:

Epicor ERP | 9.05.702356

Configurator Technical Reference GuideConfigurator in Action

Page 357: Epicor Configurator

The next section of On Leave code retrieves motor price information stored in the ud01 table:

The next section of On Leave code adds all retrieved prices, and calculates the discount based on the assignedcustomer group:

Wavy Rider had two options available for placing the price in the sales order or the quote line. The first optionwas to store the price into the decPrice input field and use that field in the pricing rules using the following OnLeave code:

To use this code, Wavy Rider added the following rule to the general expression in the Configurator Designer >Input Rules > Pricing > General > Input Pricing > Order / Quote / Purchase / Demand > Detail sheets:

The second option available to placing the pricing in a sales order or quote line was making use of the UpdateTable Buffer program (use this program with caution because it overrides all validations):

357Epicor ERP | 9.05.702

Configurator in ActionConfigurator Technical Reference Guide

Page 358: Epicor Configurator

Smart String and Part Creation Logic

Wavy Rider Products decided they wanted to include part numbers on sales order and quotes, but did not wantto create new part numbers in the Part master database table. They entered the following parameters into theProduct Configuration > Part Creation sheet:

They entered the following parameters into the Product Configuration > Smart String sheet:

Epicor ERP | 9.05.702358

Configurator Technical Reference GuideConfigurator in Action

Page 359: Epicor Configurator

Method of Manufacture and Rules Processing

There are two general methods for creation of the Method of Manufacture - the Super BOM or the TemplateBOM.

• The Method of Manufacture for the Super BOM contains all component parts and operations that couldpossibly be included to manufacture the configured part, regardless of the actual selected configurationoptions. One of the most powerful features of the Configurator is its ability to perform calculations throughformulas, and determine which specific components should be retained in the Method of Manufacturegenerated for the configured assembly. This is accomplished through the use of defined Keep When rules.

• The Method of Manufacture for the Template BOM consists of placeholders the Epicor application replaces(after a configuration session) with the actual assemblies, materials and operations required for the resultingconfigured item.

• Refer to the Super BOMs and Template BOMs topic in the Implementation Components and Calculationssection for detailed information.

The Super BOM is easier to setup initially, but the Template BOM is easier to expand and maintain over thelong-term. For small-scale configurations, use of the Super BOM is recommended, while for all other configurations,use of the Template BOM is recommended. This does not mean that the Keep When rules are not used at all inTemplate BOM, but they are only used when it makes sense to do so.

Although the Wavy Rider Products configurator is quite simple, they elected to use the Template BOM methodwith some accompanying Keep When rules. To make the configurator example easy to follow, we assume thatthe actual boat itself is not manufactured by Wavy Rider Products Inc. In this scenario, they purchase the boatsand add customer-selected options to it. The Method of Manufacture for the pontoons are all alike - they consistof an Assembly operation and four purchased items (pontoon boat, motor, Fish Finder and sound system). Theyused the following parameters to create part master records for the purchased pontoon boat and motor:

359Epicor ERP | 9.05.702

Configurator in ActionConfigurator Technical Reference Guide

Page 360: Epicor Configurator

Using these parameters, they created the following part records in Part Maintenance:

After defining these two parts, they created the initial Method of Manufacture for the CFG-Pontoon base universalpart. They first checked out the revision to an ECO group using the Part Revision Checkout function (accessiblefrom the Actions menu in Part Maintenance):

Epicor ERP | 9.05.702360

Configurator Technical Reference GuideConfigurator in Action

Page 361: Epicor Configurator

They opened the Engineering Workbench from the Actions menu and added the Assembly operation to theMethod of Manufacture. They also added all required parts (pontoonboat, pontoonmotor, fishfinder01,soundsystem01 to the method. Each had a quantity per of one.

After defining the Method of Manufacture, they approved the revision in the Engineering Workbench. In PartMaintenance, they unapproved the revision so they could add the applicable Keep When rules in the ConfiguratorDesigner > Rules sheet. All variables needed in the rules calculations are stored at the Alt node. Rule variablesare called calculation are stored in the Alt mode In the top of the rule method tree.

Wavy Rider defined a string variable for the pontoon part number by adding a new rule at the Alt node, choosingCalculation and entering PontoonPartNum as the calculation value. Because they only defined the calculationdid not want to store any value, they selected Free Form and entered the required information. It resulted inthe following rule:

361Epicor ERP | 9.05.702

Configurator in ActionConfigurator Technical Reference Guide

Page 362: Epicor Configurator

They then selected Mtl 10 pontoon boat for Opr. 10 and entered the following code in the editor:

After completing this expression, they added a Set Field type rule and selected Job Material in the Expressioneditor:

Epicor ERP | 9.05.702362

Configurator Technical Reference GuideConfigurator in Action

Page 363: Epicor Configurator

They then selected PontoonPartNum in the next step of the expression:

It resulted in the following Set Field rules expression:

363Epicor ERP | 9.05.702

Configurator in ActionConfigurator Technical Reference Guide

Page 364: Epicor Configurator

After completing this expression, they added another Set Field type rule and selected Get Part Defaults() inthe Expression editor. When both rules were completed, it resulted in the following assigned rules for theconfiguration:

The part numbers are calculated in partnumbers.p at a later stage Wavy Rider Products uses a query in thisprogram to retrieve the part numbers from the supplier part table. The part numbers are calculated as follows:

Epicor ERP | 9.05.702364

Configurator Technical Reference GuideConfigurator in Action

Page 365: Epicor Configurator

For addition of the selection of the actual motor part number, Wavy Rider only has to replace the placeholderpontoonmotor part number with the selected motor part number. They accomplished this by adding a SetField rule with a Get Part Defaults () expression to retrieve the default values for this material from the partmaster.

365Epicor ERP | 9.05.702

Configurator in ActionConfigurator Technical Reference Guide

Page 366: Epicor Configurator

This results in the following rules for Mtl 20 pontoon motor:

Wavy Rider offers two different types of Fish Finders for their pontoon boats - a standard model and a GPS-enabledmodel. The Method of Manufacture for the base universal part only contains the standard Fish Finders. Bothtypes of Fish Finders could have been added to the Method of Manufacture but were not. Wavy Rider Productsexpects to replace the two Fish Finders models by more updated models in the future, so they did not want toadd the associated materials and Keep When rules. The Configurator only uses Keep When rules to eliminatethe fish finder completely if none is selected. They made use of the part number replacement function for theboat and the motor to actually determine the part number.

To determine if there is a Fish Finder, they added a new logical Calculation rule at the Alt level, and also addeda Calculation rule to determine the part number. They added the following logical Calculation rule calculationfor kwFishFinder:

They then added the following logic for the rule:

Epicor ERP | 9.05.702366

Configurator Technical Reference GuideConfigurator in Action

Page 367: Epicor Configurator

They added the following String calculation at the Alt level for FishFinderPartNum:

They then added the following Free Form logic:

367Epicor ERP | 9.05.702

Configurator in ActionConfigurator Technical Reference Guide

Page 368: Epicor Configurator

This resulted in the following Calculation rules at the Alt level:

At Mtl 30 fishfinder01, they added the following Keep When rule and functionality to replace the part number:

Epicor ERP | 9.05.702368

Configurator Technical Reference GuideConfigurator in Action

Page 369: Epicor Configurator

They then added a Set Field rule to replace the part number. This rule also included the GetPartDefaultsfunction.

This resulted in the following rules at the Mtl 30 fishfinder01 level:

369Epicor ERP | 9.05.702

Configurator in ActionConfigurator Technical Reference Guide

Page 370: Epicor Configurator

For inclusion of the sound system, Wavy Rider Products only needed to create a When rule. However, they choseto create the following Calculation rule instead because in the future, they may offer many more types of soundsystems with other options. By adding a Calculation rule at the top Alt level, they can easily find the Keep Whencode if it needs to be modified in the future to accommodate any new sound system options they may offer.

This resulted in the following at the Alt level:

They then added a Keep When rule at the Mtl 40 soundsystem01 level:

Epicor ERP | 9.05.702370

Configurator Technical Reference GuideConfigurator in Action

Page 371: Epicor Configurator

This resulting in the following rule at the Mtl 40 soundsystem01 level:

Creating a No Input Configurator

In most cases, the Epicor Configurator is used for configuration of products with a large number of options orhighly componentized products. However, it can also be used for standard products with no options at all.

In this case, no or few questions need to be asked of the user. This could be used in the following scenarios:

• A product is normally manufactured on Machine X, but when more than 100 items are needed, Machine Ywould be more efficient.

• Customer ABC needs products manufactured with more precision than other customers. This requires thatthe job must run on specific machines and requires an additional inspection.

• A product is always painted in the factory color, but exceptions are made for specific customers. However,this is not an option that is offered to customers on an order-by-order basis.

• Calculating Setup and Runtimes for manufactured items using Calculation rules.

371Epicor ERP | 9.05.702

Configurator in ActionConfigurator Technical Reference Guide

Page 372: Epicor Configurator

All of the information required to satisfy these scenarios is readily available in the quote or sales order; thecustomer information and the quantity are also available.

In the following example, we specify a different color for a frame based on customer ID. The salesperson doesnot need to enter any information in the configurator; however, the configurator still needs to be executed topass sales order information to the configurator rules engine.

Defining a No Input Configuration

These are the steps that are required to setup up a No Input configurator. First, create a new manufactured,non-stock base universal part in Part Maintenance (in this case, CFG-NoInputs).

Add a part revision for the base universal part number using New Part Revision, found on the File menu inPart Maintenance:

Check out the revision to an ECO group using Part Revision Checkout in the Actions menu in Part Maintenance.

Epicor ERP | 9.05.702372

Configurator Technical Reference GuideConfigurator in Action

Page 373: Epicor Configurator

Open the Engineering Workbench in the Actions menu in Part Maintenance. Add a paint operation and anassembly frame to the Method of Manufacture. When finished, approve the revision in the Engineering Workbench.

After approving the revision in the Engineering Workbench do the following:

• Check-in the revision.

• In Part Maintenance, unapprove the revision again to add configurator information to the part revision.

• Select the Configurator from the Actions menu in Part Maintenance.

• While in the Configurator, click Add New Configuration, then click Add New Page.

Tip Although the sales person will not be asked any questions, we still have to create a page with at leastone input field. If this is not done, the Configurator cannot be executed from Order Entry,Opportunity/Quote Entry, Job Entry, Purchase Order Entry or Demand Entry. This field stores customer paintinformation and passes it through to the defined method rules.

When in the Configurator Designer, select Design Toolbox. Add a Character field called chrPaint with heightand width set to zero, and with blank labels. This makes the input field invisible for the sales person. To operatethe configuration, all the sales person must do is to press the Save button.

373Epicor ERP | 9.05.702

Configurator in ActionConfigurator Technical Reference Guide

Page 374: Epicor Configurator

We can also add a label with the text "Please press save. Thank you" to inform the sales person (during order,quote, job, purchase order or demand order entry) to press the Save button to "operate" the configurator.

Epicor ERP | 9.05.702374

Configurator Technical Reference GuideConfigurator in Action

Page 375: Epicor Configurator

To direct the configurator to retrieve and store customer information from the sales order (or quote) and storeit in the configurator, the following code must be added in the Configurator Designer - Page Detail sheet. Itdefines the variables needed to retrieve the customer information, and to assign the information to each variable.

This code must be added to find the customer number in the sales order or the quote:

This code must be added to find the customer part number, store the paint information in a user-defined fieldand assign it to the input field chrPaint. After entering all required code, select the Do not process On Leaveexpressions when page loads check box to prevent this code from running twice (on load and on leave) forperformance reasons:

Next, add a rule to the paint operation that informs the painter which color must be used:

• In the tree to the right of the Configurator Designer - Rules sheet, select the Paint operation.

• Add a new Set Field type rule.

• In the Expression Builder, select Job Operation, and then select the CommentText field.

• Click Next and then click Free Form.

• Change the expression to: JobOper.CommentText = "Paint: " + chrPaint.

375Epicor ERP | 9.05.702

Configurator in ActionConfigurator Technical Reference Guide

Page 376: Epicor Configurator

• Save the completed rule.

Add the same rule for the Quote Operation.

Two Method rules should then be defined for the operation:

Epicor ERP | 9.05.702376

Configurator Technical Reference GuideConfigurator in Action

Page 377: Epicor Configurator

Approve the configurator in the Configurator Designer - Status sheet. After completing the configuration definition,you can add a quote line into Opportunity/Quote Entry, start the configurator, and use the Get Details command(on the Actions menu) to view the added paint comment for the operation. If you have customized CustomerPart Maintenance (which can be found on Order Management/Setup) to allow users to add colors in theCharacter01 field, you can test if specific customer accounts have specific colors.

377Epicor ERP | 9.05.702

Configurator in ActionConfigurator Technical Reference Guide

Page 378: Epicor Configurator

Appendix: Epicor-Supplied Programs

Epicor supplies the following standard programs for use in the Program Name field in the Input Rules > Inputs> Detail > Dynamic Lists > Detail sheet. You can also custom-develop your own external program and accompanyingcomma-delimited lists for use with the Configurator.

Refer to Run Program / Program Name / Program Inputs for more details. All Dynamic list programs and allreferenced files must exist on the AppServer for the lists to be valid.

• cv8400belttype.p - Returns a hard-coded listing of values.

• FilelookLabels.p - Returns the label in the first row of a .csv file.

• filelookup.p - Returns the value of one cell of a .csv file.

• Filerowselect.p - Returns a row of the .csv file.

• GetTableData.p - Returns a list of the value of a field of any table in the database.

Tip If the directory structure in which the file is located contains spaces, you must put quotes around thedirectory and program name (for example, "c:\Program Files\Test.p") in expressions that reference theprogram.

For a complete listing of utility programs, see Configurator Designer - Utility Programs in the Online Help.In the Program Inputs field, enter the inputs expected by the program specified in the Program Name field.

Epicor ERP | 9.05.702378

Configurator Technical Reference GuideAppendix: Epicor-Supplied Programs

Page 379: Epicor Configurator

Index

A

absolute value 252add 253add days to date value 253additional context functions 97all values 182allow reconfiguration in PO 181appendix 378

epicor-supplied programs 378approved / not approved 182assemblies and subassemblies (materials) 61automatically create a new part number 184automatically mark methods global 185available inputs/selected inputs 187available methods 185available styles 186

B

base "universal" part / part revision 54begins 254buttons 188

C

calculation 99character value / date value / decimal value / logical value 189columnname / condition / value 190combine strings 255condition 191configuration in a multi-company enterprise 39configuration price processing 35Configurator concepts and base components 28Configurator designer 66Configurator in action 340Configurator setup (single company environment) 51configurator synchronization 44context functions 328convert date to string 256convert logical to string 256convert number to string 257convert string to decimal 258convert string to integer 259cosecant 260cosine 260cotangent 261create a new part number at zero cost 192create a new part number for each configuration 193create a new part number in 194create alternative methods 192create revision 195creating a no input configurator 371creating an options planning spreadsheet 342creating the base "universal" part and part revision 342creating the configuration q&a input page 343

cube root 262current assembly sequence 336current company 329current configuration mode 328current date 263current job number 330current material sequence 336current operation detail sequence 337current operation sequence 338current order line 332current order number 331current plant 333current quote line 335current quote number 334current time 263current user id 338customer part number 195

D

date constant/field/input/calculation 264dates equal 265dates greater or equal 266dates greater than 267dates less or equal 267dates less than 268dates not equal 269day of month 270day of week 270default eco group 196defining a no input configuration 372demand entry 197difference between two dates 271digit structure 197display as time 272divide 273do not notify the user if new part number already exists 198do not process on leave expressions when page loads 199don't display input in configuration summary grid 199dynamic list processing 33dynamic lists and external lookups 49

E

earlier of two dates 273end position 200enterprise configurator 201enterprise configurator direct server process 176enterprise configurator server process 176excellookup 274exporting configurations 159expression builder / context functions 93expression builder functions 252

379Epicor ERP | 9.05.702

IndexConfigurator Technical Reference Guide

Page 380: Epicor Configurator

F

factorial 276fieldheight 276fieldincrement 277fieldinitialvalue 277fieldinvisible 278fieldlabel 278fieldmaximumdate 279fieldmaximumdecimal 280fieldminimumdate 279fieldminimumdecimal 280fieldrequired 281fieldsummarylabel 281fieldtooltip 282fieldvalidlist 282fieldwidth 283fieldxposition 284fieldyposition 284format (character) 201format (date) 202format (decimal) 203free-form fields 50

G

generate method 203generate methods using resulting quote method 204global 205global input variable 206global input variables 88global variable name 207greater of two numbers 285greater of two strings 286

H

how it is organized 26

I

if first expression is true return second else third date 287if first expression is true return second else third number 288if first expression is true return second else third string 289implementation components and calculations 45import / export configuration 158importing configurations 162information collection for configuration implementation 45initial value 208input and document rules 70input control display processing 32input name 208input name (global input variables) 209input rules - pricing - options 124, 168input rules > document rules 140input rules > inputs > detail 74input rules > inputs > detail > dynamic lists > detail / criteria 108input rules > inputs > detail > prompt when 114input rules > inputs > on leave 116input rules > on leave 122input rules > page / design toolbox 72

input rules > page detail 118input rules > part > creation 130input rules > part > smart string 136input rules > pricing > general > detail (multi-company) 170input rules > pricing > general > input pricing > order / quote /purchase / demand > detail 127input rules > prompt when 120intended audience 26introduction 26invisible 210invoice comments 210

J

job entry 211job/pick list comments 212

K

keep when 103

L

later of two dates 289least common multiple 290length of string 291lesser of two strings 292list items (inputs - detail - dynamic lists) 213list items (inputs > detail) 212log base e 292log base n 293logic/algorithms 211logical and 294logical constant/field/input/calculation 295logical expression 296logical or 296

M

manufacturing company processing 42matches 297method of manufacture 58method rules 70method rules > method / rules 143method rules processing 34minimum, maximum (date) 214minimum, maximum, increment (decimal) 214modifiers 181month of year 298multi-company product configuration - prerequisites and setup166multi-select-controls 72multiplier 215multiply 299

N

negate logical expression (not) 300negatives 216number of decimals 217number of digits 218

Epicor ERP | 9.05.702380

Configurator Technical Reference GuideIndex

Page 381: Epicor Configurator

numbers equal 301numbers greater or equal 302numbers greater than 303numbers less or equal 304numbers less than 305numbers not equal 306numeric constant/field/input/calculation 306

O

on leave and prompt when expression processing 33only process dynamic lists with higher tab sequences 218operations 63order entry 219order/quote comments 220other implementation considerations 49other prerequisites 166

P

packing slip comments 220page 221page level processing 31page sequence 222page title 222part creation processing 35part description 223part maintenance 64part/rev 68position and sizing fields (x, y, width and height) 223pre-implementation planning 45preface w/ part number 224price for value 224process dynamic lists before on leave expressions for this page225process input on leave expressions if page is skipped 226product configuration listing 156program call 102prompt for checkout 226purpose of this guide 26

Q

question & answer input sequence 49quote entry 228

R

raise to a power 308random 308remainder 309remove link from base configured part 229resources and resource groups 65round 310rule function 104rule types selection 98run baq / baq / display value / input value 229run program / program name / program inputs 230

S

sales company processing 41save input values 232secant 311selecting a configured part 71separator character 233set field 100set next input page 311set part number 175, 179, 312set part number only 234set previous input page 313setups 166sine 314single level configuration 236skip page if all inputs are disabled or invisible 237smaller of two numbers 315smart string configuration 31, 238smart string processing 37square root 316start position 239starting sequence 239status 148, 154string constant/field/input/calculation 316strings equal 317strings greater or equal 318strings greater than 319strings less or equal 320strings less than 321strings not equal 322structure rules > definition / rules (multi-company) 172substring 323subtract 323subtract days from date value 324super boms versus template boms 46synchronize 240synchronize revision approval 240

T

tab order 241tangent 325testing configuration input pages and defining rules 50the configuration session 28the evaluation process 30thousands separator 242truncate 326type (global input variables) 242type (part) 243

U

u sing configuration rules (single company) 69update saved input values and set fields in part table 243use component pricing 244use generated method when getting details 246use of configuration rules 43using a super bom 47using a template bom 48

381Epicor ERP | 9.05.702

IndexConfigurator Technical Reference Guide

Page 382: Epicor Configurator

V

valid list 246value 247verify existing configuration 164verify existing job configurations 248verify existing order configurations 249verify existing quote configurations 250

W

wavy rider configurator q&a input page 341wavy rider products 340web input name 251

Y

year value 327

Epicor ERP | 9.05.702382

Configurator Technical Reference GuideIndex

Page 383: Epicor Configurator

Additional information is available at the Education andDocumentation areas of the EPICweb Customer Portal. To access

this site, you need a Site ID and an EPICweb account. To create anaccount, go to http://support.epicor.com.