Defer train-stop navigation for Custom Processing

Hi,
I'm using JDeveloper version - 11.1.1.6
I'm using Train Component in one of the task-flow with 3 train stops. I want to defer the Train stop navigation if the custom validation fails.
I referred the sample 97 in ADF Code Corner - "How-to defer train-stop navigation e.g. for custom form validation".
I implemented the code in similar lines. I'm able to see the warning dialog in my application when validation condition is not met. When i click the 'OK' button, I'm able to navigate to the next train stop.
But when I click the cancel in the dialog and update the view to fulfill the condition, I'm not able to navigate to next stop.
My Code snippet is as follows:
               <af:train value="#{controllerContext.currentViewPort.taskFlowContext.trainModel}" id="t1" var="trainNode" rendered="#{(pageFlowScope.TDMConnectivityChannelTreeBean.hideSearch)}">
                    <f:facet name="nodeStamp">
                        <af:commandNavigationItem id="cni1" disabled="#{trainNode.disabled}" textAndAccessKey="#{trainNode.textAndAccessKey}"
                                                  visited="#{trainNode.visited}" actionListener="#{pageFlowScope.TDMConnectivityChannelTreeBean.processTrainStop}">
                            <f:attribute name="trainStopNode" value="#{trainNode}"/>
                        </af:commandNavigationItem>
                    </f:facet>
                </af:train>
                <f:facet name="bottom">
                    <af:popup contentDelivery="lazyUncached" id="pt_p1" binding="#{backingBeanScope.trainSourceDialog}">
                          <af:dialog id="pt_d1" title="Confirmation Dialog" dialogListener="#{pageFlowScope.TDMConnectivityChannelTreeBean.processDialogAction}">
                                <f:facet name="buttonBar"/>
                                <af:outputText value="Source Channels are not selected, Do you want to navigate to Target Connectivities?" id="pt_ot1"/>
                           </af:dialog>
                     </af:popup>
                </f:facet>
        Please let me know if I'm missing something here.
Thanks
Ravi

