Aplicaciones de bases de datos con Kylix

Tamaño: px
Comenzar la demostración a partir de la página:

Download "Aplicaciones de bases de datos con Kylix"

Transcripción

1 Aplicaciones de bases de datos con Kylix Una de las novedades más importantes de Kylix será la aparición en escena de la arquitectura dbexpress o DBE, sustituto natural del Borland Database Engine o BDE. Esto ocasionará una serie de cambios muy importantes en la forma en que desarrollamos aplicaciones de bases de datos, y la tecnología MIDAS jugará un rol fundamental en estos cambios. Qué es Kylix? Introducción Kylix es la primera y única herramienta de desarrollo rápido de aplicaciones para el sistema operativo Linux. Kylix es Delphi y C++Builder para Linux. Los puntos más destacados de Kylix son: Desarrollo de aplicaciones nativas Linux. Entorno de desarrollo visual basado en componentes. Soporte para MySQL, InterBase, Oracle y DB2, para el desarrollo de aplicaciones de bases de datos cliente/servidor. Soporte de Apache, para el desarrollo de aplicaciones para Internet. Combinado con Delphi, Kylix permite el desarrollo de aplicaciones multiplataforma para Windows y Linux. Kylix está certificado para RedHat Linux 6.2 ó superior, Mandrake 7.0 ó superior y SuSE 7.0 ó superior. Antes de comenzar, creo que es importante aclarar algo: el BDE no desaparecerá; al menos, no en Delphi 6. Seguirá existio tal y como hasta ahora, y aunque Borland no liberará nuevas versiones, seguirá brindando soporte como de costumbre. Un poco de historia Por mucho tiempo, el BDE fue una solución excelente para el desarrollo de aplicaciones de bases de datos, sobre todo a la hora de acceder a tablas locales. Sin embargo, a medida que la tecnología cliente/servidor se hizo más popular, el BDE poco a poco dejó de ser lo que era para convertirse en una solución buena con limitaciones funcionales y problemas de rimiento. Cuando el proyecto Kylix se hizo realidad, los ingenieros de Borland se vieron obligados a tomar una decisión crucial: elegir entre migrar el BDE a Linux con todas sus limitaciones y problemas o aprovechar la oportunidad para desarrollar algo nuevo, más potente que el BDE, portable y, lo más importante, orientado a servidores SQL. La decisión no fue muy difícil de tomar, y así surgió dbexpress. Tanto Kylix como Delphi 6 incluirán DBE como una nueva alternativa de acceso a datos. Esto significa que a las tres alternativas ya existentes en Delphi 5, se sumará una: los componentes basados en DBE. Este cambio no será difícil de asimilar por los programadores Delphi, ya que es algo muy parecido a lo que ya ocurrió con Delphi 5, y de la misma forma que los componentes de acceso nativo a ADO e InterBase incluyen equivalentes a los basados en el BDE - lo cual, dicho sea de paso, facilitó mucho su

2 utilización en nuevos proyectos -, los componentes basados en DBE también trán sus equivalentes a los basados en el BDE. Por lo tanto, en Delphi 6 habrá 4 alternativas diferentes de acceso a datos, de las cuales sólo una (DBE) permitirá la creación de proyectos multiplataforma, que podrán ser portados de Windows a Linux o de Linux a Windows directamente. Me caching los datos Si bien la aparición de nuevos componentes constituye un cambio importante en sí mismo, este no será el más importante que tremos que afrontar. La gran novedad estará dada por el hecho de que DBE no soportará caching de datos. Qué significa esto? Veamos un ejemplo que nos ayude a comprerlo. Creemos un formulario que nos permita visualizar en una rejilla los datos de la tabla Country del alias IBLocal del BDE. Para obtener los datos, navegar a través de ellos y realizar altas, bajas y modificaciones utilizaremos un componente Table y un control DBNavigator, conectados mediante el correspondiente DataSource. La Figura 1 muestra el formulario con las propiedades que nos interesan. object Form1: TForm1 object DBGrid1: TDBGrid DataSource = DataSource1 object DBNavigator1: TDBNavigator DataSource = DataSource1 object Table1: TTable Active = True DatabaseName = 'IBLocal' TableName = 'COUNTRY' object DataSource1: TDataSource DataSet = Table1 Figura 1 Cliente/Servidor.

3 Al estar accedio a un servidor SQL (en este caso InterBase) y utilizar un componente Table, el BDE se encarga por detrás del telón de generar las sentencias SQL correspondientes para seleccionar (SELECT), insertar (INSERT), borrar (DELETE) y actualizar (UPDATE) los datos. Si observamos detenidamente el comportamiento de la aplicación, veremos que se registra actividad contra la base de datos sólo cuando realizamos algunas de las acciones anteriormente mencionadas, es decir, cuando seleccionamos, insertamos, borramos o modificamos datos. Sin embargo, cuando navegamos a través de ellos no se registra actividad alguna. Esto lo podemos comprobar si observamos el puntero del ratón. Cuando el BDE está accedio al servidor SQL cambia el puntero del ratón a un reloj de arena con la palabra SQL en la parte inferior. La ausencia de actividad contra la base de datos se debe a que el BDE almacena en memoria una copia local de los datos, es decir, soporta caching de datos. En cuanto el conjunto de datos completo ha viajado desde la base de datos a nuestra aplicación cliente el BDE no necesita hacer más peticiones, pues utiliza su copia local. En contrapartida, DBE no soporta caching de datos. Funciona como si utilizáramos un componente Query con la propiedad UniDirectional puesta en True. Al no estar soportado el caching de datos sólo podemos navegar el conjunto de datos obtenido en una sola dirección, es decir, de principio a fin. Entonces, significa esto que ya no podremos visualizar datos en una rejilla y navegar a través de ellos libremente? Si utilizáramos únicamente los componentes basados en DBE, la respuesta sería un rotundo sí. Sin embargo, ya en Delphi 3 se introdujo un componente que por sí solo (en realidad con el auxilio de una DLL) soporta caching de datos. Los conocedores de la tecnología MIDAS sabrán que estoy hablando del componente ClientDataSet. Kylix & MIDAS La gran mayoría de las aplicaciones de bases de datos desarrolladas con Kylix estarán basadas en la tecnología MIDAS. Esto significa que a los componentes que acostumbramos a utilizar para acceder a los datos tremos que agregar otros dos: DataSetProvider y ClientDataSet. El componente DataSetProvider cumple dos funciones principales: obtener datos de componentes DataSet, empaquetarlos y enviarlos a componentes ClientDataSet. resolver las actualizaciones provenientes de componentes ClientDataSet. El componente ClientDataSet es un DataSet especializado que se diferencia de los DataSet tradicionales, como por ejemplo Table y Query, en dos aspectos: obtiene los datos de un componente DataSetProvider y aplica las actualizaciones a través del mismo componente DataSetProvider. Soporta caching de datos, es decir, a medida que obtiene paquetes de datos de un DataSetProvider los almacena localmente en memoria junto con las modificaciones que realiza el usuario.

4 Si quisiéramos desarrollar el ejemplo anterior como lo haríamos en Kylix, deberíamos colocar en el formulario un DataSetProvider con su propiedad DataSet apuntando al Table, y un ClientDataSet con su propiedad Provider apuntando al DataSetProvider anterior. Finalmente, deberíamos modificar la propiedad DataSet del DataSource para que apunte al ClientDataSet. La Figura 2 muestra el formulario con las propiedades que nos interesan. Figura 2 MIDAS object Form1: TForm1 object Table1: TTable DatabaseName = 'IBLocal' TableName = 'COUNTRY' object DataSource1: TDataSource DataSet = ClientDataSet1 object DataSetProvider1: TDataSetProvider DataSet = Table1 object ClientDataSet1: TClientDataSet Active = True ProviderName = 'DataSetProvider1' Al activar el ClientDataSet, éste se encargará de pedirle los datos a su DataSetProvider asociado, que a su vez se encargará de pedirle los datos a su Table asociado, que a su vez se encargará de pedirle los datos a InterBase. Luego, el DataSetProvider se hará cargo de empaquetar los datos y entregárselos al ClientDataSet, y éste los almacenará localmente en memoria. A medida que el usuario utilice la aplicación insertando, borrando y modificando datos, el ClientDataSet se encargará de almacenar esos cambios localmente en memoria. Mediante el método ApplyUpdates el ClientDataSet se encargará de empaquetar los cambios efectuados y enviárselos al DataSetProvider para que éste se encargue de aplicarlos directamente a la base de datos.

5 Si algo anduviera mal durante la aplicación de los cambios, el DataSetProvider se encargaría de empaquetar los datos que no pudieron ser aplicados y enviárselos de vuelta al ClientDataSet para dar al usuario la posibilidad de reconciliarlos, modificándolos nuevamente y volviéndolos a aplicar o descartándolos definitivamente. En un ejemplo simple como éste y con un conjunto de datos pequeño los cambios no parecen ser radicales. La única diferencia estriba en la necesidad de llamar al método ApplyUpdates del ClientDataSet para aplicar todas las modificaciones en la base de datos. Si alguna vez ha utilizado actualizaciones en caché ( cached updates ), pensará que prácticamente no hay cambios con respecto a esta tecnología. Pero como ocurre siempre con este tipo de cosas, la vida real nos plantea situaciones mucho más complejas. Veamos algunas de ellas. Conjuntos de datos grandes Por defecto, el componente ClientDataSet pide a su proveedor todos los registros del conjunto de datos. Si el conjunto de datos es grande, entonces la aplicación se tomará su tiempo hasta que los datos lleguen al ClientDataSet. Este tiempo será aún mayor al que se necesita, por ejemplo, con un componente Table, debido al tiempo adicional que le lleva al DataSetProvider empaquetar los datos. Para disminuir estos tiempos de respuesta tan largos, lo que podemos hacer es indicarle al ClientDataSet que no pida un paquete con todos los registros, sino que pida paquetes con una cantidad reducida de registros. La propiedad PacketsRecords nos permite indicarle al ClientDataSet la cantidad de registros por paquete que debe solicitar. De esta manera, en lugar de tener un tiempo de respuesta largo cuando solicitemos los datos por primera vez tremos tiempos de respuesta más cortos entre peticiones de paquetes. Sin embargo, la cosa no es tan simple. Si le damos al usuario la posibilidad de navegar a través de los datos con una rejilla, entonces corremos el riesgo de que quiera posicionarse en el último registro, para lo cual el ClientDataSet no trá otro remedio que pedir todos los registros. Si el conjunto de datos es grande, seguramente el usuario de nuestra aplicación nos agradecerá sobremanera recordando a todos nuestros familiares, por el tiempo que le damos para que pueda tomarse un café. Otro problema similar puede surgir a la hora de insertar registros. Si el usuario inserta un registro que de acuerdo al índice activo quedaría ubicado cerca del final del conjunto de datos, al hacer ApplyUpdates el ClientDataSet intentaría posicionarse en ese registro, para lo cual no tría otra opción que pedir todos los registros anteriores al recién insertado. Venga otro café para el usuario de nuestra aplicación. Mi madre? Bien, gracias. Concurrencia Como ocurre con el uso de las actualizaciones en caché, las posibilidades de concurrencia se ven ampliamente incrementadas con MIDAS. Un usuario puede pasarse horas insertando, borrando y modificando datos sin enterarse de que otros usuarios

6 pudieron haber borrado o modificado los mismos datos. Concretamente, para un usuario determinado, si entre el momento en que el ClientDataSet obtuvo el conjunto de datos y el momento en que las actualizaciones son aplicadas en la base de datos otro usuario actualizó alguno de los registros que el primer usuario intenta actualizar, estaremos en presencia de un problema de concurrencia. Cuando el DataSetProvider aplica las actualizaciones en la base de datos genera las sentencias SQL para insertar, borrar y modificar registros. La manera en que se generan estas sentencias SQL es controlada por la propiedad UpdateMode del proveedor. El valor de esta propiedad determina qué campos del conjunto de datos serán incluidos en la cláusula WHERE de las sentencias SQL serán generadas. Los valores posibles de esta propiedad son: upwhereall: en este caso, todos los campos del conjunto de datos serán incluidos en la cláusula WHERE. Esto garantiza que si un usuario intenta actualizar un registro que ha sido modificado por otro usuario la actualización no se aplicará. upwherechanged: sólo los campos que el usuario ha modificado, más los que forman la clave primaria, serán incluidos en la cláusula WHERE. En este caso, si un usuario intenta actualizar un registro que ha sido modificado por otro usuario pueden darse dos situaciones: o si algunos de los campos modificados por ambos usuarios coinciden, entonces la actualización no se aplicará. o si ninguno de los campos modificados por ambos usuarios coinciden, entonces la actualización se aplicará. upwherekeyonly: sólo los campos que forman la clave primaria serán incluidos en la cláusula WHERE. En este caso, la actualización siempre se aplicará (salvo que se modifique la clave primaria), pero en la base de datos quedarán las modificaciones aplicadas por el último usuario. Es posible lograr el mismo efecto para cada campo individual del DataSet a través de la propiedad ProviderFlags. Los posibles valores de esta propiedad son los mismos que para UpdateMode, con un valor adicional que no viene al caso explicar en este momento. En el caso de que las modificaciones a uno o más registros no se hayan aplicado, el DataSetProvider empaquetará los registros que no han sido actualizados y se los enviará al ClientDataSet para darle al usuario la posibilidad de resolver el conflicto. El método ApplyUpdates del ClientDataSet recibe un parámetro que indica la cantidad máxima de errores tolerable antes de cancelar el proceso de actualización. Si el valor es 1, no hay límite para la cantidad de errores tolerable. Si el valor es mayor que 1, al llegar al límite de errores especificado el proceso de actualización será cancelado prematuramente. Como ya se ha dicho, el componente ClientDataSet mantiene un registro de los cambios realizados por el usuario. El método ApplyUpdates empaqueta dichos cambios y se los envía al DataSetProvider. ApplyUpdates devuelve la cantidad de errores ocurridos, es decir, la cantidad de registros que no pudieron ser actualizados. Los registros actualizados con éxito son eliminados del registro de cambios, mientras que los registros que no fueron actualizados no lo son. Esto significa que tanto los registros que

