|
Как в СКД объединить несколько реквизитов при расчете суммы? | ☑ | ||
---|---|---|---|---|
0
AlexBor
naïve
27.10.14
✎
10:39
|
Собственно говоря база самописная если это имеет отношение к делу. Есть документ "Обращение" в нем 5 одинаковых реквизитов Нарушение, Нарушение1, Нарушение2 и т.д. все они соотвественно берут значение из справочника нарушения. Требуется расчетать сумму всех нарушений из документов "Обращения" за период. К слову по одному реквизиту не вызывает затруднение а как связать все 5 пока не представляю. Помогите.
|
|||
1
Тындр
27.10.14
✎
11:27
|
Выбрать Док.СуммаНарушение+Док.СуммаНарушение1+ Док.СуммаНарушение2 КАК Сумма
как то так |
|||
2
AlexBor
naïve
27.10.14
✎
11:47
|
(1) Попробую
|
|||
3
AlexBor
naïve
27.10.14
✎
12:19
|
Неверные параметры "+"
|
|||
4
DrZombi
гуру
27.10.14
✎
12:29
|
(3) (0)Пишешь второй запрос данных, где все колонки типа "СуммаНарушение1", "СуммаНарушение2" и т.д. пихешь в одну колонку "СуммаНарушение", соответственно организуешь связь с основной таблицей :)
Далее создаешь вычисляемое поле вида "ВычислитьВыражениеСГруппировкойМассив("КодЯчейки","ЭН2")" ВычислитьВыражениеСГруппировкойМассив (EvalExpressionWithGroupArray) Синтаксис: ВычислитьВыражениеСГруппировкойМассив (Выражение, ВыраженияПолейГруппировки, ОтборЗаписей, ОтборГруппировок) Параметры: Выражение - выражение, которое нужно вычислить. Тип Строка. Например, "Сумма(СуммаОборот)"; ВыраженияПолейГруппировки - выражения полей группировки, перечисленные через запятую. Например, "Контрагент, Партия"; ОтборЗаписей - выражение, применяемое к детальным записям. Например, "ПометкаУдаления = Ложь"; ОтборГруппировок - отбор, применяемый к групповым записям. Например: "Сумма(СуммаОборот) > &Параметр1". Функция возвращает массив, каждый элемент которого содержит результат вычисления выражения для группировки по указанному полю. Пример: Максимум(ВычислитьВыражениеСГруппировкойМассив ("Сумма(СуммаОборот)", "Контрагент")); Компоновщик макета при генерации макета преобразовывает параметры функции в термины полей макета компоновки данных. Например, поле Контрагент будет конвертировано в НаборДанных.Контрагент. Компоновщик макета при генерации выражений для вывода пользовательского поля, в выражении которого присутствует только функция ВычислитьМассивСГруппировкой генерирует выводимое выражение таким образом, чтобы данные выводить представления и данные были упорядочены. Например, для пользовательского поля с выражением: ВычислитьВыражениеСГруппировкойМассив("Сумма(СуммаОборот)", "Контрагент") компоновщик макета сгенерирует для вывода следующее выражение: СоединитьСтроки(Массив(Упорядочить(ВычислитьВыражениеСГруппировкойТаблицаЗначений ("Представление(Сумма(НаборДанных.СуммаОборот)), Сумма(НаборДанных.СуммаОборот)", "НаборДанных.Контрагент"), "2"))) |
|||
5
DrZombi
гуру
27.10.14
✎
12:29
|
+(4) Компоновщик сам запишет все в одну строчку :)
|
|||
6
DrZombi
гуру
27.10.14
✎
12:31
|
+(4)... По вырожению : "ВычислитьВыражениеСГруппировкойМассив("КодЯчейки","ЭН2")"
Где КодЯчейки - это твоя колонка "СуммаНарушение" ЭН2 - это твой ресурс группировки, его тебе надо будет придумать :) |
|||
7
Тындр
27.10.14
✎
12:37
|
трудно сказать что-либо заочно. (4)- (6) СКД должна упрощать жизнь , а не усложнять )) это треш и содомия
|
|||
8
DrZombi
гуру
27.10.14
✎
12:46
|
(7) Эт да, у 1С еще много места для доработок :)
|
|||
9
Kamas
27.10.14
✎
12:48
|
(8) Как выглядит сейчас отчет как должен выглядеть потом
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |