FoxPro/Visual FoxPro - Como pasar datos de un tabla a otra por medio de un grid y boton de comando

 
Vista:
Imágen de perfil de Melisa
Val: 16
Ha aumentado 1 puesto en FoxPro/Visual FoxPro (en relación al último mes)
Gráfica de FoxPro/Visual FoxPro

Como pasar datos de un tabla a otra por medio de un grid y boton de comando

Publicado por Melisa (8 intervenciones) el 21/12/2018 23:45:24
Hola! Espero que me puedan ayudar tengo una pequeña duda como puedo pasar datos de un tabla a otra por medio de un grid y un boton de comando.

En mi formulario tengo 3 textbox, 1 grid, 6 botones de comando. ( El grid utiliza la tabla alta de empleados. )

24


Al dar click al boton nuevo se habilitaran los botones de Guardar, Cancelar y el Texbox. Pongo el codigo del empleado y se busca automaticamente.



25


Lo que quiero hacer, es como pasar esos datos del empleado a la otra tabla que es ( Baja de empleados ). No tengo ninguna codificacion en el boton de guardado. Ya que no tengo ninguna idea de como puedo hacerlo.

Se los agradeciria si me pudieran ayudar.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 1.011
Oro
Ha mantenido su posición en FoxPro/Visual FoxPro (en relación al último mes)
Gráfica de FoxPro/Visual FoxPro

Como pasar datos de un tabla a otra por medio de un grid y boton de comando

Publicado por Fidel José (657 intervenciones) el 22/12/2018 13:16:15
Depende de que las tablas tengan la misma estructura o no.
Para el caso de que tengan la misma estructura, hay varias formas, pero las que más uso son dos:
1) Usando un array
SELECT tabla_activos
* Buscar el registro en cuestión
SCATTER TO laArray
INSERT INTO Tabla_Baja FROM ARRAY laArray

2) Usando un objeto
loObj = NEWOBJECT("Empty")
SELECT Tabla_Activos
* buscar el registro en cuestión
SCATTER NAME loObj
INSERT INTO Tabla_Baja FROM NAME loObj
loObj = null

Si las tablas no son iguales, se puede utilizar una versión adecuada del punto 2)
3)
loObj = NEWOBJECT("Empty")
SELECT Tabla_Activos
* buscar el registro en cuestión
SCATTER FIELDS nombre, apellido,ingreso,egreso NAME loObj
INSERT INTO Tabla_Baja FROM NAME loObj

loObj = null

* Acá el tema a resolver es qué campos de la tabla Tabla_Baja deben rellenarse, además de los transportados.

4) Siempre se puede crear un cursor. En este caso, supongo que existe un campo llamado Id_Empleado y que creas una variable llamada nIdEmpleado (que podría ser nIdEmpleado = tabla_Activa.Id_Empleado
SELECT * FROM Tabla_Activos WHERE Id_Empleado = nIdEmpleado INTO CURSOR curPase
IF !EMPTY(_TALLY) && esta comprobación la hago por costumbre, aunque en este caso no se necesitaría.
SELECT Tabla_Baja
APPEND FROM DBF("curPase")
ENDIF
USE IN curPase


El código puede estar en el Click Event del botón, aunque las buenas prácticas recomiendan crear un método en el formulario (o en una clase no visual) y llamar a ese método desde el Cick Event del botón.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Imágen de perfil de Melisa
Val: 16
Ha aumentado 1 puesto en FoxPro/Visual FoxPro (en relación al último mes)
Gráfica de FoxPro/Visual FoxPro

Como pasar datos de un tabla a otra por medio de un grid y boton de comando

Publicado por Melisa (8 intervenciones) el 22/12/2018 15:48:59
Gracias! por contestar mi pregunta los metodos me serviran de mucho.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar