Имя: Пароль:
1C
1С v8
Как хранить результаты расчётов за период?
,
0 f_vadim
 
30.01.16
18:08
Есть предположим условный кредит. Пользователь делает расчёт процентов за произвольный период.
Как лучше хранить результат, чтобы исключать из расчёта уже расчитанные дни?
Вариант хранения расчёта за каждый день отдельно в регистре накопления имеет недостатки в виде набега лишних копеек в итогах и при закрытии.
1 ДенисЧ
 
30.01.16
18:11
Храни дни в регистре сведений, кто тебе запрещает?
2 f_vadim
 
30.01.16
18:15
(1) считаем за период, бъём на дни, пишем в РС, считаем итог за период - получаем разбег в копейках.
3 f_vadim
 
30.01.16
18:15
(1) а! или ты имел в виду про то даты? да, есть такой вариант
4 f_vadim
 
30.01.16
18:17
просто может есть более красивое решение
5 ДенисЧ
 
30.01.16
18:19
А хранить рассчитанные суммы - мысль в голову не приходила?
6 f_vadim
 
30.01.16
18:21
(5) поподробнее? в чём отличие от регистра накопления?
7 ДенисЧ
 
30.01.16
18:25
(6) "разруха - она не в сортирах, а в головах" (с)

Сначала сформулируй для себя, что ты хочешь иметь, потом уже формулируй вопрос...
8 f_vadim
 
30.01.16
18:34
(7) нюню. что из (1) тебе непонятно?
9 ДенисЧ
 
30.01.16
18:44
(8) рассчитывай по дням и храни дата-сумма. В чем проблема?
10 f_vadim
 
30.01.16
18:48
(9)
1. если хранить суммы по дням до 2-го знака, то будет разбег с итоговой суммой за период.
2. если хранить суммы по дням, скажем, до 5-го знака, то закрываться оплатой (2 знака) такой регистр не будет, будет накапливаться разница.
11 ДенисЧ
 
30.01.16
19:35
Ты или трусики надень, или крестик сними...

Округляй расчёты так, чтобы ничего не набегало.
12 f_vadim
 
30.01.16
19:53
(11) "я не тактик, я стратег"
13 ДенисЧ
 
30.01.16
19:55
(12) Тогда иди и делай.
И не просто иди, а иди, иди, иди, иди....
14 Garykom
 
гуру
30.01.16
20:01
(11) +1

"заставь дурак богу молиться, так он и лоб расшибет"©
15 Garykom
 
гуру
30.01.16
20:01
(0) Для начала период начисления процентов какой?
16 f_vadim
 
30.01.16
20:19
(15) период определяется графиком.
расчёт может охватывать произвольный период, не связанный с периодом начисления.
17 Garykom
 
гуру
30.01.16
20:28
(16) И как древесина? Качественная?
18 Garykom
 
гуру
30.01.16
20:29
(17)+ Хорошо долбится?
19 f_vadim
 
30.01.16
20:32
(18) нормально.
я конечно понимаю, что моё непонимание вызывает столько восторга и позволяет почесать своё ЧСВ, но в замен всё-таки хотелось получить более конкретные рекомендации.
20 Garykom
 
гуру
30.01.16
20:39
(19) Так может сначала про принципы начисления и расчета процентов в т.ч. сложных почитать?
От этого все непонимание и происходит.

К примеру "округление по банковскому" или иначе "банковское округление" стандартный термин уже много много лет.
21 kosts
 
30.01.16
20:40
(10) От даты оплаты начинай новый расчет погрешности.
Вообще не понятна проблема. Ты программист или экономист.
Если первый, то иди к экономистам и спрашивай формулы расчета.
Для примера возьми у них Excel  с расчетом.
22 f_vadim
 
30.01.16
20:45
(20)(21)
формулы примитивные, посчитать не проблема - считают целиком за период: Ставка * ДнейВПериоде / ДнейВГоду * База.

я же не про то как считать спрашиваю, а про то, как организовать хранение этих расчётов.
23 kosts
 
30.01.16
20:48
(22) Да вот так как считают так и храни.
Пусть дадут расклад за большой период по одному кредиту. На листочке.
Вот так как у них будет написано, так и храни.
24 f_vadim
 
30.01.16
20:50
(23) и тут мы возвращаемся к вопросу в (0)
25 Garykom
 
гуру
30.01.16
20:50
(22) вот отсюда "формулы примитивные, посчитать не проблема" и начинаются у Вас проблемы ))

эти примитивные формулы еще правильно применять нужно
к примеру если ставка месячная, то для расчета часто берут некий "стандартный месяц" в (365.2425/12) дней
26 f_vadim
 
30.01.16
20:51
(25) проблемы от таких советчиков, у которых спрашиваешь как хранить, а они говорят, что считаешь неправильно.
27 kosts
 
30.01.16
20:53
(26) Проблема округления это не проблема программы и БД. Это проблема организационная.
28 Garykom
 
гуру
30.01.16
20:54
(27) +100500

(26) просто если "считать правильно", то проблемы типа (0) пропадают прикинь да?
29 f_vadim
 
30.01.16
20:55
(27) да забудьте вы про округление, это просто был один из вариантов - бить по дням, проблему с ним я и так вижу.
30 f_vadim
 
30.01.16
20:57
(28) прикинь - я считаю по формулам из экселя. ты предлагаешь мне пойти и объяснить экономистам что они считают не правильно, да?
31 kosts
 
30.01.16
20:59
(30) Ну если у тебя есть Excel, который уже посчитал.
То просто скопируй, то что он насчитал в 1С.
32 Garykom
 
гуру
30.01.16
21:00
(30) а эти формулы в экселе тоже "программист" рисовал? по объяснениям "экономистов" ?
33 f_vadim
 
30.01.16
21:00
(31) я не понял, вопрос в (0) как-то непонятно сформулирован?
уточняю - вторая строка:
"Как лучше хранить результат, чтобы исключать из расчёта уже расчитанные дни? "
34 kosts
 
30.01.16
21:01
Блин мне бы давали Excel для реализации в 1С.
Везет тебе, завидую.
А то скажут зарплата посчиталась не правильно исправляй...
И не скажут ни сотрудника, ни вид расчета, ни месяц, но должен сделать вчера...
35 Garykom
 
гуру
30.01.16
21:02
(33) как хочешь так и храни
36 kosts
 
30.01.16
21:03
(33) Подправить процедуру, где выполняется расчет, что бы в обработку не попадали не нужные дни.
37 f_vadim
 
30.01.16
21:03
(32) почему тебя это беспокоит?
38 f_vadim
 
30.01.16
21:05
(35) а ты зачем вообще приходил?
39 Garykom
 
гуру
30.01.16
21:06
(38) как бы правильно будет "зачем Вы пришли, когда я тут уже давно сидел" :)
40 f_vadim
 
30.01.16
21:07
(39) какбе в этой ветке первый я :)
41 Garykom
 
гуру
30.01.16
21:09
Параметры уже сделанных расчетов (период, ставка и т.д.) сохраняй и результаты (что там насчитало)

Тогда будет проблема только при перекрытии новыми расчетами уже сделанных
42 f_vadim
 
30.01.16
21:10
>> Тогда будет проблема только при перекрытии новыми расчетами уже сделанных

именно... всего 3 часа понадобилось
43 Garykom
 
гуру
30.01.16
21:11
(42) это системная проблема, она была изначально заложена в Ваше решение
44 f_vadim
 
30.01.16
21:14
(43) а можно выключить капитана-очевидность?
45 Garykom
 
гуру
30.01.16
21:20
46 f_vadim
 
30.01.16
21:21
(45) если я тебя задолбал, почему ты ещё здесь? мазохизм?
47 Garykom
 
гуру
30.01.16
21:29
Мне любопытно когда все таки дойдет.
Что если тот кто говорит/спрашивает/объясняет не телепат, и тот кто пытается слушать/понять тоже не телепат.
То как можно объяснить что то не используя правильных слов?


ЗЫ Но большой опыт "телепатии" дает некий навык, понять что дело бесполезное, просто кого то поменять нужно
48 f_vadim
 
30.01.16
21:32
(47) так ты вопроса не понял? вроде в (41)(42) всё выяснили
49 Garykom
 
гуру
30.01.16
21:34
(48) дык выяснили что то к полусотне постов? и еще что то выяснится к 100, 200, 1000 постам?

или нормальный понятный любому (специалисту) вопрос, или все исходные данные "с картинками"

без этого никак не понять что там хочется и зачем
50 f_vadim
 
