
Lunes 30/09/2002
Resumen de la Conferencia
Estas son las distintas conferencias que tuvieron lugar el día de hoy.
Optimizando Consultas en SQL Server
Presentado por Chuck Urwiler (EPS Software, Houston, Texas,
USA)
Autor del libro "Building Client/Server Applications with VFP and SQL Server"
Mientras existen muchas similitudes entre los motores de bases de datos de
VFP y SQL Server, hay muchas diferencias en como optimizar las consultas para
ambos productos.
En la sesión se vió como optimizar estas consultas, para SQL Server,
construyendo diferentes tipos de índices. Esto con el objetivo de ganar
velocidad en las consultas.
Para esta optimización, se dijo que debemos tener en cuenta: la
información a extraer de las consultas, los índices a crear, y manejar las
herramientas de ayuda que posee SQL Server.
Para la construcción y mantenimiento de índices, se vió el uso del
Enterprise Manager y también el Query Analizer.
En las herramientas se vió: la sentencia SET STATICS IO y comprender los
mensajes retornados, el Execution Plan y sus gráficos de resultados, y también
se vió el uso del SQL Profiler. Todo esto con la ayuda del "Book On Line" del
SQL Server.
Se mostraron los Serch Arguments (SARGs), cuales son los buenos argumentos
y los pobres argumentos.
Como fuentes de información se dieron los siguientes vínculos:
Automatizando Office con VFP.
Presentado por Marcia Akins
Comenzo explicando que Visual FoxPro es una potente herramienta de
desarrollo, pero que no lo puede hacer todo, Office es un buen complemento para
extender las posibilidades de Visual FoxPro. Todo ello a través de la
automatización de Office.
Se habló de como combinar correspondencia con Word, automatizar Excel para
crear gráficos (con bastantes ejemplos) y Outlook para enviar y recibir correo
electrónico y acceder a la libreta de direcciones.
Lo primero para realizar la automatización es utilizar el comando
CREATEOBJECT, a partir de ahi ya nos podemos referir a dicho objeto de Office y
ejecutar comandos allá. A mayores se comentó como convertir la sintaxis de
Office VBA a sintaxis comprensible para VFP.
Por último se mostró el examinador de objetos para localizar el fichero de
ayuda, constantes DEFINE y prototipos, asi mismo como la posibilidad de trazar
los eventos de Office, como por ejemplo cerrar el Word.
Estrategia avanzada de datos con VFP.
Presentado por Doug Hennig
Esta sesión es una continuación de una sesión previa sobre estrategias de
datos. La sesión previa hablaba sobre ventajas y desventajas de Vistas sobre SQL
a través de paso (SPT) y acceso a datos XML, no la cubrimos porque es una
información mas habitual.
En esta sesión se habla de una nueva y excitante característica de Visual
FoxPro 8, como es el CursorAdapter, Doug la considera una de las mejores
características de Visual FoxPro 8.
Dice que:
- Es fácil de usar
- Tiene un interface consistente
- Que es fácil de cambiar los mecanismos
¿Pero que es el CursorAdapter? El CursorAdapter es una nueva clase para
extender la funcionalidad de los cursores, que ofrece un amplio rango de
orígenes de datos locales y remotos, así como cursores nativos de Visual FoxPro.
Estos origenes de datos pueden ser:
Propiedades, Eventos y Metodos mas importantes
- DataSourceType - Puede ser ADO, ODBC, XML, Native, NULL o vacio
- DataSource - Origen de datos a utilizar
- SelectCmd - Especifica la sentencia SQL utilizada para consultar datos
- CursorSchema - Define la estructura del cursor asociada con un objeto
CursorAdapter
- AllowDelete, AllowInsert, AllowUpdate, SendUpdates - Indican si pueden
realizar las operaciones de Borrado, Inserción y Actualización respectivamente
- KeyFieldList, Tables, UpdatableFieldList. campos clave, tablas, campos
actualizables
- InsertCmd - Comando para utilizar al añadir nuevos registros
- InsertCmdDataSource - Origen de datos del comando
- InsertCmd InsertCmdDataSourceType - Tipo de origen de datos de la
propiedad anterior.
- CursorFill - Ejecuta la propiedad SelecCmd contra el origen de datos
definido en DataSource
- CursorRefresh - Refresca un cursor con los datos del origen de datos
Así mismo se comentó que la clase CursorAdapter puede subclasear el
entorno de datos visualmente. Se disponen de nuevos generadores de Entorno de
Datos y de CursorAdapter.
Utilizando datos nativos
- Utilize el CursorAdapter en vez del cursor para aplicaciones que puedan
ser actualizadas a otros sistemas
- DataSourceType = "Native"
- SelectCmd debe ser una instrucción SELECT SQL
Usando ODBC
- DataSourceType = "ODBC"
- DataSource = manejador para apertura de conexión
- SelectCmd = instrucción SELECT SQL o EXEC procedimientoalmacenado
- Definir propiedades de actualización a autoupdate
- Definir InsertCmd, InsertCmdDataSource, InsertCmdDataSourceType para
utilizar procedimientos almacenados
Usando ADO
- DataSourceType = "ADO"
- DataSource = recordset ADODB
- Poner en el CursorFill un comando ADODB si el query es parametrizado
Usando XML
- DataSourceType = "XML"
- CursorSchema debe estar cubierto
- SelectCmd debe ser una expresión (por ejemplo una UDF) que devuelva un XML
a cursor
A mayores hablo de los entornos de datos reutilizables, que significa
varias cosas: se pueden añadir cursores a entornos de datos y crear clases
reutilizables por codigo que usen un cargador de entorno de datos.
Por ultimo se comentó tambien sobre la nueva clase XMLAdapter, que
extiende las caracteristicas del CursorAdapter, con soporte de XML jerarquico,
conjuntos de datos ADO.NET ...
Pero al fin, ¿que significa todo esto? En resumen la clase CursorAdapter
nos permite definir un medio de acceso a datos, que realizando unos cambios
minimos nos permite a nuestras aplicaciones manejar diversos origenes de datos
(por ejemplo, cualquier base de datos compatible con ODBC, SQL Server, cursores
VFP nativos, datos XML, ...
Usando el Depurador de Visual Foxpro
Presentado por Tamar Granor
Tomorrow's Solutions, LLC
Co-autor de Hacker's Guide to VFP, Que es nuevo en VFP 7, y Automatizacion de
Microsoft Office con VFP.
Microsoft Soporte MVP
Microsoft Certified Professional
Visual FoxPro tiene un poderoso depurador que provee muchas herramientas
para ayudarnos a encontrar problemas con nuestro código, en esta sesión
estaremos revisando el depurador, mostrandonos como hacer la mejor herramienta
para agilizar el desarrollo, optimizar el código y entener mejor Visual FoxPro.
Porque discutir el Depurador?
El Depurador
- Corta tiempo perdido al depurar
- Ayuda a producir mejor código
- Ayuda a entener VFP
El depurador es muy poderoso. Muchas de las cosas que nos ayuda el
depurador es al de ayudarnos a empezar, ya sea con frames, configurando el
depurador y empezando con el depurador.
En la ventana del depurador podemos rastrear, localizar, mirar o ver la
salida del depurador.
Ya en trabajo en tiempo real podemos trabajar con el depurador para
localizar cadenas de caracteres en un proyecto, buscar métodos, proteger
métodos.
Con el manejo de errores al suspender algún programa nos abrirá el
depurador, nos pondrá el código en la línea que actualmente se quedó el programa
e incluso poner una ventana de mensaje para algo que queremos mirar en
especifico.
También una de las características del depurador es que podemos arreglar
errores o modificar en tiempo real.
Probando e Implementando Aplicaciones Visual FoxPro
Presentado por Mike Stewart
Microsoft
Mike Stewart es el Lider de Pruebas de Software en el equipo de Visual
FoxPro. Mike a estado trabajando con Microsoft por mas de tres años, y ha
trabajado en MDAC en adición a su tiempo trabajado con VFP. Antes de venir a
Microsoft, el trabajó como un consultante independiente construyendo
aplicaciones a la medida con base de datos usando VFP, C++ y Visual Basic.
Probar sistemas complejos es una tarea dificultosa, ¿Cómo saber si uno
necesita probar las cosas necesarias? ¿Cómo saber cuando detenerse? en esta
sesión, se introdujo a los conceptos profesionales de como probar software.
Desde la creación del plan, hasta el libramiento del producto, se aprendieron
tecnologías y metodologías usadas por profesional testers, así también de como
aplicar en el propio desarrollo de uno.
|