Souci avec les formulaires des custom data list

cancel
Showing results for 
Search instead for 
Did you mean: 
ripcurl
Member II

Souci avec les formulaires des custom data list

Bonjour à tous,

Ma version d’alfresco est la community 4.0.e. Sous windows serveur 64 bit 2008 R2.
Je tente de créer ma première custom data list.

Après de nombreuses recherches sur le sujet je suis tombé sur ce post qui explique relativement simplement comment créer une custom datalist :
https://forums.alfresco.com/en/viewtopic.php?f=47&t=41069.
J’ai également suivi attentivement le webcast : Custom Data Lists and their Configuration in Alfresco Share (http://www.alfresco.com/events/webinars/learning-pathway-custom-data-lists-and-their-configuration-a...)

En gros j’ai commencé par créer un modèle très simple qui ne devrait contenir qu’un champ : société concernée (pour commencer).
J’ai donc créé un fichier de modèle « fabCustomTaskModel.xml » dans ce dossier : D:\Alfresco\tomcat\shared\classes\alfresco\extension

Contenu de mon modèle fabCustomTaskModel.xml
<?xml version="1.0" encoding="UTF-8"?>
<!– Definition of new Model –>
    <model name="fab:FabCustomTaskList" xmlns="http://www.alfresco.org/model/dictionary/1.0">

       <!– Optional meta-data about the model –>  
       <description>datalist de tâches adaptée</description>
       <author>Fab</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="fab.FabCustomTaskList.com" prefix="fab"/>
       </namespaces>
      
           <!–      CONSTRAINTS      –>
      <constraints>
     <constraint name="fab:3CIEcompaniesList" type="LIST">
        <parameter name="allowedValues">
            <list>
   <value>Toutes les sociétés</value>
    <value>Colloquium</value>
    <value>WIP</value>
    <value>CIA</value>
            </list>
        </parameter>
        <parameter name="caseSensitive"><value>true</value></parameter>
     </constraint>
  </constraints>
   
   

    
       <!–      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="fab:generalFabCustomTaskList">
           <title>Custom task datalist</title>
           <description>datalist de tâches adaptée</description>
           <parent>dl:simpletask</parent>
           <properties>
             <property name="fab:concerned_company">
                <title>Société concernée</title>
                <type>d:text</type>
                <mandatory>false</mandatory>
            <constraints>
            <constraint ref="fab:3CIEcompaniesList"></constraint>
            </constraints>
             </property>
          </properties>

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

J’ai modifié le fichier D:\Alfresco\tomcat\shared\classes\alfresco\web-extension\share-config-custom.xml afin de configurer les formulaires et datagrid de ma custom data list (pour l’instant je ne souhaite afficher que le champ société concernée (fab:concerned_company) )

Contenu de mon fichier share-config-custom.xml
<alfresco-config>
  
   <!– Repository Library config section –>
   <config evaluator="string-compare" condition="RepositoryLibrary" replace="true">
      <!–
         Whether the link to the Repository Library appears in the header component or not.
      –>
      <visible>true</visible>
   </config>

   <config evaluator="string-compare" condition="Remote">
      <remote>
         <endpoint>
            <id>alfresco-noauth</id>
            <name>Alfresco - unauthenticated access</name>
            <description>Access to Alfresco Repository WebScripts that do not require authentication</description>
            <connector-id>alfresco</connector-id>
            <endpoint-url>http://localhost:8080/alfresco/s</endpoint-url>
            <identity>none</identity>
         </endpoint>

         <endpoint>
            <id>alfresco</id>
            <name>Alfresco - user access</name>
            <description>Access to Alfresco Repository WebScripts that require user authentication</description>
            <connector-id>alfresco</connector-id>
            <endpoint-url>http://localhost:8080/alfresco/s</endpoint-url>
            <identity>user</identity>
         </endpoint>

         <endpoint>
            <id>alfresco-feed</id>
            <name>Alfresco Feed</name>
            <description>Alfresco Feed - supports basic HTTP authentication via the EndPointProxyServlet</description>
            <connector-id>http</connector-id>
            <endpoint-url>http://localhost:8080/alfresco/s</endpoint-url>
            <basic-auth>true</basic-auth>
            <identity>user</identity>
         </endpoint>
        
         <endpoint>
            <id>activiti-admin</id>
            <name>Activiti Admin UI - user access</name>
            <description>Access to Activiti Admin UI, that requires user authentication</description>
            <connector-id>activiti-admin-connector</connector-id>
            <endpoint-url>http://localhost:8080/alfresco/activiti-admin</endpoint-url>
            <identity>user</identity>
         </endpoint>
      </remote>
   </config>
     
      <!– Ajouté par Fab pour la custom data list de tâches –>
     

       <config evaluator="model-type" condition="fab:generalFabCustomTaskList">
          <forms>
             <!– Create item form –>
             <form>
                <field-visibility>
                   <!– for the form creation we are showing everything except approved date –>         
                   <show id="fab:concerned_company" />
                </field-visibility>
               <!– <create-form template="/org/alfresco/components/data-lists/forms/dataitem.ftl" /> –>
                <appearance>
                   <field id="fab:concerned_company">
                      <control template="/org/alfresco/components/form/controls/category.ftl" />
                   </field>               
                </appearance>
             </form>

                   <!– Data Grid view –>
                   <form id="datagrid">
                         <field-visibility>                               
                 <!–  <show id="fab:concerned_company" /> –>
              <hide id="fab:concerned_company" />
            <!– <hide id="cm:title" />      –>        
                         </field-visibility>
                   </form>
             </forms>
          </config>
      
       <!– Edit view –>
       <config evaluator="node-type" condition="fab:generalFabCustomTaskList">
          <forms>
             <!– Edit marketing item form –>
             <form>
                <field-visibility>         
                  <!–  <show id="fab:concerned_company" /> –>
                <hide id="fab:concerned_company" />
                </field-visibility>
                <create-form template="/org/alfresco/components/data-lists/forms/dataitem.ftl" />
                <appearance>
                   <field id="fab:concerned_company">
                     <control template="/org/alfresco/components/form/controls/category.ftl" />
                   </field>
                </appearance>
         
             </form>
          </forms>
       </config>
     
      <!– Fin de l'Ajout de  Fab pour la custom data list de tâches –>


</alfresco-config>

Et enfin j’ai ajouté un fichier  «CustomDatalist-model-context.xml » dans le dossier Alfresco\tomcat\shared\classes\alfresco\extension\ afin de dire à Alfresco de prendre en compte mon nouveau modèle de custom datalist

Contenu de mon fichier CustomDatalist-model-context.xml
<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE beans PUBLIC '-//SPRING//DTD BEAN//EN' 'http://www.springframework.org/dtd/spring-beans.dtd'>

<beans>

        <!– Registration of new models –>
    <bean id="extension.mtg.dictionaryBootstrap" parent="dictionaryModelBootstrap" depends-on="dictionaryBootstrap">
            <property name="models">
                <list>
                    <value>alfresco/extension/fabCustomTaskModel.xml</value>
                </list>
            </property>
        </bean>
</beans>

Redémarrage des services…
Tout ce passe bien, lorsque veux créer une nouvelle liste de données dans un site je peux créer une nouvelle liste de type Custom task.
En revanche, les options d’affichage qui sont configurées dans le fichier share-config-custom.xml ne sont absolument pas prises en compte par Alfresco, j’ai un datagrid comprenant de nombreuses colonnes (il ne devrait pour le moment figurer qu’une seule colonne dans le datagrid société concernée) idem pour les formulaires d’ajout et de modification des items, ils contiennent de nombreux champs alors qu’ils ne devraient me proposer d’éditer que le champ société concernée.
En bref après de nombreuses heures de recherche, je sèche sur la gestion de l’affichage des champs de ma custom data list, tous les tutoriaux que j’ai trouvé concernent la version 3 d’Alfresco, aucun exemple pour la 4. Il y a peut-être eu des changements dans le process de création de custom data list ?

Merci pour votre aide.
2 Replies
ripcurl
Member II

Re: Souci avec les formulaires des custom data list

Bon apparemment personne ne peut m'aider sur ce point.

J'imagine que les customs data lists sont peu utilisées dans ce cas.

Je testais Alfresco pour comparer avec le sharepoint fondation 2010 que nous utilisons actuellement.
Je suis bien loin d'être pro-micorsof, mais il faut avouer que sharepoint fundation offre encore bien plus de souplesse et de fonctionnalités sur encore pas mal de sujets. Particulièrement les datalist, que l'on peut sous sharepoint configurer via l’interface, ajout de champs, tri, système de vue avec filtres… Sans redémarrage des services.

Nous allons donc je pense rester encore quelque temps sous sharepoint.
J’apprécierais néanmoins une aise sur mon souci avec les custom datalists. Si j’arrive à débloquer ce point et à ajouter des champs je pourrais éventuellement aborder le sujet Alfresco avec ma hiérarchie, mais en l’état les fonctionnalités proposées reste trop limitées.
rguinot
Customer

Re: Souci avec les formulaires des custom data list

Bonjour,

Il existe des exemples d'extensions avec des data lists personnalisées. Voir par exemple :
http://code.google.com/p/swr-report/
http://code.google.com/p/fme-alfresco-extensions/wiki/DatalistExtension (pour l'instant en version 3.4)

De nombreux exemples de customization de share sont disponibles ici : code.google.com/p/share-extras ou là : http://addons.alfresco.com/
Cela peut vous aider a comparer. Y'a t il des erreurs pertinentes dans vos logs ?