|
|
|
Курсы валют
|
|||
|---|---|---|---|
|
#18+
авторCREATE VIEW dbo.vFinancesIn AS SELECT dbo.FINANCES.id_num,dbo.vContainers.NumberCont AS [Номер контейнера], dbo.FINANCES.NumBillIn AS [Номер счёта(вх)], dbo.FINANCES.DateBillIn AS [Дата счёта(вх)], dbo.FINANCES.NumDraftIn AS [Номер п/п(вх)], dbo.FINANCES.ObjectBillIn AS [Предмет счёта(вх)], dbo.FINANCES.TypeBillIn AS [Тип счёта(вх)], dbo.FINANCES.AmountBillIn AS [Сумма счёта(вх)], dbo.FINANCES.AmountBillIn * (select dbo.RATE.Rate from dbo.RATE where dbo.RATE.DateRate = dbo.TODAY()) FROM dbo.FINANCES INNER JOIN dbo.RATE INNER JOIN dbo.vContainers ON dbo.FINANCES.id_cont = dbo.vContainers.id_num INNER JOIN dbo.vAgentBillIn ON dbo.FINANCES.id_agentin = dbo.vAgentBillIn.id_num INNER JOIN если честно никогда не делал таких вьюх, там запросом выбирать или как-нибудь ещё? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.11.2006, 11:46 |
|
||
|
Курсы валют
|
|||
|---|---|---|---|
|
#18+
а чем простите еще можно выбирать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.11.2006, 11:51 |
|
||
|
Курсы валют
|
|||
|---|---|---|---|
|
#18+
в общем - то больше нечем, тока проблема в том, что таким образом как я написал не получается :( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.11.2006, 11:55 |
|
||
|
Курсы валют
|
|||
|---|---|---|---|
|
#18+
Ну раз не получается-функция спасет,тем более как мне кажется и я это объяснял-она нужна. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.11.2006, 12:35 |
|
||
|
Курсы валют
|
|||
|---|---|---|---|
|
#18+
да, без функции никак написал функцию которая возвращает курс для даты подставленной параметром и во вьюхе написал: dbo.AmmountBill * dbo.GETRATE(dbo.DateBill) - не дает сохранить, попробовал впихнуть просто функцию(возращает текущую дату) тоже самое. по синтаксису-то это хоть верно? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.11.2006, 12:51 |
|
||
|
Курсы валют
|
|||
|---|---|---|---|
|
#18+
формально верно,а далее - х/з.mssql не знаю. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.11.2006, 14:01 |
|
||
|
Курсы валют
|
|||
|---|---|---|---|
|
#18+
Опять возникла проблема: я решил хранить всё в долларах, а в другие две валюты просто переводить исходя из курса на выбранный день. когда я вношу в скажем евро, а потом пересчитоваю в доллары и сохраняю в таблицу, то всё ок но когда я проделываю обратную операцию, то только что введенных евро становиться больше из-за того что курс евро относительно доллара считается путём деления курса доллара на курс евро на данный день, а так как число знаков в мсскульсервере после запятой ограничено 15 в float, то и получаеться неточность в обратном пересчёте. Что кто может посоветовать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2006, 21:36 |
|
||
|
Курсы валют
|
|||
|---|---|---|---|
|
#18+
strizzzОпять возникла проблема: я решил хранить всё в долларах, а в другие две валюты просто переводить исходя из курса на выбранный день. ... Что кто может посоветовать? неправильное решение-хранить нужно не курсы, а значения в нужных валютах ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2006, 23:37 |
|
||
|
Курсы валют
|
|||
|---|---|---|---|
|
#18+
неправильное решение-хранить нужно не курсы, а значения в нужных валютах тогда если курс на данный день изменить, то сложно будет пересчитать все счета по новому. а вот если хранить всё в рублях, то можно избежать вычисления курса доллар к евро с немеренным числом знаков после запятой. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.11.2006, 09:43 |
|
||
|
|

start [/forum/topic.php?fid=32&msg=34162469&tid=1544866]: |
0ms |
get settings: |
7ms |
get forum list: |
13ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
162ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
59ms |
get tp. blocked users: |
2ms |
| others: | 218ms |
| total: | 476ms |

| 0 / 0 |
