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

purchase_request

Tryton 8.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 purchase_request incorpora o amplía funciones relacionadas con purchase request. 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)​

The Purchase Request Module provides everything needed to manage purchase requests generated by other processes.

El análisis encontró 6 archivos Python, 8 archivos XML, 5 vistas, 13 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 purchase request, 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 purchase_request, 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​

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

Integraciones opcionales​

  • —

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​

  • party.replace: agrupa 1 modelo(s), entre ellos party.replace. Estos registros forman la información que el usuario consulta o modifica durante el proceso.
  • purchase.line: agrupa 1 modelo(s), entre ellos purchase.line. 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 5 modelo(s), entre ellos purchase.request, purchase.request.create_purchase, purchase.request.create_purchase.ask_party, purchase.request.handle.purchase.cancellation, purchase.request.handle.purchase.cancellation.start. 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. Use los botones del formulario para cambiar de estado; guardar no equivale a validar o contabilizar.
  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​

  • create_purchase — acción o transición que inicia create purchase. Verifique permisos, estado actual y registros relacionados antes de ejecutarla.
  • handle_purchase_cancellation_exception — acción o transición que inicia handle purchase cancellation exception. Verifique permisos, estado actual y registros relacionados antes de ejecutarla.
  • cancelled — acción o transición que inicia cancelled. Verifique permisos, estado actual y registros relacionados antes de ejecutarla.
  • confirmed — acción o transición que inicia confirmed. Verifique permisos, estado actual y registros relacionados antes de ejecutarla.
  • purchase.request.create_purchase.ask_party — asistente que reúne datos y ejecuta purchase › request › create purchase › ask party. Verifique permisos, estado actual y registros relacionados antes de ejecutarla.
  • purchase.request.handle.purchase.cancellation — asistente que reúne datos y ejecuta purchase › request › handle › purchase › cancellation. Verifique permisos, estado actual y registros relacionados antes de ejecutarla.

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 9 clases Python y declara o extiende 8 modelos. Utiliza Boolean, Char, Date, Float, Function, Many2One, One2Many, Reference, Selection, Text. 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​

  • party.replace
  • purchase.line
  • purchase.purchase
  • purchase.request
  • purchase.request.create_purchase
  • purchase.request.create_purchase.ask_party
  • purchase.request.handle.purchase.cancellation
  • purchase.request.handle.purchase.cancellation.start

Tipos de campos utilizados​

  • Boolean
  • Char
  • Date
  • Float
  • Function
  • Many2One
  • One2Many
  • Reference
  • Selection
  • Text

Clases y métodos públicos detectados​

Clases: CreatePurchase, CreatePurchaseAskParty, HandlePurchaseCancellationException, HandlePurchaseCancellationExceptionStart, Line, Purchase, PurchaseRequest, PurchaseWarehouseWarning, Replace

Métodos: cancel(), check_modification(), check_request_warehouse(), compute_purchase_line(), compute_quantity(), confirm(), copy(), create_purchase(), currency(), default_ask_party(), default_company(), default_exception_ignored(), default_state(), do_open_(), end(), fields_to_replace(), find_best_product_supplier(), find_best_supplier(), get_origin(), get_purchase(), get_rec_name(), get_state(), get_warehouse_required(), handle_purchase_cancellation_exception(), on_change_with_default_uom(), on_change_with_product_uom_category(), on_change_with_summary(), on_delete(), process(), reset_purchased(), search_purchase(), search_rec_name(), search_summary(), set_purchased(), transition_cancel_request(), transition_reset(), transition_start(), update_state(), view_attributes(), wrapper()

Mapa del código​

Se detectaron 6 archivos Python, 8 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
  • doc/conf.py
  • exceptions.py
  • message.xml
  • party.py
  • purchase.py
  • purchase.xml
  • purchase_request.py
  • purchase_request.xml
  • view/handle_purchase_cancellation_start_form.xml
  • view/purchase_line_form.xml
  • view/purchase_request_create_purchase_ask_party_form.xml
  • view/purchase_request_form.xml
  • view/purchase_request_tree.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 8.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 · Purchase Request · Wizards · Create Purchase · Handle Purchase Cancellation · Purchase Request Module

    • doc/design.rst: The Purchase Request Module introduces some new concepts.
    • doc/index.rst: The Purchase Request Module provides everything needed to manage purchase requests generated by other processes.

Ver código fuente