Вернуться
Вопрос по драйверу CashTAN.exe и 1C. Вместо количества 261.9 в каштан попадает 261.899? Это баг или фича ? :(
Александр
0 - 04.02.2005-22:38
Ниже привожу кусок кода.
Причем при трассировке после
GL.Fields("Count").Value = колНовыйОстаток;
где колНовыйОстаток=261.9
до метода Update
GL.Fields("Count").Value =261.89999999
а после обрубается до 261.899
То же имеем и прм использовании свойств ARTXXXX.
Где тут собака порылась?

GL = текСекция.BaseGoodsList;
CrGL = текСекция.CurrentGoodsList;

тзТ.ВыбратьСтроки();
Пока тзТ.ПолучитьСтроку() = 1 Цикл

Если GL.SeekLocalCode(тзТ.LocalCode) = 0 Тогда //не нашли
GL.AddRecord(тзТ.LocalCode,тзТ.Department,тзТ.Dividable,тзТ. BarCode,тзТ.Name,тзТ.Price,тзТ.Count)
Иначе
CrGL.SeekLocalCode(тзТ.LocalCode);

колОстаток = CrGL.ArtCount;
колНовыйОстаток = колОстаток + тзТ.Count - колОстаток;

GL.Edit();
GL.Fields("Department").Value = тзТ.Department;
GL.Fields("Dividable").Value = тзТ.Dividable;
GL.Fields("BarCode").Value = тзТ.BarCode;
GL.Fields("Price").Value = тзТ.Price;
GL.Fields("Count").Value = колНовыйОстаток;
GL.Update();

//GL.ArtDepartment = тзТ.Department;
//GL.ArtDividable = тзТ.Dividable;
//GL.ArtBarCode = тзТ.BarCode;
//GL.ArtPrice = тзТ.Price;
//GL.ArtCount = колНовыйОстаток;
КонецЕсли;
КонецЦикла;
//GL.Upload();
Vacony
1 - 07.02.2005-09:32
Это и баг и фича :) Проблема вычисленй на железном уровне. Я так с ценой бился, когда вместо 5.9 , 5.8 выходило )
бОроться либо типом переменных, либо точностью, либо округлять в учетной программе (я так и делаю).

Хотя я бы с радостью. послушал ответ разработчика а этот счет :)
Dmitry
2 - 07.02.2005-16:14
Исправлено в версии 3.0 beta.
Александр
3 - 08.02.2005-08:48
Округление к сожалению это не выход для аптек, т. к. есть достаточно дорогие препараты, и даже кол. 0.001 существенно влияет на сумму остатка. В 1С тип переменной "Число", нет никаких integer и real и т.п. Разве что количество знаков после запятой можно выставить.
Александр
4 - 08.02.2005-08:50
Dmitry
А когда планируется выход версии 3.0 final?
Vacony
5 - 08.02.2005-09:44
3 - а как вы продаете 0.001 , когда у аппарата точность в сотых ?
Dmitry
6 - 08.02.2005-11:33
Когда будут выявлены и устранены все недостатки. Точный срок назвать не берусь. Но, что касается данных и объектной модели, v3.0 вполне рабочая и совместимая с предыдущей версией.
Александр
7 - 08.02.2005-12:45
Vacony
У MINI 600.05 в количестве точность до 3 -го знака.
Но проблема не только в суммовом остатке.

Пример.
В аптеке есть 10 упаковок таблеток по 10 штук в каждой.
В Каштане товар числится в упаковках.
Продаются они как целыми упаковками, так и поштучно (5шт-0.5уп, 1шт.-0.1уп)
Т. е. в какой-то момент на остатке может быть 8,9 упаковки (8уп. и 9шт. таблеток). Но в базу драйвера и соответственно в CashTan загружается 8.899. Когда продавец пытается пробить 8.9 на кассе, он не видит , что на самом деле остаток 8.899, появляется сообщение об ошибке, т.к. на хватает количества 0,001шт.

Добавить сообщение
Ваше имя 
Пароль (для зарегистрированных) 
email 
Сообщение 
Введите код, изображенный на картинке
Для зарегистрированных пользователей можно не вводить 
Внимание - введите код без последнего символа!

© ТФПК Лтд. Все права защищены.
0.025861 seconds