bpm business process management n.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
BPM Business Process Management PowerPoint Presentation
Download Presentation
BPM Business Process Management

Loading in 2 Seconds...

play fullscreen
1 / 37

BPM Business Process Management - PowerPoint PPT Presentation


  • 220 Views
  • Uploaded on

BPM Business Process Management. Advantage Business Creations . Session Objective. Provide a solid understanding of how BPM interfaces with the business object Demonstrate and use Pre and Post Processing directives Demonstrate effective BPM writing and debugging techniques

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'BPM Business Process Management' - Ava


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
bpm business process management

BPMBusiness Process Management

Advantage Business Creations

session objective
Session Objective
  • Provide a solid understanding of how BPM interfaces with the business object
  • Demonstrate and use Pre and Post Processing directives
  • Demonstrate effective BPM writing and debugging techniques
    • Using informational message
    • Using Progress comment text
  • Demonstrate extending the wizard with 4GL(ABL) programming
  • Demonstrate using database tables and fields outside of the method dataset
session assumptions
Session Assumptions
  • You can effectively use the condition and action wizard in BPM
  • You have base working knowledge of Personalization and Customization
  • This class extends education and does not use examples in other class materials
at course completion you will
At Course completion you will
  • Effectively write BPMs beyond the wizard.
  • Receive documentation for all workshops.
  • Receive recordings of all workshops with embedded documentation
  • Receive the .bpm examples
agenda
Agenda
  • Business Object Basics
  • BPM Overview
  • BPM Workshops
    • Set field values outside dataset using UpdateTableBuffer
    • Use a method to set fields other than Update
    • Use 4GL(ABL)to read records from a table outside dataset
    • Calculate and Roll Up Totals from Detail to Header
    • Epicor 9 BPM Data Form Designer

Q & A

business object basics
Business Object Basics
  • Business object controls all input and out from the database
  • Contains all rules for processing records
  • Contains a normalized relationship between tables and field in the actual database
  • Contains methods for interfacing with data
  • Can be called by web services, smart client, web client or other program
business objects and method directives
Business Objects and Method Directives
  • Business Object
    • Part
    • SalesOrder
  • Method
    • Part.Update
    • SalesOrder.ChangeMiscCode
    • Part.ChangePartNum
methods in a business object
Methods in a Business Object

An internal procedure or function. These are used to enter, calculate and view data.

  • Delete by ID
    • Used to delete records (sometimes)
  • Get by ID
    • Used to retrieve records for specific ID
    • Returns all the data
  • Get List
    • Used in searches
    • Returns key data
  • Get New
    • Used to create a new record
  • Get Rows
    • Used to retrieve specific data for a group of records
  • Update
    • Used to add, update and delete records
    • Most common method to use in BPM
directives contains all rules for processing records
Directives - Contains all rules for processing records
  • Pre-Processing Directives-used to intercept data before it reaches the database.
    • Temporary Tables-dataset used to compare to the existing dataset, ttPart
  • Base Processing -used in place of base code; difficult to use effectively
  • Post-Processing- used to intercept data returning from the database through the Business Object.

– action to takes place after the record has been successfully validated and updated.

can be called by web services smart client web client or other programs
Can be called by web services, smart client, web client or other programs
  • Client Server (Smart Client)
    • A BPM is an application that resides between the Smart Client (Vantage/Epicor installation on local PC) and the Business Objects.
    • Various Forms and Programs
simple flow diagram
Simple Flow Diagram

User \ Program

Methods

ttTableName.FieldName

Business Object

Functional Name

Pre-Processing

Post-Processing

4GL(ABL) Program

Data Base

TableName.FieldName

business process management execution flow before bpm
Business Process ManagementExecution flow before BPM

Smart Client or Web Service

Method Call (e.g. Update Customer)

Data

Call Method

Return Result

Data

Database

4GL(ABL)

Code

(Server)

business process management execution flow with bpm
Business Process ManagementExecution flow with BPM

Smart Client or Web Service

Method Call (e.g. Update Customer)

Data

BPM (Pre)

BPM (Post)

Data

Database

4GL(ABL)

Code

using the tracing options
Using the Tracing Options
  • Enabled from the main menu
  • Writes the information to a file for review
    • Identifies the relevant Business Object
    • Identifies Method-trigger used to invoke BPM.
    • Data -positive proof of what is being called when needed
    • Maps out the flow of data as an user interacts with a form.
bpm setup review
BPM Setup Review
  • Method Search
    • Search by Business Object / By Method
    • Necessary when a BPM does not already exist for a given BO and Method
bpm review
BPM Review
  • Directive Search
    • Used to search for existing BPM’s
    • Useful for grouping associated BPM’s
conditions overview
Conditions – Overview
  • Pre-Process
    • Advance Procedures
      • Example – As it appears in the Actions window [custom source code]
  • Post-Process
    • This directive has been enabled from the specified directive
        • Used when condition in the Pre-Process to enable an action in the Post-Process.
row mods
Row Mods
  • Conditions
    • Row Mods
      • Updated (RowMod = ‘U’)
      • Added (RowMod = ‘A’)
      • Deleted (RowMod = ‘D’)
      • Changed (RowMod = ‘U’ or RowMod = ‘A’)
