OpenERP を使い始めて 1 週間が経ちましたが、OpenERP に追加したいモジュールに取り組んでいました。
これは私が取り組んでいるモジュールの一部です:
class vehicle_details(osv.osv):
_name = "work_order.vehicle_details"
_description = "Vehicle Details"
_columns = {
'vehicle_name' : fields.char("Vehicle Name", size=128),
'vehicle_gps_id' : fields.char("Vehicle GPS ID", size=128),
'vehicle_available' : fields.boolean ("Available"),
'vehicles_id' : fields.many2one("work_order.vehicles", "Vehicles ID", ondelete="no action")
}
class vehicles(osv.osv):
_name = "work_order.vehicles"
_description = "Vehicles"
_columns = {
'vehicles_type' : fields.char("Vehicle Type", size=128),
'vehicles_total' : fields.integer("Total Vehicles", readonly=True),
'vehicles_amount' : fields.integer("Vehicles Amount Available"),
'unit_of_measure' : fields.char("UoM", size=64),
'vehicles_package_details_id' : fields.one2many("work_order.vehicles_package_details", "vehicles_id", "Package Details ID")
}
class vehicles_package(osv.osv):
_name = "work_order.vehicles_package"
_description = "Vehicles Package"
_columns = {
'vehicles_until_date' : fields.datetime("Until Date"),
'vehicles_package_description' : fields.text("Package Description"),
'vehicles_package_details_id' : fields.one2many("work_order.vehicles_package_details", "vehicles_package_id", "Package Details ID"),
'vehicles_package_total' : fields.integer("Package Total")
}
class vehicles_package_details(osv.osv):
_name = "work_order.vehicles_package_details"
_description = "Vehicles Package Details"
_column = {
'vehicles_id' : fields.many2one("work_order.vehicles", "Vehicles ID", ondelete="no action"),
'vehicles_package_id' : fields.many2one("work_order.vehicles_package", "Package ID", ondelete="no action"),
'vehicles_details_total' : fields.integer("Details Total")
}
class lem_package(osv.osv):
_name = "work_order.lem_package"
_description = "LEM Package"
_columns = {
'work_order_id' : fields.many2one("work_order.work_order", "Work Order ID", ondelete="no action"),
'clab_package_id' : fields.many2one("work_order.clab_package", "Contract Labour Package ID", ondelete="no action"),
'equip_package_id' : fields.many2one("work_order.equip_package", "Equipment Package ID", ondelete="no action"),
'materials_package_id' : fields.many2one("work_order.materials_package", "Materials Package ID", ondelete="no action"),
'vehicles_package_id' : fields.many2one("work_order.vehicles_package", "Vehicles Package ID", ondelete="no action"),
'hr_package_id' : fields.many2one("work_order.hr_package", "HR Package ID", ondelete="no action") #connect to HR app
}
'vehicle_details' は、すべての車両をリストとして詳細に記述し、'vehicles' タイプを 1 つだけ持つことができます。
「vehicles_package_details」は、壊れた (正規化された) 多対多の関係にある「vehicles」と「vehicles」の間の中間テーブルです。
各「vehicles」には、多くの「vehicles_package_details」を含めることができます
各「vehicles_package」には多くの「vehicles_package_details」を含めることができます
多くの「lem_package」は単一の「vehicles_package」を持つことができます
これまでのところ、私が得ているエラーは次のエラーです:
"Programming Error There is no reference field 'vehicles_id' found for 'work_order.vehicles_package_details'"
関係の複雑さを少し追加して、このモジュールを OpenERP にインストールしようとするたびに。
いくつかの単語を追加またはスペルミスする必要がある関係または欠落しているコンテンツに何か問題がありますか?
OpenERP と module/reload db/refresh を再インストールしてみました...私は今困惑しています。
ありがとう =)