Foxtable(狐表)用户栏目专家坐堂 → 移动开发新增


  共有1981人关注过本帖树形打印复制链接

主题:移动开发新增

帅哥哟,离线,有人找我吗?
刘林
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:八尾狐 帖子:1936 积分:14844 威望:0 精华:0 注册:2016/4/28 9:58:00
移动开发新增  发帖心情 Post By:2017/8/16 11:14:00 [只看该作者]

Dim e As RequestEventArgs = args(0)
Dim wb As New  weui
'删除订单明细
If e.GetValues.ContainsKey("deldid") Then
    DataTables("学生信息").SQLDeleteFor("[_Identify] = " &  e.GetValues("deldid"))
End If
'订单编辑
Dim pr As DataRow  '订单
Dim srs As List(of DataRow)  '订单明细集合
Dim Page As Integer  '页码变量
If e.GetValues.ContainsKey("page") Then   '如果地址中有page参数
    Integer.TryParse(e.GetValues("page"), page)  '提取page参数
End If
If e.GetValues.ContainsKey("oid") = False Then '如果没有传递订单编号,则新增与一个订单
    pr =  DataTables("学生信息").SQLAddNew() '
Else '如果传递了订单编号,则找出此订单进行编辑
    pr = DataTables("学生信息").SQLFind("_Identify='" & e.GetValues("oid") & "'")
    If  pr Is  Nothing Then '多用户情况下,必须考虑其他用户删除订单的可能.
        wb.InSertHtml("该学生信息删除了")
        e.WriteString(wb.Build)
        Return  ""  '必须返回
    End  If
End  If
Dim url As String = "edit.htm?page=" & page &  "&oid=" & pr("_Identify")  '传递页码和订单编号
wb.AddForm("","form1",url)
With wb.AddInputGroup("form1","ipg1",iif(e.GetValues.ContainsKey("oid"),"编辑信息","新增信息"))
    .AddInput("身份证件号","身份证件号","text").Value = pr("身份证件号")
    .AddInput("学生姓名","学生姓名","text").Value = pr("学生姓名")
    .AddInput("学籍号","学 籍 号","text").Value = pr("学籍号")
End With 
       .Add("btn2", "保存", "submit")  '正常提交,保存后进入编辑状态
    If  e.GetValues.ContainsKey("oid") = False Then '如过是新增订单
        .Add("btn3", "取消", "button","list.htm?page=" & page & "&deloid=" & pr("订单编号")) '删除新增订单后返回列表
        Else
        .Add("btn3", "返回", "button","list.htm?page=" & page) '返回列表
    End  If
 End With
 pr.Save() 
If 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楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2017/8/16 11:34:00 [只看该作者]

编辑的时候你跳转的url是什么?新增的时候你把url的oid参数删除掉即可。

 回到顶部
帅哥哟,离线,有人找我吗?
刘林
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:八尾狐 帖子:1936 积分:14844 威望:0 精华:0 注册:2016/4/28 9:58:00
  发帖心情 Post By:2017/8/16 11:43:00 [只看该作者]

在哪里看得到跳转的url,懂不起


 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2017/8/16 12:14:00 [只看该作者]

 你都没有赋值的代码。你点击提交的时候,跳转到哪里处理?

 

Dim url As String = "save.htm?page=" & page &  "&oid=" & pr("_Identify")  '传递页码和订单编号

 

 你可以在save.htm页面进行数据保存。


 回到顶部
帅哥哟,离线,有人找我吗?
刘林
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:八尾狐 帖子:1936 积分:14844 威望:0 精华:0 注册:2016/4/28 9:58:00
  发帖心情 Post By:2017/8/16 17:07:00 [只看该作者]

Dim e As RequestEventArgs = args(0)
Dim wb As New  weui
'删除订单明细
If e.GetValues.ContainsKey("deldid") Then
    DataTables("学生信息").SQLDeleteFor("[_Identify] = " &  e.GetValues("deldid"))
