BOR Attribute empty during workflow trigger

Hi Gurus,
I have a problem in workflow where the IMAGE attribute of my zBUS2081 is not being read (or might be empty) during workflow trigger. This is the scenario:
1. I delegated zbus2081 to BUS2081 and added attribute of type BOR - IMAGE.
2. My workflow is being triggered when a LIV INvoice is parked.
3. In my workflow, at the beginning I am transferring ZBUS2081.IMAGE to a wf container IMAGE_CONT (type BOR - IMAGE)
4. My workflow triggers, then I check the log. It shows that IMAGE_CONT was assigned with ' ' value even it passed through the container operation step.
5. What's weird, is when I retrigger the workflow, it is now able to assign the value of ZBUS2081.IMAGE to IMAGE_CONT.
What could be the problem? I don't think there is a problem in my workflow. Seems that ZBUS2081.IMAGE has no value during trigger, but there is a valid data for IMAGE before the wf triggers.
Thanks,
Eo

Hi Eo,
  I guess it may be because of the program logic inside business object Zbus2081 on attritube IMAGE.
  Can you open the program of attribute image and check whether you put the condition that maybe skip command swc_set_element container?
  In background, workflow will re-calculate attribute of the object. If swc_set_element container is missing, value will be blank.
Regards,
Chaiphon

