FoxPro/Visual FoxPro - Como agrego datos a una tabla desde un formulario

 
Vista:

Como agrego datos a una tabla desde un formulario

Publicado por Erick (31 intervenciones) el 08/09/2004 21:57:09
Tengo una super duda, necesito saber como pasar los datos que estoy escribiendo en los text box y un editbox que tengo hacia una tabla determinada, ahi estube leyecdo unos apuntes que tengo pero no me lo especifica bien, miren les envio parte de mi codigo para que vean si es asi o como lo tengo que poner, de antemano muchas gracias, su ayuda me ha servido de mucho y gracias a ustedes ya resolvi mi problema anterior. aki esta una parte de mi codigo.


use papeleria
set order to icvepap
with thisform


replace cvepap with .ctClave.value
replace nombredelproducto with .ctNombre1.value
replace descripcion with .ceDescripcion.value
replace preciounitario with .ctPrecio1.value
replace ubicacion with .ctUbicacion.value
replace existencia with .ctExistencia.value
.bcAceptar.setfocus



Endwith

en este codigo al momento de ejecutarlo me marca este errorsote o mas bien horror me dice que unificidad del indice ha sido violada y si me guarda algunos campos pero todo mal, como que se puso loca esta cosa si pudieran ayudarme se los agradecere muchisimo.
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

RE:Como agrego datos a una tabla desde un formular

Publicado por Raul (151 intervenciones) el 09/09/2004 17:41:30
Hola amigo Eric, pues mira para guardar datos a una tabla desde un formulario lo que yo hago es crear un programa.prg y ahi hago un procedimiento guardar y luego en mi formulario pongo un boton que se llame guardar y ahi en el evento click llamo a mi prodemiento que esta en mi programa .prg

Los Pasos son los siguientes:

1.- primero en la pestaña code/codigo del administrador de proyectos,le doy clic a new/nuevo y se abre una ventana que dice program7programa, ahi escribo el sigiuiente codigo:

procedure guardar

select nombre de tu tabla
go top // se va al principio de tabla
append blank // agrega un registro a la tabla
replace tabla.campo with nombredeformulario.nombredeltextbox.value,;
y asi sucesivamente hasta que llenes cada campo de tu tabla con el correspondiente textbox de tu formulario.

despues al final le pones un return
cierras la ventana y guardas el programa con el nombre que tu quieras

3.- despues en el boton que agregues en tu formulario, en el evento click llamas a tu procedimiento, con el siguiente codigo

do nombrede tu procedure dentro de tu programa, en este caso le puse guardar.

4.- pero, para que pueda hacer referencia tu formulario al programa que creaste, en el evento init del formulario pon lo siguiente:

set procedure to nombre de tu programa.

espero que te haya ayudado, cualquier cosa estamos para servirte

Saludos, Raul
Merida,Yucatan,Mexico
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

RE: Ahora me marca este error Data Type mismacth

Publicado por Erick (31 intervenciones) el 09/09/2004 22:42:25
ahora me raca errores por todos lados, mira como tengo 3 formularios para alta de productos, asi como me dijiste cree 3 programas.prg diferentes y al momento de correrlos me marco un error de este tipo "Data Type Mismatch" cabe recalcarte que lo mismo que puse en el proigrama .prg lo puse dentro de mi objeto Guardar(boton de comando) y despues tambien me marca esemismo error de unicidad del indice a sido violado.

a que se debe todo esto, te agradeceria que me guiaras por favor, de antemano muchisimas gracias.

Saludos
Erick.
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

RE: Ahora me marca este error Data Type mismacth

Publicado por Raul (151 intervenciones) el 09/09/2004 22:52:16
Hola erick, mira, en el click de tus botones guardar, solo pones lo si guiente:

Do y el nombre de tu procedimiento que esta dentro de tu prg, nada mas
checa en tu tabla los tipos de datos si son caracteres,numericos,fechas,etc..., y en el formulario como son tus textbox???, checa sus tipos, dale clic derecho sobre cada uno y checa en el generador que tipo de datos son cada uno a lo mejor alguno no coincide, es decir que en tu tabla lo tengas como entero y en el formulario sea caracter, por eso marca data type mismatch

