• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            eryar

            PipeCAD - Plant Piping Design Software.
            RvmTranslator - Translate AVEVA RVM to OBJ, glTF, etc.
            posts - 603, comments - 590, trackbacks - 0, articles - 0

            Interop Excel in PDMS

            Posted on 2015-12-29 23:37 eryar 閱讀(2065) 評論(0)  編輯 收藏 引用 所屬分類: 4.AVEVA Solution

            Interop Excel in PDMS

            eryar@163.com

            Abstract. There are many data stored in Excel during the design procedure. Read data from Excel can do some validation in PDMS, such as check the pressure for a given pipeline. Write Excel can make the MTO export automatically. So interop Excel in PDMS have practice significant. 

            Key Words. PDMS, Excel, Infragistics, AVEVA .Net

            1.Introduction

            在工程設(shè)計(jì)過程中有很多數(shù)據(jù)都是存儲在Excel中,在PDMS中如果能讀取這些Excel數(shù)據(jù),可以對模型做一些校驗(yàn)工作,如檢查管道的設(shè)計(jì)壓力、設(shè)計(jì)溫度等屬性。而寫Excel則可用于全自動(dòng)生成公司材料報(bào)表的實(shí)現(xiàn),即生成可直接打印的材料表,不需要人為再去統(tǒng)計(jì)、分類,提高效率。由此可見,在PDMS中讀寫Excel具有重要意義。

            因?yàn)锳VEVA .Net支持C#的程序開發(fā),目前在C#中讀寫Excel的常見方式有:

            v OleDb:用這種方法讀取Excel速度還是非常快的,但這種方法讀取數(shù)據(jù)的時(shí)候不太靈活。這種方法是將Excel作為一個(gè)數(shù)據(jù)源,直接使用SQL語句獲取數(shù)據(jù)。優(yōu)點(diǎn):讀取方式簡單,速度快;缺點(diǎn):除了讀取過程不太靈活之外,當(dāng)Excel數(shù)據(jù)量很大時(shí),會很占用內(nèi)存,不過一般情況下還是非常不錯(cuò)的。

            v COM組件:這種方式需要先引用Microsoft.Office.Interop.Excel。優(yōu)點(diǎn):可以非常靈活地讀寫Excel中的數(shù)據(jù);缺點(diǎn):讀取速度較慢,當(dāng)Excel中數(shù)據(jù)量稍大時(shí),會非常耗時(shí)。

            v NPOI方式:NPOI是一組開源的組件,優(yōu)點(diǎn)是讀取Excel非常快,操作方式靈活。缺點(diǎn):只支持03版的xls,xlsx無法讀取,最新版本的已經(jīng)可以支持xlsx文件的讀取了。

            v Infragistics Excel:Infragistics Excel是Infragistics品牌.Net應(yīng)用程序下操作Excel表格的組件,同樣也是托管代碼。Infragistics系列控件是一套很好很強(qiáng)大的控件,PDMS程序的界面應(yīng)該就是這套控件開發(fā)的。Infragistics Excel讀寫Excel速度快,性能較好。

            本文主要介紹如何使用Infragistics Excel組件對Excel進(jìn)行讀寫操作。掌握基本方法之后,可以結(jié)合實(shí)際開發(fā)出更完善的程序,提高工作效率。


            2.Reading/Writing Excel

            Infragistics Excel的組件在PDMS的安裝目錄中可以找到,如下圖所示:

            wps_clip_image-10741

            Figure 2.1 Infragistics Excel

            根據(jù)PDMS版本的不同,使用的Infragistics版本也稍有不同。只要找到Infragistics中帶有Excel應(yīng)該就是了。C#的庫一般命名規(guī)范,容易根據(jù)類名找到相關(guān)的用法。下面給出使用Infragistics讀寫Excel中的示例程序。

             

            using System;
            using System.Text;
            using System.Collections.Generic;

            using Infragistics.Excel;

            namespace ExcelTest
            {
                
            class Program
                {
                    
            static void Main(string[] args)
                    {
                        readTest();

                        writeTest();
                    }

                    
            static void readTest()
                    {
                        Workbook aWorkbook 
            = Workbook.Load("TestData.xls");
                        Worksheet aWorksheet 
            = aWorkbook.WindowOptions.SelectedWorksheet;

                        Console.WriteLine(
            "Reading Excel Test");
                        
            for (int i = 8; i < 60; i++)
                        {
                            Console.WriteLine(aWorksheet.GetCell(
            "A" + i.ToString()).Value);
                        }
                    }

                    
            static void writeTest()
                    {
                        Workbook aWorkbook 
            = new Workbook();
                        Worksheet aWorksheet 
            = aWorkbook.Worksheets.Add("Test");

                        Console.WriteLine(
            "Writing Excel Test");
                        
            for (int i = 1; i < 10; i++)
                        {
                            aWorksheet.GetCell(
            "A" + i.ToString()).Value = "test value " + i.ToString();
                        }

                        aWorkbook.Save(
            "TestBook.xls");
                    }
                }
            }

            讀取Excel結(jié)果如下圖所示:

            wps_clip_image-19510

            Figure 2.2 Reading Excel Result

            寫Excel結(jié)果如下圖所示:

            wps_clip_image-9525

            Figure 2.3 Writing Excel Result

            由上述示例可知,使用Infragistics來讀寫Excel還是很簡單的。添加Infragistics Excel的引用后,可以打開其對象結(jié)構(gòu),查看下。根據(jù)這些類名及其相關(guān)函數(shù),使用簡單。


            3.Conclusion

            工程設(shè)計(jì)中的大部分?jǐn)?shù)據(jù)都是在Excel中,且材料表之類的出版文件都是Excel形式。所以掌握使用程序?qū)xcel進(jìn)行讀寫,對提高辦公自動(dòng)化有重要意義。本文結(jié)合PDMS中的Infragistics控件來對PDMS中Excel的讀寫進(jìn)行詳細(xì)介紹。掌握方法后,也可以將這個(gè)控件應(yīng)用到其他程序,前提是必須有Infragistics這套控件。

            掌握Excel的讀寫方法,可以結(jié)合實(shí)際進(jìn)行擴(kuò)展,開發(fā)出功能更強(qiáng)大的程序。


            4.References

            1. Tsong Chen. C#讀取Excel幾種方法體會. 

            http://www.cnblogs.com/Tsong/archive/2013/02/21/2920941.html

            2. http://www.infragistics.com/samples/silverlight/infragistics-excel/overview

             

            PDF Version: Interop Excel in PDMS

            思思久久99热只有频精品66| 怡红院日本一道日本久久| 久久免费小视频| 一本久久a久久精品vr综合| 久久综合伊人77777麻豆| 久久免费线看线看| 色综合合久久天天综合绕视看| 老色鬼久久亚洲AV综合| 亚洲人成网亚洲欧洲无码久久| 热久久最新网站获取| 亚洲精品99久久久久中文字幕 | 久久久久国色AV免费观看| 狠狠色噜噜狠狠狠狠狠色综合久久| 精品无码久久久久国产动漫3d| 久久久久一级精品亚洲国产成人综合AV区| 国产精品美女久久久m| 久久人妻少妇嫩草AV无码专区| 精品国产乱码久久久久软件| 怡红院日本一道日本久久| 久久综合狠狠综合久久97色| 久久精品国产精品亚洲人人| 亚洲v国产v天堂a无码久久| 中文字幕无码av激情不卡久久| 精品国产日韩久久亚洲| 久久久久亚洲精品日久生情 | 亚洲精品国精品久久99热一| 久久强奷乱码老熟女网站| 久久精品日日躁夜夜躁欧美| 无码国内精品久久人妻蜜桃| 久久精品无码专区免费青青| 久久精品免费观看| 88久久精品无码一区二区毛片| 狠狠综合久久综合中文88| 亚洲精品tv久久久久久久久久| 一本久久a久久精品亚洲| 国产91色综合久久免费| 国産精品久久久久久久| 一级做a爰片久久毛片免费陪| 伊人久久久AV老熟妇色| 久久国产精品久久国产精品| 人妻少妇精品久久|