Regarding Event Flow in Flex.

Hi all,
           i have a doubt may be silly but i need an clear idea on this,
           Actually coming to events the event flow occurs in 3 phases capturing,targeting and bubbling phases.
           Now suppose inside my application (Main Application ) i have an VBox and inside that i have Hbox and inside Hbox i have Button .
          Suppose now when the user clicks button first what phase will it check wether will it be checking for capturing or bubbling or targeting ?
          i want to know first what phase will it check?
         Sorry for my poor english.

The main app's capture listener will be first, followed by the hbox capture
listener, then the button target listener, then the hbox bubble listener
then the main app's bubble listener.

Similar Messages

  • Help regarding event flow/event listening best practices

    Hi, I'm making a flash memory card game to learn more about
    to actionscript.
    I have:
    - a main class that loads on start. This class instantiates
    a:
    - CardLoader class that imports graphical assets and uses
    these to create all my cards:
    - Card class that represents individual card. Can dispatch
    CardEvent when clicked:
    - CardEvent contains info on the Card that dispatched it,
    such as the cards ID number and the ID of it's matching card.
    What I want to do is to have another object to act as a game
    logic handler.
    Example:
    - Card 1 was clicked, dispatches CardEvent that ends up with
    the LogicHandler.
    - Card 2 was clicked and also dispatches event.
    LogicHandler compares these two cards and does the
    appropriate thing depending on they being a match or not.
    Now, the big questions is, how do I get this event to the
    LogicHandler?
    My custom CardEvent has it's bubbles property set to true.
    So, I can manage to get such an event all the way back to my main
    class, in this order: CardEvent > Card > CardLoader >
    Main.
    The problem arises when I want to have my LogicHandler class
    created by Main. When my CardEvent bubbles back, it does not go
    through this LogicHandler since it is not part of the event flow on
    it's way back.
    Questions: How do I, following the best possible programming
    practises, send the event the way I want it to go?
    I can only think of one solution myself, being that inside my
    Main method I set up an eventlistener that listens for this event
    and passes it on downwards, in this case to the LogicHandler. Sure,
    it's only a few lines of code in the main method, but what if you
    have 50 different events in a larger project that needs the same
    treatment?
    Your main method will be a mess by then!
    How would you do it?

    Ok let me see if I get this straight:
    In my example, I would have to pass a reference of the
    LogicHandler to my Card class.
    In my Card class, I have something like:
    logicHandler.addDispatcher(this);
    this being the Card of course.
    Inside LogicHandler class I have the addDispatcher method
    that calls the addEventListener method.
    So far so good?
    The addDispatcher method adds an eventlistener to the Card
    object, from what I can tell. But it does it inside the
    LogicHandler, thus the method that is called by the
    addEventListener can be inside the LogicHandler?
    To put it in other words, what's confusing me is that the
    Listener object adds an EventListener to the dispatching object.
    Logically for me the listener should add a listener to itself?
    The way I first did it in my Card class was:
    testevent = new CardEvent(CardEvent.CLICK);
    dispatchEvent(testevent);
    And then set up the EventListener in the object that I wanted
    to receive the event.
    I'm sorry I don't understand this, despite your obviously
    good explanations (I think I understand a lot more now, just not
    the best approach). I will look into the callback functions, sounds
    a lot interesting as well

  • Issue regarding [Work Flow] Business Object Event Raise in ABAP Program

    Hi All,
    I have one issue regarding [Work Flow] Business Object Event Raise in ABAP Program.
    Actual TDS is as below:
    If E message type written, raise Business object BUS2005 (Production order) Event PickShortage for production order passing warehouse, transfer request
    (BUS2065 Object key) in event container. Also include table of text version of error
    messages for this set of Transfer
    Request.
    Can anybody tell me how can i write it technically in ABAP Code.
    Can anybody solve this issue!
    Thanks in advance.
    Thanks,
    Deep.

    Hi,
    Can anybody solve above posted issue!
    Thanks,
    Deep.

  • Regarding [Work Flow] Business Object Event  Raise in ABAP Program

    Hi All,
    I have one issue regarding [Work Flow] Business Object Event Raise in ABAP Program.
    Actual TDS is as below:
    If E message type written, raise Business object BUS2005 (Production order) Event PickShortage for production order passing warehouse, transfer request
    (BUS2065 Object key) in event container.  Also include table of text version of error
    messages for this set of Transfer
    Request.
    Can anybody tell me how can i write it technically in ABAP Code.
    Can anybody solve this issue!
    Thanks in advance.
    Thanks,
    Deep.

    Hi,
    Can anybody solve above posted issue!
    Thanks,
    Deep.

  • Flash CS4 - how to create event flow from children to parents?

    In my opinion natural event flow direction is from children
    to its parants.
    E.g. when in dialog box buttons are pressed it is natural to
    inform only
    this dialog box about these actions. When dialog box can't
    handle particular
    event then passes it to its parent and so on .
    Unfortunately this direction is not well supported by Flash.
    To achieve
    support for this event direction it is necessary to call
    parent.dispatchEvent() with bubbling option off. This
    solution is
    inconvenient because sometimes I can't predict what event
    types will be
    triggered inside dialog components. Most likely there is no
    function to
    catch all events which have no defined handlers in dialog in
    order to be
    possible to pass them one level higher.
    Have you got any experience with building communication model
    between
    objects in Flash applications?
    Regards,
    Marek

    XML shema is basically an XML file. So u need to know how to create an XML,
    provided u know how the shema file should be.
    Creating an XML :
    http://forum.java.sun.com/thread.jspa?threadID=5181031&messageID=9705786#9705786

  • Regarding work flow

    hi,
    can you please  tell me wht is work flow .
    thanks & regards,
    ramnaresh

    Hi
    Workflow automates the steps and activities in a business process according to predefined procedures and rules.
    Workflow presents information and documents to the appropriate knowledge worker or agent (another entity such as a program) to make a decision or perform an activity.
    Workflow tracks each and every step in the process flow and maintains an ongoing status.
    Workflow also collects and reports all of the metrics associated with the execution and completion of the process.
    Check the below links u will get lot of info..
    http://www.sap-press.com/product.cfm?account=&product=H950
    Workflow
    http://www.sap-img.com/workflow/sap-workflow.htm
    http://help.sap.com/saphelp_47x200/helpdata/en/a5/172437130e0d09e10000009b38f839/frameset.htm
    For examples on WorkFlow...check the below link..
    http://help.sap.com/saphelp_47x200/helpdata/en/3d/6a9b3c874da309e10000000a114027/frameset.htm
    http://help.sap.com/printdocu/core/Print46c/en/data/pdf/PSWFL/PSWFL.pdf
    http://help.sap.com/saphelp_47x200/helpdata/en/4a/dac507002f11d295340000e82dec10/frameset.htm
    http://www.workflowing.com/id18.htm
    http://www.e-workflow.org/
    http://web.mit.edu/sapr3/dev/newdevstand.html
    Go through the following links on FORK :
    http://help.sap.com/saphelp_nw04/helpdata/en/24/e2283f2bbad036e10000000a114084/frameset.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/8d/25f1e7454311d189430000e829fbbd/frameset.htm
    http://help.sap.com/saphelp_46c/helpdata/en/c5/e4a930453d11d189430000e829fbbd/content.htm
    http://www.insightcp.com/res_23.htm
    http://help.sap.com/printdocu/core/Print46c/en/data/pdf/BCBMTWFMSTART/BCBMTWFMSTART.pdf
    http://help.sap.com/printdocu/core/Print46c/en/data/pdf/BCBMTWFMDEMO/BCBMTWFMDEMO.pdf
    http://help.sap.com/printdocu/core/Print46c/en/data/pdf/BCBMTWFMPM/BCBMTWFMPM.pdf
    http://help.sap.com/printdocu/core/Print46c/en/data/pdf/PSWFL/PSWFL.pdf
    For more reference on workflow: http://****************/Tutorials/Workflow/Workflow.htm
    http://help.sap.com/saphelp_erp2005vp/helpdata/en/04/9277a346f311d189470000e829fbbd/frameset.htm
    Check these links.
    http://www.sapgenie.com/workflow/index.htm
    /people/ginger.gatling/blog/2005/12/01/link-workflow-business-objects-to-your-collaboration-tasks
    http://help.sap.com/saphelp_nw04/helpdata/en/92/bc26a6ec2b11d2b4b5006094b9ea0d/content.htm
    http://help.sap.com/saphelp_bw33/helpdata/en/92/bc26a6ec2b11d2b4b5006094b9ea0d/content.htm
    http://help.sap.com/saphelp_bw31/helpdata/en/8d/25f94b454311d189430000e829fbbd/content.htm
    http://www.sap-press.com/product.cfm?account=&product=H950
    http://help.sap.com/printdocu/core/Print46c/en/data/pdf/PSWFL/PSWFL.pdf
    http://www.workflowing.com/id18.htm
    http://www.e-workflow.org/
    Workflow
    http://www.sap-img.com/workflow/sap-workflow.htm
    http://help.sap.com/saphelp_47x200/helpdata/en/a5/172437130e0d09e10000009b38f839/frameset.htm
    For examples on WorkFlow...check the below link..
    http://help.sap.com/saphelp_47x200/helpdata/en/3d/6a9b3c874da309e10000000a114027/frameset.htm
    http://help.sap.com/printdocu/core/Print46c/en/data/pdf/PSWFL/PSWFL.pdf
    http://help.sap.com/saphelp_47x200/helpdata/en/4a/dac507002f11d295340000e82dec10/frameset.htm
    http://www.workflowing.com/id18.htm
    http://www.e-workflow.org/
    http://web.mit.edu/sapr3/dev/newdevstand.html
    http://www.sap-img.com/workflow/sap-workflow.htm
    http://help.sap.com/saphelp_47x200/helpdata/en/a5/172437130e0d09e10000009b38f839/frameset.htm
    For examples on WorkFlow...check the below link..
    http://help.sap.com/saphelp_47x200/helpdata/en/3d/6a9b3c874da309e10000000a114027/frameset.htm
    http://help.sap.com/printdocu/core/Print46c/en/data/pdf/PSWFL/PSWFL.pdf
    http://help.sap.com/saphelp_47x200/helpdata/en/4a/dac507002f11d295340000e82dec10/frameset.htm
    http://www.workflowing.com/id18.htm
    http://www.e-workflow.org/
    http://web.mit.edu/sapr3/dev/newdevstand.html
    Workflow tutorials with step-by-step and with screenshots are available at http://www.****************/Tutorials/Workflow/Workflow.htm
    http://help.sap.com/saphelp_erp2005vp/helpdata/en/42/c14a9b55103116e10000000a1553f7/frameset.htm
    http://help.sap.com/saphelp_erp2005vp/helpdata/en/c5/e4a930453d11d189430000e829fbbd/frameset.htm
    http://www.sapgenie.com/workflow/
    http://www.sap-img.com/workflow/sap-workflow.htm
    http://help.sap.com/saphelp_47x200/helpdata/en/3d/6a9b3c874da309e10000000a114027/frameset.htm
    http://help.sap.com/printdocu/core/Print46c/en/data/pdf/PSWFL/PSWFL.pdf
    http://help.sap.com/saphelp_47x200/helpdata/en/4a/dac507002f11d295340000e82dec10/frameset.htm
    http://www.sap-basis-abap.com/wf/sap-business-workflow.htm
    https://forums.sdn.sap.com/click.jspa?searchID=791580&messageID=2857887
    https://forums.sdn.sap.com/click.jspa?searchID=791580&messageID=2855919
    https://forums.sdn.sap.com/click.jspa?searchID=791580&messageID=2735228
    http://help.sap.com/printdocu/core/Print46c/en/data/pdf/BCBMTWFMSTART/BCBMTWFMSTART.pdf
    http://help.sap.com/printdocu/core/Print46c/en/data/pdf/BCBMTWFMDEMO/BCBMTWFMDEMO.pdf
    http://help.sap.com/printdocu/core/Print46c/en/data/pdf/BCBMTWFMPM/BCBMTWFMPM.pdf
    http://help.sap.com/printdocu/core/Print46c/en/data/pdf/PSWFL/PSWFL.pdf
    Debug a workflow.
    This has a step by step procedure :
    http://fuller.mit.edu/workflow/debugging.pdf
    www.erpgenie.com/sap/workflow/debugging.htm
    http://www.erpgenie.com/workflow/debugging.htm?2b5de440
    Workflow tutorials with step-by-step and with screenshots are available at
    http://www.****************/Tutorials/Workflow/Workflow.htm
    http://www.sapgenie.com/workflow/
    http://www.sap-img.com/workflow/sap-workflow.htm
    http://help.sap.com/saphelp_47x200/helpdata/en/3d/6a9b3c874da309e10000000a114027/frameset.htm
    http://help.sap.com/printdocu/core/Print46c/en/data/pdf/PSWFL/PSWFL.pdf
    http://help.sap.com/saphelp_47x200/helpdata/en/4a/dac507002f11d295340000e82dec10/frameset.htm
    http://www.workflowing.com/id18.htm
    http://www.e-workflow.org/
    http://web.mit.edu/sapr3/dev/newdevstand.html
    http://www.sap-basis-abap.com/wf/sap-business-workflow.htm
    https://forums.sdn.sap.com/click.jspa?searchID=791580&messageID=2857887
    https://forums.sdn.sap.com/click.jspa?searchID=791580&messageID=2855919
    https://forums.sdn.sap.com/click.jspa?searchID=791580&messageID=2735228
    http://www.sapbrain.com/TUTORIALS/TECHNICAL/WORKFLOW_tutorial.html
    Regarding Work Flow   
    work flow scenarios.
    1. applying for a leave.
    2. approval process.
    3. material creation process.
    4. mainly work flow is for notification purpose.
    chk this links
    http://help.sap.com/saphelp_erp2005/helpdata/en/fb/135962457311d189440000e829fbbd/frameset.htm
    http://help.sap.com/saphelp_erp2005/helpdata/en/c5/e4a930453d11d189430000e829fbbd/frameset.htm
    Workflow
    http://www.sap-img.com/workflow/sap-workflow.htm
    http://help.sap.com/saphelp_47x200/helpdata/en/a5/172437130e0d09e10000009b38f839/frameset.htm
    For examples on WorkFlow...check the below link..
    http://help.sap.com/saphelp_47x200/helpdata/en/3d/6a9b3c874da309e10000000a114027/frameset.htm
    http://help.sap.com/printdocu/core/Print46c/en/data/pdf/PSWFL/PSWFL.pdf
    http://help.sap.com/saphelp_47x200/helpdata/en/4a/dac507002f11d295340000e82dec10/frameset.htm
    http://www.workflowing.com/id18.htm
    http://www.e-workflow.org/
    http://web.mit.edu/sapr3/dev/newdevstand.html
    http://www.erpgenie.com/workflow/index.htm
    http://www.sap-basis-abap.com/wf/sap-business-workflow.htm
    http://www.insightcp.com/res_23.htm
    A good tutorial
    http://www.thespot4sap.com/articles/Invoice_Verification_Automation_Using_SAP_Workflow.asp
    http://www.sap-basis-abap.com/wf/sap-business-workflow.htm
    /people/alan.rickayzen/blog
    /people/jocelyn.dart/blog/2006/06/19/why-use-abap-oo-with-workflow
    a good book
    http://www.sap-press.com/product.cfm?account=&product=H950
    http://help.sap.com/printdocu/core/Print46c/en/data/pdf/PSWFL/PSWFL.pdf
    http://help.sap.com/saphelp_47x200/helpdata/en/4a/dac507002f11d295340000e82dec10/frameset.htm
    http://www.sap-press.com/downloads/h950_preview.pdf
    Check the following PDF
    http://help.sap.com/printdocu/core/Print46c/en/data/pdf/BCBMTWFMSTART/BCBMTWFMSTART.pdf
    http://help.sap.com/printdocu/core/Print46c/en/data/pdf/BCBMTWFMDEMO/BCBMTWFMDEMO.pdf
    http://help.sap.com/printdocu/core/Print46c/en/data/pdf/BCBMTWFMPM/BCBMTWFMPM.pdf
    http://help.sap.com/printdocu/core/Print46c/en/data/pdf/PSWFL/PSWFL.pdf
    also seach the workflow forum: SAP Business Workflow
    Regards
    Anji

  • Dispaly Object Exclude from Event Flow

    Hi!
    I m building a little application, im design the graphic in Flash and im using Flash Builder for the Programming Side.
    I have 5 MovieClip inside a Sprite (the container), and i want to listen for MOUSE.CLICK.
    I add the event listener to the Sprite, instead of one for MovieClip, and its working good like this.
    What if inside the Sprite (the container) i have also a TextField and exclude it from the event flow?
    Thanks!

    Inside flash i have a movieClip, inside this movieClip(the container) i have 5 other movieClip and e text  (look at the picture):
    i want to trigger mouse click just on the movie cilip and not on the text.
    colorPikerUI.addEventListener(MouseEvent.CLICK,clickPikerListener);
    private function clickPikerListener(e:MouseEvent):void{
                    for(var i:int=0;i<colorPikerUI.numChildren;i++){
                        colorPikerUI.getChildAt(i).alpha = 1;
                    MovieClip(e.target).alpha = .3;
                    var indexColor:int = colorPikerUI.getChildIndex(MovieClip(e.target))
                   trace (indexColor)
    colorPikerUI it's a clip inside the red rectangle!
    Thanks!

  • Logic regarding EVENTS OnFilter and OnLeadSelect for table ui element

    provide me logic regarding EVENTS OnFilter and OnLeadSelect for table ui element for webdynpro abap application.

    OnLeadSelect - What kind of logic do you want?  There are many different things that you could do inthe OnLeadSelect
    onFilter- Generally you use IF_WD_TABLE_METHOD_HNDL~APPLY_FILTER  to perform the filter operation.
    In the onFilter itself you probably just have one line of code:
    wd_this->table_method_hndl->apply_filter( ).
    In your WDDOMODIFYVIEW you probably have this code to capture the table_method_hndl object:
    if first_time = abap_true.
      * Get reference of the table view element
      l_table ?= view->get_element( 'TABLE' ).
    * Get reference to the Filter & Sorting API
      wd_this->table_method_hndl ?= l_table->_method_handler.
    endif.

  • A Query regarding 'Events' published and 'Event' subscribed

    I have a query regarding 'Events' and 'EventHandling' in Java Swing.
    Swing in an EVENT based application whereby 'events' are generated
    by interacting with the components.
    Eg: Clicking on a Button generates an 'ActionEvent' and every event
    generated has an associated 'EventListener'.
    Now,my question is:
    a)When an event is generated,(let's say by clicking a button),
    an 'event' is published,right?
    That means that there is an 'Event Publisher'.
    In the above case,the Button is the 'Publisher' of the event,right?
    b) Who are the subscribers for the events generated?
    Where do we specify the 'subscibers' to the events generated?(and once
    the subscribers get the Event,the subscriber will call the methods
    of the event object)
    We just say
       addButton.addActionListener(new ButtonHandler);
       private class ButtonHandler implements ActionListener {
            public void actionPerformed(ActionEvent e){
      In the above code :
    a) Who is the Event Publisher?
    b) Who is the Event Subscriber?
    No offence meant for the question.

    The 'event publisher' for the mouse click is the ToolKit implementation (translates the OS mouse event to a Java mouse event).
    The 'event subscriber' for the mouse click on a button is typically a ButtonUI (you can add a mouse listener directly though).
    The 'event publisher' for the action event is the ButtonModel (notified by the ButtonUI when the button is unpressed, etc).
    The 'event subscriber' for the action event are the action listeners.

  • Regarding Event and Its subscription in SOA Suite11g

    Hi All,
    I am trying with some of the tutorials of SOA Suite 11g for EDN. I have a doubt regarding even handling in the following scenario:
    Events are used for 'fire and forget' scenario and is a solution that does not depend on the underlying messaging technology. I have a composite subscribed to
    an event, assume that for some reason the composite is not available when the event is raised. Then
    - What will happen to the raised event? Will it be lost or will the event stored in any queue? If its stored, where this will be stored?
    - And how should i take care of this composite unavailability scenario? As my requirement is doing set of activities when the event is raised, if the composite is unavailable for some
    reason then the raised event will not be handled then its an issue with functional flow.
    Please let me know about this.
    Thanks
    Siva

    I was trying the same scenario, raising the event from UI but no subscribed composite exists. When i see the EDN log it was shown like below.
    NewCustomer is the event and has payload of CustomerId. The log shows the entries for both enqueuing the event and Dequeued event.
    Seems to be event will not be stored if no subscribers exist or may be any other settings required. Not sure though, any insights?
    Enqueing event: /oracle/apps/examples/model/entity/events/edl/CustomerEO::NewCustomer from R
    Body: <business-event xmlns:ns="/oracle/apps/examples/model/entity/events/edl/CustomerEO" xmlns="http://oracle.com/fabric/businessEvent">
    <name>ns:NewCustomer</name>
    <id>64232479-0501-4989-8be2-42930a96a1e4</id>
    <content>
    <NewCustomerInfo xmlns="/oracle/apps/examples/model/entity/events/schema/CustomerEO">
    <CustomerId>
    <newValue value="2345"/>
    </CustomerId>
    </NewCustomerInfo>
    </content>
    </business-event>
    Subject name:
    Enqueing complete
    Starting EDN Agent for Event from Queue
    Dequeued event: /oracle/apps/examples/model/entity/events/edl/CustomerEO::NewCustomer
    Subject name:
    Body: <business-event xmlns:ns="/oracle/apps/examples/model/entity/events/edl/CustomerEO" xmlns="http://oracle.com/fabric/businessEvent">
    <name>ns:NewCustomer</name>
    <id>64232479-0501-4989-8be2-42930a96a1e4</id>
    <content>
    <NewCustomerInfo xmlns="/oracle/apps/examples/model/entity/events/schema/CustomerEO">
    <CustomerId>
    <newValue value="2345"/>
    </CustomerId>
    </NewCustomerInfo>
    </content>
    </business-event>

  • Regarding Business Flow of PP,PM,PS,QS Modules

    Hi,
    Can anybody tell me the Business Process<b>[Flow's]</b> of <b>PP, PM, PS, QS</b> modules in <b>SAP</b> with their respective transaction codes[TCode's] and important tables for each of them.
    Can anybody reply about the same.
    Thanks in advance.
    Thanks & Regards,
    Prasad.

    FI Financial Accounting
    designed for automated management and external reporting of general ledger, accounts receivable, accounts payable and other sub-ledger accounts with a user defined chart of accounts. As entries are made relating to sales production and payments journal entries are automatically posted. This connection means that the "books" are designed to reflect the real situation.
    The FI module has 8 sub modules:
    FI-GL
    General Ledger Accounting
    FI-LC
    Consolidation
    FI-AP
    Accounts Payable
    FI-AR
    Accounts Receivable
    FI-BL
    Bank Accounting
    FI-AA
    Asset Accounting
    FI-SL
    Special Purpose Ledger
    FI-FM
    Funds Management
    CO Controlling
    represents the company's flow of cost and revenue. It is a management instrument for organizational decisions. It too is automatically updated as events occur.
    The CO module has following sub modules:
    CO-OM
    Overhead Costing (Cost Centers, Activity Based Costing, Internal Order Costing)
    CO-PA
    Profitability Analysis
    CO-PC
    Product Cost Controlling
    for tables check out link..
    http://www.sapgenie.com/abap/tables_fi.htm
    MM Process flow:
    Process Flow
    The typical procurement cycle for a service or material consists of the following phases:
    1. Determination of Requirements
    Materials requirements are identified either in the user departments or via materials planning and control. (This can cover both MRP proper and the demand-based approach to inventory control. The regular checking of stock levels of materials defined by master records, use of the order-point method, and forecasting on the basis of past usage are important aspects of the latter.) You can enter purchase requisitions yourself, or they can be generated automatically by the materials planning and control system.
    2. Source Determination
    The Purchasing component helps you identify potential sources of supply based on past orders and existing longer-term purchase agreements. This speeds the process of creating requests for quotation (RFQs), which can be sent to vendors electronically via SAP EDI, if desired.
    3. Vendor Selection and Comparison of Quotations
    The system is capable of simulating pricing scenarios, allowing you to compare a number of different quotations. Rejection letters can be sent automatically.
    4. Purchase Order Processing
    The Purchasing system adopts information from the requisition and the quotation to help you create a purchase order. As with purchase requisitions, you can generate Pos yourself or have the system generate them automatically. Vendor scheduling agreements and contracts (in the SAP System, types of longer-term purchase agreement) are also supported.
    5. Purchase Order Follow-Up
    The system checks the reminder periods you have specified and - if necessary - automatically prints reminders or expediters at the predefined intervals. It also provides you with an up-to-date status of all purchase requisitions, quotations, and purchase orders.
    6. Goods Receiving and Inventory Management
    Goods Receiving personnel can confirm the receipt of goods simply by entering the Po number. By specifying permissible tolerances, buyers can limit over- and underdeliveries of ordered goods.
    7. Invoice Verification
    The system supports the checking and matching of invoices. The accounts payable clerk is notified of quantity and price variances because the system has access to PO and goods receipt data. This speeds the process of auditing and clearing invoices for payment.
    Common Tables used by SAP MM
    Below are few important Common Tables used in Materials Management Modules:
    EINA Purchasing Info Record- General Data
    EINE Purchasing Info Record- Purchasing Organization Data
    MAKT Material Descriptions
    MARA General Material Data
    MARC Plant Data for Material
    MARD Storage Location Data for Material
    MAST Material to BOM Link
    MBEW Material Valuation
    MKPF Header- Material Document
    MSEG Document Segment- Material
    MVER Material Consumption
    MVKE Sales Data for materials
    RKPF Document Header- Reservation
    T023 Mat. groups
    T024 Purchasing Groups
    T156 Movement Type
    T157H Help Texts for Movement Types
    MOFF Lists what views have not been created
    A501 Plant/Material
    EBAN Purchase Requisition
    EBKN Purchase Requisition Account Assignment
    EKAB Release Documentation
    EKBE History per Purchasing Document
    EKET Scheduling Agreement Schedule Lines
    EKKN Account Assignment in Purchasing Document
    EKKO Purchasing Document Header
    EKPO Purchasing Document Item
    IKPF Header- Physical Inventory Document
    ISEG Physical Inventory Document Items
    LFA1 Vendor Master (General section)
    LFB1 Vendor Master (Company Code)
    NRIV Number range intervals
    RESB Reservation/dependent requirements
    T161T Texts for Purchasing Document Types
    Tcodes:
    RFQ to Vendor - ME41
    Raising Quotation - ME47
    Comparison of Price - ME49
    Creation of PO - ME21N
    Goods Receipt - MIGO
    Invoice (Bill PAssing) - MIRO
    Goods Issue - MB1A
    Physical Inventory - MI01( Create doc)
    MI04 (Enter Count)
    MI07 (Post)
    SD FLOW..
    Main steps:
    Creation of Inquiry - VA11
    Creation of Quotation - VA21
    Creation of Sale Order - VA01
    Delivery - VL01
    Billing - VF11
    TAbles:
    6 Sales and Distribution (SD) :
    VBFA Document flow (alg.)
    VTFA Flow shipping documents
    6.1 Sales order :
    VBAK Header data
    VBAP Item data
    VBPA Partners in sales order
    VBKD Sales district data
    VBEP Data related to line items, delivery lines
    6.2 Billing document :
    VBRK header data
    VBRP Item data
    6.3 Shipping :
    VTTK Shipment header
    VTTP Shipment item
    VTTS Stage in transport
    VTSP Stage in transport per shipment item
    VTPA Shipment partners
    VEKP Handling Unit - Header Table
    VEPO Packing: Handling Unit Item (Contents)
    6.4 Delivery :
    LIKP Delivery header
    LIPS Delivery item
    6.5 Pricing :
    KONH Conditions header
    KONP Conditions items
    KONV Procedure ( billing doc or sales order)
    KOND
    6.6 contracts :
    VEDA Contract data
    Refer this link:
    http://www.sap-img.com/sap-sd.htm
    Document Flow in Sales
    The sales documents you create are individual documents but they can also form part of a chain of inter-related documents. For example, you may record a customer’s telephone inquiry in the system. The customer next requests a quotation, which you then create by referring to the inquiry. The customer later places an order on the basis of the quotation and you create a sales order with reference to the quotation. You ship the goods and bill the customer. After delivery of the goods, the customer claims credit for some damaged goods and you create a free-of-charge delivery with reference to the sales order. The entire chain of documents – the inquiry, the quotation, the sales order, the delivery, the invoice, and the subsequent delivery free of charge – creates a document flow or history. The flow of data from one document into another reduces manual activity and makes problem resolution easier. Inquiry and quotation management in the Sales Information System help you to plan and control your sales.
    Technical Details
    Inquiry - va11/va12/va13
    Quotation - Va21/va22/va23
    Sales Order - va01/va02/va03
    Delivery - vl01n/vl02n/vl03n
    Billing/Invoicing - vf01/vf02/vf03
    PP FLOW..
    SAP - Project Planning
    Project Planning
    PROJ
    (Project Definition)
    PRPS
    (WBS Elements)
    PRPS-PSPHI =
    PROJ-PSPNR
    PRTE
    (Schedule Data for
    Proj. Item)
    PRPS-PSPNR =
    PRTE-POSNR
    and
    PRPS-PSPHI=
    PRTE-PSPHI
    PRTX
    (Texts(WBS))
    PRTX-PRPSPNR =
    PRTE-POSNR
    PRHIS
    (Proj. Hierarchy for
    WBS Element)
    PRPS-PSPNR =
    PRHIS-POSNR
    and
    PRPS-PSPHI=
    PRHIS-PSPHI
    PSTX
    (Project Texts
    (Header))
    PSTT
    (Project Texts)
    PRTX-PRTXTKY =
    PSTX-PRTXTKY
    PSTX-PRTXTKY =
    PSTT-PRTXTKY
    PP
    Table Mapping
    SAP PP - Project Planning
    PROJECTS
    Project and WBS element numbers have a domain with a conversion
    function module which converts it from 8 numc input to 24 char on output.
    PROJ
    (Project definition)
    Project Number (PSPNR)
    Project Name (PSPID)
    PRPS
    (WBS (Work Breakdown Structure)
    Element Master Data))
    Project Number (PSPHI)
    WBS Element Number (PSPNR)
    WBS Name (POSID)
    Project Number (PSPHI)
    WBS Element Number (POSNR)
    PRTE
    (Scheduling Data for Project Item)
    PRTX
    (PS Texts (WBS)
    Project Number (PSPHI)
    WBS Element Number (POSNR) PSTX
    (PS Texts (Header))
    Text Identifier (PRTXTKY)
    PS text description (PSTXTTI)
    WBS Element Number (PRPSPNR)
    Text Identifier (PRTXTKY)
    PRHIS
    (Standard WBS, Edges (Hierarchy
    pointers))
    PSTT
    (PS texts (description))
    Text Identifier (PRTXTKY)
    PS text: Description(PTKTEXT)
    Message was edited by: kishan negi

  • Regarding event & command in smartforms

    i have an assignment like this,i need to develop an smartforms in which
    employees details will come page wise means for first employee the details will come
    in the first page for second employee the details will come in the second page
    like this i need the outptut ,here i need to use templates plz let me know how will
    i proceed in smartforms as well as in the driver programs....
    if possible plz send ur codes as i m new to smartforms.
    FOR THIS i already post the maater and got this answer,
    write the driver program in se38 ......with taking an internal table with the details of all
    employees for your selection.......
    in the driver program itself call ssf_function_module ........and pass the internl atable to
    this FM .......sort the table by employee number
    now create a smartform ......with one page...desgin the page as per your requirement.....
    in the mail window create a loop (assgin the tAable ....to it which has been passed from driver program....)
    inside the loop create at new (down you will see ) and put the employee number field.....
    next inside the loop create a command ...and put a new page(call) ...
    new page will trigger automatically for each employeee.
    and i did as per the answer but i m not getting here in my smartforms i m using
    table under this i have sorted pernr in the data tab and under this event i m
    putting command in this command i m using go to new page,as per this scenario
    i m getting my output but one blank page is also coming in the output ,
    how to remove this page plz help me i also tried in the condition not on first page but it is not coming.
    plz help me

    Hi,
    Uncheck the goto new page command and put the condition pernr not equal to prevevious pernr in the conditions tab of the new command.
    This can be done as follows.
    with in loop and endloop at the end of the loop create text node(cretae a var called W_prev_pernr and then w_prev_pernr = itab-pernr.) which stores the current pernr.at in the conditions tab of the new command(Create>Flow Logic>Command) put the condition like : pernr NE w_prev_pernr.
    Hope this helps you.
    Regards,
    Rama.P.

  • Regarding Event Appraisal Functionality in Training and event management

    Hi TEM gurus,
    Client requirement is that an employee can give feedback for faculty daily. Suppose there is an event for 30 days and there are 5 instructors for this event. Now employee has to give feedback for all the instructor and day wise. 
    Is it possible for an employee to give feedback daily and for different instructors in training and event management ?  How we can track the feedback given by the employee for different instructors day wise ?
    I have given value as "A" in switch HAPP00 REPLA in T77S0 table. We have created different templates through OOAM.
    While doing appraisal also i have to select employee individually and give event name again. Is there any way by which system can select all employees an event ID ?
    kindly help me as ealry as possible.
    Thanks and Best Regards
    Puneet

    Hello Puneet,
    Regarding your query on appraisal for every day of the business event, I am not sure if that's possible as it's the business event appraisal we are talking of here..and not the day. But I think individiual instructor appraisal should not be a problem.
    Hope this helps.
    Best Regards.
    Karan.

  • Regarding events in reports

    Hi guys,
    i got a doubt in reports on events
    how many events are there in reports.....
    and what's the function of them...can any one help me plzzzz
    regards
    venu

    hi,
    events:
    http://www.sap-img.com/abap/events-related-to-reporting.htm
    Events in Classical Reports
    Initialization.
    At selection-screen.
    At selection-screen on <field>.
    Start-of-selection.
    Top-of-page.
    End-of-page.
    End-of-selection.
    Initialization.
    We can initialize the selection-screen with calculated default values under this event.
    Initialization.
    s_date-high = sy-datum.
    s_date-low = sy-datum - 15.
    Append s_date.
    At selection-screen.
    We can validate all the inputs on selection screen fields under this event.
    At selection-screen.
    If s_carrid-low is initial or s_connid-low is initial or s_date is initial.
    < ... code for validation... >.
    Endif.
    At selection-screen on <field>.
    We can validate a particular field input on selection screen under this event.
    At selection-screen on s_carrid.
    If s_carrid-low < > &#37521;H&#12539;
    <&#12539;code for validation&#12539;
    Endif.
    Start-of-selection.
    By default the program is under this event.
    If any of the other event comes before
    &#20840;elect&#12539;ndselect.&#12539;statements, then to break
    that event, we require this S-O-S event.
    Start-of-selection.
    Select * from &#12539;
    &#12539;&#12539;
    Endselect.
    Top-of-page.
    If we need some portion of the output (like
    column headings) to appear in all the pages,
    then we use this event.
    Top-of-page.
    Write:/ &#33307;arrier&#12539;10 &#33307;onnection&#12539;20 &#33337;ate&#12539;
    If there is no external output statement before
    &#31109;op-of-page&#12539;event, then this event will not
    work.
    End-of-page.
    Once the cursor reaches the last line of the
    page, automatically this event will be triggered.
    Report Zxxx line-count 25(3).
    In this case line numbers 23, 24 and 25 are
    reserved for footer.
    Once the cursor reaches 23rd line, this event
    will be triggered.
    End-of-page.
    Write:/ sy-uline(75).
    Write:/ &#31109;his is end of page:&#12539;sy-pagno.
    Write:/ sy-uline(75).
    End-of-selection.
    This event is used for concluding part of List.
    End-of-selection.
    Write:/ &#31109;his is end of the Report&#12539;
    Additional events in interactive reports
    The following additional events are applicable to secondary lists.
    Top-of-page during line-selection.
    At line-selection.
    At user-command.
    These additional events are triggered when u perform some action on the basic lists.
    example:
    REPORT zwk22671 LINE-COUNT 40(3)
    LINE-SIZE 200
    NO STANDARD PAGE HEADING.
    TABLES : mkpf , "MATERIAL DOCUMENT
    mseg , "DOCUMENT SEGMENT : MATERIAL
    t156t , "MOVEMENT TYPE TEXT
    makt. "MATERIAL DESCRIPTIONS
    *STRUCTURE OF INTERNAL TABLES
    DATA : BEGIN OF xtab,
    mblnr TYPE mkpf-mblnr , "DOCUMENT NUMBER
    mjahr TYPE mkpf-mjahr , "YEAR
    budat TYPE mkpf-budat , "POST DATE
    blart TYPE mkpf-blart , "DOCUMENT TYPE
    END OF xtab.
    DATA : BEGIN OF ytab,
    mblnr TYPE mseg-mblnr , "DOCUMENT NUMBER
    mjahr TYPE mseg-mjahr , "YEAR
    zeile TYPE mseg-zeile , "ITEM NUMBER
    bwart TYPE mseg-bwart , "MOVEMENT TYPE
    btext TYPE t156t-btext , "MOVEMENT DESCRIPTION
    matnr TYPE mseg-matnr , "MATERIAL NUMBER
    maktx TYPE makt-maktx , "MATERIAL DESCRIPTION
    meins TYPE mseg-meins , "UNIT OF MEASURE
    menge TYPE mseg-menge , "QUANTITY
    dmbtr TYPE mseg-dmbtr , "AMOUNT
    END OF ytab.
    *INTERNAL TABLE DECLARATION
    DATA : i_tab1 LIKE STANDARD TABLE OF xtab WITH HEADER LINE. "INTERNAL TABLE 1 : CONTAINS MATERIAL DETAILS
    DATA : i_tab2 LIKE STANDARD TABLE OF ytab WITH HEADER LINE. "INTERNAL TABLE 2 : CONTAINS ITEMWISE MATERIAL DETAILS
    *VARIABLES
    DATA : v_color TYPE sy-tabix , "FOR SETTING COLOR FORMATS DURING GENERATING REPORT
    v_field(20) , "FOR STORING THE CLICKED FIELD NAME
    v_value(20) , "FOR STORING THE CLICKED FIELD VALUE
    v_mblnr TYPE mkpf-mblnr , "FOR VALIDATING DOCUMENT NUMBER
    v_mjahr TYPE mkpf-mjahr , "FOR VALIDATING DOCUMENT YEAR
    v_bwart TYPE mseg-bwart , "FOR VALIDATING MOVEMENT TYPE
    v_matnr TYPE mseg-matnr . "FOR VALIDATING MATERIAL NUMBER
    **SELECTION-SCREEN
    SELECTION-SCREEN : BEGIN OF BLOCK blk1 WITH FRAME TITLE text-001.
    SELECT-OPTIONS : s_mblnr FOR mkpf-mblnr , "DOCUMENT NUMBER
    s_mjahr FOR mkpf-mjahr OBLIGATORY, "DOCUMENT YEAR
    s_bwart FOR mseg-bwart NO INTERVALS NO-EXTENSION, "MOVEMENT TYPE
    s_matnr FOR mseg-matnr . "MATERIAL NUMBER
    SELECTION-SCREEN : END OF BLOCK blk1.
    AT SELECTION-SCREEN
    AT SELECTION-SCREEN.
    PERFORM validation. "PERFORMS VALIDATION OF SELECTION-SCREEN FIELDS
    *TOP-OF-PAGE
    TOP-OF-PAGE.
    PERFORM header. "CREATES HEADER FOR THE BASIC LIST
    *END-OF-PAGE
    END-OF-PAGE. "CREATES FOOTER FOR THE BASIC AND SECONDARY LIST
    PERFORM footer.
    *START-OF-SELECTION
    START-OF-SELECTION.
    PERFORM generation_basic. "GENERATES REPORT FOR BASIC LIST WHICH CONTAINS DOCUMENT NO , DOCUMENT YEAR
    "POST DATE , DOCUMENT TYPE.
    *END-OF-SELECTION
    END-OF-SELECTION.
    PERFORM report_basic. "DISPLAY REPORT FOR BASIC LIST
    *AT LINE-SELECTION
    AT LINE-SELECTION.
    PERFORM generation_secondary. "GENERATES REPORT FOR SECONDARY LIST BASED ON THE DOCUMENT NUMBER AND DOCUMENT YEAR
    "WHICH CONTAINS DOCUMENT NO , YEAR , ITEM NO , MOVEMENT TYPE , MOVEMENT DESCRIPTION ,
    "MATERIAL NUMBER , MATERIAL DESC , UNIT OF MEASURE , QUANTITY AND AMOUNT
    *TOP-OF-PAGE DURING LINE-SELECTION
    TOP-OF-PAGE DURING LINE-SELECTION.
    PERFORM header_secondary. "CREATES HEADER FOR THE SECONDARY LIST
    *AT USER-COMMAND
    AT USER-COMMAND.
    PERFORM user_secondary. "SUBROUTINE FOR HANDLING USER EVENTS
    FORM validation .
    *VALIDATING MATERIAL DOCUMENT NUMBER
    SELECT SINGLE mblnr
    INTO v_mblnr
    FROM mkpf
    WHERE mblnr IN s_mblnr.
    IF sy-subrc NE 0.
    MESSAGE 'ENTER CORRECT DOCUMENT NUMBER' TYPE 'E'.
    ENDIF.
    *VALIDATING MATERIAL DOCUMENT YEAR
    SELECT SINGLE mjahr
    INTO v_mjahr
    FROM mkpf
    WHERE mjahr IN s_mjahr.
    IF sy-subrc NE 0.
    MESSAGE 'ENTER CORRECT MATERIAL DOCUMENT YEAR' TYPE 'E'.
    ENDIF.
    *VALIDATING MOVEMENT TYPE
    SELECT SINGLE bwart
    INTO v_bwart
    FROM mseg
    WHERE bwart IN s_bwart.
    IF sy-subrc NE 0.
    MESSAGE 'ENTER CORRECT MOVEMENT TYPE' TYPE 'E'.
    ENDIF.
    *VALIDATING MATERIAL NUMBER
    SELECT SINGLE matnr
    INTO v_matnr
    FROM mseg
    WHERE matnr IN s_matnr.
    IF sy-subrc NE 0.
    MESSAGE 'ENTER CORRECT MATERIAL NUMBER' TYPE 'E'.
    ENDIF.
    ENDFORM. " VALIDATION
    FORM header .
    WRITE :/30 'MATERIAL DOCUMENTS' COLOR 1. "TITLE OF BASIC LIST
    WRITE :/1(89) sy-uline.
    FORMAT COLOR 1.
    WRITE :/1 sy-vline ,
    3 'DOCUMENT NUMBER' ,
    23 sy-vline ,
    25 'YEAR' ,
    45 sy-vline ,
    47 'POST DATE' ,
    67 sy-vline ,
    69 'DOCTYP' ,
    89 sy-vline .
    FORMAT RESET.
    WRITE :/1(89) sy-uline.
    ENDFORM. " HEADER
    FORM footer .
    IF sy-lsind EQ 0. "CHECKS WHICH LIST IS IT BASIC LIST OR SECONDARY (AND NO. OF SECONDARY LIST)
    WRITE :/1(89) sy-uline.
    ELSEIF sy-lsind EQ 1.
    WRITE :/1(192) sy-uline.
    ENDIF.
    ENDFORM. " FOOTER
    FORM generation_basic .
    SELECT mkpf~mblnr "DOCUMENT NUMBER
    mkpf~mjahr "DOCUMENT YEAR
    mkpf~budat "POST DATE
    mkpf~blart "DOCUMENT TYPE
    INTO TABLE i_tab1
    FROM mkpf INNER JOIN mseg ON mkpfmjahr EQ msegmjahr AND
    mkpfmblnr EQ msegmblnr
    WHERE mkpf~mblnr IN s_mblnr
    AND mkpf~mjahr IN s_mjahr
    AND mseg~bwart IN s_bwart
    AND mseg~matnr IN s_matnr.
    IF sy-subrc NE 0.
    WRITE :/ 'MATERIAL DATA NOT FOUND'.
    ENDIF.
    DELETE ADJACENT DUPLICATES FROM i_tab1 COMPARING mblnr mjahr.
    ENDFORM. " GENERATION_BASIC
    FORM report_basic .
    LOOP AT i_tab1.
    v_color = sy-tabix MOD 2.
    IF v_color EQ 0.
    FORMAT COLOR 1 INTENSIFIED OFF.
    ELSE.
    FORMAT COLOR 2 INTENSIFIED OFF.
    ENDIF.
    WRITE :/1 sy-vline ,
    3 i_tab1-mblnr ,
    23 sy-vline ,
    25 i_tab1-mjahr ,
    45 sy-vline ,
    47 i_tab1-budat ,
    67 sy-vline ,
    69 i_tab1-blart ,
    89 sy-vline .
    HIDE : i_tab1-mblnr , i_tab1-mjahr. "STORING THE VALUE OF FIELDS CLICKED IN SYSTEM AREA
    ENDLOOP.
    FORMAT RESET.
    WRITE :/1(89) sy-uline.
    ENDFORM. " REPORT_BASIC
    FORM generation_secondary .
    IF sy-lsind EQ 1.
    SET PF-STATUS 'DISPLAY'.
    GET CURSOR FIELD v_field VALUE v_value. "GET THE FIELD VALUE AND NAME WHERE THE CURSOR WAS CLICKED
    CASE v_field.
    WHEN 'I_TAB1-MBLNR'. "DISPLAYS SECONDARY LIST ONLY IF DOCUMENT NUMBER IS CLICKED
    SELECT mseg~mblnr "DOCUMENT NUMBER
    mseg~mjahr "DOCUMENT YEAR
    mseg~zeile "ITEM NUMBER
    mseg~bwart "MOVEMENT TYPE
    t156t~btext "MOVEMENT DESCRIPTION
    mseg~matnr "MATERIAL NUMBER
    makt~maktx "MATERIAL DESCRIPTION
    mseg~meins "UNIT OF MEASURE
    mseg~menge "QUANTITY
    mseg~dmbtr "AMOUNT
    INTO TABLE i_tab2
    FROM ( ( mseg INNER JOIN t156t
    ON msegbwart EQ t156tbwart )
    INNER JOIN makt
    ON msegmatnr EQ maktmatnr )
    WHERE mseg~mblnr EQ i_tab1-mblnr
    AND mseg~mjahr EQ i_tab1-mjahr
    AND t156t~spras EQ sy-langu
    AND makt~spras EQ sy-langu.
    DELETE ADJACENT DUPLICATES FROM i_tab2 COMPARING mblnr mjahr.
    WHEN OTHERS.
    MESSAGE 'SELECT DOCUMENT NUMBER' TYPE 'E'.
    ENDCASE.
    LOOP AT i_tab2.
    v_color = sy-tabix MOD 2.
    IF v_color EQ 0.
    FORMAT COLOR 1 INTENSIFIED OFF.
    ELSE.
    FORMAT COLOR 2 INTENSIFIED OFF.
    ENDIF.
    WRITE :/1 sy-vline ,
    3 i_tab2-mblnr ,
    12 sy-vline ,
    14 i_tab2-mjahr ,
    19 sy-vline ,
    21 i_tab2-zeile ,
    30 sy-vline ,
    32 i_tab2-bwart ,
    40 sy-vline ,
    42 i_tab2-btext ,
    72 sy-vline ,
    74 i_tab2-matnr ,
    94 sy-vline ,
    96 i_tab2-maktx ,
    146 sy-vline ,
    148 i_tab2-meins ,
    153 sy-vline ,
    155 i_tab2-menge ,
    170 sy-vline ,
    172 i_tab2-dmbtr ,
    192 sy-vline .
    ENDLOOP.
    WRITE :/1(192) sy-uline.
    FORMAT RESET.
    ELSEIF sy-lsind EQ 2.
    GET CURSOR FIELD v_field VALUE v_value. "GET THE FIELD VALUE AND NAME WHERE THE CURSOR WAS CLICKED
    CASE v_field.
    WHEN 'I_TAB2-MBLNR'. "DISPLAYS SECONDARY LIST ONLY IF DOCUMENT NUMBER IS CLICKED
    SET PARAMETER ID : "SETTING PARAMETER ID FOR DOCUMENT NUMBER AND YEAR.
    'MBN' FIELD i_tab2-mblnr ,
    'MJA' FIELD i_tab2-mjahr.
    CALL TRANSACTION 'MB03' AND SKIP FIRST SCREEN. "CALLING TRABSACTION CODE 'MBO3'.
    WHEN OTHERS.
    MESSAGE 'SELECT DOCUMENT NUMBER' TYPE 'E'.
    ENDCASE.
    ENDIF.
    ENDFORM. " GENERATION_SECONDARY
    FORM header_secondary .
    WRITE :/50 'ITEMWISE MATERIAL DOCUMENTS' COLOR 1.
    WRITE :/1(192) sy-uline.
    FORMAT COLOR 1.
    WRITE :/1 sy-vline ,
    3 'DOCUMENT NO' ,
    12 sy-vline ,
    14 'YEAR' ,
    19 sy-vline ,
    21 'ITEM NO.' ,
    30 sy-vline ,
    32 'MOV TYP' ,
    40 sy-vline ,
    42 'MOV DESCRIPTION' ,
    72 sy-vline ,
    74 'MATERIAL NO' ,
    94 sy-vline ,
    96 'MATERIAL DESCRIPTION' ,
    146 sy-vline ,
    148 'UOM' ,
    153 sy-vline ,
    155 'QUANTITY' ,
    170 sy-vline ,
    172 'AMOUNT' ,
    192 sy-vline .
    WRITE :/1(192) sy-uline.
    FORMAT RESET.
    ENDFORM. " HEADER_SECONDARY
    *FORM user_secondary .
    IF sy-ucomm EQ 'DISPLAY'. "EXECUTES ONLY IF 'DISPLAY DOCUMENTS' ITEM IS CLICKED ON APPLICATION TOOL BAR.
    IF sy-lsind EQ 2.
    GET CURSOR FIELD v_field VALUE v_value. "GET THE FIELD VALUE AND NAME WHERE THE CURSOR WAS CLICKED
    CASE v_field.
    WHEN 'I_TAB2-MBLNR'. "DISPLAYS SECONDARY LIST ONLY IF DOCUMENT NUMBER IS CLICKED
    SET PARAMETER ID :
    'MBN' FIELD i_tab2-mblnr ,
    'MJA' FIELD i_tab2-mjahr.
    CALL TRANSACTION 'MB03' AND SKIP FIRST SCREEN.
    WHEN OTHERS.
    MESSAGE 'SELECT DOCUMENT NUMBER' TYPE 'E'.
    ENDCASE.
    ENDIF.
    LEAVE PROGRAM.
    ENDIF.
    ENDFORM. " USER_SECONDARY

  • Regarding work flows

    hi can any one tell me what is workflow? where is it used ? how a workflow is created in SAP XI

    Work Flow
    Unit 1: Organizational Structure
    Use
    In order for the workflow system to establish the relationship between the requester and their superior, you must create an organizational plan in the system.
    For this tutorial, of course, this organizational plan does not have to be complete and valid across the enterprise. To keep the test as simple as possible initially, define an organizational plan that only contains one administrator and one head of department.
    Assign both items to yourself. As a result, all work items will appear in your own Business Workplace. Later you will modify the organizational plan such that you will have to work through the scenario with two users.
    Procedure
    The organizational plan required for this tutorial consists, when complete, of one organizational unit (= "department"), which contains two positions: a head of department and an administrator.
    Each position is described by one job and each position is assigned one user as holder. The head of department position is also designated as chief position of the organizational unit.
    Of course, a "real" organizational plan is created by arranging several organizational units with their positions in a hierarchy. Usually several positions are described by one job.
    For further information, refer to the documentation  Organizational Plan.
    The procedure in this unit is divided into four parts:
    1.     You create an organizational unit.
    2.     Enter necessary jobs as required.
    3.     You create a position for the head of department in the new organizational unit.
    You define a position in three steps:
    i.     You create a position that is assigned your organizational unit.
    ii.     You assign a holder to the position.
    iii.     You assign a job to the position.
    3.     You create a position for the administrator in the organizational unit.
    Creating an organizational unit
    1.     Choose Tools &#61614; SAP Business Workflow &#61614; Development &#61614;&#61472;Definition tools &#61614; Organizational Management &#61614; Organizational plan &#61614; Create (T.Code: PPOCW).
    2.     Confirm the validity period proposed in the dialog box Creating a Root Organizational Unit.
    This takes you to the Create Organization and Staffing (Workflow) screen. This user interface is divided into four screen areas:
    3.     On the Basic Data tab in the details area, enter an abbreviation and a name in the Organizational unit input fields.
    Abbreviation: <ini_sales>
    Name: <OrgUnit: Sales (ini)>
    4.     Choose  .
    You can now create the position for a head of department and one administrator.
    Create jobs
    When enhancing an organizational unit, the necessary jobs are usually already available. For this tutorial however, you create the necessary jobs for head of department and administrator yourself.
    1.     Choose Edit &#61614; Create jobs.
    You go to the dialog box Create jobs. The lower area contains a list of existing jobs and the upper area contains an input table in which you can create new jobs by entering abbreviations and names.
    2.     In the input table, enter an abbreviation and a name for each of the new jobs.
    Job - head of department:
    Object abbreviation: < ini_dhead_C >
    Name: < job: head of department (ini) >
    Job administrator:
    Object abbreviation: < ini_admi_C >
    Name: < job: administrator (ini) >
    3.     Choose  .
    Creating Position for Head of Department
    1.     Change to the overview area in the staff assignments of the organizational unit, in order to assign positions, jobs and holders. Choose the arrow  on the right next to the  and then the staff assignments (list).
    2.     Choose  .
    A new position is then created in the staff assignments and is displayed in a new line in the table. The position is vacant and no job is assigned to it.
    3.     Open the details view for the new position in the details area by double-clicking on the entry in the table.
    4.     On the Basic Data tab, enter a code and a description in the Position input fields. Overwrite the previous contents.
    Abbreviation: < ini_dhead_S >
    Description: < position: head of department ( ini ) >
    Assigning a holder to the position
    You now assign R/3 users to the positions. The staff assignments for your organizational unit are displayed and you see the vacant position in the table.
    5.     Select User in the search area and enter the search criteria in order to find your user names.
    All of the user names that match your search criterion are listed in the selection screen.
    6.     Select your user name in the selection area and drag it to the Person/User column of the position in the overview area.
    Confirm the message that the relationship period of the validity has been changed.
    7.     Set the Head of own organizational unit indicator in the details area.
    Assigning a job to the position
    Assign the job of the head of department you created earlier to the position.
    8.     Select Job in the search area and enter the search criteria in order to find the job of the head of department.
    All jobs that match your search criterion are listed in the selection screen.
    9.     Select job: head of department ( ini) in the selection area and drag it to the Job column of the position in the overview area.
    10.     Choose  .
    The job is assigned the position. Check this by switching to the staff assignments of the organizational unit. Select the organizational unit in the overview area, choose the arrow  on the right next to the  and then the staff assignments (list). The newly created job is displayed in the job column.
    Create position for administrator and assign holder and job
    You are now in the staff assignments of the organizational unit.
    1.     Choose  .
    A new position is then created in the staff assignments and is displayed in a new line in the table. The position is vacant and no job is assigned to it.
    2.     On the Basic Data tab in the details area, enter an abbreviation and a name in the Position input fields. Overwrite the previous contents.
    ID: <ini admiS >
    Description: < position: administrator ( ini ) >
    3.     Choose  .
    4.     Select User in the search area and enter the search criteria in order to find your user names.
    5.     Select your user name in the selection area and drag it to the Person/User column of the position in the overview area.
    Confirm the message that the relationship period of the validity has been changed.
    6.     Select Job in the search area and enter the search criteria in order to find the job of the administrator.
    7.     Select job: administrator ( ini) in the selection area and drag it to the Job column of the position in the overview area.
    8.     Choose  .
    Result
    Display your entire staffing schedule again and make sure that all the information listed is correct.
    You can display a detailed view of jobs, users, and positions. Choose the relevant cell in the table by double-clicking it.
    In the details view of a position or job, all of the assigned tasks are displayed on the Tasks tab.
    You have now completed the first unit (defining the organizational plan). You can now start on the next unit. To exit processing of the organizational structure, choose Back.
    Unit 2: Creating a Workflow
    Use
    To define the flow of the approval process in the system, you first create a multistep task workflow template.
    For further information, refer to Definition of Multistep Tasks in the SAP Business Workflow documentation.
    Procedure: Creating a workflow template
    1.     Choose Tools &#61614; Business Workflow &#61614; Development &#61614;&#61472;Definition Tools &#61614; Tasks/Task Groups &#61614; Create (T.Code PFTC_INS)
    This takes you to the Task: Maintain screen.
    2.     In the Task type field, choose the Workflow template entry.
    3.     Choose  .
    The Workflow Template: Add screen is then displayed.
    Entering the basic data for the workflow template
    1.     Enter an abbreviation (of your choice) and a name (of your choice) for the workflow template to be created.
    Abbreviation: < ini _ws>
    Name: <Workflow: notification of absence ( ini )>
    2.     Choose  .
    3.     In the Create Object Directory Entry dialog box, choose Local object.
    The system has now allocated an 8-digit number for your workflow template. This number is made up of the 3-digit prefix number (Customizing setting) and a 5-digit number taken from a number range. This number together with the letters WS forms the workflow ID. Make a note of the ID so that you can later call the workflow more quickly.
    Entering a workflow description
    4.     Go to the Description tab.
    5.     Choose the text type Task description and then  .
    The SAPscript text editor is then launched.
    6.     Enter a text that describes the task. You can use the following proposal:
    <You can use this workflow to create a notification of absence. This will then be sent to your superior for review. You will be notified of the result of this review.
    If your request is rejected, you can revise it and resubmit it for review or withdraw it completely.>
    7.     Choose  to return to the workflow template and then save the workflow template.
    Determining agents
    To enable the workflow template to be started in dialog, the workflow template must be assigned to its possible agents.
    8.     Select Additional data &#61614;&#61472;Agent assignment &#61614; Maintain
    The workflow template: agent assignment screen is displayed.
    9.     Position the cursor on the name of your workflow template.
    10.     Choose Properties…
    The dialog box Task: <Workflow: Notification of absence (ini)> is displayed.
    11.     Set the General task flag.
    12.     Choose  Copy and then  .
    Designating your workflow template as a general task means that every user in the system is authorized to start this workflow template in dialog.
    Result
    You have now created a workflow template as a "framework" for a workflow definition.
    To create a workflow definition, you need tasks that are used as steps in the workflow definition.
    Additional information: Tasks
    A task can either be a single-step task or a multistep task. In our example of the notification of absence, making the application and checking the application are single-step tasks. The entire procedure involved in processing a leave request consists of these (and other) single steps, and is therefore a multistep task.
    In this tutorial, a single step task is generally described as a task. The difference between the task types is only explicitly explained if there is a risk of confusion over multistep tasks. The term workflow is used as the umbrella term for the workflow template (and thus the multistep task) and the workflow definition. More precise differentiation only takes place if there is a risk of confusion.
    On a technical level, the main difference between single-step tasks and multistep tasks is that:
    •     Every single-step task refers to an object method
    •     Every multistep task refers to a workflow definition
    A workflow definition is made up of a sequence of different steps (for example, all steps required to process a leave request).
    Standard tasks and workflow templates are client-independent. Customer and workflow tasks are client-dependent. Customer and workflow tasks are no longer supported and are therefore no longer used in this tutorial.
    An Activity is a possible step type in a workflow definition. An activity refers to a task. It references a task, which can be a single-step or multistep task (subworkflow).
    For further information, refer to Tasks and Task Groups in the SAP Business Workflow documentation.
    Unit 4: Defining and Inserting Task "Create Notification of Absence"
    Use
    The notification of absence is created in the first step of the workflow. You will also need a task that executes this function. You can create the task separately from the workflow definition or directly from the Workflow Builder. This unit describes how you create the task from the Workflow Builder.
    For further information on creating an individual task, refer to Definition of Single-Step Tasks in the SAP Business Workflow documentation.
    Prerequisites
    This task is a single-step task and it references one object method. The object type used (FORMABSENC (notification of absence)) and the required method (Create) are already defined and implemented in the Business Object Repository.
    You are in the Workflow Builder and the initial workflow definition is displayed.
    Procedure
    Creating an Activity as a Step in the Workflow Definition
    Add a first step of the type Activity to the workflow definition.
    1.     Choose  under step type. The cursor changes shape.
    2.     Position the cursor on the Undefined step and click.
    By doing so, you add an activity to your workflow definition. The step definition is shown in the right-hand part of the screen. You are on the tab page Control.
    Defining a Task "Create Notification of Absence"
    You now create a new task, with which a notification of absence can be created.
    1.     Choose the arrow  on the right next to the  and then Create task.
    The Basic data tab in the Standard task: Create screen is then displayed.
    Entering the basic data
    2.     Enter an abbreviation (of your choice) and a name (of your choice) for the standard task to be created.
    Abbreviation: < ini _creat>
    Name :<Create notification of absence (ini)>
    Work item text
    The work item text appears as an information text in the Business Workplace as soon as there is a work item for the step with this task.
    3.     Enter Create notification of absence in the Work item text field.
    Object type and method
    4.     Enter an object type and a method:
    Object type: FORMABSENC
    Method: CREATE
    You can also use the F4 input help to select the method. Additional indicators associated with this method are set automatically.
    You can view the definition of the object type entered by double-clicking on it. Information about its components is provided.
    5.     Save your task as a local object.
    The system has now allocated an 8-digit number for your task. This number is made up of the 3-digit prefix number (Customizing setting) and a 5-digit number taken from a number range. The identification of this task consists of TS and the eight digit number.
    Determining agents
    Selecting the possible agents for this task determines who is to be authorized to make leave requests. For this task, this should be all employees in your enterprise. Define the task as a general task.
    1.     Select Additional data &#61614;&#61472;Agent assignment &#61614; Maintain
    This takes you to the Standard task: Maintain Agent Assignment screen.
    2.     Position the cursor on the name of your task.
    3.     Choose Properties…
    The dialog box Task: <Notification of absence (ini)> is displayed.
    4.     Set the General task indicator.
    5.     Choose  Copy and then  .
    6.     Exit the task definition with  .
    Interim result
    You have now defined your first task in full. This task is used in the activity that you created in the Workflow Builder.
    Completing Activity
    The Define Container Elements and Binding dialog box is then displayed in which the system proposes a change to the workflow container and a binding definition.
    •     Upper part of the dialog box: Proposal for new container elements in the workflow container.
    The system proposes that you create a local container element in the workflow container, which can store the reference to the notification of absence created in this step. The element has the technical name AbsenceForm .
    •     Lower part of dialog box: Proposed binding definition
    The system proposes that you define a binding from the task container to the workflow container. This binding transports the reference to the generated object (i.e. the created notification of absence) from the task (from the WIObject_ID element in the task container) to the workflow (to the AbsenceForm element in the workflow container).
    Further information on automatic binding definition proposals is available under Binding Definitions from the Workflow Container and Binding Definitions from the Task Container in the documentation on SAP Business Workflow.
    1.     Confirm the proposal with  .
    The new AbsenceForm container element is displayed in the workflow container. Local container elements are marked  . The remaining elements in the workflow container are workflow system elements. For further information, please refer to Workflow System Elements in the Workflow Container.
    2.     Enter a text to describe the step.
    You can, of course, leave the description of the task that is proposed by the system.
    (The current step in your workflow definition appears here.)
    3.     Go to the Outcomes tab.
    All of the outcomes for this step are displayed here.
    4.     Enter a text for the description.
    The description (proposal: < Application filled out> ) in the Task executed synchronously line.
    Each step has at least one subsequent event (in this case: Task executed synchronously). The description is the text with which the outcome is labeled in the workflow definition.
    The Form does not exist and Form could not be generated outcomes are the possible exceptions that could occur in the method execution. You "run the risk" of not intercepting these exceptions and not modeling any exception handling in your workflow definition. If one of the exceptions actually occurs at runtime, the workflow will assume the error status.
    Checking the binding definition (optional)
    1.     Go to the Control tab.
    2.     Choose  Binding (present).
    The WF Builder: Binding for Step ‘<Create notification of absence>’ dialog box is then displayed.
    o     In the upper part of the screen, the binding defined from the workflow container to the task container is displayed. The system executes this binding before providing the task for execution.
    This binding direction is not relevant for this step since no information is to be transported from the workflow to the task.
    o     In the lower part of the screen, the binding defined from the task container to the workflow container is displayed. This system executes this binding after the user has processed the task.
    Here, the binding is WIObjectId.  &ABSENCEFORM& has been automatically defined here by the system. This binding ensures that the reference to the notification of absence created is not only known in the single-step task, but also in the workflow.
    You can view the contents of both containers by choosing Workflow container or Task container.
    (The element of the task container WIObject_ID is called Notif. of absence .)
    3.     Choose  .
    You then return to the step definition.
    Entering the agents responsible
    On the tab page Control, choose the entry Workflow initiator (expression) in the area agent as the agent responsible.
    The system enters the expression &_WF_INITIATOR& in the Expression field and in the input field beside the checkbox.
    You start your executable workflow later manually. At this point in time, the system fills the workflow container element WFInitiator automatically with your user name.
    The above assignment informs the workflow system that the first work item for creating the notification of absence should be addressed as the "starter" as the workflow.
    You return to the screen Workflow definition: Create step: Activity
    Concluding step definition
    1.     Choose  to check the step definition.
    2.     Choose  to exit the step definition.
    3.     Choose  to view the entire workflow definition in the workflow area on the screen.
    You will notice that your workflow definition now contains a new step (the activity just created). The undefined step is also still there.
    4.     Choose  .
    The workflow definition is checked, saved, and, provided it does not contain any errors, activated. The system displays a message if problems are encountered during the test.
    5.     Exit the Workflow Builder.
    Result
    You have now completed this unit and can start the next unit.
         Unit 3: Starting the Workflow Builder
    Use
    A workflow definition is created with the help of the Workflow Builder.
    Prerequisites
    You have now created a workflow template ( Unit 2: Creating a Workflow).
    Procedure
    Calling the Workflow Builder
    1.     Choose Tools &#61614; Business Workflow &#61614; Development &#61614; Definition Tools &#61614; Workflow Builder.
    The Workflow Builder is then launched with the workflow definition that was processed last. If the Workflow Builder has not yet been called, then an initial workflow definition is displayed.
    The Workflow Builder screen is divided into the following areas.
    The workflow definition is displayed in the Workflow area on the screen. If the workflow is shown in display mode, the step type area is not displayed. For further information, refer to Workflow Builder in the SAP Business Workflow documentation.
    2.     Choose  and enter the abbreviation of your workflow template (< WSeight digit number >) .
    You can use the F4 input help. Enter the start of the abbreviation for your workflow (for example: < ini*> ) and choose  All of the workflows that match are displayed. Select your workflow and choose  .
    Result
    The workflow definition is displayed and if necessary can be processed. If the Workflow Builder is called for the first processing of a newly created initial workflow definition, the following graphic is displayed:
    If the graphic displayed differs from that above, check the graphic settings in the Workflow Builder. Choose Extras &#61614; Options, and click the Graphic tab. Choose the Without event-driven process chains view.
    •     The start of the workflow definition is indicated by  Start Workflow. If the new workflow definition has been called from the definition of a multistep task for which triggering events are defined, these are represented by the symbol  and their description.
    •     The end of the workflow definition is indicated by  Workflow terminated.
    •     The area in which the new workflow definition can be added is indicated by an undefined step with an outcome. Steps are displayed in the form of symbols. The description of an outcome is illustrated in the standard view with an arrow.
    This unit is now complete. In the following unit you create the first step in your workflow and define a task for this purpose at the same time.
    Creating an Activity as a Step in the Workflow Definition
    Add a first step of the type Activity to the workflow definition.
    1.     Choose  under step type. The cursor changes shape.
    2.     Position the cursor on the Undefined step and click.
    By doing so, you add an activity to your workflow definition. The step definition is shown in the right-hand part of the screen. You are on the tab page Control.
    Entering basic data for control
    3.     Enter the abbreviation ( TS<8-digit number> ) of the standard task Create Notification of Absence in the Task field and choose  .
    If you no longer know the full abbreviation, you can use different methods to search for it:
    o     Use the F4 input help to search via the object type and method of the single-step task.
    This brings you to the Search and Find: Tasks dialog box.
    On the tab page Obj. type and method, enter the object type FORMABSENC and the method CREATE .
    Then double-click your single-step task in the list. You should recognize your single-step task from your initials in the abbreviation. Choose  .
    o     Enter a character string in the abbreviation or description and choose  .
    A list of tasks is then displayed in which you can double-click the desired task.
    Every activity, as a step in a workflow definition, refers to a task.
    At this point, the unique reference to this task is entered. The identification is made up of an abbreviation (T, TS, WF, or WS) followed by an 8-digit number.
    If you select a workflow task (WF) or workflow template (WS) as your task, your activity is a subworkflow. If you select a customer task (T) or standard task (TS), your activity is a single step.
    The Define Container Elements and Binding dialog box is then displayed in which the system proposes a change to the workflow container and a binding definition.
    o     Upper part of the dialog box: Proposal for new container elements in the workflow container.
    The system proposes that you create a local container element in the workflow container, which can store the reference to the notification of absence created in this step. The element has the technical name AbsenceForm .
    o     Lower part of dialog box: Proposed binding definition
    The system proposes that you define a binding from the task container to the workflow container. This binding transports the reference to the generated object (i.e. the created notification of absence) from the task (from the WIObject_ID element in the task container) to the workflow (to the AbsenceForm element in the workflow container).
    Further information on automatic binding definition proposals is available under Binding Definitions from the Workflow Container and Binding Definitions from the Task Container in the documentation on SAP Business Workflow.
    4.     Confirm the proposal with  .
    The new AbsenceForm container element is displayed in the object area of the workflow container folder. Local container elements are marked  . The remaining elements in the workflow container are workflow system variables. For further information, please refer to Workflow System Variables in the Workflow Container.
    5.     Enter a text to describe the step.
    You can, of course, leave the description of the single-step task that is proposed by the system.
    (The current step in your workflow definition appears here.)
    6.     Go to the Events tab.
    All of the outcomes for this step are displayed here.
    7.     Enter a text for the description.
    The description (proposal: < Application filled out> ) in the Task executed synchronously line.
    Each step has at least one subsequent event (in this case: Task executed synchronously). The description is the text with which the outcome is labeled in the workflow definition.
    The Form does not exist and Form could not be generated outcomes are the possible exceptions that could occur in the method execution. You "run the risk" of not intercepting these exceptions and not modeling any exception handling in your workflow definition. If one of the exceptions actually occurs at runtime, the workflow will assume the error status.
    Checking the binding definition (optional)
    1.     Go to the Control tab.
    2.     Choose  Binding (present).
    The WF Builder: Binding for Step ‘<Create notification of absence>’ dialog box is then displayed.
    o     In the upper part of the screen, the binding defined from the workflow container to the task container is displayed. The system executes this binding before providing the task for execution.
    This binding direction is not relevant for this step since no information is to be transported from the workflow to the task.
    o     In the lower part of the screen, the binding defined from the task container to the workflow container is displayed. This system executes this binding after the user has processed the task.
    Here, the binding is WIObjectId.  &ABSENCEFORM& has been automatically defined here by the system. This binding ensures that the reference to the notification of absence created is not only known in the single-step task, but also in the workflow.
    You can view the contents of both containers by choosing Workflow container or Task container.
    (The element of the task container WIObject_ID is called Notif. of absence .)
    3.     Choose  .
    You then return to the step definition.
    Entering the agents responsible
    Choose Workflow initiator (expression) under Agents.
    The system enters the expression &_WF_INITIATOR& in the Expression field and in the input field beside the checkbox.
    By doing so, you choose the agent responsible.
    You start your executable workflow later manually. At this point in time, the system fills the workflow container element WFInitiator automatically with your user name.
    The above assignment informs the workflow system that the first work item for creating the notification of absence should be addressed as the "starter" as the workflow.
    You return to the screen Workflow definition: Create step: Activity
    Concluding step definition
    1.     Choose  to check the step definition.
    2.     Choose  to exit the step definition.
    3.     Choose  to view the entire workflow definition in the workflow area on the screen.
    You will notice that your workflow definition now contains a new step (the activity just created). The undefined step is also still there.
    4.     Choose  .
    The workflow definition is checked, saved, and, provided it does not contain any errors, activated. The system displays a message if problems are encountered during the test.
    5.     Exit the Workflow Builder.
    Result
    You have now completed this unit and can start the next unit.
    Unit 5: First Test
    Use
    You are now going to start a workflow in dialog for the first time, which will run according to your workflow definition. This workflow definition only contains a step for creating a notification of absence so far.
    For further information on starting workflows, refer to Starting Workflows (Test Environment) in the SAP Business Workflow documentation.
    Prerequisites
    The creation of a notification of absence, which you carry out within your workflow, is reported on a system-wide basis by an event. Other workflows entered as event receivers for this event may therefore be started. The notification of absence created by you (and published by the event) is then also processed with these workflows.
    This event is not used in connection with this tutorial.
    To ensure that only you work exclusively with the notification of absence, you can deactivate any existing linkages between the event and its receivers. Proceed as follows:
    If you carry out the following steps, you prevent other workflows being started unintentionally by your notification of absence.
    However, you may interrupt other workflow demonstrations. Therefore, be careful and speak to the colleagues involved if necessary.
    1.     Choose Tools &#61614; Business Workflow &#61614; Development &#61614; Utilities &#61614; Events &#61614; Simulate Event.
    2.     Enter FORMABSENC in the Object type field.
    3.     Enter created in the Event field.
    4.     Choose  .
    The system simulates the event FORMABSENC.Created and establishes which workflows would be started.
    5.     If you find one or more entries in the list under the branch Tasks without syntax errors to be started, position the cursor on an entry and choose  Event linkage.
    The dialog box Event linkage: Triggering events is displayed.
    6.     Position the cursor on the entry with the red background for the event and choose  .
    The linkage between workflow and event is deactivated.
    7.     Choose  .
    8.     Repeat steps 5 to 7 or repeat the whole simulation as applicable.
    Procedure
    Starting the workflow and filling out the form
    1.     If you are still in the Workflow Builder, choose  .
    The Start Workflow (Test Environment) screen is then displayed. The number of your workflow template is entered.
    If you are no longer in the Workflow Builder, choose Tools &#61614; Business Workflow &#61614; Development &#61614; Runtime Tools &#61614; Start Workflow (Test Environment). Enter the identification of your workflow or use the F4 input help.
    2.     Choose  .
    To handle work processes more quickly, SAP Business Workflow supports Advancing with Immediate Dialog. When a workflow is started in dialog, this means that the first work item of the workflow is made available for processing immediately provided that the user who starts the workflow is also one of the recipients of this first work item. This is the case here because you entered the container element WFInitiator as the agent in the step definition.
    The Create notification of absence screen, therefore, is displayed immediately where you can see the notification of absence form. It is the method Create that is executed with the first work item.
    3.     Fill out the form with entries of your choice.
    4.     Choose  .
    The Start Workflow (Test Environment) screen is then displayed again.
    5.     Choose  and exit the Workflow Builder if necessary.
    Starting a workflow / Business Workplace
    Before you extend your workflow definition, carry out the following test. It will familiarize you with the Business Workplace.
    1.     Start your workflow in dialog again. Choose Tools &#61614; Business Workflow &#61614; Development &#61614; Runtime Tools &#61614; Start Workflow. (T.Code SWUI)
    You go to the screen Start task.
    2.     Choose your workflow in the table on the left.
    3.     Choose Start on the right-hand side of the screen.
    The notification of absence form is displayed.
    4.     Do not make any entries and do not save. Instead, choose  .
    You have now started the workflow but canceled the processing of its first step. But the processing of the work item is not yet completed. You have only broken the processing chain of advancing with immediate dialog.
    5.     Choose  .
    6.     Choose Tools &#61614; Business Workflow &#61614; Development &#61614; Runtime Tools &#61614; Business Workplace.
    7.     Open the Inbox node and choose the Workflow folder.
    Your workflow inbox now contains (at least) one work item for processing. This is the work item for creating a notification of absence, the processing of which you canceled previously.
    8.     Select the work item, if necessary, and choose  .
    You return to the Create notification of absence screen where the notification of absence form is displayed.
    9.     Fill out the form and choose  .
    The work item disappears from your workflow inbox.
    Result
    You have now completed this unit and can start the next unit.
         Reporting and analysis
           In this first test, you will take a look at the work item analysis function.
    1.     Choose Tools &#61614; Business Workflow &#61614; Development &#61614; Reporting &#61614; Work Item Analysis &#61614; Work Items Per Task
    The Work Items Per Task screen is then displayed.
    2.     Select the monitoring period Today.
    3.     Select the work item type (Sub-)Workflow only.
    4.     Choose  .
    The system then determines all of the workflows that were started today. These are then listed on the Work Items Per Task from <Date> to <Date> screen. The number of work items in each workflow is also shown here.
    Make sure that you only ever analyze the work items for your workflow and your absence notification.
    5.     Display the list of associated work items by double-clicking the workflow ID.
    Both the workflows you just started for this workflow identification are displayed with status Completed.
    6.     Display the workflow log by double-clicking a work item ID.
    The Workflow Log screen is then displayed.
    For information on the workflow log, see Workflow Log in the SAP Business Workflow documentation.
    7.     Exit the work item analysis function.
         Unit 6: Creating a Task "Check Notification of Absence"
    Use
    You define the task Check notification of absence. This task is incorporated into your workflow definition as the second step.
    As this is not the first task you have defined, many steps will doubtless be familiar to you. (Refer to Unit 4: Defining and Inserting Task "Create Notification of Absence.)
    Prerequisites
    The object type used (here: FORMABSENC (notification of absence)) and the required method (here: Approve) are already defined and implemented in the Business Object Repository.
    Procedure
    1.     Choose Tools &#61614; Business Workflow &#61614; Development &#61614;&#61472;Definition Tools &#61614; Tasks/Task Groups &#61614; Create.
    The screen Task: Maintain is displayed.
    2.     In the Task type field, choose the Standard task entry.
    3.     Choose  .
    The Basic data tab in the Standard task: Create screen is then displayed.
    Entering the basic data
    1.     Enter an abbreviation (of your choice) and a name (of your choice) for the task to be created.
    Abbreviation: < ini _check>
    Name: <Check notification of absence (ini)>
    Object type and method
    2.     Enter an object type and a method:
    Object type: FORMABSENC
    Method: APPROVE
    You can also use the F4 input help to select the method.
    Work item text
    3.     In the Work item text field, enter the text Check notification of absence from .
    4.     Choose  . Save your standard task as a local object.
    5.     You can include variables in your work item text to be filled with values from the task container at runtime..
    The name of the creator of the notification of absence is to be included into the work item text. As soon as the work item appears in the superior’s Business Workplace, the name of the creator appears in the work item information text.
    Position the cursor in the work item text after the word of .
    6.     Choose  .
    The Please choose an expression dialog box is then displayed.
    7.     Choose the expression Notif. of absence by double-clicking the Container node. &#61614; Issuer object ref. &#61614; Name.
    If WIObject_ID is displayed instead of Notif. of absence, choose  . The system then displays the description of the expressions instead of their technical names.
    The variable &_WI_Object_ID.Creator.Name& has been added to the work item text automatically. The variable name displayed here is the technical name of the expression.
    You can integrate all of the elements in the task container in your work item text. This enables you to include information into the work item text, which is not available until runtime.
    Entering the description text
    1.     Go to the Description tab.
    2.     Choose Task description in the Test type field.
    The current task description is then displayed. This text is intended to inform future recipients of a work item in which this task is referenced and help them in their work.
    The text will often be similar to the work item text or may supplement it.
    3.     Choose  .
    4.     Enter the following text:
    Please check notification of absence no. &_WI_OBJECT_ID.NUMBER& from &_WI_OBJECT_ID.CREATEDATE& of employee &_WI_OBJECT_ID.CREATOR.NAME& .
    Decide whether to approve the request.
    If you want to insert an expression from the task container as a text variable, choose Include &#61614; Expression. Then choose the relevant expression in the Please choose an expression dialog box by double-clicking the Container node.
    5.     Choose  .
    6.     Choose  .
    Determining possible agents
    1.     Select Additional data &#61614;&#61472;Agent assignment &#61614; Maintain
    This takes you to the Standard task: Maintain Agent Assignment screen.
    2.     Position the cursor on the name of your task.
    3.     Choose  .
    You go to the dialog box Choose agent type.
    4.     Double-click Job.
    The dialog box Choose Job is displayed.
    5.     Enter either part of or the full abbreviation of the job that you created for the head of department in Unit 1: Organizational Plan.
    You return to the screen Standard task: Maintain agent assignment.
    6.     Choose  .
    You have linked the task to the job of a head of department. In the organizational plan, you use this job to describe a position. The holder of the position is also displayed.
    7.     Choose  .
    8.     Choose  .
    Result
    The task for checking the notification of absence is defined in full. You can now exit the screen for defining a task.
    In the next unit, you will incorporate this task into the workflow definition.
    Display your organizational plan again.
    a.     Choose Tools &#61614; Business Workflow &#61614; Development &#61614; Definition Tools &#61614; Organizational Management &#61614; Organizational Plan &#61614; Display.
    b.     Choose your organizational unit in the search area. Display it by double-clicking the entry in the table.
    c.     In the overview screen, choose the arrow  on the right next to the  and then Staff assignments (list).
    d.     Display a detailed view of the position of the head of department by double-clicking the entry in the list.
    Here, you can see that this position is assigned to the job and, on the Tasks tab, that it is also assigned to the task Check notification of absence.
         Unit 7: Including "Check Notification of Absence" in the Workflow Definition
    Use
    The task with which an employee can check a notification of absence is ready to be included into your workflow definition as the next step.
    Prerequisites
    You have defined a workflow with a step ( Unit 4: Task Defining and Inserting "Create Notification of Absence") and created the task Check Notification of Absence ( Unit 6: Create Task "Notification of Absence").
    Procedure
    Calling the Workflow Builder
    1.     Choose Tools &#61614; SAP Business Workflow &#61614; Development &#61614; Definition Tools &#61614; Workflow Builder.
    The Workflow Builder is then launched in display mode with the workflow that was processed last.
    2.     Work through the following steps to display your workflow for this tutorial in change mode.
    i.     If the workflow you created for this tutorial is already displayed, choose  . Go to step 3.
    ii.     If a different workflow is displayed, check whether the workflow you created is listed in the My available tasks area. Double-click it and choose  . Go to step 3.
    iii.     Choose  . Enter the complete abbreviation in the Task field on the Open other workflow definition dialog box and press RETURN. You can now also enter the workflow abbreviation. Enter either the full abbreviation or just the first characters (for example: < i*> ). Press F4 . The search result is then displayed. Choose your workflow by double-clicking it. When you enter the abbreviation in the Task field on the Open other workflow definition dialog box, all of the available versions are displayed. Since you have not created any versions, select version 0000 and choose  . The workflow is then loaded in display mode. To switch to change mode, choose  .
    1.     Choose  to display the entire workflow in the workflow area on the screen.
    Creating a container element in the workflow container
    You need an additional container element in the workflow container to store the name of the user who will execute this step. This user name is to be used later in the notification text that is sent to the requester.
    1.     Choose the entry <Double-click to create> by double-clicking in the Workflow Container.
    The dialog box for entering a container element is displayed.
    2.     Make the following entries:
    Element: Approver
    Name: Approver
    Description: Approver of the absence request
    Reference table: WFSYST
    Reference field: AGENT
    3.     Choose  .
    You have now added a local container element to the workflow container, which is ready to take an agent name, based on its data type reference. However, you have not yet determined a value for this container element.
    Creating an Activity as a Step in the Workflow Definition
    1.     Choose  under step type. The cursor changes shape.
    2.     Position the cursor on the Undefined step that follows the outcome Request completed and click.
    By doing so, you add an activity to your workflow definition. The step definition is shown in the right-hand part of the screen. You are on the tab page Control.
    Entering basic data for control
    3.     In the Task field, enter the abbreviation ( TS<8-digit number> ) of the task Check Notification of Absence that you defined in the previous unit. Choose  .
    If you no longer know the full abbreviation, you can use different methods to search for it:
    o     Use the F4 input help to search via the object type and method of the task.
    This brings you to the Search and Find: Tasks dialog box.
    On the tab page Obj. type and method, enter the object type FORMABSENC and the method CREATE .
    Then double-click your task in the list. You should recognize your task from your initials in the abbreviation. Choose  .
    o     Enter a character string in the abbreviation or description and choose  .
    A list of tasks is then displayed in which you can double-click the desired task.
    Every activity, as a step in a workflow definition, refers to a task.
    At this point, the unique reference to this task is entered. The identification is made up of an abbreviation (T, TS, WF, or WS) followed by an 8-digit number.
    If you select a workflow (WS or WS) as your task, your activity is a subworkflow. If you select a task (TS or T), your activity is a single step.
    You go to a dialog box in which the system proposes binding from the workflow container to the task container.
    Here, the object reference to the notification of absence is transported from the workflow container (container element AbsenceForm ) to the task container (to the container element WIObject_ID ).
    1.     Choose  to confirm the proposal.
    Extending the binding definition
    Now define another binding via which the current agent of the work item (the superior) is stored in a container element of the workflow container.
    2.     Choose  Binding (present).
    The Binding for Step 'Check notification of absence' dialog box is then displayed. If the first column is entitled Element, choose  to display the element description.
    The system has created the following binding definition from the workflow container to the task container:
    Notif. of absence  &AbsenceForm&
    This binding ensures that the correct notification of absence is checked in the task.
    3.     Choose  .
    All of the container elements in the task container are now displayed on the left-hand side. You can define a binding from these container elements to the workflow container.
    4.     Position the cursor in the lower half of the screen, in the empty input field beside the container element Actual agent and call the F4 input help.
    5.     Double-click Approver.
    In addition to the bindings already existing, the following binding is now defined:
    Actual Agent  &Approver&
    6.     Choose  .
    Determining outcomes
    The method APPROVE of the object type FORMABSENC, to which you refer in the standard task definition, is defined with a result. The three possible values of this result are offered on the tab page Outcomes as outcomes of this step:
    •     Approved
    •     rejected
    •     New
    The  indicates that these outcomes have already been transferred to the workflow definition. The outcome New is not really appropriate at this point. At this stage of processing, the notification of absence cannot be "new" any more. It should therefore not be incorporated in the definition.
    1.     Click on the symbol  in front of the outcome New.
    The symbol changes to  .
    The outcome Processing obsolete is processed if the relevant work item is set to obsolete via a process control step. This functionality is not used in this tutorial.
    The outcome Form not available results from the exception defined for the method APPROVE. You could include this outcome into the workflow definition and would then have to model appropriate subsequent steps. However, you do not model anything for the purposes of this tutorial and accept that your workflow will have an error at runtime if this exception is raised.
    2.     Choose  .
    Two branches are now inserted in your workflow definition for the two marked outcomes Approved and Rejected.
    Inputs for the agent
    If you are working through this tutorial alone, do not specify anything for responsibility at this point. If it is processed when the workflow is executed, therefore, this step will be "offered" for processing to all employees declared as possible agents of the single-step task Check notification of absence. This means all user whose positions are described with the job head of department.
    In your organizational plan, there is only one users who is a possible agent -> you.
    •     You have maintained the organizational plan with jobs, positions, and user assignments in Unit 1: Organizational Plan.
    •     You have defined the single-step task "Check notification of absence" and have assigned the possible agents in Unit 6: Definition of the Standard Task "Check Notification of Absence".
    Concluding step definition
    Choose  .
    The workflow definition is checked, saved, and, provided it does not contain any errors, activated. The system displays a message if problems are encountered during the test.
    Result
    You can subject your workflow definition to a second test.
      Unit 8: Second Test 
    Use
    You start your workflow in dialog and two steps are executed. The notification of absence is created in the first step and then checked in the second.
    Procedure
    Starting the workflow and filling out the form
    1.     If you are still in the Workflow Builder, choose  .
    The Start Workflow (Test Environment) screen is then displayed. The number of your workflow is entered.
    If you are no longer in the Workflow Builder, choose Tools &#61614; Business Workflow &#61614; Development &#61614; Runtime Tools &#61614; Start Workflow (Test Environment). Enter the number of your workflow or use the F4 input help.
    2.     Choose  .
    You go to the screen Create Notification of Absence.
    From the requester’s perspective
    When the workflow is started, the work item for creating the notification of absence is provided to you directly for processing. This is because of advancing with immediate dialog. You were introduced to this in the first test.
    3.     Fill out the form and choose  .
    From the head of department's perspective
    You created the step for checking the notification of absence in your workflow definition without specifying the agents responsible. This means that all of the possible agents of the single-step task are recipients of the work item. Since you occupy the position of both requester and head of department, you are automatically and immediately presented with the work item for approving the application. This is again because of advancing with immediate dialog.
    As the superior, you have several options:
    •     Approve the request
    •     Reject the request
    •     Cancel processing of the request.
    4.     Choose  to cancel processing.
    The Start Workflow (Test Environment) screen is then displayed again.
    Exit this dialog and, if necessary, the Workflow Builder.
    Reporting and analysis: Workflow outbox
    In the first test of your workflow, you were introduced at this point to work item analysis. Now, you will be introduced to the workflow outbox.
    Amongst other things, the work items which you started in dialog along with date, time and current status are displayed in the workflow outbox.
    1.     Choose Tools &#61614; Business Workflow &#61614; Development &#61614; Runtime Tools &#61614; Business Workplace.
    2.     In the tree displayed, choose Outbox &#61614; Started workflows.
    3.     Choose the arrow  on the right next to the  and then Today only.
    The work items for all the workflows you started today are then displayed. Note the statuses of the work items displayed in the Status column of the Business Workplace. Read the F1 help for the Status column.
    4.     Position the cursor on the work item for the workflow just started. This work item has the status in process.
    From the current workflow data, you can see that the step Create notification of absence has been completed successfully, when that was, and who processed it. The work item has the status completed.
    You can also see that the work item representing the task for checking the request still has status ready and can therefore still be seen in the superior’s Business Workplace.
    Business Workplace - check notification of absence
    You now once again occupy the position of the superior who canceled processing earlier when the application was to be checked.
    5.     In the tree, choose Inbox &#61614; Workflow.
    The work items for you to process are displayed with their work item texts and certain other attributes.
    A preview of the selected work item is displayed below the list and contains the description of the work item.
    6.     Select the work item for checking the notification of absence and choose  .
    You go to the work item display. There you find amongst other things the description text, also with replaced text variables.
    7.     Choose  to return to the Business Workplace.
    8.     Choose  or start execution by double-clicking the entry.
    9.     Either reject or approve the request. You should start the workflow twice and test each variant.
    To check whether the workflow was completed correctly, go to your workflow outbox. The procedure is described above.
    Result
    Your workflow definition has now been tested and you can continue with the next unit.
      Unit 9: Adding a User Decision 
    Use
    In the previous units, you created a workflow whose definition contains two activities. These activities are based on two standard tasks that you created.
    In this unit, you will add a user decision to your workflow definition.
    With the user decision, the requester can decide to revise and resubmit the notification of absence if the head of department rejects it.
    For further information, refer to Maintaining a User Decision in the SAP Business Workflow documentation.
    Procedure
    You start the Workflow Builder and open your workflow definition in Change mode. Proceed as described in Unit 7: Including "Check Notification of Absence" in the Workflow Definition.
    Creating a user decision as a step in the workflow definition
    1.     Choose  under step type. The cursor changes shape.
    2.     Position the cursor on the Undefined step that follows the outcome Rejected and click.
    By doing so, you add a user decision to your workflow definition. The step definition is shown in the right-hand part of the screen. The Decision tab is displayed.
    Entering basic data for user decision
    3.     Enter Your request was rejected by &. Revise? in the Title field.
    This text is used as the title for the alternative decisions when the workflow is executed. The variable & is a placeholder for a parameter that is filled from the task container at runtime.
    4.     Choose the F4 input help in the Parameter 1 field.
    The Expression for first parameter of user decision dialog box is then displayed.
    5.     Choose the Approver container element by double-clicking it.
    Entering alternative decisions
    6.     Define the alternative decisions. Enter the following texts:
    Decision texts     Name
    Decision: Revise request?     Revise
    Decision: Withdraw request?     Withdraw
    7.     The decision texts you enter here appear as decision options on the screen that can be processed by the requester after their leave request has been rejected.
    8.     The descriptions are the terms used to describe the outcomes in the workflow definition.
    9.     Entering the agents responsible
    10.     Choose Workflow initiator (expression) under Agents.
    The system enters the expression &_WF_INITIATOR& in the Expression field and in the input field beside the checkbox.
    Concluding step definition
    1.     Choose  to check the step definition.
    2.     Choose  to exit the step definition.
    3.     Choose  to view the entire workflow definition in the workflow area on the screen.
    You can see that your workflow definition contains a user decision in the rejected branch. This has two outcomes whose branches converge again in the rejected branch. Each new branch contains an undefined step.
    4.     Choose  .
    The workflow definition is checked, saved, and, provided it does not contain any errors, activated. The system displays a message if problems are encountered during the test.
    Result
    You can now subject your workflow definition to another test.
      Unit 10: 3rd Test 
    Use
    You start your workflow in dialog and three steps are executed: Two activities, for creating and checking a notification of absence, and one user decision.
    Procedure
    Starting the workflow and filling out the form, checking the notification of absence, user decision
    1.     If you are still in the Workflow Builder, choose  .
    The Start Workflow (Test Environment) screen is then displayed. The number of your workflow is entered.
    If you are no longer in the Workflow Builder, choose Tools &#61614; SAP Business Workflow &#61614; Development &#61614; Runtime tools &#61614; Start workflow (test environment). Enter the number of your workflow or use the F4 input help.
    2.     Choose  .
    You go to the screen Create Notification of Absence.
    From the requester’s perspective
    3.     Fill out the form and choose  .
    When you save the form, you (as superior) can immediately approve or reject the application (reason: advancing with immediate dialog).
    From the superior’s perspective
    4.     Do not approve the application.
    5.     Choose  .
    If the request is not approved, the next step in the workflow definition is the user decision. The requester was entered as the agent for the step. The decision is therefore offered to you again as the requester (reason: advancing with immediate dialog).
    From the requester’s perspective
    You are given three options:
    •     Revise request?
    •     Withdraw request?
    •     Cancel
    It is irrelevant which option you choose since you have not defined any follow-up steps. You should start the workflow several times and try out the different options. The complete process flow can be checked each time in the work item analysis or workflow outbox.
      Unit 11: Define and Include "Revise Notification of Absence" in the Workflow Definition 
    Use
    You will now add the activity Revise notification of absence to your workflow definition. You will create the necessary task within the

Maybe you are looking for

  • UMS adapter configuration for inbound email in SOA 11g

    Hi, Greetings to SOA Gurus !!! Our requirement is to invoke BPEL process on receipt of an email. We have configured the UMS email driver and setup the incoming server settings. When a mail is sent to the configured email address, I can see that the e

  • Group function in a query

    Hi all, I am practising on EBS vision installation, could you help me solve this error . . select || || < some columns > ||      pha.segment1 "PO Num",      decode(pha.TYPE_LOOKUP_CODE,'BLANKET',pla.UNIT_PRICE*sum(plla.QUANTITY),null) "Rel",      pla

  • EA1: A few formatter issues

    1. Alignment of AND keywords in select statement is wrong.   function get_segment_size(ownname in varchar2,   segname in varchar2, segtype in varchar2) return number is indsize number(16);   begin     begin       select bytes       into indsize      

  • Why update is not in function?

    I just update my NOKIA E52 and he faild.  Now my phone is dead. What I Can do?

  • Adobe v apple

    ive heard that the 2 managers of adobe & apple have had an almighty bust up, & so this has had an adverse effect on users of ipads or iphones or maybe even tablers certain videos need adobe , & owners of ipads etc are unable to view these videos due