association avec lien URL direct

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

association avec lien URL direct

Bonjour,

J'ai créé un aspect avec association
        <aspect name="can:dsl">
            <title>Ligne DSL</title>
            <properties>
                <property name="can:telnumber">
                    <title>DSL</title>
                    <type>d:text</type>
                </property>
            </properties>
            <associations>
                <association name="can:Documentslies1">
                    <source>
                        <mandatory>true</mandatory>
                        <many>true</many>
                    </source>
                    <target>
                        <class>can:canl</class>
                        <mandatory>true</mandatory>
                        <many>true</many>
                    </target>
                </association>
            </associations>
        </aspect>
Je voudrais pouvoir ouvrir la page en cliquant sur le nom doc du champs canSmiley Very Happyocumentslies1ou ce trouve le document lié … je sais pas si je suis clair  :wink:  ?

Merci à tous
7 Replies
rguinot
Customer

Re: association avec lien URL direct

ca ne se passe pas au niveau du modèle.

ca se passe au niveau du componentGenerator associé à cette propriété si vous utilisez explorer.
et au niveau de la configuration des formulaires et templates associés pour Share.

voir : http://wiki.alfresco.com/wiki/Forms
pascal_sighma
Member II

Re: association avec lien URL direct

Bonjour,

Alors déjà je m’aperçoit que mon post précédent n'était pas assez complet, excusez moi.

Je suis toujours dans le cadre d'un test de Entreprise 3.4 et je travail essentiellement sous share, Alfresco est installé sur une VM ubuntu 10.10 server.

Donc merci rguinot pour ton orientation.

J'ai bien été voir le Wiki, et j'ai fait les modif suivant dans mon share-config-custom
  <config evaluator="model-type" condition="can:canl">
        <forms>
            <form id="search">
                <field-visibility>

                    <show id="can:contractid" />
                    <show id="can:designation" />              
                    <show id="can:documenttype" />
                    <show id="can:Documentslies1" for-mode="view" />
                    <show id="can:Documentslies2" />
                    <show id="can:Documentslies3" />
                                 
                </field-visibility>  
            </form>
        </forms>
    </config>

    <config evaluator="node-type" condition="can:canl">
        <forms>
         <!– Default form configuration for the cm:content type –>
            <form>
                <field-visibility>
                    <show id="can:contractid" />
                    <show id="can:designation" />                 
                    <show id="can:documenttype" />
                    <show id="can:Documentslies1" />
                    <show id="can:Documentslies2" />
                    <show id="can:Documentslies3" />

    …/…
                   
               <!– can:dsl aspect –>    
                    <show id="can:telnumber" />
                   
               <!– can:log aspect–>    
                    <show id="can:login" />
  
                </field-visibility>
                <appearance>
                    <field id="can:Documentslies1">
                        <control>
                            <control-param name="activateLinks">true</control-param>
                        </control>
                    </field>
                </appearance>
            </form>
        </forms>

    </config>
J'ai essayer multiples combinaisons, association.ftl avec showTargetLink et textfield.ftl avec activatelink ci dessus et ce en rajoutant la ligne de controle template ou non
               <control template="/org/alfresco/components/form/controls/textfield.ftl">

Rien n’opère … pourriez vous me guider un peu plus?
Je n'ai aucune erreur dans les log et je peux créer mes liens, mais je n'ai toujours pas de liens actif en cliquant sur le non du document lié dans l'affichage des metadonnées.

D'avance merci
pascal_sighma
Member II

Re: association avec lien URL direct

Un petit up car vraiment je sèche sur la solution ….

Merci a tous d'avance
bertrandf
Active Member

Re: association avec lien URL direct

Bonjour,

Vous ne donnez qu'une partie des informations, serait-il possible d'avoir plus d'informations sur votre modèle ?
Vous faites une association vers le type can:canl mais on ne sait même pas ce que c'est …

Sinon en ce qui concerne l'activation des liens, il faut en effet utiliser le paramètre showTargetLink (http://wiki.alfresco.com/wiki/Forms#association.ftl).

Normalement, cela devrait suffir :
<field id="can:Documentslies1">
  <control>
    <control-param name="showTargetLink">true</control-param>
  </control>
</field>

Attention tout de même, il y a un bug sur la génération des URLs : https://issues.alfresco.com/jira/browse/ALF-9487
pascal_sighma
Member II

Re: association avec lien URL direct

Bonjour Bertrand,

Désolé je mets les deux fichiers model et share config. Je n'ai aucune erreur sinon que mon lien n'est pas actif.

J’espère vous avoir donné tout les éléments pour me donner une piste de reflexion.
Pour le bug connu effectivement j'ai l'impression que cela ressemble a mon problème.. seulement j'avous ne pas "savoir lire" les "issues" donc je vais regarder de plus prêt aujourd'hui.

Je remet l’intégralité des XML.
canlmodel.xml
  <types>
        <type name="can:canl">
            <title>Documents Canl</title>
            <parent>cm:content</parent>
            <properties>
                <property name="can:designation">
                    <title>Nom / Prénom / Société</title>
                    <type>d:text</type>
                    <multiple>true</multiple>
                </property>             
                <property name="can:contractid">
                    <title>Numéro contrat</title>
                    <type>d:text</type>
                </property>
                <property name="can:documenttype">
                    <title>Type document</title>
                    <type>d:text</type>
                    <constraints>
                        <constraint ref="can:list"/>
                    </constraints>
                </property>
            </properties>
        </type>
    </types>
   
    <aspects>
        <aspect name="can:dsl">
            <title>Ligne DSL</title>
            <properties>
                <property name="can:telnumber">
                    <title>DSL</title>
                    <type>d:text</type>
                </property>
            </properties>
            <associations>
                <association name="can:documentslies1">
                    <title> Document lié à DSL</title>
                    <source>
                        <mandatory>true</mandatory>
                        <many>true</many>
                    </source>
                    <target>
                        <class>can:canl</class>
                        <mandatory>true</mandatory>
                        <many>true</many>
                    </target>
                </association>
            </associations>
        </aspect>
        <aspect name="can:log">
            <title>Login</title>
            <properties>
                <property name="can:login">
                    <title>Login</title>
                    <type>d:text</type>
                    <multiple>true</multiple>
                </property>
            </properties>
            <associations>
                <association name="can:documentslies2">
                    <title> Document lié au login</title>
                    <source>
                        <mandatory>true</mandatory>
                        <many>true</many>
                    </source>
                    <target>
                        <class>can:canl</class>
                        <mandatory>true</mandatory>
                        <many>true</many>
                    </target>
                </association>
            </associations>
        </aspect>
        <aspect name="can:batch">
            <title>Numéro de Lot</title>
            <properties>
                <property name="can:batchnumber">
                    <title>N° de Lot</title>
                    <type>d:text</type>
                </property>
            </properties>
            <associations>
                <association name="can:documentslies3">
                    <title> Document lié au N° de Lot</title>
                    <source>
                        <mandatory>true</mandatory>
                        <many>true</many>
                    </source>
                    <target>
                        <class>can:canl</class>
                        <mandatory>true</mandatory>
                        <many>true</many>
                    </target>
                </association>
            </associations>
        </aspect>
    </aspects>
  
</model>

et le share config custom

<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>
        </remote>
    </config>

  
    <config evaluator="string-compare" condition="AdvancedSearch" replace="true">
        <advanced-search>       
            <forms>
         <!– l'ordre de parametrage jouera sur l'ordre d'affichage dans le menu –>
         <!– Pour l'exemple ci-dessous, la recherche sur les contenus de base sera selectionnee en premier –>
                <form label="CAN'L" description="Documents CAN'L">can:canl</form>
                <form labelId="search.form.label.cm_content" descriptionId="search.form.desc.cm_content">cm:content</form>
                <form labelId="search.form.label.cm_folder" descriptionId="search.form.desc.cm_folder">cm:folder</form>


          <!– Pour affichage  dans la recherche avancee du lien SOP document–>
         <!–<form label="SOP Document" description="Procedure standard">my:sop</form>–>   
            </forms>
        </advanced-search>
    </config>
        
            <!– Pour affichage  métadonnées CANL–>
    <config evaluator="model-type" condition="can:canl">
        <forms>
            <form id="search">
                <field-visibility>
                    <show id="can:contractid" />
                    <show id="can:designation" />              
                    <show id="can:documenttype" />
                    <show id="can:documentslies1" />
                    <show id="can:documentslies2" />
                    <show id="can:documentslies3"/>
                </field-visibility>
            </form>
        </forms>
    </config>

    <!– surcharge la conf presente dans \tomcat\webapps\share\WEB-INF\classes\alfresco\share-form-config.xml –>
