Если используется цикл с фиксированным шагом приращения, то имеет смысл подумать об использовании цикла for()
X++:
static void Test(Args _args)
{
FromDate fromDate = 01\01\2017;
ToDate toDate = 31\07\2017;
int period = 3;
TransDate transDate;
;
// Исходная запись
info(strFmt('с %1 по %2', fromDate, toDate));
for (transDate = global::dateMthFwd(fromDate, period); transDate < toDate; transDate = global::dateMthFwd(transDate, period))
{
// новые записи
info(strFmt('с %1 по %2', transDate, toDate));
}
info('end');
}