cancel
Showing results for 
Search instead for 
Did you mean: 

Sales Order credit check

Former Member
0 Kudos

Hi Gurus,

I'm new to FSCM. My requirement is that I have to implement the BADI UKM_CHECK_STEP so that a Sales Order is blocked when the Payment Term has value 'XXXX' even if the customer has sufficient available credit limit. Can anybody please suggest me how to do it? Do I have to create any credit rule? if yes, how?

Thanks in advance,

Sarif

Accepted Solutions (1)

Accepted Solutions (1)

former_member228809
Participant
0 Kudos

Hello.

1. Create new implementation with new check step(filter value) and develop logic to check payment term refer to existing sample implementation in t-code SE18

2. Create new check rule with check step or assign check step to existing check rule.

  - SPRO > Financial Supply Chain Management > Credit Management > Credit Risk Monitoring > Credit limit check > Define Checking rules

3. Assign check rule to customers

Existing sample implementation and configurations will help you.


Former Member
0 Kudos

Hi Kyung-Hun,

Thanks alot for the reply! It helped a lot. Now I have another doubt, in almost all the BADI impementation I can see a call to the method "cl_ukm_credit_checker=>add_reason". Why is this method used? Also do you have any idea on how to get the payment term inside the BADI?

Thanks,

Sarif

former_member228809
Participant
0 Kudos

Hello.

FSCM Credit check runs in order of BAdI BADI_SD_CM -> PI -> Credit checker(check credit using check rule) and add_reason build return message into parameter ct_result.

This return message is transfered to BAdI BADI_SD_CM and messages are shown as popup message when you save order.

To be brief, add_reason build messages for popup result of credit check while saving order.

About payment term, it's same as general abap programs...

Partner code is saved in io_account->ao_business_partner->a_partner and bp/customer link is saved in table cvi_cust_link. Using this, you can get payment term of customer for bp.

Former Member
0 Kudos

Hi Kyung-Hun,

Thanks again! I have couple of more question for you

-My requirement is that when Payment Term is changed manually in either VA01 or VA02 the Sales Order will be blocked. Now inside the BADI UKM_CHECK_STEP how can I find out if the value has been changed....is the new  value saved in any strucutre?

-When I'm putting a debug point inside the BADI implementation Z_UKM_CHECK_STEP and creating a Sales Order, the BADI is not triggering. It should be triggered right?

Thanks again for taking the time to reply,

Sarif

former_member228809
Participant
0 Kudos

Hello..

'Critical fields' check in tcode OVA8 also provide similar function to control change of critical fields like payment term, fixed value date, additional value date..

If your requirements is payment term change of sales order, it's not catched in FSCM and it'd be better to develop using Routine in OVA8.

You can control many cheks in Routine. In OVA8 -> No credit check in Document controlling tab.

Your SD guys can help you more detail for this Routine.

About debugging, that BAdI is not debugged while saving order because credit check messages are sent via PI interface(BAdI BADI_SD_CM is last point of debugging before message sent). You can only debug in simulation function of BP or direct run in SPROXY.

Read more docs about FSCM and Credit management and it'd help you.

Former Member
0 Kudos

Hi Kyung-Hun,

Does the BADI UKM_CHECK_STEP trigger during Sales Order creation(VA01) only or Sales Order change(VA02) as well?

Thanks,

Sarif

Former Member
0 Kudos

also after talking to my SD guy he told me to add the Payment Term field to this path: (SPRO > Financial Supply Chain Management > Credit Management > Credit Risk Monitoring > Credit limit check > Define Field Groups for Parameters). I did so by appending the field ZTERM to the table ‘UKM_CHECK_STEP’Does that mean that ZTERM will now be available in BADI UKM_CHECK_STEP?

former_member228809
Participant
0 Kudos

va01, va02 trigger credit check via BAdI badi_sd_cm and it trigger BAdI ukm_check_step

former_member228809
Participant
0 Kudos


That means parameter of check step and..

as I know, payment term of sales order is not included in credit check message.

(No payment term parameter in cl_ukm_xi_facade_r3_50=>if_ukm_credit_query_r3~check_credit)

I have no idea if it's possible any new version of FSCM.

Former Member
0 Kudos

Hi Kyung-Hun,

Turns out we don't need to implement any BADI after all! We can make the configuration simply via OVA8 configuration as told by you. Thanks for the help.

Thanks,

Sarif

Answers (2)

Answers (2)

Former Member
0 Kudos

For everyone having the same problem as i do.

Check this note   http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/60acb060-fb1b-2a10-8aa8-ddbb40fe7de3?QuickLink=index&overridelayout=true&15882789065961

Even thought i dint implement the steps on the note this is the solution.

Thank you.

Former Member
0 Kudos

Hello,

Im doing the same process i also appended a Z structure to UKM_CHCK_STEP with a field UKM_OWN_RATING (Char 10), the problem is that the input box doenst apear in SPRO "Define checking rules" -> "Checks".

I have attached a print screen with the configurations i got so far and with the issue,

I have almost everything ok but i believe that im missing some kind of configuration in order to see the input box.

Do you guys got any suggestion? pls check the print i got all my configurations there.

Thanks in advance.

Former Member
0 Kudos

Hi Steven,

We are trying to write a new check rule to block sale order if the Credit limit validity date expires.

can you please advise how to add the validity date field in "Define Field Groups for Parameters" step??

Thanks,

Kiran