Skip to Content

Open Task button disappears when both openMode (embedIntoDetails & replaceDetails) are used

hi,

I configured MyInbox to open custom app on click of Open Task button which is working fine but when i create 2 target mappings with openMode=replaceDetails and openMode=embedIntoDetails, the Open Task button is visible initially for task with openMode=replaceDetails and if i select a task with mode=embedIntoDetails and go back to first task the Open Task button is not available anymore. But if i select another task with no target mapping and go back to the previous task it gets Open Task button button back.

i tried but could not find anything regarding the issue. has anyone configured 2 openModes in MyInbox earlier?

Regards

Add comment
10|10000 characters needed characters exceeded

  • Hi Mahesh Kumar Palavalli

    My client does not have any plans to upgrade as of now. Can you please check and see if this data is passed to the backend also when decision button is pressed. because as of now i see only Workitem and decision key being passed on to backend. not sure if it's the same behaviour in version you are using.

    Thanks.

  • Hi Deepak Saini

    I quickly had a look at the code, it seems sap is not sending any additional information apart from the decision notes.

    BR,

    Mahesh

  • Mahesh Kumar Palavalli Thanks, Mahesh. I used the embedIntoDetails mode which will open the custom app on click of Open Task button and handled the custom data save and standard workitem complete functionality within the custom app itself. But now i need to remove the standard button which is coming from the User decision task of workflow. i tried to find BADI but did not find anything relevant. I would appreciate if you could provide some guidance here.

    And, just to know do you think it is possible to replace the standard footer with custom when we use openMode as replaceDetails. I could not figure out anyway to add the custom button in standard footer without having API you mentioned is available in higher version.

    Regards.

  • Follow
  • Get RSS Feed

1 Answer

  • Dec 15, 2018 at 07:57 AM

    Hi Deepak,

    In your custom ui5 component, you can use the component data that is sent from the fiori myinbox to your component. It provides API to disable actions, add new actions and stuff.

    So here what you can do is add your custom action, it will appear in the standard myinbox footer. Then once the user clicks on it, save your data and complete the workitem manually via the code.

    The below data will be sent to you:

    var oCompData = {
    			startupParameters: {
    				oParameters: oParameters,
    				taskModel: this.fnCloneTaskModel(oDetailData),
    				inboxAPI : {
    					addAction: jQuery.proxy(this.addAction,this),
    					removeAction: jQuery.proxy(this.removeAction,this),
    					updateTask: jQuery.proxy(this.updateTask,this),
    					getDescription: jQuery.proxy(this.getDescription,this),
    					setShowFooter: jQuery.proxy(this.setShowFooter,this),
    					setShowNavButton: jQuery.proxy(this.setShowNavButton,this),
    					disableAction: jQuery.proxy(this.disableAction,this),
    					disableAllActions: jQuery.proxy(this.disableAllActions,this),
    					enableAction: jQuery.proxy(this.enableAction,this),
    					enableAllActions: jQuery.proxy(this.enableAllActions,this)
    				}
    			},
    

    You will receive all those data and functions in your component data. Hope you know the function to read the component data in your component.

    For this you might have to disable the approve button that is coming from badi or task in the inbox app and add your own button. You can disable the action in your custom component by calling that api or if you are passing the action from the backend then remove ther.

    Then you need to call the updatetask method of the same inboxAPI to refresh the UI

    BR,

    Mahesh

    Add comment
    10|10000 characters needed characters exceeded