How to create screen resolution in bdc table control
hi gurus
can anyone suggest me
how to create screen resolution in bdc table control
thanks®ards
mark.
Hi ,
Using CTU_PARAMS table for screen resolution .
For this sample code.
This is for Transation FB60.
report ZZFB60
no standard page heading line-size 255.
tables t100.
PARAMETERS : p_file1 like rlgrap-filename,
p_doctyp like RF05A-BUSCS,
p_invdat like INVFO-BLDAT,
p_posdat like INVFO-BUDAT.
CONSTANTS : C_TRANS_FB60(4) VALUE 'FB60'.
*Parameter string for runtime of CALL TRANSACTION
data : l_option type ctu_params,
l_subrc type sysubrc.
DATA : l_mstring(150).
data accnt type char17.
data : day type char2,
month type char2,
year type char4,
date1 type char10,
date2 type char10.
data : cnt(2) TYPE n,
cnt1 type i,
fld(25) TYPE c.
data : begin of excel occurs 0,
fieldname(255) type c,
end of excel.
DATA:BEGIN OF it_mess OCCURS 0,
msgtyp(5),
lms(200),
msgv1(50),
END OF it_mess.
data: begin of t_record occurs 0,
BUKRS(004),
ACCNT(017),
XBLNR(016),
WRBTR1(016),
WAERS(005),
SECCO(004) ,
SGTXT(050),
HKONT(010),
WRBTR2(017),
MWSKZ(002),
GSBER(004),
KOSTL(010),
end of t_record.
*Internal Table for Header Data
DATA : BEGIN OF t_head OCCURS 0,
BUKRS(004), "Company Code
ACCNT(017), "Account or Vendor
XBLNR(016), "Reference
WRBTR1(017), "Amount in document currency
WAERS(005), "Currency
SECCO(004), "Section Code
SGTXT(050), "Text
END OF t_head.
*Internal table for Item Data
DATA : BEGIN OF t_item OCCURS 0,
ACCNT(017), "Account
HKONT(010), "GL Account
WRBTR2(017), "Line item Amount in document currency
MWSKZ(002), "Tax Code
GSBER(004), " Business Area
KOSTL(010), "Cost centre
END OF t_item.
DATA: IT_BDCDATA LIKE BDCDATA OCCURS 0 WITH HEADER LINE,
IT_BDC_MESSAGES LIKE BDCMSGCOLL OCCURS 0 WITH HEADER LINE.
*include bdcrecx1.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_file1.
PERFORM file_selection.
PERFORM data_upload.
PERFORM table_control.
start-of-selection.
l_option-defsize = 'X'.
l_option-dismode = 'A'.
l_option-updmode = 'S'.
day = p_invdat+6(2).
month = p_invdat+4(2).
year = p_invdat+0(4).
concatenate day month year into date1 SEPARATED BY '.'.
day = p_posdat+6(2).
month = p_posdat+4(2).
year = p_posdat+0(4).
concatenate day month year into date2 SEPARATED BY '.'.
*perform open_group.
loop at t_head.
CLEAR IT_BDCDATA.
REFRESH IT_BDCDATA.
perform bdc_dynpro using 'SAPLACHD' '1000'.
perform bdc_field using 'BDC_OKCODE' '=ENTR'.
perform bdc_field using 'BKPF-BUKRS' t_head-bukrs.
perform bdc_dynpro using 'SAPMF05A' '1100'.
perform bdc_field using 'BDC_OKCODE' '/00'.
perform bdc_field using 'RF05A-BUSCS' p_doctyp.
perform bdc_field using 'INVFO-ACCNT' t_head-accnt.
perform bdc_field using 'INVFO-BLDAT' date1.
perform bdc_field using 'INVFO-BUDAT' date2.
perform bdc_field using 'INVFO-XBLNR' t_head-xblnr.
perform bdc_field using 'INVFO-WRBTR' t_head-wrbtr1.
perform bdc_field using 'INVFO-WAERS' t_head-waers.
perform bdc_field using 'INVFO-SECCO' t_head-secco.
perform bdc_field using 'INVFO-SGTXT' t_head-sgtxt.
cnt = 1.
cnt1 = 1.
loop at t_item where accnt = t_head-accnt.
*if cnt > 4.
*cnt = 4.
*endif.
if cnt1 gt 1.
CONCATENATE 'ACGL_ITEM-MARKSP(' cnt ')' INTO fld.
perform bdc_field using fld 'X'.
perform bdc_dynpro using 'SAPMF05A' '1100'.
perform bdc_field using 'BDC_OKCODE' '=0005'.
endif.
perform bdc_dynpro using 'SAPMF05A' '1100'.
perform bdc_field using 'BDC_OKCODE' '/00'.
CONCATENATE 'ACGL_ITEM-HKONT(' cnt ')' INTO fld.
perform bdc_field using fld t_item-hkont.
CONCATENATE 'ACGL_ITEM-WRBTR(' cnt ')' INTO fld.
perform bdc_field using fld t_item-wrbtr2.
CONCATENATE 'ACGL_ITEM-MWSKZ(' cnt ')' INTO fld.
perform bdc_field using fld t_item-mwskz.
CONCATENATE 'ACGL_ITEM-GSBER(' cnt ')' INTO fld.
perform bdc_field using fld t_item-gsber.
CONCATENATE 'ACGL_ITEM-KOSTL(' cnt ')' INTO fld.
perform bdc_field using fld t_item-kostl.
perform bdc_field using 'BDC_CURSOR' fld.
*CONCATENATE 'ACGL_ITEM-MARKSP(' cnt ')' INTO fld.
*perform bdc_field using fld 'X'.
cnt1 = cnt1 + 1.
*cnt = cnt + 1.
*if cnt > 1.
*perform bdc_dynpro using 'SAPMF05A' '1100'.
*perform bdc_field using 'BDC_OKCODE' '=0005'.
**perform bdc_field using 'BDC_OKCODE' '=0006'.
*endif.
endloop.
perform bdc_dynpro using 'SAPMF05A' '1100'.
perform bdc_field using 'BDC_OKCODE'
'=BS'.
perform bdc_dynpro using 'SAPMSSY0' '0120'.
perform bdc_field using 'BDC_OKCODE'
'=BU'.
*perform bdc_transaction using 'FB60'.
CALL TRANSACTION C_TRANS_FB60 USING IT_BDCDATA options from l_option
MESSAGES INTO IT_BDC_MESSAGES.
perform error.
perform errordownload.
endloop.
*perform close_group.
*Form data_upload
FORM data_upload .
CALL FUNCTION 'WS_UPLOAD'
EXPORTING
FILENAME = p_file1
FILETYPE = 'DAT'
TABLES
DATA_TAB = t_record.
ENDFORM. " data_upload
*Form file_selection
FORM file_selection .
CALL FUNCTION 'F4_FILENAME'
EXPORTING
program_name = syst-cprog
dynpro_number = syst-dynnr
field_name = 'p_file1'
IMPORTING
file_name = p_file1.
ENDFORM. " file_selection
Form BDC_DYNPRO
FORM BDC_DYNPRO using program dynpro.
CLEAR IT_BDCDATA.
IT_BDCDATA-PROGRAM = PROGRAM.
IT_BDCDATA-DYNPRO = DYNPRO.
IT_BDCDATA-DYNBEGIN = 'X'.
APPEND IT_BDCDATA.
endform.
*Form BDC_FIELD
FORM bdc_field using fnam fval.
CLEAR IT_BDCDATA.
IT_BDCDATA-FNAM = FNAM.
IT_BDCDATA-FVAL = FVAL.
APPEND IT_BDCDATA.
ENDFORM.
Table Control
FORM table_control .
LOOP AT t_record.
ON CHANGE OF t_record-accnt.
MOVE-CORRESPONDING t_record TO t_head.
APPEND t_head.
ENDON.
loop at t_head.
t_item-accnt = t_head-accnt.
t_item-hkont = t_record-hkont.
t_item-wrbtr2 = t_record-wrbtr2 .
t_item-mwskz = t_record-mwskz .
t_item-gsber = t_record-gsber .
t_item-kostl = t_record-kostl.
APPEND t_item.
endloop.
If t_record-level = 'H'.
t_head-bukrs = t_record-text1.
t_head-accnt = t_record-text2.
t_head-xblnr = t_record-text3.
t_head-wrbtr1 = t_record-text4.
t_head-waers = t_record-text5.
t_head-secco = t_record-text6.
t_head-sgtxt = t_record-text7.
APPEND t_head.
else.
t_item-accnt = t_head-accnt.
t_item-hkont = t_record-text1.
t_item-wrbtr2 = t_record-text2.
t_item-mwskz = t_record-text3.
t_item-gsber = t_record-text4.
t_item-kostl = t_record-text5.
APPEND t_item.
endif.
ENDLOOP.
ENDFORM.
FORM error .
LOOP AT IT_BDC_MESSAGES.
IF IT_BDC_MESSAGES-msgtyp = 'E'.
SELECT single * FROM t100 WHERE
sprsl = it_BDC_MESSAGES-msgspra
AND arbgb = IT_BDC_MESSAGES-msgid
AND msgnr = IT_BDC_MESSAGES-msgnr.
IF sy-subrc = 0.
l_mstring = t100-text.
IF l_mstring CS '&1'.
REPLACE '&1' WITH IT_BDC_MESSAGES-msgv1 INTO l_mstring.
REPLACE '&2' WITH IT_BDC_MESSAGES-msgv2 INTO l_mstring.
REPLACE '&3' WITH IT_BDC_MESSAGES-msgv3 INTO l_mstring.
REPLACE '&4' WITH IT_BDC_MESSAGES-msgv4 INTO l_mstring.
ELSE.
REPLACE '&' WITH IT_BDC_MESSAGES-msgv1 INTO l_mstring.
REPLACE '&' WITH IT_BDC_MESSAGES-msgv2 INTO l_mstring.
REPLACE '&' WITH IT_BDC_MESSAGES-msgv3 INTO l_mstring.
REPLACE '&' WITH IT_BDC_MESSAGES-msgv4 INTO l_mstring.
ENDIF.
CONDENSE l_mstring.
it_mess-msgtyp = IT_BDC_MESSAGES-msgtyp.
it_mess-lms = l_mstring.
it_mess-msgv1 = IT_BDC_MESSAGES-msgv1.
APPEND it_mess.
ELSE.
it_mess-msgtyp = IT_BDC_MESSAGES-msgtyp.
it_mess-lms = l_mstring.
it_mess-msgv1 = IT_BDC_MESSAGES-msgv1.
APPEND it_mess.
ENDIF.
ENDIF.
ENDLOOP.
ENDFORM.
form errordownload.
*down the internal table to excel file.
call function 'EXCEL_OLE_STANDARD_DAT'
EXPORTING
file_name = 'c:/Error.xls'
TABLES
data_tab = it_mess
fieldnames = excel
EXCEPTIONS
file_not_exist = 1
filename_expected = 2
communication_error = 3
ole_object_method_error = 4
ole_object_property_error = 5
invalid_filename = 6
invalid_pivot_fields = 7
download_problem = 8
others = 9.
endform.
Reward if useful
Regards,
Narasimha
Edited by: narasimha marella on May 13, 2008 12:12 PM
Similar Messages
-
How to handle screen resolution in bdc session method.
hi all,
how to handle screen resolution in bdc session method.Hello,
Why do need that for? Is it to add rows on a table control??
If it does, add new rows by using the add button instead of adding into the table control directly to each row.
Bye
Gabriel. -
How to solve screen resolution in bdc
hi experts,
please tell me how to solve screen resolution in bdc.
regards.
subhasisHi,
<b>Pls check other posts in SDN before posting ur thread..there is same thread related to this on this forum on same day.</b>
Screen resolution means different in the screen display depending on ur system screen resolution.
suppose ur system resolution is diff and another's system is different then like in Tcode VA01, there will be 3 lineitems and another there will be 5 lineitems ,
so while doing recording and page down that will bw diff so there will be some problem
So u have to set the screen resolution as default by using CTU parameters..
write this code then
f_option-updmode = 'S'.
f_option-defsize = 'X'.* f
_option-dismode = 'N'.
*call transaction 'VA01' using bdcdata options from f_option messages into bdcerror.
Hope it helps.
Regards,
Sonika -
How to set screen resolution in BDC
hi pls give info regarding how to set resolution for screen
thank you
Ravihi,
For screen resolution use ctu_params, with default size
Data : f_option type ctu_params,
f_option-updmode = 'S'.
f_option-defsize = 'X'.
f_option-dismode = 'N'.
call transaction 'VA01' using bdcdata options from f_option messages into bdcerror.
CALL TRANSACTION tcode... OPTIONS FROM opt
... OPTIONS FROM opt
Effect
Allows you to control processing using the values of the componetns of the structure opt, which must have the ABAP Dictionary type CTU_PARAMS. The components have the following meanings:
DISMODE
Display mode (like the MODE addition)
UPDMODE
Update mode (like the UPDATE addition)
CATTMODE
CATT mode (controls a CATT)
CATT mode can have the following values:
' ' No CATT active
'N' CATT without single-screen control
'A' CATT with single-screen control
DEFSIZE
Use default window size
RACOMMIT
Do not end transaction at COMMIT WORK
NOBINPT
No batch input mode (that is, SY-BINPT = SPACE)
NOBIEND
No batch input mode after the end of BDC data.
The components DEFSIZE , RACOMMIT, NOBINPT, and NOBIEND always take the following values:
'X' Yes
' ' No
If you do not use the OPTIONS FROM addition, the following control parameter settings apply:
DISMODE
From addition MODE
UPDMODE
From addition UPDATE
CATTMODE
No CATT active
DEFSIZE
Do not use default window size
RACOMMIT
Successful end on COMMIT WORK
NOBINPT
Batch input mode active ( SY-BINPT = X
NOBIEND
Batch input mode remains active after the BDC data -
Screen resolution problem in table control
when i was transfering data in BDC using table control,i got screen resolution problem.
how to rectify the problem?Hi,
Check this coding.
WA_CTU_PARAMS type ctu_params.
WA_CTU_PARAMS-DISMODE = 'N'. "no screen mode
WA_CTU_PARAMS-UPDMODE = 'S'. "synchronous update
WA_CTU_PARAMS-NOBINPT = 'X'.
WA_CTU_PARAMS-NOBIEND = 'X'.
WA_CTU_PARAMS-DEFSIZE = 'X'. "Default size
CALL TRANSACTION 'VA01' USING it_bdcdata
OPTIONS FROM WA_CTU_PARAMS
MESSAGES INTO it_mesg.
Default size will play good role in terms of resolution. in one system in table control you can see 10rows, but in others system it will show 20 records. it depends on resolution. but when you set the default size then it will take same (default screen size) in all the systems when you run BDC.
Hope this resolves your query.
Reward all the helpful answers.
Regards -
How to make screen field enable when table control gives an error
Hi,
I had a scneario like when table control data wrong then one parameter of the screen should be enabled for the input, i knew that screen-name will not work since it will have always table control fields only when table control gives an error.
How to make the other parameter enable when table control throws an error.
Regards,
JayaHi Gobi,
Thanks for your response, but issue is - how to make other screen fields enable when there was an error in the table control data.
For table control - lets say we will use the code as i mentioned above.i am sure that we cant write the code for field enable in between loop & endloop.
as you said if we right outside the loop-endloop, the module wont be triggered when table control throws an error, because that statement was not there in the loop-endloop.
please let me know if you need any more information on the issue. I hope there is alternative for this in SAP.
Thanks
Jaya -
BDC: Table Control Screen Resolution
Hi Abapers,
1.In BDC while handling table control , how to handle screen resolution , that means in some systems i can see 5 item entries , in some systems i can see 10 item entries how to handle this , can u send the Code relating this.
With Regards
Bhaskar Rao.Mhi
The numeber of lines of table control for BDC depend on screen resolution, but It can't be managed by program.
So the better solution is to create a bdc doesn't depend on resolution.
It can do that using always the first two lines of table control.
When you start the simulation, first record has to be placed in first line of tc and the second in second one.
Before placing the third record, it needs to place the second record to the top and so the third record can be placed in the second line.
Before placing the next record, it needs to place the third record to the top and so the fourth record can be placed in the second line and so.
In this way your BDC'll use alwways the first two lines of tc and your program won't depend on resolution.
The problem is the transaction you need to simulate by BDC has to have a scroll functionality to allow to place the last record was elaborated to the top of tc, so the second line of tc can always be used to place the new record.
If there isn't this functionality, it's better to use a BAPI instead of BDC.
check these two
BDC - standard screen resolution required?
https://forums.sdn.sap.com/click.jspa?searchID=739193&messageID=823953
reward points if found helpful -
How we will maintain screen resolution for tmaintaining able control in BDC
how we will maintain screen resolution for tmaintaining able control in BDC. can you give the code or how we have to set it
Hi,
You need to use the CTU_PARAM options with the call transaction method.This is used if you would like to do a commit work once call trnasaction is done. This has also got very important property, for example if your Screen resolution is different from others then the screen (Application) will be different that is you'll be having say 5 lines in your screen where as your friend will be having 8 or 10 so your program might fail in this case. If you set variable DEFSIZE as 'X' it will always use the default screen size and hence avoids error.
Use CALL TRANSACTION 'XXX' OPTIONS FROM w_ctu_params.( type CTU_PARAMS)
This structure contains the follwing.
DISMODE : Display mode (like the MODE addition)
UPDMODE: Update mode (like the UPDATE addition)
CATTMODE: CATT mode (controls a CATT)
CATT mode can have the following values:
' ' No CATT active
'N' CATT without single-screen control
'A' CATT with single-screen control
DEFSIZE : Use default window size (Here we are handling those transaction by giving default window size)
RACOMMIT: Do not end transaction at COMMIT WORK
NOBINPT : No batch input mode (that is, SY-BINPT = SPACE)
NOBIEND : No batch input mode after the end of BDC data.
The components DEFSIZE , RACOMMIT, NOBINPT, and NOBIEND always take the following values:
'X' Yes
This might help u in better understanding...
Re: regarding bdc
Re: ctu_params
Regards
Sudheer -
How to make screen resolution independent in BDC
How to make screen resolution independent in BDC
hi
good
You need to use the CTU_PARAM structure alon with the call transaction statment.
**Sturcture of CTU_PARAM
**DISMODE : Display mode (like the MODE addition 'A' , 'E', 'N')
**UPDMODE: Update mode (like the UPDATE addition 'S', 'A')
**DEFSIZE : Use default window size (Here we are handling those transaction by giving default window size)
**RACOMMIT: Do not end transaction at COMMIT WORK
**NOBINPT : No batch input mode (that is, SY-BINPT = SPACE)
**NOBIEND : No batch input mode after the end of BDC data.
*The components DEFSIZE , RACOMMIT, NOBINPT, and NOBIEND always take the following values:
'X' Yes
DATA : L_OPTION TYPE CTU_PARAMS, "Parameter string for runtime of CALL TRANSACTION
L_SUBRC TYPE SYSUBRC.
L_OPTION-DEFSIZE = 'X'.
L_OPTION-DISMODE = P_MODE.
L_OPTION-UPDMODE = 'S'.
CALL TRANSACTION 'FK01' "FK01-Vendor master creation
USING IT_BDCDATA
MESSAGES INTO IT_MESSTAB
OPTIONS FROM L_OPTION.
thanks
mrutyun^ -
How do I identify OK Code in table control in BDC (scroll up/down)?
Hi. I have read a lot of very good posts and articles here in the forums about how to work with table controls when writing a BDC program. Unfortunately I haven't found any that address the specific issue that I'm having.
I'm writing a program to update the line items of a Parked Document using transaction FBV2. I want to be able to insert a row at the end of the previously existing rows regardless of how many there are and I can't seem to figure out the correct OK Codes to scroll up or down, or page up or down within the table control so I can guarantee that I will get to the next available row.
For example. I have a Parked Document with 13 line items. I would like to insert the new line item as row 14. I know that 10 rows will be displayed at run time on this screen according to my settings in the BDC call and want to scroll down 1 time and then enter the new data on the 4th line on the new set of rows.
Does anyone have any experience with this, or can someone point me in the right direction where I might find this information?
Thanks in advance,
AndyHi
In my system I can't run that trx, anyway there's any ok-code for the scrolling, you can have only the okcode for the page up/down buttons.
So you should try to understand how many rows a page can have, so if a page have 10 rows per page and you need to change the row 22, it means you have to simulate to press the page down twice and change the second row of third page.
If you run your BDC by CALL TRANSACTION u should use the option OPTIONS FROM opt, here you indicate to use the standard size of the dynpro. In this way the size of table control is not screen resolution dependent.
TABLES CTU_PARAMS.
CTU_PARAMS-DEFSIZE = 'X'.
CALL TRANSACTION 'FBV1' USING ITAB
OPTIONS FROM CTU_PARAMS.
Max -
How to do screen resolution in session method
hi guru how to do screen resolution in session method.
please tell me.
regards
subhasisSometime back this is refered in SDN :
Check table <i>CTU_PARAMS</i> and field <i>DEFSIZE</i> for setting fixed line of table control.
CALL TRANSACTION 'VA01' USING it_bdcdata
OPTIONS FROM OPT
MESSAGES INTO it_mesg.
opt of type ctu_params.
WA_CTU_PARAMS-DISMODE = 'N'. "no screen mode
WA_CTU_PARAMS-UPDMODE = 'S'. "synchronus update
WA_CTU_PARAMS-NOBINPT = 'X'.
WA_CTU_PARAMS-NOBIEND = 'X'.
WA_CTU_PARAMS-DEFSIZE = 'X'. "Default size
Default size will play good role in terms of resoultion. in one system in table control you can see 10rows, but in others system it will show 20 records. it depends on resoultion. but when you set the default size then it will take same (default screen size) in all the systems when you run BDC.
Thanks!! -
How to create t-code for a table and how to create transaction variant???
Hi,
I have created a custom table zsark.
Now my requirement is : I have to create a transaction variant zsark_var for sm30 and table zsark. I have to disable the output of the first screen. I have to assign the transaction variant to the transaction code of table zsark.
Now,
1. how to create transaction code to a table. Can any one give me the
staps??
2. how to create transaction variant for the above requirement???
Thanks & Regards,
SarkarHi
1 Goto SE93 transaction
2 Choose 5th option Transaction with parameters
3 Give transaction : SM30, Check Skip Initial Screen Press Enter
4 Goto Bottom left corner, click F4 select viewname, on right hand side give table name
5 Press one more time F4, choose update , mark it X on right side.
6 save the transaction.
Thanks
sandeep
reward if helpful -
How to handle screen resolution in session method
how to handle screen resolution in session method without bdc_insert .
Hello,
Why do need that for? Is it to add rows on a table control??
If it does, add new rows by using the add button instead of adding into the table control directly to each row.
Bye
Gabriel. -
Controlling Screen Resolution in BDCs
Hi,
Can any one explain about the process for Controlling Screen Resolution in BDCs.
Thanks & Regards,
Rajesh.Hi,
If u write table control bdc program in 14'' monitor screen, then if the same program u run at different monitor size, then the screen resolution problem comes in to the picture,
like, u get 5 records in table control in one screen, and some other records in other screen, to avoid this screen resolution problem we use CTU-PARAMS Structure.
In ur program u have to set
defsize type ctu_params-defsize value 'X',
Then u will be free of screen resolution problem.
Fill the str CTU_PARAMS-defsize = 'X' and pass in CTU stmnt as
call transaction 'XXX' options using t_bdcdata ctu_params.
Analysing :
1. If nothing works, then we have to
some ifs & buts.
2. There shall be normally
2-4 different kinds of resolution
on various users comptuers.
3. Based on this,
we have to know beforehand,
what will be the number of rows
in the table control.
4. The user can be given
a selection/paraemter
for resolution
eg. 800x600
1024x100
axb
etc.
5. Based on this, we will hardcode
in the program (based upon our knowledge/recording
which we have seen and done)
we will hardcode
the number of lines
in the VARIBLE.
6. Then we can simply use this variable
for our LOOP and logic purpose.
7. It will be the responsibiltiy of the
use to CHOOSE THE CORRECT resolution,
on the selection-screen.
For screen resolution use ctu_params, with default size
Data : f_option type ctu_params,
f_option-updmode = 'S'.
f_option-defsize = 'X'.
f_option-dismode = 'N'.
call transaction 'VA01' using bdcdata options from f_option messages into bdcerror.
CALL TRANSACTION tcode... OPTIONS FROM opt
... OPTIONS FROM opt
Effect
Allows you to control processing using the values of the componetns of the structure opt, which must have the ABAP Dictionary type CTU_PARAMS. The components have the following meanings:
DISMODE
Display mode (like the MODE addition)
UPDMODE
Update mode (like the UPDATE addition)
CATTMODE
CATT mode (controls a CATT)
CATT mode can have the following values:
' ' No CATT active
'N' CATT without single-screen control
'A' CATT with single-screen control
DEFSIZE
Use default window size
RACOMMIT
Do not end transaction at COMMIT WORK
NOBINPT
No batch input mode (that is, SY-BINPT = SPACE)
NOBIEND
No batch input mode after the end of BDC data.
The components DEFSIZE , RACOMMIT, NOBINPT, and NOBIEND always take the following values:
'X' Yes
' ' No
If you do not use the OPTIONS FROM addition, the following control parameter settings apply:
DISMODE
From addition MODE
UPDMODE
From addition UPDATE
CATTMODE
No CATT active
DEFSIZE
Do not use default window size
RACOMMIT
Successful end on COMMIT WORK
NOBINPT
Batch input mode active ( SY-BINPT = X
NOBIEND
Batch input mode remains active after the BDC data
Hope it makes u understand...
Reagrds, -
How do we handle BDC table control
hi sap technical guru,
PLS suggest me how to handle BDC table control while uploading data to sap R/3
regards,Hi,
First take BDC recording for required transaction from SHDB then you will find screen field names, screen numbers sequence, According to that pass values to below BDC_DYNPRO and BDC_FIELD forms and append data to BDC table. In my requirement I have done this for VB03 transaction passed values to VB03 transaction from my selection screen.
*& Report ZS_VB03_TRANSACTION
REPORT ZS_VB03_TRANSACTION.
TABLES: KOMGG, "Dialogkommunikationstab
T685T, "Text zum Konditionsart
T185F, "Folgebildsteurung
T681, "Konditionstabelle
TMC1T, G000, TPARA. "Kurztext zur Konditionstabell
* Sales Organization *
SELECT-OPTIONS S_F001 FOR KOMGG-VKORG.
*MEMORY ID VKO.
* Distribution Channel *
SELECT-OPTIONS S_F002 FOR KOMGG-VTWEG
MEMORY ID VTW.
* Division *
SELECT-OPTIONS S_F003 FOR KOMGG-SPART
MEMORY ID SPA.
* CustomerHierarchy 01 *
SELECT-OPTIONS S_F004 FOR KOMGG-HIENR01.
* Material *
SELECT-OPTIONS S_F005 FOR KOMGG-MATNR
MEMORY ID MAT
MATCHCODE OBJECT MAT1.
* Customer *
SELECT-OPTIONS S_F006 FOR KOMGG-KUNNR
MEMORY ID KUN
MATCHCODE OBJECT DEBI.
* "Selektionsdatum *
SELECTION-SCREEN SKIP 1.
PARAMETERS SEL_DATE LIKE RV130-DATAM
DEFAULT SY-DATLO.
PARAMETERS: r_vb03 TYPE c RADIOBUTTON GROUP rb1 DEFAULT 'X',
r2 type c RADIOBUTTON GROUP rb1.
* * 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.
data: lv TYPE i.
data: s1 type KOMGG-VKORG,
s2 type KOMGG-VKORG.
START-OF-SELECTION.
if r_vb03 = 'X'.
data: num(2) TYPE n VALUE '01',
lv_string(40) type c,
lv_s_f001 like s_f001.
set PARAMETER ID: 'VGK' FIELD 'A001'. "Place ur default value here in A001 place.
If S_f001-high is INITIAL.
perform bdc_field using 'BDC_CURSOR'
'F001-LOW'.
perform bdc_field using 'BDC_OKCODE'
'=%003'.
perform bdc_dynpro using 'SAPLALDB' '3000'.
perform bdc_field using 'BDC_OKCODE'
'=ACPT'.
perform bdc_field using 'BDC_CURSOR'
'RSCSEL-SLOW_I(01)'.
loop at S_f001 into lv_s_f001.
CONCATENATE 'RSCSEL-SLOW_I(' num ')' INTO lv_string.
perform bdc_field using 'BDC_CURSOR'
lv_string.
perform bdc_field using lv_string
lv_s_f001-low.
clear: lv_s_f001, lv_string.
num = num + 1.
ENDLOOP.
clear num.
perform bdc_dynpro using 'RV13GAAB' '1000'.
perform bdc_field using 'BDC_CURSOR'
'F002-LOW'.
ELSE.
perform bdc_dynpro using 'RV13GAAB' '1000'.
perform bdc_field using 'BDC_CURSOR'
'F001-LOW'.
perform bdc_field using 'F001-LOW' S_f001-low.
perform bdc_field using 'F001-HIGH' S_f001-high.
endif.
perform bdc_field using 'F002-LOW' S_F002-low.
perform bdc_field using 'F002-HIGH' S_F002-High.
perform bdc_field using 'F004-high' S_F004-high.
perform bdc_field using 'F005-LOW' S_F005-low.
perform bdc_field using 'F003-LOW' S_F003-low.
perform bdc_field using 'F003-High' S_F003-high.
perform bdc_field using 'F004-LOW' S_F004-low.
perform bdc_field using 'F005-high' S_F005-high.
perform bdc_field using 'F006-LOW' S_F006-low.
perform bdc_field using 'F006-high' S_F006-high.
call TRANSACTION 'VB03' USING BDCDATA MODE 'E' MESSAGES INTO MESSTAB.
ENDIF.
* Start new screen *
FORM BDC_DYNPRO USING PROGRAM DYNPRO.
CLEAR BDCDATA.
BDCDATA-PROGRAM = PROGRAM.
BDCDATA-DYNPRO = DYNPRO.
BDCDATA-DYNBEGIN = 'X'.
APPEND BDCDATA.
ENDFORM.
* Insert field *
FORM BDC_FIELD USING FNAM FVAL.
CLEAR BDCDATA.
BDCDATA-FNAM = FNAM.
BDCDATA-FVAL = FVAL.
APPEND BDCDATA.
ENDFORM.
Maybe you are looking for
-
Bootcamp 'Glowing' windows logo freeze after gfx driver install
Bootcamp 'Glowing' windows logo freeze after gfx driver install Last week suddenly, after having changed or installed nothing, trying to boot into windows resulted in a frozen glowy window logo 'Starting Windows', which resulted in having to format t
-
Order musics by album and then by year
How can I order my library by albuns and next by year of the album?
-
I'm losing animation on numbers that I have coming in at bookmarked places in a slide. I return to a home page and return to the slide no problem but if I return to homepage then a different slide, then home page and the initial slide...the animated
-
How do I set up the Table of contents so the << and >> buttons are available and also the Back button on all inquiries?
-
Num pad doesn't work with Excel.
The numeric pad behaves like scrolls and page up, page down buttons every time I use Microsoft's Excel. I looked everywhere but i couldn't find a way to change the pad to work with numbers. Its driving me crazy ... G5 Dual 2.3GHz Mac OS X (10.4.4)