Работа с формулами
ВыражениеПолногоИдентификатораХарактеристики
Описание, пример вызова
// Возвращает выражение получения идентификатора характеристики. Следует обратить внимание, что выражение// в обычном запросе и в наборе-запросе СКД отличаются.//// Параметры:// МетаданныеВидаХарактеристик - ОбъектМетаданных - Объект метаданных характеристик. См. РаботаСФормуламиПовтИсп.СвойстваПоддерживаемыхИсточниковХарактеристик.// ДляСКД - Булево - Флаг получения выражения для текста запроса в СКД.// Возвращаемое значение:// Строка - Выражение поля идентификатора, включающего скобки и обращение к указанному в СвойстваПоддерживаемыхИсточниковХарактеристик полю.//Функция ВыражениеПолногоИдентификатораХарактеристики(МетаданныеВидаХарактеристик, ДляСКД = Ложь) Экспорт
Пример вызова
Результат = РаботаСФормулами.ВыражениеПолногоИдентификатораХарактеристики(МетаданныеВидаХарактеристик, ДляСКД);
МодифицированноеВыражениеОперандаДляСКД
Описание, пример вызова
// Возвращает модифицированное выражение операнда для СКД с наборами данных - запросами, в которых переопределено// получение характеристик.//// Параметры:// ИсходноеВыражение - Строка - Выражение операнда. Например, "Номенклатура.{ДР.Характеристика1}.Контрагент"// Возвращаемое значение:// Строка - модифицированное выражение. Например, "Номенклатура.[[ДР.Характеристика1]]].Контрагент".Функция МодифицированноеВыражениеОперандаДляСКД(ИсходноеВыражение) Экспорт
Пример вызова
Результат = РаботаСФормулами.МодифицированноеВыражениеОперандаДляСКД(ИсходноеВыражение)
СвойстваХарактеристики
Описание, пример вызова
// Возвращает свойства характеристики по ее выражению на языке формул//// Параметры:// ВыражениеХарактеристики - Строка - Например, "{ДР.ОсновнойПоставщик}".// Возвращаемое значение:// Структура - Описание:// * Метаданные - ОбъектМетаданныхПланВидовХарактеристик, ОбъектМетаданныхСправочник - Метаданные источника характеристик.// Например, Метаданные.ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения// или Метаданные.Справочники.ВидыКонтактнойИнформации.// * Идентификатор - Строка - Идентификатор характеристики, указанный в соответствующем реквизите, хранимом в таблице характеристик.// * Префикс - Строка - Префикс вида характеристик. Например "ДР." - Для дополнительных реквизитов и сведений.Функция СвойстваХарактеристики(ВыражениеХарактеристики) Экспорт
Пример вызова
Результат = РаботаСФормулами.СвойстваХарактеристики(ВыражениеХарактеристики)
ПолеИдентификатораДополнительныхРеквизитовИСведений
Описание, пример вызова
// Возвращает имя поля идентификатора для формул дополнительных реквизитов и сведений.//// Возвращаемое значение:// Строка - Имя поля "ИдентификаторДляФормул"Функция ПолеИдентификатораДополнительныхРеквизитовИСведений() Экспорт
Пример вызова
Результат = РаботаСФормулами.ПолеИдентификатораДополнительныхРеквизитовИСведений()
ПолучитьПустоеДеревоОперандов
Описание, пример вызова
// Формирует дерево значений с колонками Идентификатор, Представление.//// Возвращаемое значение:// ДеревоЗначений - Пустое дерево операндов с колонками:// *Идентификатор - Строка - Идентификатор операнда.// *Представление - Строка - Представление операнда.// *ТипЭлементаДерева - Строка - См. РаботаСФормулами.ТипыЭлементовДереваОперандов// *РазрешаетсяВыборОперанда - Булево - Если истина, то строку дерева операнда можно будет выбирать в формулу.// Например, не имеет смысла выбор групп операндов.// *ВключаетсяВИдентификатор - Булево - Признак включения идентификатора текущей строки в состав идентификатора нижерасположенной строки.// Например, если группа операндов идентифицирует путь к данным, то она должна включаться в идентификатор.// Если группа операндов используется только для логической компоновки операндов, то она не должна включаться в идентификатор.// *ТипЗначения - ОписаниеТипов - Описание типов операнда. Разрешается не указывать тип только для групп операндов.// В остальных случаях заполнение обязательно.// *РазворачиватьДоРеквизитов - Булево - Признак необходимости рекурсивно разворачивать ссылочный операнд до реквизитов.// *Значение - Число - Значение операнда. Может использоваться, например, для интерактивного расчета значения по формуле.// *СодержитЗначение - Булево - Флаг, что строка операнда содержит значение.// *ПометкаУдаления - Булево - Заполняется, если операнд представляет из себя ссылку на объект (например, тип цен).// Если элемент помечен на удаление, то при выборе будет выведено дополнительное оповещение.//Функция ПолучитьПустоеДеревоОперандов() Экспорт
Пример вызова
Результат = РаботаСФормулами.ПолучитьПустоеДеревоОперандов()
ТипыЭлементовДереваОперандов
Описание, пример вызова
// Типы элементов дерева операндов. Тип элемента влияет на картинку строки в дереве, а также может влиять на поведение.// Реализация в виде структуры позволяет использовать ее в коде как перечисление.//// Возвращаемое значение:// Структура - Описание:// * Операнд - Строка - Обычный операнд не относящийся к метаданным. Например, вид цен. Значение по умолчанию.// * Группа - Строка - Группа операндов или реквизитов или параметров. Картинка как папка.// * ГруппаСтрокВерхнегоУровня - Строка - Группа операндов или реквизитов. Картинка как три реквизита.// * Реквизит - Строка - Реквизит метаданных. Например, реквизит вид номенклатуры.// * ДополнительныйРеквизит - Строка - Дополнительный реквизит. Отличается от дополнительного сведения только картинкой (и местом хранения значения).// * ДополнительноеСведение - Строка - Дополнительное сведение.// * ВидКонтактнойИнформации_Адрес - Строка - Вид контактной информации с типом "адрес".// * ВидКонтактнойИнформации_Телефон - Строка - Вид контактной информации с типом "телефон".// * ВидКонтактнойИнформации_АдресЭлектроннойПочты - Строка - Вид контактной информации с типом "адрес электронной почты".// * ВидКонтактнойИнформации_Skype - Строка - Вид контактной информации с типом "skype".// * ВидКонтактнойИнформации_ВебСтраница - Строка - Вид контактной информации с типом "веб страница".// * ВидКонтактнойИнформации_Факс - Строка - Вид контактной информации с типом "факс".// * ВидКонтактнойИнформации_Другое - Строка - Вид контактной информации с типом "другое".// * ВидКонтактнойИнформации_НесколькоВидовКонтактнойИнформации - Строка - Идентификатор по указанному идентификатору существует несколько// элементов справочника виды контактной информации с разными типами.// * ПрочаяХарактеристика - Строка - Другой вид характеристик, не являющийся доп.реквизитами и сведениями или контактной информацией.//Функция ТипыЭлементовДереваОперандов() Экспорт
Пример вызова
Результат = РаботаСФормулами.ТипыЭлементовДереваОперандов()
НоваяСтрокаДереваОперанда
Описание, пример вызова
// Добавляет в указанное место подчиненную строку дерева и заполняет ее значениями по умолчанию.//// Параметры:// МестоДобавления - ДеревоЗначений, СтрокаДереваЗначений, ДанныеФормыДерево, ДанныеФормыЭлементДерева - дерево,// полученное методом ПолучитьПустоеДеревоОперандов или дерево на форме или строки дерева.// Возвращаемое значение:// - СтрокаДереваЗначений - Строка, добавленная в дерево значений.// - ДанныеФормыЭлементДерева - Строка, добавленная в дерево на форме.Функция НоваяСтрокаДереваОперанда(МестоДобавления) Экспорт
Пример вызова
Результат = РаботаСФормулами.НоваяСтрокаДереваОперанда(МестоДобавления)
ОграниченияРазверткиОперандов
Описание, пример вызова
// Возвращает шаблон параметров дополнительных ограничений развертки операндов.//// Возвращаемое значение:// Структура - Описание:// * РекурсивноРазворачиватьОперандыСхемыКомпоновки - Булево - Значение по умолчанию Истина (разворачиваются). Но можно отключить разворот строк// одним параметром без указания соответствующего параметра для каждой строки дерева операндов.// * МаксимальныйУровеньРазверткиСтрок - Число - Значение по умолчанию 0 (не контролируется). Контроль максимального уровня строк в дереве при развертке.// * ВыводитьРеквизиты - Булево - Значение по умолчанию Истина. Флаг необходимости выводить обычные реквизиты при развертке.// * ВыводитьХарактеристики - Булево - Значение по умолчанию Истина. Флаг необходимости выводить характеристики (доп.реквизиты и сведения, а также контактную информацию).// * НаборыДополнительныхРеквизитов - Массив из СправочникСсылка.НаборыДополнительныхРеквизитовИСведений - Если массив пустой, то дополнительный отбор для доп.реквизитов// и сведений по наборам не накладывается. Действует только отбор, описанный в метаданных (кнопка "Характеристики") для объектов// из типа значения разворачиваемой строки.// Если массив не пустой, то в дополнению к отбору из метаданных накладывается отбор на вхождение доп.реквизитов и сведений// в указанные наборы.// * ВыводимыеРеквизиты - Строка - Значение по умолчанию "" (вывод реквизитов не ограничивается). Возможность ограничить выводимые реквизиты списком, перечисленным через запятую.// Если значение заполнено, то при выводе реквизита будет выполняться проверка на вхождение в этот список.// * НеВыводимыеРеквизиты - Строка - Значение по умолчанию "" (вывод реквизитов не ограничивается). Возможность ограничить выводимые реквизиты списком, перечисленным через запятую.// Если значение заполнено, то при выводе реквизита будет выполняться проверка на НЕ вхождение в этот список.//Функция ОграниченияРазверткиОперандов() Экспорт
Пример вызова
Результат = РаботаСФормулами.ОграниченияРазверткиОперандов()
РазвернутьСтрокуОперанда
Описание, пример вызова
// Разворачиваем строку дерева операндов на один уровень по ее типу значения (добавляются подчиненные строки - реквизиты и характеристики).//// Параметры:// СтрокаДерева - СтрокаДереваЗначений - разворачиваемая строка дерева:// *Идентификатор - Строка - Для всех типов значений. Идентификатор строки.// *Представление - Строка - Для всех типов значений. Представление строки.// *ТипЭлементаДерева - Строка - Для всех типов значений. см. РаботаСФормулами.ТипыЭлементовДереваОперандов.// *РазрешаетсяВыборОперанда - Булево - Для всех типов значений. Флаг возможности выбора строки операнда.// *ВключаетсяВИдентификатор - Булево - Для всех типов значений. Флаг включения текущего операнда в нижеследующие.// СтрокаДерева - ДанныеФормыЭлементДерева - разворачиваемая строка дерева.// *Идентификатор - Строка - Для всех типов значений. Идентификатор строки.// *Представление - Строка - Для всех типов значений. Представление строки.// *ТипЭлементаДерева - Строка - Для всех типов значений. см. РаботаСФормулами.ТипыЭлементовДереваОперандов.// *РазрешаетсяВыборОперанда - Булево - Для всех типов значений. Флаг возможности выбора строки операнда.// *ВключаетсяВИдентификатор - Булево - Для всех типов значений. Флаг включения текущего операнда в нижеследующие.// ОграниченияРазвертки - Неопределено - Значения развертки по умолчанию.// ОграниченияРазвертки - см. РаботаСФормулами.ОграниченияРазверткиОперандов.//Процедура РазвернутьСтрокуОперанда(СтрокаДерева, ОграниченияРазвертки = Неопределено) Экспорт
Пример вызова
РаботаСФормулами.РазвернутьСтрокуОперанда(СтрокаДерева, ОграниченияРазвертки);
РазвернутьСтрокуОперандаДереваФормы
Описание, пример вызова
// Разворачиваем строку дерева операндов на один уровень по ее типу значения (добавляются подчиненные строки - реквизиты и характеристики).// Вызывается из формы с деревом операндов при событии развертки строки дерева. Поиск строки по ее идентификатору и удаление подчиненной служебной строки.//// Параметры:// ДеревоОперандовФормы - ДанныеФормыДерево - Дерево операндов на форме.// ИдентификаторТекущейСтрокиДереваОперандов - Число - Идентификатор строки дерева формы.// МаксимальныйУровеньРазверткиСтрок - Число - Значение по умолчанию 0 (не контролируется). Контроль максимального уровня строк в дереве при развертке.//Процедура РазвернутьСтрокуОперандаДереваФормы(ДеревоОперандовФормы, ИдентификаторТекущейСтрокиДереваОперандов, МаксимальныйУровеньРазверткиСтрок = 0) Экспорт
Пример вызова
РаботаСФормулами.РазвернутьСтрокуОперандаДереваФормы(ДеревоОперандовФормы, ИдентификаторТекущейСтрокиДереваОперандов, МаксимальныйУровеньРазверткиСтрок);
ДобавитьВДеревоДоступныеПоляПоСхемеКомпоновки
Описание, пример вызова
// Добавляет в указанное место дерева операндов первый уровень полей по схеме компоновки данных.//// Параметры:// МестоДобавления - ДеревоЗначений, СтрокаДереваЗначений - Строки добавляются непосредственно в дерево операндов// или в указанную строку дерева операндов.// СхемаКомпоновки - СхемаКомпоновкиДанных - Произвольная схема компоновки, поля выборки которой необходимо добавить// в указанное место.// ОграниченияРазвертки - Неопределено, Структура - см. РаботаСФормулами.ОграниченияРазверткиОперандов.//Процедура ДобавитьВДеревоДоступныеПоляПоСхемеКомпоновки(МестоДобавления, СхемаКомпоновки, ОграниченияРазвертки = Неопределено) Экспорт
Пример вызова
РаботаСФормулами.ДобавитьВДеревоДоступныеПоляПоСхемеКомпоновки(МестоДобавления, СхемаКомпоновки, ОграниченияРазвертки);
ЗагрузитьДеревоОперандовВДеревоФормы
Описание, пример вызова
// Загружает в дерево на форме инициализированное разработчиком дерево значений,// также заполняет соответствие значений операндов, если соответствующий параметр передан.//// Параметры:// ДеревоФормы - ДанныеФормыДерево - Дерево на форме, в которое загружается инициализированное разработчиком дерево значений.// Имеет служебные колонки, которых нет в ДеревоОперандов, они заполняются в данном методе.// ДеревоОперандов - ДеревоЗначений - Инициализированное разработчиком дерево значений. См. ПолучитьПустоеДеревоОперандов.// МассивРазрешенныхОперандов - Неопределено, Массив - имена разрешенных операндов для проверки корректности формулы.// ЗначенияОперандов - Неопределено - Значение по умолчанию. Соответствие операндов и их значений не заполняется.// Соответствие - Соответствие операндов и их значений:// * Ключ - Строка - Идентификатор операнда.// * Значение - Число - значение операнда.Процедура ЗагрузитьДеревоОперандовВДеревоФормы(ДеревоФормы, ДеревоОперандов, МассивРазрешенныхОперандов = Неопределено, Экспорт
Пример вызова
РаботаСФормулами.ЗагрузитьДеревоОперандовВДеревоФормы(ДеревоФормы, ДеревоОперандов, МассивРазрешенныхОперандов, );
ПолучитьПустоеДеревоОператоров
Описание, пример вызова
// Формирует дерево значений с колонками Наименование, Оператор, Сдвиг.//// Возвращаемое значение:// ДеревоЗначений - Пустое дерево операторов с колонками:// * Наименование - Строка - Наименование оператора.// * Оператор - Строка - Оператор.// * Сдвиг - Число - Сдвиг оператора.//Функция ПолучитьПустоеДеревоОператоров() Экспорт
Пример вызова
Результат = РаботаСФормулами.ПолучитьПустоеДеревоОператоров()
ДобавитьГруппуОператоров
Описание, пример вызова
// Добавляет в дерево операторов группу операторов с переданным наименованием.//// Параметры:// Дерево - ДеревоЗначений - Дерево операторов. см. функцию ПолучитьПустоеДеревоОператоров().// Идентификатор - Строка - Идентификатор оператора на встроенном языке.// Представление - Строка - Наименование группы дерева операторов на языке пользователя.//// Возвращаемое значение:// СтрокаДереваЗначений - Добавленная группа операторов.//Функция ДобавитьГруппуОператоров(Дерево, Идентификатор, Представление) Экспорт
Пример вызова
Результат = РаботаСФормулами.ДобавитьГруппуОператоров(Дерево, Идентификатор, Представление)
ДобавитьОператор
Описание, пример вызова
// Добавляет в дерево операторов группу операторов с переданным наименованием.//// Параметры:// МестоДобавления - ДеревоЗначений, СтрокаДереваЗначений - Дерево операторов или группа операторов, в которую необходимо добавить оператор.// Идентификатор - Строка - Идентификатор оператора на встроенном языке.// КонструкцияДляВставки - Строка - Текст, добавляемый в формулу при выборе, идентификатор со скобками и параметрами.// Представление - Строка - Представление оператора на языке пользователя.// Пояснение - Строка - Опциональное пояснение для пользователя, что выполняет оператор.// Сдвиг - Число - необходим для определения позиции курсора.//// Возвращаемое значение:// СтрокаДереваЗначений - Добавленный оператор.//Функция ДобавитьОператор(МестоДобавления, Идентификатор, КонструкцияДляВставки, Представление, Пояснение = "", Сдвиг = 0) Экспорт
Пример вызова
Результат = РаботаСФормулами.ДобавитьОператор(МестоДобавления, Идентификатор, КонструкцияДляВставки, Представление, Пояснение, Сдвиг);
ПолучитьСтандартноеДеревоОператоров
Описание, пример вызова
// Формирует дерево со стандартными операторами "+", "-", "*", "/"//// Возвращаемое значение:// ДеревоЗначений - дерево операторов. см. функцию ПолучитьПустоеДеревоОператоров().//Функция ПолучитьСтандартноеДеревоОператоров() Экспорт
Пример вызова
Результат = РаботаСФормулами.ПолучитьСтандартноеДеревоОператоров()
ПостроитьДеревоОператоров
Описание, пример вызова
// Заполняет дерево операторов для конструктора формул.//// Параметры:// Параметры - Структура - содержит виды операторов, которые необходимо добавить в дерево.// УникальныйИдентификатор - УникальныйИдентификатор - уникальный идентификатор формы, в которой выполняется действия,// необходим для корректного помещения во временное хранилище.//// Возвращаемое значение:// Строка - Адрес во временном хранилище.//Функция ПостроитьДеревоОператоров(Параметры, УникальныйИдентификатор) Экспорт
Пример вызова
Результат = РаботаСФормулами.ПостроитьДеревоОператоров(Параметры, УникальныйИдентификатор)
ПараметрыПроверкиФормулы
Описание, пример вызова
// Возвращает шаблон параметров проверки формулы.//// Возвращаемое значение:// Структура - Описание:// * ФункцииОбщегоМодуля - Массив из см. РаботаСФормуламиКлиентСервер.ОписаниеФункцииОбщегоМодуля - Описание добавленных функций.// * ФормулаДляВычисленияВЗапросе - Булево - Признак исполнения функции в качестве выражения текста запроса.// * Поле - Строка - Путь к реквизиту формы, для которого было выведено сообщение, или к данным объекта.// * ПутьКДанным - Строка - Содержит путь в форме, которая будет отображать сообщение, до объекта, связанного с этим сообщением.// * СообщениеОбОшибке - Строка - Значение по умолчанию "". Если сообщение заполнено, то при наличии ошибки будет выводится указанное сообщение.// * НеВыводитьСообщения - Булево - Флаг, позволяющий отключить вывод сообщений об ошибках.//Функция ПараметрыПроверкиФормулы() Экспорт
Пример вызова
Результат = РаботаСФормулами.ПараметрыПроверкиФормулы()
ПроверитьФормулу
Описание, пример вызова
// Осуществляет проверку корректности формулы//// Параметры:// Формула - Строка - текст формулы.// Операнды - Массив из Строка - операнды формулы.// ТипРезультата - ОписаниеТипов - ожидаемый тип результата вычисления.// ПараметрыПроверки - см. ПараметрыПроверкиФормулы//// Возвращаемое значение:// Булево - Ложь, если есть ошибки, иначе Истина.//Функция ПроверитьФормулу(Формула, Операнды, ТипРезультата, ПараметрыПроверки = Неопределено) Экспорт
Пример вызова
Результат = РаботаСФормулами.ПроверитьФормулу(Формула, Операнды, ТипРезультата, ПараметрыПроверки);
ВыраженияСПредставлениямиХарактеристикДляОнлайнПроверки
Описание, пример вызова
// Возвращает соответствие выражение с идентификаторами - выражение с представлениями.// Используется для онлайн проверки корректности выражений СКД из форм подбора аналитики и субконто.// В случае указания контактной информации, для идентификатора которой подходят несколько представлений, вернет// не сложное выражение через конструкцию ВЫБОР КОГДА, а первое подходящее представление контактной информации// (для корректного отображения в поле на форме).// Для онлайн проверки выражений в выражения следует подставлять представления характеристик.// Использование переопределения имен характеристик для онлайн проверки не используется из-за высоких накладных расходов// при инициализации компоновщика.//// Параметры:// ВыраженияСИдентификаторами - Массив из Строка - выражение операнда в терминах идентификаторов. Например, Номенклатура.{ДР.Экспедитор}.ГоловнойКонтрагент.{КИ.Телефон}// СхемаКомпоновки - Неопределено, СхемаКомпоновкиДанных - Схемы компоновки по которой проверяется существование полей операндов.// Если схема компоновки не задана парсинг выражений не возможен.//// Возвращаемое значение:// Соответствие из КлючИЗначение - соответствие выражений в терминах идентификаторов и выражения с использованием представления:// *Ключ - Строка - выражение с идентификаторами. Например, Номенклатура.{ДР.Экспедитор}.ГоловнойКонтрагент.{КИ.Телефон}.// *Значение - Строка - выражение с представлениями характеристик. Например, Номенклатура.[Главный экспедитор].ГоловнойКонтрагент.Телефон.//Функция ВыраженияСПредставлениямиХарактеристикДляОнлайнПроверки(ВыраженияСИдентификаторами, СхемаКомпоновки = Неопределено) Экспорт
Пример вызова
Результат = РаботаСФормулами.ВыраженияСПредставлениямиХарактеристикДляОнлайнПроверки(ВыраженияСИдентификаторами, СхемаКомпоновки);
ПолучитьДанныеОперандовДляТаблицыДанных
Описание, пример вызова
// Вычисляет значения выражений операндов для таблицы значений. Возвращает таблицу данных с добавленными колонками результатов вычислений.// Колонки таблицы данных должны быть типизированы.//// Параметры:// ТаблицаДанных - ТаблицаЗначений - Таблица данных, содержащая произвольное количество типизированных колонок.// ВыраженияВычисления - Соответствие - Выражение (операнд) вычисления и имя колонки результата. В зависимости// от контекста выполнения формулы указываются все выражения (операнды), которые можно вычислить// по данным таблицы данных:// * Ключ - Строка - Выражение вычисления в формате операнда формулы.// Например, "Номенклатура.{ДР.Экспедитор}.ГоловнойКонтрагент.{КИ.Телефон}".// Если выражение вычисления начинается с определенной колонки, например "Номенклатура", то данная колонка// должна быть в таблице данных.// * Значение - Строка - Имя колонки, в которую будет помещен результат вычисления выражения.// ИменаКолонокХарактеристик - Неопределено, Соответствие - если выражение вычисления начинается с характеристики,// то необходимо указать имя колонки, в которой содержится соответствующие значения характеристик.// Например, при вычислении наименования новой не записанной в базу номенклатуры,// значения операндов могут рассчитываться из заполненных в карточке товара дополнительных реквизитов:// * Ключ - Строка - Часть операнда, выражение характеристики в формате формул. Например "{ДР.ОсновнаяНоменклатураСписания}".// * Значение - Строка - Имя колонки в таблице источников вычисления.// ВыполнятьПроверкуВыражений - Булево - Флаг, указывающий, нужно ли проводить полную проверку выражений.// Если полная проверка всего выражения не проводится, то это может сэкономить время на парсинге выражений// (предполагается, что выражения указаны корректно), что может быть критично для механизмов, используемых// в транзакции. Если полная проверка всего выражения не проводится, то выражения парсятся только для// получения типов, для которых указана характеристика или для получения представления характеристики.// Если полная проверка всего выражения проводится, то все выражение проверяется на корректность// не зависимо от наличия в нем характеристик.//// Возвращаемое значение:// Структура - структура со свойствами:// * ТаблицаРезультатов - ТаблицаЗначений - Таблица, содержащая колонки таблицы источников вычислений и колонки результатов вычислений:// ** ИндексСтроки - Число - колонка индекса строки. Если она отсутствует в таблице источников, то будет добавлена.// * ЕстьОшибки - Булево - Флаг наличия ошибок при преобразовании выражений.// * СообщенияОшибокПреобразования - Соответствие - Сообщения ошибок преобразования, при их наличии:// ** Ключ - Строка - Исходное выражение, для которого зарегистрирована ошибка.// ** Значение - Строка - Текст сообщения об ошибке.//Функция ПолучитьДанныеОперандовДляТаблицыДанных(ТаблицаДанных, ВыраженияВычисления, ИменаКолонокХарактеристик = Неопределено, Экспорт
Пример вызова
Результат = РаботаСФормулами.ПолучитьДанныеОперандовДляТаблицыДанных(ТаблицаДанных, ВыраженияВычисления, ИменаКолонокХарактеристик, );
ДанныеДляПолученияВыраженийФормулЧерезСКД
Описание, пример вызова
// Возвращает структуру параметров для получения данных через СКД, а также, выполняет корректировку СКД// (если для получения выражений используются только наборы данных запросы, то по указанным выражениям вычисляются// все типы данных, для которых указаны характеристики указывается в текстах соответствующих наборов запросов// текст переопределения получения характеристик на языке расширения запросов (ограниченное количество типов,// т.к. указание переопределения характеристик для всех возможных типов не оптимально).// В случае, если для вычисления выражений используются наборы объекты, то выражения преобразуются с использованием// представлений характеристик на языке текущего пользователя.//// Параметры:// СхемаКомпоновки - СхемаКомпоновкиДанных - Схема компоновки, используемая для получения данных.// ИсходныеВыражения - Массив из Строка - Массив исходных выражений в формате написания формул.// Например, "Номенклатура.{ДР.ОсновнойПоставщикТовара}.{КИ.Телефон}".// ВыполнятьПроверкуВыражений - Булево - Флаг, указывающий, нужно ли проводить полную проверку выражений.// Если полная проверка всего выражения не проводится, то это может сэкономить время на парсинге выражений// (предполагается, что выражения указаны корректно), что может быть критично для механизмов, используемых// в транзакции. Если полная проверка всего выражения не проводится, то выражения парсятся только для// получения типов, для которых указана характеристика или для получения представления характеристики.// Если полная проверка всего выражения проводится, то все выражение проверяется на корректность// не зависимо от наличия в нем характеристик.// ИспользоватьТолькоПредставленияХарактеристик - Булево - Настройка позволяет принудительно включить преобразование// характеристик к представлению на языке текущего пользователя. Бывает полезна для механизм, где критична// производительность механизма получения данных (например, выполнение в транзакции), т.к. парсинг// выражения с целью получения типов данных занимает время. Если Истина будет выполнена замена характеристик// на представления не зависимо от того, какие наборы данных используются в схеме компоновки.// Возвращаемое значение:// Структура - Описание:// * ПреобразованныеВыражения - Соответствие - Результат преобразования выражений.// *Ключ - Строка - Исходное выражение.// *Значение - Строка - Результат преобразования для СКД. В случае, если для вычисления выражений// используются только наборы запросы, то, например, "Номенклатура.[[ДР.ОсновнойПоставщикТовара]]].[[КИ.Телефон]]]".// Если для вычисления выражений используются также наборы объекты, то выражение преобразуется с использованием// представлений. Например, "Номенклатура.[Основной поставщик товара (Обувь)].Телефон".// * ЕстьОшибки - Булево - Флаг наличия ошибок при преобразовании выражений.// * СообщенияОшибокПреобразования - Соответствие - Сообщения ошибок преобразования, при их наличии:// **Ключ - Строка - Исходное выражение, для которого зарегистрирована ошибка.// **Значение - Строка - Текст сообщения об ошибке.// * СхемаКомпоновкиИзменена - Булево - Флаг, указывающий, что схема компоновки изменена (в наборы данных запросы// добавлено переопределение получения характеристик на языке расширения запросов.//Функция ДанныеДляПолученияВыраженийФормулЧерезСКД(СхемаКомпоновки, ИсходныеВыражения, ВыполнятьПроверкуВыражений = Ложь, Экспорт
Пример вызова
Результат = РаботаСФормулами.ДанныеДляПолученияВыраженийФормулЧерезСКД(СхемаКомпоновки, ИсходныеВыражения, ВыполнятьПроверкуВыражений, );
© 2024, ООО 1С-Софт
Все права защищены. Эта программа и сопроводительные материалы предоставляются
в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0).