‎2007 Nov 12 8:07 AM
Hi Gurus ,
I want to upload the text for sales text view ..can any one correct this following code ..and give me the reply ..it is urgent for me..
report zmm_ch
no standard page heading line-size 255.
DATA: BEGIN OF TDNAM,
MATNR(18),
VKORG(4),
VTWEG(2),
END OF TDNAM.
include bdcrecx1.
selection-screen begin of block blk3 with frame title text-019.
parameters : pa_fname type localfile.
selection-screen end of block blk3.
data : lv_fname type string.
data: l_head like thead.
data: t_lines type table of tline with header line.
data: begin of record occurs 2,
data element: MATNR
matnr_001(018),
data element: XFELD
KZSEL_05_002(001),
data element: WERKS_D
WERKS_003(004),
data element: MAKTX
MAKTX_004(040),
data element: TXLINE
txline_02_005(072),
data element: MAKTX
maktx_006(040),
end of record,
GT_HEAD LIKE THEAD,
*// Text lines
GT_TEXT LIKE STANDARD TABLE OF TLINE,
GW_TEXT LIKE TLINE,
----
Data definition *
----
WS_REP_CNT(6) TYPE C.
*SESSION(12) TYPE C.
End generated data section ***
at selection-screen on value-request for pa_fname.
call function 'F4_FILENAME'
exporting
program_name = syst-cprog
dynpro_number = syst-dynnr
field_name = 'PA_FNAME'
importing
file_name = pa_fname.
start-of-selection.
lv_fname = pa_fname.
perform open_group.
call function 'GUI_UPLOAD'
exporting
filename = lv_fname
filetype = 'ASC'
has_field_separator = 'X'
tables
data_tab = record
.
loop at record.
*read dataset dataset into record.
*if sy-subrc <> 0. exit. endif.
*
perform bdc_dynpro using 'SAPLMGMM' '0060'.
perform bdc_field using 'BDC_CURSOR'
'RMMG1-MATNR'.
perform bdc_field using 'BDC_OKCODE'
'/00'.
perform bdc_field using 'RMMG1-MATNR'
record-matnr_001.
perform bdc_dynpro using 'SAPLMGMM' '0070'.
perform bdc_field using 'BDC_CURSOR'
'MSICHTAUSW-DYTXT(07)'.
perform bdc_field using 'BDC_OKCODE'
'=ENTR'.
perform bdc_field using 'MSICHTAUSW-KZSEL(07)'
'X'.
perform bdc_dynpro using 'SAPLMGMM' '0080'.
perform bdc_field using 'BDC_OKCODE'
'/00'.
perform bdc_field using 'BDC_CURSOR'
'RMMG1-werks'.
PERFORM BDC_FIELD USING 'rmmg1-werks'
'PMT1'.
perform bdc_field using 'rmmg1-vkorg'
'PMSO'.
perform bdc_field using 'rmmg1-vtweg'
'DO'.
perform bdc_dynpro using 'SAPLMGMM' '4040'.
perform bdc_field using 'BDC_OKCODE'
'=Ltex'.
perform bdc_dynpro using 'SAPLstxx' '1100'.
perform bdc_field using 'BDC_OKCODE'
'=txba'.
perform bdc_field using 'BDC_CURSOR'
'Rstxt-TXLINE(02)'.
*PERFORM BDC_FIELD USING 'Rstxt-TXLINE(02)'
RECORD-TXLINE_02_005.
*perform bdc_dynpro using 'SAPLMGMM' '0080'.
*perform bdc_field using 'BDC_CURSOR'
'RMMG1-WERKS'.
*perform bdc_field using 'BDC_OKCODE'
'=ENTR'.
*perform bdc_field using 'RMMG1-WERKS'
*'pmt1'.
perform bdc_dynpro using 'SAPLSPO1' '0300'.
perform bdc_field using 'BDC_OKCODE'
'=YES'.
perform bdc_transaction using 'MM02'.
*// Text Header Data
TDNAM-MATNR = record-matnr_001.
TDNAM-VKORG = 'PMSO'.
TDNAM-VTWEG = 'DO'.
*CONCATENATE record-MATNR_001 ' PMSODO' INTO GT_HEAD-TDNAME .
MOVE TDNAM TO GT_HEAD-TDNAME.
GT_HEAD-TDOBJECT = 'MVKE' .
GT_HEAD-TDID = '0001' .
GT_HEAD-TDSPRAS = SY-LANGU.
*GT_HEAD-TDLINESIZE = '072'.
*GT_HEAD-TDTXTLINES = '1'.
*// Sales Text
GW_TEXT-TDFORMAT = '00'.
GW_TEXT-TDLINE = record-txline_02_005.
APPEND GW_TEXT TO GT_TEXT.
CALL FUNCTION 'SAVE_TEXT'
EXPORTING
CLIENT = SY-MANDT
header = GT_HEAD
INSERT = ' '
SAVEMODE_DIRECT = 'X'
OWNER_SPECIFIED = ' '
LOCAL_CAT = ' '
IMPORTING
FUNCTION =
NEWHEADER =
tables
lines = GT_TEXT
EXCEPTIONS
ID = 1
LANGUAGE = 2
NAME = 3
OBJECT = 4
OTHERS = 5
.
IF sy-subrc <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
*
IF SY-SUBRC <> 0.
SKIP 2.
FORMAT COLOR COL_NEGATIVE INVERSE ON.
WRITE: / 'Unable to Insert Salestext for Material : ', record-MATNR_001 .
FORMAT COLOR COL_NEGATIVE INVERSE OFF.
ENDIF.
CLEAR: GT_HEAD, GT_TEXT, GW_TEXT.
endloop.
perform close_group.
*perform close_dataset using dataset.
Thanks & Regards,
Sunder
Message was edited by:
sunder
‎2007 Nov 13 4:01 AM
‎2007 Nov 13 4:07 AM
HI,
check this code.
&----
*& Report ZBDC_01
*&
&----
*&
*&
&----
REPORT ZBDC_01
no standard page heading line-size 255.
DATA: BEGIN OF TDNAM,
MATNR(18),
VKORG(4),
VTWEG(2),
END OF TDNAM.
include bdcrecx1.
selection-screen begin of block blk3 with frame title text-019.
parameters : pa_fname type localfile.
selection-screen end of block blk3.
data : lv_fname type string.
data: l_head like thead.
data: t_lines type table of tline with header line.
data: begin of record occurs 2,
data element: MATNR
matnr_001(018),
data element: XFELD
KZSEL_05_002(001),
data element: WERKS_D
WERKS_003(004),
data element: MAKTX
MAKTX_004(040),
data element: TXLINE
txline_02_005(072),
data element: MAKTX
maktx_006(040),
end of record,
GT_HEAD LIKE THEAD,
*// Text lines
GT_TEXT LIKE STANDARD TABLE OF TLINE,
GW_TEXT LIKE TLINE,
----
Data definition *
----
WS_REP_CNT(6) TYPE C.
*SESSION(12) TYPE C.
End generated data section ***
at selection-screen on value-request for pa_fname.
call function 'F4_FILENAME'
exporting
program_name = syst-cprog
dynpro_number = syst-dynnr
field_name = 'PA_FNAME'
importing
file_name = pa_fname.
start-of-selection.
lv_fname = pa_fname.
perform open_group.
call function 'GUI_UPLOAD'
exporting
filename = lv_fname
filetype = 'ASC'
has_field_separator = 'X'
tables
data_tab = record
.
loop at record.
*read dataset dataset into record.
*if sy-subrc <> 0. exit. endif.
*
refresh bdcdata.
perform bdc_dynpro using 'SAPLMGMM' '0060'.
perform bdc_field using 'BDC_CURSOR'
'RMMG1-MATNR'.
perform bdc_field using 'BDC_OKCODE'
'/00'.
perform bdc_field using 'RMMG1-MATNR'
record-matnr_001.
perform bdc_dynpro using 'SAPLMGMM' '0070'.
perform bdc_field using 'BDC_CURSOR'
'MSICHTAUSW-DYTXT(07)'.
perform bdc_field using 'BDC_OKCODE'
'=ENTR'.
perform bdc_field using 'MSICHTAUSW-KZSEL(07)'
'X'.
perform bdc_dynpro using 'SAPLMGMM' '0080'.
perform bdc_field using 'BDC_OKCODE'
'/00'.
perform bdc_field using 'BDC_CURSOR'
'RMMG1-werks'.
PERFORM BDC_FIELD USING 'rmmg1-werks'
'PMT1'.
perform bdc_field using 'rmmg1-vkorg'
'PMSO'.
perform bdc_field using 'rmmg1-vtweg'
'DO'.
perform bdc_dynpro using 'SAPLMGMM' '4040'.
perform bdc_field using 'BDC_OKCODE'
'=Ltex'.
perform bdc_dynpro using 'SAPLstxx' '1100'.
perform bdc_field using 'BDC_OKCODE'
'=txba'.
perform bdc_field using 'BDC_CURSOR'
'Rstxt-TXLINE(02)'.
*PERFORM BDC_FIELD USING 'Rstxt-TXLINE(02)'
RECORD-TXLINE_02_005.
*perform bdc_dynpro using 'SAPLMGMM' '0080'.
*perform bdc_field using 'BDC_CURSOR'
'RMMG1-WERKS'.
*perform bdc_field using 'BDC_OKCODE'
'=ENTR'.
*perform bdc_field using 'RMMG1-WERKS'
*'pmt1'.
perform bdc_dynpro using 'SAPLSPO1' '0300'.
perform bdc_field using 'BDC_OKCODE'
'=YES'.
perform bdc_transaction using 'MM02'.
*// Text Header Data
TDNAM-MATNR = record-matnr_001.
TDNAM-VKORG = 'PMSO'.
TDNAM-VTWEG = 'DO'.
*CONCATENATE record-MATNR_001 ' PMSODO' INTO GT_HEAD-TDNAME .
MOVE TDNAM TO GT_HEAD-TDNAME.
GT_HEAD-TDOBJECT = 'MVKE' .
GT_HEAD-TDID = '0001' .
GT_HEAD-TDSPRAS = SY-LANGU.
*GT_HEAD-TDLINESIZE = '072'.
*GT_HEAD-TDTXTLINES = '1'.
*// Sales Text
GW_TEXT-TDFORMAT = '00'.
GW_TEXT-TDLINE = record-txline_02_005.
APPEND GW_TEXT TO GT_TEXT.
CALL FUNCTION 'SAVE_TEXT'
EXPORTING
CLIENT = SY-MANDT
header = GT_HEAD
INSERT = ' '
SAVEMODE_DIRECT = 'X'
OWNER_SPECIFIED = ' '
LOCAL_CAT = ' '
IMPORTING
FUNCTION =
NEWHEADER =
tables
lines = GT_TEXT
EXCEPTIONS
ID = 1
LANGUAGE = 2
NAME = 3
OBJECT = 4
OTHERS = 5
.
IF sy-subrc <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
*
IF SY-SUBRC <> 0.
SKIP 2.
FORMAT COLOR COL_NEGATIVE INVERSE ON.
WRITE: / 'Unable to Insert Salestext for Material : ', record-MATNR_001 .
FORMAT COLOR COL_NEGATIVE INVERSE OFF.
ENDIF.
CLEAR: GT_HEAD, GT_TEXT, GW_TEXT.
endloop.
perform close_group.
*perform close_dataset using dataset.
reward if helpfull.