应用WebSnap常用组件

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 += '&nbsp;|&nbsp;' 
         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>



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值