以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  这代码为什么就是显示不出网页呢? 看晕了,麻烦指导一下.  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=138066)

--  作者:ycwk
--  发布时间:2019/7/22 11:47:00
--  这代码为什么就是显示不出网页呢? 看晕了,麻烦指导一下.
用这个网页   http://127.0.0.1/xdf/service/ITFailureInOrder.htm?RepairID=33       msgbox(dr_报障信息("SN"))     可以正确弹出,但就是显示不出网页,也不知哪里出了问题,麻烦老师指导一下



\'列出详情页面,可给自己接单,可给别人派单,  并要在这里通知 报障人


\'这里是画接单的界面
Dim e As RequestEventArgs = args(0)
        Dim wb As New weui
        wb.title="接单&派单明细"
    \'    wb.AppendHTML("<script src=\'http://res.wx.qq.com/open/js/jweixin-1.2.0.js\'></script>",True)   \'引入JS-SDK库
    \'    wb.AppendHTML("<script src=\'../ajax/libs/jssdk.js\'></script>")   \'引入脚本文件   这个js文件是微信扫码功能自动调用的       \'jssdk是用来往网页里各字段填充内容的

\'msgbox(1)  可以弹出

If e.PostValues.Count = 0 Then    \'生成网页 供填写报障信息 


   \'开始正常生成网页内容                   \'这里可能要改!
    wb.AddForm("","form1","ITFailureInOrder.htm")      \'  .Attribute=""         \'ITFailure.htm 是接收本表单数据的网页(需要在else里先验证数据是否有缺失),   DeviceInfoQueryFunction 函数是用来弹出对话框提示提交是否成功
  
 

    Dim dr_报障信息 As DataRow= DataTables("硬件报障记录表").SQLFind("_identify= \'" & e.GetValues("RepairID") & "\'")       \'注意Find 和sql find的区别?   find估计只能找SN     sqlfind估计可以找_identify
    If dr_报障信息 IsNot Nothing  Then    \'如果dr不为空   

    

With wb.AddInputGroup("form1","ipg1","基本信息")

  \'  msgbox(e.GetValues("RepairID"))     \' 可以弹出  33      http://127.0.0.1/xdf/service/ITFailureInOrder.htm?RepairID=33.


    msgbox(dr_报障信息("SN"))    
    
        \'  With .AddInput("id","单号","text")            \'报障单号
        \'          .Value=dr_报障信息("_identify")
        \'        \'  .Readonly=True
        \'  End With

          .AddInput("id","单号","text").Value=dr_报障信息("_identify")


          With .AddInput("number","sn","text")          \'二维码的SN号
                  .Value=dr_报障信息("SN")
                  .Readonly=True
          End With


          With .AddInput("sblx","设备类型","text")
                  .Value=dr_报障信息("设备类型")
                  .Readonly=True
          End With


          With .AddInput("sbxh","设备型号","text")
                  .Value=dr_报障信息("设备型号")
                  .Readonly=True
          End With


          With .AddInput("szl","所在楼","text")
                  .Value=dr_报障信息("所在楼")
                  .Readonly=True
          End With


          With .AddInput("szks","所在科室","text")
                  .Value=dr_报障信息("所在科室")
                  .Readonly=True
          End With


          With .AddInput("szfj","所在房间","text")
                  .Value=dr_报障信息("所在房间")
                  .Readonly=True
          End With


          With .AddInput("xm","姓名","text")
                  .Value=dr_报障信息("RemarkName")
                  .Readonly=True
          End With


          With .AddInput("gh","工号","text")
                  .Value=dr_报障信息("EmployeeID")
                  .Readonly=True
          End With


          With .AddInput("dh","电话","text")
                  .Value=dr_报障信息("电话")
                  .Readonly=True
          End With


          With .AddInput("ks","科室","text")
                  .Value=dr_报障信息("科室")
                  .Readonly=True
          End With


          With .AddInput("jlsj","记录时间","datetime-local")
                  .Value=dr_报障信息("记录时间")
                  .Readonly=True
          End With

End With


          With wb.AddInputGroup("form1","ipg2","故障描述")
           .AddTextArea("gzms",2).Placeholder = dr_报障信息("故障描述")
          \' .Readonly=True
          End With

End If 

       \'在下面选择接单人
        With wb.AddInputGroup("form1","ipg3","指定接单人")
            .AddSelect("Repairman","接单人","冯夏13986806710|危泽13047154586|王真奇18986778780")


       \'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'      Dim dr_维修人员信息 As DataRow= DataTables("运维人员字典").SQLFind("姓名 \'" &   & "\'")       \'注意Find 和sql find的区别?   find估计只能找SN     sqlfind估计可以找_identify
               
              \'   dr_维修人员信息("")
            \' .AddSelect("Repairman","接单人","冯夏13986806710|危泽13047154586|王真奇18986778780")


           \'  With wb.AddInputGroup("form1","ipg1","动态列表")
               With .AddSelect("Repairman","接单人","|冯夏|危泽|王真奇")
                  .Attribute = """      \'同步模式,把Repairman(控件ID),传送给后台的TelNum网页,得到电话字段
               End With
              .AddInput("接单人电话","接单人电话","")    \'第一个是表中字段名,第二个是控件显示的标签名
           \'  End With



            .AddInput("jlsj","记录时间","datetime-local").Value = Format(Date.Now,"yyyy-MM-ddTHH:mm")       \'增加记录时间字段
        

      \'  With wb.AddInputGroup("form1","ipg3","预计上门时间")
            .AddSelect("ArrivalTime","等候时间","10~30分钟|30~60分钟|下个半天")
        End With

        


        With wb.AddButtonGroup("form1","btg1",True)
            .Add("btn1", "提交", "submit")
        End With


Else    \'显示提交成功或失败的网页
msgbox(3) 
\'msgbox(e.PlainText)      用来测试一下PlainText 里面是不是仅仅是条码号,用来和下面else的内容进行区分.


       
         \'提交之前的表单校验
          Dim nms() As String = {"id","RepairMan","ArrivalTime"}       \'网页上的控件ID(单号ID),维修Repairman(维修人)
            For Each nm As String In nms                 
                If e.PostValues(nm)="" Then \'生成错误提示页 
                    e.WriteString("请输入" & nm & "!")
                    Return "wrong"   \'必须返回,不再往下执行

                End If
             Next

\'msgbox("验证成功")

      \'校验通过则存到数据库中
      \' nms= new String(){"接单人"}

          Dim dr_报障信息 As DataRow= DataTables("硬件报障记录表").Find("[_identify]= \'" & e.PostValues("id") & "\'")  
          If dr_报障信息 IsNot Nothing  Then    \'如果dr不为空    

           dr_报障信息("接单人")=e.PostValues("RepairMan")      


              dr_报障信息("预计上门时间")=e.PostValues("ArrivalTime")  
              dr_报障信息.Save()


msgbox(dr_报障信息("ID"))
             \'发送模板消息的函数
             Functions.Execute("微信模版_接单通知",e.Cookies("openid"),dr_报障信息("_identify"),dr_报障信息("接单人"),dr_报障信息("接单人手机"),dr_报障信息("预计上门时间"),dr_报障信息("设备类型"),dr_报障信息("故障描述"))




           With wb.AddMsgPage("","msgpage","接单成功", "正常情况下,报障人将收到接单成功通知!")       \'增加接单成功的跳转提示信息       
               \'.AddButton("btn1","继续报障","ITFailure.htm")
               .AddButton("btn1","返回服务列表","ApplyService.htm") 
           End With
        End If

End If


   \'  wb.AppendHTML("<div id=\'p1\' style=\'margin:0.5em\'></div>") \'插入一个div,用于显示服务器返回的数据
   \'  wb.AppendHTML("<script src=\'../ajax/libs/DeviceInfoQuery.js\'></script>")    \'引入脚本文件       

 e.WriteString(wb.Build)

[此贴子已经被作者于2019/7/22 12:33:29编辑过]

--  作者:有点蓝
--  发布时间:2019/7/22 13:59:00
--  
看不出代码有什么问题。浏览器按f12看看有没有什么错误
--  作者:ycwk
--  发布时间:2019/7/22 15:52:00
--  
为什么下面这段代码,在我选择  接单人的时候,电话不能自动带出来呢?

               With .AddSelect("Repairman","接单人","|冯夏|危泽|王真奇")
                  .Attribute = """      \'同步模式,把Repairman(控件ID),传送给后台的TelNum网页,得到电话字段
               End With
              .AddInput("接单人电话","接单人电话","")    \'第一个是表中字段名,第二个是控件显示的标签名
         
httprequest事件:
         Case  "getTel.htm"
               Dim TelNum As String = DataTables("硬件运维人员字典").SQLGetValues("电话","姓名=\'" & e.PostValues("姓名") & "\'")         \'第一个参数是列名称,第二个是 filter,第三个是sort
               e.WriteString(TelNum)      \'返回根据姓名查找到的电话号码

--  作者:有点蓝
--  发布时间:2019/7/22 16:04:00
--  
msgbox(TelNum) \'有内容吗?
e.WriteString(TelNum)  

.Attribute后面的内容看不到

--  作者:ycwk
--  发布时间:2019/7/22 16:42:00
--  
         With wb.AddInputGroup("form1","ipg4","动态列表")
             .AddSelect("Repairman","接单人","|冯夏|危泽|王真奇")
             .Attribute = """      \'同步模式,把Repairman(控件ID),传送给后台的TelNum网页,得到电话字段              
             .AddInput("接单人电话","接单人电话","")    \'第一个是表中字段名,第二个是控件显示的标签名
         End With

--  作者:有点蓝
--  发布时间:2019/7/22 16:52:00
--  
发不上了的内容按照这里的方法处理:http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&Id=69632
--  作者:ycwk
--  发布时间:2019/7/22 17:06:00
--  
         With wb.AddInputGroup("form1","ipg4","确认接单信息")

             With .AddSelect("Repairman","接单人","冯夏|危泽|王真奇")   
                       .Attribute = "o nchange=""s etAjaxOptions(\'jdrdh\',\'getTel.htm\',\'Repairman\',false)"""      \'同步模式,把Repairman(控件ID),传送给后台的TelNum网页,得到电话字段                        
             End With

             .AddSelect("jdrdh","接单人电话","")    \'第一个是控件ID,第二个是控件左边显示的标签名
        \' End With
             .AddInput("jdsj","接单时间","datetime-local").Value = Format(Date.Now,"yyyy-MM-ddTHH:mm")       \'增加记录时间字段
        
             .AddSelect("ArrivalTime","等候时间","10~30分钟|30~60分钟|下个半天")
         End With

--------------------------------

httprequest事件:
         Case  "getTel.htm"
               Dim TelNum As String = DataTables("硬件运维人员字典").SQLGetValues("电话","姓名=\'" & e.PostValues("Repairman") & "\'")         \'第一个参数是列名称,第二个是 filter,第三个是sort
               e.WriteString(TelNum)      \'返回根据姓名查找到的电话号码


msgbox(TelNum)  也没有值弹出来   

[此贴子已经被作者于2019/7/22 17:24:55编辑过]

--  作者:有点蓝
--  发布时间:2019/7/22 17:31:00
--  
11
[此贴子已经被作者于2019/7/22 17:31:21编辑过]

--  作者:有点蓝
--  发布时间:2019/7/22 17:34:00
--  
Dim TelNum As String = DataTables("硬件运维人员字典").SQLGetComboListString("电话","姓名=\'" & e.PostValues("Repairman") & "\'") 
msgbox(TelNum )

--  作者:ycwk
--  发布时间:2019/7/23 9:12:00
--  
按下面这代码写的,连着两个msgbox弹出的都是空值,前端的代码也不是知道有什么问题。

Dim e As RequestEventArgs = args(0)

        For Each key As String In e.PostValues.Keys
             msgbox(key & ":" & e.PostValues(key)) 
        Next

               msgbox(e.PostValues("Repairman"))
               \'Dim dr As DataRow = DataTables("硬件运维人员字典").SQLFind("姓名=\'" & e.PostValues("Repairman") & "\'")         \'第一个参数是列名称,第二个是 filter,第三个是sort          
               Dim TelNum As String = DataTables("硬件运维人员字典").SQLGetComboListString("电话","姓名=\'" & e.PostValues("Repairman") & "\'") 
               msgbox(TelNum )
               e.WriteString(TelNum)      \'返回根据姓名查找到的电话号码




前端代码:


       \'确认接单信息
         With wb.AddInputGroup("form1","ipg4","确认接单信息")

             With .AddSelect("Repairman","接单人","冯夏|危泽|王真奇")   
                .Attribute = "o nchange=""s etAjaxOptions(\'jdrdh\',\'getTel.htm\',\'Repairman\',false)"""      \'同步模式,把Repairman(控件ID),传送给后台的TelNum网页,得到jdrdh字段              
             End With

             .AddSelect("jdrdh","接单人电话","")    \'第一个是控件ID,第二个是控件左边显示的标签名
        \' End With
             .AddInput("jdsj","接单时间","datetime-local").Value = Format(Date.Now,"yyyy-MM-ddTHH:mm")       \'增加记录时间字段
        
             .AddSelect("ArrivalTime","等候时间","10~30分钟|30~60分钟|下个半天")
         End With