cancel
Showing results for 
Search instead for 
Did you mean: 

SmartSync Example - Inventory - BAPI wrappers

Former Member
0 Kudos

Hi,

I want to examine this <a href="http://media.sdn.sap.com/public/html/submitted_docs/MI/MDK_2.5/content/appdev/smartsync/example_inventory.html">SmartSync example</a> delivered in the MDK 2.5. However, I cannot access the source code of the RFC-enabled function modules which should be in the <a href="http://media.sdn.sap.com/public/html/submitted_docs/MI/MDK_2.5/content/appdev/smartsync/example1_prerequisites/example_inventory_prerequisites_abap.html">Server Prerequisites for the Example</a> section:

  • MDK_INVENTORY_GETLIST

  • MDK_INVENTORY_GETDETAIL

  • MDK_INVENTORY_CREATE

  • MDK_INVENTORY_MODIFY

  • MDK_INVENTORY_DELETE

I get a HTTP 404 error. Has anyone these source codes? Or is there any transport available? Or can anyone from SAP fix these links?

Thank you in advance.

Regards,

Marek Samaj

Message was edited by: Marek Samaj

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Hi Marek!

Pl check if you have the source code for this Smart Sync Tutorial in MDK Documentation(NWDS).

I could just give you the code which i extracted from the link may be in June05.You have to create these FMs in SE37 & also the Paramters with the type shown in the code.I cannot gaurantee if it has everything you need in it.But it works for us.

Sorry I do not have a Web Link otherthan what you sent.

Good Luck! :)Pl assing me the right points if this helps.

                                                  • Begin of MDK_INVENTORY_CREATE ****************

FUNCTION MDK_INVENTORY_CREATE.

*"----


""Local Interface:

*" IMPORTING

*" VALUE(IS_INVENTORY) TYPE ZMDK_INVENTORY OPTIONAL

*" EXPORTING

*" VALUE(EV_PRODUCTID) TYPE ZMDK_INVENTORY-PRODUCTID

*" VALUE(RETURN) TYPE BAPIRET2

*"----


*{ INSERT FC5K900028 1

DATA: ls_return TYPE bapireturn1,

lv_msgvar type SYMSGV.

CLEAR return.

  • Assumption: productid not created yet

is_inventory-createdate = sy-datum.

is_inventory-createuser = sy-uname.

is_inventory-createtime = sy-uzeit.

is_inventory-changedate = sy-datum.

is_inventory-changeuser = sy-uname.

is_inventory-changetime = sy-uzeit.

INSERT Zmdk_inventory FROM is_inventory.

IF sy-subrc <> 0.

  • - DB Action failed (Error code = <sy-subrc>)

move sy-subrc to lv_msgvar.

CALL FUNCTION 'BALW_BAPIRETURN_GET1'

EXPORTING

type = 'E'

cl = 'MDK_EXAMPLES'

number = '002'

par1 = lv_msgvar

IMPORTING

bapireturn = ls_return.

MOVE-CORRESPONDING ls_return TO return.

EXIT.

ENDIF.

COMMIT WORK.

  • - Product &1 created successfully

ls_return-message_v1 = is_inventory-productid.

ev_productid = is_inventory-productid.

CALL FUNCTION 'BALW_BAPIRETURN_GET1'

EXPORTING

type = 'S'

cl = 'MDK_EXAMPLES'

number = '003'

par1 = ls_return-message_v1

IMPORTING

bapireturn = ls_return.

MOVE-CORRESPONDING ls_return TO return.

*} INSERT

ENDFUNCTION.

                          • End of MDK_INVENTORY_CREATE ******************************

                                • Begin of MDK_INVENTORY_DELETE ************************

FUNCTION MDK_INVENTORY_DELETE.

*"----


""Local Interface:

*" IMPORTING

*" VALUE(IV_PRODUCTID) TYPE ZMDK_INVENTORY-PRODUCTID

*" EXPORTING

*" VALUE(RETURN) TYPE BAPIRET2

*"----


*{ INSERT FC5K900028 1

DATA: ls_return type bapireturn1,

lv_msgvar type symsgv.

CLEAR return.

DELETE FROM zmdk_inventory WHERE productid = iv_productid.

IF sy-subrc <> 0.

move sy-subrc to lv_msgvar.

  • - DB update failed (Error code = <sy-subrc>)

CALL FUNCTION 'BALW_BAPIRETURN_GET1'

EXPORTING

type = 'E'

cl = 'MDK_EXAMPLES'

number = '002'

par1 = lv_msgvar

IMPORTING

bapireturn = ls_return.

MOVE-CORRESPONDING ls_return TO return.

EXIT.

ENDIF.

COMMIT WORK.

  • - Product &1 deleted successfully

ls_return-message_v1 = iv_productid.

call function 'BALW_BAPIRETURN_GET1'

exporting

type = 'S'

cl = 'MDK_EXAMPLES'

number = '005'

par1 = ls_return-message_v1

importing

bapireturn = ls_return.

MOVE-CORRESPONDING ls_return TO return.

*} INSERT

ENDFUNCTION.

                • End of MDK_INVENTORY_DELETE ******************************

*----


******************Begin of MDK_INVENTORY_GETDETAIL *********************

*{ INSERT FC5K900028 1

*

*} INSERT

FUNCTION MDK_INVENTORY_GETDETAIL.

*"----


""Local Interface:

*" IMPORTING

*" VALUE(IV_PRODUCTID) TYPE ZMDK_INVENTORY-PRODUCTID

*" EXPORTING

*" VALUE(ES_INVENTORY) TYPE ZMDK_INVENTORY

*" VALUE(RETURN) TYPE BAPIRET2

*"----


*{ INSERT FC5K900028 1

DATA: ls_return type bapireturn1.

CLEAR return.

SELECT SINGLE * FROM zmdk_inventory

INTO es_inventory

WHERE productid = iv_productid.

IF sy-subrc <> 0.

  • - Person not found (Persnumber = &)

ls_return-message_v1 = iv_productid.

call function 'BALW_BAPIRETURN_GET1'

exporting

type = 'E'

cl = 'MDK_EXAMPLES'

number = '002'

par1 = ls_return-message_v1

importing

bapireturn = ls_return.

MOVE-CORRESPONDING ls_return TO return.

EXIT.

ENDIF.

*} INSERT

ENDFUNCTION.

                                        • End of MDK_INVENTORY_GETDETAIL ********************

                                        • Begin of MDK_INVENTORY_GETLIST ********************

FUNCTION MDK_INVENTORY_GETLIST.

*"----


""Local Interface:

*" EXPORTING

*" VALUE(RETURN) TYPE BAPIRET2

*" TABLES

*" ET_INVENTORY STRUCTURE ZMDK_INVENTORY OPTIONAL

*"----


*{ INSERT FC5K900028 1

  • Assumption:

*

  • - All texts only in English, no extra text table

DATA:

ls_return LIKE bapireturn1.

CLEAR return.

SELECT COUNT(*) FROM zmdk_inventory.

IF sy-subrc <> 0.

  • - No data in table ZMDK_INVENTORY

call function 'BALW_BAPIRETURN_GET1'

EXPORTING

type = 'I'

cl = 'MDK_EXAMPLES'

number = '001'

IMPORTING

bapireturn = ls_return.

MOVE-CORRESPONDING ls_return TO return.

EXIT.

ENDIF.

SELECT * FROM zmdk_inventory INTO TABLE et_inventory.

*} INSERT

ENDFUNCTION.

                                      • End of MDK_INVENTORY_GETLIST ***********************

FUNCTION MDK_INVENTORY_MODIFY.

*"----


""Local Interface:

*" IMPORTING

*" VALUE(IS_INVENTORY) TYPE ZMDK_INVENTORY OPTIONAL

*" EXPORTING

*" VALUE(EV_PRODUCTID) TYPE ZMDK_INVENTORY-PRODUCTID

*" VALUE(RETURN) TYPE BAPIRET2

*"----


ENDFUNCTION.

Former Member
0 Kudos

Thanks Sivakumar, that's exactly what I've needed!

Regards,

Marek

Former Member
0 Kudos

Hi,

Can i use mdk_inventory_getdetail to get the inventory details of product, so that i can create alerts depending on that. and exactly what is mdk.

i came acroos this functional module in CRM

Thanks

Answers (0)