|
COM-Соед. с базой ЗиК 77 ГруппаРасчетов.ВсеУдержания ошибка Типы не совпадают(0) | ☑ | ||
---|---|---|---|---|
0
1CForEver
31.10.11
✎
00:13
|
Пытаюсь через ком-соединение проверить вхождение ВР в ГруппуРасчетов выдает ошибку Типы не совпадают (0), кто нить сталкивался с этим?
Код: // Создаем COM-соединение с базой 1С 7.7 cntr = Новый COMObject("V1CEnterprise.Application"); Попытка //Создаем возможность прерывания выполнения обработки ОбработкаПрерыванияПользователя(); //Определяем пользователя и пороль ПользовательИнформационнойБазы = ?(ПустаяСтрока(Пользователь), "", " /N" + Пользователь); ПарольПользователяИнформационнойБазы = ?(ПустаяСтрока(Пароль), "", " /P" + Пароль); //Производим инициализацию базы данных 1С 7.7 connection = cntr.Initialize(cntr.RMTrade, "/D""" + Сервер + """" + ПользовательИнформационнойБазы + ПарольПользователяИнформационнойБазы, "NO_SPLASH_SHOW"); спрВР77 = cntr.CreateObject("Справочник.ВидыРасчетов"); спрВР77.ВыбратьЭлементы(); Пока спрВР77.ПолучитьЭлемент() = 1 Цикл Расчет = спрВР77.Расчет; Если (спрВР77.Расчет.ВходитВГруппу(cntr.CalculationGroup.ВсеУдержания)=1) Тогда НоваяСтрока = ТаблицаВидовРвсчетаУдержаний77.Добавить(); НоваяСтрока.НаименованиеВидаРасчета = спрВР77.Наименование; НоваяСтрока.Расчет = Расчет; НоваяСтрока.ДляОтбора = СокрЛП(спрВР77.Наименование) + СокрЛП(Расчет); ИначеЕсли (спрВР77.Расчет.ВходитВГруппу(cntr.CalculationGroup.ВсеНачисления)=1) Тогда НоваяСтрока = ТаблицаВидовРвсчетаНачисления77.Добавить(); НоваяСтрока.НаименованиеВидаРасчета = спрВР77.Наименование; НоваяСтрока.Расчет = Расчет; НоваяСтрока.ДляОтбора = СокрЛП(спрВР77.Наименование) + СокрЛП(Расчет); Иначе Продолжить; КонецЕсли; КонецЦикла; Исключение Предупреждение("Не удалось соединиться с базой(" + ОписаниеОшибки() + ")!"); Предупреждение("Проверьте настройки подключения и перезапустите обработку!"); ЭтаФорма.Обновить(); Возврат; КонецПопытки; |
|||
1
1CForEver
31.10.11
✎
00:14
|
Ругается вот на это cntr.CalculationGroup.ВсеУдержания
|
|||
2
1CForEver
31.10.11
✎
00:45
|
Ну это я победил ))) - cntr.Метаданные.ГруппаРасчетов("ВсеУдержания") - вот так проканало
|
|||
3
1CForEver
31.10.11
✎
00:46
|
Но теперь блин новая ошибка
Ошибка при вызове метода контекста (ВходитВГруппу) Если (Расчет.ВходитВГруппу(cntr.Метаданные.ГруппаРасчетов("ВсеУдержания"))=1) Тогда по причине: Произошла исключительная ситуация (1С:Предприятие): Неверный параметр |
|||
4
1CForEver
31.10.11
✎
00:52
|
Нет не победил я первую ошибку (
|
|||
5
1CForEver
31.10.11
✎
03:20
|
Вот как сделал
спрВР77 = cntr.CreateObject("Справочник.ВидыРасчетов"); спрВР77.ВыбратьЭлементы(); ВсеУдержания = cntr.CreateObject("СписокЗначений"); ВсеНачисления = cntr.CreateObject("СписокЗначений"); Для сч=1 по cntr.Метаданные.ГруппаРасчетов() Цикл Если cntr.Метаданные.ГруппаРасчетов(сч).Идентификатор = "ВсеУдержания" Тогда Для СчВр = 1 По cntr.Метаданные.ГруппаРасчетов(сч).ВидРасчета.Количество() Цикл ВсеУдержания.ДобавитьЗначение(cntr.Метаданные.ГруппаРасчетов(сч).ВидРасчета.Получить(СчВр).Представление()); Сообщить(ВсеУдержания.ПолучитьЗначение(СчВР)); КонецЦикла; ИначеЕсли cntr.Метаданные.ГруппаРасчетов(сч).Идентификатор = "ВсеНачисления" Тогда Для СчВр = 1 По cntr.Метаданные.ГруппаРасчетов(сч).ВидРасчета.Количество() Цикл ВсеНачисления.ДобавитьЗначение(cntr.Метаданные.ГруппаРасчетов(сч).ВидРасчета.Получить(СчВр).Представление()); Сообщить(ВсеНачисления.ПолучитьЗначение(СчВР)); КонецЦикла; КонецЕсли; КонецЦикла; Пока спрВР77.ПолучитьЭлемент() = 1 Цикл Расчет = спрВР77.Расчет; Если (ВсеУдержания.Принадлежит(СокрЛП(Расчет.Наименование))=1) Тогда НоваяСтрока = ТаблицаВидовРвсчетаУдержаний77.Добавить(); НоваяСтрока.НаименованиеВидаРасчета = спрВР77.Наименование; НоваяСтрока.Расчет = Расчет.Наименование; НоваяСтрока.ДляОтбора = СокрЛП(спрВР77.Наименование) + СокрЛП(Расчет.Наименование); ИначеЕсли (ВсеНачисления.Принадлежит(СокрЛП(Расчет.Наименование))=1) Тогда НоваяСтрока = ТаблицаВидовРвсчетаНачисления77.Добавить(); НоваяСтрока.НаименованиеВидаРасчета = спрВР77.Наименование; НоваяСтрока.Расчет = Расчет.Наименование; НоваяСтрока.ДляОтбора = СокрЛП(спрВР77.Наименование) + СокрЛП(Расчет.Наименование); Иначе Продолжить; КонецЕсли; КонецЦикла; |
|||
6
DJ Anthon
31.10.11
✎
03:39
|
че делаешь-то ваще?
|
|||
7
1CForEver
31.10.11
✎
05:33
|
Даже вот так правильней всего!
спрВР77 = cntr.CreateObject("Справочник.ВидыРасчетов"); спрВР77.ВыбратьЭлементы(); ВсеУдержания = cntr.CreateObject("СписокЗначений"); ВсеНачисления = cntr.CreateObject("СписокЗначений"); Для сч=1 по cntr.Метаданные.ГруппаРасчетов() Цикл Если cntr.Метаданные.ГруппаРасчетов(сч).Идентификатор = "ВсеУдержания" или (cntr.Метаданные.ГруппаРасчетов(сч).Идентификатор = "ВозвратыНДФЛ") Тогда Для СчВр = 1 По cntr.Метаданные.ГруппаРасчетов(сч).ВидРасчета.Количество() Цикл ВсеУдержания.ДобавитьЗначение(СокрЛП(cntr.Метаданные.ГруппаРасчетов(сч).ВидРасчета.Получить(СчВр).Представление())); КонецЦикла; ИначеЕсли cntr.Метаданные.ГруппаРасчетов(сч).Идентификатор = "ВсеНачисления" Тогда Для СчВр = 1 По cntr.Метаданные.ГруппаРасчетов(сч).ВидРасчета.Количество() Цикл ВсеНачисления.ДобавитьЗначение(СокрЛП(cntr.Метаданные.ГруппаРасчетов(сч).ВидРасчета.Получить(СчВр).Представление())); КонецЦикла; КонецЕсли; КонецЦикла; Пока спрВР77.ПолучитьЭлемент() = 1 Цикл Расчет = спрВР77.Расчет; Если (ВсеУдержания.Принадлежит(СокрЛП(cntr.Метаданные.ВидРасчета(Расчет.Код).Представление()))=1) Тогда НоваяСтрока = ТаблицаВидовРвсчетаУдержаний77.Добавить(); НоваяСтрока.НаименованиеВидаРасчета = спрВР77.Наименование; НоваяСтрока.Расчет = СокрЛП(cntr.Метаданные.ВидРасчета(Расчет.Код).Представление()); НоваяСтрока.ДляОтбора = СокрЛП(спрВР77.Наименование) + СокрЛП(Расчет.Наименование); ИначеЕсли (ВсеНачисления.Принадлежит(СокрЛП(cntr.Метаданные.ВидРасчета(Расчет.Код).Представление()))=1) Тогда НоваяСтрока = ТаблицаВидовРвсчетаНачисления77.Добавить(); НоваяСтрока.НаименованиеВидаРасчета = спрВР77.Наименование; НоваяСтрока.Расчет = СокрЛП(cntr.Метаданные.ВидРасчета(Расчет.Код).Представление()); НоваяСтрока.ДляОтбора = СокрЛП(спрВР77.Наименование) + СокрЛП(Расчет.Наименование); Иначе Продолжить; КонецЕсли; КонецЦикла; |
|||
8
1CForEver
31.10.11
✎
05:34
|
(6) Переношу данные по зарплате за текущий год из 7ки в 8ку
|
|||
9
DJ Anthon
31.10.11
✎
07:12
|
жесть )
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |