Business Process Management Course 10.0.700

December 2, 2016 | Author: nerz8830 | Category: N/A
Share Embed Donate


Short Description

BPM Course...

Description

Epicor ERP Business Process Management Course 10.0.700

Disclaimer This document is for informational purposes only and is subject to change without notice. This document and its contents, including the viewpoints, dates and functional content expressed herein are believed to be accurate as of its date of publication. However, Epicor Software Corporation makes no guarantee, representations or warranties with regard to the enclosed information and specifically disclaims any applicable implied warranties, such as fitness for a particular purpose, merchantability, satisfactory quality or reasonable skill and care. As each user of Epicor software is likely to be unique in their requirements in the use of such software and their business processes, users of this document are always advised to discuss the content of this document with their Epicor account manager. All information contained herein is subject to change without notice and changes to this document since printing and other important information about the software product are made or published in release notes, and you are urged to obtain the current release notes for the software product. We welcome user comments and reserve the right to revise this publication and/or make 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 of any consulting services by Epicor personnel shall be pursuant to Epicor's standard services terms and conditions. Usage of the solution(s) described in this document with other Epicor software or third party products may require the purchase of licenses for such other products. Where any software is expressed to be compliant with local laws or requirements in this document, such compliance is not a warranty and is based solely on Epicor's current understanding of such laws and requirements. All laws and requirements are subject to varying interpretations as well as to change and accordingly Epicor cannot guarantee that the software will be compliant and up to date with such changes. All statements of platform and product compatibility in this document shall be considered individually in relation to the products referred to in the relevant statement, i.e., where any Epicor software is stated to be compatible with one product and also stated to be compatible with another product, it should not be interpreted that such Epicor software is compatible with both of the products running at the same time on the same platform or environment. Additionally platform or product compatibility may require the application of Epicor or third-party updates, patches and/or service packs and Epicor has no responsibility for compatibility issues which may be caused by updates, patches and/or service packs released by third parties after the date of publication of this document. Epicor® is a registered trademark and/or trademark of Epicor Software Corporation in the United States, certain other countries and/or the EU. All other trademarks mentioned are the property of their respective owners. Copyright © Epicor Software Corporation 2014. All rights reserved. No part of this publication may be reproduced in any form without the prior written consent of Epicor Software Corporation.

ED849905 90521-10-9221-58310700 10.0.700 Revision: June 08, 2014 5:20 p.m. Total pages: 60 course.ditaval

Business Process Management Course

Contents

Contents Business Process Management Course.................................................................................5 Before You Begin....................................................................................................................6 Audience.........................................................................................................................................................6 Prerequisites....................................................................................................................................................6 Environment Setup..........................................................................................................................................6 Workshop Constraints..............................................................................................................................7

Business Process Management Overview.............................................................................8 The Trace Log........................................................................................................................11 Workshop - Use the Trace Log.......................................................................................................................11 Set Up the Trace.....................................................................................................................................11 Add a Part..............................................................................................................................................12 View the Trace........................................................................................................................................12 Create an XML File.................................................................................................................................13 Disable Tracing Log.................................................................................................................................13 Restart System Monitor...........................................................................................................................13

Method Directives................................................................................................................15 Workshop - Make a Field Mandatory.............................................................................................................15 Add a Method Code...............................................................................................................................16 Add a Pre-Processing Directive................................................................................................................16 Add First Condition.................................................................................................................................17 Extend First Condition.............................................................................................................................18 Add First Action......................................................................................................................................19 Add Another Condition..........................................................................................................................19 Extend Second Condition........................................................................................................................20 Add Second Action.................................................................................................................................21 Test the BPM for the Part Class...............................................................................................................22 Test the BPM for the Part Group.............................................................................................................22 Disable Directives....................................................................................................................................23 Workshop - Set Log Created By and Date......................................................................................................23 Add User Defined Columns.....................................................................................................................23 Synchronize Table...................................................................................................................................24 Regenerate Data Model..........................................................................................................................25 Add a Method Directive..........................................................................................................................25 Add a Pre-Processing Directive................................................................................................................26 Add an Action........................................................................................................................................26 Create a Customized Text Field...............................................................................................................28 Create Another Customized Text Field....................................................................................................28 Add Labels to Text Fields.........................................................................................................................29 Save and Test Customizations.................................................................................................................29 Disable Directive ....................................................................................................................................30

Epicor ERP | 10.0.700

3

Contents

Business Process Management Course

BPM Workflow Designer......................................................................................................31 General Principles..........................................................................................................................................31 Availability of Workflow Elements..................................................................................................................33

Hold Type..............................................................................................................................34 Workshop - Create and Use a Hold Type........................................................................................................34 Create the Hold Type..............................................................................................................................34 Add a Method Code...............................................................................................................................35 Add a Pre-Processing Directive................................................................................................................35 Add an Action........................................................................................................................................36 Add a Pre-Processing Directive................................................................................................................36 Add an Action........................................................................................................................................37 Add a Post-Processing Directive..............................................................................................................37 Add an Action........................................................................................................................................38 Add a Post-Processing Directive..............................................................................................................39 Add an Action........................................................................................................................................39 Add a Method Code...............................................................................................................................40 Add a Pre-Processing Directive................................................................................................................40 Add an Action........................................................................................................................................41 Update a Customer Record.....................................................................................................................41 Create a Sales Order...............................................................................................................................42 Disable Directives....................................................................................................................................42

Data Directives......................................................................................................................44 Workshop - Use Auto Print Action.................................................................................................................44 Locate the OrderHed Table.....................................................................................................................44 Add Standard Directive...........................................................................................................................45 Add an Action........................................................................................................................................45 Test the BPM..........................................................................................................................................46 Disable Directive.....................................................................................................................................47

Multiple Dirty Rows..............................................................................................................48 Updatable BAQ Directives....................................................................................................49 BPM and Service Connect Workflows.................................................................................51 BPM Utilities..........................................................................................................................52 Action Processing...........................................................................................................................................52 BPM User Rights............................................................................................................................................53 BPM Logging.................................................................................................................................................53 Disable BPM...................................................................................................................................................57

Conclusion.............................................................................................................................59

4

Epicor ERP | 10.0.700

Business Process Management Course

Business Process Management Course

Business Process Management Course This course focuses on the Business Process Management (BPM). Using the BPM functionality, you can modify the flow of business processes through the Epicor ERP application. This allows individual companies to tailor the business flow to their specific requirements. The course provides an introduction to the fundamentals of the BPM application. It begins with discussion on how to set up a Tracing Log that captures all the calls the user interface makes to the server. When you activate this log, any business logic (BL) calls sent to the server are automatically recorded within this log. The Method Directives section includes an overview of method directive workflow elements - actions and conditions. You are provided with an understanding of the tool, as well as an opportunity to create a method directive. The Hold Type section of the course explains how to assign a status to a record and take appropriate action when being processed. You then learn how to apply a Data Directive to a specific table and trigger BPM execution using a database event. The course concludes with an overview of techniques you can use to manage BPM functionality of your Epicor ERP application. The course includes examples that can be created with BPM, that require little or no programming knowledge. The course format includes presentation, demonstrations, and hands-on workshops that enable you to quickly and efficiently learn Business Process Management basics in correlation with modifying the flow of processes in the application. Upon successful completion of this course, you will be able to: • Set up a Trace Log to review business logic calls triggered by your application activity. • Understand the basic methods within a business object. • Understand the features and functionality of Method Directives. • Become familiar with the available workflow elements and corresponding User Texts. • Use many of the pre-defined condition statements to define criteria that must be met before a method directive action can be performed. • Initiate application tasks based on conditions defined in the Method Directive. • Perform actions in a method directive based on BPM Hold Types. • Comprehend the differences of the Pre-, Base, and Post-Processing directives. • Apply a standard Data Directive on a table to execute an action after the data is saved to the database. • Work with the dependent post process capability. • Understand the impact of RowMod being set to Added, Updated, Changed, or Deleted.

Epicor ERP | 10.0.700

5

Before You Begin

Business Process Management Course

Before You Begin Read this topic for information you should know in order to successfully complete this course.

Audience Specific audiences will benefit from this course. • System Administrator • IT/Technical Staff

Prerequisites To complete the workshops in this course, the necessary modules must be licensed and operating in your training environment. For more information on the modules available, contact your Epicor Customer Account Manager at [email protected]. It is also important you understand the prerequisite knowledge contained in other valuable courses. • Navigation Course - This course introduces navigational aspects of the Epicor application's user interface. Designed for a hands-on environment, general navigation principles and techniques available in two user interface modes - Classic Menu and Modern Shell Menu. Workshops focus on each of these modes and guide you through each navigational principle introduced. • Advanced Personalization - This course will show you how to personalize the system in a way that best suits your company's needs and how to export these personalizations so that others can import the personalizations into their computers. • Embedded Customization - This course explores the customization tools embedded within the Epicor application. Unlike personalization, users can customize a form and then make it available to multiple users in a company.

Environment Setup The environment setup steps and potential workshop constraints must be reviewed in order to successfully complete the workshops in this course. Your Epicor training environment, in which the Epicor demonstration database is found, enables you to experience Epicor functionality in action but does not affect data in your live, production environment. The following steps must be taken to successfully complete the workshops in this course. 1.

Verify the following or ask your system administrator to verify for you: • Your Epicor training icon (or web address if you are using Epicor Web Access) points to your Epicor training environment with the Epicor demonstration database installed. Do not complete the course workshops in your live, production environment.

6

Epicor ERP | 10.0.700

Business Process Management Course

Before You Begin

Note It is recommended that multiple Epicor demonstration databases are installed. Contact Support or Systems Consulting for billable assistance. • The Epicor demonstration database is at the same service pack and patch as the Epicor application. Epicor's education team updates the Epicor demonstration database for each service pack and patch. If your system administrator upgrades your Epicor application to a new service pack or patch, he or she must also download the corresponding Epicor demonstration database from EPICweb > Support > Epicor > Downloads and install it. If this is not performed, unexpected results can occur when completing the course workshops. • Your system administrator restored (refreshed) the Epicor demonstration database prior to starting this course. The Epicor demonstration database comes standard with parts, customers, sales orders, and so on, already defined. If the Epicor demonstration database is shared with multiple users (that is, the database is located on a server and users access the same data, much like your live, production environment) and is not periodically refreshed, unexpected results can occur. For example, if a course workshop requires you to ship a sales order that came standard in the Epicor demonstration database, but a different user already completed this workshop and the Epicor demonstration database was not restored (refreshed), then you will not be able to ship the sales order. Epicor's education team has written the course workshops to minimize situations like this from occurring, but Epicor cannot prevent users from manipulating the data in your installation of the Epicor demonstration database. 2.

Log in to the training environment using the credentials manager/manager. If you are logged into your training environment as a different user, from the Options menu, select Change User.

3.

From the Main menu, select the company Epicor Education (EPIC06).

4.

From the Main menu, select the Main site.

5.

To complete the Workshop - Use Auto Print Action, SQL Server Reporting Service (SSRS) must be installed and operational in your environment in order to run SSRS reports. If necessary, work with your system administrator and see Install Epicor SQL Server Reporting Service (SSRS) topics found within the Epicor 10 Installation Guide.

Workshop Constraints For the purpose of this course and the training environment, it is important to follow all of the steps provided in each workshop. While this course provides education on creating and using various BPMs, it is essential that all created BPMs are disabled or deleted. Disabling or removing the BPMs ensure the appropriate default training environment is available. Important Note that restoring (refreshing) the demonstration database does not automatically remove existing BPM directives. All BPM directives must be manually removed or disabled.

Epicor ERP | 10.0.700

7

Business Process Management Overview

Business Process Management Course

Business Process Management Overview Use Business Process Management (BPM) to modify the flow of business processes through the application. This includes modifying the behavior of individual business objects and adding human workflow elements such as email, tasks, and so on. The key characteristics of BPM is its availability on every business process throughout the application and it is entirely activated on the Epicor ERP Server. This means the behavior is adopted whether the transaction originated from the Epicor ERP Client or from web services. For this reason, BPM is the best place to make system modifications, rather than adding functionality into the Client customization. Basic Use Cases for BPM: • Validate data (includes making mandatory) • Raise exceptions (conditional) • Modify data (GetNew or Update) • Send email, preview or print a report • Display an informational message when a BPM condition is met • Write table changes to the applicable program change log • Post a data notification message to the Epicor Social Enterprise message stream • Create tasks (from Template) • Attach and Remove BPM Holds • Create Data Forms (to control BPM processing flow) • Create Updatable BAQ directives Advanced Use Cases for BPM: • Call Service Connect (to extend business flows) • Call .Net Assemblies (C# or VB .Net) BPM directives work by intercepting calls to the application server logic. They are embedded into server logic and get invoked by method calls. You can validate, manipulate, or create workflows based on the data passed through the application. Because BPM methods are server side customizations, you can change business logic without modifying the source code.

8

Epicor ERP | 10.0.700

Business Process Management Course

Business Process Management Overview

The key elements of using BPM directives within the application include the following: • A user performs an action in a program. • The program calls a business object method to carry out the action. • Before the business object executes its program code, Pre-Processing directives are executed. Note If at least one non-empty Base Processing directive is in effect, the Base Processing directive will run instead of the Epicor program code. Important Epicor strongly recommends you do not create Base Processing directives. If you change a base method incorrectly, you can harm the normal function of the application. This option is mainly included for partners, consultants, and power users who need to directly modify the method for major business modifications. Work with an Epicor consultant before you create a base processing method directive. • After the Pre-Processing directive, the Epicor program code performs its function, or Base directives are executed. • When data transaction is about to be applied to the database, In-Transaction directives are executed. • After the Epicor program code or Base directive is run, Post-Processing directives are executed. • Standard data directives are executed with accumulated transaction database changes passed to them. • Data is returned to the program according to the actions run by the directives and Epicor program.

Epicor ERP | 10.0.700

9

Business Process Management Overview

Business Process Management Course

Business Object Basics • Business objects control all input and output from the database • Can be called by web services, smart client, web client, or other programs • Contain all rules for processing records • Contain a normalized relationship between tables and fields in the actual database • Contain methods for interfacing with data Business Object Methods The following is a list of commonly used BO methods:

10

Method

Description

Delete by ID

Use to delete records (sometimes), Group delete (for example, order + lines + rel)

Get by ID

Use to retrieve records for specific ID, returns all data

Get List

Use in searches, returns key data

Get New

Use to create a new record

Get Rows

Use to retrieve specific data for a group of records

Update

Use to add, update, and delete records, most common method to use in BPM

Update Ext

Use to add, update, and delete records for use with updatable BAQs

Master Update

Use to add, update, and delete master records of specific business objects

Epicor ERP | 10.0.700

Business Process Management Course

The Trace Log

The Trace Log Use the Trace Log to view datasets sent to and returned from the application database. The Trace Log is enabled from the Main Menu (Classic Style) or from the Home Page (Modern Shell Menu) and writes information to a file you can review.

Workshop - Use the Trace Log In this workshop, use a trace to learn which values are in the part dataset during a part update. Key concepts are: • Use the interface to simulate actions used in a method directive. • Read the values used in an update transaction. Verify you are logged into Epicor ERP using the following credentials: Field

Data

User Name

manager

Password

manager

Set Up the Trace Navigate to Part Maintenance. Menu Path: Material Management > Inventory Management > Setup > Part 1. Minimize Part Maintenance. 2. To create a cleaner log that doesn’t contain idle times from the System Monitor, locate the Epicor's System Monitor icon on the desktop task bar. Right-click this icon and select Exit. 3. Launch Tracing Options. • When you run the application using the Classic Style, on the Main menu, from the Options menu, select Tracing Options. • When you run the application using the Modern Shell, on the Home Page, click Settings and within the General Operations category, click Tracing Options. 4. Select the Enable Trace Logging check box. 5. Review the available options: Tracing Option

Description

Write Full DataSet

Records all call data in the tracing log. If this option is not selected, only the header information is stored in the log.

Track Changes Only

Only changes to the dataset are recorded in the tracing log.

Epicor ERP | 10.0.700

11

The Trace Log

Business Process Management Course

Tracing Option

Description

Write Call Context Dataset

Used to review the performance of BPM methods and customizations. The Call Context Dataset initializes when a user activates a program (UIApp) that either launches a customized form or a BPM directive. As long as the program is active, method calls are sent to the Call Context Dataset.

Write Response Data

When a method call has a other than void, selecting this check box causes the dataset returned from the server to display on the tracing log.

Include Server Trace

Includes the information from the server processing in the client trace log.

6. For this workshop, select the Write Full Dataset check box. 7. Click Apply. 8. Leave the Tracing Options Form open.

Add a Part 1. Maximize Part Maintenance. 2. In the Part field, enter XXX-TestPart1 (where XXX are your initials) and press Tab. 3. In the Add New Confirmation window, click Yes. 4. In the Description field, enter XXX Test Part 1 (where XXX are your initials). 5. Click Save. 6. Exit Part Maintenance.

View the Trace 1. In the Tracing Options Form, click the View button. 2. View the method calls and dataset information. This file indicates a change was made to the Part field. Notice the various methods that run when you add a new part record to the database. You can create BPM directives that monitor the data entered or changed through each directive. The Trace Log helps you identify which method you need to monitor. Example The following trace log snippet displays the Update method called on new record creation. Erp.Proxy.BO.PartImpl Update System.Void 29/11/2013 13:30:29:1069295 PM 481

12

Epicor ERP | 10.0.700

Business Process Management Course

The Trace Log

EPIC06 XXX-TestPart1 XXX Test XXX Test Part 1 EA EA P

3. Close the TraceData file.

Create an XML File 1. In the Tracing Options Form, next to the XML File field, click Browse. 2. In the Save As window, select your Desktop. 3. In the File Name field, enter XXX.PartTrace.xml (where XXX are your initials). 4. Click Save. 5. Click the Create XML button. 6. Minimize all programs so the desktop is visible. 7. Double-click XXX.PartTrace.xml. 8. Review the method calls and dataset information. 9. Close the .xml file.

Disable Tracing Log 1. Maximize the Tracing Options Form. 2. Clear the Enable Trace Logging check box. The Write Full DataSet check box automatically is disabled. 3. Click the Apply button. 4. Click OK. The Tracing Options Form window closes.

Restart System Monitor Navigate to System Monitor. Menu Path: System Setup > System Maintenance > System Monitor Important This program is not available in the Epicor Web Access.

Epicor ERP | 10.0.700

13

The Trace Log

Business Process Management Course

1. In the desktop task bar (in the lower right corner of the screen), verify the System Monitor icon displays. 2. Minimize the System Monitor window.

14

Epicor ERP | 10.0.700

Business Process Management Course

Method Directives

Method Directives Use the Method Directives program to create and update BPM method directives. Menu Path: System Management > Business Process Management > Method Directives Maintenance Important This program is not available in the Epicor Web Access. A method directive defines a workflow, composed of conditions and actions associated with a business object method. All data transactions in the application are controlled by business objects such as Update, GetList or GetNew. A business object represents some type of data managed by the application, such as a customer, part, or sales order. Objects contain methods that perform a specific task. For example, the Customer.Update method validates and posts edited customer records to the database. Tip Two other directive types are available: • Data Directives - applied to database table transactions. • Updatable BAQ Directives - applied to business activity query methods that can update the database. Business Process Management (BPM) tools can manipulate how these methods perform before, during, or after database transactions. Create method directives that first evaluate the data being processed and then, if the directives' conditions are met, perform one or more actions based on this data (for example, prevent data entry, launch other business processes, and so on). Method directives are invoked entirely on the Epicor ERP Server and not on the client. Example You can create a method directive for the Customer.Update method to send an email to a Sales Manager when a customer's credit limit changes. The same directive can also attach a hold to the customer record and display a message that indicates the customer record has been placed on hold. Additional method directives can check for the hold on the customer record and prevent it from being modified until the Sales Manager releases the hold. When a business object method is called, all enabled directives associated with the method activate. The BPM workflow you create for the directive does it's job by executing workflow items in the order you specify. While the method is active, these directives run at three different processing points: • Pre-Processing – These directives execute before the base method runs. After these actions finish, the business object then runs the base method. • Base Processing – These directives run in place of the base method. The base method does not execute. • Post-Processing – These directives run after the base method finishes its process.

Workshop - Make a Field Mandatory Many customers want to ensure when they create new parts, they have a part class or product group named. In this example, the naming depends on whether the part type is purchased or manufactured. This example demonstrates the Business Process Management (BPM) features to make a field mandatory based on a condition. Key concepts are: • Use built-in BPM functionality. • Use conditional actions.

Epicor ERP | 10.0.700

15

Method Directives

Business Process Management Course

Create a new method directive based on the Part Business Object Update method. Navigate to Method Directives. Menu Path: System Management > Business Process Management > Method Directives Maintenance Important This program is not available in the Epicor Web Access.

Add a Method Code 1. On the Detail sheet, click the Method Code button. The Method Search window displays. 2. In the Search by Business Object section, verify Product is selected. By selecting this option, the Business Objects belonging to the application part of the system become available for selection. 3. In the Business Object field, select Part. 4. In the Where Method Name Starts At field, enter U. 5. Click Search. 6. In the Search Results grid, select the Update method. 7. Click OK. The Business Object returns on the form. 8. In the Method Description field, enter XXX Set Part Class or Product Group Mandatory (where XXX are your initials). 9. Click Save.

Add a Pre-Processing Directive 1. From the New menu, select New Pre-Processing. 2. In the Directive Name field, enter XXX Mandatory Part Class and Group (where XXX are your initials). 3. In the Group field, enter XXX (where XXX are your initials). This field signifies the group to which the current directive belongs. You can select an existing value or enter a value to create a new group. This field is optional but can help organize directives for searches and is used when exporting directives. 4. Click Save. 5. Click Design to launch the BPM Workflow Designer. The available workflow items display on the left portion of the screen. In the following tasks, you will use the items to build a BPM workflow. Example The following image displays the BPM workflow you will build throughout this workshop. You may use it for a reference as you proceed with tasks that follow.

16

Epicor ERP | 10.0.700

Business Process Management Course

Method Directives

Add First Condition 1. In the workflow items tollbar, click the Condition icon and drag it to the workflow pane of the Designer, below the Start item. 2. Hover your mouse over the Start item. The small black triangles surrounding the item represent the available connectors. 3. Click your mouse, select any of the Start connector symbols, drag the line and point it to any of the Condition element entry points. The connection between the two elements is now established. You will now build the first condition that checks if the Part Type is set to Purchased and Part Class is empty. 4. In the workflow, click the Condition item. 5. In the Condition pane at the bottom, click the Add Line icon. 6. In the Condition field, invoke the list and select The specified field of the changed row is equal to the specified expression. 7. Click the first specified. 8. In the Table field, verify ttPart displays.

Epicor ERP | 10.0.700

17

Method Directives

Business Process Management Course

Note The “tt” prefix indicates this table is a temporary table - an intermediate table used to validate data before it is saved to your physical database.

9. In the Fields search box, enter type. 10. From the list of available fields, select the TypeCode check box. 11. Click OK. 12. At the end of the Condition field, click specified. 13. In the Editor text box, enter "P" (this expression stands for Purchased parts, remember to include the quotation marks). 14. In the Specify an expression window, click OK.

Extend First Condition 1. In the Condition pane, click the Add Line icon. 2. In the second line, in the Operator field, verify And displays. 3. In the Condition field, from the list, select the specified field of the changed row is equal to the specified expression. 4. Click the first specified. 5. In the Table field, verify ttPart displays. 6. Select the ClassID field name check box and click OK. 7. At the end of the Condition field, click specified. 8. In the Editor text box, enter "" (quotation marks represent a blank). 9. In the Specify an Expression window, click OK. 10. The Condition pane should now read: Operator

Prefix

Condition

Postfix

None

The ttPart.TypeCode field of the changed row is equal to the "P" expression

And

The ttPart.ClassID field of the changed row is equal to the "" expression

This states that when the Type field in Part Maintenance of the changed row is P (for Purchased) and the Class field of the changed row is blank, execute the following action(s). You will define these actions in the following workshops. 11. Click Validate and verify BPM reports no errors.

18

Epicor ERP | 10.0.700

Business Process Management Course

Method Directives

Add First Action Complete this step to display an error message which halts user actions. This action will display when the condition evaluates to True, which means, when in a purchased part, the Part Class field is left blank. 1. In the workflow items tollbar, click the Raise Exception icon and drag it to the workflow pane of the Designer, below the Condition item. 2. Click the Condition element. 3. On the left side of the Condition element, verify True displays. 4. Select the True exit point, drag the line and point it to any of the Raise Exception element entry points. 5. Click the Raise Exception element. 6. In the Actions pane, verify raise exception based on the designed template displays. 7. Select designed to launch the Design Exception Template window. 8. In the Name field, enter Mandatory Part Class. 9. In the text box, enter Purchased parts must have a Part Class - BPM. 10. In the Design Exception Template window, click OK. 11. The Actions pane should now read: Action Name

Action

Terminate on error

Raise Exception 0

Raise exception based on the Mandatory Part selected Class template

You are now ready to extend the workflow by adding a second condition to make the Group field mandatory for manufactured or kit parts.

Add Another Condition Recall the first Condition evaluates to True when purchased part has no part class selected. When this condition is not met, for example, when the Update Method is triggered with manufacturing or sales kit part in focus, the BPM Condition sends the information to the False exit point and routes the BPM using another workflow branch. You will now add another Condition that will be called when first condition evaluates to False. The second condition will check if manufacturing or kit parts have the part group selected. If not, the BPM will raise another exception. 1. In the workflow items tollbar, click the Condition icon and drag it to the workflow pane of the Designer, to the right of the first Condition. 2. Create a connection between the False exit point of the first Condition and any entry point of the second Condition. 3. In the workflow, click the newly added Condition item. 4. In the Condition pane at the bottom, click the Add Line icon.

Epicor ERP | 10.0.700

19

Method Directives

Business Process Management Course

5. In the Condition field, invoke the list and select The specified field of the changed row is equal to the specified expression. 6. Click the first specified. 7. In the Table field, verify ttPart displays. 8. In the Fields search box, enter type. 9. From the list of available fields, select the TypeCode check box. 10. Click OK. 11. At the end of the Condition field, click specified. 12. In the Editor text box, enter "M" for (Manufactured, including the quotations). 13. In the Specify an expression window, click OK. 14. In the Conditions window, click the Add Line icon. 15. In the Operator field, select Or. 16. In the Condition field, invoke the list and select The specified field of the changed row is equal to the specified expression. 17. Click the first specified. 18. In the Table field, verify ttPart displays. 19. In the Fields search box, enter type. 20. From the list of available fields, select the TypeCode check box. 21. Click OK. 22. At the end of the Condition field, click specified. 23. In the Editor text box, enter "K" for (Sales Kit, including the quotations). 24. In the Specify an expression window, click OK. You now extend the condition by adding another line.

Extend Second Condition 1. In the Condition pane, click the Add Line icon. 2. In the third condition line, in the Operator field, verify And displays. 3. In the Condition field, from the list, select the specified field of the changed row is equal to the specified expression. 4. Click the first specified.

20

Epicor ERP | 10.0.700

Business Process Management Course

Method Directives

5. In the Table field, verify ttPart displays. 6. In the Fields search box, enter prod. 7. Select the ProdCode field name check box and click OK. 8. At the end of the Condition field, click specified. 9. In the Editor text box, enter "" (recall quotation marks represent a blank). 10. In the Specify an Expression window, click OK. 11. The Condition pane should now read: The Condition pane should now read: Operator

Prefix

Condition

None

The ttPart.TypeCode field of the changed row is equal to the "M" expression

Or

The ttPart.TypeCode field of the changed row is equal to the "K" expression

And

The ttPart.ProdCode field of the changed row is equal to the "" expression

Postfix

This states when the Type field in Part Maintenance is M (for manufactured) or K (for sales kit) and the Group field blank, then execute the action. 12. Click Validate and verify BPM reports no errors.

Add Second Action This action will display when the second condition evaluates to True, which means, when in a manufactured or kit part, the Part Group field is left blank. 1. In the workflow items tollbar, click the Raise Exception icon and drag it to the workflow pane of the Designer, below the second Condition item. 2. Click the Condition 1 element. 3. Select the True exit point, drag the line and point it to any of the Raise Exception 1 element entry points. 4. Click the Raise Exception 1 element. 5. In the Actions pane, verify raise exception based on the designed template displays. 6. Select designed to launch the Design Exception Template window. 7. In the Name field, enter Mandatory Group. 8. In the text box, enter Group is mandatory for manufactured or kit parts - BPM. 9. In the Design Exception Template window, click OK. 10. The Actions pane should now read:

Epicor ERP | 10.0.700

21

Method Directives

Business Process Management Course

Action Name

Action

Terminate on error

Raise Exception 0

Raise exception based on the Mandatory Group template

selected

11. Click Validate and verify the BPM reports no errors. 12. Click Save and Exit. 13. On the Pre-Processing > Detail sheet, select the Enabled check box. 14. Click Save. 15. Minimize Method Directives.

Test the BPM for the Part Class Navigate to Part Maintenance. Menu Path: Material Management > Inventory Management > Setup > Part 1. In the Part field, enter XXX-4334 (where XXX are your initials) and press Tab. 2. In the Add New Confirmation dialog box, click Yes. 3. In the Description field, enter XXX Purchase Test (where XXX are your initials). 4. Leave the Type field as Purchased. 5. Click Save. The first BPM condition is met and the exception message is fired. 6. To the error message from the BPM that says you must specify a Part Class, click OK. 7. In the Class field, select Hardware. 8. Click Save. The part saves with no errors. 9. Remain in Part Maintenance.

Test the BPM for the Part Group 1. On the Standard toolbar, click Clear. 2. In the Clear Confirmation window, click Yes. 3. In the Part field, enter XXX-3443 (where XXX are your initials) and press Tab. 4. In the Add New Confirmation window, click Yes. 5. In the Description field, enter XXX Mfg Test (where XXX are your initials)

22

Epicor ERP | 10.0.700

Business Process Management Course

Method Directives

6. In the Type field, select Manufactured and click Save. The second BPM condition is now met. 7. To the error message from the BPM that says you must specify a Group field, click OK. 8. In the Type field, select Sales Kit and click Save. Note the same error message from the BPM. 9. To the error message, click OK. 10. In the Group field, select Configured Parts. 11. Click Save. The part saves with no errors. 12. Exit Part Maintenance.

Disable Directives 1. Maximize the Method Directives window. 2. In the tree view, select the verify the Pre-Processing XXX Mandatory part and group directive displays. 3. Clear the Enabled check box. The method directive is now disabled. 4. Click Save. 5. Exit Method Directives.

Workshop - Set Log Created By and Date In this workshop, enable an audit trail of who created a new record for a master table. In this example, use ABC Code Maintenance but keep in mind you can apply the concepts to any master table. Key concepts are: • Free form functionality of Business Process Management • BPM C# syntax to write to a field in the dataset • Global variables

Add User Defined Columns In this task, create two user-defined fields available for use on the ABCCode table. In the following tasks, you will customize the ABCCode form by placing these fields on the form and have BPM write data in them. Navigate to Extended User Defined Table Maintenance. Menu Path: System Setup > System Maintenance > Extended UD Table Maintenance

Epicor ERP | 10.0.700

23

Method Directives

Business Process Management Course

Important This program is not available in the Epicor Web Access.

1. Click New. The Table Search window displays. 2. Search for and select ABCCode. 3. Verify the Table Name field displays ABCCode_UD. 4. In the Description field, enter Added User and Date fields - BPM. 5. Click New > New Column. The Column > Detail sheet displays. 6. In the Column Name field, enter XXXUser (where XXX are your initials). Notice the _c suffix is automatically added to the column name. 7. In the Description, enter Current User ID. 8. In the Data type field, verify String displays. 9. In the Format field, enter x(20). 10. In the Label field, enter User. 11. Click Save. 12. Repeat steps 5 - 11 to add another field. Use the parameters from the below table. Column Name

Description

XXXDate (where XXX are your Current Date initials)

Data type

Format

Label

DateTime

{datetime}

Date

Synchronize Table To complete this user-defined table, you synchronize it. This formats the table so it can be linked to the database. Note this process does not make the table available for display; you need to update the data model to finish incorporating this user-defined table in your database. 1. Click on the Actions menu. 2. To synchronize the active table, select the Sync Current Table to DB option. 3. To the confirmation message, click OK. 4. Exit User-Defined Table Maintenance. You are now ready to update the database to include this new table.

24

Epicor ERP | 10.0.700

Business Process Management Course

Method Directives

Regenerate Data Model To finish adding the user-defined table, the data model for the Epicor database needs to be regenerated. You or your system administrator runs this task on the server that contains your database. You regenerate the data model through the Epicor Administration Console. 1. On your server, press + F to display the Search bar. 2. Click on the Apps button. The Apps screen displays. 3. Locate the Epicor Software section on this screen and click the Epicor Administration Console icon. 4. Expand the Database Server Management node and the XXX database server node (where XXX is the name of your database server) that contains the database you need to update. 5. Select the database icon. The properties for the database displays in the center pane. 6. From the Actions pane, click the Regenerate Data Model button. The Generate Data Model window displays. 7. Verify the Deployment folder field displays the root path location for the server. For example: C:\inetpub\wwwroot\EpicorERP10 8. Click Generate. Important If you receive an error that the .dll file for the data model generation is in use by another process, end the task and close the Epicor Administration Console. Return to the Apps screen and launch the Command Prompt (under the Windows System section). In the Command Prompt window, enter IISRESET and press . After IIS stops and restarts, close the Command Prompt window and return to the Epicor Administration Console. You should be able to regenerate the data model.

9. To complete functionality, the latest data model must be pulled from the DB and copied to the local app server by restarting IIS. To do so, launch the Command Prompt window and enter IISRESET and press . Note Restarting IIS is a mandatory task after the successful data model regeneration.

10. After IIS stops and restarts, close the Command Prompt window. The data model generates, adding the extended user-defined table to the database. Now that the data model is regenerated, Epicor users can view and enter data in the extended user-defined table. Important User Defined columns appear to be part of the base table from the programming/customization point of view, as the data model merges the two tables into one logical entity.

Add a Method Directive Navigate to Method Directives. Menu Path: System Management > Business Process Management > Method Directives Maintenance Important This program is not available in the Epicor Web Access.

Epicor ERP | 10.0.700

25

Method Directives

Business Process Management Course

1. Click the Method Code button. 2. In the Search by Business Object section, verify Product is selected. 3. In the Business Object field, verify ABCCode displays. 4. In the Where Method Name Starts At field, enter U. 5. Click Search. 6. Select Update and click OK. The Method Code displays Erp.ABCCode.Update. 7. In the Method Description field, enter XXX Log Created By and Date (where XXX are your initials). 8. Click Save.

Add a Pre-Processing Directive 1. Navigate to the Pre-Processing sheet. 2. From the New menu, select New Pre-Processing. 3. In the Directive Name field, enter XXX Log Created By and Date (where XXX are your initials). 4. In the Group field, enter XXX (where XXX are your initials). There will not be any conditions for this method directive. Run this directive whenever the method is called. 5. Click Save.

Add an Action Note You do not need to create a condition statement for this directive. When you do not define a condition, the directive just executes each time its method is called – in this case, the ABCCode.Update method. This causes the custom C# code to run automatically with the method. 1. Click Design to launch the BPM Workflow Designer. 2. In the workflow items tollbar, click the Execute Custom Code icon and drag it to the workflow pane of the Designer, below the Start item. 3. Click your mouse, select any of the Start connector symbols, drag the line and point it to any of the Execute Custom Code element entry points. The connection between the two elements is now established. 4. Click the Execute Custom Code workflow item. 5. In the Actions pane found at the lower portion of the screen, view the Action statement: Synchronously execute custom code ... record nothing

26

Epicor ERP | 10.0.700

Business Process Management Course

Method Directives

Note Synchronously means the call is made immediately when the action executes. When Asynchronous execution is selected, the call is queued and executed according to the schedule defined in the BPM Async Process program. In this example, accept the Synchronous execution.

6. Click the code link. The Custom Code Action window displays. 7. Verify the Code sheet is selected. 8. Enter the code below: //* Set User and Date *// foreach (var ttAbcCode_iterator in (from ttABCCode_Row in ttABCCode where string.Compare(ttABCCode_Row.RowMod, "A", true) == 0 select ttABCCode_Row)) { var ttABCCode_xRow = ttAbcCode_iterator; ttABCCode_xRow.XXXUser_c = Session.UserID; ttABCCode_xRow.XXXDate_c = DateTime.Now; } Important Within the code replace XXX with your initials to create correct references of your newly created user-defined columns. Tip When you copy and paste the above code, you may need to adjust it to make sure logical statements are kept together on their respective line. When you refer to a user-defined column through the c# code, you can either: • refer to it as row.column_c - for example, ttABCCode_xRow.ABUser_c = Session.UserID. (preferred way) • refer to it as row.["column_c"] - for example, ttABCCode_xRow["ABUser_c"] = Session.UserID.

9. In the Custom Code Action window, click OK. 10. In the Actions pane, verify the Action field displays the following: synchronously execute custom /* Set User and Date */... record nothing 11. Click the Validate button and verify BPM reports no errors. 12. Click Save and Exit to return to the Method Directives window. 13. Select the Enabled check box to activate the directive. 14. Click Save. 15. Minimize Method Directives.

Epicor ERP | 10.0.700

27

Method Directives

Business Process Management Course

Create a Customized Text Field Launch the Developer Mode. • When you run the application using the Classic Style, on the Main menu, from the Options menu, select Developer Mode. • When you run the application using the Modern Shell, on the Home Page, click Settings and within the General Operations category, click Developer Mode. Navigate to ABC Code Maintenance. Menu Path: Material Management > Inventory Management > Setup > ABC Code 1. In the Select Customization window, select the Base Only check box. 2. Click OK. 3. Maximize the ABC Code Maintenance window. 4. From the Tools menu, select Customization. 5. In the ABC Code Maintenance window, select the Variance Tolerances group box and move it down. 6. Click the Cycle Count group box and make it larger so you can place two extra fields under the Count Frequency field. 7. In the Customization Tools Dialog window, from the Tools menu, select ToolBox. 8. From the Toolbox, select EpiTextBox. 9. Click inside the Cycle Count group box. 10. In the Select Layer Type window, select Customization and click OK. 11. Place the new text box directly below the Count Frequency text box. 12. Click the new text box. 13. Navigate to the Customization Tools Dialog > Properties sheet. 14. In the Epibinding field, select AbcCode.XXXUser (where XXX are your initials). 15. In the Enabled field, select False.

Create Another Customized Text Field 1. In the Toolbox, click EpiDateTimeEditor. 2. Add a second text box inside the Groupbox under the field you just created. 3. Navigate to the Customization Tools Dialog > Properties sheet. 4. In the Epibinding field, select AbcCode.XXXDate (where XXX are your initials). 5. In the Enabled field, select False.

28

Epicor ERP | 10.0.700

Business Process Management Course

Method Directives

Add Labels to Text Fields 1. In the Toolbox, click the EpiLabel button. 2. Draw a label next to the first text box you created. 3. Navigate to the Customization Tools Dialog > Properties sheet. 4. In the Text field, enter Created By. 5. In the Toolbox, click the EpiLabel button again. 6. Draw a label next to the second text box created. 7. Navigate to the Customization Tools Dialog > Properties sheet. 8. In the Text field, enter Date. 9. Close the Toolbox.

Save and Test Customizations 1. In the Customization Tools Dialog window, click Save. The Customization Save Dialog window displays. 2. In the Name and Description fields, enter XXXabc (where XXX are your initials). 3. Click Save. 4. In the Customization Comment text box, enter Added two text box fields and click OK. 5. Close the Customization Tools Dialog window. 6. Exit ABC Code Maintenance. 7. Re-open ABC Code Maintenance. 8. In the Select Customization window, select the XXXabc customization and click OK. 9. Click New. 10. In the ABC Code field, enter a letter of your choice to create a new record. If the record is already present, try another one. 11. In the Count Frequency field, enter 60 and 12. Click Save. Verify the BPM populates the information in the Created By and Date fields. Example Your results should look similar to the following.

Epicor ERP | 10.0.700

29

Method Directives

Business Process Management Course

13. Exit ABC Code Maintenance. 14. Disable the Developer Mode.

Disable Directive 1. Maximize the Method Directives window. 2. In the tree view, select the Pre-Processing directive XXX Log Created by and Date. 3. In the Pre-Processing > Detail sheet, clear the Enabled check box. The method directive is now disabled. 4. Click Save. 5. Exit Method Directives.

30

Epicor ERP | 10.0.700

Business Process Management Course

BPM Workflow Designer

BPM Workflow Designer Use the BPM Workflow Designer to construct your BPM workflow using a graphical design surface. To access the BPM Workflow Designer, click the Design button when you build a directive through following programs: • Method Directives • Data Directives • Updatable BAQ Method Directives Example

General Principles This topic discusses general principles of creating a BPM workflow by using the workflow elements. Example

Epicor ERP | 10.0.700

31

BPM Workflow Designer

Business Process Management Course

Follow these rules to construct a BPM Workflow: • The available items display in the left pane of the Designer. Workflow elements are grouped by categories and except the Flow Chart category, they all represent Actions the workflow will take. • For each workflow item representing Actions, you can select the Terminate on Error option to halt the workflow execution when it encounters an error. The Raise Exception action has this option selected by default. • The Condition block found in the Flow Chart category represents a set of conditions the BPM workflow may evaluate prior to executing the following workflow item. • To use a BPM item in the workflow, drag it and drop it in the BPM Designer surface. • Connect the workflow elements in the logical order they should be executed. When you hover your cursor over each element, the small black triangles surrounding the item represent the available connectors. To connect elements, click your mouse, select any of the connector symbols, drag the line and point it to another item's connector. • The initial point of the BPM workflow is the Start element. • The following workflow elements may utilize multiple inbound connectors but only one outbound connector. The exception is the Condition block that allows usage of two outbound connectors True & False. • When you delete any workflow item (block), its links will be automatically deleted with it. • To set up the behaviour of a workflow item representing Action, click on it and supply required parameters in the pane below the designer surface. • For the Condition block, build criteria using pre-built condition statements. You can enter more than one condition statement within a single block and use the And/Or logical Operators to define the relationship between the current statement and the preceding statement. • Once you build your BPM workflow, use the Validate function to control if all element parameters are set up in the way BPM expects. This function also checks that the directive references existing objects (assemblies, users, BAQ constants, DB tables and fields, etc) correspond to selected BO method signature. This control is particularly useful for directives imported from previous Epicor ERP releases.

32

Epicor ERP | 10.0.700

Business Process Management Course

BPM Workflow Designer

Note The Validate function does not check syntax in expressions or custom code.

• Once you finish, click Save and Exit to return to the respective Directive Maintenance program from which you called the Designer.

Availability of Workflow Elements The list of available workflow elements you can use to build the BPM workflow is influenced by the following factors: • Directive Type used to invoke BPM Workflow Designer - Method Directives, Data Directives and Updatable BAQ method Directives. • BPM Advanced User rights - enables Auto Print, Change Log, Call Service Connect Workflow, Execute Custom Code, Invoke External Method, Notify Me, Set By Query and Custom Code Condition. • Presence of Table parameters within the selected method - Field Changed Condition, Field Condition, Row With Status Condition, Notify Me, Data Tag Condition, Attach/Remove Data Tag Actions, Set By Query Action and Set Field Action. • Presence of Simple parameters within the selected method - Argument Condition, Word In Argument Condition and Set Argument Action. • Workflow items not available in uBAQ Method Directives - Holds and Tags and Method Query Field Changed Condition. • Valid Business Object Instance - cases when Business Object's primary key cannot be obtained from parameters - Attach and Remove Hold Actions and Hold Condition. • Presence of the Change Log table - Change Log Action.

Epicor ERP | 10.0.700

33

Hold Type

Business Process Management Course

Hold Type Use Hold Type Maintenance to create, maintain, and delete hold types - flags you can place on records. Menu Path: System Management > Business Process Management > Hold Type Maintenance Important This program is not available in the Epicor Web Access. A Hold is a flag you place on a record; it indicates the record should not be processed until it is reviewed and approved. A hold by itself does not perform any actions. You define the actions by creating directives which define how the application handles a record that has a hold placed on it. You can attach a BPM hold to a record in two ways: • Manually – You can manually attach a hold onto a field by using the BPM Holds program. You do this by launching the BPM Holds program from the field’s context menu. This adds the hold to the record. • Programmatically – A hold can also be attached to a record using a directive action. It can be attached before, during, or after the business process is run. Typically you use holds to interrupt the processing of the business object. This hold can then cause custom actions you define for the directive to run. You use Method Directive Maintenance or Data Directive Maintenance to create these directives. If the hold is present, the method directive can perform several actions, but a common use is to intercept the method before processing occurs (pre-processing) to prevent the method from performing its normal routine (for example, by raising an exception). This type of method directive is known as an inhibitor.

Workshop - Create and Use a Hold Type BPM Holds can prohibit data transaction processing for specified reasons. In this example, a simple condition checks if the State field has been entered for a Customer record. If not, a Customer Review BPM hold is attached to the record. You then prevent creation or update of sales orders for customers on a Customer Review hold. In this example, place or remove the hold during the Post Update process for a customer. You do not want to accidentally place a record on hold before it passes through validation and update. It is not possible to use condition tests that rely on the RowMod identifier (Add, Update, or Delete) during the Post Update Process. Use a Pre-Processing directive to test for conditions to place or remove holds, but use a Post-Processing directive to perform the actions.

Create the Hold Type Navigate to Hold Type Maintenance. Menu Path: System Management > Business Process Management > Hold Type Maintenance Important This program is not available in the Epicor Web Access.

1. In the Hold Type field, enter XXX Customer Review (where XXX are your initials) and press Tab. 2. In the Add New Confirmation, click Yes. 3. Click the Business object button. 4. In the Starting At field, enter Cus and click Search.

34

Epicor ERP | 10.0.700

Business Process Management Course

Hold Type

5. Select Customer and click OK. 6. In the Description field, enter XXX Customer Review (where XXX are your initials). 7. Click Save. 8. Exit Hold Type Maintenance.

Add a Method Code Navigate to Method Directives. Menu Path: System Management > Business Process Management > Method Directives Maintenance Important This program is not available in the Epicor Web Access.

1. On the Detail sheet, click the Method Code button. The Method Search window displays. 2. In the Search by Business Object section, verify Product is selected. Recall by selecting this option, the Business Objects belonging to the application part of the system become available for selection. 3. In the Business Object field, select Customer. 4. In the Where Method Name Starts At field, enter U. 5. Click Search. 6. Select the Update method and click OK. The Business Object returns on the form. 7. In the Method Description field, enter XXX Customer Review (where XXX are your initials). 8. Click Save.

Add a Pre-Processing Directive 1. From the New menu, select New Pre-Processing. 2. In the Directive Name field, enter XXX Condition Test to Set Hold (where XXX are your initials). 3. In the Group field, enter XXX (where XXX are your initials). 4. Click Design to launch the BPM Workflow Designer. 5. In the workflow items tollbar, click the Condition icon and drag it to the workflow pane of the Designer, below the Start item. 6. Click your mouse, select any of the Start connector symbols, drag the line and point it to any of the Condition element entry points. The connection between the two elements is now established.

Epicor ERP | 10.0.700

35

Hold Type

Business Process Management Course

7. In the workflow, click the Condition item. 8. In the Condition pane at the bottom, click the Add Line icon. 9. In the Condition field, invoke the list and select The specified field of the changed row is equal to the specified expression. 10. Click the first specified. 11. In the Table field, verify ttCustomer displays. 12. In the Fields search box, enter state. 13. From the list of available fields, select the State check box. 14. Click OK. 15. At the end of the Condition field, click specified. 16. In the Editor text box, enter "". This indicates that directive should execute when the Customer.Update method initiates and the State field is blank. 17. In the Specify an expression window, click OK.

Add an Action 1. In the workflow items tollbar, click the Enable Post Directive icon and drag it to the workflow pane of the Designer, below the Condition item. 2. Click the Condition's True exit outbound connector (found on the left) and connect it to any of the Enable Post Directive entry points. 3. Click Validate and verify the BPM reports no errors. 4. Click Save and Exit to return to Method Directives. 5. Select the Enabled check box. 6. Click Save.

Add a Pre-Processing Directive 1. From the New menu, select New Pre-Processing. 2. In the Directive Name field, enter XXX Condition Test to Remove Hold (where XXX are your initials). 3. In the Group field, enter XXX (where XXX are your initials). 4. Click Design to launch the BPM Workflow Designer. 5. In the workflow items tollbar, click the Condition icon and drag it to the workflow pane of the Designer, below the Start item.

36

Epicor ERP | 10.0.700

Business Process Management Course

Hold Type

6. Click your mouse, select any of the Start connector symbols, drag the line and point it to any of the Condition element entry points. 7. In the workflow, click the Condition item. 8. In the Condition pane at the bottom, click the Add Line icon. 9. In the Condition field, invoke the list and select The specified field of the changed row is equal to the specified expression. 10. Click the first specified. 11. In the Table field, verify ttCustomer displays. 12. In the Fields search box, enter state. 13. From the list of available fields, select the State check box. 14. Click OK. 15. In the Condition field, click the drop-down next to is equal to. 16. From the list, select is not equal to. 17. At the end of the Condition field, click specified. 18. In the Editor text box, enter "". This indicates that directive should execute when the Customer.Update method initiates and the Customer State field is NOT blank. 19. In the Specify an expression window, click OK.

Add an Action 1. In the workflow items tollbar, click the Enable Post Directive icon and drag it to the workflow pane of the Designer, below the Condition item. 2. Click the Condition's True exit outbound connector (found on the left) and connect it to any of the Enable Post Directive entry points. 3. Click Validate and verify the BPM reports no errors. 4. Click Save and Exit to return to Method Directives. 5. Select the Enabled check box. 6. Click Save.

Add a Post-Processing Directive 1. From the New menu, select New Post-Processing. 2. In the Directive Name field, enter XXX Take Customer Off Hold (where XXX are your initials).

Epicor ERP | 10.0.700

37

Hold Type

Business Process Management Course

3. In the Group field, enter XXX (where XXX are your initials). 4. Click Design to launch the BPM Workflow Designer. 5. In the workflow items tollbar, click the Condition icon and drag it to the workflow pane of the Designer, below the Start item. 6. Click your mouse, select any of the Start connector symbols, drag the line and point it to any of the Condition element entry points. 7. In the workflow, click the Condition item. 8. In the Condition pane at the bottom, click the Add Line icon. 9. In the Condition field, invoke the list and select this directive has been enabled from the specified directive. 10. In the Condition text, click specified. 11. In the Stage field, verify Pre (Pre-Processing directive) is selected. 12. In the Directive field, select XXX Condition Test to Remove Hold (where XXX are your initials) and click OK. This way, you specify which pre-processing directive enables the post-processing directive you are currently configuring.

Add an Action 1. In the workflow items tollbar, click the Remove Holds icon and drag it to the workflow pane of the Designer, below the Condition item. 2. Click the Condition's True exit outbound connector (found on the left) and connect it to any of the Remove Holds entry points. 3. Click the Remove Holds item. 4. Verify the Action displays Remove holds of the specified type. 5. In the Action text, click specified. 6. In the Hold Type field, select XXX Customer Review (where XXX are your initials) and click OK. Recall you created this hold type at the beginning of this workshop. 7. Click Validate and verify the BPM reports no errors. 8. Click Save and Exit to return to Method Directives. 9. Select the Enabled check box. 10. Click Save.

38

Epicor ERP | 10.0.700

Business Process Management Course

Hold Type

Add a Post-Processing Directive Add a Post-Processing Directive to set the hold. 1. From the New menu, select New Post-Processing. 2. In the Directive Name field, enter XXX Place Customer on Hold (where XXX are your initials). 3. In the Group field, enter XXX (where XXX are your initials). 4. Click Design to launch the BPM Workflow Designer. 5. In the workflow items tollbar, click the Condition icon and drag it to the workflow pane of the Designer, below the Start item. 6. Click your mouse, select any of the Start connector symbols, drag the line and point it to any of the Condition element entry points. 7. In the workflow, click the Condition item. 8. In the Condition pane at the bottom, click the Add Line icon. 9. In the Condition field, invoke the list and select this directive has been enabled from the specified directive. 10. In the Condition text, click specified. 11. In the Stage field, verify Pre (Pre-Processing directive) is selected. 12. In the Directive field, select XXX Condition Test to Set Hold (where XXX are your initials) and click OK. This indicates the directive should execute after the Condition Test to Set Hold directive executes.

Add an Action 1. In the workflow items tollbar, click the Attach Hold icon and drag it to the workflow pane of the Designer, below the Condition item. 2. Click the Condition's True exit outbound connector (found on the left) and connect it to any of the Attach Hold entry points. 3. Click the Attach Hold item. 4. Verify the Action displays Attach hold of the specified type. 5. In the Action text, click specified. 6. In the Hold Type field, select XXX Customer Review (where XXX are your initials). 7. In the Comment field, enter BPM Hold - Customer.Update and click OK. 8. Click Validate and verify the BPM reports no errors. 9. Click Save and Exit to return to Method Directives.

Epicor ERP | 10.0.700

39

Hold Type

Business Process Management Course

10. Select the Enabled check box. 11. Click Save.

Add a Method Code 1. Navigate to the Detail sheet. 2. Click the Method Code button. 3. In the Search by Business Object section, verify Product is selected. 4. In the Business Object field, select SalesOrder. 5. Click Search. 6. Select ChangeCustomer and click OK. The method defaults to Erp.SalesOrder.ChangeCustomer. 7. Click Save.

Add a Pre-Processing Directive 1. From the New menu, select New Pre-Processing. 2. In the Directive Name field, enter XXX Customer Sales Order (where XXX are your initials). 3. In the Group field, enter XXX (where XXX are your initials). 4. Click Design to launch the BPM Workflow Designer. 5. In the workflow items tollbar, click the Condition icon and drag it to the workflow pane of the Designer, below the Start item. 6. Click your mouse, select any of the Start connector symbols, drag the line and point it to any of the Condition element entry points. 7. In the workflow, click the Condition item. 8. In the Condition pane at the bottom, click the Add Line icon. 9. In the Condition field, invoke the list and select the hold of the specified type is attached to the business object. 10. Click specified type is attached to the business object. The Select Business Object window displays. 11. Expand the following nodes: Erp.SalesOrder > Objects, linked with the object "Erp.Sales Order" > via OrderHed. 12. Select the first Erp.Customer object.

40

Epicor ERP | 10.0.700

Business Process Management Course

Hold Type

13. In the Hold Type field, verify XXX Customer Review (where XXX are your initials) and is attached populates. 14. In the Select Business Object window, click OK. This indicates the directive should execute when the ChangeCustomer method is called and the customer on the order is on Customer Review hold.

Add an Action Define an action to display an exception message. 1. In the workflow items tollbar, click the Raise Exception icon and drag it to the workflow pane of the Designer, below the Condition item. 2. Click the Condition element. 3. On the left side of the Condition element, verify True displays. 4. Select the True exit point, drag the line and point it to any of the Raise Exception element entry points. 5. Click the Raise Exception element. 6. In the Actions pane, verify raise exception based on the designed template displays. 7. Select designed to launch the Design Exception Template window. 8. In the Name field, enter Customer Hold. 9. In the text box, enter This customer is on hold because a required field has not been entered - BPM. This action executes when the Customer.Update method initiates and specified conditions are met. 10. In the Design Exception Template window, click OK. 11. Click Validate and verify BPM reports no errors. 12. Click Save and Exit to return to Method Directives. 13. Click the Enabled check box. 14. Click Save. 15. Minimize the Method Directives window.

Update a Customer Record Navigate to Customer Maintenance. Menu Path: Sales Management > Order Management > Setup > Customer Tip The CRM menu path is: Customer Relationship Management > Order Management > Setup > Customer

1. In the Customer field, enter ADDISON and press Tab.

Epicor ERP | 10.0.700

41

Hold Type

Business Process Management Course

2. In the State field, delete the entry and click Save. 3. Exit Customer Maintenance.

Create a Sales Order To test the BPM, you updated a customer record and left the State field blank; next, enter a sales order. When you add a customer to an order, the application displays the exception, but you can continue to complete the order. Navigate to Sales Order Entry. Menu Path: Sales Management > Order Management > General Operations > Order Entry Tip The CRM menu path is: Customer Relationship Management > Order Management > General Operations > Order Entry 1. Click New. 2. In the Customer field, enter Addison and press Tab. Note the BPM message. 3. To the Error message, click OK. 4. Exit Sales Order Entry. 5. In the Save Confirmation window, click No. Tip In the real environment, to prevent the order from being completed, you can create a pre-processing directive for the SalesOrder.Update method to check for the hold and raise the same exception.

Disable Directives 1. Maximize the Method Directives window. 2. In the tree view, select the Pre-Processing directive XXX Customer Sales Order. 3. On the Pre-Processing > Detail sheet, clear the Enabled check box. 4. Navigate to the Detail sheet. 5. Click the Method Code button. 6. In the Business Object field, select Customer. 7. Click the Search button to search for and select Customer.Update. 8. In the tree view, select the Pre-Processing directive XXX Condition Test to Set Hold. 9. On the Pre-Processing > Detail sheet, clear the Enabled check box. 10. Click Save.

42

Epicor ERP | 10.0.700

Business Process Management Course

Hold Type

11. Disable the remaining directives created for the Customer.Update method : • XXX Condition Test to Remove Hold • XXX Take Customer Off Hold • XXX Place Customer on Hold 12. Click Save. 13. Exit Method Directives.

Epicor ERP | 10.0.700

43

Data Directives

Business Process Management Course

Data Directives Use Data Directives Maintenance to view, create, edit, and delete data directives applied to database table transactions. A data directive is similar to a method directive, but instead of being launched by a business object method, a data directive is linked to a database table and is triggered by a database event, such as add, delete, or update. By applying the directive to a specific table, data directives are used to control data that may be affected by several business objects. You can apply most of the conditions and actions from method directives to data directives as well, except in cases where the condition or action depends on information available in the business object that is not available in the data itself. Two types of data directives are available: • In-Transaction - Affects data before it is saved to the database. This directive type can only process one row at a time; it cannot process multiple dirty rows - rows that contain data not yet saved to the database. Multiple dirty rows are explained later in this course. • Standard - Does not affect data in the database. A Standard directive executes after a data transaction is saved to the database. This directive type processes multiple dirty rows modified in the database at once. It runs after base methods and method directives.

Workshop - Use Auto Print Action You can use BPM to automatically preview or print a report when the BPM data directive executes. In this workshop, apply the standard data directive on the OrderHed table to preview the Sales Order Acknowledgement report when user enables a check box. To configure the Auto-Print action, select a report, select a printer and print options, and configure the mapping of input values for report parameters. The Auto Print action is typically triggered by the execute custom code action or after a certain condition is met.

Locate the OrderHed Table Navigate to Data Directives. Menu Path: System Management > Business Process Management > Data Directives Maintenance Important This program is not available in the Epicor Web Access.

1. Click the Table button. The Table Search window displays. 2. Verify the Search by Table option is selected. 3. In the Table Name Starting At field, enter Order. 4. Click Search. 5. Select OrderHed and click OK.

44

Epicor ERP | 10.0.700

Business Process Management Course

Data Directives

Add Standard Directive 1. Click New and select New Standard Directive. 2. In the Directive Name field, enter XXX-Auto Print (where XXX are your initials). 3. In the Group field, enter XXX (where XXX are your initials). 4. Click Design to launch the BPM Workflow Designer. 5. Click the Condition icon and drag it to the workflow pane of the Designer, below the Start item. 6. Create a connection between the Start and Condition elements. 7. In the workflow, click the Condition item. 8. In the Condition pane at the bottom, click the Add Line icon. 9. In the Condition field, invoke the list and select The specified field has been changed from any to another. 10. Click the specified link. 11. In the Table field, verify ttOrderHed displays. 12. From the list of available fields, select the AutoPrintReady check box and click OK. 13. Click the another link. 14. Clear the Any Value check box. 15. In the Value field, select true and click OK. This condition will trigger the subsequent action when a user selects the Auto-Print Ready check box found on Sales Order's Summary sheet.

Add an Action 1. In the workflow items tollbar, click the Auto Print icon and drag it to the workflow pane of the Designer, below the Condition item. 2. Click the Condition's True exit outbound connector connect it to any of the Auto Print entry points. 3. Click the Auto Print workflow element. 4. In the Actions pane, verify Automatically print specified report with specified options displays. 5. Click the first specified link. In the search dialog box, the Basic tab presents fields for entering search criteria specific to reports. 6. In the Report Type, verify SQL Server Reporting (SSRS) displays. 7. In the Report Table Level field, verify 'OrderHed' is the Primary table displays.

Epicor ERP | 10.0.700

45

Data Directives

Business Process Management Course

This means only the reports where OrderHed is defined as the primary table will become available for selection. 8. Click Search. 9. From the list, select OrderAck (Sales Order Acknowledgement) and click OK. 10. Click the specified link. 11. In the Run Schedule field, verify Immediate displays. This means the action will execute right after the condition is satisfied. 12. For the Print Action, select Auto Preview. Now you must specify the Report Parameters. On this sheet, you can add or edit the actions associated with the listed parameters so that values can be passed to the report in the context of the Auto Print action. 13. Select the Report Parameters sheet. 14. In the OrderNum parameter, click the arrow on the right-hand side and select The specified table and field value. 15. Click the specified link to launch the Select Table Field(s) window. 16. Select ttOrderHed.OrderNum field and click OK. Verify the OrderNum parameter is set to The ttOrderHed.OrderNum table and field value. 17. In the Set up Auto Print window, click OK. 18. Click the Validate button and verify BPM reports no errors. 19. Click Save and Exit to return to the Data Directives window. 20. Select the Enabled check box to activate the directive. 21. Click Save and minimize Data Directives.

Test the BPM Navigate to Sales Order Entry. Menu Path: Sales Management > Order Management > General Operations > Order Entry Tip The CRM menu path is: Customer Relationship Management > Order Management > General Operations > Order Entry 1. Click New. 2. In the Customer field, enter Dalton and press Tab. 3. Click New > New Line. 4. On the Lines Detail sheet at the bottom, enter the following details:

46

Epicor ERP | 10.0.700

Business Process Management Course

Data Directives

Field

Value

Part

DSS-1010

Order Quantity

10

5. Select the Auto-Print Ready check box. 6. Click Save. The Sales Order Acknowledgement report displays for the order in focus. 7. Exit the report and Sales Order Entry.

Disable Directive 1. Maximize Data Directives. 2. Clear the Enabled check box to disable the BPM. 3. Click Save and exit Data Directives.

Epicor ERP | 10.0.700

47

Multiple Dirty Rows

Business Process Management Course

Multiple Dirty Rows A dirty row is a row of modified data not yet saved to the database. For example, when the user modifies a row, like a currency exchange rate, then moves to another row (another exchange rate), modifies it, and then save the two rows together, these two rows are called multiple "dirty" rows. Some methods only allow changed rows to process one at a time, and so do not support multiple dirty rows. However, some methods can send multiple dirty rows together as a set to the server for update. When multiple rows are sent to the server at the same time, you can specify a directive to take action on the batch of rows in a specific way. These actions are available for both method directives, if the method is marked as supporting Multiple Dirty Rows, and standard data directives: • Once passing all matching rows - The action executes once as it moves through the data within the set of dirty rows, but it only gets the rows that match the selection criteria. • Once passing all existing rows - The action executes one time as it moves through the data within the set of dirty rows, and it checks all rows within the dirty row set. • For each matching - The action executes for as many times as the number of rows that match the selection criteria in the dirty row set. Each row processes individually. • For each existing - The action executes for as many times as the number of rows within the dirty row set (the overall number of dirty rows). Each row processes individually.

48

Epicor ERP | 10.0.700

Business Process Management Course

Updatable BAQ Directives

Updatable BAQ Directives Use Updatable BAQ Method Directives to view, edit and define directives specific to an updatable Business Activity Query (BAQ). Updatable BAQ method directives are similar to the method directives described earlier, except they apply to methods used specifically by updatable BAQs, custom queries you can create for data entry. Updatable BAQ methods are used to run processes on Updatable Dashboards. This chapter details the conditions and actions available for Updatable BAQ method directives. For more information about creating and implementing these methods, review the Updatable Dashboards chapter. Updatable BAQ directives initiate BPM actions based on method calls launched from an updatable BAQ. An updatable BAQ is a customized query tool that displays on smart client dashboards and mobile device dashboards through which users can update and add data; like a business object, BAQ methods are required so the database can be updated. An updatable BAQ directive can be run before, after, or in place of the BAQ method call. Updatable BAQ method directives are similar to the method directives, except that they apply to methods used specifically by updatable BAQs. Each updatable BAQ has the following methods: • GetList - Retrieves the data specified by the query. • GetNew - Creates an empty row where a new record can be entered and submitted to the database. • Update - Performs database updates for changed and added rows. • RunCustomAction - Runs a custom action. You define the ID of the custom action in the Business Activity Query Designer program and define the action using one or more directives. • FieldUpdate - This method occurs after the user's change to a field is committed. If you want this field to generate a Business Process Management (BPM) method, select the Raise Events check box in Updatable Field Editor. You can use this method to perform additional processing against the changed row. For example, when you enter a part number, you want the part description field to populate automatically. • Field Validate - This method occurs before the proposed change to a field is committed. If you want this field to generate a Business Process Management (BPM) method, select the Raise Events check box in Updatable Field Editor. You can use this method to validate proposed changes. For example, you can prevent users from entering an incorrect value in a certain field such as non-existent state. Important You must be a BPM Advanced User to modify pre-processing and post-processing updatable BAQ method directives with a limited number of actions. To utilize the whole uBAQ Method Directives toolset including modifications of base processing directives, a user must be provided with BAQ Advanced User rights. The Updatable BAQ Method Directives program can be accessed in two ways: • By clicking Define Custom Actions on the Update > General Properties sheet of the Business Activity Query Designer program. • From the Main Menu path shown below. Custom Actions You may create custom actions for updatable BAQs in the Business Activity Designer program by defining the action ID and label. The custom actions can then be added to the Actions menu of a dashboard that uses the query. In the Updatable BAQ Method Directives program, you create a pre-processing, base processing, or post-processing directive for the RunCustomAction method. Use "the specified argument is equal to the specified expression" condition statement to identify which action to run. The first "specified" variable can be set to "actionID." The second "specified" variable can be set

Epicor ERP | 10.0.700

49

Updatable BAQ Directives

Business Process Management Course

to the ID of the action called by the user as it was specified in the BAQ. Then create directive actions to perform custom operations. Menu Path: System Management > Business Process Management > Updatable BAQ Directives Maintenance Important This program is not available in the Epicor Web Access.

50

Epicor ERP | 10.0.700

Business Process Management Course

BPM and Service Connect Workflows

BPM and Service Connect Workflows Epicor Service Connect is a business integration platform that functions as a central integration point for secure workflow processes within the Epicor application, as well as external connectivity to Epicor and non-Epicor applications. You can re-compose business components, represented as web services outside of application, within Service Connect to eliminate non-value added steps or potentially speed up any process. You can create a method directive to call a Service Connect workflow. Service Connect automates tasks and processes within the application to allow employees to focus on value added activities and management by exception, instead of repetitive data (re)entry tasks. For example, you can create a method directive to call a Service Connect workflow to update customer information in an offline file or other application when changes are made in Customer Maintenance. The workflow can be called synchronously or asynchronously. Synchronously allows the record to be modified as it comes through the pre-process. Asynchronously takes a copy of the record and calls the Service Connect workflow out of the scope of the main transaction. Asynchronously is typically faster since you do not have to wait for the Service Connect workflow to complete before the transaction processes. Consideration should be made before calling Service Connect synchronously. You must enable the BPM Advanced User option in User Account Maintenance to access the call Service Connect workflow action. To create a method directive to call Service Connect, select the Call SC Workflow workflow item in BPM WF Designer. When the specified hot link is selected to identify the workflow, BPM creates a query against Service Connect on the designated server to find all the available workflows. For additional information on Epicor Service Connect, see the ESC Help and Epicor 10 Service Connect Courses.

Epicor ERP | 10.0.700

51

BPM Utilities

Business Process Management Course

BPM Utilities Various utilities are available in the Business Process Management (BPM) module.

Action Processing After you define the method directives your application runs, you are ready to set up the action process schedule. This regular schedule causes the Business Process Management (BPM) functionality to run and subsequently, update the BPM task queue and process asynchronous method directives. To set up the BPM Process task to run on a recurring schedule, create the schedule and set up the process to run using this schedule. System Agent Use System Agent Maintenance to create recurring schedules. Use this program to create the different schedules you need to run your method directives. Menu Path: System Setup > System Maintenance > System Agent Important This program is not available in the Epicor Web Access.

Action Process Use BPM Async Process to set up a task that deletes outdated BPM Data Form states, processes all asynchronous Execute Custom Code actions and invokes asynchronous External Method actions in the queue. Other asynchronous actions such as Send E-mail or Call ESC Workflow are launched asynchronously when the directive executes; they are not put in the queue and don't require this task to launch them. You can set up this task to run on a recurring schedule. This automatically processes all calls made by the method directives. Menu Path: System Management > Business Process Management > Action Process Important This program is not available in the Epicor Web Access.

BPM Async Processing Log If you are running any asynchronous actions, you can use the BPM Async Processing Log to review each asynchronous action. The log location is specified during BPM Action Process setup. It lists the following information about each action: • Startup timestamp • Error message (if an issue occurs) • Completion timestamp

52

Epicor ERP | 10.0.700

Business Process Management Course

BPM Utilities

BPM User Rights Two levels of Business Process Management (BPM) functionality are available - a base level and an advanced level. All users who have menu access to BPM can use the base level of BPM functionality to create holds and directives containing pre-built actions. Users with access to the advanced BPM functions can use the entire BPM toolset. These users can also create method directives that run in place of the base methods; however users should work with Epicor or a partner organization before replacing a base method. You give specific user rights to the advanced BPM features through User Account Maintenance. These rights are assigned on the Options sheet. Users with BPM Advanced User privileges can use the entire BPM toolset that includes the following: • Create programming actions using the Programming Interface Generator Form • Create and edit Base Processing directives • Create and edit In-Transaction Data directives • Modify pre-processing and post-processing updatable BAQ method directives with a limited number of actions. To utilize the whole uBAQ Method Directives toolset, a user must be provided with BAQ Advanced Users rights. • Use the whole set of BPM Workflow Actions including: • Auto Print • Change Log • Call Service Connect Workflow • Execute Custom Code • Invoke External Method • Notify Me • Set By Query • Use the whole set of BPM Workflow Conditions including: • The custom code condition is valid

BPM Logging The server trace log is an important tool for managing both application and performance issues. You can configure the trace log to record the BPM specific transaction data you need to review. Use the Epicor Administration Console to set up server logging settings. The following outlines the process of enabling the BPM tracing functionality. 1. You launch the Epicor Administration Console from your server machine. Depending on your operating system, you launch this tool in different ways: a. If you are on Windows SQL Server 2008 R2, click Start > All Programs > Epicor Software > Epicor Administrative Tools > Epicor Administration Console.

Epicor ERP | 10.0.700

53

BPM Utilities

Business Process Management Course

b. If you are on Windows SQL Server 2012, press the + F button to display the Charms bar; from the Apps screen, select Epicor Administration Console. The Epicor Administration Console displays. 2. From the tree view, expand the Server Management node and Epicor Server node. 3. Select the application server you need to monitor. 4. Now from either the Action menu or the Actions pane, select Application Server Settings.

5. In the Application Server Settings window, Enable the Trace Log and configure Log File Location. 6. Within the Standard Logging information, select the BPM Logging check box to record Business Process Management (BPM) database calls. Each time user activity activates a BPM, the application server log records the information and gathers the data results.

54

Epicor ERP | 10.0.700

Business Process Management Course

BPM Utilities

By selecting the BPM Logging check box, you enable the following trace flag in the trace.config configuration file: The above trace URI tracks the complete BPM information that includes the following: • Business Object customizations made through Method Directives • Data Triggers created using Data Directives • uBAQ customizations - method directives of Updatable BAQs with BPM update For a detailed analysis, the trace URI can be manually configured to narrow down the information being tracked: • trace://ice/fw/BPM/BO - to track BO customizations only • trace://ice/fw/BPM/DB - to track data triggers only • trace://ice/fw/BPM/DQ - to track UBAQ customizations only 7. As a result, the server log records the following information: Example Op Utc="2013-10-30T13:40:45.2677063Z" act="Ice:BO:Tip/TipSvcContract/Up date" dur="1006.1712" cli="fe80::d147:d8f4:e54e:5149%10:42111" usr="man ager" machine="MOS-TLS-DEV-AAA" pid="10788" tid="5">

Epicor ERP | 10.0.700

55

BPM Utilities

Business Process Management Course

For each BPM call, the BpmCustomization node is created with following attributes: Node

Description

Source

Displays the source of the BPM information. Possible values: • BO - Method Directives • DB - Data Triggers • DQ - uBAQ Method Directives

BpMethodCode

The method invoked by the BPM.

Type

Displays the Type of the BPM call. Possible values: • In Transaction Trigger • Standard Trigger • BO Customization • uBAQ Update Processing

ExecutionInterruptedOnDirective Applies to BPM Data Form execution only. When the BPM Form invokes, the service call exits and returns control back to the client. The client then calls the service again. Therefore, in case of BPM Data Forms two different operations are tracked. This value displays the directive's GUID from which the service call was interrupted. ExecutionResumedFromDirective

Duration

For the second BPM Data Form operation, this value displays the directive's GUID from which the service call was resumed. Time spent on executing a BPM call.

Within the BpmCustomization node, the BpmDirective node holds the following attributes: Node

Description

Type

Type of the Directive. Possible values: • Pre, Base, Post - for Method Directives and uBAQ Method Directives • Standard, In Transaction - for Data Directives

ID

Displays the directive's GUID.

Name

Name of the directive.

IsCompanyIndependent

Displays if the directive is active for all companies in the application.

PreparationStepDuration

The duration of the directive's preparation step. If there was no preparation for this directive, this attribute is absent.

Duration

The directive's execution time.

Tip • A single service call may trigger a lot of BPM customizations, even the customizations of different BOs and tables. They all will be listed under the Op node of this operation.

56

Epicor ERP | 10.0.700

Business Process Management Course

BPM Utilities

• The execution of one directive may lead to other customizations being executed, and in case of synchronous execution (in-transaction triggers, sync invocations of other BO methods), the duration of the "child" directives will also be counted into the duration of "parent" directive. • Default BO method execution duration (in case it's not overridden by a BaseProcessing direction) is not counted as part of BO Customization duration. • Since tracing engine allows the user to switch on some tracing functionality for a particular BO calls, or specific method invocations, it applies to BPM tracing out of the box.

You can evaluate the server log using the Performance and Diagnostic Tool. For more information on how to test the performance of your system, review the Performance Diagnostic Guide.

Disable BPM You can use the customizationSettings section found in the web.config located in the server folder of your Epicor ERP installation to control the application's customization engine. Example When you set customizationSettings disabled = "true", you turn the customization engine off. This means Method Directives, Data Directives and uBAQ Method Directives processed via BPM are not executed. However, you can still edit, add and remove BPMs but these changes are saved to the database only and no binaries are being recompiled or deleted. When customization engine is turned back on (customizationSettings disabled = "false"), old binaries are applied. To get the binaries up to date: • Recompile all Method and Data Directives using the Directive Update program. Menu Path: System Management > Business Process Management > Directive Update Important This program is not available in the Epicor Web Access.

• Recompile and refresh BPM binaries related to selected updatable queries using the Updatable Query Maintenance program. Menu Path: System Management > Upgrade/Mass Regeneration > Updatable BAQ Maintenance

Epicor ERP | 10.0.700

57

BPM Utilities

Business Process Management Course

Tip If an incorrectly configured BPM directive prevents the system from operating or the user from logging in, removing incorrect directives with disabled BPM is not enough. The user should remove affected binaries from the Server > Customization folder, for example, from C:\inetpub\wwwroot\EpicorERP10\Server\Customization and then remove or disable incorrect directives. Important The customizationSettings disabled = "true" setting also turns off other customization engine client besides BPM that are defined in the web.config, such as Posting or Product Configurator.

58

Epicor ERP | 10.0.700

Business Process Management Course

Conclusion

Conclusion Congratulations! You have completed the Business Process Management course.

Epicor ERP | 10.0.700

59

Additional information is available at the Education and Documentation areas of the EPICweb Customer Portal. To access this site, you need a Site ID and an EPICweb account. To create an account, go to http://support.epicor.com.

View more...

Comments

Copyright ©2017 KUPDF Inc.
SUPPORT KUPDF