in un app offline ho due Do A e B.
Per il DO A è attiva la sincronizzazione mentre per il DO B no
Quando l'utente salva il DO A con stato PUBBLICATO, lato server dovrei creare il DO B.
Per far questo ho inserito nell'onSave del DO A il seguente codice:
- Code: Select all
if (options.phase === App.Document.savePhases.afterSave && !app.runsLocally() && this.updated) {
//
//Verifico se la survey abbia cambiato lo stato in pubblicato
if (this.Stato === App.DB.vlWhsStato.Published &&
this.getOriginalValue(App.GEBE.A.Stato) !== App.DB.vlWhsStato.Published) {
yield this.saveToPortfolio();
//
}
}
la funzione saveToPortfolio() al suo interno genera il DO B passando "this" ad una seconda funzione.
E' un metodo corretto o ci sono soluzioni migliori?
Nel caso ci siano errori nella funzione saveToPortfolio() l'intera transazione viene annullata?
Il DO A tornerebbe allo stato originale?
Grazie