je dev un module en ce moment et lors de son activation je voudrais insérer des info dans des tables, j’ai réussi à créer des tables, mais pour insérer des info ça ne marche pas.
J’ai mis mes fichier de création de table dans :htdocs/MonModule/sql/llx_matabl, sql(fonctionne)
J’ai mis mes fichier d’insertion de table dans : htdocs/MonModule/data/data.sql(fonctionne pas)
Sur mon premier post je me suis trompé:
J’ai mis le fichier d’insertion de table dans : htdocs/MonModule/sql/data/data.sql(fonctionne toujours pas).
j’ai aussi essayé de mettre le fichier data.sql avec les fichiers de création de table ça ne marche pas non plus. Mais ou faut-il le mettre ce data.sql ?
Je reviens à l’attaque, mais bon c’est pour une bonne cause… la mienne
Je voulais savoir quel et le fichier, le module enfin le truc qui permet la création des tables et l’insertion des données lors de l’activation d’un module.
Si vous avez la solution n’hésitez pas !
Ok, je comprends mieux pourquoi ça ne marche pas !
Malgré tout j’ai trouvé une solution pour ce que sa intéresse :
Dans le fichier descripteur du module, dans la fonction init() on peut instancier la variable $sql avec ses requêtes qui seront exécutées dans la fonction _init($sql) (attention requête exécuté à chaque activation du module) ou sinon on exécute soit même ses requêtes dans la fonction init() avec la fonction dolibarr prévue à cet effet ($this->db->query($sql)).