Epicor ERPBusiness 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 ..........................53 Disable BPM...................................................................................................................................44 Locate the OrderHed Table.....................................................................39 Add an Action................................................................33 Hold Type...................................................................................................................................................................................................................................................................................................................................................................................................................41 Create a Sales Order..................................................................................36 Add a Pre-Processing Directive................................42 Data Directives..............................................................................................Use Auto Print Action.......................................................................................46 Disable Directive....................................................................................................................................................................................................................................................................52 Action Processing.........................................................35 Add an Action.................31 Availability of Workflow Elements...........48 Updatable BAQ Directives............................................................................................................................52 BPM User Rights...................................................................................................................................37 Add an Action............................................................47 Multiple Dirty Rows............................................................................................................................................................................41 Update a Customer Record.......................................................................................................................................................................................................................................0..........................................................35 Add a Pre-Processing Directive...................................................................................................................................................................................................40 Add an Action.................................................................................................................................31 General Principles.....................................................................57 Conclusion............................................................................................................................................................................................................................................................................................................................................................45 Test the BPM........................................................................................................................................................................................................................................................................40 Add a Pre-Processing Directive....................................................................................................................................37 Add a Post-Processing Directive.......................................................Create and Use a Hold Type...................................................................................................38 Add a Post-Processing Directive........34 Workshop .....................................................34 Create the Hold Type.......................................................................51 BPM Utilities.........................................................................................................................................44 Add Standard Directive..........................................................................................42 Disable Directives..............................53 BPM Logging.............................................................................................................................Contents Business Process Management Course BPM Workflow Designer..........................49 BPM and Service Connect Workflows..................................................................................................................................59 4 Epicor ERP | 10..........................................................34 Add a Method Code....................36 Add an Action................45 Add an Action.....................................................................................................................................................................................39 Add a Method Code.....................................................................................................................................................................................700 ....................44 Workshop ...................... 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. The course provides an introduction to the fundamentals of the BPM application. • Understand the features and functionality of Method Directives. • Understand the impact of RowMod being set to Added. or Deleted. You are provided with an understanding of the tool. • Understand the basic methods within a business object.actions and conditions.Business Process Management Course Business Process Management Course Business Process Management Course This course focuses on the Business Process Management (BPM). as well as an opportunity to create a method directive. • Initiate application tasks based on conditions defined in the Method Directive. You then learn how to apply a Data Directive to a specific table and trigger BPM execution using a database event. that require little or no programming knowledge. Using the BPM functionality. This allows individual companies to tailor the business flow to their specific requirements. When you activate this log. and Post-Processing directives. • Perform actions in a method directive based on BPM Hold Types. The course concludes with an overview of techniques you can use to manage BPM functionality of your Epicor ERP application.0. you will be able to: • Set up a Trace Log to review business logic calls triggered by your application activity. Upon successful completion of this course. It begins with discussion on how to set up a Tracing Log that captures all the calls the user interface makes to the server. The course format includes presentation. you can modify the flow of business processes through the Epicor ERP application. • Use many of the pre-defined condition statements to define criteria that must be met before a method directive action can be performed.700 5 . • Become familiar with the available workflow elements and corresponding User Texts. • Apply a standard Data Directive on a table to execute an action after the data is saved to the database. Changed. The Method Directives section includes an overview of method directive workflow elements . any business logic (BL) calls sent to the server are automatically recorded within this log. • Work with the dependent post process capability. Updated. Base. The course includes examples that can be created with BPM. • Comprehend the differences of the Pre-. The Hold Type section of the course explains how to assign a status to a record and take appropriate action when being processed. demonstrations. Epicor ERP | 10. general navigation principles and techniques available in two user interface modes .This course explores the customization tools embedded within the Epicor application.This course introduces navigational aspects of the Epicor application's user interface. For more information on the modules available. • System Administrator • IT/Technical Staff Prerequisites To complete the workshops in this course.Classic Menu and Modern Shell Menu. Your Epicor training environment. contact your Epicor Customer Account Manager at
[email protected]. • Advanced Personalization .0. It is also important you understand the prerequisite knowledge contained in other valuable courses. in which the Epicor demonstration database is found. the necessary modules must be licensed and operating in your training environment. 1. The following steps must be taken to successfully complete the workshops in this course. production environment.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. • Navigation Course .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. 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. users can customize a form and then make it available to multiple users in a company. Unlike personalization. Designed for a hands-on environment. Do not complete the course workshops in your live.700 . enables you to experience Epicor functionality in action but does not affect data in your live. Environment Setup The environment setup steps and potential workshop constraints must be reviewed in order to successfully complete the workshops in this course. • Embedded Customization . Audience Specific audiences will benefit from this course. 6 Epicor ERP | 10. Workshops focus on each of these modes and guide you through each navigational principle introduced. production environment. Workshop Constraints For the purpose of this course and the training environment. To complete the Workshop . work with your system administrator and see Install Epicor SQL Server Reporting Service (SSRS) topics found within the Epicor 10 Installation Guide. SQL Server Reporting Service (SSRS) must be installed and operational in your environment in order to run SSRS reports. For example. If this is not performed. he or she must also download the corresponding Epicor demonstration database from EPICweb > Support > Epicor > Downloads and install it. From the Main menu. if a course workshop requires you to ship a sales order that came standard in the Epicor demonstration database. • Your system administrator restored (refreshed) the Epicor demonstration database prior to starting this course. the database is located on a server and users access the same data. 5.Use Auto Print Action. sales orders. If you are logged into your training environment as a different user. Log in to the training environment using the credentials manager/manager. Epicor's education team updates the Epicor demonstration database for each service pack and patch. 2. Disabling or removing the BPMs ensure the appropriate default training environment is available. customers. From the Main menu. it is essential that all created BPMs are disabled or deleted. from the Options menu. If necessary. select the Main site. but Epicor cannot prevent users from manipulating the data in your installation of the Epicor demonstration database. production environment) and is not periodically refreshed. The Epicor demonstration database comes standard with parts. it is important to follow all of the steps provided in each workshop. If your system administrator upgrades your Epicor application to a new service pack or patch. already defined. While this course provides education on creating and using various BPMs. Contact Support or Systems Consulting for billable assistance. • The Epicor demonstration database is at the same service pack and patch as the Epicor application.0. then you will not be able to ship the sales order. If the Epicor demonstration database is shared with multiple users (that is. Important Note that restoring (refreshing) the demonstration database does not automatically remove existing BPM directives. and so on. All BPM directives must be manually removed or disabled.Business Process Management Course Before You Begin Note It is recommended that multiple Epicor demonstration databases are installed. but a different user already completed this workshop and the Epicor demonstration database was not restored (refreshed). select the company Epicor Education (EPIC06). unexpected results can occur. much like your live. Epicor's education team has written the course workshops to minimize situations like this from occurring. select Change User. unexpected results can occur when completing the course workshops. 3. 4.700 7 . Epicor ERP | 10. Net) BPM directives work by intercepting calls to the application server logic. you can change business logic without modifying the source code.0. manipulate. and so on. They are embedded into server logic and get invoked by method calls. 8 Epicor ERP | 10.Net Assemblies (C# or VB . You can validate. Because BPM methods are server side customizations. For this reason. tasks. This means the behavior is adopted whether the transaction originated from the Epicor ERP Client or from web services.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. 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 . Basic Use Cases for BPM: • Validate data (includes making mandatory) • Raise exceptions (conditional) • Modify data (GetNew or Update) • Send email. This includes modifying the behavior of individual business objects and adding human workflow elements such as email. or create workflows based on the data passed through the application.700 . 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. BPM is the best place to make system modifications. rather than adding functionality into the Client customization. 700 9 . consultants. • Data is returned to the program according to the actions run by the directives and Epicor program. Note If at least one non-empty Base Processing directive is in effect. • The program calls a business object method to carry out the action.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. and power users who need to directly modify the method for major business modifications. the Epicor program code performs its function. • After the Epicor program code or Base directive is run. you can harm the normal function of the application. Epicor ERP | 10.0. In-Transaction directives are executed. • Before the business object executes its program code. Pre-Processing directives are executed. or Base directives are executed. Work with an Epicor consultant before you create a base processing method directive. • When data transaction is about to be applied to the database. the Base Processing directive will run instead of the Epicor program code. Important Epicor strongly recommends you do not create Base Processing directives. • Standard data directives are executed with accumulated transaction database changes passed to them. Post-Processing directives are executed. • After the Pre-Processing directive. This option is mainly included for partners. If you change a base method incorrectly. and delete master records of specific business objects Epicor ERP | 10. update. and delete records.0. most common method to use in BPM Update Ext Use to add. and delete records for use with updatable BAQs Master Update Use to add. order + lines + rel) Get by ID Use to retrieve records for specific ID. web client. smart client. returns all data Get List Use in searches.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. Group delete (for example. update. 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. 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). update.700 . 0. To create a cleaner log that doesn’t contain idle times from the System Monitor. • When you run the application using the Classic Style. Right-click this icon and select Exit. click Settings and within the General Operations category. 4. Workshop . on the Home Page. use a trace to learn which values are in the part dataset during a part update. on the Main menu. Epicor ERP | 10. from the Options menu. locate the Epicor's System Monitor icon on the desktop task bar. 5.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. Track Changes Only Only changes to the dataset are recorded in the tracing log. Menu Path: Material Management > Inventory Management > Setup > Part 1. click Tracing Options. Key concepts are: • Use the interface to simulate actions used in a method directive. 3. only the header information is stored in the log. If this option is not selected. Minimize Part Maintenance. 2.700 11 . Review the available options: Tracing Option Description Write Full DataSet Records all call data in the tracing log. 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.Use the Trace Log In this workshop. • Read the values used in an update transaction. • When you run the application using the Modern Shell. 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. select Tracing Options. Launch Tracing Options. Select the Enable Trace Logging check box. Proxy. 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. Maximize Part Maintenance. Leave the Tracing Options Form open. 2. This file indicates a change was made to the Part field. Include Server Trace Includes the information from the server processing in the client trace log. Example The following trace log snippet displays the Update method called on new record creation. 7. You can create BPM directives that monitor the data entered or changed through each directive. Click Save. select the Write Full Dataset check box. Add a Part 1. 6. method calls are sent to the Call Context Dataset.Void</returnType> <localTime>29/11/2013 13:30:29:1069295 PM</localTime> <executionTime>481</executionTime> <parameters> <parameter name="ds" type="PartDataSet"> <PartDataSet xmlns="http://www. In the Description field. click the View button.0.PartImpl</businessObject> <methodName>Update</methodName> <returnType>System. 4.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 Trace Log helps you identify which method you need to monitor. Notice the various methods that run when you add a new part record to the database. View the method calls and dataset information. View the Trace 1. <tracePacket> <businessObject>Erp.700 . In the Add New Confirmation window. enter XXX Test Part 1 (where XXX are your initials). For this workshop.epicor. 5. Write Response Data When a method call has a <returnType> other than void.com/Ice/300/BO/Part/Part"> <Part> 12 Epicor ERP | 10. Exit Part Maintenance.BO. In the Tracing Options Form. 3. enter XXX-TestPart1 (where XXX are your initials) and press Tab. selecting this check box causes the dataset returned from the server to display on the tracing log. 8. Click Apply. 2. 6. In the Part field. click Yes. 700 13 . 3. Menu Path: System Setup > System Maintenance > System Monitor Important This program is not available in the Epicor Web Access. Disable Tracing Log 1.xml file. enter XXX. Review the method calls and dataset information. Click Save. Minimize all programs so the desktop is visible. Click the Apply button. Close the . select your Desktop. 7.xml.PartTrace. 2.xml (where XXX are your initials). next to the XML File field. 6. Maximize the Tracing Options Form. Click OK.0. In the File Name field. Restart System Monitor Navigate to System Monitor. 3. Close the TraceData file. Double-click XXX. 2. 5. The Write Full DataSet check box automatically is disabled. In the Tracing Options Form. Clear the Enable Trace Logging check box. Click the Create XML button. 4.Business Process Management Course The Trace Log <Company>EPIC06</Company> <PartNum>XXX-TestPart1</PartNum> <SearchWord>XXX Test</SearchWord> <PartDescription>XXX Test Part 1</PartDescription> <ClassID></ClassID> <IUM>EA</IUM> <PUM>EA</PUM> <TypeCode>P</TypeCode> 3. 8. In the Save As window. click Browse.PartTrace. Create an XML File 1. Epicor ERP | 10. 4. The Tracing Options Form window closes. 9. 0.The Trace Log Business Process Management Course 1. verify the System Monitor icon displays. Minimize the System Monitor window.700 . 14 Epicor ERP | 10. 2. In the desktop task bar (in the lower right corner of the screen). perform one or more actions based on this data (for example.Make a Field Mandatory Many customers want to ensure when they create new parts. part. Method directives are invoked entirely on the Epicor ERP Server and not on the client. 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.0. the naming depends on whether the part type is purchased or manufactured. Example You can create a method directive for the Customer. For example. After these actions finish. these directives run at three different processing points: • Pre-Processing – These directives execute before the base method runs. and so on). launch other business processes. A method directive defines a workflow. or sales order. GetList or GetNew. Business Process Management (BPM) tools can manipulate how these methods perform before. A business object represents some type of data managed by the application. Menu Path: System Management > Business Process Management > Method Directives Maintenance Important This program is not available in the Epicor Web Access. • Updatable BAQ Directives .Update method to send an email to a Sales Manager when a customer's credit limit changes. such as a customer. • Use conditional actions.applied to business activity query methods that can update the database. When a business object method is called.Business Process Management Course Method Directives Method Directives Use the Method Directives program to create and update BPM method directives. during. • Base Processing – These directives run in place of the base method. Objects contain methods that perform a specific task. Workshop . they have a part class or product group named. all enabled directives associated with the method activate. 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. While the method is active. or after database transactions.applied to database table transactions. In this example. All data transactions in the application are controlled by business objects such as Update. • Post-Processing – These directives run after the base method finishes its process. prevent data entry. The BPM workflow you create for the directive does it's job by executing workflow items in the order you specify.700 15 . 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. if the directives' conditions are met. the business object then runs the base method. Create method directives that first evaluate the data being processed and then. the Customer.Update method validates and posts edited customer records to the database. The base method does not execute. Tip Two other directive types are available: • Data Directives . Epicor ERP | 10. composed of conditions and actions associated with a business object method. 0. In the Search by Business Object section. the Business Objects belonging to the application part of the system become available for selection. In the Search Results grid. The Business Object returns on the form. enter XXX Set Part Class or Product Group Mandatory (where XXX are your initials). In the Where Method Name Starts At field. 7. verify Product is selected.Method Directives Business Process Management Course Create a new method directive based on the Part Business Object Update method. In the Directive Name field. Navigate to Method Directives. Click Search. 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. 3. 5. In the Method Description field. select New Pre-Processing. Menu Path: System Management > Business Process Management > Method Directives Maintenance Important This program is not available in the Epicor Web Access. 9. Click Design to launch the BPM Workflow Designer. 2. 8. Click Save. You can select an existing value or enter a value to create a new group. From the New menu. 2. enter XXX (where XXX are your initials). This field is optional but can help organize directives for searches and is used when exporting directives. 6. In the Group field. select the Update method.700 . On the Detail sheet. enter XXX Mandatory Part Class and Group (where XXX are your initials). you will use the items to build a BPM workflow. By selecting this option. 4. 5. Click OK. 4. enter U. Add a Pre-Processing Directive 1. select Part. Click Save. 3. In the following tasks. The Method Search window displays. In the Business Object field. click the Method Code button. The available workflow items display on the left portion of the screen. This field signifies the group to which the current directive belongs. Add a Method Code 1. 16 Epicor ERP | 10. 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 click OK. in the Operator field. At the end of the Condition field. In the Condition field. 11. from the list. In the Fields search box. select Or. 23. You now extend the condition by adding another line. enter "M" for (Manufactured. 12.700 . verify ttPart displays. verify ttPart displays. Click the first specified. In the Table field. In the Conditions window. enter type. At the end of the Condition field. In the Editor text box. Click OK.Method Directives Business Process Management Course 5. Click the first specified. 4. Extend Second Condition 1. In the Condition pane. enter type. In the Operator field. In the Condition field. 8. 6. In the Fields search box. 14. select the specified field of the changed row is equal to the specified expression. select the TypeCode check box. In the Condition field. verify And displays. 13. click the Add Line icon. click specified. click specified. invoke the list and select The specified field of the changed row is equal to the specified expression. including the quotations). In the third condition line. select the TypeCode check box. 2. 17. 24. 9. 10. 15. including the quotations). From the list of available fields. In the Specify an expression window. Click the first specified. In the Editor text box. 3. 19. 20. click the Add Line icon. click OK. 7. 18. 21. enter "K" for (Sales Kit.0. invoke the list and select The specified field of the changed row is equal to the specified expression. In the Specify an expression window. 16. In the Table field. 20 Epicor ERP | 10. From the list of available fields. 22. Click OK. 7. click OK. 12. when in a manufactured or kit part.TypeCode field of the changed row is equal to the "M" expression Or The ttPart. 8. Click Validate and verify BPM reports no errors. Select the True exit point. 3.TypeCode field of the changed row is equal to the "K" expression And The ttPart. 8. 4. 11. At the end of the Condition field. Click the Raise Exception 1 element. 1. In the Table field. In the text box. verify ttPart displays. 7. the Part Group field is left blank. In the Editor text box. In the workflow items tollbar.0. 10. In the Name field. 6.700 21 . click specified. click OK.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. 2. enter prod.BPM.Business Process Management Course Method Directives 5. Select designed to launch the Design Exception Template window. 9. In the Fields search box. enter "" (recall quotation marks represent a blank). The Condition pane should now read: The Condition pane should now read: Operator Prefix Condition None The ttPart. enter Group is mandatory for manufactured or kit parts . 5. which means. Select the ProdCode field name check box and click OK. enter Mandatory Group. click the Raise Exception icon and drag it to the workflow pane of the Designer. Click the Condition 1 element. drag the line and point it to any of the Raise Exception 1 element entry points. In the Specify an Expression window. 10. then execute the action. The Actions pane should now read: Epicor ERP | 10. In the Actions pane. In the Design Exception Template window. 9. 6. Add Second Action This action will display when the second condition evaluates to True. verify raise exception based on the designed template displays. below the second Condition item. click Clear. 4.0. 9. click Yes. On the Pre-Processing > Detail sheet. enter XXX-3443 (where XXX are your initials) and press Tab. Click Save. 13. Test the BPM for the Part Group 1. The part saves with no errors. In the Part field. 2. In the Description field. Click Save. The first BPM condition is met and the exception message is fired. 4. Click Save. select Hardware. In the Add New Confirmation window. 5. enter XXX-4334 (where XXX are your initials) and press Tab. On the Standard toolbar.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. 15. In the Clear Confirmation window. In the Class field. 7. In the Add New Confirmation dialog box. click Yes. Click Save and Exit. select the Enabled check box. Leave the Type field as Purchased. Remain in Part Maintenance. 6. 5. 3. In the Part field. click OK. Test the BPM for the Part Class Navigate to Part Maintenance. 8. enter XXX Purchase Test (where XXX are your initials). 14. 3. Minimize Method Directives. enter XXX Mfg Test (where XXX are your initials) 22 Epicor ERP | 10. 2. Click Validate and verify the BPM reports no errors. To the error message from the BPM that says you must specify a Part Class.700 . 12. click Yes. In the Description field. Menu Path: Material Management > Inventory Management > Setup > Part 1. 11. Disable Directives 1. 4. To the error message from the BPM that says you must specify a Group field. 5. To the error message. 2. Clear the Enabled check box.Set Log Created By and Date In this workshop. Click Save. Note the same error message from the BPM. create two user-defined fields available for use on the ABCCode table.0. In the Group field. The method directive is now disabled. 7. 8. select Configured Parts. The part saves with no errors.700 23 . Workshop . Navigate to Extended User Defined Table Maintenance. select Manufactured and click Save. Menu Path: System Setup > System Maintenance > Extended UD Table Maintenance Epicor ERP | 10. 3. Exit Method Directives. In the Type field. 9. click OK. 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. In the following tasks. 10. Exit Part Maintenance. select the verify the Pre-Processing XXX Mandatory part and group directive displays. In the tree view. enable an audit trail of who created a new record for a master table. use ABC Code Maintenance but keep in mind you can apply the concepts to any master table.Business Process Management Course Method Directives 6. Click Save. The second BPM condition is now met. select Sales Kit and click Save. you will customize the ABCCode form by placing these fields on the form and have BPM write data in them. In the Type field. In this example. Maximize the Method Directives window. click OK. 12. verify String displays. 9. Use the parameters from the below table. In the Description. Note this process does not make the table available for display. enter Current User ID. Notice the _c suffix is automatically added to the column name. 3. you synchronize it. select the Sync Current Table to DB option. 12. 1.BPM. In the Description field. You are now ready to update the database to include this new table. To the confirmation message. 8. Click New > New Column. 2. 24 Epicor ERP | 10. 4. 5. enter Added User and Date fields . Verify the Table Name field displays ABCCode_UD. To synchronize the active table. Click on the Actions menu. 1. enter User.700 . Repeat steps 5 . Search for and select ABCCode. 4. 11. This formats the table so it can be linked to the database. In the Data type field. In the Label field. Click Save. 10. click OK. In the Format field. 7. 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. In the Column Name field. The Column > Detail sheet displays. The Table Search window displays. enter XXXUser (where XXX are your initials).0. 2. 6.11 to add another field.Method Directives Business Process Management Course Important This program is not available in the Epicor Web Access. Exit User-Defined Table Maintenance. Click New. you need to update the data model to finish incorporating this user-defined table in your database. enter x(20). 3. The data model generates. 6. as the data model merges the two tables into one logical entity. You or your system administrator runs this task on the server that contains your database. Note Restarting IIS is a mandatory task after the successful data model regeneration. 2. The Generate Data Model window displays. To complete functionality. end the task and close the Epicor Administration Console. After IIS stops and restarts. On your server. The Apps screen displays. close the Command Prompt window and return to the Epicor Administration Console. After IIS stops and restarts. Important If you receive an error that the . To do so. the data model for the Epicor database needs to be regenerated. 5.Business Process Management Course Method Directives Regenerate Data Model To finish adding the user-defined table. Important User Defined columns appear to be part of the base table from the programming/customization point of view.0. Return to the Apps screen and launch the Command Prompt (under the Windows System section). adding the extended user-defined table to the database. Select the database icon. In the Command Prompt window. 4. Click on the Apps button. From the Actions pane.dll file for the data model generation is in use by another process. 10. enter IISRESET and press <Enter>. click the Regenerate Data Model button. Locate the Epicor Software section on this screen and click the Epicor Administration Console icon. Epicor ERP | 10. the latest data model must be pulled from the DB and copied to the local app server by restarting IIS. Add a Method Directive Navigate to Method Directives. 7. Epicor users can view and enter data in the extended user-defined table. For example: C:\inetpub\wwwroot\EpicorERP10 8. launch the Command Prompt window and enter IISRESET and press <Enter>. 9. close the Command Prompt window. Menu Path: System Management > Business Process Management > Method Directives Maintenance Important This program is not available in the Epicor Web Access. 1. You should be able to regenerate the data model. press <Windows> + F to display the Search bar.700 25 . Click Generate. Verify the Deployment folder field displays the root path location for the server. You regenerate the data model through the Epicor Administration Console. Now that the data model is regenerated. The properties for the database displays in the center pane. 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. 3. Click your mouse. select any of the Start connector symbols. 7. 2. view the Action statement: Synchronously execute custom code . Add a Pre-Processing Directive 1. 3. Navigate to the Pre-Processing sheet. 3. From the New menu. In the Method Description field. In the Business Object field. 4. verify ABCCode displays. drag the line and point it to any of the Execute Custom Code element entry points. 4. Click the Execute Custom Code workflow item. Click Design to launch the BPM Workflow Designer.. 6. Click the Method Code button. In the workflow items tollbar. 5. enter XXX Log Created By and Date (where XXX are your initials). record nothing 26 Epicor ERP | 10. This causes the custom C# code to run automatically with the method. 4. click the Execute Custom Code icon and drag it to the workflow pane of the Designer. The connection between the two elements is now established. In the Group field.ABCCode. Select Update and click OK. In the Actions pane found at the lower portion of the screen. The Method Code displays Erp..700 . Click Save. enter XXX Log Created By and Date (where XXX are your initials). In the Where Method Name Starts At field. When you do not define a condition. Click Save. There will not be any conditions for this method directive. the ABCCode. Run this directive whenever the method is called. the directive just executes each time its method is called – in this case.Update method. Add an Action Note You do not need to create a condition statement for this directive. Click Search. In the Search by Business Object section. 8. 3.Method Directives Business Process Management Course 1. In the Directive Name field.Update. 1. 2. 5. select New Pre-Processing. 5. below the Start item. 2.0. enter U. verify Product is selected. enter XXX (where XXX are your initials). UserID. Enter the code below: //* Set User and Date *// foreach (var ttAbcCode_iterator in (from ttABCCode_Row in ttABCCode where string.for example.for example.ABUser_c = Session. click OK. Click the code link. ttABCCode_xRow. 8. 9.XXXDate_c = DateTime. ttABCCode_xRow. In the Custom Code Action window. you may need to adjust it to make sure logical statements are kept together on their respective line.UserID. 14. ttABCCode_xRow["ABUser_c"] = Session. When you refer to a user-defined column through the c# code. "A". Verify the Code sheet is selected. 10. the call is queued and executed according to the schedule defined in the BPM Async Process program. Tip When you copy and paste the above code.UserID. (preferred way) • refer to it as row. verify the Action field displays the following: synchronously execute custom /* Set User and Date */. 13. 15. 12.700 27 .Now.RowMod. Epicor ERP | 10. true) == 0 select ttABCCode_Row)) { var ttABCCode_xRow = ttAbcCode_iterator. Click Save and Exit to return to the Method Directives window. 7.Business Process Management Course Method Directives Note Synchronously means the call is made immediately when the action executes. accept the Synchronous execution. When Asynchronous execution is selected. record nothing 11. Click the Validate button and verify BPM reports no errors.["column_c"] . In this example.. Select the Enabled check box to activate the directive.column_c .0. The Custom Code Action window displays.Compare(ttABCCode_Row. } Important Within the code replace XXX with your initials to create correct references of your newly created user-defined columns. Click Save.. Minimize Method Directives.XXXUser_c = Session. ttABCCode_xRow. In the Actions pane. 6. you can either: • refer to it as row. 10. In the Enabled field. 15. on the Main menu. In the Epibinding field. From the Tools menu. 5. 28 Epicor ERP | 10. 7. 3. select EpiTextBox. 8. In the Select Layer Type window. select the Base Only check box. In the Enabled field. Navigate to the Customization Tools Dialog > Properties sheet. from the Options menu. click EpiDateTimeEditor. 4. 9. Create Another Customized Text Field 1. 5. click Settings and within the General Operations category. select Customization and click OK. Add a second text box inside the Groupbox under the field you just created. from the Tools menu. • When you run the application using the Classic Style. select AbcCode. select False. on the Home Page. select AbcCode. 12. Navigate to the Customization Tools Dialog > Properties sheet. In the Epibinding field. select Customization.Method Directives Business Process Management Course Create a Customized Text Field Launch the Developer Mode. 2. Click inside the Cycle Count group box. 6. select ToolBox. 4. In the Toolbox. Menu Path: Material Management > Inventory Management > Setup > ABC Code 1. Click the new text box. select Developer Mode. • When you run the application using the Modern Shell. Click the Cycle Count group box and make it larger so you can place two extra fields under the Count Frequency field. select False.XXXUser (where XXX are your initials). In the Select Customization window. 14. click Developer Mode. 11. 3. 13.700 . Maximize the ABC Code Maintenance window. Navigate to ABC Code Maintenance. From the Toolbox. Place the new text box directly below the Count Frequency text box.0. select the Variance Tolerances group box and move it down.XXXDate (where XXX are your initials). In the ABC Code Maintenance window. In the Customization Tools Dialog window. Click OK. 2. In the Toolbox. enter Created By. Draw a label next to the second text box created. try another one. click the EpiLabel button again. click the EpiLabel button. Close the Toolbox. Navigate to the Customization Tools Dialog > Properties sheet. Exit ABC Code Maintenance. Click Save. In the Customization Tools Dialog window. 4. In the Text field. Close the Customization Tools Dialog window.700 29 . 4. 10. click Save. enter a letter of your choice to create a new record. 6. 8. 2. 11. In the ABC Code field. 5. Draw a label next to the first text box you created. 2. 5. If the record is already present. In the Toolbox. Click Save. 3. 9. Navigate to the Customization Tools Dialog > Properties sheet. enter Added two text box fields and click OK. 7. Epicor ERP | 10. In the Text field. 3.Business Process Management Course Method Directives Add Labels to Text Fields 1. In the Customization Comment text box. enter Date. Save and Test Customizations 1. In the Select Customization window. In the Count Frequency field. In the Name and Description fields. 9. 8. 6. enter XXXabc (where XXX are your initials). Verify the BPM populates the information in the Created By and Date fields. Re-open ABC Code Maintenance. select the XXXabc customization and click OK. The Customization Save Dialog window displays. 7. enter 60 and 12. Example Your results should look similar to the following. Click New.0. Click Save. 4. 30 Epicor ERP | 10. In the Pre-Processing > Detail sheet. clear the Enabled check box.700 . Exit ABC Code Maintenance. In the tree view.0. Disable the Developer Mode. Maximize the Method Directives window. Exit Method Directives. 14. 3. select the Pre-Processing directive XXX Log Created by and Date.Method Directives Business Process Management Course 13. 2. The method directive is now disabled. Disable Directive 1. 5. Example Epicor ERP | 10. To access the BPM Workflow Designer.700 31 . 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.0.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. DB tables and fields. 32 Epicor ERP | 10. This control is particularly useful for directives imported from previous Epicor ERP releases. its links will be automatically deleted with it. The Raise Exception action has this option selected by default. When you hover your cursor over each element. • To use a BPM item in the workflow. • 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. users. • For the Condition block. BAQ constants. you can select the Terminate on Error option to halt the workflow execution when it encounters an error. use the Validate function to control if all element parameters are set up in the way BPM expects. • Once you build your BPM workflow. click your mouse.700 . • To set up the behaviour of a workflow item representing Action. select any of the connector symbols. the small black triangles surrounding the item represent the available connectors. The exception is the Condition block that allows usage of two outbound connectors True & False. • Connect the workflow elements in the logical order they should be executed. build criteria using pre-built condition statements.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. drag the line and point it to another item's connector. • The following workflow elements may utilize multiple inbound connectors but only one outbound connector. they all represent Actions the workflow will take. Workflow elements are grouped by categories and except the Flow Chart category. 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. drag it and drop it in the BPM Designer surface. To connect elements. etc) correspond to selected BO method signature.0. • When you delete any workflow item (block). click on it and supply required parameters in the pane below the designer surface. This function also checks that the directive references existing objects (assemblies. • For each workflow item representing Actions. • The initial point of the BPM workflow is the Start element. Attach and Remove Hold Actions and Hold Condition. Notify Me. Row With Status Condition.cases when Business Object's primary key cannot be obtained from parameters . • Presence of Simple parameters within the selected method . • Workflow items not available in uBAQ Method Directives . • Presence of the Change Log table .Change Log Action.Business Process Management Course BPM Workflow Designer Note The Validate function does not check syntax in expressions or custom code. Invoke External Method. Epicor ERP | 10. Word In Argument Condition and Set Argument Action.0. Call Service Connect Workflow.Method Directives. • Valid Business Object Instance . • Once you finish.enables Auto Print. Field Condition. Notify Me. Data Directives and Updatable BAQ method Directives.Holds and Tags and Method Query Field Changed Condition. Execute Custom Code. • Presence of Table parameters within the selected method . Data Tag Condition.Argument Condition. 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 . • BPM Advanced User rights .700 33 . Set By Query and Custom Code Condition. Attach/Remove Data Tag Actions. Change Log. Set By Query Action and Set Field Action.Field Changed Condition. but use a Post-Processing directive to perform the actions. A Hold is a flag you place on a record. It can be attached before.Create and Use a Hold Type BPM Holds can prohibit data transaction processing for specified reasons. You define the actions by creating directives which define how the application handles a record that has a hold placed on it. during. 2. Menu Path: System Management > Business Process Management > Hold Type Maintenance Important This program is not available in the Epicor Web Access. You do this by launching the BPM Holds program from the field’s context menu. In the Add New Confirmation. • Programmatically – A hold can also be attached to a record using a directive action. 4. Use a Pre-Processing directive to test for conditions to place or remove holds.flags you can place on records. or after the business process is run. maintain. Workshop . Typically you use holds to interrupt the processing of the business object. In this example. it indicates the record should not be processed until it is reviewed and approved. by raising an exception). Update. a Customer Review BPM hold is attached to the record. or Delete) during the Post Update Process.0. 34 Epicor ERP | 10. 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. You use Method Directive Maintenance or Data Directive Maintenance to create these directives. If the hold is present. You then prevent creation or update of sales orders for customers on a Customer Review hold. and delete hold types . 1. This adds the hold to the record. 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. a simple condition checks if the State field has been entered for a Customer record. 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. In the Hold Type field. enter XXX Customer Review (where XXX are your initials) and press Tab. Click the Business object button. In this example. click Yes. the method directive can perform several actions. place or remove the hold during the Post Update process for a customer. Menu Path: System Management > Business Process Management > Hold Type Maintenance Important This program is not available in the Epicor Web Access. In the Starting At field.Hold Type Business Process Management Course Hold Type Use Hold Type Maintenance to create. This type of method directive is known as an inhibitor. A hold by itself does not perform any actions.700 . Create the Hold Type Navigate to Hold Type Maintenance. enter Cus and click Search. If not. 3. This hold can then cause custom actions you define for the directive to run. verify Product is selected. select any of the Start connector symbols. The Business Object returns on the form. 5. 7. 6. 2. 4. the Business Objects belonging to the application part of the system become available for selection. In the Business Object field.0. drag the line and point it to any of the Condition element entry points.700 35 . In the Search by Business Object section. 4. From the New menu. The connection between the two elements is now established. enter XXX Customer Review (where XXX are your initials). select Customer. In the Directive Name field. Click Save. Select Customer and click OK. On the Detail sheet. Exit Hold Type Maintenance. In the Description field. 2. click the Method Code button. 8. Click Search. Menu Path: System Management > Business Process Management > Method Directives Maintenance Important This program is not available in the Epicor Web Access. In the Where Method Name Starts At field. Add a Pre-Processing Directive 1. enter XXX (where XXX are your initials). 3. enter XXX Customer Review (where XXX are your initials). Epicor ERP | 10. 6. select New Pre-Processing. Click Save. 1. enter XXX Condition Test to Set Hold (where XXX are your initials). In the Group field. 8. Select the Update method and click OK.Business Process Management Course Hold Type 5. Click your mouse. 3. below the Start item. 5. In the workflow items tollbar. Recall by selecting this option. 7. enter U. Click Design to launch the BPM Workflow Designer. Add a Method Code Navigate to Method Directives. 6. In the Method Description field. click the Condition icon and drag it to the workflow pane of the Designer. The Method Search window displays. 16. Click Validate and verify the BPM reports no errors. In the Specify an expression window. click OK. 4. enter "". click the Enable Post Directive icon and drag it to the workflow pane of the Designer. 12. enter state. verify ttCustomer displays. In the Editor text box. Add a Pre-Processing Directive 1. In the Directive Name field. 2. below the Condition item. From the list of available fields. From the New menu. click specified. 2. click the Add Line icon. In the Group field. 10. 6. In the workflow items tollbar. 5. 15. Click Save. select the State check box. Select the Enabled check box. This indicates that directive should execute when the Customer. In the Condition field. In the Fields search box.700 . 11.Update method initiates and the State field is blank. 8. enter XXX Condition Test to Remove Hold (where XXX are your initials). 17. below the Start item. Click OK. Click Design to launch the BPM Workflow Designer. At the end of the Condition field. click the Condition icon and drag it to the workflow pane of the Designer. invoke the list and select The specified field of the changed row is equal to the specified expression. 14. 13. In the workflow. 5. enter XXX (where XXX are your initials).0. Click the first specified. Add an Action 1. In the Condition pane at the bottom. 3. 4. Click Save and Exit to return to Method Directives. select New Pre-Processing. click the Condition item. In the workflow items tollbar. In the Table field. 36 Epicor ERP | 10.Hold Type Business Process Management Course 7. 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. 9. drag the line and point it to any of the Condition element entry points. 3. 17. Click Save. Epicor ERP | 10. 4. In the Condition pane at the bottom. 5. click the Condition item. Add an Action 1. In the Editor text box. 2. select is not equal to.Update method initiates and the Customer State field is NOT blank. Add a Post-Processing Directive 1. This indicates that directive should execute when the Customer. enter "". below the Condition item.0. 6. Click your mouse. Click OK.700 37 . 10. 9. In the workflow. 13. Select the Enabled check box. invoke the list and select The specified field of the changed row is equal to the specified expression. click OK. 19. 11. In the Fields search box. enter state. click the Add Line icon. select any of the Start connector symbols. In the Table field. At the end of the Condition field. 16. select New Post-Processing. click the Enable Post Directive icon and drag it to the workflow pane of the Designer. In the Specify an expression window. From the New menu. In the Condition field. From the list. enter XXX Take Customer Off Hold (where XXX are your initials).Business Process Management Course Hold Type 6. Click the first specified. click the drop-down next to is equal to. 12. 15. In the Condition field. Click Save and Exit to return to Method Directives. 18. 14. 7. click specified. select the State check box. From the list of available fields. 2. verify ttCustomer displays. 8. Click the Condition's True exit outbound connector (found on the left) and connect it to any of the Enable Post Directive entry points. Click Validate and verify the BPM reports no errors. In the Directive Name field. In the workflow items tollbar. Hold Type Business Process Management Course 3. you specify which pre-processing directive enables the post-processing directive you are currently configuring. 38 Epicor ERP | 10. 5. Add an Action 1.0. 5. Click Save. click the Condition item. 6. In the workflow items tollbar. 8. 11. Verify the Action displays Remove holds of the specified type. select XXX Condition Test to Remove Hold (where XXX are your initials) and click OK. 6. verify Pre (Pre-Processing directive) is selected. 2. Click the Remove Holds item. click specified. In the workflow. Click Design to launch the BPM Workflow Designer. below the Start item. Click the Condition's True exit outbound connector (found on the left) and connect it to any of the Remove Holds entry points. 3. below the Condition item. Click Validate and verify the BPM reports no errors. click specified. select any of the Start connector symbols. select XXX Customer Review (where XXX are your initials) and click OK. Click your mouse. 12. click the Condition icon and drag it to the workflow pane of the Designer. This way. enter XXX (where XXX are your initials).700 . drag the line and point it to any of the Condition element entry points. 8. invoke the list and select this directive has been enabled from the specified directive. Recall you created this hold type at the beginning of this workshop. Select the Enabled check box. In the Stage field. click the Remove Holds icon and drag it to the workflow pane of the Designer. 7. 10. click the Add Line icon. In the workflow items tollbar. Click Save and Exit to return to Method Directives. In the Group field. 4. 7. 10. In the Condition field. In the Condition text. In the Hold Type field. In the Condition pane at the bottom. 9. In the Directive field. In the Action text. 4. 9. Click your mouse. drag the line and point it to any of the Condition element entry points. In the Comment field. 2. In the Directive Name field. select XXX Condition Test to Set Hold (where XXX are your initials) and click OK. click specified. select XXX Customer Review (where XXX are your initials). click the Condition icon and drag it to the workflow pane of the Designer. 5. In the Directive field. 10. click the Attach Hold icon and drag it to the workflow pane of the Designer. invoke the list and select this directive has been enabled from the specified directive. 7. Click the Attach Hold item. select any of the Start connector symbols. In the workflow items tollbar. 9. 9. click the Condition item. Add an Action 1. Click Validate and verify the BPM reports no errors. In the Condition field. below the Condition item. In the Stage field.700 39 .Update and click OK. 6. From the New menu. Click Save and Exit to return to Method Directives. In the workflow. In the Hold Type field. 4. In the Group field. enter BPM Hold . enter XXX Place Customer on Hold (where XXX are your initials). 6. verify Pre (Pre-Processing directive) is selected. Verify the Action displays Attach hold of the specified type. In the Action text. click specified. 12. 7. 4. In the Condition pane at the bottom. click the Add Line icon.Business Process Management Course Hold Type Add a Post-Processing Directive Add a Post-Processing Directive to set the hold. 1. 3. In the Condition text. 5. In the workflow items tollbar. 3. Epicor ERP | 10. Click Design to launch the BPM Workflow Designer. below the Start item. 8. select New Post-Processing. 11. 2. Click the Condition's True exit outbound connector (found on the left) and connect it to any of the Attach Hold entry points. This indicates the directive should execute after the Condition Test to Set Hold directive executes. enter XXX (where XXX are your initials). 8.Customer.0. Click Search. 2. 9. Click your mouse. Expand the following nodes: Erp. In the Condition field. In the Business Object field. Add a Method Code 1. 11. 7. 8. Select the first Erp. 4. 5. Click Save. 12. 6. click the Add Line icon. Click Save. select any of the Start connector symbols. click the Condition item.Customer object. In the workflow items tollbar. below the Start item.SalesOrder > Objects. drag the line and point it to any of the Condition element entry points. 4. 7. From the New menu. verify Product is selected. 40 Epicor ERP | 10.Sales Order" > via OrderHed. 3. In the Group field. select SalesOrder.ChangeCustomer. linked with the object "Erp. invoke the list and select the hold of the specified type is attached to the business object. 10.Hold Type Business Process Management Course 10.SalesOrder. 5. Click the Method Code button. The method defaults to Erp. Add a Pre-Processing Directive 1. In the Directive Name field. 3. select New Pre-Processing. click the Condition icon and drag it to the workflow pane of the Designer. enter XXX Customer Sales Order (where XXX are your initials).700 . Select ChangeCustomer and click OK. 6. enter XXX (where XXX are your initials). In the workflow. Navigate to the Detail sheet. In the Search by Business Object section. Click Design to launch the BPM Workflow Designer. Select the Enabled check box. The Select Business Object window displays. In the Condition pane at the bottom. 2. 11. Click specified type is attached to the business object.0. 0. This indicates the directive should execute when the ChangeCustomer method is called and the customer on the order is on Customer Review hold.Business Process Management Course Hold Type 13. 9. 10. This action executes when the Customer. Minimize the Method Directives window. Add an Action Define an action to display an exception message. 11. Menu Path: Sales Management > Order Management > Setup > Customer Tip The CRM menu path is: Customer Relationship Management > Order Management > Setup > Customer 1. Select designed to launch the Design Exception Template window.BPM. below the Condition item. 13. 14.Update method initiates and specified conditions are met. 3. In the Hold Type field. Click Save and Exit to return to Method Directives. Epicor ERP | 10. 5. 4. In the Customer field. enter This customer is on hold because a required field has not been entered . 7. Click the Raise Exception element. verify raise exception based on the designed template displays. verify True displays. verify XXX Customer Review (where XXX are your initials) and is attached populates. 12. In the Name field. 2. enter Customer Hold. On the left side of the Condition element. click OK. In the Select Business Object window. 6. Click Save. enter ADDISON and press Tab. 14. Select the True exit point. In the Design Exception Template window. 15. drag the line and point it to any of the Raise Exception element entry points. 8. click OK. In the text box. 1. Click the Enabled check box. In the Actions pane. Click the Condition element. click the Raise Exception icon and drag it to the workflow pane of the Designer. In the workflow items tollbar.700 41 . Click Validate and verify BPM reports no errors. Update a Customer Record Navigate to Customer Maintenance. 4. the application displays the exception. In the tree view. In the Customer field. Note the BPM message. Create a Sales Order To test the BPM. 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. To the Error message. next. 2. select the Pre-Processing directive XXX Customer Sales Order. but you can continue to complete the order. In the tree view.Update method to check for the hold and raise the same exception. Navigate to the Detail sheet.Hold Type Business Process Management Course 2. Click Save. Click the Method Code button. 6. Maximize the Method Directives window. Click New. click No. clear the Enabled check box.0. Tip In the real environment. In the Save Confirmation window. enter a sales order. 5. In the State field. 8. 9. On the Pre-Processing > Detail sheet. you updated a customer record and left the State field blank. 3. clear the Enabled check box. enter Addison and press Tab. Exit Customer Maintenance. 7. On the Pre-Processing > Detail sheet. 2. 5. select Customer. click OK. In the Business Object field.Update. 42 Epicor ERP | 10. When you add a customer to an order.700 . Exit Sales Order Entry. Navigate to Sales Order Entry. Disable Directives 1. delete the entry and click Save. 10. 3. Click the Search button to search for and select Customer. select the Pre-Processing directive XXX Condition Test to Set Hold. 3. you can create a pre-processing directive for the SalesOrder. to prevent the order from being completed. 4. Click Save. Epicor ERP | 10.0. Exit Method Directives. Disable the remaining directives created for the Customer.Business Process Management Course Hold Type 11.700 43 . 13.Update method : • XXX Condition Test to Remove Hold • XXX Take Customer Off Hold • XXX Place Customer on Hold 12. Click the Table button. Select OrderHed and click OK. 1. and delete data directives applied to database table transactions. and configure the mapping of input values for report parameters. select a report.0. • Standard . 3. The Auto Print action is typically triggered by the execute custom code action or after a certain condition is met. 44 Epicor ERP | 10. Workshop . or update. You can apply most of the conditions and actions from method directives to data directives as well. delete. edit. A Standard directive executes after a data transaction is saved to the database. 2.Use Auto Print Action You can use BPM to automatically preview or print a report when the BPM data directive executes. 4. select a printer and print options. data directives are used to control data that may be affected by several business objects. enter Order.rows that contain data not yet saved to the database. In this workshop. 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. In the Table Name Starting At field. Two types of data directives are available: • In-Transaction . except in cases where the condition or action depends on information available in the business object that is not available in the data itself.Does not affect data in the database. This directive type can only process one row at a time. Multiple dirty rows are explained later in this course. By applying the directive to a specific table. 5. Click Search. Menu Path: System Management > Business Process Management > Data Directives Maintenance Important This program is not available in the Epicor Web Access. To configure the Auto-Print action. such as add. The Table Search window displays. It runs after base methods and method directives. Verify the Search by Table option is selected.700 . Locate the OrderHed Table Navigate to Data Directives. apply the standard data directive on the OrderHed table to preview the Sales Order Acknowledgement report when user enables a check box. A data directive is similar to a method directive.Data Directives Business Process Management Course Data Directives Use Data Directives Maintenance to view. This directive type processes multiple dirty rows modified in the database at once. create. it cannot process multiple dirty rows .Affects data before it is saved to the database. 5. 2. 14. In the workflow items tollbar. 6. Epicor ERP | 10. In the Value field. Clear the Any Value check box. 11. Click the first specified link. 6. This condition will trigger the subsequent action when a user selects the Auto-Print Ready check box found on Sales Order's Summary sheet. In the Report Table Level field. In the workflow. 7. Click the Condition icon and drag it to the workflow pane of the Designer. select true and click OK. In the search dialog box. 4.Business Process Management Course Data Directives Add Standard Directive 1. Click the Condition's True exit outbound connector connect it to any of the Auto Print entry points. verify Automatically print specified report with specified options displays. In the Table field. below the Condition item. In the Condition field. Create a connection between the Start and Condition elements. verify SQL Server Reporting (SSRS) displays. Click Design to launch the BPM Workflow Designer.700 45 . 3. In the Report Type. 8. In the Actions pane. enter XXX (where XXX are your initials). Click the Auto Print workflow element. Click New and select New Standard Directive. 13. In the Directive Name field. verify 'OrderHed' is the Primary table displays. click the Add Line icon. click the Auto Print icon and drag it to the workflow pane of the Designer. From the list of available fields. 10. below the Start item. 9. the Basic tab presents fields for entering search criteria specific to reports. Add an Action 1. click the Condition item. enter XXX-Auto Print (where XXX are your initials). 4. 2. 15. Click the specified link. 3. invoke the list and select The specified field has been changed from any to another.0. Click the another link. 12. 5. In the Condition pane at the bottom. select the AutoPrintReady check box and click OK. 7. verify ttOrderHed displays. In the Group field. 10.OrderNum field and click OK. click the arrow on the right-hand side and select The specified table and field value. 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. Select the Enabled check box to activate the directive. In the OrderNum parameter. 13. 9. Select the Report Parameters sheet. Click the Validate button and verify BPM reports no errors. 2. verify Immediate displays. Select ttOrderHed. click OK. On the Lines Detail sheet at the bottom.OrderNum table and field value. 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. 12. Click Save and Exit to return to the Data Directives window. 19. In the Customer field. 4. In the Run Schedule field. 15. Click the specified link to launch the Select Table Field(s) window. 20. In the Set up Auto Print window. Click Save and minimize Data Directives. Click Search. This means the action will execute right after the condition is satisfied. For the Print Action. 18. From the list.0. Click New > New Line. 16. 3. 11. Click the specified link. Verify the OrderNum parameter is set to The ttOrderHed. 21. Test the BPM Navigate to Sales Order Entry. Now you must specify the Report Parameters.700 . select Auto Preview. 17. 8. enter the following details: 46 Epicor ERP | 10. On this sheet. select OrderAck (Sales Order Acknowledgement) and click OK. Click New. 14.Data Directives Business Process Management Course This means only the reports where OrderHed is defined as the primary table will become available for selection. enter Dalton and press Tab. Disable Directive 1. Epicor ERP | 10. 2.Business Process Management Course Data Directives Field Value Part DSS-1010 Order Quantity 10 5. Maximize Data Directives. Exit the report and Sales Order Entry. 7.700 47 . Clear the Enabled check box to disable the BPM. Select the Auto-Print Ready check box. Click Save and exit Data Directives.0. Click Save. 6. 3. The Sales Order Acknowledgement report displays for the order in focus. some methods can send multiple dirty rows together as a set to the server for update. but it only gets the rows that match the selection criteria. and then save the two rows together. When multiple rows are sent to the server at the same time. when the user modifies a row. and it checks all rows within the dirty row set.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. like a currency exchange rate.0. Each row processes individually. For example.The action executes for as many times as the number of rows within the dirty row set (the overall number of dirty rows). • Once passing all existing rows . if the method is marked as supporting Multiple Dirty Rows.The action executes once as it moves through the data within the set of dirty rows. and so do not support multiple dirty rows. modifies it. These actions are available for both method directives. • For each existing . you can specify a directive to take action on the batch of rows in a specific way. and standard data directives: • Once passing all matching rows .The action executes one time as it moves through the data within the set of dirty rows. Some methods only allow changed rows to process one at a time. these two rows are called multiple "dirty" rows.700 . 48 Epicor ERP | 10. then moves to another row (another exchange rate). Each row processes individually.The action executes for as many times as the number of rows that match the selection criteria in the dirty row set. • For each matching . However. In the Updatable BAQ Method Directives program.Runs a custom action. like a business object. To utilize the whole uBAQ Method Directives toolset including modifications of base processing directives. you create a pre-processing. Custom Actions You may create custom actions for updatable BAQs in the Business Activity Designer program by defining the action ID and label. 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.0. 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. For example. • FieldUpdate . a user must be provided with BAQ Advanced User rights. • From the Main Menu path shown below. you want the part description field to populate automatically. You can use this method to validate proposed changes. except they apply to methods used specifically by updatable BAQs. Each updatable BAQ has the following methods: • GetList . • RunCustomAction . • GetNew ." The second "specified" variable can be set Epicor ERP | 10. If you want this field to generate a Business Process Management (BPM) method. except that they apply to methods used specifically by updatable BAQs.Business Process Management Course Updatable BAQ Directives Updatable BAQ Directives Use Updatable BAQ Method Directives to view. Updatable BAQ methods are used to run processes on Updatable Dashboards. or post-processing directive for the RunCustomAction method. select the Raise Events check box in Updatable Field Editor. 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. For example.This method occurs before the proposed change to a field is committed. Use "the specified argument is equal to the specified expression" condition statement to identify which action to run.Retrieves the data specified by the query. Updatable BAQ method directives are similar to the method directives described earlier. An updatable BAQ directive can be run before. For more information about creating and implementing these methods. base processing.Performs database updates for changed and added rows. after. You define the ID of the custom action in the Business Activity Query Designer program and define the action using one or more directives. select the Raise Events check box in Updatable Field Editor. you can prevent users from entering an incorrect value in a certain field such as non-existent state. Updatable BAQ method directives are similar to the method directives. • Update . If you want this field to generate a Business Process Management (BPM) method. when you enter a part number.Creates an empty row where a new record can be entered and submitted to the database. edit and define directives specific to an updatable Business Activity Query (BAQ). review the Updatable Dashboards chapter.This method occurs after the user's change to a field is committed. The custom actions can then be added to the Actions menu of a dashboard that uses the query. • Field Validate . or in place of the BAQ method call. You can use this method to perform additional processing against the changed row. BAQ methods are required so the database can be updated. custom queries you can create for data entry. Updatable BAQ directives initiate BPM actions based on method calls launched from an updatable BAQ.700 49 . The first "specified" variable can be set to "actionID. This chapter details the conditions and actions available for Updatable BAQ method directives. 700 . 50 Epicor ERP | 10.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.0. Menu Path: System Management > Business Process Management > Updatable BAQ Directives Maintenance Important This program is not available in the Epicor Web Access. 0. select the Call SC Workflow workflow item in BPM WF Designer. For additional information on Epicor Service Connect. within Service Connect to eliminate non-value added steps or potentially speed up any process. The workflow can be called synchronously or asynchronously. To create a method directive to call Service Connect. see the ESC Help and Epicor 10 Service Connect Courses. represented as web services outside of application. When the specified hot link is selected to identify the workflow. For example. Epicor ERP | 10. as well as external connectivity to Epicor and non-Epicor applications. You can create a method directive to call a Service Connect workflow. You can re-compose business components. 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. Service Connect automates tasks and processes within the application to allow employees to focus on value added activities and management by exception.700 51 .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. Asynchronously is typically faster since you do not have to wait for the Service Connect workflow to complete before the transaction processes. Asynchronously takes a copy of the record and calls the Service Connect workflow out of the scope of the main transaction. BPM creates a query against Service Connect on the designated server to find all the available workflows. instead of repetitive data (re)entry tasks. You must enable the BPM Advanced User option in User Account Maintenance to access the call Service Connect workflow action. Synchronously allows the record to be modified as it comes through the pre-process. Consideration should be made before calling Service Connect synchronously. update the BPM task queue and process asynchronous method directives. processes all asynchronous Execute Custom Code actions and invokes asynchronous External Method actions in the queue. they are not put in the queue and don't require this task to launch them. Action Processing After you define the method directives your application runs. you are ready to set up the action process schedule. BPM Async Processing Log If you are running any asynchronous actions. This regular schedule causes the Business Process Management (BPM) functionality to run and subsequently.0. Use this program to create the different schedules you need to run your method directives. System Agent Use System Agent Maintenance to create recurring schedules. The log location is specified during BPM Action Process setup.BPM Utilities Business Process Management Course BPM Utilities Various utilities are available in the Business Process Management (BPM) module. Other asynchronous actions such as Send E-mail or Call ESC Workflow are launched asynchronously when the directive executes. It lists the following information about each action: • Startup timestamp • Error message (if an issue occurs) • Completion timestamp 52 Epicor ERP | 10. You can set up this task to run on a recurring schedule. To set up the BPM Process task to run on a recurring schedule.700 . Menu Path: System Setup > System Maintenance > System Agent Important This program is not available in the Epicor Web Access. This automatically processes all calls made by the method directives. create the schedule and set up the process to run using this schedule. Action Process Use BPM Async Process to set up a task that deletes outdated BPM Data Form states. Menu Path: System Management > Business Process Management > Action Process Important This program is not available in the Epicor Web Access. you can use the BPM Async Processing Log to review each asynchronous action. • 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.Business Process Management Course BPM Utilities BPM User Rights Two levels of Business Process Management (BPM) functionality are available . Depending on your operating system. If you are on Windows SQL Server 2008 R2. The following outlines the process of enabling the BPM tracing functionality. You launch the Epicor Administration Console from your server machine. To utilize the whole uBAQ Method Directives toolset.0.700 53 . Epicor ERP | 10. These users can also create method directives that run in place of the base methods. Use the Epicor Administration Console to set up server logging settings. click Start > All Programs > Epicor Software > Epicor Administrative Tools > Epicor Administration Console. 1. 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. however users should work with Epicor or a partner organization before replacing a base method. 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. a user must be provided with BAQ Advanced Users rights. Users with access to the advanced BPM functions can use the entire BPM toolset. You can configure the trace log to record the BPM specific transaction data you need to review. These rights are assigned on the Options sheet. you launch this tool in different ways: a. You give specific user rights to the advanced BPM features through User Account Maintenance.a base level and an advanced level. 4. In the Application Server Settings window.0. 5. Select the application server you need to monitor. 6. 2. 3. Enable the Trace Log and configure Log File Location. expand the Server Management node and Epicor Server node. The Epicor Administration Console displays.700 . If you are on Windows SQL Server 2012. from the Apps screen. Now from either the Action menu or the Actions pane. select the BPM Logging check box to record Business Process Management (BPM) database calls. 54 Epicor ERP | 10. Within the Standard Logging information. select Application Server Settings. select Epicor Administration Console. press the <Windows> + F button to display the Charms bar. From the tree view. Each time user activity activates a BPM. the application server log records the information and gathers the data results.BPM Utilities Business Process Management Course b. the trace URI can be manually configured to narrow down the information being tracked: • trace://ice/fw/BPM/BO .method directives of Updatable BAQs with BPM update For a detailed analysis.1712" cli="fe80::d147:d8f4:e54e:5149%10:42111" usr="man ager" machine="MOS-TLS-DEV-AAA" pid="10788" tid="5"> <BpmCustomization Source="BO" BpMethodCode="ICE.Business Process Management Course BPM Utilities By selecting the BPM Logging check box.9992" /> Epicor ERP | 10.700 55 .Tip.Update" Type="BO Customization" ExecutionInterruptedOnDirective="6300f64f-ccd6-4617-9105 -a9784736eb54" Duration="530.0.to track BO customizations only • trace://ice/fw/BPM/DB .2677063Z" act="Ice:BO:Tip/TipSvcContract/Up date" dur="1006. you enable the following trace flag in the trace.config configuration file: <add uri="trace://ice/fw/BPM" /> 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 .9098"> <BpmDirective Type="PreProcessing" ID="6300f64f-ccd6-4617-9105-a978 4736eb54" Name="MyBPMDataForm" IsCompanyIndependent="false" Duration="7 . the server log records the following information: Example Op Utc="2013-10-30T13:40:45.to track data triggers only • trace://ice/fw/BPM/DQ .to track UBAQ customizations only 7. As a result. Tip • A single service call may trigger a lot of BPM customizations.700 . If there was no preparation for this directive. even the customizations of different BOs and tables. in case of BPM Data Forms two different operations are tracked.uBAQ Method Directives BpMethodCode The method invoked by the BPM. the service call exits and returns control back to the client. In Transaction . IsCompanyIndependent Displays if the directive is active for all companies in the application.for Data Directives ID Displays the directive's GUID. They all will be listed under the Op node of this operation. Type Displays the Type of the BPM call. Post . PreparationStepDuration The duration of the directive's preparation step. Within the BpmCustomization node.0.Data Triggers • DQ . 56 Epicor ERP | 10.for Method Directives and uBAQ Method Directives • Standard. Duration The directive's execution time. This value displays the directive's GUID from which the service call was interrupted.BPM Utilities Business Process Management Course </BpmCustomization> </Op> For each BPM call. Name Name of the directive. this value displays the directive's GUID from which the service call was resumed. Possible values: • BO .Method Directives • DB . this attribute is absent. When the BPM Form invokes. Base. Therefore. ExecutionResumedFromDirective Duration For the second BPM Data Form operation. Time spent on executing a BPM call. the BpmDirective node holds the following attributes: Node Description Type Type of the Directive. Possible values: • Pre. Possible values: • In Transaction Trigger • Standard Trigger • BO Customization • uBAQ Update Processing ExecutionInterruptedOnDirective Applies to BPM Data Form execution only. The client then calls the service again. the BpmCustomization node is created with following attributes: Node Description Source Displays the source of the BPM information. Disable BPM You can use the customizationSettings section found in the web.Business Process Management Course BPM Utilities • The execution of one directive may lead to other customizations being executed. Example <customizationSettings disabled="false" intermediateFolder="C:\Inetpub\wwwroot\ EpicorERP10\Server\BPM"> <customizationStorage provider="FileSystem" settings="C:\Inetpub\wwwroot\Ep icorERP10\Server\Customization" /> <externalsStorage provider="FileSystem" settings="C:\Inetpub\wwwroot\Epicor ERP10\Server\Customization\Externals" /> <types> <add name="BPM. Menu Path: System Management > Business Process Management > Directive Update Important This program is not available in the Epicor Web Access. When customization engine is turned back on (customizationSettings disabled = "false"). • Since tracing engine allows the user to switch on some tracing functionality for a particular BO calls. This means Method Directives. Data Directives and uBAQ Method Directives processed via BPM are not executed.Ubaq" folder="Ubaq" cacheName="Epicor_Ice_BPM_BO" /> </types> </customizationSettings> When you set customizationSettings disabled = "true". To get the binaries up to date: • Recompile all Method and Data Directives using the Directive Update program. and in case of synchronous execution (in-transaction triggers.BO" folder="BO" cacheName="Epicor_Ice_BPM_BO" /> <add name="Posting" folder="PE" cacheName="Epicor_Ice_PE" /> <add name="ElectronicInterface" folder="EI" cacheName="Epicor_Erp_EI" /> <add name="Expressions" folder="ECF" cacheName="Epicor_Erp_Expressions" / > <add name="ProductConfigurator" folder="PC" cacheName="Epicor_Ice_PC" /> <add name="BPM. you turn the customization engine off.700 57 . Menu Path: System Management > Upgrade/Mass Regeneration > Updatable BAQ Maintenance Epicor ERP | 10. review the Performance Diagnostic Guide. the duration of the "child" directives will also be counted into the duration of "parent" directive. For more information on how to test the performance of your system. • Recompile and refresh BPM binaries related to selected updatable queries using the Updatable Query Maintenance program. add and remove BPMs but these changes are saved to the database only and no binaries are being recompiled or deleted.0. • Default BO method execution duration (in case it's not overridden by a BaseProcessing direction) is not counted as part of BO Customization duration. old binaries are applied. it applies to BPM tracing out of the box. sync invocations of other BO methods). However. you can still edit.DT" folder="DT" cacheName="Epicor_Ice_BPM_BO" /> <add name="BPM. or specific method invocations. You can evaluate the server log using the Performance and Diagnostic Tool.config located in the server folder of your Epicor ERP installation to control the application's customization engine. 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. The user should remove affected binaries from the Server > Customization folder.700 . 58 Epicor ERP | 10. removing incorrect directives with disabled BPM is not enough.0. such as Posting or Product Configurator. for example.BPM Utilities Business Process Management Course Tip If an incorrectly configured BPM directive prevents the system from operating or the user from logging in.config. 0.Business Process Management Course Conclusion Conclusion Congratulations! You have completed the Business Process Management course. Epicor ERP | 10.700 59 . Additional information is available at the Education and Documentation areas of the EPICweb Customer Portal. you need a Site ID and an EPICweb account. To access this site.epicor. To create an account. . go to http://support.com.