Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > MySQL
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 15-12-2015
ZiriusB ZiriusB is offline
Miembro
 
Registrado: oct 2010
Posts: 86
Poder: 14
ZiriusB Va por buen camino
Asi: "2015-12-15 09:03:03"

Es por eso que uso el Formatdatetime, para darle el formato que acepta mysql de otro modo me daria un error al guardar ya que estaria tomando la fecha con valores incorrectos o fuera de rango... =(
__________________
"Ningun precio es alto por el privilegio de ser uno mismo..."
Responder Con Cita
  #2  
Antiguo 15-12-2015
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.044
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Cita:
Empezado por ZiriusB Ver Mensaje
Asi: "2015-12-15 09:03:03"
Es por eso que uso el Formatdatetime, para darle el formato que acepta mysql de otro modo me daria un error al guardar ya que estaria tomando la fecha con valores incorrectos o fuera de rango... =(
No me puedo creer que mysql guarde las fechas de esa forma. Seguro que no puede ser.
Mejor lee lo que te indica ecfisa.

Bueno, lo ha eliminado pensando que ya no valía la pena, pero creo que lo mismo es válido.
Responder Con Cita
  #3  
Antiguo 15-12-2015
ZiriusB ZiriusB is offline
Miembro
 
Registrado: oct 2010
Posts: 86
Poder: 14
ZiriusB Va por buen camino




Lei lo que coloco el compañero, hice lo que ahi dice pero me sigue arrojando el error de "Argumentos incorrectos, fuera del intervalo permitido o en conflicto con otros"

algo que estoy viendo ahora es que cuando me genera el error al darle CONTINUE y volver a darle clic al boton guardar en el formulario pues me guarda normal sin error yal ir a base de datos me guarda dos registros...





Edito: el servidor no permite insertar imagenes en el foro. u.u
__________________
"Ningun precio es alto por el privilegio de ser uno mismo..."

Última edición por ZiriusB fecha: 15-12-2015 a las 19:35:46.
Responder Con Cita
  #4  
Antiguo 15-12-2015
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.044
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
O sea, que el problema es otra cosa que no tiene nada que ver. Debes seguir tu código paso a paso con el depurador para encontrarlo.

Cita:
Empezado por ZiriusB Ver Mensaje
Edito: el servidor no permite insertar imagenes en el foro. u.u
No, lo que ocurre, como dice ahí, es que el sitio ese que has elegido para subir las imágenes, no permite que las enlaces desde otro sitio.
Responder Con Cita
  #5  
Antiguo 16-12-2015
ZiriusB ZiriusB is offline
Miembro
 
Registrado: oct 2010
Posts: 86
Poder: 14
ZiriusB Va por buen camino
Unhappy

Cita:
Empezado por Casimiro Notevi Ver Mensaje
O sea, que el problema es otra cosa que no tiene nada que ver. Debes seguir tu código paso a paso con el depurador para encontrarlo.


No, lo que ocurre, como dice ahí, es que el sitio ese que has elegido para subir las imágenes, no permite que las enlaces desde otro sitio.
Me refería a eso precisamente (el servidor de alojamiento de imágenes), use el depurador paso a paso y el error me lo arroja al leer la primera linea:

Código Delphi [-]
ADO1.sql.text:='INSERT INTO factura (cantfactu,subtfactu,ivafactu,totalfactu,horafactu,idclientef,idpagof,iduserf)'+



Cita:
Empezado por AgustinOrtu Ver Mensaje
Código Delphi [-]
Query.Parameters.ParamByName('ParamFecha').DateType := ftDate;
Query.Parameters.ParamByName('ParamFecha').DateType := ftDateTime;

Query.Parameters.ParamByName('ParamFecha').Value:= VariableFecha;

Proba con uno de esos, si te interesa almacenar tanto fecha como hora obviamente usarias ftDateTime, sino ftDate
Me sigue dando el mismo error amigo, lo que puedo ver después de tanto darle vueltas a esto es que es un error en todo el pedazo de código de el botón "guardar" (que solo tiene la query), es primera vez que trabajo con parámetros...

Código Delphi [-]
with ADOQuery1 do begin
 If active then close;
 SQL.Clear;
ADOQuery1.sql.add('INSERT INTO factura (cantfactu,subtfactu,ivafactu,totalfactu,horafactu,idclientef,idpagof,iduserf)');
ADOQuery1.sql.add('VALUES (:cantfactu,:subtfactu,:ivafactu,:totalfactu,:horafactu,:idclientef,:idpagof,:iduserF)');
with parameters do
begin
ADOQuery1.Parameters.ParamByName('cantfactu').Value := combocant.Text;
ADOQuery1.Parameters.ParamByName('subtfactu').Value := cant;
ADOQuery1.Parameters.ParamByName('ivafactu').Value := iva;
ADOQuery1.Parameters.ParamByName('totalfactu').Value := total;
ADOQuery1.Parameters.ParamByName('horafactu').Value := (FormatDateTime('yyyy/mm/dd',(Mfechahora)));
ADOQuery1.Parameters.ParamByName('idclientef').Value := form2.edtcedula.text;
ADOQuery1.Parameters.ParamByName('idpagof').Value := tpago;
ADOQuery1.Parameters.ParamByName('iduserF').Value := ('1');
end;
ADOQuery1.open;
end;
   end;

así esta ahora mismo y me sigue dando el mismo error.
__________________
"Ningun precio es alto por el privilegio de ser uno mismo..."

Última edición por ZiriusB fecha: 16-12-2015 a las 00:29:19.
Responder Con Cita
  #6  
Antiguo 16-12-2015
Avatar de AgustinOrtu
[AgustinOrtu] AgustinOrtu is offline
Miembro Premium
NULL
 
Registrado: ago 2013
Ubicación: Argentina
Posts: 1.858
Poder: 15
AgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en bruto
Primero elimina los with de tu codigo porque

1. No es aconsejable
2. No lo estas "aprovechando"

Debido a 1), casi que prefiero no explicarte el porque no lo estas "aprovechando"

Si te da un error en Query.SQL.Add es porque el query no esta inicializado (no esta creado)

No se de donde sale ADOQuery1, voy a asumir que tenes el componente en el Form actual. Tambien voy a asumir que en ADOQuery1.Connection tenes asignada una TADOConnection

Código Delphi [-]
  // este codigo esta para probar que tengas todo "en orden", luego lo quitas
  // basicamente chequea que todos los objetos que intervienen estan correctamente creados

  if not Assigned(ADOQuery1) then
    raise Exception.Create('ADOQuery1 no esta correctamente inicializado');

  if not Assigned(ADOQuery1.Connection) then
    raise Exception.Create('ADOQuery1.Connection no esta correctamente inicializado');

  if not Assigned(ADOQuery1.SQL) then
    raise Exception.Create('ADOQuery1.SQL no esta correctamente inicializado');

  if not Assigned(form2) then
    raise Exception.Create('form2 esta correctamente inicializado');

  // hasta aca, luego lo quitas


  if ADOQuery1.Active then
    ADOQuery1.Close;

  ADOQuery1.SQL.Text :=
    ' INSERT INTO factura (cantfactu,subtfactu,ivafactu,totalfactu,horafactu,idclientef,idpagof,iduserf) ' +
    ' VALUES (:cantfactu, :subtfactu, :ivafactu, :totalfactu, :horafactu, :idclientef, :idpagof, :iduserF) ';

  ADOQuery1.Parameters.ParamByName('cantfactu').Value := combocant.Text;
  ADOQuery1.Parameters.ParamByName('subtfactu').Value := cant;
  ADOQuery1.Parameters.ParamByName('ivafactu').Value := iva;
  ADOQuery1.Parameters.ParamByName('totalfactu').Value := total;

  ADOQuery1.Parameters.ParamByName('horafactu').DataType := ftDateTime;
  ADOQuery1.Parameters.ParamByName('horafactu').Value := Mfechahora;

  ADOQuery1.Parameters.ParamByName('idclientef').Value := form2.edtcedula.Text;
  ADOQuery1.Parameters.ParamByName('idpagof').Value := tpago;
  ADOQuery1.Parameters.ParamByName('iduserF').Value := '1';
  ADOQuery1.Open;
Responder Con Cita
  #7  
Antiguo 16-12-2015
ZiriusB ZiriusB is offline
Miembro
 
Registrado: oct 2010
Posts: 86
Poder: 14
ZiriusB Va por buen camino
Efectivamente tengo conectado todo como debe ser, el ADOQuery1 esta en el form en el que hago la consulta, esta conectado al ADOCOnection, coloque la consulta tal cual la pasaste y sigue generando el mismo error, lo hice con el depurador activo y paso por paso, se detiene y genera el error en esta linea:

Código Delphi [-]
  ADOQuery1.SQL.Text :=
__________________
"Ningun precio es alto por el privilegio de ser uno mismo..."
Responder Con Cita
  #8  
Antiguo 15-12-2015
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola.
Cita:
Empezado por Casimiro Notevi Ver Mensaje
No me puedo creer que mysql guarde las fechas de esa forma. Seguro que no puede ser.
Mejor lee lo que te indica ecfisa.

Bueno, lo ha eliminado pensando que ya no valía la pena, pero creo que lo mismo es válido.
Lo borré por que pensé que ya se le había encontrado solución, pero dado que Casimiro lo considera una opción, restauro el mensaje con el enlace.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #9  
Antiguo 15-12-2015
Avatar de AgustinOrtu
[AgustinOrtu] AgustinOrtu is offline
Miembro Premium
NULL
 
Registrado: ago 2013
Ubicación: Argentina
Posts: 1.858
Poder: 15
AgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en bruto
Código Delphi [-]
Query.Parameters.ParamByName('ParamFecha').DateType := ftDate;
Query.Parameters.ParamByName('ParamFecha').DateType := ftDateTime;

Query.Parameters.ParamByName('ParamFecha').Value:= VariableFecha;

Proba con uno de esos, si te interesa almacenar tanto fecha como hora obviamente usarias ftDateTime, sino ftDate
Responder Con Cita
  #10  
Antiguo 16-12-2015
orodriguezca orodriguezca is offline
Miembro
 
Registrado: ene 2009
Posts: 221
Poder: 16
orodriguezca Va por buen camino
Quizás el problema sea que no se está configurando el tipo de dato adecuado. Propongo:

Código Delphi [-]
  ADO1.Parameters.ParamByName('horafactu').DataType := ftDateTime;
  ADO1.Parameters.ParamByName('horafactu').Value := Mfechahora;


Edito: No me di cuenta que habían varias paginas del tema y que la solución ya había sido propuesta.

Última edición por orodriguezca fecha: 16-12-2015 a las 14:34:20.
Responder Con Cita
  #11  
Antiguo 16-12-2015
ZiriusB ZiriusB is offline
Miembro
 
Registrado: oct 2010
Posts: 86
Poder: 14
ZiriusB Va por buen camino
Bueno al final de cuentas termine usando SQL, es un proyecto nuevo que debo entregar el mes proximo y no puedo perder mucho tiempo, queria trabajar con mysql pero se me complico todo, de todas formas agradecido por toda su ayuda y atencion al tema...

Como cosa "Chistosa" utilice el ultimo pedazo de codigo que comparti igual para SQL y funciono a la perfeccion sin generar siquiera un error...

Muchas gracias, sera en otra oportunidad.
__________________
"Ningun precio es alto por el privilegio de ser uno mismo..."
Responder Con Cita
  #12  
Antiguo 16-12-2015
Avatar de Delphius
[Delphius] Delphius is offline
Miembro Premium
 
Registrado: jul 2004
Ubicación: Salta, Argentina
Posts: 5.582
Poder: 25
Delphius Va camino a la fama
Cita:
Empezado por ZiriusB Ver Mensaje
Bueno al final de cuentas termine usando SQL, es un proyecto nuevo que debo entregar el mes proximo y no puedo perder mucho tiempo, queria trabajar con mysql pero se me complico todo, de todas formas agradecido por toda su ayuda y atencion al tema...

Como cosa "Chistosa" utilice el ultimo pedazo de codigo que comparti igual para SQL y funciono a la perfeccion sin generar siquiera un error...

Muchas gracias, sera en otra oportunidad.
Obviamente que usas SQL, como así lo hace cualquier motor de base de datos como lo es Firebird, PostgreSQL, Interbase, Oracle, MS SQL Server, sólo por mencionar algunos.
Me gustaría saber por cual motor lo cambiaste porque SQL no me dice nada
__________________
Delphius
[Guia de estilo][Buscar]
Responder Con Cita
  #13  
Antiguo 16-12-2015
Avatar de AgustinOrtu
[AgustinOrtu] AgustinOrtu is offline
Miembro Premium
NULL
 
Registrado: ago 2013
Ubicación: Argentina
Posts: 1.858
Poder: 15
AgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en bruto
Desgraciadamente hay muchos que le dicen "el SQL" a "SQL Server" de Microsoft

Es como la gente que le dice "el facebook" o "el twitter" al Chrome
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
guardar precios. numeric o float? Patricio Firebird e Interbase 5 07-10-2008 16:21:17
guardar text como un float mjjj Varios 17 20-12-2007 11:44:17
Problemas con los float tato Varios 2 03-04-2006 11:57:38
problemas con float y redondeos wonder boy Firebird e Interbase 17 27-12-2005 20:59:06
Problemas con float.... ilichhernandez Varios 2 20-12-2005 16:19:20


La franja horaria es GMT +2. Ahora son las 05:05:51.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi