2017-07-10 3 views
1

J'essaie de modifier et d'enregistrer la valeur préliminaire d'un élément de portefeuille via le tableau d'estimation, mais je le réinitialise à la valeur d'origine. J'utilise PreliminaryEstimateValue dans le tableau, mais lorsque la carte est déplacée, je réinitialise le PreliminaryEstimate à la nouvelle valeur de la colonne.La valeur de PreliminaryEstimation est réinitialisée à l'ancienne valeur lors de l'enregistrement avec la nouvelle valeur

var store = Ext.create('Rally.data.wsapi.Store', { model: 'PreliminaryEstimate', fetch: ['ObjectID','ObjectUUID','VersionId','Description','Name','Value','CreationDate','Subscription','Workspace','RevisionHistory'], autoLoad: false, limit: Infinity, disableMetaChangeEvent: true });

beforecarddroppedsave: function (scope, card, type, sourceColumn, eOpts) { card.record.data.PreliminaryEstimate = _.omit(_.filter(this.preliminaryEstimateStore.getRange(), function (pe) { return pe.data.Value === card.record.data.PreliminaryEstimateValue })[0] .data, ['Summary', 'creatable', 'deletable', 'updatable', '_CreatedAt', '_objectVersion', '_uuidRef']);

les options a également la nouvelle valeur. Il sauve avec succès, mais l'ancienne valeur ne change pas à nouveau handleBeforeCardDroppedSave: function (options) { options.record.save({})
Merci!

Répondre

1

Si vous inspectez le trafic réseau, est-ce qu'il envoie cette valeur sur le réseau? J'essaierais d'utiliser la méthode setter plutôt que de manipuler directement l'objet de données. Ma conjecture est que l'enregistrement ne pense pas qu'il a des changements à enregistrer avec la façon dont votre code actuel est écrit.

card.record.set('PreliminaryEstimate', '/preliminaryestimatevalue/12345'); 
+0

Merci Kyle !!! Ça a marché. – Sarita