Может это уже всплывало тут.
Импортом из экселя загоняется таблица RContractTable, далее запускается нижеследующий код, с целью инициализации RContractAccount из нужной номерной серии. Проблема в том что цикл уходит в нирвану и в наборе уже появляются обновленные записи с новым RContractAccount и так до бесконечности. Обновление через еще одну табл. переменную не проходит. Я понимаю что может проблема решится путем написания кода инициализации при импорте, но все хотелось бы пгонять в чем тут дело, может здесь что-то очевидное. Заранее спасибо
X++:
static void updateContractCode(Args _args)
{
RContractTypes rContractTypes;
NumberSeq numberSeq;
RContractTable rContractTable;
;
ttsbegin;
while select forupdate rContractTable
{
rContractTypes = RContractTypes::find(rContractTable.RContractPartnerType,
rContractTable.RContractCode);
if (rContractTypes.NumberSequenceCode)
{
numberSeq = NumberSeq::newGetNumFromCode(rContractTypes.NumberSequenceCode,true);
rContractTable.RContractAccount = numberSeq.num();
rContractTable.update();
}
}
ttscommit;
}