VC

Home / SAP / Archive by category "VC" (Page 6)

Variant Configuration – Interface Design for Printing

Here’s a fact about the Variant Configuration Interface Design I took for granted because I’ve been using it for so long.  The printout options are what I’m talking about today.  These 3 extra checkboxes come about because of the need to easily control what should print on output documents.  Why is this so cool?  because it let’s you separate out your tabs and sequences, and let you have a unique output for each different document just by setting up another interface design characteristic group.

Notice, there are 3 different buttons.  Sales, Purchasing & Engineering.  Now most clients I’ve work with never had all 3 different uses, so most of the time, Engineering would be used for production documentation.  Production orders is the most common usage, but it could also be service orders, internal, network orders, etc.  You get the idea.

Purchasing is normally my jack of all trades fall back.  The most common usage is reporting.  This is simply because VC for Purchasing is not a common process.  In my next post, I’ll talk about how you can create your documents to read these UI printouts.  In the meantime, if you haven’t already used this functionality I recommend you check out the interface design and use one of printout options.

Thanks for reading

 

Variant Configuration – The Value of Good Information

To all of my Variant Configuration modelers out there, you all understand exactly what I’m talking about.  Your models are only as good as the information you have to work with.  I’ve modeled at quite a few different places, and more times than not, the information is always the bottleneck.  My current assignment is no different.  So it what brings me to my topic of the day, the value of good information for your VC models, and the format that it’s in.

In my travels, I’ve seen the extremes, good and bad.  I’ve seen notebook pages with scribbles, and I’ve seen fancy designed tools just for the documentation of the VC rules.  What I’m here to tell you is that you don’t need anything fancy.  In my experience, an excel spreadsheet with some standard formatting is more than you need.  Fancy tools will just cost you money, and in the long run, cost you time.  Because you still need to move all the information into the fancy tool.  Spend a couple of hours, put together a format you can read.  Work with the modelers and business people.  It’s really that simple.  I’m an engineer, so I like to start with the bill of materials first.  I’m a fan of listing out all the components, and then break down the rules that it takes to select each.  From there, it’s usually pretty easy to break it down and sort it out.

Then go into the sales/marketing rules.   The important thing here is if you can break things into tables or grids.  Remember, don’t make it more complicated than it needs to be.  The more complex, the less likely anyone will update it or enter it properly.

So take me advise, if you’re just starting out, do it simple.  Use excel to build it.  Thanks for reading.

 

Variant Configuration – Global Multiple Value Characteristic restricted by classification

Ok…  so this is a long title, but in short, here’s the situation.  I have a global Multiple Value Characteristic and it allows additional values.  For one particular KMAT that will use this characteristic, I want to have one preset option available + the free text, and exclude everything else.  In the classification, I set only the single value to be shown, but the problem is that it is automatically selected as well, and it shouldn’t be.  Since the characteristic is to allow customers to enter in free text to denote a special, I don’t want anything populated for a value unless the customer actually enters something in there.

Now, thanks to my friends at the CWG, in particular Steve Schneider, they came up with a great trick.  He gave this simple process for the Multiple Value Characteristic, and it works great.

1) Remove the multi value char from the existing class assigned to the KMAT.

2) Create a NEW class containing only the multi value char.

3) Assign the new class as a SUPERIOR class to the existing KMAT class using transaction CL24N

4) While assigning the superior\subordinate class in CL24N, double click on the multi value char and select the single value you want available.

5) Save

6) Go into CU50 and see the results… You should see NO value specified, and when you specify the multi value char, all you should see is the single value and the free text field..

It really was that easy to restrict a global Multiple Value Characteristic, and works like a charm.  Thanks Steve.

 

Variant Configuration – using CS_BOM_EXPL_KND_V1 for VC BOM Explosion

Here’s a fun little tidbit.  A recent client was looking for ways to get the BOM from a sales order line item before if hits the planned order/production order phase.  Particularly when you deal with large or expensive manufacturing, you planning/procurement groups might need a heads up on what components will be needed long before it hits MRP.  In that case, you can use the ABAP Function:  CS_BOM_EXPL_KND_V1  This function with a few inputs will provide you the complete BOM for the sales order configuration.  Here’s what you need to enter to make CS_BOM_EXPL_KND_V1 work:

VBELN & VBPOS…  easy one here.  the sales order & line item you want to explode.
WERKS – the plant it should be exploded in
MTNRV – this is your configurable material (KMAT)
EMENG – the quantity of the line item
DAVTUV – the explosion date you want to use (important if you use ECM on the BOM)
CUOBJ – this is the configuration to use ( you can find this in VBAP)
CAPID – this is your BOM type.  PP01 or SD01 are the most popular
MMory – set this to 0 (not sure if this is required)
MEHRS – set this to X (again, not sure what this is for)

If you set these values, BAM, you get your VC BOM before MRP does.  Hope you find this useful.

 

Variant Configuration – Using the PMEVC for Dependencies

Well, since I was talking about the PMEVC the other day, I thought I’d throw out the other biggest piece of functionality that I found helpful.  That’s the improved editor for object dependencies and constraints.  There are 2 big pieces that are absolutely a hit in my book.

The first piece is the editor.  It’s finally a text based editor that is easy to use.  You can use standard copy and paste, no longer do you need to to use the cryptic I9 command into the line number to add more lines.  You can just hit enter.  It’s also very easy to use the find and replace, copy and paste, etc.

The second part is that you can actually use a nice little Input help button.  It’s a hand/question mark looking button.  If you start a statement, it will tell you the options of what you enter next.  This is especially nice for constraints if you forget the key words (like I often do.  ha ha ha).

Short story, if you have access, I recommend doing your PMEVC to do your dependency coding.

Happy Modeling,

 

Variant Configuration – Using the PMEVC for the Interface Design

Well, I’m still rolling on the variant configuration track.  Today is a new revelation that I recently discovered.  In some of my previous contracts I’ve had to set up some rather large interface design tabs.  Often consisting of 20 – 50 characteristics.  If you’re at all familiar with the original tool for creating/updating the interface design, you know how clunky it is.  You have to manually page through the list of characteristics, and even click the checkbox in the appropriate sequence so they show up where you want them.  It’s not challenging, but it certainly is tedious.

What I found is that the PMEVC actually has a great tool for creating and updating the interface design.  Instead of doing the hunt and click method of adding characteristics, you can just type them in.  You still have the option to select a bunch of characteristics in a method similar to the old method.

On top of everything, you can even easily change if it’s a tab or a sequence, or flag it as Sales or Engineering, just by flipping a tab.  So much easier than hunting through a cryptic menu to find the characteristic grouping.

All in all, I’m pretty excited about this.  I was thinking about writing a utility to upload the interface design from an excel sheet, but after finding this functionality, I don’t really need a need for that.  Hope you’ve already found this trick, if not, enjoy the nice interface =)

 

Variant Configuration – Set_Default

If you’ve ever had to use the SET_DEFAULT statement in variant configuration, you grasp just how cryptic the syntax can be.  That’s why I wanted to point out this little trick that you might not yet be aware of.  You can replace the SET_DEFAULT syntax with a nice little operator.  Take a look below to see for yourself.

Example of the old way to set a default:
TABLE TEST( INPUT1 = INPUT1,
OUTPUT1 = $SELF.CHAR ),
$SET_DEFAULT( $SELF, OUTPUT1, $SELF.CHAR)

With this:
TABLE TEST( INPUT1 = INPUT1,
OUTPUT1 ?= $SELF.OUTPUT1 )

It doesn’t have to be used in a table, but can be most anywhere you use the = statement.  So in my opinion, why would you ever use the cryptic SET_DEFAULT statement again =)

 

Variant Configuration – IS Invisible

Hello everyone, it’s funny, I’ve been doing a lot more Variant Configuration work lately, and it reminds me of all the fun tricks I’ve either heard about or have used in the past.  The most recent one I was reminded of was the new IS INVISIBLE syntax.  So, as a reminder:

Old method:  $SELF.SCREEN_DEP_INVISIBLE = ‘CHAR1’

Cool new Way:$SELF.CHAR1 IS INVISIBLE

Now, either method you still need a reference characteristic that is attached to SCREEN_DEP-INVISIBLE.

Benefits include no persistent data storage, where used checking, and syntax checking of characteristic name.  Why does this matter?  for example, the biggest issue with the old method in my mind is that you have to enter the characteristic into quotes?  this means, it’s just a text string, and if you spell it wrong, you don’t get an error, it just doesn’t work.  Using the IS INVISIBLE, it will give you a syntax error if you enter in the wrong name.  The same goes for conducting a where used of a characteristic, in the event you tried to rename it or remove it.  the IS INVISIBLE syntax will show you it’s been used there.

It’s also much cleaner.  Anyway, hope you enjoyed this tidbit.

 

Variant Configuration – SSC Eclipse Editor

Well, I wanted to pass on my most recent and valuable discovery about the SSC Eclipse Editor.  That is prototyping a new model is so much easier in this editor.  Now, the VC purest in me still knows that at the end of the day, the VC rules must still be adhered to, and best practices in modeling don’t change.  But here’s the value of the SSC Eclipse Editor.

If you model like I do, you work best by just jumping in and starting to put things together.  Well, this is great up to the point of enter in master/transactional data.  If you know SAP, you know that deleting things, renaming things, or going in a whole new direction is a royal PITA once you create a sales orders or production orders, etc.  because at that point, you have to jump through a lot of hoops to do some renaming…

The SSC Eclipse Editor is not locked into the same issues.  Because it’s text based, you put everything together, do your initial testing, and if you don’t like the way something is working… or more commonly, you find out new information half way through your model, you can quickly adapt, change names, restructure tables etc.  With very little pain.

Now don’t get me wrong, you’ll still have these pains because at some point you need to connect the SSC Model to either ECC or CRM, once that happens, you’ll be back to the same pain, but when you prototype the model, it sure is nice (for me) to have that flexibility to change my design on the fly without a lot of headaches (in fact, something a simple find and replace everywhere gets me where I need to be).  This is certainly not possible in the standard ECC Variant Configuration…  Food for thought…

Thanks for reading,

 

ABAP – Dropdown List for characteristic values

Here’s a fun little tidbit.  I was building a new screen, and I needed to add a pull down (you’ll see more of this in some future posts. )  I wanted to a build a dropdown list for characteristic values from a VC configuration.  Well, I needed to start simple, first I wanted an easy way to get all the characteristic values and their descriptions.  I found this line little function module that does just that.  It’s not exciting, but it sure is convenient.

lv_pppi_char = WA_CSTICS-ATNAM.
CALL FUNCTION ‘PROC_CHAR_HELPVALUES_GET’
EXPORTING
pppi_char                    = lv_pppi_char
TABLES
helpvalues                   = lt_helpvalues
values_for_field             = lt_values_for_field
EXCEPTIONS
characteristic_not_valid     = 1
values_can_not_be_determined = 2
no_authority                 = 3
OTHERS                       = 4.

And that’s the first step I needed to accomplish to build my dropdown list for characteristic values.  Tomorrow I’ll talk about how to do nice popup box for the dropdown list.

Thanks for reading.