diff --git a/htdocs/comm/action/class/actioncomm.class.php b/htdocs/comm/action/class/actioncomm.class.php
index 94ce48161f53438941f575ce8e993c6ba508ee97..c879f50b346a1df6d5a533ef8c30ed72ab6a03c1 100644
--- a/htdocs/comm/action/class/actioncomm.class.php
+++ b/htdocs/comm/action/class/actioncomm.class.php
@@ -401,12 +401,13 @@ class ActionComm extends CommonObject
         $sql.= " c.id as type_id, c.code as type_code, c.libelle,";
         $sql.= " s.nom as socname,";
         $sql.= " u.firstname, u.lastname as lastname";
-        $sql.= " FROM (".MAIN_DB_PREFIX."c_actioncomm as c, ".MAIN_DB_PREFIX."actioncomm as a)";
+        $sql.= " FROM ".MAIN_DB_PREFIX."actioncomm as a ";
+        $sql .= " LEFT JOIN ".MAIN_DB_PREFIX."c_actioncomm as c ON a.fk_action=c.id ";
         $sql.= " LEFT JOIN ".MAIN_DB_PREFIX."user as u on u.rowid = a.fk_user_author";
         $sql.= " LEFT JOIN ".MAIN_DB_PREFIX."societe as s on s.rowid = a.fk_soc";
-        $sql.= " WHERE a.fk_action=c.id";
-        if ($ref) $sql.= " AND a.id=".$ref;		// No field ref, we use id
-        else $sql.= " AND a.id=".$id;
+        $sql.= " WHERE ";
+        if ($ref) $sql.= " a.id=".$ref;		// No field ref, we use id
+        else $sql.= " a.id=".$id;
 
         dol_syslog(get_class($this)."::fetch", LOG_DEBUG);
         $resql=$this->db->query($sql);