Имя: Пароль:
1C
1С v8
Дополнительная внешняя обработка (управляемые формы)
,
0 ANDRU48
 
28.01.15
15:23
В бух 3.0 УниверсальныйОбменДаннымиXML выгрузил из конфигуратора во внешнюю, добавляю во внешнюю, прописал инициализацию. Открывается на секунду и закрывается, как сделать, чтобы осталась открытой?
1 ANDRU48
 
28.01.15
16:14
выходит моргает и закрывается
2 ДенисЧ
 
28.01.15
16:16
насколько я помню, у универсального обмена нет управляемой формы.....
3 ANDRU48
 
28.01.15
16:17
если зайти во все функции и там через обработки нажать, то она откроется
4 Dmitrii
 
гуру
28.01.15
16:25
Странно. Сделал всё так же (выгрузил в файл). У меня открывается. Только в отдельном окне, а не в окне 1С Предприятие.
5 ANDRU48
 
28.01.15
16:59
(4) открывается в отдельном окне, а потом закрывается сразу
6 SUA
 
28.01.15
18:38
а конфигуратором остановить?
может там хитрая проверка и сразу срабатывает Закрыть()?
7 Biker
 
28.01.15
18:48
Проще взять из КД
8 Поpyчик-4
 
29.01.15
00:14
(2) Давно есть. Отстал от жизни.
9 ANDRU48
 
29.01.15
08:55
(6) закомментировал, все что может закрывать при открытии и проверке.

(7) сегодня попробую взять из кд и вставить.
10 ANDRU48
 
29.01.15
10:19
попробовал вставить обработку из кд, все равно тоже самое, открывается форма на секунду и закрывается.
11 deniseek
 
29.01.15
10:29
(10) А через файл открыть открывается и не закрывается? )) Смотри как регистрировал подключение, если и так закрывается, значит не все заремил.
12 ANDRU48
 
29.01.15
10:37
напал на след:

Если ДанныеОбработки.ВариантЗапуска = ПредопределенноеЗначение("Перечисление.СпособыВызоваДополнительныхОбработок.ОткрытиеФормы") Тогда
        
        ДополнительныеОтчетыИОбработкиКлиент.ВыполнитьОткрытиеФормыОбработки(ВыполняемаяКоманда, ВладелецФормы, ВыполняемаяКоманда.ОбъектыНазначения);
        Закрыть();
        
    ИначеЕсли ДанныеОбработки.ВариантЗапуска = ПредопределенноеЗначение("Перечисление.СпособыВызоваДополнительныхОбработок.ВызовКлиентскогоМетода") Тогда
        
        ДополнительныеОтчетыИОбработкиКлиент.ВыполнитьКлиентскийМетодОбработки(ВыполняемаяКоманда, ВладелецФормы, ВыполняемаяКоманда.ОбъектыНазначения);
        Закрыть();
        
    ИначеЕсли ВидОбработок = ПредопределенноеЗначение("Перечисление.ВидыДополнительныхОтчетовИОбработок.ПечатнаяФорма")
        И ДанныеОбработки.Модификатор = "ПечатьMXL" Тогда
        
        ДополнительныеОтчетыИОбработкиКлиент.ВыполнитьОткрытиеПечатнойФормы(ВыполняемаяКоманда, ВладелецФормы, ВыполняемаяКоманда.ОбъектыНазначения);
        Закрыть();
        
    ИначеЕсли ДанныеОбработки.ВариантЗапуска = ПредопределенноеЗначение("Перечисление.СпособыВызоваДополнительныхОбработок.ВызовСерверногоМетода")
        Или ДанныеОбработки.ВариантЗапуска = ПредопределенноеЗначение("Перечисление.СпособыВызоваДополнительныхОбработок.СценарийВБезопасномРежиме") Тогда
        
        // Изменение элементов формы
        Элементы.ПоясняющаяДекорация.Заголовок = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
            НСтр("ru = 'Выполняется команда ""%1""...'"),
            ДанныеОбработки.Представление);
        Элементы.Страницы.ТекущаяСтраница = Элементы.СтраницаВыполненияОбработки;
        Элементы.СтраницыКомандныеПанели.ТекущаяСтраница = Элементы.СтраницаКоманднаяПанельСтраницыВыполненияОбработки;
        
        // Вызов сервера только после перехода формы в консистентное состояние.
        ПодключитьОбработчикОжидания("ВыполнитьСерверныйМетодОбработки", 0.1, Истина);
        
    КонецЕсли;
13 ANDRU48
 
29.01.15
10:37
вот тут идет закрытие
14 deniseek
 
29.01.15
10:39
(13) Ну так в регистрации обработки и укажи, что это вызов серверного метода, итить-колотить! А ты что указал? Или вообще не указал?????
15 ANDRU48
 
29.01.15
10:43
попробовал указать серверный теперь пишет см. журнал регистрации:

Длительные операции.Фоновое задание не найдено

Комментарий: 00000000-0000-0000-0000-000000000000
16 ANDRU48
 
29.01.15
10:48
пробовал через обычную внешнюю обработку сообщалку там такого не было
17 deniseek
 
29.01.15
10:50
(16) Текст как регистрируешь в студию.
18 ANDRU48
 
29.01.15
10:54
Функция СведенияОВнешнейОбработке() Экспорт
ПараметрыРегистрации = Новый Структура;
ПараметрыРегистрации.Вставить("Вид", "ДополнительнаяОбработка");
ПараметрыРегистрации.Вставить("Наименование", "простая обработка"); //имя под которым обработка будет зарегестрирована в справочнике внешних обработок
ПараметрыРегистрации.Вставить("Версия", "3.0");
ПараметрыРегистрации.Вставить("БезопасныйРежим", ИСТИНА);
ПараметрыРегистрации.Вставить("Информация", " Эта обработка простая обработка");//так будет выглядеть описание печ.формы для пользователя
ТаблицаКоманд = Получить Таблицу Команд();
ДобавитьКоманду(ТаблицаКоманд, "простая обработка", "простая обработка", "ОткрытиеФормы", Истина, "");
ПараметрыРегистрации.Вставить("Команды", ТаблицаКоманд);
Возврат ПараметрыРегистрации;
КонецФункции
19 deniseek
 
29.01.15
11:02
(18) // Возвращает сведения о внешней обработке.
Функция СведенияОВнешнейОбработке() Экспорт
    
    ПараметрыРегистрации = ДополнительныеОтчетыИОбработки.СведенияОВнешнейОбработке("2.2.2.1");
    ПараметрыРегистрации.Вид = ДополнительныеОтчетыИОбработкиКлиентСервер.ВидОбработкиДополнительнаяОбработка();
    ПараметрыРегистрации.Версия = "1.5";
    ПараметрыРегистрации.БезопасныйРежим = Истина;
    
    НоваяКоманда = ПараметрыРегистрации.Команды.Добавить();
    НоваяКоманда.Представление = НСтр("ru = 'Параметры загрузки номенклатуры из прайс-листа фирмы ""1С""'");
    НоваяКоманда.Идентификатор = "ФормаНастройки";
    НоваяКоманда.Использование = ДополнительныеОтчетыИОбработкиКлиентСервер.ТипКомандыОткрытиеФормы();
    НоваяКоманда.ПоказыватьОповещение = Истина;
    
    Возврат ПараметрыРегистрации;
КонецФункции

Вот тебе кусок из БСП, попробуй
20 ANDRU48
 
29.01.15
11:13
(19) тоже самое форма открывается на секунду и закрывается
21 Поpyчик-4
 
31.01.15
02:37
(0) (0)
(20) (20) Информация к размышлению или тонкий намёк
http://forum.infostart.ru/forum24/topic46071/message1101250/#message1101250
Программист всегда исправляет последнюю ошибку.