VALUE() в заявка

Предварително дефинираните стойности на конфигурационни обекти са чудесен начин за попълване на общи стойности, а в счетоводните конфигурации в сметкоплана това е незаменимо, тъй като наборът от сметки е строго регламентиран.
Как да работим с предварително зададени стойности?
В кода на модулите такива елементи са достъпни чрез мениджъра на обекти, например:
Връзка = Сметкопланове. Самоподдържащ се. Продукти ;
В езика за заявки това се прави по подобен начин, но с помощта на функцията за заявки VALUE(). Функцията за стойност е предназначена да получи връзка към предварително дефинирани стойности на справочници, изброявания, диаграми на характерни типове, сметкоплани, диаграми на типове изчисления, точки на маршрута на бизнес процеси, към системни изброявания.
[qu_note note_color="#fdc8b2"]В този случай името на типа обект е посочено в заявката в единствено число.[/qu_note]
Примери за използване на VALUE():
Връзка към наръчника:
За да проверите за празна референтна стойност:
Указател Контрагенти AS Контрагенти
За получаване на изброявания:
Връзка Собственик AS Изпълнител
Указател Договори на контрагенти AS Договор
ИЛИ Agreement.AgreementType = VALUE (Enumeration.Types ofAgreementsofCounterparties.EmptyReference)
План на типове характеристики:
Сметка в сметкоплан:
ИЗБЕРЕТЕ СТОЙНОСТ (Сметкоплан. Самоподдържащ се. Стоки) КАТО Фактура за стоки
Системни изброявания:
ИЗБЕРЕТЕ VALUE(AccumulationMovementType.Expense) AS Expense, VALUE(AccumulationMovementType.Income) AS Income, VALUE(AccountingMovementType.Debit) AS Debit, VALUE(AccountingMovementType.Credit) AS Credit, VALUE(AccountType. Active) AS Active, VALUE(AccountType.Passive) AS Passive, VALUE(AccountType.ActivePassive) AS ActivePassive
Аналог на функцията ValueFilled() в заявката
- Няма изрична функция за попълване, но е възможнода проверите за несъответствие, например:
WHERE NOT MainContract на контрагента = VALUE(Directory.Contracts of the Counterparty.EmptyReference)
- Проверява се дали не е в списъка:
WHERE NOT Основен договор на контрагента IN (VALUE(Catalog.Contracts of the Counterparty.EmptyReference), UNDEFINED, NULL,"")
Тоест, ако стойността не е празна или не е включена в списъка с празни, тя може да се счита за попълнена.
Грешки при използване на VALUE()
Ако синтаксисът на функционален параметър е неправилен, възниква грешка „Невалидни параметри“.
- посочване в множествено число (например „Референции“ вместо „Референции“)
- невалидно предварително дефинирано име или липса на такова
Не е разрешено преминаване към параметър VALUE по този начин:
Ще се появи грешката „Очакван параметър“:
Не е необходимо да указвате параметъра на функцията в кавички: това ще доведе до грешката „Очаквано име“
Рекламата е изкуството да превръщаш полуистините в пълни лъжи.