2006 Mar 19 4:37 AM
Hi,
Is there any BAPI/FM to upload data for transactions ML33, ME23K, ME32K.
Thanks,
Pratibha
Hi,
Is there any BAPI/FM to upload data for transactions ML33, ME23K, ME32K.
Thanks,
Pratibha
2006 Mar 19 5:03 AM
Hi Pratibha,
You can use the following BAPI/FM:
ME32K
<b>BAPI_CONTRACT_CREATEFROMDATA
ME_UPDATE_SCHEDULES_DISPO</b>
Hope this will help.
Regards,
Ferry Lianto
2006 Mar 19 5:07 AM
Thanks Ferry for the reply.
I need to upload data using TC AC03. Is there any FM/BAPI for this transaction code also?
Thanks,
Pratibha.
2006 Mar 30 7:23 AM
tables:ASMD,asmdt.
data:begin of itab occurs 0,
asnum(10), "like asmd-asnum,
astyp(4), "like asmd-astyp,
asktx(24), "like asmdt-asktx,
meins(4), "like asmd-meins,
chgtext like asmd-chgtext,
end of itab.
******ETAB FOR CAPTURING ERROR RECORDS
DATA ETAB LIKE ITAB OCCURS 0 WITH HEADER LINE.
data:jtab like bdcdata occurs 0 with header line.
DATA MESSAGES LIKE BDCMSGCOLL OCCURS 0 WITH HEADER LINE.
************************************************************************
Start Hauptprogramm / start main program
************************************************************************
CALL FUNCTION 'GUI_UPLOAD'
EXPORTING
FILENAME = 'C:\UPLOAD1.TXT'
FILETYPE = 'ASC'
HAS_FIELD_SEPARATOR = 'X'
HEADER_LENGTH = 0
READ_BY_LINE = 'X'
DAT_MODE = ' '
CODEPAGE = ' '
IGNORE_CERR = ABAP_TRUE
REPLACEMENT = '#'
CHECK_BOM = ' '
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.
LOOP AT ITAB.
REFRESH JTAB.
perform bdc_dynpro using 'SAPLBAS0' '0300'.
perform bdc_field using 'BDC_CURSOR'
'ASMD-ASNUM'.
perform bdc_field using 'BDC_OKCODE'
'=NEW'.
perform bdc_field using 'RM63T-SPRAS'
'DE'.
perform bdc_dynpro using 'SAPLBAS0' '0300'.
perform bdc_field using 'BDC_CURSOR'
'ASMD-ASTYP'.
perform bdc_field using 'BDC_OKCODE'
'POST'.
perform bdc_field using 'ASMD-ASNUM'
ITAB-ASNUM.
perform bdc_field using 'ASMDT-ASKTX'
ITAB-ASKTX.
perform bdc_field using 'ASMD-ASTYP'
ITAB-ASTYP.
perform bdc_field using 'ASMD-CHGTEXT'
'X'.
perform bdc_field using 'ASMD-MEINS'
ITAB-MEINS.
perform bdc_field using 'RM63T-SPRAS'
'EN'.
CALL TRANSACTION 'AC02' USING JTAB MODE 'N' update 'S' MESSAGES INTO
MESSAGES.
if sy-subrc ne 0.
move-corresponding itab to etab.
append etab.
endif.
ENDLOOP.
DESCRIBE TABLE MESSAGES.
IF SY-TFILL <> 0.
WRITE:/ SY-TFILL.
LOOP AT MESSAGES.
WRITE:/ MESSAGES-MSGTYP.
ENDLOOP.
ENDIF.
************************************************************************
Ende Hauptprogramm / end of main program
************************************************************************
----
Start new screen *
----
FORM BDC_DYNPRO USING PROGRAM DYNPRO.
CLEAR JTAB.
JTAB-PROGRAM = PROGRAM.
JTAB-DYNPRO = DYNPRO.
JTAB-DYNBEGIN = 'X'.
APPEND JTAB.
ENDFORM.
----
Insert field *
----
FORM BDC_FIELD USING FNAM FVAL.
IF FVAL <> SPACE.
CLEAR JTAB.
JTAB-FNAM = FNAM.
JTAB-FVAL = FVAL.
APPEND JTAB.
ENDIF.
ENDFORM.
*&----
*
*& Form SUB1
*&----
*
text
*----
*
-->P_0069 text
-->P_0300 text
*----
*
FORM SUB1 USING VALUE(P_0069)
VALUE(P_0300).
CLEAR JTAB.
JTAB-PROGRAM = P_0069.
JTAB-DYNPRO = P_0300.
JTAB-DYNBEGIN = 'X'.
APPEND JTAB.
ENDFORM. " SUB1
*&----
*
*& Form sub2
*&----
*
text
*----
*
-->P_0074 text
-->P_ITAB_ASNUM text
*----
*
FORM sub2 USING VALUE(P_0074)
P_ITAB_ASNUM.
CLEAR JTAB.
JTAB-FNAM = P_0074.
JTAB-FVAL = P_ITAB_ASNUM.
APPEND JTAB.
ENDFORM. " sub2
2006 Mar 30 7:23 AM
if not u can use this code
ables:asmd,asmdt,t006.
data:index like sy-index,
tabix like sy-tabix.
data:jtab like bdcdata occurs 0 with header line.
DATA MESSAGES LIKE BDCMSGCOLL OCCURS 0 WITH HEADER LINE.
DATA IASMD LIKE t006 OCCURS 0 with header line.
data:Asn like asmd-asnum,
i type n.
selection-screen begin of block service.
select-options: num for asmd-asnum.
Parameters: Astyp like asmd-astyp,
unit like asmd-Meins.
parameters:asktx like asmdt-asktx.
parameters chgtxt like asmd-chgtext as checkbox.
selection-screen end of block service.
at selection-screen on unit.
select single * from t006 into iasmd where MSEHI = unit.
if sy-subrc <> 0.
update t006 set MSEHI = unit.
endif.
start-of-selection.
if not num-high = ' '.
i = num-high - num-low.
i = i + 1.
asn = num-low.
do i times.
if asn > num-high.
exit.
endif.
perform upload using asn astyp unit asktx chgtxt.
asn = asn + 1.
enddo.
Write:/ i, 'Records was Created'.
else.
asn = num-low.
perform upload using asn astyp unit asktx chgtxt.
if sy-subrc <> 0.
loop at messages.
write:/ messages-msgtyp,messages-fldname.
endloop.
else.
Write:/ 'Records was Created'.
endif.
endif.
&----
*& Form upload
&----
text
----
-->P_ASN text
-->P_ASTYP text
-->P_MEINS text
-->P_ASKTX text
-->P_CHGTXT text
----
FORM upload USING P_ASN
P_ASTYP
P_MEINS
P_ASKTX
P_CHGTXT.
DATA ETAB LIKE ITAB OCCURS 0 WITH HEADER LINE.
REFRESH JTAB.
perform bdc_dynpro using 'SAPLBAS0' '0300'.
perform bdc_field using 'BDC_CURSOR'
'ASMD-ASNUM'.
perform bdc_field using 'BDC_OKCODE'
'=NEW'.
perform bdc_field using 'RM63T-SPRAS'
'DE'.
perform bdc_dynpro using 'SAPLBAS0' '0300'.
perform bdc_field using 'BDC_CURSOR'
'ASMD-ASTYP'.
perform bdc_field using 'BDC_OKCODE'
'POST'.
perform bdc_field using 'ASMD-ASNUM'
P_ASN.
perform bdc_field using 'ASMDT-ASKTX'
P_ASKTX.
perform bdc_field using 'ASMD-ASTYP'
P_ASTYP.
perform bdc_field using 'ASMD-CHGTEXT'
P_CHGTXT.
perform bdc_field using 'ASMD-MEINS'
P_MEINS.
perform bdc_field using 'RM63T-SPRAS'
'EN'.
CALL TRANSACTION 'AC02' USING JTAB MODE 'N' update 'S' MESSAGES INTO
MESSAGES.
ENDFORM. " upload
************************************************************************
Ende Hauptprogramm / end of main program
************************************************************************
----
Start new screen *
----
FORM BDC_DYNPRO USING PROGRAM DYNPRO.
CLEAR JTAB.
JTAB-PROGRAM = PROGRAM.
JTAB-DYNPRO = DYNPRO.
JTAB-DYNBEGIN = 'X'.
APPEND JTAB.
ENDFORM.
----
Insert field *
----
FORM BDC_FIELD USING FNAM FVAL.
IF FVAL <> SPACE.
CLEAR JTAB.
JTAB-FNAM = FNAM.
JTAB-FVAL = FVAL.
APPEND JTAB.
ENDIF.
ENDFORM.
2006 Mar 19 5:26 AM
Hi Pratibha,
You may try this BAPI.
<b>BAPI_SERVICENOTIFICAT_CREATE
BAPI_SERVICENOTIFICAT_GETLIST</b>
Hope this will help.
Regards,
Ferry Lianto
2006 Mar 29 4:24 PM
Hi Pratibha
Did you manage to load the service master(AC03) using BAPI_SERVICENOTIFICAT_CREATE. I went through the documentation for this BAPI and the header table it updates seems to be QMEL and QMIH. These tables do not seem to be realted to service master. So I am not sure about using this BAPI for service creation.
I also have a similar requirement of loading the service master(AC03), using any data transfer method(direct input,batch input, BAPI) .
I believe the BDC recording cannot be an approach for this as transaction AC03 has controls which are not supported by BDC.
Can you please let me know how you loaded the service master data?
Thanks a lot .
Bala
2006 Mar 30 7:22 AM
hi,
this code will do for service master,i had done this
tables:ASMD,asmdt.
data:begin of itab occurs 0,
asnum(10), "like asmd-asnum,
astyp(4), "like asmd-astyp,
asktx(24), "like asmdt-asktx,
meins(4), "like asmd-meins,
chgtext like asmd-chgtext,
end of itab.
******ETAB FOR CAPTURING ERROR RECORDS
DATA ETAB LIKE ITAB OCCURS 0 WITH HEADER LINE.
data:jtab like bdcdata occurs 0 with header line.
DATA MESSAGES LIKE BDCMSGCOLL OCCURS 0 WITH HEADER LINE.
************************************************************************
Start Hauptprogramm / start main program
************************************************************************
CALL FUNCTION 'GUI_UPLOAD'
EXPORTING
FILENAME = 'C:\UPLOAD1.TXT'
FILETYPE = 'ASC'
HAS_FIELD_SEPARATOR = 'X'
HEADER_LENGTH = 0
READ_BY_LINE = 'X'
DAT_MODE = ' '
CODEPAGE = ' '
IGNORE_CERR = ABAP_TRUE
REPLACEMENT = '#'
CHECK_BOM = ' '
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.
LOOP AT ITAB.
REFRESH JTAB.
perform bdc_dynpro using 'SAPLBAS0' '0300'.
perform bdc_field using 'BDC_CURSOR'
'ASMD-ASNUM'.
perform bdc_field using 'BDC_OKCODE'
'=NEW'.
perform bdc_field using 'RM63T-SPRAS'
'DE'.
perform bdc_dynpro using 'SAPLBAS0' '0300'.
perform bdc_field using 'BDC_CURSOR'
'ASMD-ASTYP'.
perform bdc_field using 'BDC_OKCODE'
'POST'.
perform bdc_field using 'ASMD-ASNUM'
ITAB-ASNUM.
perform bdc_field using 'ASMDT-ASKTX'
ITAB-ASKTX.
perform bdc_field using 'ASMD-ASTYP'
ITAB-ASTYP.
perform bdc_field using 'ASMD-CHGTEXT'
'X'.
perform bdc_field using 'ASMD-MEINS'
ITAB-MEINS.
perform bdc_field using 'RM63T-SPRAS'
'EN'.
CALL TRANSACTION 'AC02' USING JTAB MODE 'N' update 'S' MESSAGES INTO
MESSAGES.
if sy-subrc ne 0.
move-corresponding itab to etab.
append etab.
endif.
ENDLOOP.
DESCRIBE TABLE MESSAGES.
IF SY-TFILL <> 0.
WRITE:/ SY-TFILL.
LOOP AT MESSAGES.
WRITE:/ MESSAGES-MSGTYP.
ENDLOOP.
ENDIF.
************************************************************************
Ende Hauptprogramm / end of main program
************************************************************************
----
Start new screen *
----
FORM BDC_DYNPRO USING PROGRAM DYNPRO.
CLEAR JTAB.
JTAB-PROGRAM = PROGRAM.
JTAB-DYNPRO = DYNPRO.
JTAB-DYNBEGIN = 'X'.
APPEND JTAB.
ENDFORM.
----
Insert field *
----
FORM BDC_FIELD USING FNAM FVAL.
IF FVAL <> SPACE.
CLEAR JTAB.
JTAB-FNAM = FNAM.
JTAB-FVAL = FVAL.
APPEND JTAB.
ENDIF.
ENDFORM.
*&----
*
*& Form SUB1
*&----
*
text
*----
*
-->P_0069 text
-->P_0300 text
*----
*
FORM SUB1 USING VALUE(P_0069)
VALUE(P_0300).
CLEAR JTAB.
JTAB-PROGRAM = P_0069.
JTAB-DYNPRO = P_0300.
JTAB-DYNBEGIN = 'X'.
APPEND JTAB.
ENDFORM. " SUB1
*&----
*
*& Form sub2
*&----
*
text
*----
*
-->P_0074 text
-->P_ITAB_ASNUM text
*----
*
FORM sub2 USING VALUE(P_0074)
P_ITAB_ASNUM.
CLEAR JTAB.
JTAB-FNAM = P_0074.
JTAB-FVAL = P_ITAB_ASNUM.
APPEND JTAB.
ENDFORM. " sub2
2009 Mar 17 6:43 PM
Hi mates,
For AC03 try out BAPI_SERVICE_CREATE ...
Hope it helps.
Xeers,
RDM
| User | Count |
|---|---|
| 4 | |
| 2 | |
| 2 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 |