7 no fueron actualizados por errores como aquellos que no fueron actualizados por haberse alcanzado el límite de errores tolerable siguen existio en el registro de cambios después de una llamada a ApplyUpdates. Relaciones maestro/detalle En MIDAS las relaciones maestro/detalle son manejadas de una manera especial. La razón principal para ello es que la actualización del registro maestro junto con sus respectivos registros detalle debe ser realizada en el contexto de la misma transacción, de manera que se grabe todo, es decir, maestro y detalles, o que no se grabe nada. Entonces, cómo es la cosa? Bastante simple. En primer lugar, las relaciones maestro/detalle deben ser creadas del lado de los DataSet que acceden a la base de datos y no del lado de los ClientDataSet. Cuando el DataSetProvider detecta que el DataSet asociado es maestro de otro, entonces coloca en un único paquete los registros del maestro y los registros del detalle. Para cada registro del maestro se crea un campo adicional en el que se almacenan todos los registros asociados del detalle. Del lado de los ClientDataSet, si observamos los campos del ClientDataSet maestro veremos que, además de los campos correspondientes al DataSet maestro, hay un campo adicional de tipo TFieldDataSet, que no es ni más ni menos que un DataSet especial con todos los registros del detalle asociados al registro maestro. Cómo accedemos a ellos? Pues a través de la propiedad DataSetField del ClientDataSet. Colocamos un segundo ClientDataSet para los registros del detalle, y en lugar de asociarlo con un DataSetProvider lo asociamos con el FieldDataSet del ClientDataSet maestro mediante la propiedad DataSetField. Para que este mecanismo funcione, debemos crear el FieldDataSet como campo persistente en tiempo de diseño.

8 Figura 3 Maestro/Detalle Object Form1: TForm1 object Table1: TTable DatabaseName = 'IBLocal' TableName = 'COUNTRY' object DataSource1: TDataSource DataSet = ClientDataSet1 object DataSetProvider1: TDataSetProvider DataSet = Table1 object ClientDataSet1: TClientDataSet Active = True ProviderName = 'DataSetProvider1' object object ClientDataSet1Table2: TDataSetField FieldName = 'Table2' object DataSource2: TDataSource DataSet = Table1 object Table2: TTable DatabaseName = 'IBLocal' IndexFieldNames = 'COUNTRY' MasterFields = 'COUNTRY' MasterSource = DataSource2 TableName = 'CUSTOMER' object ClientDataSet2: TClientDataSet Active = True DataSetField = ClientDataSet1Table2 object DataSource3: TDataSource DataSet = ClientDataSet2 De esta manera, los registros del detalle constituyen en su conjunto el valor de un campo del registro maestro. Esto significa que si modificamos un registro del detalle también estaremos modificando el registro maestro. Haga la prueba y verá que si edita un registro del detalle, el ClientDataSet maestro también pasará a modo dsedit. Ahora al llamar al método ApplyUpdates el registro maestro y sus respectivos registros detalle serán actualizados en el contexto de la misma transacción. Si ocurriera algún error durante la actualización, la transacción sería cancelada manteniéndose la integridad de la base de datos.

9 Supongo que habrá notado que la rejilla del ClientDataSet maestro muestra el FieldDataSet. El componente DBGrid ofrece soporte para conjuntos de datos anidados como los que se utilizan en MIDAS para las relaciones maestro/detalle. Si intentamos editar este campo en la rejilla veremos que aparece un botón con tres puntos suspensivos, que al ser pulsado abre un nuevo formulario con una rejilla mostrando los registros del DataSet anidado. Es una lástima que en este formulario no se incluya un DBNavigator. Actualizaciones personalizadas Muy bien. El DataSetProvider ofrece un mecanismo de actualización que nos ahorra mucho trabajo. Pero qué pasa si dicho mecanismo no nos sirve? Fiel a su filosofía, Delphi nos permite personalizar todo hasta el más mínimo detalle. Veamos algunos casos. El DataSetProvider tiene una propiedad llamada ResolveToDataSet que nos permite modificar completamente el mecanismo de actualización. Por defecto el valor de esta propiedad es False, lo que significa que el DataSetProvider se encargará de resolver las actualizaciones por su cuenta. Pero si le asignamos el valor True entonces el DataSetProvider aplicará las actualizaciones al DataSet asociado, como si todas las acciones sobre el ClientDataSet se hicieran sobre este DataSet. Esto nos da la posibilidad de aprovechar los eventos del DataSet ya sea para realizar validaciones o para actualizar otros DataSet. Si los cambios que queremos introducir no son tan radicales, en lugar de asignar True a la propiedad ResolveToDataSet podemos hacer uso de los eventos del DataSetProvider, que por cierto son muchos. Sin embargo, la mayoría de estos eventos están pensados para el modelo de tres capas que es posible desarrollar con MIDAS, sobre todo en lo que tiene que ver con la comunicación entre el DataSetProvider y el ClientDataSet. Tenga en cuenta que en el modelo de tres capas ambos componentes se hallan en aplicaciones distintas que estarán ejecutándose, muy probablemente, en distintos ordenadores. El evento OnUpdateData se dispara antes de que el proceso de actualización comience. El parámetro DataSet es un ClientDataSet con los cambios a aplicar. En este evento podemos recorrer este conjunto de datos cliente para obtener información sobre las actualizaciones que serán aplicadas e incluso modificarlas. El evento BeforeUpdateRecord se dispara antes de que las actualizaciones de cada registro sean aplicadas. Este evento recibe varios parámetros. SourceDS es el DataSet asociado al DataSetProvider. DeltaDS es un ClientDataSet con el registro a ser actualizado. UpdateKind es el tipo de actualización que se realizará y Applied indica si la actualización debe ser aplicada o nosotros nos encargamos de hacerlo en este evento. BeforeUpdateRecord brinda la posibilidad de ejecutar cualquier conjunto de instrucciones antes de que se apliquen las actualizaciones de cada registro.

10 El evento AfterUpdateRecord es similar a BeforeUpdateRecord pero, como su nombre indica, se dispara después de que las actualizaciones a cada registro han sido aplicadas. Los parámetros son los mismos, exceptuando a Applied. Por último, el evento OnUpdateError se dispara para cada registro que no pueda ser actualizado debido a un error. El parámetro DataSet es el ClientDataSet que contiene el registro que no pudo ser actualizado. E es una excepción del tipo TUpdateError que podemos utilizar para obtener información sobre el error ocurrido. UpdateKind es el tipo de actualización que se intentó aplicar para el registro que generó el error. Response nos permite indicar la acción que debe realizar el DataSetProvider al salir del evento. Explicar los detalles de cada uno de estos eventos sobrepasa los límites de este artículo. La intención es simplemente mencionarlos para mostrarle en qué medida es posible personalizar el mecanismo de actualización del DataSetProvider. Conclusiones Para los programadores de Delphi, el Borland Database Engine o BDE forma parte de nuestras vidas. Con sus ventajas y desventajas, con sus soluciones y problemas, ya estamos acostumbrados a él. Sin embargo, como lo único constante es el cambio, con el proyecto Kylix le llegó su turno al BDE. Su sustituto, Database Express o DBE, nos obligará a modificar la manera en que desarrollamos aplicaciones de bases de datos. La razón principal es que DBE no soporta caching de datos. Por este motivo, la tecnología MIDAS será la piedra angular de las aplicaciones de bases de datos en Kylix. Es posible que Ud. nunca antes haya utilizado los componentes de la página MIDAS de la Paleta de Componentes, ya sea porque nunca los necesitó, porque no tuvo tiempo o no sintió la suficiente curiosidad, o simplemente porque no tiene la versión Enterprise de Delphi. Lo cierto es que si tiene planes de migrar sus aplicaciones a Kylix, entonces es hora de que comience a experimentar con la tecnología MIDAS. Como con toda nueva tecnología (nueva para los que no la conocen, ya que MIDAS fue introducida en Delphi 3), trá que enfrentarse con nuevos problemas que requerirán nuevas soluciones. A lo largo de este artículo hemos visto cómo utilizar los componentes DataSetProvider y ClientDataSet para desarrollar aplicaciones de bases de datos como lo haríamos con Kylix. También hemos presentado algunos de los problemas con los que nos deberemos enfrentar, y cómo solucionarlos o minimizar sus efectos. Sin embargo, todavía queda mucha tinta en el tintero y poco a poco la iremos utilizando para conocer más a fondo la tecnología MIDAS. Consultas o comentarios Cualquier consulta o comentario sobre este artículo será bien recibida por nuestro equipo, contacte con nosotros en soporte@danysoft.com.

Aplicaciones de Bases de Datos con Delphi - II

Aplicaciones de Bases de Datos con Delphi - II Guías técnicas Grupo Danysoft: Aplicaciones de Bases de Datos con Delphi - II Equipo Grupo Danysoft junio de 2003 - (902) 123146 www.danysoft.com Guías Técnicas Grupo Danysoft: Aplicaciones de Bases de

Más detalles

Aplicaciones de Bases de Datos con Delphi III

Aplicaciones de Bases de Datos con Delphi III Guías técnicas Grupo Danysoft: Aplicaciones de Bases de Datos con Delphi III Equipo Grupo Danysoft julio de 2003 - (902) 123146 www.danysoft.com Guías Técnicas Grupo Danysoft: Aplicaciones de Bases de

Más detalles

Guía de Borland para Linux: KYLIX

Guía de Borland para Linux: KYLIX Byte Suplemento especial 71: Guía de Borland para Linux: KYLIX Por Danyserv Grupo Danysoft marzo de 2001 - (902) 123146 www.danysoft.com Página 2-58 Página 3-58 Índice Introducción Aspectos tecnológicos

Más detalles

Contenido. Introducción

Contenido. Introducción Migración de aplicaciones BDE a dbexpress La nueva tecnología utiliza la arquitectura proveer / resolver Por Bill Todd, Presidente de The Database Group, Inc. Para Borland Software Corporation Septiembre

Más detalles

Aplicaciones de Bases de Datos con Delphi

Aplicaciones de Bases de Datos con Delphi Guías técnicas Grupo Danysoft: Aplicaciones de Bases de Datos con Delphi Equipo Grupo Danysoft junio de 2003 - (902) 123146 www.danysoft.com Guías Técnicas Grupo Danysoft: Aplicaciones de Bases de datos

Más detalles

MANUAL DE PROGRAMACIÓN PARA BASES DE DATOS 1.0 MySQL

MANUAL DE PROGRAMACIÓN PARA BASES DE DATOS 1.0 MySQL MANUAL DE PROGRAMACIÓN PARA BASES DE DATOS 1.0 MySQL Rubén Andrés Leiva Cordero Este manual pretende ser un material de apoyo al trabajo realizado en las asignaturas de laboratorio de programación de bases

Más detalles

Guías técnicas Grupo Danysoft: Migración de Aplicaciones BDE a dbexpress II

Guías técnicas Grupo Danysoft: Migración de Aplicaciones BDE a dbexpress II Guías técnicas Grupo Danysoft: Migración de Aplicaciones BDE a dbexpress II Por Pablo Reyes Equipo Grupo Danysoft marzo de 2003 - (902) 123146 www.danysoft.com Este documento se ha realizado utilizando

Más detalles

Descubre este programa creado bajo licencia GPL v.2 que permite la sincronización de archivos y carpetas...

Descubre este programa creado bajo licencia GPL v.2 que permite la sincronización de archivos y carpetas... Descubre este programa creado bajo licencia GPL v.2 que permite la sincronización de archivos y carpetas... es un programa creado bajo licencia GPL v.2 que permite la sincronización de archivos y carpetas

Más detalles

1

1 Curso: BORLAN DELPHI 5 Curso de desarrollo de aplicaciones Windows utilizando el entorno de programación Borland Delphi 5. Se estudian las particularidades del lenguaje Delphi, así como su sintaxis; sus

Más detalles

InterBase / Firebird: el uso de eventos

InterBase / Firebird: el uso de eventos InterBase / Firebird: el uso de eventos Este artículo pretende dar una breve introducción acerca del uso de los eventos de Firebird e InterBase y como usarlos desde Delphi. Los eventos permiten a las aplicaciones

Más detalles

07 Variables. 7.1 Variables globales Definición

07 Variables. 7.1 Variables globales Definición 07 Variables 07 Variables 7.1 Variables globales 7.1.1. Definición Las variables se utilizan para almacenar datos individuales en disco o en memoria. Son datos globales a la aplicación y comunes, en el

Más detalles

Programación Delphi con Bases de datos

Programación Delphi con Bases de datos Creación de la conexión a una base de datos Access. En Delphi podemos establecer la conexión con nuestra base de datos de diferentes formas. A continuación se explican algunas de esas formas. 1) Crear

Más detalles

EJERCICIO 36 DE WORD.

EJERCICIO 36 DE WORD. EJERCICIO 36 DE WORD. MACROS Introducción Al utilizar cotidianamente Word suelen surgir tareas repetitivas que podrían realizarse automáticamente utilizando las propiedades de las macros. Una macro no

Más detalles

Guías técnicas Grupo Danysoft: Migración de Aplicaciones BDE a dbexpress III

Guías técnicas Grupo Danysoft: Migración de Aplicaciones BDE a dbexpress III Guías técnicas Grupo Danysoft: Migración de Aplicaciones BDE a dbexpress III Traducción por el Equipo Grupo Danysoft abril de 2003 - (902) 123146 www.danysoft.com Este documento se ha realizado utilizando

Más detalles

Creando CRUD en PHP: operaciones básicas para la gestión de bases de datos

Creando CRUD en PHP: operaciones básicas para la gestión de bases de datos Creando CRUD en PHP: operaciones básicas para la gestión de bases de datos Cualquier portal web utiliza algún sistema de base de datos para almacenar la información que luego mostrará en sus páginas. Para

Más detalles

En esta clase crearemos los métodos que nos permitan establecer la comunicación, llevar información y buscar en la base de datos.

En esta clase crearemos los métodos que nos permitan establecer la comunicación, llevar información y buscar en la base de datos. GUIA DE COMUNICACIÓN CON BASES DE DATOS 1.1 Creación de clases de comunicación JAVA con MYSQL Al igual que en el tema de validación crearemos una clase que nos permita trabajar de una manera simple la

Más detalles

Guía herramienta de personalización de comercios

Guía herramienta de personalización de comercios Edición septiembre 2018 Índice de contenidos 1 Introducción... 3 2 Acceso al módulo... 3 3 Nueva personalización... 4 4 Editar... 6 4.1 Pantallas... 6 4.1.1 Pantalla de pago... 7 4.1.2 Operación autorizada...

Más detalles

Manual de ayuda de la herramienta de comunicación privada Correo Interno

Manual de ayuda de la herramienta de comunicación privada Correo Interno Manual de ayuda de la herramienta de comunicación privada Correo Interno Contenido Introducción... 3 Configuración del bloque... 3 Gestión del bloque... 4 Lista de contactos... 8 Creación y envío de nuevos

Más detalles

Utilizar bases de datos en C# Objetivo: Identificar como se utilazan las bases de datos en C#.

Utilizar bases de datos en C# Objetivo: Identificar como se utilazan las bases de datos en C#. Programación III Ing. Héctor Abraham Hernández Guía #13 Fecha: 16/05/2011 Utilizar bases de datos en C# Objetivo: Identificar como se utilazan las bases de datos en C#. QUÉ ES ODBC? ODBC es una abreviatura

Más detalles

Ejercicio 1. Formularios Maestro/Detalle.

