Application Development 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: 

CALL TRANSACTION - Passing Fields

Former Member
0 Kudos
1,454

Hi Gurus,

Just a small though significant question.

I have SAVE button in my Module Pool transaction, On pressing SAVE, I need to Call transaction VB11

and pass two fields from my Module Pool transaction to VB11.

I need to update the standard database tables linked with VB11, with two more fields from side.

If I write CALL TRANSACTION VB11, will my requirement be fulfilled or what are the things I need more ?

What should I do ? Please suggest

Thanks

Chandan

17 REPLIES 17

Former Member
0 Kudos
366

Hi,

To update the standard tables you can use BDC or BAPI or BADI.

Pls check SCN for more information.

Regards,

Jayanth G

former_member555112
Active Contributor
0 Kudos
366

Hi,

You will have to make use of CALL TRANSACTION VB11 USING BDC_TAB

where BDC_TAB is an internal table of type BDCDATA and it contains the details about the program, screen number, fields and the field values on VB11 screen just as you do for a nomal BDC.

Regards,

Ankur Parab

Former Member
0 Kudos
366

Hi,

Whether you are just calling the Transaction or you want to update some data using the transaction with out any manual intervention.

Clarify.

Regards,

Smart Varghese

0 Kudos
366

I don't want to do anything inside VB11, I just want to pass two fields from my Program to it and I expect remaining things will be taken care by VB11 transaction. Mainly, I need the related database should get updated with my fields also.

Madhurivs23
Participant
0 Kudos
366

hi,

do the call transaction skip first screen . Fill the parameters.

or do the submit program. set the parameter Id VGD and skip first screen,

Edited by: madhuri sonawane on May 28, 2009 11:23 AM

0 Kudos
366

Hi Madhuri,

Can you please provide me with the syntax ? Bit Elaborate plz

Thanks

Chandan

0 Kudos
366

Hi,

Use CALL Transaction t-code using bdc_data update mode 's'

use syncronous update mode and after that check if ur data is updated in standard tables and if not display the error report else capture messages from the bdc as well so that u can get the error message log and display that. fill all the mandatory fields so that the process will work fine. u mentioned that other things will be taken care by vb11 which i didt understand.do u mean u have other fields data or u expect it to be modified later

jayaram

0 Kudos
366

Your answer seems nice and may help me out.

Let me clarify you, so that you can help me out.

In VB11 screen there many fields and so there in the database table also.

From my program, I will send two fields to VB11 and I want VB11 to do everything from processing to update.

Is this possible ? or I need to pass all fields or what, please do suggest me ?

NOTE: Not all fields are mandatory fields.

Thanks

Chandan

0 Kudos
366

Hey Guys, Please help me out.

I have my batch program ready, I just need to call that program in my own Module Pool Program.

I know, I need to do CALL TRANSACTION VB11, but I need some more help in passing my Internal Table.

I need to pass only two fields from my Internal Table and some constant values for the VB11.

Please help me out as I am close to finish this.

Thanks

Chandan

0 Kudos
366

Hi,

Create a recording of VB11 using SHDB. Convert it into a program and copy the screens and fields into your program followed by the below code.

CALL TRANSACTION 'VB11' USING BDCDATA MODE 'E'

MESSAGES INTO MESSTAB UPDATE 'S'.

Regards

Lalit

0 Kudos
366

That's exactly what I did, but I am getting errors for Include BDCRECX1

Even I cant declare that Include also, because its asking for SAP Access key.

So how to handle this ?

0 Kudos
366

{----


}

  • Start new screen *

----


FORM BDC_DYNPRO USING PROGRAM DYNPRO.

CLEAR BDCDATA.

BDCDATA-PROGRAM = PROGRAM.

BDCDATA-DYNPRO = DYNPRO.

BDCDATA-DYNBEGIN = 'X'.

APPEND BDCDATA.

ENDFORM. "BDC_DYNPRO

----


  • Insert field *

----


FORM BDC_FIELD USING FNAM FVAL.

  • IF FVAL <> NODATA.

CLEAR BDCDATA.

BDCDATA-FNAM = FNAM.

BDCDATA-FVAL = FVAL.

APPEND BDCDATA.

  • ENDIF.

ENDFORM. "BDC_FIELD }

Add this code.

Now it will work.

0 Kudos
366

Hi ..

lets say u want to pass material determ. type to the tcode VB11.

then set the value to the parameter ID 'VGD'. from ur module pool program.

and then call the transaction 'VB11' .

it will call VB11 setting the mat determ type as u have passed

regards

Somu

0 Kudos
366

What about that Include then ?

INCLUDE BDCRECX1, I am getting errors because of that, what shall I do ?

Shall I remove that and Add the code which you gave just now ??

Please guide me

0 Kudos
366

Yes, That include is not required. add the Code.

Former Member
0 Kudos
366

first check the screen numbers and screen fields which you want update from VB11 .

fill the BDCDATA table.

call transaction VB11 using BDCDATA.

Former Member
0 Kudos
366

Solved