Pages

Tuesday, 11 February 2014

Types of ETL Testing

ETL testing is classified into four different sections irrespective of technology or the ETL tools used:

Types of ETL Testing

1. New Data Warehouse Testing
It is built and verified from the scratch. In this case the data input is taken from the customer requirements and different data sources and new data warehouse is build and verified with the help of ETL tools.
Responsibilities:
• Business Analyst gathers and documents the requirements
• Infrastructure people sets up the test environments
• QA Testers develop and then execute the test plans and test scripts
• Developers perform unit tests of each modules
• Database Administrators test for the performance and also for the stress
• Users do functional tests including UAT (User Acceptance Tests)

2. Migration Testing
In this case customer will have an existing data warehouse and ETL performing the job. But customers are looking to bag new tool to improve efficiency. It includes these following steps:

Design and validation test
Setting up the test environment
Executing the validation test (it depends on test design and data migration process)
Reporting the bugs

3. Change RequestIn this case new data is added from various sources to an existing datawarehouse. There might be a condition where customer requireschanging their present business rule or they might integrate new rule.

4. Report TestingThe reports are the end result of Data Warehouse. Reports must be tested by validating data, layout in the report.Reports are an important resource for creatingvital business decisions, from the basic reports to all sorts of drilldown reports that let users slice and filter data the way they need.

There is a great demand for ETL testing training. Many young professionals are intended to optETL testing online training, because they do not have much time to join classroom training. There are several training institutes which are offering ETL testing training. We provide ETL testing online training to the aspirants. After completion of your course you can join as Junior Tester. If you are interested to learn ETL testing, call us today for our free demo classes on ETL testing online training.

SAP BODS INTERVIEW QUATIONS AND ANSWERS

   1. What is the use of BusinessObjects Data Services?

   Answer:
BusinessObjects Data Services provides a graphical interface that allows you to easily create jobs that extract data fromheterogeneous sources, transform that data to meet the business requirements of your organization, and load the data into a single location. 
SAP BODS INTERVIEW QUATIONS AND ANSWERS

Contact us for more details and Session Schedules at:
  IND: +91- 9948030675, 
USA: +1-319-804-4998
Email: info@sryitsolutions.com, 
                                                                Web: http://www.sryitsolutions.com/ 
   2. Define Data Services components.
   Answer:
Data Services includes the following standard components:
  • Designer
  • Repository
  • Job Server
  • Engines
  • Access Server
  • Adapters
  • Real-time Services
  • Address Server
  • Cleansing Packages, Dictionaries, and Directories
  • Management Console
   3. What are the steps included in Data integration process?
    Answer:
  • Stage data in an operational datastore, data warehouse, or data mart.
  • Update staged data in batch or real-time modes.
  • Create a single environment for developing, testing, and deploying the entire data integration platform.
  • Manage a single metadata repository to capture the relationships between different extraction and access methods and provide integrated lineage and impact analysis.
   4. Define the terms Job, Workflow, and Dataflow
   Answer:
  • A job is the smallest unit of work that you can schedule independently for execution.
  • A work flow defines the decision-making process for executing data flows.
  • Data flows extract, transform, and load data. Everything having to do with data, including reading sources, transforming data, and loading targets, occurs inside a data flow.
   5. Arrange these objects in order by their hierarchy: Dataflow, Job, Project, and Workflow.
   Answer
Project, Job, Workflow, Dataflow. 
   6. What are reusable objects in DataServices?
   Answer:
Job, Workflow, Dataflow.
   7. What is a transform?
    Answer:
 A transform enables you to control how datasets change in a dataflow. 
   8. What is a Script?
   Answer:
A script is a single-use object that is used to call functions and assign values in a workflow.
   9. What is a real time Job?    
Answer:
Real-time jobs "extract" data from the body of the real time message received and from any secondary sources used in the job.
  10. What is an Embedded Dataflow?
  Answer:
An Embedded Dataflow is a dataflow that is called from inside another dataflow.
  11. What is the difference between a data store and a database?
  Answer:
A datastore is a connection to a database.
  12. How many types of datastores are present in Data services?
   Answer:
Three.
  • Database Datastores: provide a simple way to import metadata directly froman RDBMS.
  • Application Datastores: let users easily import metadata frommost Enterprise Resource Planning (ERP) systems.
  • Adapter Datastores: can provide access to an application’s data and metadata or just metadata.
  13. What is the use of Compace repository?
   Answer:
Remove redundant and obsolete objects from the repository tables.
  14. What are Memory Datastores?
  Answer:
Data Services also allows you to create a database datastore using Memory as the Database type. Memory Datastores are designed to enhance processing performance of data flows executing in real-time jobs.
  15. What are file formats?
   Answer:
A file format is a set of properties describing the structure of a flat file (ASCII). File formats describe the metadata structure. File format objects can describe files in:
  • Delimited format — Characters such as commas or tabs separate each field.
  • Fixed width format — The column width is specified by the user.
  • SAP ERP and R/3 format.
  16. Which is NOT a datastore type?
  Answer:
 File Format
  17. What is repository? List the types of repositories.
   Answer:
The DataServices repository is a set of tables that holds user-created and predefined system objects, source and target metadata, and transformation rules. There are 3 types of repositories.
  • A local repository
  • A central repository
  • A profiler repository
  18. What is the difference between a Repository and a Datastore?
  Answer:
A Repository is a set of tables that hold system objects, source and target metadata, and transformation rules. A Datastore is an actual connection to a database that holds data.
  19. What is the difference between a Parameter and a Variable?
   Answer:
A Parameter is an expression that passes a piece of information to a work flow, data flow or custom function when it is called in a job. A Variable is a symbolic placeholder for values.
   20. When would you use a global variable instead of a local variable?
   Answer:
  • When the variable will need to be used multiple times within a job.
  • When you want to reduce the development time required for passing values between job components.
  • When you need to create a dependency between job level global variable name and job components.
   21. What is Substitution Parameter?
   Answer:
The Value that is constant in one environment, but may change when a job is migrated to another environment.
   22. List some reasons why a job might fail to execute?
  Answer:
Incorrect syntax, Job Server not running, port numbers for Designer and Job Server not matching.
   23. List factors you consider when determining whether to run work flows or data flows serially or in parallel?
   Answer:

     Consider the following: 
  • Whether or not the flows are independent of each other
  • Whether or not the server can handle the processing requirements of flows running at the same time (in parallel)
   24. What does a lookup function do? How do the different variations of the lookup function differ?
   Answer:
All lookup functions return one row for each row in the source. They differ in how they choose which of several matching rows to return.
   25. List the three types of input formats accepted by the Address Cleanse transform.
   Answer:
Discrete, multiline, and hybrid.
   26. Name the transform that you would use to combine incoming data sets to produce a single output data set with the same schema as the input data sets.
Answer:
The Merge transform.
   27. What are Adapters?
   Answer:
Adapters are additional Java-based programs that can be installed on the job server to provide connectivity to other systems such as Salesforce.com or the JavaMessagingQueue. There is also a Software Development Kit (SDK) to allow customers to create adapters for custom applications.
   28. List the data integrator transforms
   Answer:
  • Data_Transfer
  • Date_Generation
  • Effective_Date
  • Hierarchy_Flattening
  • History_Preserving
  • Key_Generation
  • Map_CDC_Operation
  • Pivot Reverse Pivot
  • Table_Comparison
  • XML_Pipeline
   29. List the Data Quality Transforms
   Answer:
  • Global_Address_Cleanse
  • Data_Cleanse
  • Match
  • Associate
  • Country_id
  • USA_Regulatory_Address_Cleanse
   30. What are Cleansing Packages?
   Answer:
These are packages that enhance the ability of Data Cleanse to accurately process various forms of global data by including language-specific reference data and parsing rules.
   31. What is Data Cleanse?
   Answer:
The Data Cleanse transform identifies and isolates specific parts of mixed data, and standardizes your data based on information stored in the parsing dictionary, business rules defined in the rule file, and expressions defined in the pattern file.
   32. What is the difference between Dictionary and Directory?
   Answer:
Directories provide information on addresses from postal authorities. Dictionary files are used to identify, parse, and standardize data such as names, titles, and firm data.
  33. Give some examples of how data can be enhanced through the data cleanse transform, and describe the benefit of those enhancements.
   Answer:
  • Enhancement Benefit
  • Determine gender distributions and target
  • Gender Codes marketing campaigns
  • Provide fields for improving matching
  • Match Standards results
  34. A project requires the parsing of names into given and family, validating address information, and finding duplicates across several systems. Name the transforms needed and the task they will perform.
   Answer:
  • Data Cleanse: Parse names into given and family.
  • Address Cleanse: Validate address information.
  • Match: Find duplicates.
  35. Describe when to use the USA Regulatory and Global Address Cleanse transforms.
   Answer:
Use the USA Regulatory transform if USPS certification and/or additional options such as DPV and Geocode are required. Global Address Cleanse should be utilized when processing multi-country data.
  36. Give two examples of how the Data Cleanse transform can enhance (append) data.
  Answer:
The Data Cleanse transform can generate name match standards and greetings. It can also assign gender codes and prenames such as Mr. and Mrs.
   37. What are name match standards and how are they used?
   Answer:
Name match standards illustrate the multiple ways a name can be represented.They are used in the match process to greatly increase match results.
  38. What are the different strategies you can use to avoid duplicate rows of data when re-loading a job.
   Answer:
  • Using the auto-correct load option in the target table.
  • Including the Table Comparison transform in the data flow.
  • Designing the data flow to completely replace the target table during each execution.
  • Including a preload SQL statement to execute before the table loads.
  39. What is the use of Auto Correct Load?
   Answer:
It does not allow duplicated data entering into the target table.It works like Type 1 Insert else Update the rows based on Non-matching and matching data respectively.
   40. What is the use of Array fetch size?
   Answer:
Array fetch size indicates the number of rows retrieved in a single request to a source database. The default value is 1000. Higher numbers reduce requests, lowering network traffic, and possibly improve performance. The maximum value is 5000
   41. What are the difference between Row-by-row select and Cached comparison table and sorted input in Table Comparison Tranform?
   Answer:
  • Row-by-row select —look up the target table using SQL every time it receives an input row. This option is best if the target table is large.
  • Cached comparison table — To load the comparison table into memory. This option is best when the table fits into memory and you are comparing the entire target table
  • Sorted input — To read the comparison table in the order of the primary key column(s) using sequential read.This option improves performance because Data Integrator reads the comparison table only once.Add a query between the source and the Table_Comparison transform. Then, from the query’s input schema, drag the primary key columns into the Order By box of the query.
   42. What is the use of using Number of loaders in Target Table?
   Answer:
Number of loaders loading with one loader is known as Single loader Loading. Loading when the number of loaders is greater than one is known as Parallel Loading. The default number of loaders is 1. The maximum number of loaders is 5.
   43. What is the use of Rows per commit?
   Answer:
Specifies the transaction size in number of rows. If set to 1000, Data Integrator sends a commit to the underlying database every 1000 rows.
  44. What is the difference between lookup (), lookup_ext () and lookup_seq ()?
  Answer:
  • lookup() : Briefly, It returns single value based on single condition
  • lookup_ext(): It returns multiple values based on single/multiple condition(s)
  • lookup_seq(): It returns multiple values based on sequence number
  45. What is the use of History preserving transform?
  Answer:
The History_Preserving transform allows you to produce a new row in your target rather than updating an existing row. You can indicate in which columns the transform identifies changes to be preserved. If the value of certain columns change, this transform creates a new row for each row flagged as UPDATE in the input data set.
  46. What is the use of Map-Operation Transfrom?
  Answer:
The Map_Operation transform allows you to change operation codes on data sets to produce the desired output. Operation codes: INSERT UPDATE, DELETE, NORMAL, or DISCARD.
   47. What is Heirarchy Flatenning?
   Answer:
Constructs a complete hierarchy from parent/child relationships, and then produces a description of the hierarchy in vertically or horizontally flattened format.
  • Parent Column, Child Column
  • Parent Attributes, Child Attributes.
   48. What is the use of Case Transform?
   Answer:
Use the Case transform to simplify branch logic in data flows by consolidating case or decision-making logic into one transform. The transformallows you to split a data set into smaller sets based on logical branches.
   49. What must you define in order to audit a data flow?
   Answer:
You must define audit points and audit rules when you want to audit a data flow.
   50. List some factors for PERFORMANCE TUNING in data services?
   Answer:
The following sections describe ways you can adjust Data Integrator performance
  • Source-based performance options
  • Using array fetch size
  • Caching data
  • Join ordering
  • Minimizing extracted data
  • Target-based performance options
  • Loading method and rows per commit
  • Staging tables to speed up auto-correct loads
  • Job design performance options
  • Improving throughput
  • Maximizing the number of pushed-down operations
  • Minimizing data type conversion
  • Minimizing locale conversion
  • Improving Informix repository performance

Monday, 10 February 2014

SAP Modules - Ultimate Guide

A SAP system is divided into modules like MM, SD which maps business process of that particular department or business unit.

SAP Modules - Ultimate Guide


Following is the list of module available in SAP system.
  1. SAP FI Module- FI stands for Financial Accounting
  2. SAP CO Module- CO stands for Controlling
  3. SAP PS Module - and PS is Project Systems
  4. SAP HR Module - HR stands for Human Resources
  5. SAP PM Module - where Plant Maintenance is the PM
  6. SAP MM Module - MM is Materials Management -
  7. SAP QM Module -  QM stands for Quality Management
  8. SAP PP Module - PP  is Production Planning
  9. SAP SD Module - SD is Sales and Distribution
  10. SAP BW Module - where BW stands for Business (Data) Warehouse
  11. SAP  EC Module - where EC stands for Enterprise Controlling
  12. SAP TR Module - where TR stands for Treasury
  13. SAP    IM Module - where IM stands for Investment Management
  14. SAP - IS where IS stands for Industries specific solution
  15. SAP - Basis
  16. SAP - ABAP
  17. SAP - Cross Application Components
  18. SAP - CRM where CRM stands for Customer Relationship Management
  19. SAP - SCM where SCM stands for Supply Chain Management
  20. SAP - PLM where PLM stands for Product LifeCycle Management
  21. SAP - SRM where SRM stands for Supplier Relationship Management
  22. SAP - CS where CS stands for Customer Service
  23. SAP - SEM where SEM stands for STRATEGIC ENTERPRISE MANAGEMENT
  24. SAP - RE where RE stands for Real Estate

Following Video explains why SAP is divided into Modules

Please be patient . Video will load in some time. If you still face issue viewing video clickhere

Video Transcript with Key Takeaways Highlighted:
  • One of the principle reasons why SAP is so popular is that it is very flexible and customizable. It is said that if you have the time and money you can make SAP software to drive your car on autopilot
  • One way to achieve this flexibility is to break SAP system into different Modules like HR, Finance and so on which emulate business processes of that particular department or Business Unit
  • You can integrate one module with other or even third party interfaces.
  • Now depending upon your organization, you can have just module, or a few, or all the modules of SAP implemented. Also you can have integration with Third Party Systems
  • It is also possible to integrate modules from different ERP Vendors. So you can integrate
  • PP Module from SAP ,with HR Module of PeopleSoft
  • The various SAP Modules available are
  • Financial Modules like Financial Accounting , Controlling etc.
  • Logistics Modules like Materials , Sales etc.
  • Human Resource Management Modules. Human Resource Module will emulate HR related business processes like hiring , appraisals , termination etc .
  • Like wise Financial Accounting  which will emulate Finance related business processes and manage financial data likewise
  • Cross Application Modules, which essentially integrate SAP with other software applications
  • For our learning purposes lets focus on SAP HR module. SAP- HR provides comprehensive business processes, which map all HR activities in an enterprise.
  • The various sub modules or functionalities supported by SAP - HR is Recruitment
  • Training & Development, Time Management, Employee Benefits, Payroll, Travel
  • Cost Planning ,Reporting, ESS & MSS
  • We will look into the details of the sub-modules later in the trainings

Introduction to ABAP

BAP stands for - Advanced Business Application Programming.It is  a programming language for developing applications for the SAP R/3 system.

The latest version of ABAP is  called  ABAP Objects and supports object-oriented programming. SAP will run applications written using ABAP/4, the earlier ABAP version, as well as applications using ABAP Objects.

Without further adieu , lets dive into ABAP.

Note, this tutorial will not go into extensive details on ABAP language constructs (which become very boring to read ) but quickly introduce key concepts to get you started so you can focus your attention on more important topics.

Data Types

Syntax to declare a variable in ABAP -
DATA Variable_Name Type Variable_Type
Example:
DATA employee_number Type I.
The following is a list of Data Types supported by ABAP
Data TypeInitial field lengthValid field lengthInitial valueMeaning
Numeric types
I440Integer (whole number)
F880Floating point number
P81 - 160Packed number
Character types
C11 - 65535... 'Text field(alphanumeric characters)
D88'00000000'Date field(Format: YYYYMMDD)
N11 - 65535'0 ... 0'Numeric text field(numeric characters)
T66'000000'Time field(format: HHMMSS)
Hexadecimal type
X11 - 65535X'0 ... 0'Hexadecimal field
Processing Data - Assigning Values
a=16.

move 16 to a.

write a to b.
- Arithmetic Operations
compute a = a*100.

Control Statements

Following control statements can be used - - If ... EndIf Loop
if [not] exp [ and / or [not] exp ].
........
[elseif exp.
.......]
[else.
.......]
Endif.
- Case statement
Case variable.
when value1.
.........
when value2.
.........
[ when others.
.........]
Endcase.
Do.
-While loop

While <logical expression>.
.....
.....
Endwhile.
- Do loop

Do <n> times.
.....
.....
Enddo.

Logical Operator

A list of logical operators
  • GE or >=
  • GT or >
  • LE or <=
  • LT or <
  • EQ or =
  • NE or <>

ABAP/4 Editor

Finally , here is where you will spent most of your time as a developer creating / modifying programs. Transaction SE38
Introduction to ABAP

Friday, 7 February 2014

SAP Organizational Structure

To understand any ERP and its functions, its very important to understand its organizational structure. SAP Organizational structure includes high level hierarchy for an organization.

Contact us for more details and Session Schedules at:
  IND: +91- 9948030675, 
USA: +1-319-804-4998
Email: info@sryitsolutions.com, 

Basic Organizational Structure for SAP FICO is as below:


Operating concern >Controlling area >Company code > Sales Organizations /Plants/ PurchaseOrganizations
SAP Organizational Structure


This is the basic organizational structure in SAP. It is true for FICO as well other modules such as Sales and Distribution (SD), Material Management (MM) and Financial Supply Chain Management (FSCM) as well.



SAP Organizational Structure
Operating Concern is the level where strategic planning designed for the organization. An organization’s strategic planning decided in operating concern. Controlling area gets assigned tooperating concern. Operational concern can be assigned to more then one controlling areas.

Controlling area maintains management accounting. Controlling area in SAP organizational structure is the main entity in controlling organizational structure. Company code gets assigned to controlling area. More then one company codes can use a single controlling area.

Company code is a separate legal entity for legal reporting. Company code is useful for reporting, balance sheet , profit and loss statements and cash flow statements. Plants, sales organizations and purchase organizations gets assigned to Company code.

Sales organization and purchase organizations are under sales and purchase departments simultaneously. Sales organization control sales activities such as sales offices, sales persons, etc. Purchase organization controls activities under purchase planning.Both sales and purchaseorganizations assigned to company codes.

Plants assigned directly to company codes. Plants are assigned to both company codes and sales organizations.

These were the basic structure of SAP Organizational Structure.

Thursday, 6 February 2014

Creation of Chart of Accounts(sap fico)

1. Cost accounting and accounting:

You must assign a Cross-company code cost accounting is possible each company code. Costing uses this chart of accounts, namely, that the accounts of the scheme of operation of the revenue and expense accounts in financial accounting and can be cost or items of income in respect of cost accounting.
If your organization, composed of several company codes (for example, a global company) is different chart of accounts, it should be noted that accounting is only the operating chart of accounts connected. How do you organize your chart of accounts, depending on the level of the hierarchy where you want to implement cost accounting?
There are two basic methods for the organization’s chart of accounts.

Creation of Chart of Accounts(sap fico)


Contact us for more details and Session Schedules at:
  IND: +91- 9948030675, 
USA: +1-319-804-4998
Email: info@sryitsolutions.com, 

