Текущее время: Пт, авг 08 2025, 17:05

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 14 ] 
Автор Сообщение
 Заголовок сообщения: Проблема с округлением при умножении на коэф. сокращения
СообщениеДобавлено: Пт, май 23 2008, 16:19 
Директор
Директор
Аватара пользователя

Зарегистрирован:
Чт, авг 19 2004, 14:31
Сообщения: 754
Откуда: Весь мир
Пол: Мужской
Здравствуйте.

Вышла забавная ситуация:
есть куча видов оплаты в 14ИТ, которые в P0014 деляет период на полупериоды. Получается 5 полупериодов.
Есть оклад 10 000р.

При полной отработке факт=план после умножения оклада на коэф. сокращения выходит оклад = 10 000, 01. Как с этой копейкой цивилизованно бороться?

_________________
--
virvit.ru
saphr.ru


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, май 26 2008, 08:22 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Вт, май 30 2006, 08:34
Сообщения: 1900
Проверьте, что при расчете коэффициентов Вы пользуетесь константой KGENAU и что она достаточно велика (ну хотя бы не меньше 1000).

_________________
С уважением.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, май 26 2008, 09:03 
Гуру-эксперт
Гуру-эксперт
Аватара пользователя

Зарегистрирован:
Вт, июл 25 2006, 14:50
Сообщения: 3481
Откуда: Moscow
Пол: Мужской
Ага, умножить перед делением оклад на 1000, а после деления разделить.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, май 26 2008, 14:04 
Директор
Директор
Аватара пользователя

Зарегистрирован:
Чт, авг 19 2004, 14:31
Сообщения: 754
Откуда: Весь мир
Пол: Мужской
Это уже результат обработки с константой KGENAU = 100 000. Сокращение идет через стандартные /80* коэф, на базе часов.

_________________
--
virvit.ru
saphr.ru


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт, май 27 2008, 15:36 
Менеджер
Менеджер
Аватара пользователя

Зарегистрирован:
Пн, июн 05 2006, 14:48
Сообщения: 701
Откуда: Mosсow
Пол: Мужской
Да, есть копейки при наличии достаточно большого количества разбиений /80х.

Как вариант доработать правило, в котором идет применение коэффициентов на проверку: если значения типа G из PARTA нулевые, а значения G и T из PARTT одинаковы в части *DIVI, то не применять коэффициенты к окладу.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт, июл 08 2008, 13:03 
Директор
Директор
Аватара пользователя

Зарегистрирован:
Чт, авг 19 2004, 14:31
Сообщения: 754
Откуда: Весь мир
Пол: Мужской
Jesus написал:
Да, есть копейки при наличии достаточно большого количества разбиений /80х.

Как вариант доработать правило, в котором идет применение коэффициентов на проверку: если значения типа G из PARTA нулевые, а значения G и T из PARTT одинаковы в части *DIVI, то не применять коэффициенты к окладу.


Мможно, пожалуйста, чуть подробнее? Немного не понял логику :(

_________________
--
virvit.ru
saphr.ru


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проблема с округлением при умножении на коэф. сокращения
СообщениеДобавлено: Вт, ноя 30 2010, 18:10 
Ассистент
Ассистент

Зарегистрирован:
Пн, дек 03 2007, 18:16
Сообщения: 25
Подниму тему.
Столкнулся с аналогичной проблемой, GENAU 1000000 больше не получается ))), а разница в копейку есть. Кто как борется с проблемой?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проблема с округлением при умножении на коэф. сокращения
СообщениеДобавлено: Вт, ноя 30 2010, 20:52 
Менеджер
Менеджер
Аватара пользователя

Зарегистрирован:
Пн, июн 05 2006, 14:48
Сообщения: 701
Откуда: Mosсow
Пол: Мужской
Попробуете описанное решение выше. Смысл в том, что мы проверяем, что отработка была полной + то, что график не менялся. При этих условиях коэффициент сокращения можно не применять. После создания /8хх идет правило применения этих коэффициентов.вот в нем проверяйте описанное условие


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проблема с округлением при умножении на коэф. сокращения
СообщениеДобавлено: Ср, дек 01 2010, 09:16 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Вт, авг 23 2005, 12:50
Сообщения: 942
Пол: Мужской
Jesus написал:
Попробуете описанное решение выше. Смысл в том, что мы проверяем, что отработка была полной + то, что график не менялся. При этих условиях коэффициент сокращения можно не применять

Помоем это очень частное решение, т.к. разбиение может возникнуть и из-за смены МВЗ или из-за косвеной оценки (например исполнилось 30 лет и имеем северную надбавку), если в таких случаях не разбивать оклад на части то получаем другие рода погрешности или пренебрежения.

Если цель получить сумму оклада без погрешности, то можно проверять, что месяц отработан полностью и в последнем полупериоде делать корректировку погрешности.
А если цель подогнать расчет к параллельному расчету в другой системе, тогда лучше придумать возможность прогрузки дельт расчета.

_________________
Нет таких денег, за которые кто-то будет работать лучше, чем энтузиасты бесплатно. Пол Грэм.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проблема с округлением при умножении на коэф. сокращения
СообщениеДобавлено: Ср, дек 01 2010, 10:31 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Ср, июн 01 2005, 09:40
Сообщения: 536
Откуда: Belgorod
Пол: Мужской
Есть очень простой алгоритм хорошего округления.
Хранение погрешности на каждой итерации, для следующей итерации.
есть у нас оклад 100р.
1. Берем нужный /8* (в нем уже есть genau) умножаем на оклад и прибавляем значение Q (далее будет понятно зачем) и запоминаем .
2. Берем значение из п.1 делим на genau запоминаем для дальнейшего расчета.
3. Берем полученное значение в п.2 умножаем на genau и отнимаем значение п.1 и запоминаем в Q для следующей итерации.
И так для каждого вида оплаты.

т.е. Q - это погрешность которая сформировалась на предыдущей итерации.
Как реализовать, зависит от вашей фантазии. Результат гарантирую.

_________________
Новый этап на проекте - устранение доработок :).


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проблема с округлением при умножении на коэф. сокращения
СообщениеДобавлено: Ср, дек 01 2010, 11:10 
Ассистент
Ассистент

Зарегистрирован:
Пн, дек 03 2007, 18:16
Сообщения: 25
Спасибо коллеги! В моём случае у человека были переводы на разные графики, и проблема именно в округлении.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проблема с округлением при умножении на коэф. сокращения
СообщениеДобавлено: Чт, дек 02 2010, 10:27 
Начинающий
Начинающий

Зарегистрирован:
Ср, янв 13 2010, 17:13
Сообщения: 20
Откуда: Москва
Пол: Мужской
Брат Мигель написал:
Есть очень простой алгоритм хорошего округления.
Хранение погрешности на каждой итерации, для следующей итерации.
есть у нас оклад 100р.
1. Берем нужный /8* (в нем уже есть genau) умножаем на оклад и прибавляем значение Q (далее будет понятно зачем) и запоминаем .
2. Берем значение из п.1 делим на genau запоминаем для дальнейшего расчета.
3. Берем полученное значение в п.2 умножаем на genau и отнимаем значение п.1 и запоминаем в Q для следующей итерации.
И так для каждого вида оплаты.

т.е. Q - это погрешность которая сформировалась на предыдущей итерации.
Как реализовать, зависит от вашей фантазии. Результат гарантирую.

--------
Для каждого вида оплат? Т.е. для каждого сплитованного куска оклада (или /8*) ?
А если Q останется после последнего сплита? И как алгоритм отработает если оклад менялся в течение месяца?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проблема с округлением при умножении на коэф. сокращения
СообщениеДобавлено: Чт, дек 02 2010, 11:31 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Ср, июн 01 2005, 09:40
Сообщения: 536
Откуда: Belgorod
Пол: Мужской
iokr написал:
Для каждого вида оплат? Т.е. для каждого сплитованного куска оклада (или /8*) ?
А если Q останется после последнего сплита? И как алгоритм отработает если оклад менялся в течение месяца?

Q для каждого нового ВО = 0.
Как реализовать зависит от вашей фантазии.
Вы попробуйте на бумаге или excel. У вас все получиться :).
genau должен быть не меньше 10000 (этой цифры достаточно).

_________________
Новый этап на проекте - устранение доработок :).


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проблема с округлением при умножении на коэф. сокращения
СообщениеДобавлено: Вт, дек 07 2010, 11:28 
Ассистент
Ассистент

Зарегистрирован:
Пн, дек 03 2007, 18:16
Сообщения: 25
Брат Мигель написал:
Есть очень простой алгоритм хорошего округления.
Хранение погрешности на каждой итерации, для следующей итерации.
есть у нас оклад 100р.
1. Берем нужный /8* (в нем уже есть genau) умножаем на оклад и прибавляем значение Q (далее будет понятно зачем) и запоминаем .
2. Берем значение из п.1 делим на genau запоминаем для дальнейшего расчета.
3. Берем полученное значение в п.2 умножаем на genau и отнимаем значение п.1 и запоминаем в Q для следующей итерации.
И так для каждого вида оплаты.

т.е. Q - это погрешность которая сформировалась на предыдущей итерации.
Как реализовать, зависит от вашей фантазии. Результат гарантирую.

К сожалению не совсем понятен алгоритм (( Можно пример расчёта или правила. Или пояснить по подробнее.


Принять этот ответ
Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 14 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB