Показать сообщение отдельно
Старый 08.12.2020, 13:36   #2  
SRF is offline
SRF
Участник
MCBMSS
Axapta Retail User
 
376 / 562 (19) +++++++
Регистрация: 08.08.2007
Записей в блоге: 1
Посмотрите global\date2StrXpp по перекрёстным ссылкам, например вот так это выглядит в методе SalesLine\buildDateRangeStr ax2013 r3

X++:
/// <summary>
///  build date range string with confirmed date. If confirmed is not filled, build with requested date.
/// </summary>
/// <param name="_dataSourceName">
///   The data source name which need the range.
/// </param>
/// <param name="_fieldNameConfirmed">
///   The field name of confirmed date.
/// </param>
/// <param name="_fieldNameRequested">
///   The field name of requested date.
/// </param>
/// <param name="_dateFrom">
///   The from date for the range.
/// </param>
/// <param name="_dateTo">
///  The to date for the range.
/// </param>
/// <returns>
///  The query range string.
/// </returns>
public static str buildDateRangeStr(str _dataSourceName, str _fieldNameConfirmed, str _fieldNameRequested, date _dateFrom, date _dateTo)
{
    if (_dateTo == dateNull())
    {
        _dateTo = dateMax();
    }

    //we select based on confirmed and if confirmed is not filled we add criteria on requested.
    return strFmt("(((%5.%1 != %6) && (%5.%1 >= %3) && (%5.%1 <= %4)) || ((%5.%1 == %6) && (%5.%2 >= %3) && (%5.%2 <= %4)))",
                  _fieldNameConfirmed,
                  _fieldNameRequested,
                  date2StrXpp(_dateFrom),
                  date2StrXpp(_dateTo),
                  _dataSourceName,
                  date2StrXpp(dateNull()));
}
__________________
Sergey Nefedov