‎2007 Apr 23 8:03 AM
parameters: P_FILE type localfile obligatory.
start-of-selection.
CALL FUNCTION 'GUI_UPLOAD'
EXPORTING
FILENAME = P_FILE
FILETYPE = 'DAT'
TABLES
DATA_TAB = IT_ITAB.
when i wrote the code in above manner,it's giving runtime error giving the message
'the function interface allows you to specify only fields of a particular type under 'file name'.the field 'P_FILE ' specified here is a different field type'.
plz tell me where im going wrong.
‎2007 Apr 23 8:33 AM
Hai Srinivas,
<b>Just do one modification to your code.</b>
start-of-selection.
CALL FUNCTION 'GUI_UPLOAD'
EXPORTING
FILENAME = P_FILE
<b>FILETYPE = 'ASC'</b>
TABLES
DATA_TAB = IT_ITAB.
Also Do mension the File path as String type.
Hope you got it.
<b>
Reward points if it helps you.</b>
Regds,
Rama chary.Pammi
‎2007 Apr 23 8:07 AM
Hi srinivas,
Go through this program.
&----
*& Application :SD Master Data *
*& Copied From Program Version : *
*& Original Program : *
&----
*& Functional :K.S.RAO *
& Developer : P.Naganjana Reddy
*& Created On :16/02/2007 *
*& Title : pericing upload *
& Report Name :YSD_PRICING_VK11
*& Development Id : *
*& Transport Request : *
*& Related Information : *
report YSDBDCVK11 no STANDARD PAGE HEADING LINE-SIZE 255.
TABLES : RV13A,RV130,KONP,KOMG.
----
*decl of internal table of recording fields
----
DATA: BEGIN OF it_itab OCCURS 0 ,
KSCHL TYPE RV13A-KSCHL,
VKORG TYPE KOMG-VKORG,
VTWEG TYPE KOMG-VTWEG,
MATNRX(150) TYPE C,
KBETRX(150) TYPE C,
END OF it_itab.
----
*decl of internal table of table control fields
----
DATA: BEGIN OF it_MATNRY OCCURS 0 ,
MATNR TYPE KOMG-MATNR,
END OF it_MATNRY.
DATA: BEGIN OF it_KBETRY OCCURS 0,
KBETR(20) TYPE N,
END OF it_KBETRY.
----
*decl of field and its count
----
DATA: FLD(40) TYPE N,
CNT(2) TYPE N.
----
*decl of internal table of table control for BDCDATA & BDCMSGCOLL
----
DATA: IT_BDCDATA TYPE STANDARD TABLE OF BDCDATA WITH HEADER LINE.
*include bdcrecx1.
START-OF-SELECTION.
data: p_file type string.
p_file = 'C:\Documents and Settings\pn70065\Desktop\quatation.txt'.
----
*call funcation module for uploading of ffile to it_itab
----
CALL FUNCTION 'GUI_UPLOAD'
EXPORTING
filename = p_file
FILETYPE = 'ASC'
HAS_FIELD_SEPARATOR = 'X'
HEADER_LENGTH = 0
READ_BY_LINE = 'X'
DAT_MODE = ' '
IMPORTING
FILELENGTH =
HEADER =
tables
data_tab = it_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.
LOOP AT it_itab.
REFRESH IT_BDCDATA .
REFRESH: it_matnry, it_kbetry.
SPLIT it_itab-MATNRX AT ',' INTO TABLE it_matnry.
SPLIT it_itab-KBETRX AT ',' INTO TABLE it_kbetry.
perform bdc_dynpro using 'SAPMV13A' '0100'.
perform bdc_field using 'BDC_CURSOR'
'RV13A-KSCHL'.
perform bdc_field using 'BDC_OKCODE'
'/00'.
perform bdc_field using 'RV13A-KSCHL'
it_itab-kschl.
perform bdc_dynpro using 'SAPLV14A' '0100'.
perform bdc_field using 'BDC_CURSOR'
'RV130-SELKZ(02)'.
perform bdc_field using 'BDC_OKCODE'
'=WEIT'.
perform bdc_field using 'RV130-SELKZ(01)'
''.
perform bdc_field using 'RV130-SELKZ(02)'
'X'.
perform bdc_dynpro using 'SAPMV13A' '1304'.
perform bdc_field using 'BDC_CURSOR'
'KONP-KBETR(01)'.
perform bdc_field using 'BDC_OKCODE'
'/00'.
perform bdc_field using 'KOMG-VKORG'
it_itab-vkorg.
perform bdc_field using 'KOMG-VTWEG'
it_itab-vtweg.
----
start the table control logic.
----
DATA: X(2) TYPE N,
N(2) TYPE N.
N = 0.
LOOP AT it_matnry.
N = N + 1.
ENDLOOP.
X = 1.
CNT = 1.
DO N TIMES.
IF CNT > 19.
perform bdc_field using 'BDC_OKCODE' '=P+'.
perform bdc_dynpro using 'SAPMV13A' '1304'.
perform bdc_field using 'BDC_OKCODE' 'KOMG-MATNR(01)'.
CNT = 1.
ENDIF.
LOOP AT it_matnry FROM X TO X.
CONCATENATE 'KOMG-MATNR(' CNT ')' INTO FLD.
perform bdc_field using FLD it_matnry-matnr.
ENDLOOP.
LOOP AT it_kbetry FROM X TO X.
CONCATENATE 'KONP-KBETR(' CNT')' INTO FLD.
perform bdc_field using FLD it_kbetry-kbetr.
ENDLOOP.
CNT = CNT + 1.
X = X + 1.
ENDDO.
----
finish the table control logic.
----
perform bdc_dynpro using 'SAPMV13A' '1304'.
perform bdc_field using 'BDC_CURSOR'
'KOMG-MATNR(01)'.
perform bdc_field using 'BDC_OKCODE'
'=SICH'.
*perform bdc_transaction using 'VK11'.
CALL TRANSACTION 'VK11' USING IT_BDCDATA MODE 'A' UPDATE 'S' .
CLEAR it_itab.
ENDLOOP.
----
Start new screen *
----
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. "bdc_dynpro
----
Insert field *
----
form bdc_field using fnam fval.
if fval <> nodata.
clear IT_bdcdata.
IT_bdcdata-fnam = fnam.
IT_bdcdata-fval = fval.
append IT_bdcdata.
endif.
endform. "bdc_field
*******rewards some points.
Rgds,
P.Naganajana Reddy
‎2007 Apr 23 8:11 AM
Hi,
give the file type as
P_FILE LIKE rlgrap-filename OBLIGATORY,
instaed of localfile
Regards,
Sonika
‎2007 Apr 23 8:17 AM
Srinivas,
Do like this
data : P_FILE type STRING.
don't forget to reward if useful....
‎2007 Apr 23 8:33 AM
Hai Srinivas,
<b>Just do one modification to your code.</b>
start-of-selection.
CALL FUNCTION 'GUI_UPLOAD'
EXPORTING
FILENAME = P_FILE
<b>FILETYPE = 'ASC'</b>
TABLES
DATA_TAB = IT_ITAB.
Also Do mension the File path as String type.
Hope you got it.
<b>
Reward points if it helps you.</b>
Regds,
Rama chary.Pammi
‎2007 Apr 23 8:43 AM
Hi Srinivas,
Pls add the highlighted code. your problem will be solved.
parameters: P_FILE type localfile obligatory.
<b>data: v_file type string.</b>
start-of-selection.
<b>v_file = p_file.</b>
CALL FUNCTION 'GUI_UPLOAD'
EXPORTING
<u>FILENAME = P_FILE</u> change this to <b>FILENAME = V_FILE</b>
FILETYPE = 'DAT'
TABLES
DATA_TAB = IT_ITAB.
Thanks
Eswar
‎2007 Apr 23 10:12 AM
hi,
use this.
data : v_file type string.
CALL FUNCTION 'GUI_UPLOAD'
EXPORTING
FILENAME = v_FILE
FILETYPE = 'DAT'
TABLES
DATA_TAB = IT_ITAB.