Multi datasources

4.0
Multi datasources
0
Tags: #<Tag:0x00007f4a02693f40>

#41

bonjour,

j’ai testé le create ne fonctionne toujours pas


(David AZOULAY) #42

La modif se situant dans les javascript UI merci de bien forcer le flush du cache du navigateur (Ctrl-F5).

S’il y a toujours le pb il faudra nous fournir le détail de votre paramétrage car dans notre cas ça fonctionne.


#43

Déclaration de paramètre système :

Objet métier avec utilisation du paramètre :

Résultat à l’affichage des 45 lignes de la BDD :

Update fonctionne :

Create ne fonctionne pas :

Après enregistrement, il y a tjrs 45 lignes
image


(David AZOULAY) #44

Je ne vois pas comment est valorisé votre attribut row ID specifique dematGdaTranscodrId


#45

il est en auto-increment dans la base


(David AZOULAY) #46

Ok ça ne correspond pas au cas que nous avons testé car dans notre cas le row ID custom est un attribut métier saisi ou calculé, le mécanisme d’autoincrément est un mécanisme specifique à MySQL.

On va tester dans ce cas particulier et on vous tient au courant mais par je pense que dans le cas d’autoincrement MySQL le socle a besoin qu’on l’aide un peu (ex: forcer explicitement 0 dans la valeur du champ row ID custom en création etc.)


#47

Bonjour,

est-ce-que vous avez pu investiguer sur mon pb ?


(David AZOULAY) #48

Non désolé nous n’avons pas eu le temps de tester ce cas particulier qui ne correspond pas aux standards prévus par Simplicité (les colonnes auto incrément sont une spécificité MySQL non SQL99)

Avez vous essayé ce que je suggérais à savoir forcer le champ row ID à “0” ?


#49

je fais un this.setRowId(0) dans le initcreate et ça ne change rien


(David AZOULAY) #50

Ok mais à nouveau ce n’est pas dans un initCreate qu’il faut implémenter ce genre de choses.


#51

je sais !
j’ai voulu l’implémenter dans le precreate mais il n’y passe pas.


#52

J’ai trouvé une solution :

  • j’ai enlevé l’autoincremente de l’id en base
  • j’ai déclaré l’attribut ID dans l’objet en obligatoire=non
  • dans le preCreate, je récupère le dernier ID utilisé avec getNextIdForColumn(dataSource,this.getTable(), this.getField(“dematGdaTranscocdrId”).getColumn()) et je force le champs ID avec la vlaeur

et la création fonctionne


(David AZOULAY) #53

Oui l’autoincrement n’est pas un pattern prévu par Simplicité (car non SQL99)
C’est sans doute ça qui posait pb car sinon les row ID custom ça marche

Pour le reste avec un valeur par défaut il n’est à priori pas nécessaire de mettre l’attribut non obligatoire