Показать сообщение отдельно
Старый 10.08.2004, 17:56   #9  
mikma is offline
mikma
Участник
 
22 / 10 (1) +
Регистрация: 01.07.2004
Адрес: Москва
Автонумерация
Огромное спасибо за ответ.

Однако после советов доброжелателей, в предлагаемом коде
X++ code:--------------------------------------------------------------------------------
public void insert() {
NumberSeq MyNewId;
ttsbegin;
MyNewId = NumberSeq::newGetNumFromCode("Seq1");
this.BodyId = MyNewId.num();
super();
ttscommit;
}--------------------------------------------------------------------------------

были внесены некоторые изменения

MyNewId =NumberSeq::newGetNum(NumberSeqReference::findReference(typeId2ExtendedTypeId(typeid(MyEDT))));

Правда при этом был создан

ExtendedDataType MyEDT

который соответствует полю (которое я собрался нумеровать)
А так же внесены изменения в класс соответствующий необходимому модулю

public class NumberSeqReference_название_модуля extends numberSeqReference
{

}
в методе (правда если вы заглянете в любой из соответсвующих классов там все эти изменения описаны)

loadModule()
{
numRef.dataTypeId = typeId2ExtendedTypeId(typeid(MyEDT));
numRef.configurationKeyId = configurationKeyNum(ledgerBasic);
numRef.referenceHelp = literalStr("текст");
numRef.wizardContinuous = true;
numRef.wizardManual = NoYes::No;
numRef.wizardAllowChangeDown = NoYes::No;
numRef.wizardAllowChangeUp = NoYes::No;
numRef.wizardHighest = 999999;
numRef.sortField = 1;

this.create(numRef);
}

Не знаю на сколько я был прав. Но думаю что такое решение тоже имеет право на жизнь, каким бы оно громозким не казалось бы.