Каков правильный способ доступа к NumberSeq на основе его имени?

#axapta

#axapta

Вопрос:

Я создал новую числовую последовательность в USMF / Администрирование организации / Общие / Числовые последовательности / Числовые последовательности

Названный New_NS

Я нашел множество руководств «как это использовать», но мне не удалось найти ни одного, которое возвращало бы последовательность чисел на основе его имени. Итак, я заканчиваю

 NumberSequenceTable NST;
Num num;
ttsbegin;
select forupdate NST where NST.NumberSequence == 'New_NS';
if(!NST.RecId)
{
     throw error('New_NS'   ' does not exist!');
}

num = NumberSeq::numInsertFormat(NST.NextRec, NST.Format);
NST.NextRec = NST.NextRec   1;

if(NST.InUse == NoYes::No)
{
    NST.InUse = NoYes::Yes;
}

NST.update();
ttsCommit;
  

Есть ли какой-нибудь лучший способ получить доступ к New_NS на основе его строкового имени?

Ответ №1:

Используйте NumberSeq::newGetNumFromCode.

 Num num;

ttsbegin;
num=NumberSeq::newGetNumFromCode('New_NS').num();
ttscommit;
info(strfmt("Your number is %1.",num));
  

Комментарии:

1. Это возвращает мне «Последовательность чисел не существует». но я могу видеть последовательность чисел в USMF / Администрирование организации / Общие / Последовательности чисел / Последовательность чисел. Я пытаюсь использовать другие значения, такие как RecId, seq. число, код последовательности чисел, но я получаю «Последовательность чисел не существует». каждый раз.

2. Убедитесь, что вы выполняете задание в той же компании, для которой определена последовательность номеров.

Ответ №2:

Числовая последовательность всегда связана с расширенным типом данных. Затем вы можете получить доступ к числовой последовательности, используя этот расширенный тип данных. Также вам не нужно обращаться к NumberSequenceTable самой таблице, используйте вместо этого NumberSeq класс, чтобы получить новое число из последовательности. Смотрите Generate Next Number Sequence by x code для примера того, как использовать этот класс.

Комментарии:

1. Я видел этот пост, которым вы поделились, но я все еще не знаю, как выбрать номер из ‘New_NS’.