Rss & SiteMap

Foxtable(狐表) http://www.foxtable.com

新一代数据库软件,完美融合Access、Foxpro、Excel、vb.net之优势,人人都能掌握的快速软件开发工具!
共3 条记录, 每页显示 10 条, 页签: [1]
[浏览完整版]

标题:[求助]WEUI明细表编辑以后如何保存

1楼
chnfo 发表于:2025/2/23 21:55:00
定义Edit.htm,大意是将打开订单表的明细(不过不是用表,是用AddPreview加载明细,然后点各个明细的编辑按钮,需要编辑哪个明细,就点哪个明细的编辑按钮
Dim wb As New weui
Dim pr As DataRow '定义主表ID
Dim drs As List(Of DataRow) = DataTables("订单2").SQLSe1ect("", 5, "[_Identify] ") '获取前5条记录  

For Each dr As DataRow In drs
    With wb.AddPreview("", dr("ID"), dr("产品"), dr("金额"))
        .AddItem("客户", dr("客户"))
        .AddItem("雇员", dr("雇员"))
        .AddItem("单价", dr("单价"))
        .AddItem("数量", dr("数量"))
        .AddItem("折扣", dr("折扣"))
        .AddItem("日期", dr("日期"))
        .Addbutton("编辑", "EditDetail.htm?page = " & Page & " & did = " & dr("ID") & " & oid = " & pr("ID"), 1, "") 
    End With 
Next
e.WriteString(wb.Build)


有个问题,明细表的数据修改以后,如何保存?
这里定义一个明细表的编辑函数editdetail.
Dim e As RequestEventArgs = args(0)
Dim wb As New weui

Dim Page As Integer '页码变量
If e.GetValues.ContainsKey("page") Then '如果地址中有page参数
    Integer.TryParse(e.GetValues("page"), page) '提取page参数
End If

Dim oid As String
If e.GetValues.ContainsKey("oid") Then '如果地址中有主表ID参数
    oid = e.GetValues("oid") '提取主表ID参数
End If

Dim xr As DataRow
If e.GetValues.ContainsKey("did") Then '如果地址中有明细ID参数
    xr = DataTables("明细表").SQLFind("ID = '" & e.GetValues("did") & "'")
    Dim url As String = "EditDetail.htm?page=" & page & "&did='" & xr("ID") & "'" & "&oid='" & oid & "'" '传递页码和明细ID
    wb.AddForm("", "form1", url)
    With wb.AddInputGroup("form1", "ipg1", "编辑明细")
        .AddHiddenValue("did", xr("ID"))
        .AddInput("Code", "编号", "text").Value = xr("Code")
        .AddInput("Title", "名称", "text").Value = xr("Title")
    End With
    
    With wb.AddButtonGroup("form1", "btg1", False)
        .Add("btnok", "确定", "submit", )  '这个保存应当怎么写?
        .Add("btnBack", "返回", "", "Edit.htm?page=" & Page & "&oid=" & oid)  '点击返回,就回到上一个界面
    End With
End IfIf e.PostValues.Count > 0 Then '如果是通过提交按钮访问,则给一个已经保存的提示给用户,时长500毫秒
wb.AddToast("", "t1", "已经保存", 0).Msec = 500
End If
wb.AppendHTML("<script src='./lib/order.js'></script>") '引入脚本文件
e.WriteString(wb.Build) '生成网页
2楼
有点蓝 发表于:2025/2/23 22:25:00
确定按钮使用的是submit,会正常提交,只需要判断e.PostValues.Count > 0

参考这里的用法:http://www.foxtable.com/mobilehelp/topics/0059.htm

If e.PostValues.Count = 0 Then
显示编辑区
else
保存的代码
end if
3楼
chnfo 发表于:2025/2/23 23:43:00
editdetail函数定义如下:
Dim e As RequestEventArgs = args(0)
Dim wb As New weui

Dim Page As Integer '页码变量
Dim oid As String
Dim xr As DataRow

If e.GetValues.ContainsKey("page") AndAlso e.GetValues.ContainsKey("oid") AndAlso e.GetValues.ContainsKey("did") Then 
    Integer.TryParse(e.GetValues("page"), page) '提取page参数
    oid = e.GetValues("oid") '提取主表ID参数
    xr = DataTables("TbBProD").SQLFind("ID = '" & e.GetValues("did") & "'")
    If xr Is Nothing Then
        Return ""
    End If
End If

Dim url As String = "EditBProDetail.htm?page=" & page & "&did=" & xr("ID") & "&oid=" & oid '传递页码和明细ID

wb.AddForm("", "form1", url)
With wb.AddInputGroup("form1", "ipg1", "编辑明细")
    .AddHiddenValue("did", xr("ID"))
    .AddInput("Code", "编号", "text").Value = xr("Code")
    .AddInput("Title", "名称", "text").Value = xr("Title")
End With

With wb.AddButtonGroup("form1", "btg1", False)
    .Add("btnok", "确定", "submit", url)  ''这一句是不是有什么问题?
    .Add("btnBack", "取消", "", "Edit.htm?page=" & Page & "&oid=" & oid)
End With

If e.PostValues.Count > 0 Then 
    xr("Code") = e.PostValues("Code")
    xr("Title") = e.PostValues("Title")
    xr.Save() 
    wb.AddToast("", "t1", "已经保存", 0).Msec = 500
End If

wb.AppendHTML("<script src='./lib/order.js'></script>") '引入脚本文件
e.WriteString(wb.Build) '生成网页


但是实际点击“确定”按钮,并没有保存为新输入的值。
名称后面加了“XX”,然后点确定,数据又回去了
ACCESS数据库有延迟?

图片点击可在新窗口打开查看此主题相关图片如下:无标题2.png
图片点击可在新窗口打开查看


[此贴子已经被作者于2025/2/23 23:52:20编辑过]
共3 条记录, 每页显示 10 条, 页签: [1]

Copyright © 2000 - 2018 foxtable.com Tel: 4000-810-820 粤ICP备11091905号

Powered By Dvbbs Version 8.3.0
Processed in .02930 s, 2 queries.