Your SlideShare is downloading. ×
Curso de visual fox pro - Desprotejido para Imprimirlo
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Curso de visual fox pro - Desprotejido para Imprimirlo

5,318

Published on

Curso de visual fox pro - Desprotejido para Imprimirlo

Curso de visual fox pro - Desprotejido para Imprimirlo

1 Comment
12 Likes
Statistics
Notes
No Downloads
Views
Total Views
5,318
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
0
Comments
1
Likes
12
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. iiDesprot~ido p;:¡r;:¡ Imprtmirt!Curso de Visual FoxProIntroducciónVisual Foxpro es uno de los gestores de Bases de Datos relacionales más rápido yflexible del mercado, disponiendo de un complejo entorno de desarrollo totalmenteorientado al objeto y altamente inlegrado en el sistema ope rativo Windows 95. Comocualquier otra aplicación Windows estándar, Visual Foxpro soporta interfaces MOl(Interfaz de Documento Multiple), como la de Word, barras de herramientas, ayudasensible al contexto, múltiples fuentes, acceso a bibliotecas de enlace dinámico (DLL),elc.Aparte del acceso a tablas en formato nativo de Visual FoxPro, se puede accedervirtualmente a cualquier fuente de datos cuyo acceso se pueda hacer atrav és de oose(Open Database ConnectivitY). Este est ándar. definido como Conectividad Abiertade Bases de Datos, permite abrir y consu ltar diversas bases de datos a través de unconjunto de controladores, utilizando SQL como lenguaje de consulta.Con el advenimiento de Visual Fox, los desarrolladores de aplicaciones tienen acceso amultitud de eventos y opciones que los programadores de Visual Basic y Visual etuvieron durante años. Se elimina la necesidad del uso del READ y su confusanidificación (Fundational read ).
  • 2. Curso de Visual FoxProProgramación Orientada a EventosEn Visual FoxPro cada acción que tu realizas es un evento, por ejemplo el movimientodel mouse, hacer click sobre un botón, escribir un texto en un cuadro de texto, etc. Porlo tanto cuando se programa en Visual FoxPro quedan atrás todos esas formas queteniamos de programar en FoxPro para Windows, aqui todo se maneja por eventos, esdecir solo programas el evento que quieres que realice una acción cuando suceda, aquíen Visual FoxPro no tienes que tener procedimientos o rutinas para validar por ejemplola entrada en la clave del articulo, simplemente se programa el evento respectivo,además de que no es tan tedioso el mantenimiento del sistema. Es decir no tienes querecorrer todo tu archivo de rutinas para encontrar la falla, no tienes que codificarprocedimientos de validación. Por ejemplo supongamos que en FoxPro DOS o paraWindows deseas poner unos botones que ejecutan ciertas instrucciones, y cuando sehace eso tienes que crear una función en la cual preguntas cuál fue el que se presionoy según el valor, ejecutabas las instrucciones para ese botón, en Visual FoxPro no esasí, simplemente programas para cada botón, lo que quieres independientemente deque se presione otro y así no tienes que preguntar cual fue el que presiono porque cadaevento de cada objeto es independiente y solo puede ocurrir uno en ese momento, esdecir que no se pueden desencadenar dos eventos al mismo tiempo o es CLlCK o seMOVIO EL RATON o algún otro evento.Programación Orientada a ObjetosEn Visual FoxPro y en otros, se le llaman objetos a todo lo que ves en pantalla; losobjetos son por ejemplo un botón, una caja de texto, una imagen, y en general todoobjeto visual que veas en la pantalla.Se les llaman objetos porque cada uno tiene sus propiedades, por ejemplo un botóntiene su propiedad de texto que es la que se ve dentro del botón, también tiene unancho , un alto, y así para cada uno de los objetos, he aquí la ventaja de Visual FoxProsobre lenguajes como FoxPro para Windows en la cual son solamente campos y que nose le pueden cambiar sus características dinámicamente, por lo tanto esto provoca unamayor velocidad en el desarrollo.Un ejemplo sencillo, imagínense que tienen una pantalla de captura en la cual en elcampo 4 necesitas ejecutas una porción de código que según el valor que te devuelvacontinuas con el campo 5 o regresas por decir al campo 2, simple y sencillamente, o lohaces con un DO...While o vuelves a pedir el campo, y lo mismo sucede si quieres queun campo que tienes en pantalla por alguna razón necesitas cambiarlo de color, quetienes que hacer, pues volver a desplegarlo con su nuevo color, y en Visual FoxPro noes así, porque ese campo es un objeto en pantalla, y puedes decirle al programa que seregrese a tal objeto, o cambiarle el color a tal objeto, y muchas otras cosas que conFoxPro no se pueden y lo que provocan es que el programador pierda tiempoescribiendo líneas y líneas de código.
  • 3. Curso de Visual FoxProEjemplo de un objeto el cual tiene propiedades que lo describen:Objeto: BotónTexto: Soporte r écnlccAncho: 360Alto: 90:2.(¡porte técno::o
  • 4. Barra de MenúsCurso de Visual FoxProEntorno de DesarrolloEl entorno de desarrollo son las partes visuales de las que esta compuesto todolenguaje de programación visual, como lo son Visual FoxPro, Visual Baste. Delphi, etc.,en la sigofigura se muestra la pantalla de inicio de Visual FoxPro.Barra deHerramientasi,rchivo die"", ,<er [",molo !::!erromientas ErOQfomo Vntona~~~ .T1~ EI=::illiilI Comandos l1li0013-NUfA,Ventana deComandosBarra de MenúsPor medio de esta barra de menús podremos accesar a todas las opciones que VisualFoxPro nos ofrece como Abrir o Crear una Base de Datos, un Reporte, etc, etc.Barra de HerramientasPor medio de esta barra de Herramientas podremos accesar a todas las opciones quemás se utilizan, sin necesidad de ir a los menús a buscar sus respectivas opciones , estoes para tener un acceso más rápido.
  • 5. Curso de Visual FoxProEl Administrador de Proyectos¿ Que es un Proyecto?Un proyecto en Visual FoxPro es el conjunto de pantallas. reportes. bases de datos quevan a forma r parte del Sistema que estés desarrollando. Un proyecto esta dividido comoya dije por categorias, por un lado las pantallas y reportes de tu sistema, por otro ladolas bases de datos que la componen, sus menús, etc.l a sigoFigura muestra el administrador de proyectos.Pages Tabs oPaginas~ ,.@f·· @) form2L. ~ frmrnertl.j~ lnlocrnes§" EtiquetasDescripciónjep.Jar.Generar..,
  • 6. Curso de Visual FoxProVentana de Comandol a ventana de comandos nos sirve para utilizar comando interactivamente (fuera de unprograma) con Visual FoxPro, para efectuar tareas de revisión, mantenimiento, yalgunas otras. Esta es uno de los puntos fuertes de Visual FoxPro frente a lenguajescomo Visual Basic y Delphi, los cuales no cuentan con ninguna opción parecida por locual las tareas de comprobación y mantenimiento son más tediosas y por 10 tantoperdida de tiempo.l a sigofigura muestra la ventana de comandosíiiiII Comandosdirl_ DSi esta ventana no se encuentra en la pantalla principal se puede activar desde el menúventana -> ventana de comandos o con la tecla rápida Ctrl + F2.Bases de Oatos y Tablas¿ Que es una Base de Datos?En FoxPro para DOS y Windows una base de datos era un archivo DBF en el cual sealmacenaba los registros por ejemplo de clientes.En Visual FoxPro este concepto a cambiado. Ahora una base de datos es uncontenedor de todas las tablas ( clientes, articulas, etc.), relaciones entre las tablas,indices de las tablas, conexiones bases de datos remotas, etc.
  • 7. Curso de Visual FoxProEjemplo de Base de Datos con Tablas, donde se aprecia una relación:Base de Datos(Contenedor)•I Inporjnl3npor_comi~~n3nlipojlV4npor_",14npor_cornlSOJn4cbereñcenotnpcrbenefcieiiclcbl3neliciallo2npor_bend ic",rio2mndi(:e~ pametnonnCJIIiJre•@!CllmposccrevecrcmbecclrecclOlLEndicesnombrelclave•••¿ Que es una Tabla ?Tabla Cuenta Habientesrelacionada con Centrosde rrabaloUna tabla es un archivo donde se almacena la información en Columnas y renglones,por ejemplo, el nom bre de un Cliente, su dirección y su teléfono, esas seria n lascolumnas y los renglones seria todos los clientes registrados.En Visual FoxPro es un archivo DBF, conocido anteriormen te en FoxPro como base dedatos. En Visual FoxPro las tablas tienen ahora mas capacidades como nombres largosde tablas y de campos, reglas de validación a nivel de campo, y algunas otras.
  • 8. Curso de Visual FoxProCrear un ProyectoPara crear un proyecto para un sistema donde almacenaremos nuestras tablas,reportes, menús, etc. Hay que ir al menú Archivo -> Nuevo, entonces aparecerá la sigoPantalla :Seleccionarla ooción;;" Nuevo ElNuevo ~rcl-;voC~ncel~r IA,,"", ISeleccionar Proyecto y dar Click en Nuevo Archivo, y entonces aparecerá la sigoPantalla para elegir un directorio donde guardar nuestro proyecto:Crear 1113Escribir elNombre delProyectoG~ardar en: IkiI Se¡ru->do ID:) cO&GeIRO;h~SQlJny50-..l- Teach YOllsel Dolemse wilh VB5"OCProyeclo Ipr0l2.PixGuordor CQfOO 1;;.0 IProyecloGuardorC::telorSeleccionarDirectorioy despuésGuardar
  • 9. Curso de Visual FoxProUna vez guardado el proyecto aparecerá la ventana de Proyectos, con el nombre quenosotros le pusimos como se muestra en la SigoFigura." Adrrllnls~radorde proyectos Central EJlBFF~I8gregar", IModifrUlr IEjepJlar II~~G~e~c"e~""""~I¡DescriPCiónRuta:Crear una Base de DatosDebes seleccionar primero la Pagina Datos en el Admin istrador de Proyectos y elegir laOpción Bases de Datos, posteriormente hacer click sobre el botón Nuevo.Modificaruna Basede DatosCrear nuevaBase deAgregar unaBase de Datosque ya existestredor de proyec~os Pro 1 13IDescriPciónRula:PaginaDatos[-
  • 10. Curso de Visual FoxProAl hacer click sobre el botón Nueva aparecer á la ventana en la cual nos pedirá unnombre y la ubicación donde será guardada, como se muestra en la sigoFigura.Crear D aNombre de laBase deG~ardar en: Ifil Segundo ID:),""GelRio;h~5QLAny5üTeoch Y""sei D sab~se oiI:h VB5,,;IIIUna vez creada nuestra Base de Datos, nos debe aparecer lo que se llama elcontenedor de la Base de Datos, como se muestra a continuación:" Nrcro. oRVISUal FoxPr. "r::JContenedorde Base deDatosBarra deHerramientaspara Base deDatos;,J U"enadOl de ba.e. de daros Uatos I I!!!II!JEl• ,D
  • 11. Curso de Visual FoxProBarra de Herramientas Base de Datos.~Nueva Tabla:Crear una nueva tabla para la Base de Datos"o~Agregar Tabla:Agregar una Tabla existente a la Base de DatosEliminar Tabla:Eliminar la tabla seleccionada de la Base de datoséSi,Nueva Vista Remota:Crear una vista de una Tabla contenida en una Base de Oatos Externa~Nueva Vista local:Crear una vista de una{s) Tabla{s) locales"Modificar Tabla:Modificar las propiedades de la Tabla seleccionada de la Base de DatosExaminar Tabla:Ver la lista de registros contenidos en la Tabla seleccionada de la Base de Datos (browse )~ I-Editar Procedimientos Almacenados:Editar los procedimientos almacenados de la Base de Datos~Conexiones:Crear o Editar conexiones a Bases de Datos Externa s
  • 12. Curso de Visual FoxProCrear una TablaPara crear una tabla, debes primero ir la pagina Oatos y seleccionar la Base de Datos ala cual le quieres agregar la tabla, dándole doble click sobre ella, y posteriormenteseleccionar la opción Tablas, para después hace r click sobre el botón Nuevo, como semuestra en la sig oFigura.PaginaDatosEl r5I:J Beses de detosEH~ 0 detcs... ~ illllIII!"..~~ Vis~Cls locales:.. ~ vletee remotas!".{§iI Lonexiones.. L:I Procedimientos elmecer~ T~bl"s Iibr",~¡§l EcnsuheeDescnpcio-cRut~:Crear nuevaTablaAl hacer click sobre el botón Nuevo aparecerá la ventana en la cual nos pregunta sideseamos una Tabla en blanco, o queremos usar el Asistente para Tablas.Seleccionaremos Tabla en Blanco, como se muestra en la sigoFigura.iI Nueva tabla f3Hacer clicken TablaNuevaA..istente para tablas Nueva tabla
  • 13. Curso de Visual FoxProAl hacer click sobre el botón Tabla Nueva entonces deberá aparecer de nuevo laventana donde nos pide un Nombre y una ubicación para la Tabla (la tabla se guardacon extensión DBF), como ya se ha visto ese procedimiento ya no se mostrara esapantalla.Una vez habiendo elegido un nombre y una ubicación donde quedara almacenada laTabla que vamos a crear, nos aparecerá el Diseñador de Tablas, como se muestra enla SigoFigura.Tipos de DatosAcepl""lose,l""Concel",NU L[!JVoIidoción de cornpo IBegl,. r-- - - - ;Menloie Ir-- -;AnchO DecmOl ucas""tu[iJ EE Ea [].¡] tiCiOI6eterC",!lelorC""ócle,C""ócle,INo.mérooDefiniciónde CamposDefinicióndel Formatode EntradaDefinición de reglasde validación de loscamposDefinición de campos:Igual que en las versiones anteriores, la definición de campos es igual. Se introduce elnombre del campo (nombre) el tipo de datos que soportará (Tipo) y el tamaño.Definición de MostrarFormato : Es el formato de salida del campo, ejemplo si fue ra numérico 9,999.99 o sifuera carácter !!!!!!!!!!!!, para que solo acepte mayúsculasMascara de Entrada: Igual que el Format, lo único que es para la entrada de datos.Titulo : Descripción más precisa del campo, es de utilidad al diseñar los Formularios.Definición de reglas de validación a nivel de campo
  • 14. Curso de Visual FoxProl a validación son triggers o eventos que se ejecutan a nivel de campo. Ejemplo: unavalidación de un campo que solo acepte números positivos. (id > O)Regla : Es la regla de validación, ejemplo: id ;:. O, si queremos que acepte valorespositivos.Mensaje : Es el mensaje personalizado que queremos que aparezca en pantalla a lahora de vtolarse la regla de validación del campo. Ejemplo: Solo se aceptan númerospositivos (nota: el texto debe escribirse entre comillas).Valor Predeterminado : Valor por defecto del campo. (nota: hay que respetar el tipo dedato del Campo)l uego de hacer la definición de los campos, pasa mos a la definición de Indices de latabla, que será muy importante a la hora de crear las relaciones entre las tablas.:t DISeñador de labias labla2 dbl 13Nombre delIndicp.Nombre dellndice (Nombre)ExpresónNormal • nombre!Tipo delIndiceF~roNombre de loscampos quecomponen elíndiceConcel", IIntroducir el Nombre del archivo índice . Es conocid o también como TAG.Tipo (tipo de Indice)PrimaryCandidateUniqueRegular: llave primaria.: llave candidata: llave única.: llave foránea.c. Nombre de la ExpresiónNombre de los campos que conforman la llave primaria:
  • 15. Cu rso d e Visua l FoxProEjemplo : id , o si son varios campos : id + lineaNota: si los campos no son del mismo hay que forzarlos al tipo de dato deseado,ejemplo: si id es carácter y línea, entonces el nombre de la expresión seria:Id + STR(tinea)STRO convierte de número a carácter y VALO convierte de carácter a numérico.Ejercicio Práctico:Cree la siguiente base de datos con el nombre de Curso.;¡.J DIseñador de bases de dato. - Bool<s I!lIiID...Je1ICarrpJs •I~j d-(Eíndces1 topic_ide1ICampo"booU :JlilleI~c_idcCtpjJIV<Je3fiobn ~umberrtlbi8herJ_ epurchage_>"icecoverlypedale_P-fCMSedp~ges"""L!lírrlceslope_idibook_id§lCampos:"",hor idflsl_narneIa>t_name"""m e"cily,1.le"e=,,,~ .l:Eíndices,iauthor_id"IaleI.stname- . J11. 11"1 I ~ I 1-- - - - - - - - - - - - - - - - - - - - - - - - -"-"Estructura de las Tablas del ejercicio:TOPICS.DBFNombre del Cameo Tioo de Dato LongitudTooic id Entero 4Topic Carácter 50BOOKAUTH.DBFNombre del Caf!!..l!...o Tipo de Dato LongitudBook id ente ro 4Author id ente ro 4
  • 16. Curso de Visual FoxProAUTHORS.DBFNombre del Caf!!..l!...o Tipo de Dato Longitudauthor id Entero 4Firsl name Carácter 50Last name Carácter 50Notes MemoAddress Carácter 30City Carácter 25State Carácter 2Zip Carácter 10Phone Carácter 17Fax Carácter 17Ema il Carácter 20BOOKS.DBFNombre del Campo Tipo de Dato LongitudBook id Entero 4Title Carácter 50Topie id Entero 4COpy~t vear Entero 4Isbn number Carácter 50publisher name Carácter 50purehase priee Monetario 8covertype Carácter 30dale purchased Fecha 8Pa es Entero 4Notes Memo
  • 17. Curso d e Visua l FoxProRelaciones entre Tablasl as relaciones mas comunes entre tablas se definen :De uno a uno : Ejemplo de una llave primaria a otra llave primariaDe uno a muchos : Ejemplo de una llave primaria a una Regular o Foránea.De muchos a muchos : Aqui como no se pueden establecer relaciones de muchos amuchos se tiene que dividir en dos relaciones de Uno a muchos. Ejemplo: Un Autorpuede tener varios libros, pero también un libro puede tener varios autores.l as relaciones entre tablas se crean arrastrando la llave de la tabla a la llave de otratabla.~¡ 1oI1".o~ofl VI~ual FoIIP,o~ DI~eñadm de base. de datos - Dato.1 I!!IIi1I3~C""PJ"cI~YeeJOmbre"",,-!:!indic."i cla"""e",,,"""El C~mpo" &do""M"(EÍnOces!c1av""M"Relación entre tablas(de uno a muchos)l a figura muestra una relación entre las tablas Empleados y Departamento, la relaciónse leeria asi: "Una Departamento tiene muchos empleados".
  • 18. Curso de Visual FoxProDentro del Diseñador de Bases de Datos, existe un botón él la Barra de Herramientas,que se llama Examinar (Browse), con el cual, veremos el contenido de la Tablaseleccionada, y en donde podremos, agregar, eliminar, cambiar información de la Tablasin necesidad de programación.l<;Bot6n ExaminarAl hacer click sobre este botón, nos aparecerá la sigoVentana, comúnmente llamadacomo Browse, como se muestra en la sigoFigura:•Ctrl+Y •Clrl+T COAH.D""Menú para el Manejode la TablaIr al regdroAñ~dir !]..IeYO registro6 Rernar marca de eliminacünRMmpl~"r.f~o;poA!,jstar C"rrp:¡MlIvercar-npoAñ~1ir regdroo..Eimilar reg;otroo..D~¡omarc~r regidro¡o".Quita! regitro, eiirrinado,ELVElAZQUEZFUEl~~;~~::==;II;~~~1VARGAS DE ~Ventana deExaminar1--En la figura anterior se puede apreciar que un registro tiene una marca negra a un ladoy el otro no, esto quiere decir que uno esta marcado como borrado (el de la marca), sinembargo esto no significa que no exista. Si se quisieran eliminar todos los registromarcados como borrados , bastaría con escribir la instrucción PACK en la Ventana deComandos.Para Guardar los cambios hay que presionar la combinación de teclas Ctrl+W.Ahora cerrar lo que es la ventana de Examinar y la ventana de Diseñador de Bases deDatos.
  • 19. Curso de Visual FoxProDentro del Administrador de Proyectos, si seleccionas la tabla deseada puedes utilizarlos botones: Nuevo, Agregar, Modificar, Examinar y Quitar, que seria lo mismo que sientraras al diseñador de Bases de Datos y seleccionaras la Tabla y después hicierasclick sobre el botón correspond iente en la Barra de Herramientas.Vistas Locales¿Qué es una vista?Una vista es un objeto que se crea empleando la instrucción SELECT de SQL parabases de datos relacionales. Las vistas pueden ser locales o Remotas¿ Para que nos sirve?Bueno nos sirve para combinar datos de diferentes tablas sin tener que programar launión de estos datos para poder desplegarlos. Para poder usarlas se abren y cierrancomo si fueran una tabla, la instrucción seria USE, y se le da el mismo tratamiento quea estas, es decir que todos los comandos que se usan con las tablas, se pueden usarcon las vistas.SELECTFROMWHEREGROUPORDEREjemplo:campostablascondiciónBY campos de agrupamientoBY campos de ordenamientoSELECT id, nameFROM s_regionORDER BY name
  • 20. Curso de Visual FoxProCreación de una vista local.Primero debes de ir a la Pagina Datos del Administrador de proyectos, seleccionar laBase de Datos, posteriormente seleccionar la opción Vistas Locales y hacer click en elBotón Nuevo, o bien entrar al Diseñador de Bases de Datos y hacer click en el botónpara crear Vistas l ocales.lrdCrear Vista LocalAl hacer click sobre cualqu iera de las opciones anteriormente mencionadas, deberáaparecer la sigoPantalla, donde se nos pregunta si es una Vista en Blanco, o deseamosutilizar el Asistente. Hagan click sobre la Vista en Blanco, como se muestra en la sigoFigura.:1 Hu.,v.. v,d.. loc..1 13Nueva Vistal a ventana para agregar las tablas, se utiliza para añadir tablas que se van a ocupar enla instrucción SEl ECT - SOL, en este caso estaríamos seleccíonando la parle delTablas en la base de datos. Seleccíonemos Authors y luego Agregar. La tabla seagregara, luego le damos Cerrar.:t A!llegal labia o ...isla ElSeleccionar laBase de DatosSeleccionar laTabla a utilizardyrojdsboúkaulhboohropesA¡;..-eglll ICerrar Iºrr~~_ I
  • 21. Curso de Visual FoxProVentana de creación de la vista:Eliminar TablaAgregar Tabla~ ~horjdfirst remetestremenotesadd"essVer Instrucciones.:.:.. SQL•Agregar RelaciónMaximizar VistaCal!Jpos seecconadcs!;Cll1JOl dispünibes:_lltoo:>~-""Iu:AAulhordirst_MmeAuliladast rameAutilauoesAulhcn,addre~sAuli"ton,city•ID ~ [r~~~;::ICombinoción 1Filtro IOrdenar por 1Agrupar por 1Crilerios de aC~UoJlizaci&n IVario~ 1. _1Campos : Aquí se seleccionan los campos de la vista (SELECT campos)Combinación : Relaciones entre tablasFiltro : Condición de fillrado (W HERE condición)Ordenar por : campos de ordenamiento (ORDER BY)Agrupar por: campos de Agru pamiento (GROUP BY)
  • 22. Curso de Visual FoxProEjercicio Simple:Crear una vista donde aparezcan los sigoCampos.De la Tabla Authors, todos los campos.De la Tabla Books, todos los campos.l a Tabla intermedia de relación será la Tabla Bookauth.Para ver el resultado de la Vista, hay que hacer click en el botón Ejecutar que seencuentra sobre la barra de herramientas Estándar,--Botón EjecutarUna vez, haciendo click sobre este botón, se debe aparecer la ventana de Examinarpara esa Vista, como se muestra en la sigoFigura.Au!hor id Firsl name Lasl name1 Loc.<o Col"""",it1==J""L"t ===============r""C_~======.;/1- 1 ~~ tgMM2AncJew FuIer3 Jane! Leveri,,"3 J.ne! Leveri,,"3 J.ne! Leverli,,"3 Jane! Levering4 M""Q""el """""""""""""."".."".."".."".."".."".."".."".."".."".."".."".."".."".. """""""""""""""""""" ,~~~~~~~"""""""""""""""."".."".."".."".."".."".."".."".."".."".."".."".. ".."~I,- - ,
  • 23. Curso de Visual FoxProComandos de Visual FoxProl o sigo Comandos se pueden utilizar en Ventana de Comandos o dentro de unprograma, como se muestra en la sigoFiguraComandos:• Para Cambiar de directorio de TrabajoSET DEFAULT TO RUTA DE DIRECTORIOEjemplo:SET DEFAULT TO C:SISTEMASC AJA• limpiar la Pantalla Principal de Visual FoxProCLEAR• Mostrar los archivos del directorioDIREjemplos:DIRDIR *.TXTDIR C:SISTEMASCENTRAl• Para apagar la "Platica" con Visual FoxProSETTALK OFF_ D xEsto se hace porque al borrar, crear indices, etc. En la pantalla de Visual FoxPro se vamostrado los resultados, es por eso que en un programa se debe de incluir.
  • 24. Curso de Visual FoxPro• Para cambiar el Formato de la FechaSET DATE TO formatoEjemplos:SET DATE TO DMYSET DATE TO MDYSET DATE TO BRITISH• Para salir de Visual FoxProQun• Para cancelar la ejecución de un ProgramaCANCEL• Para Abrir una Base de DatosOPEN DATABASE Nombre de la Base de DatosEjemplo:OPEN DATABASE NOMINA• Para Cerrar una Base de DatosCLOSE DATABASES• Para Abrir una TablaUSE Nombre de la TablaEjemplo:USE clientesUSE clientes ORDER TAG nombre(seleccionando el lndice al abrir la tabla para no usar set order)• Para Cerrar una TablaUSE• Para Cerrar todas las TablasCLOSE TABLES
  • 25. Curso de Visual FoxPro• Agregar un registro en BlancoAPPEND BLANK• Eliminar RegistrosDELETEEjemplos:DELETEDELETE ALLDELETE FOR depto = ~0 1 32"DELETE NEXT 5(Borrar el actual)(Borrar todos)(Borrar solo los de ese depto.)(Borrar los sigo5 después del actual)• Recuperar Registros marcados como BorradosRECALLEjemplo:RECALLRECALLALLRECALL FOR depto = "01232"RECALL NEXT 5(Recobrar el actual)(Recobrar todos los marcados )(Recobrar los de ese depto.)(Recobrar los sigo5 después del actual)• Eliminar los registros Borrados como MarcadosPACK• Eliminar todos los registros definitivamente (ya no se pueden recobrar)ZAP• Para ir al Primer registro de la TablaGO TOP• Para ir al Ultimo registro de la TablaGO BOn OM• Para ir a un Registro especificoGO numero de registroEjemplo:GO 10
  • 26. Curso de Visual FoxPro• Para brincar de registroSKIPEjemplo:SKIP 1SKIP - 1(Brincar 1 registro hacia delante)(Brincar 1 registro hacia atrás)• Para abrir una o Varias Tabla s (Areas de Trabajo)SElECT Area de Trabajo(numero o letra)USE TablaEjemplo:SElECT AUSE ClientesSElECT BUSE ProveedoresOUSE Clientes in AUSE Proveedores in 8• Para Cambiar de Area de TrabajoSElECT Area de TrabajoEjemplo:SElECT A o SElECT Clientes• Para establecer el indice de TrabajoSET ORDER TO Nombre del IndiceEjemplo:SET ORDER TO nombrePara no utilizar ningún indice de TrabajoSET ORDER TO
  • 27. Curso de Visual FoxPro• Para establecer Filtros de CondiciónSET FILTER TO Condición del FiltroEjemplos:SET FILTER TO sueldo> 1000SET FILTER TO sueldo >= 1000 .and. sueldo <= 3000SET FILTER TO sueldo = 1000 .or. sueldo = 2000SET FILTER TO depto < > "0004" .and. (sueldo = 1000 .or. sueldo = 2000)Primero se evalúan las que están en paréntesis y después las que están fuera• Para buscar información sin índice activolOCATE FOR condición de búsquedaEjemplo:lOCATE FOR numero_empleado = "09499"• Para buscar información con un indice activoSEEK información a buscar (variable, numero o cadena de texto)Ejemplos:SEEK "09499"SEEK num_empleadoSEEK 1235Para esto ha de haber un indice activo con SET ORDER TO o haber abierto la tabla conla opción ORDER TAG nombre del indice.• Examinar la informaciónBROWSEEjemplos:USE empleadoBROWSEOBROWSE FIELDS clave, nombre, sueldoOBROWSE FOR depto = "0003"Aquí se pueden utilizar una mezcla de todas(aqui se omitió el depto)(solo ese depto)
  • 28. Curso de Visual FoxPro• Listar registros en PantallalIST (Campos] (opcional)Ejemplos:lISTlIST clave, nombre, sueldolIST FOR depto = "0012"lIST OFF(Lista todos los campos en Pantalla)(Lista solo esos Campos)(Lista solo los de ese depto)(Listar sin el numero de registro)Aquí se pueden utilizar una mezcla de todas, la única desventaja es que si sondemasiados registros, los lista pero no hace pausa para que puedas leerlos, si no quelos despliega todos, y recorre los primero registros hacia arriba y ya no se pueden ver.• Listar registros hacia la impresoraIgual que la anterior solo que al final de la instrucción se le agrega TO PRINTEjemplo:lIST OFF clave, nombre, sueldo TO PRINT• Desplegar registros en PantallaPara esto solo se sustituye la instrucción lIST por DISPLAYCon esto tienes la ventaja de que cuando se llama la pantalla de registros, el VisualFoxPro hace una Pausa para que los puedas leer y después continuar.• Modificar la Estructura de una TablaMODl FY STRUC• Desplegar en Pantalla o Impresora la Estructura de una TablaDISPLAY STRUCODISPLAY STRUC TO PRINT
  • 29. Curso de Visual FoxProOperadores Aritméticos+ SumaResta•IMultiplicaciónDivisiónOperadores Lógicos= Igualdad> Mayor que< Menor que>= Mayor o Igual que<= Menor o igual que< > Diferente.OR. Condición lógica ~O".AND. Cond ición lógica "Y".NOT. Condición lógica de Negación
  • 30. Curso de Visual FoxProCrear ReportesPara crear un reporte, primero debes ir al Administrador de Programas, despuésselecciona la pagina Documentos, y después seleccionar la opción Informes y darClick en el botón Nuevo, como se muestra en la SigoFigura.DocumentosInformes-- 1Iill b~La L->horlIIIl t~UOl Ocg EliqUéIMsiM(.,[11""" 8!Jw&nsraat:D~scripciónR",Después de haber dado click sobre el botón Nuevo, nos debe aparecer la sigo Pantalla,donde nos pregunta que si deseamos usar el Asistente o un Reporte en Blanco.Elegiremos Blanco. Para que después nos aparezca la Pantalla del Diseñador deInformes, como se muestra en la sigoFigura.
  • 31. Curso de Visual FoxProAuthor ID First NameLas! NameCity... f ncobez<tdo de p,,*,UTHOR ID. FIRST NAMELA.ST NAMECITY... OetoleControles deInformesSt ateTitulo: Aparecesolo en laEncabezadode PaginaDDRESSSumario: AParec;,"¡:::::::::::I:en la ultima ~Entorno deDalasDetalle: Seespecifican loscampos de la tablaPie dePaginal os informes muestran datos y resumen datos en un form ulario impreso o en pantalla.l os dos com ponentes principales de los informes son los datos y el formato. la fuentede datos del informe puede ser una tabla de base de dato, una consulta o una vista.El primer paso para diseñar un informe es determinar los datos que se van a mostrar, yel segu ndo paso es determinar cuál va a ser el mejor formato para mostrar ese inform e.Puede crear listados que se basen en una única tabla o en informes complejos.El Generador de Informes es una herramienta flexible y de fácil uso para la creación,diseño y modificación de informes.
  • 32. Curso de Visual FoxProPasos para Creación de Informes:Selección de los datosEsta es la parte más importante del informe, la selección de datos, hay que saber quées lo que quiere el usuario o que el usuario muestre el diseño del informe que desea,para comenzar a trabajar.l os datos pueden ser simples (utilizando una sola tabla), como listados de regiones,listado de depa rtamentos, entre otros; o pueden ser algo más complejos (utilizando masde una tabla) Ejemplo Reportes agrupados, reportes consolidados, etc.Ejemplo:- listados (Ej. listados de Tapies)id Descripción010203NegociosCienciaFicciónPasos para crear el Entorno de Datos.Seleccionar el botón Entorno de Datos de la barra de herramientas Diseñador deInformes, o hacer click con el botón derecho del mouse sobre cualquier área deldiseñador de reportes y seleccionar la opción Entorno de Datos, al hacer estoaparecerá la ventana de Entorno de Datos, donde deberá hacer click con el botónderecho sobre la ventan a del Entorno de Datos y seleccionar la opción agregar, esentonces cuando aparecerá la ventana donde seleccionaremos la(s) tabla(s) a utilizaren el reporte, como se muestra en la sigoFigura.Base de Datos autilizarTablas o Vistasa utilizar:1 Agregar labia " YI~la 13SeleccO"1.o1ro l "tkl,r V¡I"
  • 33. Curso de Visual FoxProUna vez escogiendo la(s) Tabla(s) y habiendo hecho click en el botón agregar paracada una de las tablas que liamos a usar, en el Entorno de Datos apa recerá la(s)Tabla(s) que se escogieron, como se muestra en la sigoFigura.• : Entorno de dato: Dlteñador de Informe: - authols.fr~ I!!II!JI3•~,~~~~,.""".,,.~Yhorj;jfrl_name1~IJJ<lmerole.addres8·LJPara establecerle un orden (indice) a la Tabla seleccionada, debes hacer click con en elbotón Propiedades de la barra de herramientas Diseñador de Informes o con el botónderecho del mouse sobre la Tabla que deseas y seleccionar la opción Propiedades,una vez haciendo esto apa recerá la ventana de Propiedades de esa Tabla, como semuestra en la SigoFigura.Propiedades Diseñeoor de I , xAlies·B~"fi"~·;M~d·~ stete·"turior·S·Oür" lestneme..............................""=::e:"===-lDerebese dic:lIf.:o."JrMlaif........,""", "", ......• "", ,""", ,""",.Exclusive F.. Falso [prede"",......... ", ., ,"", ,"", .Filler [Nada]NoDataOnLoad .F -FaJ...·o/prMi.- Felso [prede~2. Seleccionar Indice1. Seleccionar Order
  • 34. Curso de Visual FoxProBarra de Controles de InformesroSeleccionar ObjetoSeleccionar un objeto dentro del reporte para moverlo o modificar otros datosHerramienta para TextoSeleccionar un objeto colocado dentro del ReporteHerramienta CampoAgregar o modificar campos de una tabla a un reporte.ÜHerramienta para LineasDibujar lineas, Horizontales o Verticales dentro del reporte.19jHerramienta para cuadrosDibujar rectángulos dentro del reporte.:gjHerramienta para Círculos o ElipsesDibujar Círculos o Elipses dentro del reporte.MHerramienta para bloquear los objetosPara permitir o no permitir que se modifique, la posición de los objetos contenidosdentro del reporte.
  • 35. Curso de Visual FoxProComo usar los Controles de InformesTexto : Seleccionar la herramienta Texto de la Barra de herramientas, y después hacerclick en el lugar y sección del reporte que se desea, y escribir el texto.. como semuestra en la sigoFigura.JCrnlrole, de13HerramientaTAXloSi deseas dar formato a este texto, es decir, ponerlo en negritas por ejemplo, debesseleccionar el menú Formato -> Fuente.Para editar el un Texto dentro de un reporte debes seleccionar la herramienta Texto yhacer click en el texto a modificar.Agregar Campo : Seleccionar la herramienta Campo de la barra de herramientas ydespués hacer click en el lugar donde deseas que aparezca ese campo, una vez dandoclick en el lugar deseado, aparecerá la sigoPantalla donde elegiremos el campo quedeseamos de la Tabla, como se muestra en la sigofigura.
  • 36. Curso de Visual FoxProCampo amostrar~I Espresi6n de inhllme 13Formato deSalidasuekJoPO",CIOO del campor Flotantero .6.orde n~erior de la barder Bor,>je inferior ele ~ banda0J_ _ _ _ _ _ _óJAceptarSi deseas por ejemplo, poner en negritas un campo ve al menú Formato -> Fuente.Para modificar un campo, basta con hacer doble click sobre el campo y aparecerá laventana anteriormente mostrada.Agregar Campo ( Generador de Expresiones ): Cuando la necesidad es mostrar porejemplo dos campos juntos, o él calculo entre dos campos numéricos, se debe hacerclick sobre el botón que se encuentra a un lado del cuadro de texto Expresión como semuestra en la sigoFigura.Bot6n: Generadorde ExpresionesFcrmeto:•Una vez, habiendo hecho click sobre este botón, deberá aparecer la ventana delGenerador de Expresiones, como se muestra en la sigoFigura.
  • 37. Curso de Visual FoxProy¡ Generador de expresiones E3Expresión a bpresün para campo del inlorme:Imprimir a!lrim(aytiloxs, lirs~_n<llTle1 ... " " + • AceptereIlIrim(aytiloxs, I<ls~_ neme1~Funciones Futlcion83que puedes Cadelle Heternétcee:utilizarl ::Jfec M::J IIdete} ::JCamD=s íaieoles:éllJthors. Iirs~JJ<lme 00" Laytiloxs,tesrneme indert Nejthors notM Jmargln NCampos aytilox,.a ciJ r es~ -padver.ce Cde la Tabla aYthors d:y _pageno N Variables""-ltiloxs. s~~le flpe Qe N del Sistemaaytilors, .ip ::J -pcolm N ::JAgregar Ca mpo Cal culado : Cuando tienes la necesidad de mostrar, por ejemplo,totales al final del reporte. Para agregar un campo calculado, debes agregar un camponuevo, o seleccionar el campo que quieres que sea calculado y aparecerá la ventanade Expresiones de Informes, donde se ponia el nombre del campo y el formato, allí enesa ventana hay un botón que dice Cálculos, al hacer click en ese botón, te debeaparecer la ventana Calcular Ca mpo, como se muestra en la sigoFigura.:1 Calcular campo 13Cuando empieza acalcular de nuevo"a eeer IFin ~ rlorme :::Jr QesviacÓIl e8lándarr ,!,a"an¡,~IrAe;··";:I":1...JIl....,Cancelar I
  • 38. Curso d e Visua l FoxProBanda de Resumen : l a banda de resumen es la que se usa para mostrar totales alfinal del reporte, y por lo tanto solo se imprime en la ultima hoja. Por default cuando sediseña un reporte en Visual FoxPro no aparece la banda de resumen, esta se agregaen el menú Informe -> Titulo/Resumen, entonces aparece la ventana TitulofResumen,donde debes marcar la banda que deseas que se agregue al reporte, una vez habiendoelegido la banda de resumen se debe agregar a tu diseñador de reportes, como semuestra en la sigoFigura.l!!I D..eñador de Informe. aulhor. fr. I!!IIi1DAqui vancamposcalculadosAUTHORSIDATEQ I:.o.. TíteJeAuthor ID First NameLast NameCityUTHOR ID. FIRST NAMELAST NAMECITYStatel ,l ! .. 1 ,1 ,, 1IPágina + ALLTRiM(.AddressDDRESSGuardar un ReportePara guardar un reporte hay que hacer click sobre el botón de Guardar que seencuentra en la barra de herramientas Estándar, o ir al menú Archivo -> Guardar. Unavez hecho esto aparecerá la pantalla de guardar archivo.l os Reportes se guardan con la extensión FRX. Una vez guardado el reporte, este seagregara al Administrador de proyectos en la Pagina Documentos, sección Informes.Para ver una vista Preliminar del reporte, hay que hacer click sobre el botón
  • 39. Curso de Visual FoxProVista Preliminar de la barra de herramientas Estándar o bien, ir al menú Archivo ->Vista Previa, o en otro caso ir al Administrador de Proyectos, seleccionar el reporte yhacer click en el botón Vista Previa. En cualquiera de los casos debe aparecer laVentana de Vista Preliminar para el reporte seleccionado, como se muestra en la sigoFigura.100Boton Prel im inarAUlh or lD H sl Nmlel os! N ,n~City123 E Malr1ü2ó4 E. D3E. Br, m,.i!S"".ImprimirxaurAncrewFull"Hood Pi"AUTHORSD2/21/99Ejercicio:• Crear un reporte sencillo de cada una de las tablas del proyecto utilizando lasherramientas explicadas en este capitulo.
  • 40. Curso d e Visual FoxProAsistente para ReportesEl asistente para reportes es una opción la cual nos permite crear un reporte por mediodel asistente, el cual nos guia a través de una serie de pasos. Para crear un reporte através del asistente, lo puedes hacer haciendo click sobre el botón Informes en la barrade herramientas Estándar, o seleccionando la pagina Datos del Administrador deProyectos, seleccionando la opción informes y después dando click en el botón Nuevo,y Visual FoxPro te preguntara si deseas un reporte en blanco o quieres utilizar elasistente.En cual quiera de los dos casos aparecerá la ventana donde seleccionaran el Asistentepara el Tipo de Reporte que desean utilizar, como se muestra en la sigofigura.;J SeleccIón de lo" a",dente" ElTipo deAsistente"dente para nrorres de Qrupo$!totalesAsistente pélla l-"Jformes UI)J a venceDescrcciónCreill.lll irlorme con formato a partir de l.IIla única tabla.IAceptar I Cancelar IAsistente para Informes: Con este asistente se puede generar un reporte sencillo deuna sola tabla, por ejemplo de la tabla de Temas (Tapies).Asistente para informes de grupos/totales: Con este asistente puedes crear reportesagrupados con subtotales por grupo, por ejemplo cuantos libros hay de cada Categoria,con totales por categoria.Asistente para informes de uno a varios: Con este asistente puedes crear reportespor ejemplo de un Autor con sus libros, es como en las relaciones ( 1 a muchos).
  • 41. Curso de Visual FoxProPasos para Utilizar el Asistente para InformesYa una vez activado el Asistente y habiendo seleccionado por ejemplo la primera opciónque es Asistente para Informes, y dando aceptar, nos debe aparecerá una ventanadonde seleccionaremos la Base de Datos, la Tabla y los campos que queremos en elreporte, como se muestra en la sigofigura.SeleccOxJe lIn b"e de d<llos o L.<1a Tab!, Ibe. seleccOxJe L.<1e labi, o lIn,"sla y. de spués. seleccooe ~s campos que deseeCiOf!Jpos seleccoooOOsCampos -ºspox¡ibles;/ ASIstente para rnfo.mes 13SeleccionarBase deDatosSeleccionarTablaCampos de laTablaSeleccionarCamposUna vez habiendo seleccionado la Base de Datos, la Tabla y los Campos que deseasque aparezca n en el reporte, deberás hacer clic en el botón Siguiente , y aparecerá unaventana donde elegiremos el estilo del reporte, donde tenemos 3 opciones disponibles,como se muestra en la sigofigura.¿Qué ap" ienci, desea que leng, su rlormeEstilo ----------¡,ro f ierulivor Doc.e carl,r !resonlacoo
  • 42. Curso de Visual FoxProUna vez habiendo seleccionado el Estilo de presentación para el Reporte, debes hacerclick en el botón Siguiente, entonces nos aparecerá una ventana donde elegiremos elDiseño para el Reporte como se muestra en la sigofigura.¿Qué 1;;.0 de " sePio deseo?.- - - ..JI ASIStente para rnformes El~ - - ­- - - - En uno " slrbucÓl1 por coluooos. el compo y sus dolos eslón en l.O10coluooo. En l.O10 dislribucÓl1 por lios. elcompo y sus dolos eslán en l.O10lioNérnero de -"alumnas1_ iJOdribucÓl1 de camposro ( alumnosr- FiosOrienlocÓl1 ~~~~,ro !erlOoolr tiorimllai[ " oIizarUna vez habiendo seleccionado el Diseño para el reporte, debes hacer click en el botónSiguiente, entonces nos aparecerá una ventana donde se nos preguntara porquecampo se quiere ordenar el reporte, como se muestra en la sigofigura.¿Cómo desea orden", ~s regislros?C"illPOS seieccicm dos!-_ _-.~ro A,c !Jdenler D~sc endenleI """ I<Quit", I,o:-__-.~;/ ASIstente para rnformes ElCi>:ICel", I
  • 43. Curso de Visual FoxProUna vez habiendo seleccionado el o los campos por los cuales se ordenara el reporte,debes hacer click sobre el botón Siguiente, y aparecerá la ventana final del asistentedonde nos da varias opciones para guardar el reporte, como se muestra en la sigofigura.ro !,-uardor 01 rlorme poro u uso postor=<r Guordor 01rlorme ymodifOoar~ en 01 Diseñodor de rlormesr Guardor o .WnprOnir 01rlormeYa puede croor su rlormePoro c omprabor los rosLlodos de su " forme. hog~ cie en Presonlocooprom norSoleccOne l.O10 opcoo y hago clie en f"oIizor:1 ASlslenle para rnforme~ Elr;¡ Ajustor ~s ~ompos 01 contenido<-=:- 1Una vez seleccionada la opción deseada para guardar el reporte, hay que hacer click enel botón Finalizar para que guarde el reporte con el nombre que se le dio y lo agreguéa la pagina Documentos, sección informes.Ejercicio:• Crear reportes de cada una de las tablas del proyecto utilizando el Asistente paraInformes, siguiendo los pasos explicados en este Capitulo.
  • 44. Curso de Visual FoxProComandos para manipular los Reportes• Modificar un reporteModifY Report nombre del reporteEjemplo:ModifY Report authors• Imprimir un ReporteReport Form nombre del reporte to PrintEjemplo:Report Form authors to print• Ver reporte en Vista PreliminarReport Form authors previewEjemplo:Report Form authors preview• Imprimir Reporte - que pregunte las opciones de impresiónReport Form nombre del reporte promptEjemplo:Report Form authors prompt• Reporte con condiciónReport Form nombre del reporte for condiciónEjemplo:Report Form empleado for depto = "0001"
  • 45. Curso de Visual FoxProCrear VentanasPara crear una ventana, primero debes ir al Adm inistrador de Programas, despuésselecciona la pagina Documentos, y después seleccionar la opción Formularios y darClick en el botón Nuevo, como se muestra en la SigoFigura.[ Formularios:::J"UJ!,.,.l]j aboct;", WiI qcb tart~} flI Irtlcrme,@" Etiqueta,DeocripcÓllRutaFormularios SencillosDocumentost!llevoI&,g-egaf .IJM~r-"",IEiS~! Iti" . I.Gene,,,,-,,.IUn Formulario Sencillo, es el que es realizado generalmente utilizando una sola tabla.Un ejemplo tipico de formularios sencillos son las pantalla s de los catálogos de unSistema, que solamente tienen la función de registrar, modificar, eliminar y consultardatos de una tabla.Por ejemplo vamos a construir una forma sencilla utilizando el Wizard de Visual Foxpro:
  • 46. Curso d e Visual FoxProAsistente para FormulariosPara crear un form ulario con el Asistente para Formularios, primero se debe hacer clicksobre el botón Formularios que se encuentra en la barra de herramientas Estándar, oseleccionar en el Administrador de Proyectos la pagina Datos y después la opciónFormularios y posteriormente hacer click en el botón Nuevo. Una vez hecho esto, nosdebe aparecer la sigoPantalla, donde nos pregunta que si deseamos usar el Asistentede Formularios o un Formulario en Blanco.Una vez eligido que se utilizara el Asistente, aparecera una ventana en la cual debemosescoger uno tipo de asistente, como se muestra en la sigofigura.Tipo deAsistente;f Selección de los esuteetes 13Seleccione el asistente que desee uliliMrAsistente par01 fQrmularioJ~ uno e variosDescrccónCree l..Irl IClfmul¡¡rio de introducción de dates a partir de uneúnica labia,I Aceptar 1Asistente para Formularios: Con este asistente se puede generar un formulariosencillo de una sola tabla, por ejemplo de la tabla de Temas (Tapies).Asistente para Formularios uno a varios: Con este asistente puedes crearformularios de uno a varios es decir una relaclon, por ejemplo los libros de un autor.
  • 47. Curso de Visual FoxProPasos para Utilizar el Asistente para FormulariosYa una vez activado el A sistente y habiendo seleccionado por ejemplo la primera opciónque es Asistente pa ra formularios, y dando aceptar, debe aparecer una ventana dondese selecciona la Base de Datos, la Tabla y los campos que se desean en el formulario ,como se muestra en la sig. figura.SeleccionarBase deDatosSeleccionarTablat A..~lenle para formulanos¿Qué compos desea us", en su lorrrJUiario?Seloccione L.<1a base de datos o L.<1a T<ibI, libre, seleccione L.<1a labia ovisla y_ después_seleccione ios compo que deseeCampos dela TablaSeleccionarCamposUna vez habiendo seleccionado la Base de Datos, la Tabla y los Ca mpos que deseasque aparezcan en el reporte, deberás hacer elle en el botón Sig uiente, y aparecerá unaventana donde se elige el estilo del formulario y los tipos de botones, como se muestraen la sig. figura.TPü de balón - - - - - "r Bolonesde jexloro:g¡;¡c;;;e:;cC<i ;;;:;g~~e sobalonesr EersonalEslórtd",e nceladoSombreadoErrnarcadoSoIisl >oado¿Qué eslilo desea apIic" al lorrrrtJ",io?También puede selecc"""", L.<1 conjox¡l:o de botones de desplazamientoe>iórtdar.Eslilo:t ASlSlenle par.. formulanos El
  • 48. Curso de Visual FoxProUna vez habiendo seleccionado el Estilo de presentación para el Formulario, se debehacer click en el botón Sig uiente, entonces aparecerá una ventana donde se elige elcampo por el cual se quiere ordenar la información, como se muestra en la sigofigura.Seleccione hasl, Ires c ampos o seleccrne lS1a eliquela de índice par,ordenar ~s re",slros¿Córoo dese, ordenar ~s re",slros?IPoso 3 -Ordenar ~s re",slros, "l , ,,. ".""....."4 "".l , ,,, "/ A..slenle para formularIOs El.campos c>sponibes o eliquelos de índiceAg¡eQar ><QuitarC !!JPOs seieccrnados,ro A, c.oderKr O~scenderKeUna vez habiendo seleccionado el o los campos por los cuales se ordenara lainformación, se debe hacer click sobre el botón Siguiente, y aparecerá la ventana finaldel asistente donde hay varias opciones para guardar el Formulario, como se muestraen la sigofigura.y , puede crear el íormular;or;¡ A!l:!egar páginos par, campos que no cabenHaga clie en PreserKacÓt1 pre~min ar para ver el íormular;o o seleccrne lS1opcÓt1 Y hag~ cic en F"aIizarro (luardar el íormular;o par, su uso posler,=<r Guar~ar ye iec"ar el íormul",;or Guardar el íormular;oymodificar~ en el Oiseñador de íormularios?1A..slenle para formufarlOs ElIPoso 4 - F",",zarEscrib, lS1 lílelo par, su íormul ar;oITOPle!Una vez seleccionada la opción deseada para guardar el formulario, hay que hacer clicken el botón Finalizar para que guarde el formulario con el nombre que se le dio y loagregué a la pagina Documentos, sección Formularios.Ejercicio: Crear un formulario para la tabla de Tapies utilizando el Asistente, siguiendolos pasos explicados en este Capitulo.
  • 49. Curso de Visual FoxProEl Diseñador de FormulariosEl diseñador de formularios es el lugar donde realmente se lleva a cabo laprogramación, como ya se ha dicho aqui es donde se utilizan los objetos visuales(controles), a los cuales cada uno tiene sus propiedades (caractertstlcas) y eventos.Hay eventos que son comunes para la mayoria de los objetos (controles), como porejemplo, el CLlCK o el MOUSE MOVE, por mencionar algunos.Para crear un formulario sin los asistentes, primero se debe ir a la pagina Documentos,elegi r la opción formularios y hacer click sobre el botón Nuevo, posteriormente a estoVisual FoxPro preguntara si deseas utilizar el asistente o un formulario en blanco. Eneste caso será un formulario en blanco; al hacer esto debe aparecer el Diseñador deFormularios como se muestra en la sig oFigura.Barra deHerramientas deFormularioCcrlro les de formub-m ElAcliv~le Evenl Ip-erelermrndo]AcliveCcrlr ol o... _....AcliveFCtrm !lA @[¡je~1 Ipredetermnado]. ." .¡<.~.a~~q.nT?~ . . ~ . ~ ~~~OJpr:I.:i.·,¡EAlIloCenler .~:F.~"?(prEJ<:letEBackCoor 132,182-1828a*eClass r<t11!,§.S!~~.~,I~~."". "".,.J.,:.,§.S!~~,.~,.I,~.~,~.í80" Ip-erelermrndo]·8~ii~~i·i;rl;"·""·,·,, ·" tj": "N ;:;·g;;;;;·I¡;:;;;±,. Propiedades DocFúrm1 I!!IiIEJJo S, o 17 1!1 [!j ~El I!!! " G9 l§ J CObjetos o Controlesdisponibles para elDesarrolloArea de trabajopara el Formulario(ventana)Ventana para losPropiedades de(os objetos
  • 50. Curso de Visual FoxProHerramientas de Formulario : Estas herramientas se utilizan para activar algunasopciones cuando se esta diser"iando el formulario. Se usa para activar la ventana dePropiedades, la ventana del Entorno de Datos o para ver el código de algún objeto.Formulario: Aqui es donde se dibujan todos los controles que se va utilizar, ya que elformulario en si es un contenedor. La diferencia con el generador de pantallas deFoxPro para DOS o Windows, es que aqui puedes o no puedes ligar los controles acampos de una tabla, dando mayor potencia, además de que se pueden cambiar laspropiedades de cada uno.Barra de Controles: Aquí se encuentran todos los controles disponibles para poder serutilizados en los formularios, entre ellos se encuentran, los sig.: Bot6n, Listas, Listasdesplegables, Imagen, Etiquetas de Texto, Caja de Texto línea simple, Caja de textomultilinea, etc.Ventana de Propiedades: Aqui es donde se cambian las propiedades de los controles,están varían según el control que se encuentre seleccionado, al hablar de propiedadeshay que decir que también se pueden cambiar por medio de programaci6n dando aldesarrollador muchisimas ventajas con respecto a FoxPro.Algunas propíedades mas utilizadas o mas comunes .Caption : Esta seria el texto que aparece en un Control.BackColor: Esta sería el color de fondo del control.ForeColor: Esta sería el color de la letra del control.Visíble: Esta sería para mostrar u ocultar un control.Enabled : Esta sería para activar o desactivar un control.Name: Esta seria el nombre que tendría el control para hacer referencias a el.Value: Esta seria para saber el valor que tiene un control, por ejemplo una cantidad enuna caja de texto.Mas adelante se trataran algunas propiedades especificas de controles.
  • 51. Curso de Visual FoxProPasos para diseñar un FormularioPara diseñar un formulario, primero hay que crear un formulario nuevo, ya estando elformulario nuevo, hay que agregar los controles que se van a utilizar, para esto hay queseleccionar el control deseado de la barra de controles y posteriormente dibujarlo en elformulario asignándole el tamaño deseado arra strando los bordes del control que seesta dibujando, como se muestra en la sigofigura.ArrastrarbordesSeleccionarControl•,r;Para cambiar las propiedades del control seleccionado se deberá utilizar la ventana depropiedades, si esta ventana no se encuentra activa, abra que activarla, haciendo clicken el botón Propiedades de la barra de herramientas de formularios, como se muestraen la sigofigura.Activar ventanaPropiedades
  • 52. Curso de Visual FoxProControles para FormularioSeleccionarEsta es para seleccionar un control ya sea en la barra de herramientas o en elformulario.~Eti quetaEste sirve para colocar texto de información en el formulario; solo en ocasionesespeciales se podrá cambiar, es decir que aqui no se puede teclear texto, obsérvese lasigofigura.!fB D I~eña dOl de fOlmulallo~ DocForm2 _ D xNombre,...: ..Oirección •-.- -. .•~Cuadro de TextoEste sirve para colocar unas cajas de texto en las cuales se va a teclear la informaciónen una sola linea, la diferencia con las etiquetas es que con esta si se puede modificarel texto que se encuentra dentro de el. Obsérvese la sigofigura.~ DI~eñador de formulario - DocForm2 I!lIiIEiNombreCuadro deTexto~Cuadro de Edici6nEste cumple la misma función que el cuadro de texto, con la diferencia de que aqui espara escribir en múltiples lineas.
  • 53. Curso de Visual FoxPro19Botón de Comandol os botones de comando suelen emplearse para iniciar un evento que lleva a cabo unaacción, como cerrar un formulario, moverse a otro registro, imprimir un informe, etc.Obsérvese la sigofigura"" DIseñador de formulanoo DocFo.m2:: FormlJ§.JGrupo de comandosEste se utiliza para crear una serie de botones de comando que pueden manipularseindividualmente o como grupo . Obsérvese la sigofigura.EI1i Diseñador de fo.mulario. DocFolm2 I!!I DW FOIm1 I!!IIi1D:;JICommand11,1Command2•.1~Grupo de opcionesEste se utiliza para que se elija una opción entre varias posibles dentro del grupo.Obsérvese la sigofigura.~ Diseñador de forllllulallos - DocForllll2 I!!lIiI:1 Form1 I!!lIiII3Ordenar por
  • 54. Curso de Visual FoxProCasilla de VerificaciónEste se utiliza para asignar un valor de falso o verdadera, dependiendo de si se marca ono se marca la casilla. Obsérvese la sigofigura.EI11I Diseñadol de fOlmularios - DocForm2 I!!I~ 13!I Fmm1 I!!IIi1I3P Empleado activo•,Cuadro combinadoEste se utiliza poner lista desplegable en el formulario con una serie de valores, que alhacer click sobre el, se desplegaran sobre el formulario, de estos valores, solo seescogerá uno, no confundirse con los botones de opción. Obsérvese la sigofigura.v Fmm1 I!lIiII3srnccanzao«Interino~Cuadro de ListaEste cumple con la misma función que el cuadro combinado, la diferencia de este esque no se tiene que hacer click sobre el para que despliegue el contenido, si no quesiempre esta visible.l!JControl numéricoEste es como un cuadro de texto, con la diferen cia de que solo acepta valoresnuméricos, y muestra dos flechas , para aumentar o disminuir el valor. Obsérvese la sigofigura.ti Fmml I!!llilf3
  • 55. Curso de Visual FoxPro~CuadriculaEste se utiliza para desplegar la información de tablas en columnas y renglones, escomo el comando Browse, solo que mucho mas potente, además de que debe ircontenido en un formulario. Obsérvese la sigofigura.":i Flllm1 1!!I~13r oeteBusiness1 Psychology3 scrence4 Heallh5 r kuon6 a ornence7 Technical~ImagenEste solo se utiliza para mostrar imágenes en un formulario.
  • 56. Curso de Visual FoxProEntorno de Datos : El entorno al igual que el Diseñador de Informes, es el lugar dondese seleccionan la(s) tabla(s) con las que va a trabajar en este caso el formula rio. Paraactivar la ventana del entorno de datos , se debe hacer click sobre el botón entorno dedatos en la barra de herramientas de formularios o hacer click con el botón derechosobre algún lugar del formulario y seleccionar la opción entorno de datos, una vezhecho esto deberá aparecer la ventana del entorno de datos; la primera vez que seactiva, es decir que no hay ninguna tabla seleccionada, inmed iatamente aparecerá unaventana donde se elegirá la o las tablas a usar, como se muestra en la sigofigura.Enlomode Datoseeto idsOCU""bookstapiesSeleccionartabla(s)Seleccionerro labiasr VjetasPara agregar la o las tablas al entorno de datos, basta con seleccionar la tabla y hacerclick sobre el botón agregar, una vez agregada(s) la(s) tabla(s) se debe hacer click en elbotón cerrar, para cerrar la ventana de selección y que solo quede activa la del entornode datos.
  • 57. Curso de Visual FoxProComo se programa en Visual foxProEn Visual FoxPro, no hay una norma de programación a seguir como se hace porejemplo en Delphi o C++, donde en una sección se declaran las variables globales, enuna las funciones a utilizar, en otra las variables locales para cada procedimiento, y quecada variable que se va a usar, debió haber sido declarada antes de su uso, ademásque no se puede cambiar su tipo de dato, su rigidez en la estructura de laprogramación, que aunque es la mejor forma de programar, para no hacer maloshábitos de programación. l o mismo sucede con lenguajes como Visual Basic, donde alas variables que se les puede cambiar el tipo se le llama de tipo Variant; aunque en VBse le puede decir que todas las variables que se intenten utilizar, hallan sidopreviamente declaradas.En Visual FoxPro las instrucciones se pueden escribir con sus cuatro primeras letras, esdecir que Visual Fox? ro las reconoce, porque no hay una sola instrucción que empiecencon las mismas 4 letras, esto puede ayudar mucho a la hora de desarrollar un sistema,pero también puede hacer el código más dificil de leer para quien no este acostum bradoa este estilo de programación.Tipos Datos pa ra VariablesNumé rico Para almacenar valores numéricos, como edades o sueldoStrínc Para almacenar valores alfanuméricosDate Para almacenar fechas, por ejemplo la fecha de nacimiento~cal Para almacenar valores boleanos (verdadero o falso)Como ya se dijo en Visual FoxPro, no hay tanta rigidez a la hora de declarar y usarvariables, pero se sigue conservando algunas cosas, como no poder unir una variableString con una variable tipo Date, sin antes haber convertido la variable Date a String,para poder unirlas.Declaración de variables.1. Variables publicasPUBlIC nombre de variable2. Variables localesLOCAL nombre de variableAl declarar variables públicas o locales no es necesario poner un PUBlIC por cadavariable, simplemente se separan las variables por comas, por ejemplo: PUBlICnombre, direccion, telefono. Además de esto se puede apreciar que aqui no se leestableció el tipo de dato, simplemente se dijo si era publica o local, por lo tantodespués de haber declarado que tipo de variable, habria que declarar el tipo de dato.
  • 58. Curso de Visual FoxProDeclaración de Tipos de Datos pa ra Variables.En Visual FoxPro hay dos formas de declarar los tipos de datos de las variables.1. Estableciendo un valor para la variable, por ejemplo:PUBlIC nombreNombre =""Se puede apreciar que se le asigno un carácter en blanco a esa variable, sinembargo eso no quiere decir que no puede almacenar 255 caracteres de longitud.2. Utilizando la palabra reservada STORE TO, por ejemplo:STORE space(30) TO nombreAquí se utiliza la palabra reservada store que nos sirve para declarar variables,posteriormente se utiliza una función para establecer cuantos caracteres de longitudtendrá esa variable, eso no quiere decir que no se pueda modificar su longitud; y alfinal el nombre de la variable. Tam bién se pueden declarar varias variables con unalongitud especifica, separando las variable con comas, por ejemplo:STORE space(35) TO nombre, direccionSTORE OTO edad, sueldoliberar la memoria utilizada por las variables.Cuando se declaran variables y se usa n en un programa, y por alguna razón esasvariables ya no son necesarias, lo mas conveniente es borrarlas de memoria, ya que ensi Visual FoxPro consume memoria, se debe tratar de tener en memoria el menornumero de variables abiertas.RELEASE variable, variableEjemplo:RELEASE nombre, direccionUn ejemplo seria, por ejemplo: al iniciar un programa se declaran variables para real izarciertos procesos en donde se almacenan valores en variables, pero esas variables sololas usa mos en ese momento, y en ese programa ejecutamos otro programa de nuestrosistema , en ese momento se declaran mas variables, y asi sucesivamente; entonces sellega a un momento donde se tienen muchas variables en memoria que ya no se estánutilizando, por eso es conveniente, que al detectar que esas variables ya no tendrán unuso útil posteriormente de donde fueron creadas, deberán ser borradas de memoria,para asi tener un mejor rendimiento en el sistema.
  • 59. Curso de Visual FoxProSentencias de control.1. IF condición THENELSEENOIFSirve para preguntar por un valor que cumpla una condición.Ejemplo:IF edad <: 18 THENWait window "Eres menor de Edad"ELSEWait Window "Eres Mayor de Edad"ENDIF2. DO CASECASE condiciónENDCASESirve para preguntar por varios posibles valores para una variable o campo, estesustituye aIIF...THEN, haciendo el código mas legible.Ejemplo:DO CASECASE edad <:12Wait window "Eres un niño"CASE edad >12 .and. edad <:23Wait window "Eres un adolecente"CASE edad> 23 .and. edad < 60Wait window "Eres un adulto"ENDCASE
  • 60. Curso de Visual FoxPro3. FOR varlable « valor inicial TO valor finalNEXT variableEjemplo:FOR contador = 1 TO 10Instrucciones a procesarNEXT contador4. DO WHllE condiciónlOOPEjemplo:DO WHllE contador < 10Instrucciones a procesarlOOPInstrucciones básicas para programar1. Imprimir un valor en Pantalla? variableEjemplo:? fecha? Timen2. Imprimir un valor en Impresora? ? ? variableEjemplo:??? variable??? TimeOEl imprimir valores en pantalla nos sirve por ejemplo para comprobar el contenidode variables
  • 61. Curso de Visual FoxPro3. Comentarios.Los comentarios dentro de un programa se les agrega un * antes deltexto informativo, o con && a un lado de la instrucción a comentar.* Abrir la base de datosOPEN DATABASE datos && Abrir la base de datos4. Desplegar ventana de aviso.l as ventanas de aviso son parte importante dentro de un sistema, ya que gracias aestas se puede mantener informado al usuario de que es lo que ocurre en ciertomomento, por ejemplo si busca un empleado y este no existe en el sistema, paraeso sirven estas ventanas, en donde se despliega un texto informativo, y estaespera a que el usuario pulse cualquier tecla para continuar.Wait Window mensajeEjemplo:Wait Window "Este es un mensaje de prueba, < Enter > para Continuar"5. Obtener la fecha del SistemaDATEOEjemplo:Fecha = DATEO6. Obtener la hora del SistemaTlMEOEjemplo:Hora actual = TIMEO
  • 62. Curso de Visual FoxPro7. Buscar información en un IndiceEsta función se utiliza para saber si existe un valor en una tabla que tenga un indiceactivo, y regresa verdadero o falso según el resultado que obtenga de la búsqueda,por lo tanto se usa conjuntamente con la instrucción IFSEEK()Ejemplo:IF SEEK(valor)Wait window "Si existe"ELSEWait window "No Existe"ENDIFFunciones para la Conversión de Tipos de Datos.Esta es una parte muy importante en el desarrollo de sistemas, ya que si no existieranestas funciones no podriamos manipular la información, ya que como se dijo no sepueden hacer operaciones entre tipos de datos distintos, en la sigoTabla se muestranlas funciones para la conversión de los tipos de datos .STR nvalorVAL cvalorCTOD cvalorDTOC(fvalor)Convertir un valor numérico a carácterConvertir un valor carácter a numéricoConvertir un valor carácter a fechaConvertir un valor de fecha a carácter
  • 63. Curso de Visual FoxProCrear MenúsPara crear un reporte, primero debes ir al Administrador de Programas, despuésselecciona la pagina Otros, y después seleccionar la opción menús y hacer Click en elbotón Nuevo . Después de haber dado click sobre el botón Nuevo, nos debe aparecer lasigo Pantalla, donde nos pregunta que si deseamos Un Menú (normal) o un Menúemergente (de contexto). Al elegir Menú (normal)debe aparecer la ventana delDiset"iador de Menús, como se muestra en la sigoFigura.O,;í Di!eñador de menú! - Menú1Inck Mort I.<ArchivoTexto parala opciónAcción aRealizar Botónparacrear laAcciónElmnarVi~la oreveIndicador : Es el texto que va aparecer a la hora de desplegarse la opción en el menú.Acción: Es la acción que se realizara al seleccionar esa opción de menú, entre ellasesta submenú que seria para mostrar un submenú de esa opción , coma ndo paraejecutar una instrucción cuando se selecciona esa opción, procedimiento para ejecutaruna seria de instrucciones cuando se seleccione esa opción.Crear : Sirve para crear la opción que se selecciono en Acción.Nivel de menú : Sirve para desplazarse por los diferentes niveles de un menú.
  • 64. Curso de Visual FoxProPasos para diseñar un FormularioPara diseñar un Menú, primero hay que crear un menú nuevo, ya estando el menúnuevo, hay que agregar las opciones del menú que se van a utilizar, para esto hay queseleccionar la sección Indicador, y escribir el texto para el menú, para conseguir queuna letra sea la tecla rápida para esa opción (Alt + A), se le antepone <, a la letra quese quiere que sea el acceso rápido, como se muestra en la sigofigura.O¡;"( Di!eñador de menú! - Menú1 I!!lIiIEJIr(k ~ or Acción O clOIles Nivel de mem, M, ,,,,,lenirmenlo Iillllllllll · Cre.., !J IS..".. de m8l1ús 3<ConsultM Submem<Bepones SubmerpjElemento<s..¡, Comanoo•Vill~ pevi~ IPara crear un submenú, se debe seleccionar primero la opción a la cual se le deseacrear un submenú y hacer click en el botón crear, entonces el nivel de menú cambiara asubmenú y alli se crearan las opciones para el submenú, tal como se crean con unmenú principal, como se muestra en la sigofigura .-EfíDi!eñador de menús - Menú1 I!!lIiII3Elimirl-3f•Submenú para laopciónMantenimientoI n(k ~ or ACCión O Nivel de menú, VAllas do 101m fA~~" M"",lenimle •<S ~ ~~ Comando(OI.mbio~ Com<lnooElemento
  • 65. Curso de Visual FoxProPara ver una Vista Previa del menú, para ver como se verla ya en el sistema, se debehacer click en el botón Vista Previa, del Diseñador de menús, entonces aparecerá en laventana principal de Visual FoxPro el menú que se ha diseñado, como se muestra en lasigo figura.<CAmbiol C""ondoVisto previo 1548602l.1rrpEI.ncIc<dofe1[100",0..00 e,Para poder utilizar un menú dentro de un sistema se deben segu ir los sigopasos1. Generar el código correspondiente al menú, para esto se utiliza la opción del menúprincipal de Visual FoxPro, Menú - Generar..., entonces aparecerá una ventanadonde le pondremos un nombre y con la extensión MPR, el cual contiene todos loscomandos necesarios para crear el menú. Es importante decir que cualquier cambioque se realice en el menú, se deberá volver a generar el código.2. Ya que Visual FoxPro tiene su menú principal activado, este se debe desactivar paraque se pueda usar el menú que se diseño, esto se hace em itiendo la sigoinstrucciónen la ventana de comandos o dentro del programa.SET SYSMENU OFF3. Para poder mostrar el menú diseñado, se debe ejecutar el archivo que contiene elcódigo fuente del menú.DO curso.mprY después de ejecutar el menú, se debe emiti r la instrucción READ EVENTS, paraque el programa se mantenga en ejecución.4. Y por ultimo, al salir del menú que se diseño, habrá que restablecer el menú deVisual FoxPRo.SET SYSMENU TO DEFALTY para dar por terminada la ejecución del programa, habrá que agregar lo sigoCLEA R EVENTS

×