Click here to Skip to main content
15,892,298 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
See more:
hi all,

my stored procedure is given below
SQL
ALTER PROCEDURE [dbo].[RptExpiryListByItem]
@intFilterType AS INT ,
@strIDs AS VARCHAR(5000),
@dtFromDate AS DateTime,
@dtToDate AS DateTime	
AS
BEGIN
DECLARE @strQuery AS VARCHAR(MAX)
DECLARE @strFilterQuery AS nvarchar(MAX)
Declare @strWhere AS VARCHAR(MAX);	


set @strQuery='SELECT IG.ItemGroupCode,IM.ActualItemCode,IM.ItemDescription,IM.ARBItemDescription, IM.UnitsPerCase,IM.CasePrice,IM.CasePrice /IM.UnitsPerCase 
AS UnitPrice,ID.ReturnQty /IM.UnitsPerCase AS CaseQuantity,DM.DepotName,DM.ArbDepotName,S.SalesmanCode,s.SalesmanName1,s.ArbSalesmanName1,RM.RouteCode,RM.RouteName,RM.ArbRouteName, 
SUM(round(ID.ReturnQty,0)) AS ReturnQty,cast(ID.ReturnPrice as Numeric(13,3))as UnitReturnPrice,cast(ID.ReturnQty*ID.ReturnPrice as Numeric(12,2)) as TotalReturnAmnt,sum(round(ID.ReplacementQty,0))as ReplacementQty
,(ID.ReplacementQty/IM.UnitsPerCase) as [by Case],cast(ID.ReplacementQty*ID.ReplacementPrice as Numeric(12,2))as TotalReplacementAmnt
 from NationalSalesManager NSM inner join 
                      Country C ON NSM.NationalSalesManagerCode = C.NationalSalesManagerCode inner join
                      RegionMaster RMS ON C.CountryCode =RMS.CountryCode inner join
                      RegionManager RMG on RMS.RegionManagerCode=RMG.RegionManagerCode inner join
                      DepotMaster DM on RMS.RegionMstCode =DM.RegionMstCode inner join
                      BranchManager BM on DM.BranchManagerCode=BM.BranchManagerCode inner join
                      AreaMaster AM on DM.DepotCode=AM.DepotCode inner Join
                      AreaManager AMG on AM.AreaManagerCode=AMG.AreaManagerCode inner join
                      SubAreaMaster SAM on AM.AreaCode=SAM.AreaCode inner Join
                      Supervisor SUP on SAM.SupervisorCode=SUP.SupervisorCode inner join
                      RouteMaster RM on SAM.SubAreaCode=RM.SubAreaCode inner join
                      Salesman S on RM.SalesmanCode=S.SalesmanCode inner join
                      InvoiceHeader IH on RM.RouteCode=IH.RouteCode inner join
                      InvoiceDetail ID on IH.TransactionKey=ID.TransactionKey inner join
                      ItemMaster IM on ID.ItemCode=IM.ActualItemCode inner join 
                      ItemGroup IG on IM.ItemGroupCode=IG.ItemGroupCode'
       
