Example #1
0
 protected override CResultAErreur MyInitChamps(CCustomizableListItem item)
 {
     m_bIsInitializing = true;
     try
     {
         CResultAErreur result = base.MyInitChamps(item);
         CLigneCommande ligne  = item != null ? item.Tag as CLigneCommande : null;
         if (ligne != null)
         {
             InitSelectTypeEquipement(m_fournisseurPourFiltre);
             m_selectTypeEquipement.ElementSelectionne = (CObjetDonnee)ligne.ElementCommandé;
             InitSelectReference();
             m_txtSelectReference.ElementSelectionne = (CObjetDonnee)ligne.ReferenceCommandée;
             m_txtReference.Text  = ligne.Reference;
             m_txtTexte.Text      = ligne.Libelle;
             m_txtQte.DoubleValue = ligne.Quantite;
             m_ctrlBesoin.Init(ligne, m_extModeEdition.ModeEdition);
         }
         return(result);
     }
     finally
     {
         m_bIsInitializing = false;
     }
 }
        //------------------------------------------------------------
        private CControleEditeLigneCommande AddControleLigne(CLigneCommande ligne)
        {
            CControleEditeLigneCommande ctrl = null;

            if (m_controlesReserve.Count() != 0)
            {
                ctrl = m_controlesReserve.Pop();
            }
            else
            {
                ctrl = new CControleEditeLigneCommande();
                m_panelLignes.Controls.Add(ctrl);
                m_extModeEdition.SetModeEdition(ctrl, sc2i.win32.common.TypeModeEdition.EnableSurEdition);
                ctrl.OnAddLine += new EventHandler(ctrl_OnAddLine);
                ctrl.OnDelete  += new EventHandler(ctrl_OnDelete);
                ctrl.OnGoDown  += new EventHandler(ctrl_OnGoDown);
                ctrl.OnGoUp    += new EventHandler(ctrl_OnGoUp);
            }
            ctrl.BringToFront();
            ctrl.Dock                  = DockStyle.Top;
            ctrl.LockEdition           = !m_extModeEdition.ModeEdition;
            ctrl.FournisseurPourFiltre = m_fournisseurPourFiltre;
            ctrl.Init(ligne, ligne.Numero == 0);
            ctrl.Visible = true;
            return(ctrl);
        }
Example #3
0
        //--------------------------------------------------------------------
        private bool ItemControl_OnLeaveLastControl(object sender, EventArgs args)
        {
            CControleEditeLigneCommandeNew ctrl = sender as CControleEditeLigneCommandeNew;

            if (ctrl != null)
            {
                //Regarde si le dernier item est vide
                if (m_wndListeCommandes.Items.Count() > 0 && !LockEdition && m_commande != null)
                {
                    CCustomizableListItem item  = m_wndListeCommandes.Items.ElementAt(m_wndListeCommandes.Items.Count() - 1);
                    CLigneCommande        ligne = item != null ? item.Tag as CLigneCommande : null;
                    if (ligne != null && ligne.ElementCommandé != null)
                    {
                        ligne = new CLigneCommande(m_commande.ContexteDonnee);
                        ligne.CreateNewInCurrentContexte();
                        ligne.Commande = m_commande;
                        ligne.Numero   = m_wndListeCommandes.Items.Count();
                        item           = new CCustomizableItemLigneCommande(ligne);
                        m_wndListeCommandes.AddItem(item, true);
                        m_wndListeCommandes.CurrentItemIndex = item.Index;
                        return(true);
                    }
                }
            }
            return(false);
        }
