Я пытаюсь вытащить Enum
, выбранный из dialog
, и назначить label
столбцу таблицы.
Например: Dialog
открывается и позволяет вам выбрать:
Поверхность
OutOfSpe c
Другое
Это соответственно 0,1,2.
Пользователь выбирает OutOfSpec
(метка для этого Out Of Spe c), я хочу поместить имя этого перечисления или метку в таблицу. Столбец, в который я вставляю, настроен как str
.
Вот код, который я пробовал, но безуспешно:
SysDictEnum dictEnum = new SysDictEnum(enumNum(SDILF_ScrapReasons));
reason = dialog.addField(enumStr(SDILF_ScrapReasons),"Scrap Reason");
dialog.run();
if (!dialog.closedOk())
{
info(reason.value());
return;
}
ttsBegin;
// For now, this will strip off the order ID from the summary fields.
// No longer removing the Order ID
batchAttr = PdsBatchAttributes::find(itemId, invDim.inventBatchId, "OrderId");
orders = SDILF_BreakdownOrders::find(batchAttr.PdsBatchAttribValue, true);
if (orders)
{
orders.BoxProduced -= 1;
orders.update();
}
// Adding a batch attribute that will include the reason for scrapping
select forUpdate batchAttr;
batchAttr.PdsBatchAttribId = "ScrapReason";
//batchAttr.PdsBatchAttribValue = any2str(dictEnum.index2Value(reason.value()));
batchAttr.PdsBatchAttribValue = enum2str(reason.value());
batchAttr.InventBatchId = invDim.inventBatchId;
batchAttr.ItemId = itemId;
batchAttr.insert();
Очевидно, что это не весь код, но этого должно быть достаточно, чтобы решить проблему, которую я пытаюсь решить.
Я уверен, что есть способ получить значение int
и использовать его для назначения метки, я просто еще не смог понять это.
РЕДАКТИРОВАТЬ
Чтобы добавить больше информации о том, что я пытаюсь выполнить sh. Мы производим нашу готовую продукцию, иногда она выходит из строя c или повреждается, когда это происходит, и нам приходится сдавать готовую продукцию. Когда мы делаем это, мы хотим отследить, почему его удаляют, но мы не хотим просто случайных причин. Я использовал enum
, чтобы ограничить причины. Когда оператор нажимает кнопку, чтобы что-то удалить, у него появляется всплывающее диалоговое окно, которое позволяет ему выбрать причину отказа. Затем код, в конце концов, назначит эту назначенную причину атрибутам партии готовых изделий, чтобы мы могли отследить ее позже в отчете и получить список всех готовых товаров, которые были списаны и почему они были списаны.