1с передать табличную часть в другую форму

Передача данных между управляемыми формами


Поставленная задача

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

1

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

Реализация

Для демонстрации двух вариантов передачи данных между управляемыми формами реализуем оба варианта в подборе.

Без обращения к серверу

Создадим форму списка у справочника «Товары». При этом не назначим ее основной. В реквизиты формы добавим таблицу «ПодобранныеТовары» и разместим соответствующий элемент формы. При этом для полей динамического списка «ЭтоГруппа» и «Ссылка» установим флаг «Использовать всегда». Далее Вы увидите для чего.

2

Теперь нам нужно написать программный код обработки выбора в динамическом списке. Все действия выбора будут сводитсья к добавлению строки в таблицу «Подобранные товары» элементов справочника. Если элемент уже был добавлен в таблицу, то увеличиваем его количество. Программный код обработки выбора (событие «Выбор») списка номенклатуры приведен на следующем листинге:

Форма подбора товаров вызывается из формы документа по команде «Подбор».

3

Программный код вызова формы подбора из документа следующий:

Когда в форме выбора необходимые товары подобраны выполняется команда «ПеренестиВДокументКлиент». Обработчик события очень простой:

После выполнения метода «ОповеститьОВыборе» данные передаются в обработчик «ОбработкаВыбора» элемента формы документа «Товары», и далее обрабатывается:

В результате таблица товаров документа будет заполнена. При использвовании этого варианта передачи данных между формами не было произведено вызовов к серверу. Однако у подобного подхода есть несколько больших минусов:

С обращением к серверу

Отличия в реализации подбора будут в этом случае только в передаче данных в документ и, затем, обработки подобранных товаров в документе. Вот таким образом будет выглядеть команда передачи данных в документ из подбора:

Теперь алгоритм обработки выбора элемента формы документа «Товары» изменится следующим образом:

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

Вместо выводов

Способ передачи данных между формами зависит от конкретной задачи, поэтому не стоит думать, что использование временного хранилища на сервере является абсолютно правильным решением. В типовых конфигурациях, таких как «Управление торговлей 11» или «Розница» подбор осуществляется с использованием временного хранилища на сервере. Однако для простых задач, на подобии рассмотренного примера, осуществление передачи данных на клиенсткой стороне куда оптимальней, нежели вызов сервера.

По ссылке Вы можете скачать тестовую конфигурацию с примером из статьи.

Источник

Передать таблицу значений из одной формы в другую (в обработке)

Не получается собственно сабж.

Есть обработка. Написана давно и работает прекрасно.
т.е. Обработка состоит из одной формы (на рисунке помечена 1)

Хочу расширить её функционал.
Добавил форму «Пролеченные» (на рисунке помечена 2)

Эта форма собирает, обрабатывает и формирует данные, которые надо передать в форму 1
Рассуждал просто. Положу данные в Табличную часть (на рисунке пометка 3) и как бы всё прекрасно.
Из формы 1 вызову форму 2 модально заполню ТЧ и после возвращения в форму 1 получу данные

Но не тут то было.
Вот в форме 1 табличная часть заполненная вручную
А вот открытая модально форма 2
В которой табличная часть пустая

В коде просто кнопка на клиенте вызывает модально форму.

Подскажите как реализовать передачу данных?
Уже перечитал кучу инета, перепробовал не один вариант, но каждый раз при реализации возникала какая то загвоздка

Передать данный из одной формы в другую
Как по нажатию на кнопку, во второй форме, сделать прозрачность, первой формы? Вот что я пытался в.

Передать данные из одной формы в другую
Нужен совет как правильно организовать работу программы, есть некоторые проблемы с программой. я.

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

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

Источник

Как передать табличную часть как параметр дополнительной формы

Добрый день! Как передать табличную часть как параметр дополнительной формы добавила у дока форму дополнительную в модуле формы дока прописала Процедура КоманднаяПанель1ДействиеЗаполнитьПоПеремещению(Кнопка)
ФормаОтбораПеремещения=ЭтотОбъект.ПолучитьФорму(«Форма», ЭтаФорма);
СсылкаНаОбъект=ЭтотОбъект.Серии;
ФормаОтбораПеремещения.СсылкаНаОбъект=СсылкаНаОбъект;
ФормаОтбораПеремещения.Открыть();
КонецПроцедуры // КоманднаяПанель1ДействиеЗаполнитьПоПеремещению А,в самой форме

Процедура ОсновныеДействияФормыДействиеЗаполнитьПоПеремещению(Кнопка)
Если СсылкаНаОбъект.Серии.Количество() > 0 Тогда

ТекстВопроса = «Перед заполнением табличная часть будет очищена. Заполнить?»;
Ответ = Вопрос(ТекстВопроса, РежимДиалогаВопрос.ДаНет, 60, КодВозвратаДиалога.Да,);
Если Ответ <> КодВозвратаДиалога.Да Тогда
Возврат;
КонецЕсли;

ТекстЗапроса =
«ВЫБРАТЬ
| ПеремещениеТоваровТовары.СерияНоменклатуры,
| ПеремещениеТоваровТовары.Номенклатура
|ИЗ
| Документ.ПеремещениеТоваров.Товары КАК ПеремещениеТоваровТовары
|ГДЕ
| ПеремещениеТоваровТовары.Ссылка = &Ссылка»;

Запрос = Новый Запрос;
Запрос.Текст = ТекстЗапроса;
Запрос.УстановитьПараметр(«Ссылка», Ссылка);

РезультатЗапроса = Запрос.Выполнить();
Если РезультатЗапроса.Пустой() Тогда
Предупреждение(«Нет данных для заполнения!»);
Возврат;
Иначе
СсылкаНаОбъект.Серии.Очистить();
КонецЕсли;

Обход = РезультатЗапроса.Выбрать();
Пока Обход.Следующий() Цикл

НоваяСтрока = СсылкаНаОбъект.Серии.Добавить();
НоваяСтрока.Номенклатура = Обход.Номенклатура;
НоваяСтрока.СерияНоменклатуры = Обход.СерияНоменклатуры;

КонецПроцедуры Почему то не заполняет табличную часть дока я так думаю но ее не видит

Источник

Вывод таблицы значений в другую форму

Так вот вопрос: как эту таблицу значений вывести на новую(другую) форму?

Возможен есть такой вариант: после нажатия кнопки «Выполнить» открывается уже созданная Форма2 с таблицой значений(пустой). Вопрос: как таблицу значений в Форме2 заполнить таблицой значений «НоваяТаблицаЗначений»(та, которая была выгружена)?

Помощь в написании контрольных, курсовых и дипломных работ здесь.

tickСуммирование значений реквизита элементов справочника и вывод результата в другую форму
Доброй ночи. Подскажите такую вещь пожалуйста. У меня есть справочник, там есть реквезит сумма. Как.

Вывод результата отчета СКД в дерево значений на форму
Есть отчет, на форме отчета есть кнопка, которая получает дерево значений и передает его следующим.

Вывод таблицы значений в форме
Помогите пожалуйста. Я начинающий программист и у меня такая проблема. Мне нужно, чтобы при.

Вывод таблицы значений в форме. Помогите.
Помогите пожалуйста. У меня такая проблема. Мне нужно, чтобы при нажатии кнопки в командной панели.

Не работает. Когда открывается Форма2, то ничего нету в ней нету(я создал в ней ещё ТабличнуюЧасть2), но дело в том, что мне в «НоваяТаблицаЗначений» нужно использовать методы свернуть и сортировать, которые нужны мне для задачи. Может как-то через «НоваяТаблицаЗначений» можно вывести её на другую форму?

Добавлено через 9 минут
Я вот как-то там хотел сделать: есть у меня таблица значений «НоваяТаблицаЗначений»(«НоваяТаблицаЗначений» создаёться в модуле формы1), на второй форме2 размещена таблица значений и эту «НоваяТаблицаЗначений» поместить в Таблицу Значений, которая создана на второй форме

Добавлено через 53 минуты
На ваш вариант загрузки никакой реакции и на этот тоже

Источник

1с передать табличную часть в другую форму

empty

v8: Передача данных из одной формы в другую

Автор статьи: Волшебник | Редакторы: vvv29, Гений 1С
Последняя редакция №6 от 17.04.06 | История
URL: http://kb.mista.ru/article.php?id=52

Ключевые слова: передать значение, значение в форму, передать параметр, передать параметр в форму, параметр в форму, передать праметр в форму

Как из одной формы открыть другую, передав параметры, и получить обратно результат?

1. ОткрытьМодально, параметр закрытия, метод Закрыть

2. Реквизиты формы (или свойства расширения формы)

Реквизиты формы видимы снаружи как свойства объекта Форма. Их можно создать столько сколько нужно и присвоить им нужный тип.

3. Через ЭлементыФормы (не очень красиво)

5. Экспортные переменные модулей форм

Они становятся видимы снаружи, примерно как реквизиты форм:

6. Экспортные переменные модуля объекта, если он является основным реквизитом формы

Например, есть форма элемента справочника, т.е. ее основной реквизит имеет тип «СправочникОбъект.Номенклатура». Тогда экспортная переменная в модуле объекта расширяет контекст модуля формы и становится видна снаружи.

7. Глобальные переменные (экспортные переменные модуля приложения)

9. СохранитьЗначение, ВосстановитьЗначение

10. Параметры сеанса

Обратите внимание! Попытка прочитать неинициализированный параметр сеанса приводит к ошибке! Поэтому нужно инициализировать все параметры сеанса раньше, например, еще в процедуре ПриНачалеРаботыСистемы.

11. Объекты базы данных (справочники, константы, регистры сведений и т.д.)

Источник

Понравилась статья? Поделить с друзьями:
Добавить комментарий
  • Как сделать успешный бизнес на ритуальных услугах
  • Выездной кейтеринг в России
  • Риски бизнеса: без чего не обойтись на пути к успеху
  • 1с передать таблицу значений в другую форму
  • 1с передать параметры в форму обычные формы