Central Organization:
At Group level, a chart of accounts is defined that contains all accounts and can be used by all company codes. This chart of accounts is the Cross-company code cost accounting is possible all company codes. In order to meet the specific needs of the country, you can add an additional graphics (country-specific) List of accounts for each company code.
Advantage:
Cross-company code cost accounting is possible. The consolidated according to the working table of the accounts, the corporate group chart of accounts is carried out. The accountants cannot work with their own specific tables for each country of accounts.
Decentralized organization:
Each company code uses his card country-specific chart of accounts as a function of the accounts. For consolidation, the corporate group chart of accounts in addition to indicate for each company code.
Advantage:
 Accountants can work in their own country-specific tables of accounts. You cannot consolidate data, with the corporate group chart of accounts.
Group management accounts for country –specific Cross Central Group of companies is a corporate code of local needs Distributed Code company accounts for specific corporate group needs of the country.

2. Translating an account:
Use:
In addition to the account number of an account master record in the G / L chart of accounts contains the names of the accounts. The translation function, it is possible to account names G / L for the languages​​you need to translate.
The translation function is particularly useful if you have a chart of accounts with a different company codes that use different languages. Since you have a chart of accounts in a language called the language maintenance, create the account names to be translated into other languages ​​required.
The account name is displayed when the publication of accounts G / L and during the account creation or modification of G / L master records. If the names have been translated, the accountants in different countries to see the name appear in the language in which they are registered in the system. If there is no translation for a particular language not sees your language maintenance when posting to the account.

Use the chart of accounts INT International, which applies to the group of companies. The corporate language is English. The English language is therefore the maintenance of the chart of accounts. They translate the name in German for the German company codes. An employee who accesses German is German; the account name appears in German when making reservations.
3. Change the ' Account List:
If you want changes in the decision-making process of the accounts , consider the following :
Change the language maintenance:
You can change the language maintenance. However, you can only language key to the languages ​​in which it has already been translated to the chart of accounts.
Deleting an account:

You can only delete a chart from the account, if you do not already have this chart of accounts is that you may have created an account G / L accounts for this plan, you have created.

Ab Initio ETL tool Architecture

The Ab Initio is a business intelligence software containing 6 data processing products:

1. Co>Operating system (Co>Op v2.14, 2.15..)
2. The
 Component Library
3. Graphical Development Environment (GDE v1.14, 1.15..)
4. Enterprise Meta>Environment (EME v3.0..)
5. Data Profiler
6. Conduct>IT
Contact us for more details and Session Schedules at:
  IND: +91- 9948030675, 
USA: +1-319-804-4998
Email: info@sryitsolutions.com, 

1. Co>Operating System:
Ab Initio Co>Operating System is a foundation for all Ab Initio applications and provides a base for all Ab Initio processes.
It runs on variety of system environments like AIX, HP-UX, Solaris, Linux, z/OS and Windows.
It provides following features:
·         Manage and run Ab Initio graphs and control the ETL processes
·         Provides Ab Initio extensions to the operating system
·         ETL processes monitoring and debugging
·         Metadata Management by interacting with EME

Ab Initio ETL tool Architecture




2. The Component Library:
 The Ab Initio Component Library is a reusable software module for sorting, data transformation, and high-speed database loading and unloading.
3. Graphical Development Environment:
GDE provides an intuitive graphical interface for editing and executing applications. One can easily drag-and-drop components from library on to a canvas, configure them and connect them into flowcharts.
Ab Initio GDC graph compilation process results in generation of a UNIX shell script which may be executed on a machine where GDE is not installed.
4. Enterprise Meta>Environment:
EME is repository and environment to store and managing metadata. It has ability to store both business and technical metadata.
EME metadata can be accessed from the Ab Initio GDE, web browser or Ab Initio Co>Op command line.
5. Data Profiler:
Data Profiler is an analytical application that can specify data range, scope, distribution, variance and quality. It runs in a graphic environment on top of the Co>Op.
6. Conduct>It:
Conduct>It is a high-volume data processing systems developing tool. It enables combining graphs from GDE with custom scripts and programs from other vendors.
Ab Initio provides both Graphical and command line interface to Conduct>It.