|
Помогите с обходом результата запроса | ☑ | ||
---|---|---|---|---|
0
katerinaUniv
12.09.11
✎
12:35
|
Добрый день!
Не понимаю в чем ошибка, нужно обойти и показать отчет по подразделениям, а в каждом подразделении по сотрудникам Результат = Запрос.Выполнить(); Выборка = Результат.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкамСИерархией); Пока Выборка.Следующий() Цикл Область = Макет.ПолучитьОбласть("Подразделение"); Область.Параметры.Показатель = Выборка.ПодразделениеОрганизации; Область.Параметры.Сумма = Выборка.Результат; Область.Параметры.суммаНДФЛ = Выборка.Налог; ТабДок.Вывести(Область); ВыборкаДетали = Выборка.Выбрать(ОбходРезультатаЗапроса.Прямой); Пока ВыборкаДетали.Следующий() Цикл Область = Макет.ПолучитьОбласть("Сотрудник"); Область.Параметры.Показатель = ВыборкаДетали.Сотрудник; Область.Параметры.Сумма = выборкаДетали.Результат; Область.Параметры.СуммаНДФЛ = ВыборкаДетали.Налог; ТабДок.Вывести(Область); КонецЦикла; КонецЦикла; |
|||
1
Рэйв
12.09.11
✎
12:37
|
Обходи и показывай.
|
|||
2
lxs
12.09.11
✎
12:42
|
1. Получать область каждый раз - некорректно.
2. Табдок.Показать() не пробовала? |
|||
3
mzelensky
12.09.11
✎
12:47
|
(0) что есть "ТабДок" ? Попробуй как (2) написал "Табдок.Показать() " ?!
|
|||
4
katerinaUniv
12.09.11
✎
12:54
|
все поправила
|
|||
5
katerinaUniv
12.09.11
✎
12:54
|
получается так:
Результат = Запрос.Выполнить(); Выборка = Результат.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам); Пока Выборка.Следующий() Цикл Область = Макет.ПолучитьОбласть("Подразделение"); Область.Параметры.Показатель = Выборка.ПодразделениеОрганизации; Область.Параметры.Сумма = Выборка.Результат; Область.Параметры.суммаНДФЛ = Выборка.Налог; ТабДок.Вывести(Область); ВыборкаДетали = Выборка.Выбрать(ОбходРезультатаЗапроса.Прямой); Пока ВыборкаДетали.Следующий() Цикл Область = Макет.ПолучитьОбласть("Сотрудник"); Область.Параметры.Показатель = ВыборкаДетали.Сотрудник; Область.Параметры.Сумма = выборкаДетали.Результат; Область.Параметры.СуммаНДФЛ = ВыборкаДетали.Налог; ТабДок.Вывести(Область); КонецЦикла; КонецЦикла; |
|||
6
katerinaUniv
12.09.11
✎
12:58
|
вопрос еще, как в запросе отсортировать по алфавиту возр?
|УПОРЯДОЧИТЬ ПО | ПодразделениеОрганизации, | Сотрудник |
|||
7
katerinaUniv
12.09.11
✎
12:58
|
может что где дописать надо?
|
|||
8
mzelensky
12.09.11
✎
13:00
|
(6) |УПОРЯДОЧИТЬ ПО
| ПодразделениеОрганизации.наименование, | Сотрудник.наименование |
|||
9
katerinaUniv
12.09.11
✎
13:02
|
т.е. надо четко указывать поле?
|
|||
10
katerinaUniv
12.09.11
✎
13:03
|
(8) не работает, пишет ошибку
Неоднозначное поле "ПодразделениеОрганизации.Наименование" |
|||
11
Axel2009
12.09.11
✎
13:03
|
т.е. надо указывать поле по которому сортируется.
ПодразделениеОрганизации - ссылка. и сортировка идет по ссылке. |
|||
12
mzelensky
12.09.11
✎
13:06
|
(10) я как пример написал. Я же не знаю что ты там конкретно выбираешь! в (11) тебе прально сказали!
|
|||
13
katerinaUniv
12.09.11
✎
13:40
|
правильно, но почему-то для подразделения организаций ошибка, а для сотрудника написала - реально работает, спасибо
|
|||
14
katerinaUniv
12.09.11
✎
13:40
|
последний вопрос: как свернуть результат запроса? например, у меня 2 сотрудника одинаковых в результате запроса, у каждого свое начисление и своя сумма
|
|||
15
katerinaUniv
12.09.11
✎
13:41
|
по идее из двух надо сделать одного с общей суммой
|
|||
16
katerinaUniv
12.09.11
✎
13:41
|
ил запроса текст менять?
|
|||
17
Axel2009
12.09.11
✎
13:41
|
потому что надо указывать имя таблицы, от которой идет сортировка по подразделению.
|
|||
18
katerinaUniv
12.09.11
✎
13:42
|
"ВЫБРАТЬ
| НДФЛРасчетыСБюджетом.ФизЛицо КАК ФизЛицо1, | НДФЛРасчетыСБюджетом.ПодразделениеОрганизации КАК ПодразделениеОрганизации1, | СУММА(НДФЛРасчетыСБюджетом.Налог) КАК Налог, | НДФЛРасчетыСБюджетом.Период, | ОсновныеНачисленияРаботниковОрганизаций.ПериодРегистрации, | ОсновныеНачисленияРаботниковОрганизаций.Сотрудник КАК Сотрудник, | ОсновныеНачисленияРаботниковОрганизаций.ФизЛицо КАК ФизЛицо, | СУММА(ОсновныеНачисленияРаботниковОрганизаций.Результат) КАК Результат, | ОсновныеНачисленияРаботниковОрганизаций.ПодразделениеОрганизации КАК ПодразделениеОрганизации |ИЗ | РегистрРасчета.ОсновныеНачисленияРаботниковОрганизаций КАК ОсновныеНачисленияРаботниковОрганизаций | ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрНакопления.НДФЛРасчетыСБюджетом КАК НДФЛРасчетыСБюджетом | ПО ОсновныеНачисленияРаботниковОрганизаций.ФизЛицо = НДФЛРасчетыСБюджетом.ФизЛицо |ГДЕ | ОсновныеНачисленияРаботниковОрганизаций.ПериодРегистрации МЕЖДУ &ДатаС И &ДатаПо | И НДФЛРасчетыСБюджетом.Период МЕЖДУ &ДатаС И &ДатаПо | И ОсновныеНачисленияРаботниковОрганизаций.Результат <> &С | |СГРУППИРОВАТЬ ПО | ОсновныеНачисленияРаботниковОрганизаций.ПодразделениеОрганизации, | НДФЛРасчетыСБюджетом.ФизЛицо, | НДФЛРасчетыСБюджетом.ПодразделениеОрганизации, | НДФЛРасчетыСБюджетом.Период, | ОсновныеНачисленияРаботниковОрганизаций.ПериодРегистрации, | ОсновныеНачисленияРаботниковОрганизаций.Сотрудник, | ОсновныеНачисленияРаботниковОрганизаций.ФизЛицо | |УПОРЯДОЧИТЬ ПО | ПодразделениеОрганизации, | Сотрудник.Наименование |ИТОГИ | СУММА(Налог), | СУММА(Результат) |ПО | ПодразделениеОрганизации |
|||
19
katerinaUniv
12.09.11
✎
13:42
|
это мой вариант запроса
|
|||
20
mzelensky
12.09.11
✎
13:42
|
(14) в этом случае проще всего итоги делать по сотруднику и прописать функцию ("сумма")
|
|||
21
mzelensky
12.09.11
✎
13:43
|
(20) +
|ИТОГИ | СУММА(Налог), | СУММА(Результат) |ПО | ПодразделениеОрганизации, СОТРУДНИК |
|||
22
mzelensky
12.09.11
✎
13:44
|
(13) напиши так:
"УПОРЯДОЧИТЬ ПО ОсновныеНачисленияРаботниковОрганизаций.ПодразделениеОрганизации.НАИМЕНОВАНИЕ" |
|||
23
mzelensky
12.09.11
✎
13:45
|
(22) + а вообще учись делать все в конструкторе запросов - эт очень облегчает жизнь + избавляет от глупых ошибок и вопросов!
|
|||
24
katerinaUniv
12.09.11
✎
13:49
|
(21) все равно не считает, отдельно выводит сотрудников
|
|||
25
katerinaUniv
12.09.11
✎
13:49
|
вот так написала:
|ИТОГИ | СУММА(Налог), | СУММА(Результат) |ПО | ПодразделениеОрганизации, | Сотрудник" |
|||
26
katerinaUniv
12.09.11
✎
13:50
|
получилось не 2, а 4 строки из-за появившейся группировки
|
|||
27
katerinaUniv
12.09.11
✎
13:50
|
конструктором делаю обычно, сейчас открываться не хочет, ошибку пишет, хотя отчет работает и запрос тоже
|
|||
28
mzelensky
12.09.11
✎
13:53
|
(25) ну так а обход запроса ты изменила на 3 выборки???
|
|||
29
katerinaUniv
12.09.11
✎
13:56
|
все, спасибо, все правильно, только в базе уже успели сотрудников надвоить, одно начисление на правильном, а другое - на двойнике, вот и лезут!
(28)обход поменяла и все стало ОК))) спасибо!!! |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |