#0
by Vitus
Помогите, пожалуйста, решить проблему!!! Подключаюсь к примеру к базе 1С: Зарплата и кадры (через OLE), и хочу из справочника "Сотрудники" получить поля: Код, Наименование, Должность. Первые два поля - проблем не возникает, а третье не дает, говорит что "Invalid Variant Operation"!!! И вообще она не хочит отдавать поля у которых тип указан в виде, например, как у должности - Справочник.Должности. Я уже все перепробовал. Подскажите решение проблемы... Код: OleSotr:=Ole1C.CreateObject('Справочник.Сотрудники'); if not VarIsEmpty(OleSotr) then begin if OleSotr.ВыбратьЭлементы>0 then begin while OleSotr.ПолучитьЭлемент>0 do
#1
by Андрюха
Имхо, дело тут не в Delphi, а в чём-то другом. Сделай сначала свою обработку для работы из другой базы 1С, а когда в ней отловишь баги - перепишешь на Delphi.
#3
by AAAChel
Должность - это агрегатный тип данных, в каком виде ты бы собирался получить его в дельфи?) ему нет у тебя соответствия
#8
by Vitus
И что делать? Как мне получить текущее (на сегодняшний день) значение этого аттрибута для конкретной записи???
#11
by MMF
ListBox1.Items.Add(OleSotr.Код+' '+OleSotr.Наименование+' '+ OleSotr.GetAttrib('Должность'));
#14
by GrayT
Ну да по идее. Хранит ссылку на объект должность StufPost := OleSotr.GetAttrib('Должность');
#19
by ШтушаКутуша
"Должность"-справочник и периодический элемент,тогда: try if isPeriodic(FName,id)=1 then if cur_period.ИспользоватьОбъект(CVar(id),CDisp(FRef.ТекущийЭлемент))=0 then
#20
by ШтушаКутуша
+19 где Fv77.Periodically это: CreateObject("Периодический"), Fv77 это v77.Application
#21
by romix
Через ОЛЕ невозможно получить значения, отличные от простых типов: числа, строки, даты...
#25
by romix
Ну да, надо приводить к строке, потом передавать. Например, вместо элемента справочника передавать его код, а вместо документа - ЗначениеВСТроку.
#26
by ШтушаКутуша
не так,щас неявно ты подразумевал маршаллинг,а ты заметил в приведение к типам CVar=OleVariant и CDisp=IDispatch? так вот,здесь маршаллинг обеспечивается самой технологией COM/OLE
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям
Похожие вопросы 1С
В этой группе 1С
- Загрузка xml в налогоплательщик.
- Выгрузка данных из ТиС 9.2 в ТиС 9.2
- Как в 1С:Бухгалтерия вести учет сразу по нескольким фирмам, используя одну базу
- V7: Как выгрузить таблицу в xls, чтоб там были формулы?
- Удержанный НДФЛ с дивидендов
- T-SQL - как определить дату начала года имея дату документа?
- УПП, зарплата: учет рабочего времени
- Как вывести печатную форму в ворд?
- Как сделать запрос к таблицам другой(не 1С) SQL базы?
- Каким образом удалить проводки(записи в регистре бухгалтерии)
- Получение остатков из регистра накопления 1 запросам на 2 даты
- Как в ТиС 7.7. сделать чтобы пользователь видель только свои данные
- Не целое число прописью, как сделать?
- Больной Вопрос! Как узнать кто заблокировал объект!
- Преобразование из периферийной базы в самостоятельную
- Утилита для обновления нетиповых конфигураций?
- Изменение прав пользователя без обновления конфигурации.
- Какой размер заставки в пикселях?
- Не могу добавить программно колонку в табличную часть документа
- Полнотекстовый поиск или ИНДЕКС?