Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Conexión con bases de datos (https://www.clubdelphi.com/foros/forumdisplay.php?f=2)
-   -   Necesito ayuda (https://www.clubdelphi.com/foros/showthread.php?t=46233)

magnu9 26-07-2007 20:34:04

Necesito ayuda
 
Tengo un problema con el siguiente codigo resulta que guardo lo que quiero en mi tabla de facturas al procesar, pero en dada ocaciones me dice el siguiente error '..... raised exception class EConvertError with message "" is not a valid integer value'...

Código Delphi [-]
procedure TUniFactura.BitBtn4Click(Sender: TObject);
var numfact, i : integer;
    usuar, condic, tipfact,  FechaVence, iv: String;
    FPagoOK : Boolean;

begin
   FPagoOK:= true;
   If FPagoOk then
   begin
     usuar:=FormPrincipal.Label3.Caption;
     tipfact:= UniFactura.ComboBox1.Text;
     condic:= Label24.Caption;
     ShortDateFormat := 'dd/mm/yyyy';
     FechaVence := DateToStr(IncDay(now,(StrToInt(Label24.Caption))));
     Label15.Caption:= FechaVence;
     querFactura.Close;
     querFactura.SQL.Text := 'select top 1 numfac, codcli, fecfac, codusu, tipfac, condicion, codart, fecvenc from factura order by numfac desc';
     querFactura.Open;
     If querFactura.RecordCount = 0 then NumFact:=1
     else NumFact := querFactura.Fields[0].AsInteger+1;
     querFactura.Close;
  //Iniciar la Transaccion
     ADOConnection1.BeginTrans;
     try
   // Insertar en la tabla de Factura
        querFactura.SQL.Text := 'Insert Into Factura (numfac, codcli, fecfac, codusu, tipfac, condicion, codart, fecvenc) Values( '+IntToStr(NumFact)+','+Edit1.Text+','+QuotedStr(Fecha)
        +','+QuotedStr(usuar)+','+QuotedStr(tipfact)+','+QuotedStr(condic)+','+IntToStr(codigoArtic)+','+Quo  tedStr(FechaVence)+')';
    

        For i := 1 to SgFact.RowCount-1 do
         begin
           querArticulo.SQL.Text := 'Update Articulo Set cexart = cexart - '+SGFact.Cells[2,i]+' Where '+
                             'Codart = '+QuotedStr(SGFact.Cells[0,i]);
           querArticulo.ExecSQL;
         end;
   //Completa la Transaccion
           ADOConnection1.CommitTrans;

   finally
   close;
   end;
   end;
end;

gabrielkc 26-07-2007 20:38:27

Lee la guia de estilo por favor
http://www.clubdelphi.com/foros/guiaestilo.php

Caral 26-07-2007 20:42:34

Hola magnu9
Cita:

Escrito por magnu9
pero en dada ocaciones
Si es en ocasiones el error esta aqui:
Código Delphi [-]
+IntToStr(NumFact)+
0 Aqui:
Código Delphi [-]
+IntToStr(codigoArtic)+
A la hora de insertar no encuentra un integer o se le introduce un float,un string o nada, por eso da el error.
Solucion 1:
Coloca en este el valor correcto.
Solucion 2:
Trata cambiando los dos asi:
Código Delphi [-]
+QuotedStr(NumFact)+
Solucion 3:
Revisa el campo en la tabla que este sea integer o float, recuerda que un float acepta integer, pero no viceversa.
Me comentas.
Saludos

magnu9 26-07-2007 20:45:28

Gracias
 
Tu consejo me es de ayuda para lo que es el foro y de verdad gracias... se en lo que me equivoque, pero la verdad necesito la ayuda, siguiendo la guia de estilo... tambien esta el dar una posible solucion al problema que planteo... Cosejo + solucion estoy trabajando duro con este proyecto.

Gracias Caral... Siempre tan disponible... estoy viendo como esta ayudando a otro compañero del club con su sistema de Facturacion e Inventario... me pesa el no haber empesado este proyecto con tu ayuda ya que el mio es de Facturacion de Farmacia... me refiero a que debi planteartelo.

Un millon de gracias.

Caral 26-07-2007 20:52:12

Hola
Sabes que en lo que necesites y pueda colaborar lo hare con gusto, si quieres que continuemos tu proyecto, me lo dices y esta hecho.
Por cierto, llevo no se ni cuantos mensajes y reconozco que nunca he leido la guia del foro, me imagino que de lo que trata es de la manera en que hay que comportarse en este, osea, tratar de ser gente y tartar de ayudar y ser ayudado, supongo.
Saludos

egostar 26-07-2007 21:02:38

Hola magnu9, se te sugiere leer la guia de estilo porque el título de tu hilo de nada ayuda a quien tenga el mismo problema que tú, como podrían buscarla y encontrarla, ese es el punto.

Salud OS.

gabrielkc 26-07-2007 21:05:48

Que lástima
 
Cita:

Empezado por magnu9
siguiendo la guia de estilo... tambien esta el dar una posible solucion al problema que planteo... Cosejo + solucion estoy trabajando duro con este proyecto.

Si creo que tengas mucho trabajo habemos muchos que nos ganamos la vida haciendo esto. Y si juzgas mi disposición, checa mis mensajes trato de dar soluciones cuando puedo, sin mencionar que tengo varios contactos en mensajería instantanea del foro a los cuales ayudo sin problema.

Pero haber escrito un título más descriptivo te hubiera tomado el mismo tiempo y hubieras ayudado a otra gente que pudiera tener el mismo problema que tú. Me desespera que no piensen en los demás cuando hacen una pregunta. Y les vale porque saben que siempre va a haber alguien que les ayude, no importando lo que hagan, lo cual es muy injusto. Antes de criticar mi comentario piensa un poquito que los foros son para ayudar a toda la comunidad no a un usuario que se siente mas importante que los demás y siente que es la única persona con problemas.

Espero que los moderadores no editen mi mensaje....... pero si da coraje :(

Por cierto en mi perfil se encuentra mi cuenta de correo por si a alguien se le ofrece

magnu9 26-07-2007 21:30:00

Ok entiendo
 
Ok pido mil disculpa... tienes todas las razon Gabrielkc y egostar, Perdonen mi adsurda manera de expresarme... Tienen todas la razon si alguien tienes el mismo problema como han de encontrarlo:confused: ... Gracias por su consejos.

magnu9 26-07-2007 21:36:31

Aun el problema
 
Caral aun me sale el mismo problema, lo estudiare bien y luego te comentaré.

Gracias de antemanos.

Chris 26-07-2007 21:49:56

Puede ser que el problema sea con el campo "codcli" revisa que el valor del edit1.text no esté vacío antes de llamar el procedimiento.

mamaro 27-07-2007 14:55:22

Hola
 
Podrías publicar cómo están formadas tus tablas, con nombres, tipos de campos, y restricciones (especialmente que campos se permiten nulos)

... saludos :cool:


La franja horaria es GMT +2. Ahora son las 00:44:38.

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