Ассоциация ЭБНИТ    ИРБИС-корпорация    Вики-Ирбис    Online/CHM справка Ирбис   
Общие вопросы Ирбис64 :  ИРБИС Irbis
 
Преобразование числа в строку: лидирующие нули
Пользователь: artgonch (IP-адрес скрыт)
Дата: 27, January, 2017 04:55

Здравствуйте.
Есть функция f(exp-1, exp-2, exp-2), которая преобразует число в строковое представление. Целая часть числа получается без лидирующих нулей, а хотелось бы с ними. Например:
f(1) дает '000001'
f(100) дает '000100'

Re: Преобразование числа в строку: лидирующие нули
Пользователь: amironov73 (IP-адрес скрыт)
Дата: 27, January, 2017 10:44

artgonch написал(а):
-------------------------------------------------------
> Есть функция f(exp-1, exp-2, exp-2), которая
> преобразует число в строковое представление. Целая
> часть числа получается без лидирующих нулей, а

&uf('+98 0'f(100,6,0))

Так подойдёт?

Re: Преобразование числа в строку: лидирующие нули
Пользователь: artgonch (IP-адрес скрыт)
Дата: 27, January, 2017 11:07

Да, спасибо.

Re: Преобразование числа в строку: лидирующие нули
Пользователь: KrVs (IP-адрес скрыт)
Дата: 30, January, 2017 13:23

А как с помощью данной функции преобразовать все числа из подполя в буквы? Не могу понять никак.

Одну букву меняет на число, с помощью функции:

if p(v907^A) then &uf('+980À',v907^A) else fi

Но как применить эту функцию несколько для для одного повторения поля?

Нужно для одного повторения поля, 907^A (20161215), применить несколько функций, но с разными значениями для замены, то есть:

+980À' +981Б' +982В' +983Г' +984Д'

В общем, чтобы число отобразилось в результате формата в виде букв.

Re: Преобразование числа в строку: лидирующие нули
Пользователь: ochagova (IP-адрес скрыт)
Дата: 31, January, 2017 09:43

Вложенность разрешается:

(if p(v907^A) then &UF('+984Д',&uf('+983Г',&uf('+982В',&uf('+981Б',&uf('+980À',v907^A))))) else fi /)



Извините, только зарегистрированные пользователи могут писать в этом форуме.
This forum powered by Phorum.