cancel
Showing results for 
Search instead for 
Did you mean: 

Adding a field to CIF_MATLOC

Former Member
0 Kudos


Hi All,

I have a requirement wherein I need to add a field to CIF_MATLOC which is already present in /SAPAPO/MATLOC. After searching in the net I found CIFMTLCCUS is an enhancement structure for CIF_MATLOC, but i'm not able understand how to use it...

Please tell me step by step procedure, how to add the field to CIF_MATLOC so that it can be transferred to the APO.

Thanks & Regards,

SriLalitha.

Accepted Solutions (0)

Answers (1)

Answers (1)

former_member216565
Participant
0 Kudos

Hi SriLalitha,


Inorder to pass the existing value of /SAPAPO/MATLOC through CIF, enhancing the structure is not necessary. However, follow the steps to enhance the structure.

Goto structure CIFMTLCCUS ( Customer Enhancement Structure for CIF_MATLOC ) and click on the Include structure 'CI_MTLCCUS' and enhance it with the required additional field of /SAPAPO/MATLOC like the below screen-shot.

In my case, ZZTEST is the additonal field. In your case, additional field from /SAPAPO/MATLOC should be added.

1) Now goto user-exit - enhancement CIFMAT01. The corresponding fm is EXIT_SAPLCMAT_001.

2) There is Tables parameter  'OT_CIF_MATLOCCUS' of type 'CIFMTLCCUS'. Populate this internal table, with the material and plant ,with the help of tables parameter IT_MARC.

3) Lastly, pass your required field value onto this table parameter 'CT_CIF_MATLOC'.

Block the Inbound Queue at APO end and debug , to confirm value is getting passed through CIF from ECC(R3).

Thanks,

Santosh KB.

Former Member
0 Kudos

Hi Santosh,

when i'm trying to add a field to structure 'CI_MTLCCUS' and saving it, its asking for package. When I'm entering CIF package, i'm getting an error message of "Customer Object Tabl CI_MTLCCUS cannot be assigned to package CIF"...

Pls help...

Thanks & Regards,

SriLalitha.

former_member216565
Participant
0 Kudos

Hi SriLalitha,

Why do you want to save it in standard package 'CIF'? Save it in any existing customer namespace package,you will be able to.

As i mentioned, you can skip the step of enhancing structure 'CI_MTLCCUS', if it is already available in /SAPAPO/MATLOC.

I suppose, you just want to transfer an additional field of APO from ECC through CIF. let me know, if my understanding is not correct.

Thanks

Santosh KB.

Former Member
0 Kudos

Hi Santosh,

I want to transfer an additional field from ECC to APO. That field is available in APO side but it is not available in ECC side.

I have created the required field in CI_MTLCCUS. And followed the 3 steps provided by you. But still I'm getting an error message that the newly created field is not defined in CIF_MATLOC.

This is an urgent requirement.

Pls help....can u pls provide the code...

Thanks & Regards,

SriLalitha.

former_member216565
Participant
0 Kudos

Hi SriLalitha,

Are you getting syntax error in the exit EXIT_SAPLCMAT_001??

Let me know which field of /SAPAPO/MATLOC , you are trying to pass from ECC??

Thanks,

Santosh KB.

Former Member
0 Kudos

Hi Santosh,

I'm trying to pass RELDT (Replenishment Lead Time) field of /SAPAPO/MATLOC from ECC to APO.

Thanks & Regards,

SriLalitha

Former Member
0 Kudos

Santosh,

I've added the field (RELDT) in CI_MTLCCUS. I'm able to use this field using OT_CIF_MATLOCCUS but not using CT_CIF_MATLOC.

So, now after passing the required value to OT_CIF_MATLOCCUS-RELDT and MODIFY statement (i.e. MODIFY OT_CIF_MATLOCCUS) will the value RELDT be available in the APO side?

former_member216565
Participant
0 Kudos

Hi SriLalitha,

As per my understanding, the field 'Replenishment Lead Time' is not available in CT_CIF_MATLOC. ( Meaning, through Standard CIF exits, you may not be able to update that particular APO Product Master field ).

Typically,you map your fields from R3 to APO through this CT_CIF_MATLOC. I found that there is no field in reference to Repl. Lead time.

However, I have a work-around solution for you. At APO side, you can call the bapi BAPI_PRDSRVAPS_SAVEMULTI2.

The Bapi does update this field in APO product Master. It is availble as 'REPLENISHMENT_LEAD_TIME' in the Tables Parameter

'PRODUCT_LOCATION_VERSION'.

You can call this BAPI in CIF Badi SMOD_APOCF005(Inbound Processing: Product). So that it gets updated during CIF.

Meanwhile, I will try to check for any solution available, if incase we can map without calling BAPI externally during CIF processing .

Thanks,

Santosh KB.

Former Member
0 Kudos

Hi Santosh,

I did not understand your work around solution...can u pls provide me with the code?

I've added the field (RELDT) in CI_MTLCCUS. I'm able to use this field using OT_CIF_MATLOCCUS but not using CT_CIF_MATLOC.

 

So, now after passing the required value to OT_CIF_MATLOCCUS-RELDT and MODIFY statement (i.e. MODIFY OT_CIF_MATLOCCUS) the value of RELDT is not getting passed from ECC to APO

Pls help..

