2007 Dec 24 10:30 AM
Dear All,
I am working on user-exit IMRC0001 for measuring point.
Basically my requirement is that when ever Meas Reading increases the target value a notification should get generated (this part i have done successfully) and a mail should be sent to the concern person, now the problem is that i m not able to send the mail i m using the FM SO_NEW_DOCUMENT_SEND_API1
CALL FUNCTION 'SO_NEW_DOCUMENT_SEND_API1'
EXPORTING
document_data = git_maildata
DOCUMENT_TYPE = 'RAW'
PUT_IN_OUTBOX = 'X'
COMMIT_WORK = 'X'
IMPORTING
SENT_TO_ALL = git_flag
NEW_OBJECT_ID = git_objid
tables
OBJECT_HEADER =
OBJECT_CONTENT = git_content[]
CONTENTS_HEX =
OBJECT_PARA =
OBJECT_PARB =
receivers = git_reciever[]
EXCEPTIONS
TOO_MANY_RECEIVERS = 1
DOCUMENT_NOT_SENT = 2
DOCUMENT_TYPE_NOT_EXIST = 3
OPERATION_NO_AUTHORIZATION = 4
PARAMETER_ERROR = 5
X_ERROR = 6
ENQUEUE_ERROR = 7
OTHERS = 8
.
IF sy-subrc <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
Now if i marks the COMMIT_WORK = 'X' it gives dump ' Invalid COMMIT WORK in a COMMIT WORK or ROLLBACK WORK. '
and if i doesn't give it doesnt send the mail.
What should i do the same scenerio if i run in a report program its running fine but in user exit it is giving dumb.
Please help me!!
Edited by: Rachit Khanna on Dec 24, 2007 11:30 AM
2008 Jan 12 7:28 PM
Hi Rachit,
This is not really a reply to your question.
I am searching for messages related to userexit IMRC0001 and I found this message you posted.
I am having problems creating a Notification from within the userexit using FM IQS4_CREATE_NOTIFICATION. The Notification is successfully created but when I view the Notification it gives me the error "Object does not exist (status management)". But when I look at table QMEL the Notification is created and posted.
However, when I execute IQS4_CREATE_NOTIFICATION by itself using the Test functionality in SE37, the Notification is successfully created and I can also view it no problem.
I only get the error viewing the Notification when the function module is called from the userexit.
Any thoughts on this one?
Thanks.
Dear All,
I am working on user-exit IMRC0001 for measuring point.
Basically my requirement is that when ever Meas Reading increases the target value a notification should get generated (this part i have done successfully) and a mail should be sent to the concern person, now the problem is that i m not able to send the mail i m using the FM SO_NEW_DOCUMENT_SEND_API1
CALL FUNCTION 'SO_NEW_DOCUMENT_SEND_API1'
EXPORTING
document_data = git_maildata
DOCUMENT_TYPE = 'RAW'
PUT_IN_OUTBOX = 'X'
COMMIT_WORK = 'X'
IMPORTING
SENT_TO_ALL = git_flag
NEW_OBJECT_ID = git_objid
tables
OBJECT_HEADER =
OBJECT_CONTENT = git_content[]
CONTENTS_HEX =
OBJECT_PARA =
OBJECT_PARB =
receivers = git_reciever[]
EXCEPTIONS
TOO_MANY_RECEIVERS = 1
DOCUMENT_NOT_SENT = 2
DOCUMENT_TYPE_NOT_EXIST = 3
OPERATION_NO_AUTHORIZATION = 4
PARAMETER_ERROR = 5
X_ERROR = 6
ENQUEUE_ERROR = 7
OTHERS = 8
.
IF sy-subrc <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
Now if i marks the COMMIT_WORK = 'X' it gives dump ' Invalid COMMIT WORK in a COMMIT WORK or ROLLBACK WORK. '
and if i doesn't give it doesnt send the mail.
What should i do the same scenerio if i run in a report program its running fine but in user exit it is giving dumb.
Please help me!!
Edited by: Rachit Khanna on Dec 24, 2007 11:30 AM
2007 Dec 24 10:43 AM
Hi Rachit,
You can't use COMMIT_WORK = 'X' in this exit because it's triggered by COMMIT WORK statement itself ehn you save.
Regarding mail sending, you check the sy-subrc after this FM to mail send, if its zero then mail is send.
You check in transaction SOST and if it's there it means mail is sent/in queue .
Regards,
Pankaj
2007 Dec 24 10:48 AM
Hi Pankaj,
I checked the value of sy-subrc it is coming 0(Zero) but when i check the mail sent queue it is not present there.
Is there any other way to do it.
Thanks and Regards,
Rachit Khanna
2007 Dec 24 10:55 AM
Hi Rachit,
You check the Waiting as well as Errors queue in SOST.
If it's in waiting you can send it from there, i can gv you the code to put in user exit if its there.
Regards,
Pankaj
2007 Dec 24 11:09 AM
Hi Pankaj,
I have checked the queue nothing is going there but if i execute the same FM in my report program its working fine there , even if i comment commit work there its running fine but it is not working in my user - exit , nothing is coming in queue.
What can be done please suggest.
Thanks and Regards,
Rachit Khanna
2007 Dec 24 10:43 AM
Dear ,
Commit work is not mandatory,
U just try below.
CALL FUNCTION 'SO_NEW_DOCUMENT_SEND_API1'
EXPORTING
document_type = 'RAW'
document_data = git_maildata
put_in_outbox = 'X'
TABLES
object_content = git_content[]
receivers = git_reciever[]
EXCEPTIONS
TOO_MANY_RECEIVERS = 1
DOCUMENT_NOT_SENT = 2
DOCUMENT_TYPE_NOT_EXIST = 3
OPERATION_NO_AUTHORIZATION = 4
PARAMETER_ERROR = 5
X_ERROR = 6
ENQUEUE_ERROR = 7
OTHERS = 8
.
IF sy-subrc 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
2007 Dec 24 10:53 AM
Hi Chandra,
I have already tried this but this is not working please suggest what else can be done. this same scenerio is working fine when i use it in a report program.
Is there any way by which i can pass the value from user exit to my report program.
Please suggest!!!
Thanks and Regards,
Rachit Khanna
2008 Jan 12 7:28 PM
Hi Rachit,
This is not really a reply to your question.
I am searching for messages related to userexit IMRC0001 and I found this message you posted.
I am having problems creating a Notification from within the userexit using FM IQS4_CREATE_NOTIFICATION. The Notification is successfully created but when I view the Notification it gives me the error "Object does not exist (status management)". But when I look at table QMEL the Notification is created and posted.
However, when I execute IQS4_CREATE_NOTIFICATION by itself using the Test functionality in SE37, the Notification is successfully created and I can also view it no problem.
I only get the error viewing the Notification when the function module is called from the userexit.
Any thoughts on this one?
Thanks.
2008 Jan 15 4:51 AM
Hi Giscard,
Please check BAPIRET2 table in your FM see if it is giving some error , secondly use commit work after the function-module get executed , use commit-work after the FM gets Executed.
The second option is that you can run the BDC for creating Notification this is what i have done , if you want the code then please tell me i will mail you.
Regards,
Rachit Khanna
| User | Count |
|---|---|
| 4 | |
| 2 | |
| 2 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 |