это вопрос к абаперам... очень странно, что замещение на пм на одном заводе работает, а на др нет.. возможно есть технические ограничения, поговорите с тем, кто писал замещение...
вообще лучше избегать подобного рода замещений:) для чего оно вам?:)
я в свое время делал подобное замещение в
FUNCTION EXIT_SAPMM07M_001:
Code:
check sy-TCODE eq 'MIGO'
or sy-TCODE eq 'MIGO_TR'
or sy-TCODE eq 'MB1B'
or sy-TCODE eq 'MB1C'
.
data lp_bwtar like mseg-bwtar.
data flag(1).
DATA:
BEGIN OF MI OCCURS 0,
atinn like cabn-atinn, "Merkmal-Nr. intern
MNAME LIKE CABNT-ATBEZ, "Merkmal Bezeichnung
MINDX LIKE SY-INDEX, "Index in Datentabelle
MSELE TYPE C, "Kz. selektiert
MMARK TYPE C, "Kz. markiert
MERBE LIKE RCTMS-MERBE, "Kz. Werte vererbt
LWMNG TYPE C, "Kz. Leere Schnittmenge
MMERB LIKE RCTMS-MERBE, "Kz. Merkmal vererbt
MOERB LIKE RCTMS-MERBE, "Kz. Wert durch Objekt vererbt
STAMM TYPE C, "Kz. Objektmerkmal
OMADD TYPE C, "Kz. add on Merkmal
GROUP LIKE CUSDT-GRTXT, "Merkmalgruppe
TABST LIKE CUSD-TABST, "TabStrip
GCOMP TYPE C, "Kz. Compress durch Merkmalgruppe
CLINT LIKE CABN-CLINT, "Mitglied ADT
LOEVM TYPE X, "Lіschvormerkung Gruppe
MAWS0 TYPE C, "Kz. Sicht 0
MAWS1 TYPE C, "Kz. Sicht 1
MAWS2 TYPE C, "Kz. Sicht 2
MAWS3 TYPE C, "Kz. Sicht 3
MAWS4 TYPE C, "Kz. Sicht 4
MAWS5 TYPE C, "Kz. Sicht 5
MAWS6 TYPE C, "Kz. Sicht 6
MAWS7 TYPE C, "Kz. Sicht 7
MAWS8 TYPE C, "Kz. Sicht 8
MAWS9 TYPE C, "Kz. Sicht 9
DINKB LIKE RMCLM-DINKBU, "Din-Kennbuchstabe
ATUE1 LIKE CABNT-ATUE1, "мberschrift 1
ATUE2 LIKE CABNT-ATUE2, "мberschrift 2
ATCOD LIKE CAWN-ATCOD, "Code fќr CHAR-Selektion
MRKIN LIKE SY-TABIX, "Markierungsinstanz
WERTM TYPE C, "Kz. Werte ќberschrieben
HIERA TYPE C, "Merkmal mit Wertehierarchie
ATNAM LIKE CABN-ATNAM, "Merkmalname
END OF MI,
t_mi like mi occurs 10 with header line.
DATA: BEGIN OF SEL OCCURS 0.
INCLUDE STRUCTURE COMW.
DATA: END OF SEL.
FIELD-SYMBOLS: <mi_tab> TYPE TABLE,
<mi> LIKE MI,
<sel_tab> TYPE TABLE,
<sel> LIKE SEL.
data:
lp_BKLAS like DM07M-BKLAS,
ls_mch1 like MCH1,
ls_mbew like MBEW.
data ls_zmigo like zmigo.
field-symbols:
<rctms> type RCTMS,
<dm07m> type DM07M,
<wa> type RCTMS,
<lp_sobkz> type SOBKZ.
E_SGTXT = i_mseg-sgtxt.
*-- Получение ссылки на память
assign ('(SAPLCTMS)RCTMS') to <rctms>.
assign ('(SAPMM07M)DM07M') to <dm07m>.
assign ('(SAPLCTMS)MI[]') to <mi_tab>.
assign ('(SAPLCTMS)SEL[]') to <sel_tab>.
assign ('(SAPLXMBC)i_mseg-sobkz') to <lp_sobkz>.
*конец
* кор. счет для операции gbb нужно выбирать руками
check sy-subrc = 0.
flag = ' '.
loop at <mi_tab> assigning <mi>.
if <mi>-ATNAM = 'ZVIDDOC'.
loop at <sel_tab> assigning <sel>.
if <sel>-ATINN = <mi>-ATINN.
flag = 'X'.
lp_bwtar = <sel>-ATWRT.
endif.
endloop.
endif.
endloop.
check flag = 'X'.
clear ls_mbew.
select single * from MBEW
into ls_mbew
where MATNR = i_mseg-MATNR
and BWKEY = i_mseg-WERKS
and BWTAR = lp_bwtar.
if sy-subrc ne 0.
MESSAGE e006(zmm).
endif.
select single * from ZMIGO
into ls_zmigo
where WERKS = i_vm07m-bwkey
and BWTTY = ls_mbew-BWTTY
and ( BWART = i_mseg-bwart or BWART eq '' ).
check sy-subrc = 0.
if not ls_mbew is initial.
<dm07m>-BKLAS = ls_mbew-bklas.
if <lp_sobkz> eq 'E'.
<dm07m>-BKLAS = ls_mbew-eklas.
endif.
if <lp_sobkz> eq 'Q'.
<dm07m>-BKLAS = ls_mbew-qklas.
endif.
<dm07m>-EKLAS = <dm07m>-BKLAS.
<dm07m>-QKLAS = <dm07m>-BKLAS.
endif.