public ActionResult ExportData_View(decimal pAppHeaderId, string p_appCode, decimal p_View_Translate)
        {
            try
            {
                string language = AppsCommon.GetCurrentLang();

                App_Detail_PLB01_SDD_BL   objBL = new App_Detail_PLB01_SDD_BL();
                ApplicationHeaderInfo     applicationHeaderInfo = new ApplicationHeaderInfo();
                App_Detail_PLB01_SDD_Info app_Detail            = new App_Detail_PLB01_SDD_Info();
                List <AppFeeFixInfo>      appFeeFixInfos        = new List <AppFeeFixInfo>();
                List <AppDocumentInfo>    appDocumentInfos      = new List <AppDocumentInfo>();
                app_Detail = objBL.GetByID(pAppHeaderId, language, ref applicationHeaderInfo, ref appDocumentInfos, ref appFeeFixInfos);

                AppsCommon.Prepare_Data_Export_3B(ref app_Detail, applicationHeaderInfo, appDocumentInfos);
                List <App_Detail_PLB01_SDD_Info> _lst = new List <App_Detail_PLB01_SDD_Info>();
                _lst.Add(app_Detail);
                DataSet _ds_all = ConvertData.ConvertToDataSet <App_Detail_PLB01_SDD_Info>(_lst, false);
                //_ds_all.WriteXml(@"C:\inetpub\B01.xml", XmlWriteMode.WriteSchema);

                CrystalDecisions.CrystalReports.Engine.ReportDocument oRpt = new CrystalDecisions.CrystalReports.Engine.ReportDocument();

                string _datetimenow = DateTime.Now.ToString("ddMMyyyyHHmm");
                string _tempfile    = "TM_PLB01SDD.rpt";
                string fileName_pdf = System.Web.HttpContext.Current.Server.MapPath("/Content/Export/" + "B01_VN_" + _datetimenow + ".pdf");
                if (p_View_Translate == 1)
                {
                    // nếu là tiếng việt thì xem bản tiếng anh và ngược lại
                    if (applicationHeaderInfo.Languague_Code == Language.LangVI)
                    {
                        _tempfile    = "TM_PLB01SDD_EN.rpt"; // tiếng anh
                        fileName_pdf = System.Web.HttpContext.Current.Server.MapPath("/Content/Export/" + "B01_EN_" + _datetimenow + ".pdf");
                        SessionData.CurrentUser.FilePreview = "/Content/Export/" + "B01_EN_" + _datetimenow + ".pdf";
                    }
                    else
                    {
                        fileName_pdf = System.Web.HttpContext.Current.Server.MapPath("/Content/Export/" + "B01_VN_" + _datetimenow + ".pdf");
                        SessionData.CurrentUser.FilePreview = "/Content/Export/" + "B01_VN_" + _datetimenow + ".pdf";
                    }
                }
                else
                {
                    if (applicationHeaderInfo.Languague_Code == Language.LangVI)
                    {
                        fileName_pdf = System.Web.HttpContext.Current.Server.MapPath("/Content/Export/" + "B01_VN_" + _datetimenow + ".pdf");
                        SessionData.CurrentUser.FilePreview = "/Content/Export/" + "B01_VN_" + _datetimenow + ".pdf";
                    }
                    else
                    {
                        _tempfile    = "TM_PLB01SDD_EN.rpt"; // tiếng anh
                        fileName_pdf = System.Web.HttpContext.Current.Server.MapPath("/Content/Export/" + "B01_EN_" + _datetimenow + ".pdf");
                        SessionData.CurrentUser.FilePreview = "/Content/Export/" + "B01_EN_" + _datetimenow + ".pdf";
                    }
                }

                oRpt.Load(Path.Combine(Server.MapPath("~/Report/"), _tempfile));

                if (_ds_all != null)
                {
                    _ds_all.Tables[0].TableName = "Table";
                    // đè các bản dịch lên
                    if (p_View_Translate == 1)
                    {
                        // nếu là bản xem của thằng dịch
                        App_Translate_BL          _App_Translate_BL = new App_Translate_BL();
                        List <App_Translate_Info> _lst_translate    = _App_Translate_BL.App_Translate_GetBy_AppId(pAppHeaderId);

                        AppsCommon.Overwrite_DataSouce_Export(ref _ds_all, _lst_translate);
                    }

                    oRpt.Database.Tables["Table"].SetDataSource(_ds_all.Tables[0]);
                    //oRpt.SetDataSource(_ds_all);
                }
                oRpt.Refresh();

                Response.Buffer = false;
                Response.ClearContent();
                Response.ClearHeaders();


                System.IO.Stream oStream   = oRpt.ExportToStream(ExportFormatType.PortableDocFormat);
                byte[]           byteArray = new byte[oStream.Length];
                oStream.Read(byteArray, 0, Convert.ToInt32(oStream.Length - 1));
                System.IO.File.WriteAllBytes(fileName_pdf, byteArray.ToArray()); // Requires System.Linq

                return(Json(new { success = 0 }));
            }
            catch (Exception ex)
            {
                Logger.LogException(ex);
                return(Json(new { success = 0 }));
            }
        }
    protected void btn_Ok_Click(object sender, EventArgs e)
    {
        pcode = ddl_plantcode.SelectedItem.Value;
        getdeductiondetail();
        MemoryStream oStream; // using System.IO

        oStream = (MemoryStream)
                  cr.ExportToStream(CrystalDecisions.Shared.ExportFormatType.PortableDocFormat);
        Response.Clear();
        Response.Buffer      = true;
        Response.ContentType = "application/pdf";
        Response.BinaryWrite(oStream.ToArray());
        Response.End();
    }
Esempio n. 3
0
    private void LoadCrystalReport(string s_FileName, string s_rptFilePath, DataTable dt_Source, string reportFormatType)
    {
        CrystalDecisions.CrystalReports.Engine.ReportDocument report = new CrystalDecisions.CrystalReports.Engine.ReportDocument();

        report.Load(s_rptFilePath);
        report.SetDataSource(dt_Source);

        //判斷輸出檔案型態
        switch (reportFormatType)
        {
            case "EXCEL":
                System.IO.Stream streamXLS = report.ExportToStream(CrystalDecisions.Shared.ExportFormatType.Excel);
                byte[] bytesXLS = new byte[streamXLS.Length];
                streamXLS.Read(bytesXLS, 0, bytesXLS.Length);
                streamXLS.Seek(0, System.IO.SeekOrigin.Begin);

                //export file  
                Response.ClearContent();
                Response.ClearHeaders();
                Response.AddHeader("content-disposition", "attachment;filename=" + s_FileName);//excel檔名  
                Response.ContentType = "application/vnd.ms-excel;charset='utf-8'";
                Response.OutputStream.Write(bytesXLS, 0, bytesXLS.Length);
                Response.Flush();
                Response.Close();

                break;
            case "PDF":
                //string s_par_Program_ID = this.PageCode;
                string Login_Name = ((DataTable)Session["UserInfo"]).Rows[0]["Name"].ToString();
                string s_par_Program_ID = "MKT11";
                string s_par_LoginUser = Session["UID"].ToString() + " "  + Login_Name;
                string s_par_Vendor = SLP_Vendor.Text + " " + SLP_Vendor.Name;
                string s_par_RootNo = SLP_RootNo_S.Text + " " + SLP_RootNo_S.Name +" ~ " + SLP_RootNo_E.Text + " " + SLP_RootNo_E.Name;
                string s_par_PMA = SLP_PMA_S.Text + " " + SLP_PMA_S.Name + " ~ " + SLP_PMA_E.Text + " " + SLP_PMA_E.Name;
                string s_par_Category = SLP_Category_S.Text + " " + SLP_Category_S.Name + " ~ " + SLP_Category_E.Text + " " + SLP_Category_E.Name;
                string s_par_SortOut = SLP_SortOut_S.Text + " " + SLP_SortOut_S.Name + " ~ " + SLP_SortOut_E.Text + " " + SLP_SortOut_E.Name;
                string s_par_Item = SLP_SKU.Text + " " + SLP_SKU.Name;
                string s_par_Period = SLP_ItemPeriod.Text;
                string s_par_PeriodCount = SLP_SLPNumber.Text;
                string s_par_Order ="";

                if ( ddl_Order.SelectedValue=="1"){
                    s_par_Order = "期別降冪";
                }
                else if ( ddl_Order.SelectedValue=="2"){
                    s_par_Order = "期別升冪";
                }
               
                report.SetParameterValue("par_Program_ID", s_par_Program_ID);
                report.SetParameterValue("par_LoginUser", s_par_LoginUser);
                report.SetParameterValue("par_Vendor", s_par_Vendor);
                report.SetParameterValue("par_RootNo", s_par_RootNo);
                report.SetParameterValue("par_PMA", s_par_PMA);
                report.SetParameterValue("par_Category", s_par_Category);
                report.SetParameterValue("par_SortOut", s_par_SortOut);
                report.SetParameterValue("par_Item", s_par_Item);
                report.SetParameterValue("par_Period", s_par_Period);
                report.SetParameterValue("par_PeriodCount", s_par_PeriodCount);
                report.SetParameterValue("par_Order", s_par_Order);

                System.IO.Stream streamPDF = report.ExportToStream(CrystalDecisions.Shared.ExportFormatType.PortableDocFormat);
                byte[] bytesPDF = new byte[streamPDF.Length];
                streamPDF.Read(bytesPDF, 0, bytesPDF.Length);
                streamPDF.Seek(0, System.IO.SeekOrigin.Begin);

                //export file  
                Response.ClearContent();
                Response.ClearHeaders();
                Response.AddHeader("content-disposition", "attachment;filename=" + s_FileName);//excel檔名  
                Response.ContentType = "application/pdf";
                Response.OutputStream.Write(bytesPDF, 0, bytesPDF.Length);
                Response.Flush();
                Response.Close();
                break;
            default:
                break;
        }
    }
Esempio n. 4
0
    /// <summary>
    /// 利用 CrystalReport 列印 Excel 報表
    /// </summary>
    /// <param name="s_FileName">Excel報表的檔名</param>
    /// <param name="s_rptFilePath">rpt檔的路徑</param>
    /// <param name="dt_Source">要列印的資料</param>
    /// /// <param name="reportFormatType">檔案型態</param>
    private void LoadCrystalReport(string s_FileName, string s_rptFilePath, DataTable dt_Source, string reportFormatType)
    {
        CrystalDecisions.CrystalReports.Engine.ReportDocument report = new CrystalDecisions.CrystalReports.Engine.ReportDocument();

        report.Load(s_rptFilePath);
        report.SetDataSource(dt_Source);


        string par_ProgramID = string.Empty;
        string par_LoginUser = string.Empty;

        #region 前置檢查與參數過濾

        string par_S_PDate = this.SLP_SLPDateRange.StartDate;
        string par_E_PDate = this.SLP_SLPDateRange.EndDate;
        string par_BatchNo = this.txtBatchNo.Text;
        string par_ChanNo = this.SLP_StoreChain.Text + " " + this.SLP_StoreChain.Name;
        string par_ChanSourceNo = this.txtChanSourceNo.Text;
        string par_S_SignDate = this.SLP_SignDate.StartDate;
        string par_E_SignDate = this.SLP_SignDate.EndDate;
        string par_Item = this.SLP_SKU.Text + " " + this.SLP_SKU.Name;
        string par_Period = this.SLP_ItemPeriod.Text + " " + this.SLP_ItemPeriod.Name;
        string par_ItemMap = this.txtItemMap.Text;

        par_ProgramID = this.PageCode;
        par_LoginUser = Session["UID"].ToString();
        #endregion


        #region 組合查詢條件至ArrayList

        ArrayList returnList = new ArrayList();

        returnList.Clear();

        report.SetParameterValue("par_S_PDate", par_S_PDate);
        report.SetParameterValue("par_E_PDate", par_E_PDate);
        report.SetParameterValue("par_BatchNo", par_BatchNo);
        report.SetParameterValue("par_ChanNo", par_ChanNo);
        report.SetParameterValue("par_ChanSourceNo", par_ChanSourceNo);
        report.SetParameterValue("par_S_SignDate", par_S_SignDate);
        report.SetParameterValue("par_E_SignDate", par_E_SignDate);
        report.SetParameterValue("par_Item", par_Item);
        report.SetParameterValue("par_Period", par_Period);
        report.SetParameterValue("par_ItemMap", par_ItemMap);

        report.SetParameterValue("par_ProgramID", par_ProgramID);
        report.SetParameterValue("par_LoginUser", par_LoginUser);
        #endregion

        //判斷輸出檔案型態
        switch (reportFormatType)
        {
            case "EXCEL":

                System.IO.Stream streamXLS = report.ExportToStream(CrystalDecisions.Shared.ExportFormatType.Excel);
                byte[] bytesXLS = new byte[streamXLS.Length];
                streamXLS.Read(bytesXLS, 0, bytesXLS.Length);
                streamXLS.Seek(0, System.IO.SeekOrigin.Begin);

                //export file  
                Response.ClearContent();
                Response.ClearHeaders();
                Response.AddHeader("content-disposition", "attachment;filename=" + s_FileName);//excel檔名  

                Response.ContentType = "application/vnd.ms-excel";

                Response.OutputStream.Write(bytesXLS, 0, bytesXLS.Length);
                Response.Flush();
                Response.Close();

                break;
            case "PDF":
                System.IO.Stream streamPDF = report.ExportToStream(CrystalDecisions.Shared.ExportFormatType.PortableDocFormat);
                byte[] bytesPDF = new byte[streamPDF.Length];
                streamPDF.Read(bytesPDF, 0, bytesPDF.Length);
                streamPDF.Seek(0, System.IO.SeekOrigin.Begin);

                //export file  
                Response.ClearContent();
                Response.ClearHeaders();
                Response.AddHeader("content-disposition", "attachment;filename=" + s_FileName);//excel檔名  
                Response.ContentType = "application/pdf";
                Response.OutputStream.Write(bytesPDF, 0, bytesPDF.Length);
                Response.Flush();
                Response.Close();
                break;
            default:

                break;
        }

    }
Esempio n. 5
0
    /// <summary>
    /// 利用 CrystalReport 列印 Excel 報表
    /// </summary>
    /// <param name="s_FileName">Excel報表的檔名</param>
    /// <param name="s_rptFilePath">rpt檔的路徑</param>
    /// <param name="dt_Source">要列印的資料</param>
    /// /// <param name="reportFormatType">檔案型態</param>
    private void LoadCrystalReport(string s_FileName, string s_rptFilePath, DataTable dt_Source, string reportFormatType)
    {
        CrystalDecisions.CrystalReports.Engine.ReportDocument report = new CrystalDecisions.CrystalReports.Engine.ReportDocument();

        report.Load(s_rptFilePath);
        report.SetDataSource(dt_Source);

        string par_ProgramID = string.Empty;
        string par_LoginUser = string.Empty;

        #region 前置檢查與參數過濾

        string par_S_Vendor = this.SLP_VendorBaseS.Text + " " + this.SLP_VendorBaseS.Name;
        string par_E_Vendor = this.SLP_VendorBaseE.Text + " " + this.SLP_VendorBaseE.Name;
        string par_S_PMA = this.SLP_PMAS.Text + " " + this.SLP_PMAS.Name;
        string par_E_PMA = this.SLP_PMAE.Text + " " + this.SLP_PMAE.Name;
        string par_S_RootNo = this.SLP_RootNoS.Text + " " + this.SLP_RootNoS.Name;
        string par_E_RootNo = this.SLP_RootNoE.Text + " " + this.SLP_RootNoE.Name;

        string par_S_LocateNo = this.SLP_SimpleLocateSec1.Text1 + " " + this.SLP_SimpleLocateSec1.Name;
        string par_E_LocateNo = this.SLP_SimpleLocateSec2.Text1 + " " + this.SLP_SimpleLocateSec2.Name;
        string par_S_LocateSec = SLP_SimpleLocateSec1.Text2.Trim() != "" ? this.SLP_SimpleLocateSec1.Text1 + SLP_SimpleLocateSec1.Text2 : "";
        string par_E_LocateSec = SLP_SimpleLocateSec2.Text2.Trim() != "" ? this.SLP_SimpleLocateSec2.Text1 + SLP_SimpleLocateSec2.Text2 : "";

        string par_Item = this.SLP_SKU.Text + " " + this.SLP_SKU.Name;
        string par_Period = this.SLP_ItemPeriod.Text + " " + this.SLP_ItemPeriod.Name;

        par_ProgramID = this.PageCode;
        par_LoginUser = Session["UID"].ToString();
        #endregion

        #region 組合查詢條件至ArrayList

        ArrayList returnList = new ArrayList();

        returnList.Clear();

        report.SetParameterValue("par_S_Vendor", par_S_Vendor);
        report.SetParameterValue("par_E_Vendor", par_E_Vendor);
        report.SetParameterValue("par_S_PMA", par_S_PMA);
        report.SetParameterValue("par_E_PMA", par_E_PMA);
        report.SetParameterValue("par_S_RootNo", par_S_RootNo);
        report.SetParameterValue("par_E_RootNo", par_E_RootNo);

        report.SetParameterValue("par_S_LocateNo", par_S_LocateNo);
        report.SetParameterValue("par_E_LocateNo", par_E_LocateNo);
        report.SetParameterValue("par_S_LocateSec", par_S_LocateSec);
        report.SetParameterValue("par_E_LocateSec", par_E_LocateSec);

        report.SetParameterValue("par_Item", par_Item);
        report.SetParameterValue("par_Period", par_Period);

        report.SetParameterValue("par_ProgramID", par_ProgramID);
        report.SetParameterValue("par_LoginUser", par_LoginUser);
        #endregion

        //判斷輸出檔案型態
        switch (reportFormatType)
        {
            case "EXCEL":

                System.IO.Stream streamXLS = report.ExportToStream(CrystalDecisions.Shared.ExportFormatType.Excel);
                byte[] bytesXLS = new byte[streamXLS.Length];
                streamXLS.Read(bytesXLS, 0, bytesXLS.Length);
                streamXLS.Seek(0, System.IO.SeekOrigin.Begin);

                //export file  
                Response.ClearContent();
                Response.ClearHeaders();
                Response.AddHeader("content-disposition", "attachment;filename=" + s_FileName);//excel檔名  

                Response.ContentType = "application/vnd.ms-excel";

                Response.OutputStream.Write(bytesXLS, 0, bytesXLS.Length);
                Response.Flush();
                Response.Close();

                break;
            case "PDF":

                System.IO.Stream streamPDF = report.ExportToStream(CrystalDecisions.Shared.ExportFormatType.PortableDocFormat);
                byte[] bytesPDF = new byte[streamPDF.Length];
                streamPDF.Read(bytesPDF, 0, bytesPDF.Length);
                streamPDF.Seek(0, System.IO.SeekOrigin.Begin);

                //export file  
                Response.ClearContent();
                Response.ClearHeaders();
                Response.AddHeader("content-disposition", "attachment;filename=" + s_FileName);//excel檔名  
                Response.ContentType = "application/pdf";
                Response.OutputStream.Write(bytesPDF, 0, bytesPDF.Length);
                Response.Flush();
                Response.Close();
                break;
            default:

                break;
        }

    }
Esempio n. 6
0
    private void LoadCrystalReport(string s_FileName, string s_rptFilePath, DataTable dt_Source, string reportFormatType)
    {
        CrystalDecisions.CrystalReports.Engine.ReportDocument report = new CrystalDecisions.CrystalReports.Engine.ReportDocument();

        report.Load(s_rptFilePath);
        report.SetDataSource(dt_Source);

        //判斷輸出檔案型態
        switch (reportFormatType)
        {
            case "EXCEL":

                System.IO.Stream streamXLS = report.ExportToStream(CrystalDecisions.Shared.ExportFormatType.Excel);
                byte[] bytesXLS = new byte[streamXLS.Length];
                streamXLS.Read(bytesXLS, 0, bytesXLS.Length);
                streamXLS.Seek(0, System.IO.SeekOrigin.Begin);

                //export file  
                Response.ClearContent();
                Response.ClearHeaders();
                Response.AddHeader("content-disposition", "attachment;filename=" + s_FileName);//excel檔名  


                Response.ContentType = "application/vnd.ms-excel;charset='utf-8'";


                Response.OutputStream.Write(bytesXLS, 0, bytesXLS.Length);
                Response.Flush();
                Response.Close();

                break;
            case "PDF":

                //string s_par_Program_ID = this.PageCode;
                string Login_Name = ((DataTable)Session["UserInfo"]).Rows[0]["Name"].ToString();

                string s_par_Program_ID = "MKT10";
                string s_par_LoginUser = Session["UID"].ToString() + Login_Name;
                string s_par_Busdate = SLP_MDC_START_DATE.StartDate + " ~ " + SLP_MDC_START_DATE.EndDate;
                string s_par_Z_O = SLP_Z_O_S.Text + "   " + SLP_Z_O_S.Name + " ~ " + SLP_Z_O_E.Text + "   " + SLP_Z_O_E.Name;
                string s_par_Chan_No = SLP_CHAIN_S.Text + "   " + SLP_CHAIN_S.Name + " ~ " + SLP_CHAIN_E.Text + "   " + SLP_CHAIN_E.Name;

                report.SetParameterValue("par_Program_ID", s_par_Program_ID);
                report.SetParameterValue("par_LoginUser", s_par_LoginUser);
                report.SetParameterValue("par_Busdate", s_par_Busdate);
                report.SetParameterValue("par_Z_O", s_par_Z_O);
                report.SetParameterValue("par_Chan_No", s_par_Chan_No);

                System.IO.Stream streamPDF = report.ExportToStream(CrystalDecisions.Shared.ExportFormatType.PortableDocFormat);
                byte[] bytesPDF = new byte[streamPDF.Length];
                streamPDF.Read(bytesPDF, 0, bytesPDF.Length);
                streamPDF.Seek(0, System.IO.SeekOrigin.Begin);

                //export file  
                Response.ClearContent();
                Response.ClearHeaders();
                Response.AddHeader("content-disposition", "attachment;filename=" + s_FileName);//excel檔名  
                Response.ContentType = "application/pdf";
                Response.OutputStream.Write(bytesPDF, 0, bytesPDF.Length);
                Response.Flush();
                Response.Close();
                break;
            default:

                break;
        }
    }
Esempio n. 7
0
    /// <summary>
    /// 利用 CrystalReport 列印 Excel 報表
    /// </summary>
    /// <param name="s_FileName">Excel報表的檔名</param>
    /// <param name="s_rptFilePath">rpt檔的路徑</param>
    /// <param name="dt_Source">要列印的資料</param>
    /// /// <param name="reportFormatType">檔案型態</param>
    private void LoadCrystalReport(string s_FileName, string s_rptFilePath, DataTable dt_Source, string reportFormatType)
    {
        CrystalDecisions.CrystalReports.Engine.ReportDocument report = new CrystalDecisions.CrystalReports.Engine.ReportDocument();

        report.Load(s_rptFilePath);
        report.SetDataSource(dt_Source);


        string par_ChanNo = string.Empty;
        string par_Store = string.Empty;

        #region 前置檢查與參數過濾

        par_ChanNo = Server.UrlDecode(Request.QueryString["Chan"].ToString());
        par_Store = Server.UrlDecode(Request.QueryString["Store"].ToString());
        #endregion


        #region 組合查詢條件至ArrayList

        ArrayList returnList = new ArrayList();

        returnList.Clear();

        report.SetParameterValue("ChanNo", par_ChanNo);
        report.SetParameterValue("Store", par_Store);

        #endregion


        //判斷輸出檔案型態
        switch (reportFormatType)
        {
            case "EXCEL":

                System.IO.Stream streamXLS = report.ExportToStream(CrystalDecisions.Shared.ExportFormatType.Excel);
                byte[] bytesXLS = new byte[streamXLS.Length];
                streamXLS.Read(bytesXLS, 0, bytesXLS.Length);
                streamXLS.Seek(0, System.IO.SeekOrigin.Begin);

                //export file  
                Response.ClearContent();
                Response.ClearHeaders();
                Response.AddHeader("content-disposition", "attachment;filename=" + s_FileName);//excel檔名  


                Response.ContentType = "application/vnd.ms-excel";


                Response.OutputStream.Write(bytesXLS, 0, bytesXLS.Length);
                Response.Flush();
                Response.Close();
                report.Close();
                break;
            case "PDF":


                System.IO.Stream streamPDF = report.ExportToStream(CrystalDecisions.Shared.ExportFormatType.PortableDocFormat);
                byte[] bytesPDF = new byte[streamPDF.Length];
                streamPDF.Read(bytesPDF, 0, bytesPDF.Length);
                streamPDF.Seek(0, System.IO.SeekOrigin.Begin);

                //export file  
                Response.ClearContent();
                Response.ClearHeaders();
                Response.AddHeader("content-disposition", "attachment;filename=" + s_FileName);//excel檔名  
                Response.ContentType = "application/pdf";
                Response.OutputStream.Write(bytesPDF, 0, bytesPDF.Length);
                Response.Flush();
                Response.Close();
                report.Close();

                break;
            default:

                break;
        }

    }
Esempio n. 8
0
        public ActionResult ExportData_View(decimal pAppHeaderId, string p_appCode, string p_Language)
        {
            try
            {
                string _datetimenow = DateTime.Now.ToString("ddMMyyyyHHmm");
                string language = AppsCommon.GetCurrentLang();

                var objBL = new C07_BL();
                List<C07_Info_Export> _lst = new List<C07_Info_Export>();

                List<AppDocumentInfo> appDocumentInfos = new List<AppDocumentInfo>();
                List<AppFeeFixInfo> _lst_appFeeFixInfos = new List<AppFeeFixInfo>();
                ApplicationHeaderInfo applicationHeaderInfo = new ApplicationHeaderInfo();
                List<Other_MasterInfo> _lst_Other_MasterInfo = new List<Other_MasterInfo>();
                List<AppDocumentOthersInfo> _LstDocumentOthersInfo = new List<AppDocumentOthersInfo>();
                List<AppClassDetailInfo> appClassDetailInfos = new List<AppClassDetailInfo>();
                C07_Info_Export pDetail = objBL.GetByID_Exp(pAppHeaderId, language, ref applicationHeaderInfo, ref appDocumentInfos, ref _lst_appFeeFixInfos,
                    ref _lst_Other_MasterInfo, ref _LstDocumentOthersInfo, ref appClassDetailInfos);
                pDetail.LOGOURL = Server.MapPath(pDetail.LOGOURL);
                string fileName_pdf = System.Web.HttpContext.Current.Server.MapPath("/Content/Export/" + "C07_VN_" + _datetimenow + ".pdf");
                if (pDetail.Languague_Code == Language.LangVI)
                {
                    fileName_pdf = System.Web.HttpContext.Current.Server.MapPath("/Content/Export/" + "C07_VN_" + _datetimenow + ".pdf");
                    SessionData.CurrentUser.FilePreview = "/Content/Export/" + "C07_VN_" + _datetimenow + ".pdf";
                }
                else
                {
                    fileName_pdf = System.Web.HttpContext.Current.Server.MapPath("/Content/Export/" + "C07_EN_" + _datetimenow + ".pdf");
                    SessionData.CurrentUser.FilePreview = "/Content/Export/" + "C07_EN_" + _datetimenow + ".pdf";
                }

                Prepare_Data_Export_C07(ref pDetail, applicationHeaderInfo, appDocumentInfos, _lst_appFeeFixInfos, _lst_Other_MasterInfo,
                      _LstDocumentOthersInfo, appClassDetailInfos);

                _lst.Add(pDetail);
                DataSet _ds_all = ConvertData.ConvertToDataSet<C07_Info_Export>(_lst, false);
                try
                {
                    _ds_all.WriteXml(@"C:\inetpub\C07.xml", XmlWriteMode.WriteSchema);
                }
                catch (Exception ex)
                {
                    Logger.LogException(ex);
                }
                CrystalDecisions.CrystalReports.Engine.ReportDocument oRpt = new CrystalDecisions.CrystalReports.Engine.ReportDocument();

                string _tempfile = "C07.rpt";
                if (p_Language == Language.LangEN)
                {
                    _tempfile = "C07_EN.rpt";
                }
                oRpt.Load(Path.Combine(Server.MapPath("~/Report/"), _tempfile));
                #region Set vị trí ảnh

                CrystalDecisions.CrystalReports.Engine.PictureObject _pic01;
                _pic01 = (CrystalDecisions.CrystalReports.Engine.PictureObject)oRpt.ReportDefinition.Sections[0].ReportObjects["Picture1"];
                _pic01.Width = 200;
                _pic01.Height = 200;
                try
                {

                    Bitmap img = new Bitmap(pDetail.LOGOURL);
                    try
                    {

                        double _Const = 6.666666666666/2;
                        int _left = 0, _top = 0, _marginleft = 225, _margintop = 5580;
                        int _h = 600;
                        double _d1 = (_h - img.Width) / 2;
                        _d1 = _Const * _d1;
                        _left = _marginleft + Convert.ToInt32(_d1);
                        if (_left < 0)
                        {
                            _left = _marginleft;
                        }
                        _pic01.Left = _left;
                        // top

                        _d1 = (_h - img.Height) / 2;
                        _d1 = _Const * _d1;
                        _top = _margintop + Convert.ToInt32(_d1);
                        if (_top < 0)
                        {
                            _top = _margintop;
                        }
                        _pic01.Top = _top;

                    }
                    catch (Exception ex)
                    {
                        Logger.LogException(ex);
                    }
                    finally
                    {
                        img.Dispose();
                    }
                }
                catch (Exception ex)
                {


                }

                System.IO.FileInfo file = new System.IO.FileInfo(pDetail.LOGOURL);

                #endregion
                if (_ds_all != null)
                {
                    _ds_all.Tables[0].TableName = "Table";
                    oRpt.SetDataSource(_ds_all);
                }
                oRpt.Refresh();

                Response.Buffer = false;
                Response.ClearContent();
                Response.ClearHeaders();

                //oRpt.ExportToDisk(ExportFormatType.PortableDocFormat, fileName_pdf);

                System.IO.Stream oStream = oRpt.ExportToStream(ExportFormatType.PortableDocFormat);
                byte[] byteArray = new byte[oStream.Length];
                oStream.Read(byteArray, 0, Convert.ToInt32(oStream.Length - 1));
                System.IO.File.WriteAllBytes(fileName_pdf, byteArray.ToArray()); // Requires System.Linq


                return Json(new { success = 0 });
            }
            catch (Exception ex)
            {
                Logger.LogException(ex);
                return Json(new { success = 0 });
            }
        }
Esempio n. 9
0
    private void ShowReport(DataTable dt,string V_FORM_TYPE,DateTime D_START_DATE,DateTime D_END_DATE,String V_ADJ_IN_DESC,String V_ADJ_OUT_DESC)
    {
        #region 利用CrystalReport列印報表

        //使用者名稱
        DataTable dt1 = new DataTable();
        dt1 = (DataTable)Session["UserInfo"];
        string Login_Name = dt1.Rows[0]["Name"].ToString();

        CrystalDecisions.CrystalReports.Engine.ReportDocument report = new CrystalDecisions.CrystalReports.Engine.ReportDocument();

        report.Load(Server.MapPath("./REPORT/PSS031/PSS031R01.rpt"));
        report.SetDataSource(dt);
        report.SetParameterValue("par_Program_ID", "PSS031R");
        report.SetParameterValue("par_LoginUser", Session["UID"].ToString() + Login_Name);
        report.SetParameterValue("par_YEAR_MONTH", this.SLP_YearMonth1.Text.Trim());

        if (rblRptType.Items[0].Selected)
            report.SetParameterValue("par_TYPE", "差異");
        else
            report.SetParameterValue("par_TYPE", "全部");

        if (this.SLP_SKU_B.Text.Trim() == "" && this.SLP_SKU_E.Text.Trim() == "")
        {
            report.SetParameterValue("par_ITEM", "全部");
        }
        else
        {
            report.SetParameterValue("par_ITEM", this.SLP_SKU_B.Text.Trim() + "~" + this.SLP_SKU_E.Text.Trim());
        }

        if (this.SLP_ItemPeriod_B.Text.Trim() == "" && this.SLP_ItemPeriod_E.Text.Trim() == "")
        {
            report.SetParameterValue("par_PERIOD", "全部");
        }
        else
        {
            report.SetParameterValue("par_PERIOD", this.SLP_ItemPeriod_B.Text.Trim() + "~" + this.SLP_ItemPeriod_E.Text.Trim());
        }

        if (this.slp_TAX_TYPE.Text.Trim() == "" )
        {
            report.SetParameterValue("par_TAX_TYPE", "全部");
        }
        else if (this.slp_TAX_TYPE.Text.Trim() == "0")
        {
            report.SetParameterValue("par_TAX_TYPE", "應稅");
        }
        else if (this.slp_TAX_TYPE.Text.Trim() == "1")
        {
            report.SetParameterValue("par_TAX_TYPE", "免稅");
        }
        else if (this.slp_TAX_TYPE.Text.Trim() == "2")
        {
            report.SetParameterValue("par_TAX_TYPE", "零稅");
        }

        report.SetParameterValue("par_START_DATE", D_START_DATE);

        report.SetParameterValue("par_END_DATE", D_END_DATE);

        report.SetParameterValue("par_ADJ_IN_DESC", V_ADJ_IN_DESC);

        report.SetParameterValue("par_ADJ_OUT_DESC", V_ADJ_OUT_DESC);
        
       
        
        //檔案匯出
        if (V_FORM_TYPE == "XLS")
        {
            System.IO.Stream streamXLS = report.ExportToStream(CrystalDecisions.Shared.ExportFormatType.Excel);
            byte[] bytesXLS = new byte[streamXLS.Length];
            streamXLS.Read(bytesXLS, 0, bytesXLS.Length);
            streamXLS.Seek(0, System.IO.SeekOrigin.Begin);
            //Export File  
            Response.ClearContent();
            Response.ClearHeaders();
            Response.AddHeader("content-disposition", "attachment;filename=" + HttpUtility.UrlEncode("進銷存差異明細表.XLS", System.Text.Encoding.UTF8));//匯出檔名  
            Response.ContentType = "application/xls";
            Response.OutputStream.Write(bytesXLS, 0, bytesXLS.Length);
            Response.Flush();
            Response.Close();
        }
        else
        {
            System.IO.Stream streamPDF = report.ExportToStream(CrystalDecisions.Shared.ExportFormatType.PortableDocFormat);
            byte[] bytesPDF = new byte[streamPDF.Length];
            streamPDF.Read(bytesPDF, 0, bytesPDF.Length);
            streamPDF.Seek(0, System.IO.SeekOrigin.Begin);
            //Export File  
            Response.ClearContent();
            Response.ClearHeaders();
            Response.AddHeader("content-disposition", "attachment;filename=" + HttpUtility.UrlEncode("進銷存差異明細表.PDF", System.Text.Encoding.UTF8));//匯出檔名  
            Response.ContentType = "application/pdf";
            Response.OutputStream.Write(bytesPDF, 0, bytesPDF.Length);
            Response.Flush();
            Response.Close();
        }
        report.Close();
        #endregion
    }
