Showing posts with label SAP BI INTERVIEW QUESTIONS. Show all posts
Showing posts with label SAP BI INTERVIEW QUESTIONS. Show all posts

SAP BI Inventory Management

By: Raj Kandula and Jitu Krishna
 Source: sdn.sap.com
Hi,
     Few points in Inventory Management.

BW Inventory movement cubes are initialised in two stages.
Firstly you load & compress the initial onhand stocks as of "todays" date;
secondly you load & compress the historic stock movements.
Once that's all done you do your regular delta loads to keep the info up to date.
The Marker is used as a reference point during compression to keep a running
total of what's onhand.
When you initially load "today's" onhands you UNCHECK the "No Marker Update" box, so that the marker records those stock levels.
When you load the historic stock movements you CHECK the "No Marker

Update" box, so that these movements do not affect the marker (as those
movements have already affected the current onhand level).
For the regular delta loads you UNCHECK the the "No Marker Update" box again so that the "future" movements net off the marker as they go.



Marker is used to reduce the time of fetching the non-cummulative key figures while reporting.

Refer
https://www.sdn.sap.com/irj/sdn/thread?messageID=4885115
https://www.sdn.sap.com/irj/sdn/thread?messageID=4764397
https://www.sdn.sap.com/irj/sdn/thread?messageID=4862257
https://www.sdn.sap.com/irj/sdn/thread?messageID=3254753#3254753
https://www.sdn.sap.com/irj/sdn/thread?threadID=422530
Inventory management
https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/documents/a1-8-4/How%20to%20Handle%20Inventory%20Management%20Scenarios.pdf
How to Handle Inventory Management Scenarios in BW (NW2004)
https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/f83be790-0201-0010-4fb0-98bd7c01e328
https://www.sdn.sap.com/irj/sdn/thread?threadID=776637&tstart=0

•• ref.to page 18 in "Upgrade and Migration Aspects for BI in SAP NetWeaver 2004s" paper
http://www.sapfinug.fi/downloads/2007/bi02/BI_upgrade_migration.pdf
Non-Cumulative Values / Stock Handling
https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/93ed1695-0501-0010-b7a9-d4cc4ef26d31
Non-Cumulatives
http://help.sap.com/saphelp_nw2004s/helpdata/en/8f/da1640dc88e769e10000000a155106/frameset.htm
http://help.sap.com/saphelp_nw2004s/helpdata/en/80/1a62ebe07211d2acb80000e829fbfe/frameset.htm
http://help.sap.com/saphelp_nw2004s/helpdata/en/80/1a62f8e07211d2acb80000e829fbfe/frameset.htm
Here you will find all the Inventory Management BI Contents:
http://help.sap.com/saphelp_nw70/helpdata/en/fb/64073c52619459e10000000a114084/frameset.htm

Hope this helps.

By:
Chandiraban singu 
sdn.sap.com

Interviewers and the question will not remain the same, but find the pattern.

Brief of your profile
Brief of what you done in the project
Your challenging and complex situations
Your regularly faced problem and what you did to avoid the same in permanent
interviewers complex situation , recent situation will be posted for your analysis.

Some one may add
Your system landscape
System archiectecture
Release management
Team size, org str,....

If your exp has production support tthen generally about your roles, authorization and commonlly faced errors.
http://www.sdn.sap.com/irj/scn/index?rid=/library/uuid/b0c1d94f-b825-2c10-15ae-ccfc59acb291

About data source enhancement
http://www.sdn.sap.com/irj/scn/index?rid=/library/uuid/00c1f726-1dc2-2c10-f891-ddfbffdb1a46

About data flow during delta
http://www.sdn.sap.com/irj/scn/index?rid=/library/uuid/f03da665-bb6f-2c10-7da7-9e8a6684f2f9


If your exp has implementation.then
Modules which you have implemented.
Methodoloyg adopted
https://weblogs.sdn.sap.com/pub/wlg/13745
Approach to implementation
http://www.sdn.sap.com/irj/scn/weblogs?blog=/pub/wlg/8917
http://www.sdn.sap.com/irj/scn/weblogs?blog=/pub/wlg/8920
Testing system
Business scenario
how did you did data modellling like why std lo datasource? why dso ? why this much layers ?.....
Documentation, how your functionall spec and technical spec template, content, information will be...?

Design a SAP NetWeaver - Based System Landscape
https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/50a9952d-15cc-2a10-84a9-fd9184f35366
https://www.sdn.sap.com/irj/sdn/weblogs?blog=/pub/wlg/8877

