Bonsoir le forum,
Je ne sais pas si mon message est bien catégorisé et taggé. Je laisse les administrateurs faire les modifications nécessaires, sachant que ce message n’est ni une suggestion, ni une question, ni une anomalie, mais un partage de solution. Ça me semble pouvoir répondre aux besoins d’autres utilisateurs tout aussi ignares que moi du php, alors je diffuse…
Mon objectif était d’avoir un accès facile à l’actualité de mon tiers (surtout client). J’ai choisi de pouvoir générer un lien cliquable qui me donne les résultats d’une recherche basée sur le nom de mon tiers dans Google actualités.
Par exemple, pour avoir une vue exhaustive de son client dans une optique crm, ça peut être utile, n’est-ce pas @erics ?
Si mon client s’appelle « Poule aux oeufs d’or », s’affiche sur sa fiche client un lien vers la recherche « poule aux oeufs d’or » dans Google Actualités.
Par ailleurs, si j’ai complété un « nom alternatif » sur ma fiche de tiers, la recherche dans google actualités se fera sur le nom alternatif.
Pour obtenir ce résultat, dans mon module tiers, j’ai créé un attribut supplémentaire de type « chaine de caractère » avec le champ calculé suivant :
!empty($object->name_alias) ? (sprintf(‹ news%sgoogle%scom/search?q=%s&hl=fr&gl=FR&ceid=FR%s3Afr ›, chr(46), chr(46),$objectoffield->name_alias, chr(37))):(sprintf(‹ news%sgoogle%scom/search?q=%s&hl=fr&gl=FR&ceid=FR%s3Afr ›, chr(46), chr(46),$objectoffield->name, chr(37)))
Le résultat est une chaine de caractère non cliquable.
Pour rendre le lien cliquable, il y a une solution proposée par @Movix68 : via un accès direct à la base de données, on transforme le type de l’attribut qui passe de varchar à url…
Merci également à @pcbleu pour avoir diffusé un exemple de champ calculé avec une condition.
Tout ça en v18. Je ne sais pas si les versions ultérieures permettent des champs calculés sur les url, mais ce serait fort pratique !