Foxtable(狐表)用户栏目专家坐堂 → [求助] 货币转换自动填入


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

主题:[求助] 货币转换自动填入

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


加好友 发短信
等级:超级版主 帖子:106132 积分:539771 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/11/16 21:02:00 [显示全部帖子]

例如

if e.datacol.name = "poCurrency"
    Dim fdr As DataRow = DataTables("汇率表").Find("Currency = '" & e.newvalue & "'")
    If fdr IsNot Nothing Then
       e.datarow("exchangerate") = fdr(e.newvalue) / fdr("EUR")
    end if
end if

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


加好友 发短信
等级:超级版主 帖子:106132 积分:539771 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/11/16 21:40:00 [显示全部帖子]

Dim t1 As Table = Tables("Shipment")
Dim t2 As Table = Tables("Shipment.GSSInvoice")
Dim dt As DataTable = DataTables("ExchangeRate")
Dim fdr As DataRow = dt.Find("month = '" & e.form.controls("textbox1").text & "'")
If fdr IsNot Nothing Then

   msgbox(fdr("EUR"))
    For Each r As Row In t2.Rows
        r("ExchangeRate") = fdr(r("
poCurrency")) * fdr("EUR")

    Next
Else
    msgbox("没找到汇率")
End If


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


加好友 发短信
等级:超级版主 帖子:106132 积分:539771 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/11/16 22:53:00 [显示全部帖子]

代码没有问题,上传实例说明

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


加好友 发短信
等级:超级版主 帖子:106132 积分:539771 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/11/16 23:15:00 [显示全部帖子]

r("ExchangeRate") = fdr(r("poCurrency")) * fdr("EUR")
改为
r("ExchangeRate") = fdr(r("poCurrency")) / fdr("EUR")

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


加好友 发短信
等级:超级版主 帖子:106132 积分:539771 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/11/17 8:30:00 [显示全部帖子]

r("currency") =“EUR

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


加好友 发短信
等级:超级版主 帖子:106132 积分:539771 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/12/28 20:56:00 [显示全部帖子]

上传具体实例说明

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


加好友 发短信
等级:超级版主 帖子:106132 积分:539771 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/12/28 22:47:00 [显示全部帖子]

GSSInvoice表AfterEdit事件

If Forms("Mainfrm").Opened
    If e.Table.Name = "Shipment.GSSInvoice" AndAlso e.Col.Name = "POCurrency" Then
        Forms("Mainfrm").Controls("Button14").Enabled = True
        Dim po As String = e.Row("POCurrency")
        For Each r As Row In e.Table.Rows
            If r("POCurrency") <> po Then Return
        Next
        For Each r As Row In e.Table.Rows
            r("TotalPrice")  = r("Qty") * r("PO_UnitPrice")
            r("ExchangeRate")  = 1
        Next
        Forms("Mainfrm").Controls("Button14").Enabled = False
    End If
End If

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


加好友 发短信
等级:超级版主 帖子:106132 积分:539771 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/12/29 9:26:00 [显示全部帖子]

Shipment表,currentchanged事件加上

If e.Table.Current IsNot Nothing Then
    If Forms("Mainfrm").Opened
        Dim t As Table =Tables("Shipment.GSSInvoice")
        If t.Rows.Count > 0
            Forms("Mainfrm").Controls("Button14").Enabled = True
            Dim po As String = t.Rows(0)("POCurrency")
            For Each r As Row In t.Rows
                If r("POCurrency") <> po Then Return
            Next
            For Each r As Row In t.Rows
                r("TotalPrice")  = r("Qty") * r("PO_UnitPrice")
                r("ExchangeRate")  = 1
            Next
            Forms("Mainfrm").Controls("Button14").Enabled = False
        End If
    End If
End If

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


加好友 发短信
等级:超级版主 帖子:106132 积分:539771 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/12/29 15:18:00 [显示全部帖子]

Shipment表,currentchanged事件加上

If e.Table.Current IsNot Nothing Then
    If Forms("Mainfrm").Opened
        Dim t As Table =Tables("Shipment.GSSInvoice")
        If t.Rows.Count > 0
            Forms("Mainfrm").Controls("Button14").Enabled = True
            Forms("Mainfrm").Controls("Button15").Enabled = True
            Dim po As String = t.Rows(0)("POCurrency")
            For Each r As Row In t.Rows
                If r("POCurrency") <> po Then Return
            Next
if po = “CHF
            Forms("Mainfrm").Controls("Button14").Enabled = False
elseif po = “EUR
            Forms("Mainfrm").Controls("Button15").Enabled = False
end if
        End If
    End If
End If

 回到顶部