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

session method

Former Member
0 Likes
494

Hi all

I am using function module gui_upload to upload my data from file.but after writing the bdc program and during processing again i have to enter the values in screens but since i have uploaded data from file the data should be automatically read from the specified file.

e.g suppose i have given kunnr = 100 , name1 = sharma travels.

on processing i have to again enter the values but it should be automatically avilable in kunnr and name1.

instead of 100 i am getting itab-kunnr on screen.

please help me

4 REPLIES 4
Read only

Former Member
0 Likes
473

Hi Singh,

Your code must be faulty.

How are you populating your BDC Table?

Show us your code?

Regards,

Ravi

Read only

0 Likes
473

&----


*& Report ZMANUCUST1

*&

&----


*&

*&

&----


REPORT ZMANUCUST1.

TABLES: KNA1,RF02D.

DATA: BEGIN OF ITAB OCCURS 0,

KUMMR LIKE rf02d-kunnr,

NAME1 LIKE KNA1-NAME1,

SORTL LIKE KNA1-SORTL,

STRAS LIKE KNA1-STRAS,

LAND1 LIKE KNA1-LAND1,

SPRAS LIKE KNA1-SPRAS,

KTOKD LIKE RF02D-KTOKD,

END OF ITAB.

DATA: BDCTAB LIKE BDCDATA OCCURS 0 WITH HEADER LINE.

CALL FUNCTION 'GUI_UPLOAD'

EXPORTING

FILENAME = 'C:\CUST2.TXT'

  • FILETYPE = 'ASC'

  • HAS_FIELD_SEPARATOR = ' '

  • HEADER_LENGTH = 0

  • READ_BY_LINE = 'X'

  • DAT_MODE = ' '

  • CODEPAGE = ' '

  • IGNORE_CERR = ABAP_TRUE

  • REPLACEMENT = '#'

  • CHECK_BOM = ' '

  • VIRUS_SCAN_PROFILE =

  • IMPORTING

  • FILELENGTH =

  • HEADER =

TABLES

DATA_TAB = ITAB

  • 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.

CALL FUNCTION 'BDC_OPEN_GROUP'

EXPORTING

  • CLIENT = SY-MANDT

  • DEST = FILLER8

GROUP = 'ZRECORD1'

  • HOLDDATE = FILLER8

KEEP = 'X'

USER = SY-UNAME

  • RECORD = FILLER1

  • PROG = SY-CPROG

  • IMPORTING

  • QID =

  • EXCEPTIONS

  • CLIENT_INVALID = 1

  • DESTINATION_INVALID = 2

  • GROUP_INVALID = 3

  • GROUP_IS_LOCKED = 4

  • HOLDDATE_INVALID = 5

  • INTERNAL_ERROR = 6

  • QUEUE_ERROR = 7

  • RUNNING = 8

  • SYSTEM_LOCK_ERROR = 9

  • USER_INVALID = 10

  • OTHERS = 11

.

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.

PERFORM ASSIGN.

CALL FUNCTION 'BDC_INSERT'

EXPORTING

TCODE = 'XD01'

  • POST_LOCAL = NOVBLOCAL

  • PRINTING = NOPRINT

  • SIMUBATCH = ' '

  • CTUPARAMS = ' '

TABLES

DYNPROTAB = BDCTAB

  • EXCEPTIONS

  • INTERNAL_ERROR = 1

  • NOT_OPEN = 2

  • QUEUE_ERROR = 3

  • TCODE_INVALID = 4

  • PRINTING_INVALID = 5

  • POSTING_INVALID = 6

  • OTHERS = 7

.

IF SY-SUBRC <> 0.

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

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

ENDIF.

*REFRESH BDCTAB.

*CLEAR BDCTAB.

ENDLOOP.

CALL FUNCTION 'BDC_CLOSE_GROUP'

  • EXCEPTIONS

  • NOT_OPEN = 1

  • QUEUE_ERROR = 2

  • OTHERS = 3

.

IF SY-SUBRC <> 0.

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

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

ENDIF.

FORM ASSIGN.

