コード例 #1
0
        public static void Log(IProcess process, IControle controle, string statutMessage, string message)
        {
            using (var conn = new System.Data.SqlClient.SqlConnection(ParamAppli.ConnectionStringBaseAppli))
            {
                try
                {
                    conn.Open();

                    using (var cmd = new System.Data.SqlClient.SqlCommand("insert into PNPU_LOG (ID_PROCESS, ITERATION, WORKFLOW_ID, MESSAGE, STATUT_MESSAGE, ID_CONTROLE, IS_CONTROLE, DATE_LOG, SERVER, BASE, NIVEAU_LOG) values(@ID_PROCESS, @ITERATION, @WORKFLOW_ID, @MESSAGE, @STATUT_MESSAGE, @ID_CONTROLE, @IS_CONTROLE, @DATE_LOG, @SERVER, @BASE, @NIVEAU_LOG)", conn))
                    {
                        cmd.Parameters.Add("@ID_PROCESS", SqlDbType.VarChar, 50).Value     = process.ToString();
                        cmd.Parameters.Add("@ITERATION", SqlDbType.Int).Value              = 1;
                        cmd.Parameters.Add("@WORKFLOW_ID", SqlDbType.Int).Value            = process.WORKFLOW_ID;
                        cmd.Parameters.Add("@MESSAGE", SqlDbType.VarChar, 250).Value       = message;
                        cmd.Parameters.Add("@STATUT_MESSAGE", SqlDbType.VarChar, 50).Value = statutMessage;
                        cmd.Parameters.Add("@ID_CONTROLE", SqlDbType.VarChar, 50).Value    = controle.ToString();
                        cmd.Parameters.Add("@IS_CONTROLE", SqlDbType.VarChar, 50).Value    = "Y";
                        cmd.Parameters.Add("@DATE_LOG", SqlDbType.DateTime).Value          = DateTime.Now;
                        cmd.Parameters.Add("@SERVER", SqlDbType.VarChar, 50).Value         = "SERVER"; //process.SERVER;
                        cmd.Parameters.Add("@BASE", SqlDbType.VarChar, 50).Value           = "BASE";   //process.BASE;
                        cmd.Parameters.Add("@NIVEAU_LOG", SqlDbType.VarChar, 50).Value     = ParamAppli.LogLevel;

                        int rowsAffected = cmd.ExecuteNonQuery();
                    }
                }
                catch (SqlException ex)
                {
                    Console.WriteLine(ex.ToString());
                }
            }
        }
コード例 #2
0
        /// <summary>
        /// Methode permettant de récupérer dynamiquement la liste des contrôles à lancer en fonction du process, de la typologie client et du type de pack (standard ou non).
        /// </summary>
        /// <param name="listControl">Au retour de l'appel contient la liste des contrôles à exécuter dans le process</param>
        protected void GetListControle(ref List <IControle> listControl)
        {
            DataManagerSQLServer dmsDataManager = new DataManagerSQLServer();
            DataSet dsDataSet;
            string  sRequete = "SELECT ID_CONTROLE, CONTROLE_LABEL, TYPOLOGY, RUN_STANDARD, ID_PROCESS, ERROR_TYPE, TOOLTIP FROM PNPU_CONTROLE WHERE ID_PROCESS =" + this.PROCESS_ID.ToString();

            if ((this.CLIENT_ID != string.Empty) && (this.CLIENT_ID != "ALL"))
            {
                try
                {
                    string sClient_ID;
                    if (this.CLIENT_ID.Contains(",") == true)
                    {
                        sClient_ID = this.CLIENT_ID.Split(',')[0];
                    }
                    else
                    {
                        sClient_ID = this.CLIENT_ID;
                    }
                    this.TYPOLOGY = ParamAppli.ListeInfoClient[sClient_ID].TYPOLOGY_ID;
                    if (this.TYPOLOGY != string.Empty)
                    {
                        sRequete += " AND ((TYPOLOGY IS NULL) OR (TYPOLOGY LIKE '%*" + this.TYPOLOGY + "*%'))";
                    }
                }
                catch (Exception)
                { }
            }

            /*else if (this.TYPOLOGY != string.Empty)
             * {
             *  sRequete += " AND ((TYPOLOGY IS NULL) OR (TYPOLOGY LIKE '%*" + this.TYPOLOGY + "*%'))";
             * }
             */
            if (this.STANDARD == false)
            {
                sRequete += " AND ((RUN_STANDARD IS NULL) OR (RUN_STANDARD <> 'YES'))";
            }

            listControl.Clear();
            dsDataSet = dmsDataManager.GetData(sRequete, ParamAppli.ConnectionStringBaseAppli);

            if ((dsDataSet != null) && (dsDataSet.Tables[0].Rows.Count > 0))
            {
                foreach (DataRow drRow in dsDataSet.Tables[0].Rows)
                {
                    string    sControle = drRow[0].ToString();
                    IControle iControle = (IControle)Activator.CreateInstance(Type.GetType(sControle), this, drRow);
                    listControl.Add(iControle);
                }
            }
        }