Данная ошибка выдается на строку
var str = aqConvert.FloatToStr(aqConvert.StrToFloat(zal)+5000);
Отправлено 25 декабря 2014 - 15:33
Данная ошибка выдается на строку
var str = aqConvert.FloatToStr(aqConvert.StrToFloat(zal)+5000);
Отправлено 25 декабря 2014 - 18:15
Отправлено 26 декабря 2014 - 07:27
Какое значение у zal в обоих случаях?
zal считывается из поля(как текст, тип string) но там всегда число при том целое, например 9999
тип aqConvert.StrToFloat(zal) number
Я уже разбила на 2 строки
var ss=aqConvert.StrToFloat(zal)+5000; var str = aqConvert.FloatToStr(ss);
ругается на первую строку
Отправлено 26 декабря 2014 - 07:55
Ну значит нот э намбер. Что выдает typeof zal?
"Если ты хороший плотник и делаешь красивую тумбочку, ты не будешь прибивать сзади фанеру, даже несмотря на то, что задняя часть повернута к стене, и никто ее не видит. Ты будешь хорошо спать ночью, только если тебе удалось воплотить в своем произведении эстетическую красоту и качество." © Стив Джобс
Отправлено 26 декабря 2014 - 07:56
Ну значит нот э намбер. Что выдает typeof zal?
string
Отправлено 26 декабря 2014 - 08:02
Так проверяли?
var zal='9999';
var ss=aqConvert.StrToFloat(zal)+5000;
"Если ты хороший плотник и делаешь красивую тумбочку, ты не будешь прибивать сзади фанеру, даже несмотря на то, что задняя часть повернута к стене, и никто ее не видит. Ты будешь хорошо спать ночью, только если тебе удалось воплотить в своем произведении эстетическую красоту и качество." © Стив Джобс
Отправлено 26 декабря 2014 - 08:09
Работает ли метод Utilities.StrToFloat?
"Если ты хороший плотник и делаешь красивую тумбочку, ты не будешь прибивать сзади фанеру, даже несмотря на то, что задняя часть повернута к стене, и никто ее не видит. Ты будешь хорошо спать ночью, только если тебе удалось воплотить в своем произведении эстетическую красоту и качество." © Стив Джобс
Отправлено 26 декабря 2014 - 08:14
На другой машине ... возникает ошибка.
Ключевое слово - "на другой машине". Там системные настройки - локаль, формат чисел и т.п. - такие же, как на первой машине?
Проблема, скорее всего, в формате строки "zal" - например, пробел внутри. Для StrToFloat строка должна быть в таком формате:
A valid string must consist of an optional sign (+ or -), a string of digits with an optional decimal point, and an optional mantissa. The mantissa consists of 'E' or 'e' followed by an optional sign (+ or -) and a whole number. Leading and trailing blanks are ignored. The decimal point character is read from the local system settings.
Thousand separators and currency symbols are not allowed in the string.
Отправлено 26 декабря 2014 - 08:19
Причем тут локаль и т.п. Автор проблемы явно написал, что в ячейке находится целое число 9999.
Если дробная часть присутствует, то это другой разговор.
"Если ты хороший плотник и делаешь красивую тумбочку, ты не будешь прибивать сзади фанеру, даже несмотря на то, что задняя часть повернута к стене, и никто ее не видит. Ты будешь хорошо спать ночью, только если тебе удалось воплотить в своем произведении эстетическую красоту и качество." © Стив Джобс
Отправлено 26 декабря 2014 - 08:22
В дебажном режиме какое значение zal?
"Если ты хороший плотник и делаешь красивую тумбочку, ты не будешь прибивать сзади фанеру, даже несмотря на то, что задняя часть повернута к стене, и никто ее не видит. Ты будешь хорошо спать ночью, только если тебе удалось воплотить в своем произведении эстетическую красоту и качество." © Стив Джобс
Отправлено 26 декабря 2014 - 08:24
Так проверяли?
var zal='9999';
var ss=aqConvert.StrToFloat(zal)+5000;
На моем компе все ок
А на компе, где ошибка
typeof(aqConvert.StrToFloat(zal)) возращает
The argument is not a number
Получается 10-ый TestComplete не поддерживает правильно данную функцию или как?
В дебажном режиме какое значение zal?
9999,00
Отправлено 26 декабря 2014 - 08:31
А ну все таки не 9999, а есть ','. Поставьте в региональных настройках не запятую, а точку.
"Если ты хороший плотник и делаешь красивую тумбочку, ты не будешь прибивать сзади фанеру, даже несмотря на то, что задняя часть повернута к стене, и никто ее не видит. Ты будешь хорошо спать ночью, только если тебе удалось воплотить в своем произведении эстетическую красоту и качество." © Стив Джобс
Отправлено 26 декабря 2014 - 08:32
Либо используйте реплейс (',', '.')
"Если ты хороший плотник и делаешь красивую тумбочку, ты не будешь прибивать сзади фанеру, даже несмотря на то, что задняя часть повернута к стене, и никто ее не видит. Ты будешь хорошо спать ночью, только если тебе удалось воплотить в своем произведении эстетическую красоту и качество." © Стив Джобс
Отправлено 26 декабря 2014 - 08:51
Либо используйте реплейс (',', '.')
Спасибо, помогло, правда я не реплейс взяла, а просто нашла точку или запятую и удалила их,т.е. оставила целое число,т.к. я знаю, что будет целое
Или может все-таки лучше заменить?
Отправлено 26 декабря 2014 - 09:31
На первом этапе, имхо, достаточно. В дальнейшем при работе с данными поймете, как универсальнее сделать функцию.
"Если ты хороший плотник и делаешь красивую тумбочку, ты не будешь прибивать сзади фанеру, даже несмотря на то, что задняя часть повернута к стене, и никто ее не видит. Ты будешь хорошо спать ночью, только если тебе удалось воплотить в своем произведении эстетическую красоту и качество." © Стив Джобс
0 пользователей, 0 гостей, 0 анонимных