Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Providers (https://www.clubdelphi.com/foros/forumdisplay.php?f=10)
-   -   Campos ReadOnly y Required en ClientDataset (https://www.clubdelphi.com/foros/showthread.php?t=78528)

gatosoft 26-04-2012 22:53:13

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

Al González 27-04-2012 00:11:26

Hola gatosoft.

Que agradable es verte activo nuevamente en el foro. :)

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

Saludos.

gatosoft 27-04-2012 00:23:28

Muchas gracias AL..!!!! solucionado...!!!

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

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,


La franja horaria es GMT +2. Ahora son las 13:55:25.

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