示例#1
0
        private void AssureModifierTypeSiteSansValider(int id, string newlibelle)
        {
            CTypeSite typeLibelle = new CTypeSite(m_contexteDonnees);

            if (!typeLibelle.ReadIfExists(new CFiltreData(CTypeSite.c_champLibelle + "=@1", newlibelle)))
            {
                string oldlibelle;
                Console.WriteLine("Modification d'un type de site sans valider");
                CTypeSite typeSite = new CTypeSite(m_contexteDonnees);
                Console.WriteLine("lecture du type de site");
                Assert.IsTrue(typeSite.ReadIfExists(id));

                oldlibelle       = typeSite.Libelle;
                typeSite.Libelle = newlibelle;



                CSpvTypsite spvTypeSite = new CSpvTypsite(m_contexteDonnees);
                Console.WriteLine("lecture du type SPV");
                Assert.IsTrue(spvTypeSite.ReadIfExists(new CFiltreData(CSpvTypsite.c_champSmtTypeSite_Id + "=@1", id)));
                Console.WriteLine("vérification du libellé");
                Assert.IsTrue(spvTypeSite.TypeSiteNom == oldlibelle);
            }
            else
            {
                Console.WriteLine("Un type de site avec ce libellé existe déjà");
            }
        }
示例#2
0
        //supprimer un type de site
        private void AssureSupprimerTypeSite(string libelle)
        {
            Console.WriteLine("suppression d'un type de site");
            CTypeSite      typeSite    = new CTypeSite(m_contexteDonnees);
            CSpvTypsite    typeSiteSpv = new CSpvTypsite(m_contexteDonnees);
            CResultAErreur result      = CResultAErreur.True;


            if (typeSite.ReadIfExists(new CFiltreData(CTypeSite.c_champLibelle + "=@1",
                                                      libelle)))
            {
                typeSiteSpv.ReadIfExists(new CFiltreData(CSpvTypsite.c_champTYPSITE_NOM + "=@1",
                                                         libelle));


                Console.WriteLine("suppression du type de site");
                result = typeSite.Delete();


                Assert.IsTrue(result.Result);
            }

            /*  Console.WriteLine("Enregistrement de la suppression");
             * Assert.IsTrue(m_contexteDonnees.SaveAll(true));
             *
             * System.Threading.Thread.Sleep(500);*/


            CSpvTypsite typespvtest = new CSpvTypsite(m_contexteDonnees);

            Console.WriteLine("vérification de la suppression");
            Assert.IsFalse(typespvtest.ReadIfExists(new CFiltreData(CSpvTypsite.c_champTYPSITE_NOM + "=@1",
                                                                    libelle)));
        }
示例#3
0
        public override CResultAErreur TraitementAvantSauvegarde(CContexteDonnee contexte)
        {
            CResultAErreur result = base.TraitementAvantSauvegarde(contexte);

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

            DataTable dt   = contexte.Tables[CTypeSite.c_nomTable];
            ArrayList rows = new ArrayList(dt.Rows);

            foreach (DataRow dr in rows)
            {
                if (dr.RowState == DataRowState.Modified || dr.RowState == DataRowState.Added)
                {
                    CTypeSite type_site = new CTypeSite(dr);

                    //result = SDefinisseurSystemeCoordonnees.VerifieDonnees(type_site);
                    if (!result.Result)
                    {
                        break;
                    }
                }
            }

            return(result);
        }
示例#4
0
        private int AssureLireIdTypeSite(string libelle)
        {
            CTypeSite typeSite = new CTypeSite(m_contexteDonnees);

            Console.WriteLine("lecture de l'id d'un type de site");
            Assert.IsTrue(typeSite.ReadIfExists(new CFiltreData(CTypeSite.c_champLibelle + "=@1",
                                                                libelle)));


            return(typeSite.Id);
        }
示例#5
0
        //-------------------------------------------------------------------
        public override CResultAErreur VerifieDonnees(CObjetDonnee objet)
        {
            CResultAErreur result = CResultAErreur.True;

            try
            {
                CTypeSite type_site = (CTypeSite)objet;

                // Verifie le champ "Libelle"
                if (type_site.Libelle == "")
                {
                    result.EmpileErreur(I.T("Site Type label cannot be empty|368"));
                }

                // Si le parent est obligatoire, il faut définir les Parent possibles
                if (type_site.ParentObligatoire)
                {
                    if (type_site.RelationTypesContenants.Count == 0)
                    {
                        result.EmpileErreur(I.T("Site Type must have one or more relation with a contained type (Can be included)|369"));
                    }
                }


                //Verifier si le TypEntiteOrganisationnelleDeCoordonnee
                //a été modifié qu'il n'y a pas de site utilisant...
                if (type_site.Row.HasVersion(DataRowVersion.Original))
                {
                    CTypeEntiteOrganisationnelle newval = type_site.TypeEntiteOrganisationnelleDeCoordonnee;
                    type_site.VersionToReturn = DataRowVersion.Original;
                    CTypeEntiteOrganisationnelle oldval = type_site.TypeEntiteOrganisationnelleDeCoordonnee;
                    if (newval != oldval)
                    {
                        //Dans les sites de ce types site
                        //si il y en a un qui a EoCoor != null on bloque
                        CFiltreData         filtreSites = new CFiltreData(CTypeSite.c_champId + " = @1 AND " + CSite.c_champEOCoor + " is not null", type_site.Id);
                        CListeObjetsDonnees lstSites    = new CListeObjetsDonnees(type_site.ContexteDonnee, typeof(CSite), filtreSites);
                        if (lstSites.CountNoLoad > 0)
                        {
                            result.EmpileErreur(I.T("One or more sites already use the Organisational Entity '@1' to define their coordinates : You cannot modify it|372", oldval.DescriptionElement));
                        }
                    }
                }
            }
            catch (Exception e)
            {
                result.EmpileErreur(new CErreurException(e));
            }
            return(result);
        }
示例#6
0
        //dupliquer un type de site
        private int AssureDupliquerTypeSite(string libelle)
        {
            Console.WriteLine("duplication d'un type de suite");
            CTypeSite typeSite = new CTypeSite(m_contexteDonnees);

            Console.WriteLine("lecture du type de site original");
            Assert.IsTrue(typeSite.ReadIfExists(new CFiltreData(CTypeSite.c_champLibelle + "=@1",
                                                                libelle)));


            string libelleDuplique = typeSite.Libelle + "dup";

            CTypeSite typeSite2 = new CTypeSite(m_contexteDonnees);

            if (!typeSite2.ReadIfExists(new CFiltreData(CTypeSite.c_champLibelle + "=@1", libelleDuplique)))
            {
                typeSite2.CreateNewInCurrentContexte();
                typeSite2.Libelle = libelleDuplique;
            }

            Console.WriteLine("sauvagerde du type de site");
            CResultAErreur result = CResultAErreur.True;

            Console.WriteLine("vérification des données");
            result = typeSite2.VerifieDonnees(false);
            if (!result)
            {
                System.Console.WriteLine(result.MessageErreur);
            }
            Assert.IsTrue(result.Result);

            Console.WriteLine("enregistrement des donnees");
            m_contexteDonnees.SaveAll(true);
            if (!result)
            {
                System.Console.WriteLine(result.MessageErreur);
            }

            Assert.IsTrue(result.Result);


            Console.WriteLine("vérification du type de site dupliqué");
            CSpvTypsite test = new CSpvTypsite(m_contexteDonnees);

            Assert.IsTrue(test.ReadIfExists(new CFiltreData(CSpvTypsite.c_champTYPSITE_NOM + "=@1",
                                                            libelleDuplique)));

            return(typeSite2.Id);
        }
