31
Taller: Incorporando Funcionalidad Adicional a Profit Plus. Profit Plus ediciones small business, profesional y corporativa

taller_funcionalidad_adicional - 02-2003.pdf

Embed Size (px)

Citation preview

Page 1: taller_funcionalidad_adicional - 02-2003.pdf

Taller: Incorporando Funcionalidad Adicional a Profit Plus.

Profit Plus ediciones small business, profesional y corporativa

Page 2: taller_funcionalidad_adicional - 02-2003.pdf

La información de este documento está sujeta a modificaciones sin preaviso alguno. A menos que sea especificado de otra manera, las compañías, nombres y datos utilizados en los ejemplos son ficticios. Ninguna parte de este documento puede ser reproducida ni transmitida bajo forma alguna, ni por cualquier medio, ya sea electrónico o mecánico, para ningún propósito, sin el consentimiento por escrito de Softech Consultores.

2000 – 2001 Softech Consultores. Todos los derechos reservados. Profit Plus es una marca registrada de Softech Consultores C.A. Microsoft, Windows, Windows 95, Windows 98, Windows 2000, Office, Word, Excel, NT Server, Windows 2000 Server, NT Workstation, SQL Server, SQL Server 2000, Visual Foxpro y el logotipo de Windows son marcas registradas de Microsoft Corporation. Pentium es una marca registrada de Intel Corporation. IBM es una marca registrada de International Business Machines Corporation.

Número de parte: PP-TALLER-FUN&ADI Actualizado: 02/2003

Page 3: taller_funcionalidad_adicional - 02-2003.pdf

Contenido iii

Contenido

Introducción Introducción …………………................................................... 7 Pre-requisitos .………………..................................................... 8 Objetivos del taller .……………................................................ 9

Casos prácticos

Funcionalidad Adicional ............................................................ 13 Diseño de base de datos en Profit Plus ....................................... 16 Caso práctico # 1 ………………….…..................................... 18 Caso práctico # 2 ………………….…..................................... 19 Caso práctico # 3 ………………….…..................................... 20 Caso práctico # 4 ………………….…..................................... 21

Anexos Nomenclatura Interna de las Pantallas ......................................... 25 Solución caso práctico # 1 .......................................................... 28 Solución caso práctico # 2 .......................................................... 29 Solución caso práctico # 3 .......................................................... 30 Solución caso práctico # 4 .......................................................... 31 Diccionario de datos de Profit Plus Administrativo ................... 32

Page 4: taller_funcionalidad_adicional - 02-2003.pdf
Page 5: taller_funcionalidad_adicional - 02-2003.pdf

Introducción

Page 6: taller_funcionalidad_adicional - 02-2003.pdf
Page 7: taller_funcionalidad_adicional - 02-2003.pdf

Introducción 7

Introducción

Nombre

Empresa

Cargo / Función

Experiencia en Profit Plus

Experiencia en Visual FoxPro y SQL

Expectativas

Page 8: taller_funcionalidad_adicional - 02-2003.pdf

8 Introducción

Pre-requisitos

Conocimientos funcionales de Profit Plus

Diseño de la base de datos en Profit Plus

Conocimientos medios de Programación

Conocimientos medios de Visual FoxPro

Conocimientos básicos del lenguaje S.Q.L.

Page 9: taller_funcionalidad_adicional - 02-2003.pdf

Introducción 9

Objetivos del taller

Identificar “que” casos pueden ser manejados

mediante la funcionalidad adicional. Aprender a incorporar funcionalidad adicional

a Profit Plus (“como”).

Page 10: taller_funcionalidad_adicional - 02-2003.pdf
Page 11: taller_funcionalidad_adicional - 02-2003.pdf

Casos prácticos

Page 12: taller_funcionalidad_adicional - 02-2003.pdf
Page 13: taller_funcionalidad_adicional - 02-2003.pdf

Casos prácticos 13

Reglas de la funcionalidad adicional

Profit Plus le permite agregar funcionalidad adicional sobre el sistema sin afectar el funcionamiento de la versión “standard”. La funcionalidad adicional puede ser agregada a todas las tablas y procesos del sistema permitiendo agregar validaciones, procesos y/o pantallas adicionales. La funcionalidad adicional agregada a una tabla o proceso puede ser diseñada para ser “ejecutada” automáticamente al:

