SAP-MM only interview questions


What is the difference between the stock transfer between two plants belonging to same company code and those belonging to different company code?



What are the fields in Purchasing view?



What are the steps in automatic account assignment config.



How do you create movement types? What are the steps involved? When will you recommend a new movement type?



What is meant by access sequence? When it is used?



How does the PO pick up the pricing schema?



What are the steps involved in creating a pricing procedure?



What are the types of special stocks available?



What are the types of inforecords?



What is meant by consignment stock?



What are the steps involved in consignment cycle?



Tell me about the subcontracting cycle.



How is scrap accounted in subcontracting?



How are the byproducts taken care of in subcontracting?



Tell me about the various movement types and usage.



What is meant by scales? Can scales be used in standard purchase order?



What is the difference between a contract and a scheduling agreement?



How doethe system calculate taxes?



How does the system calculate nondeductible taxes?



What is meant by batches? How can the batches be searched?



How is a shelf-life item managed in SAP? What is the full cycle?



What are the settings required for quota arrangement?



What is meant by MRP Type and lot sizing?



Can it be configured in such a way that the external requisitions can also be taken into account while MRP runs in consumption-based planning if VB is selected as MRP type?



What is a reference purchase organization? When can it be used?



Explain the concept of split valuation and when can it be used? What are the settings required?



What are valuation area, valuation category and valuation class?



What is meant by a credit memo?



How are free items managed in a PO?



What is meant by a release strategy?



What are release groups and release codes?



What are the differences between release procedure with classification and release procedure without classification? When are they used?



Is it possible to have a release procedure without classification for a PO?



What is the maximum number of levels available in SAP?



Is it possible to have scales in a quotation?



What is GR blocked stock? When it can be used?



What is the movement type for return to vendor? How to reverse it?



How are the variations in subcontracting taken care of in SAP?



What are the tools available for data migration in SAP?



What is the difference between LSMW and CATT?



How to give specifications for developments?



How do you plan for a vendor rating system and move about?



What is RTP?



What is the movement type used in receipt of RTP?



How is an item with serial no. managed?



How do you make variants?



What are the types of tables in SAP?



How to inventory excise duty in SAP?



What are the documents generated in the MIGO 101 movement type? What are the accounts hit?


SAP-Basis interview questions and answers

What is the difference between R/3 and ECC?

R/3 is a term used for SAP Core prior to version 4.7 and after 4.7 and
especially 5.0 and above it is called ECC-Enterprise Central Component.


What databases can SAP installation support?

SAP is built to be DB independent so practically it can be installed on
any RDBMS. However, majority of the installations are in Oracle.


How does SAP handles memory management?

SAP handles memory management at many different levels and is robust to
handle millions of transactions per second.


What is an SAP Basis?

Basis is a set of middleware programs and tools from SAP. Basis
includes client/server architecture and configuration, a relational
database management system (RDBMS), and a graphical user interface
(GUI)


What is the differences between ABAP and OOABAP. In which situation we
use OOABAP?


OOABAP is used to develop BSP/PCUI applications and also anthing
involved object oriented like BADIs, SmartForms..etc.where as ABAP is
used to develop traditional programs in R/3.


What are the functional modules used in sequence in BDC?

These are the 3 functional modules which are used in a sequence to
perform a data transfer successfully using BDC programming:
BDC_OPEN_GROUP - Parameters like Name of the client, sessions and user
name are specified in this functional modules. BDC_INSERT - It is used
to insert the data for one transaction into a session. BDC_CLOSE_GROUP
- This is used to close the batch input session.


What are the things to keep in mind when you SAP startup problems in
Windows?


Developer Traces:-- dev_disp Dispatcher developer trace-- dev_ms Message Server developer trace-- dev_wp0 Work process 0 developer trace The "services" file, which contains TCP and UDP services and their respective port numbers. This plain-text configuration file is located
under %winnt%/system32/drivers/etc. Windows Task Manager (TASKMGR.exe). Dispatcher Monitor (DPMON.exe), which is located under /usr/sap//sys/exe/run. Database logs. EventViewer (EVENTVWR.exe). For a central SAP instance to start successfully, both the message server and the dispatcher need to start. If one of them or both fail to
start, users cannot log in to the system. The following scenarios will illustrate possible causes of why an SAP instance might not start and the reason of the message:"*** DISPATCHER EMERGENCY SHUTDOWN ***".


What would you do when the dispatcher would not start due to port
conflict? What are the symptoms for the same?


The symptoms in a windows environment might be No work processes (disp+work.exe) exist in Task Manager. Dispatcher shows status "stopped" in the SAP MMC. Errors found in "dev_disp": Use, netstat -p TCP, check the services file in the windows and check what port your appropriate sapdb us running. If instance number is 00

SAP-PP (T-code) transaction codes

MATERIAL
CREATE-GENERALMM01IMMEDIETELY
MM11SCHEDULE
CHANGEMM02IMMEDIETELY
MM12SCHEDULE
MM13ACTIVATE
FLAG FOR DELETIONMM06IMMEDIETELY
MM16SCHEDULE
DISPLAYMM03DISPLAY CURRENT
MM19DISPLAY AT KEY DATE
DISPLAY CHANGESMM04ACTIVE CHANGES
MM14SCHEDULE CHANGES
MM17MASS MAINTENANCE
MMAMCHANGE MATERIAL TYPE
OTHERMMBESTOCK VERVIEW
MMPVCLOSE PERIOD
MMRVALLOW POSTING TO
PREVIOUS PERIOD
MM50INSTANT MATERIAL VIEW
MMSCENTER STORAGE LOCATIONS
MM60MATERIAL LIST
ARCHIVING(MATERIAL)MM71ARCHIVE/DELETE
MM72DISPLAY ARCHIVE
BILL OF MATERIAL (MATERIAL BOM)
CS01CREATE
CS02CHANGE
CS03DISPLAY
EXTRASCS28ARCHIVING
CS20MASS CHANGES
EVALUATION/BOMCS11BOM MULTILEVEL
EXPLOSION/MATERIALCS12STRUCTURE MULTILEVEL
BOMCS13SUMMURISED BOM
WORK CENTRES
CR01CREATE
CR02CHANGE
CR03DISPLAY
CA85REPLACE
CAPACITYCR11CREATE
CR12CHANGE
CR13DISPLAY
HIERARCHYCR21CREATE
CR22CHANGE
CR23DISPLAY
LINE HIERARCHYLDB1CREATE
LDB2CHANGE
LDB3DISPLAY
REPORTINGCR60W/C INFORMATION SYSTEM
CR05W/C LIST
CR06COST CENTRE ASSIGNMENT
CR07W/C CAPACITIES
CR08W/C HIERARCHY
WHERE USEDCA80WORK CENTRE
CR15CAPACITY
CR10CHANGE DOCUMENTS
EXTRASCR09STD. TEXTS TASK IST
CR41ARCHIVING
ROUTING
STAD. ROUTINGCA01CREATE
CA02CHANGE
CA03DISPLAY
REF. OPERATION SETSCA11CREATE
CA12CHANGE
CA13DISPLAY
RATE ROUTINGCA21CREATE
CA22CHANGE
CA23DISPLAY
REF. RATE ROUTINGCA31CREATE
CA32CHANGE
CA33DISPLAY
EXTRASCA85REPLACE W/C
MASS CHANGESCA95REPLACE REF. OP. SET
CA75REPLACE PRT
DELETE TASK LISTCA99WITH ARCHIVING
CA98W/O ARCHIVING
REPORTINGCA80WORK CENTRE
WHERE USED LISTCA90REF. OP. SETS
CA70PRODUCTION RESORCE TOOLS
COST CENTRE
OKKPMAINTAIN CONTROLLING AREA
KS01CREATE COST CENTRE
KZS2CREATE COSTING SHEET
KA01CREATE PRI. COST ELEMENT
KA06CREATE SEC. COST ELEMENT
KL01CREATE ACTIVITY TYPE
KP26ACTIVITY TYPE/PRICE PLANNING
SALES AND OPERATIONS PLANNING
PRODUCT GROUPMC84CREATE
MC86CHANGE
MC85DISPLAY
GRAPHICMC91PRODUCT GROUP
MC92OVERVIEW
PLANNINGMC81CREATE
FOR PRODUCT GROUPMC82CHANGE
MC83DISPLAY
MC75TRANSFER PG TO PLANNING
FOR MATERIALMC87CREATE
MC88CHANGE
MC89DISPLAY
MC74TRANSFER MATERIALS TO
MC9KMATERIAL AVAILABILITY
VERSION MANAGEMENTMC78COPY
MC80DELETE
FLEXIBLE PLANNINGMC93CREATE
PLANNINGMC94CHANGE
MC95DISPLAY
MC9KMATERIAL AVAILABILITY
TOOLS/PLANNING TYPEMC8ACREATE
MACROMC8BCHANGE
MC8CDISPLAY
EVENTMC64CREATE
MC65CHANGE
MC66DISPLAY
ROUGH CUT PLANNINGMC35CREATE
PROFILEMC36CHANGE
MC37DISPLAY
ENVIRONMENTMC90TRANSFER MATERIALS TO DM
ACTIVITY REQT.KSPPTRANSFER TO COST CENTRE
KSBLCOST CENTRE PLANNING REPORT
KSOPTRANSFER TO ACTIVITY BASED COSTING
CPBLPLANNING REPORT PROCESSES
MC9CREPORTING
SETTINGSMC96FORECAST PROFILE
DISSAGGRIGATIONMC76BREAKDOWN PG PLAN
MC77DISPLAY PG PLAN
MC75TRANSFER PG TO PLANNING
MC74TRANSFER MATERIALS TO DM
FORECASTING
INDIVIDUAL FORECASTMP30EXECUTE
MP31CHANGE
MP32DISPLAY
TOTAL FORECASTMP38EXECUTE
MP33REPROCESS
MP39PRINT
MPBTEXECUTE BACKGROUND
MPDRPRINT BACKGROUND
DEMAND MANAGEMENT
PIRMD61CREATE
MD62CHANGE
MD63DISPLAY
MD65REQTS. FOR SCINARIO
MD66 COPY SIMULATED DEPENDENT REQT.
MD70COPY TOTAL FORE CAST
EVALUATIONMD73DISPLAY TOTAL REQT.
MD79EXCELL INTERFACE
MD4CORDER REPORT
MD72CHARECTERISTICS PLANNING
CUSTOMER REQT.MD81CREATE
MD82CHANGE
MD83DISPLAY
REPETITIVE MANUFACTURING
MASTER DATAC223PRODUCTION VERTION
PRODUCT COST PLANNING
COSTING RUNCKMATSELCREATE
SELECTION LISTCKMATCONEdit
CK40NEDIT COSTING RUN
Master DataMD25Create planning calendar
MD26Change planning calendar
MD27Display planning calendar
MDSADisplay BOM explosion number
MDSPEdit BOM explosion number
MEQ1Maintain quota file
OPPPExplode BOM by date
MDUSDisplay project assignment
MDUPProcess project assignment
MDL1Create production lot
MDL2Change production lot
MDL3Display production lot
PlanningMD20Create planning file entry
MD21Display planning file entry
MDABSet up planning file entry in background
MDRECheck planning file entry
MD01Total planning online
MDBTTotal planning in background
MD03Single-item, single-level planning
MD02Single-item, multi-level planning
MD43Interactive single-item planning
MD50Multi-level, make-to-order planning
MD51Multi-level project planning
MF52Display planning table
MF50Change planning table
MF57Planning table by MRP lists
MF51Planning table by production list
EvaluationsMD04Stock/requirements list
MD07Collective access of stock/requirements lis
MD05MRP list
MD06Collective access of MRP lists
MDLDPrint MRP list
MD45Planning result
MD46Collective access of planning result
MD44Planning situation for a material
MD47Planning situation for a product group
MD48Cross-plant planning situation
MD4COrder report
MD09Pegged requirements
CO46Order progress
Planned OrderMD11Create planned order
MD12Change planned order
MD13Individual access of planned order
MD16Collective access of planned orders
MD14Individual conversion of planned order into
MD15Collective conversion of planned orders int
MDUMConvert planned order into purchase requisi
CO40Convert individual planned order into produ
CO41Collective conversion of planned orders int
CO48Partial conversion of planned order into pr
COR7Individual conversion of planned order into
COR7_PCCollective conversion of planned orders int
COR8Partial conversion of planned order into pr
MDVPCollective availability check
MDACExecute action for planned order
LONG TERM PLANNING
PALNNING SCENARIOMS31CREATE
MS32CHANGE
MS33DISPLAY
PLANNING RUNMS01ON LINE
MSBTSA BACKGROUND JOB
MS02SINGLE ITEM - MULTI LEVEL
MS03SINGLE ITEM - SINGLE LEVEL
MS50SINGLE ITEM - SALES ORDER
MS51SINGLE ITEM PLANNING, PROJECT
MFSOPLANNING TABLE
EVALUTIONSMS05MRP LIST MATERIAL
MS06MRP LIST COLLECTIVE DISPLAY
MSLDPRINT MRP LIST
MS04STOCK/REQUIREMENTS LIST
MS07STOCK/REQUIREMENT LIST COLLECTIVE DISPLAY
MS44PLANNING SITUATION MATERIAL
MS47SITUATION PRODUCT GROUP
MPS-MASTER SCHEDULEITEMS
TOTAL PLANNINGMD40ON LINE
MDBSSA BACKGROUND JOB
MD41SINGLE ITEM - MULTI LEVEL
MD42SINGLE ITEM - SINGLE LEVEL
MD43SINGLE ITEM - INTERACTIVE
MD50SINGLE ITEM - SALES ORDER
MD51SINGLE ITEM PLANNING, PROJECT
*** EVALUTION IS SIMILAR TO MRP
PRODUCTION CONTROL
ORDER - CREATECO01WITH MATERIAL
CO07WITHOUT MATERIAL
CO40FROM PLANNED ORDER
CO41COLLECTIVE CONVERTION OF PLANNED ORDER
CO08FOR SALES ORDER
CO10FOR PROJECT
CO02CHANGE
CO03DISPLAY
CONTROLMD04STOCK/REQUIREMENTS LIST
COHVMASS PROCESSING
COMACCOLLECTIVE AVAILABILITY CHECK
CO05NCOLLECTIVE RELEASE
CO04NPRINT
CO09AVAILABILITY OVER VIEW
GOODS MOVEMENTMF65STOCK TRANSFER FOR RESERVATION
MATERIAL STAGINGMF68LOG
MB1AGOODS ISSUE
MB31GOODS RECEIPT
COWBPACKPACK MATERIAL
CONFIRMATIONCO1VTIME TICKET
FOR OPERATIONCO14DISPLAY
CO13CANCEL
CO1LREQUESTED CONFIRMATIONS
CO1PPREDEFINED PROCESSES
TOOLS-ARCHIVINGCO78ORDER
KOAASETTELMENT DOCUMENTS
CAPACITY PLANNING
EVALUTIONCM01LOAD
WORK CENTER VIEWCM02ORDERS
CM03POOL
CM04BACKLOG
CM05OVERLOAD
CM07VARIABLE
EXTENDED EVALUTIONCM50WORK CENTER VIEW
CM51INDIVIDUAL CAPACITY VIEW
CM52ORDER VIEW
LEVELLINGCM21PLANNING TABLE (GRAPHICAL)
WORK CENTER VIEWCM22PLANNING TABLE (TABULAR)
INDIVIDUAL CAPACITYVCM27PLANNING TABLE (GRAPHICAL)
CM28PLANNING TABLE (TABULAR)
ORDER VIEWCM31PLANNING TABLE (GRAPHIcaL)
CM32PLANNING TABLE (TABULAR)
AVAILABLE CAPACITYCR12CHANGE
CAPACITYCR13DISPLAY
OP4ASHIFT SEQUENCE
OP43FACTORY CALENDER

Profitability Analysis & Profit Center SAP-FICO interview questions and answers

Profitability Analysis

Explain the organizational assignment in the PA module?


The operating Concern is the highest node in Profitability Analysis.
The operating concern is assigned to the Controlling Area.
Within the operating concern all the transactions of Profitability Analysis are stored.
The operating concern is nothing but a nomenclature for defining the highest node in PA.

What is the functionality of the PA module?

PA module is the most important module when it comes to analyzing the results of the organization.
In this module you basically collect the revenues from the sale order , the costs from the production order, cost center or internal order and analyze their results.
The interesting part about this module is that when it collects the costs and revenues it also collects the characteristics associated with the costs and revenues and this is what makes it stand out
So for eg.using PA module you can find out the following:
Profit of a certain product
Profit of a certain product in a certain region
Profit of a certain product in a certain region by a certain customer
Profit of a certain product in a certain region by a certain sales person
And the list can go on in depth
It is one of the most wonderful modules in the SAP
How do you get all those characteristics defined above and how do you analyse them?
To do so while defining Operating concern one has to define Characteristics and Value fields.

What are characteristics and Value Fields?

In the operating concern two things are basically defined
a) Characteristics
b) Value Fields
Characteristics are nothing but those aspects on which we want to break down the profit logically such as customer, region product, product hierarchy, sales person etc
Value Fields are nothing but the values associated with these characteristics
Eg Sales, Raw Material Cost, Labour Cost, Overheads etc
Once you define the characteristics and value fields the values are updated in the table

From where does the characteristics come from?

The characteristics which are defined above basically comes from either the Customer Master or the Material Master.

From where does the values come from into PA?

The Sales Revenue comes from the Condition Type in SD
So for this we need to map the Condition Type in SD to the respective value fields in customizing
The Cost comes from Cost estimates which are transferred using the PA transfer structure which we covered in the Product costing section. The PA transfer structure works on the same lines
The various cost components of the cost component structure is assigned to the value field of PA module and this is how the costs come into PA.
Once the actual revenue and the std cost defined above are captured in PA the variances are also transferred into PA. This way the std cost+variances equal the actual cost.
So actual revenue- actual cost helps us determine the profit.

How do you configure the assignment of variances from product costing to COPA module ?

The variance categories from product costing along with cost element is to be assigned to the value fields in COPA

Once you have captured all the costs and revenues how do you analyze them?

The costs and revenues which we have captured in the above manner are then analysed by writing reports using the Report Painter Functionality in SAP.

What is characteristic Derivation in Profitability Analysis Module ?

Characteristic Derivation is usually used when you want to derive the characteristics . An example of this could be say you want to derive the first two characteristics of product hierarchy.
When this is the case you define characteristic derivation where you maintain the rules which contain the table names of the product hierarchy fields and the number of characters to be extracted and it also specifies the target characteristic field in PA.

What is the basic difference in customizing done in Profitability analysis as compared to other modules?

In COPA when we configure the system i.e. creating operating concern, maintain structures no customizing request is generated. The configuration needs to be transported through a different transaction called as KE3I.

Profit Center

What is the basic purpose of creating a Profit Center?

The basic purpose of creating a Profit Center is to analyse the revenues and costs for a particular product line, or a plant or a business unit. Though you can generate balance sheets and profit and loss accounts per Profit Center still a profit center should basically be used as a tool only for internal reporting purposes.
If legally one has to produce the Balance sheets and Profit and Loss Accounts for a profit center then it is advisable to create it as a company code instead of a profit center

How does the cost and revenue flow to the Profit Center?

The profit center is stored in the cost center this way the costs flow to the profit center.
The profit center is also stored in material master. This way all sales orders created for the finished product automatically picks up the profit center from the material master and all the revenues and costs coming from this sales order for that finished product is passed on to this profit center.
A profit center document is created in addition to the Finance document whenever revenue or consumption takes place. This document contains the details of the profit center.
Once both the costs and revenues flow to the profit center you can write reports using the Report Painter to get intelligent analysis. You can also use SAP standard reports

Statistical key figures are created in the cost center accounting module. Now the same statistical key figures are required in the profit center accounting module. Is it required to maintain the statistical key figure in PCA module?

No. Since the statistical key figures are created in a controlling area. Profit center is a sub module within controlling area. The statistical key figure is created for the controlling area and as such is available in profit center accounting module.

What are the precautions to be taken while maintaining the 3KEH table for profit center accounting?

You should not maintain the customer and vendor reconciliation accounts in the 3KEH table. Further you should also not maintain the special GL accounts in this table. Since we are transferring the customer and vendor balances to profit center module through separate month end programs. If the reconciliation’s accounts are maintained here it will result in double posting in the profit center module.

Should secondary cost elements be maintained in the 3KEH table?

No. Since here we maintain only those accounts for which the value should flow from FI to PCA. Secondary cost elements are already defined in the controlling module which will reflect posting in PCA also

How can the default settings be maintained for cost elements per company code?

The default settings can be maintained in transaction OKB9. Here we can specify for a company code, cost element which is the cost center to be defaulted or whether profitability segment is to be automatically derived. Further we can also maintain whether business area is mandatory or profit center is mandatory and can maintain the default business areas and profit centers.

What are the other important activities in Profit Center?

The assignments of profit center to the cost center and also assignment of profit center to the material master is what will determine the success of the Profit center posting. If these assignments are wrongly done then the profit center postings will not come in properly.

interview question and answers SAP-FICO

Work in Progress

In period 1 there is a WIP posted of 22000 USD in period 2 some further goods issue are done to the extent of 15000 USD . How will system calculate WIP for period 2?

System will post a delta WIP of 15000 USD in period 2.

What is the basic difference in WIP calculation in product cost by order and product cost by period (repetitive manufacturing)?

Generally in product cost by order WIP is calculated at actual costs and in product cost by period WIP is calculated at target costs

What are the configuration settings for calculating WIP in SAP?

You define secondary cost elements of type 31 first.
You need to define the Results Analysis version
This results analysis contains line ids which are basically nothing but break up of costs
Next you define assignments-> here you assign source cost elements to the line ids defined above
You also define the secondary cost elements which are assigned to the line ids.
In the end you define the Finance GL accounts which are debited and credited when a Work in Progress is calculated.
Please refer to the configuration document for more detailed information

Material Ledger

What precautions have to be taken while switching on the material ledger for a plant?


A material ledger once activated for a plant cannot be switched off. Therefore it is important that the material ledger be activated carefully for a plant.

How do you go about configuring material ledger?

The following are the steps:-
1) Activate Valuation Areas for Material Ledger
2) Assign Currency Types to Material Ledger Type
3) Assign Material Ledger Types to Valuation Area
4) Maintain Number Ranges for Material Ledger Documents
5) Activate Actual costing (wheteher activity update relevant for price determination)
6) Activate Actual cost component split
7) Customizing settings in OBYC

What are the problems faced when a material ledger is activated?

When a material ledger is activated it is imperative that actual costing run has to be done every month. Actual costing run needs to be done immediately after the new month roll over. After the actual costing run you cannot post any MM entry to the previous period.

Period End Closing Activities in Controlling:

The following are the period end closing activities in Controlling:
Repost CO Documents that was incorrectly posted
Run Distribution or Assessment Cycles
Run the Overhead Calculation in Product Costing
Run the WIP Calculation in Product Costing
Run the Variance Calculation in Product Costing
Run the Settlement Calculation in Product Costing which will post all the WIP and variance to Finance and PA.
Calculate FI Data for Transfer to Profit Center
Transfer Balance Sheet Items like Recievables, Payables, Assets and Stock
Run Results Analysis for Sales Order if applicable
Run Settlement of Sales Orders to PA.

Product Costing SAP-FICO interview question and answers



Important Terminologies in Product Costing to remember:

Results Analysis Key – This key determines how the Work in Progress is calculated
Cost Components - The break up of the costs which get reflected in the product costing eg. Material Cost, Labour Cost, Overhead etc
Costing Sheets - This is used to calculate the overhead in Controlling
Costing Variant - For All manufactured products the price control recommended is Standard Price. To come up with this standard price for the finished good material this material has to be costed. This is done using Costing Variant. Further questions down below will explain this concept better.


What are the configuration settings maintained in the costing variant ?

Costing variant forms the link between the application and Customizing, since all cost estimates are carried out and saved with reference to a costing variant. The costing variant contains all the control parameters for costing.
The configuration parameters are maintained for costing type, valuation variants, date control, and quantity structure control.
In costing type we specify which field in the material master must the price be updated,
In valuation variant we specify in what order the system should go about accessing prices for the material master (planned price, standard price, moving average price etc). Further which is the price which should be considered for activity price. How the system should select BOM and routing.


How does SAP go about costing a Product having multiple Bill of materials within it?

SAP first cost the lowest level product, arrives at the cost and then goes and cost the next highest level and finally arrives at the cost of the final product.


What does the concept of cost roll up mean in product costing context?

The purpose of the cost roll up is to include the cost of goods manufactured of all materials in a multilevel production structure within the cost of material located at the top of the structure.
The costs are rolled up automatically using the costing levels.
1) The system first calculates the costs for the materials with the lowest costing level and assigns them to cost components.
2) The materials in the next highest costing level (such as semi-finished materials) are then costed. The costs for the materials costed first are rolled up and become part of the material costs of the next highest level.


What is a settlement profile and why is it needed?

All the costs or revenues which are collected in the Production order or Sales order for example have to be settled to a receiver at the end of the period. This receiver could be a a gl account, a cost center, profitability analysis or asset. Also read the question "What is a cost object " in the section Controlling.
In order to settle the costs of the production order or sales order a settlement profile is needed.
In a settlement profile you define a range of control parameters for settlement. You must define the settlement profile before you can enter a settlement rule for a sender.
The Settlement Profile is maintained in the Order Type and defaults during creating of order.
Settlement profile includes:-
1) the retention period for the setttlement documents.
2) Valid receivers GL account, cost center, order, WBS element, fixed asset, material, profitability segment, sales order, cost objects, order items, business process
3) Document type is attached here
4) whether 100% validation, % settlement, equivalence numbers, variances to costing based CO-PA
5) Allocation structure and PA transfer structure is attached to the settlement profile e.g. A1
The settlement profile created is attached to the order type.


What is Transfer or Allocation structure?

The transfer structure is what helps in settling the cost from one cost object to the receiver. It is maintained in the Settlement profile defined above.
The Transfer structure has 2 parts:
a) Source of cost elements you want to settle
b) Target receiver whether it is a Profitability segment or fixed asset or cost center
So basically for settling the costs of a cost object you need to define the Transfer structure where you mention what are the costs you want to settle and the target receiver for that.
This information you fit it in the settlement profile which contains various other paramenters and this settlement profile is defaulted in the Order type. So everytime a order is executed the relevant settlement rule is stored and at the month end by running the transaction of the settlement of orders all the cost is passed on to the receiver
So to put in simple terms:
a) You define your cost object which could be a production order a sales order for eg
b) You collect costs or revenues for it
c) You determine where you want to pass these costs or revenues to for eg if the sales order is the cost object all the costs or revenues of a sales order could be passed to Profitability Analysis


What do you mean by primary cost component split ?

Primary cost split is defined when you create a cost component structure.When you switch on this setting, the primary cost from the cost center are picked up and assigned to the various cost components.


How does primary costs get picked up from cost center into the cost component structure?

This is possible when you do a plan activity price calculation from SAP. The primary cost component structure is assigned to the plan version 0 in Controlling

Is it possible to configure 2 cost component structures for the same product in order to have 2 different views?

Yes it is possible. We create another cost component structure and assign it to the main cost component structure. This cost component structure is called Auxiliary cost component structure which provides another view of the cost component structure.


How do you go about configuring for the sales order costing ?

The flow is as follows:
Sales order -> Requirement Type-􀃆 Requirement Class-> All settings for controlling
In a sales order you have a requirement type .In configuration the requirement Class is attached to the requirement type and in this requirement class all configuration settings are maintained for controlling.
In the requirement class we attach the costing variant, we attach the condition type EK02 where we want the sales order cost to be updated, and the account assignment category. In the account assignment category we define whether the sales order will carry cost or not. In case if we do not want to carry cost on the sales order we keep the consumption posting field blank.
We also define here the Results Analysis version which helps to calculate the Results Analysis for the Sales order if required.

Cost Center Accounting and FI month end closing activities interview question and answers

FI Month End Closing Activities

Define the Month End Closing Activities in Finance

1. Recurring Documents.
a) Create Recurring documents
b) Create Batch Input for Posting Recurring Documents
c) Run the Batch Input Session
2. Posting Accruals or Provisions entries at month end
3. Managing the GR/IR Account-Run the GR/Ir Automatic Clearing
4. Foreign Currency Open Item Revaluation-Revalue Open Items in AR.AP
5. Maintain Exchange Rates
6. Run Balance Sheets –Run Financial Statement Version
7. Reclassify Payables and Receivables if necessary
8. Run the Depreciation Calculation
9. Fiscal Year Change of Asset Accounting if it is year end
10. Run the Bank Reconciliation
11. Open Next Accounting Period
Controlling Module

Explain the organizational assignment in the controlling module?

Company codes are assigned to the controlling area. A controlling area is assigned to the operating concern.
Controlling Area is the umbrella under which all controlling activities of Cost Center Accounting, Product costing, Profitability Analysis and Profit Center are stored.
Operating Concern is the highest node in Profitability Analysis

What is primary Cost element and secondary cost element?

Every Profit and Loss GL account that needs to be controlled has to be defined as a cost element in SAP. Just as in FI General Ledger Accounts exist, in Controlling we have Cost element.
Each FI General Ledger Account which is a Profit and Loss Account is also created as a Cost element in SAP
Primary Cost Elements are those which are created from FI general Ledger Accounts and impact the financial accounts eg. Travelling expenses,consumption account infact any Profit and Loss GL account
Secondary Cost Elements are those which are created only in controlling and does not affect the financials of the company. It is used for internal reporting only. The postings to these accounts do not affect the Profit or Loss of the company.
The following categories exist for secondary cost elements:
21 Internal Settlement:
Cost elements of this category is used to settle order costs to objects in controlling such as cost centers, pa segments etc.
31 Order/Results Analysis:
Used to calculate WIP on the order/project
41 Overhead
Used to calculate indirect costs from cost centers to orders
42. Assessment
Used to calculate costs during assessment
43 Internal Activity Allocation
Used to allocate costs during internal activity allocation such as Machine Labour etc

What are cost objects?

