Имя: Пароль:
1C
1С v8
Вычисляемое поле СКД не правильно считает ;)
0 nodrama
 
06.05.22
13:06
Доброго времени суток. опять пятница ...
Собственно есть отчет на СКД. работает нормально. Нужно добавить новую колонку аля "Отклонения" и там посчитать...
Создал Вычисляемое поле написал выражение.. Поле1+Поле2-ПОле3 (тут образно).
Все добавил все норм... Формирую отчет.
Поле1 корректное (итоговая сумма)
Поле2 корректное (итоговая сумма)
Поле3 корректное (итоговая сумма)

А мое созданное поле не корректное... если посчитать руками то разница в 200 тысяч из миллионов. Вот сижу думаю как так.. .если три итога по полю корректно. то почему новое 4-ое поле посчитано не верно, причем разнца из 20 лямов.. 200 тысяч... (ни каких минусов в трех полей нет, суммы везде с "+"
1 vicof
 
06.05.22
13:07
ЕстьNUll забыл, например.
2 nodrama
 
06.05.22
13:10
(1) У меня изначально же это прописано в запросе
из серии
Выбрать когда.. тогда результат иначе 0 конец как конец

Далее в вычислении я создаю новое поле.. и там складываю отнимаю три поля из запроса.. где уже прописано если 0 если пусто.
3 nodrama
 
06.05.22
13:11
Если естьnull нужно и в выражении писать?
4 VoditelKobyly
 
06.05.22
13:13
А если вывести детальные записи и по ним получить сумму, то как получается?
5 VoditelKobyly
 
06.05.22
13:15
Вывести детальные записи, далее отчет в Ексел, новую колонку с формулой и посмотреть где разница.
6 nodrama
 
06.05.22
13:19
(5) Приччем это только если отнять третье поле

То есть если вычисление оставить Поле1+Поле2.. тогда новая колонка верная...
если к нему добавить "-Поле3" тогда новая колонка не верная на 200 тысяч...
7 vicof
 
06.05.22
13:22
в ресурсах может быть для разных уровней разные формулы написаны
8 nodrama
 
06.05.22
13:32
Что еще интересно... третье  Поле.. которое минусуется от других двух... складывается из других и складывается правильно....

То есть есть поле1 из запроса
Поле 2 из запроса.
Если их сложить в новом поле в вычислении.. то складывается правильно.

Есть поле 3 из запроса и есть поле 4 из запроса.... Если их вывести то итог везде правильный.. если их сложить в вычислении в новое поле.. То сумма правильная...

А если создать новое поле и сложить поле 1 и поле 2 (которые между собой правильные) и отнять поле 3 и поле 4 (которые между собой правильные)... то результат не верный на 200 тысяч...

В ресурсах нет ни каких формул.. просто сумма.
9 nodrama
 
06.05.22
13:38
Я с ума сойду... вообще жесть какая то...


1-ое Вычисляемое поле.. ФАКТ ... Выражение (Поле1+Поле2-Поле3-Поле4).... Не верное на 200 тысяч
2-ое Вычисляемое поле.. Отклонение. Выражение План-(Поле1+Поле2-Поле3-Поле4)... ВЕРНОЕ.... то есть во втором случаи он считает верно.. А в первом случаи разница на 200 тысяч..
10 nodrama
 
06.05.22
13:39
то есть если от Плана из запроса.. отнять Поле1+Поле2-Поле3-Поле4... то все копейка в копейку..
А если просто сложить Поле1+Поле2-Поле3-Поле4.. то разница на 200 тысяч.
11 vicof
 
06.05.22
13:44
все равно ставлю на кривые формулы в ресурсах)
12 hhhh
 
06.05.22
13:45
(10) значит и План тоже отличается на 200 тыс. Что тебе непонятно?
13 RetardedToBoot
 
06.05.22
13:54
(0) А ведь помнится, говорил что СКД удобная штука...
14 Kassern
 
06.05.22
13:54
(13) Удобная, если уметь пользоваться
15 RetardedToBoot
 
06.05.22
13:57
(14) пользоваться в принципе нужно уметь, независимо СКД ли это. Но без СКД это все более прозрачно. И вопрос не том, что этот тип построения плохой, а в том, чего его реализация хромает.
16 nodrama
 
06.05.22
13:59
Да нормальная она штука... просто че то либо я ослеп либо хз (12) отличается от чего. сумма плана верная и в экселе и в скд и в базе и тд
17 АнализДанных
 
06.05.22
13:59
(0) Напиши в ресурсах для вычисляемого поля не так
  "Сумма(ВычисляемоеПоле)"
а вот так:
  "Сумма(Поле1)+Сумма(Поле2)-Сумма(Поле3)"

И не забудь про ЕстьNULL, если надо:
  "Сумма(ЕстьNULL(Поле1, 0))+Сумма(ЕстьNULL(Поле2, 0))-Сумма(ЕстьNULL(Поле3, 0))"
18 nodrama
 
06.05.22
14:04
(17) так я есть нулл не писал, потому что все поля числовые которые я использую в запросе уже проверяются... я попробую конечно, но зачем два раза
19 hhhh
 
06.05.22
14:10
(17) вообще-то функция Сумма() проверяет на NULL
20 nodrama
 
06.05.22
14:11
(17) Хммммм... тогда не понятно

Перенес Сумма поле 1 +суппа поле2 -сумма Поле 3.. в Ресурсы.. и эти 200 тысяч прибавились.
Причем я не писал естьНулл.

Тогда вопрос почему если прописывать это в выражение то на 200 тысяч разница.... не понятно... ну ладно.

Спасибо !
21 vicof
 
06.05.22
14:27
(20) Может суммы есть одинаковые и они посчитали, что они измерения и сгруппировались