Ctrl P
5 - 02.03.2009 - 14:19
|
вот нашел В обработке код: Перем Статус, СписокПараметров; //******************************************* Функция Интервал() Если (ПустоеЗначение(НачалоИнтервала)=1) или (ПустоеЗначение(КонецИнтервала) = 1) Тогда Статус = 0; Форма.Закрыть(); КонецЕсли; КонецФункции //====================================================================== Процедура ПриОткрытии() Статус = 1; СписокПараметров = СоздатьОбъект("СписокЗначений"); СписокПараметров.ДобавитьЗначение("ИнтервалЖурнала","Команда"); Путь = ""; Файл = ""; РасположениеФайла(Путь,Файл); НазваниеВызываемойФормы = Путь+Файл; СписокПараметров.ДобавитьЗначение(НазваниеВызываемойФормы,"Форма"); СписокПараметров.ДобавитьЗначение("Отчет","ВидФормы"); КонецПроцедуры // ПриОткрытии //====================================================================== Процедура ПриЗакрытии() Если Статус = 0 Тогда ОткрытьФорму("Журнал.Общий#", СписокПараметров); СтатусВозврата(Статус); КонецЕсли; Статус = 1; КонецПроцедуры // ПриЗакрытии //====================================================================== Процедура ПриПовторномОткрытии() Если Пустоезначение(Форма.Параметр) = 0 тогда Если ТипЗначенияСтр(Форма.Параметр) = "СписокЗначений" тогда Если Форма.Параметр.Получить("Команда") = "ИнтервалЖурнала" тогда НачалоИнтервала = Форма.Параметр.Получить("НачалоИнтервала"); КОнецИнтервала = Форма.Параметр.Получить("КонецИнтервала"); Возврат; КонецЕсли; КонецЕсли; КонецЕсли; КонецПроцедуры // ПриПовторномОткрытии на форме три объекта два реквизита диалога типа "дата" "НачалоИнтервала" и "КонецИнтервала" и текст с вызовом функции Интервал(); А в модуле формы общего журнала в процедуре приоткрытии() вот такой вот код: Если ПустоеЗначение(Форма.Параметр) = 0 Тогда Если ТипЗначенияСтр(Форма.Параметр) = "СписокЗначений" Тогда Если Форма.Параметр.Получить("Команда") = "ИнтервалЖурнала" Тогда СтатусВозврата(0); Форма.Параметр.ДобавитьЗначение(НачалоИнтервала(),"НачалоИнтервала"); Форма.Параметр.ДобавитьЗначение(КонецИнтервала(),"КонецИнтервала"); Если Форма.Параметр.Получить("ВидФормы") = "Отчет" Тогда ОткрытьФорму(Форма.Параметр.Получить("ВидФормы"),Форма.Параметр,Форма.Параметр.Получить("Форма")); КонецЕсли; КонецЕсли; КонецЕсли; КонецЕсли; ЗЫ. можно было бы и через ОткрытьФормуМодально, но почему то не хотелось "Модально"... |