Имя: Пароль:
1C
1С v8
OLE
,
0 Renat11111
 
22.02.12
18:29
БухИт = v7.CreateObject("БухгалтерскиеИтоги");    
   ОлеВидСубконтоОсновныеСредства = v7.EvalExpr("ВидыСубконто.ОсновныеСредства");
   БухИт.ИспользоватьСубконто(ОлеВидСубконтоОсновныеСредства);
   СтрокаСчетов = "01.1.1,01.1.2,01.1.3,01.1.4,01.1.5, 02.1.1,02.1.2,02.1.3,02.1.4,02.1.5";
   
   
   
   БухИт.ВыполнитьЗапрос(Дата('20111231'),Дата('20111231'), СтрокаСчетов);
           
   БухИт.ВключатьСубсчета(1,0);

   БухИт.ВыбратьСубконто();
   Ном = 0;
   Пока БухИт.ПолучитьСубконто() = 1 Цикл
       Ном = Ном + 1;
       ОС = БухИт.Субконто();
       ОС.ИспользоватьДату(Дата('20111231'));

       Если БухИт.ПолучитьСчет(,Сч01_1) = 1 Тогда
           //СчетНачисленияАмортизации = Сч02_1;
           БалансоваяСтоимость = ?(БухИт.ПолучитьСчет(,Сч01_1)=1,БухИт.СКД(),0);
           //ИзносНаНачалоМесяца = ?(БухИт.ПолучитьСчет(,Сч02_1)=1,БухИт.СКК(),0);
       КонецЕсли;
             
       Сообщить(БалансоваяСтоимость);


Дает ошибку {Форма.Форма(565)}: Ошибка при вызове метода контекста (ПолучитьСчет): Типы не совпадают (1)
       Если БухИт.ПолучитьСчет(,Сч01_1) = 1 Тогда
1 Renat11111
 
22.02.12
18:30
Кто знает как обойти устал гуглить...
2 Rie
 
22.02.12
18:34
Может,

БухИт.ВыбратьСчета();
//...
БухИт.ПолучитьСчет(1,Сч01_1)
3 Renat11111
 
22.02.12
18:35
БухИт.ПолучитьСчет(1,Сч01_1) пробовал в цикл не заходит
4 ukolabrother
 
22.02.12
18:35
ПолучитьСчет(<?>,)
Синтаксис:
ПолучитьСчет(<Номер>,<Счет>)
Назначение:
Получить из выборки следующий счет. Выборка должна быть предварительно открыта при помощи метода ''ВыбратьСчета''.
5 Rie
 
22.02.12
18:36
(2) Сначала открой выборку счетов.
6 Renat11111
 
22.02.12
18:37
щас попробуем
7 Renat11111
 
22.02.12
18:41
теперь такая ошибка Форма.Форма(565)}: Ошибка при вызове метода контекста (ПолучитьСчет): Произошла исключительная ситуация (1С:Предприятие): Не выбран элемент вышестоящей группировки!
       Если БухИт.ПолучитьСчет(1,Сч01_1) = 1 Тогда
8 Renat11111
 
22.02.12
18:42
Пока БухИт.ПолучитьСубконто() = 1 Цикл
       Ном = Ном + 1;
       ОС = БухИт.Субконто();
       ОС.ИспользоватьДату(Дата('20111231'));
       БухИт.ВыбратьСчета();
       Если БухИт.ПолучитьСчет(1,Сч01_1) = 1 Тогда
           //СчетНачисленияАмортизации = Сч02_1;
           БалансоваяСтоимость = ?(БухИт.ПолучитьСчет(1,Сч01_1)=1,БухИт.СКД(),0);
           //ИзносНаНачалоМесяца = ?(БухИт.ПолучитьСчет(,Сч02_1)=1,БухИт.СКК(),0);
       КонецЕсли;


Семерку знаю эпизодически. И в будущем не намерен изучать. Поэтому плиз СП не продавать
9 Rie
 
22.02.12
18:48
(8) Честно говоря, лень думать. Но еопробуй перед запросом сделать
БухИтоги.ВключатьСубсчета(-1,-1);

А в цикле - не искать повторно (в функции "?" уже найденный счет).
10 Renat11111
 
22.02.12
18:52
(9) все одна и таже ошибка
{Форма.Форма(567)}: Ошибка при вызове метода контекста (ПолучитьСчет): Произошла исключительная ситуация (1С:Предприятие): Не выбран элемент вышестоящей группировки!
       Если БухИт.ПолучитьСчет(1,Сч01_1) = 1 Тогда

Может кто поделится примером получения по Оле СКД по счетам?
11 Zypse
 
22.02.12
19:00
Попробуй так:

БухИт.ВыбратьСчета();
Пока БухИт.ПолучитьСчет() = 1 Тогда
 Если Лев(БухИт.Счет.Код,4)="01.1" Тогда
       ....
12 Renat11111
 
22.02.12
19:07
(11) То что нужно. Спасибо
Оптимист верит, что мы живем в лучшем из миров. Пессимист боится, что так оно и есть.