Thanks & Regards,

SriLalitha

Former Member
0 Kudos

Hi Srilalitha,

Can you please pass the value like RELDT*24000 ..As its days i am not sure is it passing correct value or not.

Thanks,

Chandra

former_member216565
Participant
0 Kudos

Hi SriLalitha,

  • To follow my Work-around solution, Please go through SAP Note

1534157 - Transfer of material master data from R/3 to APO : Extend CIF structure via User Exit.

  • I suppose, you have done most of the steps,mentioned in that note. But you need few more to be done.

  • In addition to the steps mentioned in the note, please add the following step in the implemented Badi of APO System.

  • call the BAPI_PRDSRVAPS_SAVEMULTI2 and pass the RELDT from the structure of

IT_MATLOCCUS of Badi to the field  'REPLENISHMENT_LEAD_TIME' of tables parameter

PRODUCT_LOCATION_VERSION.

Thanks,

Santosh KB.

former_member216565
Participant
0 Kudos


Hi SriLalitha,

Just mere passing to the table OT_CIF_MATLOCCUS, will not to update the field in APO.

You should be able to pass to CT_CIF_MATLOC to update the field in APO. Thats why i suggested you with work-around solution.

Do let me know if you still stuck.

Thanks,

Santosh KB.

Former Member
0 Kudos

Hi Srilalitha,

Can you please check structure /SAPAPO/CIF_MATLOCUS also have this RELDT filed?

Thanks,

Chandra

Former Member
0 Kudos

Hi Chandra,

Yes...?SAPAPO/CIF_MATLOC has the field RELDT but CIF_MATLOC does not have this field

Thanks & Regards,

SriLalitha.

Former Member
0 Kudos

Ok Santosh...will try and let u know..

Thanks & Regards,

SriLalitha

Former Member
0 Kudos

OK, The ECC Exit structure CIFMTLCCUS and APO inbound addition fileds structure /SAPAPO/CIF_MATLOCUS has the filed RELDT then you should debug your exit and APO inbound CIF Q to see the issue.

You mentioned as /SAPAPO/CIF_MATLOC ..are you referring to //MATLOCUS only??

Thanks,

Chandra

Former Member
0 Kudos

No...in ECC CIF_MATLOC or CIFMATLOCCUS has no RELDT field...but APO side we have the field in /SAPAPO/CIF_MATLOC

Former Member
0 Kudos

Santosh,

I'm unable to open the Note given by you.

I tried searching in the SAP in SNOTE tcode and could not find it.

in the Net I tried to search SAP Note 1534157 but, I don't know some credentials are being asked for. When I enter the SDN credentials, its not accepting...Pls help

Thanks & Regards,

SriLalitha

Former Member
0 Kudos

Sorry..ECC side exit structure CI_MTLCCUS , i think you already added the filed here. In my system i am not finding RELDT in /SAPAPO/CIF_MATLOC structure of APO . If it's there it should populate other wise try adding in /SAPAPO/CIF_MATLOCUS once .

Still you are nt able to pass please debug the inbound Q .

Thanks,

Chandra

Former Member
0 Kudos

Chandra,

I added the field RELDT in CI_MTLCCUS at ECC end and also in /SAPAPO/CIF_MATLOCCUS...but still not able to pass from ecc to apo..

can you pls tell me the procedure how to debug the inbound Q..

Thanks & Regards,

SriLalitha

Former Member
0 Kudos

Hi,

Go to t-code CFC2 in ECC give user name and RFC mode 'Q' Logging 'D' and Debug 'R'.

Transfer master data on that user name. The queue will be there in the APO inbound. Click on the queue twece there you find Debug LUW button click on that and then debug the queue.

IF u double click on your LUW of Q u can see content of each input structure , there only you can find it out whether ECC is passing it or not. If its coming in your APO inbound then debug and see where its missing .

Thanks,

Chandra

former_member216565
Participant
0 Kudos

Hi SriLalitha,

Are you sure that the field RELDT exists in the APO Structure /SAPAPO/CIF_MATLOC?? I dont find it in my system. Is it /SAPAPO/MATLOC or /SAPAPO/CIF_MATLOC?? check once again.

Anyways if you find,then no need of calling BAPI in APO exit, try to populate the field RELDT of /SAPAPO/CIF_MATLOC from /SAPAPO/CIF_MATLOCCUS.

I am not able to attach the note. You can ask your basis team / functional team to download the note. In SNOTE, you have to download it first. you can try that even. follow this path T-code SNOTE - GOTO - Download SAP Note

Thanks,

Santosh KB.

Former Member
0 Kudos

Hi Santosh,

Sorry...RELDT is in /SAPAPO/MATLOC..

I didn't find your attachment..

Thanks & Regards,

SriLalitha

former_member216565
Participant
0 Kudos

Hi,

I am not able to attach the note. You can ask your basis team / functional team to download the note. In SNOTE, you have to download it first. you can try that even. follow this path T-code SNOTE - GOTO - Download SAP Note

Thanks,

Santosh KB.

Former Member
0 Kudos

Santosh,

the SAP note 1534157 should be downloaded in ECC side or APO side?

Thanks & Regards,

SriLalitha

former_member216565
Participant
0 Kudos

SriLalitha,

You can download from any of the SAP system.

Thanks,

Santosh KB.