|
|
#12 |
|
Участник
|
Цитата:
Сообщение от Alexx7
Такая же ошибка при разноске/проверке журнала.
проверка проходит после прогонки Job с кодом X++: RPayJournalTrans rPayJournalTrans;
int i = 1;
;
ttsbegin;
while select forupdate rPayJournalTrans
where rPayJournalTrans.JournalId == 'Номер журнала который не разносится'
{
rPayJournalTrans.LineNum = i;
rPayJournalTrans.update();
i ++;
}
ttscommit;Наши же локализаторы, как всегда пошли своим путем, создав на RPayJournalTrans индекс JournalLineIdx и засунув в него помимо JournalId и LineNum еще кучу полей. В результате, автонумерация, которая обеспечивается заполнением свойства CounterField на дата-сорсе, работает некорректно. Решение достаточно простое: 1. Создать уникальнай индекс на таблице RPayJournalTrans из двух полей: JournalId и LineNum (именно в таком порядке). Тут надо быть осторожным, если у вас уже есть кривые журналы с неправильными номерами строк, необходимо выполнить джоб для их перенумерации, наподобие того, что привел выше Alexx7. 2. На форме RPayJournalTrans у одноименного дата-сорса в свойстве Index указать созданный в п.1 индекс. После этого разноска журнала зарплаты не будет вызывать описанной ошибки. |
|
|
|
| За это сообщение автора поблагодарили: Alexx7 (1). | |
| Теги |
| axapta retail, ax4.0 |
|
|
|