我一直在产品表上测试 OpenERP 导入。我有 25k+ 产品要导入,OpenERP 导入真的非常慢……所以,我遇到了一个直接导入 PostgresQL 的脚本。我试过了,我得到一个“坏幻数”错误。我看了这个视频: http ://www.firstclasscomputerconsulting.com/OpenERP/OpenERP70Videos/tabid/145/articleType/ArticleView/articleId/3/Import-data-into-OpenERP-7-using-direct-PostGRES-method.aspx 它使用相同的脚本,我正在做同样的事情。
我的导入文件如下所示:
Rabbit Patch 6x10 Chart/Black,0.01,0.01
DAZL-HARES EAR DK DUN PER LB,0.01,0.01
SQUIRREL DUBBING MED H.E./LB!,0.01,0.01
我使用 Zeus for windows 创建了 py 文件和 .csv。
我在此站点上阅读了有关此错误的其他线程,但我没有看到任何与 OpenERP 相关的有关此问题的参考。
这是脚本:
import csv
import psycopg2
conn_string = "dbname='OpenERP' user='openpg' password='openpgpwd'"
conn = psycopg2.connect(conn_string)
cursor = conn.cursor()
reader = csv.reader(open('products_import.csv','rb'))
for row in reader:
print row[1]
statement = "INSERT INTO product_template (name,standard_price,list_price,mes_type,uom_id,uom_po_id," \
"type,procure_method,cost_method,categ_id,supply_method,sale_ok) VALUES ('" + row[1] + "'," \
+ str(row[2]) + "," + str(row[2]) + ",'fixed',1,1,'product','make_to_stock','standard',1,'buy',True) RETURNING id"
cursor.execute(statement)
conn.commit()
templateid = cursor.fetchone()[0]
statement = "INSERT INTO product_product (product_tmpl_id,default_code,active,valuation) VALUES \
(" + str(templateid) + ",'" + row[0] + "',True,'manual_periodic')"
cursor.execute(statement)
conn.commit()
有什么建议么?
我将 py 文件和 csv 复制到我的 Python33 目录中并从那里尝试,现在我在“打印行 [1]”行上遇到语法错误...... wth?