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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 12.11.2025, 11:36   #7  
Отшельник is offline
Отшельник
Участник
 
52 / 11 (1) +
Регистрация: 15.06.2011
Записей в блоге: 1
Спасибо. Реальная помощь
Во всей системе поменялись поля таблиц, основанные на расширенном типе fieldId.
Как по волшебству ) Обстоятельства выясняю.

Спасибо за anyType. Я забыл об этом поведении, а метод рекурсивный...

Менял обратно на не расширенные значения ИД полей таким джобом (может новичнам пригодиться)
X++:
static void SRA_FixFieldIdsee2fEntityLine_KBK(Args _args)
{
    ee2fEntityLine structRec;
    FieldId realFieldId;
    DictTable dictTable;
    str fieldName;
    int counterFixed = 0;

    ttsBegin;

    while select forUpdate structRec
        where structRec.SrcFieldId >= 100000 // подозрение на расширенный FieldId
    {
        realFieldId = fieldExt2Id(structRec.SrcFieldId);

        if (realFieldId != structRec.SrcFieldId)
        {
            dictTable = new DictTable(structRec.SrcTableId);
            fieldName = dictTable.fieldName(realFieldId);

            info(strFmt("Fix: RecId %1 | Old: %2 -> New: %3 | FieldName: %4 | Table: %5 (%6) | DocumentRefRecId: %7 | TagId: %8",
                        structRec.RecId,
                        structRec.SrcFieldId,
                        realFieldId,
                        fieldName,
                        structRec.SrcTableId,
                        tableId2Name(structRec.SrcTableId),
                        structRec.DstFieldName,
                        structRec.EntityId));

            structRec.SrcFieldId = realFieldId;
            structRec.doUpdate();
            counterFixed++;
        }
    }

    ttsCommit;

    info(strFmt("Исправлено записей: %1", counterFixed));
}

Вопрос по опыту. Чем может обернуться для системы в целом, если где останутся расширенные значения полей?
__________________
Dynamics AX 2009 SP1, Rollup 5, SQL Server 2008
Хороший ученик во всем найдет себе учителя...
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Вывод всех таблиц со всеми полями fedka DAX: Программирование 11 10.10.2012 21:38
Как в динамическом запросе использовать исловие OR между двумя полями? yooshi DAX: Программирование 12 07.08.2009 16:34
Объект Application клиента по ИД сессии на АОСе wolfstein DAX: Программирование 5 18.03.2009 14:35
Проблемы с date-полями death machine DAX: Прочие вопросы 4 13.04.2004 02:54
Диалоговое окно с Lookup полями Julietta DAX: Программирование 1 15.12.2003 13:00

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

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

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