View Issue Details
| ID | Project | Category | View Status | Date Submitted | Last Update |
|---|---|---|---|---|---|
| 0000352 | Склад | General | public | 2012-07-05 14:11 | 2012-12-01 22:54 |
| Reporter | ruslan | Assigned To | barry | ||
| Priority | high | Severity | feature | Reproducibility | always |
| Status | closed | Resolution | fixed | ||
| Summary | 0000352: +Склад - Форма Заказа/Накладной/Счета - новое поле Сумма Бонуса | ||||
| Description | Сделай рядом с полем %Бонуса поле Сумма бонуса - это поле в БД не храниться и нужно только для калькуляции %Бонуса. Логика заполнения/редактирования такая: - если заполняется поле %Бонуса, то поле Сумма закрывается от изменений; - если заполняется поле Сумма бонуса, то поле %Бонуса закрывается от изменений, там отображается Сумма бонуса - Сумма заказа * %Бонуса/100 При сохранении нового Заказа Сумма бонуса пересчитывается в %Бонуса(Сумма бонуса/Сумму Заказа * 100%), если поле %Бонуса пустое, или в процессе редактирования менялось поле Сумма Бонуса. Если менялось поле %Бонуса, то оно непосредственно заноситься в БД. При открытии формы поле "Сумма бонуса" заполнять автоматом Сумма заказа * %Бонуса/100. | ||||
| Additional Information | В форму для Редактирования Данных по Доверенности(Кнопка на панели инструментов на закладке Заказы без Хинта, которая открывает форму для внесения данных по Доверенности в Заказ), добавить поля % Бонуса, Сумма Бонуса, с такой же логикой. | ||||
| Tags | No tags attached. | ||||
|
|
В форме Заказа/Накладной Округление в поле %Бонуса сделай хотя б до трех знаков после запятой. |
|
|
stor32.zip |
|
|
1. Дробное поле ты сделал, а формат данных в поле Бонус% так и остался без знаков после запятой, т.е. получается - с клавиатуры дробное значение не вводиться, а с калькулятора после нажатия "=" - округляется до 0 знаков. 2. А поле Сумма бонуса? |
|
|
"Округление в поле %Бонуса сделай хотя б до трех знаков после запятой" |
|
|
"если заполняется поле Сумма бонуса, то поле %Бонуса закрывается от изменений, там отображается Сумма бонуса - Сумма заказа * %Бонуса/100" Т.е. нужно посчитать %бонуса и в поле "% бонуса" выводить то что указано у тебя по формуле? Будет ли всем понятно что это некая другая величина и кто догадается что там такое. Может эту штуку показывать в отдельном поле и как-то по научному ее назвать. |
|
|
Если хранить в БД только % бонуса, как я узнали что вводили именно сумму и для последующего редактирования открывать именно сумму? Или этого не надо - потом только % редактировать? |
|
|
"Округление в поле %Бонуса сделай хотя б до трех знаков после запятой" И к чему ты это процитировал, если после того как ты внес изменения, поле сохраняется ТОЛЬКО целым? |
|
|
Цитата ""если заполняется поле Сумма бонуса, то поле %Бонуса закрывается от изменений, там отображается Сумма бонуса - Сумма заказа * %Бонуса/100" Т.е. нужно посчитать %бонуса и в поле "% бонуса" выводить то что указано у тебя по формуле? Будет ли всем понятно что это некая другая величина и кто догадается что там такое. Может эту штуку показывать в отдельном поле и как-то по научному ее назвать." Я неправильно указал формулу для расчета значения поля "%Бонуса", если заполняют поле "Сумма бонуса". При заполнении поля "Сумма бонуса" - поле "%Бонуса" заполняется автоматически значением "(Сумма бонуса/Сумма Заказа)*100%". Т.е. это два взаимосвязанных поля, типа как сумма с НДС и сумма без НДС в табличной части. НО в БД переноситься только %Бонуса. Поле "Сумма бонуса" нужно только для удобства расчета пользователем(часто Бонус оговаривается в виде суммы с заказа, или некой суммы с елиницы продукции в заказе),а т.к. % - относительное поле и расчет Суммы при нескольких отгрузках из заказа делается элементарно. |
|
|
Я процитировал потому как точность для суммы не конкретизирована. И при вводе суммы и хранении округленного процента (с последующим пересчетом) возможно непопадание суммы в первоначальное значение. Я рекомендую проанализировать эту ситуацию ибо предвижу следующую проблему, о которой ты мне будешь говорить. |
|
|
Точность поля Сумма бонуса - два знака после запятой, соответственно точность поля % Бонуса - может быть не ограничена, пусть хоть 18 знаков... для точной математики преобразования в сумму....Сделай аналогично хранению и извлечению в форме табличной части поля НДС... |
|
|
пользователь значения больше двух знаков после запятой вводить не будет...однако при сохранении в БД, дабы соблюсти максимальную точность преобразования для поля "Сумма бонуса" округленного до двух знаков пусть в БД поле Процент бонуса храниться не округленным... т.е. при сохранении пересчитывать поле % бонуса, по округленному до двух знаков полю Сумма бонуса. Например, 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 знака после запятой, а когда устанавливаешь курсор редактировать - открывается больше... |
|
|
И сделай поле "%Бонуса" в списке(гриде) "Заказы" значение показывать округленное до двух знаков. |
|
|
А в накладные по заказу не надо? |
|
|
В смысле такую логику заполнения и хранения значения Процент бонуса/Сумма Бонуса? Да, надо и не только в накладные по заказу, но и в обычную форму Счета/Накладной на закладке Дополнительно... Значение из поля %Бонуса - переносить в накладные по Заказу... и см. что я писал в Дополнительных сведениях. |
|
|
stor32.zip |
|
|
Я просил в список Заказов на закладке Заказы добавить поле %Бонуса. И в список Накладных за закладке Расход добавь тоже. |
| 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 |