2008 Jan 18 10:31 AM
Hi experts,
I d0n't know if this is the right section of the forum to post this doubt; please tell me if it's not.
I'm Trying to implement a solution to give the user a dialog message telling If a message from a purchase order has been succesly sent. I cannot give it at the moment so i i'm programming a job that will be executed dialy and gives a report about the messages that have not been succesfully sent that day.
To check this we have parametered the spool for not deleting the orders when they are out, and that this
orders stay in the spool for 8 days.
We have 3 ways of sending depending on the field nast-nacha: By mail, printer or web.
Firs of all we are controlling the status in the nast table.
- Red(2): Sending error. We do not need to continue checking in this case..
- Yellow(0): the order has not been yet released, so will check it again in the next job execution.
- Green(1): Nast tells us that the message hass been succesfully sent. But we have to check it again depending on the sending method. My doubts are in the this checking.
- Printer: The can be errors like no paper or no ink in the printer and other thing like this. Does anybody know how can i request in abap if the printing has really been succesfully done?
- EMAIL: I don't know how to check if the reciever have succesfully recieved the mail. ¿Maybe taking a look on his mail inbox? but the user maybe has lokked the message and manually erased it....
- WEB: Messages sent by EDI. I have no clue about how to check this....
¡Thank-you for your help!
2008 Jan 18 11:47 AM
you are trying the impossible here. you wouldn't need checking if you could assure all the sending-media were up and running.
please also consider: in a couple of years you will have millions of rows in NAST. your job will be killing performance then.
you cannot check printers: you can check in spool whether the host-spooler (in case your printer is a network-printer) has accepted and proccessed the job. this does NOT tell you that there was a printout! for example the printer might still 'eat' a page and you would never know it because the printer (the network, the host-spooler) will not transfer that message back to SAP. still worse with LOCL. via sapgui you can send the print to the windows frontend but whether it was processed successfully, you'll never know. windows does not deliver a message back. and even if you succeeded in adjusting your printing to give a feed-back, you'll slow the performance down immensily. the spool process in SAP would have to wait for your feedback before it would attempt to process another job - imagine how long that might take!
eMail: this will not work either. if you are processing your eMails to a third-party system (like Outlook) using sapconnect you do not have a chance to peek across servers (not to mention architecture) into the users mailbox. and anyway: this might be strictly illegal (depending on your country). the 'peeking' part would only work if you keep the mail in R/3 (might still be illegal) but then you still have (and would always have in both scenarios) to deal with the user - what if he/she delétes her mail? what if he/she used transaction SO12 to forward the mail? what ...
Messages sent by IDOC.you could do this but it might prove extremely complex, especially when serialized idocs are in use.
i think you would be far better off to ensure, all the output media are properly maintained.
2008 Jan 18 11:47 AM
you are trying the impossible here. you wouldn't need checking if you could assure all the sending-media were up and running.
please also consider: in a couple of years you will have millions of rows in NAST. your job will be killing performance then.
you cannot check printers: you can check in spool whether the host-spooler (in case your printer is a network-printer) has accepted and proccessed the job. this does NOT tell you that there was a printout! for example the printer might still 'eat' a page and you would never know it because the printer (the network, the host-spooler) will not transfer that message back to SAP. still worse with LOCL. via sapgui you can send the print to the windows frontend but whether it was processed successfully, you'll never know. windows does not deliver a message back. and even if you succeeded in adjusting your printing to give a feed-back, you'll slow the performance down immensily. the spool process in SAP would have to wait for your feedback before it would attempt to process another job - imagine how long that might take!
eMail: this will not work either. if you are processing your eMails to a third-party system (like Outlook) using sapconnect you do not have a chance to peek across servers (not to mention architecture) into the users mailbox. and anyway: this might be strictly illegal (depending on your country). the 'peeking' part would only work if you keep the mail in R/3 (might still be illegal) but then you still have (and would always have in both scenarios) to deal with the user - what if he/she delétes her mail? what if he/she used transaction SO12 to forward the mail? what ...
Messages sent by IDOC.you could do this but it might prove extremely complex, especially when serialized idocs are in use.
i think you would be far better off to ensure, all the output media are properly maintained.
| User | Count |
|---|---|
| 4 | |
| 2 | |
| 2 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 |