2008 Jun 24 4:11 PM
Due to issues outstanding from data conversions around startup, our Professional Services group is having to manually go into t-code VA42 and update certain conditions before creating their renewal contracts. To reduce the amount of manual effort being required (there are sometimes several hundred documents to update in a given day), we were trying to come up with a mass update to our existing contracts that would zero out amounts on 2 conditions ZMDR and ZCP1.
We were trying to incorporate the BAPI_CUSTOMERCONTRACT_CHANGE function into a custom ABAP program that they may use. A BDC program was ruled out early due to the variability of the data on the Item conditions tab. It appeared that functionality added with this BAPI in 4.7 (OSS note 593246) would give us the desired results since it did provide the ability now to update conditions.
The problem we are having from a Development perspective is that there is underlying code within the BAPI routines that prohibit updates on conditions that have a KNTYP category of 'L' (Generally new when copying). This category value is set for each condition in config and stored in table T685A. According to our SD consultants, it is not advisable to alter the config and change the category to a different value than 'L'. However, we know from Sandbox tests that the BAPI does work to update the condition values if the category is a different value ('Z' for example).
How can we perform mass update condition values on
contracts if the BAPI will not allow the category L involved on these? The category codes allowed can be found in constant
kntyp_supported_by_bapi in module LV61_BAPITOP. We would prefer not to make a repair to this SAP code to include the type 'L', but also do not want to run the risk of breaking pricing determination functionality on the conditions involved by changing the category in the config.
Please advise if you have suggestions. Thanks... Jody
2008 Jun 24 4:38 PM
you could always clone the program and change the part you don't like.
it can be a lot of work and you have to pay attention in case SAP updates the BAPI, so you make the same changes in your cloned BAPI.
2008 Jun 24 4:45 PM
Yes, I had considered trying that -- however, it seemed like it would be a nightmare to clone or make a new BAPI. The path I was finding in the code was BAPI_CUSTOMERCONTRACT_CHANGE --> SD_SALESDOCUMENT_CHANGE --> SD_SALES_DOCU_MAINTAIN --> SD_SALES_ITEM_COND_MAINTAIN --> PRICING_CHECK_CONDITION_LINES. So coming out of the PRICING_CHECK_CONDITION_LINES module is when I find the VH_BAPI 010 error about the condition category not being allowed.
I was hoping perhaps there was a good technique for updating specific contract conditions that would allow me to accomplish the same result.
Any ideas would be appreciated... Thanks
2008 Jun 25 2:46 PM
Any other options if we cannot use a BDC type program or the delivered BAPI to update an amount field on 2 types of contract condition records (table KONV)? The BAPI was definitely our choice in this area since it seemed like a lot of work was done by SAP to provide the functionality. Just not sure the best way to get around one of their checks buried deep within the called functions.
Any ideas would be greatly appreciated as I am still waiting to hear something back from OSS. Thanks...
2010 Apr 28 4:33 PM
Hi Joseph,
Could you resolve this? Same problem here.
Thanks in advance and regards.
2011 Sep 02 11:12 AM
Hello everybody,
I have also a problem with the BAPI 'BAPI_CUSTOMERCONTRACT_CHANGE' , this one don't works properly in Mass.
The first contract is modified but the rest is not update correctly.
I tried to clear the Buffer, but no success.