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

Подскажите по управляемым формам

Автор СветланаCC, 30 янв 2012, 10:51

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

СветланаCC

Подскажите по управляемым формам, в документе сделала кнопку, прописала действие, но...в модуле формы...НаКлиенте перед процедурой, загружая в простом приложении работает, в управляемом ошибку выдает - могу предоставить текст процедуры
Тазовод)

has

Текст ошибки и текст процедуры

СветланаCC

&НаКлиенте
Процедура СформироватьСчет(Команда)
ЗапросСписокОрг = Новый Запрос;
   ЗапросСписокОрг.Текст =
   "ВЫБРАТЬ
   |   МаршрутныйЛистАвтомобиляТабЧасть.ЛистКомплектации.ДокументОснование.Организация КАК Организация,
   |   МаршрутныйЛистАвтомобиляТабЧасть.Объем
   |ИЗ
   |   Документ.МаршрутныйЛистАвтомобиля.ТабЧасть КАК МаршрутныйЛистАвтомобиляТабЧасть
   |ГДЕ
   |   МаршрутныйЛистАвтомобиляТабЧасть.Ссылка = &МаршрутныйЛист";
   ЗапросСписокОрг.УстановитьПараметр("МаршрутныйЛист",Объект.Ссылка);
   СписокОрг = ЗапросСписокОрг.Выполнить().Выгрузить();
   СписокОрг.Свернуть("Организация","Объем");
   Для каждого СтрокаОрг из СписокОрг Цикл
      //создаем документ счет за транспортное обслуживание
      ДокСчетЗаТрОбсл= Документы.СчетЗаТранспортноеОбслуживание.ПолучитьФормуНовогоДокумента();
      ДокСчетЗаТрОбсл.Объект.Фирма = СтрокаОрг.Организация;
      ДокСчетЗаТрОбсл.Объект.Водитель = Объект.Перевозчик;
      ДокСчетЗаТрОбсл.Объект.Куда = Объект.Направление;
      ДокСчетЗаТрОбсл.Объект.МаршрутныйЛист = Объект.Ссылка;
      ОбъемДокумента = Объект.ТабЧасть.Итог("Объем");
      СуммаДокумента = Объект.ТранспортныеРасходы*СтрокаОрг.Объем/ОбъемДокумента;
      ДокСчетЗаТрОбсл.Объект.Сумма = СуммаДокумента;
      ДокСчетЗаТрОбсл.КлючУникальности = Строка(СтрокаОрг.Организация)+" "+Строка(Объект.Перевозчик);
      ДокСчетЗаТрОбсл.Открыть();
      //проверить счет только перевозчику или экспедитору тоже...
      Если НЕ Объект.Экспедитор = Справочники.ФизическиеЛица.ПустаяСсылка() Тогда
         ДокСчетЗаТрОбсл= Документы.СчетЗаТранспортноеОбслуживание.ПолучитьФормуНовогоДокумента();
         ДокСчетЗаТрОбсл.Объект.Фирма = СтрокаОрг.Организация;
         ДокСчетЗаТрОбсл.Объект.Водитель = Объект.Экспедитор;
         ДокСчетЗаТрОбсл.Объект.Куда = Объект.Направление;
         ДокСчетЗаТрОбсл.Объект.МаршрутныйЛист = Объект.Ссылка;
         ОбъемДокумента = Объект.ТабЧасть.Итог("Объем");
         СуммаДокумента = Объект.ТранспортныеРасходыЭкспедитора*СтрокаОрг.Объем/ОбъемДокумента;
         ДокСчетЗаТрОбсл.Объект.Сумма = СуммаДокумента;
         ДокСчетЗаТрОбсл.КлючУникальности = Строка(СтрокаОрг.Организация)+" "+Строка(Объект.Экспедитор);
         ДокСчетЗаТрОбсл.Открыть();
      КонецЕсли;
   КонецЦикла;
КонецПроцедуры

Ошибка при открытии формы в управляемом интерфейсе.
Тазовод)

aprol

На клиенте запросы писать нельзя, создавай отдельно процедуру на сервере, выполняй там запрос и обрабатывай его.

СветланаCC

Это я понимаю, я пробовала вынести запрос, потом:
ДокСчетЗаТрОбсл= Документы.СчетЗаТранспортноеОбслуживание.ПолучитьФормуНовогоДокумента(); - в отдельную процедуру
Справочники.ФизическиеЛица.ПустаяСсылка()   - в отдельную процедуру и что то совсем получается каша, как быть?
Тазовод)

has

Форму документа по другому получают в управляемых формах. Там вроде такой метод ПолучитьФорму().
Пустую ссылку скорей всего тоже придется на сервер получать, посмотрите в СП где выполняется метод ПустаяСсылка.

cska-fanat-kz

Вынесите на сервер только запрос.
Работу с формами можно оставить на клиенте...
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

СветланаCC

Выносила, результатом запроса является таблица значений, которую потом передать в процедуру (на клиенте) не получается
Тазовод)

cska-fanat-kz

Пока тоже мало опыта в УпрФ...
Но как-то решал такую задачу...
ТаблицаЗначений действительно не передается с сервера на клиент.
А вот МАССИВ СТРУКТУР - отлично передается...
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

СветланаCC

Цитата: cska-fanat-kz от 31 янв 2012, 14:18
ТаблицаЗначений действительно не передается с сервера на клиент.
А вот МАССИВ СТРУКТУР - отлично передается...
Спасибо по пробую....
Тазовод)

Теги:

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

Рейтинг@Mail.ru

Поиск