OpenERP の ORM モジュールのみを使用して、売上税をデータベースの account_tax テーブルにアップロードするには、Python で「スタンドアロン」スクリプトを作成する必要があります。私がやりたいのは、以下の疑似コードのようなものです。
誰かが次の詳細を教えてくれますか: 1) sys.path を設定する必要がありますか? 現在、「アカウント」モジュールをインポートすると、次のエラーが表示されます: AssertionError: The report "report.custom" already exists! 3) データベース カーソルを取得する適切な方法は何ですか。以下のコードでは、単に psycopg2 を直接呼び出してカーソルを取得しています。
このアプローチが機能しない場合は、XML ファイルを記述して OpenERP アプリケーション自体からデータをロードする以外の代替アプローチを提案できますか? このプロセスは、標準の OpenERP アプリケーションの外部で実行する必要があります。
疑似コード:
import sys
# set Python paths to access openerp modules
sys.path.append("./openerp")
sys.path.append("./openerp/addons")
# import OpenERP
import openerp
# import the account addon modules that contains the tables
# to be populated.
import account
# define connection string
conn_string2 = "dbname='test2' user='xyz' password='password'"
# get a db connection
conn = psycopg2.connect(conn_string2)
# conn.cursor() will return a cursor object
cursor = conn.cursor()
# and finally use the ORM to insert data into table.