multicompany : création entité inopérante

Contexte : fresh install Dolibarr 3.1.1 + module multi-société 3.1.1 sur Ubuntu 11.10.
Le dossier multicompany est dans htdocs et modMultiCompany.class.php dans include/modules.

La configuration des modules > Système liste le module, qui, activé, peut être paramétré.
L’Ajout d’une entité semble possible, mais les données ne sont pas enregistrées quand on clique dans Ajouter.

Syslog indique en effet :

Effectivement llx_entity n’existe pas dans la base dolibarr…

Le wiki du module n’indique aucune manip particulière, autre que celle de déposer le zip/tar dans un répertoire. Pas d’exécution d’un script d’installation spécifique qui créerait la/les tables associées au module. J’imagine que c’est « automatique »…

Aurais-je raté un épisode ?

si tu désactive/réactive le module il ne te crée pas la table ?
peux-tu activer le module syslog et me dire ce que tu as dans les logs après activation du module ?

La table vient juste d’être créée…
Je ne sais pas précisément comment (ni pourquoi).
J’ai simplement désactivé le module, activé syslog, re-activé le module à deux reprises, et c’est à la seconde que la table a été créée. :lol:

La 1ère fois, syslog indique :

2012-04-05 18:55:30 INFO 127.0.0.1 nologin modules This is an already logged session. _SESSION['dol_login']=admin 2012-04-05 18:55:30 DEBUG 127.0.0.1 nologin modules User::Fetch sql=SELECT u.rowid, u.name, u.firstname, u.email, u.signature, u.office_phone, u.office_fax, u.user_mobile, u.admin, u.login, u.webcal_login, u.phenix_login, u.phenix_pass, u.note, u.pass, u.pass_crypted, u.pass_temp, u.fk_societe, u.fk_socpeople, u.fk_member, u.ldap_sid, u.statut, u.lang, u.entity, u.datec as datec, u.tms as datem, u.datelastlogin as datel, u.datepreviouslogin as datep, u.photo as photo, u.openid as openid FROM llx_user as u WHERE u.entity IN (0,1) AND u.login = 'admin' 2012-04-05 18:55:30 DEBUG 127.0.0.1 admin modules User::getRights sql=SELECT r.module, r.perms, r.subperms FROM llx_user_rights as ur, llx_rights_def as r WHERE r.id = ur.fk_id AND r.entity = 1 AND ur.fk_user= 1 AND r.perms IS NOT NULL 2012-04-05 18:55:30 DEBUG 127.0.0.1 admin modules User::getRights sql=SELECT r.module, r.perms, r.subperms FROM llx_usergroup_rights as gr, llx_usergroup_user as gu, llx_rights_def as r WHERE r.id = gr.fk_id AND gr.fk_usergroup = gu.fk_usergroup AND gu.fk_user = 1 AND r.perms IS NOT NULL AND r.entity = 1 AND gu.entity IN (0,1) 2012-04-05 18:55:30 INFO 127.0.0.1 admin modules --\- Access to /dolibarr/admin/modules.php 2012-04-05 18:55:30 INFO 127.0.0.1 admin modules Menubase::menuLeftCharger sql=SELECT m.rowid, m.type, m.fk_menu, m.url, m.titre, m.langs, m.perms, m.enabled, m.target, m.mainmenu, m.leftmenu FROM llx_menu as m WHERE m.entity = 1 AND m.menu_handler in('eldy','all') AND m.usertype in (0,2) ORDER BY m.position, m.rowid 2012-04-05 18:55:30 WARN 127.0.0.1 admin modules Mysqli.lib::query SQL error: SELECT rowid, label, description, visible, active FROM llx_entity WHERE rowid = 1 DB_ERROR_NOSUCHTABLE 2012-04-05 18:55:30 WARN 127.0.0.1 admin modules Mysqli.lib::query SQL error: SELECT rowid FROM llx_entity DB_ERROR_NOSUCHTABLE 2012-04-05 18:55:30 INFO 127.0.0.1 admin modules Menubase::menuLeftCharger sql=SELECT m.rowid, m.type, m.fk_menu, m.url, m.titre, m.langs, m.perms, m.enabled, m.target, m.mainmenu, m.leftmenu FROM llx_menu as m WHERE m.entity = 1 AND m.menu_handler in('eldy','all') AND m.usertype in (0,2) ORDER BY m.position, m.rowid 2012-04-05 18:55:30 INFO 127.0.0.1 admin modules Scan directory /usr/share/dolibarr/htdocs/includes/modules/ for modules 2012-04-05 18:55:30 INFO 127.0.0.1 admin modules Module modAccounting not qualified 2012-04-05 18:55:30 INFO 127.0.0.1 admin modules Module modLabel not qualified 2012-04-05 18:55:30 INFO 127.0.0.1 admin modules Module modDocument not qualified 2012-04-05 18:55:30 INFO 127.0.0.1 admin modules --\- End access to /dolibarr/admin/modules.php
Et la seconde :

2012-04-05 20:28:42 INFO 127.0.0.1 nologin modules This is an already logged session. _SESSION['dol_login']=admin 2012-04-05 20:28:42 DEBUG 127.0.0.1 nologin modules User::Fetch sql=SELECT u.rowid, u.name, u.firstname, u.email, u.signature, u.office_phone, u.office_fax, u.user_mobile, u.admin, u.login, u.webcal_login, u.phenix_login, u.phenix_pass, u.note, u.pass, u.pass_crypted, u.pass_temp, u.fk_societe, u.fk_socpeople, u.fk_member, u.ldap_sid, u.statut, u.lang, u.entity, u.datec as datec, u.tms as datem, u.datelastlogin as datel, u.datepreviouslogin as datep, u.photo as photo, u.openid as openid FROM llx_user as u WHERE u.entity IN (0,1) AND u.login = 'admin' 2012-04-05 20:28:42 DEBUG 127.0.0.1 admin modules User::getRights sql=SELECT r.module, r.perms, r.subperms FROM llx_user_rights as ur, llx_rights_def as r WHERE r.id = ur.fk_id AND r.entity = 1 AND ur.fk_user= 1 AND r.perms IS NOT NULL 2012-04-05 20:28:42 DEBUG 127.0.0.1 admin modules User::getRights sql=SELECT r.module, r.perms, r.subperms FROM llx_usergroup_rights as gr, llx_usergroup_user as gu, llx_rights_def as r WHERE r.id = gr.fk_id AND gr.fk_usergroup = gu.fk_usergroup AND gu.fk_user = 1 AND r.perms IS NOT NULL AND r.entity = 1 AND gu.entity IN (0,1) 2012-04-05 20:28:42 INFO 127.0.0.1 admin modules --\- Access to /dolibarr/admin/modules.php 2012-04-05 20:28:42 DEBUG 127.0.0.1 admin modules Admin.lib::run_sql run sql file /usr/share/dolibarr/htdocs/multicompany/sql/llx_entity.sql 2012-04-05 20:28:42 DEBUG 127.0.0.1 admin modules Admin.lib::run_sql Request 1 sql=create table llx_entity(rowid integer AUTO_INCREMENT PRIMARY KEY,tms timestamp,label varchar(255) NOT NULL,description text,datec datetime,fk_user_creat integer,visible tinyint DEFAULT 1 NOT NULL,active tinyint DEFAULT 1 NOT NULL) ENGINE=innodb; 2012-04-05 20:28:42 WARN 127.0.0.1 admin modules Mysqli.lib::query SQL error: create table llx_entity(rowid integer AUTO_INCREMENT PRIMARY KEY,tms timestamp,label varchar(255) NOT NULL,description text,datec datetime,fk_user_creat integer,visible tinyint DEFAULT 1 NOT NULL,active tinyint DEFAULT 1 NOT NULL) ENGINE=innodb; DB_ERROR_TABLE_ALREADY_EXISTS 2012-04-05 20:28:42 DEBUG 127.0.0.1 admin modules Admin.lib::run_sql run sql file /usr/share/dolibarr/htdocs/multicompany/sql/llx_entity.key.sql 2012-04-05 20:28:42 DEBUG 127.0.0.1 admin modules Admin.lib::run_sql Request 1 sql=ALTER TABLE llx_entity ADD INDEX idx_entity_fk_user_creat (fk_user_creat); 2012-04-05 20:28:42 WARN 127.0.0.1 admin modules Mysqli.lib::query SQL error: ALTER TABLE llx_entity ADD INDEX idx_entity_fk_user_creat (fk_user_creat); DB_ERROR_KEY_NAME_ALREADY_EXISTS 2012-04-05 20:28:42 DEBUG 127.0.0.1 admin modules Admin.lib::run_sql Request 2 sql=ALTER TABLE llx_entity ADD CONSTRAINT fk_entity_fk_user_creat FOREIGN KEY (fk_user_creat) REFERENCES llx_user (rowid); 2012-04-05 20:28:42 WARN 127.0.0.1 admin modules Mysqli.lib::query SQL error: ALTER TABLE llx_entity ADD CONSTRAINT fk_entity_fk_user_creat FOREIGN KEY (fk_user_creat) REFERENCES llx_user (rowid); DB_ERROR_CANNOT_CREATE 2012-04-05 20:28:42 DEBUG 127.0.0.1 admin modules BEGIN Transaction 2012-04-05 20:28:42 DEBUG 127.0.0.1 admin modules modMultiCompany::_dbactive sql=DELETE FROM llx_dolibarr_modules WHERE numero = 5000 AND entity = 1 2012-04-05 20:28:42 DEBUG 127.0.0.1 admin modules modMultiCompany::_dbactive sql=INSERT INTO llx_dolibarr_modules (numero, entity, active, active_date, active_version) VALUES (5000, 1, 1, '20120405202842', '3.1.1') 2012-04-05 20:28:42 DEBUG 127.0.0.1 admin modules modMultiCompany::_active sql=DELETE FROM llx_const WHERE name = 'MAIN_MODULE_MULTICOMPANY' AND entity in (0, 0) 2012-04-05 20:28:42 DEBUG 127.0.0.1 admin modules modMultiCompany::_active sql=INSERT INTO llx_const (name,value,visible,entity) VALUES ('MAIN_MODULE_MULTICOMPANY','1',0,0) 2012-04-05 20:28:42 INFO 127.0.0.1 admin modules modMultiCompany::insert_permissions sql=SELECT value as value FROM llx_const WHERE name = 'MAIN_MODULE_MULTICOMPANY' AND entity IN (0,1) 2012-04-05 20:28:42 DEBUG 127.0.0.1 admin modules COMMIT Transaction 2012-04-05 20:28:42 INFO 127.0.0.1 admin modules --\- End access to /dolibarr/admin/modules.php (Warn: db disconnection forced)
Entre les deux je suis allé tondre, peut-être est-ce la raison ? :huh:

Bon en tout cas merci pour le coup de main quand même. :happy: