|
Delphi + 1C 8.2 + COM Соединение | ☑ | ||
---|---|---|---|---|
0
acsbaks
24.08.11
✎
09:59
|
Подскажите, если кто сталкивался:
С соединением проблем нет, если я пишу так: Cat_Obj := s1C8_com_Connector.Справочники.Клиенты; Cat_New := Cat_Obj.СоздатьЭлемент(); Cat_New.Наименование := par; Cat_New.Записать(); То все хорошо, но я не знаю в какой справочник я буду записывать данные и какие реквизиты буду заполнять, проблема возникла на первом этапе 1. Cat_Obj := s1C8_com_Connector.Справочники[Inner_catalog]; 2. Cat_New := Cat_Obj.СоздатьЭлемент(); 3. Cat_New.Наименование := par; 4. Cat_New.Записать(); На строчке 1 возникает ошибка - "Недопустимое число параметров"! вообщем куда копать???? |
|||
1
lxs
24.08.11
✎
10:02
|
тип Inner_catalog - строка;
|
|||
2
lxs
24.08.11
✎
10:03
|
к (1) - это вопрос)
|
|||
3
lxs
24.08.11
✎
10:04
|
||||
4
acsbaks
24.08.11
✎
10:04
|
Да и она равна - "Клиенты"
|
|||
5
lxs
24.08.11
✎
10:05
|
Читай статью. Без допила 1С не прокатит.
|
|||
6
lxs
24.08.11
✎
10:06
|
..и учись гуглом пользоваться, 15 секунд поиска по строке "delphi 1С Справочник["
|
|||
7
acsbaks
24.08.11
✎
10:06
|
Грустно грустно, ведь универсальную службу надо сделать, для любой конфы
|
|||
8
lxs
24.08.11
✎
10:09
|
(7) Увы.. С некоторыми версиями компиляторов VBA, помнится, такие же проблемы были и решались только таким образом.
|
|||
9
Reset
24.08.11
✎
10:14
|
я не в теме(не знаю, что такое дельфи), а s1C8_com_Connector.Вычислить("Справочники."+Inner_catalog) не сработает? :)
|
|||
10
Reset
24.08.11
✎
10:15
|
некрасиво конечно
|
|||
11
acsbaks
24.08.11
✎
10:20
|
Неа, пробовал и так
|
|||
12
lxs
24.08.11
✎
10:22
|
(9) порой инет, никто не нашел иного обхода. Хочешь стать пионЭром?
|
|||
13
acsbaks
24.08.11
✎
11:02
|
Так, ну с эти разобрался, конструкция работает
Cat_Obj := s1C8_com_Connector.NewObject('СправочникМенеджер.'+Inner_catalog); Cat_New := Cat_Obj.СоздатьЭлемент(); Cat_New.Наименование := par; Cat_New.Записать(); но как терь заполнить значение реквизита, имя которого я опять же не знаю, на строчку - 3 ругается при компиляции, delphi требует в квадратные скобки integer пихать 1. Cat_Obj := s1C8_com_Connector.NewObject('СправочникМенеджер.'+Inner_catalog); 2. Cat_New := Cat_Obj.СоздатьЭлемент(); 3. Cat_Obj[Inner_number] := par; 4. Cat_New.Записать(); |
|||
14
acsbaks
24.08.11
✎
11:22
|
up?
|
|||
15
acsbaks
24.08.11
✎
11:53
|
Если кому интересно!!! как можно на зная явно реквизитов и имени справочника записать новый элемент
Cat_Obj := s1C8_com_Connector.NewObject('СправочникМенеджер.'+Inner_catalog); Cat_New := Cat_Obj.СоздатьЭлемент(); SetDispatchPropValue(Cat_New,Inner_Number,par); Cat_New.Записать(); |
|||
16
Serginio1
24.08.11
✎
11:57
|
В Delphi 7 Проблема с вызовом методов 1С заключалась в том, что все параметры передаются по ссылке. Поэтому строковые параметры в методах лучше передавать как ''+Параметр. Тогда данные передаются по значению.
Второе это использование диспинтерфейсов. Смотри http://1c.proclub.ru/modules/mydownloads/personal.php?cid=115&lid=2019 |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |