|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
10.11.2016, 06:31 | #1 |
Подтвердите свой е-майл
Регистрация: 27.01.2015
Сообщений: 28
|
Как хранить в бд 2 значения одного поля
В бд (Interbase 2009, Firebird 2.5) есть таблица покупки. В записях покупки есть поле А. До какого-то момента если в A хранил, например, число 10, после этого момента(стал ндс-плательщиком) в старых записях вместо A(10) уже надо хранить 8.47(A-18%). Когда делается новая покупка тогда всё в порядке, делается приход новым значением поля A(8.47), но как сохранить старые записи покупки, которые куплены до этого момента, старым значением в А(10) , а после этого момента- новым значением (8.47)?
Например: Запись покупки: Код:
Код:
Надо изъять из старых записей продажи Price, а из записи покупки -A и вычислять Price-A, т.е. 25-10=15 После какого-то момента(01/01/2017), когда из старой записи продаю товар, надо вычислять Price-A, т.е. 25-8.47 Код:
Если переписывать поле A новым значением, тогда A искажается для старых продаж, когда продал за 10! Последний раз редактировалось delphi159; 10.11.2016 в 20:04. |
10.11.2016, 09:40 | #2 | |||
Старожил
Регистрация: 20.04.2008
Сообщений: 5,526
|
Цитата:
Цитата:
Цитата:
Код:
2.1. второе поле для СПРАВОЧНОГО хранения ИСХОДНОЙ (некорректированной) суммы. 3. опять другое поле, но с немного другим смыслом СУММА коррекции(НДС) и опять в расчетах использовать ВЫЧИСЛИМОЕ поле Код:
программа — запись алгоритма на языке понятном транслятору
Последний раз редактировалось evg_m; 10.11.2016 в 09:43. |
|||
10.11.2016, 21:34 | #3 |
Подтвердите свой е-майл
Регистрация: 27.01.2015
Сообщений: 28
|
evg_m, а если обойти без вычисления? например так:
В таблице Income добавить varchar поле "Changed", который принимает значения 0 или 1. Ещё кроме Cost1, Vat1 (себестоимость и ндс до изменения) добавить Cost2, Vat2 (себестоимость и ндс после изменения). При включении галочки "облагаюсь ндс-ом" в Cost2 и Vat2 запишет новые цифра. вид старой партии покупки, на которые есть остатки: Код:
Код:
Последний раз редактировалось delphi159; 10.11.2016 в 22:44. |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Как реализовать автозаполнение поля в DbGrid в зависимости от значения другого поля | Gul'ka | БД в Delphi | 3 | 21.10.2016 20:26 |
как получить значение поля грид на основе значения другого lookUp поля | malayka | БД в Delphi | 0 | 21.04.2010 19:06 |
Перетаскивание значения одного поля в другое | inret | Общие вопросы Delphi | 3 | 09.05.2008 15:26 |
Присвоение значения одного поля другому | frai | БД в Delphi | 2 | 20.09.2007 15:03 |