예제 #1
0
파일: Requete.cs 프로젝트: anthocaron/CABS
        public ConditionRequete(Operateur oper, Champ champ)
        {
            if ((champ.Nom == null || champ.ValeurSQL == null) || (champ.Nom == "" || champ.ValeurSQL == ""))
            {
                Journal.EcrireMessage("Erreur lors de la création d'une condition.");
                return;
            }

            Texte = champ.Nom + " " + GetTexteOperateur(oper) + " " + champ.ValeurSQL;
        }
예제 #2
0
파일: Table.cs 프로젝트: anthocaron/CABS
        public void Joindre(string nomChamp, Table autreTable, string nomAutreChamp)
        {
            List <LigneTable> nouvelleLignes = new List <LigneTable>();

            foreach (LigneTable ligne in Lignes)
            {
                Champ champ = ligne.GetChamp(nomChamp);

                if (champ == null)
                {
                    return;
                }

                LigneTable autreLigne = null;

                foreach (LigneTable l in autreTable.Lignes)
                {
                    Champ c = l.GetChamp(nomAutreChamp);

                    if (c != null && c.Valeur.Equals(champ.Valeur))
                    {
                        autreLigne = l;
                        break;
                    }
                }

                if (autreLigne == null)
                {
                    continue;
                }

                autreLigne.RetirerChamp(nomAutreChamp);
                ligne.AjouterChamps(autreLigne);
                nouvelleLignes.Add(ligne);
            }

            Lignes = nouvelleLignes;
        }
예제 #3
0
        public void AjouterChamp(Champ champ, string nomChampSuivant)
        {
            if (champ == null || champ.Nom == null || champ.Nom.Length <= 0)
            {
                Outils.Journal.EcrireMessage("Tentative d'ajout d'un champ null dans la table '" + NomTable + "'.");
                return;
            }

            int indexExistant;

            if ((indexExistant = Champs.FindIndex(c => c.Nom == champ.Nom)) != -1)
            {
                Champs[indexExistant].Valeur = champ.Valeur;
                return;
            }

            if ((indexExistant = Champs.FindIndex(c => c.Nom == nomChampSuivant)) != -1)
            {
                Champs.Insert(indexExistant, champ);
                return;
            }

            Champs.Add(champ);
        }
예제 #4
0
 public void AjouterChamp(Champ champ)
 {
     AjouterChamp(champ, null);
 }