View Issue Details

IDProjectCategoryView StatusLast Update
0000352СкладGeneralpublic2012-12-01 22:54
Reporterruslan Assigned Tobarry  
PriorityhighSeverityfeatureReproducibilityalways
Status closedResolutionfixed 
Summary0000352: +Склад - Форма Заказа/Накладной/Счета - новое поле Сумма Бонуса
DescriptionСделай рядом с полем %Бонуса поле Сумма бонуса - это поле в БД не храниться и нужно только для калькуляции %Бонуса.
Логика заполнения/редактирования такая:
- если заполняется поле %Бонуса, то поле Сумма закрывается от изменений;
- если заполняется поле Сумма бонуса, то поле %Бонуса закрывается от изменений, там отображается Сумма бонуса - Сумма заказа * %Бонуса/100
При сохранении нового Заказа Сумма бонуса пересчитывается в %Бонуса(Сумма бонуса/Сумму Заказа * 100%), если поле %Бонуса пустое, или в процессе редактирования менялось поле Сумма Бонуса. Если менялось поле %Бонуса, то оно непосредственно заноситься в БД.
При открытии формы поле "Сумма бонуса" заполнять автоматом Сумма заказа * %Бонуса/100.

Additional InformationВ форму для Редактирования Данных по Доверенности(Кнопка на панели инструментов на закладке Заказы без Хинта, которая открывает форму для внесения данных по Доверенности в Заказ), добавить поля % Бонуса, Сумма Бонуса, с такой же логикой.
TagsNo tags attached.

Activities

ruslan

2012-07-07 15:20

manager   ~0000720

Last edited: 2012-07-07 15:21

View 2 revisions

В форме Заказа/Накладной Округление в поле %Бонуса сделай хотя б до трех знаков после запятой.

barry

2012-11-08 14:53

administrator   ~0000932

stor32.zip

ruslan

2012-11-09 18:02

manager   ~0000949

1. Дробное поле ты сделал, а формат данных в поле Бонус% так и остался без знаков после запятой, т.е. получается - с клавиатуры дробное значение не вводиться, а с калькулятора после нажатия "=" - округляется до 0 знаков.
2. А поле Сумма бонуса?

barry

2012-11-10 20:52

administrator   ~0000957

"Округление в поле %Бонуса сделай хотя б до трех знаков после запятой"

barry

2012-11-10 21:14

administrator   ~0000958

"если заполняется поле Сумма бонуса, то поле %Бонуса закрывается от изменений, там отображается Сумма бонуса - Сумма заказа * %Бонуса/100"
Т.е. нужно посчитать %бонуса и в поле "% бонуса" выводить то что указано у тебя по формуле? Будет ли всем понятно что это некая другая величина и кто догадается что там такое. Может эту штуку показывать в отдельном поле и как-то по научному ее назвать.

barry

2012-11-10 21:22

administrator   ~0000959

Если хранить в БД только % бонуса, как я узнали что вводили именно сумму и для последующего редактирования открывать именно сумму? Или этого не надо - потом только % редактировать?

ruslan

2012-11-10 22:32

manager   ~0000962

"Округление в поле %Бонуса сделай хотя б до трех знаков после запятой"
И к чему ты это процитировал, если после того как ты внес изменения, поле сохраняется ТОЛЬКО целым?

ruslan

2012-11-10 22:59

manager   ~0000963

Last edited: 2012-11-10 23:02

View 2 revisions

Цитата
""если заполняется поле Сумма бонуса, то поле %Бонуса закрывается от изменений, там отображается Сумма бонуса - Сумма заказа * %Бонуса/100"
Т.е. нужно посчитать %бонуса и в поле "% бонуса" выводить то что указано у тебя по формуле? Будет ли всем понятно что это некая другая величина и кто догадается что там такое. Может эту штуку показывать в отдельном поле и как-то по научному ее назвать."
Я неправильно указал формулу для расчета значения поля "%Бонуса", если заполняют поле "Сумма бонуса". При заполнении поля "Сумма бонуса" - поле "%Бонуса" заполняется автоматически значением "(Сумма бонуса/Сумма Заказа)*100%". Т.е. это два взаимосвязанных поля, типа как сумма с НДС и сумма без НДС в табличной части. НО в БД переноситься только %Бонуса. Поле "Сумма бонуса" нужно только для удобства расчета пользователем(часто Бонус оговаривается в виде суммы с заказа, или некой суммы с елиницы продукции в заказе),а т.к. % - относительное поле и расчет Суммы при нескольких отгрузках из заказа делается элементарно.

barry

2012-11-10 23:02

administrator   ~0000964

Я процитировал потому как точность для суммы не конкретизирована. И при вводе суммы и хранении округленного процента (с последующим пересчетом) возможно непопадание суммы в первоначальное значение. Я рекомендую проанализировать эту ситуацию ибо предвижу следующую проблему, о которой ты мне будешь говорить.

ruslan

2012-11-10 23:09

manager   ~0000965

Точность поля Сумма бонуса - два знака после запятой, соответственно точность поля % Бонуса - может быть не ограничена, пусть хоть 18 знаков... для точной математики преобразования в сумму....Сделай аналогично хранению и извлечению в форме табличной части поля НДС...

ruslan

2012-11-10 23:13

manager   ~0000966

Last edited: 2012-11-11 14:34

View 2 revisions

пользователь значения больше двух знаков после запятой вводить не будет...однако при сохранении в БД, дабы соблюсти максимальную точность преобразования для поля "Сумма бонуса" округленного до двух знаков пусть в БД поле Процент бонуса храниться не округленным...
т.е. при сохранении пересчитывать поле % бонуса, по округленному до двух знаков полю Сумма бонуса. Например,
1. Сумма заказа 2751,24
Случай 1. Пользователь вводит 10 в поле "% Бонуса", форма рассчитывает поле "Сумма бонуса" = 275,124, Округляет до двух знаков = 275,12. При сохранении пересчитываем значение % Бонуса 275,12/2751,24*100 = 9,9998546110117619691484566958899 и сохраняем в БД. При открытии формы визуально показываем 10%, НО при установке курсора в поле % Бонуса , уже отображаем реальные цифры 9,9998546.
Случай 2. Пользователь вводит 100 в поле "Сумма бонуса", форма рассчитывает значение поля "%Бонуса"= 3,6347247059507712885826027536674, в поле % Бонуса отображает "3,63". В БД сохраняется не округленное значение, а при установке курсора в поле "% Бонуса" показывает значение - 3,6347247.
Так у тебя во многих полях сделано - типа визуально показано 2...3 знака после запятой, а когда устанавливаешь курсор редактировать - открывается больше...

ruslan

2012-11-12 10:12

manager   ~0000969

И сделай поле "%Бонуса" в списке(гриде) "Заказы" значение показывать округленное до двух знаков.

barry

2012-11-20 12:01

administrator   ~0000991

А в накладные по заказу не надо?

ruslan

2012-11-20 12:43

manager   ~0000992

В смысле такую логику заполнения и хранения значения Процент бонуса/Сумма Бонуса? Да, надо и не только в накладные по заказу, но и в обычную форму Счета/Накладной на закладке Дополнительно... Значение из поля %Бонуса - переносить в накладные по Заказу... и см. что я писал в Дополнительных сведениях.

barry

2012-11-20 13:34

administrator   ~0000993

stor32.zip

ruslan

2012-11-22 11:59

manager   ~0001021

Я просил в список Заказов на закладке Заказы добавить поле %Бонуса. И в список Накладных за закладке Расход добавь тоже.

Issue History

Date Modified Username Field Change
2012-07-05 14:11 ruslan New Issue
2012-07-05 18:09 ruslan Description Updated View Revisions
2012-07-05 18:09 ruslan Additional Information Updated View Revisions
2012-07-05 18:10 ruslan Additional Information Updated View Revisions
2012-07-07 15:20 ruslan Note Added: 0000720
2012-07-07 15:21 ruslan Note Edited: 0000720 View Revisions
2012-11-08 14:53 barry Note Added: 0000932
2012-11-08 14:53 barry Status new => resolved
2012-11-08 14:53 barry Resolution open => fixed
2012-11-08 14:53 barry Assigned To => barry
2012-11-09 18:02 ruslan Note Added: 0000949
2012-11-09 18:02 ruslan Status resolved => feedback
2012-11-09 18:02 ruslan Resolution fixed => reopened
2012-11-10 20:52 barry Note Added: 0000957
2012-11-10 21:14 barry Note Added: 0000958
2012-11-10 21:22 barry Note Added: 0000959
2012-11-10 22:32 ruslan Note Added: 0000962
2012-11-10 22:32 ruslan Status feedback => assigned
2012-11-10 22:59 ruslan Note Added: 0000963
2012-11-10 23:02 barry Note Added: 0000964
2012-11-10 23:02 ruslan Note Edited: 0000963 View Revisions
2012-11-10 23:09 ruslan Note Added: 0000965
2012-11-10 23:13 ruslan Note Added: 0000966
2012-11-11 14:34 ruslan Note Edited: 0000966 View Revisions
2012-11-12 10:12 ruslan Note Added: 0000969
2012-11-20 12:01 barry Note Added: 0000991
2012-11-20 12:43 ruslan Note Added: 0000992
2012-11-20 13:34 barry Note Added: 0000993
2012-11-20 13:34 barry Status assigned => resolved
2012-11-20 13:34 barry Resolution reopened => fixed
2012-11-22 11:59 ruslan Note Added: 0001021
2012-11-22 11:59 ruslan Status resolved => feedback
2012-11-22 11:59 ruslan Resolution fixed => reopened
2012-11-28 10:14 ruslan Status feedback => resolved
2012-11-28 10:14 ruslan Resolution reopened => fixed
2012-12-01 22:54 ruslan Status resolved => closed