![]() |
|
1С:Предприятие
:: 1С:Предприятие 8 общая
|
|
| ||
Nzzzz 02.04.21 - 11:35 | Всем здравствуйте! Нужно сделать в 1с классный журнал. Идея такая: документ "Оценки за день" - ставятся оценки за каждый день по определенным предметам. В документе "Оценки за четверть". Хотелось бы по конкретному ученику получить все оценки и предметы, ну и рассчитать средний балл. Средний балл рассчитывается так: количество пятерок *5, количество четверок*4, количество троек*3, все это сложить и разделить на количество оценок по предмету.
Вот у меня не получается это реализовать. Из документа "Оценки за день" тащу по конкретному ученику запросом все оценки и предметы, а дальше всё, ступор: как их объединить, как средний балл сосчитать..Делал запросом так, но когда суммирую поля выборки не считает ничего: ВЫБРАТЬ ОценкиЗаДеньПредметы.Предмет КАК Предмет, ВЫБОР КОГДА ОценкиЗаДеньПредметы.Оценка = 5 ТОГДА ОценкиЗаДеньПредметы.Оценка * 5 КОНЕЦ КАК КоличествоПятерок, ОценкиЗаДеньПредметы.Присутствовал КАК Присутствовал, ВЫБОР КОГДА ОценкиЗаДеньПредметы.Оценка = 4 ТОГДА ОценкиЗаДеньПредметы.Оценка * 4 КОНЕЦ КАК КоличествоЧетверок, ВЫБОР КОГДА ОценкиЗаДеньПредметы.Оценка = 3 ТОГДА ОценкиЗаДеньПредметы.Оценка * 3 КОНЕЦ КАК КоличествоТроек, ВЫБОР КОГДА ОценкиЗаДеньПредметы.Оценка = 5 ТОГДА ОценкиЗаДеньПредметы.Оценка * 5 КОНЕЦ + ВЫБОР КОГДА ОценкиЗаДеньПредметы.Оценка = 4 ТОГДА ОценкиЗаДеньПредметы.Оценка * 4 КОНЕЦ + ВЫБОР КОГДА ОценкиЗаДеньПредметы.Оценка = 3 ТОГДА ОценкиЗаДеньПредметы.Оценка * 3 КОНЕЦ КАК Поле1 ИЗ Документ.ОценкиЗаДень.Предметы КАК ОценкиЗаДеньПредметы ГДЕ ОценкиЗаДеньПредметы.Ссылка.Ученик = &Ученик СГРУППИРОВАТЬ ПО ОценкиЗаДеньПредметы.Предмет, ОценкиЗаДеньПредметы.Присутствовал, ВЫБОР КОГДА ОценкиЗаДеньПредметы.Оценка = 5 ТОГДА ОценкиЗаДеньПредметы.Оценка * 5 КОНЕЦ, ВЫБОР КОГДА ОценкиЗаДеньПредметы.Оценка = 4 ТОГДА ОценкиЗаДеньПредметы.Оценка * 4 КОНЕЦ, ВЫБОР КОГДА ОценкиЗаДеньПредметы.Оценка = 3 ТОГДА ОценкиЗаДеньПредметы.Оценка * 3 КОНЕЦ, ВЫБОР КОГДА ОценкиЗаДеньПредметы.Оценка = 5 ТОГДА ОценкиЗаДеньПредметы.Оценка * 5 КОНЕЦ + ВЫБОР КОГДА ОценкиЗаДеньПредметы.Оценка = 4 ТОГДА ОценкиЗаДеньПредметы.Оценка * 4 КОНЕЦ + ВЫБОР КОГДА ОценкиЗаДеньПредметы.Оценка = 3 ТОГДА ОценкиЗаДеньПредметы.Оценка * 3 КОНЕЦ | ||
Nzzzz 1 - 02.04.21 - 11:36 | (0) Вот без группировки:
ВЫБРАТЬ ОценкиЗаДеньПредметы.Предмет КАК Предмет, ВЫБОР КОГДА ОценкиЗаДеньПредметы.Оценка = 5 ТОГДА ОценкиЗаДеньПредметы.Оценка * 5 КОНЕЦ КАК КоличествоПятерок, ОценкиЗаДеньПредметы.Присутствовал КАК Присутствовал, ВЫБОР КОГДА ОценкиЗаДеньПредметы.Оценка = 4 ТОГДА ОценкиЗаДеньПредметы.Оценка * 4 КОНЕЦ КАК КоличествоЧетверок, ВЫБОР КОГДА ОценкиЗаДеньПредметы.Оценка = 3 ТОГДА ОценкиЗаДеньПредметы.Оценка * 3 КОНЕЦ КАК КоличествоТроек, ВЫБОР КОГДА ОценкиЗаДеньПредметы.Оценка = 5 ТОГДА ОценкиЗаДеньПредметы.Оценка * 5 КОНЕЦ + ВЫБОР КОГДА ОценкиЗаДеньПредметы.Оценка = 4 ТОГДА ОценкиЗаДеньПредметы.Оценка * 4 КОНЕЦ + ВЫБОР КОГДА ОценкиЗаДеньПредметы.Оценка = 3 ТОГДА ОценкиЗаДеньПредметы.Оценка * 3 КОНЕЦ КАК Поле1 ИЗ Документ.ОценкиЗаДень.Предметы КАК ОценкиЗаДеньПредметы ГДЕ ОценкиЗаДеньПредметы.Ссылка.Ученик = &Ученик | ||
Волшебник 2 - 02.04.21 - 11:36 | А теперь переходим на 100-балльную систему... | ||
Krendel 3 - 02.04.21 - 11:37 | (2) Вообще не важно, он не может спроектировать складской учет, где есть склад (предмет) и номенклатура (ученик) | ||
dka80 4 - 02.04.21 - 11:37 | А еще у каждой оценки есть вес. Т.е. за обычную работу на уроке просто 4 во второй степени (у нас), а за контрольную в третей или даже в четвертой. | ||
Волшебник 5 - 02.04.21 - 11:39 | (3) Лучше наоборот. Ученик — это склад знаний (предметов). | ||
Михаил Козлов 6 - 02.04.21 - 11:40 | ВЫБОР КОГДА ОценкиЗаДеньПредметы.Оценка = 5 ТОГДА ОценкиЗаДеньПредметы.Оценка * 5 КОНЕЦ КАК КоличествоПятерок Получите 25. Чтобы получить средний бал достаточно в итогах получить среднее. | ||
Ненавижу 1С 7 - 02.04.21 - 11:43 | |||
Garykom 8 - 02.04.21 - 11:43 | (0) оценку делай не за день а за предмет
т.е. убери ТЧ и все в шапке (ученик, учитель, предмет, оценка) | ||
fisher 9 - 02.04.21 - 11:43 | ВЫБРАТЬ
ОценкиЗаДеньПредметы.Предмет, СРЕДНЕЕ(ОценкиЗаДеньПредметы.Оценка) КАК СредняяОцента ИЗ Документ.ОценкиЗаДень.Предметы КАК ОценкиЗаДеньПредметы ГДЕ ОценкиЗаДеньПредметы.Ссылка.Ученик = &Ученик СГРУППИРОВАТЬ ПО ОценкиЗаДеньПредметы.Предмет | ||
Garykom 10 - 02.04.21 - 11:43 | (7) среднюю можно автоматом считать )) | ||
Волшебник 11 - 02.04.21 - 11:44 | (7) Можно накапливать часы посещения (выполнение учебного плана). | ||
Ненавижу 1С 12 - 02.04.21 - 11:45 | (11) опять лучше обороты использовать, как план/факт по продажам | ||
Ненавижу 1С 13 - 02.04.21 - 11:45 | (10) и в оборотах не хуже считается | ||
Garykom 14 - 02.04.21 - 11:45 | профдеформация по всей красе | ||
Garykom 15 - 02.04.21 - 11:46 | Придумайте как указывать № урока или его время? | ||
Волшебник 16 - 02.04.21 - 11:46 | (12) Но ведь что-то остаётся. Концепция "Ученик как склад знаний" имеет право на жизнь. | ||
Krendel 17 - 02.04.21 - 11:47 | (15) Серия | ||
Garykom 18 - 02.04.21 - 11:47 | (16) Утряска/усушка | ||
fisher 19 - 02.04.21 - 11:47 | Не вижу никакого смысла в регистре оборотов тут. | ||
Garykom 20 - 02.04.21 - 11:47 | (19) имхо РС по уму | ||
Волшебник 21 - 02.04.21 - 11:47 | (18) Это забывчивость. | ||
Krendel 22 - 02.04.21 - 11:47 | (16) Да, позволяет оценить среднюю оценку за количество часов, и сделать прямую параллель | ||
Garykom 23 - 02.04.21 - 11:48 | (21) А инвентаризация как? | ||
Ненавижу 1С 24 - 02.04.21 - 11:48 | |||
Krendel 25 - 02.04.21 - 11:48 | (14) Это не проф деформация, это бесплатное проектирование за 5 минут занятия моска, не нравится, нанимаешь аналитика и го в ТЗ | ||
Krendel 26 - 02.04.21 - 11:49 | (23) Контрольная | ||
Krendel 27 - 02.04.21 - 11:49 | Корректирую средний себес по месяцу | ||
Ненавижу 1С 28 - 02.04.21 - 11:49 | |||
Krendel 29 - 02.04.21 - 11:51 | (24) Мне все равно ;-) | ||
fisher 30 - 02.04.21 - 11:51 | (20) Сомневаюсь, что оно сможет вырасти до таких объемов, что может потребоваться хоть какая-то оптимизация. А ежели вырастет - достаточно индексов в документ насыпать. Рекламное место пустует | ||
Krendel 31 - 02.04.21 - 11:51 | доверюсь "Специалистам" | ||
Garykom 32 - 02.04.21 - 11:52 | (26) Это не инвентаризация а выборочный аудит | ||
Ненавижу 1С 33 - 02.04.21 - 11:53 | (32) раскрой отличия | ||
Nzzzz 34 - 02.04.21 - 11:54 | (9) А что так можно было? Я думал что среднее тут в запросе считается так (сложить все оценки)/на количество оценок всего.
То есть есть математика оценки 5,5/2 = 2,5 | ||
fisher 35 - 02.04.21 - 11:55 | (34) А если с калькулятором? :) | ||
Nzzzz 36 - 02.04.21 - 11:55 | А как вот например получить все оценки по предметам?
То есть сгруппировать предметы, но оценки не группировать? Отчет такой: Математика: 5,5,4,5 ИЗО: 5,3,4,5 | ||
Krendel 37 - 02.04.21 - 11:56 | (36) Извини, ты кем работаешь? | ||
Garykom 38 - 02.04.21 - 11:58 | (33) Предмет состоит из тем и понимание (оценка изучения) каждой темы разная
Контрольная проверяет не все темы - это как на складе не сплошную инвентаризацию делать а выборочно пару ячеек или позиций номенклатуры проверить | ||
Nzzzz 39 - 02.04.21 - 11:59 | (37) Не, ну серьезно. Получаю предметы и оценки. Группирую по предметам, а с оценкой то что делать??)) | ||
Krendel 40 - 02.04.21 - 12:00 | (38) Задачу поставь тогда нормально, чтобы начать проектирование системы, определи цели, задачи, отчетные формы | ||
Krendel 41 - 02.04.21 - 12:00 | Что мне тебя учить надо | ||
Krendel 42 - 02.04.21 - 12:00 | (39) Это серьезный вопрос | ||
fisher 43 - 02.04.21 - 12:01 | (39) Тоже группируешь. Если других детализаций нет, то и группировать не надо. Будет задача только представления данных оценок в одной строке. Это решается либо при обходе результата запроса, либо в СКД есть готовые функции. | ||
Builder 44 - 02.04.21 - 12:03 | Это какая то тестовая задача?
Или реальная в реальной школе? Тогда все очень печально..... | ||
fisher 45 - 02.04.21 - 12:03 | Чтобы не сгруппировались оценки по нескольким дням, ессно и по документу надо группировать. | ||
Nzzzz 46 - 02.04.21 - 12:05 | (45) Если по документу группирую, то предметы не группируются, т.к. документы не группируются. | ||
fisher 47 - 02.04.21 - 12:14 | (46) Чтобы в результате получилось одна строчка на каждый предмет с перечнем всех оценок в колонках - такое в запросе сделать не получится (вернее, можно, но через задницу). Такого рода транспонирование принято делать постобработкой. | ||
МимохожийОднако 48 - 02.04.21 - 12:16 | Начинать надо с описания тех.задания и возможной структуры объектов конфигурации Например.Учет оценокРегистратор. Документ "Урок".Шапка: Предмет, ТЧ: Ученик, Оценка, ЗаЧто. Регистр накопления Измерения: Предмет, Ученик,ЗаЧто. Ресурс: Оценка | ||
fisher 49 - 02.04.21 - 12:17 | (47) + Ну и как уже говорил - СКД такое умеет (через неявную постобработку). | ||
Nzzzz 50 - 02.04.21 - 15:37 | (40) «Формирование классного журнала в школе» - вот тема. Я придумал в документе просто выбирать предметы и оценки по конкретному ученику. Журнал то в 1С-ке никак больше не сделать.. | ||
Nzzzz 51 - 02.04.21 - 16:02 | (50) Подскажите кто нибудь, больше никак не сделать? | ||
Mikeware 52 - 02.04.21 - 16:04 | (50) ты кто вообще? учитель? или студет с лабой? | ||
Mikeware 53 - 02.04.21 - 16:04 | (51) есть куча способов. | ||
Mikeware 54 - 02.04.21 - 16:07 | + (53) но в любом случае все сводится в итоге к кортежу из 3 элементов. |
|
Список тем форума |