jimeper的脚印
如果永远不给自己机会,永远不知道未来的世界会更大,同一个天空,同一个梦想
                                                                                                                        ----------挑战你自己
如果我们放眼从累生历劫去看,那么一切的众生,谁不曾做过我的父母、兄弟姊妹、亲戚眷属?谁不曾做过我的仇敌冤家?如果说有恩,个个与我有恩;如果说有冤,个个与我有冤。这样子我们还有什么恩怨亲疏之别呢?再就智慧愚笨来说,人人有聪明的时候,也有愚痴的时候,聪明的人可能变愚痴,愚痴的人也可能变聪明。最坏的人,也曾做过许多好事,而且不会永远坏;好人也曾做过许多坏事,将来也不一定会好。如此我们反覆思索,所谓的冤亲、贤愚,这许多差别的概念,自然就会渐渐淡了。这绝对不是混沌,也不是不知好坏,而是要将我们无始以来的偏私差别之见,以一视同仁的平等观念罢了!
posts - 212,comments - 30,trackbacks - 0

 

private void ExortToExcel1(string strSql)

                     {

                                string ExportPath = Request.PhysicalApplicationPath + "Temp\\";

                                string strFileName = Session.SessionID+DateTime.Now.ToString("yyyyMMdd hhmmss")+".xls";

                                //新建一Excel應用程式

                                Missing missing = Missing.Value;

                                Excel.ApplicationClass objExcel = null;

                                Excel.Workbooks objBooks = null;

                                Excel.Workbook objBook = null;

                                Excel.Worksheet objSheet = null;

                                try

                                {

                                           objExcel = new Excel.ApplicationClass();

                                           objExcel.Visible = false;

                                           objBooks = (Excel.Workbooks)objExcel.Workbooks;

                                           objBook = (Excel.Workbook)(objBooks.Add(missing));

                                           objSheet = (Excel.Worksheet)objBook.ActiveSheet;

 

                                           string conn = "ODBC;DRIVER={Oracle in OraHome92};SERVER=MCM;UID=SFC;PWD=SFC;DBQ=MCM;";

                                           Excel.QueryTable tb = objSheet.QueryTables.Add(conn,objSheet.get_Range("A1", missing),strSql);

                                           //tb.Name = "來自 FCNP 的查詢";

                                           tb.FieldNames = true;

                                           tb.RowNumbers = false;

                                           tb.FillAdjacentFormulas = false;

                                           tb.PreserveFormatting = true;

                                           tb.RefreshOnFileOpen = false;

                                           tb.BackgroundQuery = true;

                                           tb.RefreshStyle = Excel.XlCellInsertionMode.xlInsertDeleteCells;

                                           tb.SavePassword = false;

                                           tb.SaveData = true;

                                           tb.AdjustColumnWidth = true;

                                           tb.RefreshPeriod = 0;

                                           tb.PreserveColumnInfo = true;

                                           tb.BackgroundQuery = false;

                                           tb.Refresh(tb.BackgroundQuery);

                                                    

 

                                           try

                                           {

                                                     objSheet.PageSetup.LeftMargin = 20;

                                                     objSheet.PageSetup.RightMargin = 20;

                                                     objSheet.PageSetup.TopMargin = 35;

                                                     objSheet.PageSetup.BottomMargin = 15;

                                                     objSheet.PageSetup.HeaderMargin = 7;

                                                     objSheet.PageSetup.FooterMargin = 10;

                                                     objSheet.PageSetup.CenterHorizontally = true;

                                                     objSheet.PageSetup.CenterVertically = false;

                                                     objSheet.PageSetup.Orientation = Excel.XlPageOrientation.xlPortrait;

                                                     objSheet.PageSetup.PaperSize = Excel.XlPaperSize.xlPaperA4;

                                                     objSheet.PageSetup.Zoom = false;

                                                     objSheet.PageSetup.FitToPagesWide = 1;

                                                     objSheet.PageSetup.FitToPagesTall = false;

                                           }

                                           catch

                                           {

                                           }

                                           //關閉Excel

                                           objBook.SaveAs(ExportPath+strFileName, missing, missing, missing, missing, missing,Excel.XlSaveAsAccessMode.xlExclusive, missing, missing, missing, missing,missing);

                                           objBook.Close(false,missing,missing);

                                           objBooks.Close();

                                           objExcel.Quit();

                                }

                                finally

                                {                                        

                                           //System.Runtime.InteropServices.Marshal.ReleaseComObject(objRange);

                                           if (!objSheet.Equals(null))

                                                     System.Runtime.InteropServices.Marshal.ReleaseComObject(objSheet);

                                           if (objBook!=null)

                                                     System.Runtime.InteropServices.Marshal.ReleaseComObject(objBook);

                                           if (objBooks!=null)

                                                     System.Runtime.InteropServices.Marshal.ReleaseComObject(objBooks);

                                           if (objExcel!=null)

                                                     System.Runtime.InteropServices.Marshal.ReleaseComObject(objExcel);

                                           GC.Collect();

                                }

                                //保存或打開報表

                                Response.Clear();

                                Response.Buffer= true;

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

                                Response.ContentEncoding = System.Text.Encoding.UTF8;                               

                                Response.AppendHeader("content-disposition","attachment;filename="+strFileName+".xls");

                                Response.Charset = "";

                                this.EnableViewState = false;

                                Response.WriteFile(ExportPath+strFileName);

                                Response.End();     

                     }


註:必須安裝odbc for oracle 

posted on 2007-06-08 16:24 jimeper 阅读(613) 评论(0) 编辑 收藏