Имя: Пароль:
1C
1С v8
Подключение внешней обработки к документу в УТ 11.0
,
0 Rizhij_Nikitos
 
19.08.11
10:33
Процедура выполнитьКоманду на тонком клиенте не работает, чем можно заменить ее, чтобы работала на толстом и тонком клиенте.

&НаКлиенте
Процедура ВыполнитьКоманду(ИдентификаторКоманды, ОбъектыНазначенияМассив) Экспорт
 //Предупреждение(ОбъектыНазначенияМассив[0]);
 ФормаПодбора = ПолучитьФорму("ВнешняяОбработка.Подбор.Форма.Форма");
 ФормаПодбора.СсылкаНаОбъект = ОбъектыНазначенияМассив[0];
 ФормаПодбора.ОткрытьМодально();
КонецПроцедуры

П
1 Поручик
 
19.08.11
10:56
Подключить обработку штатными средствами УТ 11 ужо не канает? Требуются извратства.
2 Rizhij_Nikitos
 
19.08.11
11:44
Я так делаю, прсото надо еще передать параметр ссылкиДокумента в котором работаем, чтобы открыть форму с подбором...
3 Rizhij_Nikitos
 
19.08.11
12:21
Теперь проблема в этой строчке
ФормаПодбора.ОткрытьМодально();
Пробую открыть все на тонком клиенте.
4 Rizhij_Nikitos
 
19.08.11
12:44
Код написан в модуле объекта, если поставить на &НаКлиенте, то будет ругаться на выполнитьКоманду.

Процедура ВыполнитьКоманду(ИдентификаторКоманды, ОбъектыНазначенияМассив) Экспорт
 //Предупреждение(ОбъектыНазначенияМассив[0]);

 ФормаПодбора = ПолучитьФорму("ВнешняяОбработка.Подбор.Форма.Форма");
 ФормаПодбора.ОткрытьМодально();
КонецПроцедуры
5 Rizhij_Nikitos
 
19.08.11
13:21
up
6 Rizhij_Nikitos
 
19.08.11
16:04
Вот скажите мне что не так (в тонком клиенте делаю):

&НаКлиенте
Процедура ОткрытьФорму1(Форма)
   ОткрытьФормуМодально(Форма);    
КонецПроцедуры


Процедура ВыполнитьКоманду() Экспорт
   Форма = ПолучитьФорму("ВнешняяОбработка.Подбор.Форма.Форма");
   ОткрытьФорму1(Форма);
КонецПроцедуры
7 Rizhij_Nikitos
 
19.08.11
16:04
Пишет что нет такой процедуры
8 Rizhij_Nikitos
 
19.08.11
16:14
Вверх
9 shuhard
 
19.08.11
17:06
(0) готовый пример из документации чем-то не подошёл ?
&НаКлиенте
Процедура ОбработкаКоманды(ПараметрКоманды, ПараметрыВыполненияКоманды)

   //Помещаем обработку во временном хранилище
   АдресХранилища = "";
   Результат = ПоместитьФайл(АдресХранилища, "C:\ВнешняяОбработка.epf", , Ложь);          
   ИмяОбработки = ПодключитьВнешнююОбработку(АдресХранилища);
   
   // Откроем форму подключенной внешней обработки
   ОткрытьФорму("ВнешняяОбработка."+ ИмяОбработки +".Форма");

КонецПроцедуры

&НаСервере
Функция ПодключитьВнешнююОбработку(АдресХранилища)

   Возврат ВнешниеОбработки.Подключить(АдресХранилища);

КонецФункции
10 Rizhij_Nikitos
 
19.08.11
18:36
Дело в том, что этот код из модуля объекта внешней обработки, которая цепляется на документ, и там при нажатии на кнопку заполнить, там появляется наша обработка ты ее выдляешь, жмешь выполнить и пошло поехала, должна открыться форма. Код на толстом клиенте работает на все 100%, а вот на тонком ошибку выдает невозмжнот открыть, так как незивестна процедура (ОткрытьМОдально), так же с процедурой открыть и подобными. А этот пример где действует?
11 shuhard
 
19.08.11
18:54
(10) в тонком ясен пень
12 Rizhij_Nikitos
 
19.08.11
19:10
Вот а мне надо, чтобы и в тонком и толстом он работал,вот я не знаю как написать для тонкого часть, так как, если в тонком работает, то в толстом тоже заработает. Приму любые советы, на дисках ИТС смотрел не нашел полезного по этой тематике, а еще вопрос, как обработку внешнюю на табличную часть цепануть, что в процедуре СВЕДЕНИЯОВНЕШНЕЙОБРАБОТКЕ писать?
13 shuhard
 
19.08.11
19:11
(12)[вот я не знаю как написать для тонкого]
я знаю
ИТС знает
код на экране
14 Rizhij_Nikitos
 
19.08.11
19:20
(13) прости не понял, что за код на экране? То, что вы написали в 9, я упростил. А где смотреть на каком именно?
15 shuhard
 
19.08.11
19:23
(14) т.е. у тебя есть код для тонкого клиента и код для толстого клиента

отличить в каком клиенте ты запущен не умеешь ?
16 Rizhij_Nikitos
 
19.08.11
19:24
нет, у меня есть код, в котором запуст формы работает тока на толстом клиенте, как запустить форму обработки на тонком я в недоумении.
P.S.Извини, если завел вас в заблуждение
17 shuhard
 
19.08.11
19:25
(16) а код в (9) не работает ?
не верю
сам запускал
18 shuhard
 
19.08.11
19:27
(15) +1
#Если ТонкийКлиент Тогда
  …
#КонецЕсли
19 Rizhij_Nikitos
 
19.08.11
19:33
не знаю надо будет попробывать на работе в понедельник, еще вопрос как мне все это связать с моей процедурой Процедура ВыполнитьКоманду(ИдентификаторКоманды, ОбъектыНазначенияМассив) Экспорт ? И еще в процедуру ОткрытьФорму("путь",Параметры), можно же подавать?
20 Rizhij_Nikitos
 
19.08.11
19:34
ОткрытьФорму("ВнешняяОбработка."+ ИмяОбработки +".Форма");
Можно так сделать
Форма = ("ВнешняяОбработка."+ИмяОбработки+".Форма");
Форма.Открыть();
?
21 Rizhij_Nikitos
 
19.08.11
19:57
(9) не подойдет, так как я ее не програмно цепляю на документ, а интерактивно в 1С препприятии, как дополнительную обработку.
22 Rizhij_Nikitos
 
20.08.11
18:13
Up
23 Rizhij_Nikitos
 
20.08.11
19:12
up
24 Rizhij_Nikitos
 
21.08.11
12:40
Up
25 Rizhij_Nikitos
 
22.08.11
08:44
Up
26 Rizhij_Nikitos
 
22.08.11
08:58
Вверх
Программист всегда исправляет последнюю ошибку.