既存のバウチャー番号シーケンスを、月によって変わる新しい番号シーケンスに更新したい。つまり、月が 2 月の場合、番号シーケンスは 02-0001 のようにする必要があります。調査したところ、ウィザードから番号シーケンスが自動生成されることがわかったので、これを更新する方法にいくつかの問題に直面しています。
number seq クラスにnewGetVoucherFromCodeというメソッドがあり、バウチャー番号シーケンスの範囲を変更するために使用できます。方法は次のとおりです。
public static NumberSeq newGetVoucherFromCode(
NumberSequenceCode _voucherSequenceCode,
NumberSeqScope _scope = NumberSeqScopeFactory::createDefaultScope(),
boolean _makeDecisionLater = false,
boolean _dontThrowOnMissingRefSetUp = false,
//<GEERU><GEEU>
UnknownNoYes _allowManual = UnknownNoYes::Unknown)
//</GEERU></GEEU>
{
return NumberSeq::newGetVoucherFromId(
NumberSequenceTable::findByNaturalKey(_voucherSequenceCode, _scope.getId()).RecId,
_makeDecisionLater,
_dontThrowOnMissingRefSetUp,
//<GEERU><GEEU>
_allowManual);
//</GEERU></GEEU>
}
スコープを変更して、月ごとに番号シーケンスを生成するにはどうすればよいですか?