クラスにダイアログを作成しました。ダイアログメソッドは次のとおりです。
static void dialog(Args _args)
{
Dialog dialog;
DialogField dialogFieldCurrentState;
DialogField dialogFieldNewState;
CustInvoiceTable custInvoiceTable;
;
custInvoiceTable = _args.record();
dialog = new Dialog("Change State");
dialogFieldCurrentState = dialog.addField(TypeID(State_LT),"Current State: ");
dialogFieldCurrentState.value(custInvoiceTable.State);
dialogFieldCurrentState.enabled(false);
dialogFieldNewState = dialog.addField(TypeID(State_LT),"New State: ");
if (dialog.run())
{
custInvoiceTable.State = dialogFieldNewState.value();
}
}
私のダイアログには2つのフィールドがCurrent State
あります。これで、リストをNew State
選択するとNew State
、(国に関係なく)必要のないすべての州のリストが表示されます。国のそれぞれの州のみをルックアップに表示する必要があります。while select while select AddressState
where addressState.CountryRegionId == custInvoiceTable.CountryRegionId;
たとえば、国に関連する州のみが表示されるように、フィルターを使用する必要があります。
ここでのState_LTは、文字列EDTです(State_LTの関係を入力します)State_LT == AddressState.StateId
AdressStateには、lookupStateId()メソッドがあります。ダイアログから呼び出す方法(上記のコード)?