BDC for XK02 getting problem in table control.....
hello i want to migrate data for vendor from flat file to SAP.i want to update VAT date and VAT number. but i m not getting how to handle index of table control? coz when we scroll down index get changed......
pls guide me......
Hi,
refer the theards for table control index.
https://forums.sdn.sap.com/click.jspa?searchID=12815720&messageID=5466905
https://forums.sdn.sap.com/click.jspa?searchID=12815720&messageID=4290992
Regards
Kiran Sure
Similar Messages
-
Bdc for ip01, data upload in table control
I was working on a bdc for ip01 . there is a table control - whose 5 rows are visible and I need to fill data upto 6 row . 6th row get filled by scrolling . will scrolling get captured in recording . whether this is possible or not sir . If yes then how?
Sir please help me.
With regards,Hi
Scrolling does not get recorded while recording. You can achieve it by having ok_code to p+ or p++.
Refer the following link for detailed description.
http://wiki.sdn.sap.com/wiki/display/ABAP/BatchInputFAQ#BatchInputFAQ-Howtoscrollatablecontrol%3F
Hope this helps you.
Regards
Vinodh -
How to create BDC for Deletion of Records in Table Control in BDC for PFCG
I have transcation PFCG and have to go to roles of users there.We will upload the users who has to be deleted and it should delete it from the PFCG in one go .Howcan I create a program to delete from the table .If i delete directly from DB table it doesnt show in SAP log how or Who deleted it and the client wants this log which is needed for accountability.
Pls HELP.
GeorgeHi
You can only indicate the user and all profiles of the user will be deleted.
DATA: BEGIN OF T_DEL_USR OCCURS 0,
USERNAME LIKE BAPIBNAME-BAPIBNAME,
END OF T_DEL_USR.
DATA T_RESULT TYPE STANDARD TABLE OF BAPIRET2
WITH HEADER LINE.
After loading the users to be deleted:
LOOP AT T_DEL_USR.
CALL FUNCTION 'SUSR_BAPI_USER_PROFILES_DELETE'
EXPORTING
USERNAME = T_DEL_USR-USERNAME
TABLES
RETURN = T_RESULT.
ENDLOOP.
I'm not sure but perhaps u have to use bapi for commit too: BAPI_TRANSACTION_COMMIT
Max -
Hi all,
I am able to loop two items for the sales order using table control.But I am not able to populate more than 2 items. Can anybody explain what exactly is the problem.
I am including my code below.
DATA: BEGIN OF ITAB OCCURS 0,
KUNNR(255) TYPE C,
END OF ITAB.
DATA :BEGIN OF ITAB1 OCCURS 0,
KUNNR1(10) TYPE C,
KUNNR2(10) TYPE C,
KETDAT(8) TYPE C,
DWERK(4) TYPE C,
ZTERM(4) TYPE C,
INCO1(3) TYPE C,
INCO2(16) TYPE C,
AUDAT(8) TYPE C,
VKBUR(4) TYPE C,
BZIRK(3) TYPE C,
END OF ITAB1.
DATA : BEGIN OF ITAB2 OCCURS 0,
KUNNR1(10) TYPE C,
MABNR(8) TYPE C,
KWMENG(1) TYPE C,
END OF ITAB2.
include bdcrecx1.
PARAMETERS PATH(128) DEFAULT 'C:\SALES1.TXT'.
DATA : FNAM(20) TYPE C,
IDX TYPE C.
start-of-selection.
CALL FUNCTION 'WS_UPLOAD'
EXPORTING
FILENAME = PATH
FILETYPE = 'ASC'
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
LOOP AT ITAB.
itab1-kunnr1 = itab2-kunnr1.
ITAB1-KUNNR1 = ITAB-KUNNR+0(10).
ITAB1-KUNNR2 = ITAB-KUNNR+10(10).
ITAB1-KETDAT = ITAB-KUNNR+20(8).
ITAB1-DWERK = ITAB-KUNNR+28(4).
ITAB1-ZTERM = ITAB-KUNNR+32(4).
ITAB1-INCO1 = ITAB-KUNNR+36(3).
ITAB1-INCO2 = ITAB-KUNNR+39(16).
ITAB1-AUDAT = ITAB-KUNNR+55(8).
ITAB1-VKBUR = ITAB-KUNNR+63(4).
ITAB1-BZIRK = ITAB-KUNNR+67(3).
ITAB2-KUNNR1 = ITAB-KUNNR+0(10).
ITAB2-MABNR = ITAB-KUNNR+70(8).
ITAB2-KWMENG = ITAB-KUNNR+78(1).
APPEND ITAB1.
CLEAR ITAB1.
APPEND ITAB2.
CLEAR ITAB2.
ENDLOOP.
perform open_group.
loop at itab1.
perform bdc_dynpro using 'SAPMV45A' '0101'.
perform bdc_field using 'BDC_CURSOR'
'VBAK-AUART'.
perform bdc_field using 'BDC_OKCODE'
'/00'.
perform bdc_field using 'VBAK-AUART'
'ZOR'.
perform bdc_field using 'VBAK-VKORG'
'1000'.
perform bdc_field using 'VBAK-VTWEG'
'10'.
perform bdc_field using 'VBAK-SPART'
'10'.
perform bdc_dynpro using 'SAPMV45A' '4001'.
perform bdc_field using 'BDC_OKCODE'
'KKAU'.
perform bdc_field using 'KUAGV-KUNNR'
itab1-kunnr1.
perform bdc_field using 'KUWEV-KUNNR'
itab1-kunnr2.
perform bdc_field using 'RV45A-KETDAT'
itab1-ketdat.
perform bdc_field using 'RV45A-KPRGBZ'
'D'.
perform bdc_field using 'VBKD-PRSDT'
'11/21/2005'.
perform bdc_field using 'VBKD-ZTERM'
itab1-zterm.
perform bdc_field using 'VBKD-INCO1'
ITAB1-INCO1.
perform bdc_field using 'VBKD-INCO2'
ITAB1-INCO2.
perform bdc_dynpro using 'SAPMV45A' '4002'.
perform bdc_field using 'BDC_OKCODE'
'=T\05'.
perform bdc_field using 'BDC_CURSOR'
'VBKD-BZIRK'.
perform bdc_field using 'VBAK-AUDAT'
ITAB1-AUDAT.
perform bdc_field using 'VBAK-VKBUR'
ITAB1-VKBUR.
perform bdc_field using 'VBAK-WAERK'
'USD'.
perform bdc_field using 'VBKD-PRSDT'
'11/21/2005'.
perform bdc_field using 'VBKD-BZIRK'
ITAB1-BZIRK.
perform bdc_dynpro using 'SAPLV60F' '4001'.
perform bdc_field using 'BDC_OKCODE'
'=T\06'.
perform bdc_field using 'BDC_CURSOR'
'FPLT-AFDAT(05)'.
perform bdc_field using 'FPLA-BEDAT'
'11/21/2005'.
perform bdc_field using 'FPLA-BEDAR'
'01'.
perform bdc_field using 'FPLA-RFPLN'
'0000000042'.
perform bdc_field using 'FPLT-AFDAT(01)'
'11/21/2005'.
perform bdc_field using 'FPLT-AFDAT(02)'
'11/21/2005'.
perform bdc_field using 'FPLT-AFDAT(03)'
'11/21/2005'.
perform bdc_field using 'FPLT-AFDAT(04)'
'11/21/2005'.
perform bdc_field using 'FPLT-AFDAT(05)'
'11/21/2005'.
perform bdc_dynpro using 'SAPMV45A' '4002'.
perform bdc_field using 'BDC_OKCODE'
'=T\09'.
perform bdc_field using 'BDC_CURSOR'
'VBKD-ZLSCH'.
perform bdc_field using 'VBKD-KTGRD'
'01'.
perform bdc_field using 'VBKD-ZLSCH'
'C'.
perform bdc_field using 'VBAK-ZUONR'
'Open Sales order'.
perform bdc_dynpro using 'SAPMV45A' '4002'.
perform bdc_field using 'BDC_OKCODE'
'=T\11'.
perform bdc_field using 'BDC_CURSOR'
'GVS_TC_DATA-REC-PARTNER(05)'.
perform bdc_field using 'GV_FILTER'
'PARALL'.
perform bdc_field using 'GVS_TC_DATA-REC-PARTNER(05)'
'3838'.
perform bdc_dynpro using 'SAPMV45A' '4002'.
perform bdc_field using 'BDC_OKCODE'
'=T\14'.
perform bdc_field using 'BDC_CURSOR'
'VBKD-BSARK'.
perform bdc_field using 'VBKD-BSARK'
'CU01'.
perform bdc_field using 'VBKD-IHREZ'
'12134'.
perform bdc_dynpro using 'SAPMV45A' '4002'.
perform bdc_field using 'BDC_OKCODE'
'/EBACK'.
perform bdc_field using 'BDC_CURSOR'
'VBAK-ZZLEAT'.
perform bdc_field using 'VBAK-ZZWARR'
'12346C'.
perform bdc_field using 'VBAK-ZZFABW'
'F14689'.
perform bdc_field using 'VBAK-ZZWARX'
'12012005'.
perform bdc_field using 'VBAK-ZZLEAT'
'CGUYFIU'.
perform bdc_dynpro using 'SAPMV45A' '4001'.
perform bdc_field using 'BDC_OKCODE'
'=PKO1'.
perform bdc_field using 'KUAGV-KUNNR'
itab1-kunnr1.
perform bdc_field using 'KUWEV-KUNNR'
itab1-kunnr2.
perform bdc_field using 'RV45A-KETDAT'
itab1-ketdat.
perform bdc_field using 'RV45A-KPRGBZ'
'D'.
perform bdc_field using 'VBKD-PRSDT'
'11/21/2005'.
perform bdc_field using 'VBKD-ZTERM'
itab1-zterm.
perform bdc_field using 'VBKD-INCO1'
ITAB1-INCO1.
perform bdc_field using 'VBKD-INCO2'
ITAB1-INCO2.
perform bdc_field using 'BDC_CURSOR'
'RV45A-ccode(idx)'.
MOVE 1 TO IDX.
LOOP AT ITAB2 WHERE KUNNR1 = ITAB2-KUNNR1.
CONCATENATE 'RV45A-MABNR(' IDX ')' INTO FNAM.
perform bdc_field using FNAM
ITAB2-MABNR.
CONCATENATE 'RV45A-KWMENG(' IDX ')' INTO FNAM.
perform bdc_field using FNAM
ITAB2-KWMENG.
IDX = IDX + 1.
ENDLOOP.
perform bdc_dynpro using 'SAPMV45A' '4001'.
perform bdc_field using 'BDC_OKCODE'
'=PKO1'.
perform bdc_field using 'KUAGV-KUNNR'
itab1-kunnr1.
perform bdc_field using 'KUWEV-KUNNR'
itab1-kunnr2.
perform bdc_field using 'RV45A-KETDAT'
itab1-ketdat.
perform bdc_field using 'RV45A-KPRGBZ'
'D'.
perform bdc_field using 'VBKD-PRSDT'
'11/21/2005'.
perform bdc_field using 'VBKD-ZTERM'
itab1-zterm.
perform bdc_field using 'VBKD-INCO1'
ITAB1-INCO1.
perform bdc_field using 'VBKD-INCO2'
ITAB1-INCO2.
perform bdc_field using 'RV45A-VBAP_SELKZ(01)'
'X'.
perform bdc_dynpro using 'SAPMV45A' '5003'.
perform bdc_field using 'BDC_OKCODE'
'/EBACK'.
perform bdc_dynpro using 'SAPMV45A' '4001'.
perform bdc_field using 'BDC_OKCODE'
'=SICH'.
perform bdc_field using 'KUAGV-KUNNR'
itab1-kunnr1.
perform bdc_field using 'KUWEV-KUNNR'
itab1-kunnr2.
perform bdc_field using 'RV45A-KETDAT'
ITAB1-KETDAT.
perform bdc_field using 'RV45A-KPRGBZ'
'D'.
perform bdc_field using 'VBKD-PRSDT'
'11/21/2005'.
perform bdc_field using 'VBKD-ZTERM'
ITAB1-ZTERM.
perform bdc_field using 'VBKD-INCO1'
ITAB1-INCO1.
perform bdc_field using 'VBKD-INCO2'
ITAB1-INCO2.
perform bdc_field using 'BDC_CURSOR'
'RV45A-MABNR(idx)'.
perform bdc_transaction using 'VA01'.
endloop.
Perform close_group.Answered the other post.
<i>
I think i see the problem,
LOOP AT ITAB2 WHERE KUNNR1 = <b>ITAB2</b>-KUNNR1.
CONCATENATE 'RV45A-MABNR(' IDX ')' INTO FNAM.
perform bdc_field using FNAM
ITAB2-MABNR.
CONCATENATE 'RV45A-KWMENG(' IDX ')' INTO FNAM.
perform bdc_field using FNAM
ITAB2-KWMENG.
IDX = IDX + 1.
ENDLOOP.
I think that it should be .....
LOOP AT ITAB2 WHERE KUNNR1 = <b>ITAB1</b>-KUNNR1.
</i>
Regards,
Rich Heilman -
Problem with Table control lines
Hi Friends,
This is the problem with table control lines:
I have screen with table control and I would like change the table control lines dynamicaly.
Exp:
In my PBO the Internal table which I am using to loop the TC is havig 7 records and its displayed with 7 records, now I have added one more record into my ITAB and now ITAB is having 8 records, when I am looping this ITAB with TC its taking the TC lines 7 only.
here is the code:
Initial values in gt_scr400 = 8
Initial values in tc_scr400 = 8
Now added one more recor into gt_scr400 , now gt_scr400 = 9.
LOOP AT gt_scr400
INTO wa_scr400
WITH CONTROL tc_scr400
CURSOR tc_scr400-current_line.
ENDLOOP.
I have used this logic :
DESCRIBE TABLE gt_scr400 LINES g_rec_300 .
tc_scr300-lines = g_rec_300.
but its not modifying the lines in my table control.
How to change the TC lines based on ITAB total records.
Thanks,
Sridharthere is a field in TableViewName-xxx
don't remember the exact field name for (total no of records)
you can check it in debug. when you add records in Internal table, u need to modify this field which is set at the first time when table control is populated. -
Dear All,
I have to write BDC for XK02. In XK02 we have one button "Other Communication" , once you click on this it opens one popup with table .
FAX
INT
MOB
TEL
TELX
etc.
in BDC i have write the code to select the MOB. How do I do that.
Regards,
RaghvendraHi Raghvendra,
In the transaction SHDB you can do the recording,
you have to be careful while recording,
in the popup displayed after clicking the "other communication" button
proprerly use the TAB key, when the communication method "MOB " is highlighted hit enter key
the window for the MOB details will be displayed and continue recording.
you no need to write coding to select communication method "MOB"
there is a option in SHDB to transfer the recording to a program.
Thanks -
How can we do the validation for non visible records in table control.
Hi Experts,
I have a table control which displays list of material details. I have a button to upload the material details from excel file to table control directly. I have to validate all the customers which are exist in the table. But my item (Material) table control displays only 5 rows i.e only 5 entries are visible in module pool screen. The validation is done for 5 records only in PAI event, but i need to do validation for rest of the records too (Which are not visible on items table), if validation fails then needs to display error message.
How can we do the validation for non visible records in table control.
Regards,
BujjiHi,
try validating material before displaying it in table control...'
Rgds/Abhhi -
Problem in Table controls in BDC
Hi All,
I have porblem in BDC using table controls.
I am working on VBO2 transaction i developed BDC for that i used CTUParameters for screen resulution
whenever press P+ it will go 11 recors in up and 11 is the first line in second page so how to map that
please help me.HI...
when that screen perform will come follow these steps...
before the table control screen... write following code.....
v_count = v_count + 1. ( you need to declare this variable )
(as your screen contains 11 row....)
IF v_count le 11.
pass the values to the perform statements.......
else.
add the perform related to P+ .
v_count = 1.
pass the values to the perform statements.......
ENDLOOP.
i hoep this info will be helpfull for you,,,,,,
if you need any clarification please revert back....
regards,
nag. -
Problem with Table control in BDC
Hi Experts,
I have dought regarding Table control i.e How to handle Table control in BDC? i need explanation for handling TC and senario for using T C in BDC?
regards,
Sudha.Hello,
This is the bdc to update the XK01 transaction code (Vendor Creation).
Here we will use table controls for bankings. Here Iam sending the coding and text files.
Coding
REPORT zprataptable2
NO STANDARD PAGE HEADING LINE-SIZE 255.
DATA : BEGIN OF itab OCCURS 0,
i1 TYPE i,
lifnr LIKE rf02k-lifnr,
bukrs LIKE rf02k-bukrs,
ekorg LIKE rf02k-ekorg,
ktokk LIKE rf02k-ktokk,
anred LIKE lfa1-anred,
name1 LIKE lfa1-name1,
sortl LIKE lfa1-sortl,
land1 LIKE lfa1-land1,
akont LIKE lfb1-akont,
fdgrv LIKE lfb1-fdgrv,
waers LIKE lfm1-waers,
END OF itab.
DATA : BEGIN OF jtab OCCURS 0,
j1 TYPE i,
banks LIKE lfbk-banks,
bankl LIKE lfbk-bankl,
bankn LIKE lfbk-bankn,
END OF jtab.
DATA : cnt(4) TYPE n.
DATA : fdt(20) TYPE c.
DATA : c TYPE i.
INCLUDE bdcrecx1.
START-OF-SELECTION.
CALL FUNCTION 'WS_UPLOAD'
EXPORTING
filename = 'C:\first1.txt'
filetype = 'DAT'
TABLES
data_tab = itab.
CALL FUNCTION 'WS_UPLOAD'
EXPORTING
filename = 'C:\second.txt'
filetype = 'DAT'
TABLES
data_tab = jtab.
LOOP AT itab.
PERFORM bdc_dynpro USING 'SAPMF02K' '0100'.
PERFORM bdc_field USING 'BDC_CURSOR'
'RF02K-KTOKK'.
PERFORM bdc_field USING 'BDC_OKCODE'
'/00'.
PERFORM bdc_field USING 'RF02K-LIFNR'
itab-lifnr.
PERFORM bdc_field USING 'RF02K-BUKRS'
itab-bukrs.
PERFORM bdc_field USING 'RF02K-EKORG'
itab-ekorg.
PERFORM bdc_field USING 'RF02K-KTOKK'
itab-ktokk.
PERFORM bdc_dynpro USING 'SAPMF02K' '0110'.
PERFORM bdc_field USING 'BDC_CURSOR'
'LFA1-LAND1'.
PERFORM bdc_field USING 'BDC_OKCODE'
'/00'.
PERFORM bdc_field USING 'LFA1-ANRED'
itab-anred.
PERFORM bdc_field USING 'LFA1-NAME1'
itab-name1.
PERFORM bdc_field USING 'LFA1-SORTL'
itab-sortl.
PERFORM bdc_field USING 'LFA1-LAND1'
itab-land1.
PERFORM bdc_dynpro USING 'SAPMF02K' '0120'.
PERFORM bdc_field USING 'BDC_CURSOR'
'LFA1-KUNNR'.
PERFORM bdc_field USING 'BDC_OKCODE'
'/00'.
PERFORM bdc_dynpro USING 'SAPMF02K' '0130'.
PERFORM bdc_field USING 'BDC_CURSOR'
'LFBK-BANKN(01)'.
PERFORM bdc_field USING 'BDC_OKCODE'
'=ENTR'.
cnt = 0.
LOOP AT jtab WHERE j1 = itab-i1.
cnt = cnt + 1.
CONCATENATE 'LFBK-BANKS(' cnt ')' INTO fdt.
PERFORM bdc_field USING fdt jtab-banks.
CONCATENATE 'LFBK-BANKL(' cnt ')' INTO fdt.
PERFORM bdc_field USING fdt jtab-bankl.
CONCATENATE 'LFBK-BANKN(' cnt ')' INTO fdt.
PERFORM bdc_field USING fdt jtab-bankn.
IF cnt = 5.
cnt = 0.
PERFORM bdc_dynpro USING 'SAPMF02K' '0130'.
PERFORM bdc_field USING 'BDC_CURSOR'
'LFBK-BANKS(01)'.
PERFORM bdc_field USING 'BDC_OKCODE'
'=P+'.
PERFORM bdc_dynpro USING 'SAPMF02K' '0130'.
PERFORM bdc_field USING 'BDC_CURSOR'
'LFBK-BANKN(02)'.
PERFORM bdc_field USING 'BDC_OKCODE'
'=ENTR'.
ENDIF.
ENDLOOP.
PERFORM bdc_dynpro USING 'SAPMF02K' '0130'.
PERFORM bdc_field USING 'BDC_CURSOR'
'LFBK-BANKS(01)'.
PERFORM bdc_field USING 'BDC_OKCODE'
'=ENTR'.
PERFORM bdc_dynpro USING 'SAPMF02K' '0210'.
PERFORM bdc_field USING 'BDC_CURSOR'
'LFB1-FDGRV'.
PERFORM bdc_field USING 'BDC_OKCODE'
'/00'.
PERFORM bdc_field USING 'LFB1-AKONT'
itab-akont.
PERFORM bdc_field USING 'LFB1-FDGRV'
itab-fdgrv.
PERFORM bdc_dynpro USING 'SAPMF02K' '0215'.
PERFORM bdc_field USING 'BDC_CURSOR'
'LFB1-ZTERM'.
PERFORM bdc_field USING 'BDC_OKCODE'
'/00'.
PERFORM bdc_dynpro USING 'SAPMF02K' '0220'.
PERFORM bdc_field USING 'BDC_CURSOR'
'LFB5-MAHNA'.
PERFORM bdc_field USING 'BDC_OKCODE'
'/00'.
PERFORM bdc_dynpro USING 'SAPMF02K' '0310'.
PERFORM bdc_field USING 'BDC_CURSOR'
'LFM1-WAERS'.
PERFORM bdc_field USING 'BDC_OKCODE'
'/00'.
PERFORM bdc_field USING 'LFM1-WAERS'
itab-waers.
PERFORM bdc_dynpro USING 'SAPMF02K' '0320'.
PERFORM bdc_field USING 'BDC_CURSOR'
'RF02K-LIFNR'.
PERFORM bdc_field USING 'BDC_OKCODE'
'=ENTR'.
PERFORM bdc_dynpro USING 'SAPLSPO1' '0300'.
PERFORM bdc_field USING 'BDC_OKCODE'
'=YES'.
PERFORM bdc_transaction USING 'XK01'.
ENDLOOP.
PERFORM close_group.
Intial screen data file.
1 63190 0001 0001 0001 mr bal188 b in 31000 a1 inr
2 63191 0001 0001 0001 mr bal189 b in 31000 a1 inr
Table control Data:
1 in sb 11000
1 in sb 12000
1 in sb 13000
1 in sb 14000
1 in sb 15000
1 in sb 16000
1 in sb 17000
1 in sb 18000
1 in sb 19000
1 in sb 20000
1 in sb 21000
1 in sb 22000
2 in sb 21000
2 in sb 22000
Thanks,
Vasanth -
BDC: How to enter data in Table control (With wizard) using scrolling?
Using BDC, I am trying to enter the data in the table control (with wizard).
I want to know what is the specific command to scroll down in table control (With Wizard).
While recording I am getting these steps:
SAPLCKBASCR1 0202 X
BDC_CURSOR CKI94B-MATNR
BDC_OKCODE /00
When I use above command and run BDC, it does not scroll.
Kindly let me know where am I going wrong.
Thanks in advance for your kind help.
AshishThe transaction is CK94
and the BDC recording is :
T CK94
SAPLCKBASCR1 0200 X
BDC_CURSOR CKI94A-BDATJ
BDC_OKCODE =ENTR
CKI94A-MATNR 10000789
CKI94A-WERKS VA79
CKI94A-BDATJ 2005
CKI94A-MGTYP ZDU01
SAPLCKBASCR1 0202 X
BDC_CURSOR CKI94B-MISCH_VERH(02)
BDC_OKCODE /00
CKI94B-MIXCOST_PC(01)
CKI94B-MIXCOST_PC(02) X
CKI94B-MISCH_VERH(01)
CKI94B-MISCH_VERH(02) 40
SAPLCKBASCR1 0202 X
BDC_CURSOR CKI94B-MATNR
BDC_OKCODE /00
SAPLCKBASCR1 0202 X
BDC_CURSOR CKI94B-MATNR
BDC_OKCODE /00
SAPLCKBASCR1 0202 X
BDC_CURSOR CKI94B-MISCH_VERH(07)
BDC_OKCODE /00
CKI94B-MIXCOST_PC(07)
CKI94B-MISCH_VERH(07) 60
SAPLCKBASCR1 0202 X
BDC_CURSOR CKI94B-MATNR
BDC_OKCODE /00
SAPLCKBASCR1 0202 X
BDC_CURSOR CKI94B-MATNR
BDC_OKCODE /00
SAPLCKBASCR1 0202 X
BDC_CURSOR CKI94B-MATNR
BDC_OKCODE =STOR
BDC_OKCODE '/00' is recorded when I scroll down in the table control.
Thanks for your kind concern.
Ashish -
BDC for Entering Invoice Problem
Dear All,
I am preparing a BDC for Entering Invoice (Tcode- MIRO) & facing problem.
During recording in PO reference tab i am using Bill of Lading and inserting data through More Allocation Criteria tab and in column cell entering 8 Reference at one time for more i am scrolling it and entering 8 more and adopting it.
In recording after adopting it is showing all adopted documents but on saved recording it is adopting latest 8 reference.
I coding for "P++" for scrolling but it is not working.
Please help me out.
Is it possible to code for scrolling of PO reference Bill of Lading pop of window.?
Thanks & Regards,
VarunHello Suhas,
No, not at all. We see that so many times in the forum that we are mistaken.
There are 3 places where we find P++, P--, etc. :
- the function codes assigned to the scrolling buttons in the standard toolbar for ABAP lists.
- If I remember well, they are also assigned to the buttons inside the screen for the table control wizard.
- SCROLLING_IN_TABLE
But usually, we don't create buttons inside screens for scrolling.
Table control scrolling via page down and page up keys, is made of 2 things : changing CXTAB_CONTROL-TOP_LINE + trigger enter key.
I know 1 note which talks about that : [187946 - No positioning on PRT overview in routing|https://service.sap.com/sap/support/notes/187946]
Sandra -
Hi Guys,
FYI, im having a table control with field Plant and Material. I have defaulted the <b>std search help</b> to field <u>Material</u> at the screen painter. Meaning system will call up the search help for Material once i press F4.
Since the search help for field Material is a collective search help, and there is a <u>Plant</u> field available for Material filtering. Thus i may need to get the Plant's value from of same row of the table control to Populate into the Material's search help.
I have already tried to create a new module under the LOOP...ENDLOOP at PAI's flow logic. And try to use parameter id to set the value for plant, purpose is to populate it to Material's search help when i click F4 on material field. The problem is the new module that i coded under LOOP...ENDLOOP will never trigger when i click F4. Because there is NO event to trigger my module.
Other than the above, i tried to code it under POV. But it doesn't work as well, because there is more than 1 record under table control and i can not determine the during runtime which row of F4 for material being click.
Please comment on this above on how to solve the problem.
Thanks in advance.Hi,
You can call standard collective search help [say for Eg:<b>MAT1</b>] through Process on value-request event and set the paramenter id of Plant field before calling the funtion module <b>'HELP_START'</b>.Then we can get the materials specific to the PLANT in the corresponding row of the TABLE CONTROL.
To get which row of the table control is clicked use <b>Get Cursor Line</b> Statement as i mentioned below.
Flow logic:
PROCESS ON VALUE-REQUEST.
FIELD x_marc-matnr MODULE mat_shelp.
Module definition:
MODULE mat_shelp INPUT.
DATA:v_help_info LIKE help_info,n TYPE i,
it_dyselect LIKE TABLE OF dselc WITH HEADER LINE,
it_dyvaltab LIKE TABLE OF dval WITH HEADER LINE.
REFRESH it_dyselect.
it_dyselect-fldname = 'MANDT'.
it_dyselect-dyfldname = 'SY-MANDT'.
APPEND it_dyselect.
it_dyselect-fldname = 'MATNR'.
it_dyselect-dyfldname = 'X_MARC-MATNR'.
APPEND it_dyselect.
v_help_info-call = 'M'.
v_help_info-object = 'F'.
v_help_info-program = sy-repid. "'ZVIG_MOD_TABLE_CONTROL_1'.
v_help_info-dynpro = sy-dynnr. "'9001'.
v_help_info-tabname = 'MARC'.
v_help_info-fieldname = 'MATNR'.
v_help_info-fieldtype = 'CHAR'.
v_help_info-keyword = 'MATNR'.
v_help_info-fieldlng = 18.
v_help_info-fldvalue = ''.
v_help_info-mcobj = 'MAT1'.
v_help_info-spras = 'E'.
v_help_info-menufunct = 'HC'.
v_help_info-title = 'SAP'.
v_help_info-dynprofld = 'X_MARC-MATNR'. <b>----
> Give ur screen field name</b>
v_help_info-tcode = sy-tcode. "'ZTC1'.
v_help_info-pfkey = 'MEN'.
v_help_info-docuid = 'FE'.
v_help_info-pov = 'N'.
v_help_info-curow = '2'.
v_help_info-cucol = '1'.
v_help_info-dynpprog = sy-repid. " ZVIG_MOD_TABLE_CONTROL_1
v_help_info-stepl = '1'.
v_help_info-selectart = 'A'.
GET CURSOR LINE n.
READ TABLE it_marc INTO x_marc INDEX n.
SET PARAMETER ID 'WRK' FIELD X_MARC-WERKS .
CALL FUNCTION 'HELP_START'
EXPORTING
help_infos = v_help_info
TABLES
dynpselect = it_dyselect
dynpvaluetab = it_dyvaltab .
ENDMODULE. " mat_shelp INPUT -
Internal table not getting modified from Table Control
Hi Guys,
I am developing a <b>Module Pool </b>Program where I am inserting data directly in table control of the main screen.
In the flow logic of the Table control I have written :
PROCESS BEFORE OUTPUT.
LOOP AT itab WITH CONTROL tc1 CURSOR tc1-current_line.
MODULE read_data.
ENDLOOP.
MODULE status_0100.
PROCESS AFTER INPUT.
LOOP AT itab.
MODULE mod_data.
ENDLOOP.
MODULE user_command_0100.
Module mod_data input.
MODIFY itab INDEX tc1-current_line.
Endmodule.
At modify, when I am debugging it's showing sy-subrc = 4 (Entry not appending in Int Table though it is there in the header line). But, if I use append itab, it's working (Problem is that while inserting 2nd record a copy of first record is also appending which I don't want).
Please let me know what's wrong in Modify statement or what is solution for inserting records of tablecontrol in internal table.
TIA,
NitinHi Nitin,
use the following code wor module.
Module mod_data input.
READ ITAB INDEX TC1-CURRENT_LINE.
IF SY-SUBRC = 0.
MODIFY itab INDEX tc1-current_line.
ELSE.
APPEND ITAB.
ENDIF.
Endmodule. -
WSo2 BDC to delete line item in table control
Hi all,
My requirement is to delete material from wso2 table control.
The only way to delete a line item in this table control is to select the line in table control and delete it.
The recording doesnt captures any selection of row.
Any input on how to caputre particular row ??
Please dont send me links to work with table control in bdc
Regards
BhanuDaveL wrote:
I am not aware of any way to make the BDC delete the row, other than by running in 'A'-all mode and letting the user step through each screen and delete the rows that should be deleted.
Well , if the user has to run it in "A" all screen mode why a BDC is required
DaveL wrote:
Deleting them from the table control would obviously have no effect upon the database table though, would it....it would just hide a row from view in this particular table control
Really ? Well it will delete it from database too i dont know what makes you think that it wont be deleted from database.
Anways i have figured out how to capture row selection in BDC .
Thanks for your reply it proves nothing i guess -
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
Maybe you are looking for
-
Photoshop CC with CS3 will not open Nikon NEF files for the D610.[was:CC]
Photoshop CC with CS3 will not open Nikon NEF files for the D610. Is there a fix for this? Fast Eddy
-
Dear All, my client using TAXINN. tax code: V1 Vat-3%, condition records maintained. In PO- item level-Invoice tab-Taxes-VAT 3 % is showing in Amount field. but in filed Condition value is showing Zero for Vat 3%. e.g base price= Rs. 300 VAT 3% = 9 i
-
Query on 0TCT_MC23 cube
Hi All, I made my custom query on 0TCT_MC23 provider. It takes so much time to run. When i see in SM50 then it doesnt show any process running from my id. I deleted and created the index too for the cube but still its very very slow. Could you guys t
-
Compression software for Mac?
Hi, I have a mac laptop and was wondering.....is there compression software somewhere on this computer already, or what jpeg compression software do you recommend? thank you. ~keri
-
Re-upgrade from 10.5.6 to 10.8.5?
I have a 2007 Mac and its original discs. It was running the latest OS (10.8.5) but the hard disc became corrupted (believe me, nothing worked - reloading system software gave me an error, I couldn't repair the disc with disc utility, rebuilding from