8.х Как отобрать одинаковое

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 8"", создана пользователем Ayria, 16 дек 2010.

  1. TopicStarter Overlay
    Ayria
    Offline

    Ayria Опытный в 1С

    Регистрация:
    18 май 2010
    Сообщения:
    123
    Симпатии:
    0
    Баллы:
    26
    Добрый вечер или утро, в зависимости от того когда вы просматриваете это сообщение. Помогите, пожалуйста, вот в чем. Мне нужно вывести отчет на печать отобрав данные по Финансированию, отделению, а потом по предмету, и отобразить все группы относящиеся к данному предмету.
    Для лучшего представления я предоставила форму отчета, он уже готов, и печатную форму,(в каком виде надо будет вывести). Заранее спасибо.

    Вложения:

  2. Requin
    Offline

    Requin Опытный в 1С

    Регистрация:
    10 май 2010
    Сообщения:
    1.911
    Симпатии:
    2
    Баллы:
    29
    А зачем Таблица значений в форме отчета? Может сразу Табличный документ.
    Данные в форму отчета откуда берутся?
  3. TopicStarter Overlay
    Ayria
    Offline

    Ayria Опытный в 1С

    Регистрация:
    18 май 2010
    Сообщения:
    123
    Симпатии:
    0
    Баллы:
    26
    данные в форму отчета берутся из справочника "Учебные планы". и второй фаил это не таблица значений. это печатная форма с приложения написанного на делфи. я переношу приложение с делфи на 1с платформу
  4. Requin
    Offline

    Requin Опытный в 1С

    Регистрация:
    10 май 2010
    Сообщения:
    1.911
    Симпатии:
    2
    Баллы:
    29
    Я имел ввиду, зачем на форме отчета (первый файл) таблица, вместо нее можно использовать табличный документ, заполняемый на основе макета, который будет повторять вашу печатную форму. В табличный документ данные отбирать запросом из справочника.

    Выложите свою обработку и покажите структуру справочника "Учебные планы".
  5. TopicStarter Overlay
    Ayria
    Offline

    Ayria Опытный в 1С

    Регистрация:
    18 май 2010
    Сообщения:
    123
    Симпатии:
    0
    Баллы:
    26
    Код:
     Запрос=Новый Запрос("ВЫБРАТЬ
    |	УчебныеПланы.Ссылка,
    |	УчебныеПланы.ВерсияДанных,
    |	УчебныеПланы.ПометкаУдаления,
    |	УчебныеПланы.Предопределенный,
    |	УчебныеПланы.Код,
    |	УчебныеПланы.Наименование,
    |	УчебныеПланы.НомерГруппы,
    |	УчебныеПланы.Дисциплина,
    |	УчебныеПланы.Блок,
    |	УчебныеПланы.Лекции,
    |	УчебныеПланы.ЛабораторныеРаботы1,
    |	УчебныеПланы.ЛабораторныеРаботы2,
    |	УчебныеПланы.Экзамен,
    |	УчебныеПланы.Консультации,
    |	УчебныеПланы.КурсоваяРабота,
    |	УчебныеПланы.ПроверкаКурсовых,
    |	УчебныеПланы.Преподаватель,
    |	УчебныеПланы.Номер,
    |	УчебныеПланы.ПроверкаКонтрольных,
    |	УчебныеПланы.ЛекцииНадбавка,
    |	УчебныеПланы.ЛабораторнНадбавка1,
    |	УчебныеПланы.ЛабораторнНадбавка2,
    |	УчебныеПланы.ПолноеФИО
    |ИЗ
    |	Справочник.УчебныеПланы КАК УчебныеПланы
    |ГДЕ
    |	УчебныеПланы.Преподаватель = &Фам
    |	И УчебныеПланы.Преподаватель.Имя = &Им
    |	И УчебныеПланы.Преподаватель.Отчество = &От" ); 
    
    так пойдет? я выложила в виде запроса структуру справочника, макет я уже сделала.
  6. Requin
    Offline

    Requin Опытный в 1С

    Регистрация:
    10 май 2010
    Сообщения:
    1.911
    Симпатии:
    2
    Баллы:
    29
    У вас реквизит Преподаватель - ссылочный, в переменной Фам, которая на форме ФИО - тоже, поэтому проверку на Преподаватель.Имя и Преподаватель.Отчество делать не обязательно.
    И добавьте в запрос:
    Код:
    |ИТОГИ                                                        
    |    СУММА(Лекции),
    |    СУММА(ЛабораторныеРаботы1),
    |    СУММА(ЛабораторныеРаботы2)
    //| и т.д. все ваши суммируемые поля
    |ПО
    |    ОБЩИЕ,
    |    Финансирование, // не понял как в справочнике реквизит называется
    |    Отделение, // тоже не понял
    |    Дисциплина,
    |    НомерГруппы
    |АВТОУПОРЯДОЧИВАНИЕ";
    
    Далее выборка данных:
    Код:
    ВыборкаОбщие = Запрос.Выполнить().Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
    Пока ВыборкаОбщие.Следующий() Цикл
    // здесь итоговые данные
    
    ВыборкаФинансирование = ВыборкаОбщие.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
    Пока ВыборкаФинансирование.Следующий() Цикл
    // здесь данные по Финансированию
    
    ВыборкаОтделение = ВыборкаФинансирование.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
    Пока ВыборкаОтделение.Следующий() Цикл
    // ну и далее вглубь по группировкам
    КонецЦикла;
    КонецЦикла;
    КонецЦикла;
    
  7. TopicStarter Overlay
    Ayria
    Offline

    Ayria Опытный в 1С

    Регистрация:
    18 май 2010
    Сообщения:
    123
    Симпатии:
    0
    Баллы:
    26
    Код:
                                            |ПО
    |	ОБЩИЕ,
    |	УчебныеПланы.НомерГруппы.Финансирование,
    |	УчебныеПланы.НомерГруппы.Отделение,
    |	Дисциплина
    |АВТОУПОРЯДОЧИВАНИЕ");  
    
    а можете подсказать как их потом перебирать, как присваивать параметрам, потому что я вот делаю например
    Код:
     ВыборкаОбщие = Запрос.Выполнить().Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
    Пока ВыборкаОбщие.Следующий() Цикл
    // Сообщить(ВыборкаОбщие.Следующий());
    ВыборкаФинансирование = ВыборкаОбщие.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
    Пока ВыборкаФинансирование.Следующий() Цикл
    // здесь данные по Финансированию
    Область=Макет.ПолучитьОбласть("Финанс");
    
    Область.Параметры.Финанс=ВыборкаФинансирование.НомерГруппы.Финансирование;
    ТабДок.Вывести(Область);
    
    
    ВыборкаОтделение = ВыборкаФинансирование.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
    Пока ВыборкаОтделение.Следующий() Цикл
    // ну и далее вглубь по группировкам
    КонецЦикла;
    КонецЦикла;
    КонецЦикла;
    
    
    он мне выдает ошибку
    {Отчет.СводнаяНагрузкаПреподавателей.Форма.ФормаОтчета.Форма(69)}: Значение не является значением объектного типа (Финансирование)
    Область.Параметры.Финанс=ВыборкаФинансирование.НомерГруппы.Финансирование;



    а когда хочу посмотреть какие данные есть в той или иной выборке, к примеру
    сообщить(ВыборкаФинансирование.Следующий());

    он выдает нет
  8. Requin
    Offline

    Requin Опытный в 1С

    Регистрация:
    10 май 2010
    Сообщения:
    1.911
    Симпатии:
    2
    Баллы:
    29
    Запрос немного подправьте:
    Код:
    ВЫБРАТЬ
    // ...
    |    УчебныеПланы.НомерГруппы.Финансирование КАК Финансирование,
    |    УчебныеПланы.НомерГруппы.Отделение КАК Отделение,
    // ...
    |ПО
    |    ОБЩИЕ,
    |    Финансирование,
    |    Отделение,
    |    Дисциплина
    |АВТОУПОРЯДОЧИВАНИЕ");
    </span>
    
    </FONT></FONT></pre>
    Ну и далее:
    Код:
    Область.Параметры.Финанс = ВыборкаФинансирование.Финансирование;
    
    
    P.S. Реквизит НомерГруппы - объектный?
  9. TopicStarter Overlay
    Ayria
    Offline

    Ayria Опытный в 1С

    Регистрация:
    18 май 2010
    Сообщения:
    123
    Симпатии:
    0
    Баллы:
    26
    да он объектный
  10. TopicStarter Overlay
    Ayria
    Offline

    Ayria Опытный в 1С

    Регистрация:
    18 май 2010
    Сообщения:
    123
    Симпатии:
    0
    Баллы:
    26
    спасибо вам большое, с остальными трудностями я сама.

Поделиться этой страницей