30.01.16
21:41
(49) про специалистов на мисте - спасибо, посмеялся.

я в четвёртый раз спрошу - мой вопрос не понятен?
расчёт делается за период.
итог расчёта нужно хранить.
как его хранить так, чтоб проще было исключать из текущего существующий расчёт?
какие ещё картинки нужны?
51 mistеr
 
30.01.16
23:01
(50) Ты бы тоже слез с пьедестала на минуту и расписал бы пример полностью, чтобы проблема была всем видна.
52 f_vadim
 
30.01.16
23:51
(51) слезаю
пользователь 10 числа делает расчёт с 1.01 по 10.01.
другой пользователь делает расчёт в конце месяца с 1.01 по 31.01.
необходимо во втором расчёте учесть уже существующий расчёт - т.е. период сделать с 11.01 по 31.01.

да, я могу в запросе соединиться с регистром и сдвинуть даты. спрашивал об альтернативных вариантах.
53 mistеr
 
30.01.16
23:59
(52) Можно в независимом регистре хранить полный период, покрытый всеми предыдущими расчетами. После расчета его актуализировать.
54 Garykom
 
гуру
31.01.16
00:05
(53) главной фишки не понял )) если периоды при расчетах перекрываются
то новый расчет дает другие совсем отличные от старого циферки для этого перекрывания...

:-D

и ТС хочет циферки брать из старого расчете и как то подогнать циферки из нового чтобы "все сошлось"
55 f_vadim
 
31.01.16
00:18
(53) была похожая идея - хранить последнюю дату последнего периода. вроде разрывов не должно быть
(54) >>и ТС хочет циферки брать из старого расчете и как то подогнать циферки из нового чтобы "все сошлось"
вот придумывать за меня не нужно. подгонять я пока ничего не собираюсь. но проблема такая есть - в списке вопросов к обсуждению обозначена.
56 Garykom
 
гуру
31.01.16
00:25
(55) я надеюсь Вы не банке работаете, а всего лишь в микрофинансовой...
просто обычно банки уже знают про такую вещь как 2 разные таблички расчетный график оплат и фактические оплаты
и на расчетные оплаты всем пофиг, изменился задним число и хз
вот когда считаем новый график оплат просто учитываются фактические оплаты, они перекрывают старый график по умолчанию
т.е. если какая то сумма недоплачена/переплачено согласно новому графику
то просто выкидываем эту сумму в общую сумму остаточного долга
и выйдет простое уменьшение/увеличение платежей всех последующих
57 f_vadim
 
31.01.16
00:57
(56) ни там ни там. в моём случае настройками определяется учитывать фактические оплаты или считать по плановому графику.
58 f_vadim
 
31.01.16
00:59
и выкать мне не нужно
59 Garykom
 
гуру
31.01.16
01:03
(57) так плановый график перекрывается фактическими по мере оплаты
если фактическая оплата была в нужном размере до даты по графику то ставим вместо суммы по графику сумму факт
и нужно автоматом технически пересчитать график так как переплатили

если по новому плановому графику возникают "виртуальные недоплаты" фактическими то просто сумму недоплаты переносим на еще не закрытый период (т.е. просто нужно хранить 1 дату до которой не могут возникнуть недоплаты)

вообще такого понятия как плановый график "в прошлом" не существует )) это некие плановые/прошедшие даты в которые засунуты фактические суммы
60 Garykom
 
гуру
31.01.16
01:05
(59)+ но вообще ситуация пересечения периодов двух расчетов это нонсенс
если период пересчитывается это означает что "старый условный кредит" закрыт полностью и сейчас считаем некий "новый кредит"
а его низзя всучить задним числом ))
61 f_vadim
 
31.01.16
01:15
(60) речь не об пересчёте периода, а о том, что нужно исключить возможность посчитать два раза один период.
62 Garykom
 
гуру
31.01.16
01:22
(61) регистр сведений ПосчитанныеПериоды, где записаны договор кредита, дата начала расчета, дата окончания расчета
и перед новым расчетом делается выборка/запрос по регистру и все видно

периодически можно (ну или в расчет засунуть эту функцию) объединять совмещенные записи в одну общую
63 Garykom
 
гуру
31.01.16
01:24
(62)+ договор/кредит и 2 даты это все измерения, в ресурс что угодно засунуть