示例#7
0
        private int AssureCreerTypeSite(string libelle)
        {
            //créer un type de site
            CTypeSite typeSite = new CTypeSite(m_contexteDonnees);

            Console.WriteLine("création du type de site " + libelle);
            if (!typeSite.ReadIfExists(new CFiltreData(CTypeSite.c_champLibelle + "=@1",
                                                       libelle)))
            {
                typeSite.CreateNewInCurrentContexte();
                typeSite.Libelle     = libelle;
                typeSite.Commentaire = "commentaire";
            }


            CResultAErreur result = CResultAErreur.True;

            Console.WriteLine("vérification des données");
            result = typeSite.VerifieDonnees(false);
            if (!result)
            {
                System.Console.WriteLine(result.MessageErreur);
            }
            Assert.IsTrue(result.Result);

            Console.WriteLine("enregistrement des donnees");
            m_contexteDonnees.SaveAll(true);
            if (!result)
            {
                System.Console.WriteLine(result.MessageErreur);
            }

            Assert.IsTrue(result.Result);
            int id = typeSite.Id;

            CSpvTypsite test = new CSpvTypsite(m_contexteDonnees);

            Console.WriteLine("vérification de la création du type SPV");
            Assert.IsTrue(test.ReadIfExists(new CFiltreData(CSpvTypsite.c_champSmtTypeSite_Id + "=@1", id)));
            Console.WriteLine("vérification du libellé");
            Assert.IsTrue(test.TypeSiteNom == libelle);
            Console.WriteLine("vérification du ClassId");
            Assert.IsTrue(test.TypeSiteClassId == 1053);

            return(id);
        }
示例#8
0
        private void AssureModifierTypeSite(int id, string newlibelle)
        {
            CTypeSite typeLibelle = new CTypeSite(m_contexteDonnees);

            if (!typeLibelle.ReadIfExists(new CFiltreData(CTypeSite.c_champLibelle + "=@1", newlibelle)))
            {
                CTypeSite typeSite = new CTypeSite(m_contexteDonnees);
                Console.WriteLine("modification d'un type de site");
                Assert.IsTrue(typeSite.ReadIfExists(id));

                typeSite.Libelle = newlibelle;
                Console.WriteLine("enregistrement du type de site");

                CResultAErreur result = CResultAErreur.True;
                Console.WriteLine("vérification des données");
                result = typeSite.VerifieDonnees(false);
                if (!result)
                {
                    System.Console.WriteLine(result.MessageErreur);
                }
                Assert.IsTrue(result.Result);

                Console.WriteLine("enregistrement des donnees");
                m_contexteDonnees.SaveAll(true);
                if (!result)
                {
                    System.Console.WriteLine(result.MessageErreur);
                }

                Assert.IsTrue(result.Result);

                Console.WriteLine("lecture du type SPV");
                CSpvTypsite spvTypeSite = new CSpvTypsite(m_contexteDonnees);
                Assert.IsTrue(spvTypeSite.ReadIfExists(new CFiltreData(CSpvTypsite.c_champSmtTypeSite_Id + "=@1", id)));
                Console.WriteLine("vérification du libellé");
                Assert.IsTrue(spvTypeSite.TypeSiteNom == newlibelle);
            }
            else
            {
                Console.WriteLine("Un type de site avec ce libellé existe déjà");
            }
        }
示例#9
0
        //supprimer un type de site
        private void AssureSupprimerTypeSite(int id)
        {
            Console.WriteLine("suppression d'un type de site");
            CTypeSite   typeSite    = new CTypeSite(m_contexteDonnees);
            CSpvTypsite typeSiteSpv = new CSpvTypsite(m_contexteDonnees);

            CResultAErreur result = CResultAErreur.True;

            if (typeSite.ReadIfExists(id))
            {
                typeSiteSpv.ReadIfExists(new CFiltreData(CSpvTypsite.c_champSmtTypeSite_Id + "=@1",
                                                         id));

                Console.WriteLine("suppression du type de site");
                result = typeSite.Delete();
            }

            CSpvTypsite typespvtest = new CSpvTypsite(m_contexteDonnees);

            Console.WriteLine("vérification de la suppression");
            Assert.IsFalse(typespvtest.ReadIfExists(new CFiltreData(CSpvTypsite.c_champSmtTypeSite_Id + "=@1",
                                                                    id)));
        }