A cost object means a cost or a revenue collector wherein all the costs or revenues are collected for a particular cost object. Examples of this could be cost center, production order, internal order, projects, sales order
So whenever you look at any controlling function the basic thing you need to ask yourself is What is the cost element(expense) I want to control and what is the cost object ( ie either the production order,sales order,internal order) I am using to control this cost element. Sounds confusing read it again it is very simple
Controlling is all about knowing the cost element and the cost object. Every time pose this question to yourself what is the cost element what is the cost object.
At the end of the period all costs or revenues in the cost object are settled to their respective receivers which could be a gl account, a cost center , profitability analysis or asset.
Read this couple of times till you are clear if you are not clear write to me as this is the most important thing in Controlling

Cost Center Accounting:

How is cost center accounting related to profit center?

In the master data of the Cost Center there is a provision to enter the profit center. This way all costs which flow to the cost center are also captured in the profit center.
Cost centers are basically created to capture costs eg admin cost center ,canteen cost center etc
Profit centers are created to capture cost and revenue for a particular plant, business unit or product line.

What is a cost element group?

Cost element group is nothing but a group of cost elements which help one to track and control cost more effectively. You can make as many number of cost element groups as you feel necessary by combining various logical cost elements.

What is a cost center group?

In a similar line the cost center group is also a group of cost centers which help one to track and control the cost of a department more effectively. You can make as many number of cost centers as you feel necessary by combining various logical cost centers
Infact you can use various combinations of cost center group with the cost element group to track and control your costs per department or across departments

What is the difference between Distribution and Assessment?

Distribution uses the original cost element for allocating cost to the sender cost center. Thus on receiving cost center we can see the original cost element from the sender cost center. Distribution only allocates primary cost.
Assessment uses assessment cost element No 43 defined above to allocate cost. Thus various costs are summarized under a single
assessment cost element. In receiver cost center the original cost breakup from sender is not available. Assessment allocates both primary as well as secondary cost.

What are the other activities in Cost center?

If you have a manufacturing set up entering of Activity prices per cost center/activity type is an important exercise undertaken in Cost center accounting.

What is a Activity Type?

Examples of Activity Type could be Machine,Labour Utilities

FI-MM-SD Integration interview question and answers

How do you go about setting the FI MM account determination ?

FI MM settings are maintained in transaction code OBYC. Within these there are various transaction keys to be maintained like BSX,WRX,GBB,PRD etc. In each of these transaction keys you specify the GL accounts which gets automatically passed at the time of entry.
Few examples could be: BSX- Stands for Inventory Posting Debit
GBB-Standsfor Goods Issue/Scrapping/delivery of goods etc
PRD- Stands for Price Differences.
We will give a detailed document on this so that you can go through.

At what level are the FI-MM, FI-SD account determination settings ?

They are at the chart of accounts level.

What are the additional settings required while maintaining or creating the GL codes for Inventory accounts?

In the Inventory GL accounts (Balance sheet) you should switch on the ‘Post automatically only’ tick. It is also advisable to maintain the aforesaid setting for all FI-MM accounts and FI-SD accounts. This helps in preserving the sanctity of those accounts and prevents from having any difference between FI and MM, FI and SD.

How do you configure FI-SD account determination?

The FI-SD account determination happens through an access sequence. The system goes about finding accounts from more specific criteria to less specific criteria.
Thus first it will access and look for the combination of Customer accounts assignment grp/ Material account assignment grp/ Account key. If it does not find account for the first combination it will look for Customer account assignment grp and account key combination. Further if it does not find accounts for the first 2 criterias then it will
look for Material account assignment grp/Account key. If it does not find accounts for the all earlier criterias then finally it will look for Account key and assign the GL code.
Thus posting of Sales Invoices into FI are effected on the basis of a combination of Sales organization, Account type, or Customer and Material Account assignment groups and following are the options available.
a. Customer AAG/Material AAG/Account type
b. Material AAG/Account type
c. Customer AAG/Account type
For each of this option you can define a Gl account. Thus the system uses this gl account to automatically pass the entries.

What is Valuation and Account assignment in SAP?

This is actually the link between Materials Management and Finance.
The valuation in SAP can be at the plant level or the company code level. If you define valuation at the plant level then you can have different prices for the same material in the various plants. If you keep it at the company code level you can have only price. Across all plants.
Valuation also involves the Price Control .Each material is assigned to a material type in Materials Management and every material is valuated either in Moving Average Price or Standard Price in SAP. These are the two types of price control available.

What is Valuation Class?

The Valuation Class in the Accounting 1 View in Material Master is the main link between Material Master and Finance. This Valuation Class along with the combination of the transaction keys (BSX,WRX,GBB,PRD ) defined above determine the GL account during posting.
We can group together different materials with similar properties by valuation class. Eg Raw material,Finsihed Goods, Semi Finished
We can define the following assignments in customizing :
All materials with same material type are assigned to just one valuation class.
Different materials with the same material type can be assigned to different valuation classes.
Materials with different material types are assigned to a single valuation class.

Can we change the valuation class in the material master once it is assigned?

Once a material is assigned to a valuation class in the material master record, we can change it only if the stocks for that material are nil. If the stock exists for that material, then we cannot change the valuation class. In such a case, if the stock exists, we have to transfer the stocks or issue the stocks and make the stock nil for the specific valuation class. Then only we will be able to change the valuation class.

If the material is assigned a moving average price in the material master and the stock of such material is issued, then does the moving average price change in the material master?

The moving average price in the case of goods issue remains unchanged. Goods issue are always valuated at the current moving average price. Consequently, a goods issue reduces the total quantity and the total value in relation to the price and the moving price remains unchanged.

If the answer to the above question is ‘Yes’, then list the scenario in which the moving average price of the material in the material master changes when the goods are issued.

The moving average price in the material master changes in the scenario of Split
Valuation. If the material is subject to split valuation, the material is managed as
Several partial stocks and each partial stock is valuated separately.
In split valuation, the material with valuation header record will have ‘v’ moving average price. This is where the individual stocks of a material are managed cumulatively .Here two valuation types are created, one valuation type can have ‘v’ (MAP) and the other valuation type can have ‘s’(standard price).
In this case, whenever the goods are issued from the respective valuation types, always the MAP for the valuation header changes.

What is the accounting entry in the Financial books of accounts when the goods are received in unrestricted use stock? Also mention the settings to be done in the ‘Automatic postings’ in SAP for the specific G/L accounts.

On receipt of the goods in unrestricted-use stock, the Inventory account is debited and the GR/IR account gets credited.In the customization, in the automatic postings, the Inventory G/L account is assigned to the Transaction event key BSX and the GR/IR account is assigned to the Transaction event key WRX.

If a material has no material code in SAP, can you default the G/L account in Purchase order or it has to be manually entered.

If a material has no material code in SAP, we can still, default the G/L account with the help of material groups. We can assign the valuation class to a material group and then in FI-automatic posting , we can assign the relevant G/L account in the Transaction event key. The assignment of a valuation class to a material group enables the system to determine different G/L accounts for the individual material groups.

What is the procedure in SAP for Initial stock uploading? Mention the accounting entries also.

Initial stock uploading in SAP from the legacy system is done with inventory movement type 561.
Material valuated at standard price : For a material valuated at standard price, the initial entry of inventory data is valuated on the basis
of standard price. If you enter an alternative value at the time of 561, then the system posts the difference to the price difference account.
Material valuated at moving average price : The initial entry of inventory data is valuated as follows : If you enter a value when entering initial data, the quantity entered is valuated at this price. If you do not enter a value when entering initial data, then the quantity entered is valuated at the MAP present in the material master.
The accounting entries are : Inventory account is debited and Inventory Historical upload account is credited.

Fixed Assets and logical invoice verification SAP-FICO interview question and answers

Fixed Assets

What are the organizational assignments in asset accounting?

Chart of depreciation is the highest node in Asset Accounting and this is assigned to the company code.
Under the Chart of depreciation all the depreciation calculations are stored

Explain the importance of asset classes. What asset classes are there?

The asset class is the main criterion for classifying assets. Every asset must be assigned to only one asset class. Examples of asset class are Plant& Machinery, Furniture&Fixtures, Computers etc. The asset class also contains the Gl accounts which is debited when any asset is procured . It also contains the gl accounts for depreciation calculation, scrapping etc
Whenever you create an asset master you need to mention the asset class for which you are creating the required asset. In this manner whenever any asset transaction happens the gl accounts attached to the asset class is automatically picked up and the entry passed.
You can also specify certain control parameters and default values for depreciation calculation and other master data in each asset class.

How are depreciation keys defined?

The specifications and parameters that the system requires to calculate depreciation amounts are entered in Calculation methods. Calculation methods replace the internal calculation key of the depreciation key. Depreciation keys are defaulted in Asset Master from the asset class. Refer to the configuration for more details of how depreciation is calculated.

What steps do you have to take into account to ensure that integration into the general ledger for the depreciation posting run works?

For each depreciation area and company code, specify the following:
􀁹 the frequency of posting depreciation(monthly,quarterly etc)
􀁹 CO account assignment (cost center)
􀂄 For each company code you must define a document type for automatic depreciation posting only: This document type requires its own external number range.
􀂄 You also need to specify the accounts for posting. (Account determination)
􀂄 To ensure consistency between Asset Accounting and Financial Accounting, you must process the batch input session created by the posting report.
If you fail to process the batch input session, an error message will appear at the next posting run. The depreciation calculation is a month end process which is run in batches and then once the batch input is run the system posts the accounting entries into Finance.

How you change fiscal year in Asset Accounting?

􀂄 The fiscal year change program opens new annual value fields for each asset. I e next year
􀁹 The earliest you can start this program is in the last posting period of the current year.
􀁹 You have to run the fiscal year change program for your whole company code.
􀁹 You can only process a fiscal year change in a subsequent year if the previous year has already been closed for business.
Take care not to confuse the fiscal year change program with year-end closing for accounting purposes. This fiscal year change is needed only in Asset Accounting for various technical reasons.

Is it possible to have depreciation calculated to the day?


Yes it is possible. You need to switch on the indicator Dep to the day in the depreciation key configuration.

Is it possible to configure that no capitalization be posted in the subsequent years?

Yes it is possible. You need to set it in the depreciation key configuration.

How are Capital WIP and Assets accounted for in SAP?