<!– configuration can'l –>
    <config evaluator="node-type" condition="can:canl">
        <forms>
         <!– Default form configuration for the cm:content type –>
            <form>
                <field-visibility>
                    <show id="can:contractid" />
                    <show id="can:designation" />                 
                    <show id="can:documenttype" />
                    <show id="can:documentslies1" />
                    <show id="can:documentslies2" />
                    <show id="can:documentslies3" />

               <!– tags and categories –>
                    <show id="cm:taggable" for-mode="edit" force="true" />
                    <show id="cm:categories" />
              
               <!– cm:dublincore aspect –>
              
                    <show id="cm:publisher"/>
                    <show id="cm:contributor"/>
                    <show id="cm:type"/>
                    <show id="cm:identifier"/>
                    <show id="cm:dcsource"/>
                    <show id="cm:coverage"/>
                   
               <!–<show id="cm:rights"/>–>
                    <show id="cm:subject"/>
           
              
               <!– cm:complianceable aspect –>
                    <show id="cm:removeAfter" />
              
               <!– cm:effectivity aspect –>
                    <show id="cm:from"/>
                    <show id="cm:to"/>
              
               <!–  cm:summarizable aspect –>
                    <show id="cm:summary" />
              
               <!– cm:translatable aspect –>
                    <show id="cm:translations" />
              
               <!– cm:localizable aspect –>
                    <show id="cm:locale" />
              
               <!– cm:ownable aspect –>
                    <show id="cm:owner" />
              
               <!– cm:attachable aspect –>
                    <show id="cm:attachments" />
              
               <!– cm:emailed aspect –>
                    <show id="cm:originator" />
                    <show id="cm:addressee" />
                    <show id="cm:addressees" />
                    <show id="cm:sentdate" />
                    <show id="cm:subjectline" />
              
               <!– cm:geographic aspect –>
                    <show id="cm:latitude" />
                    <show id="cm:longitude" />
                   
               <!– can:dsl aspect –>    
                    <show id="can:telnumber" />
                   
               <!– can:log aspect–>    
                    <show id="can:login" />
                   
                  <!– can:batch aspect–>    
                    <show id="can:batch" />
                   
                </field-visibility>
                <appearance>
                    <field id="can:documentslies1">
                    <!–    <control template="/org/alfresco/components/form/controls/textfield.ftl">
                            <control-param name="activateLinks">true</control-param>
                        </control> –>
                        <control-param name="showTargetLink">true</control-param>
                    </field>
                    <field id="can:documentslies2">
                      <!–  <control template="/org/alfresco/components/form/controls/textfield.ftl">
                            <control-param name="activateLinks">true</control-param>
                        </control> –>
                        <control-param name="showTargetLink">true</control-param>
                    </field>
                </appearance>
  
            </form>
        </forms>

    </config>

Voila Bertrand merci d'avance de votre aide.
bertrandf
Active Member

Re: association avec lien URL direct

Actuellement, vous mettez :
                        <field id="can:documentslies1">
                            <control-param name="showTargetLink">true</control-param>
                        </field>

Avez vous essayez avec :
                        <field id="can:documentslies1">
                          <control>
                            <control-param name="showTargetLink">true</control-param>
                          </control>
                        </field>
pascal_sighma
Member II

Re: association avec lien URL direct

Bonjour Bertrand,

Encore une fois un grand MERCI!

Effectivement c’était bien la balise <control></control>

c'est rageant de sécher sur des trucs aussi bêtes mais bon la communauté est la!!!