//protected void lnkNewReport_Click(object sender, EventArgs e)
        //{
        //    Response.Redirect("frmReportCustomNew.aspx", true);
        //}

        protected void btnExportReport_Click(object sender, EventArgs e)
        {
            if (this.ddTitle.SelectedValue.ToString() != "")
            {
                DataSet  dsExistingReport;
                IReports CustomReport;
                CustomReport     = (IReports)ObjectFactory.CreateInstance("BusinessProcess.Reports.BReports,BusinessProcess.Reports");
                dsExistingReport = CustomReport.GetCustomReportData(Convert.ToInt32(this.ddTitle.SelectedValue));
                Stream stream = new MemoryStream();
                dsExistingReport.WriteXml(stream, XmlWriteMode.WriteSchema);
                byte[] Buffer;

                Buffer          = new byte[stream.Length];
                stream.Position = 0;
                stream.Read(Buffer, 0, (int)stream.Length);
                stream.Close();

                Response.Clear();

                Response.ContentType = "application/xml";
                Response.AddHeader("content-disposition", "attachment; filename=Report.xml");
                Response.BinaryWrite(Buffer);

                Response.End();
            }
        }
Ejemplo n.º 2
0
    //protected void lnkNewReport_Click(object sender, EventArgs e)
    //{
    //    Response.Redirect("frmReportCustomNew.aspx", true);
    //}

    protected void btnExportReport_Click(object sender, EventArgs e)
    {
        if (this.ddTitle.SelectedValue.ToString() != "")
        {
            DataSet  dsExistingReport, dsCustomReport;
            IReports CustomReport;
            CustomReport     = (IReports)ObjectFactory.CreateInstance("BusinessProcess.Reports.BReports,BusinessProcess.Reports");
            dsExistingReport = CustomReport.GetCustomReportData(Convert.ToInt32(this.ddTitle.SelectedValue));
            Stream stream = new MemoryStream();
            dsExistingReport.WriteXml(stream, XmlWriteMode.WriteSchema);
            byte[] Buffer;

            Buffer          = new byte[stream.Length];
            stream.Position = 0;
            stream.Read(Buffer, 0, (int)stream.Length);
            stream.Close();

            Response.Clear();

            Response.ContentType = "application/xml";
            Response.AddHeader("content-disposition", "attachment; filename=Report.xml");
            Response.BinaryWrite(Buffer);

            Response.End();

            //DataTable dtReportField = null;
            //DataTable dtReportFilter = null;

            //if (dsExistingReport.Tables.Count > 1 && dsExistingReport.Tables[1] != null)
            //{
            //    dtReportField = dsExistingReport.Tables[1];
            //}
            //if (dsExistingReport.Tables.Count > 2 && dsExistingReport.Tables[2] != null)
            //{
            //    dtReportFilter = dsExistingReport.Tables[2];
            //}

            //DataRow drMstReport;
            //dsCustomReport = CreateDataSet();
            //drMstReport = dsCustomReport.Tables["dtMstReport"].NewRow();

            //drMstReport["ReportName"] = dsExistingReport.Tables[0].Rows[0]["ReportName"].ToString();
            //drMstReport["Description"] = dsExistingReport.Tables[0].Rows[0]["Description"].ToString();
            //drMstReport["Condition"] = dsExistingReport.Tables[0].Rows[0]["Condition"].ToString();
            //drMstReport["CategoryId"] = dsExistingReport.Tables[0].Rows[0]["CategoryId"].ToString();
            //drMstReport["RptType"] = dsExistingReport.Tables[0].Rows[0]["RptType"].ToString();
            //dsCustomReport.Tables["dtMstReport"].Rows.Add(drMstReport);

            //DataRow drReportFields;
            //DataRow drReportFilter;
            //DataView dvFilter;
            //if (drMstReport["RptType"].ToString() == "DYNAMIC")
            //{
            //    if (dtReportField != null)
            //    {
            //        foreach (DataRow dr in dtReportField.Rows)
            //        {
            //            drReportFields = dsCustomReport.Tables["dtlReportFields"].NewRow();

            //            drReportFields["GroupId"] = Convert.ToInt32(dr["GroupId"]);
            //            drReportFields["FieldId"] = Convert.ToInt32(dr["FieldId"]);

            //            drReportFields["FieldLabel"] = dr["FieldName"].ToString();
            //            drReportFields["AggregateFunction"] = dr["AggregateFunction"].ToString();
            //            drReportFields["IsDisplay"] = dr["IsDisplay"];
            //            drReportFields["Sequence"] = dr["Sequence"];
            //            drReportFields["Sort"] = dr["Sort"];
            //            drReportFields["ViewName"] = dr["ViewName"];
            //            dsCustomReport.Tables["dtlReportFields"].Rows.Add(drReportFields);
            //            //===============================================================================
            //            dvFilter = new DataView(dtReportFilter, "ReportFieldId=" + dr["ReportFieldId"], "Sequence", DataViewRowState.CurrentRows);
            //            if (dvFilter.Count > 0)
            //            {
            //                for (int i = 0; i < dvFilter.Count; i++)
            //                {
            //                    drReportFilter = dsCustomReport.Tables["dtlReportFilter"].NewRow();
            //                    drReportFilter["LinkFieldId"] = Convert.ToInt32(dr["FieldId"]); //Convert.ToInt32(dr["Sequence"]);
            //                    drReportFilter["Operator"] = dvFilter[i]["Operator"].ToString();
            //                    drReportFilter["FilterValue"] = dvFilter[i]["FilterValue"].ToString();
            //                    drReportFilter["AndOr"] = dvFilter[i]["AndOr"].ToString();
            //                    drReportFilter["Sequence"] = dvFilter[i]["Sequence"].ToString();

            //                    drReportFilter["Operator1"] = dvFilter[i]["Operator1"].ToString();
            //                    drReportFilter["FilterValue1"] = dvFilter[i]["FilterValue1"].ToString();
            //                    drReportFilter["PanelId"] = Convert.ToInt32(dr["Sequence"]);
            //                    drReportFilter["AndOr1"] = dvFilter[i]["AndOr1"].ToString(); // labtest changed
            //                    dsCustomReport.Tables["dtlReportFilter"].Rows.Add(drReportFilter);
            //                }
            //            }
            //            //===============================================================================
            //        }
            //    }
            //}
        }
    }