version 1.4
Bonjour, je tente d'insérer un item dans mon store. Mais comme l'identifiant existe déjà dans le store j'ai le message d'erreur suivant :

assertion failed in ItemFileWriteStore

aussi j'aimerais trouver un moyen de savoir si l'item à insérer a un doublon dans le store. J'ai tenté d'utiliser isItem() et fetchItemByIdentity(), mais sans succès.
Dans mon store j'ai :
{identifier : "TARAREF" ... ect

Mes questions : comment tester la présence d'un item dans un store, ces deux fonctions peuvent elles servir à cela, si oui comment ?
Merci pour vos suggestions.

mon code
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
 
JsonStore = new dojo.data.ItemFileWriteStore({ url: "temp/"+utilisateur+"tarifAch0.json", urlPreventCache: "true"});    
 
monGrid = new dojox.grid.DataGrid({
        		id: 'grid',
    			query: { TARAREF: '*' },
    			store: JsonStore,
    			rowsPerPage: 20,
    			structure: layout,
    			region: 'center',
    			columnReordering: true   						
    		 }, document.createElement('div'));
voilà les tests que j'ai fais avec isItem, j'ai systématiquement "false" comme résultat avec ou sans la présence du doublon.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
 
var neoLigne  = {TARAREF : "AK228", TARALIB : "AMO CLIO", TARAPNT: "22"}
Var neoLigne2= {TARAREF : "AK228"}
 
console.log(JsonStore.isItem(neoLigne));
console.log(JsonStore.isItem("AK228");
console.log(JsonStore.isItem(neoLigne2));
Mais si je fais : JsonStore.newItem(neoLigne) si je n'ai pas supprimé l'Item contenant la référence "AK228" j'ai un message d'erreur.
J'espère n'avoir été trop confus dans mes explication.