Beispiel #1
0
        public void retourneMiseAjourGC(DateTime?DateDebut, DateTime?DateFin, CsOperationComptable OperationCompableSelect)
        {
            try
            {
                string compte = string.Empty;
                InterfaceComptableServiceClient service = new InterfaceComptableServiceClient(Utility.ProtocoleIndex(), Utility.EndPoint("InterfaceComptable"));
                service.RetourneMiseAJourGrandCompteAsync(OperationCompableSelect, DateDebut, DateFin, UserConnecte.matricule, string.Empty);
                service.RetourneMiseAJourGrandCompteCompleted += (s, args) =>
                {
                    try
                    {
                        prgBar.Visibility = System.Windows.Visibility.Collapsed;
                        if (args.Cancelled || args.Error != null)
                        {
                            string error = args.Error.InnerException.ToString();
                            return;
                        }
                        if (args.Result != null && args.Result.Count == 0)
                        {
                            Message.ShowInformation("Aucune données trouvées", "Comptabilisation");
                            return;
                        }
                        else
                        {
                            Dictionary <List <CsComptabilisation>, List <CsEcritureComptable> > lstEncaissement = new Dictionary <List <CsComptabilisation>, List <CsEcritureComptable> >();
                            this.DTOperationClientele.ItemsSource = null;
                            if (args.Result != null && args.Result.Count != 0)
                            {
                                lstEncaissement = args.Result;
                                foreach (var item in lstEncaissement)
                                {
                                    #region Alimentation des grides opérations clientelles
                                    this.DTOperationClientele.ItemsSource = null;
                                    this.DTOperationClientele.ItemsSource = item.Key;
                                    txt_total.Text = item.Key.Sum(t => t.MONTANT).ToString(SessionObject.FormatMontant);
                                    #endregion

                                    #region Affectation des montants des operations grouper par coper et par date d'encaissement
                                    this.DTEcritureComptableFacture.ItemsSource = null;
                                    this.DTEcritureComptableFacture.ItemsSource = item.Value.OrderBy(c => c.DATECREATION).ThenBy(o => o.CAISSE).ThenByDescending(u => u.DC).ToList();
                                    #endregion
                                    this.txt_Credit.Text = item.Value.Where(t => t.DC == SessionObject.Enumere.Credit).Sum(u => u.MONTANT).Value.ToString(SessionObject.FormatMontant);
                                    this.txt_Debit.Text  = item.Value.Where(t => t.DC == SessionObject.Enumere.Debit).Sum(u => u.MONTANT).Value.ToString(SessionObject.FormatMontant);
                                }
                            }
                            else
                            {
                                Message.ShowInformation("Aucun élément trouvé pour les critères choisi", "Info");
                            }
                        }
                    }
                    catch (Exception ex)
                    {
                        prgBar.Visibility = System.Windows.Visibility.Collapsed;
                        Message.ShowError(ex, Galatee.Silverlight.Resources.Caisse.Langue.errorTitle);
                    }
                };
            }
            catch (Exception)
            {
                throw;
            }
        }