Изменение ОБЫЧНОГО объекта на ПРЕДОПРЕДЕЛЕННЫЙ

07.11.15

Разработка - Инструментарий разработчика

Часто требуется использовать в коде конкретные (существующие) элементы справочников, плана видов характеристик и др.
Причем удобнее всего, если бы они вдруг стали предопределенными = ))

Скачать файл

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование По подписке [?] Купить один файл
СделатьОбычныйЭлементПредопределенным
.epf 11,47Kb ver:1.1
294
294 Скачать (1 SM) Купить за 1 850 руб.

Использовать "НайтиПоКоду" уже даже не смешно, особенно когда, например, справочник с длиной кода 0.Wink 

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

Предыстория:

Когда давным давно задавался этим вопросом, что я только не читал на разных форумах!
Например:
1) Создавать новую сущность и все хранить в константах.
2) Создавать предопределенный элемент, копировать все реквизиты, а затем  обработкой "ПоискИЗаменаЗначений" менять обычный на предопределенный, в конечном итоге удаляя первичный элемент.
3) И даже наткнулся на совсем
удивительную ВЕЩЬ, в которую даже не стал вникать = )))

Далее я приведу описание простенькой обработки для работы с предопределенными данными (может, кому понадобится):

1) В конфигураторе у объекта метаданных добавляем нужные Предопределенные элементы:
 

2) Если у объекта метаданных изменить свойство "Обновление предопределенных данных" на "Не обновлять автоматически", то при обновление "Конфигурации БД" НЕ БУДУТ СОЗДАНЫ предопределенные элементы. Изменять это свойство или нет, решать Вам.



3) Запускаем обработку. 

При выборе редактируемой ссылки автоматически в список выбора "Имя предопределенных данных" загружаются все возможные варианты из метаданных этого объекта. Обработка изменяет (если стоит галочка, то в режиме "ОбменДанными.Загрузка = Истина") реквизит "ИмяПредопределенныхДанных" у редактируемого объекта, а в случае, если уже существует другой объект с таким же именем ПД, то оно очищается и объект становится обычным.

П.С. Работает в управляемой и обычной форме, но тестировал в 8.3.7 в режиме совместимости 8.3.6 = ))

предопределенный изменить обычный существующий сделать имеющийся

См. также

Инструментарий разработчика Роли и права Запросы СКД Программист Платформа 1С v8.3 Управляемые формы Запросы Система компоновки данных Конфигурации 1cv8 Платные (руб)

Набор инструментов программиста и специалиста 1С для всех конфигураций на управляемых формах. В состав входят инструменты: Консоль запросов, Консоль СКД, Консоль кода, Редактор объекта, Анализ прав доступа, Метаданные, Поиск ссылок, Сравнение объектов, Все функции, Подписки на события и др. Редактор запросов и кода с раскраской и контекстной подсказкой. Доработанный конструктор запросов тонкого клиента. Продукт хорошо оптимизирован и обладает самым широким функционалом среди всех инструментов, представленных на рынке.

10000 руб.

02.09.2020    157631    857    399    

859

Инструментарий разработчика Чистка данных Свертка базы Инструменты администратора БД Системный администратор Программист Руководитель проекта Платформа 1С v8.3 Конфигурации 1cv8 1С:Управление торговлей 10 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 Россия Платные (руб)

Инструмент представляет собой обработку для проведения свёртки или обрезки баз данных. Работает на ЛЮБЫХ конфигурациях (УТ, БП, ERP и т.д.). Поддерживаются управляемые и обычные формы. Может выполнять свертку сразу нескольких баз данных и выполнять их автоматически без непосредственного участия пользователя.

8400 руб.

20.08.2024    6849    49    22    

61

Инструментарий разработчика Программист Платформа 1С v8.3 Конфигурации 1cv8 Платные (руб)

Инструмент для написания и отладки кода в режиме «1С:Предприятие». Представляет собой консоль кода с возможностью пошаговой отладки, просмотра значений переменных любых типов, использования процедур и функций, просмотра стека вызовов, вычисления произвольных выражений на встроенном языке в контексте точки останова, синтаксического контроля и остановки по ошибке. В консоли используется удобный редактор кода с подсветкой, контекстной подсказкой, возможностью вызова конструкторов запроса и форматной строки.

9360 руб.

17.05.2024    22763    67    43    

115

Пакетная печать Печатные формы Инструментарий разработчика Программист Платформа 1С v8.3 Запросы 1С:Зарплата и кадры бюджетного учреждения 1С:Конвертация данных 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 Платные (руб)

Инструмент, позволяющий абсолютно по-новому взглянуть на процесс разработки печатных форм. Благодаря конструктору можно значительно снизить затраты времени на разработку печатных форм, повысить качество и "прозрачность" разработки, а также навести порядок в многообразии корпоративных печатных форм.

22200 руб.

06.10.2023    15120    35    7    

70

Инструменты администратора БД Инструментарий разработчика Роли и права Программист Платформа 1С v8.3 Конфигурации 1cv8 Россия Платные (руб)

Расширение позволяет без изменения кода конфигурации выполнять проверки при вводе данных, скрывать от пользователя недоступные ему данные, выполнять код в обработчиках. Не изменяет данные конфигурации, легко устанавливается практически на любую конфигурацию на управляемых формах.

10000 руб.

10.11.2023    10176    36    20    

61

Инструментарий разработчика Инструменты администратора БД Системный администратор Программист Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Россия Платные (руб)

Универсальный инструмент программиста для администрирования конфигураций. Сборник наиболее часто используемых обработок под единым интерфейсом.

4800 руб.

14.01.2013    187293    1134    0    

907

Инструментарий разработчика Программист 8.3.14 1С:Конвертация данных Россия Платные (руб)

Расширение для конфигурации “Конвертация данных 3”. Добавляет подсветку синтаксиса, детальную контекстную подсказку, глобальный поиск по коду.

15000 руб.

07.10.2021    17165    6    32    

42

Инструментарий разработчика Программист Платформа 1С v8.3 Платформа 1C v8.2 Платформа 1С v8.1 Конфигурации 1cv8 Платные (руб)

Программист - это человек, непрерывно принимающий решения. Написание кода не является процессом принятия решения - это всего лишь трансляция ваших желаний. Если вас периодически тяготит написание сотен строк кода ради решения задач, то прошу обратить внимание. Данный продукт позволит существенно сократить время на рутинные операции при разработке. За счет библиотечной реализации сокращается объём кода, а его читаемость повышается. К библиотеке прилагается документация API и шаблоны кода для наиболее популярных методов.

4200 руб.

16.04.2021    15421    6    10    

18
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. Xershi 1551 07.11.15 15:54 Сейчас в теме
Думаю такой трюк до 8.3.6 не прокатит.
2. Xershi 1551 07.11.15 15:55 Сейчас в теме
Или тут идет речь, что в базе уже заведен через конфигуратор предопределенный элемент, а вы просто меняете ссылки ненужного элемента на предопределенный?
3. KilloN 59 07.11.15 22:19 Сейчас в теме
(2) Xershi, Да именно))
Я делаю так:
1) Добавляю предопределенные элементы
2) Меняю свойство "Обновление предопределенных данных" на "Не обновлять автоматически", чтобы элементы не создавались при обновлении.
3) Делаю обновление и использую обработку.
4. Xershi 1551 08.11.15 13:13 Сейчас в теме
(3) так а смысл, чтобы уникальность поправить в любой момент после обновления, а не сразу?
6. KilloN 59 08.11.15 13:33 Сейчас в теме
(4) Xershi, Очень часто выясняется, что какой либо элемент необходимо использовать в коде только через продолжительное время.
К тому же ты видел как работает в торговле например план видов характеристик "Дополнительные реквизиты и сведений" - я обалдел, деже заполнив все реквизиты по аналогии там все равно чего то не хватало, потому что в другом справочнике не было добавлено информации о новом элементе. Поэтому даже если я добавляю, абсолютно новый предопределенный элемент, то гораздо проще создать обычный, чтобы в нем все заполнелось как НАДО, а уже потом сделать его предопределенным.))
8. Xershi 1551 08.11.15 15:45 Сейчас в теме
(6) для юзера соглашусь это обработка будет очень полезна. Для программиста я бы сказал просто познавательная штука.
9. KilloN 59 09.11.15 09:30 Сейчас в теме
(8) Xershi, Ты знаешь компании, где юсеры ползают в конфигуратор, кроме как сделать копию?)))
11. Xershi 1551 09.11.15 10:13 Сейчас в теме
(9) назвать не назову, но такие есть и их можно даже на ИС встретить.
13. KilloN 59 09.11.15 11:57 Сейчас в теме
(11) Xershi, Я знал бухгалтера, которая сама конфигурацию исправляла как ей нужно в 7.7. После перехода на 8-ку привычки она не изменила. Несколько часов ошибки после нее исправлял))
5. Xershi 1551 08.11.15 13:22 Сейчас в теме
Хотя посмотрел на 8.3.5 такая штука есть. А вот на 8.2.18 нет.
7. KilloN 59 08.11.15 13:36 Сейчас в теме
(5) Xershi, Я посмотрел, на 8.3.6 в режиме совместимости 8.2 не работает((. Вообще нет такого реквизита "ИмяПредопредленногоЭлемента"
10. avto1c 09.11.15 10:04 Сейчас в теме
Если с обновлением приходит ещё один предопределённый элемент, а предопределённые данные не обновляются автоматически, что тогда?
12. KilloN 59 09.11.15 11:46 Сейчас в теме
(10) avto1c, При обмене нужно поставить не "взять из файла", а объединить с приоритетом из ... Если я выбрал из файла то он не затирает мои предопределенные)))
16. avto1c 10.11.15 10:13 Сейчас в теме
(12) в статье
при обновление "Конфигурации БД" НЕ БУДУТ СОЗДАНЫ предопределенные элементы

Дополни статью, как все таки добавляются предопределённые элементы.
17. KilloN 59 10.11.15 11:58 Сейчас в теме
(16) avto1c, Чем у меня в Торговле не добавляются если свойство "Обновление предопределенных данных" в "Не обновлять автоматически".
А ты где проверял?)
14. webester 26 09.11.15 15:20 Сейчас в теме
Когда давным давно задавался этим вопросом, что я только не читал на разных форумах!

Вот этого не читали http://infostart.ru/public/275145/ ? по моему ответы там вполне исчерпывающие на ваш вопрос.
15. KilloN 59 09.11.15 16:14 Сейчас в теме
(14) webester, Да этого не читал))

Когда я искал похожие публикации, то в поиске точно я точно не вводил "НайтиПоКоду" или "НайтиПоНаименованию", а что то похожее на мое наименование публикации.

После этого удаляем тот Рубль, который стал нам не нужен.

Правда в статье я не нашел ничего про свойство "Обновление предопределенных данных".
18. kuzyara 2084 01.08.19 07:32 Сейчас в теме
Нашел ошибку:
	ИначеЕсли Метаданные.ПланыВидовХарактеристик.Индекс(Мд) > 0 Тогда
заменить на
	ИначеЕсли Метаданные.ПланыВидовХарактеристик.Индекс(Мд) >= 0 Тогда
13KrAs; KilloN; +2 Ответить
19. KilloN 59 19.08.19 10:35 Сейчас в теме
Да как сделал, в 15 году больше не менял обработку)
Оставьте свое сообщение