Delphi - Dr Juzam // ADOQUERY

 
Vista:

Dr Juzam // ADOQUERY

Publicado por Meizan (11 intervenciones) el 17/04/2006 10:39:43
gracias Dr Juzam por tu atencion, lo q pasa q nunca he utilizado ADO con delphi, siempre he utilizado Query's normales y sus elementos, nunca los de ADO, he intentado acerlo como tu dices, colocando mi ADOQuery1, pero no se como conectarlo a la base de datos, si esq hay q acerlo ni que opciones hay que tocarle de sus propiedades, he buscado por este foro algo sobre su utilizacion y sus propiedades pero no encontre nada... :( si fueses tan amable de decirme como es te lo agradeceria enormemente, gracias de antemano por tu atención
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:Dr Juzam // ADOQUERY

Publicado por Dr Juzam (821 intervenciones) el 17/04/2006 12:02:39
Se respondió:

http://www.lawebdelprogramador.com/news/mostrar_new.php?id=23&texto=Delphi&n1=354136&n2=1&n3=1&n4=0&n5=0&n6=0&n7=0&n8=0&n9=0&n0=0

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:Dr Juzam // ADOQUERY

Publicado por Meizan (11 intervenciones) el 17/04/2006 12:37:09
He hecho lo que escribiste, creo el Adoconeection, al darle a build --> escojo la opcion:

- Microsoft Jet 4.0 OLE DB PROVIDER
en la pestaña de conexion selecciono mi base de datos ACCES y pongo lo de contraseña en blanco y borro la palabra q por defecto viene como user (Admin) ,

