Добрый день. Только начинаю программировать в Ax. Столкнулся с проблемой.
Есть метод, вызывается с параметрами.
X++:
void insertInToTestPerfomanceTable(...,
TimeInMS duration,
...,
date periodFrom,
date periodTo)
{
...
;
...
testPerfomanceTable.Duration = duration;
if (duration <= 999)
{
testPerfomanceTable.Duration2 = Int2Str(duration) + " мс";
}
else if ((duration > 999) && (duration < 59999))
{
testPerfomanceTable.Duration2 = Int2Str(duration div 1000) + " с " +
Int2Str(duration mod 1000) + " мс";
}
...
testPerfomanceTable.PeriodFrom = periodFrom;
testPerfomanceTable.PeriodTo = periodTo;
ttsbegin;
testPerfomanceTable.insert();
ttscommit;
}
Элементарно вставить запись в таблицу БД.
Проблемы две.
1. testPerfomanceTable.PeriodFrom = periodFrom;
testPerfomanceTable.PeriodTo = periodTo;
В поля кладутся верные даты. Но в БД иногда записывается нулевая дата 1900-01-01. В общем как повезет. 50/50. Через отладчик проверяю, всегда кладется нужная дата, а зписывается не всегда она. Тип полей Date.
2. testPerfomanceTable.Duration2 = ...
В поле кладется верная строка. Но в БД ничего не записывается. Через отладчик проверяю, всё норм. Тип поля String. Size 1024. Хотя это слишком много.
Простите, если что не так объяснил. Помогите, пожалуйста.
AX2009 SQL2008R2