Custom Workflow for Shipping Execution

Hi All,
We have a requirement to cater approval on issuance i.e. at the time of shipping execution. For this purpose we have used Oracle Workflow Builder to cater the requirement. The workflow is working fine for approval but not for rejection. If we approve the shipping execution, the transaction is working fine but if we rejects it, the shipping transaction got stuck with exception and if we resolve the exception manually, we are unable to re send it for approval or even shipping.
I will be grateful if anyone can help me out and advise me on how to setup of workflow for rejection.
Thanks in advance.
Regards,
Zulfiqar Ali Mughal

It is possible that the workflow has already been registered in db before you modified workflowActivities.xml.Did you try cleaning up workflow tables and restart the server??
epub_workflow_info, epub_coll_workflow, epub_ind_wf,epub_wf_server_id tables
Make sure there is only one entry for each workflow in epub_workflow_info. If there are multiple entries, then it may be coming from 2 different places and you need to disable one of them. Whenever you create custom work flow, copy the existing workflow and modify it and give it a different name. If you are importing programmatically, you really dont need to configure it in taskConfiguraiton.xml ( as it corresponds to settings related to which item-descriptors, tabs, security in BCC gui).
-karthik

Similar Messages

  • How to Created custom report for Ship not Billed (SD/FI)?

    Hi all,
    I am anticipating  to write some abap reports..Here is one of them..
    Anyone can help  me with writing a Report , how to do 'Custom Report for shipped not Billed(SD/FI)' ..But since I am new to Abap , if you wish to reply, please use a little more detail and simple explanation, step by step so I can understand what is the idea, how it can be acheived...what kind of report should be used , techniques, tables etc...:)
    Appreciate your help!
    Regards,
    Boby

    Hi Boby,
    You need to create custom transaction to achive these results.
    you will have selection-screen ,it would be :
    Date : Here date would be mandatory  - Ranges Option
    Customer  - Optional field - Ranges
    Order #  Sales Order (Optional) Ranges
    Invoice #  - Invoice # (Optional) Ranges
    You will get the data based on ur selection-screen criteria ...
    First you will have customer order details from diffrent table
    VBAK,
    VBAP,
    LIKP
    LIPS
    VBRK,
    VBRP
    KNA1,
    VBFA Tables ( See the my sample program )
    Output would be :
    Customer #   Custome Name    Order #   Delivery #   Invoice #   Netpr, Netquantity ,
    Check the condition  whether invoice table has VBRK-RFBSK  = ''.
    See the my sample program : This is sales report by monthly..
    REPORT ZFDSALES_REPORT no standard page heading
                           message-id zwave.
    Data Declaration Part
    TYPE-POOLS
    type-pools : slis.
    Tables
    tables : VBAK,
             VBAP.
    Internal table for VBAK Table
    data : begin of i_vbak occurs 0,
           vbeln like vbak-vbeln,
           bstnk like vbak-bstnk,
           vdatu like vbak-vdatu,
           end of i_vbak.
    Internal table for VBAP and MATNR
    data : begin of i_vbap occurs 0,
           vbeln like vbap-vbeln,
           matnr like vbap-matnr,
           kdmat like vbap-kdmat,
           kwmeng like vbap-kwmeng,
           netpr like vbap-netpr,
           maktx like makt-maktx,
           end of i_vbap.
    Internal tables
    data : begin of i_sales occurs 0,
           vdatu like vbak-vdatu,
           bstnk like vbak-bstnk,
           matnr like vbap-matnr,
           maktx like makt-maktx,
           kdmat like vbap-kdmat,
           kwmeng like vbap-kwmeng,
           netpr  like vbap-netpr,
           end of i_sales.
    Variable for ALV
    data : v_repid like sy-repid,
           gt_fieldcat    type slis_t_fieldcat_alv.
    Selection-screen
    selection-screen : begin of block blk with frame title text-001.
    select-options : s_vbeln for vbak-vbeln,
                     s_erdat for vbak-erdat,
                     s_ernam for vbak-ernam,
                     s_vdatu for vbak-vdatu obligatory,
                     s_BSTNK for vbak-BSTNK,
                     s_KUNNR for vbak-kunnr,
                     s_matnr for vbap-matnr,
                     s_KDMAT for vbap-KDMAT.
    selection-screen : end of block blk.
    Initilization
    initialization.
      v_repid = sy-repid.
    S T A R T  -  O F  -  S E L E C T I O N ****************
    start-of-selection.
    Get the data from VBAK and VBAP Tables
      perform get_vbak_vbap.
    E N D  -  O F  -  S E L E C T I O N *****************
    end-of-selection.
    Display the data
      perform dispolay_data.
    *&      Form  get_vbak_vbap
          Get the data from VBAK and VBAP Table
    FORM get_vbak_vbap.
    Get the data from VBAK Table
      select vbeln bstnk vdatu from vbak into table i_vbak
                         where vbeln in s_vbeln
                         and   bstnk in s_bstnk
                         and   vdatu in s_vdatu
                         and   kunnr in s_kunnr
                         and   erdat in s_erdat
                         and   ernam in s_ernam.
      if sy-subrc ne 0.
        message e000(zwave) with 'No data found for given selection'.
      endif.
    Get the data from VBAP Table
      select avbeln amatnr akdmat akwmeng a~netpr
             b~maktx into table i_vbap
             from vbap as a inner join makt as b on bmatnr = amatnr
             for all entries in i_vbak
             where a~vbeln in s_vbeln
             and   a~kdmat in s_kdmat
             and   a~abgru = space
             and   a~matnr in s_matnr
             and   a~matnr ne '000000000000009999'
             and   a~matnr ne '000000000000004444'
             and   a~matnr ne '000000000000008888'
             and   a~matnr ne '000000000000001111'
             and   a~werks = '1000'
             and   b~spras = 'E'
             and   a~vbeln = i_vbak-vbeln.
      if sy-subrc ne 0.
        message e000(zwave) with 'No data found for given selection'.
      endif.
      sort i_vbak by vbeln.
      sort i_vbap by vbeln matnr.
      loop at i_vbap.
        read table i_vbak with key vbeln = i_vbap-vbeln
                                binary search.
        if sy-subrc eq 0.
          i_sales-bstnk = i_vbak-bstnk.
          i_sales-vdatu = i_vbak-vdatu.
          i_sales-matnr = i_vbap-matnr.
          i_sales-kdmat = i_vbap-kdmat.
          i_sales-maktx = i_vbap-maktx.
          i_sales-netpr = i_vbap-netpr.
          i_sales-kwmeng = i_vbap-kwmeng.
          append i_sales.
        else.
          continue.
        endif.
        clear : i_sales,
                i_vbap,
                i_vbak.
      endloop.
      sort i_sales by vdatu bstnk matnr.
      refresh : i_vbap,
                i_vbak.
    ENDFORM.                    " get_vbak_vbap
    *&      Form  dispolay_data
          Display the data
    FORM dispolay_data.
    Fill the Fiedlcat
      PERFORM fieldcat_init  using gt_fieldcat[].
      CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
       EXPORTING
      I_INTERFACE_CHECK                 = ' '
      I_BYPASSING_BUFFER                =
      I_BUFFER_ACTIVE                   = ' '
          I_CALLBACK_PROGRAM                = v_repid
      I_CALLBACK_PF_STATUS_SET          = ' '
      I_CALLBACK_USER_COMMAND           = ' '
      I_CALLBACK_TOP_OF_PAGE            = ' '
      I_CALLBACK_HTML_TOP_OF_PAGE       = ' '
      I_CALLBACK_HTML_END_OF_LIST       = ' '
      I_STRUCTURE_NAME                  =
      I_BACKGROUND_ID                   = ' '
      I_GRID_TITLE                      =
      I_GRID_SETTINGS                   =
      IS_LAYOUT                         =
          IT_FIELDCAT                       = gt_fieldcat[]
      IT_EXCLUDING                      =
      IT_SPECIAL_GROUPS                 =
      IT_SORT                           =
      IT_FILTER                         =
      IS_SEL_HIDE                       =
      I_DEFAULT                         = 'X'
      I_SAVE                            = ' '
      IS_VARIANT                        =
      IT_EVENTS                         =
      IT_EVENT_EXIT                     =
      IS_PRINT                          =
      IS_REPREP_ID                      =
      I_SCREEN_START_COLUMN             = 0
      I_SCREEN_START_LINE               = 0
      I_SCREEN_END_COLUMN               = 0
      I_SCREEN_END_LINE                 = 0
      IT_ALV_GRAPHICS                   =
      IT_ADD_FIELDCAT                   =
      IT_HYPERLINK                      =
      I_HTML_HEIGHT_TOP                 =
      I_HTML_HEIGHT_END                 =
      IT_EXCEPT_QINFO                   =
    IMPORTING
      E_EXIT_CAUSED_BY_CALLER           =
      ES_EXIT_CAUSED_BY_USER            =
        TABLES
          T_OUTTAB                          = i_sales
    EXCEPTIONS
      PROGRAM_ERROR                     = 1
      OTHERS                            = 2
    ENDFORM.                    " dispolay_data
    *&      Form  fieldcat_init
          text
         -->P_GT_FIELDCAT[]  text
    FORM fieldcat_init USING  e01_lt_fieldcat type slis_t_fieldcat_alv.
      DATA: LS_FIELDCAT TYPE SLIS_FIELDCAT_ALV.
    Delivery Date
      CLEAR LS_FIELDCAT.
      LS_FIELDCAT-FIELDNAME    = 'VDATU'.
      LS_FIELDCAT-OUTPUTLEN    = 12.
      LS_FIELDCAT-TABNAME    = 'I_SALES'.
      ls_fieldcat-seltext_L = 'Delivery Date'.
      APPEND LS_FIELDCAT TO E01_LT_FIELDCAT.
    Purchase Order #Material Description
      CLEAR LS_FIELDCAT.
      LS_FIELDCAT-FIELDNAME    = 'BSTNK'.
      LS_FIELDCAT-OUTPUTLEN    = 25.
      LS_FIELDCAT-TABNAME    = 'I_SALES'.
      ls_fieldcat-seltext_L = 'Purchase Order #'.
      APPEND LS_FIELDCAT TO E01_LT_FIELDCAT.
    Material
      CLEAR LS_FIELDCAT.
      LS_FIELDCAT-REF_FIELDNAME    = 'MATNR'.
      LS_FIELDCAT-REF_TABNAME    = 'MARA'.
      LS_FIELDCAT-FIELDNAME    = 'MATNR'.
      LS_FIELDCAT-TABNAME    = 'I_SALES'.
      ls_fieldcat-seltext_L = 'Material #'.
      ls_fieldcat-seltext_M = 'Material #'.
      ls_fieldcat-seltext_S = 'Material #'.
      APPEND LS_FIELDCAT TO E01_LT_FIELDCAT.
    Material Description
      CLEAR LS_FIELDCAT.
      LS_FIELDCAT-FIELDNAME    = 'MAKTX'.
      LS_FIELDCAT-OUTPUTLEN    = 40.
      LS_FIELDCAT-TABNAME    = 'I_SALES'.
      ls_fieldcat-seltext_L = 'Material Description'.
      APPEND LS_FIELDCAT TO E01_LT_FIELDCAT.
    Customer Material #
      CLEAR LS_FIELDCAT.
      LS_FIELDCAT-FIELDNAME    = 'KDMAT'.
      LS_FIELDCAT-OUTPUTLEN    = 35.
      LS_FIELDCAT-TABNAME    = 'I_SALES'.
      ls_fieldcat-seltext_L = 'Customer material no.'.
      APPEND LS_FIELDCAT TO E01_LT_FIELDCAT.
    Quantity
      CLEAR LS_FIELDCAT.
      LS_FIELDCAT-FIELDNAME    = 'KWMENG'.
      LS_FIELDCAT-OUTPUTLEN    = 15.
      LS_FIELDCAT-TABNAME    = 'I_SALES'.
      ls_fieldcat-seltext_L = 'Quantity'.
      APPEND LS_FIELDCAT TO E01_LT_FIELDCAT.
    Net Price
      CLEAR LS_FIELDCAT.
      LS_FIELDCAT-FIELDNAME    = 'NETPR'.
      LS_FIELDCAT-OUTPUTLEN    = 15.
      LS_FIELDCAT-TABNAME    = 'I_SALES'.
      ls_fieldcat-seltext_L = 'Net Price'.
      APPEND LS_FIELDCAT TO E01_LT_FIELDCAT.
    ENDFORM.                    " fieldcat_init
    Reward Points if it is helpful
    Thanks
    Seshu

  • How to schedule a workflow for recurring executions: The solution

    Scheduling a workflow for recurring execution has been long awaited in WFA, perhaps from 2.0 time. The following document shows how to get it done. I've also explained the logic behind it. It’s very simple to use, meets every requirement which one can have from a scheduler and of course highly flexible. Let's go!! The Real stuff. What is this? Is this actually a scheduler? No. This is actually a command in your workflow, but a special 'magical' command. This 'magical' command logic is built using the answers for the following questions: Can a workflow be scheduled for a delayed execution in a future time? Yes, but only one execution instance. If you want the next execution, execute the workflow again providing the same set of inputs and the execution date/time.During workflow execution, can a command inside a workflow get to know what is the  name of the workflow? YesDuring workflow execution, can the command know what is the job execution id? YesIs there any programmatic interface available to know what are the user input provided or a particular job execution? YesCan a command inside a workflow trigger another workflow? Yes.Can a command inside the same workflow trigger itself? Absolutely yes. I've ticked all boxes needed to build such a solution. The solution is to make the workflow a smart workflow, so smart that it can schedule itself for the next execution. It no longer needs any other task scheduler to tigger it. WFA provides a large set of REST APIs for other 3rd part SW integration. But I  also can make  good use of these APIs to make smart workflows. I have always believed that WFA should not only be seen as a framework for automating Storage boxes or server, but just about any task( inside a computer of course) which is done manually. WFA is an awesome product indeed.  So this is a command called "Workflow Scheduler" which  you can put in your workflow as another command. Prerequisites: You need PowerShell 3.0 on your WFA server. I certainly could have done it for PoSH2.0 as well, but life for web interfaces  using PowerShell is so much easier with Posh3.0. Posh3.0 is a big jump from 2.0. WFA is fully supported to work on Posh3.0. Its available by default in Win2012, Win2008 can be upgraded, Win2003 users can't use it. Add credentials of a WFA Admin/Architect in you WFA itself with Name/IP: localhost Match: ExactType: OtherName/IP: localhostUsername: <WFA Admin/Architect Username>Password: <User Password>   3.  Minimum WFA version 2.2. This is only needed for Importing the dar. I've provided the command code in text too. The command code is the real deal. How to use it? If you have a workflow which you want for recurring executions, just add this command "Workflow Scheduler" in it. The command takes parameters for the workflow execution intervals. For example minsInterval for executing this workflow every x minutes, or daysInterval for executing the workflow etc.Now just like a normal workflow execution execute this workflow deciding what is the trigger time. Example: Suppose you want the execution every day at 10:00 PM.So provide daysInterval = 1 And execute the workflow for a delayed execution at 10:00 PM. You can pick the day to start as you wish. The workflow will execute at 10:00 PM and when this execution reaches our magical command "workflow scheduler", this command will trigger the same workflow  with same set of inputs for the next execution at 10:00 PM tomorrow. And so on an so forth. I’ve attached a very simple example workflow here to help you understand. An Example of a workflow scheduled for recurring execution Daily at 11:30 PM starting 10-March-2015     How to stop/suspend this recurring execution? Easy. You just abort the next scheduled job execution in Execution=> Execution Status. The cycle will stop. How to resume it? Easy again. Just resume the same aborted job. The cycle restarts. Can I change the schedule execution time? Yes. After aborting the current execution, you can resume the same workflow at a new time. Execution interval can't be modified as you can't change the command parameters. But the recurring execution now can occur at a new time. Where or which position to place this “workflow scheduler” command in your workflow? At the beginning ? At the end? Or somewhere in the middle. This completely depends on your choice. See some below cases. You don't want the next job execution scheduling to happen if any of the commands in my current workflow execution fails: Put command “workflow scheduler” in the end. It will trigger the schedule of the next job execution only when all real original commands of your workflow have passed. else not.     You want continuous job executions irrespective of the workflow command failures: Put it in the beginning. It will trigger the schedule for next execution before any of the actual command begin executing.     You want an approval before the next execution job is scheduled: Add an approval point before the comamnd.           So it’s all left to you.      Can an operator decide the execution schedule? Yes, but which workflows will be available to him/her for this recurring execution will have to be decided by the designer. This is a good thing to have as it serves for access control in a way. The Architect/Admin can now restrict which workflow can be put for recurring executions. Operators can’t execute just any workflow available to him for automatic recurring execution. And the workflow designer can also choose which scheduling parameter is to be made a variable for the operator. For example the designer want the operator to schedule a given workflow only for weeks Interval and not months or days i.e. he/she can only chose to schedule for weekly, biweekly etc. executions and  nothing else. For this the designer can define a User-Input variable only for weeksInterval parameter. It’s Done. You want workflow execution to be scheduled either for daily or once in 2 days but not any other. You can restrict this. Or he/she wants to give full freedom to the operator make his/her own decision about scheduling, he defined user-input variable for all scheduling parameters. The workflow designer wants weekly schedule but the day should not be a weekday: You can even do this. Is this flexible enough for my requirements? I’ve attached the very command code. You can modify the command as per your requirements. Suppose you want daily execution of a certain workflow at 10:00 PM but skip a day of execution if the day is a Monday. Modify the code check for the day and add another day if it’s a Monday. Its posh code and highly readable. So you can see how this can be used in a  variety of ways. This is the beauty of a programmatic solution. Its highly flexible, it allows users to design solution based on their requirements. Flexibility is the heart & soul of WFA. Thats why I like it. I have a workflow but I don't want to modify it by adding a new command in it. Can I still use this solution? Yes but with WFA 3.0 on wards. WFA3.0 allows to create modular workflows. Create a parent workflow with you actual workflow as a child workflow in it. Add our “workflow scheduler” command too. So now you don't need to touch your existing workflow. I've attached a workflow example here.   Have fun!! sinhaa  

    Providing a new version 1.1.0 of the command "WFA Schedular" Changes made: Added conditional String Representation based on the Scheduling parameter provided. Provided check for the right number of parameters passed into the command.Added a new parameter "Expiry Date" to automatically stop the recurring execution upon expiry.Check for Posh3.0 version in code.Have Fun!! sinhaa Below example for:Schedule a workflow for recurring execution every alternate day i.e. once in 2 days at 10:30 PM starting 06-Jul-2015 (Today's date is 02-Jul-2015) . The recurring workflow execution  should expire on 31-Dec-2015 and stop.  

  • Debug background task in custom workflow for PO change

    Hi,
    We are on ECC 6.0 EHP7.
    I have a custom workflow for PO object type(delegated to std object type BUS2012).
    There is a background task which has some custom code written and I need to debug this code.
    Can someone please let me know how to debug a background task?
    Thanks.

    As suggested by ronen we can debug through swo1 but we have to pass values manually for importing parameters, by using sm50 also we can do debug and there is one more way  to debug
    if its custom task change background  task to fore ground and change business object method also change it to fore ground and activate the work flow.
    now change any  po  then it will stop at that step now take that work item id in swi1 and go to swia and execute after putting break point in that method of business object.
    But best way to debug  through infinite loop i.e sm50.
    suri

  • Custom workflow for manual merch projects

    Hi,
    Having issues in configuring custom workflow.
    In ATG10.0.3 created a custom workflow(editCommerceAssets.wdl) & configured with catalog import job (importing thru spreadsheet & creating a Merch project).This works successfully.
    I am trying to configure this custom workflow for manually created projects in BCC.
    In the following files I tried replacing commonWorkflow.wdl to editCommerceAssets.wdl.
    <localconfig>\atg\commerce\web\assetmanager\taskConfiguration.xml
    <localconfig>\atg\commerce\web\workflowActivities.xml
    But getting this error in pub console:
    10:13:23,195 WARN [ActivityManager] The workflow activity with ID /Common/commonWorkflow.wdl has been registered multiple times for the same workflow. Please verify your workflow
    configuration as this is not allowed.
    10:14:40,453 ERROR [ApplicationManager] There is no application configured with ID '/Common/commonWorkflow.wdl'.
    Any recommendations?
    Thanks!
    Mani
    Edited by: user11263665 on Oct 17, 2012 9:38 AM

    It is possible that the workflow has already been registered in db before you modified workflowActivities.xml.Did you try cleaning up workflow tables and restart the server??
    epub_workflow_info, epub_coll_workflow, epub_ind_wf,epub_wf_server_id tables
    Make sure there is only one entry for each workflow in epub_workflow_info. If there are multiple entries, then it may be coming from 2 different places and you need to disable one of them. Whenever you create custom work flow, copy the existing workflow and modify it and give it a different name. If you are importing programmatically, you really dont need to configure it in taskConfiguraiton.xml ( as it corresponds to settings related to which item-descriptors, tabs, security in BCC gui).
    -karthik

  • Custom Workflow for sending Remainder mail in MS CRM 2013/2015 online

    Hi All,
    We have a requirement to send a remainder email before 5 days,3 days and on the same day of the M/TC date in lead form. To achieve this we tried using Custom Workflow. Below is the logic tried but in the highlighted line
    not able to retrieve the "M/TC date" value, this results in no output.
    Kindly suggest where we are going wrong or a best approach to do this.
    Parameters:
            [RequiredArgument]
            [Input("InputEntity")]
            [ReferenceTarget("lead")]
    public
    InArgument<EntityReference>inputlead
    { get;
    set; }
            [Output("TaskCreated")]
            [ReferenceTarget("task")]
    public
    OutArgument<EntityReference>
    taskCreated { get;
    set; }
    code:
                try 
                Entity lead
    = (Entity)service.Retrieve("lead",
    context.PrimaryEntityId, new ColumnSet(newString[]
    { "new_mtcdate" })); //  (unable to
    retrieve the mtcdate)            
                      Guid leadId
    = this.inputlead.Get(executionContext).Id;
                    if(lead.Contains("new_mtcdate"))
                      {  DateTime date
    = DateTime.Now;
                          DateTime mtcdate
    = (DateTime)lead["new_mtcdate"];
                          TimeSpan elapsed
    = date.Subtract(mtcdate);
                          double days
    = elapsed.TotalDays;
                          Entity task
    = new Entity();
                          task.LogicalName = "task";
                          if (days
    == 5)
                          {task["subject"]
    = "Five days more for the Meeting";
                              task["regardingobjectid"]=new EntityReference("lead",leadId);
                               Guid taskId
    = service.Create(task);
                            this.taskCreated.Set(executionContext,new EntityReference("task",
    taskId));}
                          if (days
    == 3)
                          {task["subject"]
    = "Three days more for the Meeting";
                              task["regardingobjectid"]=new EntityReference("lead",leadId);
                               Guid taskId
    = service.Create(task);
                            this.taskCreated.Set(executionContext,new EntityReference("task",
    taskId));}
                          if (days
    == 0)
                          {task["subject"]
    = "Today you have Meeting";
                              task["regardingobjectid"]=new EntityReference("lead",leadId);
                               Guid taskId
    = service.Create(task);
                            this.taskCreated.Set(executionContext,new EntityReference("task",
    taskId));
    Regards, Rekha.J

    Hi,
    Try with replacing
    Entity lead = service.Retrieve("lead", context.PrimaryEntityId, new ColumnSet(new string[] { "new_mtcdate" }));
    also make it confirm, you are getting EntityId.
    Also check  Link

  • Custom workflow for Fiori Approve Timesheets

    Hello All,
    I am investigating complexity of adding custom workflow to Approve Timesheets.
    There is BADI SRA010_BADI_TIMESHEET_APV.
    Any experiences/advices  ?

    Hi Lukasz,
    How do you change approver using data from Ztable in the current system?
    If you are talking about workflow approver determination logic, it is a job for Workflow Engine and not for Fiori.
    Regards, Masa
    SAP Customer Experience Group - CEG

  • Custom Workflow for custom HCM form - reg

    Hi,
    We have a custom form designed and having a workflow for that. We have developed the workflow like any other workflow for appraisals for example or in SD. But here while test run of process we are getting error saying 'Work Item not found' though the work item is present in SWI1.
    We have below steps.
    Header
    Importing form container
    User Desicion (Approve/Reject)
    If approved update database.
    Can any one correct me if am wrong.
    Raj

    Hi,
    For workflows involving HCM forms, there some standard tasks which should be made use of:
    Task Group TG17900001: Components for HCM Processes & Forms
    Task Group TG17900002: Interactive Components
    Standard Task TS17900100: Edit Form
    Standard Task TS17900101: Approve Form
    Standard Task TS17900102: Form Is Edited Again by Author
    Standard Task TS04000018: Process PD Form
    Standard Task TS04000019: Approve PD Form
    Standard Task TS04000020: PD Form Is Edited Again by Author
    Workflow Template WS17900260: Save Form with Error Handling
    Workflow Template WS17900404: Draft for Process Start
    Workflow Template WS17900418: Forward: Process Start with Errors
    Task Group TG17900003: Background Components
    Standard Task TS17900106: Check Existence of PA Infotype
    Standard Task TS17900107: Check Form Data
    Standard Task TS17900108: Save Form Data
    Standard Task TS17900110: Import Field Value to WF Cont. Element
    You can use TS17900110, TS17900101/TS04000019 and TS17900107. Please make sure you read some documentation before you use these tasks.
    Let me know, whether this is helpful.
    Thanks,
    Sukumar.

  • Custom Workflow for User Requirment

    hi ,
    i am creating a workflow for which is custom .
    i have 1 module pool program where i have 7 fields.
    User can create the data and save it .
    once he save the Data the workflow should trigger.
    i have created a Z business object wherein i have created 4 key fields and 3 attributes according to data in the custom table
    the BO has no supertype. and created 1 event save
    now my question is where should i write the code for triggering the workflow on the save of the entries in the module pool program. and i am also i am responsible for showing the approver in the table after the decision is taken in workflow activtiy
    please suggest
    Thanks on advance
    Chitis

    Hi,
    Even i haven't worked on such requirement.
    I know how to trigger a workflow or start a workflow through customization.
    But i like to know in case of module pool programming where I am supposed to write the code?
    Whether in PAI or PBO or anywere else?
    Let us know.
    Thanks,
    Raj

  • Custom image for shipping options

    Hey I was wondering if its possible to display a custom image for each shipping option. So for example if you select regular postage, an image of regular postage would be displayed. If you select express postage, same thing. Is this possible with Business Catalyst?
    One other thing. Is it possible to have free shipping option for 2 or more of a product, but also have express option if they want it?
    Cheers,
    Garuda

    Hi Garuda,
    The image thing would have to be implemented with some JS. You'd listen to the dropdown change and then render the image according to the shipping selection. I unfortunately don't have the code for you that will do this.
    As for the free shipping option, you'd need to use a user defined option of $0 rather than the Free Shipping option and then set your weights so that both options are displayed at the same time when 2 or more items are added.
    Cheers,
    -mario

  • How to create custom workflow for document library?

    Hi All,
    I have a document library with a custom  people picker column "assign to". Need to create approval workflow using designer, approval must send to person who is selected in "assign to" column. I tried with designer workflow,But finally
    facing "The e-mail message cannot be sent. Make sure the e-mail has a valid recipient". How to fix and achieve my scenario? Thanks in advance!

    I would suggest you to firstly print the assign to value using "Log to history" action. Moslty it could be of three reasons,
    1. Assign to value is not getting populated correctly in your SPD workflow
    2. Email server is not configured properly, If alerts and other emails are workfing in your server then this would not be a reason for issue
    3. The user your trying to send an email does not have valid email
    do let us know if can get the user email in your workflow.
    Hope this helps!
    Ram - SharePoint Architect
    Blog - SharePointDeveloper.in
    Please vote or mark your question answered, if the reply helps you

  • Custom workflow for course registration

    Hi,
    I have an assingment to create list where items are courses and when new item is created you can give max participant value. List and columns are ok. (max participants(integer), current participants(integer), open/closed(choice), all participants(text)
    So this is what I want to do with workflow:
    When someone wants to join the course, person will click "Join course" button
    workflow starts and it will add +1 to 'current participants'
    workflow adds display name of person to column 'all participants'
    if 'current participants' is same as 'max participants' then course will change 'closed'
    I can use SP designer with workflow 2010 so is this impossible?
    I have possibility to use visual studio 2010 but i'm not very familiar with C# workflows.
    My biggest worries are that
    how to store all participants to one column (multiline text) with workflow
    how to display participants column only to admin users.
    Thanks for any help/suggestions.
    Antti Astikainen

    Hi Antti,
    I have done similar project in past and used only SharePoint Designer. Yes it is very much possible using SPD.
    how to store all participants to one column (multiline text) with workflow
    >> Maintain a multiline text column as you assumed and then just do
    attendee = CurrentItem:Attendee +";"+attendee
    how to display participants column only to admin users.
    >>   you can hide this column from default view or maintain a different list where course name(lookup)
    and this attendee (multi line) will be saved. You can add this multi line in master course list as well (depending on your design)
    Using SPD workflow you can update same list item / different list item / and it has many other action.
    For 'State Machine workflow' you may need VS.
    Please 'propose as answer' if it helped you, also 'vote helpful' if you like this reply.

  • Using customer workflow for delete action on active sync

    The following from is called by a partent form when the feedOp is delete.
    <?xml version='1.0' encoding='UTF-8'?>
    <!DOCTYPE Configuration PUBLIC 'waveset.dtd' 'waveset.dtd'>
    <Configuration name='VDSActiveSyncDeleteForm' wstype='UserForm'>
         <Extension>
              <Form>
                   <Field name='viewOptions.Process'>
                        <Expansion>
                             <s>Custom User Delete</s>
                        </Expansion>
                   </Field>
                   <Field name='deleteFields'>
                   <Field name='resourceAccounts.currentResourceAccounts[Lighthouse].selected'>
                   <Expansion>
                   <s>true</s>
                   </Expansion>
                   </Field>
                   </Field>      
              </Form>
         </Extension>
         <MemberObjectGroups>
              <ObjectRef type='ObjectGroup' id='#ID#Top' name='Top' />
         </MemberObjectGroups>
    </Configuration>
    The default delete user workflow keeps running. I am verify this by setting the filetrace in the system configuration.
    What am I doing wrong?

    Looks like 'viewOptions.Process' does not work on a delete feedop....but this looks to work
    <Field name="processInputs.task.process">
    <Expansion>
         <s>NIPR Delete User</s>
    </Expansion>
    </Field>

  • Custom workflow for Over Time

    Hi All,
              I have a requirement for Over time workflow. There is no standard workflow is there for this. FC asked me to develop a screen for over time in which Reporting manager will enter the employees overtime details, when he clicks on submit button it should go for approval to DGMs inbox. If DGM approves the OT then it go for Time office where they may change the OT data or they may approve the OT.
    My issue is I have created the entire flow through modulepool. I have developed the screenand program etc.,. when RM submits I am triggering an event and then WF starts. Now when the DGM receives the workitem how can I display the second screen which are having the approval Rejection and Change buttons appears, how can I write the logic inside the BO Method to call the 2nd screen?.
    Can anybody please guide me how to complte this WF.
    Regards.
    Srija.

    Hi,
    We also had the same requirement, we handled the same using Module Pool Programming and Workflow.
    My Understanding: Imagine you need to call the Module Pool program to get approval for the OT.
    Steps:
    1. Place one work item in DGM's Inbox, when DGM double clicks the work item, write a method to call the same module pool in display or Change mode as per your requirement.
    2. Now, in Step 1 use Import / Export Memory ID's.
    In BOR Object Method, before doing CALL TRANSACTION <ZXYZ>. You need to Export one Memory ID say M1 with value "X"
    In PAI of the appropriate module pool screen you need to IMPORT data from Memory ID into one variable say WS_M1.
    3. Create two buttons on the screen keep them in invisible mode, (just check the property of the button element).
    Now, write the code like IF WS_M1 equal to 'X', loop at screen, and make the two buttons visible, if control coming from workflow task, if there are more elements to control it is easy to use groups for screen elements.
    4. Now, in PBO of the same screen, capture the ok_code of the Approve or Reject button, raise appropriate events, update data base.
    5. Make sure your BOR method is asynchronous, other wise if the manager clicks cancel or F3 then task will disappear.
    Pls let me know if you need more info.
    Regards,
    Mohan Vamsi

  • Prob. with doc registered under application other than SHIPPING EXECUTION

    Hi,
    We have a custom Pick Pack Slip report which we have registered under Custom Application.
    While Creating Document Set, if the document is registered under Custom Applicaiton, the document is not getting generated. (Concurrent program itself is not getting executed for this document) but if the document is registered under SHIPPING EXECUTION applicaiton, its getting executed.
    I have created one Document Set and while doing PICK RELEASE, I am using this document set. Initially I have attached only one document which belongs to custom application and ran pick release but it didnt submit any document. Then I added one more document which belogns to Shipping execution and submitted pick release one more time. This time it has executed program for the one belongs to shipping execution but not the custom one.
    If I register the same custom report to Shipping Execution, then its working fine !!! But I dont think this is the right approach to register all custom reprots to Oracle Shipping application.
    Please suggest !!!

    Yes..It won't work..I too tried it..
    Please open a TAR and work with oracle..
    Let's see what they are upto..

Maybe you are looking for