Работа с формулами
Подсистема для редактирования формул.
Подсистема включает в себя:
общие модули
РаботаСФормуламиКлиент
РаботаСФормуламиКлиентСервер
РаботаСФормуламиСлужебныйВызовСервера
перечисление “СпособыРасчетаПоказателяФормулы”
обработку ”РаботаСФормулами”
Способ использования см. в документе “ТестовыйДокументРаботаСФормулами”
В общем случае, в объекте необходимо будет вставить табличную часть “ФормулыРасчета” (имя не принципиально), со следующими колонками:
Имя колонки | Тип значения | Описание |
---|---|---|
Идентификатор | Строка 50 | Уникальный идентификатор формулы |
Колонка | Строка 100 | Имя колонки. Используется, если таблица не отображается напрямую на форме, а используется как хранилище для множества колонок одной табличной части. |
Сумма | Число 15.2 | Используется для хранения результата расчета формулы. В случае если способ расчета = “Ручной ввод” тогда равно реквизиту РучноеЗначение |
ИмяПоказателя | Строка 50 | Имя показателя для использования в других формулах |
НеОкруглять | Булево | Признак отказа от округления в процессе расчета |
НеОтрицательное | Булево | Признак что результат расчета не может быть меньше 0 |
ОписаниеПоказателя | Строка 150 | Описание показателя для подсказки в форме настройки формулы. Необходимо, если указано ИмяПоказателя |
Представление | Строка 300 | Представление значения |
РасчетПредставление | Строка 300 | Представление методики расчета.
|
РучноеЗначение | Число 15.3 | Ручное значение, если способ расчета = “Ручной ввод” |
СпособРасчета | ПеречислениеСсылка СпособыРасчетаПоказателяФормулы | Способ расчета значения формулы |
Формула | Строка 0 | Текст формулы. Все допустимые операторы перечислены в ОМ “РаботаСФормуламиКлиентСервер”
|
ЭтоПоказатель | Булево | Признак возможности использования результата расчета в качестве показателя для других формул |
ТочностьОкругления | Число 2 | Точность округления значения. |
Предопределенный | Булево | Признак, что данная формула является предопределенной |
Проверка уникальности выполняется по значению Идентификатор + Колонка. То есть можно делать как плоскую таблицу, где каждая строка = строке ТЧ “ФормулыРасчета”. Так и другую таблицу, где идентификатор будет один на строку, а колонок будет несколько. При этом хранение выполняется в указанной выше таблице, а на форме лишь отображаются результаты расчета формулы.