Обратите внимание: данный раздел актуален для MSSQL. У PostgreSQL имеется своя специфика работы с хранимыми процедурами — как правило они используются для выполнения обновления данных. Для получения значений рекомендуется использовать пользовательские функции или представления. |
---|
Вместе с платформой "Первая Форма" поставляются некоторые полезные хранимые функции, которые можно использовать при настройке системы.
Процедуры
Выделяет из xml-структуры отдельные параметры и представляет их в виде таблицы |
||||||||
Входные параметры: •@XmlParam xml В xml-структуре могут быть ключи: Name, Value, ValueRaw, From, To |
||||||||
Возвращает таблицу, каждая строка которой описывает один параметр из xml-структуры. Колонки таблицы:
|
Выполняет денормализацию категории |
Входные параметры: •@SubcatID int — можно не указывать, если заданы @TaskID или @IDs •@TaskID int — указывать при обновлении одной задачи •@MinTaskID int, @MaxTaskID int — указывать при обновлении диапазона задач •@IDs id_tbl_type — (массив) указывать при обновлении нескольких задач •@Action varchar(16) = 'update' — возможные значения: update, insert, merge Если не указан ни один из параметров @TaskID, @MinTaskID, @MaxTaskID и @IDs, то выполняется денормализация категории @SubcatID. |
Возвращает таблицу с денормализованной категорией или задачами |
Выполняет загрузку файла в ДП |
Входные параметры: •@UserID int •@TaskID int •@ExtParamID int •@FileName varchar •@FileData nvarchar |
Анализирует наличие индекса на ДП |
Входные параметры: •@ExtParamID int — ID ДП •@ThresholdTaskCount int — Пороговое количество задач, необязательный параметр |
Возвращает таблицу с полями SubcatID, SubcatDescription, ExtParamName, MakeMeHappyStatement, ExistingSuitableIndexName, ColMaxLength, AlreadyExistsF, KeyMaxLengthNotRestrictedF, created_ix.KeyMaxLenExceededF, maxlenstt_data.TaskCount, SubcatTaskTextMaxLength ,maxlenstt_data.FactMaxLength |
Выполняет обновление тикеров |
Входные параметры: •@SubcatID int •@DebugF bit |
Удаляет задачи в системе |
Входной параметр: •@TaskIDs id_tbl_type |
Функции, возвращающие скалярную величину
Заменяет в строке служебные символы |
|
---|---|
Входные параметры: •@String nvarchar(max) |
|
Возвращает @String nvarchar(max) |
|
Заменяет в строке @String символы & < > « » " « » <br/>, <p> на &, <, >, " и перевод строки, <strong> на <b>, <em> на <i>, <s> на <strike>, <ol> и <li> на буллет, <ul> удаляется, <span style="color:' на <font color=', <span style="background-color: удаляется |
|
|
Убирает из строки все теги (все, что находится между символами < и >) |
|
Входные параметры: •@HTMLText varchar(max) |
|
Возвращает @String varchar(max) |
|
|
Возвращает название месяца на русском языке |
Входные параметры: •@MonthNumber int |
Возвращает varchar(50) |
tc_AddWorkingDays, tc_AddWorkingHours, tc_AddWorkingMinutes, tc_AddWorkingMonths, tc_AddWorkingYears
Прибавляет к дате указанное число рабочих дней (часов, минут, месяцев, лет) |
Входные параметры:
•@DateTime datetime, •@Days int |
Возвращает datetime |
tc_DiffWorkingDays, tc_DiffWorkingHours, tc_DiffWorkingMinutes
Считает разницу между двумя датами в рабочих днях (часах, минутах) |
Входные параметры:
•@BeginDate datetime, •@EndDate datetime |
Возвращает int |
Преобразует исходную дату в строку указанного формата |
||||||||||||||||||||||||||||||||||||
Входные параметры: •@Datetime datetime, •@FormatMask nvarchar(max), •@Locale varchar(32) = 'ru' |
||||||||||||||||||||||||||||||||||||
Возвращает nvarchar(max) |
||||||||||||||||||||||||||||||||||||
•В параметре @Datetime передается исходная дата. •В параметре @FormatMask передается маска формата, к которому надо привести исходную дату. В маске можно использовать следующие элементы:
Пример: 'dd Month yyyy'. •В формате @Locale передается локаль, а для русской локали — падеж. Возможные значения:
|
Cумма в рублях прописью |
Входные параметры: •@Value money |
Возвращает строку с указанной суммой в рублях (прописью) и копейках (числом). Пример реализации: DECLARE @Value money = (SELECT ExtParamХХХNativeValue FROM dbo.TasksInSubcatХХХDenormalized WHERE TaskId = @ContextID) SELECT dbo.rss_RubPhrase(@Value) |
Целое число прописью с учетом мужского/женского рода |
Входные параметры: •@Num BIGINT •@IsMaleGender bit=1 |
Возвращает строку с указанным числом прописью |
Расчет счетчика непрочитанных комментариев в чатах |
Входные параметры: •@UserID int •@ForChatF bit |
Возвращает строку с количеством непрочитанных комментариев |
Расчет счетчика подписей |
Входные параметры: • @UserID int •@SignatureStateID int |
Возвращает строку с количеством подписей, для которых требуется вынести решение по резолюции |
Функции, возвращающие таблицу
Раскладывает строку на значения и возвращает их в виде таблицы |
|
Входные параметры: •@String varchar(max) — содержит значения, разделенные символом @Delimiter (например, значения, перечисленные через запятую), •@Delimiter varchar(max) — содержит символ-разделитель (например, ',') |
|
Возвращает таблицу с колонкой value |
|
|
Выделяет из xml-структуры отдельные параметры и возвращает их в виде таблицы |
||||||||||
Входные параметры: •@XmlParam xml В xml-структуре могут быть ключи: Name, Value, ValueRaw, From, To |
||||||||||
Возвращает таблицу, каждая строка которой описывает один параметр из xml-структуры. Колонки таблицы:
|
Раскладывает строку на значения и возвращает их в виде таблицы |
Входные параметры: •@String varchar(max), •@Delimiter varchar(max) |
Возвращает таблицу с колонками id (порядковый номер) и value |
Добавляет цвет текста и фона полям с списке задач в категории в зависимости от условий |
||
Входные параметры: •@TaskID int, •@UserId int) |
||
При выводе списка задач в категории этот список автоматически объединяется (делается join) с результатом выполнения функции fn_TaskColor, и в итоговом результате отдельные поля и значения могут получать свои собственные атрибуты цвета для текста и фона. Стилизовать можно следующие поля: •Текст задачи •Статус •Срок •Заказчик •Исполнитель •Плановые трудозатраты •Фактические трудозатраты Функция поставляется вместе с платформой. Администратор должен вручную отредактировать функцию так, чтобы она возвращала нужные значения (например, добавить UNION ALL для определенной категории).
|
Определяет права доступа пользователя к задачам в указанной категории |
---|
Входные параметры: •@UserID int, •@SubcatID int |
Возвращает строки таблицы Tasks с задачами из категории @SubcatID, к которым пользователь @UserID имеет доступ |
Определяет принадлежность пользователя к уровням орг.структуры |
---|
Входные параметры: •@UserID int |
Возвращает атрибуты Id, Name, ParentId, OrgStructureTypeId, IsActual, DoNotShowInOrgStructure, IsDirector LinkedGroupId, GuidFrom1C, IsFuncGroup, AppointmentId, Description, LocalizedNameId из таблицы UserOrgStructureUnit, относящиеся к пользователю @UserID |