Имя: Пароль:
1C
1С v8
УТ11.4 ПВХ ДополнительныеРеквизитыИСведения
0 ildary
 
17.02.18
13:03
Уважаемые специалисты, подскажите пожалуйста:
В УТ11.4 у ПВХ ДополнительныеРеквизитыИСведения появилось дополнительное поле Имя. Как написано при создании - для разработчиков, для программного обращения. Но я не совсем понял, можно ли получать элемент ПВХ через этот реквизит, наподобие
Ссылка = ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения.НайтиПоНаименованию("Тара (Товар)");

Я знаю, что по наименованию искать не рекомендуется, поэтому ищу правильную альтернативу.
1 Cyberhawk
 
17.02.18
13:04
"появилось дополнительное поле Имя" // Покажи на картинке
2 ildary
 
17.02.18
13:20
Вот скриншот: https://imgur.com/a/vfCHu

В УТ11.3 в этом месте ничего не было.
3 Cyberhawk
 
17.02.18
13:33
Покажи еще в конфигураторе. Но уже и так ясно, что раз его могут поменять, то и ориентироваться на него не стоит. Видимо это сделали для каких-нибудь отчетов в связке с экспортным методом общего модуля, который по этому имени быстренько и возвращает из кэша
4 ildary
 
17.02.18
13:43
(3) это поле на форме ссылается на реквизит Имя у
ДополнительныеРеквизитыИСведения, тип данных - строка 100, не индексируется, подсказка у реквизита: Требуется для программного обращения к дополнительным реквизитам и сведениям. Аналог имени обычного реквизита.
5 ildary
 
17.02.18
13:45
(3) они его не меняют, а автозаполняют, если пользователь при создании специально не указал Имя. Заполняют примерно так: Тара86789kjdsgf74. И если говорить о переименовании - то наименование как раз может поменяться, например у заказов клиента реквизиты менялись с "НаимРекв (ЗаказКлиента)" на "НаимРекв (Список заказов)" - при переходе с 11.1 на 11.2 - пришлось побегать по своим обработкам и переименовывать.
6 ildary
 
17.02.18
13:49
(3) вынужден полностью согласиться с Вами - в ИТС по поводу этого поля написано "В разделе Для разработчиков поле Имя заполняется программой автоматически. Не рекомендуется самостоятельно заполнять это поле".

Тогда остается финальный вопрос - значит старый добрый НайтиПоНаименованию() для получения конкретного элемента ПВХ - живее всех живых?
7 Cyberhawk
 
17.02.18
13:52
"пришлось побегать по своим обработкам и переименовывать"
"старый добрый НайтиПоНаименованию() для получения конкретного элемента ПВХ" // Кончай *овнокодить уже
8 ildary
 
17.02.18
14:15
(7) А какие способы есть не *овнокодить, кроме как сваять регистр сведений и накидать туда ссылок на элементы ПВХ?
9 Cyberhawk
 
17.02.18
18:47
(8) Ну отсюда не видно, где тебе нужна ссылка на элемент ПВХ и как ее хочешь использовать. Но как вариант - поиск по виду актива и варианта учета по сериям (в таком разрере они вроде и создаются в типовых).
10 Cyberhawk
 
17.02.18
18:47
Либо брать из номенклатуры, если она у тебя фигурирует в процессе обработки
11 novichok79
 
17.02.18
19:11
(0) всего-лишь надо было глобальный поиск по конфе сделать, а именно в модуле УправлениеСвойствами

// Возвращает значения дополнительных свойств объектов.
//
// Параметры:
//  ОбъектыСоСвойствами  - Массив      - объекты, для которых нужно получить значения дополнительных свойств.
//                       - ЛюбаяСсылка - ссылка на объект, например, СправочникСсылка.Номенклатура,
//                                       ДокументСсылка.ЗаказПокупателя, ...
//  ПолучатьДопРеквизиты - Булево - в результат включать дополнительные реквизиты. По умолчанию Истина.
//  ПолучатьДопСведения  - Булево - в результат включать дополнительные сведения. По умолчанию Истина.
//  Свойства             - Массив - свойства:
//                          * ПланВидовХарактеристикСсылка.ДополнительныеРеквизитыИСведения - значения
//                            которых следует получить.
//                          * Строка - уникальное имя дополнительного свойства.
//                       - Неопределено - по умолчанию, получить значения всех свойств владельца.
//
// Возвращаемое значение:
//  ТаблицаЗначений - колонки:
//    * Свойство - ПланВидовХарактеристикСсылка.ДополнительныеРеквизитыИСведения - свойство владельца.
//    * Значение - Произвольный - значения любого типа из описания типов свойства объекта метаданных:
//                  "Метаданные.ПланВидовХарактеристик.ДополнительныеРеквизитыИСведения.Тип".
//    * ВладелецСвойств - ЛюбаяСсылка - ссылка на объект.
//

Функция ЗначенияСвойств(
ОбъектыСоСвойствами, ПолучатьДопРеквизиты = Истина, ПолучатьДопСведения = Истина, Свойства = Неопределено)
12 novichok79
 
17.02.18
19:12
(0) и да, свойство "Имя" появилось не в УТ 11.4, а в БСП 2.4.4
13 sdf
 
17.02.18
20:34
Супер!
а я уже хотел что-то подобное делать: надоело хардкодить по представлению допреквизитов, чтобы потом на них обработчики вешать на форме в расширении.

правда 1с ДОК не скоро на новую БСП переведут...
14 Defender aka LINN
 
17.02.18
22:45
(6) Вам боженька НайтиПоРеквизиту запретил юзать?
Кроме того, в стандартной функции получения знаений реквизитов вместо свойства (ссылки на ПВХ) можно передавать имя
15 ildary
 
18.02.18
02:24
(11) за подсказку спасибо, но мне ссылка на ПВХ нужна не только для существующих свойств объекта (что дает Ваш код), но и для заполнения - я перетаскиваю нестандартные поля из ТиС и мне при их заполнении как-то надо установить поле Свойство.

(14) Нет, не боженька, а коллега в (7) вежливо упрекает в *овнокоде. Я и сам не очень люблю поиск по наименованию по причине в (5) - 1С любит менять на ходу названия.
16 ildary
 
18.02.18
02:29
(12) Технически Вы правы, а практически никто не работает в конфигурациях БСП, у всех какие-то БП, УТ, ЗУП-ы.
17 Defender aka LINN
 
18.02.18
08:56
(16) Спасибо, посмеялся.
(15) Это поиск по специально обученному реквизиту
18 toypaul
 
гуру
18.02.18
09:09
"нестандартные поля из ТиС и мне при их заполнении как-то надо установить поле Свойство."

событие поиска в КД по этому полю (Имя). маловероятно что оно определится как имя предопределенного (каковым оно и является, но только для реквизитов созданных в предприятии). хотя можно доработать процедуру загрузки, чтобы искало не только предопределенные, но и по этому реквизиту.
19 ildary
 
18.02.18
09:32
(18) прошу сильно не смеяться - через КД у меня грузятся стандартные поля, а нестандартные я выгружаю/загружаю по старинке - txt, xml - времени на полное освоение КД нет.