Développer avec RBS Change : Propriété d'un document = élément de liste dynamique

  • 47685.1

    06/12/2011 15:32


    David Guillot
    Rang : Expert
    Bonjour,

    Je souhaite créer un document dont l'une des propriétés est un(des) élément(s) d'une liste dynamique, à valeur multiple :
    - Si je le déclare type="String" from-list="modules_list/maListeDynamique" max-occurs="-1", la valeur multiple ne fonctionne pas
    - Si je le déclare type="modules_list/item" from-list="modules_list/maListeDynamique" max-occurs="-1", je ne peux pas enregistrer mon document ("le champ ″XXX″ n'est pas valide : count=″0″ min-occurs=″1″, max-occurs=″-1″')

    Comment faire ?

    Merci d'avance
  • 47685.2 en réponse à 47685.1 écrit par David Guillot

    06/12/2011 16:49


    Gaël Port
    Titre : Développeur RBS Change
    Rang : Expert
    Bonjour,

    Alors seuls les champ de type document peuvent avoir un max-occurs supérieur à 1 à ou bien égal -1 (illimité). Cela ne fonctionnera effectivement par pour des propriétés scalaires, comme les chaines.

    Vous avez donc plusieurs possibilité :

    1) si votre liste dynamique a pour item des documents (comme par exemple la liste du module zone décrite par le service zone_ListPublishedcountriesService), vous pouvez dans ce cas déclarer une propriété du type des documents de la liste (dans mon exemple modules_zone/country) avec un max-occurs à -1. C'est une solution à retenir notamment si vous avec besoin de pouvoir écrire des requêtes basées dessus.


    2) vous pouvez aussi utiliser un champ de type String avec un max-occurs à 1 (valeur par défaut) mais par contre, déclarer dans l'éditeur du champ que le contrôle utilisé est une liste à choix multiple en passant par l'attribut type qui pourra valoir soit multiplelist, soit checklist selon le type de contrôle que vous voulez. La valeur enregistrée sera alors la liste des valeurs sélectionnées séparées par des virgules. Par exemple vous pouvez regarder la propriété pingurls du document modules_blog/blog.
  • 47685.3

    06/12/2011 17:03


    David Guillot
    Rang : Expert
    OK merci, la seconde solution fonctionne bien !
 
Merci de prendre connaissance et de respecter les règles des forums.
 
1362 membres
Aucun membre connecté