Hi,
In other questions it is answered, that you must use CRM_ACTIVITY_H_MAINTAIN_OW to update ACTIVITY_H customer fields.
I use the following logic when I trigger an email upon a completed order save:
1) Turn off bus process auto save to avoid email sending
2) Create order
3) Update customer fields
4) Manually call busprocesssnd to trigger email sending with the customer fields filled in
Source:
ls_process_settings-msglevel = ''.
ls_process_settings-save = abap_false.
CALL FUNCTION 'BAPI_BUSPROCESSND_PROCSETTINGS'
EXPORTING
process_settings_in = ls_process_settings
TABLES
return = lt_return2.
CALL FUNCTION 'BAPI_ACTIVITYCRM_CREATEMULTI'
CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
CALL FUNCTION 'CRM_ACTIVITY_H_MAINTAIN_OW
COMMIT WORK AND WAIT.
CALL FUNCTION 'BAPI_BUSPROCESSND_SAVE'
CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
Now this is working fine in the test system, but it is not working in the production system: as if the email is sent before the customer field is filled in.
Any ideas why that may be? Maybe some global business process settings?
Thanks!