Insertion de données

Salut à tous,

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)

qq aurait une solution ?

Personne n’ a de réponse à mon problème ???

met tout les fichiers sql sous le rep htdocs/MonModule/sql/

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 ? :huh:

Ton fichier, faut pas le nomé data.sql mais llx_nomdetable.sql.
il faut un fichier sql par table.

edit : oups j’avais mal lu, mon message a supprimer =)

Je reviens à l’attaque, mais bon c’est pour une bonne cause… la mienne :tongue:
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 ! :happy:

En 2.6, pour la creation de tables par un module, tout est dans le wiki
http://wiki.dolibarr.org/index.php/Developpement_module

Par contre pour ajouter ces propres données par ajout d’un fichier data.sql, ce sera possible en 2.7

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)).