Time of Update: 2018-12-05
關於kbmMW的事務控制,前文已經在用戶端實現,通過kbmMWClientTransaction來控制多個資料集的提交,在用戶端提交多資料集,實際上,是在用戶端實現商務邏輯,並通過一個事務來完成資料處理,這是違反多層架構的做法,實際項目中,需要在服務端,往往是利用多個資料集進行業務處理,並且用事務來控制,那我們該怎麼辦呢?換句話說,如何在服務實現事務的控制。kbmMW在服務端,如同在用戶端一樣,為我們提供了方便的機制來處理事務。下面的代碼,轉自kbmMW的新聞群組:var tx:
Time of Update: 2018-12-05
代碼Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->create PROCEDURE get_tableinfo ASif not exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[tablespaceinfo]') and OBJECTPROPERTY(id, N'
Time of Update: 2018-12-05
kbmMW提供了穩顧機制,分為服務端的Cache及用戶端的Cache。以用戶端為例,當用戶端發出相同的資料查詢請求時,kbmMW會在用戶端的Cache中尋找,如果找到,則不再向伺服器請求資料。為了啟用一個ClientQuery使用穩存,首先要設定其以下兩個屬性:kbmMWClientQuery.Cached:=True;//開啟資料集的穩存kbmMWClientQuery.CacheFlags:mwcfDontAge -
Time of Update: 2018-12-05
隨著各種應用系統越來複雜,使用者終端類型越來越多,傳統的C/S 系統面臨著越來越多的問題和挑戰,我們先看一下C/S 結構的架構圖: 用戶端系統一般通過資料庫的用戶端與資料庫連接,然後通過SQL 陳述式訪問資料庫伺服器,資料庫根據用戶端的請求返回資料,在簡單的系統裡面這種方式基本上沒有什麼問題,而且開發起來比較簡單。但是這種結構面臨這下面一些問題:
Time of Update: 2018-12-05
public bool myTime(string str) { bool flag=false; string regex = @"^((\d{2}(([02468][048])|([13579][26]))[\-\/\s]?((((0?[13578] )|(1[02]))[\-\/\s]?((0
Time of Update: 2018-12-05
http://docwiki.embarcadero.com/RADStudio/XE2/en/Release_Notes_for_XE2_Update_4Changes and New Features in XE2 Update 4 This update includes the following new and changed features: Firemonkey OS X changes: Printing is now supported Performance
Time of Update: 2018-12-05
Time of Update: 2018-12-05
呵呵,說曹操,曹操到。昨天剛寫完kbmMW 的配置,今天kbmMW 4.00 正式版就發布了。We are happy to announce the immediate availability of kbmMW Enterprise Edition v. 4.00.00. This is a major release with many new features like Remote Desktop, JSON and JSON dataset streaming, new
Time of Update: 2018-12-05
Basic4android v2.00 is now available. This upgrade is probably the most significant upgrade since v1.00.The major new feature is support for class modules. With support forclasses Basic4android now allows you to write both procedural code andobject
Time of Update: 2018-12-05
上次寫了從kbmMW伺服器給用戶端返回資料,我們實現了資料的查詢功能,但是當用戶端對資料進行了增加、更新、刪除的操作,我們必須把這些操作返回到伺服器端,並對後台資料庫進行更新。kbmMW 可以很方便的實現這一功能,今天就做一個更新資料到伺服器的例子。 還是在昨天的基礎上,我們要把用戶端的資訊更新到伺服器上,首先需要在伺服器端的Tkbmqueryservice 設定允許用戶端更新的許可權,即把allowclient
Time of Update: 2018-12-05
kbmMW提供了QueryService,供我們在用戶端象傳統資料庫應用一樣,直接利用ClientQuery做SQL查詢,以及提交,並且能夠在客 戶端以事務的方式提交多個資料集,應該說,QueryService為我們提供了非常好的便利,快速將兩層應用轉為多層應用,如果用過ASTA,就會發 現,QueryService在對兩層應用的轉化上,要比其實現的更完美,層次更清晰。但在實際項目中,如果考慮應用伺服器對多平台的支援以及商務邏輯的
Time of Update: 2018-12-05
此HTML標籤<input id="Radio1" type="radio"/>可完全取代以上2個伺服器控制項。RadioButtonList及RadioButton依賴於form表單,產生很多垃圾代碼,有時候只是用來顯示此方法可取代。aspx: <input type="radio" name="radio" id="test1" value="1" disabled="disabled" runat="server"/> <label for="test1"
Time of Update: 2018-12-05
要學習本教程,請先參考下面的教程:安裝 Basic4android 和 Android SDKHello world - 安裝Android 模擬器 在這個教程裡面我們要使用設計器來建立layout. 這個layout包括一個文字框和一個按鈕. 使用者需要猜一個隨機的數字. 使用者在文字框裡面輸入數字並通過點按鈕提交猜的數字. 然後系統會通過"toast"資訊來給使用者提示其輸入的數字比系統選擇的數字大還是小. - 建立一個新工程並儲存它. -選擇菜單來開啟設計器.
Time of Update: 2018-12-05
前幾天下載了Delphi XE3,大概試用了一下,怎麼說呢?與前期易博龍的承諾的差距很大。當然也有一定的進步,不過進步太小了。先說一下壞訊息:1.XE3=XE2+update-IOS 開發。 XE3 更新了FM, 但是取消了對IOS 開發的支援,如果現在利用XE2 做IOS 開發的,估計目前只能維持現狀。對IOS 與Android 的開發被單獨放到另外一個產品,說是明年出來,能不能出來?半年以後再說吧。2. 支援WIN8 Metropolis
Time of Update: 2018-12-05
在kbmMW建立服務嚮導中,有個“Eventoperated service”,其描述資訊:同TkbmMWSimpleService一樣,就是公布了一個附加的事件,來控制用戶端請求,取代了ProcessRequest. 看一下TkbmMWEventService代碼,原來是這樣: 1.TkbmMWEventService =
Time of Update: 2018-12-05
開始利用kbmmw實作項目,第一件事就是為的服務端加使用者的認證。如果用戶端發來的請求無法在伺服器端通過認證,即用戶端認證失敗,會在用戶端彈出一個錯誤提示視窗:Authorization failed.總不能讓使用者看到這樣的提示資訊,得想辦法,截獲這樣的錯誤,並給出自己的提示。沒想到,費了一翻周拆,最終發現,kbmMW沒有提供機制來處理這樣的問題。先看看伺服器在哪裡處理這樣的錯誤:單元:kwmMWServer方法:procedure
Time of Update: 2018-12-05
想利用TkbmMWUNIDACQuery插入一條記錄,結果遇到問題,顯示:不允許從資料類型 sql_variant 到 varchar 的隱式轉換。請使用 CONVERT 函數來運行此查詢。這是什麼問題啊?下面是出問題的代碼,很常規的寫法。 q:=TkbmMWUNIDACQuery.Create(self);
Time of Update: 2018-12-05
由於kbmMW 伺服器與用戶端互動是使用它的專用資料格式,因此與其它語言及平台相互訪問的話就會有相容問題,為了最大化的利用kbmMW 伺服器,從kbmMW 4.0 以後,其開始支援JSON 格式傳遞資料,其實就是可以通過Webserver根據用戶端的request 來返回對應的JSON串. 繼續利用上次的webserver 的例子,在webservice
Time of Update: 2018-12-05
增加如下代碼,可在驗證後再次確認,有時候很有用,如下: submitHandler: function (form) { if (confirm("提醒:您確定要執行此次操作嗎?")) { disableOtherSubmit(); $("#btnSubmit").val("處理中..."); form.submit(); }選擇勾選項需不需要驗證:chkjedj: { required: "#chkjedj:checked" }及以下代碼: $("#
Time of Update: 2018-12-05
我們今天做一個kbmMW 簡單服務,功能是用戶端調用伺服器端的過程,完成一個累加的功能。首先我們建立一個空白的vcl form 應用程式,並放置幾個控制項,:其中有三個控制項,一個kbmMWSever1,一個kbmMWTCPIPIndyServerTransport1,還有一個就是啟動按鈕。對應的屬性如下: 並設定kbmMWTCPIPIndyServerTransport 的bindings 的ip 為0.0.0.0,連接埠為3000。ip為0.0.0.0 代表偵聽本機所有的ip