BI - Soft yet Hard Challenges
https://www.sdn.sap.com/irj/sdn/weblogs?blog=/pub/wlg/9068

*Best Practice for new BI project *
https://www.sdn.sap.com/irj/sdn/thread?threadID=775458&tstart=0

Guidelines to Make Your BI Implementations Easier
http://www.affine.co.uk/files/Guidelines%20to%20Make%20Your%20BI%20Implementations%20Easier.pdf


Specific bw interview questions

https://www.sdn.sap.com/irj/scn/advancedsearch?query=SAP+BW+INTERVIEW+QUESTIONS&cat=sdn_all
200 BW Questions and Answers for INTERVIEWS
http://sapdocs.info/sap-overview/sap-interview-questions/
http://www.erpmastering.com/bwfaq.htm
http://www.allinterview.com/showanswers/33349.html
http://searchsap.techtarget.com/generic/0,295582,sid21_gci1182832,00.html
http://prasheelk.blogspot.com/2008_05_12_archive.html

Best of luck for your interviews.....Be clear with what you done...
http://saptutions.com/SAPBW/BW_openhub.asp
http://www.scribd.com/doc/6343052/BW-EXAM


 

Frequently used ABAP Programs in SAP BI (NW 2004).


Program name

RSCDS_NULLELIM
Delete fact table rows where all Key Figure values are zero. See Note 619826.
RSDG_CUBE_ACTIVATE
Activation of InfoCubes
RSDG_CUBE_COPY
Make InfoCube Copies
RSDG_CUBE_DELETE
Delete InfoCubes
RSDG_DODS_REPAIR
Activation of all ODS Objects with Navigation Attributes
RSDG_ODSO_ACTIVATE
Activation of all ODS Objects
RSDG_IOBJ_ACTIVATE
Activation of all InfoObjects
RSDG_IOBJ_DELETE
Deletion of InfoObjects
RSDG_IOBJ_REORG
Repair InfoObjects
RSDG_IOBJ_REORG_TEXTS
Reorganization of Texts for InfoObjects
RSDG_MPRO_ACTIVATE
Activating Multiproviders
RSDG_MPRO_COPY
Make Multiprovider Copies
RSDG_MPRO_DELETE
Deleting Multiproviders
RS_COMSTRU_ACTIVATE_ALL
Activate all inactive Communication Structures
RS_TRANSTRU_ACTIVATE_ALL
Activate Transfer Structure
RSAU_UPDR_REACTIVATE_ALL
Activate Update Rules
RRHI_HIERARCHY_ACTIVATE
Activate Hierarchies
SAP_AGGREGATES_ACTIVATE_FILL
Activating and Filling the Aggregates of an InfoCube
SAP_AGGREGATES_DEACTIVATE
Deactivating the Aggregates of an InfoCube
RS_PERS_ACTIVATE
Activating Personalization in Bex(Inactive are highlighted)
RSSM_SET_REPAIR_FULL_FLAG
Convert Full Requests to Repair Full Requests
SAP_INFOCUBE_DESIGNS
Print a List of Cubes in The System and Their Layouts
SAP_ANALYZE_ALL_INFOCUBES
Create DB Statstics for all InfoCubes
SAP_CREATE_E_FACTTABLES
Create Missing E-Fact Tables for InfoCubes and Aggregates
SAP_DROP_EMPTY_FPARTITIONS
Locate/Remove Unused or Empty partitions of F-Fact Table
SAP_DROP_TMPTABLES
Remove Temperory Database Objects
SAP_RSADMIN_MAINTAIN
Add, change, delete RSADMIN table entries
CUBE_SAMPLE_CREATE
A fast way to put some "sample" records in a InfoCube. No need to use Flatfiles,
just enter the value in a ALV-Grid or let fill the Cube with random value.
SAP_CONVERT_NORMAL_TRANS
Convert BasisCube to Transactional Cube and the opposite way around.

Listed below are some of the frequently used Function Modules within BW.

Function Module
Description (Function Group RRMX)
RRMX_WORKBOOK_DELETE
Delete BW Workbooks permanently from Roles & Favourites
RRMX_WORKBOOK_LIST_GET
Get list of all Workbooks
RRMX_WORKBOOK_QUERIES_GET
Get list of queries in a workbook
RRMX_QUERY_WHERE_USED_GET
Lists where a query has been used 
RRMX_JUMP_TARGET_GET
Get list of all Jump Targets
RRMX_JUMP_TARGET_DELETE
Delete Jump Targets
Function Module
Description
MONI_TIME_CONVERT
Used for Time Conversions.
CONVERT_TO_LOCAL_CURRENCY
Convert Foreign Currency to Local Currecny.
CONVERT_TO_FOREIGN_CURRENCY
Convert Local Currency to Foreign Currency.
TERM_TRANSLATE_TO_UPPER_CASE
Used to convert all texts to UPPERCASE
UNIT_CONVERSION_SIMPLE
Used to convert any unit to another unit. (Ref. table : T006)
TZ_GLOBAL_TO_LOCAL
Used to convert timestamp to local time
FISCPER_FROM_CALMONTH_CALC
Convert 0CALMONTH or 0CALDAY to Financial Year or Period
RSAX_BIW_GET_DATA_SIMPLE
Generic Extraction via Function Module
RSAU_READ_MASTER_DATA
Used in Data Transformations to read master data InfoObjects
RSDRI_INFOPROV_READ
RSDRI_INFOPROV_READ_DEMO 
RSDRI_INFOPROV_READ_RFC
Used to read Infocube or ODS data through RFC
DATE_COMPUTE_DAY 
DATE_TO_DAY
Returns a number what day of the week the date falls on.
DATE_GET_WEEK
Will return a week that the day is in.
RP_CALC_DATE_IN_INTERVAL
Add/Subtract Years/Months/Days from a Date.
RP_LAST_DAY_OF_THE_MONTHS 
SLS_MISC_GET_LAST_DAY_OF_MONTH
Determine Last Day of the Month.
RSARCH_DATE_CONVERT
Used for Date Converstions. We can use in Info Package routines.
RSPC_PROCESS_FINISH   
To trigger an event in process chain
 DATE_CONVERT_TO_FACTORYDATE
Returns factory calendar date for a date
 CONVERSION_EXIT_PDATE_OUTPUT
Conversion Exit for Domain GBDAT: YYYYMMDD  -> DD/MM/YYYY
 CONVERSION_EXIT_ALPHA_INPUT
Conversion exit ALPHA, external->internal
CONVERSION_EXIT_ALPHA_OUTPUT
Conversion exit ALPHA, internal->external
 RSPC_PROCESS_FINISH
Finish a process (of a process chain)
RSAOS_METADATA_UPLOAD
Upload of meta data from R/3
RSDMD_DEL_MASTER_DATA
Deletion of master data
RSPC_CHAIN_ACTIVATE_REMOTE
To activate a process chain after transport

                         USEFUL ABAP-CLASS in NW 7 - BI to fix problems with Transformation

Class CL_RSTRAN_STAT
Description
DELETE_VERSION_FROM_DB (Static Method)
For deleting a transformations rule version

SAP BI Interview Questions Cont2....

What is table partition?
A: SAP is using fact table partitioning to improve the performance. you can partition only on 0CALMONTH or 0FISCPER
How would you convert a info package group into a process chain?
A: Double Click on the info package grp, click on the ‘Process Chain Maint’ button and type in the name and descrition ; the individual info packages are inserted automatically.
How do you replace a query result from a master query to a child query?

A: If you select characterstic value with replacement path then it used the results from previuos query; for ex: let us assume that u have query Q1 which displaysthe top 10 customers, we have query Q2 which gets the top 10 customers for info object 0customer with as a vairable with replacement path and display detailed report on the customers list passed from Q1.
What is modeling?
It is an art of designing the data base. The design of DB depends on the schema and the schema is defined as representation of tables and their relationships.
What is an info cube?
Info cube is structured as star schema (extended) where a fact table is surrounded by different dim table that are linked with DIM’ids. And the data wise, you will have aggregated data in the cubes.
What is extended star schema?
In Extended Star Schema, under the BW star schema model, the dimension table does not contain master data. But it is stored externally in the master data tables (texts, attributes, hierarchies).
The characteristic in the dimensional table points to the relevant master data by the use of SID table. The SID table points to characteristics attribute texts and hierarchies.
This multistep navigational task adds extra overhead when executing a query. However the benefit of this model is that all fact tables (info cubes) share common master data tables between several info cubes.
Moreover the SID table concept allows users to implement multi languages and multi hierarchy OLAP environments. And also it supports slowly changing dimension.
delete a BEx query that is in Production system through request.
A) Using the RSZDELETE transaction
How would you optimize the dimensions?
• We should define as many dimensions as possible and we have to take care that no single dimension crosses more than 20% of the fact table size.

What are Conversion Routines for units and currencies in the update rule?

• Using this option we can write ABAP code for Units / Currencies conversion. If we enable this flag then unit of Key Figure appears in the ABAP code as an additional parameter. For example, we can convert units in Pounds to Kilos.
Can an InfoObject be an InfoProvider, how and why?

• Yes, when we want to report on Characteristics or Master Data. We have to right click on the InfoArea and select “Insert characteristic as data target”. For example, we can make 0CUSTOMER as an InfoProvider and report on it.
What is Open Hub Service?
• The Open Hub Service enables us to distribute data from an SAP BW system into external Data Marts, analytical applications, and other applications. We can ensure controlled distribution using several systems. The central object for exporting data is the InfoSpoke. We can define the source and the target object for the data. BW becomes a hub of an enterprise data warehouse. The distribution of data becomes clear through central monitoring from the distribution status in the BW system.
How do you transform Open Hub Data?
• Using BADI we can transform Open Hub Data according to the destination requirement.

What is ODS?

• Operational DataSource is used for detailed storage of data. We can overwrite data in the ODS. The data is stored in transparent tables.
What are BW Statistics and what is its use?

• They are group of Business Content InfoCubes which are used to measure performance for Query and Load Monitoring. It also shows the usage of aggregates, OLAP and Warehouse management.
What are the steps to extract data from R/3?
• Replicate DataSources
• Assign InfoSources
• Maintain Communication Structure and Transfer rules
• Create and InfoPackage
• Load Data
What are the delta options available when you load from flat file?
• The 3 options for Delta Management with Flat Files:
o Full Upload
o New Status for Changed records (ODS Object only)
o Additive Delta (ODS Object & InfoCube)

What are the extractor types?
• Application Specific
o BW Content FI, HR, CO, SAP CRM, LO Cockpit
o Customer-Generated Extractors
LIS, FI-SL, CO-PA
• Cross Application (Generic Extractors)
o DB View, InfoSet, Function Module

What are the steps involved in LO Extraction?
• The steps are:
o RSA5 Select the DataSources
o LBWE Maintain DataSources and Activate Extract Structures
o LBWG Delete Setup Tables
o 0LI*BW Setup tables
o RSA3 Check extraction and the data in Setup tables
o LBWQ Check the extraction queue
o LBWF Log for LO Extract Structures
o RSA7 BW Delta Queue Monitor

How to create a connection with LIS InfoStructures?

• LBW0 Connecting LIS InfoStructures to BW
What is the difference between ODS and InfoCube and MultiProvider?
• ODS: Provides granular data, allows overwrite and data is in transparent tables, ideal for drilldown and RRI.
• CUBE: Follows the star schema, we can only append data, ideal for primary reporting.
• MultiProvider: Does not have physical data. It allows to access data from different InfoProviders (Cube, ODS, InfoObject). It is also preferred for reporting.

What are Start routines, Transfer routines and Update routines?
• Start Routines: The start routine is run for each DataPackage after the data has been written to the PSA and before the transfer rules have been executed. It allows complex computations for a key figure or a characteristic. It has no return value. Its purpose is to execute preliminary calculations and to store them in global DataStructures. This structure or table can be accessed in the other routines. The entire DataPackage in the transfer structure format is used as a parameter for the routine.
• Transfer / Update Routines: They are defined at the InfoObject level. It is like the Start Routine. It is independent of the DataSource. We can use this to define Global Data and Global Checks.

What is the difference between start routine and update routine, when, how and why are they called?
• Start routine can be used to access InfoPackage while update routines are used while updating the Data Targets.
What is Star Schema?

In Star Schema model, Fact table is surrounded by dimensional tables. Fact table is usually very large, that means it contains millions to billions of records. On the other hand dimensional tables are very small. Hence they contain a few thousands to few million records. In practice, Fact table holds transactional data and dimensional table holds master data.
The dimensional tables are specific to a fact table. This means that dimensional tables are not shared to across other fact tables. When other fact table such as a product needs the same product dimension data another dimension table that is specific to a new fact table is needed.
This situation creates data management problems such as master data redundancy because the very same product is duplicated in several dimensional tables instead of sharing from one single master data table. This problem can be solved in extended star schema.

