cancel
Showing results for 
Search instead for 
Did you mean: 

Event handler or SBO_SP_TransactionNotification

Former Member
0 Kudos

Hi,

I need a event handler or SBO_SP_TransactionNotification to tell me a Goods Receipt PO has been made by another Add-On using DI.

When a Goods Receipt PO has been created; I like to execute my C# program.

The Add-On using DI is build by another SAP BP.

Any suggestion how I can be notified a Goods Receipt PO has been created by a Add-On using DI build by another SAP BP?

Thank you,

Rune

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

If between standard goods receipt and other partner addons cerated good receipt are some differencies (for example in user fields), you may do it. If there is no difference (some field, value based on it you may say, that this good receipt is created by other BP addon), you may catch only event goods receipt is created.

You may catch it in SBO_SP_TransactionNotification, but from this sp you cannot execute c# application. For executing you may use sp post transaction notice - in this forum was in the past (about 3 months) very nice example how to do it (I dont remember, who wrote it now - you may search history).

Edited by: Petr Verner on Oct 1, 2008 2:45 PM

Former Member
0 Kudos

I need code sample to attack this challange...

I have this code in SBO_SP_TransactionNotification; but how do I get the indication the table is been inserted?

IF (@object_type = '202')
BEGIN
EXEC('INSERT TableName(Company, ObjectType, TransactionType, NumKeyCol, ' + 
'KeyCols, KeyColValues, SAPDateTime) VALUES(''' + 
@DataBase_Name + ''', ''' + @object_type + ''', ''' + @transaction_type + ''', ' + @num_of_cols_in_key + ', ''' + @list_of_key_cols_tab_del + ''', ''' + @list_of_cols_val_tab_del + ''', GetDate())') 
END

Edited by: Rune Brattas on Oct 1, 2008 7:48 AM

Former Member
0 Kudos

the link to the topic is

and explained it Janos there. He creates dll library and used it in post transaction notice.

Check it.

Nussi
Active Contributor
0 Kudos

ok,

if you don't get the transaction thing working and/or the dievent service is too complicated for you:

1. create something like a temp/protokoll table where you store your "used in your service docnums"

2. create a small windows programm with timer that:

a. collects your documents (docnum) that don't exist in your protocoll table.

b. do what you want to do with "unused docnums"

c. than store the docnum in the protokoll table (this will prevent to use them again)

it's up to you which way you go

lg David

Former Member
0 Kudos

object type 202 is production order and in case that you want to catch goods receipt from purchase order, that code isnt related to your problem (if youll need to catch receipt from production, you will use object type = 59).

Answers (1)

Answers (1)

Nussi
Active Contributor
0 Kudos

Hi,

maybe you should try the

[DI Event Service|https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/703d2c29-9c87-2910-6db5-c5ce5d754708]

if Petr (the TransactionNotification Guru) has a better idea than ignore my message

lg David