Foxtable(狐表)用户栏目专家坐堂 → 自定义函数,若符合某个条件时返回列表,在执行自定义函数时,该如何判断自定义函数的是否有返回数据啊?


  共有2028人关注过本帖平板打印复制链接

主题:自定义函数,若符合某个条件时返回列表,在执行自定义函数时,该如何判断自定义函数的是否有返回数据啊?

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


加好友 发短信
等级:四尾狐 帖子:896 积分:7535 威望:0 精华:0 注册:2017/12/27 14:19:00
自定义函数,若符合某个条件时返回列表,在执行自定义函数时,该如何判断自定义函数的是否有返回数据啊?  发帖心情 Post By:2019/9/16 14:15:00 [只看该作者]

以下这个自定义函数,应该怎么改,在执行自定义函数时,判断(是否应该执行自定义函数),看是否真的有返回值Vals_r啊? 在引用自定义函数时若 ret 为空,则自定义函数返回false(给个标记个状态就行,识别一下,即无需引用返回的Vals_r数据);若ret不为空,则执行自定义函数,并引用Vals_r的数据
Dim htid As String = Args(0)    '合同编号 
Dim Vals_r As New List(Of Double)
Dim hc As New HttpClient("http://ls.xinlianhuichuang.com/v1/lsjyje?id=" & htid)
    Dim ret As String = hc.GetData()
    Dim dtb As New DataTableBuilder("应收明细表")
    dtb.AddDef("合同编号", Gettype(String), 100)
    dtb.AddDef("收费项目", Gettype(String), 100)
    dtb.AddDef("计费日期", Gettype(String), 50)
    'dtb.AddDef("计费日期1", Gettype(Date), 20)
    dtb.AddDef("应收金额", Gettype(Double))
    dtb.AddDef("实收金额", Gettype(Double))
    dtb.Build()
    
    Tables("应收明细表").StopRedraw
    For Each ep As JToken In JArray.Parse(ret)
        Dim rr As Row=Tables("应收明细表").addnew()
        rr("合同编号")=ep("合同编号")
        rr("收费项目")=ep("收费项目")
        rr("计费日期")=ep("计费日期")
        rr("应收金额")=ep("应收金额")
        rr("实收金额")=ep("实收金额")
    Next
    Tables("应收明细表").ResumeRedraw
    Dim zt As Double=Tables("应收明细表").compute("sum(实收金额)","收费项目='租金'")
    Dim ft As Double=Tables("应收明细表").compute("sum(实收金额)","收费项目='服务费'")
    Dim fwt As Double=Tables("应收明细表").compute("sum(实收金额)","收费项目='房屋使用费'")
    Dim ztt As Double=math.max(zt,fwt)

Vals_r.add(ztt)
Vals_r.add(ft)
Return Vals_r
[此贴子已经被作者于2019/9/16 14:22:40编辑过]

 回到顶部