What is slowly changing dimension?
Dimensions those changes with time are called slowly changing dimension.
What is fact table?
Fact table is the collection if facts and relations that means foreign keys with the dimension. Actually fact table holds transactional data.
What is dimension table?
Dimension table is a collection of logically related descriptive attributes that means characteristics.
How many tables does info cube contain?
Actually info cube contains two tables’ E table and F (fact) table.
What is the maximum no. of dimensions in info cube?
16(3 are sap defines and 13 are customer defined)
What are the minimum no of dimensions in info cube?
4(3 Sap defined and 1 customer defined).
What are the 3SAP defined dimensions?
The 3 SAP defined dimensions are…..
1. Data packet dimension (P)…..it contains 3characteristics.a) request Id (b) Record type (c) Change run id
2. Time dimension (T)….it contains time characteristics such as 0calmonth, 0calday etc
3. Unit Dimension (U)…it contains basically amount and quantity related units.

What is the maximum no. of key figures?
233
What is the maximum no. of characteristics?
248
What is the model of the info cube?
Info cube model is extended star schema.
What are the data types for the characteristic info object?
There are 4types:
1. CHAR
2. NUMC
3. DATS
4. TIMS

How you’ll write date in BW?
YYYYMMDD





1. If exclusions exist, make sure they exist in the global filter area. Try to remove exclusions by subtracting out inclusions.
2. Use Constant Selection to ignore filters in order to move more filters to the global filter area. (Use ABAPer to test and validate that this ensures better code)
3. Within structures, make sure the filter order exists with the highest level filter first.
4. Check code for all exit variables used in a report.
5. Move Time restrictions to a global filter whenever possible.
6. Within structures, use user exit variables to calculate things like QTD, YTD. This should generate better code than using overlapping restrictions to achieve the same thing. (Use ABAPer to test and validate that this ensures better code).
7. When queries are written on multiproviders, restrict to InfoProvider in global filter whenever possible. MultiProvider (MultiCube) queries require additional database table joins to read data compared to those queries against standard InfoCubes (InfoProviders), and you should therefore hardcode the infoprovider in the global filter whenever possible to eliminate this problem.
8. Move all global calculated and restricted key figures to local as to analyze any filters that can be removed and moved to the global definition in a query. Then you can change the calculated key figure and go back to utilizing the global calculated key figure if desired
9. If Alternative UOM solution is used, turn off query cache.
10. Set read mode of query based on static or dynamic. Reading data during navigation minimizes the impact on the R/3 database and application server resources because only data that the user requires will be retrieved. For queries involving large hierarchies with many nodes, it would be wise to select Read data during navigation and when expanding the hierarchy option to avoid reading data for the hierarchy nodes that are not expanded. Reserve the Read all data mode for special queries---for instance, when a majority of the users need a given query to slice and dice against all dimensions, or when the data is needed for data mining. This mode places heavy demand on database and memory resources and might impact other SAP BW processes and tasks.
11. Turn off formatting and results rows to minimize Frontend time whenever possible.
12. Check for nested hierarchies. Always a bad idea.
13. If "Display as hierarchy" is being used, look for other options to remove it to increase performance.
14. Use Constant Selection instead of SUMCT and SUMGT within formulas.
15. Do review of order of restrictions in formulas. Do as many restrictions as you can before calculations. Try to avoid calculations before restrictions.
16. Check Sequential vs Parallel read on Multiproviders.
17. Turn off warning messages on queries.
18. Check to see if performance improves by removing text display (Use ABAPer to test and validate that this ensures better code).
19. Check to see where currency conversions are happening if they are used.
20. Check aggregation and exception aggregation on calculated key figures. Before aggregation is generally slower and should not be used unless explicitly needed.
21. Avoid Cell Editor use if at all possible.
22. Make sure queries are regenerated in production using RSRT after changes to statistics, consistency changes, or aggregates.
23. Within the free characteristics, filter on the least granular objects first and make sure those come first in the order.
24. Leverage characteristics or navigational attributes rather than hierarchies. Using a hierarchy requires reading temporary hierarchy tables and creates additional overhead compared to characteristics and navigational attributes. Therefore, characteristics or navigational attributes result in significantly better query performance than hierarchies, especially as the size of the hierarchy (e.g., the number of nodes and levels) and the complexity of the selection criteria increase.
25. If hierarchies are used, minimize the number of nodes to include in the query results. Including all nodes in the query results (even the ones that are not needed or blank) slows down the query processing. The "not assigned" nodes in the hierarchy should be filtered out, and you should use a variable to reduce the number of hierarchy nodes selected.