Club Delphi  
    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

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 22-09-2008
Avatar de juanblack
juanblack juanblack is offline
Miembro
 
Registrado: feb 2008
Posts: 12
Poder: 0
juanblack Va por buen camino
Ayuda por favor: TZQuery + TClientDataSet = Error.

Saludos de nuevo amigos del foro.

Aquí de nuevo yo con un gran problema:
Sucede que queriendo realizar una prueba de transacciones muy simple manejando esta vez componentes zeos (TZQuery) y componentes midas (TClientDataSet) me tope con el espantoso error -901.

Me explico mejor:
Como antecedente estoy usando Firebird 2.1 como base de datos, Delphi 5, Componentes Zeos ver. 6.6.1 beta (diganme si es o no una versión estable por favor). Todo ello bajo el SO windows vista.

La tabla es bien sencilla:

Código SQL [-]
CREATE TABLE MOVIMIENTOS_MASTER (
    ID_MOVI           INTEGER NOT NULL,
    AREA_CLAVE        INTEGER NOT NULL,
    FECHA_MOVIMIENTO  DATE NOT NULL
);


En una forma nueva agrego los siguientes componentes:
Código Delphi [-]
  object MiZConnect: TZConnection
    Protocol = 'firebird-2.0'
    HostName = 'localhost'
    Database = 'PRUEBA01.FDB'
    User = 'sysdba'
    Password = 'masterkey'
    AutoCommit = False
    TransactIsolationLevel = tiReadCommitted
    Connected = True
  end
  object MiZQuery: TZQuery
    Connection = MiZConnect
    SQL.Strings = ('select id_movi, area_clave, fecha_movimiento'
      'from movimientos_master')
    Params = <>
  end
  object MiDSProvider: TDataSetProvider
    DataSet = MiZQuery
    Constraints = False
    Options = [poIncFieldProps, poCascadeDeletes, poCascadeUpdates, poAllowMultiRecordUpdates, poPropogateChanges]
    UpdateMode = upWhereKeyOnly
  end
  object MiCDS: TClientDataSet
    Active = True
    Aggregates = <>
    Params = <>
    ProviderName = 'MiDSProvider'
    object MiCDSID_MOVI: TIntegerField
      FieldName = 'ID_MOVI'
      Required = True
    end
    object MiCDSAREA_CLAVE: TIntegerField
      FieldName = 'AREA_CLAVE'
      Required = True
    end
    object MiCDSFECHA_MOVIMIENTO: TDateField
      FieldName = 'FECHA_MOVIMIENTO'
      Required = True
    end
  end
  object MiDS: TDataSource
    DataSet = MiCDS
  end
  object DBNavigator1: TDBNavigator
    DataSource = MiDS
    TabOrder = 0
  end
  object DBEdit1: TDBEdit
    DataField = 'ID_MOVI'
    DataSource = MiDS
    TabOrder = 1
  end

Como veran no es gran cosa, pues para empezar solo quiero navegar por la tabla con mi TDBNavigator y todo esto solo para probar este -para mi- nuevo tipo de interacción con mi base de datos. Esto lo tome de unos ejemplos que el mismo Delphi ya trae al instalarlo con la diferencia de que esos son para tablas de Interbase.

Pues bueno, todo hasta ahi bien, pero al ejecutar la aplicación me lanza el siguente error -cosa curiosa- AL CERRAR la aplicación (funciona bien aparente mente y todo pero al cerrar la forma surge el error):
Project prueba.exe raised exception class EZSQLException with message 'SQL Error: Invalid statement handle. ErrorCode: -901. Unsuccessful execution caused by system error that does not preclude successful execution of subsequent statements '.

Ya intente cambiar el componente TZQuery por un TZTable y me da el mismo resultado, he cambiado las propiedades de los componentes y nada, sigo con el mismo error. ¿Que es lo que estoy haciendo mal? ¿Es asi como deben configurarse los componentes? Una mano aquí por favor.

Muchas gracias de antemano.

Última edición por juanblack fecha: 22-09-2008 a las 20:03:34.
Responder Con Cita
  #2  
Antiguo 23-09-2008
Avatar de AzidRain
[AzidRain] AzidRain is offline
Miembro Premium
 
Registrado: sep 2005
Ubicación: Córdoba, Veracruz, México
Posts: 2.914
Poder: 21
AzidRain Va camino a la fama
Te falta ponernos el codigo, solo pusiste la definición de la forma.
__________________
AKA "El animalito" ||Cordobés a mucha honra||
Responder Con Cita
  #3  
Antiguo 23-09-2008
Avatar de juanblack
juanblack juanblack is offline
Miembro
 
Registrado: feb 2008
Posts: 12
Poder: 0
juanblack Va por buen camino
Resuelto.

Muchas gracias por responder Azid, y dejame te cuento que no hay código alguno en esta aplicación, pues solo estoy configurando los componentes para poder ejecutarla asi tal cual, es por eso que solo pongo la descripción de los componentes.

Pero mira que cosa, ya encontre el problema y al parecer se trataba de un DataModule que estaba tambien dentro del proyecto y que contenia algunos componentes Zeos que hacian referencia a la misma tabla con la que estaba probando. Aun cuando no lo estaba auto-creando al ejecutar la aplicación, de alguna forma esta estaba haciendo "ruido" a la forma principal donde llevaba a cabo la prueba. Solo la elimine del proyecto y listo, todo bien.

Pues bueno, ya pude hechar a andar una tabla usando estos componentes, ahora el gran reto: ¿como conecto mis componentes para poder trabajar con un sistema maestro-detalle? y es ahi donde estoy más confundido todavia.

Es simple, pues tengo dos tablas: MOVIMIENTOS_MASTER & MOVIMIENTOS_DETALLE en donde por cada registro de la primera tabla existen 'n' registros hijos en la segunda tabla. Lo que quiero es ver en componentes DBEdit, LookupcomboBox, etc. los datos de la tabla maestra y en un DBGrid sus registros hijos, ambos controlados con sus respectivos DBNavigator. Puede que sea muy obvio para algunos, pero no para mi. ¿Como lo hago?

Gracias mil de nuevo.
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
Instale firebird en Centos y hay error entrando gsec con SYSDBA, ayuda por favor ! Ale Alvarez Firebird e Interbase 1 14-09-2007 19:28:57
Hasar 320 Error Ayuda Por Favor¡¡¡¡¡ DIEGASTONE Impresión 2 19-08-2007 02:32:58
Problemas con pasar parametros con TZquery Coco_jac Varios 2 18-04-2006 15:12:57
Error BDE Access Ayuda por favor urgente Rabata Conexión con bases de datos 0 23-12-2004 10:24:27
Error Desconocido - Ayuda Por Favor LucasArgentino Conexión con bases de datos 1 12-12-2003 12:49:25


La franja horaria es GMT +2. Ahora son las 01:31:47.


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