How to know which stage has been completed in Human task flow.

Hi All,
I have one human task flow where there is three participants. Participant A, B and C and all are in sequence.
When User B approves the task, i need to do some business logic. when user B approves the task, it will be assigned to User C. I have defined call back events. There i can use task assigned condition to do my business logic.
My question is that how i can get to know that Task assigned to user C. Because it is a call back event and will be triggered when it will be assigned to A or B. I have tried to user the function previousOutcomeUpdatedBy to check whether it previous user was B or not. but in my case it is coming as workflowsystem.
instead of User B it is using workflowsystem
User:workflowsystem; State:OUTCOME_UPDATED; Outcome:CONFIRM
I am not aware, why workflow system is coming in picture.
do any one idea, how to solve this use case.
Regards,
Sunil

You can get the status from back end tables.
Check in SOA INFRA tables. Below is the list of human work flow tables.
WFTASK
WFTASK_TL
WFTASKHISTORY
WFTASKHISTORY_TL
WFCOMMENTS
WFMESSAGEATTRIBUTE
WFATTACHMENT
WFASSIGNEE
WFREVIEWER
WFCOLLECTIONTARGET
WFROUTINGSLIP
WFNOTIFICATION
WFNOTIFICATIONSTATUS
BPELNOTIFICATION
BPELNOTIFICATION_FILTERMSGS
BPELNOTIFICATION_INVALADDRS
WFTASKMETADATA
WFATTRIBUTELABELMAP
WFATTRIBUTELABELUSAGE
WFUSERVACATION
BPM_PRESENTATION
BPM_PRESENTATION_GRANT
WFUSERTASKVIEW
WFUSERTASKVIEWGRANT
WFUSERPREFERENCE
BPM_USERAPPLICATIONDATA
BPM_USERAPPLICATIONDATA_GRANT
WFRULEDICTIONARY
WFTASKDISPLAY
WFTASKTIMER
WFNOTIFICATIONMESSAGES
WFTASKERROR
WFHEADERPROPS
WFCERTAUTHORITY
WFCERTIFICATEREVOKED
WFCERTIFICATE
WFEVIDENCE
WFTASKASSIGNMENTSTATISTIC
WFTASKSEQUENCECHANGES
WFTASKAGGREGATION
WFAPPROVALGROUPS
WFAPPROVALGROUPMEMBERS
Thanks,
Vijay

Similar Messages

  • How to know which button has been selected on portal screen

    Dear Freinds,
                i an abaper i have one specific doubt regarding icon which has been selected on the portal screen.
    My requirement is we have portal screen on which i have two Buttons(or links) one Self and another for Dependents. i have to write an Bapi or RFC and give it to webdynpro developer.
    i have to write logic in my RFC based on the button selected on the portal screen (self or dependent) .
    in my RFC function module i have used import parameters &  table parameters( return value for the webdynpro to pick up)  . In the table parameters i have given structure z_struc  & the  Z_Struc has basically three fields
    a) self b) depndt c) flag.
    so i have written logic as
                       if v_flag_self = 'A'
                        logic for the self of the employee
                       elseif  v_flag_dep = 'B'.
                        logic for the dependent.
                       endif.
    so any one  could please let me know how i should pass on to the webdynpro
    or to recognize that the value for the Self he has to consider is A
    and dependent button he has to take is B. Because based ont he this flag values
    (A & B) only my logic works.
    how i should pass this values to him .
    Regards
    latha.

    Thanks!
    This wasn't there when I first looked at it, or I was looking at another location of the api, I will make sure to look at this one now :D.
    I basically did Action action = Dialog.show().
    then did if (action.equals(Dialog.Actions.OK))
    //code
    }So it works :).
    I like the custom action too, I'm interested in the example Action response = Dialogs.create()
          .title("You do want dialogs right?")
          .masthead("Just Checkin'")
          .message( "I was a bit worried that you might not want them, so I wanted to double check.")
          .showConfirm();I from the api it says that .create() is static Dialogs Type, so I'm curious how that's used as the Action in this case?
    Thanks again :)

  • How to know which Action has been done by a Dialog in ControlsFX?

    Hello!
    I am using ControlsFX for the "Dialog" class. This class lets you build a dialog with "Node" Content.
    I set the content to a GridPane and and had wanted to set up a custom Action.
    There are premade Actions like "OK" "CANCEL "YES" "NO" "CLOSE" so I tried using "OK" and it worked by saving all of the info in the TextFields which were set in the GridPane
    However when I tried "CLOSE" "NO" or "CANCEL" it also saved the data within the TextFields... SO I'm confused, what Actions are exactly going on, and I figured I would just make an if statement saying {code} if(Dialog.getAction(Action.OK) == true){code} but it never worked.
    Thoughts on howe to do the actions? I tried to make a custom action at first, but the premades "workjed" but not really.. :(?

    Thanks!
    This wasn't there when I first looked at it, or I was looking at another location of the api, I will make sure to look at this one now :D.
    I basically did Action action = Dialog.show().
    then did if (action.equals(Dialog.Actions.OK))
    //code
    }So it works :).
    I like the custom action too, I'm interested in the example Action response = Dialogs.create()
          .title("You do want dialogs right?")
          .masthead("Just Checkin'")
          .message( "I was a bit worried that you might not want them, so I wanted to double check.")
          .showConfirm();I from the api it says that .create() is static Dialogs Type, so I'm curious how that's used as the Action in this case?
    Thanks again :)

  • How do I know which block has been changed in Master/Detail

    Hi,
    I have master detail blocks. How do I know which block has been changed?
    I used :SYSTEM.FORM_STATUS. It only gave me "Changed" or "Query". but didn't tell me which block has been changed in MASTER or DETAIL.

    I believe if :system.form_status != 'QUERY' you'll need to loop through through the blocks checking :system.block_status to see who changed. Of course you'd have to go_block() before checking the status.

  • HT201744 How do you actually know where a Spotlight file is?  I mean all well and good Spotlight identifies it but I want to know which file has been identified and where it is......

    How do you actually know where a Spotlight file is?  I mean all well and good Spotlight identifies it but I want to know which file has been identified and where it is......

    To know where the Spotlight file is, highlight it in Spotlight and hold the Command key, so you will see its location at the bottom of the window

  • I would like to know which model has been discontinued? is it EOS 600D or 650D?

    i would like to know which model has been discontinued? is it EOS 600D or 650D? 
    And is 650d at 1650 a good deal? 

    In North America the 650D is the marketed as the EOS Rebel T4i.  It has been replacd by the T5i (in some other markets that's the 700D).
    The T4i was nearly identical to the T5i (cosmetically they are identical other than the mode dial is slightly different on a T5i).  It would not have made sense for Canon to continue to market both so they dropped the T4i.  The T3i is different enough that they still make that model.
    The list price on a T5i camera including the kit lens (EF-S 18-55mm f/3.5-5.6 IS STM) is about $850.  
    A price of $1650 (assuming that's US dollars) is extremely high.  
    Tim Campbell
    5D II, 5D III, 60Da

  • How do I know which workflow has been activated for my SHC in SRM

    Hi Experts ,
    Can anyone tell me where to find which workflow has been activated to my Shopping cart in the SRM. so that it creates a PO in the backend
    To create a PO in the back end it should have a WF actiavted.
    do we can have only always one WF activated or can we have multiple WFs depending on the conditions for one scenario
    Please suggest me
    Regards
    Sairam.

    Cross-Application Basic Settings u2192 SAP Business Workflow u2192 Perform Task-Specific Cusomizing
    SAP u2192 SRM u2192 SRM-EBP u2192 SRM-EBP-WFL
           -   WS10000060 (Automatic approval)
             -   WS10000129 (One-step approval)
             -   WS10000031 (Two-step approval)
             -   WS10000276 (Approval single-level over limit)
             -   WS14000044 (Completion by purchaser)
             -   WS14000109 (Approval n-step over value limit)
             -   WS14500015 (Item approval)
             -   WS14000045 (Delete shopping cart after application error)
             -   WS10000202 (Transfer purchase requisition)
             -   WS10000215 (Resubmission of shopping cart by administrator)
    You need to check Event linkage is either Activated or Deactivated aor these above work flow . I fit is activated it shows green light.
    Muthu
    Edited by: muthuraman on Jul 29, 2008 2:38 PM

  • How to know which table has got referencial integrity constraint

    Dear All,
    How can i know which table has got referencial integrity constraint on which table ?
    Ex : Department id column is a primary key in departments table whereas it is a foreign key in employees table. From where can i find the info regarding the relation between employees and departments table ?
    Waiting for your reply.
    Regards,
    Shyam

    you can use dba_constraints or all_constraints to help.
    http://download.oracle.com/docs/cd/B14117_01/server.101/b10755/statviews_1037.htm
    Example:
    select owner, CONSTRAINT_NAME,CONSTRAINT_TYPE,TABLE_NAME from dba_constraints where R_OWNER=':A' and R_CONSTRAINT_NAME=':B'
    A = owner of primary key
    B = constraint name (primary key name)

  • How to identify which data has been inserted  to the table in specific date

    Hi,
    i created one table without data column.. i am inserting data in that table.
    i want which data has been inserted today..
    Please help.
    Thanks,

    If you are in Oracle 10g you can use ORA_ROWSCN.Note that unless the table was created with ROWDEPENDENCIES enabled, though, ORA_ROWSCN is tracked at the block level rather than the row level. So a block with one new row and many old rows could appear as having all been entered today.
    Justin

  • Dynamic h:commandLinks : how do I know which one has been clicked?

    Imagine I have something like:
    <h:dataTable etc etc>
    <h:column>
    <h:outputText etc etc />
    </h:column>
    <h:column>
    <h:commandLink action="#{BeanName.removeEntry}" />
    </h:column>
    </h:dataTable>
    <h:inputText etc etc><h:commandLink action="#{BeanName.addEntry}" />
    so that when I add Entries, they get seen on the dataTable above..
    THe addEntry code is easy to do, it's only a ArrayList.add() method call but what about the removeEntry? I don't know how to figure out which 'remove' commandLink was clicked.

    If you have a datamodel in yo
    ur datatable, then you can do something like this:
    getModel().getRowData()
    This returns the selected row.
    From here it's with you.....

  • JRadioButtons - how do i know which one has been clicked?!

    hey all,
    im working on a simple gui to implement a ticket office system. im a bit of a newbie to using GUIs and im fed up of trawling through the api's in search of answers and im on the home run... so here's my q...
    i have a gui class for doing a search for tickets. i have a controller in a seperate actionListener class for this gui. i have three radio buttons for searching for three different things and then there's a search jbutton to start the search.
    how do i know what radio button the user has selected when they click search? i need to be able to know this from the controller, not in the gui itself.
    thanks a mil!

    import java.awt.*;
    import java.awt.event.*;
    import javax.swing.*;
    public class TicketOffice_Demo extends JFrame {
        public TicketOffice_Demo() {
            initComponents();
        private void initComponents() {
            ticketsGroup = new ButtonGroup();
            toolbar = new JToolBar();
            startSearch = new JButton();
            typeA = new JRadioButton();
            typeB = new JRadioButton();
            typeC = new JRadioButton();
            scrollpane = new JScrollPane();
            textarea = new JTextArea();
            setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
            setTitle("Ticket Office Demo");
            toolbar.setFloatable(false);
            startSearch.setText("Start Search");
            startSearch.addActionListener(new ActionListener() {
                public void actionPerformed(ActionEvent evt) {
                    startSearchActionPerformed(evt);
            toolbar.add(startSearch);
            ticketsGroup.add(typeA);
            typeA.setSelected(true);
            typeA.setText("\"A\" Tickets");
            typeA.addItemListener(new ItemListener() {
                public void itemStateChanged(ItemEvent evt) {
                    typeAItemStateChanged(evt);
            toolbar.add(typeA);
            ticketsGroup.add(typeB);
            typeB.setText("\"B\" Tickets");
            typeB.addItemListener(new ItemListener() {
                public void itemStateChanged(ItemEvent evt) {
                    typeAItemStateChanged(evt);
            toolbar.add(typeB);
            ticketsGroup.add(typeC);
            typeC.setText("\"C\" Tickets");
            typeC.addItemListener(new ItemListener() {
                public void itemStateChanged(ItemEvent evt) {
                    typeAItemStateChanged(evt);
            toolbar.add(typeC);
            getContentPane().add(toolbar, BorderLayout.NORTH);
            textarea.setBackground(new Color(255, 255, 204));
            textarea.setEditable(false);
            scrollpane.setViewportView(textarea);
            getContentPane().add(scrollpane, BorderLayout.CENTER);
            Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
            setBounds((screenSize.width-400)/2, (screenSize.height-300)/2, 400, 300);
        private void startSearchActionPerformed(ActionEvent evt) {
            Controller cont = new Controller(ticketType);
            textarea.append("Controller searches for ticket type '"+cont.getTicketType()+"'\n");
        private void typeAItemStateChanged(ItemEvent evt) {
            if(typeA.isSelected()){
                ticketType = "A";
            }else if(typeB.isSelected()){
                ticketType = "B";
            }else if(typeC.isSelected()){
                ticketType = "C";
        public static void main(String args[]) {
            new TicketOffice_Demo().setVisible(true);
        private JButton startSearch;
        private JRadioButton typeA;
        private JRadioButton typeB;
        private JRadioButton typeC;
        private JScrollPane scrollpane;
        private JTextArea textarea;
        private JToolBar toolbar;
        private ButtonGroup ticketsGroup;
        private String ticketType ="A";
    class Controller {
        Controller(String ticketType){
            this.ticketType = ticketType;
        public String getTicketType(){
            return ticketType;
        private String ticketType;
    }

  • How to know which user has executed which ddl statement

    Hi All,
    Last week i faced some problem, like some one has truncated the table , so luckily i have the schema backup so i restored it till the last backup taken.
    but i want to know who has executed this ddl statement.
    i know there are some utilities are avaible with oracle, so please describe me the easiest and quickest way to get this.
    Regards
    Asif

    In order of descending simplicity
    - Use the principle of least privilege to restrict the privileges users have in the database to ensure that they cannot do things like truncating a table
    - Enable auditing of potentially problematic statements. This has to be done before the damage is done, though
    - Create a DDL trigger that logs when users issue DDL. This also must be done before the damage is done.
    - Use LogMiner to go through the archived log files that were generated at the time the table was truncated. This assumes that the database is in ARCHIVELOG mode and that you have the archived logs from last week. Using LogMiner to track down the culprit is also likely to be relatively time-intensive
    Justin

  • How to find out which GR has been invoiced?

    Hello,
    I am working on one scenario in which I am making a sales order through which automatic Purchase order is getting generated. I am doing a MIGO(GR) for lesser quantity on this PO. lets say I am creating 4 GRs of 10 quantity for a PO of 50. Now, I am making direct invoice for this through VF01 with reference to sales order. An invoice of 40 will be created.
    Now, I am doing creating one more GR of 10 for the rest of the amount. I have 5 GR's now.
    How can I get to know which GR has been invoiced (table relation) and which is yet to be invoiced?

    Amrish,
    RSEG is the "Document Item: Incoming Invoice" table. In this table, Look for the field LFBNR , LFGJA, LFPOS.
    LFBNR - Refernced GR Number
    LFGJA - Year
    LFPOS - Ref Doc Item
    Hope this helps
    Vinodh Balakrishnan

  • How to see whether GR has been done on PO or Inbound Delivery

    Hi Gurus
    How to know whether GR has been done on PO or inbound delivery. Is there any report or tables through that we can see this.
    Regards
    Irfan

    Hi
    If you check the material document posted for GR it should specify
    If the GR is done with respect to Inbound delivery then the inbound delivery number will be in material document if I remember it correctly.
    Please check and advice
    Deepak

  • When i run Time Machine to back up my computer onto an external hard drive, i have no way of knowing when the back up process has been completed. I don't know when it is safe to disconnect the external hard drive - which is store in a separate location.

    When i run Time Machine to back up my computer on to an external hard drive, i have no way of knowing when the back up process has been completed.  This is necessary to know because i don't leave my external hard drive connected to the computer.  I routinely disconnect it after backing up the hard drive, and then i store the external hard drive in a different location from the computer.  So, knowing when the back up process has been completed would be a very helpful thing to have the computer specify. 

    Just enable Time Machine's menu extra (System Preferences -> Time Machine -> Show Time Machine in menu bar.
    This will add a little Time Machine icon to your menubar. When Time Machine is actively backing up your data, the icon will spin as a visual indicator. You can also click the menu icon to see the backup status, including how much data is left to back up.

Maybe you are looking for