Example #4
0
        //-------------------------------------------------------------
        protected override CResultAErreur MyMajChamps()
        {
            CResultAErreur result = base.MyMajChamps();
            CLigneCommande ligne  = LigneCommande;

            if (result && ligne != null)
            {
                if (!ligne.IsValide())
                {
                    return(result);
                }
                IElementCommandable eltCommandé = m_selectTypeEquipement.ElementSelectionne as IElementCommandable;
                if (eltCommandé == null)
                {
                    result.EmpileErreur(I.T("Invalid equipment or consumable type on line @1|20401", (ligne.Numero + 1).ToString()));
                    m_selectTypeEquipement.Focus();
                }
                if (m_txtQte.DoubleValue == null)
                {
                    result.EmpileErreur(I.T("Invalid quantity on line @1|20402", (ligne.Numero + 1).ToString()));
                    m_txtQte.Focus();
                }
                if (!result)
                {
                    return(result);
                }
                ligne.ElementCommandé    = eltCommandé;
                ligne.ReferenceCommandée = m_txtSelectReference.ElementSelectionne as IReferenceElementCommandable;
                ligne.Libelle            = m_txtTexte.Text;
                ligne.Quantite           = m_txtQte.DoubleValue.Value;
                ligne.Reference          = m_txtReference.Text;
            }
            return(result);
        }
 private void m_lnkAddLine_LinkClicked(object sender, EventArgs e)
 {
     if (m_extModeEdition.ModeEdition)
     {
         CLigneCommande ligne = new CLigneCommande(m_commande.ContexteDonnee);
         ligne.Numero   = m_commande.Lignes.Count;
         ligne.Commande = m_commande;
         AddControleLigne(ligne);
     }
 }
        public CItemLigneLivraison(CLigneLivraisonEquipement ligneLivraison,
                                   CLigneCommande ligneCommande,
                                   CLivraisonEquipement livraison)
        {
            m_ligneLivraison = ligneLivraison;
            LigneCommande    = ligneCommande;
            Livraison        = livraison;

            InitValeursControles();
        }
Example #7
0
 //------------------------------------------------------------
 private void m_lnkAddLine_LinkClicked(object sender, EventArgs e)
 {
     if (m_extModeEdition.ModeEdition)
     {
         CLigneCommande ligne = new CLigneCommande(m_commande.ContexteDonnee);
         ligne.CreateNewInCurrentContexte();
         ligne.Numero   = m_commande.Lignes.Count;
         ligne.Commande = m_commande;
         CCustomizableItemLigneCommande item = new CCustomizableItemLigneCommande(ligne);
         m_wndListeCommandes.AddItem(item, false);
         m_wndListeCommandes.Refresh();
     }
 }
        //------------------------------------------------------------
        void ctrl_OnGoDown(object sender, EventArgs e)
        {
            CControleEditeLigneCommande ctrl = sender as CControleEditeLigneCommande;

            if (ctrl == null)
            {
                return;
            }
            CLigneCommande ligne = ctrl.Ligne;

            if (ligne.Numero < m_commande.Lignes.Count - 1)
            {
                RenumerotteLignes(ligne.Numero + 1, ligne.Numero + 1, -1);
                ligne.Numero++;
            }
            SortControls();
        }
        private void InitValeursControles()
        {
            LigneCommande = LigneLivraison != null ? LigneLivraison.LigneDeCommandeAssociee : LigneCommande;

            if (m_ligneLivraison != null && m_ligneLivraison.Equipement != null)
            {
                TypeEquipement = m_ligneLivraison.Equipement.TypeEquipement;
            }
            if (TypeEquipement == null && LigneCommande != null)
            {
                TypeEquipement = LigneCommande.TypeEquipement;
            }
            RefConstructeur     = m_ligneLivraison != null && m_ligneLivraison.Equipement != null ? m_ligneLivraison.Equipement.RelationConstructeur : null;
            NumeroSerie         = m_ligneLivraison != null && m_ligneLivraison.Equipement != null ? m_ligneLivraison.Equipement.NumSerie : "";
            IsChecked           = m_ligneLivraison != null;
            EquipementConteneur = m_ligneLivraison != null && m_ligneLivraison.Equipement != null ? m_ligneLivraison.Equipement.EquipementContenant : null;
        }
        //------------------------------------------------------------
        void ctrl_OnGoUp(object sender, EventArgs e)
        {
            CControleEditeLigneCommande ctrl = sender as CControleEditeLigneCommande;

            if (ctrl == null)
            {
                return;
            }
            CLigneCommande ligne = ctrl.Ligne;

            if (ligne.Numero > 0)
            {
                RenumerotteLignes(ligne.Numero - 1, ligne.Numero - 1, 1);
                ligne.Numero--;
            }
            SortControls();
        }
