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 19-06-2012
d3nz1g d3nz1g is offline
Miembro
NULL
 
Registrado: jun 2012
Posts: 10
Poder: 0
d3nz1g Va por buen camino
Question ¿Cómo expecificarle a un ClientDataSet que no actualize determinado campo en la BD?

Saludos a todos, les comento mi problema:

Tengo un ClientDataSet ligado a un grid que muestra información almacenada en la base de datos, realizo inserciones, borrados y actualizaciones a traves del clientdataset y aplico esos cambios en la base de datos mediante el método applyupdates.

Esto funciona de maravilla cuando trabajo con el clientdataset ligado a una sola tabla en la base de datos, sin embargo al realizar una consulta más compleja para llenar el clientdataset las actualizaciones me estan produciendo un error.

La consulta con la que lleno la tabla es la siguiente:

Código SQL [-]
SELECT  A.CODIGO,  A.CODIGO_FORANEO,  B.DESCRIPCION AS DESCRIPCION_FORANEA  FROM  Tabla1 A LEFT OUTER JOIN Tabla2 B ON A.CODIGO_FORANEO = B.CODIGO  ORDER BY CODIGO ASC;

La carga de datos en el grid se realiza correctamente, pero al modificar la columna del grid ligada a CODIGO_FORANEO e intentar aplicar un applyupdates me muestra el siguiente error:

Cita:
Invalid column name 'DESCRIPCION_FORANEA'
Mi pregunta es la siguiente:

¿Cómo puedo definir un campo en un clientdataset de manera que este no se tome encuenta durante las actualizaciones realizadas mediante el metodo applyupdates? ¿Existe alguna propiedad que pueda utilizar para especificarle al clientdataset que columnas no se deben actualizar en la base de datos?
Responder Con Cita
  #2  
Antiguo 19-06-2012
Avatar de fjcg02
[fjcg02] fjcg02 is offline
Miembro Premium
 
Registrado: dic 2003
Ubicación: Zamudio
Posts: 1.410
Poder: 22
fjcg02 Va camino a la fama
Sí , en la propiedad providerFlags del campo le pones pfInUpdate = False

Saludos
__________________
Cuando los grillos cantan, es que es de noche - viejo proverbio chino -
Responder Con Cita
  #3  
Antiguo 19-06-2012
d3nz1g d3nz1g is offline
Miembro
NULL
 
Registrado: jun 2012
Posts: 10
Poder: 0
d3nz1g Va por buen camino
Sí, esa es la propiedad que buscaba, muchas gracias! Sin embargo no parece estar teniendo efecto en mi código, al aplicar el applyupdates me sigue dando el mismo error...

Según entiendo por lo que leí, sería cuestion de definirle la propiedad ProviderFlags como vacía para que no tenga la bandera pfInUpdate que trae por defecto, pero por alguna razón no me está funcionando, este es el código que estoy aplicando:

Código:
ClientDataSet.FieldByName('DESCRIPCION_FORANEA').ProviderFlags := [];
¿Será que habrá que definir algo más que se me esta escapando? ¿O será que esta propiedad hay que definirla en algún momento específico? (Yo la estoy definiendo despues de haber cargado el ClientDataSet...)
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
Como hacer que la PC no funcione en un horario determinado JoAnCa Varios 8 02-04-2010 22:11:08
Como eliminar un campo de una Query y ClientDataSet David Conexión con bases de datos 2 26-03-2009 13:23:07
Ordenar Array de Registro por campo determinado Bauhaus1975 Varios 10 01-03-2009 10:44:09
Registros de un campo blob que contienen un string determinado juanpe Firebird e Interbase 2 07-03-2007 18:44:26
Como puedo hacer una consulta con un Query y que se actualize en el DBGrid olbeup SQL 7 01-08-2005 17:37:28


La franja horaria es GMT +2. Ahora son las 12:25:31.


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