AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: Программирование
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск Все разделы прочитаны

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 13.08.2004, 19:05   #1  
Kopilove is offline
Kopilove
Участник
 
7 / 10 (1) +
Регистрация: 09.05.2004
? Функции преобразования типов ?
Какие в аксапте есть функции преобразования типов и соответственно что на что они преобразуют ???
И еще , есть ли в природе документация о таких базовых вещщщах, скиньте плз
Старый 13.08.2004, 19:12   #2  
DSA is offline
DSA
Участник
 
12 / 28 (1) +++
Регистрация: 28.07.2004
- AOT\System Documentation\Functions
- класс Global
Старый 12.10.2004, 20:44   #3  
Miktel is offline
Miktel
Участник
 
17 / 10 (1) +
Регистрация: 13.07.2004
Адрес: Дома
В Аксапте есть функции:
int2str(целое); преобразует число типа int в строку; результат - полученная строка
str2int(строка) ; преобразует строковое представление числа в само число. Результат - число типа iint.
date2str(дата, последовательность, число цифр в представлении дня, разделитель1,число цифр в представлении месяца, разделитель2, число цифр в представлении года)
Последовательность из 123 означает , что в строке на первом месте будет число, затем месяц, и затем год. (321 - наоборот : год -месяц-число)
Разделитель: 0 - нет разделителя 1- пробел 2 - точка 3 - дефиз 4 - /
Обратная функция: str2date(строка, последовательность); Возвращает сстроку.
num2str() - из real в строку. Параметры: действит. число, кол-во цифр в целой части, кол-во цифр в дробной части , разделитель1, разделитель2.
str2num(строка) - возвращает real - значение числа, записанного строкой.
enum2Value(перечисление);
Еще имеются
num2char(), char2Num(),str2time(), time2str()
Функции вида any2xxx();
Старый 13.09.2007, 11:13   #4  
Arahnid is offline
Arahnid
Участник
 
880 / 60 (4) ++++
Регистрация: 09.08.2005
Адрес: Moscow
time2str, какую цифру поставить, чтобы не было вообще раздителя, даже пробела чтоб не было?
Старый 13.09.2007, 11:24   #5  
kashperuk is offline
kashperuk
Участник
Аватар для kashperuk
MCBMSS
Соотечественники
Сотрудники Microsoft Dynamics
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии 2011
Лучший по профессии 2009
 
4,361 / 2084 (78) +++++++++
Регистрация: 30.05.2004
Адрес: Atlanta, GA, USA
Цитата:
Сообщение от Arahnid Посмотреть сообщение
time2str, какую цифру поставить, чтобы не было вообще раздителя, даже пробела чтоб не было?
Из хелпа, встроенного
Цитата:
Notes
The possible values for time seperator are:

Value Description
0 uses the operating systems regional settings
1 a ':' (colon) is used as separator.
2 a '.' (point) is used as separator.
3 a ' ' (space) is used as separator.
4 a ',' (comma) is used as separator.
5 a '/' (forward slash) is used as separator.
А соответственно, нужно выбрать какой-то, а потом его заменить на пустую строку
Старый 13.09.2007, 12:20   #6  
cherv is offline
cherv
MCTS
MCBMSS
1C
 
88 / 25 (1) +++
Регистрация: 24.05.2006
Основные функции (в т.ч. преобразования) в Ax
http://schunk.dk/DocWeb/kernel%20functions.html
Старый 31.07.2008, 12:33   #7  
Xakep is offline
Xakep
Участник
Аватар для Xakep
 
4 / 10 (1) +
Регистрация: 30.07.2008
Адрес: Кишинёв
Кто подскажет, как обработать ситуацию, когда конвертируешь строку через str2int в случае, если в строке не цифры? Например, str2int(1а52221) - возвращает 1 - то есть, цифры - до первого символа в строке. Как это перехватить? Ведь функция всё равно переводит строку в число! Даже если будет str2int(qazsdf) - то вернёт 0. Подскажите, пожалуйста, кто в курсе.
Старый 31.07.2008, 12:41   #8  
kashperuk is offline
kashperuk
Участник
Аватар для kashperuk
MCBMSS
Соотечественники
Сотрудники Microsoft Dynamics
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии 2011
Лучший по профессии 2009
 
4,361 / 2084 (78) +++++++++
Регистрация: 30.05.2004
Адрес: Atlanta, GA, USA
Попробуйте Global методы

isInteger()
str2intOK()
За это сообщение автора поблагодарили: Xakep (1).
Старый 31.07.2008, 13:06   #9  
/Antony/ is offline
/Antony/
Программист
 
14 / 12 (1) ++
Регистрация: 01.08.2007
Цитата:
Сообщение от Xakep Посмотреть сообщение
Кто подскажет, как обработать ситуацию, когда конвертируешь строку через str2int в случае, если в строке не цифры? Например, str2int(1а52221) - возвращает 1 - то есть, цифры - до первого символа в строке.
Возможно немного кривой способ: преобразовать полученное значение str2int(1а52221) обратно в строку при помощи int2str( str2int(1а52221) ) и сравнить с оригинальной строкой. Если они равны - значит исходное выражение - число; в противном случае - строка.
Старый 31.07.2008, 13:08   #10  
Xakep is offline
Xakep
Участник
Аватар для Xakep
 
4 / 10 (1) +
Регистрация: 30.07.2008
Адрес: Кишинёв
kashperuk
Благодарю, всё работает отлично!

/Antony/
Если честно, я также и сделал перед там, как написал это сообщение )) Но всё равно спасибо

Последний раз редактировалось Xakep; 31.07.2008 в 13:12.
Старый 31.07.2008, 13:24   #11  
belugin is offline
belugin
Участник
Аватар для belugin
Сотрудники Microsoft Dynamics
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии 2011
Лучший по профессии 2009
 
4,622 / 2925 (107) +++++++++
Регистрация: 16.01.2004
Записей в блоге: 5
Цитата:
Сообщение от /Antony/ Посмотреть сообщение
Возможно немного кривой способ: преобразовать полученное значение str2int(1а52221) обратно в строку при помощи int2str( str2int(1а52221) ) и сравнить с оригинальной строкой. Если они равны - значит исходное выражение - число; в противном случае - строка.
X++:
int2str(str2int('01')) == '1' != '01'
Старый 31.07.2008, 14:07   #12  
Xakep is offline
Xakep
Участник
Аватар для Xakep
 
4 / 10 (1) +
Регистрация: 30.07.2008
Адрес: Кишинёв
Благодарю всех, задача решена
Теги
документация

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Соответствие типов X++ и MS SQL/Oracle Morpheus DAX: Программирование 25 08.04.2008 14:25
Агрегатные функции встроенного SQL Jab Straight DAX: Программирование 7 28.06.2007 23:30
Аргументы функции Eldar9x DAX: Программирование 1 22.11.2006 22:49
Вызов экспортируемой функции DLL Jabberwocky DAX: Программирование 8 12.09.2006 17:20
Что происходит с переменной табличного типа после выхода из функции? vitk DAX: Программирование 3 10.12.2001 15:34
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 22:10.