как прочитать каждое значение столбца в таблице

Используя x++, как создать задание для чтения каждого значения столбца в таблице Microsoft Dynamics AX 2009?


person Revathi    schedule 29.12.2011    source источник


Ответы (3)


Один из вариантов: в AOT (Ctrl-D) щелкните правой кнопкой мыши Jobs и выберите New Job. В новом окне введите что-то вроде (используя правильное имя таблицы и столбца, которое вы хотите прочитать):

static void Job()
{
    YourTable  yourTable;
    ;
    while select TheColumn from yourTable
    {
        // process yourTable.TheColumn
        info(strFmt("value: %1", yourTable.TheColumn));
    }
}

но есть и другие способы: Select Statements

person user85421    schedule 29.12.2011

Этот код отобразит все значения столбца для записи.

static void Job1(Args _args)
{
    DictTable   dictTable = new DictTable(tableNum(CustTable));
    DictField   dictField;
    int         counter, fieldId;

    CustTable   custTable;
    anytype     value; 

    select firstonly custTable;

    for (counter = 1; counter <= dictTable.fieldCnt(); counter++)
    {
        fieldId = dictTable.fieldCnt2Id(counter);
        dictField = new DictField(tableNum(CustTable), fieldId);

        if (!dictField.isSystem())
        {
            value = custTable.(fieldId);
            if(value)
            {
                info(strFmt('%1 = %2', 
                            dictField.label(),
                            any2str(value)));
            }
        }
    }
}

Чтобы получить все значения для определенного столбца, используйте код Карлоса Хойбергера.

person Babar    schedule 30.12.2011

Просто небольшой мод, убрал any2str, чтобы моя таблица заработала:

strFmt('%1 = %2 \r\n', dictField.label(), value);

person phoenixdaxguy    schedule 18.10.2016