Имя: Пароль:
1C
1С v8
Переборка результата Выгрузить()
0 artprog
 
25.11.11
11:58
Здравствуйте.

Подскажите, как на c# перебрать результат = Запрос.Выполнить().Выгрузить()

zapros_nom.Текст = @"ВЫБРАТЬ
         ОстаткиТоваров.Номенклатура КАК Tovar,
         ОстаткиТоваров.КоличествоОстаток КАК Kolichestvo
      ИЗ
         РегистрНакопления.ТоварыНаСкладах.Остатки(, ) КАК ОстаткиТоваров
      ГДЕ
         ОстаткиТоваров.Склад.Код = &Склад";
           zapros_nom.УстановитьПараметр("Склад", kod_sklada);
           dynamic result = zapros_nom.Выполнить().Выгрузить();
           int rowcount = result.Количество();
           if (rowcount > 0)
           {
               int i = 0;
               while (i<rowcount)
               {
                   result.ВыбратьСтроку();
                   dynamic nomenk = result.Tovar;
               }

result.Tovar выдает ошибку
1 DrShad
 
25.11.11
12:02
ВыбратьСтроку() почитай в СП
2 aleks-id
 
25.11.11
12:04
while (i<rowcount)
               {
                   dynamic nomenk = result[i].Tovar;
               }
3 PVV65
 
25.11.11
12:04
while (result.Следующий())
               {
                dynamic nomenk = result.Tovar;
               }
4 artprog
 
25.11.11
12:11
(1) Почитал, смысл понял, но как реализовать  Для каждого … Из … Цикл на c# не понял.
(2) Ошибка при вызове "[PROPERTYGET, DISPID(0)]".
(3) Нет определения для Следующий()
5 vicof
 
25.11.11
12:15
(4) foreach, по-моему
см(2)
6 artprog
 
25.11.11
12:24
foreach (int i in result)
               {
                   dynamic nomenk = result[i].Tovar;
               }

тоже не катит. Невозможно преобразовать тип "System.__ComObject" в "int"
7 artprog
 
25.11.11
12:32
вопрос решился

foreach (dynamic  i in result)
{
                   dynamic nomenk = i.Tovar;
               }
Компьютеры — это как велосипед. Только для нашего сознания. Стив Джобс