Как перетянуть элементы справочника из другой конфигурации?
21.07.2003
14:01
#1
Необходимо сделать обработку, которая добавляла бы в справочники элементы соответствующих справочников из другой конфигурации.
Как мне кажется, лучше всего для этого использовать OLE automation.
Подскажите, можно ли перенести элемент справочника открытого как OLE объект, в справочник текущей конфигурации, не перечисляя при этом в тексте обработки всех атрибутов справочника (например в цикле, по индексу элемента???)
Как мне кажется, лучше всего для этого использовать OLE automation.
Подскажите, можно ли перенести элемент справочника открытого как OLE объект, в справочник текущей конфигурации, не перечисляя при этом в тексте обработки всех атрибутов справочника (например в цикле, по индексу элемента???)
21.07.2003
15:20
#2
На диске ИТС есть хорошая статья "Передача значений типа Справочник, Документ и т.п. через OLE Automation". Советую почитать.
Вкратце там написано, что передавать такие значения через OLE Automation напрямую невозможно. Но предлагается использовать функции:
ЗначениеВСтроку()
ЗначениеИзСтроки()
Т.е. при передаче преобразуем в строку, при получении - восстанавливаем из строки. Такой финт ушами проходит только если справочники (документы и т.п.) имеют идентичную структуру.
Вкратце там написано, что передавать такие значения через OLE Automation напрямую невозможно. Но предлагается использовать функции:
ЗначениеВСтроку()
ЗначениеИзСтроки()
Т.е. при передаче преобразуем в строку, при получении - восстанавливаем из строки. Такой финт ушами проходит только если справочники (документы и т.п.) имеют идентичную структуру.
22.07.2003
09:44
#3
Спасибо за совет, это то, что мне нужно. Еще вопрос: что такое диск ИТС и где его взять? В коробке с 1С такого диска не было.
22.07.2003
10:24
#4
Подробно о диске ИТС:
- информационно технологическое сопровождение. Подписка на диск ИТС - это отдельная услуга фирмы 1С. Каждый месяц будет приходить 1 CD, на котором можно найти разнообразные методические статьи, обучающие материалы, новые релизы конфигураций и программного ядра, тесты по сертификации на 1С-Профессионал, правовая поддержка, бухгалтерские издания, ответы на вопросы, материалы сайта Бух.1С.РУ, справочник хозяйственных операций и еще много чего полезного.
Подписка на 3 месяца - 75 у.е., 6 месяцев - 144 у.е., 12 месяцев - 276 у.е.
- информационно технологическое сопровождение. Подписка на диск ИТС - это отдельная услуга фирмы 1С. Каждый месяц будет приходить 1 CD, на котором можно найти разнообразные методические статьи, обучающие материалы, новые релизы конфигураций и программного ядра, тесты по сертификации на 1С-Профессионал, правовая поддержка, бухгалтерские издания, ответы на вопросы, материалы сайта Бух.1С.РУ, справочник хозяйственных операций и еще много чего полезного.
Подписка на 3 месяца - 75 у.е., 6 месяцев - 144 у.е., 12 месяцев - 276 у.е.
22.07.2003
13:35
#5
Судя по синтаксис-помощнику в качестве параметров функции ЗначениеВСтроку() можно передавать только объекты типа список значений и таблица значений. При попытке передать в кач. параметра объект типа OLE фунция возвратила пустую строку.
. Не могли бы Вы выслать мне на marchel@km.ru названную Вами статью с диска ИТС?
Заранее благодарен.
Заранее благодарен.
22.07.2003
17:10
#6
Легче использовать уже готовую обработку TranRef.ert с диска ИТС, которая переносить элементы справочника через текстовый файл.
23.07.2003
11:28
#7
"К сожалению, у меня нет диски ИТС, не могли бы вы скинуть мне на marchel@km.ru эту обработку?
Кстати, вопрос в продолжение темы:
Методу 1С OLE сервера EvalExpr передается имя функции с переменными в кач. параметров, при этом 1С ругается, что переменные не объявлены. Предусмотрена ли в этом случае передача параметров?
Пример:
ТЗ=" текст запроса...... ";
Таб=V7.EvalExpr("СформироватьЗапросЧерезOLE(ДатаНачалаРП,ДатаОкончанияРП,ТЗ)");
1С сообщает: Переменная не определена (ТЗ)???
"
Кстати, вопрос в продолжение темы:
Методу 1С OLE сервера EvalExpr передается имя функции с переменными в кач. параметров, при этом 1С ругается, что переменные не объявлены. Предусмотрена ли в этом случае передача параметров?
Пример:
ТЗ=" текст запроса...... ";
Таб=V7.EvalExpr("СформироватьЗапросЧерезOLE(ДатаНачалаРП,ДатаОкончанияРП,ТЗ)");
1С сообщает: Переменная не определена (ТЗ)???
"
23.07.2003
15:13
#8
"А если попробовать так:
V7.СформироватьЗапросЧерезOLE(ДатаНачалаРП,ДатаОкончанияРП,ТЗ);
Ведь система 1С:Предприятие в качестве OLE Automation сервера предоставляет полный доступ к своему глобальному контексту. Поэтому объект OLE-сервер в качестве своего метода может иметь процедуры и функции глобального модуля, объявленные с ключевым словом Экспорт.
То есть, чтобы использовать такую конструкцию, подпрограмма СформироватьЗапросЧерезOLE() должна быть описана в гл. модуле с ключевым словом Экспорт."
V7.СформироватьЗапросЧерезOLE(ДатаНачалаРП,ДатаОкончанияРП,ТЗ);
Ведь система 1С:Предприятие в качестве OLE Automation сервера предоставляет полный доступ к своему глобальному контексту. Поэтому объект OLE-сервер в качестве своего метода может иметь процедуры и функции глобального модуля, объявленные с ключевым словом Экспорт.
То есть, чтобы использовать такую конструкцию, подпрограмма СформироватьЗапросЧерезOLE() должна быть описана в гл. модуле с ключевым словом Экспорт."
Как спозиционироваться на определенную строку в документе (выписке)?Обработка переноса справочников из Бест в 1С
Читают тему
(гостей: 1)