Caros,
Tenho visto que pouca gente sabe, mas o X++ tem várias funções que evitam um monte de trabalho e podem te salvar horas e mais horas quando o assunto for datas. Vou falar agora especificamente de duas, que são: dateStartMth e endmth.

Observe o job abaixo:

1
2
3
4
5
6
7
8
9
10
11
static void Job1(Args _args)
{
    Date            baseDate = mkdate(14, 8, 2010);
    Date            dateStart, dateEnd;
    ;
 
    dateStart   = dateStartMth(baseDate);
    dateEnd     = endmth(baseDate);
 
    info(strfmt("%1 - %2", dateStart, dateEnd));
}

A saída deste job é: “1/8/2010 – 31/8/2010”, o que resolve uma série de problemas quando vamos trabalhar com ranges de datas e encurta bastante caminho.

Abraço,
Pichler