Преобразование в тип smallint
Синтаксис
 
tosmallint(<​значение​>)

<​значение​> – выражение символьного или любого числового типа.

Описание

Возвращается значение типа smallint, полученное в результате преобразования параметра <​значение​> по следующим правилам:

  • если параметр содержит дробную часть, то она отбрасывается;

  • преобразование заканчивается при обнаружении нецифрового знака в символьной строке;

  • если значение параметра выходит за пределы допустимого диапазона (от -32767 до +32767), то возвращается остаток от деления значения параметра на 65536 с учетом полученного знакового разряда (т.е. <​значение​> mod 65536).

Примеры
sml_int:=tosmallint("148");// 148

sml_int:=tosmallint(148);// 148

sml_int:=tosmallint("-34");// -34

sml_int:=tosmallint(-34);//-34

sml_int:=tosmallint("+34");// 34

sml_int:=tosmallint(+34);// 34

sml_int:=tosmallint(148-56/8+10);//151

sml_int:=tosmallint("32767"); // 32767

sml_int:=tosmallint("65535");// -1

sml_int:=tosmallint("65536");// 0

sml_int:=tosmallint("70000");// 4464

sml_int:=tosmallint("-70000");// -4464

sml_int:=tosmallint("6fs65");// 6

sml_int:=tosmallint("65.9");// 65

sml_int:=tosmallint(65535*2+1000); // 998

Функции данного класса преобразуют переданное значение в числовое значение соответствующего типа. При этом если передана строка, и она не является допустимой записью числа, возвращается 0.