Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Conexión con bases de datos
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Conexión con bases de datos

 
 
Herramientas Buscar en Tema Desplegado
  #2  
Antiguo 27-02-2017
Avatar de AgustinOrtu
[AgustinOrtu] AgustinOrtu is offline
Miembro Premium
NULL
 
Registrado: ago 2013
Ubicación: Argentina
Posts: 1.858
Poder: 17
AgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en bruto
Me pierdo entre tanto código sin las etiquetas

Más allá del problema, hay varias cosas para mejorar en tú código. Hay muchas cosas que lo hacen muy difícil de leer, por ejemplo el como haces las comparaciones booleanas.

Código Delphi [-]
 If CondicionBooleana = True then

 // Sintaxis equivalente, más compacta y mucho más clara
 if CondicionBooleana then
 
 // Lo mismo sucede para comparar por falso

  if CondicionBooleana = False 
 
  if not CondicionBooleana then

Luego otro punto importantísimo es el manejo de excepciones. Veo bloques try-except en los que ocultas las excepciones; esto ocurre porque dejas el bloque except vacío. Créeme, es una muy mala idea. Podría estar ocurriendo algo malo y como lo ocultas, ni siquiera vos te puedes enterar del error. Te recomiendo que elimines estos bloques try-except en el cual no controlas las excepciones. Además como bonus le quitas nivel de sangría y complejidad al código, habiéndolo más fácil de entender

También veo que utilizas un condicional para verificar si los DataSet (tablas, query) están activos, y si no lo están, abrirlos. No es necesario preguntar. Con poner Active a True, el componente solo ya se encarga de verificarlo. También podes usar el método Open, es equivalente a poner Active a True

Todos estos consejos sean para mejorar el código, que está muy extenso y hace muchas cosas, y como ya dije, es complejo

Falta más información sobre el problema. Cuando hay un error, debes colocar en tú post en que línea (si es una excepción) y el mensaje. Si el error es de programación (datos inconsistentes, no hace lo que quiero, etc) deberías decirnos que sucede.

A simple vista pareciera que estas iterando, grabando los datos, pero el Post sobre las tablas lo haces una vez. Debes hacer una combinación de insert (o append) y post por cada registro que querés guardar. Para edit es igual
Responder Con Cita
 



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
Error Interbase Access violation The code attempted to access a virtual ryderMX Firebird e Interbase 3 21-11-2015 11:11:46
Ado y Access jocey Conexión con bases de datos 2 25-02-2008 17:58:25
access con la pda joel20 Conexión con bases de datos 0 08-01-2007 13:30:30
ado + access gustavoh Conexión con bases de datos 3 03-10-2005 05:30:49
Access!! PTW Conexión con bases de datos 5 15-04-2004 02:00:10


La franja horaria es GMT +2. Ahora son las 22:09:24.


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