Développer avec RBS Change : Erreur initData avec recipientGroup
-
25/10/2011 17:28
Bonjour,
je souhaite insérer un élément de type recipientGroup dans le dossier Groupe d'envois du module form.
J'ai donc réalisé le code XML suivant (où les éléments du champ to sont définis plus haut dans le fichier):
<rootfolder module="form"> <recipientgroupfolder byLabel="Groupes d'envois"> <recipientgroup byLabel="Contacts xxx.fr" to-refids="cardfnspfad,cardfnspfjur,cardfnspfcom,cardodp,cardmnsp,cardfnspfspm,cardfnspfjpsmag,cardfnspfepdf,cardfnspfshop,cardfnspfweb" /> </recipientgroupfolder> </rootfolder>
En réalisant un import-data, j'obtiens cependant l'erreur suivante :
Error line 205 (/home/rbs/Projects/RBS/repository/framework/framework-3.5.0/persistentdocument/import/ScriptDocumentElement.class.php): Could not determine document type ! (, form_RecipientGroupScriptDocumentElement)
Y'a t-il un oubli ou une erreur dans le code XML ? Je ne comprend pas le message d'erreur ...Édité par Gaël Port 26/10/2011 09:48
-
26/10/2011 10:12
Il y a effectivement un problème sur l'import de documents de ce type. J'ai créé le ticket correspondant : Import XML de recipientGroup et recipientGroupList -
26/10/2011 15:51
En effet, l'ajout fonctionne correctement grâce au correctif.
En revanche, j'essaie de créer ce recipientgroup dans le dossier "Groupes d'envois" existant. Pour cela, j'utilise l'attribut byLabel (voir le code dans mon post précédent), mais le premier import-data que j'effectue recrée un dossier au lieu de l'insérer dans celui existant. -
26/10/2011 17:26
Ah oui, maintenant que vous le dites, ça me l'a fait aussi quand j'ai testé ma correction... Je vais regarder ça. -
Avez-vous trouvé quelque chose concernant cette erreur ?
Merci. -
02/11/2011 17:42
Ah non, je n'ai pas encore regardé (je l'avais juste noté dans ma liste de choses à voir)... je regarderai demain. -
03/11/2011 09:06
Bon en fait la raison est assez simple : si vous regardez dans la classe finale du document recipientGroupFolder (modules\form\persistentdocument\recipientGroupFolder.class.php) vous verrez qu'en fait le libellé affiché est une traduction de texte localisé et pas directement le champ label du document (ça a été fait de cette façon pour que le libellé soit traduit si on change la langue de l'interface).
En regardant dans le modèle du document (modules\form\persistentdocument\recipientGroupFolder.xml) vous verrez que la valeur par défaut du libellé est "recipient-group-folder", c'est donc un byLabel="recipient-group-folder" qu'il faut utiliser pour ne pas dupliquer le dossier. -
03/11/2011 10:16
En effet, le doublon ne se crée désormais plus en utilisant le libellé i18n.
Merci !
Merci de prendre connaissance et de respecter les règles des forums.