End If
'订单编辑
Dim pr As DataRow  '订单
Dim srs As List(of DataRow)  '订单明细集合
Dim Page As Integer  '页码变量
If e.GetValues.ContainsKey("page") Then   '如果地址中有page参数
    Integer.TryParse(e.GetValues("page"), page)  '提取page参数
End If
If e.GetValues.ContainsKey("oid") = False Then '如果没有传递订单编号,则新增与一个订单
    pr =  DataTables("学生信息").sqlAddNew() '
Else '如果传递了订单编号,则找出此订单进行编辑
    pr = DataTables("学生信息").SQLFind("_Identify='" & e.GetValues("oid") & "'")
    If  pr Is  Nothing Then '多用户情况下,必须考虑其他用户删除订单的可能.
        wb.InSertHtml("该学生信息删除了")
        e.WriteString(wb.Build)
        Return  ""  '必须返回
    End  If
End  If
Dim url As String= "edit.htm?page=" & page &  "&oid=" & pr("_Identify")  '传递页码和订单编号
wb.AddForm("","form1",url)
With wb.AddInputGroup("form1","ipg1",iif(e.GetValues.ContainsKey("oid"),"编辑信息","新增信息"))
    .AddInput("身份证件号","身份证件号","text").Value = pr("身份证件号")
    .AddInput("学生姓名","学生姓名","text").Value = pr("学生姓名")
    .AddInput("学籍号","学 籍 号","text").Value = pr("学籍号")
End With
 With wb.AddButtonGroup("form1","btg1",False)
       .Add("btn2", "保存", "submit")  '正常提交,保存后进入编辑状态
    If  e.GetValues.ContainsKey("oid") = False Then '如过是新增订单
        .Add("btn3", "取消", "button","list.htm?page=" & page & "&deloid=" & pr("订单编号")) '删除新增订单后返回列表
        Else
        .Add("btn3", "返回", "button","list.htm?page=" & page) '返回列表
    End  If
 End With
 pr.Save()
If 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) '生成网页

 

老师,现在点编辑可以了,就是点新增就出现调用目标异常,查了很久也没清到问题请老师帮改一下嘛,确实不得行呀


 回到顶部
帅哥哟,离线,有人找我吗?
刘林
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:八尾狐 帖子:1936 积分:14844 威望:0 精华:0 注册:2016/4/28 9:58:00
  发帖心情 Post By:2017/8/16 17:35:00 [只看该作者]

  .Add("btn3", "取消", "button","list.htm?page=" & page & "&deloid=" & pr("订单编号")) '删除新增订单后返回列表
        发现了这句有错,不好意思,有问题再请教

 回到顶部
帅哥哟,离线,有人找我吗?
刘林
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:八尾狐 帖子:1936 积分:14844 威望:0 精华:0 注册:2016/4/28 9:58:00
  发帖心情 Post By:2017/8/16 21:36:00 [只看该作者]

Dim e As RequestEventArgs = args(0)
Dim wb As New  weui
'删除订单明细
If e.GetValues.ContainsKey("deldid") Then
    DataTables("学生信息").SQLDeleteFor("[_Identify] = " &  e.GetValues("deldid"))
End If
'订单编辑
Dim pr As DataRow  '订单
Dim srs As List(of DataRow)  '订单明细集合
Dim Page As Integer  '页码变量
If e.GetValues.ContainsKey("page") Then   '如果地址中有page参数
    Integer.TryParse(e.GetValues("page"), page)  '提取page参数
End If
If e.GetValues.ContainsKey("oid") = False Then '如果没有传递订单编号,则新增与一个订单
    pr =  DataTables("学生信息").sqlAddNew() '
Else '如果传递了订单编号,则找出此订单进行编辑
    pr = DataTables("学生信息").SQLFind("_Identify='" & e.GetValues("oid") & "'")
    If  pr Is  Nothing Then '多用户情况下,必须考虑其他用户删除订单的可能.
        wb.InSertHtml("该学生信息删除了")
        e.WriteString(wb.Build)
        Return  ""  '必须返回
    End  If
End  If
Dim url As String= "edit.htm?page=" & page &  "&oid=" & pr("_Identify")  '传递页码和订单编号
wb.AddForm("","form1",url)
With wb.AddInputGroup("form1","ipg1",iif(e.GetValues.ContainsKey("oid"),"编辑信息","新增信息"))
    .AddInput("身份证件号","身份证件号","text").Value = pr("身份证件号")
    .AddInput("学生姓名","学生姓名","text").Value = pr("学生姓名")
    .AddInput("学籍号","学 籍 号","text").Value = pr("学籍号")
End With
 With wb.AddButtonGroup("form1","btg1",False)
       .Add("btn2", "保存", "submit")  '正常提交,保存后进入编辑状态
    If  e.GetValues.ContainsKey("oid") = False Then '如过是新增订单
        .Add("btn3", "取消", "button","list.htm?page=" & page & "&deloid=" & pr("_Identify")) '删除新增订单后返回列表
        Else
        .Add("btn3", "返回", "button","list.htm?page=" & page) '返回列表
    End  If
 End With
 pr.Save()
If 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) '生成网页

 

 

老师,现在新增的问题解决了,但保存又出现了个问题,编辑保存没问题,但新增保存又能出现

 

.NET Framework 版本:2.0.50727.5485
Foxtable 版本:2017.6.12.1
错误所在事件:自定义函数Save
详细错误信息:
调用的目标发生了异常。
未将对象引用设置到对象的实例。

 

 

save()

 

Dim e As RequestEventArgs = args(0)
 '保存订单
Dim dr As DataRow =  DataTables("学生信息").SQLFind("身份证件号='" & e.PostValues("身份证件号") & "'")
Dim nms() As String =  {"身份证件号","学生姓名","学籍号"}
If dr IsNot Nothing Then
    For Each nm As String In nms
        If e.PostValues.ContainsKey(nm) Then
            dr(nm)= e.PostValues(nm)
         End  If
    Next
 End If
 dr.Save()
 '保存明细

 

 

研究了没看出问题,请问老师问题出在什么地方


 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2017/8/16 22:01:00 [只看该作者]

代码改一下

 

Dim e As RequestEventArgs = args(0)
'保存订单
Dim dr As DataRow = DataTables("学生信息").SQLFind("身份证件号='" & e.PostValues("身份证件号") & "'")
Dim nms() As String =  {"身份证件号","学生姓名","学籍号"}
If dr Is Nothing Then dr = DataTables("学生信息").addnew
For Each nm As String In nms
    If e.PostValues.ContainsKey(nm) Then
        dr(nm)= e.PostValues(nm)
    End  If
Next
dr.Save()


 回到顶部
帅哥哟,离线,有人找我吗?
刘林
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:八尾狐 帖子:1936 积分:14844 威望:0 精华:0 注册:2016/4/28 9:58:00
  发帖心情 Post By:2017/8/16 22:24:00 [只看该作者]

If e.GetValues.ContainsKey("oid") = False Then '如果没有传递订单编号,则新增与一个订单
    pr =  DataTables("学生信息").sqlAddNew() '

1、在edit 中有这句增加代码

2、测试改成这个得到的结果是:该学生信息删除了

 

 

 

另外我想在编辑了中增加编辑字段民族

  .AddSelect("民族","民族",DataTables("民族代码").SQLGetComboListString("民族") )

但显初始的时候显示其本来的民族,只是可下拉选择修改怎么办


 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2017/8/16 22:51:00 [只看该作者]

1、2、新增一行,保存,然后编辑,提示删除?

 

3、改成 .AddSelect("民族","民族",DataTables("民族代码").SQLGetComboListString("民族").replace(pr("民族"), "[" & pr("民族") & "]"))


 回到顶部
总数 19 1 2 下一页