rss feed blog search engine
 
Search rss blog search engine
 
SAP ABAP Programming  
Released:  10/1/2009 7:10:57 AM
RSS Link:  http://allsapabap.blogspot.com/feeds/posts/default?alt=rss
Last View 11/21/2009 9:54:36 AM
Last Refresh 11/21/2009 9:57:07 AM
Page Views 1983
Comments:  Read user comments (0)
Share



Description:



SAP,ABAP PROGRAMMING,Reports,Bdc,SAP Scripts,Smart Forms,Module pool,ALV Interactive, Classic reports,ALE,EDI,Work Flow,User Exits,Customer Exits,BADI,BAPI,Cross Applications,RFC,ABAP Dictionary,ABAP Performance,ABAP Optimization,Function Modules,Sub Routines,LUW'S,SAMPLE Codes,Modularization,Debugging,Internal table,interview Questions,FAQ'S...Series of Complete Course of all major topics of ABAP.


Contents:

Pricing Procedure in Product Hierarchy

Can someone help me with an example of Pricing in Product Hierarchy.

If you are an SD consultant (you are one, yes?), you should know your tables and fields. Because you can't do a lot of customizing without that.

But if you want an example here goes. Say, you want to base your pricing procedure on first three digits of product hierarchy, defined in the material master, via condition technique.

Pricing structure for line item is KOMP. A quick look thru KOMP structure (tx SE11) shows that you have only PRODH field for all 18 digits of product hierarchy, whereas you need only the first three. So you do the following:

1. Create the new data element ZZPRODH1. Also create a domain with the length "3" and the data type "CHAR" for the new data element. Remember that new data fields must start with the letters "ZZ" or "YY", since SAP reserved these letters to protect them from being overwritten during a release upgrade.

2. Check whether the product hierarchy (PRODH) is found at header or at item level. In table VBAP, document field PRODH is defined as an item field.

3. Integrate the field name ZZPRODH in the communication structure KOMP using the INCLUDE KOMPAZ and allocate the data element PRODH to it.

4. Activate the structure.

5. Check in which table the field PRODH exists.
The field is in table VBAP (sales document: item data).

6. Assign a value to the new field in the FORM routines for sales order processing and billing using the appropriate user exits: In sales order processing the user exit is found in member MV45AFZZ. The complete statement is:
FORM USEREXIT_PRICING_PREPARE_TKOMP.
MOVE VBAP-PRODH(3) TO TKOMP-ZZPRODH. ENDFORM.
The routines for assigning a value to the new fields in billing are found in member RV60AFZZ. The statement is as follows:
FORM USEREXIT_PRICING_PREPARE_TKOMK MOVE
XVBRP-PRODH(3) TO TKOMP-ZZPRODH. ENDFORM.

7. Allocate the specifications A, V and 001 to the field ZZPRODH in table T681F. Use "E" has been added for fields in rebate processing.

This is a standard example from SAP Library. In this case you must tell the ABAP three things:
- that your source field is VBAP-PRODH,
- that you need to get the first three digits from that field into your pricing structure KOMP
- and that you need to specify the transfer by user exit thru MV45AFZZ

Please note that this is a very simple example. Quite often you have to dig a lot deeper.

Modifications of Copy Control routines, making output forms (thru SapScript) and such requires you to know all the necessary tables, structures and fileds.

The only advice I can give you is to use tx SE11, which will show you the organisation of a table/structure, and can also help you check the contents of a specific table in a specific sales doc.





Steps for Variant Configuration and Pricing

I want to configer motercycle having differnt types of colour, each colour have varity of standered feature as wall as differnt CC. while want to create slaes order I want motercyle with speciefic colour, Cc feature. which is not possible while creating BOM it will only be configer by materiel Varient Configration.

-------------------------------------
Here are the Steps for Variant Configuration

1.Create a Material of your Motor Cycle using Material type KMAT(MM01).

2.Then create a characteristic called ZColour(SAP has a standard Characteristic for this but it has multiple values-i.e you can select more than one colour for your Bike.If you do not want that create your own)with character format and assign single value radio button on the initial screen.Go to values Tab and give the colours you need.save the characteristic.Similarly repeat for CC(I figure this CC as 100cc & 200cc kind of thing.If you want these as materials then it is a different story-I am taking this as feature as well)

3.Create a class called Zbike with the above 2 characteristics.save the class

4.Create a configuration profile Zbikeprof using Cu41 and assign the Kmat material to Class Zbike,

5.Then create the order and Enter the Kmat material you want in the Order.

John Devraj.

-------------------------------------
In variant configuration I have configured my material properly during sales order creation it is selecting proper characterstics. but my question is pricing should calculate at characterstics level not at header level.

Ugamesh.

-------------------------------------
Pricing in variant Configuration is done at the Header level only.The logic is that you create pricing variant keys for each characteristic Value.This will be done at the Header level using cond type VA00.based on the characteristic chosen the appropriate price according to the pricing variant key will be picked up.

John Devraj.

-------------------------------------
Here my question is with out creating the materials is it possible to get price based on the characterstics.

I am working on variant configuration here my product is 9-100. i have created characterstics for describing colours. this characterstics assigned to class, this class is assigned to 9-100(KMAT type). here i have not created amterial to describe each colour.

Now how I need to setup my system to calculate the price based on colour.

Ugamesh.

-------------------------------------
A cool Question. It will really get us into the thick of things in Variant Configuration.

Here are the steps.

1.Create a Characteristic called ZColour(Standard SAP has a characteristic called colour.I did not use it.)
Give your values.
Say, Red & Blue

2.Now create another characteristic called ZCol_surcharge
Give the description and go directly to Addnl Data Tab.Here in the table name Enter "SDCOM" and in the Field Name Enter "VKOND".The system will pick up the format from the Dictionary.

3.Now go to CT04 and change the Characteristic Zcolour.
Go to values tab and select RED.Goto Extras-> Object Dependencies->Editor and then select Procedure.

In front of 000010 Enter $self.ZCol_surcharge='RED'.
Similarly Select Blue and enter $self.ZCol_surcharge='BLUE'

3.Link both these characteristics to the Class(The class which you have attached the KMAT Material).

4.Go to VK11 and the Enter VA00.Then give the values RED and BLUE and enter the values.

5.Go to your order and Enter your material.

John Devraj.

-------------------------------------
Here are some clarifications required from you.

what is the significance of item category group 0002 and 0004. Apart from these are they any other item category groups are available for configurable materials ?
In BOM header material having components. is it possible to make the component as configurable material.

Ugamesh.

-------------------------------------
The difference b/w 0002 and 0004 is basically that of LUMF & ERLA.
In 0002 the pricing happens at the Header Item Level.
In 0004 the pricing happens at the Sub Item Level.
Check out the Item category Assignments and things will be Clear.

I think these two are the only ones used for Configuration.

Please let me know in which Scenario you would like to have the configurable material Inside a BOM(as it would help me in visualising thh Item Category Assignment).

John Devraj.

-------------------------------------
As you said I setup my system to calculate price based on colour.
ZCOLOUR contains all colours in values tab page.
ZPRICE contains table name and filed name in additional data tab page.

I went to ZCOLOUR characterstics I maintained (extras-object dependicies-editor-action) there I have given $self.ZPRICE = 'RED' for all the values.

when am creating the sales order price is coming only for RED colour not other colours. even price is maintained for all the colours.

Ugamesh.

-------------------------------------
Seems like there is a mistake in the line $self.ZPRICE = 'RED' (You have said you have given this for all the values- If I have not mistaken). This refers only to red colour.

In front of 000010 Enter $self.ZCol_surcharge='RED'.
Similarly Select Blue in the Values Tab and enter $self.ZCol_surcharge='BLUE'

All this is Case Sensitive. So please be careful.

John Devraj.

-------------------------------------
Now its coming any way thank you very much.

Ugamesh.

