Имя: Пароль:
1C
1С v8
Не могу получить коэффициент нужного вида в СКД!
,
0 VID1234
 
10.02.22
15:08
Приветствую. Подскажите пожалуйста. Мне необходимо получить коэффициент с помощью деления суммыопределенной/общуюсумму.
Оба этих значения я получаю с помощью Выражений в вычисляемом поле. Вывожу их в отчет все норм суммы есть и здесь: суммыопределенной и здесь: общуюсумму! Но когда пытаюсь разделить и вывожу в отчет у меня просто 1 выходит, как будто-бы округляется до 1! Пробую и через Выражение в вычисляемом поле назначить формат числа (ВЫРАЗИТЬ((здесь куча отборов и прочего, чтобы получить нужную сумму (суммыопределенной)) / (здесь куча отборов и настроек, чтобы выводилась общая сумма (общуюсумму)), "ЧИСЛО(22,21)"), в итоге получается так 1,000000000000000000, через настройки типа значений и оформления, аналогично! Если я использую выражение в пользовательском поле (через настройки), там я сразу пишу суммыопределенной / общуюсумму, т.е. обращаюсь к вычисляемым полям, то все выходит как нужно, но использовать полученное поле в формулах я не могу! Как быть? Как привести коэффициент в нужный вид или может есть лайфхак какой нибудь?
Это Выражение поля "суммыопределенной":
Выбор Когда ПодразделениеНаКонецПериода.Наименование подобно "%Основное%" Тогда (Выбор Когда Группа = Значение(Перечисление.ГруппыНачисленияУдержанияВыплаты.Начислено)  И НЕ (Группа = Значение(Перечисление.ГруппыНачисленияУдержанияВыплаты.НачальноеСальдоПоБухучету) ИЛИ Группа = Значение(Перечисление.ГруппыНачисленияУдержанияВыплаты.НачальноеСальдоПоМесяцамРасчета) ИЛИ Группа = Значение(Перечисление.ГруппыНачисленияУдержанияВыплаты.ВыплаченоПоБухучету) ИЛИ Группа = Значение(Перечисление.ГруппыНачисленияУдержанияВыплаты.ВыплаченоПоМесяцамРасчета) ИЛИ Группа =Значение(Перечисление.ГруппыНачисленияУдержанияВыплаты.КонечноеСальдоПоБухучету) ИЛИ Группа = Значение(Перечисление.ГруппыНачисленияУдержанияВыплаты.КонечноеСальдоПоМесяцамРасчета)) И (ВидРасчета.Наименование ПОДОБНО "%Оплата по окладу%"  ИЛИ ВидРасчета.Наименование ПОДОБНО "%Персональная надбавка 1%" ИЛИ ВидРасчета.Наименование ПОДОБНО "%Персональная надбавка за совмещение должностей%" ИЛИ ВидРасчета.Наименование ПОДОБНО "%Персональная надбавка 2 %" ИЛИ ВидРасчета.Наименование ПОДОБНО "%Премия разовая (суммой)%" ИЛИ ВидРасчета.Наименование ПОДОБНО "%Персональная надбавка за совмещение должностей2 %")  ТОГДА Сумма Конец) Конец
А это поле" общуюсумму":
Выбор Когда ПодразделениеНаКонецПериода.Наименование подобно "%Основное%" Тогда (Выбор Когда Группа = Значение(Перечисление.ГруппыНачисленияУдержанияВыплаты.Выплачено) Тогда Сумма Конец) Конец
Обращаться к вычисляемому полю напрямую не получается, поэтому приходится при составлении формул вписывать полностью все эти настройки.
Но в пользовательском выражении я просто пишу наименование вычисляемого поля и у меня все считает правильно.
1 vicof
 
10.02.22
15:15
гкод детектед
2 vicof
 
10.02.22
15:17
ВЫБОР КОГДА Выбор Когда ПодразделениеНаКонецПериода.Наименование подобно "%Основное%" Тогда (Выбор Когда Группа = Значение(Перечисление.ГруппыНачисленияУдержанияВыплаты.Выплачено) Тогда Сумма Конец) = 0 ТОГДА 0 ИНАЧЕ
Выбор Когда ПодразделениеНаКонецПериода.Наименование подобно "%Основное%" Тогда (Выбор Когда Группа = Значение(Перечисление.ГруппыНачисленияУдержанияВыплаты.Начислено)  И НЕ (Группа = Значение(Перечисление.ГруппыНачисленияУдержанияВыплаты.НачальноеСальдоПоБухучету) ИЛИ Группа = Значение(Перечисление.ГруппыНачисленияУдержанияВыплаты.НачальноеСальдоПоМесяцамРасчета) ИЛИ Группа = Значение(Перечисление.ГруппыНачисленияУдержанияВыплаты.ВыплаченоПоБухучету) ИЛИ Группа = Значение(Перечисление.ГруппыНачисленияУдержанияВыплаты.ВыплаченоПоМесяцамРасчета) ИЛИ Группа =Значение(Перечисление.ГруппыНачисленияУдержанияВыплаты.КонечноеСальдоПоБухучету) ИЛИ Группа = Значение(Перечисление.ГруппыНачисленияУдержанияВыплаты.КонечноеСальдоПоМесяцамРасчета)) И (ВидРасчета.Наименование ПОДОБНО "%Оплата по окладу%"  ИЛИ ВидРасчета.Наименование ПОДОБНО "%Персональная надбавка 1%" ИЛИ ВидРасчета.Наименование ПОДОБНО "%Персональная надбавка за совмещение должностей%" ИЛИ ВидРасчета.Наименование ПОДОБНО "%Персональная надбавка 2 %" ИЛИ ВидРасчета.Наименование ПОДОБНО "%Премия разовая (суммой)%" ИЛИ ВидРасчета.Наименование ПОДОБНО "%Персональная надбавка за совмещение должностей2 %")  ТОГДА Сумма Конец) Конец / Выбор Когда ПодразделениеНаКонецПериода.Наименование подобно "%Основное%" Тогда (Выбор Когда Группа = Значение(Перечисление.ГруппыНачисленияУдержанияВыплаты.Выплачено) Тогда Сумма Конец) КОНЕЦ
3 VID1234
 
10.02.22
15:39
(2) Здравствуйте. И что это значит!
4 vicof
 
10.02.22
15:40
Ответ на вопрос:  "Мне необходимо получить коэффициент с помощью деления суммыопределенной/общуюсумму"
5 VID1234
 
10.02.22
15:44
(4) У меня есть суммыопределенной и общуюсумму, но при их делении у меня просто пишется 1
6 vicof
 
10.02.22
15:50
В группировке или детальных записях?
7 VID1234
 
10.02.22
15:55
(6) Группировка!
8 VID1234
 
10.02.22
15:59
(6) Попробовал детальные записи, выбрал нужное поле, но вообще пустой результат!
9 MikhaNik
 
10.02.22
16:22
Пример для СКД
на итс
10.3.4.11
Сумма(Продажи.СуммаОборот) / ВЫЧИСЛИТЬ("Сумма(Продажи.СуммаОборот)", "ОбщийИтог")
10 DrShad
 
10.02.22
16:41
определенная сумма у него это сумма выплаченой зп
11 VID1234
 
10.02.22
16:48
Все допетрил, я создал в вычисляемых полях поле ОсновнойОклад (как пример), выражение не стал заполнять, а вот в ресурсах, добавил созданное поле и там в выражение вставил
(СУММА(Выбор Когда ПодразделениеНаКонецПериода.Наименование подобно "%Основное%" Тогда (Выбор Когда Группа = Значение(Перечисление.ГруппыНачисленияУдержанияВыплаты.Начислено)  И НЕ (Группа = Значение(Перечисление.ГруппыНачисленияУдержанияВыплаты.НачальноеСальдоПоБухучету) ИЛИ Группа = Значение(Перечисление.ГруппыНачисленияУдержанияВыплаты.НачальноеСальдоПоМесяцамРасчета) ИЛИ Группа = Значение(Перечисление.ГруппыНачисленияУдержанияВыплаты.ВыплаченоПоБухучету) ИЛИ Группа = Значение(Перечисление.ГруппыНачисленияУдержанияВыплаты.ВыплаченоПоМесяцамРасчета) ИЛИ Группа =Значение(Перечисление.ГруппыНачисленияУдержанияВыплаты.КонечноеСальдоПоБухучету) ИЛИ Группа = Значение(Перечисление.ГруппыНачисленияУдержанияВыплаты.КонечноеСальдоПоМесяцамРасчета)) И (ВидРасчета.Наименование ПОДОБНО "%Отпуск основной%")  ТОГДА  Сумма Конец) Конец)/СУММА(Выбор Когда ПодразделениеНаКонецПериода.Наименование подобно "%ОСНОВНОЕ%" Тогда (Выбор Когда Группа = Значение(Перечисление.ГруппыНачисленияУдержанияВыплаты.Начислено)  И НЕ (Группа = Значение(Перечисление.ГруппыНачисленияУдержанияВыплаты.НачальноеСальдоПоБухучету) ИЛИ Группа = Значение(Перечисление.ГруппыНачисленияУдержанияВыплаты.НачальноеСальдоПоМесяцамРасчета) ИЛИ Группа = Значение(Перечисление.ГруппыНачисленияУдержанияВыплаты.ВыплаченоПоБухучету) ИЛИ Группа = Значение(Перечисление.ГруппыНачисленияУдержанияВыплаты.ВыплаченоПоМесяцамРасчета) ИЛИ Группа =Значение(Перечисление.ГруппыНачисленияУдержанияВыплаты.КонечноеСальдоПоБухучету) ИЛИ Группа = Значение(Перечисление.ГруппыНачисленияУдержанияВыплаты.КонечноеСальдоПоМесяцамРасчета)) Тогда Сумма Конец) Конец)*СУММА(Выбор Когда ПодразделениеНаКонецПериода.Наименование подобно "%ОСНОВНОЕ%" Тогда (Выбор Когда Группа = Значение(Перечисление.ГруппыНачисленияУдержанияВыплаты.Выплачено) Тогда Сумма Конец) Конец))
Тем самым мы как бы в одном поле в ресурсах нашли сначала "суммыопределенной", потом сумму "общуюсумму", а потом полученное (здесь уже коэффициент например 0,18239439438) умножили на сумму которую нужно разбить по частям (долям). В итоге получили сразу готовую сумму!
Компьютер — устройство, разработанное для ускорения и автоматизации человеческих ошибок.