IF(@intFilterType = 1) --NationalSalesManager/Country
BEGIN
SET @strFilterQuery =' Where IH.TransactionDate  between '''+  convert(varchar,@dtFromDate) + ''' AND ''' +  convert(varchar,@dtToDate) + '''
AND RMS.RegionMstCode IN (' + @strIDs + ') 
 group by IM.ActualItemCode,IM.ItemDescription,IM.ARBItemDescription,IM.UnitsPerCase,IM.CasePrice,ID.ReturnQty,ID.ReturnPrice,ID.ReplacementQty,ID.ReplacementPrice,DM.DepotName,DM.ArbDepotName
,s.SalesmanCode,s.SalesmanName1,s.ArbSalesmanName1,RM.RouteCode,RM.RouteName,RM.ArbRouteName,IG.ItemGroupCode'
end
IF(@intFilterType = 2) --RegionalManager/RegionMaster
BEGIN
SET @strFilterQuery =' Where IH.TransactionDate  between '''+  convert(varchar,@dtFromDate) + ''' AND ''' +  convert(varchar,@dtToDate) + '''
AND DM.DepotCode IN (' + @strIDs + ') 
 group by IM.ActualItemCode,IM.ItemDescription,IM.ARBItemDescription,IM.UnitsPerCase,IM.CasePrice,ID.ReturnQty,ID.ReturnPrice,ID.ReplacementQty,ID.ReplacementPrice,DM.DepotName,DM.ArbDepotName
,s.SalesmanCode,s.SalesmanName1,s.ArbSalesmanName1,RM.RouteCode,RM.RouteName,RM.ArbRouteName,IG.ItemGroupCode'
end
IF(@intFilterType = 3) --BranchManager/DepotMaster
BEGIN
SET @strFilterQuery =' Where IH.TransactionDate  between '''+  convert(varchar,@dtFromDate) + ''' AND ''' +  convert(varchar,@dtToDate) + '''
AND AM.AreaCode IN (' + @strIDs + ') 
 group by IM.ActualItemCode,IM.ItemDescription,IM.ARBItemDescription,IM.UnitsPerCase,IM.CasePrice,ID.ReturnQty,ID.ReturnPrice,ID.ReplacementQty,ID.ReplacementPrice,DM.DepotName,DM.ArbDepotName
,s.SalesmanCode,s.SalesmanName1,s.ArbSalesmanName1,RM.RouteCode,RM.RouteName,RM.ArbRouteName,IG.ItemGroupCode'
end
IF(@intFilterType = 4) --AreaManager/AreaMaster
BEGIN
SET @strFilterQuery =' Where IH.TransactionDate  between '''+  convert(varchar,@dtFromDate) + ''' AND ''' +  convert(varchar,@dtToDate) + '''
AND SAM.SubAreaCode IN (' + @strIDs + ') 
 group by IM.ActualItemCode,IM.ItemDescription,IM.ARBItemDescription,IM.UnitsPerCase,IM.CasePrice,ID.ReturnQty,ID.ReturnPrice,ID.ReplacementQty,ID.ReplacementPrice,DM.DepotName,DM.ArbDepotName
,s.SalesmanCode,s.SalesmanName1,s.ArbSalesmanName1,RM.RouteCode,RM.RouteName,RM.ArbRouteName,IG.ItemGroupCode'
end
IF(@intFilterType = 5) --Supervisor/SubAreaMaster
BEGIN
SET @strFilterQuery =' Where IH.TransactionDate  between '''+  convert(varchar,@dtFromDate) + ''' AND ''' +  convert(varchar,@dtToDate) + '''
AND RM.RouteCode IN (' + @strIDs + ') 
 group by IM.ActualItemCode,IM.ItemDescription,IM.ARBItemDescription,IM.UnitsPerCase,IM.CasePrice,ID.ReturnQty,ID.ReturnPrice,ID.ReplacementQty,ID.ReplacementPrice,DM.DepotName,DM.ArbDepotName
,s.SalesmanCode,s.SalesmanName1,s.ArbSalesmanName1,RM.RouteCode,RM.RouteName,RM.ArbRouteName,IG.ItemGroupCode'
end
IF(@intFilterType = 6) --Salesman/RouteMaster
BEGIN
SET @strFilterQuery =' Where IH.TransactionDate  between '''+  convert(varchar,@dtFromDate) + ''' AND ''' +  convert(varchar,@dtToDate) + '''
AND s.SalesmanCode IN (' + @strIDs + ') 
 group by IM.ActualItemCode,IM.ItemDescription,IM.ARBItemDescription,IM.UnitsPerCase,IM.CasePrice,ID.ReturnQty,ID.ReturnPrice,ID.ReplacementQty,ID.ReplacementPrice,DM.DepotName,DM.ArbDepotName
,s.SalesmanCode,s.SalesmanName1,s.ArbSalesmanName1,RM.RouteCode,RM.RouteName,RM.ArbRouteName,IG.ItemGroupCode'
end

SET @strQuery = @strQuery + @strFilterQuery 
PRINT(@strQuery) EXEC(@strQuery)
       
END


and my .aspx.cs page given below

C#
 protected void Page_Load(object sender, EventArgs e)
    {
        TextBox1.Text = Session["Selected"].ToString();
        TextBox2.Text = Session["ReportBy"].ToString();
        TextBox3.Text = Session["FromDate"].ToString();
        TextBox4.Text = Session["ToDate"].ToString();
       ReportDocument repDoc = new ReportDocument();
       string MyconnectionString = ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString;
      SqlConnectionStringBuilder SConn = new SqlConnectionStringBuilder(MyconnectionString);
       repDoc.DataSourceConnections[0].SetConnection(SConn.DataSource, SConn.InitialCatalog, SConn.UserID, SConn.Password);

repDoc.Load(Server.MapPath("Report/RptExpiryListByitem.rpt"));
 ParameterDiscreteValue objDiscreteValue;
        ParameterField objParameterField;
        objDiscreteValue = new ParameterDiscreteValue();
        objParameterField = new ParameterField();
        objDiscreteValue.Value =TextBox1.Text;
        objParameterField = CrystalReportViewer1.ParameterFieldInfo["@strIDs"];
        objParameterField.CurrentValues.Add(objDiscreteValue);
        CrystalReportViewer1.ParameterFieldInfo.Add(objParameterField);
        objDiscreteValue.Value = TextBox2.Text;
        objParameterField = CrystalReportViewer1.ParameterFieldInfo["@intFilterType"];
        objParameterField.CurrentValues.Add(objDiscreteValue);
        CrystalReportViewer1.ParameterFieldInfo.Add(objParameterField);
        objDiscreteValue.Value = TextBox3.Text;
        objParameterField = CrystalReportViewer1.ParameterFieldInfo["@dtFromDate"];
        objParameterField.CurrentValues.Add(objDiscreteValue);
        CrystalReportViewer1.ParameterFieldInfo.Add(objParameterField);
        objDiscreteValue.Value = TextBox4.Text;
        objParameterField = CrystalReportViewer1.ParameterFieldInfo["@dtToDate"];
        objParameterField.CurrentValues.Add(objDiscreteValue);
        CrystalReportViewer1.ParameterFieldInfo.Add(objParameterField);
        CrystalReportViewer1.ReportSource =repDoc;
    } 

I want to run my Report to overide the connection strings of web.config file and i dont want logon database when i run report(dont prompt user credential for report running)

when i run my application its give me error
Object reference not set to an instance of an object.


at line
ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString;

so please provide me the right solution

Thanks
Posted
Updated 9-Nov-10 0:17am
v2

1 solution

Check your ConnectionString particularly Datasource,UserID,Password,Initial Catalog because problem may be there that's all. Also your Database might be in remote system, so you need to change the Datasource in Connection string or restore the database in system which contains the application.
 
Share this answer
 
v2

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900