Thursday, November 17, 2011

Resume for 3 years


Narayan
Email: nagella4@gmail.com                                        Mobile: 9016051445
                                                            
Professional Summary:
Having 3+ years of professional software development experience in the areas of Microsoft Business Intelligence (MSBI) and Having Knowledge in Data Warehousing (DW) applications primarily using Microsoft SQL Server 2005/2008 stack.
  • Equal competence Integration Services, Reporting Services and Analysis Services.
  • Hands on experience in Extract, Transform & Load (ETL) development using SQL Server Integration Services (SSIS).
  • Hands on experience in SQL Server Reporting Service (SSRS).
  • Hands on experience in scheduling and deploying reports on report manger.
  • Having knowledge in Dimensional Data Modeling ,Cube development and manipulations  in SQL Server Analysis Services (SSAS).
  • Thorough Knowledge on Data Warehouse concepts like Star Schema, Snow Flake, Dimension and Fact Tables.
  • Highly motivated, quick learner and extremely versatile. Accepts responsibilities and job duties eagerly with minimal supervision required.
  • Implementing and maintaining existing systems. Fixing some of legacy bugs which are client specific (CR’s).
  • Expertised in writing Unit test cases and rendering Unit test results.
  • Good knowledge on Subqueries,Joins,set operations and stored procedures.
  • Hands of experience in creating Jobs, Alerts, SQL Mail Agent, Database Mail and Scheduled DTS and SSIS Packages.
Professional Experience:

·         Working as a Software Developer for CIBER India Pvt Ltd.from Nov-2009 to till date on MSBI Tools.

·         Working as a Software Developer for RAM INFORMATICS from Nov-2007 to Sept-2009 on MSBI Tools.



Educational Qualification:

Bachelor of Science in Electronics from Sri Krishnadevaraya University.

Core Competencies:

Operating System          : Windows Family,
ETL Tool                        : SQL Server Integration Services (SSIS),
Reporting Tool               : SQL Server Reporting Service (SSRS),

Project 1: 
Project Title                : Man Power Mgt System,
Client                           : CIBER,
Role                                       : Team Member,
Duration                      : Nov 09 to till date,

Business Objectives:

 CIBER Data Warehouse acquires data from the various data sources of the company and insert or update data into Data warehouse. This data warehouse allows the Management for effective decision-making and to transform product centric approach to customer centric approach to gain competitive advantage by combining data from different sources. The company has heterogeneous data stores and operational systems supporting its operational infrastructure. The data is being loading from various source systems like People Soft, Pipeline, Recruitment, etc. Then transformed into the data warehouse and is used to generate valuable and intelligent reports. This process will be done by using SQL Server Data warehouse.

Role & Responsibilities:

  • Responsible for getting, understanding the business specs, preparing technical Specs, DTS Packages.
·         Responsible for creating appropriate loaders and relational writes to load the Data from SSIS.
·         Creating jobs for scheduling the SSIS packages.
  • Getting data from different data sources.
  • Using different transformations like excel source, data conversions, lookup, OLEDB command, derived columns, OLEDB destination, etc.
  • Loading these data into data warehouse like sql server.
  • By using these data warehouse, based on client requirement we generate the multilingual reports in SSRS.
  • Identifying of performance bottlenecks, Performance tuning of packages.

Environment : Data Transformation Services (DTS), SQL Server integration Services (SSIS), SQL Reporting Services (SSRS), SQL Server 2005, Windows Server 2000/2003.

Project 2: 
Project Title                : ICICI Prudential Application Mgt System,
Client                           : ICICI Prudential,
Role                                       : Team Member,
Duration                      : Feb 09 to Sept 09,

Business Objectives:

 ICICI Prudential is a joint venture between ICICI Bank and Prudential plc engaged in the business of life insurance in India , Prudential is a leading international financial services group head quartered in the UK... ICICI prudential Data Warehouse acquires data from the various data sources of the company and insert or update data into Data warehouse. The company has heterogeneous data store and operational systems supporting its operational infrastructure. The data is being loading from various source systems like Life Asia (LA), Gold Mine (GM), Agency Management System (AMS), Training Management System (TMS), Pay+, WEGA etc and vice versa. Data is extracted from these sources, transformed and fed into the data warehouse and is used to generate valuable and intelligent reports. Using SSIS to do data extraction, transformation and loading in to the SQL Server Data warehouse.


Role & Responsibilities:

·         Analyzing the requirements and design documents and understanding the functionality of both source and target systems.
·         Designed and developing SSIS packages using different transformations like Conditional Split, Multicast, Union-All, Merge, Merge Join and Derived Column.
·         Created systems for capturing error data in flat file using flat file destination, sending the error data in flat file attached to the corresponding mail ids using Sent Mail Task, and correcting error data.
  • Created Jobs and implemented it, Reconciliation across various source systems.
·         Responsible for creating appropriate loaders and relational writes to load the Data from SSIS.
  • Identifying the bottlenecks (in sources, targets, and packages) and tuning it. 
  • Created simple reports for the end user delivery purpose.

Environment: SQL Server Integration Services (SSIS), Windows Server 2000/2003, SQL Server 2005/2008, SQL Server Reporting Services (SSRS).

Project 3:
  Project Title                 : RAJiv Internet Village (E-seva),
  Client                           : Times NGO,                                                 
  Role                             : Team Member,
  Duration                       : Nov 07 to Jan 09,

Business Objectives:

Govt. of AP aims to make its services affordable, transparent and accessible to the rural population through the rural initiative, launched as the: RAJiv Internet Village Programmed. This is an e-commerce project. Through RIV centers rural people can access all G2C, G2B & B2C services in an integrated manner in order to create better means of livelihood and improve the quality of life. The idea working behind this project is to make some services reasonable, translucent and easy to get to the rural residents. It deals with Electricity Bill Payments, Land Revenue Payments, and Water Taxes, Tax Payments, and BSNL Telephone bill Payments and Many More services.

Role & Responsibilities:

·         Importing Source/Target tables from the respective databases by using Execute Package Task& using Control Tasks in SQL Server 2005 Integration services.
·         Development of packages according to the ETL specifications for the staging area & Warehouse data loading using SQL Server Integration Services & SQL Server 2005.
·         Used transformations like Derive Column, Conditional Split, Aggregate, Row Count, and sort and execute SQL Task to load data into Data Warehouse.
  • Created Event Handlers to Handling Errors and Debugging for the Packages.
  • Created Jobs and implemented it for scheduling the SSIS packages on a daily basis.
  • Implemented unit testing.

Environment: Windows Server 2003, SQL Server Integration Services (SSIS), SQL Server 2005, SQL Server Reporting Services (SSRS).

Sunday, October 30, 2011

Adding cascading parameters to areport


 Adding Cascading Parameters to a Report

SQL Server 2005
Cascading parameters provide a way to filter available values for each parameter in a set of parameters that have a natural relationship. For example, in the AdventureWorks database, each reseller has an address at a specific location in a city (field City). Cities are grouped into states or provinces (fieldStateProvince). States and provinces are grouped into countries or regions (field CountryRegion). Countries or regions are grouped into sales territories (field TerritoryGroup). You can create four cascading parameters for these fields that have a dependent order starting with the broadest category,TerritoryGroup, to the most specific, City.
When cascading parameters appear on a report toolbar, the report reader selects a value from the first parameter, which determines the available values for the next parameter, and so on. In this way, you can filter potentially thousands of choices down to a manageable number for each cascading parameter.
Cascading parameters have an implied order. When you view report parameters in Report Designer, the parameters pane lists the parameters in order. The first parameter in a list is not dependent on any other parameter. The next parameter in the list, if it is used as a cascading parameter, is dependent on the parameter before it. You can reorder parameters with the up and down arrow buttons provided in the report parameters dialog box.
In this lesson, you will add four cascading parameters (TerritoryGroup, CountryRegion, StateProvince, and City) to the Sales Orders report created in the previous tutorial. You will create a dataset for each parameter to populate its available values list. When you create a query with a query parameter for a valid values dataset, a report parameter is automatically created. Because you are creating datasets for the valid values lists from the most general (TerritoryGroup) to the most specific (Cities), you will be creating report parameters in the correct order for dependencies. For the final valid values dataset (Cities), you will learn how to create a report parameter manually and associate it with the corresponding query parameter.
After creating all the datasets, you will modify the default properties for each report parameter, and set the valid values and default values properties to point to the appropriate dataset and field.
Finally, you will modify the original dataset query to include query parameters for each report parameter. When you run the report, you will select values for each cascading parameter in turn, and see the available values for the next parameter list only those values that are valid after the first one is selected.


1.    In SQL Server Business Intelligence Development Studio, open theAdvancedParametersTutorial report server project created in the previous lesson.
2.    In Solution Explorer, double-click on the Resellers Worldwide report. The report opens inLayout view.
3.    Click the Data tab.

1.    From the Dataset drop-down list, click <New Dataset>. The Dataset dialog box opens.
2.    On the Query tab, in the Name text box, type ValidValuesforTerritoryGroup.
3.    Verify that the Data source is Resellers.
4.    Verify that the Command type is Text.
5.    Paste the following query into the query pane.
SELECT distinct [Group] as SalesTerritory
   FROM [AdventureWorks].[Sales].[SalesTerritory]
6.    Click Run (!) to see the result set. The column SalesTerritory appears with three rows: Europe, North America, and Pacific.

1.    From the Dataset drop-down list, click <New Dataset>. The Dataset dialog box opens.
2.    On the Query tab, in the Name text box, type ValidValuesforCountryRegion.
3.    Verify that the Data source is Resellers.
4.    Verify that the Command type is Text.
5.    Paste the following query in the query pane.
SELECT Distinct CR.Name AS CountryRegion
FROM Sales.Store AS S
    JOIN Sales.CustomerAddress AS CA ON CA.CustomerID = S.CustomerID
    JOIN Person.Address AS A ON A.AddressID = CA.AddressID
    JOIN Person.StateProvince SP ON 
        SP.StateProvinceID = A.StateProvinceID
    JOIN Person.CountryRegion CR ON 
        CR.CountryRegionCode = SP.CountryRegionCode
    JOIN Sales.Customer C on S.CustomerID = C.CustomerID
    JOIN Sales.SalesTerritory T on C.TerritoryID = T.TerritoryID
WHERE (T.[Group] = (@TerritoryGroup))
Order by CR.Name
6.    Click Run (!). The Define Query Parameters dialog box opens.
7.    Type Pacific.
The result set appears with the CountryRegion column and one row with the value Australia.
When you define a query parameter called @TerritoryGroup, a new report parameter calledTerritoryGroup is created.
8.    (Optional) Next to the Dataset drop-down list, click the Edit Selected Dataset () button and then the Parameters tab. Verify that the query parameter @TerritoryGroup is bound to the value of the report parameter TerritoryGroup (=Parameters!TerritoryGroup.Value).

1.    From the Dataset drop-down list, click <New Dataset>. The Dataset dialog box opens.
2.    On the Query tab, in the Name field, type ValidValuesforStateProvince.
3.    Verify that the Data source is Resellers.
4.    Verify that the Command type is Text.
5.    Paste the following query in the query pane.
SELECT Distinct SP.Name AS StateProvince
FROM Sales.Store AS S
    JOIN Sales.CustomerAddress AS CA ON CA.CustomerID = S.CustomerID
    JOIN Person.Address AS A ON A.AddressID = CA.AddressID
    JOIN Person.StateProvince SP ON 
        SP.StateProvinceID = A.StateProvinceID
    JOIN Person.CountryRegion CR ON 
        CR.CountryRegionCode = SP.CountryRegionCode
WHERE (CR.Name = @CountryRegion)
Order by SP.Name
6.    Click Run (!) to see the result set. The Define Query Parameters dialog box opens.
7.    In the Parameter Value text box, type Australia. Click OK.
The column StateProvince appears with four rows: New South Wales, Queensland, South Australia, and Victoria.

1.    From the Dataset drop-down list, click <New Dataset>. The Dataset dialog box opens.
2.    On the Query tab, in the Name field, type ValidValuesforCity.
3.    Verify that the Data source is Resellers.
4.    Verify that the Command type is Text.
5.    Paste the following query in the query pane.
SELECT Distinct A.City 
FROM Sales.Store AS S
    JOIN Sales.CustomerAddress AS CA ON CA.CustomerID = S.CustomerID
    JOIN Person.Address AS A ON A.AddressID = CA.AddressID
    JOIN Person.StateProvince SP ON 
        SP.StateProvinceID = A.StateProvinceID
    JOIN Person.CountryRegion CR ON 
        CR.CountryRegionCode = SP.CountryRegionCode
    JOIN Sales.Customer C on S.CustomerID = C.CustomerID
    JOIN Sales.SalesTerritory T on C.TerritoryID = T.TerritoryID
WHERE (
    T.[Group] = (@TerritoryGroup) AND
    CR.[Name] = (@CountryRegion) AND
    SP.[Name] = (@StateProvince)
    )
Order by A.City
6.    Click Run (!) to see the result set. The Define Query Parameters dialog box opens.
7.    In the Parameter Value text box, type a value for each query parameter using the table below.
Parameter Name
Parameter Value
@TerritoryGroup
Pacific
@CountryRegion
Australia
@StateProvince
Victoria
  1. Click OK. 
    The column City appears with three rows: Melbourne, Seaford, and South Melbourne.
You have now created four cascading parameters. Next, you will edit the properties of the report parameters that have been created that correspond to the query parameters. You will set each parameter to use the appropriate dataset for retrieving the set of available values.

1.    On the Report menu, click Report Parameters. The Report Parameters dialog box opens showing TerritoryGroup selected in the Parameters pane.
2.    Verify that the Data type is String.
3.    In the Prompt text box, type Select a Territory Group:.
4.    Verify that all check boxes are unselected.
5.    In the Available values section, select From query.
6.    From the Dataset drop-down list, select ValidValuesforTerritoryGroup.
7.    On the Value field drop-down list, select SalesTerritory.
8.    On the Label field drop-down list, select SalesTerritory.
9.    In the Default values section, select Non-queried.
10. In the text box, type North America.
You can set a default value to a specific value or to default values from a dataset field. Because this parameter is type String, you can enter the value directly in the text box. For other data types, you would type an expression beginning with an equal sign (=).
11. Click OK.
12. (Optional) Click the Preview tab. The TerritoryGroup parameter appears with the default value Europe and the valid values from the SalesTerritory field from the ValidValuesforTerritoryGroup dataset.
No changes in report data will be seen until you change the Resellers dataset query in the final procedure in this lesson.

1.    On the Report menu, click Report Parameters. The Report Parameters dialog box opens.
2.    In the Parameters pane, select CountryRegion.
3.    Verify that the Data type is String.
4.    In the Prompt text box, type Select a Country/Region:.
5.    Verify that all check boxes are unselected.
6.    In the Available values section, select From query.
7.    From the Dataset drop-down list, select ValidValuesforCountryRegion.
8.    On the Value field drop-down list, select CountryRegion.
9.    On the Label field drop-down list, select CountryRegion.
10. In the Default values section, select From query.
11. On the Dataset drop-down list, select ValidValuesforCountryRegion.
12. On the Value field drop-down list, select CountryRegion.
13. Click OK.
14. (Optional) Click the Preview tab. Select a value for TerritoryGroup. Select a value for theCountryRegion parameter. Verify that the values you see for CountryRegion are valid for the Territory group you selected.

1.    On the Report menu, click Report Parameters. The Report Parameters dialog box opens.
2.    In the Parameters pane, select StateProvince.
3.    Verify that the Data type is String.
4.    In the Prompt text box, type Select a State/Province:.
5.    Verify that all checkboxes are unselected.
6.    In the Available values section, select From query.
7.    From the Dataset drop-down list, select ValidValuesforStateProvince.
8.    On the Value field drop-down list, select StateProvince.
9.    On the Label field drop-down list, select StateProvince.
10. In the Default values section, select From query.
11. On the Dataset drop-down list, select ValidValuesforStateProvince.
12. On the Value field drop-down list, select StateProvince.
13. Click OK.
14. (Optional) Click the Preview tab. Select a value for TerritoryGroup. Select a value for theCountryRegion parameter. Select a value for the StateProvince parameter. Verify that the values you see for StateProvince are valid for the TerritoryGroup and CountryRegion you selected.

