Club Delphi  
    FTP   CCD     Enlaces   Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Providers
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Respuesta
 
Herramientas Desplegado
  #1  
Antiguo 26-04-2012
Avatar de gatosoft
[gatosoft] gatosoft is offline
Miembro Premium
 
Registrado: may 2003
Ubicación: Bucaramanga, Colombia
Posts: 584
gatosoft Va por buen camino
Question Campos ReadOnly y Required en ClientDataset

Buen día amigos,

Les comento mi problema en espera de su ayuda:

Tengo un módulo que recibe una variable String que contiene un archivo XML. Este archivo lo cargo en un ClientDataset con la sentencia:

Código Delphi [-]
ClientDataset1.XMLData := MyVariableString;

El módulo debe permitir al usuario realizar algunas tareas sobre los datos (Insert, Update, Delete).... sin afectar la data real, lo cual quiere decir que nunca haré un ApplyUdates... el objetivo es entregar los datos al usuario y que se divierta con ellos sin hacer daños... pero bueno, ese no es el punto.

El problema está en que las consultas que llegan vienen con validaciones desde la base de datos, como: El campo es requerido, o el campo es de solo lectura....

He intentado después de hacer el cargue de datos hacer modificaciones como:

Código Delphi [-]
       cdsConsulta.Fields[i].Required := False;
       cdsConsulta.Fields[i].ReadOnly := False;


Pero no sucede nada... de hecho, hago la prueba de guardar los archivos antes y después de estas modificaciones y efectivamente no sucede nada en el ClientDataset....

Código Delphi [-]
  cdsConsulta.SaveToFile('c:\salida1.xml');
  for i := 0 to cdsConsulta.FieldCount-1 do
     Begin
       cdsConsulta.Fields[i].Required := False;
       cdsConsulta.Fields[i].ReadOnly := False;
     End;//for i
  cdsConsulta.SaveToFile('c:\salida2.xml');

Un fragmento del XML es el siguiente (Antes y después):

Código:
<FIELDS>
   <FIELD attrname="tid_codigo" fieldtype="i4"/>
  <FIELD attrname="tid_pai_codigo" fieldtype="i4" required="true"/>
  <FIELD attrname="pai_codigoiso" fieldtype="string.uni" readonly="true" WIDTH="10"/>
  <FIELD attrname="tid_nombre" fieldtype="string.uni" required="true" WIDTH="120"/>
  <FIELD attrname="tid_descripcion" fieldtype="string.uni" WIDTH="200"/>
 <FIELD attrname="tid_estado" fieldtype="string.uni" required="true" WIDTH="10"/>
</FIELDS>

Les agradezco sus opiniones...!

PDTA: Trabajo con XE
__________________
gatosoft [M.37.co]
Responder Con Cita
  #2  
Antiguo 26-04-2012
Avatar de Al González
[Al González] Al González is offline
In .pas since 1991
 
Registrado: may 2003
Posts: 4.859
Al González Va camino a la famaAl González Va camino a la fama
Hola gatosoft.

Que agradable es verte activo nuevamente en el foro.

Creo que el problema que describes tiene que ver con esto.

Saludos.
__________________
Twitter.
GH Freebrary.
Rescatando a Delphi.
Responder Con Cita
  #3  
Antiguo 26-04-2012
Avatar de gatosoft
[gatosoft] gatosoft is offline
Miembro Premium
 
Registrado: may 2003
Ubicación: Bucaramanga, Colombia
Posts: 584
gatosoft Va por buen camino
Muchas gracias AL..!!!! solucionado...!!!

No se como pude dejar que esto pasara... me hizo falta un poco de investigación sobre temas ya resueltos...

Y pues si... ahora tengo mas tiempo para mi y mis proyectos (personales y de Software) así que espero estar mas a menudo por acá...

un saludo,
__________________
gatosoft [M.37.co]
Responder Con Cita
Respuesta


Herramientas
Desplegado

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
Campos creados dinámicamente clientdataset sur-se Varios 6 18-10-2010 08:43:33
añadir campos a un ClientDataSet en ejecución sanpra Varios 2 24-10-2007 13:25:07
Cargar campos en SQLDataset y ClientDataset toni.vi Conexión con bases de datos 0 11-02-2007 17:14:11
Campos calculados y clientdataset Grupo ISoftware Conexión con bases de datos 2 18-11-2003 00:57:01
Copiar Campos de un ClientDataSet a Otro linsua Conexión con bases de datos 4 06-11-2003 21:25:00


La franja horaria es GMT +2. Ahora son las 15:56:39.


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