actions overview
Actions – Overview
  • Pre-Process
    • Send e-mail synchronously based on the designed template
    • Execute 4GL(ABL) code
      • Example– execute 4GL(ABL) update ship via
        • The verbage ‘update ship via’is accomplished by commenting out the first line in 4GL(ABL) code.
    • Show informational message based on the designed template
      • Issue a warning – can include data from fields related to the transaction to help debug
actions overview1
Actions – Overview
  • Post-Process
    • Call the specified Epicor Service Connect Workflow specify how
    • Attach hold of the specified type
      • Must set up holds first in Hold Type Maintenance under Business Process Management/Setup\Hold Type
      • This action is also available in Pre-Process
queries
Queries
  • Queries are written using the progress or 4GL(ABL) language
    • Resources
      • BAQ’s
      • Progress 4GL(ABL) Handbook
      • Progress 4GL(ABL) Reference
      • Progress Programming Handbook (available for download from the Progress website).
    • 4GL(ABL) format Example –

for each ttPartTran where (ttPartTran.RowMod = 'U' or ttPartTran.RowMod = 'A' and ttPartTran.TranType = 'MFG-STK') ,

each JobHead

each JobPart

where JobHead.JobNum = ttPartTran.JobNum and JobPart.JobNum = ttPartTran.JobNum and

(Jobhead.QtyCompleted - JobPart.ReceivedQty) < ttPartTran.TranQty

      • English translation – Show me when someone attempts to receive more parts into stock from a job than are currently reported complete on that job.
advanced 4gl code actions
Advanced & 4GL Code Actions
  • Advanced Procedure
    • In any Condition or Action Box there is a button labeled ‘Advanced’
    • Enter 4GL(ABL) code
advanced 4gl abl code actions
Advanced & 4GL(ABL) Code Actions
  • 4GL(ABL) Actions
    • Used to execute 4GL(ABL) code which can consist of any combination of queries, definition of variables, calculations, updating fields, and or calling other progress functions/programs
      • Ex. of a function: Run lib\UpdateTableBuffer.p(input BUFFER<Table>:Handle,’<Field>’,<Value>)
    • When to use Advance Procedure or execute 4GL(ABL) Code?
advanced 4gl abl code actions1
Advanced & 4GL(ABL) Code Actions
  • 4GL(ABL) Code
    • Run lib\UpdateTableBuffer.p(input BUFFER <Table>:HANDLE, '<Field>',<Value>)
      • Used to update fields in tables unrelated to the current transaction
    • Assign
      • Used to update a field in table related to the current transaction
advanced 4gl abl code actions2
Advanced & 4GL(ABL) Code Actions
  • 4GL(ABL) Constants
    • DCD-USERID
      • Current User ID
    • CUR-PLANT
      • Plant transacting in
    • CUR-COMP
      • Company transacting in (ID)
    • CUR-COMP-NAME
      • Company Name (see Company Maintenance)
thank you
THANK YOU!
  • BPM Interactive Workshops
    • #1 & #2 will utilize the Epicor Knowledge Mentor

to demo; then attendees will work on each workshop.

    • #3 & #4 will utilize Live Vantage 8.03.407c to demo; then attendees will work on each

workshop.

    • #5 Live in Epicor 9
  • General Q&A
bpm ex1 set field values outside dataset using updatetablebuffer
BPM Ex1Set field values outside dataset using UpdateTableBuffer
  • Objective: Default Material Burden % rate at Part based on PartClass.Update. In this example material burden % rate will be used but the concept can be applied to a number of methods.
  • Concepts
    • Using a method to set field values outside data set using UpdateTableBuffer.p command.
    • Using calculations within a directive
bpm ex2 setting field before update
BPM Ex2Setting Field Before Update
  • Objective: Default order misc amount based on total order amount. In this example we will use misc charge but the concept can be applied to a number of methods.
  • Concepts
    • Using a method to set fields values before update
    • Using calculations within a directive
bpm ex3 setting fields from another table
BPM Ex3Setting Fields from Another Table
  • Objective: Default fields from the part master. In this example we will use the order line but the concept can be applied to a number of methods.
  • Concepts
    • Population of fields before the record is saved
    • Using Post Processing Directive
    • Using the information message as a debug tool
    • Using Method directive without a condition
    • Using 4GL(ABL) code to read records from a table outside of the dataset
bpm ex4 calculate and roll up totals
BPM Ex4Calculate and Roll Up Totals
  • Objective: Calculate and roll up totals from a sub table to the header. In this example we will use the order line but the concept can be applied to a number of methods.
  • Concepts
    • Using 4GL(ABL) code to read records from a table outside of the dataset
    • Using 4GL(ABL) variable to calculate and accumulate totals
bpm ex5 bpm data form designer
BPM Ex5BPM Data Form Designer
  • Objective: E9 BPM Data Form Designer program creates custom forms that can then launch through BPM method directives
  • Concepts
    • Use “Call the named BPM Data Form using no customization always” action within a directive.
    • Create simple form which contains text and two buttons; data entry fields that update r database. 
    • Conditionally display a form or capture data required against a specific transaction.