• Domingo 22 de Diciembre de 2024, 07:48

Autor Tema:  Comenzando En Vfox  (Leído 2761 veces)

shakka

  • Miembro HIPER activo
  • ****
  • Mensajes: 679
  • Nacionalidad: cr
    • Ver Perfil
    • http://mbrenes.com
Comenzando En Vfox
« en: Lunes 26 de Septiembre de 2005, 09:03 »
0
resulta que he retomado comenzar a programar en visual fox

quisiera saber si alguien es tan amable de poder explicarme como se programa en fox,

1)   en mi caso lo que hice para empezar es una base de datos y una tabla y ademas he creado un fomulario como interface con dicha tabla, pero como hago para que los controles(p.e los textbox) obtengan el contenido de los campos de la tabla.
2)   Como grabo los datos contenidos en los controles a la tabla.
Citar
Tabla-> TStd.dbf
Estrctura:
[nombre]   [tipo]  [ancho]
Std_code   carácter   8
Std_name   carácter   30
Std_lname   carácter   30
Std_age   entero  4

Widark

  • Miembro MUY activo
  • ***
  • Mensajes: 246
    • Ver Perfil
Re: Comenzando En Vfox
« Respuesta #1 en: Lunes 26 de Septiembre de 2005, 15:37 »
0
Que tal mbrenes!

1. Primero debes enlazarlos, como una base de datos normal.
2. Hay una funcion TABLEUPDATE() y TABLEREVERT(), pones el buffer de la en 3 y listo ya podes actualizar o cancelar alguna acción.
[:], Yo si se lo que es trabajar duro, por que lo he visto.
http]
programacion,c,c++,
C#,java,linux,videojuegos,
directX,.NET,allegro,asm,codigo
NoSolocodigo --> Blog de Articulos

DrakerDG

  • Miembro activo
  • **
  • Mensajes: 72
    • Ver Perfil
    • http://drakerdg.xbot.es/wordpress/
Re: Comenzando En Vfox
« Respuesta #2 en: Lunes 26 de Septiembre de 2005, 16:26 »
0
:comp: Una forma relativamente sencilla es incluir la(s) tabla(s) de tu base de datos en el Data Environment (Entorno de datos), el procedimiento es hacer click derecho sobre tu formulario y seleccionas esta opción.  Te aparece una ventana que dice Data Environment - Nombre de tu formulario, con el botón derecho sobre la superficie vacía de esta ventana, activas un menú en el cual con la opción Add puedes agregar la tabla de la base de datos que quieras.  Si en tu proyecto tienes ya una base de datos automáticamente aparece esta como opción por defecto para seleccionar.

Ya teniendo tus tablas o vistas en tu entorno de datos, en la propiedad ControlSource seleccionas el campo que tu quieras enlazar con el control y así sucesivamente.   Si la propiedad del control ReadOnly esta en False, al modificar el valor del control automáticamente se modifica el valor enlazado con la tabla.

Espero te sirva :hola:
Saludos desde Guatemala, C. A.
Electrobotics

shakka

  • Miembro HIPER activo
  • ****
  • Mensajes: 679
  • Nacionalidad: cr
    • Ver Perfil
    • http://mbrenes.com
Re: Comenzando En Vfox
« Respuesta #3 en: Lunes 26 de Septiembre de 2005, 17:49 »
0
la opcion que me dio DrakerDG parece sencilla por la cual optare primero, pero esta interesente trabajar con "Buffering" aunque a documentarme mas...

seguramente ahi les estare molestando!

gracias :comp:

Cyclop

  • Miembro MUY activo
  • ***
  • Mensajes: 323
    • Ver Perfil
    • http://www.geocities.com/icotext/spanish/
Re: Comenzando En Vfox
« Respuesta #4 en: Lunes 26 de Septiembre de 2005, 20:31 »
0
Trabajar con buffering con 1 a 2 tablas es bueno pero con mas es una porqueria mejor usa tu RLock() y punto, por que a veces te da unos errores que te parten la cabeza en 2

Salu2