nos vemos mañana, estoy a tus ordenes.
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

RE: Ahora me marca este error Data Type mismacth

Publicado por Roman Suazo (2723 intervenciones) el 09/09/2004 22:53:08
* esemismo error de unicidad del indice a sido violado

Esto significa que dos registros tienen el mismo valor en un campo, que forma parte de
la expresion de un indice principal o candidato de la tabla. Soluciones: borrar el indice
o cambiarle el valor al campo de unos registros o borrar del todo el registro

un error de este tipo "Data Type Mismatch"

Este error signfica que en un campo de determinado tipo intentas poner datos de otro tipo, por ejemplo, en campo nuemrico quieres poner un numero. Los datos que se
encuentran en la propiedad VALUE de un textbox siempre seran CARACTERES, por lo tanto antes de actualizacion de la tabla debes convertir los datos al tipo correcto. Revisas funcioes como STR(), VAL(), etc.

Como veo que empiezas en este rollo, me parece que no sabes usar la propiedad
controlsource de los controles, busca algo de teoria en la ayuda para asi ahorrarte los
replaces y hacer las actualizaciones directamente sobre los campos (en vez de agarrar
los datos, etc)
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

RE: Ahora me marca este error Data Type mismacth

Publicado por Roman Suazo (2723 intervenciones) el 09/09/2004 22:55:48
Correcciones:

Este error signfica que en un campo de determinado tipo intentas poner datos de otro tipo, por ejemplo, en campo numerico quieres poner caracteres o viceversa
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

RE: NO PASA NADA, AYUDAAAAAAAAAAAA PLEASE!!!!

Publicado por Erick (31 intervenciones) el 10/09/2004 21:59:34
SIGUE SIN HACER NADA, EL CODIGO QUE ME DISTE NO GUARDA MIS DATOS EN MI TABLA, HAS DE CUENTA QUE NO LO TOMA EN CUENTA., Y LO MANDO A LLAMAR DESDE EL FORM CON SET PROCEDURE NOMBRE DE MI PROCEDIMIENTO, Y LUEGO EN EL EVENTO CLICK DE MI BOTON LE PONGO DO NOMBRE DE MI PROCEDIMIENTO, Y NADA, NO PASA NADA NO MANDA LOS DATOS DEL TEXT BOX A MI BASE DE DATOS. Y POR EJEMPLO EN LOS TEXT BOX DONDE VAN NUMEROS COMO EL DEL PRECIO DEL PRODUCTO Y EXISTENCIA EN ALMACEN, EN LAS PROPIEDADES LES PUSE IMPUTMASK 9999 PARA ESPECIFICAR QUE SON NUMEROS LOS QUE VAN A INTRODUCIR, PUES ESOS CAMPOS EN MI TABLA SON DE TIPO NUMERICO. NO SE SI ME PUEDAS AYUDAR CON ESTO POR QUE NO PASA NADA DE NADA :(

SALUDOS
ERICK.
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

RE: NO PASA NADA, AYUDAAAAAAAAAAAA PLEASE!!!!

Publicado por Eduardo Flores (1 intervención) el 11/09/2004 02:48:30
Amigo Erick,

El error de unicidad en el indice aparece cuando tu indice que has creado para la tabla en cuestión es de tipo principal, cuando un índice es de tipo principal no permite el ingreso de dos entradas de datos en el mismo campo, debes concentrarte en revisar, de los campos que deseas modificar, cuales son usados como claves de indice.

Lo que puedes hacer es realizar un descarte de cual es el campo que te está dando problemas, coloca un asterisko en el primer replace de tu código, córrelo, y si ya no te sale error ese es tu campo problemático, si te sale error quita el asterisko y ponlo en el segundo replace, y asi sucesivamente hasta que encuentres cual es el campo que te está dando problemas, luego fijate en el indice que este asociado al campo problemático y allí tendrás la punta de la madeja del problema.

Espero te sirva,

Saludos
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

RE:Como agrego datos a una tabla desde un formular

Publicado por Javier (16 intervenciones) el 11/09/2004 20:58:19
ENVIAME EL FORMULARIO CON LA BASE DE DATOS
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