Доброго времени суток, господа! Проблема в следующем. В управляемой форме при выполнении процедуры &НаКлиенте не видны параметры этой Формы. Форма открывается методом ОткрытьФорму со структурой параметров для Открытия. При работе процедуры ПриСозданииНаСервере Параметры этой формы ВИДНЫ! А при обработки события Выбора строки элемента Таблица этой формы, которая выполняется &НаКлиенте, пармаетры формы НЕ ВИДНЫ. Обращение к параметрам в этой процедуре выглядит как "ЭтаФорма.Параметры.Парам". Как обойти эту проблему я знаю, просто ОООЧЕНЬ интересно по какой причине может возникать такая ситуация. Ведь в процедурах выполняемых &НаКлиенте должны быть видны все данные формы(Реквизиты, параметры, элементы). Помогите пожалуйста, если кто знает в чем дело, буду признаетелен. Платформа 8.2, УТ 11.
arccos6pi
19.08.2013, 15:07
давай весь код,пока не совсем понятно в чем проблема
Poluk
19.08.2013, 15:37
Открытие формы:
Форма открывает по команде из другой ФормыРодителя
Код:
//
...
ОткрытьФорму("Обработка.FF_ПодборНоменкла туры.Форма", ПараметрыФормы, ЭтаФорма, УникальныйИдентификатор);
...
///
Где ПараметрыФормы - кореектно заполненная структура параметров.
В процедуре ПриСозданииНаСервере есть такой код:
//
......
Соглашение = Параметры.Соглашение;
ДатаОтгрузки = Параметры.ЖелаемаяДатаОтг� �узки;
......
//
Где Соглашение, ДатаОтгрузки - Реквизиты Формы. В этой процедуре все работает корректно, все параметры видны, и равны значениям, соответствующим значения параметрам при открытии формы(ПараметрыФормы).
У формы есть элемент Таблица - Номенклатура. В процедуре обработки события выбора строки в этой таблице (процедура - "НоменклатураВыбор" выполняется &НаКлиенте) есть такой код:
&НаКлиенте
Процедура НоменклатураВыбор(Элемент, ВыбраннаяСтрока, Поле, СтандартнаяОбработка)
//
СтандартнаяОбработка = Ложь;
...
Сообщить(Параметры.Желаема яДатаОтгрузки);
...
//
При написании слова "Параметры." интерактивный подсказчик КОРРЕКТНО подсказывает все возможные параметры этой формы. А вот при выполнении этой строчки возникает ошибка: - Поле объекта не обнаружено(ЖелаемаяДатаОт� �рузки ).
Выделенная строка выдает аналогичную ошибку.ну так правильно
параметры - это для какой формы?
Poluk
19.08.2013, 16:39
Эти процедуры описаны в модуле ОТКРЫВАЕМОЙ Формы(Обработка.FF_П одборНоменклатуры.Форма) следовательно и параметры должны из Структуры ПараметрыФормы. Или я не прав?
arccos6pi
19.08.2013, 16:46
тогда совсем не понятно ничего
Poluk
19.08.2013, 17:54
тогда совсем не понятно ничего
я о том же..
а может эта проблема быть связана с тем, что ЭТА Форма открывается иэ ФормыРодителя ВНЕШНЕЙ ОБРАБОТКИИ? Внешняя обработка открывается из приложения путем Файл->Открыть. Далее в ФормеРодителя Следует команда ОткрытьПодбор, где и происходит открытие ЭТОЙ Формы.
---------- Post added at 16:01 ---------- Previous post was at 15:55 ----------
Данная конструкция работает корректно. ошибок не выдает. У меня создается такое ощущение, что параметры формы видны только в процедуре ПриСОзданииНаСервере.. в результате чего такое может быть кто-нибудь может предположить?
---------- Post added at 16:26 ---------- Previous post was at 16:01 ----------
Есть у кого-нибудь еще предположения по данной проблеме?
---------- Post added at 16:54 ---------- Previous post was at 16:26 ----------
Полазил на форумах, нашел следующее:
книга "Руководство разработчика", стр. 1-376, написано:
"После вызова обработчика ПриСозданииНаСервере все неключевые параметры формы удаляются из коллекции Параметры"/
Так что похоже ситуация Корректна, хотя зачем удаляютя все неключевые параметры, непонятно....
Но тему можно СЧИТАТЬ ЗАКРЫТОЙ.
Так что, как говориться :"Всем СПАСИБО, Все СВОБОДНЫ!!"))))