Как создать объект (вызовите конструктор) от члена BOM на столбец таблицы принятия решений?
-
21-12-2019 - |
Вопрос
У меня есть 2 Arraylist типа Type1 (скажем это) как параметры правил на правилах. Один для другого для другого. На моем quotflow у меня есть начальная задача действий, которая инициализирует параметр The Out Paultet. Поскольку у нас есть ArrayList в качестве ввода, мне придется «итерации», который я знаю, как это сделать.
Моя проблема приходит после. В следующей задаче моего прямолица у меня есть задача правила, где я добавил все свои таблицы принятия решений, которые имеют некоторые предпосылки. На большинстве таблиц принятия решений можно уволить более одного правила. То, что я хочу достичь, предназначена для каждого правила, которую я хочу добавить новый объект типа типа 1 к выходу ArrayList. Проблема приходит сюда. Если у меня есть 3 правила, стрельба I, на самом деле у меня есть 3 объекта типа типа1, добавляемым к выходу ArrayList, но все 3 поставляются с теми же значениями. Похоже, все «указывают» на тот же объект.
Мой вопрос, есть ли путь в столбце действий, чтобы создать новый объект (вызов конструктора) типа типа1, поэтому при выполнении остальных действий правила он пишет на этом новом объекте типа1? Я знаю, что могу достичь этого, если я создаю столько вариантов набора вариантов типа Type1, так как многие правила, которые у меня есть и используем каждый для каждого правила, но таким образом, мой стол становится огромным (вбок), и это не так, как мы хотим. .
Оба типа1, так и араристы - члены BOM.
Редактировать: забыл упомянуть, что я использую алгоритм RetePlus, с «Нет» как критерии выхода и заказа и динамический балл для выбора правила времени выполнения.
Я надеюсь, что я объяснил себя достаточно хорошему, чтобы кто-то мог помочь мне. Заранее спасибо.
Решение
Вот техника для достижения того, что вы хотите, через 3 шага:
в редакторе BOM, создайте метод в классе типа 1 (или любой другой класс на самом деле).Установите тип возврата в Type1.Например, вызовите это CreateType1.Добавьте как можно больше аргументов метода, так как вам нужно инициализировать свой объект.Сделать его статическим.
Вербаливать его таким образом, чтобы иметь смысл для правила автора.Что-то вроде : Новый тип1, с именем, установленным на {0}, значение, установленное на {1} //, это пример, адаптировать его к списку аргументов, который вы хотите иметь.
Реализуйте метод как часть скрипта B2X:
// calling the appropriate constructor from the XOM class.
return new mypackage.TYPE1(arg1, arg2);
.
Сохранить отс.
Используйте эту новую фразу, в таких конструкциях, как: Добавьте новый тип 1, с именем, установленным на «Joe», значение, установленное на 12 в список выходных данных;
Как правило, вы можете использовать его в знак действий таблицы принятия решений.Редактор будет сопоставлять каждого заполнителя фразы в подразделение.