Manual de Extensibilidad
ERP PRIMAVERA V9.00
Versión 1.1
diciembre 2014
Pg 2
Índice
Índice ................................................................................................................................. 2
Introducción ....................................................................................................................... 6
Extensibilidad ..................................................................................................................... 7
Motores de las Aplicaciones .............................................................................................7
Motores de la Plataforma .................................................................................................7
VBA – Visual Basic for Applications ..................................................................................8
Campos y Tablas de Usuario .............................................................................................8
Pestañas y Formularios de Usuario ..................................................................................8
Funciones de Usuario .......................................................................................................8
Procesos de Usuario ........................................................................................................8
Menús de Usuario ............................................................................................................9
Navegador .......................................................................................................................9
Listas ...............................................................................................................................9
Informes de Usuario ........................................................................................................9
Ribbon ........................................................................................................................... 10
Paneles .......................................................................................................................... 10
Abrir un Panel ............................................................................................................... 11
Cerrar un Panel ............................................................................................................. 11
Actualizar un Panel ......................................................................................................... 11
Ajustar un Panel ............................................................................................................ 11
Paneles de Información Relacionada .............................................................................. 11
Tecnologías de Integración ............................................................................................ 13
Motores de los Módulos .................................................................................................... 14
Tecnología COM y Arquitectura Windows DNA ................................................................ 14
Arquitectura de los Motores ........................................................................................... 15
Objetos de Negocio (BE) ................................................................................................ 16
Servicios de Negocio (BS) .............................................................................................. 17
Servicios de Datos (DS) ................................................................................................. 19
Utilización de los Motores en Aplicaciones Externas ....................................................... 20
Integración del Motor en el Proyecto ................................................................................. 20
Apertura del Motor ......................................................................................................... 21
Pg 3
Creación del Cliente ....................................................................................................... 22
Motores de la Plataforma .................................................................................................. 24
Administrador PRIMAVERA ............................................................................................ 24
Referencias ................................................................................................................... 24
Apertura del Motor y Ejecución del Servicio .................................................................. 24
Servicios de la Plataforma (StdPlatBS) ........................................................................... 25
Referencias ................................................................................................................... 26
Ejecución del Servicio ..................................................................................................... 26
Autenticación Windows en los motores .............................................................................. 28
VBA – Visual Basic for Applications ................................................................................... 29
IDE ................................................................................................................................ 29
Proyecto VBA ................................................................................................................. 30
Macros ........................................................................................................................... 30
Clases ............................................................................................................................ 31
Eventos ......................................................................................................................... 32
Mantenimientos de las Tablas Base ................................................................................... 32
Editores ........................................................................................................................ 33
Objetos .......................................................................................................................... 34
Aplicacao ...................................................................................................................... 34
Plataforma PRIMAVERA ................................................................................................... 35
Campos y Tablas de Usuario ............................................................................................. 36
Campos de Usuario en las Aplicaciones .......................................................................... 40
Campos de Usuario en Mantenimientos con Pestañas .......................................................... 40
Campos de Usuario en Mantenimientos sin Pestañas ........................................................... 40
Campos de Usuario en Documentos .................................................................................. 41
Tablas de Usuario .......................................................................................................... 43
Pestañas y Formularios de Usuario ................................................................................... 44
Pestañas de Usuario ...................................................................................................... 44
Para crear una Pestaña de Usuario: .......................................................................................... 44
Formularios de Usuario .................................................................................................. 48
Para crear un Formulario de Usuario: ................................................................................ 49
Funciones de Usuario........................................................................................................ 51
Ejemplos de Funciones de Usuario ................................................................................. 52
Mensaje de E-mail .......................................................................................................... 52
Pg 4
Definición de Parámetros: .......................................................................................... 55
Definición del Resultado: ........................................................................................... 58
Aplicación Externa .......................................................................................................... 58
Definición de Parámetros: .......................................................................................... 59
Definición del Resultado: ........................................................................................... 60
Macro VBA .................................................................................................................... 60
Definición de Parámetros: .......................................................................................... 62
Definición del Resultado: ........................................................................................... 62
Consulta SQL ................................................................................................................ 62
Definición de Parámetros: .......................................................................................... 64
Definición del Resultado: ........................................................................................... 64
Parámetros .................................................................................................................... 65
Valor Fijo ...................................................................................................................... 65
Lista de Valores Fijos ...................................................................................................... 66
Lista definida a través de una Consulta SQL ....................................................................... 67
Fórmula ........................................................................................................................ 69
Función ........................................................................................................................ 70
Ejecución ....................................................................................................................... 71
Menús de Usuario ............................................................................................................. 76
Para crear un Submenú .................................................................................................. 77
Para crear un Comando .................................................................................................. 78
Procesos de Usuario ......................................................................................................... 82
Entorno de Configuración ............................................................................................... 83
Para definir las principales propiedades del Proceso ............................................................. 85
Definición de Pasos ........................................................................................................ 86
Definición de Condiciones .............................................................................................. 93
Definición de Parámetros y Resultados .......................................................................... 95
Entorno de Ejecución ..................................................................................................... 96
Alertas de Usuario ............................................................................................................ 97
Definición de la Alerta .................................................................................................... 98
Entorno de Ejecución ................................................................................................... 104
Resultados ................................................................................................................... 106
Indicadores de Usuario ................................................................................................... 107
Definición del Indicador ............................................................................................... 108
Pg 5
Navegador ...................................................................................................................... 117
Accesos directos .......................................................................................................... 120
Para crear un acceso directo a una aplicación externa ....................................................... 120
Para crear un acceso directo a una página web: ............................................................... 121
Para crear un acceso directo a un menú de la aplicación .................................................... 123
Para crear un acceso directo a una Función de Usuario ...................................................... 123
Para crear un acceso directo a un Proceso de Usuario ........................................................ 124
Para crear un acceso directo a una empresa .................................................................... 124
Listas ............................................................................................................................. 125
Categorías de Información ........................................................................................... 125
Creación de Listas ........................................................................................................ 126
Ordenación de Registros ............................................................................................... 134
Ordenación de Columnas ............................................................................................... 135
Alias .......................................................................................................................... 136
Expresiones (Valores Calculados) ................................................................................... 136
Condiciones ................................................................................................................ 137
Totales Agregados ........................................................................................................ 142
Condiciones s/Totales Agregados .................................................................................... 143
Agrupación ................................................................................................................. 144
Formatos Condicionales ................................................................................................ 145
Consulta de Listas .......................................................................................................... 147
Operaciones sobre una Lista ........................................................................................... 148
Búsquedas y Listas por Defecto ...................................................................................... 149
Categorías ...................................................................................................................... 150
Informes de Usuario ....................................................................................................... 151
Para duplicar un informe ............................................................................................... 151
Para modificar el diseño de un informe ............................................................................ 152
Pg 6
Introducción La Extensibilidad de las aplicaciones es un concepto central en el ERP PRIMAVERA porque permite
completar la solución estándar con funcionalidades adicionales e intervenir en las funcionalidades más
importantes de cada aplicación para responder a las necesidades específicas de cada negocio o cliente.
Este manual pretende documentar – desde la perspectiva de los Partners PRIMAVERA – las herramientas de
extensibilidad más importantes del ERP PRIMAVERA, mostrando su arquitectura conceptual, ejemplos
prácticos de su aplicación y las ventajas competitivas que ofrecen.
La información mostrada se refiere a la versión 9.00 de la Plataforma PRIMAVERA y a PRIMAVERA
EXECUTIVE versión 9.00.
Para consultar la versión más actualizada de este manual, se recomienda su consulta online en PRIMAVERA
KnowledgeBase.
PKB
Manual de Extensibilidad
Pg 7
Extensibilidad El concepto de Extensibilidad se refiere a la capacidad de modificar y extender las funcionalidades de los
diversos módulos y aplicaciones del ERP PRIMAVERA, adaptándolos a las necesidades específicas de cada
cliente/negocio/implementación particular.
Aunque PRIMAVERA es una empresa especializada en el desarrollo de soluciones de gestión estándar (que
tratan principalmente las áreas administrativa y financiera de las empresas) no deja de ser necesario que sus
productos – en particular las soluciones EXECUTIVE – incluyan, y cada vez más, tecnologías de
extensibilidad.
A lo largo del tiempo y con la evolución de los productos PRIMAVERA se han ido desarrollando y explorando
diversas tecnologías que funcionan hoy como una herramienta muy poderos a disposición de los servicios de
implementación de PRIMAVERA y sus Partners. Estas tecnologías permiten, por ejemplo:
• La reutilización de las funcionalidades del ERP a partir de aplicaciones externas; • La reutilización del código y de las funcionalidades más comunes que un programador necesita y que la
Plataforma PRIMAVERA ofrece; • La intervención y la adaptación del comportamiento de las principales funcionalidades del ERP; • La extensión de la base de datos o de las herramientas de exploración de los datos del ERP; • La automatización de procesos de negocio específicos; • La integración de soluciones y aplicaciones externas en el ERP; • La adaptación del ERP a las necesidades de cada usuario.
Motores de las Aplicaciones
Todas las aplicaciones PRIMAVERA (a partir de la 2ª Generación) se desarrollan según la arquitectura
Windows DNA y estándares internacionalmente reconocidos de desarrollo de componentes a través de
capas, puestas a disposición a través de las DLL COM.
Esta arquitectura permite volver a usar todas las principales funcionalidades de las aplicaciones (las reglas
de negocio) a partir de cualquier otra aplicación externa, como Microsoft Excel.
Motores de la Plataforma
La Plataforma PRIMAVERA está formada por un conjunto de componentes que ofrecen las funcionalidades
más individuales (por ejemplo: impresión de informes o exportación de registros) del ERP y las
funcionalidades comunes entre todos los módulos (por ejemplo: la conexión a la base de datos o el sistema
de permisos).
Aunque estos componentes se han diseñado en particular para su consumo por las aplicaciones
PRIMAVERA, muchas de sus funcionalidades también se pueden usar con aplicaciones externas a través de
componentes (motores) que se pueden reutilizar, reduciendo el esfuerzo de desarrollo de la implementación.
Pg 8
VBA – Visual Basic for Applications
PRIMAVERA Business Software Solutions fue pionera en Portugal en la integración de la tecnología VBA
(Visual Basic for Applications) desde la versión 4.00 de la Línea Profesional.
Esta tecnología, internacionalmente reconocida, ofrece al programador la posibilidad de intervenir en el
comportamiento “normal” de la aplicación, a través de la implementación de comportamiento (código)
asociado a cada uno de sus eventos (ejemplos: antes de editar un cliente, después de guardar una factura).
Campos y Tablas de Usuario
La estructura de la base de datos asociada a cada empresa registrada en el sistema PRIMAVERA puede
adaptarse creando nuevos campos en tablas del sistema (CDU – Campos de Usuario) o creando nuevas
tablas (TDU – Tablas de Usuario) para guardar datos adicionales.
Pestañas y Formularios de Usuario
Además de la adaptación del comportamiento (VBA) de las aplicaciones y de la estructura de datos (CDU y
TDU), el ERP PRIMAVERA ofrece también la posibilidad de intervenir en la interfaz de las aplicaciones a
través de la creación de nuevas pestañas en los formularios estándar (SDU – Pestañas de Usuario), o de
formularios desarrollados desde el principio (FDU – Formularios de Usuario) e integrados en las aplicaciones.
Funciones de Usuario
Una Función de Usuario (XDU) corresponde a la definición de una acción – de entre diversos tipos de
acciones disponibles (envío de mensajes, exportación de informes, ejecución de macros VBA, etc.) – que
puede interactuar con el usuario (a través de la solicitud de parámetros y de la presentación de resultados) y
con el sistema (VBA, motores, etc.) para automatizar una determinada tarea.
Dadas sus características, las Funciones de Usuario son el componente central de las tecnologías de
extensibilidad de 2ª Generación (disponibles a partir de la versión 3 de la Línea Empresarial) y sirven como
base a la implementación de otras herramientas como los Procesos de Usuario y los Menús de Usuario.
Procesos de Usuario
Los Procesos de Usuario (PDU) permiten la definición gráfica de flujos de trabajo (secuencias de Funciones
de Usuario encadenadas entre sí) que potencian la automatización de los procesos repetitivos (ejemplos:
pedidos automáticos o cálculos de primas) y su integración en el ERP para implementar las necesidades
específicas de cada implementación.
Pg 9
Menús de Usuario
Los Menús de Usuario permiten que los menús de las aplicaciones se completen para integrar nuevas
opciones que ejecutarán una determinada Función de Usuario (por ejemplo, abrir una aplicación externa o
iniciar una determinada operación en background).
Navegador
El Navegador es el “punto de entrada” de todos los módulos y ofrece al usuario un punto central para acceder
a todas las funcionalidades de la aplicación (listas, opciones de menú, documentos, accesos directos, etc.)
configurado según sus preferencias y permisos.
Del punto de vista de la implementación, el Navegador también es una gran herramienta de configuración
porque permite:
Adaptar las funcionalidades ofrecidas por cada aplicación a cada usuario;
Integrar herramientas y aplicaciones externas en el entorno de trabajo PRIMAVERA.
Listas
Uno de los componentes más importantes en la implementación de una solución integrada de gestión está
relacionado con las herramientas de exploración de los datos gestionados en el sistema y con su
adecuación/adaptación a las necesidades de cada usuario.
Desde la primera versión de las aplicaciones PRIMAVERA, las listas ofrecen el primer método para acceder
a los datos principales (las listas de clientes, de documentos de venta, de cartera, etc.).
A partir de la versión 3 de la Línea Empresarial, el ERP PRIMAVERA incluye un poderoso sistema de
configuración asistida de listas a través de categorías de información que relacionan todas las tablas en la
base de datos y permiten al usuario, entre otras operaciones:
• Definir los campos de cada tabla que se deben mostrar en cada lista;
• Establecer relaciones automáticas entre las diversas tablas de cada categoría (por ejemplo:
clientes y vendedores);
• Definir filtros y condiciones para restringir los resultados y adaptarlos a las necesidades de cada
usuario;
• Definir diversas opciones de configuración y presentación de las listas;
• Crear listas dinámicas y parametrizadas que muestran datos diferentes según las condiciones
seleccionadas por el usuario en la ejecución.
Informes de Usuario
Las aplicaciones PRIMAVERA ofrecen todos los informes (impresiones) usando Crystal Reports.
Pg 10
Esta herramienta – un estándar internacional a este nivel – permite que los diversos informes de la aplicación
se adapten (o se creen nuevos informes) según las reglas de negocio de cada implementación.
Ribbon
Los menús de ERP están ahora disponibles en una Ribbon. Con esta tecnología, las funcionalidades están
accesibles de forma más fácil y rápida.
Las operaciones disponibles están divididas en grupos que, a su vez, están organizados por pestañas.
Se ha añadido una lista de empresas recientes que simplifica el cambio entre las empresas más usadas.
Es posible la personalización de la Ribbon para añadir pestañas, grupos y botones con acciones definidas en
VBA y que pueden realizar cualquier operación pretendida por el usuario. Para consultar ejemplos podrá
acceder al SDK.
Paneles
La versión 9 del ERP PRIMAVERA ofrece una nueva forma de extensibilidad, por ejemplo, a través de
paneles. Este tipo de control ha resultado ser muy útil en la tomada de decisión de la presentación de
contenidos relacionados con el contexto en el que el usuario está trabajando.
Estos paneles tienen las siguientes características:
Pestaña
Grupo
Operación
Pg 11
Posicionamiento: Vertical; Horizontal.
Estado: Fluctuante; Ancorado; Fijo; Oculto automáticamente.
Sobreposición de paneles.
El estado de los paneles se conserva entre ejecuciones del ERP según el usuario.
Posibilidad de cargar controles del usuario.
Abrir un Panel
Dim objPainel As StdBSDockingPane
Set objPainel = PlataformaPRIMAVERA.MDI.DockingManager.AbrePainel("Painel de Exemplo", 200, 200, 0, vbNullString, 0, UserControl, False)
Cerrar un Panel
PlataformaPRIMAVERA.MDI.DockingManager.FechaPainel objPainel.Nome
Actualizar un Panel
PlataformaPRIMAVERA.MDI.DockingManager.ActualizaPainel objPainel.Nome, objUserCtrl
Ajustar un Panel
PlataformaPRIMAVERA.MDI.DockingManager.AjustaPainel objPainel.Nome, 200, 200
Paneles de Información Relacionada
Los Paneles de Información relacionada son paneles que se ejecutan automáticamente durante operaciones
concretas del ERP (como, por ejemplo, un F4 en una entidad).
Se destinan a ofrecer información relevante para el contexto activo, como por ejemplo, el resumen de las
ventas de un determinado cliente al introducirlo en un editor ERP.
Pg 12
Es posible activar/desactivar la apertura automática de paneles de información relacionada a través de la
opción del menú: PANELES | Contexto | Info. Relacionada. El cierre manual del panel desactiva la opción.
Es posible crear un panel de información relacionada en la invocación de cualquier F4 en el ERP. También
se puede sustituir o añadir controles creados por el cliente a los paneles de información relacionada del
sistema.
En la carpeta (<PRIMAVERA>\SG900\Manuais\<Linha>\SDK\InfoRelacionada existe, en un archivo zip, un
proyecto estándar que demuestra como crear, fácilmente, un control de información relacionada.
Para información detallada sobre extensibilidad de Paneles de Información Relacionada, por favor, consulte
la siguiente conexión en PRIMAVERA KnowledgeBase: ¿Cómo crear nuevos Paneles de Información
Relacionada?
Pg 13
Tecnologías de Integración
Los Partners PRIMAVERA tienen un papel indispensable en el negocio de PRIMAVERA. El reconocimiento
de este papel – complementando las soluciones que ofrecen a los clientes finales, así como a través de los
servicios de implementación – ha resultado en la puesta a disposición, por parte de PRIMAVERA, de
tecnologías que facilitan la integración de sus soluciones con las soluciones estándar.
En este momento están disponibles las siguientes tecnologías de integración:
• La Tecnología de Integración PRIMAVERA (TIP): permite a los Partners Integradores el desarrollo
y la certificación de soluciones que usan los motores de las aplicaciones PRIMAVERA y estén
integradas (según las normas definidas) en la Plataforma EXECUTIVE (por ejemplo, el
Administrador);
• La Tecnología de Integración Documental (TID): permite a los Partners Integradores
especializados en el desarrollo de soluciones de Gestión Documental, integrar las funcionalidades
de sus soluciones en las aplicaciones PRIMAVERA.
Pg 14
Motores de los Módulos
Tecnología COM y Arquitectura Windows DNA
Todas las aplicaciones PRIMAVERA se desarrollan basadas en la tecnología COM y en la arquitectura
Windows DNA.
Este modelo de arquitectura con 3 niveles permite ofrecer el acceso a la capa intermedia a través de
interfaces diferenciadas y de una forma que no permite destruir la lógica inherente al funcionamiento de las
aplicaciones.
Esta capa está formada por un conjunto de componentes (rutinas), que forman cerca del 70% del código de
un producto, también conocida como “Reglas del Negocio”. Esta es una parte de la aplicación cuyo código
tiene grandes probabilidades de resistir a las constantes mutaciones de la tecnología.
El acceso a la información a partir de la interfaz a través del modelo de objetos de negocio garantiza el
cumplimiento de las reglas de negocio establecidas en el ERP PRIMAVERA, así como la independencia con
relación al modelo de datos. Este es el elemento esencial de la Tecnología de Integración PRIMAVERA
(TIP).
Por otro lado, el uso de esta tecnología permite que diferentes aplicaciones compartan diferentes objetos
dentro del ERP PRIMAVERA. Por ejemplo, el acceso a la ventana de Movimientos del módulo de
Contabilidad directamente a partir del Editor de Ventas/Pedidos del módulo de Ventas.
Pg 15
Esta posibilidad no existe solo entre los diversos módulos del ERP, sino también en aplicaciones externas
que pueden usar los diferentes Motores de la Aplicación. Por ejemplo el acceso a partir de Microsoft Excel o
de una aplicación desarrollada por el usuario a la opción de guardar movimientos en el módulo de
Contabilidad o de facturas en el módulo de Ventas.
Arquitectura de los Motores
Conceptualmente, la arquitectura del motor del ERP PRIMAVERA, estructurada en tres capas, aísla el
acceso a los datos, fomentando su reutilización por aplicaciones externas sin colocar en causa la integridad
de los datos.
El motor de una aplicación está formado por un conjunto de DLLs COM que se pueden referenciar y usar a
partir de aplicaciones externas, bastando para ello que estén registradas en el sistema y que estén incluidas
en el proyecto correspondiente.
AplUS900.dll
ErpBS900.dll
AplBS900.dll IAplBS900
.tlb
AplBE900.
dll
AplDS900.
dll
Estructura de
datos
AplUS900.dll
ErpBS900.dll
AplBS900.dll
IAplBS900.tlb AplBE900.dll
AplDS900.dll
AplBE900.dll ERPDS900.dll IAplDS900.tlb
Pg 16
El diagrama anterior muestra la arquitectura y la organización del motor de uno o más módulos que estará
formado por los siguientes archivos:
AplBE900.dll 1 Objetos de negocio.
Representan las entidades gestionadas por el motor y por la aplicación.
ErpBS900.dll Permite el acceso a los Servicios de Negocio de cada Módulo/Área.
IAplBS900.tlb 1 Implementan las interfaces para los Servicios de Negocio.
AplBS900.dll Servicios de Negocio.
Ponen a disposición todas las reglas de negocio.
IAplDS900.tlb Implementan las interfaces para los Servicios de Datos.
AplDS900.dll
Servicios de Datos.
Ponen a disposición todos los servicios para cargar y guardar datos a partir de la
base de datos.
Objetos de Negocio (BE)
Todos los objetos de negocio (o entidades) gestionados por cada aplicación están disponibles a través de
objetos simples con un conjunto de propiedades en la DLL AplBE900.dll.
La nomenclatura de los objetos es la siguiente:
<Apl>BE<Nombre>
Ejemplos:
• GcpBEDocumentoVenda (Área de Logística & Tesorería)
• GcpBEDocumentoCompra (Área de Logística & Tesorería)
• RhpBEFuncionario (Área de Recursos Humanos)
• CblBEConta (Área de Contabilidad)
Como ejemplo, en el caso de un Documento de Venta, el programador tendrá acceso a un objeto tipo
GcpBEDocumentoVenda que está formado por un encabezado (con diversas propiedades) y un conjunto de
detalles (por ejemplo: las líneas del documento).
1 La sigla Apl deberá sustituirse por la nomenclatura asociada a cada módulo/área. Así, por ejemplo, para el área de Logística & Tesorería debe ser IGcpBS900, GcpBE900,...
Pg 17
Cada objeto tendrá un conjunto de propiedades que corresponden básicamente a los campos utilizados en la
base de datos para almacenar la entidad:
• Anulado
• Arredondamento (Redondeo)
• ArredondamentoIva (Redondeo IVA)
• Cambio
• CodigoPostal
• CondPag
• DataCarga (Fecha carga)
• (...)
Servicios de Negocio (BS)
La DLL ErpBS900.dll es el punto de entrada en el motor del ERP. Esta DLL ofrece acceso a todos los
servicios del motor para cada módulo (AplBS900.dll) que implementa todas las reglas de negocio.
Este será el componente que se usará para acceder al motor de la aplicación a partir de una aplicación externa.
Al usar este componente para, por ejemplo, crear un nuevo cliente usando el motor del área de Logística &
Tesorería, podemos garantizar que la creación de esta entidad respetará todas las reglas de negocio
exigidas por las aplicaciones PRIMAVERA (por ejemplo: validaciones).
Cada servicio del motor está disponible a través de una clase a la que se puede acceder a través de la clase
principal del motor (ErpBS). La nomenclatura de estos servicios es la siguiente:
I<Apl>BS<Nombre>
Ejemplos:
• IGcpBSClientes (Área de Logística & Tesorería)
• IRhpBSFuncionarios (Área de Recursos Humanos)
• ICblBSDiarios (Área de Contabilidad)
En el caso del motor del área de Logística & Tesorería, el árbol de servicios es idéntico al siguiente:
Pg 18
Cada una de las clases de servicios implementa un conjunto de métodos típicos que realizan las operaciones
más importantes sobre cada tipo de entidad:
Actualiza Introduce o actualiza una nueva entidad.
ActualizaValorAtributo Actualiza el valor de un atributo de una entidad existente.
ActualizaValorAtributos Actualiza el valor de diversos atributos de una entidad existente.
DaValorAtributo Devuelve el valor de un atributo de una entidad existente.
DaValorAtributos Devuelve el valor de diversos atributos de una entidad existente.
Edita Devuelve una entidad existente.
Existe Comprueba si determinada entidad existe.
Eliminar Elimina una entidad del sistema.
ValidaActualizacao Comprueba si se puede actualizar una entidad.
ValidaRemocao Comprueba si se puede eliminar una entidad.
Como ejemplo, consideremos la firma de estos métodos para los servicios de Clientes del área de Logística
& Tesorería:
Pg 19
Private Sub IGcpBSClientes_Actualiza(ByVal BECliente As GcpBECliente)
Private Sub IGcpBSClientes_ActualizaValorAtributo(ByVal strCliente As String, ByVal strAtributo As String, ByVal varValor As Variant)
Private Sub IGcpBSClientes_ActualizaValorAtributos(ByVal strCliente As String, ByRef Atributos As StdBECampos)
Private Function IGcpBSClientes_DaValorAtributo(ByVal strCliente As String, ByVal strAtributo As String) As Variant
Private Function IGcpBSClientes_DaValorAtributos(ByVal strCliente As String, ParamArray Atributos() As Variant) As StdBECampos
Private Function IGcpBSClientes_Edita(ByVal strCliente As String) As GcpBECliente
Private Function IGcpBSClientes_Existe(ByVal strCliente As String) As Boolean
Private Sub IGcpBSClientes_Remove(ByVal strCliente As String)
Private Function IGcpBSClientes_ValidaActualizacao(ByVal BECliente As GcpBECliente, ByRef StrErro As String) As Boolean
Private Function IGcpBSClientes_ValidaRemocao(ByVal strCliente As String, ByRef StrErro As String) As Boolean
Servicios de Datos (DS)
La DLL IAplDS900.dll ofrece los servicios de acceso a los datos (interacción con la base de datos).
Los servicios de este componente tienen una correspondencia virtualmente directa con los mismos servicios
que los Servicios de Negocio (BS). En realidad, cada servicio del BS, siempre que tiene que acceder a la
base de datos lo hace a través del servicio/método correspondiente en el DS. Esta separación permitiría, por
ejemplo, modificar la fuente de datos adaptando solo la capa de datos (DS), sin efectuar ninguna
modificación en la capa de las reglas de negocio (BS).
Atención
Este componente del motor de una aplicación nunca se debe referenciar a partir de aplicaciones externas. Sus servicios deben
ejecutarse siempre a través de la capa de negocio (ErpBS).
Pg 20
Utilización de los Motores en Aplicaciones Externas
Después de explicar la arquitectura interna del motor del ERP PRIMAVERA, solo falta demostrar sus
potencialidades a través de un ejemplo de su utilización a partir de una aplicación externa.
Consideremos el siguiente ejemplo:
• El cliente tiene un sistema externo de CRM en el que registra los potenciales clientes de la empresa; • Se pretende utilizar el motor del área de Logística & Tesorería para registrar en el ERP PRIMAVERA
los clientes gestionados en un sistema externo de CRM, cuando estos realizan el primer pedido.
Integración del Motor en el Proyecto
Para poder usar un componente COM en un proyecto VB6 solo hay que añadir las referencias adecuadas al
proyecto.
Como en el ejemplo se usa el motor del área de Logística & Tesorería, las referencias necesarias son las
siguientes:
• PRIMAVERA StdBE 9.00 • PRIMAVERA GcpBE 9.00 • PRIMAVERA ErpBS 9.00
El ejemplo mostrado a continuación se ha desarrollado en Visual Basic 6 por dos motivos:
1) Porque es la herramienta de desarrollo usada normalmente por PRIMAVERA;
2) Porque incluye funcionalidades que hacen la integración de componentes COM muy sencilla.
Sin embargo cabe destacar que los componentes de los motores PRIMAVERA se pueden usar en otros entornos de programación.
Todos los lenguajes de programación más recientes incluyen funcionalidades que permiten hacer referencia a componentes COM de
una forma más o menos sencilla.
Pg 21
Apertura del Motor
Antes de poder realizar cualquier operación a través del motor hay que abrir la empresa de trabajo usando el
método genérico “AbreEmpresaTrabalho”:
Private Sub cmdSincro_Click()
Dim objMotorErp As ErpBS
On Error GoTo Erro
'Abertura do motor
If Not (objMotorrp Is Nothing) Then objMotorErp.FechaEmpresaTrabalho
Set objMotorErp = Nothing
Set objMotorErp = New ErpBS
objMotorErp.AbreEmpresaTrabalho tpEmpresarial, m_strEmpresa, m_strUtilizador,
m_strPassword, Nothing, m_strInstancia, False
'Fecho do motor
objMotorErp.FechaEmpresaTrabalho
Set objMotorErp = Nothing
Exit Sub
Error:
Set objMotorErp = Nothing
MsgBox "Erro ao efetuar a sincronização." & vbCrLf & Err.Description, vbExclamation
Pg 22
End Sub
El método “AbreEmpresaTrabalho” necesita los siguientes parámetros:
Creación del Cliente
Para guardar un nuevo cliente deberá introducirse un objeto del tipo GcpBECliente y ejecutar el método
Actualiza de IGcpBSClientes:
Private Sub cmdSincro_Click()
Dim objMotorErp As ErpBS
Dim objCliente As GcpBECliente
Dim objClienteCRM As Cliente
On Error GoTo Erro
'Abertura do motor
If Not (objMotorErp Is Nothing) Then objMotorErp.FechaEmpresaTrabalho
Set objMotorErp = Nothing
Set objMotorErp = New ErpBS
objMotorErp.AbreEmpresaTrabalho tpEmpresarial, m_strEmpresa, m_strUtilizador, m_strPassword, Nothing, m_strInstancia, False
'Cliente
CarregaCliente objClienteCRM
Set objCliente = New GcpBECliente
With objCliente
.Cliente = objClienteCRM.Codigo
.Nome = objClienteCRM.Nome
.Morada = objClienteCRM.Morada
.Localidade = objClienteCRM.Localidade
TipoPlataforma Versión de la Plataforma PRIMAVERA (EXECUTIVE o PROFESSIONAL).
CodEmp Identificador de la empresa PRIMAVERA.
Usuario Identificador del usuario en el sistema PRIMAVERA.
Contraseña Contraseña del usuario.
Transacción Solo para uso de las aplicaciones PRIMAVERA (usar Nothing).
Instancia Identificador de la instancia PRIMAVERA.
ModoPrimario Siempre debe ser False.
Pg 23
.CodigoPostal = objClienteCRM.CodigoPostal
.NumContribuinte = objClienteCRM.NumContribuinte
.ModoPag = objClienteCRM.ModoPag
.CondPag = objClienteCRM.CondPag
.Moeda = objClienteCRM.Moeda
End With
'Gravação
objMotorErp.Comercial.Clientes.Actualiza objCliente
Set objCliente = Nothing
'Fecho do motor
objMotorErp.FechaEmpresaTrabalho
Set objMotorErp = Nothing
Exit Sub
Error:
If Not (objCliente Is Nothing) Then Set objCliente = Nothing
If Not (objMotorErp Is Nothing) Then
objMotorErp.FechaEmpresaTrabalho
Set objMotorErp = Nothing
End If
MsgBox "Erro ao efetuar a sincronização." & vbCrLf & Err.Description, vbExclamation
End Sub
PKB
Documentación de Motores
Pg 24
Motores de la Plataforma La Plataforma PRIMAVERA consiste en un conjunto de componentes, usados por todas las aplicaciones
PRIMAVERA, que ofrecen funcionalidades esenciales y comunes entre todas las aplicaciones, como por
ejemplo:
• Impresión de informes; • Envío de mensajes de correo electrónico; • Formato de controles; • Gestión de transacciones; • Seguridad; • Gestión de las bases de datos; • (…)
Administrador PRIMAVERA
El Administrador PRIMAVERA – la aplicación de administración general del sistema, de las empresas
registradas en el sistema y de seguridad – es una parte integrante de la Plataforma PRIMAVERA.
Las funcionalidades del Administrador se muestran a través de dos motores distintos y complementarios:
• AdmEngine900.dll – versión antigua del motor según la primera generación de la Tecnología de Integración PRIMAVERA;
• AdmBS900.dll – nueva versión del motor del Administrador que acompaña la misma arquitectura descrita para los motores del ERP.
Atención
El uso del motor del Administrador es básicamente idéntica al descrito para el motor del ERP. Consideremos
el siguiente ejemplo:
• Se pretende obtener una lista de las empresas registradas en el sistema PRIMAVERA.
Referencias
• PRIMAVERA AdmBE 9.00 • PRIMAVERA AdmBS 9.00 • PRIMAVERA StdBE 9.00
Apertura del Motor y Ejecución del Servicio
El motor AdmEngine, a pesar de ofrecer funcionalidades que aún no están disponibles en el nuevo motor, tiene su desarrollo
descontinuado. Éste se sustituirá completamente por lo que no se recomienda su utilización.
Pg 25
Private Sub cmdUsers_Click()
Dim objMotorAdm As AdmBS
Dim objListaEmpresas As AdmBEEmpresas
Dim objEmpresa As AdmBEEmpresa
On Error GoTo Erro
Set objMotorAdm = New AdmBS
objMotorAdm.AbrePRIEMPRE tpEmpresarial, m_strUtilizador, m_strPassword, Nothing, m_strInstancia
Set objListaEmpresas = objMotorAdm.Empresas.ListaEmpresas
For Each objEmpresa In objListaEmpresas
'(...)
Next
Set objListaEmpresas = Nothing
objMotorAdm.FechaPRIEMPRE
Set objMotorAdm = Nothing
Exit Sub
Error:
If Not (objListaEmpresas Is Nothing) Then Set objListaEmpresas = Nothing
If Not (objMotorAdm Is Nothing) Then Set objMotorAdm = Nothing
MsgBox "Erro ao obter a lista de utilizadores." & vbCrLf & Err.Description, vbExclamation
End Sub
Servicios de la Plataforma (StdPlatBS)
Los servicios comunes de la Plataforma PRIMAVERA están disponibles a través del componente
StdPlatBS900.dll.
Este componente tiene una estructura de servicios idéntica a la siguiente:
Pg 26
Estos servicios están disponibles a partir de las aplicaciones PRIMAVERA – en el entorno de desarrollo VBA
(PlataformaPRIMAVERA) – pero también se pueden usar a partir de una aplicación externa. Uno de los
ejemplos más comunes de esta aplicación práctica es la impresión de informes.
Referencias
• PRIMAVERA StdBE 9.00
• PRIMAVERA StdPlatBS 9.00
Ejecución del Servicio
Private m_objPlat As StdPlatBS Private Sub Form_Load() Dim objConfApl As StdBSConfApl On Error GoTo Erro Set objConfApl = New StdBSConfApl objConfApl.AbvtApl = "GCP" objConfApl.Instancia = "DEFAULT" objConfApl.Utilizador = "USER_NAME" objConfApl.PwdUtilizador = "" objConfApl.LicVersaoMinima = "9.00" Set m_objPlat = New StdPlatBS m_objPlat.AbrePlataformaEmpresa "ID_EMPRESA", Nothing, objConfApl, 0, vbNullString Set objConfApl = Nothing
Pg 27
Exit Sub Error: Set m_objPlat = Nothing Set m_objConfApl = Nothing End Sub Private Sub Form_Unload(Cancel As Integer) If Not (m_objPlat Is Nothing) Then m_objPlat.FechaPlataformaEmpresa Set m_objPlat = Nothing End If End Sub Private Sub Testar_Click() Dim strFormula As String Dim strSelFormula As String 'Set objPlat.MDIForm = MDIForm1 m_objPlat.Mapas.Inicializar "GCP" strFormula = "NumberVar TipoDesc;NumberVar RegimeIva;NumberVar DecQde;NumberVar DecPrecUnit;StringVar MotivoIsencao; TipoDesc:=" & 1 & ";RegimeIva:=3;DecQde:=1;DecPrecUnit:=" & 2 & ";MotivoIsencao:=' ';" m_objPlat.Mapas.AddFormula "InicializaParametros", strFormula strFormula = "StringVar Nome; StringVar Morada;StringVar Localidade; StringVar CodPostal; StringVar Telefone; StringVar Fax; StringVar Contribuinte; StringVar CapitalSocial; StringVar Conservatoria; StringVar Matricula;StringVar MoedaCapitalSocial;" strFormula = strFormula & "Nome:='HEIM'" strFormula = strFormula & ";Localidade:='Tocadelos'" strFormula = strFormula & ";CodPostal:='1000 Loures'" strFormula = strFormula & ";Telefone:='219750801'" strFormula = strFormula & ";Contribuinte:='123456789'" strFormula = strFormula & ";CapitalSocial:='123'" strFormula = strFormula & ";MoedaCapitalSocial:='EUR'" strFormula = strFormula & ";" m_objPlat.Mapas.AddFormula "DadosEmpresa", strFormula strSelFormula = "{CabecCompras.Filial}='000' And {CabecCompras.Serie}='2004' And {CabecCompras.TipoDoc}='" & "FA" & "' And {CabecCompras.NumDoc}= " & "12" m_objPlat.Mapas.AddFormula "NumVia", "'Original'" m_objPlat.Mapas.SelectionFormula = strSelFormula m_objPlat.Mapas.ImprimeListagem "GcpCls01", "TESTE", "W", 1, "S", strSelFormula, soNenhuma, , True Exit Sub Error: MsgBox "Erro: " & Err.Number & " - " & Err.Description End Sub
Pg 28
Autenticación Windows en los motores
Es posible inicializar el motor de la plataforma a través de autenticación Windows. Para ello, en lo que
respecta el código, en el objeto "ConfApl" que se transfiere a la plataforma, es necesario omitir las
propiedades "Utilizador" (línea “objConfApl.Utilizador”) y "PwdUtilizador" (línea “objConfApl.PwdUtilizador”)
del ejemplo de código de la sección anterior.
Para que la autenticación Windows funcione, es necesario que:
1. el sistema permita una autenticación mixta, es decir, que la “Autenticación PRIMAVERA y Windows”
esté activada en los Parámetros de la Instalación, en el Administrador;
2. cada usuario Windows esté relacionado con el usuario PRIMAVERA correspondiente (en la ficha del
usuario, en el Administrador).
El ejemplo siguiente muestra el código necesario para realizar la apertura de la plataforma, con autenticación
Windows:
Dim objPlat As StdPlatBS
Dim objConfApl As StdBSConfApl
Dim objTrans As StdBETransaccao
Dim eTipo As EnumTipoPlataforma
Set objConfApl = New StdBSConfApl
Set objPlat = New StdPlatBS
Set objTrans = New StdBETransaccao
objConfApl.AbvtApl = "ERP"
objConfApl.Instancia = "DEFAULT"
objConfApl.LicVersaoMinima = "9.00"
eTipo = tpEmpresarial
objPlat.AbrePlataformaEmpresa txtEmpresa.Text, objTrans, objConfApl, eTipo, vbNullString
PKB
Documentación de Motores
Pg 29
VBA – Visual Basic for Applications Microsoft Visual Basic for Applications (VBA) permite extender la solución PRIMAVERA, creando
funcionalidades personalizadas, aplicaciones de productividad y soluciones que superan el ámbito de los
módulos del ERP.
Los implementadores de las soluciones PRIMAVERA, que conocen el entorno de programación Visual Basic,
descubrirán en VBA un entorno familiar y confortable. Como se trata de una tecnología ampliamente
divulgada como una herramienta de programación, es lógico que las soluciones PRIMAVERA la ofrezcan
como tecnología principal de extensibilidad que permite:
• Acceder a los objetos mantenidos y usados en el contexto de cada una de las principales operaciones –
mantenimiento de clientes, editores de ventas, etc.;
• Asociar código a determinados eventos desencadenados por las operaciones más importantes de las
aplicaciones;
• Crear pestañas de usuario para editar los campos de usuario asociados a cada entidad;
• Crear formularios de usuario;
• Integrar los desarrollos realizados en la solución PRIMAVERA, a través de las Funciones de Usuario
que se pueden asociar al Navegador o a los Menús de Usuario.
IDE
IDE (Integrated Development Environment) de VBA es una ventana que surge al usuario por separado de la
ventana principal de la aplicación asociada.
Puede accederse a todas las herramientas de desarrollo de VBA a partir de este IDE, incluidos “Project
Explorer”, “Object Browser”, el editor de código, la interfaz de diseño de formularios y el debugger.
Pg 30
Proyecto VBA
Los proyectos VBA tienen dos papeles principales. Primero, incluyen los elementos del proyecto. Segundo,
almacenan todo el código VBA.
Un proyecto VBA puede consistir en:
• Módulos de código (“Code Modules”): incluyen declaraciones, procedimientos y funciones;
• Clases (“Class Modules”): permiten una programación orientada por objetos, agrupando
procedimientos, funciones y declaraciones en una clase;
• Formularios (“Forms”): permiten crear poderosas interfaces;
• Referencias (“References”): permiten la reutilización de código a partir de otros proyectos.
El ERP PRIMAVERA v9.00 ofrece un único proyecto VBA que incluye todas las clases de todos los módulos
compatibles con VBA. Independientemente de los módulos que estén disponibles en el ERP, existe solo un proyecto
que ofrece todas las funcionalidades.
Macros
Una macro corresponde a una subrutina VBA pública sin cualquier parámetro. Normalmente deben definirse
en “Class Modules” y servirán como punto de entrada para una determinada funcionalidad disponible en el
proyecto.
IDE de VBA ofrece un diálogo propio que ayuda al usuario a trabajar con este tipo de código VBA.
Pg 31
Este diálogo enumera todas las macros disponibles en un proyecto, permitiendo que el usuario las edite,
elimine o ejecute.
PKB
Clases
Todos los proyectos VBA asociados a las aplicaciones PRIMAVERA ofrecen de base un conjunto de clases
que permiten extender las principales funcionalidades de esta aplicación.
Estas clases pueden reconocerse en el “project explorer” de VBA, en el primer nodo:
¿Cómo crear una Macro?
Todos los objetos
disponibles en un
único proyecto
Pg 32
Por lo general, en cada área están disponibles tres tipos de clases:
• Fichas (p. ej.:: FichaArtigos): están asociadas al mantenimiento de las principales tablas de la aplicación;
• Editores (p. ej.:EditorVendas): están asociadas a funcionalidades de edición de documentos o cálculos; • Otras (p. ej.:Empresa).
Eventos
Conceptualmente, un evento corresponde a una acción reconocida por uno de los objetos del proyecto – por
ejemplo, pulsar una tecla o seleccionar un botón – y para la que se puede producir código como respuesta.
Un evento puede desencadenarse a través del sistema, como resultado de una acción del usuario o a partir
de código.
El proyecto VBA ofrece un conjunto de eventos de sistema asociados a cada una de las clases descritas
antes. Estos eventos serán el punto de partida para personalizar la solución ofrecida por PRIMAVERA.
Los siguientes ejemplos muestran algunos usos posibles de los eventos de sistema para modificar el
comportamiento de la aplicación:
• Siempre que se edita un cliente en el mantenimiento correspondiente se desencadenará un evento. Este evento puede, por ejemplo, usarse para escribir código que modifique algunas de las propiedades del cliente según otros datos del sistema;
• Cuando se identifica un artículo en las líneas de un documento de venta, el evento correspondiente podrá implementar reglas de negocio adicionales no implementadas en el área de Logística & Tesorería.
Mantenimientos de las Tablas Base
Cada formulario de mantenimiento de las tablas base de las aplicaciones PRIMAVERA tiene una clase VBA
asociada. Estas clases ofrecen un conjunto de eventos estándar:
AntesDeAnular Desencadenado inmediatamente antes de anular el registro activo.
AntesDeEditar Desencadenado antes de editar un registro nuevo o un registro existente.
AntesDeGravar Inmediatamente antes de guardar el registro activo.
DepoisDeAnular Desencadenado inmediatamente después de anular un registro.
DepoisDeEditar Inmediatamente después de editar un registro.
DepoisDeGravar Inmediatamente después de guardar un registro.
TeclaPressionada Desencadenado siempre que se pulsa una tecla.
AntesDeCriar Desencadenado cuando se abre un nuevo mantenimiento.
Pg 33
Editores
Los eventos disponibles en las operaciones de edición de documentos o cálculo dependen de cada caso en
particular.
Como ejemplo, la clase EditorVendas (asociada al formulario de edición de documentos de venta del Módulo
de Ventas) ofrece los siguientes eventos:
AntesDeAnular Antes de iniciar a anulação do documento. Antes de iniciar la anulación del documento.
AntesDeDuplicar Antes de duplicar un documento.
AntesDeEditar Antes de editar un documento.
AntesDeGravar Antes de guardar el documento actual.
AntesDeImprimir Antes de imprimir el documento actual.
AntesDeIntegrar Antes de integrar/guardar en la Base de Datos después de mostrar la ventana de conexión a la Contabilidad o Tesorería.
AntesDeProcessar Antes de mostrar la ventana de conexión a la contabilidad o Tesorería.
ArmazemIdentificado Momento en el que el almacén de un artículo se identifica.
ArtigoInexistente Después de seleccionar un artículo inexistente.
ArtigoIdentificado Después de seleccionar el artículo en una línea del documento.
ClienteIdentificado Después de seleccionar el cliente asociado al documento.
DepoisDeAnular Después de anular un documento.
DepoisDeDuplicar Después de duplicar un documento.
DepoisDeEditar Después de editar un documento.
Los eventos AntesDe
permiten cancelar la
operación
Pg 34
DepoisDeGravar Después de guardar un documento.
DepoisDeImprimir Después de imprimir un documento.
DepoisDeIntegrar Después de integrar/guardar en la Base de Datos.
DespoisDeTransformar
Después de la confirmación de la transformación de documento y de introducidos los datos en el editor.
LinhaEspIdentificada Después de introducir una línea especial en el documento.
ObraIdentificada Después de indicar la obra/concurso relativo a un artículo.
TeclaPressionada Siempre que se pulsa alguna tecla.
ValidaLinha Al validar cada una de las líneas del documento.
ErroAoGravar Desencadenado cuando ocurre un error al guardar.
TipoDocumentoIdentificado
Cuando se identifica el tipo de documento.
Objetos
En cada una de las clases de sistema, además de los eventos correspondientes, el proyecto VBA también
ofrece objetos que permiten acceder y usar los datos asociados al formulario/funcionalidad correspondiente.
Puede accederse a estos objetos usando el identificador Me:
Aplicacao
El objeto Aplicacao ofrece un conjunto de propiedades relacionadas con la aplicación asociada al proyecto
VBA:
MotorERP Motor de la aplicación.
DescricaoVersao Descripción de la versión de la aplicación.
Empresa Datos de la empresa activa.
Instancia Instancia PRIMAVERA activa.
TipoPlataforma Versión de la Plataforma PRIMAVERA.
Usuario Datos del usuario activo.
Pg 35
Plataforma PRIMAVERA
Las principales funcionalidades de la Plataforma PRIMAVERA y de su motor (ver StdPlatBS) están
disponibles a través de este objeto. Se trata de un subconjunto de los mismos métodos usados por las
aplicaciones para:
• Usar campos de usuario;
• Ejecutar formularios de usuario;
• Formatear consultas SQL;
• Etc.
PKB
VBE Modelo de objetos de VBA.
VersaoVBA Versión de VBA.
Visual Basic for Applications (VBA)
Pg 36
Campos y Tablas de Usuario El ERP PRIMAVERA permite crear campos adicionales en las tablas del sistema. Esta funcionalidad permite
mantener otros datos – no compatibles con la solución estándar – de cualquier entidad (clientes,
proveedores, trabajadores, etc.), tablas auxiliares o tablas de documentos o movimientos.
El Administrador PRIMAVERA ofrece un asistente para facilitar la creación de nuevos campos de usuario.
Pg 37
Inmediatamente después de instalar el sistema PRIMAVERA, estarán disponibles campos de usuario en las principales
entidades (artículos, clientes, proveedores, etc.).
Pg 38
Pg 39
Atención
El nombre físico de los campos de usuario debe empezar por el prefijo “CDU_” para que el sistema los reconozca correctamente.
Pg 40
Campos de Usuario en las Aplicaciones
La utilización de los campos de usuario creados se realiza dentro de las propias aplicaciones.
La forma cómo se efectúe esta utilización dependerá de la complejidad de la tabla.
Campos de Usuario en Mantenimientos con Pestañas
En los mantenimientos más complejos que incluyan pestañas (páginas de edición de los diversos campos),
los campos de usuario podrán editarse directamente en el formulario a través de una pestaña creada
automáticamente para ello.
Campos de Usuario en Mantenimientos sin Pestañas
En las tablas más sencillas (sin pestañas), la edición de campos de usuario está disponible en un formulario
independiente, al que se accede a través del botón “Contexto” de la base de herramientas.
Pg 41
Campos de Usuario en Documentos
Dada la especificidad de las ventanas de edición de documentos o de movimientos, los campos de usuario
asociados (al encabezado o a las líneas) también estará disponible en un formulario independiente.
Pg 42
En cualquiera de los casos anteriores, la edición de los campos de usuario puede modificarse según las necesidades
del usuario, a través de la creación de Pestañas de Usuario y de la asociación de código VBA para implementar reglas
de negocio más complejas.
Pg 43
Tablas de Usuario
Las tablas de usuario permiten, tal y como los Campos de Usuario, extender una base de datos PRIMAVERA
para que sea compatible con el mantenimiento de datos adicionales – otras entidades – no disponibles en la
solución estándar.
Una Tabla de Usuario es un conjunto de Campos de Usuario no asociados a ninguna de las tablas del
sistema.
Para crear una nueva TDU debe utilizarse el mismo asistente disponible en el Administrador, indicando el
nombre de la tabla, los campos de usuario disponibles y las aplicaciones en la que estará disponible la nueva
tabla.
Atención
Después de crear una tabla de usuario en una base de datos PRIMAVERA, si ésta obedece a las reglas
mencionadas, estará inmediatamente disponible en las aplicaciones correspondientes y podrá accederse a
ella a través de la opción “Tablas de Usuario” en el menú “Herramientas”.
PKB
El nombre físico de los campos de usuario debe empezar por el prefijo “CDU_” para que el sistema los reconozca correctamente.
Campos de Usuario
Tablas de Usuario
Pg 44
Pestañas y Formularios de Usuario
Pestañas de Usuario
Las Pestañas de Usuario (SDU) permiten modificar la interfaz estándar de edición de campos de usuario y
asociar código VBA al mantenimiento de los campos de usuario de cualquier entidad de las aplicaciones.
Después de definir la primera pestaña de usuario en una tabla de la aplicación, la pestaña estándar automática de
edición descrita antes desaparecerá y dará lugar a las pestañas definidas por el usuario.
Para crear una Pestaña de Usuario:
1. Seleccionar la opción “Pestañas de Usuario” en el menú “Herramientas” del ERP en el que se
desea crear la pestaña de usuario. Se abrirá el entorno de desarrollo VBA que ayudará al usuario en la edición de la pestaña (en el caso de que la barra de herramientas PRIMAVERA no esté visible, deberá hacerse visible):
Pg 45
2. Seleccionar la entidad para la que se desea crear la pestaña. En el menú de contexto, seleccionar “New” (en este ejemplo se ha escogido la entidad “Tablas - Clientes”). Se creará un nuevo formulario vacío:
Pg 46
3. Configurar las propiedades de la pestaña:
4. Diseñar la pestaña, adicionando los campos de usuario asociados a la entidad y otros controles:
El entorno VBA permite añadir cualquier control de terceros con licencia (fabricantes de controles para VBA). Existen
índices de controles disponibles en la web. En estos sitios web podrán encontrarse controles para efectuar virtualmente
cualquier tipo de operación en las pestañas de usuario.
Pg 47
5. A continuación, puede introducirse el código específico para implementar reglas de negocio específicas:
La solución PRIMAVERA ofrece el entorno VBA configurado para ser compatible con las entidades lógicas PRIMAVERA
(campos de usuario, pestañas de usuario, etc.).
Del mismo modo, en cada pestaña están disponibles diversos eventos que le permiten programar el funcionamiento de
la pestaña de una forma simplificada.
6. Guardar el proyecto VBA y volver al ERP PRIMAVERA.
Pg 48
Formularios de Usuario
Los Formularios de Usuario (FDU) corresponden a formularios (o forms) desarrollados en el ámbito del
proyecto VBA asociado a cada aplicación.
A diferencia de las Pestañas de Usuario, no están asociados a ninguna de las tablas del sistema, por lo que
se pueden usar para implementar otras funcionalidades, como por ejemplo:
• Edición de tablas de usuario; • Edición de tablas almacenadas en bases de datos externas al sistema PRIMAVERA; • Implementación de reglas de negocio específicas sin conexión a la base de datos.
En términos prácticos un FDU corresponde directamente a un “User Form” de VBA. Sin embargo, este
concepto permite la extensión de la solución PRIMAVERA de una forma más integrada, ya que permite
asociar cada FDU a una función de usuario y así mostrar el formulario al usuario:
• En los menús de la aplicación (a través del concepto de Menús de Usuario); • A partir del Navegador (creando accesos directos a los menús de la aplicación); • A partir del proyecto VBA, usando los objetos disponibles a través de la Plataforma PRIMAVERA.
Pg 49
Para crear un Formulario de Usuario:
1. Seleccionar la opción “Formularios de Usuario” del menú “Herramientas” del ERP. Se abrirá el entorno de desarrollo VBA para ayudar al usuario a editar el formulario;
2. Activar la barra de herramientas “Formularios”. En el menú de contexto, seleccionar “Nuevo Formulario”. Se creará un nuevo formulario vacío:
3. Configurar las propiedades del formulario;
4. Diseñar el formulario añadiendo los controles necesarios:
Pg 50
5. A continuación, puede introducirse el código específico para implementar reglas de negocio específicas:
Pg 51
6. Guardar el proyecto VBA y volver a la aplicación PRIMAVERA.
A partir de este momento, el nuevo formulario está disponible para asociarlo a una Función de Usuario.
PKB
Funciones de Usuario Una Función de Usuario (XDU) corresponde a una determinada acción – ejecutada por el sistema
PRIMAVERA – que implementa una determinada regla de negocio.
Este nuevo concepto – central en las aplicaciones a partir de la versión 6.0 – permite extender la solución
PRIMAVERA para garantizar todas las reglas de negocio específicas de cada empresa. Por ejemplo:
• Envío de mensajes de correo electrónico o SMS personalizados para cada empresa; • Ejecución de procedimientos almacenados o consultas en la base de datos de la empresa; • Ejecución de formularios de usuario o macros VBA; • Exportación y envío por correo electrónico de informes de usuario; • Ejecutar otras utilidades externas o documentos.
La Plataforma PRIMAVERA ofrece los siguientes tipos de Funciones de Usuario:
Email Para el envío de mensajes de correo electrónico.
SMS Para el envío de mensajes SMS.
Aplicación Externa Para la ejecución de aplicaciones o documentos externos.
Macro VBA Para la ejecución de macros definidas en el proyecto VBA de la empresa.
Formulario de Usuario Para la ejecución de Formularios de Usuario.
Informe de Usuario Para la exportación y envío por correo electrónico de informes de usuario.
Procedimiento almacenado
Para la ejecución de procedimientos almacenados existentes en la base de datos de la empresa.
Función definida por el usuario
Para la ejecución de funciones definidas por el usuario existentes en la base de datos de la empresa (disponible solo en SQL Server 2000 o
Pestañas de Usuario
Formularios de Usuario
Pg 52
superior).
Consulta SQL Para la ejecución de consultas SQL ad-hoc.
Dependiendo del tipo, cada Función de Usuario permite definir:
• Parámetros de entrada: que permiten hacerla dinámica y adaptable a diversas situaciones idénticas;
• Resultados: en forma de valores discretos (numéricos o alfanuméricos), listas de valores o listas de registros.
Los siguientes tópicos analizan la creación de cada uno de los tipos de funciones de usuario disponibles, la
definición de parámetros y de sus resultados, así como su ejecución en las aplicaciones PRIMAVERA.
El concepto de Función de Usuario sirve como base a la implementación de Menús y Procesos de Usuario.
Ejemplos de Funciones de Usuario
Mensaje de E-mail
Para crear una Función de usuario para enviar mensajes de correo electrónico, deben seguirse los siguientes
pasos:
1. Seleccionar la opción “Funciones de Usuario” del menú “Herramientas” del ERP;
2. La siguiente ventana muestra todas las funciones de usuario disponibles en el sistema. Seleccionar “Nueva...”
Pg 53
3. En la siguiente ventana puede definir las propiedades de la función de usuario. En la primera página introducir el nombre de la función, seleccionar el tipo “E-mail” e introducir una descripción más detallada:
4. En la pestaña “Definición” debe configurarse el mensaje:
Campo Descripción
Nombre Nombre de la Función
Tipo de Función Tipo de Función
Activa Si está activa, la función puede ejecutarse
Pg 54
5. Seleccionar “Confirmar”.
Con este ejemplo se obtendría una Función de Usuario que permitiría el envío de un mensaje electrónico al
destino “[email protected]”. Esta función podría ejecutarse en el ERP PRIMAVERA a
partir de la ventana de funciones de usuario, de un menú de usuario o de un acceso directo en el Navegador.
Campo Descripción
Para Destinos del mensaje Asunto Asunto del mensaje Mensaje Contenido del mensaje Adjuntos Posibilidad de adjuntar archivos
Pg 55
Sin embargo, una XDU de este tipo no sería de gran utilidad porque solo permitiría enviar un correo
electrónico a uno o varios destinos fijos.
La Plataforma PRIMAVERA permite que este concepto se extienda a través de la definición de parámetros.
De este modo, una misma función de usuario podrá usarse para enviar avisos de vencimiento a cualquier
cliente.
Definición de Parámetros:
En las funciones de usuario de tipo E-mail, el usuario debe establecer los parámetros, en cualquiera de los
campos de la definición, usando una sintaxis particular (@@NombreDelParametro@@).
Volviendo al ejemplo anterior, suponiendo que se pretendía que la función de usuario permitiera:
• Enviar avisos de vencimiento a cualquier cliente; • Adaptar el contenido del mensaje a cada caso; • Su ejecución independientemente de la empresa de trabajo.
Para alcanzar estos objetivos, la definición anterior podría modificarse de la siguiente forma:
Pg 56
A medida que el usuario define los parámetros usando la sintaxis esperada, la aplicación efectuará su
reconocimiento y estos se mostrarán en la página “Parámetros/Resultado”:
Parámetros que definen
el destino del mensaje.
Parámetro que se
adaptará al nombre de
la empresa de trabajo
Extracto del cliente
Pg 57
En este punto pueden definirse todas las características de cada uno de los parámetros de la Función de Usuario (tipo
de datos, valor por defecto, lista de valores, etc.). Para más información, consultar la sección “Parámetros”.
Parámetros definidos
por el usuario
Valores asociados
Pg 58
Definición del Resultado:
Las funciones del tipo “E-mail” no permiten definir resultados de su ejecución.
Aplicación Externa
Para crear una Función de Usuario que permita la ejecución de aplicaciones o documentos externos a la
solución PRIMAVERA deben seguirse los siguientes pasos:
1. Seleccionar la opción “Funciones de Usuario” del menú “Herramientas” del ERP;
2. La siguiente ventana muestra todas las funciones de usuario disponibles en el sistema. Seleccionar “Nueva...”;
3. En la siguiente ventana puede definir las propiedades de la función de usuario. En la primera página introducir el nombre de la función, seleccionar el tipo “Aplicación Externa” e introducir una descripción más detallada:
4. En la página “Definición” debe indicarse la ubicación de la aplicación externa:
Pg 59
Campo Descripción
Comando Ubicación de la Aplicación Parámetros Parámetros Dir. Inicial Directorio Inicial Ejecutar (Ventana) Estado inicial de la ventana
5. Seleccionar “Confirmar”.
Definición de Parámetros:
El usuario puede personalizar la ejecución de aplicaciones externas.
El ejemplo anterior podría configurarse para permitir la apertura dinámica de hojas de cálculo:
Pg 60
Definición del Resultado:
La ejecución de aplicaciones externas permite definir la gestión que se desea realizar del resultado.
Puede indicar dos tipos de resultado:
• Ninguno: el motor de ejecución no gestionará el resultado de la ejecución; • Entero: la aplicación ejecutada producirá un “exit code” que el motor gestionará al final de
la ejecución.
Macro VBA
Para crear una Función de Usuario para ejecutar macros definidas en el proyecto VBA deben seguirse los
siguientes pasos:
1. Seleccionar la opción “Funciones de Usuario” del menú “Herramientas” del ERP;
2. La siguiente ventana muestra todas las funciones de usuario disponibles en el sistema. Seleccionar “Nueva...”;
Definición del resultado de
ejecución de la Función de
Usuario
Pg 61
3. En la siguiente ventana puede definir las propiedades de la función de usuario. En la primera página introducir el nombre de la función, seleccionar el tipo “Macro VBA” e introducir una descripción más detallada:
4. En la página “Definición” seleccionar la macro a ejecutar:
5. Seleccionar “Confirmar”.
Proyecto VBA
Lista de macros
disponibles en el proyecto
VBA actual
Pg 62
Atención
Definición de Parámetros:
La macro seleccionada definirá los parámetros de la función:
Esta Macro tiene en su código VBA como parámetro de entrada la variable Usuario de tipo String.
Definición del Resultado:
El resultado de la función de usuario también se determinará a través de la definición de la macro. El valor
que esta Macro devuelve es un Booleano.
Consulta SQL
Para crear una Función de Usuario para ejecutar consultas SQL deben seguirse los siguientes pasos:
1. Seleccionar la opción “Funciones de Usuario” del menú “Herramientas” del ERP;
La definición de las macros debe efectuarse previamente en el proyecto VBA de la aplicación o en proyecto compartido (entre todas
las aplicaciones).
En la lista de macros se incluirán todas las macros (procedimientos sin parámetros o resultados), los procedimientos públicos (con o
sin parámetros) y las funciones públicas (con o sin parámetros) definidos en el proyecto VBA de la aplicación o en el proyecto común
de la empresa activa.
Pg 63
2. La siguiente ventana muestra todas las funciones de usuario disponibles en el sistema. Seleccionar “Nueva...”;
3. En la siguiente ventana puede definir las propiedades de la función de usuario. En la primera página introducir el nombre de la función, seleccionar el tipo “Query SQL” e introducir una descripción más detallada:
4. En la página “Definición” seleccionar la consulta SQL a ejecutar:
Comprobar la sintaxis de
la instrucción SQL
Instrucción SQL a ejecutar
Pg 64
5. Seleccionar “Confirmar”.
Definición de Parámetros:
Los parámetros de la Función de Usuario pueden definirse según la sintaxis descrita anteriormente:
Definición del Resultado:
El resultado de la Función de Usuario debe definirlo el usuario.
La forma como el motor de ejecución interpreta el recordset resultante de la consulta SQL depende del tipo
de resultado seleccionado por el usuario:
• Ninguno: la consulta SQL no devuelve ningún resultado; • Texto, Entero, Numérico, Fecha, Booleano: la consulta devuelve un recordset con solo un
registro y una sola columna, que se debe interpretar según el tipo de datos seleccionado;
Pg 65
• Lista de registros: la consulta devuelve un recordset con diversos registros y diversas columnas.
Parámetros
Cada parámetro de una función de usuario tiene asociada la siguiente información:
• Nombre: define un identificador único para cada función; • Tipo de Datos: define el intervalo de posibles valores; • Tamaño: define (para los tipos de datos en los que importa) el tamaño máximo del valor; • Obligatorio: define si el parámetro es necesario para ejecutar la función; • Valor: define el valor discreto asociado a cada parámetro en el momento de ejecutar la
función.
Los siguientes tipos de datos son compatibles:
• Texto (p. ej.: “F0001”); • Entero (p. ej.: 120); • Numérico (p. ej.: 120,58); • Fecha (p. ej.: 12-12-1973); • Booleano (p. ej.: "Verdadero").
Normalmente, para que una función de usuario se pueda ejecutar correctamente, el valor correspondiente a
cada uno de los parámetros obligatorios deberá definirse en el momento de ejecución. Sin embargo, el
módulo de configuración de Funciones de Usuario permite definir el valor por defecto, los posibles valores o
efectuar el cálculo del valor como resultado de expresiones.
Valor Fijo
En este caso, se asignará al parámetro seleccionado un valor discreto que el usuario puede o no modificar
después en el momento de ejecución de la función.
Seleccionando esta opción, el
usuario podrá modificar el
valor en el momento de la
ejecución
Pg 66
Lista de Valores Fijos
También se puede definir una lista de posibles valores fijos para el parámetro seleccionado. En este caso,
inmediatamente antes de que se ejecute la función, el usuario podrá seleccionar el valor de la lista.
Pg 67
Lista definida a través de una Consulta SQL
También se puede definir la lista de posibles valores a partir de una consulta ejecutada en la base de datos
inmediatamente antes de ejecutar la función de usuario:
Lista de valores fijos
Valor por defecto
Posibles valores
Permitir o no que el
usuario introduzca un valor
que no esté en la lista
Pg 68
La consulta SQL también se puede editar manualmente:
Finalmente, hay que indicar el campo de la consulta que se debe usar para determinar el valor del parámetro
y otras opciones:
Tabla
Campos a incluir en la
consulta SQL
Consulta SQL usada para
rellenar la lista de posibles
valores
Pg 69
Fórmula
En este caso el valor del parámetro lo determinará el resultado de la ejecución de una fórmula.
El valor resultante de la expresión se determinará inmediatamente antes de que se ejecute la función. La
expresión puede incluir:
• Operadores (p. ej.: +);
• Campos dependientes del contexto (p. ej.: %%UTILADMIN%%);
• Funciones (p. ej.: IIF).
La Plataforma ofrece los siguientes tipos de campos:
Permitir o no que el
usuario introduzca un
valor que no esté en la
lista
Campo a usar para
determinar el valor del
parámetro
Valor por defecto
Lista de todas las
funciones de usuario cuyo
resultado sea compatible
con el tipo de datos del
parámetro
Pg 70
Empresa Valores dependientes de la empresa activa (Código, Nombre, etc.).
Aplicación Valores dependientes de la aplicación activa (Abreviatura, Nombre, etc.).
Usuario Valores dependientes del usuario activo (Usuario, Nombre, etc.).
Perfil Valores dependientes de los perfiles del usuario (Perfil y Descripción).
Base de Datos Valores dependientes de la base de datos activa (Nombre y Servidor).
También son compatibles los siguientes tipos de funciones:
Conversión Funciones de conversión de datos (p. ej.: Asc).
Fecha/Tiempo Funciones sobre fechas o tiempo (p. ej.: DateSerial).
Genéricas Funciones genéricas (p. ej.: IIF).
Matemáticas Funciones matemáticas (p. ej.: Power).
Texto Funciones de texto (p. ej.: UCase).
Atención
Función
En este caso el valor del parámetro lo determinará el resultado de la ejecución de otra función de usuario.
Las funciones de usuario que tengan parámetros definidos de este modo, desencadenarán la ejecución de
todas las funciones del usuario dependientes, inmediatamente antes de su propia ejecución.
La expresión/fórmula asociada al valor del parámetro deberá respetar la sintaxis VBScript.
Los campos de contexto se identifican con la sintaxis @@NombreDelCampo@@.
Pg 71
Ejecución
Una función de usuario puede ejecutarse (botón "Ejecutar"):
• A partir del formulario de configuración de funciones:
• Como resultado de un menú de usuario;
• A partir del Navegador;
• Como consecuencia de la ejecución de un proceso de usuario.
Exceptuando el último caso mencionado, la ejecución de la función de usuario se realizará inmediatamente,
interactuando con el usuario para:
• Solicitarle los valores de todos los parámetros (no definidos completamente en la
configuración);
• Mostrarle los resultados (si aplicable).
Ejemplo
Para ejemplificar este comportamiento consideremos la definición de una función de usuario con las
siguientes características:
1. Se pretende obtener una lista con los clientes que tengan un volumen de ventas superior a un determinado valor en un determinado mes;
2. Para este efecto, se ha definido un procedimiento almacenado – TopClientes – en la base de datos con dos parámetros: el mes del que se desea obtener la lista de clientes y el valor mínimo de ventas a considerar;
3. También se pretende que el resultado se muestre al usuario.
Pg 72
La definición de la función de usuario sería la siguiente:
Pg 73
Inmediatamente antes de la ejecución de la función, se le pedirían al usuario todos los parámetros, en un
formulario idéntico al siguiente:
Pg 74
El resultado de la función – en este caso, una lista de registros, se mostrará al usuario:
Pg 75
El envío de mensajes SMS se efectúa asíncronamente. Es decir, siempre que se ejecuta una función de usuario de tipo
“SMS”, el mensaje correspondiente se colocará en una cola de espera para enviar. El envío se realizará a través de la
aplicación “Gestión de Procesos PRIMAVERA” según el calendario de ejecución definido.
PKB
Funciones de Usuario
Pg 76
Menús de Usuario Esta herramienta permite extender los menús de cualquier aplicación PRIMAVERA, añadiendo nuevos
comandos asociados a funciones de usuario que ejecutan determinadas acciones cuando el usuario los
selecciona.
El usuario puede crear un nuevo submenú y éste aparece inmediatamente en el área de Menús de Usuario
del ERP. Puede configurar otros submenús y comandos.
Ningún menú de usuario
Pg 77
Cada uno de los comandos – los elementos de menú que ejecutan algo cuando están seleccionados – se
asociarán a una función del usuario (responsable por la ejecución).
Para crear un Submenú
1. Seleccionar “Menús de Usuario” en el menú “Herramientas” del ERP. Se abrirá el formulario de configuración de los menús de usuario:
Pg 78
2. Seleccionar el submenú en el que se desea crear el nuevo submenú y seleccionar “Submenú”;
3. En la siguiente ventana introducir el título del submenú y la “tooltip” asociada:
4. Seleccionar “Confirmar” para volver al formulario inicial.
Puede modificarse el título del menú “Otros”, seleccionando el nodo correspondiente en la ventana anterior y
seleccionando “Propiedades”.
Después de definir los menús de usuario hay que acceder al Administrador para definir los permisos de acceso. Hasta
aquí, solo tendrán acceso a los nuevos menús los administradores de sistema.
Puede reorganizarse el orden de los elementos de cada submenú utilizando las flechas disponibles en la ventana.
Para crear un Comando
1. Seleccionar el submenú en el que se desea crear el nuevo comando y seleccionar “Comando”
Pg 79
2. En la ventana siguiente introducir el título del comando, la "tooltip" asociada y la función del usuario a ejecutar:
Pg 80
La función de usuario puede recibir parámetros y producir un resultado.
Cuando el usuario selecciona un determinado comando, se le solicitan todos los parámetros necesarios antes de la
ejecución. Después de ejecutar la función será mostrado el resultado correspondiente (si existe).
3. Seleccionar “Confirmar” para volver al formulario inicial
El botón “Propiedades” permite editar el elemento seleccionado, el botón “Anular” permite eliminar el
elemento seleccionado.
Pg 81
PKB
Menús de Usuario
Menú de usuario con el
comando creado
Pg 82
Procesos de Usuario
Los Procesos de Usuario (PDU) complementan las Funciones de Usuario, permitiendo la ejecución
programada de secuencias de acciones (funciones) en un servidor, sin intervención del usuario.
Usando este mecanismo, el usuario tiene a su disposición una herramienta de automatización de tareas
repetitivas, capaz de implementar reglas de negocio específicas.
Para ilustrar este concepto, consideremos los siguientes ejemplos de tareas programables como Procesos de
Usuario:
• Pedidos automáticos: control de todos los artículos en ruptura de stock y consecuente
creación de pedidos automáticos;
• Notificaciones por Email: envío de mensajes de notificación siempre que determinada
condición/evento ocurra (p. ej.: creación de un nuevo cliente, venta de un determinado
producto, inicio de sesión de determinado usuario);
• Publicación de informes de ventas: envío periódico de informes de gestión para la fuerza
de ventas.
Además de complementar el concepto de Función de Usuario, un Proceso de Usuario extiende la solución
PRIMAVERA porque proporciona una herramienta de implementación alternativa a VBA. Aunque este último
se pueda usar para implementar procesos de negocio bastante complejos, los Procesos de Usuario facilitan
casi siempre esta tarea:
• Porque el entorno de configuración no exige conocimientos de programación es más
accesible a usuarios con menos experiencia;
• Porque ofrecen un entorno de ejecución programada en un servidor autónomo y
escalable (con los recursos adecuados);
• Porque se ejecutan sin que sea necesaria la intervención del usuario;
• Porque incluyen mecanismos básicos de “workflow”.
Conceptualmente un Proceso de Usuario consiste en:
• Uno o más pasos (en los que cada uno corresponde a una Función de Usuario)
ejecutados de forma secuencial;
• Cero o más condiciones que permiten adaptar la ejecución del proceso a través del
resultado de cada uno de los pasos;
• La definición de los parámetros de entrada y de los resultados de cada uno de los pasos
(encadenados entre sí);
• Un calendario que define el momento de ejecución;
• Un conjunto de otras propiedades (notificaciones, gestión de errores, descripciones, etc.)
que permiten configurar su comportamiento.
Pg 83
Atención
Entorno de Configuración
El entorno de configuración de los Procesos de Usuario está disponible en el menú “Herramientas”.
Seleccionando esta opción en el menú principal, el usuario podrá acceder a la ventana de definición de los
Procesos de Usuario. Este formulario permite crear nuevos procesos, así como ejecutar, modificar, duplicar o
eliminar los existentes.
Para crear un nuevo proceso bastará con seleccionar la opción “Nuevo...”. De esta forma, surge el entorno de
configuración asistida.
El uso de funciones de usuario en procesos de usuario está sujeto a las siguientes limitaciones:
(1) Macro VBA – solo se pueden usar funciones de este tipo si éstas apuntan a macros definidas en el proyecto del ERP;
(2) Informes de usuario – solo se pueden usar funciones de este tipo si están configuradas para enviar el informe por email o
exportar a un directorio en el disco.
Pg 84
Este entorno es muy visual y sus principales características son:
• Barra de herramientas: incluye un conjunto de opciones para guardar, configurar y
ejecutar el proceso de usuario;
• “Toolbox”: incluye los elementos necesarios para crear nuevos pasos o condiciones al
proceso;
• Área de diseño: área visual que permite configurar los pasos y el flujo de ejecución del
proceso;
• Estado de ejecución: registro de ejecuciones del proceso;
• “Inicio del Proceso”: estado inicial del proceso (permite acceder a sus propiedades);
• “Fin del Proceso”: estado final del proceso (marca el final de la ejecución).
El principal componente del entorno es el área de diseño, en la que se efectuarán todas las configuraciones
del proceso. Pueden crearse nuevos pasos o condiciones arrastrando el elemento correspondiente hasta el
área en blanco. Puede modificarse cada uno de los elementos usando la opción “Propiedades”, en el menú
de contexto. Y puede modificarse el flujo de ejecución enlazando cada paso y condición.
Pg 85
Para definir las principales propiedades del Proceso
1. Seleccionar el elemento “Inicio del Proceso”;
2. En el menú de contexto, seleccionar “Propiedades”.
Podrá accederse al formulario de propiedades del Proceso de Usuario:
Opción para permitir la
ejecución programada del
proceso
Nombre y descripción del
proceso
Notificaciones automáticas
durante la ejecución
Definición del calendario
de ejecución
Pg 86
Definición de Pasos
Después de definir las principales propiedades del proceso, el siguiente paso debe ser la definición de los
pasos que lo forman. Para ilustrar este procedimiento consideraremos de nuevo el ejemplo de pedidos
automáticos. Las condiciones son las siguientes:
• Existen en la base de datos dos procedimientos almacenados (RupturaStockA1 y
EncomendasAuto);
• El primer procedimiento no exige ningún parámetro y devuelve un valor numérico que
corresponde al número de unidades necesarias para reponer el stock del artículo A1;
• El segundo procedimiento acepta dos parámetros – el código de artículo y el número de
unidades a pedir – y realiza un pedido al proveedor de ese artículo.
Para crear un proceso de usuario que automatice este procedimiento deberían seguirse los siguientes pasos:
1. Seleccionar la opción “Procesos de Usuario” en el menú “Herramientas” del ERP;
2. Seleccionar “Nuevo”;
3. Seleccionar el nodo “Inicio del Proceso” y seleccionar “Propiedades” en el menú de contexto;
4. Definir las principales propiedades del proceso:
5. Activar la página “Planificación”, activar “Ejecutar Periódicamente” y seleccionar “Editar”:
Pg 87
6. Definir el calendario del proceso y seleccionar “Aceptar”;
7. De nuevo en la ventana de propiedades, seleccionar “Aceptar”;
8. En la "toolbox", seleccionar el elemento “Procedimiento almacenado” y arrastrarlo al área de diseño (se creará un nuevo paso y la ventana de propiedades de este paso se abrirá automáticamente);
9. Introducir el nombre y la descripción del nuevo paso:
10. Seleccionar la opción de creación de una nueva función de usuario;
11. Definir las propiedades de la función de usuario y confirmar:
Este comando permite
crear una nueva función
de usuario
Pg 88
Pg 89
12. En las propiedades del paso, seleccionar la función que se acaba de crear:
13. La página “Configuración” indica los parámetros y el resultado del paso (a partir de la definición de la Función de Usuario). Seleccionar “Aceptar” (se creará un nuevo nodo en el área de diseño del proceso correspondiente al nuevo paso):
Pg 90
14. Crear un nuevo paso correspondiente a la ejecución del segundo procedimiento almacenado:
Pg 91
Pg 92
15. Deben definirse los parámetros del segundo paso de la siguiente forma:
Pg 93
16. A continuación, definir el flujo de ejecución enlazando los varios nodos entre sí:
17. Guardar el Proceso de Usuario.
Definición de Condiciones
Una herramienta fundamental para que los Procesos de Usuario se adapten mejor a cada situación está
relacionada con la definición de condiciones que modifican el flujo de ejecución a través de determinados
criterios.
Imaginar el siguiente ejemplo:
• Se pretende implementar un proceso de análisis de ventas capaz de efectuar el cálculo
de primas (en el caso de que las ventas superen el valor del presupuesto) o enviar
notificaciones (en el caso contrario);
• Existe un paso – implementado como un procedimiento almacenado – que compara el
valor de las ventas con el valor presupuestado. Devuelve 0 si está por debajo del
presupuesto o 1 en el caso contrario;
• Este proceso ejecutará el segundo paso dependiendo del primero (el análisis de ventas).
La definición del Proceso sería idéntica a la siguiente:
Flechas de flujo de
ejecución
Pg 94
Este ejemplo ilustra el uso de una condición para adaptar el mismo proceso a dos situaciones distintas.
La definición de la condición sería la siguiente:
Pg 95
Definición de Parámetros y Resultados
La definición de los parámetros y resultados de cada uno de los pasos de un proceso es idéntico al que se
debe efectuar en las Funciones de Usuario.
Defecto El valor del parámetro dependerá de la definición en la Función de Usuario asociada al paso.
Fórmula El valor se calculará con base a una fórmula.
Función El valor se determinará a través del resultado de una determinada función de usuario.
Resultado del paso anterior
El valor se determina a través del resultado del paso anterior.
Valor fijo El usuario debe definir el valor que será fijo en todas las ejecuciones del proceso.
El resultado del paso se determina siempre a través de la definición de la función de usuario asociada.
Los tipos de valores asociados a los parámetros dependerán del tipo de datos del parámetro y de los demás pasos
definidos. Por ejemplo, en el caso de que no exista ningún paso que devuelva un valor de tipo “Entero”, no se podrá
definir, para un parámetro de este tipo, un valor “Resultado del paso anterior”.
Definición del paso
anterior a la condición
Acciones dependientes del
resultado de la condición
Condición a aplicar al
resultado del paso anterior
Pg 96
Entorno de Ejecución
Los Procesos de Usuario se ejecutan normalmente a través de la aplicación Gestión de Procesos
PRIMAVERA en una máquina configurada como servidor.
Su ejecución se realizará, según el calendario definido, cuando el servidor esté disponible (por ejemplo,
cuando haya terminado la ejecución de otro proceso o el envío de mensajes SMS).
A efectos de las pruebas, puede ejecutarse un proceso de usuario a partir del entorno de configuración
(descrito en los puntos anteriores).
Por último, un proceso puede ejecutarse de forma explícita, a petición de un usuario, a partir de un acceso
directo configurado en el Navegador. En este caso, su calendario se ignorará y el proceso se ejecutará
inmediatamente.
PKB
Procesos de Usuario
Pg 97
Alertas de Usuario Las Alertas de Usuario son la nueva forma de definir alertas, mucho más parametrizable, permitiendo al
usuario controlar de forma más detallada un conjunto de información crítica que necesita avisos periódicos.
La periodicidad de las alertas también se puede definir en su configuración, adaptándose así a las
necesidades de cada perfil de usuario.
Para ilustrar esta funcionalidad, considerar algunos ejemplos de información adaptable a una Alerta de
Usuario:
• Certificaciones no facturadas;
• Aperturas de Propuestas, de Concursos, en los próximos 5 días;
• Documentos de cartera vencidos para pagar;
• Pedidos pendientes sin recibir;
• Antigüedades vencidas de los trabajadores;
• Recálculo con stock negativo;
• Revisión de precios no facturados en Obras.
Para cada una de estas opciones puede crearse una Alerta de Usuario.
El entorno de configuración y visualización de las Alertas de Usuario está disponible en el menú
“Herramientas”.
Seleccionando esta opción, el usuario podrá acceder a la ventana de presentación de las Alertas de Usuario.
Pg 98
Este formulario permite crear nuevas alertas, así como ejecutar, modificar, duplicar o eliminar las existentes.
Para crear un nuevo proceso bastará con seleccionar la opción “Nuevo”. De esta forma, surge un asistente
que permitirá crear una nueva Alerta.
Definición de la Alerta
Para explicar mejor los varios pasos necesarios para crear una Alerta de Usuario usaremos un ejemplo.
Ejemplo
Creación de una alerta que permita a los usuarios obtener información periódica sobre los cumpleaños de los
trabajadores de la empresa.
Pg 99
En este caso se selecciona la opción “Filtrar” para definir la categoría de la lista correcta. La lista deseada se
obtiene a través de un procedimiento almacenado previamente creado en el Ejercicio. Todos los
procedimientos almacenados existentes se muestran en la categoría <Consultas SQL>.
Pg 100
Seleccionar la lista correspondiente: "Alertas Cumpleaños".
Opcionalmente, puede optarse por seguir la configuración por defecto, pasando directamente a la definición
de los usuarios con acceso a la alerta. En este ejemplo, se desactiva la opción para poder efectuar una
configuración más detallada.
Pg 101
Se define cómo se desean mostrar los resultados. Se muestran los resultados de la última ejecución de la
alerta o se selecciona la opción con aviso cuando Tiene resultados/Sin resultados.
Se indica si los resultados deben enviarse como notificación y si se deben publicar. En ambas opciones debe
definirse el comportamiento.
Pg 102
Indicar si la alerta es una:
- Alerta de uso Privado: solo el usuario actual tiene acceso;
- Alerta de uso Público: indicar qué perfiles y usuarios correspondientes tienen acceso a la alerta.
Opcionalmente, definir si la alerta es independiente del usuario que la ejecuta. Definir si se puede o no
ejecutar manualmente y a partir de cuanto tiempo deja de estar actualizada. También se puede programar la
ejecución de la alerta.
Todos los usuarios
existentes
Todos los perfiles definidos
en el sistema.
Puede programarse la
ejecución de la alerta de
forma automática a través
de Windows Scheduler.
Pg 103
Indicar el nombre, la descripción, la prioridad y la categoría correspondiente de la Alerta de Usuario.
Activar la alerta creada o añadirla al Monitor de Negocio.
Pg 104
La nueva alerta aparece asociada a la categoría correspondiente.
Entorno de Ejecución
A pesar de tratarse de una alerta con ejecución programada, puede procederse de inmediato a la ejecución
(procesamiento) de su información asociada, con el envío inmediato de un email a los destinatarios
correspondientes.
Para ello, basta con usar la opción “Ejecutar” de la barra de herramientas o del menú de contexto.
Indica que la alerta está
accesible solo para el
usuario actual (ningún
otro usuario puede
acceder a la alerta).
Indica que la alerta
está en el monitor
de negocios.
Añade la alerta al Monitor
de Negocio.
Pg 105
Como se ha mencionado antes, durante la creación de la Alerta, o más tarde editando una alerta creada,
puede programarse la ejecución correspondiente.
Pg 106
Resultados
La próxima vez que alguno de los usuarios destinatarios de la Alerta entre en el ERP, se le mostrará el
Monitor de Negocio que incluirá, entre otra información, un lugar específico para visualizar sus alertas.
Puede accederse al Monitor de Negocio a través de la opción “Monitor de Negocio” del menú “Usuario” del
ERP.
PKB
Alertas de Usuario
Pg 107
Indicadores de Usuario Los Indicadores de Usuario son una funcionalidad que permite que cada usuario observe, de forma rápida y
fácil, un conjunto de información pertinente.
El entorno de configuración y visualización de los Indicadores de Usuario está disponible en el menú
“Herramientas”.
Seleccionando esta opción, el usuario podrá acceder a la ventana de presentación de los Indicadores de
Usuario existentes.
Para ilustrar esta funcionalidad, considerar algunos ejemplos de información que se puede visualizar como
un Indicador de Usuario en dos áreas distintas del ERP:
Área de Recursos Humanos
• Antigüedad;
• Formación;
• Número Efectivo por Sexo;
• Porcentajes de Absentismo;
• Dimisiones…
Pg 108
Área de Ventas
• Crecimiento de las ventas (%);
• Ventas - 5 mejores clientes (mes actual);
• Ventas - 10 mejores artículos (mes actual);
• Rentabilidad mensual (año actual y anterior).
Para cada una de estas opciones puede crearse un Indicador de Usuario.
Este formulario de configuración de los Indicadores de Usuario permite crear nuevos indicadores, así como
ejecutar, modificar, duplicar o eliminar los existentes.
Para crear un nuevo indicador basta con seleccionar la opción “Nuevo”. De esta forma, surge un asistente
que permitirá al usuario configurar un nuevo indicador.
Definición del Indicador
Para explicar mejor los varios pasos necesarios para crear un Indicador de Usuario usaremos un ejemplo.
Ejemplo
Creación de un indicador que permita que los usuarios obtengan información sobre los Artículos que se
encuentran entre los 10 mejores del mes actual. Probablemente este indicador mostrará información
diferente a lo largo del mes ya que el análisis se efectuará siempre que se ejecute el indicador
correspondiente. Al seleccionar la ejecución diaria, se obtiene una imagen diaria actualizada sobre la
información deseada.
Seleccionar el origen de los datos del indicador:
• Lista de registros: por defecto muestra las listas da la categoría "Categoría de Artículos";
• Comandos SQL: permite la introducción de una consulta SQL.
En este caso se trata de información obtenida a través de un comando SQL.
Pg 109
Opcionalmente, usar la opción por defecto en el caso de que se deseen usar las opciones más comunes en
la definición de un indicador sencillo. En este caso no se usará la configuración por defecto. Así, se desactiva
la opción.
Pg 110
Indicar las acciones que el sistema efectuará automáticamente después de ejecutar el indicador:
• Enviar notificaciones de los resultados usando: permite el envío de los resultados a
través de SMS/Correo electrónico a los usuarios que tengan la alerta en el Monitor de
Negocio;
• Publicar resultados para: permite publicar los resultados en un archivo o un sitio FTP.
Las dos opciones deben configurarse correctamente accediendo e introduciendo los datos de las "Opciones".
Pg 111
Pg 112
Indicar el ámbito del indicador:
• Indicador de uso privado: solo tendrá acceso al indicador el usuario actual;
• Indicador de uso público: se definen los perfiles/usuarios con acceso al indicador.
Programar la ejecución del indicador para que ocurra todos los días a las 00:00 horas. De esta forma, el
gráfico resultado del indicador obtiene sus datos sobre la información de ventas realizadas el día anterior.
Pg 113
Indicar los datos generales del indicador: nombre, descripción, presentación de los resultados (Gráfico o Lista
de Registros) y categoría.
Pg 114
Por último, deberá seleccionarse el tipo de gráfico que servirá de apoyo a la presentación de los resultados
gráficos del Indicador.
Pg 115
El Indicador estará disponible en la lista de Indicadores de Usuario, en la que eventualmente se podrá
ejecutar. El Indicador también se puede incluir en el control del servicio Monitor de Negocios.
Pg 116
PKB
Alertas de Usuario
Pg 117
Navegador El Navegador ofrece al usuario la posibilidad de configurar el entorno de trabajo en cada uno de los Módulos,
adaptándolo a sus necesidades. Usando esta funcionalidad, el usuario podrá:
• Configurar sus propias vistas sobre los datos más importantes del ERP;
• Consultar y editar registros (de tablas base o documentos);
• Añadir accesos directos para aplicaciones o documentos externos.
En la perspectiva del administrador de sistema, responsable por la configuración de la solución PRIMAVERA,
el Navegador suministra las herramientas necesarias para adaptarla a cada perfil de usuarios:
• Garantizando que cada usuario tiene acceso a toda la información relevante para su
trabajo, en el formato correcto;
• Permitiendo la implementación de reglas de seguridad adicionales;
• Ofreciendo todas las herramientas de extensibilidad de forma completamente integrada
con la aplicación.
Como herramienta de productividad, el Navegador es, normalmente, un configurador de accesos directos y
listas. Está integrado en cada una de las aplicaciones, como muestra la siguiente imagen:
Pg 118
Acceso directo para todos
los Módulos del ERP (ver
siguiente imagen)
Mostrar/Ocultar el
Navegador
Botón de contexto.
Pg 119
PKB
Navegador
Módulos del ERP con
navegación en árbol
Pg 120
Accesos directos
El usuario podrá crear los siguientes tipos de accesos directos:
• Listas;
• Aplicaciones externas;
• Documentos;
• Páginas web;
• Menús de la aplicación;
• Funciones de Usuario;
• Procesos de Usuario;
• Empresas.
Todos los accesos directos pueden organizarse y agruparse en carpetas, con una estructura idéntica a la
disponible en Windows para organizar los archivos.
Para crear un acceso directo a una aplicación externa
1. En el menú de contexto del Navegador, seleccionar Nuevo/Aplicación Externa;
Pg 121
2. En la siguiente ventana, seleccionar la aplicación externa y definir las demás propiedades del acceso directo:
3. El acceso directo queda disponible en los menús “Mis favoritos”
Para crear un acceso directo a una página web:
1. En el menú de contexto del Navegador, seleccionar Nuevo/Página web;
Pg 122
2. En la siguiente ventana, introducir la dirección de la página o seleccionar una de las páginas disponibles en los favoritos del Internet Explorer:
Pg 123
Para crear un acceso directo a un menú de la aplicación
1. En el menú de contexto del Navegador, seleccionar Nuevo/Menú;
2. En la siguiente ventana, seleccionar los menús de la aplicación para los que se desean crear
accesos directos en el Navegador (pueden crearse diversos accesos directos simultáneamente):
Para crear un acceso directo a una Función de Usuario
1. En el menú de contexto del Navegador, seleccionar Nuevo/Función de Usuario;
2. En la siguiente ventana, seleccionar la función que se desea asociar al acceso directo:
Lista de todas las
funciones de usuario
disponibles.
Pg 124
Para crear un acceso directo a un Proceso de Usuario
1. En el menú de contexto del Navegador, seleccionar Nuevo/Proceso de Usuario;
2. En la siguiente ventana, seleccionar el proceso que se desea asociar al acceso directo:
Para crear un acceso directo a una empresa
1. En el menú de contexto del Navegador, seleccionar Nuevo/Empresa;
2. En la siguiente ventana, seleccionar la empresa que se desea asociar al acceso directo:
Lista de todos los procesos
de usuario disponibles
Lista de las empresas
registradas para la
aplicación activa.
Pg 125
La creación de accesos directos para empresas ofrece un mecanismo para abrir rápidamente una determinada
empresa. Esta herramienta es muy útil en instalaciones con muchas empresas, como por ejemplo en las gestorías
contables
PKB
Listas
Categorías de Información
La creación de listas permite:
• El acceso a todos los datos de una determinada entidad, además del concepto de tablas;
• La configuración de filtros, condiciones y ordenaciones sobre los datos de cada entidad;
• Otras funcionalidades de manipulación de datos, como por ejemplo exportaciones.
Así, todos los datos de cada Módulo/Área están organizados en Categorías que agrupan todas las tablas
relevantes para obtener la información importante sobre una determinada entidad.
En la práctica, esto significa que la categoría de Clientes ofrece todos los datos sobre los clientes. Además
de la tabla asociada, incluirá datos de vendedores, ventas, contactos, monedas, etc.
Así, el Navegador se transforma en la principal fuente de datos del usuario y en una herramienta
imprescindible para configurar la solución y adaptarla a cada situación.
Las categorías disponibles dependen de cada una de las aplicaciones. Como ejemplo, se muestran más
abajo algunas de las categorías del área de Logística & Tesorería:
• Almacenes;
• Bancos;
• Cuentas Bancarias;
• Documentos de Compra;
• Documentos de Stocks;
• Documentos de Venta;
• Modos de Expedición;
• Movimientos Bancarios;
• Movimientos de Compras;
• Movimientos Compras (transf. líneas);
• Movimientos de Cartera – Líneas;
Navegador
ALGUNAS
CATEGORÍAS DE
LOGÍSTICA & TESORERÍA
Pg 126
• Movimientos de Tesorería – Líneas;
• Movimientos de Ventas;
• Movimientos Ventas (transf. líneas);
• Socios;
• Tablas – Artículos;
• Tablas – Clientes;
• Tablas – Contactos;
• Tablas – Otros Terceros;
• Vendedores;
• Zonas.
Creación de Listas
Para crear una nueva lista, deben seguirse los siguientes pasos:
1. En el menú de contexto del Navegador, seleccionar Nuevo Acceso directo/Lista;
2. En la siguiente ventana, seleccionar la categoría en la que se desea crear una nueva lista y seleccionar “Nueva...”:
3. En el primer paso del asistente de creación de listas, seleccionar “Siguiente”:
Categorías de información
de la aplicación activa.
Todas las listas definidas
para la categoría
seleccionada.
Pg 127
4. Seleccionar, a partir de cada tabla, las columnas de la lista que forman la categoría de información:
5. En el paso siguiente pueden definirse expresiones condicionales para filtrar los datos de la lista a través de determinados criterios:
Todas las tablas
disponibles en la categoría
seleccionada.
Todos los campos
disponibles en la tabla
seleccionada.
Opciones adicionales que
permiten definir
ordenaciones, alias y
expresiones.
Pg 128
6. A continuación, pueden definirse totalizadores en las columnas numéricas seleccionadas previamente:
Filtros sobre los datos de
la lista.
Pg 129
7. Después pueden definirse agrupaciones lógicas sobre los registros:
8. En el paso siguiente pueden definirse formatos condicionales a aplicar a los registros de la lista:
Pg 130
9. Indicar si se desea, o no, previsualizar el resultado:
Pg 131
En este paso también puede definir las siguientes opciones avanzadas de la lista:
Pg 132
10. Seleccionando la opción de vista previa se mostrará el resultado en el paso siguiente:
Número máximo de registros
Permite limitar el número máximo de registros mostrados en el resultado de la lista. Esta opción puede ser útil en listas con muchos registros y en las, en principio, sea posible prever que el registro buscado está entre los primeros.
Eliminar registros duplicados
Permitir eliminar todos los registros repetidos en la lista, mostrando solo uno.
Modo de apertura de la lista
Define si la paginación de los registros se efectúa en memoria en el cliente o en el servidor. La primera opción ofrece el máximo rendimiento para listas con pocos registros o listas en las que sea normal recorrer todos los registros. La segunda opción se recomienda para listas con muchos registros y siempre que sea posible prever el uso inmediato de registros existentes en las primeras páginas (reduciendo la comunicación y los datos transferidos del servidor).
Resultado de la aplicación
del formato condicional.
Pg 133
11. Finalmente, debe indicarse el nombre de la nueva lista y la disponibilidad correspondiente para los demás usuarios:
Pg 134
Al finalizar el asistente, la nueva lista estará disponible para añadir al Navegador:
Al confirmar, la lista se añade al menú “Mis favoritos”.
Ordenación de Registros
Puede definir hasta cinco criterios de ordenación de los registros de la lista.
Ordenación de los
registros
Pg 135
Para definir los criterios de ordenación debe indicar cada uno de los campos de ordenación y el orden
correspondiente:
Ordenación de Columnas
El orden de las columnas en la lista puede definirse en el formulario de creación de la lista:
Cada una de estas listas
muestra todos los campos
visibles en la lista.
Usar las flechas para
definir el orden de las
columnas en la lista.
Pg 136
Alias
En determinadas situaciones, por ejemplo en listas resultantes de la agregación de varias tablas, puede ser
necesario cambiar el nombre de algunas columnas:
Expresiones (Valores Calculados)
También se pueden definir columnas en la lista como resultado de expresiones calculadas (a partir de otras
columnas de la lista).
Para añadir una nueva expresión debe seleccionarse el botón correspondiente en el asistente de creación de
listas:
Usar esta opción para
modificar el alias del
campo seleccionado.
Estas opciones
permiten definir
valores calculados.
Pg 137
Se mostrará un formulario que permite definir la expresión calculada:
Condiciones
Una expresión condicional permite definir una condición que filtrará los resultados de la lista a través de un
determinado criterio.
Esta es la funcionalidad más importante de las listas porque permite que el usuario pueda definir listas
configuradas según sus necesidades de información y esto facilita:
• El enfoque en los datos más relevantes;
• La obtención de toda la información importante sobre cada entidad;
• El formato de vistas diferentes de estos datos;
• El desempeño general de la aplicación, ya que al filtrar los datos se reduce la cantidad de
información a la que se accede a cada momento, acelerando su procesamiento.
El módulo de configuración de las listas permite definir tantas condiciones cuantas sean necesarias y es
compatible con la combinación de expresiones usando los operadores lógicos Y/O.
Columnas disponibles en la
lista.
Operadores.
Expresión.
Nombre de la expresión.
Alias.
Pg 138
Para crear una nueva expresión condicional:
1. En la lista de expresiones condicionales, seleccionar “Nueva...”:
2. Seleccionar la columna en la que se desea aplicar la condición:
Seleccionar la tabla entre
las que forman la
categoría.
Seleccionar la columna en
la que se desea aplicar la
condición.
Operador condicional (los
operadores disponibles
dependen del tipo de datos
de la columna
seleccionada).
Tipo de condición. Puede
definirse un valor fijo,
relacionar la columna con
otra o definir una condición
parametrizable.
Pg 139
3. Definir la condición y seleccionar “Aceptar”:
Las diversas condiciones definidas pueden combinarse en subexpresiones a las que se aplicarán los
operadores lógicos Y/O.
Para crear una subexpresión en la lista de expresiones condicionales, seleccionar “Subexpresión” y el tipo de
subexpresión a crear:
Definir todas las condiciones que se desean combinar en la subexpresión:
Pg 140
Para crear una expresión parametrizable:
Algo que hace que este módulo sea especialmente funcional es la posibilidad de parametrizar cada una de
las condiciones definiendo una lista de posibles valores para la condición:
Existen dos opciones:
• Puede crearse una lista de valores fijos:
Usar esta opción para
definir la lista de posibles
valores de la columna.
Pg 141
• O crear una lista de valores resultante de la ejecución de una consulta en la base de
datos:
Pg 142
Esta configuración dará lugar a una lista parametrizada. Siempre que el usuario inicie su edición, se le
solicitarán todos los valores parametrizados. Esto permite, por ejemplo, definir listas genéricas que se
adaptan a las necesidades del usuario a todo momento.
Totales Agregados
Pueden definirse totalizadores en cualquiera de los campos numéricos definidos en la lista. Están disponibles
las siguientes operaciones:
• Contador;
• Suma;
• Media;
• Mínimo;
• Máximo;
• Desviación estándar;
• Contador de los valores.
Pg 143
Condiciones s/Totales Agregados
Pueden definirse condiciones sin totales agregados:
Pg 144
La forma de parametrizar la obtención de resultados es idéntica a las opciones explicadas anteriormente en
la sección “Condiciones”.
Agrupación
Esta funcionalidad está limitada a un número máximo de cuatro agrupaciones.
El resultado de la agrupación será idéntico al siguiente:
Pg 145
Formatos Condicionales
Los formatos condicionales permiten destacar en la lista los registros que obedecen a una determinada
condición.
Para crear un nuevo formato condicional:
1. En la lista de formatos condicionales, seleccionar “Nueva...”:
2. Seleccionar la columna en la que se desea aplicar el formato;
3. Definir la condición;
4. Seleccionar los colores de las letras y del fondo que se aplicará a los registros que obedezcan al criterio:
Pg 146
Pueden combinarse varios formatos condicionales en la misma lista.
Cada uno de los formatos condicionales se aplicará de forma secuencial a cada uno de los registros de la lista, según el
orden definido en el asistente de configuración.
Pg 147
Consulta de Listas Se puede acceder y pueden consultarse todas las listas configuradas por el usuario desde:
• El Navegador, a partir de accesos directos;
• Mantenimientos asociados (en la barra de herramientas):
• Búsquedas (F4) efectuadas a partir de diversos formularios de la aplicación:
F4
Pg 148
Operaciones sobre una Lista Más que una herramienta de consulta de datos, las listas ofrecen al usuario un conjunto de funcionalidades
que permiten usar los datos para obtener información adicional, efectuar su publicación y usarla como
soporte de las más variadas funciones de gestión. Las operaciones en las listas y sus datos están disponibles
en la barra de herramientas y en el menú de contexto:
• Listas de la Categoría;
• Edición de Registros;
• Filtros Rápidos;
• Búsquedas Rápidas;
• Búsquedas;
• Drill Down;
• Ordenación de Registros;
• Impresión de la Lista;
• Impresión de Informes;
• Exportación de Registros;
• Envío de Mensajes por email;
• Creación de Accesos directos para Registros;
• Servicio de Localización.
Pg 149
Búsquedas y Listas por Defecto Todas las búsquedas de registros, en cualquiera de los formularios de la aplicación, se efectuarán en las
listas definidas para la categoría correspondiente.
Por ejemplo, en el editor de ventas del módulo de Ventas, la búsqueda del cliente (usando la tecla F4) se
efectuará en una de las listas definidas en la categoría de clientes. En el caso de que no exista ninguna lista
definida por el usuario, se usará la lista de sistema. En caso contrario, se usará la que se haya definido como
lista por defecto para el usuario activo.
La lista por defecto para cada categoría puede definirse de dos formas:
• En el Administrador PRIMAVERA, por el administrador de sistema, para cada empresa y
para los varios usuarios registrados en el sistema;
• En las preferencias de sistema (disponibles en la aplicación) por cada usuario, desde que
tenga permisos para ello.
La primera opción será especialmente útil para el usuario responsable por la configuración inicial del sistema.
La segunda opción deberá usarse en el caso de los usuarios con permisos más avanzados o con
necesidades adicionales de flexibilidad para usar la aplicación.
PKB
Listas
Pg 150
Categorías Pueden condicionarse resultados a través de la aplicación de condiciones durante el proceso de creación de
listas o en la edición de sus propiedades. Una expresión condicional consiste en la definición de una
restricción que filtra los resultados de las listas a través de un criterio. Esta es una de las funcionalidades más
importante de las listas, ya que permite que el usuario defina listas configuradas exactamente según la
información del usuario.
Sin embargo, pueden existir situaciones/decisiones en las que este procedimiento se aplica
transversalmente, es decir, a la propia información de la categoría. Este escenario consiste
fundamentalmente en una o más expresiones condicionales transversales a todas las listas asociadas a una
categoría. Resumiendo, las listas siempre tienen una expresión condicional indicada en la categoría.
PKB
¿Cómo aplicar condiciones a las categorías?
Pg 151
Informes de Usuario Los productos PRIMAVERA permiten que el usuario configure cualquier informe o listado a su gusto. Las
posibilidades ofrecidas por la herramienta de creación de informes, Crystal Reports, del productor
mundialmente conocido Business Objects – del cual PRIMAVERA Business Software Solutions es el
representante portugués exclusivo – son inmensas.
Todos los informes o listados creados a partir del software PRIMAVERA usan Crystal Reports. Los
programas ofrecen en cada opción una configuración, que se ha tipificado como <SIST>, es decir, la
configuración del sistema, la configuración según PRIMAVERA Business Software Solutions. El usuario no
debe modificar este informe. En el caso de que desee realizar alguna modificación, debe duplicarlo y
asignarle un nuevo nombre. Así se garantiza que en caso de accidente o de un uso incorrecto, el usuario no
dañará los informes de base incluidos en los programas.
Para duplicar un informe
1. En la ventana de Mantenimiento de Informes, seleccionar el informe que se desea duplicar;
2. Seleccionar la opción “Duplicar” y confirmar esta acción;
3. Asignar un nuevo nombre al informe y confirmar. Al salir de la opción, el nuevo informe surge en la ventana de Mantenimiento de Informes.
Pg 152
Para modificar el diseño de un informe
1. Seleccionar el Informe cuya configuración se desea modificar;
2. Seleccionar la opción Propiedades. Acceder a la siguiente ventana:
3. Acceder a Crystal Reports a través de la opción “Editar”. En el caso de que este programa no esté instalado en su sistema, la aplicación muestra un mensaje de aviso;
4. Después de realizar las modificaciones en el informe, éstas deben guardarse en Crystal Reports antes de salir del programa. A partir de este momento, el usuario puede utilizar su informe siempre que lo desee.
El uso de Crystal Reports se explica en el manual que acompaña al producto, en formato digital o a través de la ayuda
de este programa. Crystal Reports es un producto desarrollado en inglés y su grado de dificultad de uso va desde muy
fácil hasta lo más difícil, dependiendo de lo que el usuario pretende.
PKB
Informes de Usuario
Pg 153
PRIMAVERA Business Software Solutions, S.A. © 1993 – 2014 || All rights reserved