después coloco AdoQuery1 y lo dejo en False , le digo en conecction q va con Adoconeection1 y ya no le e tocado nada mas.
Pues cada vez que hago run en el programa me pide el login para el adoconecction y no se q es lo q tengo q acer para q no me lo pida :(

otra cosilla, asi tengo la instruccion para insertar en el evento onclick del boton para guardar la cantidad con decimales :

adoquery1.close;
adoquery1.SQL.clear;
ADOQuery1.SQL.Add ('Insert into numero (num) values (:MiFloat)');
ADOQuery1.Parameters[0].Value:=StrToFloat(Edit6.Text);
adoquery1.ExecSQL;
end;

la tabla numero solo tiene dos campos, ya q la hice para probar, uno numerico (num) y su clave autonumerica (codigo).

Pues nada, me sigue guardando sin decimales y redondeado, ya estoy desesperado, he probado a poner de diferentes formas el tipo de numero q permite dar acces a sus campos numerico...y nada :( no se si es una convinacion diferente pero le doy decimales fijos,lo pongo entero, numero fijo...no se cual es o que convinacion de opciones darle a ese campo en su vista de diseño en acces, ¿cómo lo soluciono?

muchas gracias de antemano por toda tu ayuda Dr Juzam
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:Dr Juzam // ADOQUERY

Publicado por Dr Juzam (821 intervenciones) el 17/04/2006 15:56:27
En el ADOConnection hay una propiedad llamada LoginPrompt que debe estar a false para que no nos aparezca cada vez que se usa la conexión.

Con lo de Access no sé que puede estar pasando. A mi no ha pasado nunca nada igual y he tocado bastante Access. Pon en tamaño del campo Simple o Doble dentro del diseño de la tabla.

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:Dr Juzam // ADOQUERY

Publicado por Meizan (11 intervenciones) el 17/04/2006 17:28:12
Jooer Juzam me vas a mandar poco lejos... cada vez que resuelvo algo me sale otra cosa que tampoco se como resolver, esto es realmente un comecocos, ahora que consegui insertar los decimales, use un tipo de Numerico--> Simple y le puse 4 lugares decimales, bueno en mi base acces se guardan bien, pero al mostarlos en un edit, me salen despues de esos 4 decimales un chorron mas de decimales que yo no meti, al principio pense que era porq el edit era string...y el campo en la bd no, asi q cree una variable y le di el valor de dicho campo, para despues poner en el editX.text:=FloatToStr(variable); pues asi tampoco se me corrigue, como se debe hacer? :( si hubiera una forma de que muestre solo 2 me daria = que los otros no se mostraran, porq los 4 primeros si se kedan, es una forma no ideal de acerlo pero asi me daria = .
otra cosa, en un evento onclick (por poner uno) no se pueden utilizar query's y adoquery's?? esq desde que puse el adoquery para insertar los decimales, en el boton de guardar que tengo,si la condicion para que se inserte se cumple, justo despues de ese codigo de insersion en la tabla de la BD, tengo puesto que 2 query se cierren y abran para que se refresquen sus respectivos datasources y asi tambien el dblookuplistbox y el dbedit que tienen enganchados a ellos(uno muestra todos los que ya estan insertados, y otro es un contador de los q tengo insertados); pues bien, desde que cambie el codigo y puse q la insercion se hiciera con adoquery en vez de con query, estos 2 querys no se refrescan, o sea q no se cierran y abren y no se xq, si es porq no es posible mezclaz querys y adoquerys o por otra cosa, gracias de antemano, de verdad, me ayudas no sabes cuanto, gracias juzam.
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:Dr Juzam // ADOQUERY

Publicado por Dr Juzam (821 intervenciones) el 17/04/2006 20:55:26
Prueba a poner el campo Double para los decimales. Tiene más precisión y puede que lo soluciones. Si no, échale un vistazo a la función FormatFloat, que te permite expresar un valor decimal como una cadea del tipo que quieras, por ejemplo, con 2 decimales.

Las inserciones pueden ir perfectamente en un OnClick. Con cerrarlos y abrirlos debería ser suficiente. Si no, prueba con pasarlo todo a ADOQuery. Me parece que va a ser más un tema de refresco del query más de que no se inserten datos. (¿Los querys van unidos a la base de Access? ¿Con el ADOConnection?)

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:Dr Juzam // ADOQUERY

Publicado por Meizan (11 intervenciones) el 19/04/2006 09:46:01
Ya resolvi lo de los refrescos pasandolo todo a ADO, esq ADOQUERYS y QUERYS normales como que no trabajan bien si los mezclas...y no lo sabía (hasta ahora) , lo único que me queda ahora es que al mostrar un dato de la tabla en un edit, me aparece, por ejemplo si el campo es 4,34 , pues en el edit me sale a una cosa asi : 4,339989887...etc me han recomendado que usara CurrentEdit, de la libreria RX, pero ni la tengo en este ekipo y para descargarla ...menudo lío. He estado mirando la ayuda pero no encuento ningun ejemplo bueno de la funcion FORMATFLOAT para lo que pretendo, no se que acer :S , un saludo y gracias.
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:Dr Juzam // ADOQUERY

Publicado por Meizan (11 intervenciones) el 19/04/2006 10:24:39
No puede ser !!!! pase todo a ADO...y resulta que tengo en el onactivate del form, los correspondientes adoqueryX.open...para que cada vez que llame a dicho form...aprezcan los datos que quiero en un dbgrid y en un dblookuplistbox...pues bien, ahora que lo tengo con ADO, si al hacer la consulta de los ADO no encuentran datos para mostar...me da error !!!

"El valor de BOF o EOF es True, o el actual registro se eliminó;la operación solcitidad requiere un registro actual"
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:Dr Juzam // ADOQUERY

Publicado por Dr Juzam (821 intervenciones) el 19/04/2006 13:54:40
Para que aparezcan dos decimales) o en caso de no haberlos, .00), la función debe tener la siguiente entrada: FormatFloat (ValorAFormatear, '#.00').

Con respecto a lo del registro que no existe no sé que es lo que podría estar pasando. Prueba a ponerlo entre bloques try..except, aunque la verdad no debería haber ningún problema con esto.
Unas preguntillas:
¿Los ADOQuerys están activos en tiempo de diseño?
¿Has probado a cerrar y abrir el ADOQuery, aún en la primera consulta?

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:Dr Juzam // ADOQUERY

Publicado por Meizan (11 intervenciones) el 20/04/2006 12:00:43
Puse doble como dijiste...y se resolvio...aunq tb...tanto pelear con los decimales, y no sabia yo que si lo dejabas como texto, igualmente puedes operar con ellos incluso aciendo consultas sql con comandos como el max..sum..y demas operadores matematicos.
Si que estan activos en tiempo de diseño, abri y cerre el adoquery aun en la primera consulta y si lo hace... pero me da el fallo si no tienen datos al activar el form,lo unico que e echo es ponerle en el activate que abra el adoquery y que si adoqueryX.isempty .... entonces no haga nada con los dbgrid, de momento cuela, aunq mirare alguna forma mas de resolverlo...
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