Foxtable(狐表)用户栏目专家坐堂 → 提取双引号内数据


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

主题:提取双引号内数据

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


加好友 发短信
等级:三尾狐 帖子:653 积分:7759 威望:0 精华:0 注册:2015/8/24 9:02:00
提取双引号内数据  发帖心情 Post By:2018/8/6 9:53:00 [只看该作者]

{

   "expense_type": 5, 

  "reason": "乡镇介绍信报名(土建)",

   "item": []

}

 

我想提取:乡镇介绍信报名(土建)

            :5

请老师帮忙

[此贴子已经被作者于2018/8/6 9:58:49编辑过]

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


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


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


加好友 发短信
等级:三尾狐 帖子:653 积分:7759 威望:0 精华:0 注册:2015/8/24 9:02:00
  发帖心情 Post By:2018/8/6 14:33:00 [只看该作者]

搞定了,谢谢提示


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


加好友 发短信
等级:三尾狐 帖子:653 积分:7759 威望:0 精华:0 注册:2015/8/24 9:02:00
  发帖心情 Post By:2018/8/6 16:51:00 [只看该作者]

错误提示

.NET Framework 版本:2.0.50727.8789
Foxtable 版本:2018.7.28.1
错误所在事件:表,微信审批表请假,DataColChanged
详细错误信息:
调用的目标发生了异常。
Error reading JObject from JsonReader. Path '', line 0, position 0.

DataColChanged代码

Dim json As String = e.DataRow("请假类型")
Dim jo As JObject = JObject.Parse(json)
e.DataRow("请假时间") = jo("timeunit").ToString() & "天" '请假时间单位:0半天;1小时
e.DataRow("请假编码") = jo("leave_type").ToString()  '请假类型:1年假;2事假;3病假;4调休假;5婚假;6产假;7陪产假;8其他
e.DataRow("请假名称")= jo("reason").ToString()  '请假事由
e.DataRow("请假开始时间") = jo("start_time").ToString()
e.DataRow("请假结束时间") = jo("end_time").ToString()         '报销明细

 


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


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

msgbox(json)数据看一下,有可能是空值。

 

要判断是不是空值,是不是json字符串。


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


加好友 发短信
等级:三尾狐 帖子:653 积分:7759 威望:0 精华:0 注册:2015/8/24 9:02:00
  发帖心情 Post By:2018/8/6 17:12:00 [只看该作者]

老师厉害,果然是空值

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


加好友 发短信
等级:三尾狐 帖子:653 积分:7759 威望:0 精华:0 注册:2015/8/24 9:02:00
  发帖心情 Post By:2018/8/9 11:26:00 [只看该作者]

下面代码可用,但是已经下载的数据,不会更新审批状态和下载金额
请老老师忙修改一下代码

For i As Integer = 0 To ja.Count - 1
    If  ja(i)("spname").ToString() = "报销" Then       
        Dim spbh As String = ja(i)("sp_num").ToString()    '判断是否存在相同的审批编号行
        Dim dr As DataRow = DataTables("微信审批表报销").Find("审批编号 = '" & spbh & "'")
        If dr Is Nothing Then             '如果不存在想同审批编号
            
            Dim r As Row =Tables("微信审批表报销").AddNew()
            r("单据类型") = ja(i)("spname").ToString()   '审批名称(请假,报销,自定义审批名称)
            r("审批编号") = ja(i)("sp_num").ToString()   '审批单号
            r("申请部门")  = ja(i)("apply_org").ToString()   '申请人部门
            r("申请人") = ja(i)("apply_name").ToString()     '申请人姓名
            r("审批状态") = ja(i)("sp_status").ToString()    '审批状态:1审批中;2 已通过;3已驳回;4已取消;6通过后撤销;10已支付
            r("审批人") = ja(i)("approval_name").ToString().Replace("""","").Replace("[","").Replace("]","").Replace(vblf,"")     '审批人姓名
            r("提交时间") = ja(i)("apply_time").ToString()   '审批单提交时间
            r("附件") = ja(i)("mediaids").ToString()         '审批的附件media_id,可使用media/get获取附件
            r("报销类型") = ja(i)("expense").ToString()         '报销类型
            r("userid") = ja(i)("apply_user_id").ToString()   '审批单提交者的userid
            r("单据附件") = ja(i)("mediaids").ToString()         'unix时间
            
            Dim csr As String
            csr = ja(i)("notify_name").ToString().Replace(vblf,"")
            If  len(csr) = 2 Then
                r("抄送人") = ""
            Else
                Dim s As String
                s = ""
                For Each v As JToken In JArray.Parse(csr)
                    s = s & "," & v.ToString
                Next
                r("抄送人") = s.TrimStart(",")
            End If
            hj = hj + 1
        End If
    End If
Next
''-----合计同步--------------
MessageBox.Show("同步完成,合计同步了【 " & hj & " 】条记录!","提示",MessageBoxButtons.OK,MessageBoxIcon.Warning)

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


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

Dim ja
For i As Integer = 0 To ja.Count - 1
    If  ja(i)("spname").ToString() = "报销" Then
        Dim spbh As String = ja(i)("sp_num").ToString()    '判断是否存在相同的审批编号行
        Dim dr As DataRow = DataTables("微信审批表报销").Find("审批编号 = '" & spbh & "'")
        Dim r As DataRow = dr
       
        If r Is Nothing Then r = DataTables("微信审批表报销").AddNew()
       
        r("单据类型") = ja(i)("spname").ToString()   '审批名称(请假,报销,自定义审批名称)
        r("审批编号") = ja(i)("sp_num").ToString()   '审批单号
        r("申请部门")  = ja(i)("apply_org").ToString()   '申请人部门
        r("申请人") = ja(i)("apply_name").ToString()     '申请人姓名
        r("审批状态") = ja(i)("sp_status").ToString()    '审批状态:1审批中;2 已通过;3已驳回;4已取消;6通过后撤销;10已支付
        r("审批人") = ja(i)("approval_name").ToString().Replace("""","").Replace("[","").Replace("]","").Replace(vblf,"")     '审批人姓名
        r("提交时间") = ja(i)("apply_time").ToString()   '审批单提交时间
        r("附件") = ja(i)("mediaids").ToString()         '审批的附件media_id,可使用media/get获取附件
        r("报销类型") = ja(i)("expense").ToString()         '报销类型
        r("userid") = ja(i)("apply_user_id").ToString()   '审批单提交者的userid
        r("单据附件") = ja(i)("mediaids").ToString()         'unix时间
       
        Dim csr As String
        csr = ja(i)("notify_name").ToString().Replace(vblf,"")
        If  len(csr) = 2 Then
            r("抄送人") = ""
        Else
            Dim s As String
            s = ""
            For Each v As JToken In JArray.Parse(csr)
                s = s & "," & v.ToString
            Next
            r("抄送人") = s.TrimStart(",")
        End If
        hj = hj + 1
    End If
Next
''-----合计同步--------------
MessageBox.Show("同步完成,合计同步了【 " & hj & " 】条记录!","提示",MessageBoxButtons.OK,MessageBoxIcon.Warning)

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


加好友 发短信
等级:三尾狐 帖子:653 积分:7759 威望:0 精华:0 注册:2015/8/24 9:02:00
  发帖心情 Post By:2018/8/9 11:39:00 [只看该作者]

金额无法下载
sums无效,不知道什么原因

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


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

以下是引用zoyong在2018/8/9 11:39:00的发言:
金额无法下载
sums无效,不知道什么原因

 

具体一点你的问题,或者做个可以测试的例子测试。


 回到顶部
总数 22 1 2 3 下一页