unit Ueditdb; interface uses SysUtils, Classes, HTTPApp, WebModu, HTTPProd, WebAdapt, WebComp, DBAdapt, CompProd, PagItems, SiteProd, MidItems, WebForm; type Teditdb = class(TWebPageModule) DataSetAdapter1: TDataSetAdapter; AdapterPageProducer1: TAdapterPageProducer; AdapterForm1: TAdapterForm; AdapterFieldGroup1: TAdapterFieldGroup; AdapterCommandGroup1: TAdapterCommandGroup; CmdApply: TAdapterActionButton; DataSetValuesList1: TDataSetValuesList; FldCustNo: TAdapterDisplayField; FldCompany: TAdapterDisplayField; FldAddr1: TAdapterDisplayField; FldAddr2: TAdapterDisplayField; FldCity: TAdapterDisplayField; FldState: TAdapterDisplayField; FldZip: TAdapterDisplayField; FldCountry: TAdapterDisplayField; FldPhone: TAdapterDisplayField; FldFAX: TAdapterDisplayField; FldTaxRate: TAdapterDisplayField; FldContact: TAdapterDisplayField; FldLastInvoiceDate: TAdapterDisplayField; AdaptCustNo: TDataSetAdapterField; AdaptCompany: TDataSetAdapterField; AdaptAddr1: TDataSetAdapterField; AdaptAddr2: TDataSetAdapterField; AdaptCity: TDataSetAdapterField; AdaptState: TDataSetAdapterField; AdaptZip: TDataSetAdapterField; AdaptCountry: TDataSetAdapterField; AdaptPhone: TDataSetAdapterField; AdaptFAX: TDataSetAdapterField; AdaptTaxRate: TDataSetAdapterField; AdaptContact: TDataSetAdapterField; AdaptLastInvoiceDate: TDataSetAdapterField; Adapter1: TAdapter; Aquery: TAdapterAction; VqeryCustno: TAdapterField; AdapterFieldGroup2: TAdapterFieldGroup; AdapterCommandGroup2: TAdapterCommandGroup; CmdAquery: TAdapterActionButton; AdapterErrorList1: TAdapterErrorList; FldVqeryCustno: TAdapterDisplayField; procedure AqueryExecute(Sender: TObject; Params: TStrings); private { Private declarations } public { Public declarations } end; function editdb: Teditdb; implementation {$R *.dfm} {*.html} uses WebReq, WebCntxt, WebFact, Variants, Udatabase; function editdb: Teditdb; begin Result := Teditdb(WebContext.FindModuleClass(Teditdb)); end; procedure Teditdb.AqueryExecute(Sender: TObject; Params: TStrings); var LocateParams:TLocateParams; begin //use dataset //wdmData.Table1.Open; //wdmData.Table1.Locate('CustNo',AdaptEnterCustNo.ActionValue.Values[0],[]); //use dataset Adapter LocateParams:=DataSetAdapter1.LocateParamsList.Add; LocateParams.AddParam('CustNo',VqeryCustno.ActionValue.Values[0]); LocateParams.AdapterName:=DataSetAdapter1.Name; If not DataSetAdapter1.Locate then Adapter1.Errors.AddError('该用户编号不存在 '+VqeryCustno.ActionValue.Values[0]); end; initialization if WebRequestHandler <> nil then WebRequestHandler.AddWebModuleFactory(TWebPageModuleFactory.Create(Teditdb, TWebPageInfo.Create([wpPublished , wpLoginRequired], '.html', '', '修改数据'), crOnDemand, caCache) ); end. // unit Ujisuan; interface uses SysUtils, Classes, HTTPApp, WebModu, HTTPProd, WebComp, WebAdapt; type Tjisuan = class(TWebPageModule) PageProducer: TPageProducer; Adapter1: TAdapter; Fresult: TAdapterField; Fjisuan: TAdapterField; Aadd: TAdapterAction; AdapterImageField1: TAdapterImageField; procedure AaddExecute(Sender: TObject; Params: TStrings); procedure AaddGetParams(Sender: TObject; Params: TStrings); procedure FjisuanGetValue(Sender: TObject; var Value: Variant); procedure FresultGetValue(Sender: TObject; var Value: Variant); procedure WebPageModuleActivate(Sender: TObject); private { Private declarations } Vcount : integer; public { Public declarations } end; function jisuan: Tjisuan; implementation {$R *.dfm} {*.html} uses WebReq, WebCntxt, WebFact, Variants; function jisuan: Tjisuan; begin Result := Tjisuan(WebContext.FindModuleClass(Tjisuan)); end; procedure Tjisuan.AaddExecute(Sender: TObject; Params: TStrings); begin VCount := StrToInt(Params.Values['Count']); try VCount := VCount + Fjisuan.ActionValue.Values[0]; except on E: Exception do Adapter1.Errors.AddError(E); end; end; procedure Tjisuan.AaddGetParams(Sender: TObject; Params: TStrings); begin Params.Add(Format('Count=%d', [VCount])); end; procedure Tjisuan.FjisuanGetValue(Sender: TObject; var Value: Variant); begin if Fjisuan.ActionValue <> nil then Value := Fjisuan.ActionValue.Values[0] end; procedure Tjisuan.FresultGetValue(Sender: TObject; var Value: Variant); begin Value:= VCount ; end; procedure Tjisuan.WebPageModuleActivate(Sender: TObject); begin VCount := 0; end; initialization if WebRequestHandler <> nil then WebRequestHandler.AddWebModuleFactory(TWebPageModuleFactory.Create(Tjisuan, TWebPageInfo.Create([wpPublished {, wpLoginRequired}], '.html', '', '加减计数'), crOnDemand, caCache) ); end. /// //Ujisuan.html <html> <head> <title> <%= Page.Title %> </title> </head> <body> <h1><%= Application.Title %></h1> <% if (EndUser.Logout != null) { %> <% if (EndUser.DisplayName != '') { %> <h1>Welcome <%=EndUser.DisplayName %></h1> <% } %> <% if (EndUser.Logout.Enabled) { %> <a href="<%=EndUser.Logout.AsHREF%>">Logout</a> <% } %> <% if (EndUser.LoginForm.Enabled) { %> <a href=<%=EndUser.LoginForm.AsHREF%>>Login</a> <% } %> <% } %> <h2><%= Page.Title %></h2> <table cellspacing="0" cellpadding="0"> <td> <% e = new Enumerator(Pages) s = '' c = 0 for (; !e.atEnd(); e.moveNext()) { if (e.item().Published) { if (c>0) s += ' | ' if (Page.Name != e.item().Name) s += '<a href="' + e.item().HREF + '">' + e.item().Title + '</a>' else s += e.item().Title c++ } } if (c>1) Response.Write(s) %> </td> </table> <FORM NAME="F" METHOD=POST> <INPUT TYPE=HIDDEN NAME="__action"> <INPUT TYPE=INPUT VALUE= "<%=Adapter1.Fjisuan.EditText%>" NAME="<%=Adapter1.Fjisuan.InputName%>"> <BR> <INPUT TYPE=SUBMIT VALUE="<%=Adapter1.Aadd.DisplayLabel%>" οnclick="F.__action.value='<%=Adapter1.Aadd.AsFieldValue%>'"> <H2>结果: <%=Adapter1.Fresult.DisplayText %></H2> </FORM> </body> </html>
应用WebSnap常用组件
最新推荐文章于 2017-08-27 21:41:00 发布