Frank,
I tried to put the following code in the action listener method and I'm able to navigate to next stop.
                UIComponent comp = (UIComponent) ADFUtil.evaluateEL("#{backingBeanScope.trainSourceDialog}");
                if (null != comp) {
                    UIComponent dialog = comp.getChildren().get(0);
                    if (null != dialog) {
                        queueTrainStopEventToRegion(selectedTrainStop.getOutcome(), dialog);
                }Not sure why I have to do this. Can you comment on this?
Thanks
Ravi

Similar Messages

  • FM to create support message for custom process type other than 'SLFN'

    Hi All
    Is there any function module or BAPI which will create support message for the custom process type other than SLFN.
    BAPI_NOTIFICATION_CREATE is posting only for the process type 'SLFN'
    Thanks in advance
    Regards
    Ravi

    Any ideas?

  • [important] click current train stop will run the method

    Hi all,
    I have a question about train stop, I have a train with three train stops, and in the second train stop, I have a method bind to this train stop, if user navigate to the second train stop, this method will run, but in the second train stop, I found that I still can click this page's train stop in the train stop navigation, so this method will execute each time when I click the train stop. Do we have some problems to avoid the issue, I don't want to this method run when click the current train stop, but only run when other train stops navigate to this train stop. Thanks so much!
    Allen

    Thanks for your reply, Arun, my Jdev version is 11.1.1.5, I don't add a switcher component to execute the method, about refreshCondition, it's a attribute? how can I set refreshCondition? I want to know, ADF doesn't have a way to resolve the issue? you know, it's bad that allow the train stop clickable in this train stop, we should don't let this bind method run when click the current train stop. Thanks again!

  • Error in Custom Process Type Howto

    I have been following along the lastest howto document for custom process types (BI 7.0):
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/509f3ae6-e36e-2910-48a8-ab43dc167dd9
    I copied its code and everthing compiles fine, but when executed, the program crashes when you click on the green arrow to confirm the selected variant. The method call to RSPC_GET_CHAIN seems to be wrong:
    Type conflict when calling a function module.
    An exception occurred that is explained in detail below.
    The exception, which is assigned to class 'CX_SY_DYN_CALL_ILLEGAL_TYPE', was
    not caught in
    procedure "IF_RSPC_GET_VARIANT~GET_VARIANT" "(METHOD)", nor was it propagated
    by a RAISING clause.
    Since the caller of the procedure could not have anticipated that the
    exception would occur, the current program is terminated.
    The reason for the exception is:
    The call to the function module "RSPC_GET_CHAIN" is incorrect:
    The function module interface allows you to specify only
    fields of a particular type under "I_CHAIN".
    The field "L_S_TABLE-VALUE" specified here is a different
    field type
    1 METHOD IF_RSPC_GET_VARIANT~GET_VARIANT.
    2   DATA: L_T_CHAINID TYPE RSPC_T_CHAINID,
    3         L_S_CHAINID TYPE RSPC_S_CHAINID,
    4         L_T_CHAINT TYPE RSPC_T_CHAINT,
    5         L_S_CHAINT TYPE RSPCCHAINT,
    6         L_S_CHAIN TYPE RSPC_S_CHAIN,
    7         L_T_TABLE TYPE TABLE OF SVAL,
    8         L_S_TABLE LIKE LINE OF L_T_TABLE.
    9
    10 * ... Read Process chains from control table an
    11   READ TABLE I_T_CHAIN INTO L_S_CHAIN INDEX 1.
    12   L_S_TABLE-TABNAME = 'ZPROCESS_CONTROL'.
    13   L_S_TABLE-FIELDNAME = 'ZCHAIN_ID'.
    14   L_S_TABLE-VALUE = '*'.
    15   APPEND L_S_TABLE TO L_T_TABLE.
    16   CALL FUNCTION 'POPUP_GET_VALUES'
    17     EXPORTING
    18       POPUP_TITLE = 'Process Chain to Check'
    19     TABLES
    20       FIELDS      = L_T_TABLE.
    21
    22 * ... Check selected process chain
    23   READ TABLE L_T_TABLE INTO L_S_TABLE INDEX 1.
    >>   CALL FUNCTION 'RSPC_GET_CHAIN'
    25     EXPORTING
    26       I_CHAIN         = L_S_TABLE-VALUE
    27       I_OBJVERS       = 'A'
    28       I_WITH_DIALOG   = RS_C_TRUE
    29       I_ONE_NO_DIALOG = RS_C_TRUE
    30     IMPORTING
    31       E_T_CHAIN_IDS   = L_T_CHAINID
    32       E_T_CHAINT      = L_T_CHAINT
    Does anyone know how to fix this?
    Thanks,
    Dennis

    I was able to fix it myself:
    CALL FUNCTION 'RSPC_GET_CHAIN'
    EXPORTING
    I_CHAIN = L_S_TABLE-VALUE(25) " <- this is the fix
    I_OBJVERS = 'A'
    I_WITH_DIALOG = RS_C_TRUE
    I_ONE_NO_DIALOG = RS_C_TRUE
    IMPORTING
    E_T_CHAIN_IDS = L_T_CHAINID
    E_T_CHAINT = L_T_CHAINT

  • Custom Process Code - IDOCS

    Hi Guys!
       This Question is similar to my previous post i want to know whats the reason, when we go for custom process code development for standard idocs & message types, any way sap has provided that.
      Is there any nessacary to devlop that, any way we want to develop, whats the real reason.
      Can u give details.
      Second, when we develop our custom process code we give our z development class name & transport request is there any other objects of ALE we store in them & transport the same.
      Thanks.

    Hi Rahul,
         A. The segments which i have used are listed below.                                                                               
    EDI_Z50               EDI IDOC, invoice header, standard data                   
            EDI_Z3                 EDI IDoc type: purchase orders etc.: header, partner info 
            <b>ZEDI_Z51          EDI IDOC, invoice line items, standard data               </b>
            EDI_Z55                EDI IDoc type: totals, conditions                         
            EDI_Z52                EDI IDOC, invoice totals, standard data                   
            EDI_Z53                EDI IDOC, invoice totals, taxes                                                                               
    The bolded one is the customised segment, as i have mentioned early,in which we have used Additional fields for debit and credit memo.
    B. You mean, you need the coding of the functional module.
    C. Regarding process code, you can just, link your FM to Process code in we42 for Inbound .
    Enhancements in the sense, extended the exsisting IDoc and related information?
    You can mail me on [email protected] I can send you an document for that.
    Thanks
    Manju

  • Trains Stops and Insert new data using invokeAction!?

    Hi! I am using Train element to insert data in some tables. When I open first Train Step I use invokeAction to call CreateInsert operation and could insert new data in table1. Then I go to Train Step 2 and using invokeAction insert data in table2 and so on.
    I have two questions:
    1. When I go back to previous Train Step using "Back" button then invokeAction again calls CreateInsert operation, but I don't need it. It is possible to call CreateInsert operation using invokeAction ONLY if user goes forward by pressing "Next" button in Train element? If it is possible then What I need to change in my code?
    invokeAction source:
    <invokeAction Binds="CreateInsert" id="insert_mode"
                      RefreshCondition="${!requestContext.postback and empty bindings.exceptionsList}"
                      Refresh="prepareModel"/>2. It is possible to DISABLE some Train Stopas. For example, I want to disable first Train Stop for user when he go to next steps, so that user can't anymore go back to first Train Stop.
    Hope for Your answers, best regards, Debuger!

    Hi, Umesh! My use case is following: I am on first Train Stop and enter some data. Then I go to second Stop and enter some data and so on. When I go to first, second etc. Train stops I use invokeAcrion to call CreateInsert. I need to call only this operation when I press next button. When I press Back button I do not need to call Create Insert action. Hope You understand me.
    So, as I understand, i need to create method which indicates variable value based which button is pressed. But I don't understand how I can say, variable x=nextbuttonpressed or x=backbuttonpressed based on which button I realy press. And do not understand also how to use this variable in invokeAction Refresh Condition?
    Hope You can explain me that with steps to do in my case and can help with code?
    Waiting for response, best regards, Debuger.

  • Showing the custom train stop as default activity based on condition

    Hi Folks,
    I'm using JDeveloper version 11.1.1.5.0. I have requirement where in i have to show the custom train stop as default train stop based on some business logic instead of default activity mentioned as part of task flow with train.
    Test Case:
    I have a dynamic region where i'm loading diff task flows based on condition. Let us consider i have two task flows TF1, TF2 and One of these task flows (TF2) contains a train.
    TF2 task flows has a train with train stops as ts1, ts2 and ts3 and ts1 has been configured as default activity in TF2 task flow
    I'm loading these task flows into dynamic region based on my business logic. Currently i'm in TF1 and i'm doing some action in TF1 page. Based on my business logic in one of the button actions in TF1, i have to load TF2 into region and have to set either ts1, ts2 or ts3 as default activity. its not like every time only configured default activity as part of TF2 is shown.
    Consider this case. in IF1 i have 3 buttons b1, b2 and b3. When i click on b1, i have to load TF2 into region and ts1 as default activity. Like wise if i click on b2 in TF1, i have to load TF2 abd ts2 as default activity. Like wise if i click on b3 in TF1, i have to load TF2 abd ts3 as default activity.
    I have summarized my test case here. Its not exactly 100% same but it more or less like based on some business logic in TF1 i have to load TF2 with specific train stop as default activity.
    Please help me in this regard. Is this possible in ADF? if yes provide some pointers.
    NOTE:
    I'm able to show the specific trainstop as the selected one but its content is not showing. Though i'm able to see my intended trainstop selected but content is always the content related to the default activity configured as part of task flow.
    I have used below code to acheive ( setting atleast intended train stop as the selected on)
    TrainModel trainModel = TrainUtils.findCurrentTrainModel();
    trainModel.setCurrentTrainStop(activityId);
    [activity id i'm getting from model it self like java.util.Map<ActivityId, TrainStopModel> mapTrainStops = trainModel.getTrainStops(); and intended activityId is provided}
    // note end
    Thanks,
    Mahipal

    Hi Jobinesh,
    Thanks for your reply.
    When i try to do the navigation with in the task flow i.e. with in the train task flow, i'm able to navigate fine. But for different taskflow, i'm unable to do it.
    for ex: in my case i have three train stops ts1, ts2 and ts3. I have placed a button in ts3 and i'm returning the respective navigation el expression to navigate to either ts1 or ts2 in action method of this button. I'm able to do this successfully. but when i come from different taskflow, i'm unable to do this.
    I have tried this link as a workaround but it is not working.
    http://www.oracle.com/technetwork/developer-tools/adf/learnmore/97-deferred-trainstop-navigation-1528557.pdf
    i have tried this way, but it is not working.
    FacesContext fctx = FacesContext.getCurrentInstance();
    ExpressionFactory expressionFactory =
    fctx.getApplication().getExpressionFactory();
    ELContext elctx = fctx.getELContext();
    MethodExpression methodExpression =
    expressionFactory.createMethodExpression(elctx,
    "_adfcActivityRequest./WEB-INF/task-flow-definition.xml#task-flow-definition@*ts3*",
    String.class,
    new Class[] { });
    *//NOTE: ts3 is the activity id of third train stop*
    //queue action in region
    myspaceRegion.queueActionEventInRegion(methodExpression,
    null, null, false,
    0, 0,
    PhaseId.INVOKE_APPLICATION);
    Please let me know any pointers for this problem. is there any example with routers navigation rules which can be called from another task flow.
    Thanks,
    Mahipal

  • How to set value for  skip condition in train stop property of train compnt

    Hi,
    Iam using JDev 11.1.1.5 version, i have created a TaskFlow where having train components pointing to different jsff pages, moving from one jsff page to another jsff page.
    I want to validate the input fileds in one of the jsff page, then only have to move to next jsff page. For this, how can i set skip property of train component....to disable to go for next train component...?
    Note: I want to set boolean value(returns 'True', if all input fileds are filled, otherwise 'False') into skip property of train component.
    Regards.

    You can use the skip property of the train stop. You can have an EL expression for it, some thing like this #{pageFlowScope.isContinueEnabled}.
    Once all the mandatory fields are entered, you can set the isContinueEnabled flag and refresh the train button bar.
    For more info refer this: http://docs.oracle.com/cd/E14571_01/web.1111/b31974/taskflows_complex.htm#CJHFBFIE
    Also, you can try navigating to different train stops programmatically.
    Check: 082.      How-to programmatically navigate ADF train models
    in http://www.oracle.com/technetwork/developer-tools/adf/learnmore/index-101235.html

  • Avoid Duplicate Tasks when Expanding Groups for Custom Task Process

    Is there a way to:
    Avoid Duplicate Tasks when Expanding Groups for Custom Task Process?
    I've got a people metadata column that I am planning on putting groups into.  I want the groups to expand and send a task for all users in the groups.  I also want to avoid creating multiple tasks if a user happens to be in two groups at the same
    time.
    I'm trying to work out a way to assign users a read task based on job training requirements.  Right now assigning groups and using a workflow task to confirm read is what I'm trying to accomplish.  I just end up getting two tasks for a user if
    their in multiple groups.
    David Jenkins

    Hi David,
    Please verify the followings:
    After Participants, select Parallel(all at a once)
    Expand Task Options, select ‘Assign a task to each member within groups’
    Open the action properties, make sure ExpandGroup is Yes
    Also in SharePoint Designer ,you can edit the property for the Start Approval Porcess to enable ExpandGroup:
    Reference:
    https://social.msdn.microsoft.com/Forums/office/en-US/d14da1c4-bd5a-459b-8698-3a89bb01e6ad/expand-groupnot-creating-tasks-for-users-issue-in-sharepoint-2013-designer-workflow?forum=sharepointgeneral
    https://social.technet.microsoft.com/Forums/office/en-US/ac245d45-ff66-4341-815c-79213efc4394/sharepoint-2010-designer-workflows-and-sharepoint-user-groups?forum=sharepointcustomizationprevious
    Best Regards,
    Eric
    TechNet Community Support
    Please remember to mark the replies as answers if they help, and unmark the answers if they provide no help. If you have feedback for TechNet Support, contact
    [email protected]

  • Custom af:train model to visit any train stop

    Hi
    I am using jdev 11.1.1.6.0 and af:train component in bounded taskflow..
    the default behavior with train component is, i can visit the train stop next to the current stop, and the already visited train stops.. Does anybody has the sample for custom train model where all the train stops are enabled always?
    Thanks

    All you have to do is to set the sequential property of each of the train stops to false. select a train stop in hte task flow and open the 'train stop' node in the property inspector where you find the Sequential property.
    <view id="view2">
          <page>/view2.jsff</page>
          <train-stop id="__3">
            <sequential>false</sequential>
          </train-stop>
        </view>Timo

  • The customizing navigation for t.code OBA1

    Hi All,
    could anyone show me the customizing navigation for t.code OBA1
    Thanks

    IMG -> Financial Accounting -> General Ledger Accounting -> Periodic Processing -> Valuate -> Foreign Currency Valuation -> Prepare Automatic Postings for Foreign Currency Valuation.

  • Where did the "Stop" button go on the Navigation Bar in ff4? It isn't included in the Customize box. Is there anyway to install the "Stop" button for loading web pages or is this option compeletly gone from Firefox now?

    Just installed upgrade to Firefox 4.0. Where did the "Stop" button go on the Navigation Bar. I checked the Customize dialogue box and it isn't included. Is anyone else missing it? Is there anyway to install the "Stop" button for loading web pages or is this option completely gone from Firefox now? It was a very helpful button and allowed us users to stop a web page and move on if it wasn't what we needed.

    In Firefox 4 by default the Stop, Go and Reload buttons are combined and attached to the right hand edge of the location bar.
    When you are typing in the location bar it will show the Go button. When a site is loading it shows the Stop button. At other times it shows the Reload button.
    If you want separate buttons, right-click on a toolbar and choose Customize, you can then drag and drop the stop or reload buttons and place them elsewhere. If you place them in the order "Reload-Stop" on the right hand edge of the location bar they will be combined again. For more details on customizing the toolbar see https://support.mozilla.com/kb/How+to+customize+the+toolbar

  • Parallel Processing in CRM 5.0 for Customer download

    Hi
    I was referring to OSS note 350176 for implementing parallel processing. I wanted to achieve parallel processing for request loads for Customer download.
    Is it possible to achieve it by setting the parameter CRM_MAX_QUEUE_NUMBER_INITIAL in CRMPAROLTP or it can be achieved only through implementing exits?
    Thanks for your help in anticipation.
    Regards
    Karthik

    HI
    Karthik in Parralllel processing first you need to set up diffent filters for diffrent types of data basic or business data, customizing and condition data R3 AC1, R3 AC4, R3 Ac5 separately then start down loading the objects to CRM , remaning objects left over can be bypassed , then set the Satus of down loading Yellow red and Blue depends up on percentage of down load y for more than 100% R for more than 75%, B for less than 50%
    Reward if helpful
    Venkat

  • Custom process code and FM for custom IDoc...

    Hello Experts,
    I created a custom IDoc based from ARTMAS05 IDoc. This is because we only need 3 segments and
    the standard idoc(Artmas05) contains so many segments that we need.
    Now, will I create a custom process code and FM for this? how do I go about this?
    Thank you guys and take care!

    Hello,
                 Here are the Steps that we need to be following while creating a Custom Process Code with Custom Function Module. ( Since the Segments to be handled are very Less, I am recommending that you go for a Custom Function Module).
    1. Go to SE37 Create a Function Module. Please ensure to Create it with the IMPORT / EXPORT /TABLES parameters exactly in the way that they exist in any Standard SAP Inbound FM (Refer to IDOC_INPUT_ORDERS for example).
    2. Once our FM is Ready (Need not be Complete with the Code to go ahead with the Process Code Creation) and Active, the next Step is to Create an Entry in the Transaction Code BD51 where we will register the Function Module.
    3. Next, we'll have to go to T-Code WE57 where we'll have to make an entry for the Function Module with the IDoc Type & Message Type.
    4. Finally, go to WE42 and Create a New Process Code and assign the Function Module and the Message Type.
    NOTE 1 : The Process Code is, as we know, Client Dependent. So, once you create a Process Code, we need to have it migrated to the Testing Environment to Start & Carry Out Testing.
    NOTE 2: If Step 2 & 3 are missing, then we'll not be able to assign the Function Module in WE42 while Creating Process Code.
    Hope it was helpful.
    Thanks and Regards,
    Venkata Phani Prasad K

  • Urgent Help need for ABAP Custom Process Types

    Hi Gurus,
    I have created a Custom Process Type for ABAP program which returns status (Success or Failure).
    I followed the below procedure to create a custom ABAP process type.
    In RSPC, I went to Settings -> Maintain process types
    I selected the ABAP process type and then selected the EDIT -> COPY AS and then in the process chain configuration screen, I gave a new name to the process type, changed the POSSIBLE EVENTS settings to "2 process ends "successful" or "failure" and saved the settings to confirm changes.
    Now I can see the new process type for ABAP program which returns the success or failure for the successors.
    Now, my question is, where do i write the logic for ABAP program ? how does the ABAP program returns the success or failure. Do I have to change the code in the method IF_RSPC_EXECUTE~EXECUTE to return success or failure.  Please make me clear where I can write the code? For example in my ABAP program, I am searching a table to find a specific value. If the value is not found, then the ABAP process type should return failure, if found should return success. How can I do this?
    Thanks in advance,
    Regards,
    aarthi
    [email protected]

    Hi,
       We have a similar problem. We have an ABAP program in a process chain that
    uses a custom process type with on success and on failure.
        If  the program is successful there is no problem. it will run the next process step.
        The problem is when the ABAP Program fails and even though the message class is E in our ABAP program it has a confirm popup message with a status change and asks "Save Status and Trigger Events if Appropriate".
         Once you enter Yes to continue it then continues to the next step in the program and is fine.I traced in debug where this status message is appearing. It is in CL_RSPC_LOG. There is a popup_to_confirm_step where it checks the e_status that is value J ( Framework Error upon completion). Then it submits the rspc_process_finish program to complete and call the on error process step.
         Has anyone else experienced this and is there any other documents out there to help me?
    Apologies if this is not very clear.
    Any assistance would be appreciated.
    Thanks
    Monica Mandia

Maybe you are looking for

  • Free Goods check box in PO, for Services

    Hello, Is there any way to activate the Free goods checkbox for Services (item category 'D') in Purchase Order. This field seems not to be available in the screen layout. Your support is highly appreciated. Regards, Vijay.

  • COPA - New value field defined as "Last Value"

    Hi experts: We have defined a new value field that it is integrated as a 'LAST VALUE' instead of 'SUM'. However, when posting different entries the amount continue to sum instead of showing the last value. The new value field has the same behaviour a

  • HT200154 Is the Apple tv light supposed to stay on when my tv is off?

    Is there something I need to do to turn the light off? or is it supposed to stay on all the time?

  • Virtual Machine on Solaris 10

    I am a new user of Solaris 10 on SPARC processor. My requirement is to run Ubuntu inside a virual machine on top of Solaris 10 platform. Already tried out Oracle VM VirtualBox. Though it comes with a distribution for Solaris on x86, it does not have

  • Transfer SAP Query Output directly to SharePoint

    Hi, We are running the SAP Queries in the Background. I have a requirement to transfer the SAP Query output directly to SharePoint site. Could you please share your ideas on this? Regards, Siva.