Получение статуса шаблона.

Sirius123

Client
Регистрация
16.09.2017
Сообщения
55
Благодарностей
17
Баллы
8
Добрый всем. Стоит задача получить статус (Выполнен, остановлен, выполняется или стоит на расписании) шаблона по имени.
 

искра

Client
Регистрация
07.06.2014
Сообщения
294
Благодарностей
26
Баллы
28
Excel, бд, глобальная переменная, ничего из этого не подходит?
 

Sirius123

Client
Регистрация
16.09.2017
Сообщения
55
Благодарностей
17
Баллы
8
ну это план "Б", думал может есть какая то команда C# получения статуса шаблона, есть же снипеты на остановка-запуск , добавление попыток и тд. Может и есть на получение статуса
 

Sirius123

Client
Регистрация
16.09.2017
Сообщения
55
Благодарностей
17
Баллы
8
Нашел нужную ветку на форуме. Если кому-то будет надо
Общий код:
using System;
using System.Text.RegularExpressions;
using ZennoLab.CommandCenter;

namespace ZennoLab.OwnCode
{
    public static class TaskHelper
    {
        public static string GetTaskId(string taskName)
        {
            foreach (var task in ZennoPoster.TasksList)
            {
                string name = Regex.Match(task, @"<Name>(.*?)</Name>").Groups[1].Value;
                if (name == taskName)
                    return Regex.Match(task, @"<Id>(.*?)</Id>").Groups[1].Value;
            }
            return string.Empty;
        }

        public static string GetStatus(string taskId)
        {
            var info = ZennoPoster.GetTaskInfo(Guid.Parse(taskId));
            return Regex.Match(info, @"<Status>(.*?)</Status>").Groups[1].Value;
        }
    }
}
C#:
string projectName = project.Variables["project_name"].Value;
string projectId = TaskHelper.GetTaskId(projectName);

if (string.IsNullOrEmpty(projectId))
{
    project.SendErrorToLog("Не смогли найти проект " + projectName, true);
    throw new Exception("Не найден проект");
}

string status = TaskHelper.GetStatus(projectId);
return status;
 

искра

Client
Регистрация
07.06.2014
Сообщения
294
Благодарностей
26
Баллы
28
Добрый всем. Стоит задача получить статус (Выполнен, остановлен, выполняется или стоит на расписании) шаблона по имени.
Это нужно чтобы зависшие проекты вырубить или ещё какая-то цель?
 

Sirius123

Client
Регистрация
16.09.2017
Сообщения
55
Благодарностей
17
Баллы
8
Это нужно чтобы зависшие проекты вырубить или ещё какая-то цель?
Нет, у меня один шаблон собирает информацию, и как ее достаточно, дает команду второму на запуск. Но эта команда не должна быть выполнена когда второй еще работает. Поэтому первый проверяет статус второго, и как только тот свободен дает количество попыток которые нужно выполнить .
 

Кто просматривает тему: (Всего: 2, Пользователи: 0, Гости: 2)