|
НаКлиенте или НаСервере | ☑ | ||
---|---|---|---|---|
0
Mtrlcnlk
26.05.20
✎
11:39
|
Доюбрый день, сразу скажу код чужой. Есть ли тут критические ошибки и выполняется ли данная процедура наКлиенете или наСервере ?
&НаКлиенте Процедура Печать(Элемент) ТабДок = Новый ТабличныйДокумент; Макет = Документы.ЭкзаменационнаяВедомость.ПолучитьМакет("Печать"); Область = Макет.ПолучитьОбласть("Заголовок"); ТабДок.Вывести(Область); Область = Макет.ПолучитьОбласть("Шапка"); Область.Параметры.Дата = Дата; Область.Параметры.Семестр = Семестр; Область.Параметры.Год = Год; Область.Параметры.Группа = Группа; Область.Параметры.Дисциплина = Дисциплина; Область.Параметры.Преподаватель = Преподаватель; ТабДок.Вывести(Область); // ТабличнаяЧасть1 Область = Макет.ПолучитьОбласть("ТабличнаяЧасть1Шапка"); ТабДок.Вывести(Область); Для Каждого ТекСтрокаТабличнаяЧасть1 Из ТабличнаяЧасть1 Цикл Область = Макет.ПолучитьОбласть("ТабличнаяЧасть1"); Область.Параметры.Номер = ТекСтрокаТабличнаяЧасть1.НомерСтроки; Область.Параметры.ФИОСтудента = ТекСтрокаТабличнаяЧасть1.ФИОСтудента; Область.Параметры.НомерЗачКнижки = ТекСтрокаТабличнаяЧасть1.НомерЗачКнижки; Область.Параметры.Оценка = ТекСтрокаТабличнаяЧасть1.Оценка; ТабДок.Вывести(Область); КонецЦикла; // Подвал Область = Макет.ПолучитьОбласть("Подвал"); Область.Параметры.КоличествоЧасов = КоличествоЧасов; //Подсчет отсутствующих ЗапросН = Новый Запрос; ЗапросН.УстановитьПараметр("Оценка1",Перечисления.Оценки.Неявка ); ЗапросН.УстановитьПараметр("Оценка2",Перечисления.Оценки.Недопуск ); ЗапросН.УстановитьПараметр("Ссылка",ЭтотОбъект.Ссылка); ТекстЗапросаН = "ВЫБРАТЬ ЭкзаменационнаяВедомостьТабличнаяЧасть1.Оценка |ИЗ Документ.ЭкзаменационнаяВедомость.ТабличнаяЧасть1 КАК ЭкзаменационнаяВедомостьТабличнаяЧасть1 |ЛЕВОЕ СОЕДИНЕНИЕ Документ.ЭкзаменационнаяВедомость КАК ЭкзаменационнаяВедомость1 |ПО ЭкзаменационнаяВедомостьТабличнаяЧасть1.Ссылка = ЭкзаменационнаяВедомость1.Ссылка |ГДЕ (ЭкзаменационнаяВедомостьТабличнаяЧасть1.Оценка = &Оценка1 |ИЛИ ЭкзаменационнаяВедомостьТабличнаяЧасть1.Оценка = &Оценка2) |И ЭкзаменационнаяВедомость1.Ссылка = &Ссылка" ; ЗапросН.Текст = ТекстЗапросаН; Область.Параметры.Неявка = ЗапросН.Выполнить().Выбрать().Количество(); //Подсчет оценок ТекстЗапроса = "ВЫБРАТЬ ЭкзаменационнаяВедомостьТабличнаяЧасть1.Оценка |ИЗ Документ.ЭкзаменационнаяВедомость.ТабличнаяЧасть1 КАК ЭкзаменационнаяВедомостьТабличнаяЧасть1 |ЛЕВОЕ СОЕДИНЕНИЕ Документ.ЭкзаменационнаяВедомость КАК ЭкзаменационнаяВедомость1 |ПО ЭкзаменационнаяВедомостьТабличнаяЧасть1.Ссылка = ЭкзаменационнаяВедомость1.Ссылка |ГДЕ ЭкзаменационнаяВедомость1.Ссылка = &Ссылка |И ЭкзаменационнаяВедомостьТабличнаяЧасть1.Оценка = &Оценка" ; //Подсчет 5(отл) Запрос5 = Новый Запрос; Запрос5.УстановитьПараметр("Оценка",Перечисления.Оценки.Отлично ); Запрос5.УстановитьПараметр("Ссылка",ЭтотОбъект.Ссылка); Запрос5.Текст = ТекстЗапроса; Область.Параметры.Отлично = Запрос5.Выполнить().Выбрать().Количество(); //Подсчет 4(хор) Запрос4 = Новый Запрос; Запрос4.УстановитьПараметр("Оценка",Перечисления.Оценки.Хорошо ); Запрос4.УстановитьПараметр("Ссылка",ЭтотОбъект.Ссылка); Запрос4.Текст = ТекстЗапроса; Область.Параметры.Хорошо = Запрос4.Выполнить().Выбрать().Количество(); //Подсчет 3(удов) Запрос3 = Новый Запрос; Запрос3.УстановитьПараметр("Оценка",Перечисления.Оценки.Удовлетворительно); Запрос3.УстановитьПараметр("Ссылка",ЭтотОбъект.Ссылка); Запрос3.Текст = ТекстЗапроса; Область.Параметры.Удовл = Запрос3.Выполнить().Выбрать().Количество(); //Подсчет 2(неуд) Запрос2 = Новый Запрос; Запрос2.УстановитьПараметр("Оценка",Перечисления.Оценки.Неудовлетворительно ); Запрос2.УстановитьПараметр("Ссылка",ЭтотОбъект.Ссылка); Запрос2.Текст = ТекстЗапроса; Область.Параметры.Неуд = Запрос2.Выполнить().Выбрать().Количество(); //Декан Область.Параметры.Декан = Константы.Декан.Получить(); ТабДок.ОриентацияСтраницы = ОриентацияСтраницы.Портрет; ТабДок.Вывести(Область); ТабДок.ОтображатьСетку = Ложь; ТабДок.Защита = Ложь; ТабДок.ТолькоПросмотр = Ложь; ТабДок.ОтображатьЗаголовки = Ложь; ТабДок.Показать(); //}}_КОНСТРУКТОР_ПЕЧАТИ_ЭЛЕМЕНТ КонецПроцедуры |
|||
1
Mtrlcnlk
26.05.20
✎
11:43
|
Если на сервере будут вот такие ошибки -
{Документ.ЭкзаменационнаяВедомость.МодульМенеджера(10,26)}: Переменная не определена (Дата) Область.Параметры.Дата = <<?>>Дата; (Проверка: Сервер) {Документ.ЭкзаменационнаяВедомость.МодульМенеджера(11,29)}: Переменная не определена (Семестр) Область.Параметры.Семестр = <<?>>Семестр; (Проверка: Сервер) {Документ.ЭкзаменационнаяВедомость.МодульМенеджера(12,25)}: Переменная не определена (Год) Область.Параметры.Год = <<?>>Год; (Проверка: Сервер) {Документ.ЭкзаменационнаяВедомость.МодульМенеджера(13,28)}: Переменная не определена (Группа) Область.Параметры.Группа = <<?>>Группа; (Проверка: Сервер) {Документ.ЭкзаменационнаяВедомость.МодульМенеджера(14,32)}: Переменная не определена (Дисциплина) Область.Параметры.Дисциплина = <<?>>Дисциплина; (Проверка: Сервер) {Документ.ЭкзаменационнаяВедомость.МодульМенеджера(15,35)}: Переменная не определена (Преподаватель) Область.Параметры.Преподаватель = <<?>>Преподаватель; (Проверка: Сервер) {Документ.ЭкзаменационнаяВедомость.МодульМенеджера(20,41)}: Переменная не определена (ТабличнаяЧасть1) Для Каждого ТекСтрокаТабличнаяЧасть1 Из <<?>>ТабличнаяЧасть1 Цикл (Проверка: Сервер) {Документ.ЭкзаменационнаяВедомость.МодульМенеджера(30,37)}: Переменная не определена (КоличествоЧасов) Область.Параметры.КоличествоЧасов = <<?>>КоличествоЧасов; (Проверка: Сервер) {Документ.ЭкзаменационнаяВедомость.МодульМенеджера(35,37)}: Переменная не определена (ЭтотОбъект) ЗапросН.УстановитьПараметр("Ссылка",<<?>>ЭтотОбъект.Ссылка); (Проверка: Сервер) {Документ.ЭкзаменационнаяВедомость.МодульМенеджера(55,37)}: Переменная не определена (ЭтотОбъект) Запрос5.УстановитьПараметр("Ссылка",<<?>>ЭтотОбъект.Ссылка); (Проверка: Сервер) {Документ.ЭкзаменационнаяВедомость.МодульМенеджера(61,37)}: Переменная не определена (ЭтотОбъект) Запрос4.УстановитьПараметр("Ссылка",<<?>>ЭтотОбъект.Ссылка); (Проверка: Сервер) {Документ.ЭкзаменационнаяВедомость.МодульМенеджера(67,37)}: Переменная не определена (ЭтотОбъект) Запрос3.УстановитьПараметр("Ссылка",<<?>>ЭтотОбъект.Ссылка); (Проверка: Сервер) {Документ.ЭкзаменационнаяВедомость.МодульМенеджера(73,37)}: Переменная не определена (ЭтотОбъект) Запрос2.УстановитьПараметр("Ссылка",<<?>>ЭтотОбъект.Ссылка); (Проверка: Сервер) |
|||
2
Mtrlcnlk
26.05.20
✎
11:43
|
выше ошибки которые будут если поставить на сервере
|
|||
3
Галахад
гуру
26.05.20
✎
11:44
|
В чем вопрос-то?
|
|||
4
HEKPOH
26.05.20
✎
11:45
|
На клиенте в толстом клиенте проверь работу
|
|||
5
Ray Zexter
26.05.20
✎
11:47
|
Судя по первой строке код выполняется на клиенте, ошибки можно проверить самому.
|
|||
6
Mtrlcnlk
26.05.20
✎
11:49
|
Если поставить на Клиенте, то при нажатие на кнопку печать будет ошибка - Метод объекта не обнаружен (Печать)
|
|||
7
ГдеСобака Зарыта
26.05.20
✎
11:59
|
Не выполнится ни на сервере, ни на клиенте. Надо разбивать
|
|||
8
DmitriyDI
26.05.20
✎
12:01
|
(7) выполнится в случае описанном в (4)
|
|||
9
Жан Пердежон
26.05.20
✎
12:01
|
(0) код для Толстого клиента only
|
|||
10
ГдеСобака Зарыта
26.05.20
✎
12:05
|
(8) Это клинический случай. Такие не рассматриваем)
|
|||
11
AlvlSpb
26.05.20
✎
12:06
|
(0) Код для ОФ, под УФ надо переделывать
|
|||
12
ГдеСобака Зарыта
26.05.20
✎
12:09
|
И ввобще нужно делать одним запросом. За такую лабораторку только тройку с минусом получишь максимум.
|
|||
13
MyNick
26.05.20
✎
13:16
|
(0) надо делить.
А лучше выкинь этот амнокод и перепиши нормально. |
|||
14
Franchiser
гуру
26.05.20
✎
13:39
|
на сервере, запроса на клиенте не бывает.
|
|||
15
D_E_S_131
26.05.20
✎
13:47
|
(14) А что ты отобразишь через ТабДок.Показать() на сервере? А у ТС там и это тоже в общем коде.Правильное решение в (7), (11) и (13).
|
|||
16
MyNick
26.05.20
✎
14:32
|
(15) Я отображу? Я говорю делить (на клиент и сервер)
Но лучше выкинуть и написать заново. |
|||
17
MyNick
26.05.20
✎
14:32
|
ой, сорян, не туда )
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |