Wednesday, August 13, 2025

get current global error text using x++ D365fo

 public static str getError()

{

    SysInfologEnumerator      sysInfologEnumerator;

    SysInfologMessageStruct   infoMessageStruct;

    str                       logMessage;

    str                       logString;

    int                       i;

    #Define.NewLine('\n')

    sysInfologEnumerator = SysInfologEnumerator::newData(infolog.infologData());

    while (sysInfologEnumerator.moveNext())

    {

        i = 1;

        if (logMessage)

        {

            logMessage += #NewLine;

        }

        infoMessageStruct = SysInfologMessageStruct::construct(sysInfologEnumerator.currentMessage());

        while (i <= infoMessageStruct.prefixDepth())

        {

            logString += infoMessageStruct.preFixTextElement(i) + '. ';

            i++;

        }

        logString += infoMessageStruct.message();

        logMessage += infoMessageStruct.message();

    }

    infolog().clear();

    return logMessage;

}


Call API using x++ D365FO

 System.Net.HttpWebRequest    request; System.Net.HttpWebResponse   response; System.IO.Stream             dataStream; System.IO.StreamReade...