|
работа с COM | ☑ | ||
---|---|---|---|---|
0
Black Dragon
26.08.11
✎
17:36
|
Всем доброго здравия!
есть такой момент Если ЕстьПодключение Тогда СпрКонтрагенты = База.CreateObject("Справочник.Контрагенты"); СпрКонтрагентыПодчиненный = База.CreateObject("Справочник.я_Контрагенты"); СпрКонтрагенты.ВыбратьЭлементы(); Пока СпрКонтрагенты.ПолучитьЭлемент() Цикл ДопЭлемент = СпрКонтрагентыПодчиненный.НайтиПоРеквизиту("Контрагент",СпрКонтрагенты.ТекущийЭлемент()); Если ДопЭлемент <> Неопределено Тогда Если СпрКонтрагенты.ЭтоГруппа Тогда НовыйКонтрагент = Справочники.Контрагенты.СоздатьГруппу(); НовыйКонтрагент.Наименование = СпрКонтрагенты.Наименование; Иначе НовыйКонтрагент = Справочники.Контрагенты.СоздатьЭлемент(); и вот при вызове НайтиПоРеквизиту("Контрагент",СпрКонтрагенты.ТекущийЭлемент()) сообщает что метод не найден.Как это? |
|||
1
lxs
26.08.11
✎
17:37
|
а причем тут 8.1?
|
|||
2
lxs
26.08.11
✎
17:38
|
(точнее 8)
|
|||
3
lxs
26.08.11
✎
17:39
|
СпрКонтрагенты = База.Контрагенты;//если все-таки это снеговик
|
|||
4
Black Dragon
26.08.11
✎
17:40
|
а методами 8-ки можно работать?
|
|||
5
NcSteel
26.08.11
✎
17:41
|
(4) Пятница?
|
|||
6
lxs
26.08.11
✎
17:44
|
(5) под пивком по ходу))
|
|||
7
Black Dragon
26.08.11
✎
17:44
|
{Форма.Форма.Форма(6)}: Поле объекта не обнаружено (Контрагенты)
СпрКонтрагенты = База.Контрагенты; |
|||
8
Black Dragon
26.08.11
✎
17:45
|
(6) под пивком? ))))))
|
|||
9
Black Dragon
26.08.11
✎
17:46
|
База = Новый COMОбъект("V77.Application");
Попытка СтрокаПодключения = "/D""" + СокрЛП(ПутьБазы) + """ /N""" + СокрЛП(Пользователь) + """ /P""" + СокрЛП(Пароль) + """"; Открыта = База.Initialize(База.RMTrade,СтрокаПодключения,"NO_SPLASH_SHOW"); Если Открыта Тогда Сообщить("Подключение установлено!"); ЭлементыФормы.НадписьСостояниеПодключения.Заголовок = "Подключение к базе данных установлено"; ЕстьПодключение = Истина; Иначе Предупреждение("Ошибка при подключении!"); ЕстьПодключение = Ложь; КонецЕсли; Исключение Предупреждение("Ошибка при подключении!"); ЕстьПодключение = Ложь; КонецПопытки; |
|||
10
lxs
26.08.11
✎
17:50
|
(9) Тогда мои сообщения не читай
|
|||
11
lxs
26.08.11
✎
17:50
|
И в 7.7 разве есть метод найтиПоРеквизиту() ?
|
|||
12
Black Dragon
26.08.11
✎
17:51
|
НайтиПоРеквизиту(<?>,,);
Синтаксис: НайтиПоРеквизиту(<ИмяРеквизита>,<Значение>,<ФлагГлобальногоПоиска>) Назначение: Найти элемент справочника по значению реквизита. Возвращает: 1 - если действие выполнено; 0 - если действие не выполнено (элемент не найден). Параметры: <ИмяРеквизита> - строка с наименованием реквизита; <Значение> - значение реквизита для поиска; <ФлагГлобальногоПоиска> - флаг поиска: 0 - поиск выполняется в пределах подчинения справочника, 1 - поиск выполняется по всему справочнику. Замечание: Метод можно использовать только для реквизитов с установленным признаком ''Сортировка''. Метод можно использовать только для объектов, созданных функцией СоздатьОбъект. |
|||
13
Black Dragon
26.08.11
✎
17:54
|
но все таки в чем может быть причина? как может быть метод не найден?
|
|||
14
Black Dragon
26.08.11
✎
18:04
|
Вот нашел:
Заметьте, что если вместо "Сообщить(Спр.Наименование)" вы укажете "Сообщить(Спр.ТекущийЭлемент())", то вместо строкового/числового представления этого элемента программа выдаст вам в окошке сообщение "OLE" |
|||
15
vmv
26.08.11
✎
18:34
|
7.7? фу - некрософт
|
|||
16
Black Dragon
30.08.11
✎
10:51
|
хотел бы вернуться к обсуждению вопроса - есть два справочника, один основной, второй имеет реквизит-ссылку на основной, как кроме прямого перебора подчиненного выбрать элемент "подчиненного" для переноса в базу v8?
|
|||
17
Black Dragon
30.08.11
✎
10:57
|
Видимо придется переносить через файл...
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |