Netsharp整體設計

閱讀本文請先閱讀以下兩篇文章html

  1. 什麼是企業軟件
  2. Netsharp什麼

Netsharp整體設計

1.1     Netsharp終端形式

Netsharp基於.NET平臺,支持的產品形態有三種:前端

  1. 北極熊(Polarbear,桌面模式,WPF實現)
  2. 熊貓(Panda,BS模式,純HTML)
  3. 先鋒(Pioneer,移動Web模式,基於Panda)

Netsharp是三種終端的全集,本文介紹的內容多以北極熊做爲例子,由於北極熊功能最多、最強、最穩定。sql

三種形態都是前端,她們公用同一套後端,後端指的是業務服務器以後包括的功能。數據庫

 

1.2     Netsharp部署類型

Netsharp有五種部署類型,分別對應五種部署的場景:後端

 

類型設計模式

名稱緩存

說明安全

Desktop服務器

桌面客戶端架構

僅僅包括界面層、實體、接口以及先後端公用的程序集

經過互聯網與服務器端交互

Server

業務服務器端

做爲業務服務器,對外經過互聯網公佈服務接口

處理複雜的業務邏輯功能

能夠作集羣(暫不支持)

Desktop_Server

傳統的CS結構

桌面客戶端和業務服務器在同一個進程內,主要方便開發調試;單人操做的系統,或者併發要求不高的,可使用此種模式。

WebFront

WEB前端

Web前端服務器也是服務器,可是隻負責處理界面的渲染等邏輯,不處理業務邏輯,業務邏輯經過調用業務服務器的接口來完成

Web前端服務器與業務服務器多在同一個局域網

Web前端服務器與業務服務器分開通常出於安全和性能的考慮

Web前端服務器與業務服務器分開更易於Web前端服務器作集羣

WebFront模式須要管理多個Session,Desktop模式只須要管理一個Session

WebFront_Server

WEB前端+業務服務器

Web前端服務器與業務服務器在同一進程內

 

Netsharp的部署類型,能夠經過bin/Netsharp.Light.exe進行設置,下圖是部署類型的設置方式:

 

1.3     Netsharp平臺管理

本章節介紹Netsharp的六個核心概念,他是Netsharp基礎,這六個概念都有對應的工具支持,從工具角度上對平臺的資源進行有效、清晰的管理。

這六個概念並非Netsharp的所有內容,本節也不是介紹Netshrap的技術架構,而是介紹Netsharp平臺是如何管理開發人員的成果的。 

1.3.1  插件

    插件框架是愈來愈流行的一種開發方式。插件作的比較好的常見於IDE,如Eclipse(基於OSGI標準)、Netbean、SharpDevelop。國內一款軟件(OSGI.NET)實現了.NET平臺的OSGI標準,算是作得比較規範的。除此以外筆者沒有見過國內其餘的比較正規的插件體系,大部分聲稱系統支持的所謂插件都是僞插件,從技術角度來講不過是工廠模式加根據配置反射建立對象而已。筆者認爲插件系統有三個必需要素:

  1. 插件,一個插件有多個路徑;插件從物理上可脫離產品獨立存在
  2. 擴展點(Netsharp叫路徑),擴展點能夠橫穿多個插件
  3. 插件項支持多種類型,如菜單、類型、圖標等。插件項類型自己也有擴展點。

 

Netsharp的插件設計參考了SharpDevelop,SharpDevelop是一個IDE工具,有些地方並不適應於企業軟件,Netsharp在SharpDevelop的基礎上進行了以下的改造和擴展:

  1. 支持數據庫配置,而非xml配置
  2. 路徑支持繼承和重寫
  3. 插件項支持權限控制
  4. 提供可視化界面編輯插件項

Netsharp提供了可視化工具對插件管理,管理工具支持兩種視角,插件視角和路徑視角:

1.3.2  實體模型

在企業軟件開發中,實體模型主要指的是實體的模型,模型通常經過UML圖的方式表現,比較直觀的表達問題域的靜態結構關係,這種圖是分析設計所關心的。而對於平臺來講,關心的是作一個UML靜態類圖工具出來,更關心的是實體模型自己自描述的元數據信息,本文稱之爲實體元數據。

平臺有了實體元數據,業務開發的序幕就此拉開,這個過程能夠時髦的稱之爲「領域驅動」,不過跟常說的「領域驅動」稍有不一樣。基於實體元數據配合平臺工具能夠作的事情有:

  1. 生成數據庫對象,包括表結構、索引、主鍵、約束、外鍵等
  2. 實體類代碼
  3. 持久層的ORM映射元數據
  4. 自動生成接口、服務、業務類、界面控制器的類
  5. 自動生成報表、表單、列表、查詢的界面元數據
  6. 能夠作字段權限控制、數據權限控制
  7. 能夠作單據編碼規則
  8. 其餘

 

    關於Netsharp的實體設計,請參見管理軟件實體設計

1.3.3  Netsharp資源

1.3.3.1 什麼是資源

資源是Netsharp創造的概念,資源包括兩個方面,資源樹和資源類型,其中資源樹也可稱之爲資源節點。

 

如何理解資源咱們從考察以下兩個場景開始:

要素

商貿企業

軟件開發公司

角色

公司員工

軟件開發人員

工具

供應鏈管理系統(SCM)

Netsharp

數據類型

銷售訂單、發貨單、發票、出庫單等等

列表、表單、查詢、報表

數據舉例

3月1號銷售給客戶A總金額100W

3月1號給客戶A發貨

3月2號銷售給客戶B總金額120W

3月1號開發銷售訂單列表,編輯列表元數據

3月1號開發銷售訂單表單,編輯表單元數據

3月2號開發銷售發票列表,編輯列表元數據

結論

SCM是工具,用來管理訂單、發貨單等數據

Netsharp是工具,用來管理列表、表單、報表的元數據。

 

上述兩個場景放在一塊兒考察,他們的不一樣之處在因而不一樣的行業,乾的不一樣的事情。相同的地方都是使用一個工具來管理本身工做中使用的數據。開發人員的數據就是工做區、列表、表單、報表等數據,Netsharp中把開發維護的這些數據叫資源。這些數據是有不一樣的類型,SCM的每種類型(銷售銷訂單、發貨單、銷售發票等)的數據叫單據;Netsharp中的每種類型(做區、列表、表單、報表等)叫資源類型

1.3.3.2 資源是如何管理的

資源和插件是相互補充的,插件和資源都是平臺的工具,區別在於,插件強調插件物理可插拔、路徑可擴展、插件項支持多種類型,可是其插件項的類型只能是攜帶信息比較少的類型,好比菜單。對於一些複雜的類型,好比工做區或者列表元數據,則須要強類型的結構來表達,這種狀況插件表達則不太合適,資源就是解決這種問題的,並且資源還有本身的視角。Netsharp的平臺工具中,大部分菜單都是使用資源進行管理的,能夠說資源的概念比插件的概念要大。

 

Netsharp中有30種以上的資源類型,這些資源類型按照樹狀結構進行分類,資源的分類叫資源樹,樹上的每一個節點叫資源節點。Netsharp中全部的資源類型的分類是統一的,即全部的資源分類都使用一個資源樹。資源節點在Netsharp中對應的實體是Netsharp.Core.ResourceNode。下圖是Netsharp的平臺管理工具的面板,他能夠經過工做區的主菜單」視圖/平臺工具」打開,這些工具中大部分是以資源的方式來進行管理的。

 

以Netsharp部件工做區(PartWorkspace)爲例,部件工做區是一種資源,他按照資源樹的方式進行管理,請參見下圖部件工做區的工具。

 

下圖是Netsharp的枚舉管理工具,枚舉是Netsharp的一種資源,他也按照資源樹的方式進行管理,請參見下圖:

 

1.3.3.3 資源是如何分類的

下圖是Netsharp資源節點的管理界面,全部的資源節點組成了一棵資源樹。

 

對於管理軟件來講,通常會進行以下分類

級次

一級

二級

三級

四級

五級

本文命名

產品線

子系統

模塊

領域對象

實體

ERP產品線

建築施工企業軟件產品

子系統一

-

-

-

子系統二

-

-

-

子系統三

-

-

-

...

-

-

-

ERP產品

供應鏈

採購

採購訂單

採購訂單頭

 

採購訂單行

 

結算明細

進貨單

-

採購發票

-

...

-

銷售

-

-

庫存

-

-

財務

現金

-

-

往來

-

-

出納

-

-

生產

-

-

-

分銷零售

-

-

-

....

-

-

-

 

上圖爲稍微複雜一些的系統分級結構,簡單的系統可能只有第3、4、五級。第五級別的實體爲研發人員視圖。客戶和銷售人員不會有此概念,或者概念比較模糊,即他們不會把實體做爲獨立的概念環境進行思惟。在命名上會有歧義的是第三級和第四級,即模塊和領域對象。「領域對象」是本文的一種叫法,目前尚未找到更好的進行第三級和第四級進行區分的命名。使用「領域對象」的初衷是領域指的是軟件給客戶(某一種崗位在某一個業務場景)提供完整業務的一種最小的場景,如錄入一張新的採購訂單,在這個場景中,用戶打開採購訂單界面,能夠作不少與採購訂單編輯相關的事情。(這個名稱感受也不是很好,由於用戶很難理解)模塊能夠簡單的理解爲是一個部門級別的應用,或者爲一個須要多個崗位來完成的場景,好比採購管理。

 

在Netsharp的資源節點對應的實體是Netsharp.Core.ResourceNode,ResourceNode有個屬性ResourceType,ResourceType是一個枚舉,有三個可選值:分類、插件、單據。ResourceType是資源節點的必輸字段。下面詳細介紹這三種資源節點類型。

1.插件

和第三級模塊對應,當資源節點類型爲插件是,必須在資源節點上設置對應的插件。由於平臺的資源是經過資源樹管理的,當插件進行導出操做時候,平臺會根據插件對應的資源節點把下屬的全部資源進行導出,插件的安裝、卸載也是這種邏輯。

2.單據

和第四級(領域對象)對應,當資源節點是一個領域對象時,如銷售訂單、採購入庫單等,資源節點類型選擇單據。當資源節點爲單據時,必須設置資源節點的EntityId。EntityId是Netsharp中經常使用的概念,他表示一個領域對象,技術上對應領域對象(或者叫實體)的Type.FullName,也能夠理解爲實體模型的類全名,參見下圖:

 

領域對象是實體的特例,當一個資源節點和一個實體對應時,類型均可以選擇單據。

3.分類

當資源節點類型不爲插件和單據時,均可以選擇分類。

1.3.4  工做臺

Netsharp工做臺就是最終用戶看到的產品的主界面,工做臺有時也稱之爲門戶。用戶能夠自定義工做臺的佈局,下圖顯示了默認工做臺的佈局結構:

 

下面是這六個部分的概要描述

順序

名稱

說明

插件路徑

擴展說明

1

LOGO

產品圖標

自動讀取應用程序配置的產品名稱

2

用戶信息區

 

Workbench/StatusBar/RightMenu

 

3

MainMenu

主菜單

Workbench/MainMenu

Netsharp的原則是主菜單隻現實系統級別的菜單(如系統選項、經常使用工具、視圖、幫助等),不顯示業務相關的菜單

4

Pad

面板

Workbench/Pad

目前平臺提供了四個面板,導航欄、平臺工具、業務模型、做業管理;在這個路徑下能夠建立自定義的導航面板,

5

Workspace

工做區

工做區通常會經過面板和主菜單的出發打開,不在贅述。Netsharp支持擴展自定義的工做區。

6

StatusBar

狀態欄

 

 

除了上面六個部分,還有不明顯體如今界面元素上的工做臺初始化相關工做項,他們分別:

 

順序

名稱

說明

插件路徑

擴展說明

1

Autorun

工做臺初始化

Workbench/AutoRun/Client

工做臺啓動後,會讀取此路徑,自動執行此路徑配置的邏輯

2

Icon

圖標

Netsharp/Icons

自定義的圖標在這裏初始化

3

Homepage

起始頁

Workbench/Homepage/ZonePart

Netsharp目前的起始頁是有多個Zone組成的,這裏能夠設置起始頁的Zone

4

VersionCache

版本緩存

爲了提升性能,把Netsharp的元數據緩存在本地,當元數據改變時自動更新緩存的機制

5

 

 

 

 

6

 

 

 

 

 

1.3.5  部件工做區

上文已經介紹了工做區(Workspace)的的概念,本節介紹一種特殊的工做區叫部件工做區(PartWorkspace),不管您是Netsharp的最終用戶,仍是開發人員,您時刻都會跟PartWorkspace有關。

 

本人認爲軟件的界面是一種樹狀的邏輯結構,在設計模式中對應着組合模式(Composite),以Netsharp的工做臺爲例,工做臺是頂級節點,工做臺由工做臺頁頭、Pad容器、工做區容器、主菜單、狀態欄等子組件組成,這幾個子級別又分別有本身的子級組件,如此類推就造成了一棵樹。樹的末級節點通常是Textbox、ComboBox等控件。因此通常基於元數據的界面描述都使用XML格式的語法,由於XML是樹狀結構的,好比HTML和XAMAL。

 

通常來講,開發人員封裝的界面組件,分紅兩個種,一種是技術性質的控件,好比Outlookbar,日曆等;另外一種是業務性質的控件,好比訂單表單,和單據控件,不一樣的研發團隊積累不同,封裝的角度也不一樣,若是封裝單據做爲控件的話,是平臺化的思路,抽象層次要高一些。Netsharp是平臺因此會對單據進行封裝,可是Netsharp封裝的力度比單據要細一個級別,本文稱之爲部件。一個工做區是由多個部件組成的,部件之間通常有父子關係。對於訂單的表單來講,其工做區通常由兩個部件組成:實體的表單部件(父)和實體明細列表部件(子)。對於訂單列表來講,界面能夠有三個部件:訂單列表(父)、訂單表單(子)、訂單子表(子或者孫,父親爲列表或者表單),子表部件和表單部件能夠被重用,作出更多靈活的界面。部件對於作界面設計和二次開發都提供了比較好的角度,能夠說是技術和業務上最理想的封裝粒度。

 

Netsharp提供了20種部件,用戶能夠繼承擴展這些部件,也能夠實現本身獨立的部件,Netsharp部件參考下圖:

 

序號

編碼

名稱

默認控制器

默認工具欄

說明

1

EntityList

列表.主列表

Netsharp.Commerce.EntityListPart

Netsharp/Commerce/EntityList/Toolbar

 

2

Datagrid

列表.只讀

Netsharp.Commerce.DatagridPart

Netsharp/Commerce/Datagrid/Toolbar

 

3

EntityDetail

列表.單據列表

Netsharp.Commerce.EntityDetailPart

Netsharp/Commerce/EntityDetail/Toolbar

 

4

VoucherDetail

列表.單據明細列表

Netsharp.Commerce.VoucherDetailPart

Netsharp/Commerce/Voucher/DetailMenu

 

5

Detail

列表.細列表

Netsharp.Commerce.DetailPart

Netsharp/Commerce/Voucher/DetailMenu

 

6

DatagridSolution

列表方案

Netsharp.Commerce.DatagridSoltionPart

Netsharp/Commerce/QuerySolution/MainMenu

 

7

ReportList

列表.報表

Netsharp.Commerce.DatagridReportPart

Netsharp/Commerce/Voucher/DatagridReportMenu

 

8

VoucherForm

表單.單據

Netsharp.Commerce.VoucherFormPart

Netsharp/Commerce/Form/Navigation/Toolbar

 

9

CustomerForm

表單.可保存

Netsharp.Commerce.FormPart

Netsharp/Commerce/Form/Edit/Toolbar

 

10

FormPart

表單.屬性

Netsharp.Commerce.FormPart

Netsharp/Commerce/Form/Property/Toolbar

 

11

ReferencePart

表單.引用表單

Netsharp.Commerce.ReferencePart

Netsharp/Commerce/Voucher/ReferenceMenu

 

12

ReportStatistics

報表.統計表

Netsharp.Grus.SummaryReportPart

Netsharp/Commerce/Datagrid/Toolbar

 

13

ReportRdlc

報表.交叉表

Netsharp.Grus.RdlcReportPart

Netsharp/Grus/RdlcReport/Toolbar

 

14

ReportGrus

報表.GRUS

Netsharp.Grus.GrusPart

 

 

15

ReportQueryFilter

報表查詢條件

Netsharp.Commerce.RdlcQueryFilterPart

Netsharp/Commerce/QueryFilter/MainMenu

 

16

ReportSolution

報表方案

Netsharp.Grus.ReportSolutionPart

Netsharp/Grus/ReportSolution/Toolbar

 

17

TreePart

分類樹

Netsharp.Commerce.TreePart

Netsharp/Commerce/CategoryTreePart/Toolbar

 

18

QuerySolution

查詢方案

Netsharp.Commerce.QuerySolutionPart

Netsharp/Commerce/Solution/MainMenu

 

19

QueryFilter

查詢條件

Netsharp.Commerce.QueryFilterPart

Netsharp/Commerce/QueryFilter/MainMenu

 

20

Customer

自定義

 

 

 

 

1.3.6  六駕馬車

Netsharp有六駕馬車的概念,這六駕馬車都基於插件使用,能夠擁有很是強大的功能。六駕馬車是從技術角度對開發六種場景抽象,他們分別是:

 

編號

英文名

中文名

說明

場景

開發相關

1

Command

命令

界面操做的一個觸發,經常使用的有Button、MenuItem、Toolbar的事件

系統點擊「退出」按鈕,執行Netsharp.Platform.ApplicationExitCommand

界面層使用,通常和菜單、樹節點、工具欄項上配置

2

Trigger

字段觸發器

某一個字段被修改以後,引發其餘字段的計算

修改單價和數量時,自動計算金額

重寫實體的OnPropertyChanged方法

實現IPropertyTrigger接口

界面層Controller中的On**Changed方法

3

Validation

字段驗證

數據合法性驗證

保存時的郵件驗證

實體屬性Set調用時捕獲的異常信息實現接口IPropertyValidation

4

Condition

字段條件

某個字段在某種場景下不能夠編輯或者隱藏

審覈後數量不能修改

重寫實體的Condition方法

實現接口IPropertyCondition

界面層Controller的**Condition方法

5

OperationCondition

操做條件

操做按鈕在某個場景下不可用或者隱藏

審覈後不能刪除

實現接口IOperationCondition

在插件中配置

6

Action

(無)

一個實體的操做分紅多個步驟執行,每一個步驟叫一個Action。

界面客戶端和服務端均可以使用Action

客戶端和服務端均可以使用,參見下文

實現接口IAction

在插件中配置

服務端的路徑爲服務類型全名+方法名

客戶端的路徑爲控制器類型全名+方法名

 

 

本文是體系結構的介紹,關於每駕馬車在第三個系列Netsharp開發中都會有詳細的介紹,這裏只說明一下Action在界面端和服務端的兩個種:

1、客戶端Action場景:

例如,在Netsharp平臺的普通的一張表單界面上,用戶執行保存按鈕時,執行的是Controller的Save方法,按照順序執行的邏輯以下:

 

順序

功能

Action

說明

1

調用前置方法OnSaving

OwnerMethodAction

 

2

調用前置事件Saving

OwnerEventAction

 

3

性能跟蹤開始

StopwatchStartAction

 

4

顯示Loadingbar

LoadingbarStartAction

 

5

界面端錄入合法性校驗

FormpartSaveAssertAction

 

6

調用保存服務

FormpartSaveAction

 

7

調用保存後置事件Saved

OwnerEventAction

 

8

調用保存後置方法OnSaved

OwnerMethodAction

 

9

隱藏Loadingbar

LoadingbarEndAction

 

10

性能跟蹤中止

StopwatchEndAction

 

 

2、服務端Action場景

例如,在訂單保存時服務方法中執行的邏輯,按照順序以下:

 

順序

功能

Action

說明

1

信用控制

 

 

2

可用量控制

 

 

3

最低售價控制

 

 

4

訂單基本校驗

 

 

5

訂單持久化到數據庫

 

 

6

生成收款單

 

 

7

生成出庫單

 

 

8

生成加工單

 

 

9

記往來帳

 

 

10

記可用量賬

 

 

11

更新客戶信用

 

 

12

更新最低售價

 

 

1.4     Netsharp組件清單

分類

組件

功能特徵

客戶可見

工具支持

4.0版本已支持

元數據管理方式

1

實體模型

可持久化

可序列化

實體支持三駕馬車

平臺自定義數據類型

平臺提供常見的若干父類(可持久化實體、業務實體、分類實體)

支持字段擴展

可視化實體設計

 否

UML建模工具

插件

2

插件機制

參考SharpDevelop插件機制(改形成適合管理軟件的插件模式)

數據庫格式

路徑支持繼承

插件項支持重寫

支持插件項與功能權限綁定

 否

插件編輯工具

插件瀏覽工具

安裝卸載工具

插件

3

持久層

多數據庫

級聯對象增刪改查

OQL查詢

併發控制

引用檢查

基於Ado.net的事務

分佈式事務(暫不支持)

支持Sqlserver

部分支持Mysql

可擴展支持Oracle

可擴展支持其餘數據庫

 否

OQL查詢分析器

4

分佈式

服務調用級別事務

多種訪問方式(HTTP\TCP)

高性能的序列化

客戶端動態代理

日誌跟蹤

根據父類的實體默認提供服務實現如:EntityService、BusinessEntityService、VoucherService

 否

 性能跟蹤查看其

5

工做臺

支持自定義佈局

