cancel
Showing results for 
Search instead for 
Did you mean: 

How to create a customer no. starting with a few fixed letters which is system-proposed?

former_member294672
Participant
0 Kudos

Hi all,

I want to create a customer that is assigned an external number range which has certain conditions imposed like - the first few digits should always start with,say for example, "DBE" & that will be automatically proposed by the system everytime I create a new customer but the rest of the digits in the customer number will be self-assigned by me .

So that, if I create a new customer ,everytime the customer number box will show - "DBExxxxxx" where all the 'x' is assigned by me  ,so the customer ids will follow like these - DBE000475 ,DBE111903,DBE222276 etc .

Is it really possible?

I searched the internet but couldn't find a proper solution.

Can anyone here will be kind enough to help me solve this riddle?

Thank in advance

With Best Regards

Accepted Solutions (1)

Accepted Solutions (1)

former_member184771
Contributor
0 Kudos

Dear Namrata,

As per my understanding this will not be possible because in SAP you can have either internal or external no range, mix of both is not possible.

However, what I fell you can try to achieve this by no range enhancement but not sure about it.

Use BADI CUSTOMER_ADD_DATA and put all your code in SAVE_DATA method probably this will help you. Invoice toy technical to though more lite on this.

Use the below threads, they might be some helpful to you.

user exit for XD01 (Customer Creation) | SCN

http://scn.sap.com/thread/1314367

Please update us on development part.

Thanks

SS

Answers (2)

Answers (2)

former_member182378
Active Contributor
0 Kudos

Namrata,

This business need is interesting! what is the reason behind this?

MDM team (master data maintenance) will assign the number themselves based on what criteria?

In standard SAP, we assign a number range to the customer account group, so based on export customers, internal customers, different partner functions for example shipto customer can have different number ranges and therefore easy identification.

Thanks!

TW

former_member294672
Participant
0 Kudos

Hi everyone ,

Thank you all for sharing your ideas with me.

Many of you are asking -why this particular naming convention need? Actually the company name starts with the letter "D" and also has the letters "B" & "E" in it's name. So the business requirement states that the all the Customers should have id's starting with the letters "DBE" and the rest can be digits assigned by the person or end user who is creating the customer .

So the first 3 letters 'DBE' will be system proposed and the rest will be user-created.

@sumeet , I couldn't get what you meant by the following phrase -

" Invoice toy technical to though more lite on this."

Can you plz explain to me in details?


Thanks in advance

With Regards

VeselinaPeykova
Active Contributor
0 Kudos

This means that you can simply use an external number range DBE100 DBE999 and leave the rest to the master data creator. You do not need to have a sequential numbering for customer creation after all , just to follow the company naming convention.

former_member182378
Active Contributor
0 Kudos

Namrata,

If the digits in your customer number can be assigned by manually, then it would take more time and effort for business to create the customer numbers, they would have to maintain their own convention outside SAP and would have to check what number is exhausted to use the next number. Making this manual takes away the advantage that SAP provides, of going sequentially with creation of customer numbers. Why does your client want the numbering to be done by them? Any advantages?

TW

VeselinaPeykova
Active Contributor
0 Kudos

We also used external number ranges in my previous project - for example the customers assigned to plants were with PXXXX where XXXX is the plant number. The P* customers were also used as cross-docking partner function for some of the regular trade customers and there was additional setup for alowed combination of delivering plant and x-docking location. It is much easier for the end users to remember a logical mapping instead of memorizing the internal number assigned by the system.

There are some other cases when it is pretty normal and even advisable to use external number ranges- for example when you create the customer hierarchy it makes more sense to use your own logic for the hierarchy nodes.

For trade customers - I am not 100% sure, but sometimes you may want to have exactly the same data for part of the customers in quality and in PRD, but you do not need to have all trade customers created in Q system. So imagine a user is supposed to test a change to an invoice smartfrom with some pricing conditions applied per customer number. In PRD he uses customer 96134, but in quality he should have the data for customer 96002. This means that he has to ask to extract the conditions for 96134 and request upload for 96002 after the new customer is created. Usually we set up a temporary test system before go-live with upload of all data for testing and validating the business processes and the users are supposed to check the quality of master data as well, because this is what they will get for go-live. If you use internal numbers for trade customers it is a very time-consuming task for the master data team to match the newly created customer numbers from the initial upload to the templates provided by the key users for pricing conditions or credit master records (for go-live).

Edit: I do not really like the idea of using letters in customer numbers for uploads, except for a very limited set of data, because while latin B and cyrillic В are two completely different codes, some users do not understand the concept or do not really care (which results in an uploader's nightmare if you do not have a proper template validation).

former_member294672
Participant
0 Kudos

Hi Veselina,

You wrote ...


Veselina Peykova wrote:

This means that you can simply use an external number range DBE100 DBE999 and leave the rest to the master data creator. You do not need to have a sequential numbering for customer creation after all , just to follow the company naming convention.

But you didn't wrote how to select that external number range "DBE100 DBE999". I know how to select & assign a number range by going to SPRO>Logistics General>Business Partner>Customer>Control-->Define and assign customer number ranges.

Can you please share with me ?

BR

VeselinaPeykova
Active Contributor
0 Kudos

Do you mean that you know the customizing steps, but do not know how to create the customer master data? Or some part of the customizing is not clear?

1. Create number range interval X1 DBE100 DBE999 X.

2. Assign X1 to your account group.

3. Create customer with your account group with XD01 and enter for example DBE253 manually.

former_member184771
Contributor
0 Kudos

Dear Namrata,

I mean to say involve your ABAP do explore more from technical side.

This particular requirement will not be possible by standard config you need to look got enhancement.

But if business agree to put the no range manually, then the same can be achieve as suggested Veselina

Thanks

SS

former_member294672
Participant
0 Kudos

Thanks Sumeet & Veselina for your advices & suggestions.

  It is still not clear what you meant . You wrote -


Veselina Peykova wrote:

Do you mean that you know the customizing steps, but do not know how to create the customer master data? Or some part of the customizing is not clear?

1. Create number range interval X1 DBE100 DBE999 X.

2. Assign X1 to your account group.

3. Create customer with your account group with XD01 and enter for example DBE253 manually.

So, ultimately what will that achieve? When I try to create customers using XD01 ,will the system suggest me automatically "DBE", then rest of the digits,the system will ask from me? That is what I want!!

But I think your method will not achieve that because what you meant is I have to manually enter even the first 3 letters like "DBE" which is not what is desired,instead the system will automatically propose that for me .. i mean the "Customer" textbox should automatically have the letters "DBE" in it & rest the user will provide.

Thanks

BR

VeselinaPeykova
Active Contributor
0 Kudos

The system does not suggest automatically numbers for external number ranges.

This customer requirement looks more like a wish than a real business need.

You can try with an additional development of course, but it seems like a real waste of development effort. Especially that there is no legal requirement for customer master numbering in any country that I know of.

If a person is unable to remember to enter 3 characters + 3 digits when creating customers manually (especially considering that the system shows a message with suggestion of the number range if you enter incorrect data), you probably should not give such responsibility to him...seriously... who knows what mess he will cause when maintaining taxes/payment terms/reconciliation accounts/tax numbers .

It might be possible to simplify the entry screens with GUIXT as well, but it requires an additional licence for script creation and you have to deploy the scripts to the workstations where it will be used. Also it is possible with z-development, but is more expensive.

Most of the master data in productive environment comes from template uploads and not from XD01. The regular end users are not supposed to maintain customer master data directly.

Edit: I have seen a ZMM1 transaction at one of my clients. If your customer really insists on having part of the data predefaulted, a developer can do this: based on the entered account group on the first screen to add the 3 characters to the entered digits by the user and in this way to determine the customerID. You will have to remove the standard transactions for customer creation from the users' roles and force them to use ZMM1.

former_member294672
Participant
0 Kudos

Veselina Peykova wrote:

Do you mean that you know the customizing steps, but do not know how to create the customer master data? Or some part of the customizing is not clear?

1. Create number range interval X1 DBE100 DBE999 X.

2. Assign X1 to your account group.

3. Create customer with your account group with XD01 and enter for example DBE253 manually.

Hi Veselina ,

Thanks for the reply. Can you plz explain what does the 'X' at the end mean?

And how do I create this interval range "X1 DBE100 DBE999 X" as suggested by you?

BR

VeselinaPeykova
Active Contributor
0 Kudos

'X' at the end stands for for 'external' checkbox set to 'X'.

Number range intervals for customers are created in transaction SNUM for number range object DEBITOR. There is a path in SPRO for customer number range interval creation as well, but I am used to SNRO/SNUM transactions.

former_member294672
Participant
0 Kudos

Hi Veselina,

You said that "There is a path in SPRO for customer number range interval creation as well" . Can you please tell me what is the path & how to create this type of special  number range intervals(which starts with certain aplphabets like 'EBD' etc) through that path?

Thanks & Regards

VeselinaPeykova
Active Contributor
0 Kudos

From your other thread I see that you have tried to maintain the number range intervals for customers. So no reason to repeat what you already know .

There is nothing really special in creating external number ranges for customer master records.

By the way, TCODE XDN1 is also a faster way to reach the same maintenance view.

VeselinaPeykova
Active Contributor
0 Kudos

I do not think that you can do this in standard, because you cannot create number range intervals starting with character without setting the indicator for external.

Probably you could create the number range as external, assign it to your account group and use EXIT_SAPMF02D_001 to fetch the next customer number-you will have to get which is the last number used for the interval and run some checks.

To me this seems like too much of a hassle for minimal benefits.

What is the reason behind such requirement?

Most of the master data in SAP is uploaded with LSMW or a similar tool by a master data specialist, anyway. In the rare cases of MD creation in the foreground such person is fully capable of executing the checks in KNA1 manually before creating the customer. If you use self-service for customer creation, this goes via a workflow, so again the customer number can be checked before request approval.