Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
06 июл 2022, 18:53

Заполнение и открытие формы из другой формы

Автор Римма, 17 сен 2017, 12:13

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

Римма

Добрый день.
Создала внешнюю обработку, в которой на основании введенных реквизитов заполняется Таблица1 на Форме1. В этой таблице1 есть колонка НомерПартии.
Например:

НоменклатураНомерПартии
1Арбуз001 :mellow:
2Банан002 :mellow:
где вместо смайликов кнопка "открыть".

В базе есть (например) 4 документа "Реализация товаров и услуг" с таблицами "Товары":
Реализация № 1

НоменклатураНомерПартии
1Арбуз001
2Арбуз003
3Банан004
Реализация № 2

НоменклатураНомерПартии
1Банан002
Реализация № 3

НоменклатураНомерПартии
1Дыня005
2Арбуз001
3Банан002
Реализация № 4

НоменклатураНомерПартии
1Арбуз001
2Арбуз001
3Банан002
4Банан007
5Кокос008

Я хочу при нажатии на кнопку открыть "Номер партии" из 1ой таблицы открывать новую форму обработки "Форма2", на которой есть таблица "СписокРеализаций".
Т.е. при нажатии на "Открыть" номер партии 001 должна открыться Форма2, и в ней должна заполниться таблица "СписокРеализаций" следующим образом:

Реализация №
1001
2003
3004

В модуле Формы 1 я написала процедуру, выполняющая поиск реализаций:
Процедура НайтиРеализации(Элемент, СтандартнаяОбработка)
    СтандартнаяОбработка = Ложь;

    //Тут запрос
   
    Выборка = Запрос.Выполнить();
    ТабРезультатов = Выборка.Выгрузить();
   
    ФормаРеализаций = ПолучитьФорму("Форма2");
    //ВОТ ТУТ НАДО БЫ ЗАПИСАТЬ В НЕЕ РЕЗУЛЬТАТ ВЫБОРКИ, НО КАК ЭТО СДЕЛАТЬ?
    ФормаРеализаций.Открыть();

КонецПроцедуры


Подскажите, пожалуйста, как заполнить таблицу "СписокРеализаций" на форме2.
Всем ответившим спасибо!

1с 8.3 предприятие.
Конфигурация 1.1.76.1

AsadRoman

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

&НаКлиенте
Процедура ОбработкаДействияФормы2(Результат, Параметры) Экспорт
   
КонецПроцедуры

Форма2:
Процедура ПриСозданииНаСервере()
    Если Параметры.Свойство("Номенклатура") Тогда
        // вот здесь уже запрос и вывод результата запроса в таблицу2
        Запрос.Выполнить().Выгрузить(Таблица2);
    КонецЕсли;
КонецПроцедуры

Римма

Цитата: AsadRoman от 18 сен 2017, 11:21
Я бы передал на форму 2 ссылку номенклатуры текущейстроки. А уже в самой форме 2 выполнял запрос и заполнял таблицу:
Форма1:
Процедура НайтиРеализации(Элемент, СтандартнаяОбработка)
    СтандартнаяОбработка = Ложь;
    Параметрыформы = Новый Структура;
    ПараметрыФормы.Вставить("Номенклатура", Номенклатура);
    ОписаниеОповещения = Новый ОписаниеОповещения("ОбработкаДействияФормы2", ЭтаФорма);
    ОткрытьФорму("ЭтаОбработка.Форма2", ПараметрыФормы, этаФорма,,,, ОписаниеОповещения, РежимОткрытияОкнаФормы.БлокироватьВесьИнтерфейс);
КонецПроцедуры

&НаКлиенте
Процедура ОбработкаДействияФормы2(Результат, Параметры) Экспорт
   
КонецПроцедуры

Форма2:
Процедура ПриСозданииНаСервере()
    Если Параметры.Свойство("Номенклатура") Тогда
        // вот здесь уже запрос и вывод результата запроса в таблицу2
        Запрос.Выполнить().Выгрузить(Таблица2);
    КонецЕсли;
КонецПроцедуры

Не прокатывает. Идею поняла, но реализовать как - не пойму: 1с не новая, если реализовать как вы описали, то в форме 2 ошибка: Параметры - Переменная не определена.
Добавлено: 18 сен 2017, 16:09


В общем, разобралась.
Спасибо за идею)

Теги:

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

Рейтинг@Mail.ru Rambler's Top100

Поиск