Перечитать в 1с что это

Обновлено: 04.07.2024

Есть форма. В верхней ее части имеется стандартная панель (там где "провести", "отмена проведения"ии т.д. и "Перечитать данные объекта").
Меня интересует эта самая процедура "Перечитать данные объекта", как ее вызвать программно. Действие стандартное и не цепляется ни к какой процедуре. добработчик "ОбновлениеОтображения()" не прокатывает (не то, что нужно)

Обновляет данные, представленные в форме.

Толстый клиент.
Пример:

(1) просто обновить не прокатывает. вызываетс обработчик - "ОбновлениеОтображения()", при этом данные в ТЧ не обновляются. А сли нажать на форме "Перечитать данные объекта" - данные обновляются.
(2) не прокатило. ТАким образом обновляются данные объекта (т.е. переменной которая имеет его тип). А мне нужно чтобы форма обновилась.
(5) ну намекни нам, чем отличается "перечитать данные объекта" и "обновляются данные объекта"?

(6) если бы знал - не создавал эту ветку.

Но кажется уже разобрался в чем косяк.

не, нифига не получается.

Смотри. Имеется документ. Из него открываю обработку, указываю форму дока как владелец формы обработки. В обработки произвожу заполнение Таб части документа и записываю сам документ из обработки. После этого открываю этот самый документ (во время всех этих действий форма была не закрыта, а свернута на панели) и там отображаются старые данные табличной части. нажимаю кнопку "Перечитать данные объекта" и только тогда в форме появляются актуальные данные.

Понятно, что это вызвано тем, что я записываю док из обработки и у меня на форме получаются старые данные. но как сделать это самые обновление данных на форме ПРОГРАММНО. чтобы постоянно не нажимать кнопку "Перечитать данные объекта" .

Вот в чем косяк :(

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

Вот так попробуй

(12) оповещение вызывается когда вызвал. а вот ловля этого оповещения только если ктото до этого вызвал.

(13) Нашел в типовых - сейчас попробую.

(14) "оповещение вызывается когда вызвал" - эт понятно
"а вот ловля этого оповещения только если ктото до этого вызвал" - эта част ьфразы осталась ЗА ГРАНЬЮ ПОНИМАНИЯ.

(16) по СП не совсем пойму как подключить обработчик оповещения. Чтобы потом можно было через "Оповестить("трохтибидох_обновиться", , ЭтаФорма)" сработать
(17) ниче не надо.
у формы документа, которая сворачивается, подключи процедуру к форму "ОбработкаОповещения" и зайдет само.
(18) то что написано в СП про подключить - чтобы вызывать общую какую либо процедуру для любых оповещений, если таковое надо..
т.е. при вызове Оповестить - отладчик будет скакать по всем формам где заведена обработка оповещения И в процедуру подключенную, если есть.
(10) нелогично. Если обработка вызывается из формы дока, она должна чисто заполнять док на форме (не записывая). Другое дело если обработка вызывается независимо и в ней указывается один либо перечень доков - тогда она сама должна записывать.
(21) ну она и записывает. а вот открытый документ то надо перечитать, чтобы там данные обновились

(22) сделал оповещение, все срабатывает как ножно, но данные не обновляются в форме открытого дока :(

Рассмотрим ее действие на примере. Пусть с информационной базой работают два пользователя, Пользователь1 (слева) и Пользователь2 (справа). Оба они открыли форму редактирования валюты EUR:

Пользователь1 попытался также отредактировать полное наименование валюты, однако сделать этого не смог:

Пользователь2 закрыл форму редактирования валюты EUR. Пользователь1 опять пытается пытается изменить полное наименование валюты EUR, однако снова не может этого сделать.

После того, как Пользователь1 перечитает данные объекта, он увидит изменения, сделанные Пользователем2 и ему станет доступно редактирование полного наименования валюты:


Похожие FAQ

Еще в этой же категории

Программное создание таблицы значений с условным оформлением 6
Как создать на форме таблицу и сделать для нее подсветку содержимого колонки в строке по условию? Итак для начала нам надо добавить реквизиты в форму. Для этого у нас есть метод: ИзменитьРеквизиты(). Перед тем как его использовать мы сформируем ма Как обновить динамический список или реквизит на форме клиента? 6
Если вы, открыв форму справочника или документа, выполнили некоторое действие, код который должен изменить состояние данных в динамических списках или значение реквизита. Данные изменены, но в открытой форме осталось все как было, можно конечно закр Посмотреть все в категории Работа с Формой (Диалог) и её элементами

Довольно часто встречаются задачи, когда нужно организовать программное заполнение формы какого-то объекта. Скажем, у нас есть форма документа, на форме есть реквизиты, и нам нужно сделать команду, которая заполнит эти реквизиты. Данные для заполнения предполагается получать запросом.

Заполнение формы объекта с помощью внешней обработки

Строка с соответствующим параметром в модуле обработки:

Подключив обработку и указав, для какого документа она назначена, мы получим в форме документа команду. Тип команды задаётся при создании внешней обработки, и от него зависит, где и как будет выполняться обработчик команды. Для наших целей может подойти один из следующих типов команд:

  • ВызовСерверногоМетода – обработчик команды располагается в модуле обработки;
  • ВызовКлиентскогоМетода – обработчик команды располагается в модуле формы обработки;
  • ЗаполнениеФормы – обработчик команды располагается в модуле обработки и позволяет работать с данными формы. Также позволяет вызвать серверную процедуру из модуля формы объекта. При этом можно заполнить форму не записывая объект.

Возможность заполнить форму не записывая объект – это то, что нужно. Ведь пользователь скорее всего ожидает, что по нажатию кнопки форма заполнится, а записываться будет позднее, после проверки результата заполнения. Поэтому выбираем тип команды – ЗаполнениеФормы.

В конечном итоге код в модуле обработки будет выглядеть примерно так:

В общем счёте задача решена. Однако, у такого способа есть небольшой недостаток – команда на форме размещается в определённом месте, а не там, где мы хотим её разместить. К примеру, на форме уже есть группа команд, включающая в себя команды заполнения, и мы хотели бы видеть новую команду в этой группе, но при подключении обработки команда на форме будет расположена отдельно от группы.

В связи с этим можно реализовать другой способ: добавить команду непосредственно в форму объекта – либо в основной конфигурации, либо в расширении – а обработчик команды организовать в модуле формы.

Заполнение формы объекта посредством обработчика команды в модуле формы

Итак, размещаем команду на форме объекта в том месте, которое нам нравится. В модуле формы добавляем клиентскую процедуру обработчика команды, из которой будем вызывать серверную процедуру. Серверную процедуру тоже создадим, она нам понадобится потому, что по условию задачи данные для заполнения получаются запросом.

Можно получить объект документа Объект . Ссылка . ПолучитьОбъект () , и заполнить его данными. Но тогда, чтобы увидеть данные в открытой форме, объект придётся записать, а это не очень хорошо.

Будет лучше, если данные добавятся без записи, и мы можем это сделать с помощью метода РеквизитФормыВЗначение . Этот метод преобразует реквизит формы в объект прикладного типа, и вот этот объект прикладного типа мы можем заполнить, а затем, уже заполненный, преобразовать обратно с помощью метода ЗначениеВРеквизитФормы . Выглядеть это будет примерно так:

Расширение управляемой формы для справочника (Managed form extension for catalogs) - Прочитать (Read)
Синтаксис: Прочитать()
Описание: Обновляет объект управляемой формы.
Доступность: Тонкий клиент, веб-клиент, сервер, толстый клиент.

Разместил: E_Migachev  Версии: | 8.2 УП |  Дата: 09.04.2014   Прочитано: 33925

Распечатать

Похожие FAQ

Как заполнить табличную часть формы программно?  6
Нужно по кнопке Заполнить - сформировать данные для заполнения табличных частей и заполнить их. Форма имеет вид: Рядом с кнопкой Записать и закрыть добавлена кнопка Заполнить документ , код ее команды: // Код заполнения ТЧ НаСервере П 10060 (0x0000274C): Попытка установить соединение была безуспешной  18
Установили новый терминальный сервер, на нем подняли 1С, терминальные пользователе неописуемо довольны, все просто летает :) И вот же надо было такому случиться, главному бухгалтеру не понравилось работать через терминал, а еще у нее свой ноутбук и 17 правил для составления оптимального ЗАПРОСа к данным базы 1С  42
Для формирования и выполнения запросов к таблицам базы данных в платформе 1С используется специальный объект языка программирования Запрос . Создается этот объект вызовом конструкции Новый Запрос . Запрос удобно использовать, когда требуется получ 1C и Google Maps  20
была поставлена задача отображения на географической карте медицинских учреждений. После обзора предлагаемых решений был выбран сервис google. Но так же подобного рода подход будет работать и с картами сервиса yandex. Во время решения задачи было реш 1С Предприятие что это?  11
Что такое 1С? 1С — это фирма , у которой одно из направлений деятельности — разработка программного обеспечения для автоматизации бизнес-процессов предприятий. « 1С:Предприятие » - конкретный продукт, который выпускает компания 1С . Что такое Посмотреть все результаты поиска похожих

Еще в этой же категории

Как обновить динамический список или реквизит на форме клиента?  19
Если вы, открыв форму справочника или документа, выполнили некоторое действие, код который должен изменить состояние данных в динамических списках или значение реквизита. Данные изменены, но в открытой форме осталось все как было, можно конечно закр Динамический список

Как на управляемой форме разместить список регистра сведений с отбором?  18
Решение рассмотрено для элемента справочника (Контрагент и регистр КонтактнаяИнформация) 1. Создание реквизита: Добавляем новый реквизит формы (. не путать с реквизитом справочника . ) с типом " ДинамическийСписок" В поле " Основная табли Как установить параметр динамического списка?  14
Когда используете для вывода данных динамический список и произвольный запрос, то бывают ситуации когда надо указать параметр используемый в этом запросе. Ниже пример вывода данных регистра сведений в карточке клиента Для вывода используется исп Форма

Программное создание таблицы значений с условным оформлением  12
Как создать на форме таблицу и сделать для нее подсветку содержимого колонки в строке по условию? Итак для начала нам надо добавить реквизиты в форму. Для этого у нас есть метод: ИзменитьРеквизиты(). Перед тем как его использовать мы сформируем ма Поле выбора

Заполнение списка значений в элементе поле выбора на форме  10
//Заполнение списка перебором данных // Элемент формы МетаданныеВыбор имеет тип - Произвольный, Использование - Режим выбора из Списка, кнопка списка Для Каждого Метаданное из Метаданные.РегламентныеЗадания Цикл ЭлементыФормы.МетаданныеВыбор.Спи Посмотреть все в категории Работа с Формой (Диалог) и её элементами

Расширение управляемой формы для справочника (Managed form extension for catalogs) - Прочитать (Read)
Синтаксис: Прочитать()
Описание: Обновляет объект управляемой формы.
Доступность: Тонкий клиент, веб-клиент, сервер, толстый клиент.

Разместил: E_Migachev  Версии: | 8.2 УП |  Дата: 09.04.2014   Прочитано: 33926

Распечатать

Похожие FAQ

Как заполнить табличную часть формы программно?  6
Нужно по кнопке Заполнить - сформировать данные для заполнения табличных частей и заполнить их. Форма имеет вид: Рядом с кнопкой Записать и закрыть добавлена кнопка Заполнить документ , код ее команды: // Код заполнения ТЧ НаСервере П 10060 (0x0000274C): Попытка установить соединение была безуспешной  18
Установили новый терминальный сервер, на нем подняли 1С, терминальные пользователе неописуемо довольны, все просто летает :) И вот же надо было такому случиться, главному бухгалтеру не понравилось работать через терминал, а еще у нее свой ноутбук и 17 правил для составления оптимального ЗАПРОСа к данным базы 1С  42
Для формирования и выполнения запросов к таблицам базы данных в платформе 1С используется специальный объект языка программирования Запрос . Создается этот объект вызовом конструкции Новый Запрос . Запрос удобно использовать, когда требуется получ 1C и Google Maps  20
была поставлена задача отображения на географической карте медицинских учреждений. После обзора предлагаемых решений был выбран сервис google. Но так же подобного рода подход будет работать и с картами сервиса yandex. Во время решения задачи было реш 1C: Enterprise Development Tools  50
И вот случилось долгожданное: Вышел 1C: Enterprise Development Tools - это среда для разработки конфигурации в IDE Eclipse. С сайта 1С: « 1C:Enterprise Development Tools » – это инструмент нового поколения для разработчиков бизнес-приложений систем Посмотреть все результаты поиска похожих

Еще в этой же категории

Как обновить динамический список или реквизит на форме клиента?  19
Если вы, открыв форму справочника или документа, выполнили некоторое действие, код который должен изменить состояние данных в динамических списках или значение реквизита. Данные изменены, но в открытой форме осталось все как было, можно конечно закр Динамический список

Как на управляемой форме разместить список регистра сведений с отбором?  18
Решение рассмотрено для элемента справочника (Контрагент и регистр КонтактнаяИнформация) 1. Создание реквизита: Добавляем новый реквизит формы (. не путать с реквизитом справочника . ) с типом " ДинамическийСписок" В поле " Основная табли Как установить параметр динамического списка?  14
Когда используете для вывода данных динамический список и произвольный запрос, то бывают ситуации когда надо указать параметр используемый в этом запросе. Ниже пример вывода данных регистра сведений в карточке клиента Для вывода используется исп Форма

Программное создание таблицы значений с условным оформлением  12
Как создать на форме таблицу и сделать для нее подсветку содержимого колонки в строке по условию? Итак для начала нам надо добавить реквизиты в форму. Для этого у нас есть метод: ИзменитьРеквизиты(). Перед тем как его использовать мы сформируем ма Поле выбора

Заполнение списка значений в элементе поле выбора на форме  10
//Заполнение списка перебором данных // Элемент формы МетаданныеВыбор имеет тип - Произвольный, Использование - Режим выбора из Списка, кнопка списка Для Каждого Метаданное из Метаданные.РегламентныеЗадания Цикл ЭлементыФормы.МетаданныеВыбор.Спи Посмотреть все в категории Работа с Формой (Диалог) и её элементами

Читайте также: