#0
by SyncMaster7
Платформа 8.2.15.289. Конфигурация УПП 1.3.28.1. Необходимо по OLE перекинуть данные по договорам из обной базы в другую. Конфигурации одинаковые и без изминений. Пишу внешную обработку. Создаю коннект. Все работает. Данные прочитать из второй базы можно. Но как только я пробую создать в ней новый элемент - получаю ошибку: {Форма.Форма.Форма}: Ошибка при вызове метода контекста (СоздатьЭлемент) СпрДоговорыКонтрагентов.СоздатьЭлемент; по причине:Произошла исключительная ситуация (1C:Enterprise 8.2.15.289): {ОбщийМодуль.ОбщегоНазначения.Модуль(29,2)}: Переменная не определена (ОбщегоНазначенияКлиентСервер) Иду по ошибке - там процедура - ОбщегоНазначенияКлиентСервер.ДополнитьТаблицу(Таблица2, ТаблицаРезультат); Зашел в ОбщийМодуль.ОбщегоНазначения там нахожу данную процедуру ДополнитьТаблицу. К тому же она - Экспорт. Вот текст: В чем проблема?
#2
by бомболюк
ну значит этот общий модуль недоступен для внешнего соединения, чего ж тут непонятного то.
#5
by SyncMaster7
Так везде и всюду (начиная с книжек Радченко или Габеца) приводят именно такой пример текста, как у меня. И в 8.1 у меня оно работало. Да и с 7-й проблем не было. Что предпринять то, вроде задачка совсем простая, а не получается.
#8
by SyncMaster7
Надо именно из базы, где запускается обработка данные по договору скинуть во вторую базу. То есть, создавать новый элемент справочника надо именно там.
#9
by бомболюк
процедура этого модуля вызывается где нить в модуле объекта. Объект создается во внешнем соединении, а модуль наверняка для внешнего соединения недоступен. Проверь, есть там галка соответствующая?
#11
by SyncMaster7
В книжках приводят примеры для справочника Организации и Номенклатура. Но я для примера и их пробовал - та же ошибка.
#13
by SyncMaster7
Кстати, если поменять V8 = Новый COMObject ("V82.COMConnector"); на V8 = Новый COMObject ("V82.Application"); и грузить полное приложение, то ошибка выскакивает уже другая: {Форма.Форма.Форма}: Значение не является значением объектного типа (Справочники) СпрДоговорыКонтрагентов = Соединение.Справочники.ДоговорыКонтрагентов;
#14
by бомболюк
в Application и COMConnector по разному соединение организуется. Сделай не Соединение = V8.Connect ("Srvr =""appl-srv""; Ref = ""it""; Usr =""User""; Pwd = ""123"""); а
#19
by SyncMaster7
Сорри, конечно модуль ОбщегоНазначенияКлиентСервер, а не ОбщегоНазначения. И галка на внешнее соединение у него не стоит. Поскольку конфу трогать нельзя - какие есть варианты обхода?
#27
by SyncMaster7
Да фигня вопрос. Просто всю голову сломал с OLE, а на присвоения уже не обращал внимание. Вернул V8 = Новый COMObject ("V82.COMConnector"); Вставил код Лоботряса - получил ошибку {Форма.Форма.Форма}: Поле объекта не обнаружено (Справочники) СпрДоговорыКонтрагентов = Соединение.Справочники.ДоговорыКонтрагентов;
#29
by Лоботряс
Не могет быть... А соединение точно подключилось? Или у тебя в подключаемой конфе нет справочников...
#30
by SyncMaster7
Габец Простые примеры разработки стр.348. Про коннект опускаю - там к файловой базе. Далее - Далее идет обработка выборки и в ней:
#32
by SyncMaster7
Точно подключилось. Я могу из справочника ДоговораКонтрагентов получить любые данные. Может тут собака порылась в SQL базе, а не в файловой?
#34
by hhhh
ты там точно в полуобморочном состоянии? Лоботряс тебе V8= кинул для Application, а ты его в В COMConnector присобачиваешь.
#36
by SyncMaster7
Да я уже понял, что накосячил с присвоением. Поправил, но ошибка все равно возникает. Теперь с самим справочником. А если вернуть Application, то получаю ошибку {Форма.Форма.Форма}: Поле объекта не обнаружено (ДоговорыКонтрагентов) СпрДоговорыКонтрагентов = Соединение.Справочники.ДоговорыКонтрагентов;
#38
by SyncMaster7
Да я уже все варианты перебираю. И с COMConnector и с Application. Но вообще-то надо для COMConnector сделать.
#40
by SyncMaster7
Какие-нибудь идеи еще будут? Может это трабл с платформой - и стоит перейти на 16? Или как?
#42
by SyncMaster7
Ок Найдена организация с кодом 000000020 ее ИНН 5008053412 Найден договор с кодом 000021128 Химмашстарт
#44
by SyncMaster7
Естественно я попробовал данный код перед отправкой предыдущего сообщения. И получаю ошибку с которой начинал данную тему: {Документ.Договор.Форма.ФормаДокумента.Форма}: Ошибка при вызове метода контекста (СоздатьЭлемент) НовыйДоговор = МенеджерДоговораУПП.СоздатьЭлемент; по причине: Произошла исключительная ситуация (1C:Enterprise 8.2.15.289): {ОбщийМодуль.ОбщегоНазначения.Модуль(29,2)}: Переменная не определена (ОбщегоНазначенияКлиентСервер) Я уже понял, что модуль ОбщегоНазначенияКлиентСервер не имеет галочки Внешнее соединение. Вопрос прежний - как это обойти без изменения конфигурации?
#45
by hhhh
ну проанализируй при каких условиях вызывается ОбщегоНазначенияКлиентСервер.ДополнитьТаблицу(Таблица2, ТаблицаРезультат); и сделай, чтобы эти условия не возникли.
#47
by Лоботряс
+ Причем вызывается эта процедура откуда-то из модуля объекта документа. Из обработки заполнения наверное?
#48
by SyncMaster7
Ради интереса установил галку ОбщегоНазначенияКлиентСервер у и получил очередную ошибку {Документ.Договор.Форма.ФормаДокумента.Форма}: Ошибка при вызове метода контекста (Записать) НовыйЭлемент.Записать; по причине: Произошла исключительная ситуация (1C:Enterprise 8.2.15.289): Не удалось записать: "Договор контрагента"!
#49
by Лоботряс
СправочникОбъект.<Имя справочника> (CatalogObject.<Имя справочника>) ОбработкаЗаполнения (Filling) ... Возникает при вводе элемента справочника на основании, а также при выполнении метода Заполнить, при вводе на основании, а также при интерактивном вводе нового. В процедуре-обработчике этого события должен быть описан сам алгоритм заполнения реквизитов элемента справочника на основании переданного значения.
#52
by zladenuw
ну так есть подписки на события. может там участвует твой объект. вот он и лезет бог знает куда
#54
by SyncMaster7
Это из первой конфигурации. В ней на форме документа Договор есть кнопка, при нажатии на которую и должен быть записан договор во вторую конфигурацию.
#56
by SyncMaster7
По хорошему обе конфы менять нельзя. Просто ради проверки в конфе приемнике я установил галочку на модуль ОбщегоНазначенияКлиентСервер и ошибка эта исчезла. Появилась следующая - с записью нового элемента справочника ДоговораКонтрагентов.
#59
by SyncMaster7
{Документ.Договор.Форма.ФормаДокумента.Форма}: Поле объекта не обнаружено (ОбменДанными) СпрДоговорыКонтрагентов.ОбменДанными.Загрузка = Истина; Хотя хелп такой метод у справочника показывает. Но видимо для справочника из другой конфигурации по ОЛЕ не работает.
#62
by SyncMaster7
Заработало. Большое спасибо. Остался только вопрос с галочкой на ОбщегоНазначенияКлиентСервер.
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям
Похожие вопросы 1С
В этой группе 1С
- Просклонять() "Генеральный директор" в родительном падеже
- Картинка в макете - как не выводить на печать?
- v8: ЗиК БУ дать возможность кадровику смотреть отчет Расчетные Листки
- УПП: Получение услуг по переработке
- Цветопередача в HP LJ 1215
- Конвертация данных, как обратиться к строке источника?
- Конвертация версии проф в базовую
- Журналы документов и общие реквизиты - несовместимо?
- Не считает НДФЛ с отпускных
- как вывести итоги в СКД
- Где указывается зона приемки в УТ 11
- Чтение инвентарных карточек из базы паруса
- УФ открытие гиперссылки в табличной части
- УФ Ширина поля ТД вида Поле флажка
- Сортировка в СКД
- сортировка по клику на шапку колонки
- В запросе выбрать минимум из трех значений.
- Как убрать субконто из счета?
- Могу ли я самостоятельно сформировать секцию "Параметры" при выводе СКД?
- Отчет о розничных продажах в БП 2_0