-------------------------------------
I have been reading your's and ugamesh's mails regarding the same but no where the sales doucments have been discussed as well as material master record and configuration in SPRO.

If you can kindly explain me the same as I was trying to do the same.

Reena

-------------------------------------
There is no need SPRO involvement in Variant Configuration.Everything happens in Easy Access.
As far as Material Master record is concerned you only need to use a KMAT Material type.

There is no need to assign any sales document to this material.

Follow the steps and you will get the result.

John Devraj.

-------------------------------------
I have gone thru the steps and created a sales order, but the pricing procedure is not coming proper. Also do we have to maintain the values for the ZCol_surcharge.
As I have already maintain the rates of the color in VK11 - VA00.

Reena

-------------------------------------
Have you maintained the Object Dependencies for the values in the characteristics class.

John Devraj.

-------------------------------------
Yes !

What I have done is created a customer with KMAT ( Car), without characteristics tab pg. After this I created 3 charateristics viz., zcolor, zengine & zcol_surcharge and assigned them to Class 300 ( Variant).
But I have maintained the dependencies only for Zcol_surcharge : $self.Zcol.surcharge='RED'
Then I assigned all these to a config profile and aslo added the condition VA00 in the pricing procedure, then maintained the same in VK11.
Now my problem is it is not coming in the SO

Reena

-------------------------------------
I think the problem is with the characteristics.
For the characteristics Zcolor and Zengine you must maintain some values in the Values Tab.
Ex:
Zcolor- Red
Blue
Zengine- V6(Right now you can use only one Characteristic for learning)
V8

The characteristic Zcol_surcharge(By name this suggests that it is applicable only to colour-Whereas you can use it for other characteristics as well) does not have any values.

For the values maintained in the Characteristics Zcolor and Zengine you have to go to each value(Go to values tab and select Red) and maintain the object dependency "Action" $self.Zcol_surcharge='RED'. Similarly maintain for Blue,V6,V8 for Example.

Then maintain the condition records for Va00(without any Case mismatch).

Use standard pricing procedure RVAA01.(or a copy- as it has provision for VA00).

This should solve your problem.

John Devraj.





Meaning of Column in Pricing Procedure

What is the meaning of this column in the pricing procedure ,i.e

1. STEP
2 CTRSTEP
3. CTYP
4. DISCRIPTION
5. FROM
6. TO
7. MAN
8. Mand
9. STAT
10. PRINT
11. REQUIREMENT
12. ALCTYP
13. ALBCTYP
14. ACKEYS
15. ACCRUALS

A. STEP
This indicates the number of step-in the procedure.
B. COUNTER
This is used to show a second ministep
C. CONDITION TYPE
This is the most important component in the pricing procedure. The rates are picked up from this element, on the basis of the properties described.
D. DESCRIPTION
This forms the description of the condition type.
E. FROM
This is used to define the progression of the calculation and range of subtotals
F. TO
This is used to define the progression of the calculation and range of subtotals
G. MANUAL
This function enables to allow the condition type to be entered manually also apart from automatic pickup.
H. MANDATORY
This function identifies the conditions that are mandatory in the pricing procedure. The sales price is a mandatory condition type.
I. STATISTICS
This can be used to represent the cost price of the material sold, generally used for study statistical impacts of price
J. PRINT
The activation of this function will enable the printing of the values and conditions to the document.
K. SUBTOTAL
A key is assigned from the drop down menu; this can be used by the system in other area like Sis for reporting purpose also
L. REQUIRMENT KEY
This function is used to assign a requirement to the condition type. This requirement can be used to exclude the system from accessing the condition type and trying to determine the value. This can be used to specify that the condition type should only be accessed if the customer has a low risk credit.
M. ALTERNATE CALCULATION TYPE
This function allows you use a formula as an alternative in finding the value of the condition type, instead of standard condition technique. this can be used to calculate complex tax structures.
N. ALTERNATE CONDITION BASE VALUE.
The alternative condition base value is a formula assigned to a condition type in order to promote an alternative base value for the calculation of a value.
O. ACCOUNTS KEY
The account keys form part of account determination. These keys are used here to define the posting of the revenue generated to respective account heads& to subsequent assignment to GL accounts.
PR00- ERL
K007/KA00- ERS.
KF00- ERF………….& so On.
P. ACCRUAL KEY.
The accrual keys form part of account determination. These keys are used here to define the posting of the revenue generated to respective account heads& to subsequent assignment to GL accounts and payment to respective parties.