BDCTAB-PROGRAM = 'SAPMF02D'.

BDCTAB-DYNPRO = '100'.

BDCTAB-DYNBEGIN = 'X'.

BDCTAB-FNAM = 'RF02D-KUNNR'.

BDCTAB-FVAL = 'ITAB-KUNNR'.

APPEND BDCTAB.

BDCTAB-FNAM = 'BDC_OKCODE'.

BDCTAB-FVAL = '00'.

APPEND BDCTAB.

*BDCTAB-PROGRAM = 'SAPMF02D'.

BDCTAB-DYNPRO = '7100'.

BDCTAB-DYNBEGIN = 'X'.

BDCTAB-FNAM = 'RF02D-KTOKD'.

BDCTAB-FVAL = 'ITAB-KTOKD'.

APPEND BDCTAB.

BDCTAB-DYNPRO = '110'.

BDCTAB-DYNBEGIN = 'X'.

BDCTAB-FNAM = 'KNA1-NAME1'.

BDCTAB-FVAL = 'ITAB-NAME1'.

APPEND BDCTAB.

BDCTAB-FNAM = 'BDC_OKCODE'.

BDCTAB-FVAL = '00'.

APPEND BDCTAB.

*BDCTAB-DYNBEGIN = 'X'.

BDCTAB-FNAM = 'KNA1-SORTL'.

BDCTAB-FVAL = 'ITAB-SORTL'.

APPEND BDCTAB.

*BDCTAB-DYNPRO = '100'.

*BDCTAB-DYNBEGIN = 'X'.

BDCTAB-FNAM = 'KNA1-STRAS'.

BDCTAB-FVAL = 'ITAB-STRAS'.

APPEND BDCTAB.

*BDCTAB-DYNPRO = '100'.

*BDCTAB-DYNBEGIN = 'X'.

BDCTAB-FNAM = 'KNA1-LAND1'.

BDCTAB-FVAL = 'ITAB-LAND1'.

APPEND BDCTAB.

*BDCTAB-DYNPRO = '100'.

*BDCTAB-DYNBEGIN = 'X'.

BDCTAB-FNAM = 'KNA1-SPRAS'.

BDCTAB-FVAL = 'ITAB-SPRAS'.

APPEND BDCTAB.

BDCTAB-DYNPRO = '120'.

BDCTAB-DYNBEGIN = 'X'.

BDCTAB-FNAM = 'BDC_OKCODE'.

BDCTAB-FVAL = '00'.

APPEND BDCTAB.

BDCTAB-DYNPRO = '125'.

BDCTAB-DYNBEGIN = 'X'.

BDCTAB-FNAM = 'BDC_OKCODE'.

BDCTAB-FVAL = '00'.

APPEND BDCTAB.

ENDFORM.

Read only

0 Likes
473

BDCTAB-DYNPRO = '7100'.

BDCTAB-DYNBEGIN = 'X'.

BDCTAB-FNAM = 'RF02D-KTOKD'.

BDCTAB-FVAL = 'ITAB-KTOKD'.

APPEND BDCTAB.

check this code you have written.

remove the single cotes for ITAB-KTOKD

BDCTAB-DYNPRO = '7100'.

BDCTAB-DYNBEGIN = 'X'.

BDCTAB-FNAM = 'RF02D-KTOKD'.

BDCTAB-FVAL = ITAB-KTOKD.

APPEND BDCTAB.

apply same to rest of the code

execute and check

if any error please tell,

Regards,

Ani

Read only

Former Member
0 Likes
473

hi check this ...

the code had some problem....means..

you r giving the data as 'itab-field' instead of itab-field..

any thing in the single cotes must taken as the char string value...

BDCTAB-PROGRAM = 'SAPMF02D'.

BDCTAB-DYNPRO = '100'.

BDCTAB-DYNBEGIN = 'X'.

BDCTAB-FNAM = 'RF02D-KUNNR'.

BDCTAB-FVAL = ITAB-KUNNR.

APPEND BDCTAB.

delete the cotes at this specified line.