Имя: Пароль:
1C
1С v8
Конвертация данных
0 zerat
 
02.02.17
13:30
Здравствуйте. Столкнулся с проблемой вызова внешней обработки. Добавил в подключаемые обработки новую обработку, в обработчике конвертации после загрузки правил обмена пытаюсь ее вызвать, но система выдает ошибку, что поля объекта «внешняяОбработка2» не обнаружено и нет возможности вызвать метод ОткрытьФорму. С 8.3 перешел на 8.2 обычное приложение и тогда следующий код нормально выполнился и обработка отобразилась ОбрПараметры=ДопОбработки.ВнешняяОбработка2.ПолучитьФорму(«ФормаОбычная»); ОбрПараметры.Открыть(); Соответсвенно, вопрос, а в 8.3 УФ есть возможность вызвать внешние обработки?
1 FIXXXL
 
02.02.17
13:41
подозреваю, что на сервере пытаешься форму получить
2 zerat
 
02.02.17
13:47
ПослеЗагрузкиДанных пишу следующий код


ПараметрыФормы = Новый Структура;

СопоставлениеНоменклатуры = Новый ТаблицаЗначений;
СопоставлениеНоменклатуры.Колонки.Добавить("GUID");
СопоставлениеНоменклатуры.Колонки.Добавить("КодХО");
СопоставлениеНоменклатуры.Колонки.Добавить("НаименованиеХО");
СопоставлениеНоменклатуры.Колонки.Добавить("ЭтоГруппа");
СопоставлениеНоменклатуры.Колонки.Добавить("GUID_Родитель");
СопоставлениеНоменклатуры.Колонки.Добавить("Родитель");


Если (Параметры.НеНайденаяНоменклатура.Количество()>0) ИЛИ (Параметры.НеНайденыеКонтрагенты.Количество()>0) ИЛИ (Параметры.НеНайденыеСклады.Количество()>0) Тогда
    
    ЕстьЭлементы = Ложь;
    
    Для Каждого КлючЗначение из Параметры.НеНайденаяНоменклатура Цикл
        
        НоваяСтрока = СопоставлениеНоменклатуры.Добавить();
        НоваяСтрока.GUID             = КлючЗначение.Ключ;
        НоваяСтрока.КодХО            = КлючЗначение.Значение.Код;
        НоваяСтрока.НаименованиеХО     = КлючЗначение.Значение.Наименование;
        НоваяСтрока.ЭтоГруппа         = КлючЗначение.Значение.ЭтоГруппа;
        НоваяСтрока.GUID_Родитель     = КлючЗначение.Значение.GUID_Родитель;
        НоваяСтрока.Родитель         = КлючЗначение.Значение.Родитель;
        
        Если НЕ НоваяСтрока.ЭтоГруппа Тогда
            ЕстьЭлементы = Истина;
        КонецЕсли;
        
    КонецЦикла;
    ПараметрыФормы.Вставить("СопоставлениеНоменклатуры", СопоставлениеНоменклатуры);
    Если НЕ ЕстьЭлементы Тогда
        
        СопоставлениеНоменклатуры.Очистить();    
        
    КонецЕсли;

    Если СопоставлениеНоменклатуры.Количество()>0 Тогда
        
        ОткрытьФорму("ДопОбработки.ОбработкаСопоставления.ФормаУправляемая", ПараметрыФормы);  
        
    КонецЕсли;
    
КонецЕсли;
3 FIXXXL
 
02.02.17
13:56
(2) дело не в коде, а в том. где он выполняется
в обычном приложении - на клиенте, в управляемом - на сервере
ибо весь код отрабатывает в модуле объекта обработки УниверсальныйОбменДанными
4 zerat
 
02.02.17
13:59
(3) как мне тогда обработку свою открыть?
5 FIXXXL
 
02.02.17
14:14
(4) на сервере никак
чего сделать хочешь в форме?
6 zerat
 
02.02.17
14:20
(5) смысл такой, я накапливаю номенклатуру во время загрузки которую не нахожу в базе приемник, затем хочу открыть форму для того чтобы пользователь сопоставил номенклатуру в данной обработке.
7 zerat
 
02.02.17
14:22
так у меня даже в допОбработках ничего нет....

    Для сч=0 по ДопОбработки.Количество()-1 Цикл
        сообщить(ДопОбработки[сч]);    
    КонецЦикла;

структура пустая получается
8 FIXXXL
 
02.02.17
14:26
(7) вместо ОткрытьФорму("ДопОбработки.ОбработкаСопоставления.ФормаУправляемая", ПараметрыФормы);

напиши ОБР = ДопОбработки.ОбработкаСопоставления.Создать()
взлетит?

я таким честно не занимался еще :) доп.обработки к правилам

у тебя обмен пользователь запускает?
9 zerat
 
02.02.17
14:28
(8) обмен пользователь сам запускает, выгрузка происходит из базы 2.0 в базу 3.0, а базе 3.0 через универсальный обмен
10 zerat
 
02.02.17
14:32
(8) Поле объекта не обнаружено "ОбработкаСопоставления"
11 zerat
 
02.02.17
15:10
гуру КД подскажите пожалуйста.......
12 karmag
 
03.02.17
00:51
Не хочу создавать новую тему, спрошу тут. У меня Розница Базовая, хотел перенести данные из базы УТ 11.1 в свою Розницу. Мне скинули нужные файлы из УТ, поставил себе КД, а она при запуске просит лицензию, КД нужно отдельно покупать или с базовой версией она не работает?
13 Torquader
 
03.02.17
01:56
(12) Саму КД покупать не нужно, но нужно иметь лицензию на запуск произвольной конфигурации, чего базовая версия не даёт.
Пользователь не знает, чего он хочет, пока не увидит то, что он получил. Эдвард Йодан