1.    On the Report menu, click Report Parameters. The Report Parameters dialog box opens.
2.    In the Parameters pane, note that there is no report parameter named City.
Report parameters are created automatically when a query that contains parameters is defined for a dataset. None of the dataset queries created so far contain an @City query parameter. You can create a report parameter named City, and when a query is defined that does contain an @City query parameter, the query parameter will be bound automatically to a report parameter if it has a corresponding name (the name without the query parameter designator "@").
3.    Click Add. A report parameter with default properties is created.
4.    In the Properties section, in the Name text box, type City.
5.    Verify that the Data type is String.
6.    In the Prompt text box, type Select a City:.
7.    Verify that all check boxes are unselected.
8.    In the Available values section, select From query.
9.    From the Dataset drop-down list, select ValidValuesforCity.
10. On the Value field drop-down list, select City.
11. On the Label field drop-down list, select City.
12. In the Default values section, select From query.
13. On the Dataset drop-down list, select ValidValuesforCity.
14. On the Value field drop-down list, select City.
15. Click OK.
16. (Optional) Click the Preview tab. Select values for the TerritoryGroup, CountryRegion, andStateProvince parameters. Verify that the parameter values you see for City are valid for the selections you chose.
Up to this point, you have created the cascading parameter values. Now you need to include these values in the dataset query for the table data region, so that the parameters you select are included in the query that retrieves the table data.

1.    In Data view, in the Dataset drop-down list, select Resellers. The original query string created in the previous lesson appears in the query pane.
2.    Replace the text in the query pane with the following query:
SELECT S.CustomerID, SO.SalesOrderNumber, SO.OrderDate, SO.TotalDue,
    S.Name AS Store, A.City, SP.Name AS State, CR.Name
    AS CountryRegion, 
    SC.ContactID As StoreContactID, T.[Group] As TerritoryGroup
FROM Sales.Store AS S
    JOIN Sales.CustomerAddress AS CA ON CA.CustomerID = S.CustomerID
    JOIN Person.Address AS A ON A.AddressID = CA.AddressID
    JOIN Person.StateProvince SP ON 
        SP.StateProvinceID = A.StateProvinceID
    JOIN Person.CountryRegion CR ON 
        CR.CountryRegionCode = SP.CountryRegionCode
    JOIN Sales.SalesOrderHeader AS SO ON 
    S.CustomerID = SO.CustomerID
    JOIN Sales.StoreContact SC ON  S.CustomerID = SC.CustomerID
    JOIN Sales.Customer C on S.CustomerID = C.CustomerID
    JOIN Sales.SalesTerritory T on C.TerritoryID = T.TerritoryID
WHERE(
    (T.[Group] = (@TerritoryGroup))
    AND
    (CR.Name = (@CountryRegion))
     AND
     (SP.Name = (@StateProvince))
    AND
    (A.City = (@City))
   )
ORDER BY S.CustomerID 
The query now includes query parameters that use the report parameter values.
3.    Click Run (!) to see the result set. The Define Query Parameters dialog box opens.
4.    In the Parameter Value column, type a value for each query parameter using the table below.
Parameter Name
Parameter Value
@TerritoryGroup
Pacific
@CountryRegion
Australia
@StateProvince
Victoria
@City
Melbourne
  1. Click OK. 
    The result set contains sales for resellers in the city of Melbourne.
    When you added query parameters to the query definition for the Resellers dataset, they automatically were set to get their values from the corresponding report parameter values. 
  2. (Optional) Next to the Dataset drop-down list, click the Edit Selected Dataset () button and then the Parameters tab. Verify that the query parameters @TerritoryGroup,@CountryRegion, @StateProvince, and @City are bound to the values of the corresponding report parameters.

1.    Click the Layout tab to change to Layout view.
2.    Click in the table so the table handles appear. Click the corner handle of the table to select it. The table appears with a grayed outline.
3.    In the Properties window, find the NoRows property. Paste the following text into the adjacent text box.
There are no resellers in this area.

1.    Click the Layout tab to change to Layout view.
2.    Right-click in the text box that contains the report processing timestamp and selectExpression.
3.    Click the expression (Fx) button next to the Value text box. The Edit Expression dialog box opens. Replace timestamp expression with the following:
="Report Processed Date: " & 
  Globals!ExecutionTime.ToShortDateString() & " " & 
  Globals!ExecutionTime.ToShortTimeString() & vbCrLf & 
  "Sales Territory for: " 
& Parameters!TerritoryGroup.Value & ", " 
& Parameters!CountryRegion.Value & ", "
& Parameters!StateProvince.Value & ", "
& Parameters!City.Value
4.    Click Preview. Try selecting different parameter values. Notice that as you select each successive parameter, the drop-down list of the next parameter shows only the available values based on your selection. The report data does not change even though you are selecting new parameters. To reprocess the report with the newly selected parameters, clickView Report.