Ajout de liste de données personnalisée

cancel
Showing results for 
Search instead for 
Did you mean: 
nancygaillard
Active Member

Ajout de liste de données personnalisée

Bonjour,

J'ai créé une liste de données personnalisée (custom datalist) sur Alfresco 4.2.c en suivant les indications sur ce sujet => https://forums.alfresco.com/forum/end-user-discussions/alfresco-share/custom-data-list-09232011-1454

J'ai déjà des types et aspects personnalisés sur Alfresco, mais je ne vois pas appaître mon type de liste de données après avoir redémarrer Tomcat.
(C'est-à-dire qu'Alfresco fonctionne)

Normalement on devrait les voir dans les sites pour lesquels on a ajouté le menu "Listes de données" quand on crée une nouvelle liste n'est-ce pas?
7 Replies
cleseach
Active Member II

Re: Ajout de liste de données personnalisée

Bonjour,

Avez-vous bien configuré Share tel qu'il en est fait mention dans le lien que vous citez ?

De manière générale, lorsque vous sollicitez les forums, mieux vaut décrire précisément les configurations que vous avez réalisez (en copiant/collant votre code/XML dans votre message), une référence à un article n'est pas suffisamment précis.

Cordialement,
Charles Le Seac'h
nancygaillard
Active Member

Re: Ajout de liste de données personnalisée

Bonjour,

Je m'excuse de ne pas avoir fait les choses dans les règles. Merci pour votre intervention.

Voici le détail de la création de mon custom datalist.


1) Dans "C:\Alfresco2\tomcat\shared\classes\alfresco\extension" j'ai créer un fichier CallDatalistModel.xml

son contenu :

<?xml version="1.0" encoding="UTF-8"?>

<!– Definition of new Model –>

<model name="cl:clDatalist" xmlns="http://www.alfresco.org/model/dictionary/1.0">

   <!– Optional meta-data about the model –>  
   <description>Custom datalist</description>
   <author>MOI</author>
   <version>1.0</version>

   <!– Imports are required to allow references to definitions in other models –>  
   <imports>
        <!– Import Alfresco Dictionary Definitions –>
      <import uri="http://www.alfresco.org/model/dictionary/1.0" prefix="d"/>
      <!– Import Alfresco Content Domain Model Definitions –>
      <import uri="http://www.alfresco.org/model/content/1.0" prefix="cm"/>
     <!– Import Alfresco Data List Model Definitions –>
      <import uri="http://www.alfresco.org/model/datalist/1.0" prefix="dl"/>
   </imports>

   <!– Introduction of new namespaces defined by this model –>  
   <namespaces>
       <namespace uri="cl.customlists.com" prefix="cl"/>
   </namespaces>


   <!–      T Y P E   D E F I N I T I O N S      –>  
   <types>
     <!–   Data list defintions For this model go here –>
      <type name="cl:clCallDatalist">
       <title>Gestion des appels</title>
       <description>Appels recus et appels emis</description>
       <parent>dl:dataListItem</parent>
       <properties>
         <property name="cl:clTitle">
            <title>Libelle</title>
            <type>d:text</type>
            <mandatory>true</mandatory>
         </property>
         <property name="cl:clClient">
            <title>Client</title>
            <type>d:text</type>
            <mandatory>false</mandatory>
         </property>
         <property name="cl:clNumber">
            <title>Numero telephone</title>
            <type>d:text</type>
            <mandatory>true</mandatory>
         </property>
         <property name="cl:clSubject">
            <title>Sujet</title>
            <type>d:text</type>
            <mandatory>false</mandatory>
         </property>
         <property name="cl:clDate">
            <title>Date</title>
            <type>d:date</type>
            <mandatory>false</mandatory>
         </property>
         <property name="cl:clCallType">
            <title>Type appel</title>
            <type>d:text</type>
            <mandatory>true</mandatory>
            <constraints>
               <constraint name="cl:clListCallType" type="LIST">
                  <parameter name="allowedValues">
                     <list>
                        <value>Non renseigne</value>
                        <value>Emis</value>
                        <value>Recu</value>
                     </list>
                  </parameter>
               </constraint>
            </constraints>
         </property>
      </properties>      

     </type>
   </types>    
</model>


2) Dans "C:\Alfresco2\tomcat\shared\classes\alfresco\web-extension" j'ai modifier mon fichier "share-config-custom.xml" en ajoutant à la fin du fichier, juste avant la balise "alfresco-config" le code suivant :


   <!– CUSTOM DATALIST : CALL –>

   <config evaluator="model-type" condition="cl:clCallDatalist">
      <forms>
         <!– Create item form –>
         <form>
            <field-visibility>
               <!– for the form creation we are showing everything except approved date –>
                  <show id="cl:clTitle" />            
               <show id="cl:clClient" />                              
               <show id="cl:clNumber" />               
               <show id="cl:clSujet" />                     
               <show id="cl:clDate" />
               <show id="cl:clCallType" />
            </field-visibility>
            <create-form template="/org/alfresco/components/data-lists/forms/dataitem.ftl" />
            <appearance>
               <field id="cl:clTitle">
                  <control template="/org/alfresco/components/form/controls/textfield.ftl" />
               </field>
               <field id="cl:clClient">
                  <control template="/org/alfresco/components/form/controls/textfield.ftl" />
               </field>
               <field id="cl:clNumber">
                  <control template="/org/alfresco/components/form/controls/textfield.ftl" />
               </field>
               <field id="cl:clSubject">
                  <control template="/org/alfresco/components/form/controls/textarea.ftl" />
               </field>
               <field id="cl:clDate">
                  <control template="/org/alfresco/components/form/controls/daterange.ftl" />
               </field>             
               <field id="cl:clCallType">
                  <control template="/org/alfresco/components/form/controls/selectmany.ftl" />
               </field>
            </appearance>
         </form>

               <!– Data Grid view –>
               <form id="datagrid">
                  <field-visibility>                     
                  <show id="cl:clTitle" />            
                  <show id="cl:clClient" />                              
                  <show id="cl:clNumber" />               
                  <show id="cl:clSubject" />
                  <show id="cl:clDatet" />
                  <show id="cl:clCallType" />    
                  </field-visibility>
               </form>
         </forms>
      </config>

   <!– Edit view –>
   <config evaluator="node-type" condition="cl:clCallDatalist">
      <forms>
         <!– Edit marketing item form –>
         <form>
            <field-visibility>
                  <show id="cl:clTitle" />            
               <show id="cl:clClient" />                              
               <show id="cl:clNumber" />               
               <show id="cl:clSubject" />
               <show id="cl:clDatet" />
               <show id="cl:clCallType" />
            </field-visibility>
            <create-form template="/org/alfresco/components/data-lists/forms/dataitem.ftl" />
            <appearance>
               <field id="cl:clTitle">
                  <control template="/org/alfresco/components/form/controls/textfield.ftl" />
               </field>
               <field id="cl:clClient">
                  <control template="/org/alfresco/components/form/controls/textfield.ftl" />
               </field>
               <field id="cl:clNumber">
                  <control template="/org/alfresco/components/form/controls/textfield.ftl" />
               </field>
               <field id="cl:clSubject">
                  <control template="/org/alfresco/components/form/controls/textarea.ftl" />
               </field>
               <field id="cl:clDate">
                  <control template="/org/alfresco/components/form/controls/daterange.ftl" />
               </field>             
               <field id="cl:clCallType">
                  <control template="/org/alfresco/components/form/controls/selectmany.ftl" />
               </field>
            </appearance>
         </form>
      </forms>
   </config>


3) J'ai enregistrer mes changements
4) J'ai arrêter puis redémarrer tomcat
5) J'ai relancer Alfresco Share

J'ai été ensuite dans l'un de mes sites, dans le menu "Liste de données", "Nouvelle liste", mais parmi les listes proposées, ma liste personnalisée n'apparaît pas.
nancygaillard
Active Member

Re: Ajout de liste de données personnalisée

Je précise que alfresco.log ne contient pas d'erreur, ni share.log, ni catalina, ni alfrescotomcat-stderr.

Je vous remercie d'avance, si vous avez une idée de ce que je devrais faire
nancygaillard
Active Member

Re: Ajout de liste de données personnalisée

up
cleseach
Active Member II

Re: Ajout de liste de données personnalisée

Bonjour,

Il me semble qu'il manque ici le chargement de votre modèle :

<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE beans PUBLIC '-//SPRING//DTD BEAN//EN' 'http://www.springframework.org/dtd/spring-beans.dtd'>
<beans>
    <bean id="extension.cl.dictionaryBootstrap" parent="dictionaryModelBootstrap" depends-on="dictionaryBootstrap">
        <property name="models">
            <list>
                <value>alfresco/extension/CallDatalistModel.xml</value>
            </list>
        </property>
    </bean>
</beans>


Cordialement,
Charles Le Seac'h
nancygaillard
Active Member

Re: Ajout de liste de données personnalisée

C'est bien cela. Merci beaucoup. (J'ai cru que c'était facultatif ><)
nancygaillard
Active Member

Re: Ajout de liste de données personnalisée

Dans share-config-custom.xml

On a : "clSujet" une fois  ça devrait être : "clSubject"
On a : "clDatet" deux fois, ça devrait être : "clDate"
La liste ne doit pas être représentée par "selectmany.ftl" mais par select (je regarde et j'édite cela dès que possible.. d'ici quelques heures)