/// <summary>Seleziona su TXTemp le spedizioni da sincronizzare su TXTango, le Inserice|Modifica|Elimina su TXTango e registra l' evento su TXTemp.</summary> /// <returns>void</returns> public static int SyncSpedizioni() { int spedizioniSincronizzate = 0; Eventi evento = null; TXSpedizioni spedizione = null; // estraggo le spedizioni da mandare a TXTango List <TXPianificazioni> spedizioniPianificate = TXPianificazioni.TXTango_GetPianificazioniToSync(TipoPianificazione.SPEDIZIONE); // sincronizzo le spedizioni su TXTango for (int i = 0; i < spedizioniPianificate.Count; i++) { spedizione = new TXSpedizioni(spedizioniPianificate[i].IdViaggio, spedizioniPianificate[i].IdSpedizione); if (spedizioniPianificate[i].SyncTask == ConfigurationManager.AppSettings["TXTANGO_TASK_INSERT"]) { evento = spedizione.TXInsert(Login); } else if (spedizioniPianificate[i].SyncTask == ConfigurationManager.AppSettings["TXTANGO_TASK_UPDATE"] && spedizioniPianificate[i].Stato != ConfigurationManager.AppSettings["TXTANGO_STATO_BUSY"]) { evento = spedizione.TXUpdate(Login); } else if (spedizioniPianificate[i].SyncTask == ConfigurationManager.AppSettings["TXTANGO_TASK_DELETE"] && spedizioniPianificate[i].Stato != ConfigurationManager.AppSettings["TXTANGO_STATO_BUSY"]) { evento = spedizione.TXDelete(Login); } // registro l'evento if (evento != null) { evento.IdPianificazione = spedizioniPianificate[i].Id; evento.Insert(); // registro lo stato della pianificazione spedizioniPianificate[i].Stato = evento.Stato; spedizioniPianificate[i].SyncStato = evento.SyncStato; spedizioniPianificate[i].SyncTask = null; spedizioniPianificate[i].SyncData = evento.SyncData; spedizioniPianificate[i].Update(); spedizioniSincronizzate++; } } return(spedizioniSincronizzate); }