Новости для бухгалтера, бухучет, налогообложение, отчетность, ФСБУ, прослеживаемость и маркировка, 1С:Бухгалтерия

Вход или Регистрация

Показывать по 10 20 40 сообщений
Новая тема Ответить
Письмо в техподдержку 1С
[Прочее]

Работа с OLE- полный мрак Документации

Владимир49
читатель
офлайн
Дата регистрации: 10.12.2007
Сообщений: 10
Пост №1
 
24.12.2007 11:32

"Хочу работать с документами - СчетЗаказчику. База находится на диске D- в директории ЖДЭ-М<br> Пишу-<br> Application = СоздатьОбъект("V77.Application");<br> Application.Initialize(Application.RMTrade,"DD:\ЖДЭ-М\","""");<br> СчетСтар = Application.EvalExpr("СоздатьОбъект(""""Документ.СчетЗаказчику"""")");<br><br> И где я только кавычки не ставил и не убирал пытаясь разобраться в документации полный крах. Нельзя же так бездарно писать документацию к программе? Может кто поможет!"

VitiaN
читатель
офлайн
Дата регистрации: 26.04.2005
Сообщений: 15
Пост №2
 
24.12.2007 12:23

" //Создается объект с OLE идентификатором: <br> //V1СEnterprise.Application — версия независимый ключ; <br> //V77.Application — версия зависимый ключ; <br> //V77S.Application — версия зависимый ключ, SQL версия; <br> //V77L.Application — версия зависимый ключ, локальная версия; <br> //V77M.Application — версия зависимый ключ, сетевая версия. <br> //Выполняется инициализация системы 1С:Предприятие методом Initialize. <br> //Вызываются атрибуты и методы системы 1С:Предприятие как OLE Automation сервера <br> V7=СоздатьОбъект("V77.Application");<br><br> Польз="Unl";Пароль="un"; // имя пользователя, пароль<br>// База - путь(каталог) Вашей базы -текстовая переменная- "D:\ЖДЭ-М\"<br><br> strApp = "/D"""""+База+""""" /N"""""+Польз+""""" /P"""""+Пароль+"""";<br> Попытка<br> Результат = v7.initialize(v7.RMTrade,strApp,"NO_SPLASH_SHOW");<br> Исключение<br> Сообщить("Ошибка подключения к базе данных - "+ОписаниеОшибки(),"!");<br> Возврат;<br> КонецПопытки;<br> Если Результат=0 Тогда<br> Предупреждение("Не прошла инициализация Базы!");<br> Возврат;<br> КонецЕсли;<br><br> Спр = V7.CreateObject("Справочник.Контрагенты");<br> СпрТ = V7.CreateObject("Справочник.Номенклатура");<br> СпрТ.НайтиПоКоду("100000037");<br><br> ОкУсл = V7.CreateObject("Документ.ОказаниеУслуг");<br> СчетФ = V7.CreateObject("Документ.СчетФактура");<br> ВыбСчет = V7.CreateObject("Счет.Основной");<br> ВыбСчет.НайтиПоКоду("90.3");<br> ВыбСч=ВыбСчет.ТекущийСчет();<br> СчФак = СоздатьОбъект("Документ.ОСчетФактура");<br> <br> Если Удаление = 1 Тогда<br> НачатьТранзакцию(); <br> ОкУсл.ВыбратьДокументы(Дата1,Дата2);<br> Пока ОкУсл.ПолучитьДокумент()=1 Цикл<br> Если ОкУсл.Комментарий = "Пв" Тогда<br> ОкУсл.Удалить();<br> КонецЕсли;<br> КонецЦикла;<br> ЗафиксироватьТранзакцию();<br> КонецЕсли;<br><br> СчФак.ВыбратьДокументы(Дата1, Дата2);<br> НачатьТранзакцию(); <br> Пока СчФак.ПолучитьДокумент() > 0 Цикл<br> Если СчФак.ПометкаУдаления() = 1 Тогда<br> Продолжить;<br> КонецЕсли;<br>......<br> Если ПустоеЗначение(V7)=0 Тогда       <br> Попытка<br> V7.EvalExpr("ЗавершитьРаботуСистемы()"); <br> Исключение<br> КонецПопытки;<br> КонецЕсли;<br> Если (ТипЗначенияСтр(V7)="OLE") Тогда<br> Попытка<br> V7.ExecuteBatch("ЗавершитьРаботуСистемы(0);");<br> Исключение<br> КонецПопытки;<br> КонецЕсли; <br><br>"

Владимир49
читатель
офлайн
Дата регистрации: 10.12.2007
Сообщений: 10
Пост №3
 
26.12.2007 12:05

"Спасибо большое.<br>Значит я в строке- Application.Initialize(Application.RMTrade,"DD:\ЖДЭ-М\","""");<br> Должен писать перед D косую черту-<br> Application.Initialize(Application.RMTrade,"/DD:\ЖДЭ-М\","""");<br> или так<br>      Application.Initialize(Application.RMTrade,/D"D:\ЖДЭ-М\","""");<br> <br> А где же оператор- EvalExpr?<br>"

IceBeerg
читатель
офлайн
Дата регистрации: 06.10.2004
Сообщений: 803
Пост №4
 
27.12.2007 14:04

> А где же оператор- EvalExpr?<br>Метод EvalExpr вычисляет выражение, записанное в параметре <СтрокаВыражения> на встроенном языке 1С:Предприятие и возвращает результат вычисления. И ДАЛЕЕ ЧИТАЕМ ВНИМАТЕЛЬНО ДО ПОЛНОГО ПРОСВЕТЛЕНИЯ!<br>Описание встроенного языка. Част 2. Страница 906.

Владимир49
читатель
офлайн
Дата регистрации: 10.12.2007
Сообщений: 10
Пост №5
 
28.12.2007 10:15

"Правильно ли я вас понял, что это эквивалентные записи-<br>Пишу<br> СчетСтар = Application.EvalExpr("СоздатьОбъект(""""Документ.СчетЗаказчику"""")");<br> или<br> СчетСтар = Application.CreeateObject("Документ.СчетЗаказчику");<br><br> А какой метод работает быстрее?"

Prikum
активный пользователь
офлайн
Дата регистрации: 18.02.2002
Сообщений: 20953
Пост №6
 
28.12.2007 11:00

Второй

Показывать по 10 20 40 сообщений

Читают тему:

Быстрый переход
Для технических специалистов
  • Книга жалоб и предложений по работе сайта
  • Для технических специалистов
  • Представление регламентированной отчетности
  • Говорильня
  • Бухгалтерский учет: обсуждаем проекты нормативных актов и рекомендаций по ведению учета от БМЦ
  • Новый порядок применения ККТ (онлайн кассы с передачей сведений в ФНС)
  • Интернет-конференция: Оформление командировок по новым правилам
  • МАРКИРОВКА
  • ЕГАИС
  • Учет, налогообложение, автоматизация