Monday, November 30, 2009

Tables in SD transactions

Sales Document
VBAK:  Sales Document - Header Data
VBKD: Sales Document - Business Data
VBUP: Item Status
VBAP: Sales Document - Item Data
VBPA: Partners
VBFA: Document Flow
VBEP: Sales Document Schedule Line
VBAKUK: Sales Document Header and Status Data
VBUK:  Header Status and Administrative Data
VBBE:  Sales Requirements: Individual Records



SALES - header
VBUK: Header status and administrative data
VBAK: Sales document: Header data
VBKD: Sales document: Business Data
VAKPA: Partner index
VEDA: Contract
VBPA: Partner
VBUV: Incompletion log
VBFA: SD document flows
VMVA: Matchcodes
STXH: Texts: Header
STXL: Texts: Line
NAST: Output
JSTO: PP status

Sales activities
VBKA: Sales activity
VBUV: Incompletion log
VBPA: SD document: Partner
SADR: Address
VBFA: SD document flows
NAST: Output
STXH: Texts: Header
STXL: Texts: Lines
Logical database:
AK V: Sales documents

SD Delivery Document
LIPS:   Delivery Document item data
LIKP:   Delivery Document Header data


Billing Document
VBRK:  Billing:Header data
VBRP:  Billing:Item data

SD Shipping Unit    
VEKP: Shipping unit item (Content)
VEPO: Shipping Unit Header

Delivery Due Index -
VBUP: Item status
VBAP: Sales document: Item data
VBKD: Sales document: Business Data
VEBA: Contract
VBLB: Forecast delivery schedules
VBEP: Sales document: Schedule line
VBBE: Individual requirements
VBBS: Summarized requirements
VBUV: Incompletion log
VBFA: SD document flows
VBPA: Partner
JSTO: PP status
NAST: Output
STXH: Texts: Header
STXL: Texts: Lines
KONV: Conditions

Shipping
VTTK: Shipment header
VTTP:Shipment item
VTTS:Stage in transport
VTSP:Stage in transport per shipment item
VTPA: Shipment partners
VEKP: Handling Unit - Header Table
VEPO: Packing: Handling Unit Item (Contents)

Material Master

MARA: General Material Data
MVKE: Sales Data for Material
MARC: Plant Data for Material
MARD:Storage Location Data for Material
MAKT:Short texts
MARM: Conversion factors
MLAN: Sales data (for each country)
MAEX: Export licenses
MBEW:Valuation data
MLGN: Warehouse management inventory data
MLGT: Warehouse management inventory type data
MVER: Consumption data
MAPR: Pointers for forecast data
MCH1:Cross-plant batches
MCHA: Batches
MCHB: Batch stocks
KNMTK: Header table
KNMT: Data table

Bill of Material (BOM)

MAST: Material assignment to BOM
EQST: Equipment assignment to BOM
KDST: Sales order assignment to BOM
DOST: Document assignment to BOM
STST: Standard object assignment to BOM
TPST: Functional location assignment to BOM
STKO: BOM header data
STZU: Time-independent STL data
STAS: BOM item selection
STPO: BOM item data
STPU: BOM sub-item data


Logical databank for material master
CKM: Material master
MSM: Material master

Customer Master 
KNA1: General Data
KNB1: Customer Master (Company Code)
KNB4: Customer Payment History
KNB5: Customer master (dunning data)
KNBK:  Customer Master (Bank Details)
KNBW: Customer master record (withholding tax types)
KNKA: Customer Master Credit Mgmt.
KNKK:  Customer Master Credit Control Area Data (credit limits)
KNVA: Customer Master Loading Points
KNVD: Customer master record sales request form
KNVH: Customer Hierarchies
KNVI: Customer Master Tax Indicator
KNVK:  Customer Master Contact Partner

KNVL: Customer Master Licenses
KNVP: Customer Master Partner Functions
KNVS: Customer Master Shipping Data
KNVT: Customer Master Record Texts for Sales
KNVV: Customer Master Sales Data
KLPA:  Customer/Vendor Link

Pricing

KONH: Conditions header
KONP: Conditions items
KONV: Procedure ( billing doc or sales order)
KOND: contracts
VEDA: Contract data
KOMK:  Pricing Communications-Header - Structure
KOMP: Pricing Communication Item - Structure


Output    
NAST: Message Status




Use of Class Characteristics in QM

One of the most Critical Requirements I have came across is, Transferring Specification Values from Engineering Specification to Inspection Specification without User Interaction. I am Explaining this Requirement in brief below,

Engineering Department is Responsible for Designing Specification for Finished Product and Quality Management will Carry out Testing Accordingly, But in most of the Industries This is Paper based Engineering department will write down there Specification values for each parameter on a Specification format after approval this Specification format is transferred to Quality department now QM job is to copy those specification onto there Inspection Specification format.

Here if Quality engineer makes mistake while copying then it leads to erroneous results. To avoid this user mistakes as soon as Engineering Department maintains Specification System should take care of transferring this Specification to Inspection Specification without user interaction.

We achieve this by using Class characteristics and its linkage with Inspection Characteristics in Material Specification. Detail step by step Procedure is as follows,

Step 1: Create Each Engineering Specification Parameter as Class Characteristic in SAP.




Class Characteristics:

Here Class Characteristic means Specification Parameter which is required to be tested / Inspected During Quality Check.












Step 2: Create Batch Class.


Sunday, November 29, 2009

Plant specific number range at Invoicing

The requirement is to trigger plant specific number range at invoicing since every plant has to declare there own excise number range in India. So we need to validate Plant, Billing type and number range object.
Step-1:
Create different number range Interval:-
T-code - SNRO; Use Object RV_BELEG. Click on number Ranges - Click in Change view (Pencil Marked) of Interval.
Add new interval.
Tips: Since, Its a plant specific number range you might want to use Common Starting Alphabet for each of your plant to make your life easier.


Step-2:
T-code: SE38, Use Userexit - RV60AFZZ
 Use code below.


data : lt_xvbrp like xvbrp occurs 0,
ls_xvbrp like line of xvbrp.
data : lv_werks type werks_d.
data : lv_count type i,
lv_numki type numki.
data : lt_xvbrk like xvbrk occurs 0,
ls_xvbrk like line of xvbrk.
data : lv_flag_exp type i value 0,
lv_flag_dom type i value 0.
types : begin of ty_vbak,
vbeln type vbeln_va,
end of ty_vbak.
data : lt_vbak type table of ty_vbak,
ls_vbak type ty_vbak.
If xvbrp is not initial.
lt_xvbrp[] = xvbrp[].
sort lt_xvbrp by werks.
delete ADJACENT DUPLICATES FROM lt_xvbrp COMPARING werks.
describe table lt_xvbrp lines lv_count.
if lv_count gt 1.
message e398(00) with 'Different Plants for Single Billing Not Possible'.
clear lv_count.
elseif lv_count eq 1 .
if lt_xvbrp is not initial.
if sy-tcode ne 'VF11'.
read table xvbrk into ls_xvbrk index 1.
ELSE.
read table xvbrk into ls_xvbrk WITH KEY VBTYP = 'N'.
ENDIF.
if sy-subrc eq 0.
if ls_xvbrk-fkart ne 'ZEXP'.
read table lt_xvbrp into ls_xvbrp index 1.
if sy-subrc eq 0.
select single numki from zsd_binr into lv_numki
where werks = ls_xvbrp-werks
and fkart = ls_xvbrk-fkart.
endif.
endif.
endif.
endif.
if lv_numki is not initial.
US_RANGE_INTERN = lv_numki.
else.
message e398(00) with 'Number range not Maintained for' ls_xvbrp-werks.
endif.
clear : lv_numki,
ls_xvbrp,
ls_xvbrk.
endif.
endif.
ENDENHANCEMENT.
ENDFORM.


At the end of this your result will be somthing like the Picture Enter your plant and billing type with number range interval you have already created in Step1.
This program will over look the number range assignment in billing type adn use the interval that you give here.
Tips:  it is advisable to delete external number range in such case.


Friday, November 27, 2009

Product Hierarchy

Standard SAP provides Product Hierarchy in 5+5+8 bits which means you can enter three levels of Hierarchy and each 1st and 2nd Level with 5 numeric values and the 3rd level with 8 numeric values but this format is not  the way you want to define hierarchy may be because you have more levels of hierarchy. In Such a case you have to follow as i suggest below.

Note: In my case I am taking 9 levels and each levels with 2 digits. Remember !!! I cannot go beyond 18 Digits total no matter how many levels I have so Mathematically, you can have maximum of 18 levels.

Path: Logistics General-Material Master-Settings for Key Fields-Data Relevant to Sales and Distribution-Define Product Hierarchies-Define Product Hierarchies.

Step-1 
Click on Domain Radio Domain and Create a Domain  On tab page - Definition Enter - Data type - Char, no of character - 2.
Save and Back.



Step-2
click on Radio Button 'Database Tables' Enter PRODH Click on change. and Enter is in the Screen Shot.



