Продолжаю небольшую серию статей про открытие обычных и управляемых форм различными способами, предыдущая статья была посвящена реализации подбора в управляемом приложении, а сегодня на очереди открытие формы с заполнением.
Открытие формы с заполнением (передача в параметре открываемой формы и реализация метода «ОбработкаЗаполнения()») выполняется одинаково в управляемом и обычном приложении (проверял на платформе 8.3.5.1146 — управляемое приложение и на платформе 8.2.18.102 — обычное приложение).
В том месте кода, откуда нужно сделать открытие и заполнение формы нужно добавить приблизительно такой код:
ПараметрыЗаполнения = Новый Структура;
ПараметрыЗаполнения.Вставить(«ТестРеквизит», «Тест строка»);
ПараметрыФормы = Новый Структура(«ЗначенияЗаполнения», ПараметрыЗаполнения);
фНовыйДокумент = ПолучитьФорму(«Документ.ТестДокумент.Форма.ФормаДокумента», ПараметрыФормы, ЭтаФорма);
фНовыйДокумент.Открыть();
В структуру «ПараметрыЗаполнения» записываются все нужные для заполнения данные, затем эта структура вставляется в другую структуру под названием «ПараметрыФормы».
Как сделать автозапуск формы при открытии базы Access (2 ПРОСТЫХ способа)
Причем ключ, под которым структура «ПараметрыЗаполнения» вставляется в структуру «ПараметрыФормы», должен называться именно «ЗначенияЗаполнения» иначе, ничего не работать не будет.
Далее нужно реализовать событие модуля формы заполняемого объекта — «ОбработкаЗаполнения()». Я для этого использую следующую конструкцию, которая, на мой взгляд, изящно выглядит и позволяет избежать всех возможных ошибок (поправьте, если я ошибаюсь):
Процедура ОбработкаЗаполнения(ДанныеЗаполнения, СтандартнаяОбработка)
Если ТипЗнч(ДанныеЗаполнения) = Тип(«Структура») Тогда
ДанныеЗаполнения.Свойство(«ТестРеквизит», ТестРеквизит);
КонецПроцедуры
Напомню, что метод структуры «Свойство()» проверяет наличие в структуре элементы с именем, указанным в первом параметре и записывает найденное значение во второй параметр — в данном случае это реквизит заполняемого объекта (если элемент с указанным именем в структуре не найден, то во второй параметр записывается «Неопределено»).
На этом все, надеюсь данная статья Вам помогла.
Если Вы нашли ошибку или неточность, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.
Оценка статьи:
(оценок: 22, средняя оценка: 4,18 из 5)
Как программно открыть форму с отбором?
Источник: 1c-programmer-blog.ru
1С 8.x : Как сделать чтобы при открытии программы сразу открывался справочник, список документов?
17 правил для составления оптимального ЗАПРОСа к данным базы 1С 50
Для формирования и выполнения запросов к таблицам базы данных в платформе 1С используется специальный объект языка программирования Запрос . Создается этот объект вызовом конструкции Новый Запрос . Запрос удобно использовать, когда требуется получ Cообщение: «Не удалось удалить чеки ККМ!» 2
Пользователь с правами Администратор ККМ проводит Закрытие кассовой смены (Z). Выходит сообщение: » Не удалось удалить чеки ККМ!» ФР печатает Z -отчет, но Отчет о рознчничных продажах не формируется. Необходимо дать роли Администратор ККМ прав Excel файл как Внешний источник данных 16
Подключимся и загрузим из файла Excel данные в таблицу значений 1С. Сделать теперь это очень просто. 1. В конфигурации добавляет новый объект метаданных типа » Внешние источники данных» и назовем его просто » Excel» . https://helpf.pro/uploads/img Google maps : вывод точек на карту и режим панорамы 8
В отличие от яндекс карт в GMaps можно использовать панорамы — за что им большой плюс! Надеюсь в яндексе прочитают этот пост и тоже когда-нибудь это сделают! Для клиента нужно было сделать вывод объектов на карту С возможностью просмотра панора Битая ссылка, , Уникальный Идентификатор, GUID 74
Когда кто-то удаляет данные из базы без проверки ссылок на эти объекты, то везде где этот объект использовался появляется сообщение вида: Объект не найден (84:bf5600145e3710ab11dda4c605dbe824) . https://helpf.pro/uploads/img/_1-46z7I4U7Ww.png В Посмотреть все результаты поиска похожих
Еще в этой же категории
Полезные возможности редактора кода 1С 30
Мне частенько приходится взаимодействовать с 1С-разработчиками, и во время совместной работы над проектами замечаю, что далеко не все из них хорошо знают свой главный инструмент – «Конфигуратор». Причем это не относится к степени крутости девелопера Работа с буфером обмена средствами 1С 20
Копировать из 1С в буфер обмена( без ВК): ЭлементыФормы.Добавить(Тип(» ПолеHTMLДокумента» ), » Поле_HTML_Документа_acb123″ , Ложь); Окно = ЭлементыФормы.Поле_HTML_Документа_acb123.Документ.ParentWindow; Окно.ClipboardData.SetData(» Text» , Текст Структура и название таблиц использыемых для хранения данных в БД 1С 8.х 17
Данные, которые определяют логику функционирования системы на базе 1С:Предприятия, относятся к информационной базе. Хранение информационной базы осуществляется в базе данных с виде набора таблиц, для чего 1С:Предприятие 8.1 может использовать одну из Программно получить список активных пользователей 13
Процедура ПолучениеСпискаАктивныхПользователей() ИтогСписокСоединений.Очистить(); СоединенияИнформационнойБазы = ПолучитьСоединенияИнформационнойБазы(); Для Каждого Соединение Из СоединенияИнформационнойБазы Цикл ТЗ=ИтогСпи Как получить ссылку на объект из навигационной ссылки? 12
Процедура ПолучитьСсылкуИзНавигационной(НС) ПерваяТочка = Найти(НС, » e1cib/data/» ); ВтораяТочка = Найти(НС, » ?ref icon-exclamation-sign»> Посмотреть все в категории Полезные, Универсальные Функции
Источник: helpf.pro
Функция ОткрытьФорму()
Функция ОткрытьФорму() имеет несколько вариантов синтаксиса:
Вариант синтаксиса 1: По имени
Функция ОткрытьФорму() имеет следующий синтаксис:
Форма ОткрытьФорму(ИмяФормы, [Параметры], [Владелец], [Уникальность], [Окно], [НавигационнаяСсылка], [ОповещениеОЗакрытии], [РежимОткрытияОкна])
А также альтернативный англоязычный синтаксис:
Form OpenForm(Name, [Params], [Owner], [Unique], [Window], [NavLink], [ClosingNotification], [OpeningMode])
Параметры
Описание параметров процедуры ОткрытьФорму() :
- ФормаОбъекта (ObjectForm) — форма объекта по умолчанию;
- ФормаГруппы (FolderForm) — форма группы по умолчанию;
- ФормаЗаписи (RecordForm) — форма записи регистра по умолчанию;
- ФормаСписка (ListForm) — форма списка по умолчанию;
- ФормаВыбора (ChoiceForm) — форма выбора по умолчанию;
- ФормаВыбораГруппы (FolderChoiceForm) — форма выбора группы по умолчанию;
- ФормаКонстант (ConstantsForm) — форма констант по умолчанию;
- Форма (Form) — форма отчета и обработки по умолчанию;
- ФормаНастроек (SettingsForm) — форма настроек отчета по умолчанию;
- ФормаЗагрузки (LoadForm) — форма загрузки настроек;
- ФормаСохранения (SaveForm) — форма сохранения настроек;
- БлокироватьВеcьИнтерфейс — Блокировать весь интерфейс. При этом блокируется работа всех остальных открытых окон приложения, включая главное окно
- БлокироватьОкноВладельца — Блокировать только форму-владельца, переданного в параметре ВладелецФормы . Новое окно открывается поверх окна-владельца
- Независимый — Независимое окно (обычный режим открытия формы). В интерфейсе «В отдельных окнах» открывается отдельное окно, а в интерфейсах «В закладках» или «Такси» форма открывается в рабочей области основного окна
Возвращаемое значение
Описание варианта 1
Функция ОткрытьФорму() открывает форму по имени. Перед открытием осуществляется поиск ранее открытой формы того же типа и совпадающими параметрами: значениям ключевых параметров формы, владельца формы, пользовательского ключа уникальности. Для форм ФормаОбъекта , ФормаЗаписи , ФормаНабораЗаписей , ФормаКонстант при поиске ранее открытых форм, владелец не учитывается.
Вариант синтаксиса 2: По форме
Функция ОткрытьФорму() имеет следующий синтаксис:
Форма ОткрытьФорму(Форма, [Окно])
А также альтернативный англоязычный синтаксис:
Form OpenForm(Form, [Window])
Параметры
Описание параметров процедуры ОткрытьФорму() :
Возвращаемое значение
Описание варианта 2
Функция ОткрытьФорму() открывает форму, полученную ранее функциями ОткрытьФорму() или ПолучитьФорму()
Доступность
Тонкий клиент, веб-клиент, мобильный клиент, толстый клиент, мобильное приложение(клиент).
Пример использования
Пример кода с использованием процедуры ОткрытьФорму() :
ОткрытьФорму(«Справочник.ФизическиеЛица.Форма.ФормаПродавца»);
Источник: www.about1c.ru