Classes and Characteristics for Fabrics – How could they be meaningfully used to transform existing legacy business system to SAP platform
Relevant Industry: Textile production
Target audience: CO consultants, who are willing on work on VC based costing
Scenario: Business process transformation and SAP implementation
First of all, we need to understand the operating procedure and terminologies hovering around a textile production unit/mill. We do not need to get into all these terminologies, but, surely we need to have an idea to understand how can we talk textile language, if we need to guide client/s in process transformation.
As per my initial interaction with the core team members, I understand that a price is quoted/arrived at based on 20-30 parameters. All of these parameters jointly decide the construction of fabric, whether the fabric will be smooth, rough, hard, soft, silky etc, along with looks of the same. So, in a nutshell, the look and feel of the fabric.
As a basic understanding, we should know yarn is required to produce fabric and there are 2 types of yarn: warp and weft. In a fabric, there could be multiple number of warp/weft combination. The basic UoM,used in textile production,of yarn is Count.
Let’s say, a yarn dyed fabric,produced to be sold within European region contain 50s compact warp, 60s compact lycra weft with finished width 60 inches, reed space 69 inches, Liquid Ammonia Special finish with a khadi print is costing the producer Inr 60, then the same has to be taken into consideration to decide the final customer price.
Most of the clients operating on legacy system landscape, do maintain the above classification/segregation as excel format. Any small change in any of the aforesaid and other relevant parameters meant a completely different fabric structure/texture for the customer and hence, excel workbook gets loaded with thousands of line items, every now and then.
To reduce this inefficiency, it is better to embrace variant configuration functionality.
Variant configuration offers classes and characteristics.
Normally, a variant class contain characteristics.
We have created a variant class for one of the production divisions. And named it as V_K. This V_K variant class has been assigned to the finished fabric->Classification tab page.
Figure 1: Assignment of class in material master
Within each of these variant classes, characteristics should be assigned. All/some of those characteristics are required to be selected while creating a sale order, as variant configuration works with fully configurable material, as well, wherein sale order would be the object driving the production process.
Figure 2 : Characteristics within a variant class
Among many other characteristics, loss related characteristics are also defined. The core team, I faced, were very particular about process related losses. Suppose, at the time of dyeing yarn 2% process loss will be encountered, the same has been captured via a characteristic value for the fabric within the sale order.
Figure 3: Capturing process losses
Point is, the expectation of MIS/CO core team could be to create custom tables in SAP to hold the values they used to define within their existing excel files, which they use for costing; but, we need to work with PP team to adhere to the requirement without creating custom tables in CO and still living up to the expectations.
Having said that, we also need to ensure that based on some of these characteristics will be used as reference to get all/some other characteristics populated within the sale order at the time of sale order creation.
Figure 4: Highlighted characteristics are the ones controlling the derivation of other characteristic values.
So, whenever a sale order will be created for the fabric, said characteristics will be auto-populated to be selected on their values.
Figure 5: How to select characteristic values from within a sale order[most of us are aware about it, though]
Figure 6: Characteristic values within additional tab pages get partially derived within the sale order configuration screen.
Another point we should know as SAP CO consultant is the product structure, i.e; how a finished fabric would look like from within sale order, against which its demand has been captured.
On the left hand side of the screen above[Figure 6], we can see that only the very next level of the header material/fabric can be seen being within the sale order. So, for the sale order 345, we can see KFFIPCTN0401O->KGFIPCTN0401O.
If we take a tour on how a finished fabric is made, we have to go through steps:
This is why dependencies are of utmost importance. For example: I have talked about process loss %.
Loss in greige production will impact the outcome of final fabric production and hence, a characteristic has been created within the variant class to capture the loss. let’s assume the characteristic is K_GLOS, the dependency will be used to calculate greige fabric quantity to be produced to address required finished fabric quantity.
I would explain one of the dependencies among many written by my PP colleagues.
Figure 7: Arriving at consumption quantity of greige fabric to produce a certain quantity of finished fabric
A bit of VC concept is needed to understand the code.
In figure 7, KGFIPCTN0401O is the item for which the codification is done. Hence, this item, for the above procedure is understood as “self”.
The finished fabric KFFIPCTN0401O is appearing against field BOM, as this is the holding structure for KGFIPCTN0401O. The finished fabric is called or to be understood as “root”, because there is no other material/fabric on top of it.
In this scenario, component quantity has to be calculated based on required quantity of finished fabric and hence, a reference characteristic is used in the form of S_QTY. This characteristic is not present within the variant class of finished fabric.
Figure 8: Viewing the reference characteristic
Some of us may be ambiguous and wish to validate if the class associated with greige fabric do contain the aforesaid characteristic or not. To clarify the same, screen print is taken from the classification view of the greige fabric just to get confidence that we are not assuming anything wrong.
Figure 9: Classification view from material master of greige fabric
So, we can see that the variant class is same. And this variant class do not contain the reference characteristic.
Back to the equation of the code written inside the object dependency, we can see that “mdata” is used. Question may be why? For the fellow SAP CO consultants, who wish to understand the “mdata” concept, the gist is “mdata” is used within a procedure[one type of dependency] to change the value of a master data field, in this case, quantity of component KGFIPCTN0401O.
As the object dependency is written for KGFIPCTN0401O, system will read the equation $self.S_QTY = mdata$self.S_QTY + (mdata$self.S_QTY * $root.K_GLOS /100 ) as Quantity required of KGFIPCTN0401O to produce 1 KG[as defined in CS03] of KFFIPCTN0401O = (required quantity of KGFIPCTN0401O increased to % loss of greige fabric to produce 1 KG of finished fabric, i.e KFFIPCTN0401O.
Characteristic K_GLOS = GREIGE LOSS % is defined within class V_K.
Now, let us go back to the configuration of sale order, where the Loss% is derived based on some other parameters like fabric category, fabric structure and fabric blend etc.
Figure 10: Loss %
The interpretation done by the VC logic is: to produce 1 KG of finished fabric, 1.125 KG of greige fabric is required.
Hence, while we, as SAP CO consultants would look into the sale order cost detail, we should first focus on how these losses and conversions are being performed by SAP LO-VC component.
Figure 11: Sale order cost estimate and quantity of greige fabric
Conclusion: There are commonly used configurable materials and we know of them. Products like mobile, car, bikes etc are pretty common to be considered as KMAT or so. However, when it comes to textiles, colours etc then the real challenge begin. With the help of configurable material the challenge can be won and this is the proof for that.