Пример #1
0
        public static bool InsertTaskTree(PTR3Core core, IDatabase dbPTRConfig, DelGetConfig getXmlDynamicConfig
      , int rootTaskRunningId, bool parallel, int taskToInsertId, ref int lastInsertedTaskRunningId
      , out string message, MsgStatusEnum logStatus)
        {
            message = "";
              dbPTRConfig.BeginTransaction();
              try
              {
            // wstaw do konfiguracji dynamicznej i dodaj graf procesow do running tasks
            DbParameter OUT_INSERTED_TASK_RI_ID = dbPTRConfig.GetIntParamOut("@OUT_INSERTED_TASK_RI_ID");
            DbParameter OUT_LAST_INSERTED_TASK_RI_ID = dbPTRConfig.GetIntParamOut("@OUT_LAST_INSERTED_TASK_RI_ID");

            int prevTaskId = (parallel ? rootTaskRunningId : lastInsertedTaskRunningId);

            PTR3Core.LOG.Log(logStatus, "Dynamic tasks graph inserting (root running task id: {0}, preview running task id: {1}, task to insert id {2}) ..."
              , rootTaskRunningId, prevTaskId, taskToInsertId);

            dbPTRConfig.ExecuteSp("SP_INSERT_TASK_TREE",
            dbPTRConfig.GetIntParamIn("@IN_ROOF_TASK_RI_ID", rootTaskRunningId),
            dbPTRConfig.GetIntParamIn("@IN_PREV_TASK_RI_ID", prevTaskId),
            dbPTRConfig.GetIntParamIn("@IN_TASK_ID", taskToInsertId),
            OUT_INSERTED_TASK_RI_ID,
            OUT_LAST_INSERTED_TASK_RI_ID);

            int firstInsertedTaskRunningId = (int)OUT_INSERTED_TASK_RI_ID.Value;
            lastInsertedTaskRunningId = (int)OUT_LAST_INSERTED_TASK_RI_ID.Value;

            core.UpdateTaskDynamicConfiguration(dbPTRConfig, getXmlDynamicConfig(firstInsertedTaskRunningId));

            dbPTRConfig.CommitTransaction();

            return true;
              }
              catch(Exception ex)
              {
            dbPTRConfig.RollbackTransaction();
            message = "Error while dynamic task graph inserting: " + ex.Message + "\r\n" + ex.StackTrace + ".";
            return false;
              }
        }
Пример #2
0
        public static SqlDatabase GetDBConfig(PTR3Core core, bool logToPtr, MsgStatusEnum logStatus)
        {
            String databaseName = "data-base";
              String server = ConfigXmlReader.XmlGetConfigParam(core.OptionalConfigurationXml, databaseName + ":address");
              String database = ConfigXmlReader.XmlGetConfigParam(core.OptionalConfigurationXml, databaseName + ":name");
              String user = ConfigXmlReader.XmlGetConfigParam(core.OptionalConfigurationXml, databaseName + ":user");
              String password = PasswordEncoder.PtrDecryptText(ConfigXmlReader.XmlGetConfigParam(core.OptionalConfigurationXml, databaseName + ":password"));

              if(logToPtr)
            PTR3Core.LOG.Log(logStatus, "Connecting to PTRConfig database (server: {0}, user: {1}, password: {2}, database: {3}) ...", server, user, password, database);

              SqlDatabase result = new SqlDatabase(server, database, user, password);

              if(logToPtr)
            PTR3Core.LOG.Log(logStatus, "Connection to PTRConfig database established.");

              return result;
        }
Пример #3
0
        public static SqlDatabase GetDBConverters(PTR3Core core, bool logToPtr, MsgStatusEnum logStatus)
        {
            string log = "";
              string connectionString = GetDBConvertersConnectionString(core, out log);

              if(logToPtr)
            PTR3Core.LOG.Log(logStatus, "Connecting to PTRConvert database ({0}) ...", log);

              SqlDatabase dbConverters = new SqlDatabase(connectionString);
              dbConverters.CommandTimeout = 3600;

              if(logToPtr)
            PTR3Core.LOG.Log(logStatus, "Connection to PTRConvert database established.");

              return dbConverters;
        }
Пример #4
0
 public static string GetMsgStatusEnumName(MsgStatusEnum e)
 {
     string a = "";
     switch (e)
     {
         case MsgStatusEnum.Confirmed:
             a = "同意";
             break;
         case MsgStatusEnum.Declined:
             a = "拒绝";
             break;
     }
     return a;
 }