private void CalculerTva() { if (!EstCharge) { return; } Tva = ArrondiEuro(Prix_Ht * Tva_Pct / 100); foreach (Facture Facture in ListeFacture) { Facture.Calculer(); } }
private void Ouvrir_Dossier_Click(object sender, RoutedEventArgs e) { MenuItem I = sender as MenuItem; if (I != null) { DirectoryInfo Dir = null; ListBox B = ((ContextMenu)I.Parent).PlacementTarget as ListBox; if (B != null) { Client C = B.SelectedItem as Client; if (C != null) { Dir = C.Dossier; } Devis D = B.SelectedItem as Devis; if (D != null) { Dir = D.Dossier; } Facture F = B.SelectedItem as Facture; if (F != null) { Dir = F.Devis.Dossier; } } else { Grid Onglet = (I.Parent as ContextMenu).PlacementTarget as Grid; if (Onglet != null) { Devis D = Onglet.DataContext as Devis; if (D != null) { Dir = D.Dossier; } } } if (Dir != null) { System.Diagnostics.Process.Start(Dir.FullName); } } }
private void Editer_Click(object sender, RoutedEventArgs e) { MenuItem I = sender as MenuItem; if (I != null) { ListBox B = ((ContextMenu)I.Parent).PlacementTarget as ListBox; if (B != null) { Client C = B.SelectedItem as Client; if (C != null) { EditerOnglet <Client>(C); return; } Devis D = B.SelectedItem as Devis; if (D != null) { EditerOnglet <Devis>(D); return; } Facture F = B.SelectedItem as Facture; if (F != null) { EditerOnglet <Facture>(F); return; } Fournisseur Fr = B.SelectedItem as Fournisseur; if (Fr != null) { EditerOnglet <Fournisseur>(Fr); return; } Utilisateur U = B.SelectedItem as Utilisateur; if (U != null) { EditerOnglet <Utilisateur>(U); return; } } } }
private void MajFacture_Click(object sender, RoutedEventArgs e) { Facture F = null; MenuItem M = sender as MenuItem; Grid Grid = ((sender as MenuItem).Parent as ContextMenu).PlacementTarget as Grid; if (Grid != null) { F = Grid.DataContext as Facture; } else { ListBox V; ListeObservable <Facture> Liste; List <Facture> Ls; Facture L; if (Info(sender as MenuItem, out V, out Liste, out Ls, out L)) { F = L; } } F.MajLigne_Facture(); }
public void Calculer(Boolean Dependance = true) { if (!EstCharge) { return; } Ht = Ht_Unitaire * Qte; switch (CalculLigne_Facture) { case CalculLigne_Facture_e.cQuantite: break; case CalculLigne_Facture_e.cPourcentageUnitaire: Ht = ArrondiEuro(Ht * 0.01); break; case CalculLigne_Facture_e.cPourcentageTotal: Ht = ArrondiEuro(Ht * 0.01); break; default: break; } if (Dependance) { if (Poste != null) { Poste.CalculerFacture(); } Facture.Calculer(); } }
public Ligne_Facture(Facture F, Poste P) { Bdd2.Ajouter(this); Facture = F; Poste = P; No = P.No; // On rajoute le prefix après pour être sûr qu'il ne sera pas ecrasé par une valeur par defaut Prefix_Utilisateur = Facture.Devis.Client.Societe.PrefixUtilisateurCourant; // Pre-remplissage des champs ListeObservable <Ligne_Facture> ListeLigneFacture = P.ListeLigneFacture; if (ListeLigneFacture.Count > 0) { CalculLigne_Facture = ListeLigneFacture[0].CalculLigne_Facture; Double pQuantite = P.Qte; Double pHt_Unitaire = P.Prix_Unitaire; if (CalculLigne_Facture == CalculLigne_Facture_e.cPourcentageUnitaire) { pQuantite = 100; pHt_Unitaire = P.Prix_Ht; } foreach (Ligne_Facture Lf in ListeLigneFacture) { if (Lf == this) { continue; } pQuantite -= Lf.Qte; pHt_Unitaire -= Lf.Ht_Unitaire; } if (pQuantite <= 0) { pQuantite = P.Qte; } if (pHt_Unitaire <= 0) { pHt_Unitaire = P.Prix_Unitaire; } Qte = pQuantite; if (CalculLigne_Facture == CalculLigne_Facture_e.cPourcentageUnitaire) { Ht_Unitaire = P.Prix_Ht; } else { Ht_Unitaire = pHt_Unitaire; } } else { Ht_Unitaire = P.Prix_Unitaire; Qte = P.Qte; } Calculer(); }
private void Nettoyer(Boolean Calculer = true) { ListeObservable <Devis> ListeDevis = Bdd2.Liste <Devis>(); ListeObservable <Poste> ListePoste = Bdd2.Liste <Poste>(); ListeObservable <Ligne_Poste> ListeLigne_Poste = Bdd2.Liste <Ligne_Poste>(); ListeObservable <Achat> ListeAchat = Bdd2.Liste <Achat>(); ListeObservable <Facture> ListeFacture = Bdd2.Liste <Facture>(); ListeObservable <Ligne_Facture> ListeLigne_Facture = Bdd2.Liste <Ligne_Facture>(); String Titre = "Calcul des lignes de factures : "; int i = 1; int tt = ListeLigne_Facture.Count(); foreach (Ligne_Facture Ligne_Facture in ListeLigne_Facture) { this.Title = Titre + " " + i.ToString() + "/" + tt.ToString(); if (Ligne_Facture.Facture == null) { Ligne_Facture.Supprimer(); } else if (Calculer) { Ligne_Facture.Calculer(false); } i++; } Titre = "Calcul des factures : "; i = 1; tt = ListeFacture.Count(); foreach (Facture Facture in ListeFacture) { this.Title = Titre + " " + i.ToString() + "/" + tt.ToString(); if ((Facture.Devis == null) || (Facture.ListeLigneFacture.Count == 0)) { Facture.Supprimer(); } else if (Calculer) { Facture.Calculer(false); } i++; } Titre = "Calcul des lignes de poste : "; i = 1; tt = ListeLigne_Poste.Count(); foreach (Ligne_Poste Ligne_Poste in ListeLigne_Poste) { this.Title = Titre + " " + i.ToString() + "/" + tt.ToString(); if (Ligne_Poste.Poste == null) { Ligne_Poste.Supprimer(); } else if (Calculer) { Ligne_Poste.Calculer(false); } i++; } Titre = "Calcul des postes : "; i = 1; tt = ListePoste.Count(); foreach (Poste Poste in ListePoste) { this.Title = Titre + " " + i.ToString() + "/" + tt.ToString(); if (Poste.Devis == null) { Poste.Supprimer(); } else if (Calculer) { Poste.Calculer(false); } i++; } Titre = "Calcul des devis : "; i = 1; tt = ListeDevis.Count(); foreach (Devis Devis in ListeDevis) { this.Title = Titre + " " + i.ToString() + "/" + tt.ToString(); if (Devis.Client == null) { Devis.Supprimer(); } else if (Calculer) { Devis.Calculer(); } i++; } Titre = "Calcul des achats : "; i = 1; tt = ListeAchat.Count(); foreach (Achat Achat in ListeAchat) { this.Title = Titre + " " + i.ToString() + "/" + tt.ToString(); if (Achat.Devis == null) { Achat.Supprimer(); } else if (Calculer) { Achat.Calculer(); } i++; } }