Имя: Пароль:
1C
1С v8
Интерактивные операции недоступны
0 ZloyRafa
 
05.09.16
09:55
&НаСервере
Процедура получитьссылку()

Ссылка=Объект.Ссылка;
    Контрагент=Объект.Контрагент;
    ДокЗаявка = Документы.ЗаявкиНаТранспорт.НайтиПоРеквизиту("Основание",Ссылка);
    Если ДокЗаявка = Документы.ЗаявкиНаТранспорт.ПустаяСсылка() тогда
Сообщить("Заявка не созданна")
иначе

Ссылка=Объект.Ссылка;
    Контрагент=Объект.Контрагент;
    ДокЗаявка = Документы.ЗаявкиНаТранспорт.НайтиПоРеквизиту("Основание",Ссылка);
    
    
    ДокЗаявка.ПолучитьФорму("ФормаДокумента").Открыть();

КонецЕсли;
Конецпроцедуры

Данный код выполняется только в толстом клиенте, как опитимизировать под любой клиента?
1 vicof
 
05.09.16
09:58
Разнести на клиент и сервер
2 Остап Сулейманович
 
05.09.16
10:00
(0)
&НаСервере
Процедура получитьссылку()
    ...
    ДокЗаявка.ПолучитьФорму("ФормаДокумента").Открыть();
Конецпроцедуры

Открыть форму на сервере... Кому? Зачем?
Разделите код на две части. Собственно получение ссылки (на сервере) и открытие формы (на клиенте). И БуитВамМногаСчастия.
3 ZloyRafa
 
05.09.16
10:07
&НаКлиенте
Процедура ЗаявкаНаДоставкуНажатие(Команда)
    получитьссылку();
ДокЗаявка.ПолучитьФорму("ФормаДокумента").Открыть();
КонецПроцедуры

&НаСервере
Процедура получитьссылку()

Ссылка=Объект.Ссылка;
    Контрагент=Объект.Контрагент;
    ДокЗаявка = Документы.ЗаявкиНаТранспорт.НайтиПоРеквизиту("Основание",Ссылка);
    Если ДокЗаявка = Документы.ЗаявкиНаТранспорт.ПустаяСсылка() тогда
Сообщить("Заявка не созданна")
иначе

Ссылка=Объект.Ссылка;
    Контрагент=Объект.Контрагент;
    ДокЗаявка = Документы.ЗаявкиНаТранспорт.НайтиПоРеквизиту("Основание",Ссылка);
    
    
    

КонецЕсли;
Конецпроцедуры
4 ZloyRafa
 
05.09.16
10:08
Я наверное уже переусердствовал с изучением, голова не работает, но это явно не работает.
5 Остап Сулейманович
 
05.09.16
10:29
(4) Таки да.
&НаКлиенте
Процедура ЗаявкаНаДоставкуНажатие(Команда)
    ДокЗаявка = получитьссылку();
    Если ЗначениеЗаполнено(ДокЗаявка) Тогда
        ...
    Иначе
        Сообщить("Заявка не созданна");
    КонецЕсли;
КонецПроцедуры

&НаСервере
Функция получитьссылку()
    Возврат Документы.ЗаявкиНаТранспорт.НайтиПоРеквизиту("Основание",Объект.Ссылка);
КонецФункции
6 ZloyRafa
 
05.09.16
11:55
Спасибо Вам, Остап!
Ошибка? Это не ошибка, это системная функция.