Blog

Home / Archive by category "Blog" (Page 12)

If you can’t think big, think weird

I recently listened to a Tim Ferriss podcast, and he said something that really stuck with me.  “If you can’t think big, think weird”.  This resonated with me because I feel like I get stuck in what I know.  It’s so easy to stick with the areas you know, or ideas that will improve things 10%.  But if you really want something that will get people excited, you need to original, unique, outside of the box…  pick your cliche.

So the idea is, if you feel like you are in a rut, go weird.  Start brainstorming, but the crazier the better.  And like any good brainstorming session, be sure to write everything down.  Don’t filter, don’t censor…  just go weird.  An example would be “I want to lose weight”.  Well the obvious ideas are diet, exercise, fat camp.  Now, if you want to think weird…  start going down the crazy train.  Cut off a limb, move to the moon, full body transplant, anti-gravity clothes…  who cares!?!  Once you have the list, go through it and start looking for some gold.  It’s likely that maybe you can find something to work with.  Obviously, it’s not an option to live on the moon, but maybe you can find some hook around “defying gravity”.  Maybe even re-brainstorm the list.  Do it normal and do it weird again.  It’s something new to try.

Thanks for reading,

Service Management – No operating time entered for the work center

Whenever I start from scratch with configuration I tend to find something that I forgot.  This time around it was getting the operating time to be recognized by the service order.  I kept getting the error:  CN877

No operating time entered for the work center.

Turns out, the capacity hours were not maintained within the work center.

Press the capacity header button

Be sure to maintain the values for Start & Finish and the capacity hours.  If you maintain this, it should eliminate the error.

Thanks for reading,

Service Management – Operations for Duration/Work

Recently, I was configuring a workcenter for Service.  I thought I had everything taken care of, but I kept getting error CN863 everytime I made a new service order and entered in the times.  I checked the work center, but couldn’t find anything.

Well, I found transaction OIO9 is needed to maintain the default units for each planning plant.  As soon as i maintained the H for each value, I was able to get rid of the error.

Thanks for reading,

Service Management – TXN IE4N – installation/dismantle

I recently got introduced to this new transaction so I wanted to write a quick post about it to keep locked into my brain for the future 🙂  It turns out that using this transaction you can do an installation (or dismantle) of an equipment record to (from) a functional location.  The idea behind this is that it will also take the item out of stock and immediately issue it to the order & “superior location” of your choosing.

Why is this cool?  if you have the proper infrastructure in place, namely a warehouse that is prepared for this, you can build the hierarchy while issuing materials to your service/maintenance order.  If you are trying to maintain the full history of what serial numbers have installed into a functional location, this transaction can be a huge step, as you can do the job in one step, instead of first issuing the material, then building/updating your hierarchy.

Now, my original investigation was looking for a better way to do a “find/replace” when I perform an exchange, but stumbling on this is certainly something that is very interesting to me.  I’m sure I”ll find a use for it sooner or later.

Remember to check out the OSS note:  https://launchpad.support.sap.com/#/notes/767108

this talks about the configuration for using the transaction.

Thanks for reading,

 

Service Management – Adding a new field to Pricing Tables

Well, I’ve been playing with adding new fields a lot lately.  And it’s all to do some pricing testing with a new field. So guess what, here we have the way to add a new field to pricing.  I found most of this information in an old SAP post.

Here I am giving a simple guide to add fields to the Pricing Field Catalogs:

For example you want to use field PSTYV (‘Sales document item category’) that is included in structure KOMP (‘Pricing Communication Item’) as a key for a condition table.

When you create a condition table (Transaction V/03), however, the system does not propose the field in the field catalog.

Condition access, field catalog, allowed fields, KOMG, KOMK, KOMP, KOMPAZ, KOMKAZ, PSTYV are the other terms which we need to know about, to add Fields.

 

Here is how you fix this:

1. Call up the ABAP Dictionary (Transaction SE11) and create data type ZZPSTYV. Choose PSTYV as a domain.As a short text, you can use, for example, ‘ZZ – sales document item category’ and as a field label, you can use the field labels of PSTYV.Save, check and activate your entries.

2. Call up structure KOMPAZ in the ABAP Dictionary (Transaction SE11) in the change mode and make the following entry:

Component Component type

ZZPSTYV ZZPSTYV

Save, check and activate the change you made.

3. Note:Because of the change in structure KOMPAZ, field ZZPSTYV is now known in structures KOMG and KOMP because structure KOMPAZ is included in both structures.

4. Call up Transaction SPRO. Navigate to ‘Sales and Distribution -> Basic Functions -> Pricing -> Pricing Control’ and execute ‘Define Condition Tables’.

Choose ‘Conditions: Allowed fields’ and include ZZPSTYV as a new entry.

5. Note:Now you can use field ZZPSTYV as a key field when you create a condition table Axxx.

6. Supply the new field you defined by including the following source code line in USEREXIT_PRICING_PREPARE_TKOMP:

MOVE xxxx-PSTYV TO TKOMP-ZZPSTYV.

In order processing you find the user exit in Include MV45AFZZ, and in billing document processing you find it in Include RV60AFZZ.

Consider that you can also use this note as a help if you want to use other customer-specific fields as key fields in a condition table.

For header fields, use structure KOMKAZ instead of structure KOMPAZ and USEREXIT_PRICING_PREPARE_TKOMK instead of USEREXIT_PRICING_PREPARE_TKOMP.

For more information, see Transaction SPRO via the path ‘Sales and Distribution -> System Modifications -> Create New Fields (Using Condition Technique) -> New Fields for Pricing’ and OSS Note 21040.

Thanks for reading,

Service Management – Adding Custom Fields to a Service Order

I recently learned a new trick thanks to a well written blog.  I wanted to add a custom field to my service order.  I knew there was an exit IWO10018, but I didn’t know how to use it.  Turns out it’s pretty easy, but there was an extra step that missed, and this blog showed me where I went wrong.

https://blogs.sap.com/2014/04/20/iwo10018-user-fields-in-maintenance-order/

Thanks for reading,

Variant Config – Changing Sales Order Fields

I recently had the question of how do you change the sales order based on the configuration.  Well, it’s been a while, so I forgot how to do it.  Anyway, my good friend Rama has already written a great post on this, so no need for me to reinvent the wheel.

http://www.gottipatiblog.com/2014/11/reference-characteristics-in-vc/

Thanks for reading,

SAP – Copy Control of BOM Items

I recently came across something that had me stumped for a while, so I didn’t want to forget it.  I had a situation where I wanted to create a return order with reference to a sales order.  Sounded so simple.  The catch was that the sales order had a sales BOM.  Imagine you have a kit of sorts with a random assortment of pieces, and the customer decides to return one of them.  Depending on your business, you might allow for this.  Well, in general, SAP won’t let you do this.  You will get an error:

Item xxxxxx is a component of a bill of material so cannot be copied.
Item XXXXXX contains errors and cannot be copied.

Well, I did a lot of digging, and a lot of trial and error.  I thought the issue was with item portion of the copy control, so I kept trying different combinations.  At the end of the day, what I did was the following:

  1.  Remove the copy control for the main item of the sales BOM.  Since I was only doing components of the sales BOM, didn’t want to even allow the header.
  2. Needed to update the requirement for DataT with a bit of code.  The idea is that in the copy structure you manually remove the BOM data from the line item, allowing you to copy it.

LOOP AT CVBAP.
IF CVBAPSTLNR NE SPACE.
CLEARCVBAPUEPOS,
CVBAPSTLNR,
CVBAPSTLTY,
CVBAPSTLKN,
CVBAPSTPOZ.
MODIFY CVBAP.
ENDIF.
ENDLOOP.

Once I finally found this, everything else fell into place.  I hope I can save you some of the pain it took me to figure this out 🙂

Thanks for reading,

Service Management – Setting up a Quantity Contract Line

When dealing with service contracts, the header of the contract for a quantity and for maintenance can be identical.  In fact, for service I recommend it.  That means you just need both sets item categories.  Today I want to talk about setting up the quantity contract line.  For the quantity lines, there are two main pieces.  The contract line is the first piece, but the call off line is just as important.

The contract line:

The important field is the completion rule.  I recommend C for quantity lines.

Now, in order to consume the quantity items, you need a sales order that will be created with reference to the contract.  (if you use a notification, we will talk about that in a later post).  For this, I recommend a change to the order header of the order type you will use as a call-off.

The important field is the Outline agrmnt mess.  I recommend ‘F’, this will pull up a popup at the item level automatically.  This will give you the opportunity to select a contract to link the line item to.  Please note, this will only work if you create the order in dialog.  In any other situation, the link to the contract will not be created.  In a future post I’ll talk about ways to get past this.  In the meantime, this should give you what need to get started on quantity contracts.

Thanks for reading,