Cyclop
Icotext Evolution v0.5 para los amantes del ASCII Art
http]

shakka

  • Miembro HIPER activo
  • ****
  • Mensajes: 679
  • Nacionalidad: cr
    • Ver Perfil
    • http://mbrenes.com
Re: Comenzando En Vfox
« Respuesta #5 en: Miércoles 28 de Septiembre de 2005, 05:57 »
0
pues si, el DataEnviromnt funcina bien, pero ahora el problema que tengo es que quiero  modificar los valores de las propiedades de ciertos controles en tiempo de ejecucion.

Caso concreto: Evento Load del form pricipal (el unico :lol: )

Código: Text
  1. txtStdCode.Enabled=.T.
  2.  

pero me aparece un error al ejecutar el formulario:

Error del programa
"No se encuentra el objeto TXTSTDCODE" :blink:

y en el debugger del "Zorro"...

Citar
[Seguimiento]
Set Default To C:\TestVFox
Citar
[Locales]
nombre   valor    tipo
tstd         .NULL.  0
:ph34r:

alguien sabe que puede ser

por aquello que necesiten mas info:

el proyecto es muy pequeño
El mensaje contiene 1 archivo adjunto. Debes ingresar o registrarte para poder verlo y descargarlo.

DrakerDG

  • Miembro activo
  • **
  • Mensajes: 72
    • Ver Perfil
    • http://drakerdg.xbot.es/wordpress/
Re: Comenzando En Vfox
« Respuesta #6 en: Miércoles 28 de Septiembre de 2005, 09:35 »
0
:comp: En el evento Load no puedes llamar propiedades de ningun control del formulario, pues los controles aún no existen, es decir no están cargados.  Esto lo puede hacer en el evento Init del formulario.  Además el nombre del control por si solo no es reconocible, por lo que tiene que tener como prefijo el objeto al cual pertenece, en este caso el formulario, es decir:

Código: Text
  1.  
  2. * En el evento Init del formulario
  3. THISFORM.txtStdCode.Enabled=.F.
  4.  
  5.  
  6.  

Si en dado caso son varios los controles a los cuales les vas a cambiar alguna propiedad puedes usar el comando WITH de la siguiente forma

Código: Text
  1.  
  2. * En el evento Init del formulario
  3. WITH THISFORM
  4.   .txtStdCode.Enabled=.F.
  5.   * Otro controll....      
  6. ENDWITH
  7.  
  8.  
  9.  

En el comando del boton cmdPrevius:

Código: Text
  1.  
  2. If Bof()
  3.   Go Top
  4.   TStd.Refresh
  5. Else
  6.   Skip -1
  7.   if Bof()
  8.     Go Top
  9.     ThisForm.cmdPrevious.Enabled=.F.
  10.     ThisForm.cmdNext.Enabled=.T.
  11.   Else
  12.     TStd.Refresh      
  13.   EndIf
  14. EndIf
  15.  
  16.  
  17.  

Y en el boton cmdNext:

Código: Text
  1.  
  2. If Eof()
  3.   Go Bottom
  4.   TStd.Refresh
  5. Else
  6.   Skip 1
  7.   if Eof()
  8.     Go Bottom
  9.     ThisForm.cmdNext.Enabled=.F.
  10.     ThisForm.cmdPrevious.Enabled=.T.
  11.   Else
  12.     TStd.Refresh      
  13.   EndIf
  14. EndIf
  15.  
  16.  
  17.  
Saludos desde Guatemala, C. A.
Electrobotics

shakka

  • Miembro HIPER activo
  • ****
  • Mensajes: 679
  • Nacionalidad: cr
    • Ver Perfil
    • http://mbrenes.com
Re: Comenzando En Vfox
« Respuesta #7 en: Miércoles 28 de Septiembre de 2005, 17:16 »
0
Citar
Además el nombre del control por si solo no es reconocible, por lo que tiene que tener como prefijo el objeto al cual pertenece

malas costumbres que me dejo el visual ba :s  :angry:

Gracias a todos

Saludos!