Similar Messages

  • Class attribute in technical workflow log not updated

    Hi Gurus,
    I built a workflow analogous to the famous demo workflow "demoformabs" but with the demo class: CL_SWF_FORMABSENC instead of the BOR: FORMABSENC.
    In the BOR Formabsenc there is also an attribute for the "Approver" (USR01) in addition to "Creator" (USR01).
    This attribute "Approver" is missing in the class "CL_SWF_FORMABSENC".
    So I added this attribute "Approver" also in the class "CL_SWF_FORMABSENC":
    data APPROVER type SIBFLPORB value CL_SWF_BOR_TYPES=>MC_USR01.
    Finally in the method "approve" I set the value for the attribute "APPROVER".
    me->approver-instid = me->APPROVBY.
    I can see that the value has been successfully set by setting a binding from this class attribute to a workflow container element.
    BUT, in the technical workflow log (container) I can not see the class attribute "Approver" populated.
    Here it´s still displayed as < no instance >.
    What do I need to do, to make this value appear also in this class attribute in the technical workflow log?
    Albeit I know, that it´s working, I am getting confused, that it´s still displayed as empty.
    Cheers,
    Dominik

    Hi Dominik,
    You should not populate attributes in this manner, for the very reason you're experiencing. Attributes are transient and behave like variables, i.e. when the class stops existing they disappear. During binding only the key is transferred, and - if needed - the class is re-instantiated at the other end. If you have implemented some kind of buffering/instance management (not a bad idea), then you may be lucky to have attributes survive if everything happens within the same program context. However once your WF session stops executing, this is lost.
    This is why when you look at the log later, it is re-instantiating a completely new instance - where would it know the approver from?
    The attribute value must be written to the DB somewhere, so that any later object instantiation (e.g. when you look at the log) will read the value and populate the attributes correctly.
    Incidentally this is why OO theory discourages the use of public attributes and suggests GET_ and SET_ methods instead....
    Regards,
    Mike

  • Which field is the workflow trigger for a Contract Agreement ?

    Greeting everyone,
    I am not sure if this has been answer before or if this is the correct forum. If not, apologies in advance and do direct me to the appropriate topic/forum.
    I have an inquiries with regards to Contract Outline agreement and workflow trigger.
    Based on my company configuration, the trigger is based on the changes in value and release strategy.
    What I am unsure is that which field the workflow-trigger checks?
    Does SAP checks the field "Target Value" in contract header, or  the sum of net value in each of the contract items?
    Thank you

    Hello Sek,
    In contracts, the target value is used for the release strategy determination and not the net contract value. If you maintain a target value in the contract header, this value is set in field CEKKO-GNETW to determine the strategy. If no target value exists on header level, a cumulation of the target values of the items is carried out and used for the release strategy determination.
    Regards,
    Mauro

  • Can we update oracle standard table Attributes column by custom trigger?

    Can we update the oracle Standard table's Attributes column using custom trigger? Is it allowed by oracle? Is this supported?
    Thanks

    ATTRIBUTE columns store DFF information and therefore custom code can be used to update their contents. Care must be taken that such updates do not cause "logical" corruption (an ATTRIBUTE column may be designed to store the color of a product, for example, but an incorrect SQL statement can update the value to a numeric one, thus causing corruption - Oracle does not have a means to check the validity of these update statements). Also, some localizations, such as Brazil and India, reserve some ATTRIBUTE columns for their use - updating such columns is not supported. More information may be found in the Flexfields Guide for your release at http://www.oracle.com/technology/documentation/applications.html
    HTH
    Srini

  • Workflow trigger while record import

    Hi all,
    Can someone explain me the working of a workflow which gets triggered automatically on a "record import"? I tried testing "record add" and "record update" and they seem to work fine. I'm using SP05 Patch 2.
    My scenario is such that i want to launch this workflow automatically when records are imported via Import server.
    But this doesnt seem to work. The records are being imported but i can no way see them being added to this workflow.
    Will the workflow be launched for those records which are "updated" via import server or for those which are only "created" freshly?
    Regards
    Swarna

    Are you using the syndication step in WF1?  If the record is checked out when you syndicate it and then reimport it, it will not go into WF2.  A checked out record won't go into a new workflow. 
    Here's what you should do:
    1.  Configure WF1 to check record out during workflow, but check it back in when the workflow is complete.
    2.  Configure syndication server to automatically push records that get changed to the outbound port.
    3.  Configure the import map to launch WF2.
    4.  WF2 should check the record out while the record is in the workflow, and check it back in when the workflow is complete.
    What I was saying earlier is that when you import a record change, the syndication server will recognize the record changed, and push the record to the outbound port.  What you want to do is have the record go through the workflow before it gets syndicated.  In order to do this you need to launch the workflow from the import map using the setting that Jitesh described.

  • Error during workflow registration OIM 11.5

    Hello,
    I am getting following error during workflow registration, please let me know how to fix it. I am using Oracle Tutorial for self service reg workflow. and command is "*ant -f registerworkflows-mp.xml register*"
    D:\Oracle\Middleware\Oracle_IDM1\server\workflows\registration\SelfRegistrationA
    pproval.props
    [echo] ${gen.classpath}
    [java] java.lang.UnsupportedClassVersionError: Bad version number in .class
    file
    [java] at java.lang.ClassLoader.defineClass1(Native Method)
    [java] at java.lang.ClassLoader.defineClass(ClassLoader.java:620)
    [java] at java.security.SecureClassLoader.defineClass(SecureClassLoader
    .java:124)
    [java] at java.net.URLClassLoader.defineClass(URLClassLoader.java:260)
    [java] at java.net.URLClassLoader.access$100(URLClassLoader.java:56)
    [java] at java.net.URLClassLoader$1.run(URLClassLoader.java:195)
    [java] at java.security.AccessController.doPrivileged(Native Method)
    [java] at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
    [java] at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
    [java] at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:268)
    [java] at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
    [java] at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
    [java] Exception in thread "main"
    BUILD FAILED
    D:\Oracle\Middleware\Oracle_IDM1\server\workflows\new-workflow\registerworkflows
    -mp.xml:51: Java returned: 1
    Total time: 23 seconds

    Ok. I was able to fix the issues after changing jdk version in ant script. Now I am getting following new error.....I am providing manage console url and OIM admin user i.g. xelsysadm.
    [java] SEVERE: Incorrect username/password entered during registration of w
    orkflow
    [java] Exception in thread "Main Thread" oracle.iam.platform.workflowservic
    e.exception.IAMWorkflowException: Incorrect username/password entered during reg
    istration of workflow
    [java] at oracle.iam.platformservice.workflowregclient.WorkflowServiceC
    lientUtil.getWorkflowService(WorkflowServiceClientUtil.java:92)
    [java] at oracle.iam.platformservice.workflowregclient.WorkflowRegistra
    tion.main(WorkflowRegistration.java:41)
    BUILD FAILED
    D:\Oracle\Middleware\Oracle_IDM1\server\workflows\new-workflow\registerworkflows
    -mp.xml:51: Java returned: 1
    Any suggestion?
    thanksTK

  • Variable Value Empty during Employee Termination Workflow

    Hello Friends,
    I got a requirement where I need to send an email to the concerned department with Last Day in Office and Last Pay Date.
    During the termination of employee table PA0041 will be filled with dates(dat01-12) and
    date types(dar01-12).
    I am fetching data from table pa0041 based on the personal number but i am getting 00/00/0000 value in the email even though there is value in the table. I am getting values from other tables and displayed properly in the content of email except from this table.
    CALL FUNCTION 'HR_READ_INFOTYPE'
      EXPORTING
        PERNR                 = OBJECT-KEY-NUMBER
        INFTY                 = '0041'
      IMPORTING
        SUBRC                 = SUBRC
      TABLES
        INFTY_TAB             = P0041
      EXCEPTIONS
        INFTY_NOT_FOUND       = 1
        OTHERS                = 2            .
    IF SY-SUBRC <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    ENDIF.
    SORT P0041 DESCENDING BY BEGDA.
    READ TABLE P0041 INDEX 1.
    DO 12 TIMES VARYING DATAR_TAB FROM P0041-DAR01 NEXT P0041-DAR02
                VARYING DATE_TAB  FROM P0041-DAT01 NEXT P0041-DAT02.
    IF DATAR_TAB = 'U7'.
    V_ENDDA = DATE_TAB.
    EXIT.
    ELSEIF DATE_TAB IS INITIAL.
    EXIT.
    ENDIF.
    ENDDO.
    How do i get the value during termination. the object is bus1065.
    Thanks & Regards,
    Nagaraj

    Trigger the event of that BOR COMPANYLEFT by using the FM SAP_WAPI_CREATE_EVENT*
    1. Here 2 cases are possible one is if you trigger from PA30 Txn
    2. Delete emtry directly from the table.
    2.
    When ever a entry is deleted from the table the a message will displayed saying that the employee deleted so what i personally feel is try to trigger the workflow which you have designed to send the mail, when ever this message is triggerd by using the t-code SWUY
    1.
    Find a enhancement spot and trigger the event SAP_WAPI_CREATE_EVENT aspecify the start event in the workflow, so when evenr the employee is deleted then this event is triggered and  then the workflow will be triggered

  • Regarding the payment block workflow trigger

    Hi Gurus
    1. All the invoices should be posted with payment block u201CZu201D (customized) where it is not already populated by MIRO with standard u201CRu201D.
    2.Everyday the accountant of the concerned section will run the payment proposal (Automatic Payment Program).  All the invoices that are due will be selected in the proposal with payment block u201CZu201D or u201CRu201D.  Then the accountant manually replaces payment block u201CZu201D or u201CRu201D with u201CSu201D (customized) (signifying start of workflow) in the invoices picked up in the proposal.
    3.Once the payment block changes to u201CSu201D, workflow event should trigger to alert the Section head.
    4.The Section Head then scrutinizes the proposal and wherever he approves the payment block u201CSu201D should be removed in the proposal list. The payment block in all other invoices not approved by the Section Head should be changed from u201CSu201D to u201CZu201D or u201CRu201D again.
    5.The information of rejected invoices should pass to the accountant.
    Roles: 2
    1.Accountant (who has authorization to change the payment block from u201CZu201D or u201CRu201D to u201CSu201D only)
    2.Section Head (who has authorization to approve or to reject)
    Even I given the BOR as BSEG and event as created (Posting item with Payment Block ) .
    I configured as follows.
    1) defined the workflow variant,
    2) assigned the workflow variant to company code
    3) defined the payment block as blank
    But In Event simulation i got workflow get started but it not started. But there is nor event logs too.
    Please help me if you know anything regarding this..
    regards
    vel
    Edited by: Mike Pokraka on Jun 27, 2008 5:27 PM
    Edited by: Velmurugan on Jun 27, 2008 5:45 PM

    Hi Vel
    Did you fix your problem already? recently, I have got a same request from user. The requirement is that after the payment proproal has been confirmed, the workflow should be started by this change and triggers it to send out an email for those vendors by their email address. If you or anybody know about the solution for creating this workflow, please kindly instruct me how to do it, since I am a fresher.
    Thanks
    Jc

  • How to add new attribute for triggering workflow?

    Dear Expert,
    I want to create condition for triggering workflow.
    I am working on travel request workflow, using BUS2089.
    my requirement is to differentiate or make condition of triggering workflow based on trip activity type,
    but I can't find any attribute about trip activity type.
    how to add activity type to be available for create condition?
    thanks

    Hi,
      If am not wrong you are trying to raise event when ever there is a new travel request raised, so the BOR would be availbel in the workflow container to be more preciese it would be available in the event container, so you need to find out the right attribute in the BOR where the trip type is assigned and validate this in the start conditions i mean in the basic data of the workflow where you activate the event linkage.
    Regards
    Pavan

  • Workflow trigger an idoc

    HI
    How trigger a idoc from a workflow?????
    Hi
    idoc trigger from a workflow.please suggest.
    example like po change..
    Edited by: Abhijit Paul on Jun 26, 2009 8:42 AM

    Hi,
    You can follow following steps.
    1) Create a Z business object inherited from BUS2012.
    2) Create a Z-method in will have to create a method in your newly created business object.
        This method will have logic to create and send the idocs for PO. Delegate the business object so that you can call the method from SUPERTYPE in workflow.
    3) Create a workflow with triggering Event as Change of PO.
        This workflow will have a single step task which will call the Z method of your business object.If you have done the delegation then you can call the method using BUS2012 object type itself.
    4)  You will have to go in Tcode SWEC as mentioned in the post above.
        There you will have to do an Event linkage for change documents.
        Make an entry for EINKBELEG Bor Object ZBUS2012 or BUS2012, Event CHANGED and select on Change option.
    5) Change the PO and check if the event is getting triggered or not. Also if the method used to create and send idoc is correctly been called.
    Hope it explains the steps you need to follow.
    In case of any issues please let me know.
    KR Jaideep,

  • Resource account attribute names during reconciliation

    Hi,
    I need to set some attributes when creating the IDM user during initial reconcilation from an LDAP resource. I understand only the waseset and LDAP user attributes are available during the reconciliation. Does anyone know how to refer to the resource account attributes?
    I tried to put this in my proxyuser form:
    <Field name='accounts[Lighthouse].uvaDepartment'>
    <Derivation>
    <invoke name='listToString' class='com.waveset.util.Util'>
    <ref>accounts[LDAP].ou</ref>
    <s>; </s>
    </invoke>
    </Derivation>
    </Field>
    uvaDepartment is a extended attribute in the IDM schema, and ou a multivalued LDAP atribute. But uvaDepartment remains empty.
    Greetings,
    Marijke

    thanks,
    I found out the problem was caused by not setting thel user password in the resource parameters page.
    I set up a temporay form and debugged the attributes from the Active Directory. Somehow, the password has already been populated with a (random) value. To be sure, I'll use your suggestion to generate a temporary password to ensure it conforms to my own Password Policy :
            <invoke name='generatePassword'>
              <new class='com.waveset.provision.PasswordGenerator'>
                <ref>:display.session</ref>
              </new>
              <invoke name='getObject' class='com.waveset.ui.FormUtil'>
                <rule name='UWS-RLB-Utils:GetLightHouseContext'/>
                <s>Policy</s>
                <ref>My-Password-Policy</ref>
              </invoke>
              <new class='com.waveset.object.WSUser'/>
            </invoke>

  • HELP NEEDED: Use a new record for a customized table as a workflow trigger

    Hi SAP Workflow Gurus,
    Good day!
    One of our requirements is to have the creation of a new record in a custom database table trigger a workflow. I read and followed the steps as indicated in this link
    http://www.****************/Tutorials/Workflow/Table/events.htm
    As a summary, here is what I did:
    1. Created a subroutine for the custom table ZPA2003 for the create event
    2. Defined this event as a trigger for the custom workflow WS90000019
    3. Maintained and activated the event linkage via SWETYPV
    Basically I tried following the instructions indicated on the link
    Note that the entries for the custom table are created via a function module.
    Now during testing of the workflow, the system was able to complete the notification message. However, when I triggered the event via creation of the entry in the custom db table nothing happened
    1. Is there a way to debug/find out whether the link between the subroutine in the table and event itself are connected?
    2. I also tried running the event trace to check the activities executed but found nothing.
    Can you guys help me check on what I may have missed out?
    Regards,

    Hi All,
    Basically these are the requirements for the work schedule substitution:
    1. Employee enters the request via ESS (custom portal transaction)
    2. Upon saving of the entry (request) in a custom  table, this should trigger the workflow at the backend
    3. The Manager should then receive a work item in his Universal Worklist at the MSS side of the portal
    4. Upon clicking on the work item, a new screen will pop up showing the work schedule substitution details as well as an interface which will allow him to enter his/her usage decision
    5. Depending on the decision, the workflow must execute the necessary notifications as well as changes in the custom and PA2003 tables
    Now, we have accomplished step 1 and I am currently in the process for step 2. Now I have some queries:
    1. For the Manager to view and approve the substitution details, I used two methods for each process (view and approve) since our ABAPer mentioned that this cannot be done in 1 function module. Is there a way to simplify this step or is it really valid that they need to be executed in 2 different methods?
    2. As per our ABAPer, function Modules only import and export variables; they do not have the facility of say having tags on the details being displayed. Hence, if the details are 10001 (Employee Number), 10/20/2011 (Start Date), 10/25/2011 (End Date) the output would be 10001, 10/20/2011, 10/25/2011. Is there a way within the function module (or dynpro interface) to show it like this: Employee Number: 10001
                               Start Date: 10/20/2011
                               End Date: 10/25/2011
    3.  Speaking of dynpro applications, do I need to still develop one to allow the Manager to view and approve/reject the request via the MSS portal upon accessing the work item via the UWL? How would the work item go about calling the dynpro application? or is this even possible?
    It would have been easier if the facility would not pass through workflows since it will be just direct web dynpro/ABAP calls. Having to include it as a work item in the UWL puts a certain twist to it
    Your inputs are well-appreciated.
    Regards,

  • Returning attribute values from Workflow to a Form

    Hi,
    I have a workflow action that returns an object. I would like to pass this object a form, via a manual action, and get the values for the object. My form has a base context of variables.user. I have attempted to get the object from the workflow by using the :, semi colon however this isn't working.
    Any help will be appreciated.
    CK

    Solved this by using a rule to call the required methods on the object and set the user.xxxx attribute accordingly.
    It's easy when you know how!
    CK

  • Workflow trigger at Sales order Item level

    Hello all,
    Please let me know if it is possible to trigger a approval workflow when a quantity of an item is greater than certain amount, while creation of sales order. If yes, then what are steps involved.
    Thanks in advance,
    Sandesh

    Hi you can code it in routine USEREXIT_SAVE_DOCUMENT of program MV45AFZZ
    You can access your values of item table here,check whether the quantity is greater than the amount and if true then
    Call the work flow using function module SAP_WAPI_START_WORKFLOW

  • Replacing attribute value during runtime?

    Ok Here we go... Is it possible to replace the value of an attribute during query runtime??? 
    Here is what my user wants...They want the value of an attribute in a query (no the input selection) to change according to the current date for example:
    If today is monday then the value of 0VTYPE in a query is 10.
    If today is tuesday the same value of 0VTYPE in the same query would by 20.

    We need to use "Key Date" concept.
    Think you should get some idea by this link.
    http://help.sap.com/saphelp_nw70/helpdata/en/3f/083b37b0fd2e71e10000009b38f936/frameset.htm
    Thanks
    Hari

Maybe you are looking for