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: 
Read only

BATCH INPUT & CTU_PARAMS

Former Member
0 Likes
2,823

Hello,

I need to create a batch input to the FB01 transaction.

I need to run that batch input in a background job.

I'm working with the SAP version: SAP ERP Central Component 5.0.

When you create a recording (txn: SHDB) you can choose several options for the recording. There is an option 'Without BI mode' which if it's flagged the recording is equal than if you run directly the txn FB01. (you know that when run a recording, the BI dynpros are differents than the dynpros when you run directly the transaction, with this flag you can get that dynpros are equal in both ways). If you create the recording with this flag and create the BI program using this recording, when you execute the statement 'CALL TRANSACTION....' you have to pass a structure like CTU_PARAMS with this parameter (and all of other parameter that you wish) in order to when the transaction is executed use the dynpros that you used in the recordin (and in the program).

Until here, every thing it's OK.

My problem is that I need to run the program in background mode and I want not use 'CALL TRANSACTION...', I want to create a data set in order to leave the error report in the SM35 in order to re-execute the data set as many times as I want. I do the following:

-Create the recording with the flag 'without BI mode' and in the program add the entries to the BDC_TAB.

-Open the data set, using BDC_OPEN_GROUP function

-Add the BDC_TAB to the data set using BDC_INSERT function

-Close the data set using BDC_CLOSE.

-Run the program rsbdcbtc using the queue number that BDC_OPEN retrieves.

My problem is that here I cannot get to pass the CTU_PARAMS and use the dynpros of the batch input in stead of the dynpros of the transaction (I have developed the program with these last dynpros). There is a parameter for the BDC_INSERT function 'CTUPARAMS' and I think that is used to get what I want but it's not working. I didn't found any OSS note and I don't know why it's happend.

Does anybody have any idea?

My english it's not very fluent, if you don't understand anything, please don't hesitate ask me and I will try to explain me better.

Thank you very much.

4 REPLIES 4
Read only

Former Member
0 Likes
1,608

Why can't you use RFBIBL00?

Read only

0 Likes
1,608

Hello Srinivas,

Thanks for your answer?

I can't not use this program because what I'm doing is an interface. They give me a file, with an especific format, and I have to upload that file to the system.

What I need is pass the CTU_PARAMS to the batch input in the function module BDC_INSERT in order to use the transaction dynpros instead of the batch input dynpros.

Regards,

Manuel

Read only

vinod_gunaware2
Active Contributor
0 Likes
1,608

Hi

  • Set the parameters for Call Transaction

CLEAR WA_CTU_PARAMS.

WA_CTU_PARAMS-DISMODE = 'N'.

WA_CTU_PARAMS-UPDMODE = 'S'.

WA_CTU_PARAMS-NOBINPT = 'X'.

WA_CTU_PARAMS-NOBIEND = 'X'.

WA_CTU_PARAMS-DEFSIZE = 'X'.

  • Call Transaction MM01

CALL TRANSACTION 'MM01' USING T_BDCDATA OPTIONS FROM WA_CTU_PARAMS

MESSAGES INTO T_BDCMSGCOLL.

COMMIT WORK AND WAIT.

regards

vinod

Read only

Former Member
0 Likes
1,608

Hi Manuel,

As Srinivas suggested, it still doesn't stop you from using a Direct input method.

But anyways, if you stil want to use the Session method, the what you found out about

the FM BDC_INSERT and CTU_PARAMS is correct.

Are you sure you are populating correct values like DEFSIZE = 'X' etc.

Also see the documentation for the fields

NOBINPT

NOBIEND

in CTI_PARAMS structure.