Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
16 апр 2024, 20:34

v8.2 передача значений между формами

Автор asdfr1, 08 ноя 2012, 18:37

0 Пользователей и 1 гость просматривают эту тему.

asdfr1

в "Задачи" есть таблица, вывел кнопку выбора договоров:
Форма = Справочники.Договоры.ПолучитьФормуСписка("ФормаСписка1", ЭтаФорма.ЭлементыФормы.Наименование);
Форма.ПолеВвода1=Контрагент;
Форма.РежимВыбора=Истина;
Форма.Открыть(); автоматом заполняется контрагент и отбором выводится список, теперь нужно выбранное значение поместить обратно в эту же форму, неполучается достучатся до таблицы.Написал :

Форма = Задачи.СопроводительныйЛист.ПолучитьФорму("ФормаЗадачи");
что дальше в тупике, плиз полдскажите куда копать, сам механизм

mixqn

если честно, не понял пока до конца суть задачи. что нужно сделать после открытия формы списка договоров? вернее, куда конкретно надо поместить выбранный договор? может приложите скриншот(ы) и/или обработку, чтобы было понятнее, о чем речь?

asdfr1

Цитата: mixqn от 08 ноя 2012, 20:33
если честно, не понял пока до конца суть задачи. что нужно сделать после открытия формы списка договоров? вернее, куда конкретно надо поместить выбранный договор? может приложите скриншот(ы) и/или обработку, чтобы было понятнее, о чем речь?

Добавлено: 08 ноя 2012, 21:45


[/quote]
Цитата: mixqn от 08 ноя 2012, 20:33может приложите скриншот(ы) и/или обработку, чтобы было понятнее, о чем речь?
картинку вставить не удаётся, на форме кнопка, с таблицей -> открывает форму(справочник) для выбора, не удаётся веруть значение в таблицу
Форма = Справочники.Договоры.ПолучитьФормуСписка("ФормаСписка1", ЭтаФорма.ЭлементыФормы.Наименование);
Форма.РежимВыбора=Истина;
Форма.Открыть();

mixqn

Цитата: asdfr1 от 08 ноя 2012, 21:31картинку вставить не удаётся
можно чуть подробнее? в чем конкретно проблема? выдается какое-то сообщение? какие симптомы вообще?

по вопросу: а в какую строку таблицы значение будем возвращать? в таблице вообще какие данные? все таки желательно увидеть картинку, а еще лучше - саму обработку.

asdfr1

Цитата: mixqn от 08 ноя 2012, 22:22а еще лучше - саму обработку.
форма, откуда выбор
Процедура ДоговорНажатие(Элемент)
Форма = Справочники.Договоры.ПолучитьФормуСписка("ФормаСписка1", ЭтаФорма.ЭлементыФормы.Наименование);
Форма.РежимВыбора=Истина;
Форма.Открыть();
КонецПроцедуры
в неё же нужно вернуть значение выбора в строку"наименование"



Добавлено: 08 ноя 2012, 22:43


Цитата: asdfr1 от 08 ноя 2012, 22:30
Цитата: mixqn от 08 ноя 2012, 22:22а еще лучше - саму обработку.
форма, откуда выбор

в неё же нужно вернуть значение выбора в строку"наименование"




Добавлено: 08 ноя 2012, 22:47



mixqn

окей.
чувствую, у нас небольшое недопонимание. попробую описать, какие вообще варианты существуют.
Суть примерно такая, что родительская форма (то есть та, из которая вызвана форма выбора) должна "понять", когда выбор завершен. Это можно сделать 2-мя вариантами: либо оповестить о завершении выбора из формы выбора, либо же родительская форма должна «зависнуть» до завершения выбора. Для первого варианта (оповещение) можно использовать обработчики событий ОбработкаВыбора формы либо табличного поля. Есть так же событие ОбработкаОповещения - можно через этот вариант попробовать. Для второго варианта используйте метод ОткрытьМодально, в этом случае можно использовать возвращаемое методом значение (подробнее см. Синтаксис-помощник).
Если вы все таки хотите получить более предметный ответ, постарайтесь разобраться с проблемой загрузки картинки и обработки . На всякий случай замечу : на forum-baza.ru можно загружать различные файлы, включая картинки и файлы обработок, делается это в форме «обычного» ответа (не «быстрого») кликом по ссылке «Вложения и другие параметры»

asdfr1

скриншот

mixqn

Честно говоря, сложно что-то понять по скриншоту, ничего не видно.
Вопросы:
1) А где собственно ваша кнопка?
2) чем не годится стандартное добавление строк через "плюсик" с последующим выбором договора в строке
3) в какую строку должно возвращаться выбранное по вашей кнопке значение?

asdfr1

через плюсик :( составной тип данных, вот более подробный скриншот
Добавлено: 08 ноя 2012, 23:18


Цитата: asdfr1 от 08 ноя 2012, 23:07
по кнопке, возможно, как то через ПолучитьСсылку, откудо была вызванаФорма

mixqn

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

Если все это так, то предлагаю следующее решение:
1. форму выбора договора вы создаете подчиненной «родительской» форме «сопроводительного листа», используя конструкцию
Форма = Справочники.Договоры. ПолучитьФормуВыбора ("ФормаСписка1", ЭтаФорма);
2. создаете процедуру обработки события ОбработкаВыбора формы «сопроводительного листа» - в эту процедуру вы должны попадать после завершения выбора
В процедуре  ОбработкаВыбора вы сразу будете иметь результат выбора (см. синтаксис-помощник, параметр события ОбработкаВыбора - ЗначениеВыбора), далее вам надо написать код, который добавляет строку в табличную часть и присваивает значение нужному вам реквизиту, устанавливая его равным ЗначениеВыбора.
Как-то так.

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск