+ All Categories
Home > Documents > Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications...

Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications...

Date post: 07-Oct-2018
Category:
Upload: lyngoc
View: 252 times
Download: 4 times
Share this document with a friend
153
Manual de Extensibilidad ERP PRIMAVERA V9.00 Versión 1.1 diciembre 2014
Transcript
Page 1: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

Manual de Extensibilidad

ERP PRIMAVERA V9.00

Versión 1.1

diciembre 2014

Page 2: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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

Page 3: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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

Page 4: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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

Page 5: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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

Page 6: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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

Page 7: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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.

Page 8: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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.

Page 9: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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.

Page 10: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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

Page 11: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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.

Page 12: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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?

Page 13: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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.

Page 14: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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.

Page 15: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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

Page 16: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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,...

Page 17: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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:

Page 18: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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:

Page 19: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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).

Page 20: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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.

Page 21: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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

Page 22: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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.

Page 23: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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

Page 24: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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.

Page 25: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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:

Page 26: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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

Page 27: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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

Page 28: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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

Page 29: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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.

Page 30: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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.

Page 31: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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

Page 32: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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.

Page 33: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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

Page 34: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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.

Page 35: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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)

Page 36: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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.

Page 37: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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.).

Page 38: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

Pg 38

Page 39: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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.

Page 40: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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.

Page 41: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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.

Page 42: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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.

Page 43: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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

Page 44: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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):

Page 45: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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:

Page 46: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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.

Page 47: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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.

Page 48: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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.

Page 49: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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:

Page 50: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

Pg 50

5. A continuación, puede introducirse el código específico para implementar reglas de negocio específicas:

Page 51: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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

Page 52: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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...”

Page 53: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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

Page 54: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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

Page 55: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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:

Page 56: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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

Page 57: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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

Page 58: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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:

Page 59: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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:

Page 60: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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

Page 61: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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

Page 62: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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.

Page 63: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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

Page 64: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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;

Page 65: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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

Page 66: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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.

Page 67: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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

Page 68: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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

Page 69: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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

Page 70: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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@@.

Page 71: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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.

Page 72: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

Pg 72

La definición de la función de usuario sería la siguiente:

Page 73: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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:

Page 74: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

Pg 74

El resultado de la función – en este caso, una lista de registros, se mostrará al usuario:

Page 75: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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

Page 76: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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

Page 77: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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:

Page 78: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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”

Page 79: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

Pg 79

2. En la ventana siguiente introducir el título del comando, la "tooltip" asociada y la función del usuario a ejecutar:

Page 80: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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.

Page 82: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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.

Page 83: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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.

Page 84: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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.

Page 85: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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

Page 86: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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”:

Page 87: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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

Page 88: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

Pg 88

Page 89: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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):

Page 90: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

Pg 90

14. Crear un nuevo paso correspondiente a la ejecución del segundo procedimiento almacenado:

Page 91: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

Pg 91

Page 92: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

Pg 92

15. Deben definirse los parámetros del segundo paso de la siguiente forma:

Page 93: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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

Page 94: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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:

Page 95: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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

Page 96: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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

Page 97: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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.

Page 98: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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.

Page 99: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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>.

Page 100: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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.

Page 101: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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.

Page 102: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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.

Page 103: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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.

Page 104: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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.

Page 105: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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.

Page 106: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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

Page 107: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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…

Page 108: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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.

Page 109: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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.

Page 110: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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".

Page 111: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

Pg 111

Page 112: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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.

Page 113: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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.

Page 114: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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.

Page 115: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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.

Page 117: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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:

Page 118: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

Pg 118

Acceso directo para todos

los Módulos del ERP (ver

siguiente imagen)

Mostrar/Ocultar el

Navegador

Botón de contexto.

Page 120: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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;

Page 121: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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;

Page 122: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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:

Page 123: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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.

Page 124: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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.

Page 125: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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

Page 126: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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.

Page 127: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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.

Page 128: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

Pg 128

6. A continuación, pueden definirse totalizadores en las columnas numéricas seleccionadas previamente:

Filtros sobre los datos de

la lista.

Page 129: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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:

Page 130: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

Pg 130

9. Indicar si se desea, o no, previsualizar el resultado:

Page 131: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

Pg 131

En este paso también puede definir las siguientes opciones avanzadas de la lista:

Page 132: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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.

Page 133: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

Pg 133

11. Finalmente, debe indicarse el nombre de la nueva lista y la disponibilidad correspondiente para los demás usuarios:

Page 134: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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

Page 135: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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.

Page 136: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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.

Page 137: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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.

Page 138: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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.

Page 139: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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:

Page 140: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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.

Page 141: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

Pg 141

• O crear una lista de valores resultante de la ejecución de una consulta en la base de

datos:

Page 142: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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.

Page 143: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

Pg 143

Condiciones s/Totales Agregados

Pueden definirse condiciones sin totales agregados:

Page 144: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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:

Page 145: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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:

Page 146: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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.

Page 147: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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

Page 148: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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.

Page 149: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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

Page 150: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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?

Page 151: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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.

Page 152: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

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

Page 153: Manual de Extensibilidad - PRIMAVERA BSS, Software de ... · VBA – Visual Basic for Applications ... ejemplos prácticos de su aplicación y las ventajas competitivas que ofrecen.

Pg 153

PRIMAVERA Business Software Solutions, S.A. © 1993 – 2014 || All rights reserved


Recommended