2013-04-12 2 views
1

내가 항목, 제품, 통화를 사용하는 모듈을 가지고 등 UOM의재고에 제품 수량을 연관 - 사용자 정의 모듈 - OpenErp

내가 필요로하는 것을 내가 요청을 요청하거나 openerp 데이터베이스의 제품을 구입할 때, 시스템의 데이터베이스에서 수량을 자동으로 배출합니다.

나는
_product_qty_available 
_product_virtual_available 
_product_outgoing_qty 
_product_incoming_qty 

내가 내 모듈에서 제품을 관리하기 위해 이러한 기능을 상속해야

라는 일부 기능/필드가 있음을 'product.product'에서 본, 그들은 요청과 같은 시스템에 업데이트됩니다 또는 구매 주문? 사전에

나는 나 자신을 설명 희망 내 module.py

import time 
from datetime import datetime 
from osv import osv, fields 
from openerp.tools import DEFAULT_SERVER_DATE_FORMAT, DEFAULT_SERVER_DATETIME_FORMAT, DATETIME_FORMATS_MAP 
import openerp.addons.decimal_precision as dp 
from openerp.tools.translate import _ 

class certificados(osv.osv): 

_name = 'certificados.certificados' 
_description="Certificados de No Produccion" 

_columns = { 
      'Registro_Numero' : fields.integer('Registro Numero'), 
      'Fecha_de_Emision': fields.date('Fecha de Emision', required=True, select=True), 
      'Fecha_de_Solicitud': fields.date('Fecha de Solicitud', required=True, select=True), 
      'Fecha_del_Documento': fields.date('Fecha del Documento', required=True, select=True), 
      'Vigencia' : fields.integer('Vigencia'), 'cert_ids' : fields.one2many('certificados.line','requisicion_id','Items del Certificado'), 
      'descripcion' : fields.text('Descripcion'), 
      'notas' : fields.text('Notas'), 
      } 


class certificados_line(osv.osv): 

_name = "certificados.line" 
_description="Certificados No Produccion" 
_inherit = ['mail.thread', 'ir.needaction_mixin'] 

_columns = { 
    'Item' : fields.integer('Item'), 
    'Codigo_Arancelario' : fields.integer('Codigo Arancelario'), 
    'product_id' : fields.many2one('product.product', 'Material'), 
    'Descripcion_Arancelaria' : fields.char('Descripcion Arancelaria', size=42, required = True, translate = True), 
    'Especificaciones_Tecnicas' : fields.char('Especificaciones Tecnicas', size=60, required = True, translate = True), 
    'Cantidad' : fields.float('Cantidad'), 'Unidad_de_Medida': fields.many2one('product.uom', 'Unidad de Medida'), 
    'Precio_Unitario_Declarado' : fields.float('Precio Unitario Declarado'), 'Moneda' : fields.many2one('res.currency', 'Moneda'), 
    'Valor_En_Divisas' : fields.float('Valor En Divisas'), 
    'requisicion_id' : fields.many2one('certificados.certificados', 'Certificados de No Produccion', ondelete='cascade'), 
    'Cantidad_Consumida' : fields.float('Cantidad Consumida'), 'Cantidad_Disponible' : fields.float('Cantidad Disponible'), 

} 
certificados_line() 

의 코드, 감사합니다.

+0

자세한 정보를 제공해 주시겠습니까? – user1576199

+0

이 모듈은 certificados.line의 product_id와 같이 'product.product'객체를로드하는 것을 볼 수 있으므로 제품을 구입할 때처럼이 맞춤 모듈에서 자동으로 제품 데이터베이스를 업데이트하는 메소드가 필요합니다. ,이 모듈에있는 데이터에서, 그것은 자동으로 openerp의 주식을 업데이 트하지만, 내가 이것을 달성하기 위해 상속해야할지 모르겠다. – NeoVe

+0

모듈에서 product_id를 상속하면 제품을 판매 할 때 자동으로 재고가 줄어들고 재고가 늘어납니다. 재고 모듈을 설치하면 작동을 시작합니다 – user1576199

답변

0

모듈에서 product_id를 사용하려면 many2one으로 상속하십시오. 해당 제품의 재고는 OpenERP에 의해 자동으로 유지 관리됩니다. 판매 할 경우 해당 제품의 재고가 줄어들어 구매할 경우 해당 제품의 재고가 증가합니다. 필요에 따라 해당 제품의 초기 재고를 설정할 수도 있습니다.

관련 문제