Modifications pour le document Fonctions avancées : modification des exports tabulés paramétrables
Modifié par Nicolas Schreiber le 2026/01/12 15:46
Depuis la version 15.1
modifié par Nicolas Schreiber
sur 2026/01/12 15:04
sur 2026/01/12 15:04
Commentaire de modification :
Il n'y a aucun commentaire pour cette version
À la version 17.1
modifié par Nicolas Schreiber
sur 2026/01/12 15:46
sur 2026/01/12 15:46
Commentaire de modification :
Il n'y a aucun commentaire pour cette version
Résumé
-
Propriétés de la Page (1 modifications, 0 ajouts, 0 suppressions)
-
Pièces jointes (0 modifications, 6 ajouts, 0 suppressions)
Détails
- Propriétés de la Page
-
- Contenu
-
... ... @@ -325,10 +325,11 @@ 325 325 326 326 **groupDataBefore**=" données en début de groupe" 327 327 328 - ** subGroupDataBefore **= "données en début de chaque sous-group" 329 - **subGroupDataSeparator ** = "données entre chaque champ du sous-groupe" 330 - ** subGroupDataAfter** = "\données à la fin de chaque sous-groupe" 331 -\\ **groupDataSubGroupSeparator**=" donnée insérée entre chaque subgroup" 328 +* 329 +** subGroupDataBefore **= "données en début de chaque sous-group" 330 + **subGroupDataSeparator ** = "données entre chaque champ du sous-groupe"** 331 +** subGroupDataAfter** = "\données à la fin de chaque sous-groupe" 332 +\\ **groupDataSubGroupSeparator**=" donnée insérée entre chaque subgroup"** 332 332 333 333 **groupDataAfter**="données en fin de groupe 334 334 ... ... @@ -372,7 +372,7 @@ 372 372 le fonctionnement est différent, car il n'y a pas "une seule variable" concaténant tous les sous-groupes, mais autant de "sous-variables" que de blocs. On ne peut donc poser que les séparateurs suivants 373 373 374 374 **subGroupDataBefore **= "données en début de chaque sous-group" 375 - **subGroupDataSeparator ** = "données entre chaque champ du sous-groupe"376 + **subGroupDataSeparator ** = "données entre chaque champ du sous-groupe" 376 376 **subGroupDataAfter** = "\données à la fin de chaque sous-groupe" 377 377 378 378 Chaque sous-groupe sera ensuite "posé" dans la colonne avec le compressChar=" ; " définit dans l'entête du format ... ... @@ -393,9 +393,78 @@ 393 393 394 394 [[image:1768226447728-811.png||class="img-thumbnail"]] 395 395 396 -le groupDataType="subgroup" est donc peu utilisé, sauf dans les exports au format xml car il epermettent de conserver la répétabilité des blocs, et donc de répéter les nopeux dans le format xml de sortie397 +le groupDataType="subgroup" est donc peu utilisé, sauf dans les exports au format xml car ils permettent de conserver la répétabilité des blocs, et donc de répéter les noeux dans le format xml de sortie 397 397 399 += sans groupDataType = 398 398 401 +SI on ne précise pas de groupDataType le moteur les considère comme ue arbre xml complet avec un noeud pour chaque sous-groupe et un noeud pour chaque champ. ça ne peut pas vraiment se matérialiser dans un export colonné, donc dans ce cas les données sont exportées "champ" par "champ", chaque champ étant regroupé dans une colonne avec le compressChar=" ; " définit dans l'entête du format. 402 +De facto on perd la lisibilité du bloc 403 + 404 +<group_field name="INTERVENANT" 405 + label = "Intervenants - sans groupDataType" 406 +~> 407 + 408 + <field name='PERSONNE_INTERVENANT' /> 409 + <field name='FONCTION_INTERVENANT' dataBefore=" (" dataAfter=")"/> 410 + <field name='PRECISION_INTERVENANT' dataJoinSeparator="\n"/> 411 +</group_field> 412 + 413 +[[image:1768227008672-422.png]] 414 + 415 +les groupes sans groupDataType seront essentiellement utilisés dans les exports OAI:LIDO pour ocnserver les imbrications de champs et blocs dans le format xml de sortie 416 + 417 +== Extraire un nombre défini de bloc chacun dans sa colonne == 418 + 419 +Dans certains cas il peut etre interessant d'éclater les blocs et les champs d'un bloc dans des colonnes séparées 420 + 421 +C'est possible avec le subGroupDataIndex mais il fauit prévoir le nombre de colonnes maximum 422 + 423 +Veiller aussi à l'unicité des name en indisuant le nom du bloc dans le fieldName 424 + 425 +<group_field name="INTERVENANT1" fieldName="INTERVENANT" 426 + label = "Intervenants - groupe 1" 427 + subGroupDataIndex ='1' 428 +~> 429 + 430 + <field name='PERSONNE_INTERVENANT' label="PERSONNE_INTERVENANT1"/> 431 + <field name='FONCTION_INTERVENANT' label="FONCTION_INTERVENANT1" /> 432 + <field name='PRECISION_INTERVENANT' label="PRECISION_INTERVENANT1"/> 433 +</group_field> 434 + 435 +<group_field name="INTERVENANT2" fieldName="INTERVENANT" 436 + label = "Intervenants - groupe 2" 437 + subGroupDataIndex = '2' 438 +~> 439 + 440 + <field name='PERSONNE_INTERVENANT' label="PERSONNE_INTERVENANT2"/> 441 + <field name='FONCTION_INTERVENANT' label="FONCTION_INTERVENANT2" /> 442 + <field name='PRECISION_INTERVENANT' label="PRECISION_INTERVENANT2"/> 443 +</group_field> 444 + 445 +<group_field name="INTERVENANT3" fieldName="INTERVENANT" 446 + label = "Intervenants - groupe 3" 447 + subGroupDataIndex ='3' 448 +~> 449 + 450 + <field name='PERSONNE_INTERVENANT' label="PERSONNE_INTERVENANT3"/> 451 + <field name='FONCTION_INTERVENANT' label="FONCTION_INTERVENANT3" /> 452 + <field name='PRECISION_INTERVENANT' label="PRECISION_INTERVENANT3"/> 453 +</group_field> 454 + 455 + 456 +[[image:1768228264778-201.png]] 457 + 458 +== Générer autant de lignes que de blocs répétables == 459 + 460 +Cette option est utilisée dans l'export e-recolnat pour générer une ligne d'export pour chaque bloc identification d'un specimen (FLO-4677) 461 + 462 +On définit le nom du bloc concernée (un seul par export) dans l'entéte du fichier via recordFromGroupFieldName 463 + 464 +[[image:1768228658052-477.png]] 465 + 466 +[[image:1768228710793-297.png]] 467 + 468 + 399 399 == Paramétrages complémentaires pour les blocs répétables == 400 400 401 401 il est possible d'inclure aussi dans un group_field ... ... @@ -404,39 +404,29 @@ 404 404 * des champs des notices liées a un des champs du bloc via le tag 'linked_field' 405 405 * des notices qui référencent la notice courante : tag 'reference' pour les liens parent/enfants. ce tag est étudié plus loin dans l'article 406 406 407 - ===Ajout de données avant - après chaque sous-groupe ===477 + 408 408 409 -* **subGroupDataBefore **: séparateur avant les données d'un sous-groupe (Chaine vide si non défini) 410 -* **subGroupDataSeparator **: séparateur entre les données d'un sous-groupe (Espace si non défini) 411 -* **subGroupDataAfter **: séparateur après les donnes d'un sous-groupe (Chaine vide si non défini) 412 - 413 -=== Ajout de données avant - après le groupe === 414 - 415 -Uniquement si groupDataType="group" car la colonne unique contiendra une concaténation de tous les sous-groupes en un seul groupe 416 - 417 -* **groupDataBefore **: séparateur avant les données du groupe (Chaine vide si non défini) 418 -* **groupDataSubGroupSeparator **: séparateur entre les sous-groupes (' / ' espace slash espace si non défini) 419 -* **groupDataAfter **: séparateur après les données du groupe (Chaine vide si non défini) 420 - 421 421 === Exemple global === 422 422 423 -<**group_field **name="INTERVENANT" 424 - groupDataType = "**group**" 425 - label = "Intervenants" 426 - groupDataBefore = "- texte avant le groupe -\n" 427 - groupDataSubGroupSeparator = "\n{séparateur par défaut entre les sous groupe}\n" 428 - groupDataAfter = "\n-texte aprés le groupe" 429 - subGroupDataBefore = "- texte avant le sousgroupe - " 430 - subGroupDataSeparator = " {séparateur par défaut dans le sous groupe} " 431 - subGroupDataAfter = " - texte aprés avant le sousgroupe -" 432 -\\> 433 -\\ <field name='PERSONNE_INTERVENANT' label='Intervenant'/> 481 +<group_field name="INTERVENANT" 482 + groupDataType = "group" 483 + label = "Intervenants" 484 + groupDataBefore = "groupDataBefore" 485 + groupDataSubGroupSeparator = "\ngroupDataSubGroupSeparator" 486 + subGroupDataBefore = "\nsubGroupDataBefore" 487 + subGroupDataSeparator = "\nsubGroupDataSeparator\n" 488 + subGroupDataAfter = "\nsubGroupDataAfter" 489 + groupDataAfter = "\ngroupDataAfter" 490 +~> 491 + 492 + <field name='PERSONNE_INTERVENANT' label='Intervenant'/> 434 434 <field name='FONCTION_INTERVENANT' label='Fonction ' dataBefore=" (" dataAfter=")"/> 435 435 <field name='PRECISION_INTERVENANT' label='Précisions intervenant ' dataJoinSeparator="\n"/> 436 436 </group_field> 437 437 438 -[[image:1698310122900-966.png||data-xwiki-image-style-alignment="center" class="img-thumbnail"]] 439 439 498 +[[image:1768229192168-268.png||class="img-thumbnail"]] 499 + 440 440 == Filtre sur les données du groupe == 441 441 442 442 D'un certaine manière un bloc répétable peut être considéré comme une table liée embarquée dans la notice courante ... ... @@ -678,7 +678,7 @@ 678 678 documentTypes="Document-Photo" 679 679 subGroupDataFilter="(IDOC_ACCESSIBILITY = 1)" 680 680 subGroupDataMultMaxi="" 681 - **subGroupDataIndex="1">**741 + **subGroupDataIndex="1">** 682 682 <!~-~- champ de la table IDOCS ~-~-> 683 683 <field name="LABEL" label="Photo 1 : "/> 684 684 ... ... @@ -708,7 +708,7 @@ 708 708 <linked_records_document_records name="PHOTO_INV" 709 709 documentTypes="Document-Photo" 710 710 subGroupDataFilter="(IDOC_ACCESSIBILITY = 1)" 711 - **subGroupDataIndex="1"**>771 + **subGroupDataIndex="1"**> 712 712 713 713 **~ 714 714 **<photo_document_file name="**_PHOTO1**" ... ... @@ -721,7 +721,7 @@ 721 721 <linked_records_document_records name="PHOTO_INV" 722 722 documentTypes="Document-Photo" 723 723 subGroupDataFilter="(IDOC_ACCESSIBILITY = 1)" 724 - **subGroupDataIndex="2"**>784 + **subGroupDataIndex="2"**> 725 725 726 726 **~ 727 727 **<photo_document_file name="**_PHOTO2**" ... ... @@ -734,7 +734,7 @@ 734 734 <linked_records_document_records name="PHOTO_INV" 735 735 documentTypes="Document-Photo" 736 736 subGroupDataFilter="(IDOC_ACCESSIBILITY = 1)" 737 - **subGroupDataIndex="3"**>797 + **subGroupDataIndex="3"**> 738 738 739 739 **~ 740 740 **<photo_document_file name="**_PHOTO3**" ... ... @@ -747,7 +747,7 @@ 747 747 <linked_records_document_records name="PHOTO_INV" 748 748 documentTypes="Document-Photo" 749 749 subGroupDataFilter="(IDOC_ACCESSIBILITY = 1)" 750 - **subGroupDataIndex="4"**>810 + **subGroupDataIndex="4"**> 751 751 752 752 **~ 753 753 **<photo_document_file name="**_PHOTO4**" ... ... @@ -768,7 +768,7 @@ 768 768 * 769 769 ** subGroupDataMultMaxi="4" 770 770 subGroupDataIndex=""> 771 -\\ **<photo_document_file name="_PHOTO"831 +\\**<photo_document_file name="_PHOTO" 772 772 label="Photo" 773 773 documentTypes="Document-Photo" 774 774 resolution="LOW"
- 1768227008672-422.png
-
- Auteur
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.NSR - Taille
-
... ... @@ -1,0 +1,1 @@ 1 +14.0 KB - Contenu
- 1768228264778-201.png
-
- Auteur
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.NSR - Taille
-
... ... @@ -1,0 +1,1 @@ 1 +10.9 KB - Contenu
- 1768228658052-477.png
-
- Auteur
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.NSR - Taille
-
... ... @@ -1,0 +1,1 @@ 1 +9.5 KB - Contenu
- 1768228710793-297.png
-
- Auteur
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.NSR - Taille
-
... ... @@ -1,0 +1,1 @@ 1 +10.6 KB - Contenu
- 1768229185769-507.png
-
- Auteur
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.NSR - Taille
-
... ... @@ -1,0 +1,1 @@ 1 +22.8 KB - Contenu
- 1768229192168-268.png
-
- Auteur
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.NSR - Taille
-
... ... @@ -1,0 +1,1 @@ 1 +22.8 KB - Contenu