|
Помогите разобраться с разрезами. | ☑ | ||
---|---|---|---|---|
0
breezee
01.10.16
✎
22:14
|
Добрый день! У меня есть код, взятый из решения задачи по спецу(код ниже), как я понял, разрез в коде служит чтобы отобрать все записи в запросе, кроме текущей. Мне не понятно, почему стоит условие на то что "ВидРасчета = ЗНАЧЕНИЕ(ПланВидовРасчета.ДополнительныеНачисления.Премия", хотя получается оклад. Объясните, пожалуйста. Так же попробовал на прямую указать что сотрудник - не сотрудник из табличной части. Получилась другая сумма при тетсировании(мой запрос еще ниже). Подскажите, почему не сработало?
// ++КОД РЕШЕНИЯ Измерения = Новый Массив; Измерения.Добавить("Подразделение"); Разрез = Новый Массив; Разрез.Добавить("Сотрудник"); Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | ДНБазаОН.НомерСтроки КАК НомерСтроки, | ДНБазаОН.РезультатБаза КАК РезультатБаза, | ДНБазаОН.Размер КАК Размер, | ДНБазаОН.Сотрудник, | ДНБазаОН.Подразделение |ИЗ | РегистрРасчета.ДН.БазаОН( | &Измерения, | &Измерения, | &Разрез, | Регистратор = &Ссылка | И ВидРасчета = ЗНАЧЕНИЕ(ПланВидовРасчета.ДополнительныеНачисления.Премия)) КАК ДНБазаОН |ГДЕ | ДНБазаОН.СотрудникРазрез <> ДНБазаОН.Сотрудник |ИТОГИ | СУММА(РезультатБаза), | СРЕДНЕЕ(Размер) |ПО | НомерСтроки"; Запрос.УстановитьПараметр("Ссылка", Ссылка); Запрос.УстановитьПараметр("Измерения", Измерения); Запрос.УстановитьПараметр("Разрез", Разрез); РезультатЗапроса = Запрос.Выполнить(); Выборка = РезультатЗапроса.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам); Для каждого Запись Из Движения.ДН Цикл СП.НомерСтроки = Запись.НомерСтроки; Пока Выборка.НайтиСледующий(СП) Цикл Запись.Результат = Выборка.РезультатБаза*Выборка.Размер/100; КонецЦикла; Выборка.Сбросить() КонецЦикла; Движения.ДН.Записать(,Истина); // --КОД РЕШЕНИЯ // ++Мой запрос ВЫБРАТЬ ДНБазаОН.НомерСтроки КАК НомерСтроки, ДНБазаОН.РезультатБаза КАК РезультатБаза, ДНБазаОН.Размер КАК Размер, ДНБазаОН.Сотрудник, ДНБазаОН.Подразделение ИЗ РегистрРасчета.ДН.БазаОН( &Измерения, &Измерения, &Разрез, Регистратор = &Ссылка И ВидРасчета = ЗНАЧЕНИЕ(ПланВидовРасчета.ДополнительныеНачисления.Премия) И НЕ Сотрудник В (ВЫБРАТЬ НачислениеЗарплатыДополнительныеНачисления.Ссылка ИЗ Документ.НачислениеЗарплаты.ДополнительныеНачисления КАК НачислениеЗарплатыДополнительныеНачисления ГДЕ НачислениеЗарплатыДополнительныеНачисления.Ссылка = &Ссылка)) КАК ДНБазаОН ИТОГИ СУММА(РезультатБаза), СРЕДНЕЕ(Размер) ПО НомерСтроки // --Мой запрос |
|||
1
Boleev
01.10.16
✎
22:29
|
Ничего не понятно, но спроси тут
http://forum.chistov.pro/index.php?board=16.0 |
|||
2
breezee
01.10.16
✎
22:32
|
(1) Хорошо, спасибо
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |