Application Development and Automation Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 

SCOT and FM 'SO_NEW_DOCUMENT_ATT_SEND_API1'

Former Member
0 Kudos
696

Hi Gurus,

I have a scenario where the FM 'SO_NEW_DOCUMENT_ATT_SEND_API1' is used to send mails. SCOT has the respective entry as mail is sent but the status has a grayed X sign which says a message "Still no entry in queue".

This FM is used in another scenario and everything is fine overe there. I am not getting what is the cause behind this.

I also debugged the functionality and everything seems to be fine but still mail is not sent.

Please reply .

Regards,

Binay.

1 ACCEPTED SOLUTION

Former Member
0 Kudos
499

Hi,

Check if the sy-subrc value is 0 after thie FM SO_NEW_DOCUMENT_ATT_SEND_API1........

Cheers,

jose

17 REPLIES 17

Former Member
0 Kudos
500

Hi,

Check if the sy-subrc value is 0 after thie FM SO_NEW_DOCUMENT_ATT_SEND_API1........

Cheers,

jose

0 Kudos
499

The sy-subrc value is 0 but thing is that the mail is not in the queue as per the status in SCOT.

This makes the concern.

Thanks for your reply.

0 Kudos
499

Hi,

If its a greyed diamond symbol........its already sent......

the other option for sending mails is using the class cl_bcs....

Search for 'BCS*' string in SE38 for sample programs..its simpler......

Cheers,

jose.

vinod_vemuru2
Active Contributor
0 Kudos
499

Hi,

After calling this FM Check the sy-subrc Value and do like this.

If sy-subrc IS INITIAL.

SUBMIT rsconn01 USING SELECTION-SET 'INT' AND RETURN.

CALL FUNCTION 'SO_DEQUEUE_UPDATE_LOCKS'.

ELSE.

MESSAGE e000 WITH 'Mail sending failed'.

ENDIF.

Below points is for ur testing purpose.

U can check the status of the mail in the transaction SOST.

Execute this transaction for the date range. If the traffic light is in yellow colour then do like this.

Utilities->Start send process->Give trans method as INT and press enter. Mail will go immediately.

If the above logic don't work for u then TRY FM SO_OBJECT_SEND for sending mail.

Thanks,

Vinod.

Edited by: Vinod Kumar Vemuru on Mar 6, 2008 4:16 PM

0 Kudos
499

The sy-subrc value is 0 but thing is that the mail is not in the queue as per the status in SCOT.

This makes the concern.

Thanks for your reply.

0 Kudos
499

Hi,

I even tried to use the FM SO_OBJECT_SEND but getting the same result. No one is able to identify the reason behind this strange issue.

Is there any means we can place the mail entry forcefully in the queue in SCOT once our FM gets executed ?

Please reply,

Regards,

Binay

0 Kudos
499

Hi Binay,

Try putting a commit work stment after the FM.

call function 'SO_NEW_DOCUMENT_ATT_SEND_API1' .
................
...............
..................
..................
If sy-subrc = 0.
commit work.
wait up to 1 seconds.
submit rsconn01 with mode = 'INT' and return.
endif.

Cheers,

jose.

0 Kudos
499

Hi,

Thanks for your suggestion but this also failed.

Regards,

Binay.

0 Kudos
499

Hi,

try this:

  • --- Versenden des Dokuments

  • ab 470 ist COMMIT_WORK zu setzen

  • und SO_DOCUMENT_SEND_API1 lt. 190669

CALL FUNCTION 'SO_DOCUMENT_SEND_API1'

EXPORTING

DOCUMENT_DATA = DOC_DATA

PUT_IN_OUTBOX = 'X'

COMMIT_WORK = 'X'

TABLES

PACKING_LIST = OBJ_PACK

CONTENTS_TXT = OBJ_TXT

CONTENTS_BIN = OBJ_BIN

RECEIVERS = REC_LIST

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.

WRITE: / SY-SUBRC.

ENDIF.

*

perhaps it helps?

Regards, Dieter

0 Kudos
499

Hi,

Perhaps you are emplhasizing on the parameter Commit.

I have tried that too but dont know why its happening.

Is there anything we can try to find in SCOT ?

How to check the queue in SCOT for mail entries ?

Please reply.

Regards,

Binay.

0 Kudos
499

Hi Binay,

Did u tried checking in transaction SOST after executing ur program? I am sure that there will be an entry if sy-subrc of ur mailing FM is 0 and the traffic light will be green(Indicates mail already sent) if u did the steps i mentioned in my earlier post.

Another thing i don't understand is why are we looking in transaction SCOT. Is there any setting in ur system/specific requirement in ur case? I thing we can look into transaction SOST. Let me know above things so that i may help u further.

Thanks,

Vinod.

0 Kudos
499

Hi,

I am looking into SOST via SCOT. The entry is there but with a Grey Cross sign and bearing the status "Still not in the queue".

This issue is really strange. Inspite of several attempts we are not able to find the exact problem. Neither the FM we are using has the issue nor SOST has any issues.

Regards,

Binay.

baradakanta_swain2
Participant
0 Kudos
499

Hi Binay,

I assume the SMTP services have been correctly set up in your system. In transaction SCOT you can see a entry SMTP see if there is any settings entered in that or not.

Again as you are saying the messages are in queue and are not being sent, then this may be a issue with the BASIS setting. Usually the system is configured to send out any messages in the queue at some particular intervals (say 10 min).

It is possible in your system this configuration is not done.

thanks

Barada

0 Kudos
499

Hi,

Perhaps you did not notice clearly.

I meant that the entries are not in the queue.

Entries w.r.t. other scenarios are in the queue in SOST except the one respective to my scenario.

Think you got my issue.

Thanks,

Binay.

0 Kudos
499

Hi binay,

1. One thing you can try is to send

email using sap inbox (SO01)

to an external email address.

2. Check whether that appears in SCOT or not.

regards,

amit m.

0 Kudos
499

Explicit commit work does not work in update task and mostly this is seen and faced in transactions like PA30 PA40 etc... our developer faced it and nothing worked..

we searched on net and found following utility program it is not free but it puts back all SO-672 '"still no entry in queue" messages back in queue and from there our standard process sends them as normal...program can be scheduled in backgroud or can be used as SUBMIT REPORT syntax in update task.. we have scheduled it every half an hour...

Link: http://www.mysaphelp.com/book/index.php?page=shop.product_details&flypage=flypage-ask.tpl&product_id...

this is working for us...see if it works for u or not...

Kindly reward points if useful...

0 Kudos
499

Try this:

CALL FUNCTION 'SO_NEW_DOCUMENT_SEND_API1' STARTING NEW TASK ztask

EXPORTING

...

commit_work = 'X'

...

If you work inside of the user-exit or dynamic action, add these too:

cl_os_transaction_end_notifier=>raise_commit_requested( ).

CALL FUNCTION 'DB_COMMIT'.

cl_os_transaction_end_notifier=>raise_commit_finished( ).

-Khai-