Example #1
0
        public void TiagSetEquipement2Keys(object[] lstKeys)
        {
            CEquipementLogique eqpt = new CEquipementLogique(ContexteDonnee);

            if (eqpt.ReadIfExists(lstKeys))
            {
                Equipement2 = eqpt;
            }
        }
Example #2
0
        //----------------------------------------------------------------------------------
        /// <summary>
        /// Utilisé par TIAG pour affecter le type de site par ses clés
        /// </summary>
        /// <param name="lstCles"></param>
        public void TiagSetParentLogicalEquipmentKeys(object[] lstCles)
        {
            CEquipementLogique equipement = new CEquipementLogique(ContexteDonnee);

            if (equipement.ReadIfExists(lstCles))
            {
                EquipementLogiqueContenant = equipement;
                Site = equipement.Site;
            }
        }
        //-------------------------------------------------------------------
        public override CResultAErreur VerifieDonnees(CObjetDonnee objet)
        {
            CResultAErreur result = CResultAErreur.True;

            try
            {
                CEquipementLogique equipementLogique = (CEquipementLogique)objet;

                if (equipementLogique.TypeEquipement == null)
                {
                    result.EmpileErreur(I.T("The logical equipmment type should not be empty|20002"));
                }

                if (equipementLogique.Site == null)
                {
                    result.EmpileErreur(I.T("The logical equipment should be assigned to a Site|20003"));
                }

                else
                {
                    if (equipementLogique.EquipementLogiqueContenant != null)
                    {
                        CTypeEquipement[] typeIncluantPoss = equipementLogique.TypeEquipement.TousLesTypesIncluants;
                        bool bTypePoss = false;
                        foreach (CTypeEquipement tEqtPoss in typeIncluantPoss)
                        {
                            if (tEqtPoss == equipementLogique.EquipementLogiqueContenant.TypeEquipement)
                            {
                                bTypePoss = true;
                                break;
                            }
                        }
                        if (!bTypePoss)
                        {
                            result.EmpileErreur(I.T("The parent logical equipment '@1' cannot contain this logical equipment because its type isn't in the incluable types list|20004", equipementLogique.EquipementLogiqueContenant.Libelle));
                        }

                        if (equipementLogique.Site.Id != equipementLogique.EquipementLogiqueContenant.Site.Id)
                        {
                            result.EmpileErreur(I.T("The logical equipment '@1' Site cannot be different from the container logical equipment '@2' site|20005", equipementLogique.Libelle, equipementLogique.EquipementLogiqueContenant.Libelle));
                        }
                    }
                }
            }
            catch (Exception e)
            {
                result.EmpileErreur(new CErreurException(e));
            }
            return(result);
        }
        //----------------------------------------------------------------------------------
        public override CResultAErreur TraitementAvantSauvegarde(CContexteDonnee contexte)
        {
            CResultAErreur result = base.TraitementAvantSauvegarde(contexte);

            if (!result)
            {
                return(result);
            }

            DataTable      dt        = contexte.Tables[CEquipementLogique.c_nomTable];
            ArrayList      rows      = new ArrayList(dt.Rows);
            CResultAErreur resultloc = CResultAErreur.True;

            foreach (DataRow row in rows)
            {
                if (row.RowState == DataRowState.Modified || row.RowState == DataRowState.Added || row.RowState == DataRowState.Deleted)
                {
                    CEquipementLogique eqpt = new CEquipementLogique(row);
                }
            }

            return(result);
        }
Example #5
0
        //-------------------------------------------------------------------
        public CResultAErreur DoRemplacementInCurrentContexte(DateTime dateRemplacement)
        {
            CResultAErreur result      = CResultAErreur.True;
            bool           bIsDotation = EquipementDeRemplacement != null && EquipementDeRemplacement.IsDotationApplique;

            if (EmplacementDestination == null && !bIsDotation)
            {
                result.EmpileErreur(I.T("The destination place must be specified|268"));
                return(result);
            }
            if (EquipementRemplace == null && !bIsDotation)
            {
                result.EmpileErreur(I.T("The replaced equipment must be specified|269"));
                return(result);
            }

            CRemplacementEquipement remplacementEdite = this;

            //remplacementEdite.BeginEdit();

            try
            {
                #region annulation des mouvements generés précédements (annulation)
                result = AnnuleRemplacement();
                if (!result)
                {
                    return(result);
                }
                #endregion

                IsDotation = false;
                string strInfo = "";
                if (remplacementEdite.EquipementDeRemplacement != null)
                {
                    strInfo = I.T("Replacement by @1|235", remplacementEdite.EquipementDeRemplacement.Libelle);
                }
                else if (remplacementEdite.Operation != null)
                {
                    strInfo = I.T("Equipment removed during the operation @1|236", remplacementEdite.Operation.TypeOperation.Libelle);
                }
                else
                {
                    strInfo = I.T("Replaced|237");
                }

                CEquipementLogique equipementLogiqueDuRemplace = remplacementEdite.EquipementRemplace.EquipementLogique;
                // Detache l'équipement logique associé au remplacé
                remplacementEdite.EquipementRemplace.EquipementLogique = null;

                //Déplacement de l'équipement remplacé
                result.Data = null;
                if (!bIsDotation)
                {
                    result = remplacementEdite.EquipementRemplace.DeplaceEquipementOptionPassage(
                        strInfo,
                        EmplacementDestination,
                        null,
                        "",
                        null,
                        null,
                        dateRemplacement,
                        "",
                        false,
                        true);
                }
                if (!result)
                {
                    result.EmpileErreur(I.T("Movement of equipment @1 impossible|270",
                                            remplacementEdite.EquipementRemplace.Libelle));
                    return(result);
                }

                remplacementEdite.MouvementDuRemplace = (CMouvementEquipement)result.Data;

                //Déplacement de l'équipement de remplacement
                if (remplacementEdite.EquipementDeRemplacement != null)
                {
                    IEmplacementEquipement emplacementOuALieuLeRemplacement = null;
                    if (remplacementEdite.EquipementDeRemplacement.EquipementLogique == null)
                    {
                        remplacementEdite.EquipementDeRemplacement.EquipementLogique = equipementLogiqueDuRemplace;
                    }
                    string strLibelleRemplace = "";
                    if (bIsDotation)
                    {
                        strLibelleRemplace = remplacementEdite.NumSerieRemplace;
                    }
                    else
                    {
                        strLibelleRemplace = remplacementEdite.EquipementRemplace.Libelle;
                    }
                    if (!bIsDotation)
                    {
                        result = remplacementEdite.EquipementDeRemplacement.DeplaceEquipementOptionPassage(
                            I.T("Replacement of @1 |271", remplacementEdite.EquipementRemplace.Libelle),
                            remplacementEdite.MouvementDuRemplace.EmplacementOrigine,
                            remplacementEdite.MouvementDuRemplace.EquipementOrigine,
                            remplacementEdite.MouvementDuRemplace.CoordonneeOrigine,
                            remplacementEdite.MouvementDuRemplace.OccupationOrigine,
                            null,
                            dateRemplacement,
                            "",
                            false,
                            true);

                        if (result)
                        {
                            remplacementEdite.MouvementDuRemplacant = (CMouvementEquipement)result.Data;
                        }
                    }
                    else
                    {
                        if (remplacementEdite.Operation != null &&
                            remplacementEdite.Operation.FractionIntervention != null)
                        {
                            emplacementOuALieuLeRemplacement = remplacementEdite.Operation.FractionIntervention.Intervention.Site;
                        }
                        IsDotation = true;
                        NumSerieAvantRemplacement = remplacementEdite.EquipementDeRemplacement.NumSerie;
                        //Déplace l'équipement de remplacement sur le site,
                        result = remplacementEdite.EquipementDeRemplacement.DeplaceEquipementOptionPassage(
                            I.T("Replacement of @1 by @2|271", NumSerieRemplace, EquipementDeRemplacement.NumSerie),
                            emplacementOuALieuLeRemplacement,
                            null,
                            null,
                            null,
                            null,
                            dateRemplacement,
                            "",
                            false,
                            true);
                        if (result)
                        {
                            MouvementDuRemplacant = (CMouvementEquipement)result.Data;
                        }
                        //et le place sur le lieu de destination
                        if (result)
                        {
                            result = remplacementEdite.EquipementDeRemplacement.DeplaceEquipementOptionPassage(
                                I.T("Replacement of @1 by @2|271", NumSerieRemplace, EquipementDeRemplacement.NumSerie),
                                EmplacementDestination,
                                null,
                                null,
                                null,
                                null,
                                dateRemplacement,
                                "",
                                false,
                                true);
                            //Change le numéro de série de l'équipement
                            remplacementEdite.EquipementDeRemplacement.NumSerie = NumSerieRemplace;
                            if (result)
                            {
                                MouvementDuRemplace = (CMouvementEquipement)result.Data;
                            }
                        }
                    }



                    if (!result)
                    {
                        result.EmpileErreur(I.T("Movement of equipment @1 impossible|270",
                                                remplacementEdite.EquipementDeRemplacement.Libelle));
                        return(result);
                    }
                }
            }


            catch (Exception e)
            {
                result.EmpileErreur(new CErreurException(e));
            }
            finally
            {
                //if ( result )
                //    result = remplacementEdite.CommitEdit();
                //else
                //    remplacementEdite.CancelEdit();
            }
            return(result);
        }
Example #6
0
 public IEnumerable <CEquipementLogique> GetSupportingEquipmentSortedFrom(CEquipementLogique equipement)
 {
     return(from e in GetSupportingElementsSortedFrom(equipement) where (e is CEquipementLogique)select(CEquipementLogique) e);
 }