Ven 02/03/2012 - Actualités

Xavier
Administrateur du site
Messages : 817
Enregistré le : mer. 22 juin 2011 18:25

Ven 02/03/2012 - Actualités

Message non lu par Xavier »

Ven 02/03/2012 - Actualités


09:15

Le problème XML reporté par FBu est dû à une mauvaise utilisation du composant NativeXML qui est utilisé pour produire les fichiers XML.

En effet le service XT4 qui écrit un élément demande une écriture directe :
//------------------------------------------------------------------------------
// XSX_AddElement - Ajoute un élement
// 06/08/2011 - XT400
//------------------------------------------------------------------------------
function XSX_AddElement(XML_Parent: TXMLNode; Element_Name, Element_Value: String): TXMLNode;
begin
Result := XML_Parent.NodeNew(Element_Name);
Result.ValueDirect := Element_Value;
end;
Le composant lui-même propose soit l'écriture directe soit l'écriture Escaped :
property ValueDirect: string read FValue write FValue;
// ValueDirect is the exact text value as was parsed from the stream. If multiple
// text elements are encountered, they are added to ValueDirect with a CR to
// separate them.

property ValueAsString: string read GetValueAsString write SetValueAsString;
// ValueAsString returns the unescaped version of ValueDirect. All neccesary
// characters in ValueDirect must be escaped (e.g. "&" becomes "&") but
// ValueAsString returns them in original format. Always use ValueAsString to
// set the text value of a node, to make sure all neccesary charaters are
// escaped.
Xavier
Administrateur du site
Messages : 817
Enregistré le : mer. 22 juin 2011 18:25

Ven 02/03/2012 - Actualités

Message non lu par Xavier »

09:25

Impeccable :
EscapedDisplay.png
EscapedStored.png
La lecture (qui est effectuée par un autre composant) se passe sans souci.
Vous n’avez pas les permissions nécessaires pour voir les fichiers joints à ce message.
Xavier
Administrateur du site
Messages : 817
Enregistré le : mer. 22 juin 2011 18:25

Ven 02/03/2012 - Actualités

Message non lu par Xavier »

18:20


Il a fallu préparer l'outil Identifiants (par copie / modification de Contacts) afin d'avoir une base réelle pour l'étude du Gestionnaire de données.

Il reste encore à implémenter la fonction Cacher la valeur, dont la solution n'est pas évidente car un Identifiant n'est pas un objet et n'a donc pas de Property.
Identifiers.png
Vous n’avez pas les permissions nécessaires pour voir les fichiers joints à ce message.
Xavier
Administrateur du site
Messages : 817
Enregistré le : mer. 22 juin 2011 18:25

Ven 02/03/2012 - Actualités

Message non lu par Xavier »

18:50

La structure des données Identifiant restera identique à celle des Contacts :
  • Le Contact ou le Groupe d'identifiant est un objet
  • Les Informations ou Identifiants qu'il contient sont des champs de cet objet.
Le stockage de l'attribut Valeur cachée ne se fera donc pas en passant les Identifiants en objets, mais en insérant une property Hidden qui contiendra une chaine représentant une liste des codes, à priori 0 pour visible et 1 pour caché.

C'est un peu éloigné du modèle idéal de donnée, mais c'est économe en espace disque. (Ce système "à l'ancienne" sera de toute façon utilisé pour stocker sur chaque dossier un code permettant de le rendre visible ou pas dans chaque outil, car c'est une relation "N vers N" et je ne compte pas créer des objets d'affectation.)

Code : Tout sélectionner

          <Data>
            <Model>IdentGroup</Model>
            <Properties>
              <Prop>State=Open</Prop>
              <Prop>Name=Site 1</Prop>
              <Prop>Hidden=001</Prop>
            </Properties>
            <Text>
              <Line>Adresse=http://www.website.com</Line>
              <Line>Identifiant=login</Line>
              <Line>Mot de passe=password</Line>
            </Text>
          </Data>
Répondre