默認佈局支持Pad、Workspace、主菜單、狀態來自定義配置

支持產品名、公司版權、LOGO、版本等自定義設置

登陸界面支持自定義背景圖片

 是

 

插件和配置文件

6

單點登陸

 暫不支持

 是

 

7

多國語言

 基於數據庫配置

平臺提供多語言工具

 是

 多語言維護工具

資源樹

8

併發

 基於Ts的併發控制

根據系統選項肯定是否併發控制

 否

 實體元數據上設置

實體模型

9

互斥

 兩個業務場景不能同時發生

 否

 

資源樹

10

表單

根據實體元數據快速生成表單

支持最終用戶的字段設置

支持常見的控件類型

數據的雙向綁定

字段顯示,必輸,可空,公式等設置

默認打印

 是

 表單管理工具

資源樹

11

列表

根據實體元數據快速生成列表

支持最終用戶的字段設置

支持常見的控件類型

數據的雙向綁定

支持分頁

支持懶加載

可設置字段:顯示,必輸,可空,排序,彙總等屬性

支持默認打印

 是

 列表管理工具

資源樹

12

查詢

根據實體元數據快速生成查詢

支持最終用戶的字段設置

支持常見的控件類型

多種查詢控件

自定義查詢方案

 是

 查詢工具

資源樹

13

打印

可視化打印模板設置

支持彙總表

支持交叉表

支持自定義報表

圖表(暫時不支持)

 是

 報表設計器

報表工具

資源樹

14

權限控制

功能權限/字段權限

數據權限

權限約束/權限互斥

分級受權

 是

 操做管理工具

資源樹

15

編碼規則

支持流水號

支持編號包含普通文本

3.         支持編號包含當前實體字段

 是

 編碼規則設置工具

資源樹

16

AOP

 暫不支持

 否

 

17

性能統計分析

 自動

 否

 性能統計選項開關

性能分析器

18

自動化測試

 暫不支持

 否

 

19

腳本引擎

 支持C#腳本功能

 否

 腳本測試工具

20

UI控件套件

使用Telerik控件庫

自定義若干控件

 是

 

21

業務選項

 基於插件的選項配置

默認提供多種數據類型的選項控件

 是

 插件工具

插件

22

嚮導

 支持嚮導框架

 是

 

23

組織機構

支持用戶/角色

支持多組織

支持總公司/子公司/部門/分類/項目/職務/崗位

 是

 

24

界面三駕馬車

狀態控制

觸發器

編輯驗證

 是

 

硬編碼

插件

界面元數據

25

工做流

 

 是

 

資源樹

26

建立賬套

 暫不支持

 是

 

27

異常管理

 異常框架

異常跟蹤

異常查看

 否

 異常列表查看

資源樹

28

枚舉

 表單、列表、查詢對應的控件

自動生成枚舉代碼

 是

 枚舉管理工具

資源樹

29

參照

支持下拉列表

支持彈出參照

支持表單、列表、查詢動態建立默認參照

支持添加自定義的過濾條件

支持添加當前行的變量做爲條件

支持C#腳本生成條件

 是

 參照管理工具

資源樹

30

預警/提醒/通知

 

插件工具配置

資源樹

31

做業

基於Quartz.NET

支持可視化的觸發器設置

可視化建立做業

支持做業日誌跟蹤

做業管理工具

資源樹

32

日誌組件

 

 否

 生成日誌文件

33

客戶端自動升級

客戶端發現新版本時自動升級

 

 

 

34

數據庫腳本升級工具

低版本到高版本升級時,自動執行若干腳本

 

 

 

 

35

緩存

內存緩存

緩存服務器

單個對象緩存

SET緩存

 

 

 

 

36

Session管理

超時驗證

踢出管理

 

 

 

37

業務日誌

單據增刪改查自動記錄日誌

登陸等操做自動記錄日誌

日誌查看、跟蹤

 

 

 

38

導出SQL腳本

列表、表單支持導出當前數據位SQL腳本

支持導出當前數據及組合數據

支持根據ById導出

支持導出全表

支持任意SELECT語句的腳本導出

 

 

 

單據、列表的二次開發菜單

SQL查詢分析器

 

1.5     Netsharp發展路線圖

Netsharp路標規劃分紅五個階段,參見下圖,目前基本完成第二個階段,即平臺產品化階段。

  

 

本文特別感謝東莞許勝平的建議和校對工做。

相關文章
相關標籤/搜索