• <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

            久久精品国产亚洲AV无码麻豆| 亚洲狠狠久久综合一区77777| 天天久久狠狠色综合| 久久亚洲欧美国产精品| 色综合久久无码五十路人妻| 国产A三级久久精品| 欧美一区二区三区久久综| 久久精品国产亚洲αv忘忧草| 久久久久亚洲精品日久生情| 久久久久av无码免费网| 婷婷五月深深久久精品| 国内精品伊人久久久久AV影院| 国产精品久久久久国产A级| 777米奇久久最新地址| 91精品日韩人妻无码久久不卡| 久久本道综合久久伊人| 欧美一区二区久久精品| 欧美熟妇另类久久久久久不卡 | 久久精品国产久精国产果冻传媒| 伊人久久大香线蕉精品不卡| 国内精品九九久久精品| 精品永久久福利一区二区 | 99久久精品免费| 日本国产精品久久| 国产成人精品三上悠亚久久| 2021精品国产综合久久| 久久久免费观成人影院| 久久久无码精品亚洲日韩按摩| 国产成人无码精品久久久久免费 | 综合久久国产九一剧情麻豆| 久久久久久亚洲AV无码专区| 精品久久久久中文字幕一区| 伊人久久久AV老熟妇色| 精品久久久久久无码中文野结衣 | 国产成人精品久久一区二区三区av| 一级做a爰片久久毛片看看| 久久精品国产免费一区| 免费无码国产欧美久久18| 国产AⅤ精品一区二区三区久久| 五月丁香综合激情六月久久| 少妇久久久久久被弄到高潮|