Esempio n. 10
0
    private void ShowReportA(DataTable dtA, DataTable dtB, string V_FORM_TYPE, string V_RPT)
    {
        #region 利用CrystalReport列印報表

        //匯出檔案名稱
        string FileName = "";

        //使用者名稱
        DataTable dt1 = new DataTable();
        dt1 = (DataTable)Session["UserInfo"];
        string Login_Name = dt1.Rows[0]["Name"].ToString();

        CrystalDecisions.CrystalReports.Engine.ReportDocument report = new CrystalDecisions.CrystalReports.Engine.ReportDocument();
        report.Load(Server.MapPath("./REPORT/VAM121/" + V_RPT + "01.rpt"));

        DataSet ds = new DataSet();
        dtA.TableName = "VAM122_R1";
        ds.Tables.Add(dtA.Copy());
        dtB.TableName = "VAM122_R2";
        ds.Tables.Add(dtB.Copy());

        report.SetDataSource(ds);
        if (V_RPT == "VAM121R")
        {
            FileName = "進項憑證明細表(發票)";
            report.SetParameterValue("par_Program_ID", V_RPT);


            report.SetParameterValue("par_LoginUser", Session["UID"].ToString() + Login_Name);

            if (this.SLP_SLPDateRange.StartDate.ToString() == "" && this.SLP_SLPDateRange.EndDate.ToString() == "")
                report.SetParameterValue("par_Source_date", "全部");
            else
                report.SetParameterValue("par_Source_date", this.SLP_SLPDateRange.StartDate.ToString() + "-" + this.SLP_SLPDateRange.EndDate.ToString());

            if (this.SLP_SLPDateRange1.StartDate.ToString() == "" && this.SLP_SLPDateRange1.EndDate.ToString() == "")
                report.SetParameterValue("par_Keyin_date", "全部");
            else
                report.SetParameterValue("par_Keyin_date", this.SLP_SLPDateRange1.StartDate.ToString() + "-" + this.SLP_SLPDateRange1.EndDate.ToString());


            if (this.SLP_VendorBase1.Text.Trim() == "" && this.SLP_VendorBase2.Text.Trim() == "")
            {
                report.SetParameterValue("par_Vandor", "全部");

            }
            else
            {
                report.SetParameterValue("par_Vandor", this.SLP_VendorBase1.Text.Trim() + "-" + this.SLP_VendorBase2.Text.Trim());

            }

            if (((DropDownList)this.SLP_EnumBase.FindControl("D1")).SelectedItem.Text == "ALL")
                report.SetParameterValue("par_Tax_Type", "全部");
            else
                report.SetParameterValue("par_Tax_Type", ((DropDownList)this.SLP_EnumBase.FindControl("D1")).SelectedItem.Text);

        }
        else if (V_RPT == "VAM122R")
        {

            FileName = "進項憑證明細表(折讓)";
            report.SetParameterValue("par_Program_ID_B", V_RPT);

            report.SetParameterValue("par_LoginUser_B", Session["UID"].ToString() + Login_Name);

            if (this.SLP_SLPDateRange.StartDate.ToString() == "" && this.SLP_SLPDateRange.EndDate.ToString() == "")
                report.SetParameterValue("par_Source_date_B", "全部");
            else
                report.SetParameterValue("par_Source_date_B", this.SLP_SLPDateRange.StartDate.ToString() + "-" + this.SLP_SLPDateRange.EndDate.ToString());

            if (this.SLP_SLPDateRange1.StartDate.ToString() == "" && this.SLP_SLPDateRange1.EndDate.ToString() == "")
                report.SetParameterValue("par_Keyin_date_B", "全部");
            else
                report.SetParameterValue("par_Keyin_date_B", this.SLP_SLPDateRange1.StartDate.ToString() + "-" + this.SLP_SLPDateRange1.EndDate.ToString());


            if (this.SLP_VendorBase1.Text.Trim() == "" && this.SLP_VendorBase2.Text.Trim() == "")
            {

                report.SetParameterValue("par_Vandor_B", "全部");
            }
            else
            {

                report.SetParameterValue("par_Vandor_B", this.SLP_VendorBase1.Text.Trim() + "-" + this.SLP_VendorBase2.Text.Trim());
            }

            if (((DropDownList)this.SLP_EnumBase.FindControl("D1")).SelectedItem.Text == "ALL")
                report.SetParameterValue("par_Tax_Type_B", "全部");
            else
                report.SetParameterValue("par_Tax_Type_B", ((DropDownList)this.SLP_EnumBase.FindControl("D1")).SelectedItem.Text);
            //report.SetParameterValue("par_Tax_Type_B", ((DropDownList)this.SLP_EnumBase.FindControl("D1")).SelectedItem.Text);
        }
        else if (V_RPT == "VAM123R")
        {
            FileName = "進項憑證明細表(發票與折讓)";
            report.SetParameterValue("par_Program_ID", V_RPT);
            report.SetParameterValue("par_Program_ID_B", V_RPT);

            report.SetParameterValue("par_LoginUser", Session["UID"].ToString() + Login_Name);
            report.SetParameterValue("par_LoginUser_B", Session["UID"].ToString() + Login_Name);

            if (this.SLP_SLPDateRange.StartDate.ToString() == "" && this.SLP_SLPDateRange.EndDate.ToString() == "")
            {
                report.SetParameterValue("par_Source_date", "全部");
                report.SetParameterValue("par_Source_date_B", "全部");
            }
            else
            {
                report.SetParameterValue("par_Source_date", this.SLP_SLPDateRange.StartDate.ToString() + "-" + this.SLP_SLPDateRange.EndDate.ToString());
                report.SetParameterValue("par_Source_date_B", this.SLP_SLPDateRange.StartDate.ToString() + "-" + this.SLP_SLPDateRange.EndDate.ToString());
            }

            if (this.SLP_SLPDateRange1.StartDate.ToString() == "" && this.SLP_SLPDateRange1.EndDate.ToString() == "")
            {
                report.SetParameterValue("par_Keyin_date", "全部");
                report.SetParameterValue("par_Keyin_date_B", "全部");
            }
            else
            {
                report.SetParameterValue("par_Keyin_date", this.SLP_SLPDateRange1.StartDate.ToString() + "-" + this.SLP_SLPDateRange1.EndDate.ToString());
                report.SetParameterValue("par_Keyin_date_B", this.SLP_SLPDateRange1.StartDate.ToString() + "-" + this.SLP_SLPDateRange1.EndDate.ToString());
            }


            if (this.SLP_VendorBase1.Text.Trim() == "" && this.SLP_VendorBase2.Text.Trim() == "")
            {
                report.SetParameterValue("par_Vandor", "全部");
                report.SetParameterValue("par_Vandor_B", "全部");
            }
            else
            {
                report.SetParameterValue("par_Vandor", this.SLP_VendorBase1.Text.Trim() + "-" + this.SLP_VendorBase2.Text.Trim());
                report.SetParameterValue("par_Vandor_B", this.SLP_VendorBase1.Text.Trim() + "-" + this.SLP_VendorBase2.Text.Trim());
            }

            if (((DropDownList)this.SLP_EnumBase.FindControl("D1")).SelectedItem.Text == "ALL")
            {
                report.SetParameterValue("par_Tax_Type", "全部");
                report.SetParameterValue("par_Tax_Type_B", "全部");
            }
            else
            {
                report.SetParameterValue("par_Tax_Type", ((DropDownList)this.SLP_EnumBase.FindControl("D1")).SelectedItem.Text);
                report.SetParameterValue("par_Tax_Type_B", ((DropDownList)this.SLP_EnumBase.FindControl("D1")).SelectedItem.Text);
            }

        }




        //檔案匯出
        if (V_FORM_TYPE == "XLS")
        {
            System.IO.Stream streamXLS = report.ExportToStream(CrystalDecisions.Shared.ExportFormatType.Excel);
            byte[] bytesXLS = new byte[streamXLS.Length];
            streamXLS.Read(bytesXLS, 0, bytesXLS.Length);
            streamXLS.Seek(0, System.IO.SeekOrigin.Begin);
            //Export File  
            Response.ClearContent();
            Response.ClearHeaders();
            Response.AddHeader("content-disposition", "attachment;filename=" + HttpUtility.UrlEncode(FileName + ".XLS", System.Text.Encoding.UTF8));//匯出檔名  
            Response.ContentType = "application/xls";
            Response.OutputStream.Write(bytesXLS, 0, bytesXLS.Length);
            Response.Flush();
            Response.Close();
        }
        else
        {
            System.IO.Stream streamPDF = report.ExportToStream(CrystalDecisions.Shared.ExportFormatType.PortableDocFormat);
            byte[] bytesPDF = new byte[streamPDF.Length];
            streamPDF.Read(bytesPDF, 0, bytesPDF.Length);
            streamPDF.Seek(0, System.IO.SeekOrigin.Begin);
            //Export File  
            Response.ClearContent();
            Response.ClearHeaders();
            Response.AddHeader("content-disposition", "attachment;filename=" + HttpUtility.UrlEncode(FileName + ".PDF", System.Text.Encoding.UTF8));//匯出檔名  
            Response.ContentType = "application/pdf";
            Response.OutputStream.Write(bytesPDF, 0, bytesPDF.Length);
            Response.Flush();
            Response.Close();
        }
        report.Close();
        #endregion
    }
Esempio n. 11
0
    /// <summary>
    /// 利用 CrystalReport 列印 Excel 報表
    /// </summary>
    /// <param name="s_FileName">Excel報表的檔名</param>
    /// <param name="s_rptFilePath">rpt檔的路徑</param>
    /// <param name="dt_Source">要列印的資料</param>
    /// /// <param name="reportFormatType">檔案型態</param>
    private void LoadCrystalReport(string s_FileName, string s_rptFilePath, DataTable dt_Source, string reportFormatType)
    {
        CrystalDecisions.CrystalReports.Engine.ReportDocument report = new CrystalDecisions.CrystalReports.Engine.ReportDocument();

        report.Load(s_rptFilePath);
        report.SetDataSource(dt_Source);



        //判斷輸出檔案型態
        switch (reportFormatType)
        {
            case "EXCEL":

                System.IO.Stream streamXLS = report.ExportToStream(CrystalDecisions.Shared.ExportFormatType.Excel);
                byte[] bytesXLS = new byte[streamXLS.Length];
                streamXLS.Read(bytesXLS, 0, bytesXLS.Length);
                streamXLS.Seek(0, System.IO.SeekOrigin.Begin);

                //export file  
                Response.ClearContent();
                Response.ClearHeaders();
                Response.AddHeader("content-disposition", "attachment;filename=" + s_FileName);//excel檔名  


                Response.ContentType = "application/vnd.ms-excel";


                Response.OutputStream.Write(bytesXLS, 0, bytesXLS.Length);
                Response.Flush();
                Response.Close();

                break;
            case "PDF":

                string s_par_Program_ID = string.Empty;
                string s_par_LoginUser = string.Empty;
                string s_par_Date = string.Empty;

                

                //組報表名稱

                string type = "";
                if (radDealGoodsList.Checked) type = "1";
                else if (radDealTotal.Checked) type = "2";
                else type = "3";

             
                s_par_Program_ID = this.PageCode;
                s_par_LoginUser = Session["UID"].ToString();

                s_par_Date = SLP_SLPDate.Text;

                //取得門市對象及資料來源中文名稱
                string s_par_DELIV_EARLY = "", s_par_DATA_SOURCE = "";

                if (radTotal.Checked) s_par_DELIV_EARLY = radTotal.Text;
                else if (radViceStore.Checked) s_par_DELIV_EARLY = radViceStore.Text;
                else s_par_DELIV_EARLY = radAheadDealStore.Text;

                if (radPay.Checked) s_par_DATA_SOURCE = radPay.Text;
                else s_par_DATA_SOURCE = radStoreIn.Text;

               
                report.SetParameterValue("par_Program_ID", s_par_Program_ID);
                report.SetParameterValue("par_LoginUser", s_par_LoginUser);
                report.SetParameterValue("par_DELIV_EARLY", s_par_DELIV_EARLY);
                report.SetParameterValue("par_DATA_SOURCE", s_par_DATA_SOURCE);


                if (radDealTotal.Checked)//理貨彙總表
                {
                    report.SetParameterValue("par_ST_ACCEPT_DATE", s_par_Date);//門市進貨日

                    report.SetParameterValue("par_PICK_BACTH", txtProcBatch.Text);//理貨批次
                }
                else if (radOutRpt.Checked)
                {
                    report.SetParameterValue("par_ST_ACCEPT_DATE", s_par_Date);//門市進貨日

                    report.SetParameterValue("par_PICK_BACTH", txtProcBatch.Text);//理貨批次
                    report.SetParameterValue("par_TRANS_NO_FROM", ddlTransSt_S.SelectedItem.Text);//轉運站起
                    report.SetParameterValue("par_TRANS_NO_TO", ddlTransSt_E.SelectedItem.Text);//轉運站迄
                    report.SetParameterValue("par_ROUTE_FROM", SLP_Route_S.Text);//路線起

                    report.SetParameterValue("par_ROUTE_TO", SLP_Route_E.Text);//路線迄

                }


                System.IO.Stream streamPDF = report.ExportToStream(CrystalDecisions.Shared.ExportFormatType.PortableDocFormat);
                byte[] bytesPDF = new byte[streamPDF.Length];
                streamPDF.Read(bytesPDF, 0, bytesPDF.Length);
                streamPDF.Seek(0, System.IO.SeekOrigin.Begin);

                //export file  
                Response.ClearContent();
                Response.ClearHeaders();
                Response.AddHeader("content-disposition", "attachment;filename=" + s_FileName);//excel檔名  
                Response.ContentType = "application/pdf";
                Response.OutputStream.Write(bytesPDF, 0, bytesPDF.Length);
                Response.Flush();
                Response.Close();
                break;
            default:

                break;
        }

    }
Esempio n. 12
0
    /// <summary>
    /// 利用 CrystalReport 列印 Excel 報表
    /// </summary>
    /// <param name="s_FileName">Excel報表的檔名</param>
    /// <param name="s_rptFilePath">rpt檔的路徑</param>
    /// <param name="dt_Source">要列印的資料</param>
    /// /// <param name="reportFormatType">檔案型態</param>
    private void LoadCrystalReport(string s_FileName, string s_rptFilePath, DataTable dt_Source, string reportFormatType)
    {
        CrystalDecisions.CrystalReports.Engine.ReportDocument report = new CrystalDecisions.CrystalReports.Engine.ReportDocument();

        report.Load(s_rptFilePath);
        report.SetDataSource(dt_Source);


        string par_ProgramID = string.Empty;
        string par_LoginUser = string.Empty;

        #region 前置檢查與參數過濾

        DropDownList ddlCodeFile1 = (DropDownList)(this.SLP_CodeFile1.FindControl("D1"));
        string V_LOCATE_NO = this.SLP_CodeFile1.Text + " " + ddlCodeFile1.SelectedItem.Text;
        string V_LOCATE_SECTOR_S = this.ddlS.Text;
        string V_LOCATE_SECTOR_E = this.ddlE.Text;
        par_ProgramID = this.PageCode;
        par_LoginUser = Session["UID"].ToString() + " " + Get_LoginName();
        #endregion


        #region 組合查詢條件至ArrayList

        ArrayList returnList = new ArrayList();

        returnList.Clear();

        report.SetParameterValue("V_LOCATE_NO", V_LOCATE_NO);
        report.SetParameterValue("V_LOCATE_SECTOR_S", V_LOCATE_SECTOR_S);
        report.SetParameterValue("V_LOCATE_SECTOR_E", V_LOCATE_SECTOR_E);

        report.SetParameterValue("par_Program_ID", par_ProgramID);
        report.SetParameterValue("par_LoginUser", par_LoginUser);

        #endregion


        //判斷輸出檔案型態
        switch (reportFormatType)
        {
            case "EXCEL":

                System.IO.Stream streamXLS = report.ExportToStream(CrystalDecisions.Shared.ExportFormatType.Excel);
                byte[] bytesXLS = new byte[streamXLS.Length];
                streamXLS.Read(bytesXLS, 0, bytesXLS.Length);
                streamXLS.Seek(0, System.IO.SeekOrigin.Begin);

                //export file  
                Response.ClearContent();
                Response.ClearHeaders();
                Response.AddHeader("content-disposition", "attachment;filename=" + s_FileName);//excel檔名  


                Response.ContentType = "application/vnd.ms-excel";


                Response.OutputStream.Write(bytesXLS, 0, bytesXLS.Length);
                Response.Flush();
                Response.Close();
                report.Close();
                break;
            case "PDF":


                System.IO.Stream streamPDF = report.ExportToStream(CrystalDecisions.Shared.ExportFormatType.PortableDocFormat);
                byte[] bytesPDF = new byte[streamPDF.Length];
                streamPDF.Read(bytesPDF, 0, bytesPDF.Length);
                streamPDF.Seek(0, System.IO.SeekOrigin.Begin);

                //export file  
                Response.ClearContent();
                Response.ClearHeaders();
                Response.AddHeader("content-disposition", "attachment;filename=" + s_FileName);//excel檔名  
                Response.ContentType = "application/pdf";
                Response.OutputStream.Write(bytesPDF, 0, bytesPDF.Length);
                Response.Flush();
                Response.Close();
                report.Close();

                break;
            default:

                break;
        }

    }
Esempio n. 13
0
    /// <summary>
    /// show報表
    /// </summary>
    //private void ShowReport(DataTable Dt)
    //{
    //    try
    //    {
    //        string s_par_Program_ID = string.Empty;
    //        string s_par_LoginUser = string.Empty;

    //        CrystalDecisions.CrystalReports.Engine.ReportDocument report = new CrystalDecisions.CrystalReports.Engine.ReportDocument();

    //        report.Load(Server.MapPath("./REPORT/CGD251R01.rpt"));

    //        report.SetDataSource(Dt);

    //        s_par_Program_ID = this.PageCode;
    //        s_par_LoginUser = Session["UID"].ToString();

    //        //ParameterFields pars = new ParameterFields();
    //        //AddParameter("par_Program_ID", s_par_Program_ID, pars);
    //        //AddParameter("par_LoginUser", s_par_LoginUser, pars);

    //        this.CrystalReportViewer1.ReportSource = report;

    //        //this.CrystalReportViewer1.ParameterFieldInfo.Add(pars[0]);
    //        //this.CrystalReportViewer1.ParameterFieldInfo.Add(pars[1]);

    //        this.CrystalReportViewer1.Visible = true;


    //        Session["Rpt_Data_1" + PageTimeStamp.Value] = Dt;
    //        Session["ButtonSelect"] = "ShowReport";
    //    }
    //    catch (Exception ex)
    //    {
    //        ErrorMsgLabel.Text = ex.Message;
    //    }
    //    finally { }
    //}

    /// <summary>
    /// Show未列印報表
    /// </summary>
    /// <param name="Dt"></param>
    //private void ShowUnprintReport(DataTable Dt)
    //{
    //    try
    //    {
    //        string s_par_Program_ID = string.Empty;
    //        string s_par_LoginUser = string.Empty;

    //        CrystalDecisions.CrystalReports.Engine.ReportDocument report = new CrystalDecisions.CrystalReports.Engine.ReportDocument();

    //        report.Load(Server.MapPath("./REPORT/CGD251R02.rpt"));

    //        report.SetDataSource(Dt);

    //        s_par_Program_ID = this.PageCode;
    //        s_par_LoginUser = Session["UID"].ToString();

    //        ParameterFields pars = new ParameterFields();
    //        AddParameter("par_Program_ID", s_par_Program_ID, pars);
    //        AddParameter("par_LoginUser", s_par_LoginUser, pars);

    //        this.CrystalReportViewer1.ReportSource = report;

    //        this.CrystalReportViewer1.ParameterFieldInfo.Add(pars[0]);
    //        this.CrystalReportViewer1.ParameterFieldInfo.Add(pars[1]);

    //        this.CrystalReportViewer1.Visible = true;


    //        Session["Rpt_Data_2" + PageTimeStamp.Value] = Dt;
    //        Session["ButtonSelect"] = "ShowUnprintReport";
    //    }
    //    catch (Exception ex)
    //    {
    //        ErrorMsgLabel.Text = ex.Message;
    //    }
    //    finally { }
    //}

    /// <summary>
    /// 利用 CrystalReport 列印 Excel 報表
    /// </summary>
    /// <param name="s_FileName">Excel報表的檔名</param>
    /// <param name="s_rptFilePath">rpt檔的路徑</param>
    /// <param name="dt_Source">要列印的資料</param>
    private void LoadCrystalReport(string s_FileName, string s_rptFilePath, DataTable Dt)
    {
        CrystalDecisions.CrystalReports.Engine.ReportDocument report = new CrystalDecisions.CrystalReports.Engine.ReportDocument();

        report.Load(s_rptFilePath);
        report.SetDataSource(Dt);

        string s_par_Program_ID = this.PageCode;
        string s_par_LoginUser = Session["UID"].ToString();

        this.CrystalReportViewer1.ReportSource = report;

        report.SetParameterValue("par_Program_ID", s_par_Program_ID);
        report.SetParameterValue("par_LoginUser", s_par_LoginUser);

        System.IO.Stream stream = report.ExportToStream(CrystalDecisions.Shared.ExportFormatType.Excel);
        byte[] bytes = new byte[stream.Length];
        stream.Read(bytes, 0, bytes.Length);
        stream.Seek(0, System.IO.SeekOrigin.Begin);

        //export file  
        Response.ClearContent();
        Response.ClearHeaders();
        Response.AddHeader("content-disposition", "attachment;filename=" + s_FileName);//excel檔名  

        Response.ContentType = "application/vnd.ms-excel";

        Response.OutputStream.Write(bytes, 0, bytes.Length);
        Response.Flush();
        Response.Close();
    }
Esempio n. 14
0
    private void ShowReportDB(DataTable dt, int iMaxTarget, int iMaxSubsidy)
    {
        #region 利用CrystalReport列印報表

        //使用者名稱
        DataTable dt1 = new DataTable();
        dt1 = (DataTable)Session["UserInfo"];
        string Login_Name = dt1.Rows[0]["Name"].ToString();

        CrystalDecisions.CrystalReports.Engine.ReportDocument report = new CrystalDecisions.CrystalReports.Engine.ReportDocument();
        if (this.rdoType4.Checked)
            report.Load(Server.MapPath("./REPORT/VAM131/VAM131R04B.rpt"));
        else
            report.Load(Server.MapPath("./REPORT/VAM131/VAM131R05B.rpt"));

        DataTable dtR = new DataTable();
        dtR = this.MakeDTForRptD();
        string[] arrField, arrField1;
        arrField = new string[10] { "獎勵金一", "獎勵金二", "獎勵金三", "獎勵金四", "獎勵金五", "獎勵金六", "獎勵金七", "獎勵金八", "獎勵金九", "獎勵金十" };
        arrField1 = new string[10] { "物流費一", "物流費二", "物流費三", "物流費四", "物流費五", "物流費六", "物流費七", "物流費八", "物流費九", "物流費十" };

        for (int i = 0; i < dt.Rows.Count; i++)
        {
            DataRow drA = dtR.NewRow();
            drA[0] = dt.Rows[i][0].ToString();
            drA[1] = dt.Rows[i][1].ToString();
            if (dt.Rows[i][2].ToString() != "")
            {
                if (this.rdoType4.Checked)
                    drA[2] = Convert.ToDateTime(dt.Rows[i][2].ToString()).ToShortDateString();
                else
                    drA[2] = dt.Rows[i][2].ToString();
            }
            drA[3] = Convert.ToDecimal(dt.Rows[i][3].ToString());
            drA[4] = Convert.ToDecimal(dt.Rows[i][4].ToString());
            drA[5] = Convert.ToDecimal(dt.Rows[i][5].ToString());
            drA[6] = Convert.ToDecimal(dt.Rows[i][6].ToString());
            drA[7] = Convert.ToDecimal(dt.Rows[i][7].ToString());
            for (int j = 0; j < iMaxTarget; j++)
            {
                drA[8 + j] = Convert.ToDecimal(dt.Rows[i][8 + j].ToString());
            }

            for (int k = 0; k < iMaxSubsidy; k++)
            {
                drA[8 + iMaxTarget + k] = Convert.ToDecimal(dt.Rows[i][18 + k].ToString());
            }
            drA[8 + iMaxTarget + iMaxSubsidy] = Convert.ToDecimal(dt.Rows[i][28].ToString());

            for (int l = 29; l < 29 + iMaxTarget; l++)
            {
                if (dt.Rows[i][l].ToString() != "")
                    drA[l] = arrField[l - 29] + ":" + dt.Rows[i][l].ToString();
                else
                    drA[l] = dt.Rows[i][l].ToString();
            }
            dtR.Rows.Add(drA);
        }


        report.SetDataSource(dtR);

        for (int j = 0; j < iMaxTarget; j++)
        {
            report.SetParameterValue("par_Field" + Convert.ToString(9 + j), arrField[j]);
        }

        for (int j = 0; j < iMaxSubsidy; j++)
        {
            report.SetParameterValue("par_Field" + Convert.ToString(9 + iMaxTarget + j), arrField1[j]);
        }


        report.SetParameterValue("par_Field" + Convert.ToString(9 + iMaxTarget + iMaxSubsidy), "未稅金額");

        for (int j = 0; j < 20 - (iMaxTarget + iMaxSubsidy); j++)
        {
            report.SetParameterValue("par_Field" + Convert.ToString(10 + iMaxTarget + iMaxSubsidy + j), "");
        }

        //this.CryView.ReportSource = report;
        //檔案匯出
        System.IO.Stream streamXLS = report.ExportToStream(CrystalDecisions.Shared.ExportFormatType.Excel);
        byte[] bytesXLS = new byte[streamXLS.Length];
        streamXLS.Read(bytesXLS, 0, bytesXLS.Length);
        streamXLS.Seek(0, System.IO.SeekOrigin.Begin);
        //Export File  
        Response.ClearContent();
        Response.ClearHeaders();
        Response.AddHeader("content-disposition", "attachment;filename=" + HttpUtility.UrlEncode("停止往來及合約追溯彙總表_" + System.DateTime.Now.Year.ToString() + System.DateTime.Now.Month.ToString() + System.DateTime.Now.Day.ToString() + ".XLS", System.Text.Encoding.UTF8));//匯出檔名  
        Response.ContentType = "application/xls";
        Response.OutputStream.Write(bytesXLS, 0, bytesXLS.Length);
        Response.Flush();
        Response.Close();
        report.Close();

        #endregion
    }
Esempio n. 15
0
    private void ShowReportD(DataTable dt, int iMaxTarget, int iMaxSubsidy)
    {
        #region 利用CrystalReport列印報表

        //使用者名稱
        DataTable dt1 = new DataTable();
        dt1 = (DataTable)Session["UserInfo"];
        string Login_Name = dt1.Rows[0]["Name"].ToString();

        CrystalDecisions.CrystalReports.Engine.ReportDocument report = new CrystalDecisions.CrystalReports.Engine.ReportDocument();
        if (this.rdoType4.Checked)
        {
            if (this.rdoPrint1.Checked)
                report.Load(Server.MapPath("./REPORT/VAM131/VAM131R04.rpt"));
            else
                report.Load(Server.MapPath("./REPORT/VAM131/VAM131R04A.rpt"));
        }
        else
        {
            if (this.rdoPrint1.Checked)
                report.Load(Server.MapPath("./REPORT/VAM131/VAM131R05.rpt"));
            else
                report.Load(Server.MapPath("./REPORT/VAM131/VAM131R05A.rpt"));
        }

        DataTable dtR = new DataTable();
        dtR = this.MakeDTForRptD();
        string[] arrField, arrField1;
        arrField = new string[10] { "獎勵金一", "獎勵金二", "獎勵金三", "獎勵金四", "獎勵金五", "獎勵金六", "獎勵金七", "獎勵金八", "獎勵金九", "獎勵金十" };
        arrField1 = new string[10] { "物流費一", "物流費二", "物流費三", "物流費四", "物流費五", "物流費六", "物流費七", "物流費八", "物流費九", "物流費十" };

        for (int i = 0; i < dt.Rows.Count; i++)
        {
            DataRow drA = dtR.NewRow();
            drA[0] = dt.Rows[i][0].ToString();
            drA[1] = dt.Rows[i][1].ToString();
            if (dt.Rows[i][2].ToString() != "")
            {
                if (this.rdoType4.Checked)
                    drA[2] = Convert.ToDateTime(dt.Rows[i][2].ToString()).ToShortDateString();
                else
                    drA[2] = dt.Rows[i][2].ToString();
            }
            drA[3] = Convert.ToDecimal(dt.Rows[i][3].ToString());
            drA[4] = Convert.ToDecimal(dt.Rows[i][4].ToString());
            drA[5] = Convert.ToDecimal(dt.Rows[i][5].ToString());
            drA[6] = Convert.ToDecimal(dt.Rows[i][6].ToString());
            drA[7] = Convert.ToDecimal(dt.Rows[i][7].ToString());
            for (int j = 0; j < iMaxTarget; j++)
            {
                drA[8 + j] = Convert.ToDecimal(dt.Rows[i][8 + j].ToString());
            }

            for (int k = 0; k < iMaxSubsidy; k++)
            {
                drA[8 + iMaxTarget + k] = Convert.ToDecimal(dt.Rows[i][18 + k].ToString());
            }
            drA[8 + iMaxTarget + iMaxSubsidy] = Convert.ToDecimal(dt.Rows[i][28].ToString());

            for (int l = 29; l < 29 + iMaxTarget; l++)
            {
                if (dt.Rows[i][l].ToString() != "")
                    drA[l] = arrField[l - 29] + ":" + dt.Rows[i][l].ToString();
                else
                    drA[l] = dt.Rows[i][l].ToString();
            }
            dtR.Rows.Add(drA);
        }


        report.SetDataSource(dtR);
        //this.CryView.ReportSource = null;
        //ParameterFields par1 = new ParameterFields();
        //AddParameter("par_Program_ID", "VAM134R", par1);
        if (this.rdoType4.Checked)
            report.SetParameterValue("par_Program_ID", "VAM134R");
        else
            report.SetParameterValue("par_Program_ID", "VAM135R");
        //ParameterFields par2 = new ParameterFields();
        //AddParameter("par_LoginUser", Session["UID"].ToString() + Login_Name, par2);
        report.SetParameterValue("par_LoginUser", Session["UID"].ToString() + Login_Name);

        report.SetParameterValue("par_YEAR_MONTH", this.SLP_YearMonth1.Text.Trim());
        //ParameterFields par4 = new ParameterFields();
        if (this.rdoPrint1.Checked)
            //AddParameter("par_TYPE", "全部", par4);
            report.SetParameterValue("par_TYPE", "全部");
        else
            //AddParameter("par_TYPE", "分頁", par4);
            report.SetParameterValue("par_TYPE", "分頁");



        //this.CryView.ParameterFieldInfo.Add(par1[0]);
        //this.CryView.ParameterFieldInfo.Add(par2[0]);
        //this.CryView.ParameterFieldInfo.Add(par3[0]);
        //this.CryView.ParameterFieldInfo.Add(par4[0]);
        for (int j = 0; j < iMaxTarget; j++)
        {
            //ParameterFields pars = new ParameterFields();
            //AddParameter("par_Field" + Convert.ToString(9 + j), arrField[j], pars);
            //this.CryView.ParameterFieldInfo.Add(pars[0]);
            report.SetParameterValue("par_Field" + Convert.ToString(9 + j), arrField[j]);
        }

        for (int j = 0; j < iMaxSubsidy; j++)
        {
            //ParameterFields pars = new ParameterFields();
            //AddParameter("par_Field" + Convert.ToString(9 + iMaxTarget + j), arrField1[j], pars);
            //this.CryView.ParameterFieldInfo.Add(pars[0]);
            report.SetParameterValue("par_Field" + Convert.ToString(9 + iMaxTarget + j), arrField1[j]);
        }

        //ParameterFields par5 = new ParameterFields();
        //AddParameter("par_Field" + Convert.ToString(9 + iMaxTarget + iMaxSubsidy), "未稅金額", par5);
        //this.CryView.ParameterFieldInfo.Add(par5[0]);
        report.SetParameterValue("par_Field" + Convert.ToString(9 + iMaxTarget + iMaxSubsidy), "未稅金額");

        for (int j = 0; j < 20 - (iMaxTarget + iMaxSubsidy); j++)
        {
            //ParameterFields pars = new ParameterFields();
            //AddParameter("par_Field" + Convert.ToString(10 + iMaxTarget + iMaxSubsidy + j), "", pars);
            //this.CryView.ParameterFieldInfo.Add(pars[0]);
            report.SetParameterValue("par_Field" + Convert.ToString(10 + iMaxTarget + iMaxSubsidy + j), "");
        }

        //this.CryView.ReportSource = report;
        //檔案匯出
        System.IO.Stream streamPDF = report.ExportToStream(CrystalDecisions.Shared.ExportFormatType.PortableDocFormat);
        byte[] bytesPDF = new byte[streamPDF.Length];
        streamPDF.Read(bytesPDF, 0, bytesPDF.Length);
        streamPDF.Seek(0, System.IO.SeekOrigin.Begin);
        //Export File  
        Response.ClearContent();
        Response.ClearHeaders();
        Response.AddHeader("content-disposition", "attachment;filename=" + HttpUtility.UrlEncode("停止往來及合約追溯彙總表.PDF", System.Text.Encoding.UTF8));//匯出檔名  
        Response.ContentType = "application/pdf";
        Response.OutputStream.Write(bytesPDF, 0, bytesPDF.Length);
        Response.Flush();
        Response.Close();
        report.Close();
        #endregion
    }
Esempio n. 16
0
    private void ShowReportC(DataTable dt, int iMaxTarget, int iMaxSubsidy)
    {
        #region 利用CrystalReport列印報表

        //使用者名稱
        DataTable dt1 = new DataTable();
        dt1 = (DataTable)Session["UserInfo"];
        string Login_Name = dt1.Rows[0]["Name"].ToString();

        CrystalDecisions.CrystalReports.Engine.ReportDocument report = new CrystalDecisions.CrystalReports.Engine.ReportDocument();
        if (this.rdoPrint1.Checked)
        {
            //20120522 rika 異動為固定抓取10欄 故不再使用12欄位以上之報表 
            //if (iMaxTarget + iMaxSubsidy > 12)
            //    report.Load(Server.MapPath("./REPORT/VAM131/VAM131R03.rpt"));
            //else
            report.Load(Server.MapPath("./REPORT/VAM131/VAM131R03_2.rpt"));
        }
        else
        {
            //20120522 rika 異動為固定抓取10欄 故不再使用12欄位以上之報表 
            //if (iMaxTarget + iMaxSubsidy > 12)
            //    report.Load(Server.MapPath("./REPORT/VAM131/VAM131R03A.rpt"));
            //else
            report.Load(Server.MapPath("./REPORT/VAM131/VAM131R03A_2.rpt"));

        }

        DataTable dtR = new DataTable();
        dtR = this.MakeDTForRptC();
        string[] arrField, arrField1;
        arrField = new string[9] { "獎勵金", "物流費", "折扣補貼", "獎勵金五", "獎勵金六", "獎勵金七", "獎勵金八", "獎勵金九", "獎勵金十" };
        arrField1 = new string[9] { "獎勵金", "物流費", "折扣補貼", "物流費五", "物流費六", "物流費七", "物流費八", "物流費九", "物流費十" };

        for (int i = 0; i < dt.Rows.Count; i++)
        {
            DataRow drA = dtR.NewRow();
            drA[0] = dt.Rows[i][0].ToString();
            drA[1] = dt.Rows[i][1].ToString();
            drA[2] = Convert.ToDecimal(dt.Rows[i][2].ToString());
            drA[3] = Convert.ToDecimal(dt.Rows[i][3].ToString());
            drA[4] = Convert.ToDecimal(dt.Rows[i][4].ToString());
            drA[5] = Convert.ToDecimal(dt.Rows[i][5].ToString());
            drA[6] = Convert.ToDecimal(dt.Rows[i][6].ToString());
            drA[7] = Convert.ToDecimal(dt.Rows[i][7].ToString());
            drA[42] = Convert.ToDecimal(dt.Rows[i]["target_amt"].ToString());

            for (int j = 0; j < iMaxTarget; j++)
            {
                drA[8 + j] = Convert.ToDecimal(dt.Rows[i][8 + j].ToString());
            }

            for (int k = 0; k < iMaxSubsidy; k++)
            {
                drA[8 + iMaxTarget + k] = Convert.ToDecimal(dt.Rows[i][18 + k].ToString());
            }
            drA[8 + iMaxTarget + iMaxSubsidy] = Convert.ToDecimal(dt.Rows[i][28].ToString());
            drA[9 + iMaxTarget + iMaxSubsidy] = Convert.ToDecimal(dt.Rows[i][29].ToString());
            drA[10 + iMaxTarget + iMaxSubsidy] = Convert.ToDecimal(dt.Rows[i][30].ToString());
            drA[11 + iMaxTarget + iMaxSubsidy] = Convert.ToDecimal(dt.Rows[i][31].ToString());

            for (int l = 32; l < 32 + iMaxTarget; l++)
            {
                if (dt.Rows[i][l].ToString() != "")
                    drA[l] = arrField[l - 32] + ":" + dt.Rows[i][l].ToString();
                else
                    drA[l] = dt.Rows[i][l].ToString();
            }
            dtR.Rows.Add(drA);
        }


        report.SetDataSource(dtR);

        report.SetParameterValue("par_Program_ID", "VAM133R");

        report.SetParameterValue("par_LoginUser", Session["UID"].ToString() + Login_Name);

        report.SetParameterValue("par_YEAR_MONTH", this.SLP_YearMonth1.Text.Trim());

        if (this.rdoPrint1.Checked)
            report.SetParameterValue("par_TYPE", "全部");
        else
            report.SetParameterValue("par_TYPE", "分頁");


        for (int j = 0; j < iMaxTarget; j++)
        {
            report.SetParameterValue("par_Field" + Convert.ToString(9 + j), arrField[j]);
        }

        for (int j = 0; j < iMaxSubsidy; j++)
        {
            report.SetParameterValue("par_Field" + Convert.ToString(9 + iMaxTarget + j), arrField1[j]);
        }

        report.SetParameterValue("par_Field" + Convert.ToString(9 + iMaxTarget + iMaxSubsidy), "小計未稅");

        report.SetParameterValue("par_Field" + Convert.ToString(10 + iMaxTarget + iMaxSubsidy), "追溯金額");

        report.SetParameterValue("par_Field" + Convert.ToString(11 + iMaxTarget + iMaxSubsidy), "預收金額");

        report.SetParameterValue("par_Field" + Convert.ToString(12 + iMaxTarget + iMaxSubsidy), "合計(未稅)");

        for (int j = 0; j < 20 - (iMaxTarget + iMaxSubsidy); j++)
        {
            report.SetParameterValue("par_Field" + Convert.ToString(13 + iMaxTarget + iMaxSubsidy + j), "");
        }

        //this.CryView.ReportSource = report;
        //檔案匯出
        System.IO.Stream streamPDF = report.ExportToStream(CrystalDecisions.Shared.ExportFormatType.PortableDocFormat);
        byte[] bytesPDF = new byte[streamPDF.Length];
        streamPDF.Read(bytesPDF, 0, bytesPDF.Length);
        streamPDF.Seek(0, System.IO.SeekOrigin.Begin);
        //Export File  
        Response.ClearContent();
        Response.ClearHeaders();
        Response.AddHeader("content-disposition", "attachment;filename=" + HttpUtility.UrlEncode("各項扣款彙總表.PDF", System.Text.Encoding.UTF8));//匯出檔名  
        Response.ContentType = "application/pdf";
        Response.OutputStream.Write(bytesPDF, 0, bytesPDF.Length);
        Response.Flush();
        Response.Close();
        report.Close();
        #endregion
    }
Esempio n. 17
0
        public ActionResult ExportData_View_IU(ApplicationHeaderInfo pInfo, Pattent_Lao_Info pDetail,
                                               List <AppDocumentInfo> pAppDocumentInfo, List <AppFeeFixInfo> pFeeFixInfo,
                                               List <Other_MasterInfo> pOther_MasterInfo,
                                               List <Inventor_Info> pInventor_Info,
                                               List <AppClassDetailInfo> pAppClassInfo, List <AppDocumentOthersInfo> pAppDocOtherInfo,
                                               List <UTienInfo> pUTienInfo, List <AppDocumentOthersInfo> pLstImagePublic)
        {
            try
            {
                string _datetimenow = DateTime.Now.ToString("ddMMyyyyHHmm");
                string language     = AppsCommon.GetCurrentLang();
                //var objBL = new A01_BL();
                List <Pattent_Lao_Info_Export> _lst = new List <Pattent_Lao_Info_Export>();

                string fileName_pdf = System.Web.HttpContext.Current.Server.MapPath("/Content/Export/" + "L_Patent_VN_" + _datetimenow + ".pdf");
                if (language == Language.LangVI)
                {
                    fileName_pdf = System.Web.HttpContext.Current.Server.MapPath("/Content/Export/" + "L_Patent_VN_" + _datetimenow + ".pdf");
                    SessionData.CurrentUser.FilePreview = "/Content/Export/" + "L_Patent_VN_" + _datetimenow + ".pdf";
                }
                else
                {
                    fileName_pdf = System.Web.HttpContext.Current.Server.MapPath("/Content/Export/" + "L_Patent_EN_" + _datetimenow + ".pdf");
                    SessionData.CurrentUser.FilePreview = "/Content/Export/" + "L_Patent_EN_" + _datetimenow + ".pdf";
                }

                Pattent_Lao_Info_Export _A01_Info_Export = new Pattent_Lao_Info_Export();
                Pattent_Lao_Info_Export.CopyA01_Info(ref _A01_Info_Export, pDetail);

                foreach (var item in MemoryData.c_lst_Country)
                {
                    if (item.Country_Id == pInfo.Master_Country_Nationality)
                    {
                        pInfo.Master_Country_Nationality_Name = item.Name;
                    }
                    if (item.Country_Id == pInfo.Master_Country_Incorporation)
                    {
                        pInfo.Master_Country_Incorporation_Name = item.Name;
                    }
                    if (item.Country_Id == pInfo.Master_Country_Residence)
                    {
                        pInfo.Master_Country_Residence_Name = item.Name;
                    }
                }


                // Phí cố định
                List <AppFeeFixInfo> _lstFeeFix = Call_Fee.CallFee_PT_Lao(pDetail, pAppDocumentInfo, pUTienInfo, pLstImagePublic, pAppDocOtherInfo);

                Call_Fee.Prepare_Data_Export_PT_Lao(ref _A01_Info_Export, pInfo, pAppDocumentInfo, _lstFeeFix, pInventor_Info, pOther_MasterInfo,
                                                    pAppClassInfo, pAppDocOtherInfo, pUTienInfo, pLstImagePublic);

                _lst.Add(_A01_Info_Export);
                DataSet _ds_all = ConvertData.ConvertToDataSet <Pattent_Lao_Info_Export>(_lst, false);
                //_ds_all.WriteXml(@"D:\A01.xml", XmlWriteMode.WriteSchema);
                CrystalDecisions.CrystalReports.Engine.ReportDocument oRpt = new CrystalDecisions.CrystalReports.Engine.ReportDocument();

                string _tempfile = "L_Patent.rpt";
                //if (language == Language.LangEN)
                //{
                //    _tempfile = "L_Patent_EN.rpt";
                //}
                oRpt.Load(Path.Combine(Server.MapPath("~/Report/"), _tempfile));

                if (_ds_all != null)
                {
                    _ds_all.Tables[0].TableName = "Table1";
                    oRpt.Database.Tables["Table"].SetDataSource(_ds_all.Tables[0]);
                    //oRpt.SetDataSource(_ds_all);
                }
                oRpt.Refresh();

                Response.Buffer = false;
                Response.ClearContent();
                Response.ClearHeaders();

                //oRpt.ExportToDisk(ExportFormatType.PortableDocFormat, fileName_pdf);

                System.IO.Stream oStream   = oRpt.ExportToStream(ExportFormatType.PortableDocFormat);
                byte[]           byteArray = new byte[oStream.Length];
                oStream.Read(byteArray, 0, Convert.ToInt32(oStream.Length - 1));
                System.IO.File.WriteAllBytes(fileName_pdf, byteArray.ToArray()); // Requires System.Linq

                return(Json(new { success = 0 }));
            }
            catch (Exception ex)
            {
                Logger.LogException(ex);
                return(Json(new { success = 0 }));
            }
        }
Esempio n. 18
0
        public ActionResult ExportData_View(decimal pAppHeaderId, string p_appCode, string p_Language)
        {
            try
            {
                string _datetimenow = DateTime.Now.ToString("ddMMyyyyHHmm");
                string language     = AppsCommon.GetCurrentLang();

                var objBL = new C08_BL();
                List <C08_Info_Export> _lst = new List <C08_Info_Export>();

                List <AppDocumentInfo>       appDocumentInfos       = new List <AppDocumentInfo>();
                List <AppFeeFixInfo>         _lst_appFeeFixInfos    = new List <AppFeeFixInfo>();
                ApplicationHeaderInfo        applicationHeaderInfo  = new ApplicationHeaderInfo();
                List <Other_MasterInfo>      _lst_Other_MasterInfo  = new List <Other_MasterInfo>();
                List <AppDocumentOthersInfo> _LstDocumentOthersInfo = new List <AppDocumentOthersInfo>();
                C08_Info_Export pDetail = objBL.GetByID_Exp(pAppHeaderId, language, ref applicationHeaderInfo, ref appDocumentInfos, ref _lst_appFeeFixInfos,
                                                            ref _lst_Other_MasterInfo, ref _LstDocumentOthersInfo);

                string fileName_pdf = System.Web.HttpContext.Current.Server.MapPath("/Content/Export/" + "C08_VN_" + _datetimenow + ".pdf");
                if (pDetail.Languague_Code == Language.LangVI)
                {
                    fileName_pdf = System.Web.HttpContext.Current.Server.MapPath("/Content/Export/" + "C08_VN_" + _datetimenow + ".pdf");
                    SessionData.CurrentUser.FilePreview = "/Content/Export/" + "C08_VN_" + _datetimenow + ".pdf";
                }
                else
                {
                    fileName_pdf = System.Web.HttpContext.Current.Server.MapPath("/Content/Export/" + "C08_EN_" + _datetimenow + ".pdf");
                    SessionData.CurrentUser.FilePreview = "/Content/Export/" + "C08_EN_" + _datetimenow + ".pdf";
                }

                Prepare_Data_Export_C08(ref pDetail, applicationHeaderInfo, appDocumentInfos, _lst_appFeeFixInfos, _lst_Other_MasterInfo,
                                        _LstDocumentOthersInfo);

                _lst.Add(pDetail);
                DataSet _ds_all = ConvertData.ConvertToDataSet <C08_Info_Export>(_lst, false);
                try
                {
                    _ds_all.WriteXml(@"C:\inetpub\C08.xml", XmlWriteMode.WriteSchema);
                }
                catch (Exception ex)
                {
                    Logger.LogException(ex);
                }
                CrystalDecisions.CrystalReports.Engine.ReportDocument oRpt = new CrystalDecisions.CrystalReports.Engine.ReportDocument();

                string _tempfile = "C08.rpt";
                if (p_Language == Language.LangEN)
                {
                    _tempfile = "C08_EN.rpt";
                }
                oRpt.Load(Path.Combine(Server.MapPath("~/Report/"), _tempfile));

                if (_ds_all != null)
                {
                    _ds_all.Tables[0].TableName = "Table";
                    oRpt.SetDataSource(_ds_all);
                }
                oRpt.Refresh();

                Response.Buffer = false;
                Response.ClearContent();
                Response.ClearHeaders();

                //oRpt.ExportToDisk(ExportFormatType.PortableDocFormat, fileName_pdf);

                System.IO.Stream oStream   = oRpt.ExportToStream(ExportFormatType.PortableDocFormat);
                byte[]           byteArray = new byte[oStream.Length];
                oStream.Read(byteArray, 0, Convert.ToInt32(oStream.Length - 1));
                System.IO.File.WriteAllBytes(fileName_pdf, byteArray.ToArray()); // Requires System.Linq


                return(Json(new { success = 0 }));
            }
            catch (Exception ex)
            {
                Logger.LogException(ex);
                return(Json(new { success = 0 }));
            }
        }
Esempio n. 19
0
        public ActionResult ExportData_View_IU(ApplicationHeaderInfo pInfo, A02_Info pDetail,
                                               List <AppDocumentInfo> pAppDocumentInfo, List <AppFeeFixInfo> pFeeFixInfo,
                                               List <AuthorsInfo> pAppAuthorsInfo, List <Other_MasterInfo> pOther_MasterInfo,
                                               List <AppClassDetailInfo> pAppClassInfo, List <AppDocumentOthersInfo> pAppDocOtherInfo,
                                               List <UTienInfo> pUTienInfo, List <AppDocumentOthersInfo> pAppDocDesign)
        {
            try
            {
                string _datetimenow         = DateTime.Now.ToString("ddMMyyyyHHmm");
                string language             = AppsCommon.GetCurrentLang();
                var    objBL                = new A02_BL();
                List <A02_Info_Export> _lst = new List <A02_Info_Export>();

                string p_appCode = "A02_Preview";

                string fileName_pdf = System.Web.HttpContext.Current.Server.MapPath("/Content/Export/" + "A02_VN_" + _datetimenow + ".pdf");
                if (language == Language.LangVI)
                {
                    fileName_pdf = System.Web.HttpContext.Current.Server.MapPath("/Content/Export/" + "A02_VN_" + _datetimenow + ".pdf");
                    SessionData.CurrentUser.FilePreview = "/Content/Export/" + "A02_VN_" + _datetimenow + ".pdf";
                }
                else
                {
                    fileName_pdf = System.Web.HttpContext.Current.Server.MapPath("/Content/Export/" + "A02_EN_" + _datetimenow + ".pdf");
                    SessionData.CurrentUser.FilePreview = "/Content/Export/" + "A02_EN_" + _datetimenow + ".pdf";
                }

                A02_Info_Export _A02_Info_Export = new A02_Info_Export();
                A02_Info_Export.CopyA02_Info(ref _A02_Info_Export, pDetail);


                // Phí cố định

                List <AppFeeFixInfo> _lstFeeFix = Call_Fee.CallFee_A02(pDetail, pAppDocumentInfo, pAppDocDesign);
                Prepare_Data_Export_A02(ref _A02_Info_Export, pInfo, pAppDocumentInfo, _lstFeeFix, pAppAuthorsInfo, pOther_MasterInfo,
                                        pAppDocOtherInfo, pAppDocDesign);

                _lst.Add(_A02_Info_Export);
                DataSet _ds_all = ConvertData.ConvertToDataSet <A02_Info_Export>(_lst, false);
                //_ds_all.WriteXml(@"C:\inetpub\A02.xml", XmlWriteMode.WriteSchema);
                CrystalDecisions.CrystalReports.Engine.ReportDocument oRpt = new CrystalDecisions.CrystalReports.Engine.ReportDocument();

                string _tempfile = "A02.rpt";
                if (language == Language.LangEN)
                {
                    _tempfile = "A02_EN.rpt";
                }
                oRpt.Load(Path.Combine(Server.MapPath("~/Report/"), _tempfile));

                if (_ds_all != null)
                {
                    _ds_all.Tables[0].TableName = "Table1";
                    oRpt.SetDataSource(_ds_all);
                }
                oRpt.Refresh();

                Response.Buffer = false;
                Response.ClearContent();
                Response.ClearHeaders();


                System.IO.Stream oStream   = oRpt.ExportToStream(ExportFormatType.PortableDocFormat);
                byte[]           byteArray = new byte[oStream.Length];
                oStream.Read(byteArray, 0, Convert.ToInt32(oStream.Length - 1));
                System.IO.File.WriteAllBytes(fileName_pdf, byteArray.ToArray()); // Requires System.Linq

                return(Json(new { success = 0 }));
            }
            catch (Exception ex)
            {
                Logger.LogException(ex);
                return(Json(new { success = 0 }));
            }
        }
Esempio n. 20
0
        public ActionResult ExportData_IU(ApplicationHeaderInfo pInfo, App_Detail_PLB01_SDD_Info pDetail,
                                          List <AppDocumentInfo> pAppDocumentInfo, List <AppFeeFixInfo> pFeeFixInfo)
        {
            try
            {
                string language = AppsCommon.GetCurrentLang();
                //string language = pInfo.View_Language_Report;

                string        _fileTemp = System.Web.HttpContext.Current.Server.MapPath("/Content/AppForms/B01_VI.docx");
                DocumentModel document  = DocumentModel.Load(_fileTemp);

                // Fill export_header
                AppsCommon.Prepare_Data_Export_3B(ref pDetail, pInfo, pAppDocumentInfo);
                List <App_Detail_PLB01_SDD_Info> _lst = new List <App_Detail_PLB01_SDD_Info>();
                _lst.Add(pDetail);
                DataSet _ds_all = ConvertData.ConvertToDataSet <App_Detail_PLB01_SDD_Info>(_lst, false);
                //_ds_all.Tables[0].TableName = "Table";
                //_ds_all.WriteXml(@"C:\inetpub\B01.xml", XmlWriteMode.WriteSchema);

                CrystalDecisions.CrystalReports.Engine.ReportDocument oRpt = new CrystalDecisions.CrystalReports.Engine.ReportDocument();
                string _tempfile    = "TM_PLB01SDD.rpt";
                string _datetimenow = DateTime.Now.ToString("ddMMyyyyHHmm");
                string fileName_pdf = System.Web.HttpContext.Current.Server.MapPath("/Content/Export/" + "B01_VN_" + _datetimenow + ".pdf");
                if (language == Language.LangVI)
                {
                    fileName_pdf = System.Web.HttpContext.Current.Server.MapPath("/Content/Export/" + "B01_VN_" + _datetimenow + ".pdf");
                    SessionData.CurrentUser.FilePreview = "/Content/Export/" + "B01_VN_" + _datetimenow + ".pdf";
                }
                else
                {
                    _tempfile    = "TM_PLB01SDD_EN.rpt"; // tiếng anh
                    fileName_pdf = System.Web.HttpContext.Current.Server.MapPath("/Content/Export/" + "B01_EN_" + _datetimenow + ".pdf");
                    SessionData.CurrentUser.FilePreview = "/Content/Export/" + "B01_EN_" + _datetimenow + ".pdf";
                }

                oRpt.Load(Path.Combine(Server.MapPath("~/Report/"), _tempfile));

                if (_ds_all != null)
                {
                    _ds_all.Tables[0].TableName = "Table";

                    oRpt.Database.Tables["Table"].SetDataSource(_ds_all.Tables[0]);
                    //oRpt.SetDataSource(_ds_all);
                }
                oRpt.Refresh();

                Response.Buffer = false;
                Response.ClearContent();
                Response.ClearHeaders();

                System.IO.Stream oStream   = oRpt.ExportToStream(ExportFormatType.PortableDocFormat);
                byte[]           byteArray = new byte[oStream.Length];
                oStream.Read(byteArray, 0, Convert.ToInt32(oStream.Length - 1));
                System.IO.File.WriteAllBytes(fileName_pdf, byteArray.ToArray()); // Requires System.Linq
                return(Json(new { success = 0 }));
            }
            catch (Exception ex)
            {
                Logger.LogException(ex);
                return(Json(new { success = 0 }));
            }
        }
Esempio n. 21
0
    // show報表
    private void ShowReport(DataTable Dt)
    {
        try
        {
            string strFileName = "";
            CrystalDecisions.CrystalReports.Engine.ReportDocument report = new CrystalDecisions.CrystalReports.Engine.ReportDocument();

            report.Load(Server.MapPath("./REPORT/PUR09/CRPUR09R01.rpt"));
            strFileName = HttpUtility.UrlEncode("每日出貨品項維護.PDF", System.Text.Encoding.UTF8);

            report.SetDataSource(Dt);

            string Login_Name = ((DataTable)Session["UserInfo"]).Rows[0]["Name"].ToString();
            report.SetParameterValue("par_Program_ID", "PUR09");
            report.SetParameterValue("par_LoginUser", Session["UID"].ToString() + Login_Name);
            report.SetParameterValue("par_StAcceptDate", this.txtPLAN_ACCEPT_DATE.Text);
            report.SetParameterValue("par_PickBatch", this.txtPICK_BATCH.Text);

            System.IO.Stream streamPDF = report.ExportToStream(CrystalDecisions.Shared.ExportFormatType.PortableDocFormat);
            byte[] bytesPDF = new byte[streamPDF.Length];
            streamPDF.Read(bytesPDF, 0, bytesPDF.Length);
            streamPDF.Seek(0, System.IO.SeekOrigin.Begin);

            //export file  
            Response.ClearContent();
            Response.ClearHeaders();
            Response.AddHeader("content-disposition", "attachment;filename=" + strFileName);//pdf檔名  
            Response.ContentType = "application/pdf";
            Response.OutputStream.Write(bytesPDF, 0, bytesPDF.Length);
            Response.Flush();
            Response.Close();
        }
        catch (Exception ex)
        {
            ErrorMsgLabel.Text = ex.Message;
        }
        finally { }
    }
Esempio n. 22
0
    /// <summary>
    /// 利用 CrystalReport 列印報表
    /// </summary>
    /// <param name="s_FileName">Excel報表的檔名</param>
    /// <param name="s_rptFilePath">rpt檔的路徑</param>
    /// <param name="dt_Source">要列印的資料</param>
    /// <param name="reportFormatType">檔案型態</param>
    private void LoadCrystalReport(string s_FileName, string s_rptFilePath, DataTable dt_Source, string reportFormatType)
    {
        CrystalDecisions.CrystalReports.Engine.ReportDocument report = new CrystalDecisions.CrystalReports.Engine.ReportDocument();

        report.Load(s_rptFilePath);
        report.SetDataSource(dt_Source);


        #region 取得各輸入值

        string s_par_Program_ID = string.Empty;
        string s_par_LoginUser = string.Empty;
        string s_par_ST_Accept_Date = string.Empty;
        string s_par_Trans_No_S = string.Empty;
        string s_par_Trans_No_E = string.Empty;
        string s_par_Trans_Vendor_S = string.Empty;
        string s_par_Trans_Vendor_E = string.Empty;
        string s_par_Route_S = string.Empty;
        string s_par_Route_E = string.Empty;
        string s_par_StoreChain_S = string.Empty;
        string s_par_StoreChain_E = string.Empty;
        string s_par_Report = string.Empty;


        s_par_Program_ID = this.PageCode;
        s_par_LoginUser = Session["UID"].ToString();
        s_par_ST_Accept_Date = SLP_SLPDate.Text;
        s_par_Trans_No_S = SLP_Trans_No_S.Text + " " + ((DropDownList)SLP_Trans_No_S.FindControl("D1")).SelectedItem.Text;
        s_par_Trans_No_E = SLP_Trans_No_E.Text + " " + ((DropDownList)SLP_Trans_No_E.FindControl("D1")).SelectedItem.Text;
        s_par_Trans_Vendor_S = SLP_Trans_Vendor_S.Text + " " + ((DropDownList)SLP_Trans_Vendor_S.FindControl("D1")).SelectedItem.Text;
        s_par_Trans_Vendor_E = SLP_Trans_Vendor_E.Text + " " + ((DropDownList)SLP_Trans_Vendor_E.FindControl("D1")).SelectedItem.Text;

        if (((TextBox)SLP_Route_S.FindControl("TextBoxCode")).Text != "")
        {
            s_par_Route_S = ((TextBox)SLP_Route_S.FindControl("TextBoxCode")).Text + " " + Request[SLP_Route_S.TextBox_Name.UniqueID].ToString();
        }
        else
        {
            s_par_Route_S = "";
        }

        if (((TextBox)SLP_Route_E.FindControl("TextBoxCode")).Text != "")
        {
            s_par_Route_E = ((TextBox)SLP_Route_E.FindControl("TextBoxCode")).Text + " " + Request[SLP_Route_E.TextBox_Name.UniqueID].ToString();
        }
        else
        {
            s_par_Route_E = "";
        }

        if (((TextBox)SLP_StoreChain_S.FindControl("TextBoxCode")).Text != "")
        {
            s_par_StoreChain_S = ((TextBox)SLP_StoreChain_S.FindControl("TextBoxCode")).Text + " " + Request[SLP_StoreChain_S.TextBox_Name.UniqueID].ToString(); 
        }
        else
        {
            s_par_StoreChain_S = "";
        }

        if (((TextBox)SLP_StoreChain_E.FindControl("TextBoxCode")).Text != "")
        {
            s_par_StoreChain_E = ((TextBox)SLP_StoreChain_E.FindControl("TextBoxCode")).Text + " " + Request[SLP_StoreChain_E.TextBox_Name.UniqueID].ToString(); 
        }
        else
        {
            s_par_StoreChain_E = "";
        }

        s_par_Report = rblPrintType.SelectedItem.Text;

        #endregion


        report.SetParameterValue("par_Program_ID", s_par_Program_ID);
        report.SetParameterValue("par_LoginUser", s_par_LoginUser);
        report.SetParameterValue("par_ST_Accept_Date", s_par_ST_Accept_Date);
        report.SetParameterValue("par_Trans_No", s_par_Trans_No_S + " ~ " + s_par_Trans_No_E);
        report.SetParameterValue("par_Trans_Vendor", s_par_Trans_Vendor_S + " ~ " + s_par_Trans_Vendor_E);
        report.SetParameterValue("par_Routee", s_par_Route_S + " ~ " + s_par_Route_E);
        report.SetParameterValue("par_StoreChain", s_par_StoreChain_S + " ~ " + s_par_StoreChain_E);
        report.SetParameterValue("par_Report", s_par_Report);


        #region 判斷輸出檔案型態並輸出


        switch (reportFormatType)
        {
            case "EXCEL":

                System.IO.Stream streamXLS = report.ExportToStream(CrystalDecisions.Shared.ExportFormatType.Excel);
                byte[] bytesXLS = new byte[streamXLS.Length];
                streamXLS.Read(bytesXLS, 0, bytesXLS.Length);
                streamXLS.Seek(0, System.IO.SeekOrigin.Begin);

                //export file  
                Response.ClearContent();
                Response.ClearHeaders();
                Response.AddHeader("content-disposition", "attachment;filename=" + s_FileName);//excel檔名  
                Response.ContentType = "application/vnd.ms-excel";
                Response.OutputStream.Write(bytesXLS, 0, bytesXLS.Length);
                Response.Flush();
                Response.Close();

                break;


            case "PDF":

                System.IO.Stream streamPDF = report.ExportToStream(CrystalDecisions.Shared.ExportFormatType.PortableDocFormat);
                byte[] bytesPDF = new byte[streamPDF.Length];
                streamPDF.Read(bytesPDF, 0, bytesPDF.Length);
                streamPDF.Seek(0, System.IO.SeekOrigin.Begin);

                //export file  
                Response.ClearContent();
                Response.ClearHeaders();
                Response.AddHeader("content-disposition", "attachment;filename=" + s_FileName);//excel檔名  
                Response.ContentType = "application/pdf";
                Response.OutputStream.Write(bytesPDF, 0, bytesPDF.Length);
                Response.Flush();
                Response.Close();
                break;


            default:

                break;


        #endregion

        }

        report.Close();

    }
Esempio n. 23
0
    /// <summary>
    /// 利用 CrystalReport 列印 Excel 報表
    /// </summary>
    /// <param name="s_FileName">Excel報表的檔名</param>
    /// <param name="s_rptFilePath">rpt檔的路徑</param>
    /// <param name="dt_Source">要列印的資料</param>
    /// /// <param name="reportFormatType">檔案型態</param>
    private void LoadCrystalReport(string s_FileName, string s_rptFilePath, DataTable dt_Source, string reportFormatType)
    {
        CrystalDecisions.CrystalReports.Engine.ReportDocument report = new CrystalDecisions.CrystalReports.Engine.ReportDocument();

        report.Load(s_rptFilePath);
        report.SetDataSource(dt_Source);

        string s_par_Reqno = string.Empty;
        string s_par_Rolecode = string.Empty;
        string s_par_UserID = string.Empty;
        string s_par_UseName = string.Empty;
        string s_par_Signdate = string.Empty;
        string s_par_ReqLevel = string.Empty;
        string s_par_ReqType = string.Empty;
        string s_par_ReqStatus = string.Empty;
        string s_par_SysDesc = string.Empty;
        string s_par_WantDate = string.Empty;
        string s_par_ReqGist = string.Empty;
        string s_par_ReqDesc = string.Empty;

        s_par_Reqno = dt_Source.Rows[0]["REQ_NO"].ToString();
        s_par_Rolecode = dt_Source.Rows[0]["ROLECODE"].ToString();
        s_par_UseName = dt_Source.Rows[0]["USER_NAME"].ToString();
        if (dt_Source.Rows[0]["SIGN_DATE"].ToString() != "")
        {
            s_par_Signdate = DateTime.Parse(dt_Source.Rows[0]["SIGN_DATE"].ToString()).ToString("yyyy/MM/dd");
        }
        s_par_ReqLevel = dt_Source.Rows[0]["REQ_LEVEL"].ToString();
        s_par_ReqType = dt_Source.Rows[0]["REQ_TYPE"].ToString();
        s_par_ReqStatus = dt_Source.Rows[0]["REQ_STATUS"].ToString();
        s_par_SysDesc = dt_Source.Rows[0]["SYSDESC"].ToString();
        if (dt_Source.Rows[0]["WANT_DATE"].ToString() != "")
        {
            s_par_WantDate = DateTime.Parse(dt_Source.Rows[0]["WANT_DATE"].ToString()).ToString("yyyy/MM/dd");
        }
        s_par_ReqGist = dt_Source.Rows[0]["REQ_GIST"].ToString();
        s_par_ReqDesc = dt_Source.Rows[0]["REQ_DESC"].ToString();

        report.SetParameterValue("par_Reqno", s_par_Reqno);
        report.SetParameterValue("par_Rolecode", s_par_Rolecode);
        report.SetParameterValue("par_UseName", s_par_UseName);
        report.SetParameterValue("par_Signdate", s_par_Signdate);
        report.SetParameterValue("par_ReqLevel", s_par_ReqLevel);
        report.SetParameterValue("par_ReqType", s_par_ReqType);
        report.SetParameterValue("par_ReqStatus", s_par_ReqStatus);
        report.SetParameterValue("par_SysDesc", s_par_SysDesc);
        report.SetParameterValue("par_WantDate", s_par_WantDate);
        report.SetParameterValue("par_ReqGist", s_par_ReqGist);
        report.SetParameterValue("par_ReqDesc", s_par_ReqDesc);

        //判斷輸出檔案型態
        switch (reportFormatType)
        {
            case "EXCEL":
                System.IO.Stream streamXLS = report.ExportToStream(CrystalDecisions.Shared.ExportFormatType.Excel);
                byte[] bytesXLS = new byte[streamXLS.Length];
                streamXLS.Read(bytesXLS, 0, bytesXLS.Length);
                streamXLS.Seek(0, System.IO.SeekOrigin.Begin);

                //export file  
                Response.ClearContent();
                Response.ClearHeaders();
                Response.AddHeader("content-disposition", "attachment;filename=" + s_FileName);//excel檔名  

                Response.ContentType = "application/vnd.ms-excel";

                Response.OutputStream.Write(bytesXLS, 0, bytesXLS.Length);
                Response.Flush();
                Response.Close();

                break;
            case "PDF":
                System.IO.Stream streamPDF = report.ExportToStream(CrystalDecisions.Shared.ExportFormatType.PortableDocFormat);
                byte[] bytesPDF = new byte[streamPDF.Length];
                streamPDF.Read(bytesPDF, 0, bytesPDF.Length);
                streamPDF.Seek(0, System.IO.SeekOrigin.Begin);

                //export file  
                Response.ClearContent();
                Response.ClearHeaders();
                Response.AddHeader("content-disposition", "attachment;filename=" + s_FileName);//excel檔名  
                Response.ContentType = "application/pdf";
                Response.OutputStream.Write(bytesPDF, 0, bytesPDF.Length);
                Response.Flush();
                Response.Close();

                break;
            default:
                break;
        }
    }
Esempio n. 24
0
    /// <summary>
    /// show報表
    /// </summary>
    private void ShowReport(DataTable Dt)
    {
        try
        {
            string strFileName = "";
            CrystalDecisions.CrystalReports.Engine.ReportDocument report = new CrystalDecisions.CrystalReports.Engine.ReportDocument();
            if (TabContainer2.ActiveTabIndex == 0)
            {
                report.Load(Server.MapPath("./REPORT/MKT07/CRMKT07R01.rpt"));
                strFileName = HttpUtility.UrlEncode("PMA(大分類)銷售查詢.PDF", System.Text.Encoding.UTF8);
            }
            if (TabContainer2.ActiveTabIndex == 1)
            {
                report.Load(Server.MapPath("./REPORT/MKT07/CRMKT07R02.rpt"));
                strFileName = HttpUtility.UrlEncode("PMA(中分類)銷售查詢.PDF", System.Text.Encoding.UTF8);
            }
            if (TabContainer2.ActiveTabIndex == 2)
            {
                report.Load(Server.MapPath("./REPORT/MKT07/CRMKT07R03.rpt"));
                strFileName = HttpUtility.UrlEncode("PMA(小分類)銷售查詢.PDF", System.Text.Encoding.UTF8);
            }
            report.SetDataSource(Dt);

            string Login_Name = ((DataTable)Session["UserInfo"]).Rows[0]["Name"].ToString();
            report.SetParameterValue("par_Program_ID", "MKT07");
            report.SetParameterValue("par_LoginUser", Session["UID"].ToString() + Login_Name);
            report.SetParameterValue("par_StAcceptDate", SLP_MDC_START_DATE.StartDate + "~" + SLP_MDC_START_DATE.EndDate);
            if (TabContainer2.ActiveTabIndex == 0)
            {
                report.SetParameterValue("par_ROOTDate", SLP_ROOT_NO_S.Text + Page.Request.Form[SLP_ROOT_NO_S.TextBox_Name.UniqueID] + "~" + SLP_ROOT_NO_E.Text + Page.Request.Form[SLP_ROOT_NO_E.TextBox_Name.UniqueID]);
                report.SetParameterValue("par_PMADate", SLP_PMA_S.Text + Page.Request.Form[SLP_PMA_S.TextBox_Name.UniqueID] + "~" + SLP_PMA_E.Text + Page.Request.Form[SLP_PMA_E.TextBox_Name.UniqueID]);
            }
            if (TabContainer2.ActiveTabIndex == 1)
            {
                report.SetParameterValue("par_ROOTDate", SLP_ROOT_NO_S.Text + Page.Request.Form[SLP_ROOT_NO_S.TextBox_Name.UniqueID] + "~" + SLP_ROOT_NO_E.Text + Page.Request.Form[SLP_ROOT_NO_E.TextBox_Name.UniqueID]);
                report.SetParameterValue("par_PMADate", SLP_PMA_S.Text + Page.Request.Form[SLP_PMA_S.TextBox_Name.UniqueID] + "~" + SLP_PMA_E.Text + Page.Request.Form[SLP_PMA_E.TextBox_Name.UniqueID]);
                report.SetParameterValue("par_CATEGORYDate", SLP_CATEGORY_S.Text + Page.Request.Form[SLP_CATEGORY_S.TextBox_Name.UniqueID] + "~" + SLP_CATEGORY_E.Text + Page.Request.Form[SLP_CATEGORY_E.TextBox_Name.UniqueID]);
            }
            if (TabContainer2.ActiveTabIndex == 2)
            {
                report.SetParameterValue("par_ROOTDate", SLP_ROOT_NO_S.Text + Page.Request.Form[SLP_ROOT_NO_S.TextBox_Name.UniqueID] + "~" + this.SLP_ROOT_NO_E.Text + Page.Request.Form[SLP_ROOT_NO_E.TextBox_Name.UniqueID]);
                report.SetParameterValue("par_PMADate", SLP_PMA_S.Text + Page.Request.Form[SLP_PMA_S.TextBox_Name.UniqueID] + "~" + SLP_PMA_E.Text + Page.Request.Form[SLP_PMA_E.TextBox_Name.UniqueID]);
                report.SetParameterValue("par_CATEGORYDate", SLP_CATEGORY_S.Text + Page.Request.Form[SLP_CATEGORY_S.TextBox_Name.UniqueID] + "~" + SLP_CATEGORY_E.Text + Page.Request.Form[SLP_CATEGORY_E.TextBox_Name.UniqueID]);
                report.SetParameterValue("par_SORTOUTDate", SLP_SORTOUT_S.Text + Page.Request.Form[SLP_SORTOUT_S.TextBox_Name.UniqueID] + "~" + SLP_SORTOUT_E.Text + Page.Request.Form[SLP_SORTOUT_E.TextBox_Name.UniqueID]);
            }
            System.IO.Stream streamPDF = report.ExportToStream(CrystalDecisions.Shared.ExportFormatType.PortableDocFormat);
            byte[] bytesPDF = new byte[streamPDF.Length];
            streamPDF.Read(bytesPDF, 0, bytesPDF.Length);
            streamPDF.Seek(0, System.IO.SeekOrigin.Begin);

            //export file  
            Response.ClearContent();
            Response.ClearHeaders();
            Response.AddHeader("content-disposition", "attachment;filename=" + strFileName);//pdf檔名  
            Response.ContentType = "application/pdf";
            Response.OutputStream.Write(bytesPDF, 0, bytesPDF.Length);
            Response.Flush();
            Response.Close();
        }
        catch (Exception ex)
        {
            ErrorMsgLabel.Text = ex.Message;
        }
        finally { }
    }
Esempio n. 25
0
    /// <summary>
    /// 產生報表
    /// </summary>
    /// <param name="dt">DataTable資料</param>
    /// <param name="exp_type">產生PDF或Excel</param>
    private void ShowReport(DataTable dt, string exp_type)
    {
        try
        {
            CrystalDecisions.CrystalReports.Engine.ReportDocument report = new CrystalDecisions.CrystalReports.Engine.ReportDocument();

            report.Load(Server.MapPath("./REPORT/VAM111/VAM11R.rpt"));
            report.SetDataSource(dt);

            DataTable dt1 = new DataTable();
            dt1 = (DataTable)Session["UserInfo"];
            string Login_Name = dt1.Rows[0]["Name"].ToString();

            //CrystalReport Parameter 參數設定
            string Program_ID = string.Empty;
            string LoginUser = string.Empty;

            string strParFDate = string.Empty;
            string strParFSType = string.Empty;
            string strParFTaxType = string.Empty;

            Program_ID = this.PageCode + "R";
            LoginUser = Session["UID"].ToString();

            string V_REPORT_TYPE = ""; //資料選擇
            if (rdoType1.Checked) V_REPORT_TYPE = "全部";
            if (rdoType2.Checked) V_REPORT_TYPE = "廠商進貨";
            if (rdoType3.Checked) V_REPORT_TYPE = "廠商退貨";
            report.SetParameterValue("par_Program_ID", Program_ID);
            report.SetParameterValue("par_LoginUser", LoginUser);
            report.SetParameterValue("par_LoginName", Login_Name);
            string inDate = (SLP_SLPDateRange.StartDate + ((SLP_SLPDateRange.StartDate.Length == 0 && SLP_SLPDateRange.EndDate.Length == 0) ? "" : "~") + SLP_SLPDateRange.EndDate);
            if (inDate == "") inDate = "全部";
            report.SetParameterValue("par_Date", "進/退貨日期:" + inDate);

            //string vendor1 = ((TextBox)((ASP.vdm_slp_slp_vendorbase_ascx)SLP_VendorBase1).FindControl("TextBoxName")).Text;
            string vendor1 = GetVendorName(SLP_VendorBase1.Text.Trim());
            //string vendor2 = ((TextBox)((ASP.vdm_slp_slp_vendorbase_ascx)SLP_VendorBase2).FindControl("TextBoxName")).Text;
            string vendor2 = GetVendorName(SLP_VendorBase2.Text.Trim());

            if (SLP_VendorBase1.Text.Trim().Length != 0 && vendor1 == "") vendor1 = Page.Request.Form[((TextBox)((ASP.vdm_slp_slp_vendorbase_ascx)SLP_VendorBase1).FindControl("TextBoxName")).UniqueID];

            if (SLP_VendorBase2.Text.Trim().Length != 0 && vendor2 == "") vendor2 = Page.Request.Form[((TextBox)((ASP.vdm_slp_slp_vendorbase_ascx)SLP_VendorBase2).FindControl("TextBoxName")).UniqueID];

            string vendor = (SLP_VendorBase1.Text + vendor1 + ((SLP_VendorBase1.Text.Trim().Length == 0 && SLP_VendorBase2.Text.Trim().Length == 0) ? "" : "~") + SLP_VendorBase2.Text + vendor2);
            if (SLP_VendorBase1.Text.Trim().Length == 0 && SLP_VendorBase2.Text.Trim().Length == 0) vendor = "全部";
            report.SetParameterValue("par_Vendor", "供應商:" + vendor);
            report.SetParameterValue("par_Tax", "課稅別:" + ((DropDownList)SLP_EnumBase.FindControl("D1")).SelectedItem.Text);
            report.SetParameterValue("par_Type", "資料選擇:" + V_REPORT_TYPE);

            //檔案匯出
            if (exp_type == "btnExport")
            {
                System.IO.Stream streamXLS = report.ExportToStream(CrystalDecisions.Shared.ExportFormatType.Excel);
                byte[] bytesXLS = new byte[streamXLS.Length];
                streamXLS.Read(bytesXLS, 0, bytesXLS.Length);
                streamXLS.Seek(0, System.IO.SeekOrigin.Begin);
                //Export File  
                Response.ClearContent();
                Response.ClearHeaders();
                string rpt_name = "供應商暫估貨款明細表.xls";
                Response.AddHeader("content-disposition", "attachment;filename=" + HttpUtility.UrlEncode(rpt_name, System.Text.Encoding.UTF8));//匯出檔名  
                Response.ContentType = "application/vnd.ms-excel";
                Response.OutputStream.Write(bytesXLS, 0, bytesXLS.Length);
            }
            else
            {
                System.IO.Stream streamPDF = report.ExportToStream(CrystalDecisions.Shared.ExportFormatType.PortableDocFormat);
                byte[] bytesPDF = new byte[streamPDF.Length];
                streamPDF.Read(bytesPDF, 0, bytesPDF.Length);
                streamPDF.Seek(0, System.IO.SeekOrigin.Begin);
                //Export File  
                Response.ClearContent();
                Response.ClearHeaders();
                string rpt_name = "供應商暫估貨款明細表.PDF";
                Response.AddHeader("content-disposition", "attachment;filename=" + HttpUtility.UrlEncode(rpt_name, System.Text.Encoding.UTF8));//匯出檔名  
                Response.ContentType = "application/pdf";
                Response.OutputStream.Write(bytesPDF, 0, bytesPDF.Length);
            }
            Response.Flush();
            Response.Close();
        }
        catch (Exception ex)
        {
            ErrorMsgLabel.Text = ex.Message;
        }
        finally { }
    }
Esempio n. 26
0
    /// <summary>
    /// 利用 CrystalReport 列印 Excel 報表
    /// </summary>
    /// <param name="s_FileName">Excel報表的檔名</param>
    /// <param name="s_rptFilePath">rpt檔的路徑</param>
    /// <param name="dt_Source">要列印的資料</param>
    /// /// <param name="reportFormatType">檔案型態</param>
    private void LoadCrystalReport(string s_FileName, string s_rptFilePath, DataTable dt_Source, string reportFormatType)
    {
        CrystalDecisions.CrystalReports.Engine.ReportDocument report = new CrystalDecisions.CrystalReports.Engine.ReportDocument();

        report.Load(s_rptFilePath);
        report.SetDataSource(dt_Source);

        string s_par_Program_ID = string.Empty;
        string s_par_LoginUser = string.Empty;
        string s_par_LoginName = string.Empty;
        string s_par_1 = string.Empty;
        string s_par_2 = string.Empty;
        string s_par_3 = string.Empty;

        s_par_Program_ID = this.PageCode;
        s_par_LoginUser = Session["UID"].ToString();
        s_par_LoginName = ((DataTable)Session["UserInfo"]).Rows[0]["Name"].ToString();
        s_par_1 = SLP_PICK_DATE.StartDate + " ~ " + SLP_PICK_DATE.EndDate;
        s_par_2 = ddlLineStart.Text + " ~ " + ddlLineEnd.Text;
        s_par_3 = txtSTATION_NO_S.Text + " ~ " + txtSTATION_NO_E.Text;

        report.SetParameterValue("par_Program_ID", s_par_Program_ID);
        report.SetParameterValue("par_LoginUser", s_par_LoginUser);
        report.SetParameterValue("par_LoginName", s_par_LoginName);
        report.SetParameterValue("par_1", s_par_1);
        report.SetParameterValue("par_2", s_par_2);
        report.SetParameterValue("par_3", s_par_3);
        report.SetParameterValue("par_Type", reportFormatType);

        //判斷輸出檔案型態
        switch (reportFormatType)
        {
            case "EXCEL":

                System.IO.Stream streamXLS = report.ExportToStream(CrystalDecisions.Shared.ExportFormatType.Excel);
                byte[] bytesXLS = new byte[streamXLS.Length];
                streamXLS.Read(bytesXLS, 0, bytesXLS.Length);
                streamXLS.Seek(0, System.IO.SeekOrigin.Begin);

                //export file  
                Response.ClearContent();
                Response.ClearHeaders();
                Response.AddHeader("content-disposition", "attachment;filename=" + s_FileName);//excel檔名  

                Response.ContentType = "application/vnd.ms-excel";

                Response.OutputStream.Write(bytesXLS, 0, bytesXLS.Length);
                Response.Flush();
                Response.Close();

                break;
            case "PDF":            

                System.IO.Stream streamPDF = report.ExportToStream(CrystalDecisions.Shared.ExportFormatType.PortableDocFormat);
                byte[] bytesPDF = new byte[streamPDF.Length];
                streamPDF.Read(bytesPDF, 0, bytesPDF.Length);
                streamPDF.Seek(0, System.IO.SeekOrigin.Begin);

                //export file  
                Response.ClearContent();
                Response.ClearHeaders();
                Response.AddHeader("content-disposition", "attachment;filename=" + s_FileName);//excel檔名  
                Response.ContentType = "application/pdf";
                Response.OutputStream.Write(bytesPDF, 0, bytesPDF.Length);
                Response.Flush();
                Response.Close();
                break;
            default:

                break;
        }

    }
Esempio n. 27
0
    //Crystal Report 直接輸出 PDF 檔
    private void ExportReport(DataTable dt)
    {
        CrystalDecisions.CrystalReports.Engine.ReportDocument report = new CrystalDecisions.CrystalReports.Engine.ReportDocument();

        report.Load(Server.MapPath("./REPORT/CGR021R01.rpt"));
        report.SetDataSource(dt);

        //CrystalReport Parameter 參數設定
        string Program_ID = string.Empty;
        string LoginUser = string.Empty;

        Program_ID = this.PageCode.Substring(0, 5) + "R01";
        LoginUser = Session["UID"].ToString();

        report.SetParameterValue("par_Program_ID", this.PageCode);
        report.SetParameterValue("par_LoginUser", LoginUser);

        //檔案匯出
        System.IO.Stream streamPDF = report.ExportToStream(CrystalDecisions.Shared.ExportFormatType.PortableDocFormat);
        byte[] bytesPDF = new byte[streamPDF.Length];
        streamPDF.Read(bytesPDF, 0, bytesPDF.Length);
        streamPDF.Seek(0, System.IO.SeekOrigin.Begin);
        //Export File  
        Response.ClearContent();
        Response.ClearHeaders();
        Response.AddHeader("content-disposition", "attachment;filename=" + HttpUtility.UrlEncode("退貨結轉檢核異常報表.PDF", System.Text.Encoding.UTF8));//匯出檔名  
        Response.ContentType = "application/pdf";
        Response.OutputStream.Write(bytesPDF, 0, bytesPDF.Length);
        Response.Flush();
        Response.Close();

        report.Close();
    }
Esempio n. 28
0
    private void ShowReport(DataTable Dt)
    {
        try
        {
            string s_par_Program_ID = string.Empty;
            string s_par_LoginUser = string.Empty;

            CrystalDecisions.CrystalReports.Engine.ReportDocument report = new CrystalDecisions.CrystalReports.Engine.ReportDocument();
            report.Load(Server.MapPath("./REPORT/INV021R0" + rblREPORT.SelectedValue + ".rpt"));
            report.SetDataSource(Dt);

            DataTable userName = (DataTable)Session["UserInfo"];
            string UName = userName.Rows[0]["Name"].ToString();

            report.SetParameterValue("par_Program_ID", this.PageCode);
            report.SetParameterValue("par_LoginUser", Session["UID"].ToString());
            report.SetParameterValue("par_LoginUser_Name", UName);

            System.IO.Stream streamPDF = report.ExportToStream(CrystalDecisions.Shared.ExportFormatType.PortableDocFormat);
            byte[] bytesPDF = new byte[streamPDF.Length];
            streamPDF.Read(bytesPDF, 0, bytesPDF.Length);
            streamPDF.Seek(0, System.IO.SeekOrigin.Begin);
            //Export File  
            Response.ClearContent();
            Response.ClearHeaders();

            string rpt_name = "";
            if (rblREPORT.SelectedValue == "1")
                rpt_name = "儲區庫存匯總表_" + DateTime.Now.ToString("yyyyMMdd") + ".PDF";
            else
                rpt_name = "儲位庫存明細表_" + DateTime.Now.ToString("yyyyMMdd") + ".PDF";
            Response.AddHeader("content-disposition", "attachment;filename=" + HttpUtility.UrlEncode(rpt_name, System.Text.Encoding.UTF8));//匯出檔名  
            Response.ContentType = "application/pdf";
            Response.OutputStream.Write(bytesPDF, 0, bytesPDF.Length);

            Response.Flush();
            Response.Close();
        }
        catch (Exception ex)
        {
            ErrorMsgLabel.Text = ex.Message;
        }
        finally { }
    }
Esempio n. 29
0
    private void LoadCrystalReport(string s_FileName, string s_rptFilePath, DataTable dt_Source, string reportFormatType)
    {
        CrystalDecisions.CrystalReports.Engine.ReportDocument report = new CrystalDecisions.CrystalReports.Engine.ReportDocument();

        report.Load(s_rptFilePath);
        report.SetDataSource(dt_Source);



        //判斷輸出檔案型態
        switch (reportFormatType)
        {
            case "EXCEL":

                System.IO.Stream streamXLS = report.ExportToStream(CrystalDecisions.Shared.ExportFormatType.Excel);
                byte[] bytesXLS = new byte[streamXLS.Length];
                streamXLS.Read(bytesXLS, 0, bytesXLS.Length);
                streamXLS.Seek(0, System.IO.SeekOrigin.Begin);

                //export file  
                Response.ClearContent();
                Response.ClearHeaders();
                Response.AddHeader("content-disposition", "attachment;filename=" + s_FileName);//excel檔名  


                Response.ContentType = "application/vnd.ms-excel";


                Response.OutputStream.Write(bytesXLS, 0, bytesXLS.Length);
                Response.Flush();
                Response.Close();

                break;
            case "PDF":

                string s_par_Program_ID = string.Empty;
                string s_par_LoginUser = string.Empty;

                s_par_Program_ID = this.PageCode;
                s_par_LoginUser = Session["UID"].ToString();


                System.IO.Stream streamPDF = report.ExportToStream(CrystalDecisions.Shared.ExportFormatType.PortableDocFormat);
                byte[] bytesPDF = new byte[streamPDF.Length];
                streamPDF.Read(bytesPDF, 0, bytesPDF.Length);
                streamPDF.Seek(0, System.IO.SeekOrigin.Begin);

                //export file  
                Response.ClearContent();
                Response.ClearHeaders();
                Response.AddHeader("content-disposition", "attachment;filename=" + s_FileName);//excel檔名  
                Response.ContentType = "application/pdf";
                Response.OutputStream.Write(bytesPDF, 0, bytesPDF.Length);
                Response.Flush();
                Response.Close();
                break;
            default:

                break;
        }

    }
Esempio n. 30
0
    /// <summary>
    /// 利用 CrystalReport 列印 Excel 報表
    /// </summary>
    /// <param name="s_FileName">Excel報表的檔名</param>
    /// <param name="s_rptFilePath">rpt檔的路徑</param>
    /// <param name="dt_Source">要列印的資料</param>
    private void LoadCrystalReport(string s_FileName, string s_rptFilePath, DataTable dt_Source)
    {
        if (s_FileName.ToLower().IndexOf(".xls") < 0)
        {
            s_FileName = s_FileName + ".xls";
        }

        CrystalDecisions.CrystalReports.Engine.ReportDocument report = new CrystalDecisions.CrystalReports.Engine.ReportDocument();

        report.Load(s_rptFilePath);
        report.SetDataSource(dt_Source);

        System.IO.Stream stream = report.ExportToStream(CrystalDecisions.Shared.ExportFormatType.Excel);
        byte[] bytes = new byte[stream.Length];
        stream.Read(bytes, 0, bytes.Length);
        stream.Seek(0, System.IO.SeekOrigin.Begin);

        //export file  
        Response.ClearContent();
        Response.ClearHeaders();
        Response.AddHeader("content-disposition", "attachment;filename=" + s_FileName);//excel檔名  

        Response.ContentType = "application/vnd.ms-excel;charset='utf-8'";
        Response.ContentEncoding = System.Text.Encoding.GetEncoding("BIG5");

        Response.OutputStream.Write(bytes, 0, bytes.Length);
        Response.Flush();
        Response.Close();
        report.Close();
    }
Esempio n. 31
0
    /// <summary>
    /// 利用 CrystalReport 列印 Excel 報表
    /// </summary>
    /// <param name="s_FileName">Excel報表的檔名</param>
    /// <param name="s_rptFilePath">rpt檔的路徑</param>
    /// <param name="dt_Source">要列印的資料</param>
    /// /// <param name="reportFormatType">檔案型態</param>
    private void LoadCrystalReport(string s_FileName, string s_rptFilePath, DataTable dt_Source, string reportFormatType)
    {
        CrystalDecisions.CrystalReports.Engine.ReportDocument report = new CrystalDecisions.CrystalReports.Engine.ReportDocument();

        report.Load(s_rptFilePath);
        report.SetDataSource(dt_Source);

        string par_ProgramID = string.Empty;
        string par_LoginUser = string.Empty;

        DropDownList ReasonS = (DropDownList)this.SLP_CodeFileS.FindControl("D1");
        DropDownList ReasonE = (DropDownList)this.SLP_CodeFileE.FindControl("D1");

        string[] fileds ={ "STORE" };
        DataTable Dt = SelectDistinct(dt_Source, fileds);

        #region 前置檢查與參數過濾

        string par_S_PDate = this.SLP_SLPDateRangeOut.StartDate;
        string par_E_PDate = this.SLP_SLPDateRangeOut.EndDate;
        string par_S_ChanNo = this.SLP_StoreChainS.Text + " " + this.SLP_StoreChainS.Name;
        string par_E_ChanNo = this.SLP_StoreChainE.Text + " " + this.SLP_StoreChainE.Name;
        string par_AcceptDate = this.SLP_SLPDate.Text;
        string par_S_Route = this.SLP_RouteS.Text + " " + this.SLP_RouteS.Name;
        string par_E_Route = this.SLP_RouteE.Text + " " + this.SLP_RouteE.Name;
        string par_S_ReasonNo = ReasonS.SelectedValue + " " + ReasonS.SelectedItem.Text;
        string par_E_ReasonNo = ReasonE.SelectedValue + " " + ReasonE.SelectedItem.Text;
        string par_S_Store = this.SLP_StoreS.Text + " " + this.SLP_StoreS.Name;
        string par_E_Store = this.SLP_StoreE.Text + " " + this.SLP_StoreE.Name;
        par_ProgramID = this.PageCode;
        par_LoginUser = Session["UID"].ToString();

        string par_STORE_CNT = Dt.Rows.Count.ToString();

        #endregion

        #region 組合查詢條件至ArrayList

        ArrayList returnList = new ArrayList();

        returnList.Clear();

        report.SetParameterValue("par_S_PDate", par_S_PDate);
        report.SetParameterValue("par_E_PDate", par_E_PDate);
        report.SetParameterValue("par_S_ChanNo", par_S_ChanNo);
        report.SetParameterValue("par_E_ChanNo", par_E_ChanNo);
        report.SetParameterValue("par_AcceptDate", par_AcceptDate);
        report.SetParameterValue("par_S_Route", par_S_Route);
        report.SetParameterValue("par_E_Route", par_E_Route);
        report.SetParameterValue("par_S_ReasonNo", par_S_ReasonNo);
        report.SetParameterValue("par_E_ReasonNo", par_E_ReasonNo);
        report.SetParameterValue("par_S_Store", par_S_Store);
        report.SetParameterValue("par_E_Store", par_E_Store);

        report.SetParameterValue("par_ProgramID", par_ProgramID);
        report.SetParameterValue("par_LoginUser", par_LoginUser);

        report.SetParameterValue("par_STORE_CNT", par_STORE_CNT);

        #endregion

        //判斷輸出檔案型態
        switch (reportFormatType)
        {
            case "EXCEL":

                System.IO.Stream streamXLS = report.ExportToStream(CrystalDecisions.Shared.ExportFormatType.Excel);
                byte[] bytesXLS = new byte[streamXLS.Length];
                streamXLS.Read(bytesXLS, 0, bytesXLS.Length);
                streamXLS.Seek(0, System.IO.SeekOrigin.Begin);

                //export file  
                Response.ClearContent();
                Response.ClearHeaders();
                Response.AddHeader("content-disposition", "attachment;filename=" + s_FileName);//excel檔名  
                Response.ContentType = "application/vnd.ms-excel";
                Response.OutputStream.Write(bytesXLS, 0, bytesXLS.Length);
                Response.Flush();
                Response.Close();

                break;
            case "PDF":

                System.IO.Stream streamPDF = report.ExportToStream(CrystalDecisions.Shared.ExportFormatType.PortableDocFormat);
                byte[] bytesPDF = new byte[streamPDF.Length];
                streamPDF.Read(bytesPDF, 0, bytesPDF.Length);
                streamPDF.Seek(0, System.IO.SeekOrigin.Begin);

                //export file  
                Response.ClearContent();
                Response.ClearHeaders();
                Response.AddHeader("content-disposition", "attachment;filename=" + s_FileName);//excel檔名  
                Response.ContentType = "application/pdf";
                Response.OutputStream.Write(bytesPDF, 0, bytesPDF.Length);
                Response.Flush();
                Response.Close();
                break;
            default:

                break;
        }

    }
Esempio n. 32
0
    /// <summary>
    /// 匯出PDF
    /// </summary>
    /// <param name="dt">列印資料</param>
    /// <param name="s_Status">狀態,"Detail"明細表,"Gather"彙總表</param>
    private void Show_Report2(DataTable dt, string s_Status)
    {
        #region
        //string s_FileName = txt_Out_FileName.Text;
        string s_FileName = "客服線上紀錄表(明細).pdf";
        string s_RptName = "./REPORT/CRM131/CRM131_Report_Detl.rpt";

        if (s_Status == "Detail")
        {
            s_FileName = "客服線上紀錄表(明細).pdf";
            s_RptName = "./REPORT/CRM131/CRM131_Report_Detl.rpt";
        }
        else if (s_Status == "Gather")
        {
            s_FileName = "客服線上紀錄表(彙總).pdf";
            s_RptName = "./REPORT/CRM131/CRM131_Report_Main.rpt";
        }

        s_FileName = HttpUtility.UrlEncode(s_FileName, System.Text.Encoding.UTF8);
        report = new CrystalDecisions.CrystalReports.Engine.ReportDocument();

        #region Load 報表
        report.Load(Server.MapPath(s_RptName));
        report.SetDataSource(dt);

        // Set Parameter
        report.SetParameterValue("par_Program_ID", this.PageCode);
        report.SetParameterValue("par_LoginUser", Session["UID"].ToString());
        report.SetParameterValue("par_DateRange", this.slp_DateRange.StartDate + "~" + this.slp_DateRange.EndDate);
        report.SetParameterValue("par_StoreChain", this.slp_StoreChain_B.Text + "~" + this.slp_StoreChain_E.Text);
        report.SetParameterValue("par_Z_O", this.slp_Z_O_B.Text + "~" + this.slp_Z_O_E.Text);
        #endregion

        #region 轉出PDF
        System.IO.Stream stream = report.ExportToStream(CrystalDecisions.Shared.ExportFormatType.PortableDocFormat);
        byte[] bytes = new byte[stream.Length];
        stream.Read(bytes, 0, bytes.Length);
        stream.Seek(0, System.IO.SeekOrigin.Begin);

        //export file  
        Response.ClearContent();
        Response.ClearHeaders();
        Response.AddHeader("content-disposition", "attachment;filename=" + s_FileName);//excel檔名  

        Response.ContentType = "application/vnd.ms-excel;charset='utf-8'";
        Response.ContentEncoding = System.Text.Encoding.GetEncoding("BIG5");

        Response.OutputStream.Write(bytes, 0, bytes.Length);
        Response.Flush();
        Response.Close();
        report.Close();
        #endregion
        #endregion
    }
Esempio n. 33
0
    /// <summary>
    /// 顯示報表
    /// </summary>
    private void ShowReport(DataSet ds)
    {
        #region 利用CrystalReport列印報表

        //使用者名稱
        DataTable dt1 = new DataTable();
        dt1 = (DataTable)Session["UserInfo"];
        string Login_Name = dt1.Rows[0]["Name"].ToString();
        string strFileName = "";

        CrystalDecisions.CrystalReports.Engine.ReportDocument report = new CrystalDecisions.CrystalReports.Engine.ReportDocument();
        ReportDocument SubReport = new ReportDocument();

        report.Load(Server.MapPath("./REPORT/CAA271/CAA27R01.rpt"));
        strFileName = HttpUtility.UrlEncode("結帳與開立憑證檢核表.PDF", System.Text.Encoding.UTF8);

        SubReport = report.OpenSubreport("CAA27R01_1");
        SubReport.SetDataSource(ds);

        report.SetDataSource(ds);

        report.SetParameterValue("par_Program_ID", "CAA27R01");
        report.SetParameterValue("par_LoginUser", Session["UID"].ToString() + Login_Name);

        System.IO.Stream streamPDF = report.ExportToStream(CrystalDecisions.Shared.ExportFormatType.PortableDocFormat);
        byte[] bytesPDF = new byte[streamPDF.Length];
        streamPDF.Read(bytesPDF, 0, bytesPDF.Length);
        streamPDF.Seek(0, System.IO.SeekOrigin.Begin);

        //export file  
        Response.ClearContent();
        Response.ClearHeaders();
        Response.AddHeader("content-disposition", "attachment;filename=" + strFileName);//pdf檔名  
        Response.ContentType = "application/pdf";
        Response.OutputStream.Write(bytesPDF, 0, bytesPDF.Length);
        Response.Flush();
        Response.Close();
        report.Close();
        #endregion
    }
Esempio n. 34
0
    private void ShowReportA(DataTable dtA, DataTable dtB, string V_FORM_TYPE)
    {
        #region 利用CrystalReport列印報表

        //使用者名稱
        DataTable dt1 = new DataTable();
        dt1 = (DataTable)Session["UserInfo"];
        string Login_Name = dt1.Rows[0]["Name"].ToString();

        CrystalDecisions.CrystalReports.Engine.ReportDocument report = new CrystalDecisions.CrystalReports.Engine.ReportDocument();
        report.Load(Server.MapPath("./REPORT/VAM051/VAM052R01.rpt"));

        DataSet ds = new DataSet();
        dtA.TableName = "VAM052_R1";
        ds.Tables.Add(dtA.Copy());
        dtB.TableName = "VAM052_R2";
        ds.Tables.Add(dtB.Copy());

        report.SetDataSource(ds);


        report.SetParameterValue("par_Count", Convert.ToString(dtA.Rows.Count + dtB.Rows.Count));

        if (this.hidTYPE.Value == "1")
        {
            report.SetParameterValue("par_Program_ID", "註記解除");
            report.SetParameterValue("par_YM", this.Label7.Text);
            report.SetParameterValue("par_Source_date", "註記解除日期/時間:" + System.DateTime.Now.ToLongDateString());
            report.SetParameterValue("par_LoginName", "註記解除人員:" + Session["UID"].ToString() + Login_Name);
        }
        else
        {
            report.SetParameterValue("par_Program_ID", "註記確認");
            report.SetParameterValue("par_YM", this.SLP_YearMonth1.Text);
            report.SetParameterValue("par_Source_date", "註記日期/時間:" + System.DateTime.Now.ToLongDateString());
            report.SetParameterValue("par_LoginName", "註記人員:" + Session["UID"].ToString() + Login_Name);
        }



        //檔案匯出
        if (V_FORM_TYPE == "XLS")
        {
            System.IO.Stream streamXLS = report.ExportToStream(CrystalDecisions.Shared.ExportFormatType.Excel);
            byte[] bytesXLS = new byte[streamXLS.Length];
            streamXLS.Read(bytesXLS, 0, bytesXLS.Length);
            streamXLS.Seek(0, System.IO.SeekOrigin.Begin);
            //Export File  
            Response.ClearContent();
            Response.ClearHeaders();
            Response.AddHeader("content-disposition", "attachment;filename=" + HttpUtility.UrlEncode("供應商單品結帳.XLS", System.Text.Encoding.UTF8));//匯出檔名  
            Response.ContentType = "application/xls";
            Response.OutputStream.Write(bytesXLS, 0, bytesXLS.Length);
            Response.Flush();
            Response.Close();
        }
        else
        {
            System.IO.Stream streamPDF = report.ExportToStream(CrystalDecisions.Shared.ExportFormatType.PortableDocFormat);
            byte[] bytesPDF = new byte[streamPDF.Length];
            streamPDF.Read(bytesPDF, 0, bytesPDF.Length);
            streamPDF.Seek(0, System.IO.SeekOrigin.Begin);
            //Export File  
            Response.ClearContent();
            Response.ClearHeaders();
            Response.AddHeader("content-disposition", "attachment;filename=" + HttpUtility.UrlEncode("供應商單品結帳.PDF", System.Text.Encoding.UTF8));//匯出檔名  
            Response.ContentType = "application/pdf";
            Response.OutputStream.Write(bytesPDF, 0, bytesPDF.Length);
            Response.Flush();
            Response.Close();
        }
        report.Close();
        #endregion
    }
Esempio n. 35
0
    private void ShowReport(DataTable dt, string type)
    {
        try
        {
            CrystalDecisions.CrystalReports.Engine.ReportDocument report = new CrystalDecisions.CrystalReports.Engine.ReportDocument();

            report.Load(Server.MapPath("./REPORT/VAM121/VAM12" + type + "R.rpt"));
            report.SetDataSource(dt);

            DataTable dt1 = new DataTable();
            dt1 = (DataTable)Session["UserInfo"];
            string Login_Name = dt1.Rows[0]["Name"].ToString();

            //CrystalReport Parameter 參數設定
            string Program_ID = string.Empty;
            string LoginUser = string.Empty;

            string strParFDate = string.Empty;
            string strParFSType = string.Empty;
            string strParFTaxType = string.Empty;

            Program_ID = this.PageCode.Substring(0, 5) + "R0" + type;
            LoginUser = Session["UID"].ToString();

            //report.SetParameterValue("par_Program_ID", Program_ID);
            //report.SetParameterValue("par_LoginUser", LoginUser);
            //report.SetParameterValue("par_LoginName", Login_Name);

            System.IO.Stream streamPDF = report.ExportToStream(CrystalDecisions.Shared.ExportFormatType.PortableDocFormat);
            byte[] bytesPDF = new byte[streamPDF.Length];
            streamPDF.Read(bytesPDF, 0, bytesPDF.Length);
            streamPDF.Seek(0, System.IO.SeekOrigin.Begin);
            //Export File  
            Response.ClearContent();
            Response.ClearHeaders();
            string rpt_name = string.Empty;
            rpt_name = "進項憑證明細表_折讓單套表.PDF";
            Response.AddHeader("content-disposition", "attachment;filename=" + HttpUtility.UrlEncode(rpt_name, System.Text.Encoding.UTF8));//匯出檔名  
            Response.ContentType = "application/pdf";
            Response.OutputStream.Write(bytesPDF, 0, bytesPDF.Length);

            Response.Flush();
            Response.Close();
        }
        catch (Exception ex)
        {
            ErrorMsgLabel.Text = ex.Message;
        }
        finally { }
    }
Esempio n. 36
0
    /// <summary>
    /// 利用 CrystalReport 列印 Excel 報表
    /// </summary>
    /// <param name="s_FileName">Excel報表的檔名</param>
    /// <param name="s_rptFilePath">rpt檔的路徑</param>
    /// <param name="dt_Source">要列印的資料</param>
    /// /// <param name="reportFormatType">檔案型態</param>
    private void LoadCrystalReport(string s_FileName, string s_rptFilePath, DataTable dt_Source, string reportFormatType)
    {
        CrystalDecisions.CrystalReports.Engine.ReportDocument report = new CrystalDecisions.CrystalReports.Engine.ReportDocument();

        report.Load(s_rptFilePath);
        report.SetDataSource(dt_Source);



        //判斷輸出檔案型態
        switch (reportFormatType)
        {
            case "EXCEL":

                System.IO.Stream streamXLS = report.ExportToStream(CrystalDecisions.Shared.ExportFormatType.Excel);
                byte[] bytesXLS = new byte[streamXLS.Length];
                streamXLS.Read(bytesXLS, 0, bytesXLS.Length);
                streamXLS.Seek(0, System.IO.SeekOrigin.Begin);

                //export file  
                Response.ClearContent();
                Response.ClearHeaders();
                Response.AddHeader("content-disposition", "attachment;filename=" + s_FileName);//excel檔名  


                Response.ContentType = "application/vnd.ms-excel";


                Response.OutputStream.Write(bytesXLS, 0, bytesXLS.Length);
                Response.Flush();
                Response.Close();

                break;
            case "PDF":

                string s_par_Program_ID = string.Empty;
                string s_par_LoginUser = string.Empty;
                string s_par_DateRange = string.Empty;
                string s_par_StoreChan = string.Empty;
                String s_par_Route = string.Empty;

                s_par_Program_ID = this.PageCode;
                s_par_LoginUser = Session["UID"].ToString();
                s_par_DateRange = slpStAcceptDate.StartDate.ToString().Trim() + " ~ " + slpStAcceptDate.EndDate.ToString().Trim();
                s_par_StoreChan = SLP_StoreChain.Text + " " + ((TextBox)this.SLP_StoreChain.FindControl("TextBoxName")).Text;

                s_par_Route = this.txtRouteStart.Text + " " + ((TextBox)this.txtRouteStart.FindControl("TextBoxName")).Text + " ~ " +
                this.txtRouteEnd.Text + " " + ((TextBox)this.txtRouteEnd.FindControl("TextBoxName")).Text;

               
                report.SetParameterValue("par_Program_ID", s_par_Program_ID);
                report.SetParameterValue("par_LoginUser", s_par_LoginUser);
                report.SetParameterValue("par_DateRange", s_par_DateRange);
                report.SetParameterValue("par_StoreChan", s_par_StoreChan);
                report.SetParameterValue("par_Route", s_par_Route);


                System.IO.Stream streamPDF = report.ExportToStream(CrystalDecisions.Shared.ExportFormatType.PortableDocFormat);
                byte[] bytesPDF = new byte[streamPDF.Length];
                streamPDF.Read(bytesPDF, 0, bytesPDF.Length);
                streamPDF.Seek(0, System.IO.SeekOrigin.Begin);

                //export file  
                Response.ClearContent();
                Response.ClearHeaders();
                Response.AddHeader("content-disposition", "attachment;filename=" + s_FileName);//excel檔名  
                Response.ContentType = "application/pdf";
                Response.OutputStream.Write(bytesPDF, 0, bytesPDF.Length);
                Response.Flush();
                Response.Close();
                break;
            default:

                break;
        }

    }
Esempio n. 37
0
    /// <summary>
    /// 利用 CrystalReport 列印 Excel 報表
    /// </summary>
    /// <param name="s_FileName">Excel報表的檔名</param>
    /// <param name="s_rptFilePath">rpt檔的路徑</param>
    /// <param name="dt_Source">要列印的資料</param>
    /// /// <param name="reportFormatType">檔案型態</param>
    private void LoadCrystalReport(string s_FileName, string s_rptFilePath, DataTable dt_Source, string reportFormatType)
    {
        CrystalDecisions.CrystalReports.Engine.ReportDocument report = new CrystalDecisions.CrystalReports.Engine.ReportDocument();

        report.Load(s_rptFilePath);
        report.SetDataSource(dt_Source);




        //判斷輸出檔案型態
        switch (reportFormatType)
        {
            case "EXCEL":

                System.IO.Stream streamXLS = report.ExportToStream(CrystalDecisions.Shared.ExportFormatType.Excel);
                byte[] bytesXLS = new byte[streamXLS.Length];
                streamXLS.Read(bytesXLS, 0, bytesXLS.Length);
                streamXLS.Seek(0, System.IO.SeekOrigin.Begin);

                //export file  
                Response.ClearContent();
                Response.ClearHeaders();
                Response.AddHeader("content-disposition", "attachment;filename=" + s_FileName);//excel檔名  


                Response.ContentType = "application/vnd.ms-excel";


                Response.OutputStream.Write(bytesXLS, 0, bytesXLS.Length);
                Response.Flush();
                Response.Close();

                break;
            case "PDF":

                string s_par_Program_ID = string.Empty;
                string s_par_LoginUser = string.Empty;
                string s_par_Trans = string.Empty;
                string s_par_TruckNo = string.Empty;


                s_par_Program_ID = this.PageCode;
                s_par_LoginUser = Session["UID"].ToString();


                s_par_Trans = this.SLP_TRANS_NO_S.Text + " " + ((DropDownList)SLP_TRANS_NO_S.FindControl("D1")).SelectedItem.Text + " ~ " +
                              this.SLP_TRANS_NO_E.Text + " " + ((DropDownList)SLP_TRANS_NO_E.FindControl("D1")).SelectedItem.Text;

                s_par_TruckNo = this.TRUCK_NO_S.Text + " ~ " + this.TRUCK_NO_E.Text;

                report.SetParameterValue("par_Program_ID", s_par_Program_ID);
                report.SetParameterValue("par_LoginUser", s_par_LoginUser);
                report.SetParameterValue("par_Trans", s_par_Trans);
                report.SetParameterValue("par_TruckNo", s_par_TruckNo);

 
                System.IO.Stream streamPDF = report.ExportToStream(CrystalDecisions.Shared.ExportFormatType.PortableDocFormat);
                byte[] bytesPDF = new byte[streamPDF.Length];
                streamPDF.Read(bytesPDF, 0, bytesPDF.Length);
                streamPDF.Seek(0, System.IO.SeekOrigin.Begin);

                //export file  
                Response.ClearContent();
                Response.ClearHeaders();
                Response.AddHeader("content-disposition", "attachment;filename=" + s_FileName);//excel檔名  
                Response.ContentType = "application/pdf";
                Response.OutputStream.Write(bytesPDF, 0, bytesPDF.Length);
                Response.Flush();
                Response.Close();
                break;
            default:

                break;
        }
        report.Close();
    }
Esempio n. 38
0
        public ActionResult ExportData_View_IU(ApplicationHeaderInfo pInfo, A05_Info pDetail,
                                               List <AppDocumentInfo> pAppDocumentInfo,
                                               List <AppFeeFixInfo> pFeeFixInfo,
                                               List <Other_MasterInfo> pOther_MasterInfo,
                                               List <AppClassDetailInfo> pAppClassInfo,
                                               List <AppDocumentOthersInfo> pAppDocOtherInfo
                                               )
        {
            try
            {
                string _datetimenow         = DateTime.Now.ToString("ddMMyyyyHHmm");
                string language             = AppsCommon.GetCurrentLang();
                var    objBL                = new A05_BL();
                List <A05_Info_Export> _lst = new List <A05_Info_Export>();

                string p_appCode = "A05_Preview";

                string fileName_pdf = System.Web.HttpContext.Current.Server.MapPath("/Content/Export/" + "A05_VN_" + _datetimenow + ".pdf");
                if (language == Language.LangVI)
                {
                    fileName_pdf = System.Web.HttpContext.Current.Server.MapPath("/Content/Export/" + "A05_VN_" + _datetimenow + ".pdf");
                    SessionData.CurrentUser.FilePreview = "/Content/Export/" + "A05_VN_" + _datetimenow + ".pdf";
                }
                else
                {
                    fileName_pdf = System.Web.HttpContext.Current.Server.MapPath("/Content/Export/" + "A05_EN_" + _datetimenow + ".pdf");
                    SessionData.CurrentUser.FilePreview = "/Content/Export/" + "A05_EN_" + _datetimenow + ".pdf";
                }

                A05_Info_Export _A05_Info_Export = new A05_Info_Export();
                if (string.IsNullOrEmpty(pDetail.IMG_URL))
                {
                    pDetail.IMG_URL = pDetail.IMG_URLOrg;
                }
                if (pDetail.pfileLogo != null)
                {
                    pDetail.IMG_URL = AppLoadHelpers.PushFileToServer(pDetail.pfileLogo, AppUpload.Logo);
                }
                A05_Info_Export.CopyA05_Info(ref _A05_Info_Export, pDetail);

                _A05_Info_Export.IMG_URL = Server.MapPath(_A05_Info_Export.IMG_URL);

                // Phí cố định

                List <AppFeeFixInfo> _lstFeeFix = Call_Fee.CallFee_A05(pDetail, pAppDocumentInfo);
                Prepare_Data_Export_A05(ref _A05_Info_Export, pInfo, pAppDocumentInfo, _lstFeeFix, pOther_MasterInfo,
                                        pAppDocOtherInfo);

                _lst.Add(_A05_Info_Export);
                DataSet _ds_all = ConvertData.ConvertToDataSet <A05_Info_Export>(_lst, false);
                //_ds_all.WriteXml(@"C:\inetpub\A05.xml", XmlWriteMode.WriteSchema);
                CrystalDecisions.CrystalReports.Engine.ReportDocument oRpt = new CrystalDecisions.CrystalReports.Engine.ReportDocument();

                string _tempfile = "A05.rpt";
                if (pInfo.View_Language_Report == Language.LangEN)
                {
                    _tempfile = "A05_EN.rpt";
                }
                oRpt.Load(Path.Combine(Server.MapPath("~/Report/"), _tempfile));
                #region Set vị trí ảnh

                CrystalDecisions.CrystalReports.Engine.PictureObject _pic01;
                _pic01        = (CrystalDecisions.CrystalReports.Engine.PictureObject)oRpt.ReportDefinition.Sections[0].ReportObjects["Picture1"];
                _pic01.Width  = 200;
                _pic01.Height = 200;
                try
                {
                    pDetail.IMG_URL = Server.MapPath(pDetail.IMG_URL);
                    Bitmap img = new Bitmap(pDetail.IMG_URL);
                    try
                    {
                        double _Const = 6.666666666666 / 2;
                        int    _left = 0, _top = 0, _marginleft = 225, _margintop = 3540;
                        int    _h  = 600;
                        double _d1 = (_h - img.Width) / 2;
                        _d1   = _Const * _d1;
                        _left = _marginleft + Convert.ToInt32(_d1);
                        if (_left < 0)
                        {
                            _left = _marginleft;
                        }
                        _pic01.Left = _left;
                        // top

                        _d1  = (_h - img.Height) / 2;
                        _d1  = _Const * _d1;
                        _top = _margintop + Convert.ToInt32(_d1);
                        if (_top < 0)
                        {
                            _top = _margintop;
                        }
                        _pic01.Top = _top;
                    }
                    catch (Exception ex)
                    {
                        Logger.LogException(ex);
                    }
                    finally
                    {
                        img.Dispose();
                    }
                }
                catch (Exception)
                {
                }

                System.IO.FileInfo file = new System.IO.FileInfo(pDetail.IMG_URL);

                #endregion
                if (_ds_all != null)
                {
                    _ds_all.Tables[0].TableName = "Table1";
                    oRpt.SetDataSource(_ds_all);
                }
                oRpt.Refresh();

                Response.Buffer = false;
                Response.ClearContent();
                Response.ClearHeaders();


                System.IO.Stream oStream   = oRpt.ExportToStream(ExportFormatType.PortableDocFormat);
                byte[]           byteArray = new byte[oStream.Length];
                oStream.Read(byteArray, 0, Convert.ToInt32(oStream.Length - 1));
                System.IO.File.WriteAllBytes(fileName_pdf, byteArray.ToArray()); // Requires System.Linq



                return(Json(new { success = 0 }));
            }
            catch (Exception ex)
            {
                Logger.LogException(ex);
                return(Json(new { success = 0 }));
            }
        }