Step-3
Enter the Domin that you have created as per example it ZPRODH in DATA TYPE tab Page but to make Changes click on Edit-Modification Operations-Switch off Operations.

Education Cess not calculated

Out of several reasons of Cess not being calculated, One of the resons is, If you defined Secondry Education Cess condition type by userself (Custom defined not SAP standard). In this situation you have to enter your Custome defined Condition type in JFACT.


Why?? well this is one the SAP's old code but you dont really have to bother as long as you has the solution :)


Tax on Goods Movements-India-Basic Settings-Determination of Excise Duty-Condition-Based Excise Determination-Classify Condition Types.


Procedure                Condition Type                               Condition Name
JINFAC                   Z (custome Condition Type)             AT1ARPERC A/R AT1 Percentage

Export from India to Nepal & bhutan

Exports from India to Nepal and Bhutan is excisable. SAP identifies Country from customer master and pickes Export Number range and also Identifies it as Export (Bond or Letter of Undertaking etc). This stops Excise document to create Accounting document for Excise relevant to Nepal or Bhutan. Since, Thes two country are excisable you ahve to Use Userexit - J_1i7_redertermine_Invoice_type.

Tcode - SE37.
Apply code:


if SH_REGION = 'NP' or SH_REGION = 'BT'.
E_CUST_TYP = 'L'.
E_T_LOCEXP = 'NEPAL'.
E_EXP_TYPE = ' '.


Endif.
 
Note: Remember in case code ablove I am assuming BT is Bhutan and NP is Nepal. If  in your case its not the case then you have to declare the Country codes for Nepal and Bhutan.

Wednesday, November 25, 2009

Warranties configuration

Jus' couldn't wait to post configuration of warranties. Let me tell you basics of warranty. Most of the Discreet manufacturing company offer warranty from the date of delivery or from the date of commissioning. In most of the cases commissioning is done after delivery. So, warranty counter is set at delivery and countdown begins from the time of delivery or let’s says from the time you assign warranty date to the equipment or warranty counter to the equipment.
In my previous post I have explained you about how warranty is linked with serial number and equipment and how to configure serial number for automatic creation of equipment and make it a mandatory field at delivery etc.
In this post you will learn to verify warranty validity, add warranty view in equipment master, add data management field to Equipment master etc.



Activating Warranty in Customer Services to Check Warranty Validty.
Plant Maintenance and Customer Service- Master Data in Plant Maintenance and Customer Service - Basic Settings – Warranties - Check Warranty Categories.


  • Plant Maintenance and Customer Service- Master Data in Plant Maintenance and Customer Service - Basic Settings –   Warranties - Define Warranty Types.

 Setting up warranty counter -Plant Maintenance and Customer Service- Master Data in Plant Maintenance and Customer Service - Basic Settings – Warranties - Define Warranty Counters.

Create characterstics – CT04

Setting up warranty field in equipment master 
Plant Maintenance and Customer Service - Master Data in Plant Maintenance and Customer Service - Technical Objects - General Data - Set View Profiles for Technical Objects – New entries.

Note: I suggest, copy one of the standard profiles and then customize it as required.

Select and view ‘Activity and Layout of Views’.
Select and view ‘Icons and texts of views’.
View the Equipment master now. Configuration done.

Monday, November 23, 2009

Serial number for Equipment Warranty / Material Warranty / Warranty given on sold product.

Cont. of my previous post on serial number;
This section will deal with how to assign warranty to material sold. Normally, discreet manufacturing industry gives warranty validity from the date of delivery. So I am giving you configuration detail of assigning warranty at the time of delivery.


Theory: a warranty is given on a equipment and equipment is assigned to every serial number. In a nut shell every material sold having a serial number can have a warranty and any material that does not have serial number cannot not have warranty.


Equipment is unique to each serial number + material. Ths configuration deals only with serial number profile and automatic creation of equipment assigned to a serial number. This configuration will also help you to assign validity date to warranty.


T-code- OIS2.









Click on check box as we do not want to allow creation of Serial number at transaction (delivery in our case)
It means you must have created serial number master in IQ01 or IQ04 etc to input serial number in the transaction.


Select you profile and click on Serializing Procedures


The most important thing in this screen is to enter ‘02’ in ‘EQ Req’. This will automatically create equipment against every serial number created against which warranty dates are assigned.


Save the Profile.


Assign the profile in material master Sales General Plant.

Vl02n - Assign serial number as it would be mandatory now.

Save it.
Go to change mode of same delivery to assign Warranty date to the serial number.
Note: This activity can be done even thru IE06 or IQ09.


Double click on check box below ‘Eqpt’



Input Warranty begin and end date. Save.














Now the biggest question is when you get the material back how you check the warranty.


There are few configuration that you can do in CS – Customer services to make sure the warranty check happens. I will post the configuration very soon.

Serial number profile

I  have divided Serial number profiling in 2 sections.
Firstly, create serial number profile for sale order, Profile will allow you to  assign serial number at sales order level.
Secondly, create serial number for warranty.


Tcode - OIS2
1. Click on New Enteries to create profile.


2.Click on Serialization Procedures.
3
 The profile is ready assign this profile to material master and at sales order go to Extras-technical Objects and assign serial number. This profile allows you to create serial number in sales order. If this is not how you want then click check box 'Exist Req' in first screen shot.

Saturday, November 21, 2009

Riding:


280 degree picture. We captured this view on a riding trip to Kerala.

Calcutta


Howrah Bride, suspended on Hoogly river / Ganges in Kolkotta, now also headquaters railway ministry. Howrah is historically rich place it was one of the most important offices of British rulers. Howrah bridge was build in late 18th century and then rebuild over the period of time. The final version (that we see now was build in 1943,  its a canteliver bridge and then it was 4th of its kind in the world.
Picture of Howrah Bridge construction.

Friday, November 20, 2009

Bangalore

Bangalore once also known as the pub city not that we have any fewer pubs and bars now, its just that people choose to stay at home than to get caught by corrupt night patrol cops and pay fine or bribe and tuk tuk is not  a very reliable source of public transport. So stay off road when you had fews shots of alcohol and still want to get home. Carry GPS if you are not Bangalorian. It helps or best alternative is to stay at home and have a get spirited (I hope  you have a understanding neighbours and landlords).                          

City review

This also is Bangalore. This is shot is of Infantry road at 1am. Infantry road is known for furniture shopping. Usually you would  get good bargain but dont buy without bargaining atleast 10% of the amount. Most of furniture you get here are of compressed wood bought, assembled and sold. For those who know little less of Bangalore-tryh your luck at Russel Market (Very close to infantry road), this might save up few bucks, and ofcourse don forget to try sheek kababs of here.. its awsome... wallah!!!

Sunset view from NH7.

Thursday, November 19, 2009

Setting up blogger with custom domain

I had terrible time setting up custom domain adn sync it with blogger and its then that i thought if i ever fix it i will post it. Eventually, I realised its simpler than what it looks like. Few things to remember wfter you have bought the domain,
  • First thing first. Wait and till you get confirmation from your domain registrar or Google Apps.
  • Login with your custom named email account. It gives you couple of links to log into help file. Its extremely useful. Do not forget to log into registrar the welcome mail also provides login details to registrar. eg-godaddy.com. You may have to create CNAME and ANAME usually it gets configured by itself but no harm in verifying it once.
  • To configure custom domain, login to your blogger account goto 'setting' tab page – ‘Publishing’ Click on ‘custom domain’- ‘Advance setting’ Enter your domain name, Very likely you may get error’ Another blog is already hosted at this address.’
  • This error means that there is conflict and there is site already directing to this web address. All you have to do is to disable Google site. URL: http://www.sites.google.com/

To use you Icon instead of Blogger’s icon in URL field use code :




Just Below ‘’ in ‘Layout’ tab page –‘Edit HTML’- scan through the codes.There many online softwares to make Icons. Upload Icon on Google pages or photobucket.



  • If you wish to disable the blogger navigation bar, Use Code:
                ‘.Navbar { visibility:hidden;display: none;}’ Paste it below

Drive away to Treehouse


400 km from Bangalore, Wayanad hosts this tree house. It is 100 ft high fromthe ground middle of the jungle make it a perfect spot for adventure seekers. There is a perfect trekking trail, night stay cost Rs 9000/ night approximately this includes food, snacks etc. Avoid excess luggage.


 What you get to eat?? well most of the things if you are non vegetarian - Fish (very good), Chicken ( as much as you want) and all possible vegetarian food.
There are local shop for souvenir.


Walk up the water stream which flows within the resort and this leads to several water fall one after the other.  Must Do: Trek  along the water stream. dont forget to shop from Ghandhi gram (local government sponsored shop).

Wednesday, November 18, 2009

Riding:


I and Mukesh rode to Nandi Hills early morning. this picture was taken somewhere on NH203. Apart from few issues with the bike ride was smoth and we were back in 6hrs.