Как программно определить, что это именно менеджер записи регистра сведений #786520


#0 by SeiOkami
Собственно, как вообще это сделать? Не проверять же так: СтрНачинаетсяС(Строка(ТипЗнч(ЭлементДанных)), "Регистр сведений менеджер записи")
#1 by Lexey_
нет конечно, с типом сравнивай
#2 by SeiOkami
, как ? я уже все варианты перебрал
#3 by Rio_1c
Тип
#4 by Rio_1c
Если ТипЗнч(...) = Тип(...) Тогда
#5 by SeiOkami
Нельзя так делать: Нужно указывать конкретный регистр сведений. Но не перебирать же все регистры сведейни конфигурации
#6 by SeiOkami
пока только такой костыль придумал:
#7 by SeiOkami
Хотя это даже хуже будет, чем СтрНачинаетсяС(Строка(ТипЗнч(ЭлементДанных)), "Регистр сведений менеджер записи")
#8 by SeiOkami
Быть не может, чтобы не было нормального способа
#9 by SeiOkami
up
#10 by SleepyHead
ТипВсеСсылки уже предлагали?
#11 by SeiOkami
народ, вы вообще тему читаете? При чем тут ТипВсеСсылки?
#12 by Mauser
Спроси у пользователя при помощи метода "Вопрос", тем самым переводишь ответвенность на него.
#13 by SleepyHead
Да, действительно, для регистров накопления такого метода нет.
#14 by SleepyHead
Ну перебирай тогда метаданные, трудно тебе что ли?
#15 by SeiOkami
, это идиотизм какой-то. Не верю, что нет нормального метода
#16 by Mauser
Перед "не верю" надо было паузу подержать. Станиславский был бы тобоц недоволен.
#17 by SeiOkami
, я выдержал, просто по тексту это не так заметно
#18 by SeiOkami
Вот, так думаю лучше. Но всё равно глупость какая-то:
#19 by youalex
Метаданные.РегистрыСведений.Содержит(Метаданные.НайтиПоТипу(ТипЗнч(МенеджерЗаписи)))
#20 by SeiOkami
, это не означает, что это именно "РегистрСведенийМенеджерЗаписи". Если в проверяемой переменной будет НаборЗаписей, то результат будет такой же
#21 by Фрэнки
что мешает создать такой менеджер и сравнить типы?
#22 by youalex
#23 by youalex
Или создать ОписаниеТипов, запихнуть в него менеджеры всех РС, и проверять по ОписаниеТипов.СодержитТип
#24 by SeiOkami
, вера в то, что у 1С есть нормальные способы
#25 by Фрэнки
вот я только не понимаю, где бы этот способ был нужен
#26 by Mauser
Он уже создал отдельную тему с критикой БСП =)
#27 by SleepyHead
Ты уже больше времени потратил на поиск "нормального способа".
#28 by SeiOkami
, и правильно. Чем лучше будет написан код, тем лучше будет работать ПО. А костыль всегда можно вставить
#29 by h-sp
потому что по-нормальному делать через наборы записей. Менеджер записи - это какой-то обрубок, в общем - дерьмо.
#30 by Лефмихалыч
Возврат ЭтоРегистрСведений и не ЕстьДопсвойства; КонецФункции перацкий хак, но работать будет.
#31 by RomanYS
фигня какая-то Даже если у менеджера РегистрыСведений есть свойство ТипВсеСсылки (в чём я сильно сомневаюсь), то кроме набора и менеджера записи есть ещё просто запись, регистрсведенийсписок и ключ записи. И всех нет дополнительных свойств.
#32 by Лефмихалыч
ну, замени ТипВсеСсылки на попытка   РегистрыСведений[ОбъектДанных.Метаданные.Имя] КонецПопытки делов-то. Я концепцию просто показал.
#33 by youalex
попытка , имхо, - зло там где можно обойтись без неё
#34 by Матиус-IV
1С вообще - глупость. Нормальные програмеры пишут на С++, на худой конец Джава. Крутые на ассемблере. Не опускайся, бро.
#35 by Любопытная
А зачем?
#36 by Лефмихалыч
у тебя попыткофобия
#37 by youalex
Да) Но это лучше чем попыткофилия. Потому что - последнее - это прогрессирующая болезнь (мне приходилось иметь отношения с четвертым уровнем попытковложенности, причем без сообщений об ошибках - нет ошибки нет проблемы)
#38 by Torquader
Иногда пользователю лучше не видеть, что что-то пошло не так, особенно, если программа потом это что-то сама исправит.
#39 by Mauser
И причем здесь попытка? Не стоите выдавать свою лень и некомпетентность за "заботу о пользователе"
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С