on 02-24-2012 10:23 AM
Hi,
I used an action definition and it is called successfully when I save a document.
But the status of this action is generated in error (red icon) although rp_status = 0 in my implementation.
I want to make this action as unprocessed (Yellow icon). How can I do that ?
Thank you in advance,
Mat
Hi Andrei,
i have a requirement....there is a big program in ECC and in mid of that program we call a rfc ppf in EWM but in case if there is any error in EWM we don want to keep looping in ECC.
I just got a suggestion that i can try to capture the status message(success / unsuccessful ) as ppf returns it.....
i don know where to find this......not very familiar with ppf please suggest badly in need of it.
Urgent requirement.
Thanks in advance!!
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi Mat,
please provide me the action definition namea nd exact error you getting. Check action logs to find exact error message. Also provide steps you using to get the error.
Thanks
Regards,
Vikram
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi Vikram,
Thank you for replies
I think the error message is not important. It's a standard message : "Action could not be successfully executed". It is displayed in the Log if the action is not executed.
The status that I want to change is that of action in CRMC_ACTION_JOB and not that of the message in the log.
Thanks,
Mat
Hi,
@ Vikram,
Thanks for your reply
But I haven't the same problem as the notes that you gave me.
@ Andrei,
rp_status is set to 0 in my implementation, so, the action should be generated as not processed (Yellow icon), but I found an action that is incorrectly processed (Red icon).
The rp_status is set to 0 in the end of the implementation.
Thank you in advance,
Regards
Mat
Mat,
you think that it SHOULD BE set as "not processed" but it IS NOT. In fact the system change any other status except of rp_status = 1 to 2. You can check this at the very end of method EXECUTE in class CL_METHODCALL_PPF (this method actually execute your action's method).
* add processing info to log
IF rp_status = '1'.
IF ip_preview EQ sppf_false.
MESSAGE i001(sppf_media) INTO dummy.
CALL METHOD cl_log_ppf=>add_message
EXPORTING
ip_problemclass = '4'
ip_handle = l_protocol_handle.
ENDIF.
ELSE.
* anything else means error, so set status = 2
rp_status = '2'.
IF ip_preview EQ sppf_false.
MESSAGE e002(sppf_media) INTO dummy.
CALL METHOD cl_log_ppf=>add_message
EXPORTING
ip_problemclass = '2'
ip_handle = l_protocol_handle.
ENDIF.
ENDIF.
In other words, if you do not set rp_status to 1 in case of succesfull processing of your method you'll get the rp_status as 2 in other cases.
Didn't you manage to do this by cutomizing?
Try to play for instance with Merging option, Sceduled automaticly and Delete after processing flags in action definition.
If it's not possible to achieve the goal by customization you can use BAdIs EVAL_SCHEDCOND_PPF to implement your own schedule condition for an action or EVAL_STARTCOND_PPF for starting condition for an action. You can read more on this topic on [help.sap.com page right here|http://help.sap.com/saphelp_crm70/helpdata/en/c5/4a5b79589ae94baddc27cff9a830ef/frameset.htm]. And refer [Note 1007346 - Scheduling of actions only after resetting a status|https://service.sap.com/sap/support/notes/1007346] for an example of implementation and necessary customizing.
Also it's possible to extend a container with additional fields which you can check in start or schedule rules. Check [Note 502389 - Actions: Using additional attributes for conditions|https://service.sap.com/sap/support/notes/502389] for this.
Hope this will help you.
User | Count |
---|---|
6 | |
1 | |
1 | |
1 | |
1 | |
1 | |
1 | |
1 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.