Exemplo n.º 1
0
        private void PostTraitement()
        {
            AddList(string.Format("Post Traitement en cours ! ({0})", Properties.Settings.Default.PosttraitementName), Color.FromName(Properties.Settings.Default.ColorLogNormal));
            MysqlDll Mysql = new MysqlDll(Properties.Settings.Default.hostmysql, Properties.Settings.Default.usermysql,
                                          Properties.Settings.Default.mdpmysql, Properties.Settings.Default.database);

            AddList(string.Format("SQL CONNECT : {0}", Mysql.getCo()), Mysql.etacColor());

            Dossier DossierPost = new Dossier();

            DossierPost.setMyFile(Properties.Settings.Default.PosttraitementPath);
            foreach (FileInfo MesFichiers in DossierPost.getFilesSql())
            {
                Mysql.SendRequestSql(MesFichiers.FullName, MesFichiers.Name);
            }
            if (Mysql.getQuery() != "OK")
            {
                writeFail(Properties.Settings.Default.PosttraitementName, Mysql.getQuery());
            }
            AddList(string.Format("Retour SQL post traitement : {0}", Mysql.getQuery()), Mysql.getColorQuery());
        }
Exemplo n.º 2
0
        private void ExecutSql()
        {
            MonDossier.setMyFile(Properties.Settings.Default.traitementPath);
            int ProgressExecFile = 100 / MonDossier.getLenghtFile();

            AddProgress(0);
            foreach (FileInfo MesFichiers in MonDossier.getFiles())
            {
                AddList(string.Format("Fichier traité : {0}", MesFichiers.Name), Color.FromName(Properties.Settings.Default.ColorLogNormal));
                MysqlDll Mysql = new MysqlDll(Properties.Settings.Default.hostmysql, Properties.Settings.Default.usermysql,
                                              Properties.Settings.Default.mdpmysql, Properties.Settings.Default.database);

                AddList(string.Format("SQL CONNECT : {0}", Mysql.getCo()), Mysql.etacColor());

                if (Mysql.isConnect())
                {
                    string ext = Properties.Settings.Default.ExtFile;
                    if (!ext.Contains("."))
                    {
                        ext = "." + ext;
                    }
                    Boolean mysqlError = false;
                    //On set le fichier ou ce trouve les .sql
                    Dossier DossierSQL = new Dossier();
                    string  Fichier    = MesFichiers.Name.Replace(ext, "");
                    //On check si il y a bien un fichier de présent
                    if (!DossierSQL.CheckIsValid(Properties.Settings.Default.SqlPath + @"\" + Fichier))
                    {
                        //Si c'eszt le fichier Gestime c'est bon
                        if (MesFichiers.Name.Contains("EXP_REPOS_DUS__AN_"))
                        {
                            Fichier = "Gestime";
                        }
                        else
                        {
                            //Il n'existe pas de fichier sous le nom du fichier csv
                            AddList(string.Format("Erreur fichier innexistant pour : {0}", MesFichiers.Name), Color.FromName(Properties.Settings.Default.ColorLogFail));
                            mysqlError = true;
                        }
                    }

                    if (!mysqlError)
                    {
                        DossierSQL.setMyFile(Properties.Settings.Default.SqlPath + @"\" + Fichier);
                        AddList(string.Format("Ouverture fichier : {0}", MesFichiers.Name.Replace(ext, "")), Color.FromName(Properties.Settings.Default.ColorLogTraitement));
                        //On boucle sur les fichiers SQL
                        foreach (FileInfo MesFichiersSQL in DossierSQL.getFilesSql())
                        {
                            AddList(string.Format("Fichier SQL traité : {0}", MesFichiersSQL.Name), Color.FromName(Properties.Settings.Default.ColorLogTraitement));
                            Mysql.SendRequestSql(MesFichiersSQL.FullName, MesFichiers.Name);

                            if (Mysql.getQuery() != "OK")
                            {
                                writeFail(MesFichiersSQL.Name, Mysql.getQuery());
                                AddList(string.Format("Erreur SQL sur : {0}", MesFichiersSQL.Name), Color.FromName(Properties.Settings.Default.ColorLogFail));
                                mysqlError = true;
                            }
                            AddList(string.Format("Retour SQL : {0}", Mysql.getQuery()), Mysql.getColorQuery());
                        }

                        if (mysqlError)
                        {
                            if (File.Exists(Properties.Settings.Default.FileFailPath + @"\" + MesFichiers.Name))
                            {
                                File.Delete(Properties.Settings.Default.FileFailPath + @"\" + MesFichiers.Name);
                            }
                            File.Move(MesFichiers.FullName, Properties.Settings.Default.FileFailPath + @"\" + MesFichiers.Name);
                        }

                        string close = Mysql.CloseMysql();
                        AddList(string.Format("Fermeture SQL : {0}", close), Color.FromName(Properties.Settings.Default.ColorLogNormal));
                    }
                }
                else
                {
                    AddList(string.Format("Erreur MYSQL ! Impossible de se connecter au serveur."), Color.FromName(Properties.Settings.Default.ColorLogFail));
                }
                if (Progress + ProgressExecFile < 101)
                {
                    AddProgress(Progress + ProgressExecFile);
                }
                foreach (string fihcierPOST in Properties.Settings.Default.PosttraitementTable.Split(';'))
                {
                    if (fihcierPOST == MesFichiers.Name)
                    {
                        PostTraitement();
                    }
                }
            }
            AddProgress(0);
        }