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

Table control Help.

Former Member
0 Likes
658

Hi all,

I have two screens. 1st screen calles second.

Second has got Table control with both scroll bars. Vertical scroll bar limit = 20.

When i enter data into Table control and press vertical scroll bar down, data gets cleared.

How to solve this?

Thanks in advance.

5 REPLIES 5
Read only

Former Member
0 Likes
623

Any Inputs>???

Read only

0 Likes
623

go through this

REPORT YJAR_VENDOR_INBOUND02 NO STANDARD PAGE HEADING LINE-SIZE 255

MESSAGE-ID ZABC.

*******************************************************************************

STRUCTURE DEFINITIONS :

*

*******************************************************************************

TYPES : BEGIN OF TY_SOURCE ,

LIFNR TYPE LIF16 ,

BUKRS TYPE BUKRS ,

EKORG TYPE EKORG ,

KTOKK TYPE KTOKK ,

NAME1 TYPE AD_NAME1 ,

SORTL TYPE AD_SORT1 ,

LAND1 TYPE LAND1 ,

BANKS TYPE BANKS ,

BANKL TYPE BANKK ,

BANKN TYPE BANKN ,

AKONT TYPE AKONT ,

FDGRV TYPE FDGRV ,

WAERS TYPE BSTWA ,

END OF TY_SOURCE ,

BEGIN OF TY_HEADER ,

LIFNR TYPE LIF16 ,

BUKRS TYPE BUKRS ,

EKORG TYPE EKORG ,

KTOKK TYPE KTOKK ,

NAME1 TYPE AD_NAME1 ,

SORTL TYPE AD_SORT1 ,

LAND1 TYPE LAND1 ,

AKONT TYPE AKONT ,

FDGRV TYPE FDGRV ,

WAERS TYPE BSTWA ,

END OF TY_HEADER ,

BEGIN OF TY_ITEM ,

LIFNR TYPE LIF16 ,

BANKS TYPE BANKS ,

BANKL TYPE BANKK ,

BANKN TYPE BANKN ,

END OF TY_ITEM .

*******************************************************************************

INTERNAL TABLE AND WORK AREA DEFINITIONS :

*

*******************************************************************************

DATA : T_SOURCE TYPE STANDARD TABLE OF TY_SOURCE INITIAL SIZE 1 ,

W_SOURCE TYPE TY_SOURCE ,

W_SOURCE1 TYPE TY_SOURCE ,

T_TARGET TYPE STANDARD TABLE OF BDCDATA INITIAL SIZE 1 ,

W_TARGET TYPE BDCDATA ,

T_HEADER TYPE STANDARD TABLE OF TY_HEADER INITIAL SIZE 1 ,

W_HEADER TYPE TY_HEADER ,

T_ITEM TYPE STANDARD TABLE OF TY_ITEM INITIAL SIZE 1 ,

W_ITEM TYPE TY_ITEM ,

I(2) TYPE C ,

FNAM(20) .

*******************************************************************************

UPLOADING FLATFILE TO SOURCE INTERNAL TABLE :

*

*******************************************************************************

PERFORM SUB_UPLOAD_FLATFILE.

PERFORM SUB_SPLIT_DATA.

*include bdcrecx1.

*

*start-of-selection.

*

*perform open_group.

LOOP AT T_HEADER INTO W_HEADER .

REFRESH T_TARGET .

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' W_HEADER-LIFNR.

PERFORM BDC_FIELD USING 'RF02K-BUKRS' W_HEADER-BUKRS.

PERFORM BDC_FIELD USING 'RF02K-EKORG' W_HEADER-EKORG.

PERFORM BDC_FIELD USING 'RF02K-KTOKK' W_HEADER-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-NAME1' W_HEADER-NAME1.

PERFORM BDC_FIELD USING 'LFA1-SORTL' W_HEADER-SORTL.

