|
Баги Access (топик не закрыт, можно добавлять)
|
|||
---|---|---|---|
#18+
А вот мне встречалась в Аксессе 2003 несколько раз ситуация: На форме есть число типа Double. Назовём это число Остаток. Например 5182.456 С субформе (на этой же форме) есть колонка чисел - тоже тип Double. Назовём его Расход. Например 5182.456 Видно что числа равны. Остаток - Расход должен быть НОЛЬ. Но почему то вместо нуля появляется результат, например 0,14256899. И так далее. Откуда этот хвостик? Эту ситуацию на конкретном примере хотел обсудить на форуме. Пока просто пишу, что такое было. И не смог понять почему. Может кто встречался с такой проблемой? ... |
|||
:
Нравится:
Не нравится:
|
|||
25.06.2010, 12:59 |
|
Баги Access (топик не закрыт, можно добавлять)
|
|||
---|---|---|---|
#18+
Nebo, проблема старше мира. Храните остатки в полях типа Currency (Денежный). Это специальный целый тип. А в полях с плавающей точкой (Double, Simple) не гарантируется точность. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.06.2010, 13:03 |
|
Баги Access (топик не закрыт, можно добавлять)
|
|||
---|---|---|---|
#18+
mds_world, Понял. Не знал даже. А где про это поподробнее почитать? В хелпе? Или это есть в FAQе? ... |
|||
:
Нравится:
Не нравится:
|
|||
25.06.2010, 13:18 |
|
Баги Access (топик не закрыт, можно добавлять)
|
|||
---|---|---|---|
#18+
А может лучше оставить Double? Но при это указать фиксированную точность DecimalPlaces = 3. У меня объём в кубических метрах. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.06.2010, 13:38 |
|
Баги Access (топик не закрыт, можно добавлять)
|
|||
---|---|---|---|
#18+
Вот отюда совет Бенедикта: http://sql.ru/forum/actualthread.aspx?tid=335035&hl=currency#3099388 ... |
|||
:
Нравится:
Не нравится:
|
|||
25.06.2010, 13:39 |
|
Баги Access (топик не закрыт, можно добавлять)
|
|||
---|---|---|---|
#18+
... |
|||
:
Нравится:
Не нравится:
|
|||
25.06.2010, 15:24 |
|
Баги Access (топик не закрыт, можно добавлять)
|
|||
---|---|---|---|
#18+
Владимир Саныч, Спасибо! ... |
|||
:
Нравится:
Не нравится:
|
|||
25.06.2010, 15:57 |
|
Баги Access (топик не закрыт, можно добавлять)
|
|||
---|---|---|---|
#18+
NeboА может лучше оставить Double? Но при это указать фиксированную точность DecimalPlaces = 3. У меня объём в кубических метрах. Nebo, рассчитывать надо по заданному алгоритму. Это другой вопрос. Но хранить то, что потом требуется сравнивать, надо в типе данных с фиксированной точностью. Ну, а DecimalPlaces или Round это уже вообще вопрос интерфейса пользователя. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.06.2010, 16:11 |
|
Баги Access (топик не закрыт, можно добавлять)
|
|||
---|---|---|---|
#18+
mds_world, авторNebo, рассчитывать надо по заданному алгоритму. Это другой вопрос. Но хранить то, что потом требуется сравнивать, надо в типе данных с фиксированной точностью. Короче всё таки Current ? Да ? ... |
|||
:
Нравится:
Не нравится:
|
|||
25.06.2010, 16:24 |
|
Баги Access (топик не закрыт, можно добавлять)
|
|||
---|---|---|---|
#18+
Извиняюсь. Currency (Денежный) ??? ... |
|||
:
Нравится:
Не нравится:
|
|||
25.06.2010, 16:24 |
|
Баги Access (топик не закрыт, можно добавлять)
|
|||
---|---|---|---|
#18+
NeboИзвиняюсь. Currency (Денежный) ???Да. Но для промежуточных вычислений в Currency, действительно, может не хватить точности. Там надо Double. Или же, как писал Бенедикт в топике по вашей ссылке, договориваться о точности изначально. Тогда сравнение с образцом будет не на точное совпадение, а на попадание в заданый интервал. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.06.2010, 16:45 |
|
Баги Access (топик не закрыт, можно добавлять)
|
|||
---|---|---|---|
#18+
mds_world, Понял. Спасибо. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.06.2010, 17:08 |
|
Баги Access (топик не закрыт, можно добавлять)
|
|||
---|---|---|---|
#18+
Nebo, всю 10 страницу можно удалить :) ... |
|||
:
Нравится:
Не нравится:
|
|||
25.06.2010, 17:34 |
|
Баги Access (топик не закрыт, можно добавлять)
|
|||
---|---|---|---|
#18+
CoolMind, :) ... |
|||
:
Нравится:
Не нравится:
|
|||
25.06.2010, 18:13 |
|
Баги Access (топик не закрыт, можно добавлять)
|
|||
---|---|---|---|
#18+
mds_world, Прочитал в справке про Масштабируемое целое от –922 337 203 685 477,5808 до 922 337 203 685 477,5807. *** Денежные поля удобны для проведения расчетов с денежными значениями или для вычислений с фиксированной точкой, в которых требуется высокая точность. В полях этого типа сохраняются числа, содержащие до 15 знаков в целой части и до 4 знаков в дробной. В Visual Basic для этого типа используется символ описания @. *** mds_world, а как в деталях происходит отнимание 5182.456 - 5182.456 ? По какому алгоритму? Что здесь является целым? Часть числа слева до точки? Часть числа справа после точки. или всё это число умножается на 10000 (чтобы стать целым) перед любой операцией над этим числом. Тут мне конечно непонятно. Так то вроде как 5182.456 дробное число. Но объявляется масштабируемым целым (currency). Я многие вещи просто не знаю. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.06.2010, 18:47 |
|
Баги Access (топик не закрыт, можно добавлять)
|
|||
---|---|---|---|
#18+
Nebo, Currency и есть целое. Но при отображении и операциях с ним десятичная точка смещена на 4 знака. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.06.2010, 20:59 |
|
Баги Access (топик не закрыт, можно добавлять)
|
|||
---|---|---|---|
#18+
mds_world, Понял. Спасибо. Просветили насчёт Currency:) ... |
|||
:
Нравится:
Не нравится:
|
|||
26.06.2010, 01:25 |
|
Баги Access (топик не закрыт, можно добавлять)
|
|||
---|---|---|---|
#18+
CoolMindNebo, всю 10 страницу можно удалить :) +1 ... |
|||
:
Нравится:
Не нравится:
|
|||
26.06.2010, 01:30 |
|
Баги Access (топик не закрыт, можно добавлять)
|
|||
---|---|---|---|
#18+
Источник данных для подчиненной формы exec dbo.MySp @Param1 работает, а вот exec dbo.MySp @Param1, @Param2, @Param3 вышибает акс 2010 с фатальной ошибкой. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.06.2010, 01:31 |
|
Баги Access (топик не закрыт, можно добавлять)
|
|||
---|---|---|---|
#18+
Alexus12оригинал: http://allenbrowne.com/NoYesNo.html кратко: а) поле YesNo не способно принять значение NULL б) в outer join запросе возможно получение NULL в таком поле, на что JET реагирует крахом предлагаю включить в FAQ ... |
|||
:
Нравится:
Не нравится:
|
|||
30.03.2011, 17:02 |
|
Баги Access (топик не закрыт, можно добавлять)
|
|||
---|---|---|---|
#18+
Владимир СанычAlexus12оригинал: http://allenbrowne.com/NoYesNo.html кратко: а) поле YesNo не способно принять значение NULL б) в outer join запросе возможно получение NULL в таком поле, на что JET реагирует крахом предлагаю включить в FAQ Протестировал. Попробовал и Right Join, и Left Join. Никакого аварийного завершения не заметил. По крайнем мере у меня А2003. Видимо та статья была про А2000. В той версии может быть это и был баг. :( Если у автора есть "аварийная версия" запроса, то хотел бы посмотреть. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.03.2011, 20:10 |
|
Баги Access (топик не закрыт, можно добавлять)
|
|||
---|---|---|---|
#18+
studieren, если бы мы разбирали каждый случай вылета запроса в каждой версии, на обычную работу у нас бы не оставалось времени. Может, ну их в баню, эти реализации, отходящие от стандарта? ... |
|||
:
Нравится:
Не нравится:
|
|||
31.03.2011, 01:07 |
|
Баги Access (топик не закрыт, можно добавлять)
|
|||
---|---|---|---|
#18+
Не знаю, может это ситуация и обычная, но недавно столкнулся с тем, что после удаления формы остался ее модуль, и он постоянно выдавал ошибку. Попытка удалить его или текст приводили к краху. Создал пустую форму с тем же именем, выше-зашел, удалил модуль, удалил форму-все заработало. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.03.2011, 01:47 |
|
Баги Access (топик не закрыт, можно добавлять)
|
|||
---|---|---|---|
#18+
Если поставить галочку "Синтаксис для SQL Server (ANSI 92)" и попробовать создать запрос вот с таким текстом, то Access не будет ругаться, но зато с крахом будет закрываться! Код: plaintext
А вот в ADODB этот же текст будет нормально работать. Код: plaintext
... |
|||
:
Нравится:
Не нравится:
|
|||
01.04.2011, 07:56 |
|
Баги Access (топик не закрыт, можно добавлять)
|
|||
---|---|---|---|
#18+
Может и велосипед конечно. На двух разных машинах где стоит 2003 ACS (SP3) столкнулся с такой вещью. Если (на рабочем столе к примеру) из контекстного меню создать новую базу MS office ACCESS - и в ней форму с модулем, то при последующем закрытии и открытии этого файла модуль формы уничтожается. Однако если просто открыть MS ACCESS и создать новую базу, то все OK. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.04.2011, 09:20 |
|
|
start [/forum/topic.php?fid=45&msg=36709001&tid=1610055]: |
0ms |
get settings: |
8ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
155ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
53ms |
get tp. blocked users: |
1ms |
others: | 311ms |
total: | 557ms |
0 / 0 |