Pythonで「スタンドアロン」スクリプトを作成して、OpenERPのORMモジュールのみを使用してsales_taxをデータベースのaccount_taxテーブルにアップロードする必要があります。私がしたいことは、以下の疑似コードのようなものです。OpenERP ORMを使用してPostgresデータベースに直接アップロードするPythonスクリプトの作成方法
1)どのsys.pathを設定する必要がありますか 2)「アカウント」モジュールをインポートする前に、どのモジュールをインポートする必要がありますか。現在、「アカウント」モジュールをインポートすると、次のエラーが表示されます。 AssertionError:レポート "report.custom"は既に存在します。 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.
を閲覧UIを使わずにデータを挿入する??? –