peoplesoft approval framework

Upload: nihu

Post on 06-Jul-2018

226 views

Category:

Documents


1 download

TRANSCRIPT

  • 8/18/2019 PeopleSoft Approval Framework

    1/47

    PeopleSoft Approval

    Framework 

    Srini

  • 8/18/2019 PeopleSoft Approval Framework

    2/47

    Approval Framework 

    • Describing Approval Framework

    • Describing Approval Features

    • Implementing Approval Framework

    Defning Supporting Objects• Setting Up the Transaction Registr

    • !onfguring Transactions

    • Defning a "otifcation

  • 8/18/2019 PeopleSoft Approval Framework

    3/47

    Approval Framework 

      The #eopleSo$t Approval Framework is a speciali%e&application use& $or &efning an& confguring approvals'Approval Framework enables ou to confgure approvalprocesses using e(isting components without writing co&e'

      )an #eopleSo$t applications are &elivere& withpre&efne& approval processes'

  • 8/18/2019 PeopleSoft Approval Framework

    4/47

    Roles in AF* &evelopment an&

  • 8/18/2019 PeopleSoft Approval Framework

    5/47

    Approvals Business Process Flow

    +ithin the approvals business process ,ow-

     

    . Application &evelopers register in$ormation with the Approval Framework'

    . Functional business analsts &efne the approval process &efnition $or anapplication transaction'

    . Re/uesters submit a transaction $or approval'

     This action launches the approval process' The Approval Framework rea&sthe approval process &efnition an& /ueues the transaction $or approvers'

    . The sstem /ueues an approval task to an approver or reviewer usingemail notifcation0 +orklist entr0 or both'

     The UR1 enco&e& in the +orklist entr points to the correspon&ing approvalcomponent'

    . Approvers take actions on transactions' The can approve or &enre/uests0 monitor transaction statuses0 an& au&it approvals

  • 8/18/2019 PeopleSoft Approval Framework

    6/47

    Activity : Testing ApprovalFramework 

  • 8/18/2019 PeopleSoft Approval Framework

    7/47

    Describing Approval Features

    Using a combination o$ $eatures0 ou can create rules $or&i2erent tpes o$ approvals'

    . A& hoc path approval an& A& hoc review

      . Sel$3approval

      . Route to re/uester  . Skip prior path an& auto approval

      . #ush 4ack

      . Alternate approvers5Deligation

  • 8/18/2019 PeopleSoft Approval Framework

    8/47

      Ad Hoc Approval Path

    • I$ A& 6oc Approval Status )onitor is implemente& $or anapproval transaction0 then &uring the approval process0approvers can a&& other approvers or reviewers to thecurrent or a later stage o$ the approval process'

     This action is calle& a& hoc approval0 an& it onl applies tothe approval instance in which the a&&ition occurs an& &oesnot a2ect the un&erling process &efnition use& $or otherre/uests'

  • 8/18/2019 PeopleSoft Approval Framework

    9/47

     Ad Hoc Review

    A& hoc reviewers are users that an approver or re/uesterwoul& like to review a transaction' A& hoc reviewers arenotife& an& provi&e& with a link in a worklist entr or email tothe transaction0 i$ the process is so confgure&' A& hocreviewers &o not approve or &en transactions0 the can a&&comments'

  • 8/18/2019 PeopleSoft Approval Framework

    10/47

    Self-Approval 

    A re/uester can also be an approver' I$ re/uesters approvetheir own transactions0 it7s calle& sel$3approval' A check bo(setting enables sel$3approval' I$ enable&0 the re/uester7sapproval is assume&0 an& the process continues' 6owever0ou can establish criteria that helps control the re/uester7sapproval authorit' For e(ample0 ou can place a limit on the&ollar amount $or the re/uester so that i$ the transaction isover that amount0 the re/uester is not use& as an approver'

  • 8/18/2019 PeopleSoft Approval Framework

    11/47

    Route-to-Requester 

    Route to re/uester is a $eature that in$orms the sstem that anapproval shoul& be sent to a re/uester' In some cases there/uester ma alrea& be liste& in the approval path'

  • 8/18/2019 PeopleSoft Approval Framework

    12/47

    Skip Prior Path

    +hen skip prior to re/uester is enable&0 the sstem begins theapproval ,ow at whatever step in which the re/uester is anacknowle&ge& approver' For e(ample0 i$ a vice presi&entor&ers supplies $or hersel$0 the sstem skips applicationapproval steps lea&ing up to the step $or which the vicepresi&ent is an acknowle&ge& approver'

  • 8/18/2019 PeopleSoft Approval Framework

    13/47

     Auto Approval 

    +hen auto approval is enable&0 the sstem remembers anapprover7s action $or that process at the hea&er3 or line3level0an& applies the same action automaticall $or an subse/uentappearance in the Approval Framework routing' For e(ample0i$ the approver approves line one an& the line appears againas a re/uire& approval $or the specifc approver0 the approvalis remembere& $or the line' This approval &oes not pertain toan other line0 but hea&er approvals &o impl line approval $orthis $eature'

  • 8/18/2019 PeopleSoft Approval Framework

    14/47

     Alternate Approvers

    • Alternate work,ow approvers are users who are assigne& toreceive emails an& worklist notifcations $or the primarapprover when the primar approver is not available' +henou i&enti$ an alternate approver0 ou enter a &ate range&uring which ou want the alternate to fll in' The sstem&etermines i$ the alternate is in place $or the &ate range'

    •  Approval Framework checks recursivel to either create accle or fn& a vali& alternate' For e(ample0 assumeApprover A specifes Approver 4 as the alternate user IDwhile Approver A is out o$ the o8ce' Also assume thatApprover 4 happens to be out o$ the o8ce at a time &uringuser A7s absence0 an& 4 specifes Approver ! as analternate user ID' In this case0 the sstem sen&s work,owroutings originall inten&e& $or Approver A to Approver !

  • 8/18/2019 PeopleSoft Approval Framework

    15/47

     Push Back 

    #ush back is an optional $eature that can be implemente& inthe Approval )onitor' I$ implemente&0 push back takes acurrentl pen&ing step out o$ pen&ing status an& re/ueues theprevious step to its approvers' The meaning o$ push back isthat the approver is /uestioning the prior step7s approval an&is re/uesting clarifcation' #ush back is onl possible within apath0 there$ore0 the frst step o$ a path cannot push back'

  • 8/18/2019 PeopleSoft Approval Framework

    16/47

     Approval Comments

    • Re/uesters can a&& comments to transactions0 an&approvers can associate their comments with the approvalprocess rather than the re/uest transaction &irectl' TheApproval Framework )onitor provi&es a mechanism

    $or associating comments with a particular approval processinstance0 which is tie& to a particular applicationtransaction' Approvers can view comments a&&e& banother approver0 but the cannot change previouscomments'

  • 8/18/2019 PeopleSoft Approval Framework

    17/47

    Delegation

    The Delegation framework supports thefollowing types of delegation:• Downward delegation of authority to a direct report

    or another person lower down in the reporting

    hierarchy

    • !pward delegation of authority to a manager oranother person higher up in the reporting hierarchy

    • "ateral delegation of authority to a peer eitherwithin the same division or in a di#erent division

    within the reporting hierarchy'

  • 8/18/2019 PeopleSoft Approval Framework

    18/47

    $omponents !sed for ApprovalFramework 

  • 8/18/2019 PeopleSoft Approval Framework

    19/47

    Approval Framework $omponents

    • Transaction Registr 

     The transaction registr stores all o$ the meta&ata that&escribes the transaction setup to Approval Framework $or aspecifc process ID' +hen the transaction is submitte& $orapproval0 the 1aunch )anager application class is use& toenter the transaction into the Approval Framework' The crossre$erence recor& ties the specifc transaction to the approvals'*vent 6an&ler class #eople!o&e specifes the events $or thetransaction an& the action to take' The Approval )anagerclass &etermines whether or not the user entering the

    approval component has an pen&ing approvals to work'

  • 8/18/2019 PeopleSoft Approval Framework

    20/47

    Transaction Con!guration

     The transaction confguration stores in$ormation on all eventsuse& b the process ID0 inclu&ing the approval components0notifcations0 notifcation participants0 an& the notifcationchannel $or each event' It also &efnes the view that will beuse& in the Approval Status monitor to provi&e morein$ormation about an approver or reviewer'

  • 8/18/2019 PeopleSoft Approval Framework

    21/47

     Approval Process Setup

     

    •  The Approval #rocess Setup components &efnes thecriteria0 stages0 paths an& steps use& to approve atransaction' Approvers are &efne& b user lists'

  • 8/18/2019 PeopleSoft Approval Framework

    22/47

    Steps %e&uired to Set !p a 'ewApproval Process

  • 8/18/2019 PeopleSoft Approval Framework

    23/47

    Approval Process Setup

     To implement the Approval Framework process0 the $ramework$or buil&ing an& interpreting work,ow approvals bringstogether these users-

      Application "evelopers

     #unctional Business Analsts$nd %sers

  • 8/18/2019 PeopleSoft Approval Framework

    24/47

    "aunching Approvals

    !reate the co&e to launch Approval Framework' The co&e must e(ten& the1aunch)anager application class an& at a minimum &efne a submitbutton'

    Application &evelopers shoul& instantiate this class as a component3scope&variable' The best place to initiali%e this class is in the component post3buil& event' This is an e(ample to launch Approval Framework $or9oucherApproval'

    import *OA+:!OR*-;<

    !omponent *OA+:!OR*-1aunch)anager =launch)gr<

    I$ 9OU!6*R'9!6R:A##R91:F1> ? @+@ Then

      =vchrRecor& ? !reateRecor&Recor&'9!6R:AF:6DR:9+B<

    >et1evelCBB'>etRecor&Recor&'9OU!6*RB'!opFiel&sTo=vchrRecor&B<

    =launch)gr ? create *OA+:!OR*-1aunch)anager@9oucherApproval@0

    =vchrRecor&0 EOperatorI&B<

  • 8/18/2019 PeopleSoft Approval Framework

    25/47

    Approval $omponent

     The approval component will inclu&e the necessar pushbuttons to approve or &en transactions0 as well as an otheractions that can be taken'

    *ach transaction will have at least one page or componentwhere the user must go to in or&er to approve the transaction'#ossible actions to inclu&e are-

      . Approve

      . Den

      . #ush back

      . Resubmit  . Reassign

  • 8/18/2019 PeopleSoft Approval Framework

    26/47

    Approval $ross %eference Table

    Application developers must create a record containingthe applications keys( and include the ApprovalFramework)supplied subrecord *+A,-.%*F-SB%'

  • 8/18/2019 PeopleSoft Approval Framework

    27/47

  • 8/18/2019 PeopleSoft Approval Framework

    28/47

    /iew of !sers

     The approval user in$o view is a view that is use& to &isplaa&&itional in$ormation about Approval Framework participantsin the Approval Status )onitor' l

  • 8/18/2019 PeopleSoft Approval Framework

    29/47

    /iew of !sers

     The approval user in$o view is a view that is use& to &ispla a&&itionalin$ormation about Approval Framework #articipants' +hen an in&ivi&ualuser is &isplae& as being a participant o$ an approval process in theApproval Status )onitor0 onl his or her operator ID is &isplae&' 4&efning an Approval User In$o 9iew0 when a user selects the Operator ID o$a participant in the sstem0 the Approval Framework will &ispla the

    a&&itional in$ormation that ou have &efne& in our view on the ApproverIn$ormation page'

    •   For e(ample-

    •   S*1*!T A'opri&

    • 0 4'eoawbu

      0 4'phone:work•   04'email:a&&r

    •   FRO) psopr&e$n A

    •   0 ps:ut:person 4

    •   +6*R* A'opri& ? 4'opri&

  • 8/18/2019 PeopleSoft Approval Framework

    30/47

    Approval *vent 0andler $lass

    *ach time an event occurs0 the Approval Framework notifesthe application' For applications to receive the notifcations0application &evelopers must e(ten& the event han&ler class0Approval*vent6an&ler'

    •  The Approval Framework is &esigne& aroun& a series o$specifc0 pre3&efne& events' Approval Framework thenleverages #eopleSo$t Application !lasses in or&er to allowapplications to e(ten& its own processing'

    •  This allows the a&opting application to assign specifcpieces o$ #eople!o&e to be fre& &uring these events

  • 8/18/2019 PeopleSoft Approval Framework

    31/47

    *1tending Approval*vent0andler$lass

    •  ou will be re/uire& to create our own version o$Approval*vent6an&ler class' +hen ou e(ten& thesuperclass0 make sure that our class onl contains themetho&s that ou want to e(ten&'

    •  +ithin each metho& which correspon&s to a single eventBou can write whatever co&e ou $eel necessar to mo&i$the transaction'

  • 8/18/2019 PeopleSoft Approval Framework

    32/47

    import *OA+:!OR*-;<

    import *OA+:!OR*-*">I"*-;<

    class Approval6an&ler e(ten&s *OA+:!OR*-Approval*vent6an&ler

      metho& Approval6an&lerB<

    metho& On#rocess1aunch=appInst As *OA+:!OR*-*">I"*-AppInstB<

    metho& On6ea&erApprove=appinst As *OA+:!OR*-*">I"*-AppInstB<metho& On6ea&erDen=userinst As *OA+:!OR*-*">I"*-UserStepInstB<

    private

      metho& up&ate#rocessFlag=status As stringB<

    instance Recor& =vn&rRecor&<

    !onstant =A##RO9*D ? @A@<

    !onstant =D*"I*D ? @D@<

    !onstant =#*"DI"> ? @*@<

    en&3class<

  • 8/18/2019 PeopleSoft Approval Framework

    33/47

    metho& Approval6an&ler

      ESuper ? create *OA+:!OR*-Approval*vent6an&lerB<

    =vn&rRecor& ? !reateRecor&Recor&'9"DR:AF:6DR:9+B<

    en&3metho&<

     The private metho& up&ate#rocessFlag is use& to up&ate the ven&or

    status'metho& up&ate#rocessFlag

      5G =status as String G5

      1ocal string =seti&0 =vn&rID<

    =seti& ? =vn&rRecor&'S*TID'9alue<

    =vn&rID ? =vn&rRecor&'9*"DOR:ID'9alue<

    SH1*(ecSH1'A#:9"DR:AF:U#D:A##R:F1A>0 =status0 =seti&0 =vn&rIDB<

     en&3metho&<

  • 8/18/2019 PeopleSoft Approval Framework

    34/47

      metho& On#rocess1aunch

      5G =appInst as *OA+:!OR*-*">I"*-AppInst G5

      5G *(ten&s5implements

    *OA+:!OR*-Approval*vent6an&ler'On#rocess1aunchG5

     

    =appInst'threa&'SetAppes=vn&rRecor&B<

    EThis'up&ate#rocessFlag=#*"DI">B<

    en&3metho&<

  • 8/18/2019 PeopleSoft Approval Framework

    35/47

    metho& On6ea&erApprove

      5G =appinst as *OA+:!OR*-*">I"*-AppInst G5

    5G *(ten&s5implements *OA+:!OR*-Approval*vent6an&ler'On6ea&erApprove

    G5

     

    =appinst'threa&'SetAppes=vn&rRecor&B<

    EThis'up&ate#rocessFlag=A##RO9*DB<

    en&3metho&<

    metho& On6ea&erDen

      5G =userinst as *OA+:!OR*-*">I"*-UserStepInst G5

      5G *(ten&s5implements *OA+:!OR*-Approval*vent6an&ler'On6ea&erDenG5

     

    =userinst'threa&'SetAppes=vn&rRecor&B<

    EThis'up&ate#rocessFlag=D*"I*DB<

    en&3metho&<

  • 8/18/2019 PeopleSoft Approval Framework

    36/47

    Setting !p the Transaction%egistry

  • 8/18/2019 PeopleSoft Approval Framework

    37/47

    Transaction %egistry

     The transaction &efnition is the meta&ata that &escribes thetransaction setup to the Approval Framework'

     ou must create a uni/ue approval process ID $or eachtransaction an& enter all the necessar transaction specifcin$ormation0 inclu&ing-

      . "otifcation options'

    . Approval event han&ler class'

    . Transaction approval levels'

    . *mail notifcations'

    . A& hoc approver class logic'

  • 8/18/2019 PeopleSoft Approval Framework

    38/47

    Transaction $on2guration

    •  The !onfgure Transactions component is use& to-

    •   Select an& &efne elements that &etermine what triggers anotifcation'

    •   Determine who receives a notifcation'

    •   Defne the content o$ the notifcation

  • 8/18/2019 PeopleSoft Approval Framework

    39/47

  • 8/18/2019 PeopleSoft Approval Framework

    40/47

    Approval !ser 3nfo /iew #rovi&es &etails about which view a user sees whenusing the Approval )onitor' Data in this view &ictates what is &isplae& in theapprover links'

    Ad 0oc !ser "ist : This is a flter use& to &ispla onl a list o$ users who can be a&hoc approvers'

    &oti!cations 'ptions(t he "otifcation Options section appears when the Use

    *mail Approvals check bo( is selecte& $or the #rocess ID on the Register Transactions page'

    %ser %tilities(User Utilities are the mechanism that the user changes to mo&i$the behavior o$ &elegation an& reassignment'

     The UserUtilities class7s main purpose is $or &elegation support' The &e$ault settingpoints to *OA+:US*R:UTI1S-UserUtilities' This &elivere& &e$ault will allow theApproval Framework to appl the &elegation rules that are set up $or each user in

    #SO#RD*F"'!ser !tilities Package

    Select the parent application class through which alternate users are selecte&'

    !ser !tilities Path

    Select a path that uses a specifc class within the root package'

  • 8/18/2019 PeopleSoft Approval Framework

    41/47

    *vents

    "otifcations are mappe& to work with the approval transactionregistr an& inclu&e a path to the approval component as will as aSH1 &efnition i$ an email template is being use&' The events $orwhich the sstem sen&s notifcations inclu&e-

    . 1aunch o$ the approval process on a transaction'

    . Hueue o$ approval step to an approver'

    . Hueue o$ a review step to a reviewer'

    . Denial o$ a line or hea&er'

    . Approval o$ a line or hea&er'

    . !ompletion o$ the approval process'

  • 8/18/2019 PeopleSoft Approval Framework

    42/47

    Trigger ,ork4ow 'oti2cation

    "otifcations are triggere& b event' The events section &efnes thein$ormation to buil& the &e$ault UR1 to inclu&e in notifcation $or eacho$ the participants that ou speci$ in the "otifcations section'

    For each o$ these events to be notife&0 ou must select the level o$the transaction'

    . 6ea&er

    . 1ine

    Select the event $or which ou want to sen& a notifcation' Theapprover is alwas notife& o$ an event' The Oracle Universit an& Jolt

     Technologies #vt 1t& use onl

    re/uester an& the sstem a&ministrator is notife& when an erroroccurs

  • 8/18/2019 PeopleSoft Approval Framework

    43/47

    5enu 'ame6Approval $omponent

    Select the menu name that contains the component ou want the notifcationrecipient to link to' This i&entifes where the person shoul& go upon notifcation'

    I$ ou &o not enter values0 the recipient is sent to the same menu an&component that is &efne& $or the +orklist Approval component'

    Approval $omponent

    Select the component ou want to make available to the notifcation recipient'

    Page 'ame

     The page &efne& is the page approvers are re&irecte& to $rom the UR1 sentwithin the email notifcation'

    5enu Action

     This is the action o$ the page users see when &irecte& to the page $rom the UR1

    sent within the email notifcation

    S7" 3denti2er

    Select the SH1 &efnition i&entifer ou want to use to get content $or the email'

     The SH1 must accept bin& inputs e/ual to the number o$ kes at the notifcationlevel' For e(ample0 hea&er or line kes'

  • 8/18/2019 PeopleSoft Approval Framework

    44/47

    Describing !ser "ists

    • User 1ists &efne user sources $or use with steps in the approvalprocess' Users 1ist source tpe can be-

    •   . Role

    •   . SH1

    •   . Huer

    •   . Application !lass

  • 8/18/2019 PeopleSoft Approval Framework

    45/47

  • 8/18/2019 PeopleSoft Approval Framework

    46/47

  • 8/18/2019 PeopleSoft Approval Framework

    47/47

    !ser "ists

    • %ole

    • Select to use a role as the source $or this user list' A role is a list o$ users who per$orm thesame tpe o$ work0 such as buers or managers' *ach role has a set o$ parameters that&etermine the limits o$ the role in the organi%ation an& in the work,ow process'

    • S7" De2nition structure& /uer language &efnitionB

    • Select to use an SH1 &efnition as the source $or this user list' The SH1 must return O#RIDfel&'

    7uery• Select to use a /uer as the source $or this user list' +hen a source is &efne& as a /uer0 the

    sstem &etermines who shoul& receive a work item base& on the fel& values on the page thattriggers the routing'

    • Application $lass

    • Select to use an application class as the source $or this user list'

    • +hen ou select an application class0 the sstem passes the originator o$ the transaction an&then &etermines the approver $or that originator' For subse/uent approval steps0 the sstem

    passes the approver $rom the previous step'• 3nclude !sers as 3nput

    • Select to in&icate that the sstem uses the originator o$ a transaction as the frst step in eachpath' For subse/uent steps in each path0 the sstem uses the approver $rom the previous step'

    •  This fel& is not available when the User 1ist Source is User 1ist