PERFORM BDC_FIELD USING 'LFA1-LAND1' W_HEADER-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-BANKL(02)'.

PERFORM BDC_FIELD USING 'BDC_OKCODE' 'ENTR'.

I = '01' .

LOOP AT T_ITEM INTO W_ITEM WHERE LIFNR = W_HEADER-LIFNR .

CONCATENATE 'LFBK-BANKS(' I ')' INTO FNAM .

PERFORM BDC_FIELD USING FNAM W_ITEM-BANKS.

CONCATENATE 'LFBK-BANKL(' I ')' INTO FNAM .

PERFORM BDC_FIELD USING FNAM W_ITEM-BANKL.

CONCATENATE 'LFBK-BANKN(' I ')' INTO FNAM .

PERFORM BDC_FIELD USING FNAM W_ITEM-BANKN.

I = I + 1 .

IF I GT 5 .

PERFORM BDC_DYNPRO USING 'SAPMF02K' '0130'.

PERFORM BDC_FIELD USING 'BDC_CURSOR' 'LFBK-BANKS(01)'.

PERFORM BDC_FIELD USING 'BDC_OKCODE' 'P+'.

I = '01'.

ENDIF.

PERFORM BDC_DYNPRO USING 'SAPMF02K' '0130'.

PERFORM BDC_FIELD USING 'BDC_CURSOR' 'LFBK-BANKS(01)'.

PERFORM BDC_FIELD USING 'BDC_OKCODE' '=ENTR'.

ENDLOOP .

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' W_HEADER-AKONT.

PERFORM BDC_FIELD USING 'LFB1-FDGRV' W_HEADER-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' W_HEADER-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'.

*

*perform close_group.

CLEAR W_HEADER .

CALL TRANSACTION 'XK01'

USING T_TARGET

MODE 'A'.

ENDLOOP .

&----


*& Form SUB_UPLOAD_FLATFILE

&----


THIS SUBROUTINE IS USED TO UPLOAD THE FLATFILE TO SOURCE INTERNAL TABLE

-


FORM SUB_UPLOAD_FLATFILE .

CALL FUNCTION 'GUI_UPLOAD'

EXPORTING

FILENAME = 'E:/FLATFILE.TXT'

FILETYPE = 'ASC'

HAS_FIELD_SEPARATOR = 'X'

HEADER_LENGTH = 0

READ_BY_LINE = 'X'

DAT_MODE = ' '

IMPORTING

FILELENGTH =

HEADER =

TABLES

DATA_TAB = T_SOURCE

EXCEPTIONS

FILE_OPEN_ERROR = 1

FILE_READ_ERROR = 2

NO_BATCH = 3

GUI_REFUSE_FILETRANSFER = 4

INVALID_TYPE = 5

NO_AUTHORITY = 6

UNKNOWN_ERROR = 7

BAD_DATA_FORMAT = 8

HEADER_NOT_ALLOWED = 9

SEPARATOR_NOT_ALLOWED = 10

HEADER_TOO_LONG = 11

UNKNOWN_DP_ERROR = 12

ACCESS_DENIED = 13

DP_OUT_OF_MEMORY = 14

DISK_FULL = 15

DP_TIMEOUT = 16

OTHERS = 17

.

IF SY-SUBRC 0.

MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO

WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.

ENDIF.

ENDFORM. " SUB_UPLOAD_FLATFILE

&----


*& Form SUB_SPLIT_DATA

&----


THIS SUBROUTINE IS USED TO SPLIT DATA FROM SOURCE INTERNAL TABLE TO

HEADER AND ITEM INTERNAL TABLE

-


FORM SUB_SPLIT_DATA .

LOOP AT T_SOURCE INTO W_SOURCE .

W_SOURCE1 = W_SOURCE .

AT NEW LIFNR .

W_HEADER-LIFNR = W_SOURCE1-LIFNR.

W_HEADER-BUKRS = W_SOURCE1-BUKRS.

