|
Есть ли реквизит у объекта | ☑ | ||
---|---|---|---|---|
0
Мандалай
15.05.18
✎
15:12
|
Добрый день.
Как проверить есть ли у объекта реквизит? Объектом может быть как объект конфигурации (документ, справочник), так и структура и реквизит формы или строка ТЧ. |
|||
1
RomanYS
15.05.18
✎
15:13
|
(0) или Попытка, или анализ типов и дальше либо Свойство() для структуры метаданные для всего остального
|
|||
2
dezss
15.05.18
✎
15:13
|
Если хочется универсальности, то либо городить кучу условий, либо попытка-исключение)
|
|||
3
Мандалай
15.05.18
✎
15:14
|
В БСП ничего похожего нет?
|
|||
4
mehfk
15.05.18
✎
15:17
|
||||
5
drei
15.05.18
✎
15:18
|
(0) Создать структуру с именем реквизита и значением - уникальным идентификатором. Заполнить значение свойств и посмотреть, что изменилось в структуре.
Попытошники, бл. |
|||
6
Мандалай
15.05.18
✎
15:21
|
(4)Не то, там объект метаданных. Прежде чем гуглом кидаться надо читать, что в результате поиска.
(5)Идея хорошая, но много букв. Я рассчитывал на что-то готовое. |
|||
9
GANR
15.05.18
✎
15:27
|
Объект.Метаданные().Реквизиты.Найти(ТвойРеквизит)
|
|||
17
GANR
15.05.18
✎
15:46
|
(11) а вот так?
Функция НаличиеСвойстваУОбъекта(Объект, ИмяСвойства) ИдентификаторОтсутствия = Новый УникальныйИдентификатор; Структура = новый Структура(ИмяСвойства, ИдентификаторОтсутствия); ЗаполнитьЗначенияСвойств(Структура, Объект); Возврат Структура[ИмяСвойства] <> ИдентификаторОтсутствия конецФункции |
|||
18
GANR
15.05.18
✎
15:48
|
Ну еще через Попытку/Исключение можно
|
|||
19
Мандалай
15.05.18
✎
16:06
|
(17) Ну да, это как раз то, что я хотел, но думал что уже есть готовое решение в БСП или какой-нибудь метод хитрый.
Спасибо. И без всяких там гуглов. |
|||
20
Базис
naïve
15.05.18
✎
16:11
|
(19) Будь как бобр, сравни скорость обоих вариантов и поведай нам.
|
|||
21
GANR
15.05.18
✎
16:31
|
(19) В БСП не видел - токо через Попытка/Исключение.
|
|||
22
1sanekmaloi1
15.05.18
✎
16:41
|
(19)Это и есть готовое решение из типовых конф, всякие УТ ЕРП и т.д.
|
|||
23
Мандалай
15.05.18
✎
16:55
|
(22)Поиск по конфигурации не дал результатов. ЕРП 2.2.
|
|||
24
Адинэснег
15.05.18
✎
16:58
|
||||
25
Buster007
15.05.18
✎
17:00
|
а если ИмяСвойства будет реквизит с типом данныеформыколлекция, то что будет?
|
|||
26
AlvlSpb
15.05.18
✎
17:02
|
(22) Не совсем верно. Для ТЧ в типовых есть функция в общем модуле (например для УТ):
ОбщегоНазначенияУТ.ЕстьРеквизитТабЧастиОбъекта(ИмяРеквизита, МетаданныеОбъекта, ИмяТабЧасти) |
|||
27
AlvlSpb
15.05.18
✎
17:05
|
(26) + В других это общ модуль ОбщегоНазначения и функция может называться ЕстьРеквизитТабЧастиДокумента. Возвращает Истину или Ложь проверки наличия конкретного реквизита ТЧ
|
|||
28
Михаил Козлов
15.05.18
✎
17:15
|
(26)(27) Это касается только метаданных.
|
|||
29
1sanekmaloi1
15.05.18
✎
17:17
|
(23)А если искать функцию ЕстьРеквизитОбъекта
|
|||
30
AlvlSpb
15.05.18
✎
17:20
|
(28) Какая разница?! Задача определить наличие или отсутствие реквизита ТЧ. А как это делается вторично
|
|||
31
AlvlSpb
15.05.18
✎
17:22
|
(29) ТОже есть Для УТ
ОбщегоНазначенияУТКлиентСервер.ЕстьРеквизитОбъекта(Объект, ИмяРеквизита) Привел как пример, что до нас все уже изобрели и нет смысла выдумывать велосипед |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |