sale_opportunity
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 sale_opportunity incorpora o amplía funciones relacionadas con sale opportunity. 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 sale_opportunity module defines the lead/opportunity model.
El análisis encontró 11 archivos Python, 27 archivos XML, 25 vistas, 41 acciones, 2 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 sale opportunity, 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 sale_opportunity, 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
account— debe estar instalado y configurado antes de probar este módulo.account_invoice— debe estar instalado y configurado antes de probar este módulo.company— debe estar instalado y configurado antes de probar este módulo.currency— 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.sale— 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
- account.invoice: agrupa 2 modelo(s), entre ellos
account.invoice.payment_term,account.invoice.payment_term.line. 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. - company.employee: agrupa 1 modelo(s), entre ellos
company.employee. 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.party: agrupa 1 modelo(s), entre ellos
party.party. Estos registros forman la información que el usuario consulta o modifica durante el proceso. - 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. - product.product: agrupa 1 modelo(s), entre ellos
product.product. Estos registros forman la información que el usuario consulta o modifica durante el proceso. - product.template: agrupa 1 modelo(s), entre ellos
product.template. Estos registros forman la información que el usuario consulta o modifica durante el proceso. - sale.configuration: agrupa 2 modelo(s), entre ellos
sale.configuration,sale.configuration.sequence. Estos registros forman la información que el usuario consulta o modifica durante el proceso. - sale.opportunity: agrupa 9 modelo(s), entre ellos
sale.opportunity,sale.opportunity.line,sale.opportunity.reporting.context,sale.opportunity.reporting.conversion,sale.opportunity.reporting.conversion.employee. 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.
Flujo de trabajo habitual
- Seleccione la compañía y fecha correctas antes de crear el documento.
- Complete primero los datos maestros y luego las líneas o detalles.
- Use los botones del formulario para cambiar de estado; guardar no equivale a validar o contabilizar.
- Revise advertencias, totales, documentos relacionados y trazabilidad.
- Compruebe el efecto en los módulos dependientes antes de cerrar el proceso.
Acciones, estados y asistentes
cancel— acción o transición que inicia cancel. Verifique permisos, estado actual y registros relacionados antes de ejecutarla.convert— acción o transición que inicia convert. Verifique permisos, estado actual y registros relacionados antes de ejecutarla.lead— acción o transición que inicia lead. Verifique permisos, estado actual y registros relacionados antes de ejecutarla.lost— acción o transición que inicia lost. Verifique permisos, estado actual y registros relacionados antes de ejecutarla.opportunity— acción o transición que inicia opportunity. 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.converted— acción o transición que inicia converted. Verifique permisos, estado actual y registros relacionados antes de ejecutarla.won— acción o transición que inicia won. 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 26 clases Python y declara o extiende 21 modelos. Utiliza Char, Date, Float, Function, Integer, Many2One, MultiValue, One2Many, 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
account.invoice.payment_termaccount.invoice.payment_term.linecompany.companycompany.employeeparty.addressparty.partyparty.replaceproduct.productproduct.templatesale.configurationsale.configuration.sequencesale.opportunitysale.opportunity.linesale.opportunity.reporting.contextsale.opportunity.reporting.conversionsale.opportunity.reporting.conversion.employeesale.opportunity.reporting.conversion.employee.time_seriessale.opportunity.reporting.conversion.time_seriessale.opportunity.reporting.mainsale.opportunity.reporting.main.time_seriessale.sale
Tipos de campos utilizados
CharDateFloatFunctionIntegerMany2OneMultiValueOne2ManySelectionText
Clases y métodos públicos detectados
Clases: Abstract, AbstractConversion, AbstractConversionTimeseries, AbstractTimeseries, Address, Company, Configuration, ConfigurationSequence, Context, Conversion, ConversionEmployee, ConversionEmployeeTimeseries, ConversionTimeseries, Employee, EmployeeMixin, Main, MainTimeseries, Party, PaymentTerm, PaymentTermLine, Product, Replace, Sale, SaleOpportunity, SaleOpportunityLine, Template
Métodos: cancel(), confirm(), convert(), copy(), create(), create_sale(), default_company(), default_conversion_probability(), default_currency(), default_employee(), default_from_date(), default_payment_term(), default_period(), default_sale_opportunity_sequence(), default_start_date(), default_state(), default_to_date(), delete(), do(), fields_to_replace(), get_currency(), get_opportunity_states(), get_rate(), get_rec_name(), get_resources_to_copy(), get_sale_line(), get_time_series(), get_trend(), is_forecast(), is_lost(), is_won(), lead(), lost(), multivalue_model(), on_change_company(), on_change_party(), on_change_product(), on_change_with_opportunity_state(), opportunity(), order_number(), proceed(), process(), quote(), sale_amount(), search_rec_name(), table_query(), time_series_all(), view_attributes(), won(), wrapper(), write()
Mapa del código
Se detectaron 11 archivos Python, 27 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__.pyaccount.pycompany.pyconfiguration.pyconfiguration.xmldoc/conf.pymessage.xmlopportunity.pyopportunity.xmlopportunity_reporting.pyopportunity_reporting.xmlparty.pyparty.xmlproduct.pysale.pysetup.pyview/configuration_form.xmlview/opportunity_form.xmlview/opportunity_line_form.xmlview/opportunity_line_tree.xmlview/opportunity_reporting_context_form.xmlview/opportunity_reporting_conversion_employee_graph_amount.xmlview/opportunity_reporting_conversion_employee_graph_number.xmlview/opportunity_reporting_conversion_employee_list.xmlview/opportunity_reporting_conversion_graph_amount.xmlview/opportunity_reporting_conversion_graph_number.xmlview/opportunity_reporting_conversion_list.xmlview/opportunity_reporting_conversion_time_series_graph_amount.xmlview/opportunity_reporting_conversion_time_series_graph_number.xmlview/opportunity_reporting_conversion_time_series_list.xmlview/opportunity_reporting_main_graph_amount.xmlview/opportunity_reporting_main_graph_number.xmlview/opportunity_reporting_main_list.xmlview/opportunity_reporting_main_time_series_graph_amount.xmlview/opportunity_reporting_main_time_series_graph_number.xmlview/opportunity_reporting_main_time_series_list.xmlview/opportunity_tree.xmlview/party_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: Sale Opportunity Module · Lead/Opportunity · Lead/Opportunity Line · Reports
-
- doc/index.rst: The sale_opportunity module defines the lead/opportunity model.