‎2009 Apr 29 6:49 AM
Can anyone help me i have created BDC its working fine but now my problem is i want to skip initial screen where we need to select call transaction or Generate Session & instead of this i want a screen where i can provide a file name.
use meaningful subject for your future questions
Edited by: Vijay Babu Dudla on Apr 29, 2009 1:58 AM
‎2009 Apr 29 6:55 AM
Hi,
Transaction SHDB will genarate the code with the options call transaction or session...
copy the code to another program and delete the current selection screen and maintain your selection screen
Kiran
‎2009 Apr 29 6:55 AM
Hi,
Transaction SHDB will genarate the code with the options call transaction or session...
copy the code to another program and delete the current selection screen and maintain your selection screen
Kiran
‎2009 Apr 29 6:56 AM
Try:
CALL TRANSACTION '<t-code>' AND SKIP FIRST SCREEN.Regards.
‎2009 Apr 29 7:01 AM
Hello,
use CALL TRANSACTION ta { [AND SKIP FIRST SCREEN]
| [USING bdc_tab [bdc_options]] }.
Thanks,
Gunjan
‎2009 Apr 29 7:02 AM
Hi,
You can use CALL TRANSACTION 'XXXXX' AND SKIP FIRST SCREEN. But in this case also you have to fill in Mandatory fields with the corresponding values.You may use SET PARAMETER ID for this.
Regards,
Anil
‎2009 Apr 29 7:03 AM
Hi,
Do the recording through 'SHDB' transaction.
and code like this
call transaction 'TCODE' and skip first screen. Then it will skip initial screen.
Regards,
Jyothi CH.
‎2009 Apr 29 7:10 AM
Hi,
For providing The file on selection screen you must call event At selection-screen on value request. in that event you can call function module some thing like F4FILEGET* (Search in Se37). For skipping initial screen better to Start with second screen by identifying it in Recording.
‎2009 Apr 29 7:14 AM
Hi,
Just put selection option for filename in the program generated by the shdb. and also comment the open group and close group perform statements from the program. and remove the perform bdc_transaction statement and instead of that write foloowing code
CALL TRANSACTION <your-TCODE> USING BDCDATA
MODE {A/E/N}
UPDATE {A/S}
MESSAGES INTO MESSTAB.
‎2009 Apr 29 7:31 AM
Hi,
Try like below,
CALL TRANSACTION 'CA01' USING gt_bdcdata
OPTIONS FROM gs_ctu_params
MESSAGES INTO gt_messtab AND SKIP FIRST SCREEN.
Hope it helps!!
Rgds,
Pavan
‎2009 Apr 29 8:39 AM
Hi,
Plz follow like below code:
COMMENT the INCLUDE bdcrecx1 and just copy the declartion part from the include and paste it in ur program, also comment PERFORMS 'OPEN_GROUP, CLOSE_GROUP'.
define PARAMETERS like below for giving the file name..
REPORT ztest_bdc
NO STANDARD PAGE HEADING LINE-SIZE 255.
include bdcrecx1.
PARAMETERS : p_fanme LIKE rlgrap-filename.
----
data definition
----
Batchinputdata of single transaction
DATA: bdcdata LIKE bdcdata OCCURS 0 WITH HEADER LINE.
messages of call transaction
DATA: messtab LIKE bdcmsgcoll OCCURS 0 WITH HEADER LINE.
error session opened (' ' or 'X')
DATA: e_group_opened.
message texts
TABLES: t100.
START-OF-SELECTION.
perform open_group.
PERFORM bdc_dynpro USING 'SAPMM06E' '0205'.
PERFORM bdc_field USING 'BDC_CURSOR'
'RM06E-EVRTN'.
PERFORM bdc_field USING 'BDC_OKCODE'
'/00'.
PERFORM bdc_field USING 'RM06E-EVRTN'
'5500000000'.
PERFORM bdc_dynpro USING 'SAPMM06E' '0222'.
PERFORM bdc_field USING 'BDC_CURSOR'
'RM06E-EVRTP(01)'.
PERFORM bdc_field USING 'BDC_OKCODE'
'=ET'.
PERFORM bdc_field USING 'RM06E-EBELP'
'10'.
PERFORM bdc_field USING 'RM06E-TCSELFLAG(01)'
'X'.
PERFORM bdc_dynpro USING 'SAPMM06E' '1117'.
PERFORM bdc_field USING 'BDC_CURSOR'
'EKET-SLFDT(04)'.
PERFORM bdc_field USING 'BDC_OKCODE'
'/00'.
PERFORM bdc_field USING 'RM06E-ETNR1'
' 1'.
PERFORM bdc_field USING 'RM06E-LPEIN(04)'
'D'.
PERFORM bdc_field USING 'RM06E-EEIND(04)'
'17.02.2009'.
PERFORM bdc_field USING 'EKET-MENGE(04)'
' 500'.
PERFORM bdc_field USING 'EKET-SLFDT(04)'
'20.02.2009'.
PERFORM bdc_dynpro USING 'SAPMM06E' '1117'.
PERFORM bdc_field USING 'BDC_CURSOR'
'RM06E-ETNR1'.
PERFORM bdc_field USING 'BDC_OKCODE'
'=BU'.
PERFORM bdc_field USING 'RM06E-ETNR1'
' 1'.
perform bdc_transaction using 'ME38'.
CALL TRANSACTION 'ME38' USING bdcdata.
perform close_group.
----
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 <> space.
CLEAR bdcdata.
bdcdata-fnam = fnam.
bdcdata-fval = fval.
APPEND bdcdata.
ENDIF.
ENDFORM. "BDC_FIELD
Rgds,
Pavan
‎2009 Apr 29 10:10 AM
perform bdc_transaction using 'ME38'.
CALL TRANSACTION 'ME38' USING bdcdata.
This perform is not working i.e. bdc_transaction can you please provide alternate solution or anything else that i can do
‎2009 May 09 6:56 AM
Hi,
Comment perform bdc_transaction using 'ME38' statement.
Insted of use following code in your main program itself and
CALL TRANSACTION 'ME38' USING BDCDATA
MODE {A/E/N} "A= All screen vissible E=Screen visible only at error N=No screen visible
UPDATE {A/S} "A=asynchronous S = Synchronous
MESSAGES INTO MESSTAB.