Не отображается элемент формы
1С программа которая есть абсолютно в каждой организации. Как и все в нашем мире она не совершенна. Типовые конфигурации не всегда отвечают всем требованиям предприятий. Поэтому очень часто их дорабатывают дописывают сторонние программисты. Вот после таких доработок можно столкнуться с проблемой. Когда на форме не видно какого либо элемента. Давайте расскажу вам как можно исправить данную ситуацию и сделать так чтобы все элементы отображались.
И так что делать если у пользователей не отображается какой либо элемент на форме. Для начала нужно войти в 1С под администратором и если у него все ОК, проверяем настройки видимости.
На форме не видно элемент
Для примера возьму один самописный документ. Пользователь открывает его и не видит поле «Подразделение».
Открываем конфигуратор, ищем этот документ, открываем его форму и кликаем на элементе который не отображается ПКМ и выбираем «Свойства».
В окне свойств ищем пункт «Пользовательская видимость» открываем. В настройка видимость отмечаем пункт «Видимость».
Закрываем сохраняем и обновляем конфигурацию. Обязательно нужно перезайтив в 1С чтобы увидеть изменения.
Нет нужного реквизита на форме в режиме конфигуратора
Из табличной части документа открывается форма обработки РаботаСФайлами. Как то через справочник.
В режиме конфигуратора, эта форма такая http://joxi.ru/LmGbQ18Cwav7Mr
В режиме предприятия форма такая http://joxi.ru/E2p654Vc73wR9r
Я хочу открыть эту форму с установленным флагом. Но не пойму от куда мне получить этот реквизит расширение.
(4) Жесть 3 года прошло.
Покажи строчку кода откуда эта форма открывается. Раз ты её нашел.
Вот первоначальное открытие.
РаботаСФайламиСлужебныйВызовСервера.ОпределитьФормуПрисоединенногоФайла(
открыть эту форму в режиме предприятия не получается, только из документа, табличной части
есть старая копия конфигурации, там открывается такая форма, без галки http://joxi.ru/KAgN94ktE8opo2
от куда на форме взялось поле и галка рядом с ним.
Нужно их заполнять и обрабатывать программно при открытии.
В режиме предприятия в ещё, настройки, настроить список, обнаружил это
Как это задавать и обрабатывать программно?
(49) А по или как задать?
Или как их менять программно?
Уву я понимаю в табличную часть, список выводится все вот этим запросом. Но где ему задаются эти отборы программно, что бы делать их самому программно при открытии?
Форма это та, и все отборы создаются в режиме предприятия. В конфигураторе это не найти.
А как программно тут (50) это задать?
(53) Сейчас посмотрю. Не знаю что такое для ленивых.
Подскажите пожалуйста кодом, как создать имитацию вот этого http://joxi.ru/nAyO34BugEOzDm
(63) Да. Потому что у этой формы выбора файла, в режиме предприятия, по Ещё->Настройки->Настроить список
задан пользовательский отбор.
(64+) Он и выводится в режиме предприятия. И этого нет в режиме конфигуратора.
В режиме конфигуратора там есть то что сам динамический список не тот что задан у списка.
А формируется в коде.
Теперь у меня задача, там ему и задать программный отбор, расширение в список необходимых расширений. Как я понимаю.
Если ты ничего не слышал про расширения конфигурации, то нажми на https://google.gik-team.com/?q=1с+расширения+конфигурации
Добавление расширения, по сравнению с изменением конфигурации, хорош тем, что конфигурацию не обязательно снимать с замка, и, в теории обновления легче
(66) Спасибо, это все понятно как правильно сделать отбор программно?
[ Вопрос дня ] Почему реквизит объекта с типом ХранилищеЗначения нельзя отобразить на управляемой форме?
Доброго дня, коллеги!
Работа с реквизитом типа ХранилищеЗначения имеет определенные ограничения. Как известно такой реквизит нельзя отобразить на управляемой форме ни в основной конфигурации, ни в расширении. Тренер предлагает воспользоваться базовым приемом разработки через временное хранилище.
Вопрос
Ответ
Добрый день! Вы имеете в виду, что реквизит с типом ХранилищеЗначения не отображается на форме? Тогда это правильно, аналогичное поведение будет и в основной конфигурации без использования расширения. Платформа в конструкторе формы показывает, что такой реквизит нельзя отобразить на форме:
Дело в том, что в таком реквизите могут храниться данные огромного размера, а управляемая форма существует и на сервере, и на клиенте. Данные большого размера из соображений производительности нет смысла передавать при клиент-серверном взаимодействии. Поэтому нужно искать обходные пути. Например, можно воспользоваться временным хранилищем. Такой прием используется при отображении на форме картинки, хранящейся в базе.
Комментарий слушателя
Система выдает ошибку, что реквизит не найден.
Ответ
Обратите внимание, что в управляемой форме реквизит Объект имеет тип ДанныеФормыСтруктура, а не СправочникОбъект. Поэтому в нем не будет вложенного реквизита с типом ХранилищеЗначения. Именно об этом сообщает платформа:
Значит, чтобы добраться до хранилища значения, нужно получить настоящий объект от такого “урезанного” типа данных: