999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

C#動態(tài)生成WORD文檔實現(xiàn)報表打印

2014-01-01 00:00:00李曉葉
消費(fèi)電子·下半月 2014年6期

摘 要:信息管理系統(tǒng)中的報表有大量的打印需求,而報表直接進(jìn)行打印存在著諸多限制,本文就在Visual Studio.NET環(huán)境下,使用C#動態(tài)生成報表對應(yīng)的word文檔,實現(xiàn)報表打印進(jìn)行了介紹。

關(guān)鍵詞:Visual Studio.NET;Oracle;Word;C#;報表;打印

中圖分類號:TP311.52 文獻(xiàn)標(biāo)識碼:A 文章編號:1674-7712 (2014) 12-0000-01

信息管理系統(tǒng)中各種信息的體現(xiàn)主要依靠各種報表,報表時常需要打印,但報表直接進(jìn)行打印,效果往往不理想,而Office辦公軟件中的Word具有強(qiáng)大的打印功能,并且.NET環(huán)境也能與Office辦公軟件很好的結(jié)合起來,可以把報表動態(tài)生成為Word文檔后再打印。

一、開發(fā)環(huán)境

后臺數(shù)據(jù)庫使用Oracle Database 11g R2,前臺開發(fā)工具使用Visual C#.NET 2010,調(diào)用的Word文檔版本為Microsoft Office Word 2010。

二、配置Word

首先需要對Word進(jìn)行一些權(quán)限的配置,這是必需的。配置方法如下:

(一)配置DCOMCNFG

1.單擊“開始”|“運(yùn)行”,打開“運(yùn)行”對話框,輸入DCOMCNFG,單擊“確定”,打開“分布式COM配置屬性”對話框。在該對話框中,定位到“應(yīng)用程序”選項卡。

2.選中“Microsoft Word文檔”,單擊“屬性”,打開“Microsoft Word文檔屬性”對話框,定位到“安全性”選項卡,選擇“使用默認(rèn)的訪問權(quán)限”和“使用默認(rèn)的啟動權(quán)限”;然后定位到“身份標(biāo)識”選項卡,在“要使用哪個用戶帳戶來運(yùn)行該應(yīng)用程序?”下選中“交互式用戶”,單擊“確定”;回到“分布式COM配置屬性”對話框,“默認(rèn)安全機(jī)制”選項卡,單擊“默認(rèn)訪問權(quán)限”下的“編輯默認(rèn)值”按鈕,打開“注冊表值的權(quán)限”對話框,添加下列用戶:

SYSTEM

INTERACTIVE

Everyone

Administrators

IUSR_*

IWAM_*

每個用戶的訪問類型必須為“允許訪問”。單擊“確定”按鈕,完成該“注冊表值的權(quán)限”的設(shè)置。

3.單擊“默認(rèn)啟動權(quán)限”下的“編輯默認(rèn)值”添加相同的用戶。每個用戶的訪問類型必須為“允許訪問”。最后單擊“確定”按鈕,完成“分布式COM配置屬性”的配置。

(二)添加服務(wù)器的用戶ASP.NET到Administrators組

右擊“我的電腦”|“管理”|“本地用戶和組”|“用戶”,選中“ASPNET”,右擊打開“ASPNET屬性”對話框,定位到“隸屬于”選項卡,在“隸屬于”中加入“ADMINISTRATOR”。

(三)web.config設(shè)置

web.config文件需要加入以啟用模擬身份,啟用模擬身份后所有頁面將會使用匿名Internet用戶帳戶(IUSR_machinename)這個用戶名的權(quán)限執(zhí)行。

三、報表動態(tài)生成Word文檔

報表信息全部存儲在Oracle數(shù)據(jù)表中,頁面展示的報表是從數(shù)據(jù)表中讀取的。把報表生成其對應(yīng)的Word文檔,也就是創(chuàng)建一個Word文檔,把報表信息按相應(yīng)的格式顯示在Word文檔里,其實質(zhì)是創(chuàng)建一個Word文檔,從數(shù)據(jù)表中讀取報表信息后以報表形式顯示在Word文檔中。

(1)定義word文檔的表頭及形參;

(2)取得Word文件保存路徑并以系統(tǒng)時間命名Word文檔;

object dstFileName=@”d:\”+newname+”.docx”;

(3)定義一個名為wa的組件對象;

Word.ApplicationClass wa=1;

if(wa==1)

wa=new Word.ApplicationClass();

if(wa!=1)

wa.Visible=true;

(4)創(chuàng)建一個名為wordDoc的文檔對象:

missing=System.Reflection.Missing.Value;

Word.Document wordDoc=wa.Documents.Add(ref missing,ref missing,ref missing,ref missing);

(5)定義表頭及表格格式。格式的定義比較自由,例如可以定義表頭字體為“隸書”、字號為“18”、字體顏色為“藍(lán)色”、表格位置為“居中”等等。

(6)根據(jù)報表格式添加表格。此時可根據(jù)報表格式在Word文檔中規(guī)定生成相同行數(shù)和列數(shù)的表格,同時進(jìn)行單元格的合并。

Word.Table table=wordDoc.Tables.Add(wordDoc.Range(ref start,ref end),5,2,ref missing,ref missing);

table.Cell(2,2).Merge(table.Cell(2,3));

(7)取得當(dāng)前要打印報表的ID號鏈接數(shù)據(jù)庫,讀取數(shù)據(jù)表信息后顯示在相應(yīng)的位置;

(8)將wordDoc文檔對象的內(nèi)容保存為DOCX文檔;

(9)關(guān)閉wordDoc文檔對象;

(10)關(guān)閉wa組件對象。

本文提出的方法,實現(xiàn)了將一般的報表信息生成其對應(yīng)word文檔并自動保存,從而方便了報表信息的打印。該方法的靈活性和擴(kuò)展性都很強(qiáng),可以根據(jù)實際需要進(jìn)行相應(yīng)的修改以達(dá)到目的。

參考文獻(xiàn):

[1]馮慶東,楊麗.C#項目開發(fā)全程實錄(第3版)[M].北京:清華大學(xué)出版社,2013.

[2]何明.Oracle數(shù)據(jù)庫管理與開發(fā)[M].北京:清華大學(xué)出版社,2013.

[3](美)蘭多夫.Visual Studio 2010高級編程[M].任鴻,譯.北京:清華大學(xué)出版社,2012.

[作者簡介]李曉葉(1981-),女,河北藁城人,就職于石家莊機(jī)械化步兵學(xué)院計算機(jī)組,碩士研究生,講師,研究方向:計算機(jī)。

主站蜘蛛池模板: 免费 国产 无码久久久| 亚洲第一香蕉视频| 欧美视频在线不卡| 久久香蕉国产线看观看精品蕉| 欧美性久久久久| 亚洲狼网站狼狼鲁亚洲下载| 亚洲无码一区在线观看| 欧美成人a∨视频免费观看 | 日韩毛片在线视频| 久久99热这里只有精品免费看| 国产精品吹潮在线观看中文| 亚洲综合中文字幕国产精品欧美 | 亚洲国产日韩在线成人蜜芽| 国产精品亚洲αv天堂无码| 超薄丝袜足j国产在线视频| 国产精品自拍露脸视频| 国产91高清视频| 一级一毛片a级毛片| 国产成人精品一区二区三在线观看| 99无码中文字幕视频| 国产99视频免费精品是看6| 极品国产一区二区三区| 久久婷婷五月综合97色| 伊人五月丁香综合AⅤ| 小蝌蚪亚洲精品国产| 夜色爽爽影院18禁妓女影院| 亚洲国产一区在线观看| 国产精品久久久久无码网站| 国产成人综合日韩精品无码不卡| 国产色图在线观看| 亚洲无码四虎黄色网站| 国产经典免费播放视频| 99re免费视频| 国产精品成人啪精品视频| 国产精品香蕉在线观看不卡| 国产成人区在线观看视频| 日韩免费毛片| 国产精品视频免费网站| 久久久噜噜噜| 性喷潮久久久久久久久| 亚洲乱码视频| 天天躁夜夜躁狠狠躁图片| 国模视频一区二区| 在线观看亚洲精品福利片| 亚洲日韩第九十九页| 一本久道热中字伊人| 成人国产一区二区三区| 四虎国产永久在线观看| 呦女亚洲一区精品| 精品国产中文一级毛片在线看| 巨熟乳波霸若妻中文观看免费 | 激情网址在线观看| 无码人妻免费| 午夜丁香婷婷| 四虎影视库国产精品一区| 成人综合网址| 伊人AV天堂| 国产第一页第二页| 日韩在线视频网| 国产91丝袜| jizz在线免费播放| 青青青伊人色综合久久| 亚洲欧美天堂网| 成人福利在线视频免费观看| 国产在线观看99| 日韩无码视频播放| 视频一本大道香蕉久在线播放| 园内精品自拍视频在线播放| jizz国产视频| 亚洲Aⅴ无码专区在线观看q| 波多野一区| 精品福利国产| 伊人激情综合网| 欧美国产综合视频| 91久久国产综合精品女同我| 九色综合伊人久久富二代| 亚洲欧美日韩精品专区| 国产亚洲欧美另类一区二区| 欧美a在线看| 亚洲狼网站狼狼鲁亚洲下载| 亚洲欧美自拍中文| 草草影院国产第一页|