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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 15.10.2008, 09:34   #7  
Gustav is offline
Gustav
Moderator
Аватар для Gustav
SAP
Лучший по профессии 2009
 
1,858 / 1152 (42) ++++++++
Регистрация: 24.01.2006
Адрес: Санкт-Петербург
Записей в блоге: 19
Мне это сообщение напомнило о том (после того, как я накидал джобик), что можно случайно забыть, какой тип у ключа и у значения Map и без проблем засунуть целочисленные значения в строковые и наоборот - и, соответственно, получить "неожиданную" сортировку. Чего не скажешь, например, о Set, у которого контроль на входе более жесткий.

А джобик прилагаю (раз уж накидал)
X++:
static void Job92(Args _args)
{
    Map map = new Map(Types::String, Types::String);
    //Map map = new Map(Types::Integer, Types::Integer);

    Set setStr = new Set(Types::String);
    Set setInt = new Set(Types::Integer);
    ;

    //3,4,5,6,7,8,10,12,14,16

    map.insert(3,3);
    map.insert(4,4);
    map.insert(12,12);
    map.insert(14,14);
    map.insert(16,16);
    map.insert(5,5);
    map.insert(6,6);
    map.insert(7,7);
    map.insert(8,8);
    map.insert(10,10);

    setStr.add('7');
    setStr.add('8');
    setStr.add('10');
    setStr.add('3');
    setStr.add('4');
    setStr.add('5');
    setStr.add('6');
    setStr.add('12');
    setStr.add('14');
    setStr.add('16');

    setInt.add(14);
    setInt.add(16);
    setInt.add(10);
    setInt.add(12);
    setInt.add(6);
    setInt.add(7);
    setInt.add(8);
    setInt.add(3);
    setInt.add(4);
    setInt.add(5);

    info(map.toString());

    info(setStr.toString());
    info(setInt.toString());
}
P.S. Задействовать номерную серию для генерации строковых ключей в Map, наверное, можно, но я обычно обхожусь походным текстовым счетчиком типа:
X++:
key ='N'+subStr(int2str(1000000+i),2,6); // N000001
или просто равнодлинными "телефонными номерами", т.е. с добавлением заведомо большого числа:
X++:
key =1000000+i; // 1000001
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Dynamics AX: Managing Your Supply Chain Using Microsoft Dynamics AX 2009 - Book Review Blog bot DAX Blogs 0 31.03.2009 23:06
axStart: Microsoft Dynamics AX 2009 Hot Topics Web Seminar Series Blog bot DAX Blogs 0 06.08.2008 12:05
AX Developer tips: Dynamics AX Performance issue. Cross object references drawbacks. Blog bot DAX Blogs 0 14.07.2008 00:11
Inside Dynamics AX 4.0: Usage Scenarios Blog bot DAX Blogs 0 04.10.2007 05:15
Dynamics AX: Why Dynamics AX beats SAP Blog bot DAX Blogs 0 10.01.2007 23:15

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

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

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