Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > OOP
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 11-12-2006
silviodp silviodp is offline
Miembro
 
Registrado: may 2003
Ubicación: General Levalle, Argentina
Posts: 277
Poder: 22
silviodp Va por buen camino
No corre

Hola a todos, alguien puede ver este codigo y decirme como solucionarlo para que se ejecute ya que me da error en el ELSE //(4), y puedo hacerlo andar.
Código:
procedure TForm14.DBEdit2KeyPress(Sender: TObject; var Key: Char);
Var
 n,m:Variant;
begin //(1)
If Key=#13 Then
 begin //(2)
  ModuloDatos.TblComprobantes.Active:=True;
  If ModuloDatos.TblComprobantes.Locate('Numero',TxtNumero.Text,[]) Then
   begin //(3)
    If ModuloDatos.TblComprobantes.FieldValues['Estado']<>'P' Then
     begin //(4)
       m:=ModuloDatos.TblComprobantes.FieldValues['Cod_soc'];
       If ModuloDatos.TblSocios.Locate('Cod_soc',m,[]) Then
        begin
         TxtSocio.Text:=m;
       end;
       n:=ModuloDatos.TblComprobantes.FieldValues['Cod_periodo'];
       If ModuloDatos.TblPeriodos.Locate('Cod_periodo',n,[]) Then
        begin
         TxtPeriodo.Text:=n;
       end;
       TxtImporte.Text:=ModuloDatos.TblComprobantes.FieldValues['Importe'];
       Confirmar.SetFocus
     Else //(4)
      begin
       ShowMessage('La factura Nº'+' '+TxtNumero.Text+' '+'ya fue cobrada!!!');
       (Sender as TDBEdit).SelectAll;
      end
   Else //(3)
    begin
     ShowMessage('Factura no encontrada. Verifique el Número de la misma.');
     (Sender as TDBEdit).SelectAll;
    end; //(3)
 end; //(1)
end;
Muchas gracias, saludos.

Silvio.-
Responder Con Cita
  #2  
Antiguo 11-12-2006
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.329
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Cita:
Empezado por silviodp
...ya que me da error en el ELSE //(4)
¿Y qué error te da?
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #3  
Antiguo 11-12-2006
Avatar de rcarrillom
[rcarrillom] rcarrillom is offline
Miembro Premium
 
Registrado: dic 2004
Ubicación: UK / North Sea / Norway / Golfo de México / Frente a mi Laptop
Posts: 219
Poder: 20
rcarrillom Va por buen camino
A primera vista a riego de equivocame, antes del Else //4,falta el end que cierra al begin //4
__________________
eLcHiCoTeMiDo - Rompecorazones profesional
Yo no soy presumido; ¿Pero de qué sirve mi humilde opinión contra la de los espejos?
Salva a un nylon, usa prendas de piel de foca
Responder Con Cita
  #4  
Antiguo 11-12-2006
silviodp silviodp is offline
Miembro
 
Registrado: may 2003
Ubicación: General Levalle, Argentina
Posts: 277
Poder: 22
silviodp Va por buen camino
No corre

Uno de los errores que da es mas o menos: "END expected but ELSE", pero si le pongo el END como sugirio rcarrillom, me da otro error ya probe agregando END en todas partes y no hay forma que funcione...
Responder Con Cita
  #5  
Antiguo 11-12-2006
Avatar de Bicho
[Bicho] Bicho is offline
Miembro Premium
 
Registrado: jul 2003
Ubicación: Inca - Mallorca
Posts: 1.776
Poder: 22
Bicho Va por buen camino
Hola, parece que está claro,

Cuenta los BEGIN que hay en la función (8) y los END que has puesto (6), te faltan 2.
Prueba a indentar el código para meter los bloques begin-end unos dentro de otros para poder separarlos y tenerlos más claro visiblemente y no te ocurrirá este tipo de errores, que por otra parte es muy común en tipo de código como el que has puesto, con multitud de condiciones.

Ej:
Código Delphi [-]
If ModuloDatos.TblComprobantes.FieldValues['Estado']<>'P' Then
begin //(4)
     m:=ModuloDatos.TblComprobantes.FieldValues['Cod_soc'];
     If ModuloDatos.TblSocios.Locate('Cod_soc',m,[]) Then
     begin
          TxtSocio.Text:=m;
     end;
     n:=ModuloDatos.TblComprobantes.FieldValues['Cod_periodo'];
     If ModuloDatos.TblPeriodos.Locate('Cod_periodo',n,[]) Then
     begin
          TxtPeriodo.Text:=n;
     end;
     TxtImporte.Text:=ModuloDatos.TblComprobantes.FieldValues['Importe'];
     Confirmar.SetFocus;
end;

Espero te sirva.

Saludos
Responder Con Cita
  #6  
Antiguo 11-12-2006
Avatar de Albano
Albano Albano is offline
Miembro
 
Registrado: oct 2004
Ubicación: Nogales, Sonora, Mexico
Posts: 422
Poder: 20
Albano Va por buen camino
Tranquilos...

Cita:
Empezado por Bicho
Prueba a indentar el código para meter los bloques begin-end unos dentro de otros para poder separarlos y tenerlos más claro visiblemente y no te ocurrirá este tipo de errores
La verdad es que necesitas un poco mas de orden en la manera de redactar tu codigo y tus preguntas en el foro silviodp y con 200 mensajes debes de tener la experiencia de que "mientras mas detalles des en tus hilos, mas rápido obtienes respuesta".
Aqui ya no te debe marcar el error que mencionas.
Código Delphi [-]
procedure TForm14.DBEdit2KeyPress(Sender: TObject; var Key: Char);
Var
  n,m:Variant;
begin //(1)
  If Key=#13 Then
  begin //(2)
    ModuloDatos.TblComprobantes.Active:=True;
    If ModuloDatos.TblComprobantes.Locate('Numero',TxtNumero.Text,[]) Then
    begin //(3)
      If ModuloDatos.TblComprobantes.FieldValues['Estado']<>'P' Then
      begin //(4)
        m:=ModuloDatos.TblComprobantes.FieldValues['Cod_soc'];
        If ModuloDatos.TblSocios.Locate('Cod_soc',m,[]) Then TxtSocio.Text:=m;
        n:=ModuloDatos.TblComprobantes.FieldValues['Cod_periodo'];
        If ModuloDatos.TblPeriodos.Locate('Cod_periodo',n,[]) Then TxtPeriodo.Text:=n;
        TxtImporte.Text:=ModuloDatos.TblComprobantes.FieldValues['Importe'];
        Confirmar.SetFocus
      end
      Else //(4)
      begin
        ShowMessage('La factura Nº'+' '+TxtNumero.Text+' '+'ya fue cobrada!!!');
        (Sender as TDBEdit).SelectAll;
      end;
    end
    Else //(3)
    begin
      ShowMessage('Factura no encontrada. Verifique el Número de la misma.');
      (Sender as TDBEdit).SelectAll;
    end; //(3)
  end; //(2)
end; //(1)

Última edición por Albano fecha: 11-12-2006 a las 16:59:26.
Responder Con Cita
  #7  
Antiguo 11-12-2006
Avatar de kuan-yiu
[kuan-yiu] kuan-yiu is offline
Miembro Premium
 
Registrado: jun 2006
Ubicación: Galicia. España.
Posts: 1.017
Poder: 20
kuan-yiu Va camino a la fama
Te faltan 2 "end", creo que uno antes de cada "else".
Responder Con Cita
  #8  
Antiguo 11-12-2006
Avatar de Ñuño Martínez
Ñuño Martínez Ñuño Martínez is offline
Moderador
 
Registrado: jul 2006
Ubicación: Ciudad Catedral, Españistán
Posts: 6.000
Poder: 25
Ñuño Martínez Tiene un aura espectacularÑuño Martínez Tiene un aura espectacular
Cita:
Empezado por Neftali
Cita:
Empezado por silviodp
...ya que me da error en el ELSE //(4)
¿Y qué error te da?
Que haya que preguntar esto a un principiante ya es molesto, ¡pero a alguien que ya lleva 200 mensajes en este foro!

Lo siento, pero es que me saca de quicio .
Responder Con Cita
  #9  
Antiguo 11-12-2006
silviodp silviodp is offline
Miembro
 
Registrado: may 2003
Ubicación: General Levalle, Argentina
Posts: 277
Poder: 22
silviodp Va por buen camino
No corre

Bueno a mi tambien me sacaste de quicio la verdad!!!!, si pregunto es porque probe un monton de formas y no funciona, no me queda otra alternativa, de ultima el foro es para que nos ayudemos, sino tenes ganas ni siquiera contestes..., quien te crees que sos????????, no sabia que Bill Gate se hacia llamar Ñuño Martinez...
Responder Con Cita
  #10  
Antiguo 11-12-2006
silviodp silviodp is offline
Miembro
 
Registrado: may 2003
Ubicación: General Levalle, Argentina
Posts: 277
Poder: 22
silviodp Va por buen camino
No corre

Solo queria que vieran el codigo ya que por ahi ven errores en el mismo que no me doy cuenta..., nada mas que eso, igual, gracias.
Responder Con Cita
  #11  
Antiguo 11-12-2006
Avatar de Bicho
[Bicho] Bicho is offline
Miembro Premium
 
Registrado: jul 2003
Ubicación: Inca - Mallorca
Posts: 1.776
Poder: 22
Bicho Va por buen camino
Jod... comó está la peña últimamente, es que no se puede decir nada a nadie.
Vamos hombre, que estamos en Navidad (casi casi),

Felices fiestas a todos,

Un abrazo
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
la aplicacion no corre en w98 DANY OOP 3 02-02-2007 01:05:16
corre delphi codigo de borland c ?? torito Varios 1 16-06-2005 18:50:16
Mi aplicacion no corre desde CD Coco_jac Varios 6 09-05-2005 21:14:10
Problemas com mi aplicacion, no corre desde CD ??? Coco_jac Conexión con bases de datos 1 08-05-2005 03:45:19
Delphi corre en Mac? adolfoz API de Windows 3 29-10-2004 09:47:25


La franja horaria es GMT +2. Ahora son las 18:23:26.


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