我试图使用dbf库打开一个dbf文件,将读取的数据发送到生产应用程序API
不幸的是,当我试图打开一个包含需要发送到API的订单的dbf文件时,我得到了以下错误:
File "C:\...\IntegrationEngine.py", line 686, in za00za
table = dbf.Table(path, codepage='cp852', ignore_memos=True).open()
File "C:\...\site-packages\dbf\__init__.py", line 5526, in __init__
self._initialize_fields()
File "C:\...\site-packages\dbf\__init__.py", line 6427, in _initialize_fields
raise BadDataError("Unknown field type: %s" % type)
dbf.BadDataError: Unknown field type: 64
正如我前面提到的,我使用dbf库
import dbf
我正在尝试使用以下行打开dbf数据库:
table = dbf.Table(path, codepage='cp852', ignore_memos=True).open()
我不知道如何处理这样的错误。我试图打开的文件是Trawers ERP应用程序使用的za00za*.dbf文件(通过Tres,这里是演示:https://tres.pl/demo)
编辑:
我试图在dbf库的副本中添加一些“调试打印”,所以我添加了
print("Name: %s, Type: %s" % (name, type))
在错误消息上方的几行(dbf lib的init.py中的6427行)中,我找到了“断开”的列:
(a lot of other columns...)
Name: VJEDPRZE, Type: 78
Name: VSYMBOLB, Type: 67
Name: VNRTAB, Type: 67
Name: VRODZKUR, Type: 78
Name: ODMKASTN, Type: 67
Name: CLREASON, Type: 67
Name: CLSYMOP, Type: 67
Name: CLDATE, Type: 64
Traceback (most recent call last):
File "C:\...\IE_TEST.py", line 5, in <module>
table = dbf.Table(path, codepage='cp852', ignore_memos=True).open()
File "C:\...\dbf\__init__.py", line 5526, in __init__
self._initialize_fields()
File "C:\...\dbf\__init__.py", line 6428, in _initialize_fields
raise BadDataError("Unknown field type: %s" % type)
dbf.BadDataError: Unknown field type: 64
有没有办法跳过这个专栏或类似的内容
问题是当前不支持列类型时间戳(@)。不过,多亏了OP的帮助,它将出现在下一版本中
相关问题 更多 >
编程相关推荐