Example #11
0
 //------------------------------------------------------------
 void ctrl_OnDelete(object sender, EventArgs e)
 {
     if (m_controleLigne.LigneCommande != null)
     {
         CLigneCommande ligne   = m_controleLigne.LigneCommande;
         int            nNumero = ligne.Numero;
         //RenumerotteLignes(nNumero, m_commande.Lignes.Count - 1, -1);
         CResultAErreur result = ligne.Delete(true);
         if (!result)
         {
             CFormAlerte.Afficher(result.Erreur);
             return;
         }
         m_wndListeCommandes.RemoveItem(m_wndListeCommandes.CurrentItemIndex.Value, true);
         m_wndListeCommandes.Refresh();
     }
 }
        //------------------------------------------------------------
        void ctrl_OnAddLine(object sender, EventArgs e)
        {
            CControleEditeLigneCommande ctrl = sender as CControleEditeLigneCommande;

            if (ctrl == null)
            {
                return;
            }
            CLigneCommande ligneRef = ctrl.Ligne;

            RenumerotteLignes(ligneRef.Numero + 1, m_commande.Lignes.Count - 1, 1);
            CLigneCommande ligne = new CLigneCommande(m_commande.ContexteDonnee);

            ligne.Commande = m_commande;
            ligne.Numero   = ligneRef.Numero + 1;
            AddControleLigne(ligne);
            SortControls();
        }
        public void Init(CLigneCommande ligne, bool bFirst)
        {
            CWin32Traducteur.Translate(this);
            IsFirst = bFirst;

            m_ligne = ligne;
            m_selectTypeEquipement.Init(
                typeof(CTypeEquipement),
                "Libelle",
                false);
            m_selectTypeEquipement.ElementSelectionne = ligne.TypeEquipement;
            InitSelectReference();
            m_txtSelectReference.ElementSelectionne = ligne.ReferenceFournisseur;

            m_txtReference.Text  = ligne.Reference;
            m_txtTexte.Text      = ligne.Libelle;
            m_txtQte.DoubleValue = ligne.Quantite;
        }
        //------------------------------------------------------------
        void ctrl_OnDelete(object sender, EventArgs e)
        {
            CControleEditeLigneCommande ctrl = sender as CControleEditeLigneCommande;

            if (ctrl == null)
            {
                return;
            }
            CLigneCommande ligne   = ctrl.Ligne;
            int            nNumero = ligne.Numero;

            RenumerotteLignes(nNumero, m_commande.Lignes.Count - 1, -1);
            CResultAErreur result = ligne.Delete(true);

            if (!result)
            {
                CFormAlerte.Afficher(result.Erreur);
                return;
            }
            ctrl.Visible = false;
            m_controlesReserve.Push(ctrl);
        }
Example #15
0
        //-------------------------------------------------------------------
        public override CResultAErreur VerifieDonnees(CObjetDonnee objet)
        {
            CResultAErreur result = CResultAErreur.True;

            try
            {
                CLigneCommande LigneCommande = (CLigneCommande)objet;

                if (LigneCommande.Commande == null)
                {
                    result.EmpileErreur(I.T("Order line must be associated to an order|20165"));
                }
                if (LigneCommande.ElementCommandé == null)
                {
                    result.EmpileErreur(I.T("Order line must be associated to an equipment type or a consumable type|20166"));
                }
            }
            catch (Exception e)
            {
                result.EmpileErreur(new CErreurException(e));
            }
            return(result);
        }
Example #16
0
        private void m_picDragBesoin_DragDrop(object sender, DragEventArgs e)
        {
            CReferenceObjetDonnee refObj = e.Data.GetData(typeof(CReferenceObjetDonnee)) as CReferenceObjetDonnee;

            if (refObj != null)
            {
                CBesoin besoin = refObj.GetObjet(m_commande.ContexteDonnee) as CBesoin;
                CDonneeBesoinTypeEquipement besoinEqpt = besoin.DonneeBesoin as CDonneeBesoinTypeEquipement;
                if (besoinEqpt != null)
                {
                    e.Effect = DragDropEffects.Link;
                    CLigneCommande ligne = new CLigneCommande(m_commande.ContexteDonnee);
                    ligne.CreateNewInCurrentContexte();
                    ligne.Commande       = m_commande;
                    ligne.TypeEquipement = besoinEqpt.GetTypeEquipement(m_commande.ContexteDonnee);
                    ligne.Quantite       = besoinEqpt.Quantite;
                    ligne.Libelle        = besoin.Libelle;
                    besoin = besoin.GetObjetInContexte(ligne.ContexteDonnee) as CBesoin;
                    besoin.AddSatisfaction(ligne, null);
                    CCustomizableItemLigneCommande item = new CCustomizableItemLigneCommande(ligne);
                    m_wndListeCommandes.AddItem(item, true);
                }
            }
        }
Example #17
0
 //-------------------------------------------------------------
 public CCustomizableItemLigneCommande(CLigneCommande ligne)
 {
     Tag = ligne;
 }