W_HEADER-EKORG = W_SOURCE1-EKORG.

W_HEADER-KTOKK = W_SOURCE1-KTOKK.

W_HEADER-NAME1 = W_SOURCE1-NAME1.

W_HEADER-SORTL = W_SOURCE1-SORTL.

W_HEADER-LAND1 = W_SOURCE1-LAND1.

W_HEADER-AKONT = W_SOURCE1-AKONT.

W_HEADER-FDGRV = W_SOURCE1-FDGRV.

W_HEADER-WAERS = W_SOURCE1-WAERS.

APPEND W_HEADER TO T_HEADER .

ENDAT .

W_ITEM-LIFNR = W_SOURCE-LIFNR .

W_ITEM-BANKS = W_SOURCE-BANKS .

W_ITEM-BANKL = W_SOURCE-BANKL.

W_ITEM-BANKN = W_SOURCE-BANKN.

APPEND W_ITEM TO T_ITEM .

CLEAR W_HEADER.

CLEAR W_ITEM .

ENDLOOP.

ENDFORM. " SUB_SPLIT_DATA

-


Start new screen *

-


FORM BDC_DYNPRO USING PROGRAM DYNPRO.

CLEAR W_TARGET.

W_TARGET-PROGRAM = PROGRAM.

W_TARGET-DYNPRO = DYNPRO.

W_TARGET-DYNBEGIN = 'X'.

APPEND W_TARGET TO T_TARGET.

ENDFORM. "BDC_DYNPRO

-


Insert field *

-


FORM BDC_FIELD USING FNAM FVAL.

IF FVAL SPACE.

CLEAR W_TARGET.

W_TARGET-FNAM = FNAM.

W_TARGET-FVAL = FVAL.

APPEND W_TARGET TO T_TARGET.

ENDIF.

ENDFORM. "BDC_FIELD

****************FLAT FILE FORMAT***********************

1000-56 1000 1000 0001 ABC-01 TC IN US 123445678 123456 31000 A1 INR

1000-56 1000 1000 0001 ABC-01 TC IN US 123123123 234567 31000 A1 INR

1000-56 1000 1000 0001 ABC-01 TC IN US 123123123 345678 31000 A1 INR

1000-56 1000 1000 0001 ABC-01 TC IN US 123123123 345679 31000 A1 INR

1000-56 1000 1000 0001 ABC-01 TC IN US 123123123 345670 31000 A1 INR

1000-56 1000 1000 0001 ABC-01 TC IN US 123123123 345671 31000 A1 INR

1000-56 1000 1000 0001 ABC-01 TC IN US 123123123 345672 31000 A1 INR

1000-56 1000 1000 0001 ABC-01 TC IN US 123123123 345673 31000 A1 INR

1000-56 1000 1000 0001 ABC-01 TC IN US 123123123 345674 31000 A1 INR

Read only

Former Member
0 Likes
623

hi,

your data is getting cleared because u have written query to fill table control in PAI.

you just do one thing write code to fill table in PBO of second screen.

if will work.

reward if useful.

Read only

Former Member
0 Likes
623

Hi,

You have to check if in tho PAI you are updating your internal table and in tho PBO you are movin internal table data to table control:

PROCESS BEFORE OUTPUT.

loop at TG_NWTNFITM with control tc_itens

cursor tc_itens-current_line.

MODULE: MOVE_INT_TAB_TO_TABLE_CONTROL.

ENDLOOP.

PROCESS AFTER INPUT.

LOOP at TG_NWTNFITM.

MODULE: MOVE_TABLE_CONTROL_TO_INT_TAB.

ENDLOOP.

Regards,

Fernando

Read only

Former Member
0 Likes
623

Dixit,

I am not sure about your code, I guess some where in your code, you are refershing the internal table, which is used for Table Control.

I suggest u, go through your code in Debug mode and check the Internal table.

Hope this Helps,

Thanks,

Swetha