Saltar al contenido principal
Versión: Tryton 7.0 (LTS)

incoterm

Tryton 7.0 · Referencia generada desde el código oficial

Esta página combina orientación editorial con evidencia extraída de la rama oficial indicada. Pruebe siempre el flujo con sus permisos y configuración.

Propósito

El módulo incoterm incorpora o amplía funciones relacionadas con incoterm. Su alcance real se determina por los modelos, acciones y dependencias documentados a continuación; no debe activarse únicamente por su nombre.

Descripción oficial de la rama (idioma original)

This Incoterm Model is used to manage the Incoterms <https://en.wikipedia.org/wiki/Incoterms>_ on sales, purchases and shipments. The module contains the Incoterm versions of 2010 and 2020.

El análisis encontró 12 archivos Python, 25 archivos XML, 17 vistas, 3 acciones, 1 menús y 0 informes.

Guía funcional para el usuario

A quién le sirve

Este módulo interesa a las personas responsables de los procesos relacionados con incoterm, a quienes configuran la compañía y a quienes revisan sus resultados. Los administradores deben participar cuando se activen dependencias, permisos o secuencias.

Qué podrá hacer

Al finalizar la configuración podrá reconocer los registros que aporta incoterm, ejecutar sus acciones con el estado correcto y comprender qué información termina compartiendo con otros módulos.

Requisitos y preparación

Antes de activarlo confirme la compañía, moneda, usuarios y grupos aplicables. Instale y configure primero sus dependencias obligatorias. Si existen datos reales, ensaye la activación y actualización sobre una copia restaurada.

Active primero las dependencias, revise la configuración de la compañía y ensaye el flujo completo antes de usarlo en producción.

Dependencias obligatorias

  • company — debe estar instalado y configurado antes de probar este módulo.
  • ir — debe estar instalado y configurado antes de probar este módulo.
  • party — debe estar instalado y configurado antes de probar este módulo.

Integraciones opcionales

  • account_invoice — habilita una integración adicional; pruebe la combinación explícitamente.
  • account_invoice_stock — habilita una integración adicional; pruebe la combinación explícitamente.
  • carrier — habilita una integración adicional; pruebe la combinación explícitamente.
  • purchase — habilita una integración adicional; pruebe la combinación explícitamente.
  • purchase_request_quotation — habilita una integración adicional; pruebe la combinación explícitamente.
  • sale — habilita una integración adicional; pruebe la combinación explícitamente.
  • sale_opportunity — habilita una integración adicional; pruebe la combinación explícitamente.
  • sale_shipment_cost — habilita una integración adicional; pruebe la combinación explícitamente.
  • sale_shipment_grouping — habilita una integración adicional; pruebe la combinación explícitamente.
  • stock — habilita una integración adicional; pruebe la combinación explícitamente.
  • stock_package_shipping — habilita una integración adicional; pruebe la combinación explícitamente.

Configuración inicial recomendada

  • Active el módulo y vuelva a iniciar la sesión para cargar menús y permisos.
  • Revise las nuevas opciones de configuración de compañía y los valores por defecto.
  • Asigne grupos a usuarios de prueba aplicando mínimo privilegio.
  • Cree datos maestros pequeños y verificables antes de importar información masiva.
  • Ejecute un caso completo desde borrador hasta su estado final y revise los registros relacionados.

Objetos y conceptos del módulo

  • account.invoice: agrupa 2 modelo(s), entre ellos account.invoice, account.invoice.line. Estos registros forman la información que el usuario consulta o modifica durante el proceso.
  • carrier: agrupa 1 modelo(s), entre ellos carrier. Estos registros forman la información que el usuario consulta o modifica durante el proceso.
  • company.company: agrupa 1 modelo(s), entre ellos company.company. Estos registros forman la información que el usuario consulta o modifica durante el proceso.
  • incoterm.incoterm: agrupa 1 modelo(s), entre ellos incoterm.incoterm. Estos registros forman la información que el usuario consulta o modifica durante el proceso.
  • incoterm.incoterm-company: agrupa 1 modelo(s), entre ellos incoterm.incoterm-company.company. Estos registros forman la información que el usuario consulta o modifica durante el proceso.
  • party.address: agrupa 1 modelo(s), entre ellos party.address. Estos registros forman la información que el usuario consulta o modifica durante el proceso.
  • party.incoterm: agrupa 1 modelo(s), entre ellos party.incoterm. Estos registros forman la información que el usuario consulta o modifica durante el proceso.
  • party.party: agrupa 1 modelo(s), entre ellos party.party. Estos registros forman la información que el usuario consulta o modifica durante el proceso.
  • purchase.purchase: agrupa 1 modelo(s), entre ellos purchase.purchase. Estos registros forman la información que el usuario consulta o modifica durante el proceso.
  • purchase.request: agrupa 2 modelo(s), entre ellos purchase.request.create_purchase, purchase.request.quotation. Estos registros forman la información que el usuario consulta o modifica durante el proceso.
  • sale.opportunity: agrupa 1 modelo(s), entre ellos sale.opportunity. Estos registros forman la información que el usuario consulta o modifica durante el proceso.
  • sale.sale: agrupa 1 modelo(s), entre ellos sale.sale. Estos registros forman la información que el usuario consulta o modifica durante el proceso.
  • stock.shipment: agrupa 4 modelo(s), entre ellos stock.shipment.in, stock.shipment.in.return, stock.shipment.out, stock.shipment.out.return. Estos registros forman la información que el usuario consulta o modifica durante el proceso.

Flujo de trabajo habitual

  1. Seleccione la compañía y fecha correctas antes de crear el documento.
  2. Complete primero los datos maestros y luego las líneas o detalles.
  3. Guarde y revise el registro antes de utilizarlo desde otro proceso.
  4. Revise advertencias, totales, documentos relacionados y trazabilidad.
  5. Compruebe el efecto en los módulos dependientes antes de cerrar el proceso.

Acciones, estados y asistentes

  • No se detectaron botones o asistentes propios; el módulo actúa mediante campos, reglas o extensiones de procesos existentes.

Controles antes de producción

  • Defina quién crea, revisa, confirma, cancela y consulta.
  • Pruebe períodos cerrados, usuarios sin permisos y datos incompletos.
  • Verifique numeración, moneda, redondeo y zona horaria cuando correspondan.
  • Documente cómo corregir un error sin editar directamente la base de datos.
  • Incluya sus tablas y archivos en el procedimiento de copia y restauración.

Diagnóstico y resolución de problemas

  • Si no aparece el menú, compruebe activación, actualización de la lista de módulos, grupos y nueva sesión.
  • Si un campo no acepta un valor, revise su dominio, compañía, estado y dependencias configuradas.
  • Si un botón está oculto o deshabilitado, revise permisos y transición válida; no modifique el estado con SQL.
  • Si los resultados no coinciden, reproduzca un caso mínimo y compare registros relacionados antes y después.
  • Conserve el traceback completo, versión, módulos activos y datos mínimos para diagnosticar un error.

Guía para desarrolladores

Arquitectura y puntos de extensión

El paquete contiene 21 clases Python y declara o extiende 18 modelos. Utiliza Boolean, Char, Function, Many2Many, Many2One, One2Many, Selection. Los desarrolladores deben localizar primero si una clase crea un modelo nuevo o usa PoolMeta para extender uno existente, conservar las llamadas a super() y no duplicar reglas disponibles en las dependencias.

Modelos registrados o extendidos

  • account.invoice
  • account.invoice.line
  • carrier
  • company.company
  • incoterm.incoterm
  • incoterm.incoterm-company.company
  • party.address
  • party.incoterm
  • party.party
  • purchase.purchase
  • purchase.request.create_purchase
  • purchase.request.quotation
  • sale.opportunity
  • sale.sale
  • stock.shipment.in
  • stock.shipment.in.return
  • stock.shipment.out
  • stock.shipment.out.return

Tipos de campos utilizados

  • Boolean
  • Char
  • Function
  • Many2Many
  • Many2One
  • One2Many
  • Selection

Clases y métodos públicos detectados

Clases: Address, Carrier, Company, Incoterm, IncotermAvailableMixin, IncotermMixin, Incoterm_Company, Invoice, InvoiceLine, Opportunity, Party, Purchase, RequestCreatePurchase, RequestQuotation, Sale, Sale_Carrier, ShipmentIn, ShipmentInReturn, ShipmentMixin, ShipmentOut, ShipmentOutReturn

Métodos: check_for_quotation(), create(), default_company(), delete(), get_incoterms(), get_is_incoterm_related(), get_rec_name(), incoterm_name(), on_change_carrier(), on_change_company(), on_change_incoterm(), on_change_party(), on_change_shipment_cost_method(), on_change_with_available_incoterms(), on_change_with_incoterm_location_required(), order_is_incoterm_related(), shipping_to(), shipping_to_address(), write()

Mapa del código

Se detectaron 12 archivos Python, 25 XML y 0 archivos explícitos de acceso. Los XML conectan modelos con vistas, menús, acciones e informes; los CSV de acceso establecen permisos iniciales.

  • __init__.py
  • account.py
  • carrier.py
  • carrier.xml
  • common.py
  • company.py
  • company.xml
  • doc/conf.py
  • incoterm.py
  • incoterm.xml
  • message.xml
  • party.py
  • party.xml
  • purchase.py
  • purchase.xml
  • sale.py
  • sale.xml
  • setup.py
  • stock.py
  • stock.xml
  • view/carrier_form.xml
  • view/carrier_list.xml
  • view/company_form.xml
  • view/incoterm_form.xml
  • view/incoterm_list.xml
  • view/party_form_purchase.xml
  • view/party_form_sale.xml
  • view/party_incoterm_form.xml
  • view/party_incoterm_list.xml
  • view/purchase_form.xml
  • view/purchase_request_quotation_form.xml
  • view/sale_form.xml
  • view/sale_opportunity_form.xml
  • view/stock_shipment_in_form.xml
  • view/stock_shipment_in_return_form.xml
  • view/stock_shipment_out_form.xml
  • view/stock_shipment_out_return_form.xml

Plan de pruebas

  • Activación en una base vacía y actualización desde la revisión anterior.
  • Creación, modificación, copia y eliminación según estado y permisos.
  • Cada botón, transición y asistente con casos válidos e inválidos.
  • Reglas multicompañía, traducciones, zonas horarias y monedas aplicables.
  • Instalación conjunta con dependencias obligatorias e integraciones opcionales.
  • Copia y restauración de registros, adjuntos e informes producidos.

Compatibilidad y actualización

Mantenga servidor y módulos en la serie 7.0. Antes de actualizar compare tryton.cfg, migraciones de __register__, cambios de estados, XML IDs y permisos. Una compilación exitosa no reemplaza una migración ensayada ni la conciliación funcional de datos.

Evidencia documental oficial

Temas encontrados: Design · Incoterm · Incoterm Module · Usage · Activate an Incoterm for a company

    • doc/design.rst: The Incoterm Module introduces the following concepts:
    • doc/index.rst: This Incoterm Model is used to manage the Incoterms <https://en.wikipedia.org/wiki/Incoterms>_ on sales, purchases and shipments. The module contains the Incoterm versions of 2010 and 2020.
    • doc/usage.rst: To allow the usage of an Incoterm <model-incoterm.incoterm> in Tryton, you must add it to the Incoterms field of the Company <company:model-company.company>. You can also remove it later to prevent it from being used in the future.

Ver código fuente