• Incluir un elemento en la tabla o proceso • Grabar la tabla o proceso • Eliminar un elemento en la tabla o proceso • Iniciar la activación de la pantalla de una tabla o proceso • Activar la pantalla de una tabla o proceso • Desactivar la pantalla de una tabla o proceso • Salir de una pantalla de tabla o proceso • Verificación de cambio de datos cuando se realiza el desplazamiento entre los

registros de una tabla • Solicitud de grabado de datos • Presionar una tecla en la columna “artículo” en los documentos • Presionar una tecla en la última columna activa de un renglón de documento • Presionar una tecla en la columna de “Monto Abon.” de la opción Cobros y Pagos. • Presionar una tecla en la columna de “Forma de Pago” de la opción Cobros y Pagos.

La funcionalidad adicional agregada a una tabla o proceso puede ser diseñada para ser “ejecutada” manualmente desde:

• La barra de herramientas • Botón de Facturar • Botón de Anular • Los renglones de documentos

Page 14: taller_funcionalidad_adicional - 02-2003.pdf

14 Casos prácticos

Para incorporar funcionalidad adicional al sistema debe tomar en consideración los siguientes puntos: 1. Las pantallas y procesos deben ser programados y compilados en Visual Fox Pro 6.0.

2. Si se desea que la funcionalidad adicional solo sea ejecutada para una de las empresas

registradas en el sistema se debe crear una carpeta con el nombre del código de la empresa dentro de la carpeta REPORADI. Los programas adicionales compilados deben ser grabados en dicho directorio para ser detectados y ejecutados por el sistema.

3. Los programas adicionales deben tener un nombre que sea reconocido por el sistema.

Ver en los anexos la “Nomenclatura Interna de las Pantallas”. 4. El nombre de los programas adicionales que van a ejecutar automáticamente depende

de la opción en donde se van a ejecutar y/o de cuando se van ejecutar. La nomenclatura a utilizar para definir los programas que se ejecutan automáticamente es la siguiente:

NombreInternoPantalla_PuntoEjecución

Donde:

NombreInternoPantalla: es el nombre que identifica la pantalla (opción) donde se ejecutará el proceso. Los nombres de cada una de las pantallas se encuentran establecidos en el archivo PANTALLAS.DOC en la carpeta REPORADI. PuntoEjecución: determinará el momento de ejecución del proceso, definido de la siguiente manera:

Iniciar pantalla _IT Activar pantalla _AE Desactivar pantalla _DE Cerrar la pantalla _DY Cambio de datos _DC Solicitud de grabado _AS Antes de crear un registro _AI Presionar una tecla en la columna de “Forma de Pago” _FP en Cobros y Pagos Presionar una tecla en la columna “artículo” _KP1 Presionar una tecla en la última columna activa de un renglón _GP1 Presionar una tecla en la columna de “Monto Abon.” _GP1 en Cobros y Pagos En el caso del proceso de grabado y eliminación se puede establecer tres puntos de ruptura, los cuales se encuentran definidos de la siguiente manera:

Antes de Durante Después de Grabar: _SI _S1 _SF Eliminar: _DI _D1 _DF

5. El nombre de los programas adicionales que se van a ejecutar manualmente desde la

barra de herramientas depende de la opción en donde se van a ejecutar y del icono de la barra de herramientas que se le va a asignar. La nomenclatura a utilizar para definir los programas que se ejecutan manualmente es la siguiente:

Page 15: taller_funcionalidad_adicional - 02-2003.pdf

Casos prácticos 15

NombreInternoPantalla_P1

NombreInternoPantalla_P2

NombreInternoPantalla_P3

Donde:

NombreInternoPantalla: es el nombre que identifica la pantalla (opción) donde se ejecutará el proceso. Los nombres de cada una de las pantallas se encuentran establecidos en el archivo PANTALLAS.DOC en la carpeta REPORADI.

P1, P2, P3: identifican el icono de la barra de herramientas desde el cual se va a ejecutar el programa asociado a la funcionalidad.

6. Los programas adicionales que se van a ejecutar manualmente desde la barra de

herramientas pueden ser ejecutados de igual manera con la siguiente combinación de teclas:

ALT+F7 o CTRL+H

ALT+F9

ALT+F9 7. El nombre de los programas adicionales que se van a ejecutar manualmente de manera

complementaria a la barra de herramientas depende de la opción en donde se van a ejecutar. La nomenclatura a utilizar para definir los programas que se ejecutan manualmente es la siguiente:

NombreInternoPantalla_PuntoEjecución

Donde:

NombreInternoPantalla: es el nombre que identifica la pantalla (opción) donde se ejecutará el proceso. Los nombres de cada una de las pantallas se encuentran establecidos en el archivo PANTALLAS.DOC en la carpeta REPORADI. PuntoEjecución: determinará el momento de ejecución del proceso, definido de la siguiente manera:

Antes de generar la Factura con el Botón de Facturar _BI1 Después de generar la Factura con el Botón de Facturar _BF1 Botón de Anular _BA Renglones de los documentos _K1

8. En el caso de que un programa que se va a ejecutar invoque a una pantalla se debe

colocar en el método INIT de la misma lo siguiente: PARAMETERS pForma, para que se pueda hacer referencia a los objetos que conforman la pantalla donde se está ejecutando el programa adicional.

9. Para referirse a las propiedades de una pantalla estando en un programa (PRG) se le debe

anteceder el prefijo _SCREEN.ACTIVEFORM y estando en una pantalla el nombre de la variable que recibe el valor en el método INIT de la misma.

Page 16: taller_funcionalidad_adicional - 02-2003.pdf

16 Casos prácticos

10. En la funcionalidad diseñada para sea ejecutada manualmente desde la barra de herramientas o botones del sistema es factible restringir por usuario el uso/ejecución de la misma. Para ello en el mapa de acceso correspondiente a cada usuario debe activar o desactivar los iconos de los procesos especiales, según lo desee.

11. Existen ciertas variables y propiedades que se encuentran disponibles en el momento

de ejecución de los procesos adicionales, entre ellas se encuentran:

Variables: usuario_actual = Usuario Actual usuario_nombre = Nombre del Usuario acceso_actual = Mapa asignado al usuario t_prioridad1 = Prioridad del Usuario tcod_emp = Código de la Empresa Actual serversql = Indica si está en SQL o no

Propiedades: .retorno = indica si un proceso externo falla .dataenvironment.initialselectedalias = Tabla o vista principal .tablasecundaria = Tabla o vista de los renglones

Page 17: taller_funcionalidad_adicional - 02-2003.pdf

Casos prácticos 17

Diseño de base de datos en Profit Plus

La base de datos de Profit Plus se encuentra diseñada de la siguiente manera:

Los datos del sistema se almacenan en tablas maestras y tablas de movimientos. Las tablas maestras son identificadas por nombres nemónicos a la información que

almacenan, y su clave principal formará parte de los campos indispensables de las tablas de movimientos.

Ejemplo: Bancos, Clientes, Proveedores, etc.

Las tablas de movimientos, son aquellas donde se almacenan los procesos manejados por el sistema, estando caracterizadas por encabezados y renglones.

Ejemplo: Factura, reng_fact, Ajuste, reng_aju, etc.

Las claves principales de las tablas maestras son identificadas con el prefijo de co, seguido de una palabra identificativa de la tabla:

Ejemplo: Co_ban: para el código del banco

Las descripciones de la tabla son identificadas con el prefijo des o la palabra descrip, seguido de una palabra identificativa de la tabla.

Ejemplo: Des_ban: para la descripción del banco

Las tablas que representan encabezados de documentos, como las de facturas, se caracterizan por tener como clave principal un número cuyo campo se identifica por el siguiente sufijo _num, que adicionalmente servirá de enlace entre el encabezado y los renglones.

Ejemplo: Ajue_num: para los encabezados de ajuste

Las tablas que representan renglones de documentos, como los renglones de factura, se caracterizan por tener como clave principal una clave compuesta formada por la clave principal del encabezado junto con el número de renglón, número cuyo campo se identifica por reng_num.

Tablas de Movimientos

Tablas Maestras

Page 18: taller_funcionalidad_adicional - 02-2003.pdf

18 Casos prácticos

Ejemplo: Ajue_num: campo del encabezado del ajuste Reng_num: número del renglón del encabezado

Existen ocho campos que identifican los campos adicionales de la tabla en cuestión,

identificados de la siguiente manera: campo1, campo2, ..., campo8. En cada una de las tablas es almacenada la información del usuario y la fecha en que se

incluyó, modificó o eliminó un registro en la misma. Dichos campos son identificados de la siguiente manera:

co_us_in, fe_us_in: código del usuario y la fecha y hora en que se incluyó el registro en la tabla. co_us_mo, fe_us_mo: código del usuario y la fecha y hora en que se modificó el registro en la tabla. co_us_el, fe_us_el: código del usuario y la fecha y hora en que se eliminó el registro en la tabla.

Page 19: taller_funcionalidad_adicional - 02-2003.pdf

Casos prácticos 19

Caso práctico # 1

Programar una validación adicional en facturas tomando en cuenta que:

La validación se realizará antes de grabar la factura. Si la factura posee más de cinco renglones se emitirá el siguiente mensaje: “La Factura

no puede tener más de cinco renglones” y no continuará el proceso de grabado de la factura.

El cursor del ratón se ubicará en la descripción de la factura cuando no se cumpla la validación.

Validar que las facturas no se graben con más de cinco renglones.

Page 20: taller_funcionalidad_adicional - 02-2003.pdf

20 Casos prácticos

Caso práctico # 2

Elaborar una pantalla adicional tomando en cuenta que:

La pantalla se activará a través de la combinación de teclas CTRL.+H. La pantalla deberá mostrar la siguiente información: límite y días de crédito, responsable

y teléfonos del cliente asociado al pedido. Esta pantalla será mostrada solo si el usuario tiene prioridad 100, de lo contrario emitirá

el siguiente mensaje: “No tiene prioridad suficiente para consultar los datos del cliente” Se deberá validar que en la pantalla de pedidos se halla seleccionado un cliente, en caso

contrario se emitirá un mensaje de error.

Consulta “especial” de Clientes en la pantalla de Pedidos

Page 21: taller_funcionalidad_adicional - 02-2003.pdf

Casos prácticos 21

Caso práctico # 3

Elaborar una pantalla adicional tomando en cuenta que:

La pantalla se activará cuando se llegue al último campo del renglón de la factura. La pantalla deberá mostrar la siguiente información: descripción y cantidad adicional. Al salir de la pantalla la información cargada en la misma se colocará en el comentario

del renglón separada cada una por punto y coma. Esta pantalla se activará si y solo si en el campo adicional 1 del artículo que se está

ingresando en el renglón tiene una “X”.

Asignar información adicional al momento de ingresar los renglones de facturas.

Page 22: taller_funcionalidad_adicional - 02-2003.pdf

22 Casos prácticos

Caso práctico # 4

Elaborar un proceso adicional para la pantalla de clientes, tomando en cuenta que:

Antes de grabar el cliente se verificará que el código del Cliente no exista en la tabla

de Proveedores, sino se cumple la validación anterior se deberán emitir el siguiente mensaje respectivamente: “El código del Cliente ya existe en la tabla de Proveedores”.

Antes de grabar el cliente se verificará que el campo tipo de cliente exista en la tabla tipo de Proveedores, sino se cumple la validación anterior se deberán emitir el siguiente mensaje respectivamente: “El tipo de cliente no existe en la tabla tipo de Proveedores”.

Se deberá pasar toda la información coincidente de la tabla de Clientes y la tabla de Proveedores.

Proceso que al ingresar un cliente cree un Proveedor con las mismas características.

Page 23: taller_funcionalidad_adicional - 02-2003.pdf

Anexos

Page 24: taller_funcionalidad_adicional - 02-2003.pdf
Page 25: taller_funcionalidad_adicional - 02-2003.pdf

Anexos 25

Nomenclatura Interna de las Pantallas A continuación se detallan los nombres internos de cada una de las opciones del sistema para la programación de la funcionalidad adicional en Profit Plus Administrativo: 1.- Módulo de Inventario Procesos

Tablas

Opción del Sistema Nombre de la Pantalla Ajustes de Entrada y salida aju1 Traslados entre Almacenes tra1 Inventario Físico: Ingresar resultados. res1 Generar Compuestos gki1

Opción del Sistema Nombre de la Pantalla Artículos art1 Artículos Compuestos kit1 Líneas de Artículos lin1 Categorías de Artículos cat1 Sub-Líneas subl1 Procedencias pro2 Colores col1 Unidades uni1 Almacenes sub1 Sucursales alm1 Tipos de Ajuste taj1 Proveedores pro1

Page 26: taller_funcionalidad_adicional - 02-2003.pdf

26 Anexos

2.- Módulo de Ventas Procesos

Opción del Sistema Nombre de la Pantalla Facturas de Venta fac1 Pedidos ped1 Cotizaciones a Clientes cdc_1 Devoluciones a Clientes dvc1 Notas de Entrega nde1 Notas de Despacho ndd1 Plantillas de venta plv1 Punto de Venta pvt1 Documentos cc1 Cobros cob1

Tablas

Opción del Sistema Nombre de la Pantalla Clientes cli1 Tipo de Cliente tip1 Zonas zon1 Segmentos seg1 Vendedores ven1 Almacenes sub1 Sucursales alm1 Condiciones de Pago con1 Transportes trn1 Tarjetas de Crédito /Débito tar1 Cuentas de Ingreso/Egreso cie1 Descuentos por Artículo desc1 Descuentos por Categoría dec1 Descuentos por Línea dec1 Comisiones de Rentabilidad por Artículo ren1 Comisiones de Rentabilidad por Categoría ren1 Comisiones de Rentabilidad por Línea ren1 Monedas mon1 Turnos de Punto de Venta tur1

Page 27: taller_funcionalidad_adicional - 02-2003.pdf

Anexos 27

3.-Módulo de Compras: Procesos

Opción del Sistema Nombre de la Pantalla Facturas de Compra com1

Órdenes de Compra odc1 Cotizaciones de Proveedores cdp1 Devoluciones a Proveedores dvp1 Notas de Recepción ndr1 Plantillas de Compra plc1 Importaciones ipc1 Documentos cp1 Pagos pag1

Tablas

Opción del Sistema Nombre de la Pantalla Proveedores pro1 Tipo de Proveedor tip2 Zonas zon1 Segmentos seg1 Condiciones de Pago con1 Cuentas de Ingreso/Egreso cie1

4.- Módulo de Cajas y Bancos. Procesos

Tablas

Opción del Sistema Nombre de la Pantalla Depósitos Bancarios dpc Órdenes de Pago opa1

Opción del Sistema Nombre de la Pantalla Cuentas Bancarias cue1 Cajas caj1 Bancos ban1 Beneficiarios ben1 Cuentas de Ingreso/Egreso cie1 Tarjetas de Crédito/Débito tar1

Page 28: taller_funcionalidad_adicional - 02-2003.pdf

28 Anexos

A continuación se detallan los nombres internos de cada una de las opciones del sistema para la programación de la funcionalidad adicional en Profit Plus Contabilidad: Procesos

Opción del Sistema Nombre de la Pantalla Comprobantes de Diario com Comprobantes de Presupuesto pre Comprobantes Modelo mod Depreciar Activos pdepre Contabilizar Datos Administrativos/Nómina pinteg

Tablas

Opción del Sistema Nombre de la Pantalla Cuentas Contables pcuen Centros de Costo cencos Cuentas de Gasto cgasto Auxiliares auxi Tipos de Documento tipdoc Atributos tabadi Tipos de Atributo tiptab Monedas moneda Activos Fijos pacti Grupos de Activos cgrup Ubicación de Activos ubic Reglas de Integración tipti Índice de Precios al Consumidor cencos

Page 29: taller_funcionalidad_adicional - 02-2003.pdf

Anexos 29

A continuación se detallan los nombres internos de cada una de las opciones del sistema para la programación de la funcionalidad adicional en Profit Plus Nómina: Procesos

Opción del Sistema Nombre de la Pantalla Consultar/Modificar Nómina nomi Transferir Nómina al Administrativo inte Préstamos pres Vacaciones, Reposos y Permisos vaca

Tablas

Opción del Sistema Nombre de la Pantalla Trabajadores empl Departamentos depa Bancos banco Cargos cargo Tipos de Fichas fichas Campos de Trabajadores vari Contratos cont Calendarios cale Tablas de Valores tabl Constantes ctte Grupos de Conceptos grup Conceptos conc

Page 30: taller_funcionalidad_adicional - 02-2003.pdf

30 Anexos

Diccionario de datos

El Diccionario de Datos representa un material de apoyo en el cual se describen cada una de las tablas que integran la base de datos del sistema. En el mismo se detallan cada uno de los siguientes puntos:

Para la Tabla:

Nombre. Breve descripción de la información que se almacena en la tabla.

Para los Campos: Nombre. Breve descripción de la información que se almacena en el campo. Tipo de dato que se almacena en el campo: Carácter, Numérico, Fecha, etc. Longitud máxima que se pueda almacenar en el campo.

Este material de apoyo puede ser impreso o visualizado a través del reporte “Diccionario de Datos”, el cual se encuentra en la opción de “Reportes y Procesos Adicionales” del sistema.

Page 31: taller_funcionalidad_adicional - 02-2003.pdf

Centro Capriles, Piso 23, Ofc. 23-B, Plaza Venezuela, Caracas 1050 Telfs: 7934444 / 7818080 / 7935447 / 7813724 / 7934363

www.softechsistemas.com [email protected]