Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Курсы валют / 25 сообщений из 35, страница 1 из 2
17.11.2006, 15:46
    #34137142
strizzz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Курсы валют
Есть какое-нибудь стандартное решение по курсам валют?

Есть таблица счетов. Есть таблица курсов валют.

Имеет ли смысл вводить три столбца(доллар, евро, рубль) в таблицы счетов или хватит и одного, а остальные калькулировать из таблицы курсов?

Можно ли определить столбец как =*стобец из одной таблицы*умножить*столбец из другой таблицы*

Вообщем как лучще связать таблицу курсов с таблицой счетов так, чтобы любые изменения в таблицы курсов сразу отображались в таблице счетов и как лучще пересчитовать курсы в другие валюты при занесение счёта.

заранее благодарен.
...
Рейтинг: 0 / 0
17.11.2006, 17:07
    #34137484
iSestrin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Курсы валют
кросскурсы(curr1, curr2, rate)
...
Рейтинг: 0 / 0
17.11.2006, 17:44
    #34137607
strizzz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Курсы валют
iSestrin

интересно! но можно немного поподробней, пожалуйста, или куда копать!
...
Рейтинг: 0 / 0
17.11.2006, 17:51
    #34137625
Nautic
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Курсы валют
strizzzЕсть какое-нибудь стандартное решение по курсам валют?

Есть таблица счетов. Есть таблица курсов валют.

Имеет ли смысл вводить три столбца(доллар, евро, рубль) в таблицы счетов или хватит и одного, а остальные калькулировать из таблицы курсов?

Можно ли определить столбец как =*стобец из одной таблицы*умножить*столбец из другой таблицы*

Вообщем как лучще связать таблицу курсов с таблицой счетов так, чтобы любые изменения в таблицы курсов сразу отображались в таблице счетов и как лучще пересчитовать курсы в другие валюты при занесение счёта.

заранее благодарен.

Если говорить о формах нормализации в реалиционных БД, то вы должны создать таблицу валют (Валюты) и связать ее с таблицей курсов валют (Курсы) и ее же связать с таблицей счетов (Счета)

strizzzМожно ли определить столбец как =*стобец из одной таблицы*умножить*столбец из другой таблицы* такого рода столбец можно создать при помощи SQL запроса или использовать просмотр View или же создать на клиенте (в приложении)
...
Рейтинг: 0 / 0
17.11.2006, 20:10
    #34137880
strizzz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Курсы валют
Nautic

то есть,

таблица валюты:

Наименование валюты
___________________
Доллар
Евро
Рубль

таблица курсов (относительно рубля)

число | курс доллара | курс евро |
_________________________________________
01.01.2006 | 28 |34 |


таким образом?
...
Рейтинг: 0 / 0
17.11.2006, 23:50
    #34138090
Изопропил
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Курсы валют
курсы(curr1, curr2, rate,date,source)
...
Рейтинг: 0 / 0
18.11.2006, 10:49
    #34138301
Andres 1
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Курсы валют
strizzz
таким образом?
Нет - вам же ответили iSestrin и Изопропил - но можно и разжевать:
CurrencyFrom CurrencyTo RateDate Rate SourceUSD RUR 01.01.2006 28 ЦбрUSD RUR 01.01.2006 27 X-Bank покупка налUSD RUR 01.01.2006 29 X-Bank продажа налUSD RUR 01.01.2006 27.5 X-Bank покупка р/сUSD RUR 01.01.2006 28.5 X-Bank продажа р/сEUR RUR 01.01.2006 34 Цбр

CurrencyFrom, CurrencyTo, и Source - ForeignKeys.
...
Рейтинг: 0 / 0
20.11.2006, 10:08
    #34140013
strizzz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Курсы валют
Andres 1 strizzz
таким образом?
Нет - вам же ответили iSestrin и Изопропил - но можно и разжевать:
CurrencyFrom CurrencyTo RateDate Rate SourceUSD RUR 01.01.2006 28 ЦбрUSD RUR 01.01.2006 27 X-Bank покупка налUSD RUR 01.01.2006 29 X-Bank продажа налUSD RUR 01.01.2006 27.5 X-Bank покупка р/сUSD RUR 01.01.2006 28.5 X-Bank продажа р/сEUR RUR 01.01.2006 34 Цбр

CurrencyFrom, CurrencyTo, и Source - ForeignKeys.

вроде немного понятней, а к чему привязать соответсвенно CurrencyFrom, CurrencyTo, так чтобы при изменение курса в этой таблице - менялись цифры в таблице счетов, а то что-то так и не понял.
...
Рейтинг: 0 / 0
20.11.2006, 10:43
    #34140124
Shtock
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Курсы валют
1.не понятно,что хранится в таблице счетов - это справочник плана счетов,лицевых счетов или прочего.
2.мне кажется,никаких ссылок на таблицу курсов делать не надо (собственно не в одной известной мне абс)-обычно там,где надо брать курс это делается обычным отчетом, где на дату отчета берется соотв курс.для этого обычно делают функцию.
...
Рейтинг: 0 / 0
20.11.2006, 10:59
    #34140175
strizzz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Курсы валют
Shtock

1. дата счета, предмет счёта, сумма счёта(рубли), сумма счёта(доллары), сумма счёта(евро)

2. сумму счёта можно ввести в любой валюте, а после ввода автоматически перевести относительно курса в другие, также при изменение(исправление) курса хотелось бы автоматически изменять цифры во всех счетах за данное число, из-за этого и хочется таблицу связать.
...
Рейтинг: 0 / 0
20.11.2006, 11:13
    #34140217
Shtock
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Курсы валют
Как-то меня пугает,то что вы в счетах держите предрасчитанные данные по всем валютам.а если тубрики добавятся - базу корежить будете?я бы собственно сделал таблицу валют,которая может быть связана с соответствующим типом счета.например с кредитным счетом могут быть связаны только рубли. Причем в таблице привязки валют к типам счетов делал бы признак-типа "расчетная валюта" и в счете хранил бы только значение суммы для этой валюты,а при делании отчетов вычислял бы курсы для всех валют.

А в вашем можно конечно сделать foreign key на курс (введите в таблицу курсов id), правда я такого не видел.
и,кстати,я бы все равно хранил бы одну сумму и ссылку,на валюту в которой она есть.и,как уже говорилось выше,имел бы таблицу для описания валют для отчетов.

p.s
Странные какие-то счета конечно у вас.Что хоть делаете?
...
Рейтинг: 0 / 0
20.11.2006, 11:38
    #34140308
GreyCardinal
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Курсы валют
Наверное человеку нужен многовалютный сквозной учет
в реалии я видел двухвалютный сквозной (рубли -как по закону РФ, и там USD -"для себя")
в некоторых системах это заложено (сквозная двухвалютность)

но не понятно зачем эти суммы пересчитывать при изменении курса?
вообщето это должно быть "забито" и высечено в граните
так как вы выставили счет, взяли курс из справочника валют или сами ввели "договорной"
и "заморозили" все суммы по нему (рубли, евро, тенге и тп -че там хотите)
а то у вас постоянно будут плыть отчеты и акты сверки.
а если вопрос чтобы показать счет, который в рублях, в любой валюте -то просто берите курс из справочника, и умножайте и показывайте.
...
Рейтинг: 0 / 0
20.11.2006, 11:53
    #34140397
strizzz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Курсы валют
Как-то меня пугает,то что вы в счетах держите предрасчитанные данные по всем валютам.а если тубрики добавятся - базу корежить будете?я бы собственно сделал таблицу валют,которая может быть связана с соответствующим типом счета.например с кредитным счетом могут быть связаны только рубли. Причем в таблице привязки валют к типам счетов делал бы признак-типа "расчетная валюта" и в счете хранил бы только значение суммы для этой валюты,а при делании отчетов вычислял бы курсы для всех валют.

кстати, да. табличку валют завести стоит.

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

тут ещё проблема в том, что в независимости от того какой счёт(рублёвый, долларовый, евровый), но внутренний учёт все-равно ведется в долларах, то есть в отчоты он идет как рублёвый, а скажем для подсчёта суммы по нескольким счетам(как долларовых, евровых и рублёвых) по определенному признаку счетать его в долларах.

Странные какие-то счета конечно у вас.Что хоть делаете?

на самом деле счета более развернуты и привязаны к контейнерам.
...
Рейтинг: 0 / 0
20.11.2006, 11:57
    #34140407
Shtock
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Курсы валют
ну так и храните в описателе счета только долларовую сумму (правда я бы сдела все равно скрытое поле код валюты-вдруг поменяется что-либо в учете), а потом в отчетах и пересчитывайте в то,что надо.просто мне кажется вы путаете учет и отчетность.
...
Рейтинг: 0 / 0
20.11.2006, 12:04
    #34140442
strizzz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Курсы валют
но не понятно зачем эти суммы пересчитывать при изменении курса?

если курс был введен неверно, а счета по этому курсу уже заведены.
...
Рейтинг: 0 / 0
20.11.2006, 12:37
    #34140565
Shtock
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Курсы валют
1.как курс может быть введен неверно,если он закачивается с цбрф?
2.раз может быть введен кривой курс-я бы сделал как говорил вначале:таблицу значений сумм для курсов соотв валют для счета(там держать фактический курс и факт значение),таблицу нормальных курсов,таблицу счетов.
...
Рейтинг: 0 / 0
20.11.2006, 12:41
    #34140583
Shtock
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Курсы валют
но возможность неправильного ввода курса говорит о некорректных бизнес-процессах.Может быть их сначала подкрыжить?
...
Рейтинг: 0 / 0
20.11.2006, 13:11
    #34140718
strizzz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Курсы валют
решил последовать вашему совету и хранить всё же в одной валюте, также сделал таблицу валют. так что теперь и вариант с неверным вводом сам по себе отошел.
...
Рейтинг: 0 / 0
20.11.2006, 14:04
    #34140911
Shtock
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Курсы валют
усегда пожалуйста
...
Рейтинг: 0 / 0
20.11.2006, 15:25
    #34141248
VitaminXP
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Курсы валют
Andres 1 strizzz
таким образом?
Нет - вам же ответили iSestrin и Изопропил - но можно и разжевать:
CurrencyFrom CurrencyTo RateDate Rate SourceUSD RUR 01.01.2006 28 ЦбрUSD RUR 01.01.2006 27 X-Bank покупка налUSD RUR 01.01.2006 29 X-Bank продажа налUSD RUR 01.01.2006 27.5 X-Bank покупка р/сUSD RUR 01.01.2006 28.5 X-Bank продажа р/сEUR RUR 01.01.2006 34 Цбр

CurrencyFrom, CurrencyTo, и Source - ForeignKeys.

На всякий случай я бы ещё добавил столбец "Количество" (как во всех стандартных справочниках курсов валют), на случай, если вдруг будут использоваться какие-нибудь йены или тенге (например, сегодня 100 японских йен стоят 22,5698 рубля - именно так публикует цбрф, а не 1 японская йена = 0,225698 рубля)
...
Рейтинг: 0 / 0
20.11.2006, 15:50
    #34141348
Shtock
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Курсы валют
точняк.совсем забыл.кстати,всегда следует помнить,что есть понятие прямой и инверсной котировки.мы его держим в справочнике объектов,предоставляющих котировки.Например,в англии курсы инверсны.
...
Рейтинг: 0 / 0
21.11.2006, 10:25
    #34142721
strizzz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Курсы валют
strizzz
Можно ли определить столбец как =*стобец из одной таблицы*умножить*столбец из другой таблицы*

такого рода столбец можно создать при помощи SQL запроса или использовать просмотр View или же создать на клиенте (в приложении)

а с View как такой фокус сделать, не подскажите?

P. S. по курсам всем огромное спасибо, даже не думал, что там будет столько премудростей.
...
Рейтинг: 0 / 0
21.11.2006, 10:32
    #34142752
Shtock
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Курсы валют
сорри,в англии курсы наоборот прямые.
а в чем фокус то:прямо во view и пишете столбцы нужных таблиц,а еще лучше вызываете функцию его получения на дату, потому как например для воскресенья курс может быть браться как пятничный.
...
Рейтинг: 0 / 0
21.11.2006, 10:54
    #34142838
VitaminXP
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Курсы валют
Shtockсорри,в англии курсы наоборот прямые.
а в чем фокус то:прямо во view и пишете столбцы нужных таблиц,а еще лучше вызываете функцию его получения на дату, потому как например для воскресенья курс может быть браться как пятничный.
На воскресенье и понедельник курс береться субботний, а вот с праздничными днями могут возникнуть некоторые проблемы. (например, 01.05.2006 был праздником, 02.05.2006 действует курс от 30.04.2006).

P.S. Если уж совсем в тонкости вдаваться, то курс на некоторые валюты устанавливается ежемесячно :)
...
Рейтинг: 0 / 0
21.11.2006, 11:01
    #34142864
Shtock
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Курсы валют
Да,есть такой момент.В базе посмотрел-забавно.
а по поводу какой когда курс берется-все зависит от такого,для какого вида учета он берется (управленческий,бухгалтерский) -в любом случае проще для сопровождения системы сделать функциию вычисления.
...
Рейтинг: 0 / 0
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Курсы валют / 25 сообщений из 35, страница 1 из 2
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]