Capital WIP is referred to as Assets under Construction in SAP and are represented by a specific Asset class. Usually depreciation is not charged on Capital WIP. All costs incurred on building a capital asset can be booked to an Internal Order and through the settlement procedure can be posted onto an Asset Under Construction. Subsequently on the actual readiness of the asset for commercial production, the Asset Under Construction gets capitalized to an actual asset.

What is the purpose of defining Internal orders.?

Internal Orders are basically used for tracking of costs, which are proposed to be incurred over on a short term basis and time tracking is not of much essence.Eg an Advertisement campaign. Sales Promotion and Exhibition expenses etc.

Logistics Invoice Verification

Can you assign multiple G/L accounts in the Purchase order for the same line item?

Yes, we can assign multiple G/L accounts in the Purchase order for the same line item . The costs can be allocated on a % or quantity basis. If the partial goods receipt and partial invoice receipt has taken place, then the partial invoice amount can be distributed proportionally, i.e. evenly among the account assigned items of a Purchase order or the partial invoice amount can be distributed on a progressive fill-up basis, i.e. the invoiced amount is allocated to the individual account assignment items one after the other.

What is Credit memo and subsequent debit in Logistics Invoice verification?

The term credit memo refers to the credit memo from the vendor. Therefore posting a credit memo always leads to a debit posting on the vendor account. Credit memos are used if the quantity invoiced is higher than the quantity received or if part of the quantity was returned.
Accounting entries are : vendor account is debited and GR/IR account is credited.
Subsequent debit : If a transaction has already been invoiced and additional costs are invoiced later, then subsequent debit is necessary. In this case you can debit the material with additional costs, i.e. GR/IR account debit and Vendor account credit. When entering the Subsequent debit, if there is no sufficient stock coverage, only the portion for the available stock gets posted to the stock account and Rest is posted to the price difference account.

What do you mean by Invoice parking, Invoice saving and Invoice confirmation?

Invoice parking : The functionality wherein we can save the LIV(Logistics Invoice Verification) document as Parked, so that the document gets created in SAP, but its status is Parked.
The advantage is wherein we just want to create this document in database and we are not concerned whether the entries are balanced or not, correct/ incorrect. The accounting document is not created when the invoice is in the Parked mode.
We can later on rectify the Parked invoice.
Invoice saving : This is also called Invoice processing or Invoice posting. The accounting document gets created when the invoice is posted in SAP.
Invoice confirmation : There is no terminology in SAP as Invoice confirmation.

What are Planned delivery costs and Unplanned delivery costs? What is the basis on which the apportionment is done?

Planned delivery costs : are entered at the time of Purchase order. At goods receipt, a provision is posted to the freight or customs clearing account.
e.g. FRE is the account key for freight condition, hence the system can post the freight charges to the relevant freight revenue account and FR3 is the account key for Customs duty, hence the system can post the customs duty to the relevant G/L account.
These account keys are assigned to the specific condition types in the MM Pricing schema.
In terms of Invoice verification : If the freight vendor and the material vendor is the same : then we can choose the option : Goods service items + Planned delivery costs.
If the freight vendor is different from the material vendor : then for crediting only the delivery costs, we can choose the option : Planned delivery costs.
Unplanned delivery costs : are the costs which are not specified in the Purchase order and are only entered when you enter the invoice.
Unplanned delivery costs are either uniformly distributed among the items or posted to a separate G/L account.
For a material subjected to Moving average price, the unplanned delivery costs are posted to the stock account, provided sufficient stock coverage exists.
For a material subjected to Standard price, the unplanned delivery costs are posted to the Price difference account.

SAP-fico Accounts Receivable and Accounts Payable

At what level are the customer and vendor code stored in SAP?

The customer and vendor code are at the client level. That means any company code can use the customer and vendor code by extending the company code view.

How are Vendor Invoice payments made?

Vendor payments can be made in the following manner:
Manual payments without the use of any output medium like cheques etc
Automatic Payment program through cheques, Wire transfers, DME etc.

How do you configure the automatic payment program?

The following are the steps for configuring the automatic payment program:-
Step 1 Set up the following:
Co. code for Payment transaction
Define sending and paying company code.
Tolerance days for payable
Minimum % for cash discount
Maximum cash discount
Special GL transactions to be paid
Step 2 Set up the following:
Paying company code for payment transaction
Minimum amount for outgoing payment
No exchange rate diff
Separate payment for each ref
Bill/exch payment
Form for payment advice
Step 3 Set up the following:
Payment method per country
Whether Outgoing payment
Check or bank transfer or B/E
Whether allowed for personnel payment
Required master data
Doc types
Payment medium programs
Currencies allowed
Step 4 Set up the following:
Payment method per company code for payment transactions
Set up per payment method and co. code
The minimum and maximum amount.
Whether payment per due day
Bank optimization by bank group or by postal code or no optimization
Whether Foreign currency allowed
Customer/Vendor bank abroad allowed
Attach the payment form check
Whether payment advice required
Step 5 Set up the following:
Bank Determination for Payment Transactions
Rank the house banks as per the following
Payment method, currency and give them ranking nos
Set up house bank sub account (GL code)
Available amounts for each bank
House bank, account id, currency, available amount
Value date specification

Where do you attach the check payment form?

It is attached to the payment method per company code.
Payment terms for customer master can be maintained at two places i.e. accounting view and the sales view.

Which is the payment term which actually gets defaulted in transaction?

The payment term in the accounting view of the customer master comes into picture if the transaction originates from the FI module. If an FI invoice is posted (FB70) to the customer, then the payment terms is defaulted from the accounting view of the customer master.
The payment term in the sales view of the customer master comes into picture if the transaction originates from the SD module. A sales order is created in the SD module. The payment terms are defaulted in the sales order from the sales view of the customer master.
Payment terms for vendor master can be maintained at two places i.e. accounting view and the purchasing view.

Which is the payment term which actually gets defaulted in transaction?


The payment term in the accounting view of the vendor master comes into picture if the transaction originates from the FI module. If an FI invoice is posted (FB60) to the Vendor, then the payment terms is defaulted from the accounting view of the vendor master.
The payment term in the purchasing view of the vendor master comes into picture if the transaction originates from the MM module. A purchase order is created in the SD module. The payment terms are defaulted in the purchase order from the purchasing view of the vendor master.

Explain the entire process of Invoice verification from GR to Invoice verification in SAP with accounting entries?

A goods receipt in SAP for purchased material is prepared referring a purchase order.
When goods receipt is posted in SAP the accounting entry passed is:-
Inventory account Debit
GR/IR account credit
A GR/IR (which is Goods receipt/Invoice receipt) is a provision account which provides for the liability for the purchase. The rates for the valuation of the material are picked up from the purchase order.
When the invoice is booked in the system through Logistics invoice verification the entry passed is as follows:-
GR/IR account debit
Vendor credit

How are Tolerances for Invoice verification defined?

The following are instances of tolerances that can be defined for Logistic Invoice Verification.
c. Small Differences
d. Moving Average Price variances
e. Quantity variances
f. Price variances
Based on the client requirement, the transaction can be “Blocked” or Posted with a “Warning” in the event of the Tolerances being exceeded.
Tolerances are nothing but the differences between invoice amount and payment amount or differences between goods receipt amount and invoice amount which is acceptable to the client.

Can we change the reco account in the vendor master? If so, and how? What is the impact on the old balance?

Reconciliation account can be changed in the vendor master provided that authority to change has been configured. Also any change you make to the reconciliation account is prospective and not retrospective. The old items and balances do not reflect the new account only the new transactions reflect the account.

SAP-FICO-gl interview question and answers

Give some examples of GL accounts that should be posted automatically through the system and how is this defined in the system.

Stock and Consumption accounts are instances of GL accounts that should be automatically posted to. In the GL account master record, a check box exists wherein the automatic posting option is selected called " Post Automatically Only"

What is a Account group and where all is it used?

An Account group controls the data that needs to be entered at the time of creation of a master record. Account groups exist for the definition of a GL account, Vendor and Customer master. It basically controls the fields which pop up during master data creation.

What is a field status group?

Field status groups control the fields which come up when the user does the transactions. The options available are one can have the fields only for display or one can suppress it or make it mandatory. So there are three options basically.. The field status group is stored in the FI GL Master

What is the purpose of a "Document type" in SAP?

A Document type is specified at the Header level during transaction entry and serves the following purposes :
It defines the Number range for documents
It controls the type of accounts that can be posted to eg Assets, Vendor, Customer, Normal GL account
Document type to be used for reversal of entries
Whether it can be used only for Batch input sessions

What is a Financial Statement Version?

An FSV(Financial Statement Version) is a reporting tool and can be used to depict the manner in which the final accounts like Profit and Loss Account and Balance Sheet needs to be extracted from SAP. It is freely definable and multiple FSV's can be defined for generating the output for various external agencies like Banks and other Statutory authorities.

How are input and output taxes taken care of in SAP ?

A tax procedure is defined for each country and tax codes are defined within this. There is flexibility to either expense out the Tax amounts or Capitalise the same to Stocks.

What are Validations and Substitutions ?

Validations/Substitutions in SAP are defined for each functional area eg Assets, Controlling etc at the following levels
1. Document level
2. Line item level
These need to be specifically activated and setting them up are complex and done only when it is really needed. Often help of the technical team is taken to do that.

Is it possible to maintain plant wise different GL codes?

The valuation group code should be activated. The valuation grouping code is maintained per plant and is configured in the MM module. Account codes should be maintained per valuation grouping code after doing this configuration.

Is Business area at company code Level?

No. Business area is at client level. Which means other company codes can also post to the same business area.

What are the different scenarios under which a Business Area or a Profit Center may be defined?

This question is usually very disputable. But both Business Areas and Profit centers are created for internal reporting. Each has its own pros and cons but many companies nowdays go for Profit center as there is a feeling that business area enhancements would not be supported by SAP in future versions.
There are typical month end procedures which need to be executed for both of them and many times reconciliation might become a big issue. A typical challenge in both of them is in cases where you do not know the Business Area or Profit Center of the transaction at the time of posting.

What are the problems faced when a Business area is configured?

The problem of splitting of account balance is more pertinent in case of tax accounts. Also SA

Is it possible to default certain values for particular fields?

For e.g. company code.
Yes it is possible to default for certain fields where a parameter id is present. Go to the input field to which you want to make defaults. Press F1, then click technical info push button. This open a window that displays the corresponding parameter id (if one has been allocated to the field) in the field data section. Enter this parameter id using the following path on SAP Easy access screen System 􀃆 User profile 􀃆 Own data. Click on parameter tab. Enter the parameter id code and enter the value you require to default. Save the usersettings.

Which is the default exchange rate type which is picked up for all SAP transactions?

The default exchange rate type picked up for all SAP transactions is M (average rate)

Is it possible to configure the system to pick up a different exchange rate type for a particular transaction ?

Yes it is possible. In the document type definition of GL, you need to attach a different exchange rate type.

What are the Customizing prerequisites for document clearing?

Account must be managed on the open item management. This tick is there in the General Ledger Master Record called Open Item Management. It helps you to manage your accounts in terms of cleared and uncleared items. A typical example would be GR/IR Account in SAP(Goods Received/Invoice Received Account)

Explain the importance of the GR/IR clearing account.

GR/IR is an interim account. In legacy system if the goods are received and the invoice is not received the provision is made, in SAP at the Goods receipt It passes the accounting entry debiting the Inventory and crediting the GR/IR Account .Subsequently when an invoice is recd this GR/IR account is debited and the Vendor account is credited. That way till the time that the invoice is not received the GR/Ir is shown as uncleared items.

How many numbers of line items in one single entry you can have?

No of line items in one document you can accommodate is 999 lines.

In Assignment Field in the Document you get some reference, which comes from where?

This is on the basis of Sort key entered in the master.

How do you maintain the number range in Production environment? By creating in Production or by transport?

Number range is to be created in the production client. You can transport it also by way of request but creating in the production client is more advisable

In customizing " company code productive " means what? What it denotes?

Once the company code is live this check box helps prevent deletion of many programmes accidently. This check box is activated just before go live..

SAP-FICO Enterprise Structure&Bank Accounting interview question and answers

Enterprise Structure:

What are the various organizational assignments to a company code?

Company Code is a legal entity for which financial statements like Profit and Loss and Balance Sheets are generated. Plants are assigned to the company code, Purchasing organization is assigned to the company code, and Sales organization is assigned to the company code.

What is the relation between a Controlling Areas and a Company code?

A Controlling area can have the following 2 type of relationship with a Company code
a. Single Company code relation
b. Cross Company code relation
This means that one single controlling area can be assigned to several different company codes. Controlling can have a one is to one relationship or a one is to many relationship with different company codes.
Controlling Area is the umbrella under which all controlling activities of Cost Center Accounting, Product Costing, Profit Center and Profitability Analysis are stored.
In a similar way Company Codes is the umbrella for Finance activities.

How many Chart of Accounts can a Company code have?

A single Company code can have only one Chart of Account assigned to it. The Chart of Accounts is nothing but the list of General Ledger Accounts.

What are the options in SAP when it comes to Fiscal years?

Fiscal year is nothing but the way financial data is stored in the system. You have 12 periods in SAP and also four special periods. These periods are stored in what is called the fiscal year variant.
There are two types of Fiscal Year Variant
• Calender Year – Jan-Dec, April -March
• Year Dependent Fiscal Year .

What is a year dependent fiscal year variant ?

In a year dependent fiscal year variant the number of days in a month are not as per the calendar month. Let us take an example:- For the year 2005 the period January ends on 29th, Feb ends on 27th, March ends on 29. For the year 2006 January ends on 30th, Feb ends on 26th, March ends on 30th. This is applicable to many countries especially USA. Ever year this fiscal year variant needs to be configured.

How does posting happen in MM (Materials Management) during special periods?

There is no posting which happens from MM in special periods. Special periods are only applicable for the FI module. They are required for making any additional posting such as closing entries, provisions. which happen during quarter end or year end.

How many currencies can be configured for a company code?

A company code can have 3 currencies in total. One which is called the local currency ( ie company code currency) and 2 parallel currencies can be configured.
When you do that the system has the flexibility to report in the different currencies.

Do you require to configure additional ledger for parallel currencies?

In case 2 currencies are configured. (Company code currency and a parallel currency) there is no need for an additional ledger. In case the third parallel currency is configured and is different than the second currency type, you need to configure additional ledger.

If there are two company codes with different chart of accounts how can you consolidate their activities?

In this case you either need to write an ABAP programme or you need to implement the Special Consolidation Module of SAP. If both the company codes use the same chart of accounts then standard SAP reports give you the consolidate figure.

Bank Accounting:

How is Bank Reconciliation handled in SAP?

Initially the payment made to a Vendor is posted to an interim bank clearing account. Subsequently, while performing reconciliation, an entry is posted to the Main Bank account. You can do bank reconciliation either manually or electronically. Refer to the configuration book on Bank accounting for accounting entries.

How do you configure check deposit?

The following are the steps for configuring check deposit:- Step1: Create account symbols for the main bank and incoming check account. Step2: Assign accounts to account symbols Step3: Create keys for posting rules Step4: Define posting rules Step5: Create business transaction and assign posting rule Step6: Define variant for check deposit

What is the clearing basis for check deposit?

In the variant for check deposit we set up the fields document number ( which is the invoice number), amount and short description of the customer. The document number and the invoice amount acts as the clearing basis.

How do you configure manual bank statement?

The following are the steps for configuring manual bank statement:- Step1: Create account symbols for the main bank and the sub accounts Step2: Assign accounts to account symbols Step3: Create keys for posting rules Step4: Define posting rules Step5: Create business transaction and assign posting rule Step6: Define variant for Manual Bank statement

How do you configure Electronic bank statement?

The steps for Electronic Bank Statement are the same except for couple of more additional steps which you will see down below Step1: Create account symbols for the main bank and the sub accounts Step2: Assign accounts to account symbols Step3: Create keys for posting rules Step4: Define posting rules Step5: Create transaction type Step6: Assign external transaction type to posting rules Step7: Assign Bank accounts to Transaction types

c#,vb-part-1 interview question and answers

Explain the differences between Server-side and Client-side code?
Server side code executes on the server.For this to occur page has to be submitted or posted back.Events fired by the controls are executed on the server.Client side code executes in the browser of the client without submitting the page. e.g. In ASP.NET for webcontrols like asp:button the click event of the button is executed on the server hence the event handler for the same in a part of the code-behind (server-side code). Along the server-side code events one can also attach client side events which are executed in the clients browser i.e. javascript events.

How does VB.NET/C# achieve polymorphism?
Polymorphism is also achieved through interfaces. Like abstract classes, interfaces also describe the methods that a class needs to implement. The difference between abstract classes and interfaces is that abstract classes always act as a base class of the related classes in the class hierarchy. For example, consider a hierarchy-car and truck classes derived from four-wheeler class; the classes two-wheeler and four-wheeler derived from an abstract class vehicle. So, the class 'vehicle' is the base class in the class hierarchy. On the other hand dissimilar classes can implement one interface. For example, there is an interface that compares two objects. This interface can be implemented by the classes like box, person and string, which are unrelated to each other.
C# allows multiple interface inheritance. It means that a class can implement more than one interface. The methods declared in an interface are implicitly abstract. If a class implements an interface, it becomes mandatory for the class to override all the methods declared in the interface, otherwise the derived class would become abstract.
Can you explain what inheritance is and an example of when you might use it? The savingaccount class has two data members-accno that stores account number, and trans that keeps track of the number of transactions. We can create an object of savingaccount class as shown below.
savingaccount s = new savingaccount ( "Amar", 5600.00f ) ; From the constructor of savingaccount class we have called the two-argument constructor of the account class using the base keyword and passed the name and balance to this constructor using which the data member's name and balance are initialised.
We can write our own definition of a method that already exists in a base class. This is called method overriding. We have overridden the deposit( ) and withdraw( ) methods in the savingaccount class so that we can make sure that each account maintains a minimum balance of Rs. 500 and the total number of transactions do not exceed 10. From these methods we have called the base class's methods to update the balance using the base keyword. We have also overridden the display( ) method to display additional information, i.e. account number.
Working of currentaccount class is more or less similar to that of savingaccount class. Using the derived class's object, if we call a method that is not overridden in the derived class, the base class method gets executed. Using derived class's object we can call base class's methods, but the reverse is not allowed.
Unlike C++, C# does not support multiple inheritance. So, in C# every class has exactly one base class. Now, suppose we declare reference to the base class and store in it the address of instance of derived class as shown below.
account a1 = new savingaccount ( "Amar", 5600.00f ) ; account a2 = new currentaccount ( "MyCompany Pvt. Ltd.", 126000.00f) ;
Such a situation arises when we have to decide at run-time a method of which class in a class hierarchy should get called. Using a1 and a2, suppose we call the method display( ), ideally the method of derived class should get called. But it is the method of base class that gets called. This is because the compiler considers the type of reference (account in this case) and resolves the method call. So, to call the proper method we must make a small change in our program. We must use the virtual keyword while defining the methods in base class as shown below.
public virtual void display( ) { } We must declare the methods as virtual if they are going to be overridden in derived class. To override a virtual method in derived classes we must use the override keyword as given below.
public override void display( ) { } Now it is ensured that when we call the methods using upcasted reference, it is the derived class's method that would get called. Actually, when we declare a virtual method, while calling it, the compiler considers the contents of the reference rather than its type.
If we don't want to override base class's virtual method, we can declare it with new modifier in derived class. The new modifier indicates that the method is new to this class and is not an override of a base class method.

How would you implement inheritance using VB.NET/C#?
When we set out to implement a class using inheritance, we must first start with an existing class from which we will derive our new subclass. This existing class, or base class, may be part of the .NET system class library framework, it may be part of some other application or .NET assembly, or we may create it as part of our existing application. Once we have a base class, we can then implement one or more subclasses based on that base class. Each of our subclasses will automatically have all of the methods, properties, and events of that base class ? including the implementation behind each method, property, and event. Our subclass can add new methods, properties, and events of its own - extending the original interface with new functionality. Additionally, a subclass can replace the methods and properties of the base class with its own new implementation - effectively overriding the original behavior and replacing it with new behaviors. Essentially inheritance is a way of merging functionality from an existing class into our new subclass. Inheritance also defines rules for how these methods, properties, and events can be merged. In VB.NET we can use implements keyword for inheritance, while in C# we can use the sign ( :: ) between subclass and baseclass.

How is a property designated as read-only? In VB.NET:
Private mPropertyName as DataTypePublic ReadOnly Property PropertyName() As DataType Get Return mPropertyName End GetEnd Property
In C#
Private DataType mPropertyName;public returntype PropertyName{ get{ //property implementation goes here return mPropertyName; } // Do not write the set implementation}

What is hiding in CSharp ?
Hiding is also called as Shadowing. This is the concept of Overriding the methods. It is a concept used in the Object Oriented Programming.
E.g. public class ClassA { public virtual void MethodA() { Trace.WriteLine("ClassA Method"); }}
public class ClassB : ClassA { public new void MethodA() { Trace.WriteLine("SubClass ClassB Method"); }}
public class TopLevel { static void Main(string[] args) { TextWriter tw = Console.Out; Trace.Listeners.Add(new TextWriterTraceListener(tw)); ClassA obj = new ClassB(); obj.MethodA(); // Outputs “Class A Method" ClassB obj1 = new ClassB(); obj.MethodA(); // Outputs “SubClass ClassB Method” }}

What is the difference between an XML "Fragment" and an XML "Document."
An XML fragment is an XML document with no single top-level root element. To put it simple it is a part (fragment) of a well-formed xml document. (node) Where as a well-formed xml document must have only one root element.

What does it meant to say “the canonical” form of XML?
"The purpose of Canonical XML is to define a standard format for an XML document. Canonical XML is a very strict XML syntax, which lets documents in canonical XML be compared directly. Using this strict syntax makes it easier to see whether two XML documents are the same. For example, a section of text in one document might read Black & White, whereas the same section of text might read Black & White in another document, and even in another. If you compare those three documents byte by byte, they'll be different. But if you write them all in canonical XML, which specifies every aspect of the syntax you can use, these three documents would all have the same version of this text (which would be Black & White) and could be compared without problem. This Comparison is especially critical when xml documents are digitally signed. The digital signal may be interpreted in different way and the document may be rejected.

Why is the XML InfoSet specification different from the Xml DOM?
What does the InfoSet attempt to solve? "The XML Information Set (Infoset) defines a data model for XML. The Infoset describes the abstract representation of an XML Document. Infoset is the generalized representation of the XML Document, which is primarily meant to act as a set of definitions used by XML technologies to formally describe what parts of an XML document they operate upon. The Document Object Model (DOM) is one technology for representing an XML Document in memory and to programmatically read, modify and manipulate a xml document. Infoset helps defining generalized standards on how to use XML that is not dependent or tied to a particular XML specification or API. The Infoset tells us what part of XML Document should be considered as significant information.

Contrast DTDs versus XSDs. What are their similarities and differences? Which is preferred and why?
Document Type Definition (DTD) describes a model or set of rules for an XML document. XML Schema Definition (XSD) also describes the structure of an XML document but XSDs are much more powerful. The disadvantage with the Document Type Definition is it doesn’t support data types beyond the basic 10 primitive types. It cannot properly define the type of data contained by the tag. An Xml Schema provides an Object Oriented approach to defining the format of an xml document. The Xml schema support most basic programming types like integer, byte, string, float etc., We can also define complex types of our own which can be used to define a xml document. Xml Schemas are always preferred over DTDs as a document can be more precisely defined using the XML Schemas because of its rich support for data representation.

Speaking of Boolean data types, what's different between C# and C/C++?
There's no conversion between 0 and false, as well as any other number and true, like in C/C++.

How do you convert a string into an integer in .NET?
Int32.Parse(string)

Can you declare a C++ type destructor in C# like ~MyClass()?
Yes, but what's the point, since it will call Finalize(), and Finalize() has no guarantees when the memory will be cleaned up, plus, it introduces additional load on the garbage collector.

What's different about namespace declaration when comparing that to package declaration in Java?
No semicolon.

What's the difference between const and readonly?
The readonly keyword is different from the const keyword. A const field can only be initialized at the declaration of the field. A readonly field can be initialized either at the declaration or in a constructor. Therefore, readonly fields can have different values depending on the constructor used. Also, while a const field is a compile-time constant, the readonly field can be used for runtime constants as in the following example:public static readonly uint l1 = (uint) DateTime.Now.Ticks;

What does \a character do?
On most systems, produces a rather annoying beep.

Can you create enumerated data types in C#?
Yes.

What's different about switch statements in C#?
No fall-throughs allowed.

What happens when you encounter a continue statement inside the for loop?
The code for the rest of the loop is ignored, the control is transferred back to the beginning of the loop.

How can you sort the elements of the array in descending order?
By calling Sort() and then Reverse() methods.

Will finally block get executed if the exception had not occurred?
Yes.

What's the C# equivalent of C++ catch (…), which was a catch-all statement for any possible exception?
A catch block that catches the exception of type System.Exception. You can also omit the parameter data type in this case and just write catch {}.

Can multiple catch blocks be executed?
No, once the proper catch code fires off, the control is transferred to the finally block (if there are any), and then whatever follows the finally block.

Why is it a bad idea to throw your own exceptions?
Well, if at that point you know that an error has occurred, then why not write the proper code to handle that error instead of passing a new Exception object to the catch block? Throwing your own exceptions signifies some design flaws in the project.

What's the difference between // comments, /* */ comments and /// comments?
Single-line, multi-line and XML documentation comments.

How do you generate documentation from the C# file commented properly with a command-line compiler?
Compile it with a /doc switch.

part-IV ASP DOT NET interview question and answers

Where do you add an event handler?
It's the Attributesproperty, the Add function inside that property. e.g. btnSubmit.Attributes.Add("onMouseOver","someClientCode();")

What data type does the RangeValidator control support?
Integer,String and Date.

What are the different types of caching?
Caching is a technique widely used in computing to increase performance by keeping frequently accessed or expensive data in memory. In context of web application, caching is used to retain the pages or data across HTTP requests and reuse them without the expense of recreating them. ASP.NET has 3 kinds of caching strategies Output Caching, Fragment Caching, Data Caching.
Output Caching: Caches the dynamic output generated by a request. Some times it is useful to cache the output of a website even for a minute, which will result in a better performance. For caching the whole page the page should have OutputCache directive.<%@ OutputCache Duration="60" VaryByParam="state" %>
Fragment Caching: Caches the portion of the page generated by the request. Some times it is not practical to cache the entire page, in such cases we can cache a portion of page<%@ OutputCache Duration="120" VaryByParam="CategoryID;SelectedID"%>
Data Caching: Caches the objects programmatically. For data caching asp.net provides a cache object for eg: cache["States"] = dsStates;

What do you mean by authentication and authorization?
Authentication is the process of validating a user on the credentials (username and password) and authorization performs after authentication. After Authentication a user will be verified for performing the various tasks, Its access is limited it is known as authorization.

What are different types of directives in .NET?
@Page: Defines page-specific attributes used by the ASP.NET page parser and compiler. Can be included only in .aspx files <%@ Page AspCompat="TRUE" language="C#" %>
@Control:Defines control-specific attributes used by the ASP.NET page parser and compiler. Can be included only in .ascx files. <%@ Control Language="VB" EnableViewState="false" %>
@Import: Explicitly imports a namespace into a page or user control. The Import directive cannot have more than one namespace attribute. To import multiple namespaces, use multiple @Import directives. <% @ Import Namespace="System.web" %>
@Implements: Indicates that the current page or user control implements the specified .NET framework interface.<%@ Implements Interface="System.Web.UI.IPostBackEventHandler" %>
@Register: Associates aliases with namespaces and class names for concise notation in custom server control syntax.<%@ Register Tagprefix="Acme" Tagname="AdRotator" Src="AdRotator.ascx" %>
@Assembly: Links an assembly to the current page during compilation, making all the assembly's classes and interfaces available for use on the page. <%@ Assembly Name="MyAssembly" %> <%@Assembly Src="MySource.vb" %>
@OutputCache: Declaratively controls the output caching policies of an ASP.NET page or a user control contained in a page<%@ OutputCache Duration="#ofseconds" Location="Any Client Downstream Server None" Shared="True False" VaryByControl="controlname" VaryByCustom="browser customstring" VaryByHeader="headers" VaryByParam="parametername" %>
@Reference: Declaratively indicates that another user control or page source file should be dynamically compiled and linked against the page in which this directive is declared.

How do I debug an ASP.NET application that wasn't written with Visual Studio.NET and that doesn't use code-behind?
Start the DbgClr debugger that comes with the .NET Framework SDK, open the file containing the code you want to debug, and set your breakpoints. Start the ASP.NET application. Go back to DbgClr, choose Debug Processes from the Tools menu, and select aspnet_wp.exe from the list of processes. (If aspnet_wp.exe doesn't appear in the list,check the "Show system processes" box.) Click the Attach button to attach to aspnet_wp.exe and begin debugging.Be sure to enable debugging in the ASPX file before debugging it with DbgClr. You can enable tell ASP.NET to build debug executables by placing a<%@ Page Debug="true" %> statement at the top of an ASPX file or a <COMPILATION debug="true" />statement in a Web.config file.

Can a user browsing my Web site read my Web.config or Global.asax files?
No. The <HTTPHANDLERS>section of Machine.config, which holds the master configuration settings for ASP.NET, contains entries that map ASAX files, CONFIG files, and selected other file types to an HTTP handler named HttpForbiddenHandler, which fails attempts to retrieve the associated file. You can modify it by editing Machine.config or including an section in a local Web.config file.

What's the difference between Page.RegisterClientScriptBlock and Page.RegisterStartupScript?
RegisterClientScriptBlock is for returning blocks of client-side script containing functions. RegisterStartupScript is for returning blocks of client-script not packaged in functions-in other words, code that's to execute when the page is loaded. The latter positions script blocks near the end of the document so elements on the page that the script interacts are loaded before the script runs.<%@ Reference Control="MyControl.ascx" %>

Is it necessary to lock application state before accessing it?
Only if you're performing a multistep update and want the update to be treated as an atomic operation. Here's an example: Application.Lock (); Application["ItemsSold"] = (int) Application["ItemsSold"] + 1; Application["ItemsLeft"] = (int) Application["ItemsLeft"] - 1; Application.UnLock ();
By locking application state before updating it and unlocking it afterwards, you ensure that another request being processed on another thread doesn't read application state at exactly the wrong time and see an inconsistent view of it. If I update session state, should I lock it, too? Are concurrent accesses by multiple requests executing on multiple threads a concern with session state? Concurrent accesses aren't an issue with session state, for two reasons. One, it's unlikely that two requests from the same user will overlap. Two, if they do overlap, ASP.NET locks down session state during request processing so that two threads can't touch it at once. Session state is locked down when the HttpApplication instance that's processing the request fires an AcquireRequestState event and unlocked when it fires a ReleaseRequestState event.
Do ASP.NET forms authentication cookies provide any protection against replay attacks? Do they, for example, include the client's IP address or anything else that would distinguish the real client from an attacker?No. If an authentication cookie is stolen, it can be used by an attacker. It's up to you to prevent this from happening by using an encrypted communications channel (HTTPS). Authentication cookies issued as session cookies, do, however,include a time-out valid that limits their lifetime. So a stolen session cookie can only be used in replay attacks as long as the ticket inside the cookie is valid. The default time-out interval is 30 minutes.You can change that by modifying the timeout attribute accompanying the <forms> element in Machine.config or a local Web.config file. Persistent authentication cookies do not time-out and therefore are a more serious security threat if stolen.

How do I send e-mail from an ASP.NET application?
MailMessage message = new MailMessage (); message.From = <email>; message.To = <email>; message.Subject = "Scheduled Power Outage"; message.Body = "Our servers will be down tonight."; SmtpMail.SmtpServer = "localhost"; SmtpMail.Send (message);
MailMessage and SmtpMail are classes defined in the .NET Framework Class Library's System.Web.Mail namespace. Due to a security change made to ASP.NET just before it shipped, you need to set SmtpMail's SmtpServer property to "localhost" even though "localhost" is the default. In addition, you must use the IIS configuration applet to enable localhost (127.0.0.1) to relay messages through the local SMTP service.

What are VSDISCO files?
VSDISCO files are DISCO files that support dynamic discovery of Web services. If you place the following VSDISCO file in a directory on your Web server, for example, it returns references to all ASMX and DISCO files in the host directory and any subdirectories not noted in <exclude> elements:
<?xml version="1.0" ?> <dynamicDiscovery xmlns="urn:schemas-dynamicdiscovery:disco.2000-03-17"> <exclude path="_vti_cnf" /> <exclude path="_vti_pvt" /> <exclude path="_vti_log" /> <exclude path="_vti_script" /> <exclude path="_vti_txt" /> </dynamicDiscovery>

How does dynamic discovery work?
ASP.NET maps the file name extension VSDISCO to an HTTP handler that scans the host directory and subdirectories for ASMX and DISCO files and returns a dynamically generated DISCO document. A client who requests a VSDISCO file gets back what appears to be a static DISCO document.Note that VSDISCO files are disabled in the release version of ASP.NET. You can reenable them by uncommenting the line in the <httpHandlers> section of Machine.config that maps *.vsdisco to System.Web.Services.Discovery.DiscoveryRequestHandler and granting the ASPNET user account permission to read the IIS metabase. However, Microsoft is actively discouraging the use of VSDISCO files because they could represent a threat to Web server security.

Is it possible to prevent a browser from caching an ASPX page?
Just call SetNoStore on the HttpCachePolicy object exposed through the Response object's Cache property, as demonstrated here:
<%@ Page Language="C#" %> <html> <body> <% Response.Cache.SetNoStore (); Response.Write (DateTime.Now.ToLongTimeString ()); %> </body> </html>
SetNoStore works by returning a Cache-Control: private, no-store header in the HTTP response. In this example, it prevents caching of a Web page that shows the current time.

What does AspCompat="true" mean and when should I use it?
AspCompat is an aid in migrating ASP pages to ASPX pages. It defaults to false but should be set to true in any ASPX file that creates apartment-threaded COM objects--that is, COM objects registered ThreadingModel=Apartment. That includes all COM objects written with Visual Basic 6.0. AspCompat should also be set to true (regardless of threading model) if the page creates COM objects that access intrinsic ASP objects such as Request and Response. The following directive sets AspCompat to true:
<%@ Page AspCompat="true" %>
Setting AspCompat to true does two things. First, it makes intrinsic ASP objects available to the COM components by placing unmanaged wrappers around the equivalent ASP.NET objects. Second, it improves the performance of calls that the page places to apartment- threaded COM objects by ensuring that the page (actually, the thread that processes the request for the page) and the COM objects it creates share an apartment. AspCompat="true" forces ASP.NET request threads into single-threaded apartments (STAs). If those threads create COM objects marked ThreadingModel=Apartment, then the objects are created in the same STAs as the threads that created them. Without AspCompat="true," request threads run in a multithreaded apartment (MTA) and each call to an STA-based COM object incurs a performance hit when it's marshaled across apartment boundaries.
Do not set AspCompat to true if your page uses no COM objects or if it uses COM objects that don't access ASP intrinsic objects and that are registered ThreadingModel=Free or ThreadingModel=Both.

Explain the differences between Server-side and Client-side code?
Server side scripting means that all the script will be executed by the server and interpreted as needed. ASP doesn't have some of the functionality like sockets, uploading, etc. For these you have to make a custom components usually in VB or VC++. Client side scripting means that the script will be executed immediately in the browser such as form field validation, clock, email validation, etc. Client side scripting is usually done in VBScript or JavaScript. Download time, browser compatibility, and visible code - since JavaScript and VBScript code is included in the HTML page, then anyone can see the code by viewing the page source. Also a possible security hazards for the client computer.

What type of code (server or client) is found in a Code-Behind class?
C#

Should validation (did the user enter a real date) occur server-side or client-side? Why?
Client-side validation because there is no need to request a server side date when you could obtain a date from the client machine.

What are ASP.NET Web Forms? How is this technology different than what is available though ASP?
Web Forms are the heart and soul of ASP.NET. Web Forms are the User Interface (UI) elements that give your Web applications their look and feel. Web Forms are similar to Windows Forms in that they provide properties, methods, and events for the controls that are placed onto them. However, these UI elements render themselves in the appropriate markup language required by the request, e.g. HTML. If you use Microsoft Visual Studio .NET, you will also get the familiar drag-and-drop interface used to create your UI for your Web application.

What is the difference between Server.Transfer and Response.Redirect? Why would I choose one over the other?
In earlier versions of IIS, if we wanted to send a user to a new Web page, the only option we had was Response.Redirect. While this method does accomplish our goal, it has several important drawbacks. The biggest problem is that this method causes each page to be treated as a separate transaction. Besides making it difficult to maintain your transactional integrity, Response.Redirect introduces some additional headaches. First, it prevents good encapsulation of code. Second, you lose access to all of the properties in the Request object. Sure, there are workarounds, but they're difficult. Finally, Response.Redirect necessitates a round trip to the client, which, on high-volume sites, causes scalability problems.As you might suspect, Server.Transfer fixes all of these problems. It does this by performing the transfer on the server without requiring a roundtrip to the client.

How can you provide an alternating color scheme in a Repeater control?
AlternatingItemTemplate Like the ItemTemplate element, but rendered for every other row (alternating items) in the Repeater control. You can specify a different appearance for the AlternatingItemTemplate element by setting its style properties.

Which template must you provide, in order to display data in a Repeater control?
ItemTemplate

What event handlers can I include in Global.asax?
Application_Start,Application_End, Application_AcquireRequestState, Application_AuthenticateRequest, Application_AuthorizeRequest, Application_BeginRequest, Application_Disposed, Application_EndRequest, Application_Error, Application_PostRequestHandlerExecute, Application_PreRequestHandlerExecute, Application_PreSendRequestContent, Application_PreSendRequestHeaders, Application_ReleaseRequestState, Application_ResolveRequestCache, Application_UpdateRequestCache, Session_Start,Session_EndYou can optionally include "On" in any of method names. For example, you can name a BeginRequest event handler.Application_BeginRequest or Application_OnBeginRequest.You can also include event handlers in Global.asax for events fired by custom HTTP modules.Note that not all of the event handlers make sense for Web Services (they're designed for ASP.NET applications in general, whereas .NET XML Web Services are specialized instances of an ASP.NET app). For example, the Application_AuthenticateRequest and Application_AuthorizeRequest events are designed to be used with ASP.NET Forms authentication.

What is different b/w webconfig.xml & Machineconfig.xmlWeb.config & machine.config
both are configuration files.Web.config contains settings specific to an application where as machine.config contains settings to a computer. The Configuration system first searches settings in machine.config file & then looks in application configuration files.Web.config, can appear in multiple directories on an ASP.NET Web application server. Each Web.config file applies configuration settings to its own directory and all child directories below it. There is only Machine.config file on a web server.

If I'm developing an application that must accomodate multiple security levels though secure login and my ASP.NET web appplication is spanned across three web-servers (using round-robbin load balancing) what would be the best approach to maintain login-in state for the users?
Use the state server or store the state in the database. This can be easily done through simple setting change in the web.config. <SESSIONSTATE StateConnectionString="tcpip=127.0.0.1:42424" sqlConnectionString="data source=127.0.0.1; user id=sa; password=" cookieless="false" timeout="30" />
You can specify mode as “stateserver” or “sqlserver”.
Where would you use an iHTTPModule, and what are the limitations of any approach you might take in implementing one"One of ASP.NET's most useful features is the extensibility of the HTTP pipeline, the path that data takes between client and server. You can use them to extend your ASP.NET applications by adding pre- and post-processing to each HTTP request coming into your application. For example, if you wanted custom authentication facilities for your application, the best technique would be to intercept the request when it comes in and process the request in a custom HTTP module.

How do you turn off cookies for one page in your site?
Since no Page Level directive is present, I am afraid that cant be done.

How do you create a permanent cookie?
Permanent cookies are available until a specified expiration date, and are stored on the hard disk.So Set the 'Expires' property any value greater than DataTime.MinValue with respect to the current datetime. If u want the cookie which never expires set its Expires property equal to DateTime.maxValue