Ejercicio 1. Formularios Maestro/Detalle. Ejercicio 1. Formularios Maestro/Detalle. Construir un formulario maestro detalle de conductor con viajes que muestre el numero de viajes de ese conductor, numero de kilómetros del conductor, numero de

Más detalles

Behavior: Caching. Video filmado con GeneXus X Evolution 3

Behavior: Caching. Video filmado con GeneXus X Evolution 3 Behavior: Caching En este video veremos cómo habilitar o deshabilitar el caché de los datos navegados en el dispositivo, teniendo en cuenta aplicaciones de arquitectura online. Existen varios escenarios

Más detalles

MICROSOFT EXCEL MICROSOFT EXCEL Manual de Referencia para usuarios. Salomón Ccance CCANCE WEBSITE

MICROSOFT EXCEL MICROSOFT EXCEL Manual de Referencia para usuarios. Salomón Ccance CCANCE WEBSITE MICROSOFT EXCEL MICROSOFT EXCEL 2013 Manual de Referencia para usuarios Salomón Ccance CCANCE WEBSITE IMPRESIÓN 11.1. Vista de Diseño de página En anteriores versiones existía la vista preliminar como

Más detalles

Data Bases 2. La sintaxis precisa de esta función es: mysql_pconnect (nombre del servidor, el usuario de la base de datos, password ) ;

Data Bases 2. La sintaxis precisa de esta función es: mysql_pconnect (nombre del servidor, el usuario de la base de datos, password ) ; Data Bases 2 Este capítulo aprenderemos como crear ya una página de internet en la cual tendrá interacción con el usuario, como llenaremos un formulario HTML y que directamente se registre en la Base de

Más detalles

SQL SERVER Para ingresar a la ventana de administración del SQL Server, proceda a realizar los siguientes pasos:

SQL SERVER Para ingresar a la ventana de administración del SQL Server, proceda a realizar los siguientes pasos: SQL SERVER 2005 Microsoft SQL Server es un sistema de gestión de bases de datos relacionales (SGBD) basada en el lenguaje SQL, capaz de poner a disposición de muchos usuarios grandes cantidades de datos

Más detalles

TEMA 2. TRABAJAR CON UNA PRESENTACIÓN

TEMA 2. TRABAJAR CON UNA PRESENTACIÓN TEMA 2. TRABAJAR CON UNA PRESENTACIÓN 1. INTRODUCCIÓN La aplicación Impress del paquete OpenOffice le permite insertar texto de dos maneras diferentes: Modo Dibujo Modo Esquema Para utilizar el primer

Más detalles

Ministerio de Educación. Base de datos en la Enseñanza. Open Office. Módulo 3: Elementos esenciales del formulario

Ministerio de Educación. Base de datos en la Enseñanza. Open Office. Módulo 3: Elementos esenciales del formulario Ministerio de Educación Base de datos en la Enseñanza. Open Office Módulo 3: Elementos esenciales del formulario Instituto de Tecnologías Educativas 2011 Elementos esenciales de un formulario Tras crear

Más detalles

Microsoft Word. Microsoft Word 2013 SALOMÓN CCANCE. Manual de Referencia para usuarios. Salomón Ccance CCANCE WEBSITE

Microsoft Word. Microsoft Word 2013 SALOMÓN CCANCE. Manual de Referencia para usuarios. Salomón Ccance CCANCE WEBSITE Microsoft Word SALOMÓN CCANCE Microsoft Word 2013 Manual de Referencia para usuarios Salomón Ccance CCANCE WEBSITE UNIDAD 20: MACROS 20.1. Introducción Al utilizar cotidianamente Word suelen surgir tareas

Más detalles

El catálogo y los listados

El catálogo y los listados El catálogo y los listados El catálogo y los listados... 1 Documentación y ayuda... 2 Ventana de listados... 4 Iconos de listados... 5 Ejecutar un listado... 5 Formatos... 6 Filtros y orden de los resultados...

Más detalles

Gestión de formularios: Manual de usuario

Gestión de formularios: Manual de usuario 1-FORMULARIOS... 2 1.1Crear un nuevo formulario... 2 1.2Editar las propiedades de un formulario... 3 1.3Ver datos enviados... 6 1.4 Eliminar un formulario... 7 2-AGRUPACIONES... 8 2.1Crear una agrupación...

Más detalles

Introducción al SQL de InterBase: DDL y DML

Introducción al SQL de InterBase: DDL y DML Artículos técnicos Grupo Danysoft: Introducción al SQL de InterBase: DDL y DML Segunda Parte Tercer Artículo Por Pablo Reyes Equipo Grupo Danysoft julio de 2002 - (902) 123146 www.danysoft.com Introducción

Más detalles

Práctica: OpenOffice IV Aplicar estilos e insertar. un índice de contenidos

Práctica: OpenOffice IV Aplicar estilos e insertar. un índice de contenidos Práctica: OpenOffice IV Aplicar estilos e insertar un índice de contenidos Cuando un documento de texto es muy extenso y contiene varios apartados es muy difícil crear un índice temático que nos muestre

Más detalles

Cómo combinar correspondencia con el asistente en Writer de LibreOffice

Cómo combinar correspondencia con el asistente en Writer de LibreOffice Cómo combinar correspondencia con el asistente en Writer de LibreOffice Cómo combinar correspondencia con el asistente en Writer de LibreOffice 1 Cómo combinar correspondencia con el asistente en Writer

Más detalles

3.- JUSTIFICACIÓN DE LA SOLUCIÓN ADOPTADA

3.- JUSTIFICACIÓN DE LA SOLUCIÓN ADOPTADA 3.- JUSTIFICACIÓN DE LA SOLUCIÓN ADOPTADA 3.1.- Plataformas tecnológicas disponibles Del análisis realizado en apartados anteriores acerca de la problemática que nos ocupa así como de los objetivos a lograr,

Más detalles

Operación de Microsoft Word

Operación de Microsoft Word Uso de los estilos de Word Trabajar con estilos Los estilos son una de las capacidades más importantes de un procesador de textos. Gracias a ellos es relativamente fácil dar formato a un documento, y más

Más detalles

Qué es un grupo. Todo sobre los grupos de Nexus Esade y qué puedes hacer en ellos.

Qué es un grupo. Todo sobre los grupos de Nexus Esade y qué puedes hacer en ellos. Qué es un grupo. Todo sobre los grupos de Nexus Esade y qué puedes hacer en ellos. Qué es un grupo Un grupo es un colectivo de usuarios que comparten un espacio, limitado a los demás usuarios, en base

Más detalles

Índice de contenidos. Manual Word 2016 avanzado 1

Índice de contenidos. Manual Word 2016 avanzado 1 Índice de contenidos Índice de contenidos... 0 Capítulo 1: Combinación de correspondencia... 4 1.1. CREACIÓN DE CARTAS MODELO... 4 1.2. CREACIÓN DE UNA FUENTE DE DATOS... 8 1.3. INSERTAR CAMPOS EN EL DOCUMENTO

Más detalles

INSPIRED. Software de Control de Producción.

INSPIRED. Software de Control de Producción. INSPIRED Software de Control de Producción INSPIRED PRODUCCIÓN es una aplicación avanzada de control de producción desarrollada sobre la tecnología.net de Microsoft y con arquitectura cliente servidor

Más detalles

2.4 Luego, en la pestaña superior al lado de la barra del menú, elegir Desarrollador de aplicaciones

2.4 Luego, en la pestaña superior al lado de la barra del menú, elegir Desarrollador de aplicaciones PASO 2: PREPARAR LA PANTALLA PARA EL DESPLIEGUE DE LOS DATOS 2.1 Desde la pantalla inicial de DW, pestaña Crear nuevo, elegir PHP 2.2 Una vez dentro de DW, hacer clic en la opción Sitio, luego elegir Administrar

Más detalles

La funcionalidad de la aplicación, consiste en el registro de los pagos en línea realizados por los

La funcionalidad de la aplicación, consiste en el registro de los pagos en línea realizados por los Guía de usuario Introducción La funcionalidad de la aplicación, consiste en el registro de los pagos en línea realizados por los clientes a sus proveedores, a través del portal saint pago, actualizando

Más detalles

Sage 50c Premium / Standard / Essential

Sage 50c Premium / Standard / Essential Sage 50c Premium / Standard / Essential Manual de Instalación Sage 02 11 2016 Tabla de contenidos Manual de Instalación 1.0 Presentación 3 2.0 Instalación por defecto de Sage 50c 4 3.0 Instalación avanzada

Más detalles

MANUAL DE USUARIO COPREF EMPRESA

MANUAL DE USUARIO COPREF EMPRESA MANUAL DE USUARIO COPREF EMPRESA Constancia de Origen de Productos Regulados Fitosanitariamente SIAFESON 2014 Elaborado por: Lorenia Hoyos Editor: Alejandro J. Lagunes Colaboradores: Bernardo Pérez, Iván

Más detalles

SUBCONSULTAS SQL. Cuando se ejecuta una consulta que contiene una subconsulta, la subconsulta se ejecuta por cada fila de la consulta principal.

SUBCONSULTAS SQL. Cuando se ejecuta una consulta que contiene una subconsulta, la subconsulta se ejecuta por cada fila de la consulta principal. SUBCONSULTAS SQL DEFINICION. Una subconsulta es una sentencia SELECT que aparece dentro de otra sentencia SELECT que llamaremos consulta principal. Se puede encontrar en la lista de selección, en la cláusula

Más detalles

Unidad 5. Tablas. La celda que se encuentra en la fila 1 columna 2 tiene el siguiente contenido: 2º Celda

Unidad 5. Tablas. La celda que se encuentra en la fila 1 columna 2 tiene el siguiente contenido: 2º Celda Unidad 5. Tablas Una tabla está formada por celdas o casillas, agrupadas por filas y columnas, en cada casilla se puede insertar texto, números o gráficos. Lo principal antes de empezar a trabajar con

Más detalles

Visual Basic.NET Completo

Visual Basic.NET Completo Visual Basic.NET Completo Duración: 50.00 horas Páginas del manual: 495 páginas Descripción Visual Basic es hoy en día uno de los lenguajes de programación más populares del mundo. A principios de los

Más detalles

UNIDAD 17. IMPORTAR Y EXPORTAR DATOS

UNIDAD 17. IMPORTAR Y EXPORTAR DATOS UNIDAD 17. IMPORTAR Y EXPORTAR DATOS 17.1 Importar datos Access te permite importar objetos de otra base de datos a la tuya rápidamente. Para ello, sólo tendremos que acudir a la pestaña Datos externos,

Más detalles

Datos Personales del Notario y Empleados

Datos Personales del Notario y Empleados Datos Personales del Notario y Empleados Versión: 5.1 Fecha del documento: 27/11/2014 Índice del Manual Índice del Manual... 2 Introducción y Objetivo... 3 Acceso a la Aplicación... 3 Visión General de

Más detalles

Persistencia Android. Índice

Persistencia Android. Índice Índice 1 Introducción...2 2 Ejercicios... 2 2.1 Crear el adaptador de la base de datos...2 2.2 Inserción...3 2.3 Método deleteall... 3 2.4 Probando la inserción...3 2.5 Consultas...4 2.6 Adaptador de ListActivity

Más detalles

MANUAL DE USUARIO SISTEMA DE COSTOS ABC SICUD ABC

MANUAL DE USUARIO SISTEMA DE COSTOS ABC SICUD ABC MANUAL DE USUARIO SISTEMA DE COSTOS ABC SICUD ABC UNIVERSIDAD DISTRITAL FRANCISCO JOSE DE CALDAS COORDINACION GENERAL DE AUTOEVALUACIÓN Y ACREDITACION 2006 1 TABLA DE CONTENIDO INTRODUCCIÓN...5 1. GENERALIDADES

Más detalles

LAS RELACIONES ACCESS Manual de Referencia para usuarios. Salomón Ccance CCANCE WEBSITE

LAS RELACIONES ACCESS Manual de Referencia para usuarios. Salomón Ccance CCANCE WEBSITE LAS RELACIONES ACCESS 2010 Manual de Referencia para usuarios Salomón Ccance CCANCE WEBSITE LAS RELACIONES En esta unidad veremos cómo relacionar tablas y los diferentes tipos de relaciones que pueden

Más detalles

Impresión. Vista de Diseño de página

Impresión. Vista de Diseño de página Impresión Vamos a ver las diferentes técnicas relacionadas con la impresión de datos, como puede ser el diseño y la configuración de las páginas a imprimir y la operación de imprimir los datos. Vista de

Más detalles

TEMA 7: PERSONALIZAR Y AUTOMATIZAR EL TRABAJO CON EXCEL (I PARTE)

TEMA 7: PERSONALIZAR Y AUTOMATIZAR EL TRABAJO CON EXCEL (I PARTE) TEMA 7: PERSONALIZAR Y AUTOMATIZAR EL TRABAJO CON EXCEL (I PARTE) 1.- Personalizar barras de herramientas y menús.- Con Excel podemos modificar el contenido de los menús y de las barras de herramientas

Más detalles

Configuración de página e Impresión. Excel 2007

Configuración de página e Impresión. Excel 2007 Configuración de página e Impresión Excel 2007 Configuración de página - Impresión Establecer área de impresión Un paso previo a la configuración de la página y su posterior impresión es indicarle a Excel

Más detalles

11.2. Manual de GTC 2.0: El primer contacto

11.2. Manual de GTC 2.0: El primer contacto 11 MANUALES DE USUARIO 11.1. Introducción GTC 2.0 y Pocket GTC son herramientas desarrolladas para la gestión del trabajo colaborativo. Pretenden ayudar en la difícil tarea de la evaluación de alumnos

Más detalles

PROGRAMACIÓN PÁGINAS WEB CON ASP.NET 3.5 (C#)

PROGRAMACIÓN PÁGINAS WEB CON ASP.NET 3.5 (C#) PROGRAMACIÓN PÁGINAS WEB CON ASP.NET 3.5 (C#) Curso de desarrollo de aplicaciones web. Para ello se estudia la programación de la parte cliente con JavaScript y la programación de la parte servidor con

Más detalles

Manual sobre el uso de Jclic en los centros TIC

Manual sobre el uso de Jclic en los centros TIC 1.- Uso de JClic. 1.1.- Introducción. JClic es un entorno para la creación, realización y evaluación de actividades educativas multimedia, desarrollado en la plataforma Java. Es una aplicación de software

Más detalles

MANUAL DE AYUDA GESTIÓN DOCUMENTAL

MANUAL DE AYUDA GESTIÓN DOCUMENTAL MANUAL DE AYUDA GESTIÓN DOCUMENTAL Fecha última revisión: Febrero 2012 INDICE DE CONTENIDOS GESTIÓN DOCUMENTAL... 3 1. QUÉ ES LA GESTIÓN DOCUMENTAL... 3 LA GESTIÓN DOCUMENTAL EN GOTELGEST.NET... 4 2. REQUISITOS

Más detalles

Sage 50c Premium / Standard Manual de instalación

Sage 50c Premium / Standard Manual de instalación Sage 50c Premium / Standard Manual de instalación SAGE 50c PREMIUM / STANDARD Manual de Instalación 2/11/2016 1 Tabla de Contenidos 1.0 Presentación... 2.0 Instalación inicial de Sage 50c... 2.1 Instalar

Más detalles

Guía rápida de la gestión de documentos en GSIR 3.0

Guía rápida de la gestión de documentos en GSIR 3.0 Guía rápida de la gestión de documentos en GSIR 3.0 Proyecto: GSIR V3 GESI SL Última Revisión: 20/3/2006 REVISIONES Autor Rev. Detalle Fecha GESI SL 1 Primera versión del documento 22/03/06 Este documento

Más detalles

TECNOLOGÍA E INFORMÁTICA

TECNOLOGÍA E INFORMÁTICA TECNOLOGÍA E INFORMÁTICA GRADO: SÉPTIMO 01 02 TEMA: INSERTAR O CREAR TABLAS INDICADOR DE DESEMPEÑO: Utiliza la opción de crear tablas en Microsoft Word para agregar, editar y presentar la información tabulada.

Más detalles

Tema 5: Access. Formularios

Tema 5: Access. Formularios Tema 5: Access. Formularios Los formularios constituyen un medio para representar los datos de forma clara. En Access pueden introducirse datos en formularios, así como también modificarlos, visualizarlos

Más detalles

VISUAL BASIC.NET. NIVEL COMPLETO

VISUAL BASIC.NET. NIVEL COMPLETO VISUAL BASIC.NET. NIVEL COMPLETO DESCRIPCIÓN Visual Basic es hoy en día uno de los lenguajes de programación más populares del mundo. A principios de los años 90 Microsoft revoluciono el desarrollo de

Más detalles

Manual Excel Macros

Manual Excel Macros Manual Excel 2010 Macros CONTENIDO MACROS CREAR UNA MACRO AUTOMÁTICAMENTE EJECUTAR UNA MACRO GUARDAR ARCHIVOS CON MACROS Macroinstrucciones Macros Estudiaremos qué son las Macros, en qué nos pueden ayudar

Más detalles

Visual Basic.net Completo

Visual Basic.net Completo Descripción Visual Basic es hoy en día uno de los lenguajes de programación más populares del mundo. A principios de los años 90 Microsoft revoluciono el desarrollo de aplicaciones para Windows con la

Más detalles

Impresión. Vista de Diseño de página

Impresión. Vista de Diseño de página Impresión Vamos a ver las diferentes técnicas relacionadas con la impresión de datos, como puede ser el diseño y la configuración de las páginas a imprimir y la operación de imprimir los datos Vista de

Más detalles

Manual de Sentencias Básicas en SQL

Manual de Sentencias Básicas en SQL Manual de Sentencias Básicas en SQL Pues hoy que he estado enredando un rato con MySQl, y me he acordado de aquellos comienzos en los que tenía que volver a mis antiguos apuntes para lograr entender las

Más detalles

Visual Basic.net Completo

Visual Basic.net Completo Visual Basic.net Completo Duración: 50.00 horas Descripción Visual Basic es hoy en día uno de los lenguajes de programación más populares del mundo. A principios de los años 90 Microsoft revoluciono el

Más detalles

Manual de ayuda Operativo

Manual de ayuda Operativo Manual de ayuda Operativo INDICE INTRODUCCIÓN 2 INGRESO AL SISTEMA 3 1.- MATRICES DE INFORMACIÓN 3 Ingresar Registros 4 Subir Registros 5 Ver Registros 9 2.- REPORTES 10 Reporte de Actividades 10 Reporte

Más detalles

UNIDAD 10. LAS CONSULTAS DE ACCIÓN

UNIDAD 10. LAS CONSULTAS DE ACCIÓN UNIDAD 10. LAS CONSULTAS DE ACCIÓN Las consultas de acción son consultas que permiten realizar cambios en los datos almacenados en una tabla. Con estas consultas podemos crear una nueva tabla a partir

Más detalles

Prácticas de Microsoft Access

Prácticas de Microsoft Access Ana María Beirão Práctica 1. Creación de una Base de Datos y diseño de varias tablas. 1) Crear una nueva Base de Datos. Llamarla CURSACC01.MDB 2) Crear una tabla nueva para registrar la información de

Más detalles

PLAN DE TRABAJO PROFESORAL PERFIL ADMINISTRADOR

PLAN DE TRABAJO PROFESORAL PERFIL ADMINISTRADOR PLAN DE TRABAJO PROFESORAL PERFIL ADMINISTRADOR TABLA DE CONTENIDO INGRESO AL SISTEMA... 2 CONFIGURACIÓN AL INICIO DEL SEMESTRE... 3 Registrar los parámetros por período... 3 Importar actividades... 6

Más detalles

Tema: Introducción a Oracle

Tema: Introducción a Oracle Base de datos II. Guía 2 1 Facultad: Ingeniería Escuela: Computación Asignatura: Base de datos II Tema: Introducción a Oracle Objetivo Conocer las diferentes formas de acceder a la base de datos de oracle

Más detalles

Módulo 5 - Capítulo 5 2. Configurando la fuente de datos

Módulo 5 - Capítulo 5 2. Configurando la fuente de datos Módulo 5 - Capítulo 5 2. Configurando la fuente de datos Trabajar con fuentes de datos requiere como tarea inicial, que tengamos listo y preparado un origen de fuentes de datos válido. Para esta tarea,

Más detalles

Jazz Despachos Lotes e Importaciones

Jazz Despachos Lotes e Importaciones Jazz Despachos Lotes e Importaciones 1. Introducción 2. Acceso a Despachos 3. Configuraciones 4. Como cargar los despachos 5. Facturando productos con Despacho 6. Informes de Despachos 7. Manejo de Lotes

Más detalles

SISTEMA ELECTRÓNICO DE CONTRATACIONES MANUAL DE USUARIO FINAL MÓDULO DE PROVEEDORES Y CONTRATISTAS

SISTEMA ELECTRÓNICO DE CONTRATACIONES MANUAL DE USUARIO FINAL MÓDULO DE PROVEEDORES Y CONTRATISTAS HOJA 1 DE 32 SISTEMA ELECTRÓNICO DE CONTRATACIONES MANUAL DE USUARIO FINAL MÓDULO DE PROVEEDORES Y CONTRATISTAS Versión 1.0 HOJA 2 DE 32 1. Contenido 1. Requerimientos... 4 1.1. Instalación de Navegador

Más detalles

Computadores y Comunicaciones. Práctica de Laboratorio: Ofimática

Computadores y Comunicaciones. Práctica de Laboratorio: Ofimática Práctica de Laboratorio: Ofimática Julián Viejo Cortés Jorge Juan Chico Febrero 2012 Índice de contenidos 1. Introducción a la práctica...2 2. LibreOffice Writer...2 2.1. Introducción...2 2.2. Entorno

Más detalles

DESCARGAR E INSTALAR EL NAVEGADOR. VENTAJAS DE GOOGLE CHROME. FIREFOX, TAMBIÉN ENTRE LOS MEJORES (CU00710B)

DESCARGAR E INSTALAR EL NAVEGADOR. VENTAJAS DE GOOGLE CHROME. FIREFOX, TAMBIÉN ENTRE LOS MEJORES (CU00710B) APRENDERAPROGRAMAR.COM DESCARGAR E INSTALAR EL NAVEGADOR. VENTAJAS DE GOOGLE CHROME. FIREFOX, TAMBIÉN ENTRE LOS MEJORES (CU00710B) Sección: Cursos Categoría: Tutorial básico del programador web: HTML desde

Más detalles

Word 2010 Manejo de archivos

Word 2010 Manejo de archivos Word 2010 Manejo de archivos Contenido CONTENIDO... 1 MANEJO DE ARCHIVOS... 2 WORD WEB APPS MANEJO DE ARCHIVOS... 7 1 Manejo de archivos Word nos permite crear un nuevo documento en blanco de las siguientes

Más detalles

Página 1 de 18. Revisado: 2006

Página 1 de 18. Revisado: 2006 Página 1 de 18 Jose Ignacio González Gómez. Departamento de Economía Financiera y Contabilidad Universidad de La Laguna www.ecofin.ull.es/users/jggomez. Tema: Vincular datos de Access a Excel. Creación

Más detalles

Área privada Manual de usuario

Área privada Manual de usuario www.topavi.es Área privada Manual de usuario Índice INTRODUCCIÓN... 3 ACCESO AL ÁREA PRIVADA... 3 ÁREA PRIVADA... 3 Apariencia de la página principal... 4 Menú superior... 4 Pantalla completa... 4 Identificación

Más detalles

ACCESO A LA APLICACIÓN

ACCESO A LA APLICACIÓN AYUDA DE LA APLICACIÓN Para esta aplicación se puede utilizar un navegador Internet Explorer 7.0 / Firefox 1.0. Siendo la resolución mínima recomendada la de 1024 x 768 píxeles. ACCESO A LA APLICACIÓN

Más detalles

3. CREAR FORMULARIOS 3.2. APLICAR OPCIONES DE DISEÑO DE FORMULARIOS

3. CREAR FORMULARIOS 3.2. APLICAR OPCIONES DE DISEÑO DE FORMULARIOS 3. CREAR FORMULARIOS 3.2. APLICAR OPCIONES DE DISEÑO DE FORMULARIOS En este punto nos familiarizaremos con otros comandos y opciones de la ficha Diseño en Herramientas de presentación de formulario o Herramientas

Más detalles

Unidad 6. Procedimientos Almacenados y Disparadores

Unidad 6. Procedimientos Almacenados y Disparadores Unidad 6 Procedimientos Almacenados y Disparadores Disparadores (Triggers) Características Los disparadores solo ocurren cuando se presentan determinados eventos Los tipos de eventos permitidos suelen

Más detalles

MANUAL WinPoET 1/31. MANUAL WinPoET

MANUAL WinPoET 1/31. MANUAL WinPoET 1/31 MANUAL WinPoET Mayo 2006 1/31 INDICE 1. Introducción... 2 2. Windows 2000, 98 y ME - Instalación y configuración del WinPoET... 3 3. Windows XP Configuración de la conexión... 10 4. Windows XP - Comprobación

Más detalles

Herramientas de los terminales futro: Intranet, procesador de texto, presentaciones, hoja de cálculo y correo electrónico Via Express

Herramientas de los terminales futro: Intranet, procesador de texto, presentaciones, hoja de cálculo y correo electrónico Via Express Herramientas de los terminales futro: Intranet, procesador de texto, presentaciones, hoja de cálculo y correo electrónico Via Express Distrito Sanitario Jaén Nordeste Página 1 de 25 Introducción Desde

Más detalles

WINDOWS 98/Me CONFIGURACIÓN DE WINDOWS III. Sistema

WINDOWS 98/Me CONFIGURACIÓN DE WINDOWS III. Sistema 13 CONFIGURACIÓN DE WINDOWS III Sistema Sistema.lnk La utilidad Sistema proporciona información relativa a su equipo y a los dispositivos instalados en su ordenador; además, permite modificar la configuración

Más detalles

UNIDAD 4. MODIFICAR TABLAS DE DATOS

UNIDAD 4. MODIFICAR TABLAS DE DATOS UNIDAD 4. MODIFICAR TABLAS DE DATOS Aquí veremos las técnicas de edición de registros para modificar tanto la definición de una tabla como los datos introducidos en ella. Esta unidad está dedicada, principalmente,

Más detalles

Ejercicios Tema /03/2009

Ejercicios Tema /03/2009 Ejercicio 1. Sobre la base de datos mantecados tabla clientes realizar las operaciones de siguiente, anterior, primero y ultimo con un record set. Insertar, borrar y modificar con un comando. En la modificación

Más detalles

CURSO SOBRE LA PDi SMART USO DEL SOFTWARE NOTEBOOK

CURSO SOBRE LA PDi SMART USO DEL SOFTWARE NOTEBOOK CURSO SOBRE LA PDi SMART Y USO DEL SOFTWARE NOTEBOOK (2) http://www.aprenderconsmart.org/ La pizarra digital interactiva (PDI) Smart Board Herramientas "Centro de bienvenida" Esta herramienta se puede

Más detalles

UNIDAD 6. LAS RELACIONES

UNIDAD 6. LAS RELACIONES UNIDAD 6. LAS RELACIONES En esta unidad veremos cómo relacionar tablas y los diferentes tipos de relaciones que pueden existir entre dos tablas de una base de datos. 6.1 Crear la primera relación Para

Más detalles

Manual de Peticiones a Sistemas. Departamento: Tecnología y Desarrollo. Responsable: Javier Recio

Manual de Peticiones a Sistemas. Departamento: Tecnología y Desarrollo. Responsable: Javier Recio Manual de Peticiones a Sistemas Departamento: Tecnología y Desarrollo Fecha: 26/06/11 Responsable: Javier Recio Global Exchange; Central; España 1 ÍNDICE 1.- Peticiones a sistemas... 3 1.1.- Incidencias...

Más detalles

Índice. Tutor de impresión de informes Página 1 de 19

Índice. Tutor de impresión de informes Página 1 de 19 Página 1 de 19 Índice Tutor de impresión de informes... 2 Introducción... 2 Proyecto de datos... 2 Objetos básicos del proyecto de aplicación... 2 Informes en función de la salida... 3 Informe con selección

Más detalles

Visual Basic.net. Duración: 60 horas. Modalidad: online. Contenidos

Visual Basic.net. Duración: 60 horas. Modalidad: online. Contenidos Visual Basic.net Duración: 60 horas. Modalidad: online El objetivo general del curso es conseguir que el alumno sea capaz de conocer el funcionamiento de Visual Basic.NET empezando por los conceptos más

Más detalles

Firma electrónica de documentos PDF Universidad de Las Palmas de Gran Canaria FIRMA ELECTRÓNICA DE DOCUMENTOS PDF

Firma electrónica de documentos PDF Universidad de Las Palmas de Gran Canaria FIRMA ELECTRÓNICA DE DOCUMENTOS PDF FIRMA ELECTRÓNICA DE DOCUMENTOS PDF 1 Contenido 1. Firmar electrónicamente documentos PDF... 3 2. Verificar la validez del certificado digital con el que se ha firmado un documento... 7 3. Instalar su

Más detalles

Modelamiento y Diseño de Base de Datos

Modelamiento y Diseño de Base de Datos Modelamiento y Diseño de Base de Datos Sub consultas y vistas Objetivos: Elaborar sub consultas, a partir de una consulta. Generar diferentes vistas a partir de las tablas de una base de datos. Introducción

Más detalles

MySQL por línea de comandos

MySQL por línea de comandos MySQL por línea de comandos Acceso a un servidor MySQL y administración de la base de datos por línea de comandos. Es muy normal que utilicemos MySQL a través de páginas PHP y para administrar la base

Más detalles