Amol Wani





How To Add New Fields To Field Catalog

I have to add new field "Profit Center(Design ID)" to the field catalog first and then create new condition table for pricing using this field.

1. How to add new field to field catalog?
2. How to create condition table using that new field?

For adding field into Field catalogue:

I shall give an example. But you should first identify the field for Profit Center (Design ID) and then do as follows:

For example if 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.

Prerequisites:

For technical reasons, field PSTYV was included in structure KOMP, however, not in structure KOMG ('Allowed Fields for Condition Structures').

To solve the problem, proceed as follows:

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 Note 21040.

For creating a condition Table:

1) There are almost all the regularly used Conditon Table predefined in the system from 001 to 500.

See what best you can use the Standard Tables to avoid further errors.

2) In case you should define the new condtion Table,

a) Goto TCode: V/03

b) Give a Table any number from 501-999

Press execute and reach to next screen.

c) Check up whether the field you are looking is already added in Field catalogue.

d) Double click on the fields you want to make a Table..one by one. Note that the sequence here is important in higher hierarchical to lower..

Eample : Sales Org, DC, Division, Customer and then Material etc..,

e) After selecting, click on the Techincal View buttin (redone) and reach to next screen.

7) Check which key should be in header and which key should be footer. Use check and uncheck functionalities there..

8) Once you are through with all the above steps ..click on generate button.

Check the Table is generated or not.

You can check it at V/04 or V/05 or in SE11.

Tips by : Ajay Kumar Veeranki





Can Sales Order and Billing Have Different Pricing

During the interview, the interviewer raised one question, whether the SALES ORDER & BILLING can have different pricing Procedure?

Yes, can have 2 different pricing procedures

1. One for Sales Order
2. Another at the Billing

Let us take an example :

Generally in the Pharma industry this procedure is adopted becuase all the goods are batch price based.

1. In the Pharma Industry whenever the goods are manufactured it will done in a batch to keep track and price is fixed, I mean there will be a Batch Master which has a certain price fixed for it. This Batch Master will have certain number of batches . These batches will have the number series generated wither by internal or external generation depending upon the client requirement

2. So till all the batches are produced as per that particular Batch Master will have the same price. Like that there will n number of batches will different different prices

3. So when you are preapring Sales Order you be only putting the tenative price for the goods that are sold

4. Then at the time of delivery we will be picking up the goods from different batches basing on the required delivery quantity and finally we do the PGI.

5. This is called Delivery Based Pricing becuase your price for the goods will be determined at the time of the delivery as the goods picked up from the different batches which have different prices. ( Mind it there will very less difference in the prices).

6. So at the time of Billing the Pricing Procedure behaves differently depending upon the differnent batches that are picked basing on the batch determination.

7. So the prices which are detemined from different batches will be the actual prices at which the goods are billed to the customer along with other condition that are applied as required.

Tips by : Kittu





Reasons For Making Any Pricing Procedure in SAP

1. Why we are maintaining separate pricing procedure for inter company sales and business processs.

2. What is the different between standard and inter company pricing procedure and what type condition type we are using in this intercompany.

There are two simple reasons for making any Pricing Procedure in SAP SD Modules.

1) Business Reason. What are the pricing aspects or strategies you want to apply for the client requirement in order to sell their
goods or render services, is all about the reason for various pricing procedures.

Eg: Domestic sales pricing procedure,
- Export Pricing Procedure,
- A rebate pricing procedure or
- A High Discount oriented pricing Procedures.



Home  


 



Link to us




RSS Feed of new blogs                                                   Home        Feed Map        Submit Feed      Link to Us       Contact