Quick links: Content - sections - sub sections
EN FR
Quick Search Advanced search
 
Page

  [Opened] Import DAO

Posted by dlalleme on 11/13/2014 18:28

Bonsoir,

J'essaie de mettre en place l'importation de DAO et ça marche pas ! Version 1.6.2

J'ai une table magasins. Je crée la dao magasins_table.dao.xml à l'aide de createdao Je crée un fichier magasins.dao.xml qui contient

<dao import="magasins_table" >
    <factory>
        <method name="MagasinsNonPlanifies" type="select">
            <conditions logic="and">
                <eq property="statut" value="T00" />
                <isnotnull property="date_bascule"  />
            </conditions>
        </method>
    </factory>
</dao>

Ensuite dans mon contrôleur, j'utilise ma table

$LeMagasin = jDao::get('outils~magasins'); 

J'ai ensuite l'erreur suivante :

PHP Fatal error:  Call to undefined method cDao_outils_Jx_magasins_table_Jx_pgsql::MagasinsNonPlanifies() in /home/dlalleme/BacsASable/repsiwel1/Site/outils/modules/outils/controllers/default.cmdline.php on line 52
dlalleme@Agaric:~/BacsASable/repsiwel1/Site/outils/scripts$ php outils.php outils~default:planifie_magasins
2014-11-13 18:28:39 127.0.0.1 [511] Le document "/home/dlalleme/BacsASable/repsiwel1/Site/outils/modules/outils/daos/magasins.dao.xml" n'est pas un dao ou l'espace de nom xml est invalide ()	/home/dlalleme/BacsASable/repsiwel1/Site/lib/jelix/dao/jDaoCompiler.class.php 43
	outils.php
array (   'module' => 'outils',   'action' => 'default:planifie_magasins', )

	0	jDaoCompiler->compile()	/home/dlalleme/BacsASable/repsiwel1/Site/lib/jelix/core/jIncluder.class.php : 111
	1	jIncluder::inc()	/home/dlalleme/BacsASable/repsiwel1/Site/lib/jelix/dao/jDao.class.php : 39
	2	jDao::create()	/home/dlalleme/BacsASable/repsiwel1/Site/lib/jelix/dao/jDao.class.php : 62
	3	jDao::get()	/home/dlalleme/BacsASable/repsiwel1/Site/outils/modules/outils/controllers/default.cmdline.php : 50
	4	defaultCtrl->planifie_magasins()	/home/dlalleme/BacsASable/repsiwel1/Site/lib/jelix/core/jCoordinator.class.php : 215
	5	jCoordinator->process()	/home/dlalleme/BacsASable/repsiwel1/Site/lib/jelix/core/jCmdlineCoordinator.class.php : 42
	6	jCmdlineCoordinator->process()	/home/dlalleme/BacsASable/repsiwel1/Site/outils/scripts/outils.php : 20

Cordialement Denis

  [Opened] Re: Import DAO

Reply #1 Posted by info2012 on 11/14/2014 09:27

Bonjour,

Il me semble que si ton dao s'apelle magasins_table.dao.xml, alors il faut plutôt écrire: $LeMagasin = jDao::get('outils~magasins_table');

Bonne journée

  [Opened] Re: Import DAO

Reply #2 Posted by dlalleme on 11/17/2014 14:30

Bonjour

info2012 a dit :
Il me semble que si ton dao s'apelle magasins_table.dao.xml, alors il faut plutôt écrire:
$LeMagasin = jDao::get('outils~magasins_table');

Non, magasins_table doit être inclus dans magasins donc c'est celui-ci que je dois utiliser

Cordialement Denis

  [Opened] Import DAO

Reply #3 Posted by laurentj on 11/25/2014 11:48

Bonjour,

C'est étrange parce que l'erreur montre (nom de la classe où apparait l'erreur) que c'est le dao magasins_table qui est appelé.

As-tu vidé le temp ?

  [Opened] Re: Import DAO

Reply #4 Posted by dlalleme on 12/29/2014 11:37

Bonjour,

Désolé pour la réponse un peu tardive, mais j'ai effectivement vidé le répertoire temp.
Je pense à une erreur de syntaxe, mais je vois pas pour l'instant.

Si j'importe A.dao.xml dans B.dao.xml, je travaille bien avec B.dao.xml !

A+

Denis

  [Opened] Re: Import DAO

Reply #5 Posted by dlalleme on 06/23/2015 11:12

Bonjour,

Je viens de retester l'import DAO avec la nouvelle version 1.6.4 et j'ai le même soucis. Et je suis dans l'impasse ... Est-ce une incompréhension de ma part ou le système (ubuntu) que j'utilise qui m'empêche d'importer les DAO ?

Cordialement

Denis

  [Opened] [Résolu]Import DAO

Reply #6 Posted by dlalleme on 06/23/2015 11:29

Bon ça marche ...

Il fallait ajouter cette entête...

<?xml version="1.0" encoding="UTF-8"?>
<dao import="admin~imp_liste_detail_magasins" xmlns="http://jelix.org/ns/dao/1.0">

A+

Denis

 
Page
  1. Import DAO