
When you download material from ECC to CRM, the product attribute 'serial number processing' can be transferred if the customizing is set up properly. But the logic of how product attribute 'serial number processing' will be set is not widely known.
In ECC transaction MM01, you can create a material. Under tab 'Sales: General/Plant', in field 'SerialNoProfile', you can assign the serial number profile. This will be downloaded into CRM product as field 'Serial No. Processing', under tab Material.
The serial number profile is maintained in ECC at the following path:
IMG
-- Sales and Distribution
-- Basic Functions
-- Serial Numbers
-- Determine Serial Number Profiles
Under each profile, you can define a series of procedures,
If the material is downloaded for the first time(initial download, or when you create a new material in ECC), the application will evaluate the serial number profile you assigned to this material by the following logic:
Within the serial number profile, it has procedure 'MMSL' (Maintain goods receipt and issue doc). For MMSL procedure, if its serial number usage is 03 (Obligatory),
the CRM product attribute 'serial number processing' will be set to 4. Otherwsie, the product attribute 'serial number processing' will be 0.
in ECC FM CRS_SERIAL_PROFIL_DETERMINE, line 38,
LOOP AT IT_MARC_NEW ASSIGNING <fs_marc>.
CALL FUNCTION 'SERIAL_PROFILE_READ'
EXPORTING
PROFILE_R = <fs_marc>-sernp
OPERATION_R = 'MMSL'
IMPORTING
T_377 = lt_T377
EXCEPTIONS
NO_T377P_ENTRY = 1
NO_T377_ENTRY = 2
OTHERS = 3.
IF SY-SUBRC = 0.
IF lt_T377-SERPFLICHT = '03'.
EV_SERIALNO_PROCESS_NEW = '4'.
EXIT.
ENDIF.
ENDIF.
ENDLOOP.
it will read the MMSL procedure in the serial number profile which is assigned to the current material, then it will check if the MMSL procedure usage is 03(Obligatory). If so, the CRM product attribute 'serial number processing' will be set to 4.
When the material is not downloaded for the first time, that is to say, before the download, the product already exists in CRM and it's mapped to the ECC material. When you change the serial number profile in ECC material, the delta download of material works like this:
in FM CRS_SERIAL_PROFIL_DETERMINE
line 19,
LOOP AT IT_MARC_OLD ASSIGNING <fs_marc>.
CALL FUNCTION 'SERIAL_PROFILE_READ'
EXPORTING
PROFILE_R = <fs_marc>-sernp
OPERATION_R = 'MMSL'
IMPORTING
T_377 = lt_T377
EXCEPTIONS
NO_T377P_ENTRY = 1
NO_T377_ENTRY = 2
OTHERS = 3.
IF SY-SUBRC = 0.
IF lt_T377-SERPFLICHT = '03'.
EV_SERIALNO_PROCESS_OLD = '4'.
EXIT.
ENDIF.
ENDIF.
ENDLOOP.
it reads the MMSL procedure of the old serial number profile and if it has usage 03, it will set EV_SERIALNO_PROCESS_OLD = '4'.
line 38,
LOOP AT IT_MARC_NEW ASSIGNING <fs_marc>.
CALL FUNCTION 'SERIAL_PROFILE_READ'
EXPORTING
PROFILE_R = <fs_marc>-sernp
OPERATION_R = 'MMSL'
IMPORTING
T_377 = lt_T377
EXCEPTIONS
NO_T377P_ENTRY = 1
NO_T377_ENTRY = 2
OTHERS = 3.
IF SY-SUBRC = 0.
IF lt_T377-SERPFLICHT = '03'.
EV_SERIALNO_PROCESS_NEW = '4'.
EXIT.
ENDIF.
ENDIF.
ENDLOOP.
it reads the MMSL procedure of the new serial number profile and if it has usage 03, it will set EV_SERIALNO_PROCESS_NEW = '4'.
Later, in include LCRM1F11,
FORM get_serialno_processing,
line 30,
CALL FUNCTION lv_function "provided by Service
IMPORTING
ev_serialno_process_old = ls_mara_ser_old-serialnoprocess
ev_serialno_process_new = es_mara_ser_new-serialnoprocess
TABLES
it_marc_old = lt_marc_old
it_marc_new = lt_marc_new.
IF es_mara_ser_new-serialnoprocess =
ls_mara_ser_old-serialnoprocess.
CLEAR: es_mara_ser_new. "No changes
ELSE.
* es_mara_ser_new-material
IF es_mara_ser_new-serialnoprocess IS INITIAL.
es_mara_ser_new-operation = 'D'.
ELSE.
es_mara_ser_new-operation = 'I'.
ENDIF.
ENDIF.
** here lv_function = CRS_SERIAL_PROFIL_DETERMINE, so it will call CRS_SERIAL_PROFIL_DETERMINE to get the serial number process of both the old profile and the new profile. It then compare the serial number process of the old profile and serial number process of the new profile, if they are equal, it will clear the es_mara_ser_new. Then the CRM product attribute 'serial number processing' will be set to 0.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
6 | |
4 | |
2 | |
2 | |
2 | |
1 | |
1 | |
1 | |
1 | |
1 |