Имя: Пароль:
1C
1С v8
Ошибка: метод не найден
0 Алерон
 
06.08.15
08:49
Здравствуйте, выскакивает ошибка, но я не понимаю почему. Перед строкой с ошибкой есть такая же и обрабатывается нормально.

{ОбщийМодуль.Рассылка.Модуль(283)}: Ошибка при получении значения атрибута контекста (ПодразделениеОрганизации)
    Лист.Cells(начальная_строка,4).Value=""+ВыборкаДетальныеЗаписи.ПодразделениеОрганизации;
по причине:
Метод не найден


Запрос    = База.NewObject("Запрос");
    Запрос.Текст =
    "ВЫБРАТЬ
    |    РаботникиОрганизацийСрезПоследних.ПодразделениеОрганизации,
    |    РаботникиОрганизацийСрезПоследних.Должность,
    |    РаботникиОрганизацийСрезПоследних.Сотрудник,
    |    ВнутреннийЗаказ.Ответственный,
    |    КОЛИЧЕСТВО(РАЗЛИЧНЫЕ ВнутреннийЗаказ.Ссылка) КАК Ссылка,
    |    ВнутреннийЗаказ.Снабженец
    |ИЗ
    |    Документ.ВнутреннийЗаказ КАК ВнутреннийЗаказ
    |        ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.РаботникиОрганизаций.СрезПоследних(&ТекДата, ) КАК РаботникиОрганизацийСрезПоследних
    |        ПО ВнутреннийЗаказ.Снабженец.ФизЛицо = РаботникиОрганизацийСрезПоследних.Сотрудник.Физлицо
    |ГДЕ
    |    ВнутреннийЗаказ.ДатаВыполнения МЕЖДУ &ДатаН И &ДатаК
    |
    |СГРУППИРОВАТЬ ПО
    |    ВнутреннийЗаказ.Ответственный,
    |    РаботникиОрганизацийСрезПоследних.ПодразделениеОрганизации,
    |    РаботникиОрганизацийСрезПоследних.Должность,
    |    РаботникиОрганизацийСрезПоследних.Сотрудник,
    |    ВнутреннийЗаказ.Снабженец";
    
    Запрос.УстановитьПараметр("ДатаН", НачалоДня(ТекущаяДата()));
    Запрос.УстановитьПараметр("ДатаК", КонецДня(ТекущаяДата()));
    Запрос.УстановитьПараметр("ТекДата", КонецДня(ТекущаяДата()));
    
    
    РезультатЗапроса = Запрос.Выполнить();
    
    ТЗ_Заявок=РезультатЗапроса.Выгрузить();
    Кол_во_заявокТМЦ3=ТЗ_Заявок.Итог("Ссылка");
    
    ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
    
    
    Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
        счетчик=счетчик+1;
        начальная_строка=начальная_строка+1;
        Лист.Cells(начальная_строка,2).Borders.Linestyle=1;
        Лист.Cells(начальная_строка,2).Value=счетчик;
        Лист.Cells(начальная_строка,3).Borders.Linestyle=1;
        Лист.Cells(начальная_строка,3).Value="Управление снабжением";
        Лист.Cells(начальная_строка,4).Borders.Linestyle=1;
        Лист.Cells(начальная_строка,4).Value=""+ВыборкаДетальныеЗаписи.ПодразделениеОрганизации;
        Лист.Cells(начальная_строка,5).Borders.Linestyle=1;
        Лист.Cells(начальная_строка,5).Value=""+ВыборкаДетальныеЗаписи.Должность;
        Лист.Cells(начальная_строка,6).Borders.Linestyle=1;
        Лист.Cells(начальная_строка,6).Value=ВыборкаДетальныеЗаписи.Снабженец.Наименование;
        Лист.Cells(начальная_строка,7).Borders.Linestyle=1;
        Лист.Cells(начальная_строка,7).Value=ВыборкаДетальныеЗаписи.Ссылка;
        Лист.Cells(начальная_строка,8).Borders.Linestyle=1;
        Лист.Cells(начальная_строка,8).Value="Выполнено заявок снабженцем";
        
    КонецЦикла;
    
    
    счетчик=счетчик+1;
    начальная_строка=начальная_строка+1;
    Лист.Cells(начальная_строка,2).Interior.ColorIndex  =35;
    Лист.Cells(начальная_строка,3).Interior.ColorIndex  =35;
    Лист.Cells(начальная_строка,4).Interior.ColorIndex  =35;
    Лист.Cells(начальная_строка,5).Interior.ColorIndex  =35;
    Лист.Cells(начальная_строка,6).Interior.ColorIndex  =35;
    Лист.Cells(начальная_строка,7).Interior.ColorIndex  =35;
    Лист.Cells(начальная_строка,8).Interior.ColorIndex  =35;
    
    Лист.Cells(начальная_строка,2).Font.Underline=2;
    Лист.Cells(начальная_строка,3).Font.Underline=2;
    Лист.Cells(начальная_строка,4).Font.Underline=2;
    Лист.Cells(начальная_строка,5).Font.Underline=2;
    Лист.Cells(начальная_строка,6).Font.Underline=2;
    Лист.Cells(начальная_строка,7).Font.Underline=2;
    Лист.Cells(начальная_строка,8).Font.Underline=2;    
    
    

    Лист.Cells(начальная_строка,2).Borders.Linestyle=1;                        
    Лист.Cells(начальная_строка,2).Value="Итого: ";
    Лист.Cells(начальная_строка,3).Borders.Linestyle=1;
    
    Лист.Cells(начальная_строка,3).Value="Управление снабжением";
    Лист.Cells(начальная_строка,4).Borders.Linestyle=1;
283::    Лист.Cells(начальная_строка,4).Value=""+ВыборкаДетальныеЗаписи.ПодразделениеОрганизации;
    Лист.Cells(начальная_строка,5).Borders.Linestyle=1;
    Лист.Cells(начальная_строка,5).Value=""+ВыборкаДетальныеЗаписи.Должность;
    Лист.Cells(начальная_строка,6).Borders.Linestyle=1;
    Лист.Cells(начальная_строка,6).Value=ВыборкаДетальныеЗаписи.Снабженец.Наименование;
    Лист.Cells(начальная_строка,7).Borders.Linestyle=1;
    Лист.Cells(начальная_строка,7).Value=Кол_во_заявокТМЦ1+Кол_во_заявокТМЦ2+Кол_во_заявокТМЦ3;
    Лист.Cells(начальная_строка,8).Borders.Linestyle=1;
    Лист.Cells(начальная_строка,8).Value="Выполнено заявок снабженцем";
    ИтогоСнабжение= Кол_во_заявокТМЦ1+Кол_во_заявокТМЦ2+Кол_во_заявокТМЦ3;

Кстате, как проверить ВыборкаДетальныеЗаписи на отсутствие в ней информации(пустая)?
1 1dvd
 
06.08.15
08:53
Дык, после цикла выборка же закончилась
2 ex-human
 
06.08.15
08:55
ВыборкаДетальныеЗаписи.Количество()=0?
3 Алерон
 
06.08.15
08:56
(1) ну да, код не мой сижу разбираюсь. Фишка в том, что если выборка не пустая, то ошибки не будет. Не могу понять как работает код после цикла.
4 Алерон
 
06.08.15
08:56
(2) а есть что-либо наподобие ВыборкаДетальныеЗаписи.Пусто()=Истина?
5 1dvd
 
06.08.15
08:59
(4) ВыборкаДетальныеЗаписи.Количество() = 0
6 Алерон
 
06.08.15
09:01
(5) хорошо, хорошо. Просто интересно же)
7 vhl
 
06.08.15
10:06
(4) РезультатЗапроса.Пустой()
Закон Брукера: Даже маленькая практика стоит большой теории.