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

1С:Предприятие ::

Метки:

По вопросу переноса операций через OLE

Я
   cargo
 
12.01.05 - 18:25
Добрый вечер.
Делаю выборку операций через OLE следующим кодом:
    Опер =Источник.CreateObject("Операция");

     Пока Опер.ПолучитьОперацию()=1 Цикл   
        Опер1.Новая(); 
        Опер1.СуммаОперации=Опер.СуммаОперации;
      Опер1.Содержание=Опер.Содержание;
      Опер1.ДатаОперации=КонДата;
      Пока Опер.ПолучитьПроводку()=1 Цикл
        Опер1.НоваяПроводка();
        Опер1.Дебет.Счет=СчетПоКоду("62.1.1");
        Опер1.Кредит.Счет=СчетПоКоду("90.1.1");
        Опер1.Дебет.Контрагенты=Опер.Дебет.Субконто(1);
        Опер1.Дебет.Договор=Опер.Дебет.Субконто(2);
        Опер1.Дебет.Сотрудник=Опер.Дебет.Субконто(3);
        Опер1.Дебет.ВидыРасчетовСПокупателями=Перечисление.ВидыРасчетовСПокупателями.РасчетыЗаТовары;
     КонецЦикла;

Операции выбираются в источнике и создаются в базе приемнике. Однако аналитика по субконто не переносится. Пробовал использовать EvalExpr("Опер.Дебет.Субконто(3)")-выдает ошибку. Подскажите как нормально перенести аналитику через OLE&
 
 
   lemon
 
1 - 12.01.05 - 18:40
(0)агрегатный тип данных..., можно только простые...,
в общем случае - поиск по коду/наименованию/реквизиту...
   cargo
 
2 - 12.01.05 - 18:49
(1)То есть в принципе как я написал невозможно?
   mike
 
3 - 12.01.05 - 20:42
ну можно, только написать функцию Типа:
 НайтиСубконтоПриемникаПоКодуИсточника (Опер1,Опер.Дебет.Субконто(1))
   LOSS
 
4 - 13.01.05 - 06:19
(0)Объекты одной базы понимают друг друга. А разных баз приводи к перевариваему типу данных
   Valery
 
5 - 13.01.05 - 08:38
Опер1.Дебет.Контрагенты=Опер.Дебет.Субконто(1);
Так не будет работать.
Надо примерно так
Контр=СоздатьОбъект("Справочник.Контрагенты");
Если Контр.НайтиПоНаименованию(Опер.Дебет.Субконто(1).Наименование)=1 Тогда
Опер1.Дебет.Контрагенты=Контр.ТекущийЭлемент();
КонецЕсли;


Список тем форума
Рекламное место пустует   Рекламное место пустует
Проблемы невозможно решaть нa том же уровне компетентности, нa котором они возникaют. Альберт Эйнштейн
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Ветка сдана в архив. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует