Показать сообщение отдельно
Старый 14.01.2014, 15:33   #5  
maldini is offline
maldini
Участник
 
103 / 30 (2) +++
Регистрация: 06.03.2007
Адрес: москва
Цитата:
Сообщение от АртемМелихов Посмотреть сообщение
Доброе время суток. Ситуация такая:
аксапта 3
имею переменную типа anytype , которая хранит 12700.00
имею переменную типа real.
если положить переменную 1 в 2 то получаю во 2 12.00
Помогите, пожалуйста, произвести преобразование. Облазил все интернеты, пречитал все мануалы по типам аксапты.
X++:
 ret.Qty1 = Fields.itemIdx(costsLineTbl.ColumnLoad - 1).Value();
                    temp = Fields.itemIdx(costsLineTbl.ColumnLoad - 1).Value();
                    //ret.Qty1 = str2num(Fields.itemIdx(costsLineTbl.ColumnLoad - 1).Value());
                    info(strfmt('C %1 %2 %3', Fields.itemIdx(costsLineTbl.ColumnLoadPaymDesk - 1).value(),num2str(ret.Qty1,3,3,3,3),temp));
Я думаю у тебя в anytype строка, удали пробел между 2 и 900.00 и все ок.

X++:
    anyType a = "2 900.00";
    real    b = a;
    ;
     info(strFmt("%1", typeof(a)));
     info(strFmt("%1", b));
    a = strrem(a,' ');
    b = a;
    info(strFmt("%1", b));
Изображения
 

Последний раз редактировалось maldini; 14.01.2014 в 16:00.