Foxtable(狐表)用户栏目专家坐堂 → 移动开发数据提交报错


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

主题:移动开发数据提交报错

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


加好友 发短信
等级:童狐 帖子:273 积分:2357 威望:0 精华:0 注册:2015/12/11 4:29:00
移动开发数据提交报错  发帖心情 Post By:2019/9/18 14:02:00 [只看该作者]

请老师指点.
错误记录如下:

2019-09-18 07:46:51.6254
函数不正确。
   在 System.Net.HttpRequestStream.Read(Byte[] buffer, Int32 offset, Int32 size)
   在 System.IO.BufferedStream.ReadByte()
   在 Foxtable.RequestEventArgs.o 0o O o(Stream A_0)
   在 Foxtable.RequestEventArgs.O0_0o0__()

2019-09-18 07:46:51.7582
调用的目标发生了异常。
   在 System.RuntimeMethodHandle.InvokeMethod(Object target, Object[] arguments, Signature sig, Boolean constructor)
   在 System.Reflection.RuntimeMethodInfo.UnsafeInvokeInternal(Object obj, Object[] parameters, Object[] arguments)
   在 System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
   在 Foxtable.UserFunctions.Execute(String Name, Object[] Args)
未将对象引用设置到对象的实例。
   在 UserCode.ArxVvSNgB8A19ic5F(Object[] Args)

2019-09-18 07:48:59.1146
未能启用约束。一行或多行中包含违反非空、唯一或外键约束的值。
   在 System.Data.DataSet.EnableConstraints()
   在 System.Data.DataSet.set_EnforceConstraints(Boolean value)
   在 System.Data.DataTable.EndLoadData()
   在 Foxtable.DataTable.oo  O O (DataRow[] A_0)

2019-09-18 07:49:10.8006
由于线程退出或应用程序请求,已中止 I/O 操作。
   在 System.Net.HttpRequestStream.Read(Byte[] buffer, Int32 offset, Int32 size)
   在 System.IO.BufferedStream.ReadByte()
   在 Foxtable.RequestEventArgs.o 0o O o(Stream A_0)
   在 Foxtable.RequestEventArgs.O0_0o0__()

2019-09-18 07:49:10.8758
调用的目标发生了异常。
   在 System.RuntimeMethodHandle.InvokeMethod(Object target, Object[] arguments, Signature sig, Boolean constructor)
   在 System.Reflection.RuntimeMethodInfo.UnsafeInvokeInternal(Object obj, Object[] parameters, Object[] arguments)
   在 System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
   在 Foxtable.UserFunctions.Execute(String Name, Object[] Args)
未将对象引用设置到对象的实例。
   在 UserCode.ArxVvSNgB8A19ic5F(Object[] Args)

2019-09-18 13:46:08.1797
由于线程退出或应用程序请求,已中止 I/O 操作。
   在 System.Net.HttpRequestStream.Read(Byte[] buffer, Int32 offset, Int32 size)
   在 System.IO.BufferedStream.ReadByte()
   在 Foxtable.RequestEventArgs.o 0o O o(Stream A_0)
   在 Foxtable.RequestEventArgs.O0_0o0__()

2019-09-18 13:46:08.3487
调用的目标发生了异常。
   在 System.RuntimeMethodHandle.InvokeMethod(Object target, Object[] arguments, Signature sig, Boolean constructor)
   在 System.Reflection.RuntimeMethodInfo.UnsafeInvokeInternal(Object obj, Object[] parameters, Object[] arguments)
   在 System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
   在 Foxtable.UserFunctions.Execute(String Name, Object[] Args)
未将对象引用设置到对象的实例。
   在 UserCode.ArxVvSNgB8A19ic5F(Object[] Args)

2019-09-18 13:46:37.3566
函数不正确。
   在 System.Net.HttpRequestStream.Read(Byte[] buffer, Int32 offset, Int32 size)
   在 System.IO.BufferedStream.ReadByte()
   在 Foxtable.RequestEventArgs.o 0o O o(Stream A_0)
   在 Foxtable.RequestEventArgs.O0_0o0__()

2019-09-18 13:46:37.4260
调用的目标发生了异常。
   在 System.RuntimeMethodHandle.InvokeMethod(Object target, Object[] arguments, Signature sig, Boolean constructor)
   在 System.Reflection.RuntimeMethodInfo.UnsafeInvokeInternal(Object obj, Object[] parameters, Object[] arguments)
   在 System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
   在 Foxtable.UserFunctions.Execute(String Name, Object[] Args)
未将对象引用设置到对象的实例。
   在 UserCode.ArxVvSNgB8A19ic5F(Object[] Args)


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


加好友 发短信
等级:超级版主 帖子:106209 积分:540168 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/9/18 14:17:00 [只看该作者]

写了什么代码?

调试技巧:http://www.foxtable.com/webhelp/scr/1485.htm

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


加好友 发短信
等级:童狐 帖子:273 积分:2357 威望:0 精华:0 注册:2015/12/11 4:29:00
  发帖心情 Post By:2019/9/18 20:38:00 [只看该作者]

Dim e As RequestEventArgs = args(0)
Dim wb As New weui
If e.PostValues.Count = 0 Then '生成增加订单网页
    wb.AddTopTips("","toptip1","") '用于显示动态错误提示
    wb.AddForm("","form1","addnew.htm") .Attribute=""  '验证表单receive.htm
    With wb.AddInputGroup("form1","ipg1","增加报表")
        Dim xm As String = e.Cookies("username")
        xm= DecryptText(xm,"123","123")
        With .AddInput("姓名","姓名","text")
            .Value= xm '.AddHiddenValue后面做隐藏的
            .Readonly=True
        End With
        ' Dim gjs1 As List(of String) = DataTables("员工资料表").SQLGetValues("姓名","绩效工资= 1","部门 desc")
        ' .AddSelect("姓名","姓名","|" & String.Join("|",gjs1.ToArray)).Required =True '.Attribute = ""  '调用js函数.
        
        Dim gjs As List(of String) = DataTables("员工资料表").sqlGetValues("设备","排计划= 1","序号")
        With .AddSelect("机台","机台","|" & String.Join("|",gjs.ToArray)) '.Attribute = ""  '调用js函数.
            .Required =True
            .Attribute = ""
        End With
        
        With .AddInput("订单编号","订单编号R","number")  '写在一起,如 "
            .Attribute = """
        End With
        .AddInput("产品","产品","").Readonly=True
        .AddInput("订单数量","订单数量","number").Readonly=True '自动输入订单数量
        With .AddSelect("工序","工序","")
            .Attribute = ""
        End With
        .AddInput("详细工作内容","详情","text").Placeholder= "可输入详细内容:如机台维护,换刀..."
        Dim time As Date = #00:01:00#
        
        'With .AddInputCell("ic3",2) '通过InputCell增加输入框, 2表示突出显示(含图标)
        '.AddLabel("lmm","机器时间",0) '增加标签,0显示在左边
        '.AddInput("机器时间","机器时间",1).value = Format(time,"HH:mm:ss") '.PlaceHolder= "请输入密码" '增加输入框,1表示显示在中间
        'End With
        
        With .AddInput("机器时间","机器时间","text")
            .value = Format(time,"HH:mm:ss")
        End With
        .AddInput("单次数量生产","单次数量","number").Value =1
        Dim Date1 As Date = Date.Now
        .AddInput("起始时间","起始日期","datetime-local").value = Format(Date1,"yyyy-MM-ddT08:00")
        .AddInput("结束时间","结束日期","datetime-local").value = format(Date1,"yyyy-MM-ddT08:00")
        .AddInput("实际产量","实际产量","number")
        
        With .AddUploader("质检报告图片","检验报表/交货照片",False)
            .AllowDelete = True '允许删除
            .Incremental = True '允许重复选择文件或连续拍照
            ' .Rotate = 1 '顺时钟旋转90°
            .ScaleWidth = 1500 '自动压缩图片宽度为400个像素,高度等比例压缩
        End With
        
        With wb.AddButtonGroup("form1","btg1",True)
            With .Add("btn1", "确定提交", "button")
                .Kind =  0                ' .Attribute= ""  '调用js函数上传
                .Attribute="""
            End With
            .add("btn2","返回主页","","default.htm").Kind = 1
        End With
        
        wb.AddToast("","tst1", "正在上传",1)
        wb.AddToast("","tst2", "上传成功",0)
        wb.AddToast("","tst3", "上传失败",0).Icon= "warn"
    End With
    
Else '保存新增的订单
    Dim dr As DataRow = DataTables("生产日报表").AddNew()
    Dim nms() As String = {"姓名","机台","订单编号","工序","机器时间","单次数量生产","起始时间","结束时间","实际产量","质检报告图片","详细工作内容"}
    For Each nm As String In nms
        dr(nm) = e.PostValues(nm)
    Next
    Dim flm As String '记录多个文件名 
    For Each key As String In e.Files.Keys   '应该是这段保存文件报错,
        For Each fln As String In e.Files(key)
            If fln IsNot Nothing Then
                e.SaveFile(key,fln,"d:\myftp\sctp\" & fln) '保存接收到的文件
                flm = flm & vbcrlf  & "/sctp/" & fln   '
            End If
        Next
    Next
    flm = flm.TrimStart()
    dr("质检报告图片")= flm  '这里及以后没执行
    Dim p As String = IIF(dr.RowState = DataRowState.Added, "A#", "U#")
    dr.Save()  
    Dim msg As String = p &  dr.DataTable.Name & "#" & dr("_Identify")
    e.WriteString("OK")
End If
wb.AppendHTML("<script src='./lib/ajaxform.js'></script>") '引入脚本文件
e.WriteString(wb.Build) '生成网页

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


加好友 发短信
等级:童狐 帖子:273 积分:2357 威望:0 精华:0 注册:2015/12/11 4:29:00
  发帖心情 Post By:2019/9/18 20:40:00 [只看该作者]

昨天有改动JS文件
function submitForm(){
   document.getElementById("btn1").disabled=true;
   setTimeout("document.getElementById('btn1').disabled=false;",3000 );
    if(validit()) {
       
        var result = submitAjaxForm('form1','afterSubmit',true,'tst1');
        location= "dyz.htm" 
        show("tst1",1000);

    }
else{
//document.getElementById('btn1').disabled=false;
}
}

function afterSubmit(result){
    hide("tst1");
    if (result=='OK') {
        show("tst2",1000);
location= "xscg.htm" 
    }
    else{
        show("txt3",1000);
    }
//document.getElementById('btn1').disabled=false;
}

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


加好友 发短信
等级:超级版主 帖子:106209 积分:540168 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/9/19 9:11:00 [只看该作者]

js这2句去掉

 location= "dyz.htm" 
        show("tst1",1000);

调试看看
Dim flm As String '记录多个文件名 
    For Each key As String In e.Files.Keys   '应该是这段保存文件报错,
msgbox(key)
        For Each fln As String In e.Files(key)
msgbox(fln)
msgbox("d:\myftp\sctp\" & fln)
                e.SaveFile(key,fln,"d:\myftp\sctp\" & fln) '保存接收到的文件
                flm = flm & vbcrlf  & "/sctp/" & fln   '
        Next
    Next
msgbox(flm )

 回到顶部