MyChat Scripts: функция mKanbanGetProjectIDByTaskID — получить идентификатор канбан-проекта по ID задачи

MyChat Scripts: функция mKanbanGetProjectIDByTaskID — получить идентификатор канбан-проекта по ID задачи

"Для разработчиков", "Серверные скрипты", "Описание функций", "Канбан — управление проектами", "mKanbanGetProjectIDByTaskID".

 

Получить идентификатор канбан-проекта по номеру задачи, размещённой одном из его этапов.

 

Синтаксис

function mKanbanGetProjectIDByTaskID(const iTaskID: integer): integer;

 

Параметры и возвращаемые значения

Параметр

Тип

Значение

iTaskID

integer

идентификатор задачи, число.

 

Результат функции

>0

идентификатор найденного проекта;

-1

указан неправильный или несуществующий ID задачи на канбан-доске.

 

Пример

Пример для автоматического поздравления пользователей чата с днём рождения. Поздравления размещаются на доске объявлений, скрипт "навешивается" на событие "User defined script"\ "Every hour".

// ---------------------------------------
// Script created by Alexey Pikurov (support@nsoft-s.com)
// 18.01.2021 20:45:13
// ---------------------------------------
var
  iUIN: integer;
  dtExpired: double;
  sUsersList, sUserFullName, sMsg, sGender, sToday: string;
begin
  dtExpired := Now; // получаем текущую дату
  sToday := FormatDateTime('ddmmyyyy', dtExpired);

    // если мы уже работали сегодня, то ничего не делаем, чтобы
    // не поздравить одних и тех же людей по второму кругу
    if mDBStorageGetData('birthday-script') = sToday then exit
      else mDBStorageSetData('birthday-script', sToday);
  
  sUsersList := mGetBirthdayUsers(dtExpired); // получаем список UIN-ов людей, у которых сегодня день рождения
                                  
    while length(sUsersList) > 0 do begin
      iUIN := StrToInt(Fetch(sUsersList, ',')); 
      sUserFullName := mGetUserFullNameByPreset(iUIN, 0); // 0 — "Александр Сергеевич Пушкин"
      
        if mGetUserAttribute(iUIN, 'Sex') = '2' then sGender := 'её' // получение пола пользователя
          else sGender := 'его'; 
        
      // формируем строку для поздравления
      sMsg := 'Сегодня ' + sUserFullName + ' празднует день рождения!' +
              CRLF +
              'Подравляем ' + sGender + ' с этим праздником и желаем всего самого ' +
              'светлого и доброго!';
        
        // если сегодня суббота или воскресенье, то добавляем нужное количество дней до понедельника
        case DayOfTheWeek(dtExpired) of
          6: IncDay(dtExpired, 2);
          7: IncDay(dtExpired, 1);
        end;

      // ...и размещаем поздравление на доске объяалений, чтобы было видно всем пользователям
      mAddNewBBSMessage(sMsg, dtExpired, false);
    end;
end.

 

Результат работы

Автоматическое поздравление пользователей MyChat с днями рождений
 

Ещё посмотреть

DayOfTheWeek

Fetch

FormatDateTime

IncDay

Length

mGetBirthdayUsers

mGetUserAttribute

mGetUserFullNameByPreset

mDBStorageGetData

mDBStorageSetData

Now

StrToInt