Страница 1 из 2

Отбрасывает нули после точки в депозите

Добавлено: Чт авг 17, 2017 6:06 pm
sopov
Добрый день, в связке FreeBSD 11.1, MySQL 5.6, apache 2.4, столкнулись со странной проблемой - в админской админке, в депозите клиента отбрасывается нулевое окончание. Скажем должно быть 45.500000, а выводится 45.5. При этом в ЛК отображается нормально.
При этом система с FreeBSD 9.1, MySQL 5.1, apache 2.2, таких проблем не имеет. База master+master и конфиги идентичные.

Re: Отбрасывает нули после точки в депозите

Добавлено: Пт авг 18, 2017 5:01 am
~AsmodeuS~
проверте есть ли опция $conf{DEPOSIT_FORMAT}

Re: Отбрасывает нули после точки в депозите

Добавлено: Пт авг 18, 2017 1:38 pm
sopov
Данной опции нет в конфиге т.к. версия ABillS 0.56b/20140702. Добавление опции в конфиг ожидаемо не принесло результата.
Вот так это выглядит:
Изображение

Re: Отбрасывает нули после точки в депозите

Добавлено: Пт авг 18, 2017 2:34 pm
~AsmodeuS~
sopov писал(а):Данной опции нет в конфиге т.к. версия ABillS 0.56b/20140702. Добавление опции в конфиг ожидаемо не принесло результата.
Вот так это выглядит:
Изображение

а как выглядит запрос ?

select * from bills limit 10;

Re: Отбрасывает нули после точки в депозите

Добавлено: Пт авг 18, 2017 2:47 pm
sopov
Вот так:

Код: Выделить всё

+----+-------------+------+------------+--------------+
| id | deposit     | uid  | company_id | registration |
+----+-------------+------+------------+--------------+
| 40 |    9.616930 | 1304 |          0 | 2006-04-27   |
| 41 |  129.501902 | 1305 |          0 | 2006-05-24   |
| 42 |  222.000000 | 1306 |          0 | 2006-05-27   |
| 43 |    0.000000 | 1308 |          0 | 2006-06-01   |
| 44 |    0.000000 | 1309 |          0 | 2006-06-01   |
| 45 |   71.023518 | 1310 |          0 | 2006-06-01   |
| 46 |   20.000000 | 1311 |          0 | 2006-06-03   |
| 47 |   10.000000 | 1312 |          0 | 2006-06-03   |
| 48 | -193.200522 | 1313 |          0 | 2006-06-03   |
| 49 |  100.000000 | 1314 |          0 | 2006-06-03   |
+----+-------------+------+------------+--------------+
10 rows in set (0.00 sec)

Re: Отбрасывает нули после точки в депозите

Добавлено: Пт авг 18, 2017 4:11 pm
~AsmodeuS~
в SQL commander

Re: Отбрасывает нули после точки в депозите

Добавлено: Пт авг 18, 2017 4:39 pm
sopov
Вот так вот:
Изображение

Re: Отбрасывает нули после точки в депозите

Добавлено: Пт авг 18, 2017 5:45 pm
~AsmodeuS~
select * from payments limit 10;

Re: Отбрасывает нули после точки в депозите

Добавлено: Пт авг 18, 2017 6:06 pm
sopov
Cуть та же.
Изображение

Re: Отбрасывает нули после точки в депозите

Добавлено: Сб авг 19, 2017 5:31 am
~AsmodeuS~

Код: Выделить всё

show create table bills;

Re: Отбрасывает нули после точки в депозите

Добавлено: Сб авг 19, 2017 7:08 am
sopov
Вот такой результат через SQL Commander:
Изображение
И через терминал:

Код: Выделить всё

| bills | CREATE TABLE `bills` (
  `id` int(11) unsigned NOT NULL AUTO_INCREMENT,
  `deposit` double(15,6) NOT NULL DEFAULT '0.000000',
  `uid` int(11) unsigned NOT NULL DEFAULT '0',
  `company_id` int(11) DEFAULT '0',
  `registration` date NOT NULL DEFAULT '0000-00-00',
  PRIMARY KEY (`id`),
  UNIQUE KEY `id` (`id`),
  KEY `uid` (`uid`,`company_id`)
) ENGINE=InnoDB AUTO_INCREMENT=19184 DEFAULT CHARSET=utf8 |

Re: Отбрасывает нули после точки в депозите

Добавлено: Сб авг 19, 2017 1:19 pm
~AsmodeuS~
DBI/DBD драйвер обрезает, проверили на FreeBSD 11 будем разбираться

Код: Выделить всё

perl -e "use DBD::mysql; print DBD::mysql->VERSION; print \"\n\"; use DBI; print DBI->VERSION . \"\n\""
4.043
1.636


Re: Отбрасывает нули после точки в депозите

Добавлено: Вс авг 20, 2017 3:32 pm
sopov
Заранее спасибо!

Re: Отбрасывает нули после точки в депозите

Добавлено: Сб сен 02, 2017 8:42 am
sopov
Не драйвер, а сам перл.
UPD А может и драйвер...Хз.. Проверил на другом сервере - вывод аналогичный...

Код: Выделить всё

#!/usr/bin/env perl

$var = 123.1000;
print $var;
Выводит 123.1

Re: Отбрасывает нули после точки в депозите

Добавлено: Ср сен 20, 2017 9:49 am
sopov
Добрый день, есть ли информация по данной проблеме?