以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  读入XML文件  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=193398)

--  作者:keli0917
--  发布时间:2024/9/10 12:40:00
--  读入XML文件
帮忙修改一下代码。谢谢
Dim xml As String = FileSys.ReadAllText(e.Form.Controls("TextBox1").value)
Dim xo As foxtable.XObject = foxtable.XObject.Parse(xml)
If xo.ToString()<>"" Then
    For Each am As JToken In  xo("Dec")("DecHead")
        For Each bm As JToken In  xo("Dec")("DecLists")("DecList")
            Dim r As Row=Tables("报关单数据").addnew
            r("项号")= bm("spxh")
            r("商品代码") = bm("cmcode")
            r("商品名称") = bm("cm_name")
            r("币种") = bm("Yb_bz")
            r("成交金额") = bm("yb_amt")
            r("法定计量单位") = bm("Fd_unit")
            r("法定数量") = bm("Fd_qnt")
            r("第二计量单位") = bm("No2_Fd_unit")
            r("第二数量") = bm("No2_Fd_qnt")
            r("成交计量单位") = bm("Cj_unit")
            r("成交数量") = bm("Cj_qnt")
            
            r("海关报关单号") = am("bgd_no")
            r("加工贸易手册号") = am("hgdjc_no")
            r("出口收汇核销单号") = am("Hxd_no")
            r("出口日期") = am("lj_date")
            r("进出口合同号") = am("ht_no")
            r("成交方式") = am("cj_type")
            r("运费金额") = am("yf")
            r("运费标志") = am("yf_type")
            r("运费币种") = am("Yf_bz")
            r("保费金额") = am("bf")
            r("保费标志") = am("Bf_type")
            r("保费币种") = am("Bf_bz")
            r("杂费金额") = am("zf")
            r("杂费标志") = am("Zf_type")
            r("杂费币种") = am("Zf_bz")
            r("海关贸易方式代码") = am("my_type")
            r("运输工具") = am("traf_name")
        Next
    Next
End If

[此贴子已经被作者于2024/9/10 12:53:29编辑过]

--  作者:keli0917
--  发布时间:2024/9/10 12:53:00
--  

奇怪,只能上传图片?

图片点击可在新窗口打开查看此主题相关图片如下:1.png
图片点击可在新窗口打开查看

图片点击可在新窗口打开查看此主题相关图片如下:22.png
图片点击可在新窗口打开查看

[此贴子已经被作者于2024/9/10 12:53:01编辑过]

--  作者:keli0917
--  发布时间:2024/9/10 12:58:00
--  
XML文件
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:2120后.zip


[此贴子已经被作者于2024/9/10 12:58:32编辑过]

--  作者:有点蓝
--  发布时间:2024/9/10 14:25:00
--  
If xo.ToString()<>"" Then
    For Each am As JToken In  xo("Dec")
        For Each bm As JToken In  am("DecLists")("DecList")
            Dim r As Row=Tables("报关单数据").addnew

--  作者:keli0917
--  发布时间:2024/9/24 10:03:00
--  
你好,当<DecLists>只有一个<DecList>时,就会出现以下异常。
Cannot access child value on Newtonsoft.Json.Linq.JValue.

--  作者:有点蓝
--  发布时间:2024/9/24 10:24:00
--  
if am("DecLists")("DecList") is jarray then
按数组处理
else
按对象处理


--  作者:keli0917
--  发布时间:2024/9/24 12:20:00
--  
If xo.ToString()<>"" Then
    For Each am As JToken In  xo("Dec")
if am("DecLists")("DecList") is jarray then
        For Each bm As JToken In  am("DecLists")("DecList")
            Dim r As Row=Tables("报关单数据").addnew
next
else

end if
    next
end if


提示jarray是一个类型,不能用作表达式。

--  作者:有点蓝
--  发布时间:2024/9/24 13:27:00
--  
if typeof am("DecLists")("DecList") is jarray then