Форум на Kuban.ru (http://forums.kuban.ru/)
-   Территория 1С (http://forums.kuban.ru/f1040/)
-   -   Внутренний идентификатор объекта метаданных (http://forums.kuban.ru/f1040/vnutrennij_identifikator_ob-ekta_metadannyh-6801549.html)

USSR 09.05.2015 07:05

Внутренний идентификатор объекта метаданных
 
Коллеги, можно ли как то в 8.2 и 8.3 узнать внутренний идентификатор объекта метаданных - отчета, обработки, журнала, константы...
в 7.7 можно было это сделать с помощью великой 1с++ (метод GetMetaDataId)
Для документов и справочников удалось получить через ЗначениеВстрокуВнутр(...ПустаяСсылка()), а вот для остального добра никак. Должны же они быть )))

VZ 09.05.2015 13:15

ТерзаемыйОбъект.ПолучитьСсылку(Новый УникальныйИдентификатор(СтрокаUUID));

VZ 09.05.2015 13:19

+1 Для 77 можно воспользоваться ЗначениеВСтрокуВнутр(ПустоеЗначение(названиеМетоданных));

VZ 09.05.2015 13:22

И вААААбще: идея получить ID отчета пахнет [em]альтернативным мышлением[/em].

USSR 09.05.2015 15:36

что-то ек выходит у меня каменный цветок )
Для Каждого Обработка Из Метаданные.Обработки Цикл
ИмяОбработки = Обработка.Имя;
СинонимОбработки = Обработка.Синоним;
UID = ......

Грязный Танка 09.05.2015 15:42

Посмотри здесь - [url]http://www.vdgb.ru/tehpodderzhka-1s/faq/kak-poluchit-unikalnyj-identifikator-obekta-guid/[/url]

USSR 09.05.2015 15:56

(5)там про uid объектов базы данных. С ними без проблем, я делал выгрузки, синхронизируя документы и справочники по этим uid. А мне надо uid вида метаданных. Например uid конкретного отчета, константы, журнала

VZ 09.05.2015 18:25

6-USSR > У константы есть UUID. Получаем, как для любого агрегатного объекта.
А вот для отчета Не надо умничать: обращайся через имя.

USSR 09.05.2015 20:03

вот не хочу через имя) у всех есть UID
А как кстати для константы получить его ?

Reaper 10.05.2015 01:13

[quote=USSR;38932678]вот не хочу через имя[/quote]
А придется. Для объектов метаданных, работа с которыми ведется в обход механизмов поставки и поддержки, служебные данные платформой могут быть изменены без объявления войны. Неизменны только свойства метаданных, доступные из объектной модели платформы, к которым имя как раз и относится.

awa15 10.05.2015 01:23

(0) GUID объекта метаданных в 8.x в режиме предприятия ты никак не получишь. С помощью ЗначениеВстрокуВнутр(Справочники.ИмяСправочника.ПустаяСсылка()) ты получаешь GUUD типа Справочники.ИмяСправочника.Ссылка, а не GUUD объекта метаданных. Видимо, тебя устроит любой GUID, идентифицирующий объект метаданных. В этом случае я бы посоветовал использовать GUID'ы типов Менеджер, которые есть почти у всех объектов метаданных, в отличие от типов Ссылка. Если проще, используй ЗначениеВстрокуВнутр(ТипЗнч(Справочники.ИмяСправочника)), ЗначениеВстрокуВнутр(ТипЗнч(Обработки.ИмяОбработки)), ЗначениеВстрокуВнутр(ТипЗнч(Константы.ИмяКонстанты)) и т.д.

USSR 10.05.2015 09:28

(10)Спасибо! по моему то, что надо

USSR 12.05.2015 09:00

Коллеги, вопрос не в тему, но чтобы тему не заводить) А почему разработчики платформы не реализовали подписку на событие вида "ПриОткрытии" форм. В чем тайный смысл ? Это как-то связано с управляемыми формами ?

GariPortman 12.05.2015 10:13

Подписка связанна с объектами конфигурации, а форма способ доступа к объектам.

USSR 12.05.2015 10:29

(13)Это я понимаю. Я не понимаю почему нельзя было сделать ) Функционал платформы бы серьезно расширился. Платформа же все равно регистрирует все события

roma n 12.05.2015 10:50

Подписки могут навешиваться на события менеджера. НАпример на событие [b]ОбработкаПолученияФормы[/b]

Из СП:
....
Если требуется переопределить выбор открываемой формы, необходимо установить в параметре <ВыбраннаяФорма> другое имя формы или объект метаданных формы, которую требуется открыть, и в параметре <СтандартнаяОбработка> установить значение Ложь.

USSR 12.05.2015 19:47

"ПриОткрытии" и подмена формы это как троллейбус и апельсин. Мой вопрос чисто познавательный, почему нельзя было сделать. В 1С++ ксть

Reaper 12.05.2015 22:15

Сил разработчикам не хватает. Последнее, что я слышал - не могут построить систему перехвата событий так, чтобы сохранить корректную работу оптимизатора обмена данными между клиентом и сервером.

Helen1986 13.05.2015 11:22

(16) в нормальных средах есть и ПриОткрытии и ПриСоздании


Текущее время: 21:33. Часовой пояс GMT +3.