Заказы на доработку 1С (сервис удаленной работы)

Хранилище

База знаний
Неназначенных незавершенных заказов: 2
Бесплатные отчеты, обработки, конфигурации, внешние компоненты для 1С Статьи, описание работы, методики по работе с 1С

Здравствуйте, гость ( Вход | Зарегистрироваться )



> Передача данных между формами , Обновление формы          
l2d808 Подменю пользователя
сообщение 02.05.13, 12:17
Сообщение #1

Завсегдатай
Иконка группы
Группа: Местный
Сообщений: 248
Из: Советский Союз
Спасибо сказали: 64 раз
Рейтинг: 0

7,7
Добрый день уважаемое сообщество. Поздравляю Вас с празником. Прошу помочь с ответом на вопрос:
У меня есть две формы. Одна открывается с другой модально.
ТМЦ = СоздатьОбъект("Справочник.ТМЦ");
Если ТМЦ.НайтиЭлемент(ТекущийЭлемент())=1 Тогда
    ОткрытьФормуМодально("Справочник.СоставПродукции");
КонецЕсли;

На Форме с которой я открываю, Есть ТЗ. После того как я вношу изменения во второй форме
(ОткрытьФормуМодально("Справочник.СоставПродукции")wink.gif и закрываю ее, на первой форме ТЗ должна обновится.
Обработка обновления выглядит так:
Процедура измСостав()  
    Состав.УдалитьСтроки();
    спр = СоздатьОбъект("Справочник.СоставПродукции");
    ТМЦ = ТекущийЭлемент();
    спр.ИспользоватьВладельца(тмц.ТекущийЭлемент());
    спр.ВыбратьЭлементы();  
    Пока Спр.ПолучитьЭлемент()>0 Цикл
        Состав.НоваяСтрока();
        Состав.ТМЦ=спр.Затрата;
        Состав.Количество=спр.кво;
        Состав.Измеритель=спр.БазЕдиница;
        
    КонецЦикла;
КонецПроцедуры

Как это реализовать.

Сообщение отредактировал l2d808 - 02.05.13, 12:18


Signature
Короеды это не жуки. Это пользователи. Они едят кору головного мозга ...

takefive Подменю пользователя
сообщение 02.05.13, 18:55
Сообщение #2

Говорящий
***
Группа: Пользователи
Сообщений: 62
Из: Днепропетровск
Спасибо сказали: 22 раз
Рейтинг: 23.2

один из вариантов - использовать механизм подбора

Процедура Сформировать()
    Перем КонтекстФормы;
    ОткрытьПодбор("Справочник.СоставПродукции","ФормаСписка",КонтекстФормы,0);
    КонтекстФормы.ИспользоватьВладельца(ТМЦ);
КонецПроцедуры

Процедура ОбработкаПодбора(Выбор,КонтекстФормы)
    Список.ДобавитьЗначение(Выбор,СокрЛП(Выбор));
КонецПроцедуры


ваш код тоже должен сработать. Строчку добавьте...

ТМЦ = СоздатьОбъект("Справочник.ТМЦ");
Если ТМЦ.НайтиЭлемент(ТекущийЭлемент())=1 Тогда
    ОткрытьФормуМодально("Справочник.СоставПродукции");
    ИзмСостав();//сработает после закрытия модальной формы
КонецЕсли;


Signature
без свинга нет музыки...

ser_ua_bard Подменю пользователя
сообщение 15.05.13, 17:01
Сообщение #3

Молчаливый
*
Группа: Пользователи
Сообщений: 7
Спасибо сказали: 0 раз
Рейтинг: 0

Если открываеТЕ модально то

ТМЦ = СоздатьОбъект("Справочник.ТМЦ");
Если ТМЦ.НайтиЭлемент(ТекущийЭлемент())=1 Тогда
    ОткрытьФормуМодально("Справочник.СоставПродукции");
    измСостав();
КонецЕсли;


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


 ! 

Правила, п. 1, 12
 


Сообщение отредактировал logist - 15.05.13, 17:12

Домовик Подменю пользователя
сообщение 16.05.13, 12:46
Сообщение #4

Ветеран
Иконка группы
Группа: Местный
Сообщений: 975
Из: Киев
Спасибо сказали: 168 раз
Рейтинг: 0

еще с переменной ТМЦ путаница. если подставить текст процедуры ИзмСостав() получается:

ТМЦ = СоздатьОбъект("Справочник.ТМЦ");
Если ТМЦ.НайтиЭлемент(ТекущийЭлемент())=1 Тогда
    ОткрытьФормуМодально("Справочник.СоставПродукции");
    Состав.УдалитьСтроки();
    спр = СоздатьОбъект("Справочник.СоставПродукции");
    ТМЦ = ТекущийЭлемент();
    спр.ИспользоватьВладельца(тмц.ТекущийЭлемент());
    спр.ВыбратьЭлементы();  
    Пока Спр.ПолучитьЭлемент()>0 Цикл
        Состав.НоваяСтрока();
        Состав.ТМЦ=спр.Затрата;
        Состав.Количество=спр.кво;
        Состав.Измеритель=спр.БазЕдиница;
        
    КонецЦикла;
КонецЕсли;

alex040269 Подменю пользователя
сообщение 18.05.13, 18:51
Сообщение #5

Крутой
Иконка группы
Группа: Местный
Сообщений: 1626
Из: Гуляйполе
Спасибо сказали: 236 раз
Рейтинг: 0

можно возвращать данные через параметр формы.


Signature
Никогда не бойся делать то, что не умеешь, помни - Ноев ковчег был построен любителем, профессионалы построили Титаник.
ЗиУП

Не нашли ответа на свой вопрос?
Зарегистрируйтесь и задайте новый вопрос.


Ответить Новая тема
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

RSS Текстовая версия Сейчас: 27.04.24, 0:04
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!