使用軟件包 SDK 創建自定義變量
使用時 Automation 360,您可以使用 SDK 軟件包創建自定義變量。
使用自定義變量
用於 Automation 360 創建自定義變量。這是一個系統變量,用作其他 bot 變量,但它是隻讀的,並計算該值而不是被分配。
所需的註釋
要創建變量,需要以下註釋:
註解 | 使用方式 |
---|---|
BotCommand |
將 BotCommand 註釋與 變量一起使用 作 爲命令類型 。這可確保純舊 Java 對象 (POJO) 適合創建 Automation 360 變量。 |
CommandPkg |
創建軟件包時使用這些值。提供註釋的名稱、標籤和說明。 |
IDX |
註釋所有必需的參數和成員變量,並幫助進行驗證檢查。或者,也可以在輸入的接口中顯示它們。提供索引 (IDX ) 和類型。 |
包裝 |
註釋界面中顯示的所有參數和成員變量。如果 沒有 IDX 附帶此註釋,則將忽略該註釋 。 |
VariableExecute |
返回變量值時必須調用的方法。此方法不接受任何輸入參數。會話 和 GlobalSessionContext 通過 setter 注入可用。 |
使用案例範例
以下使用案例顯示如何返回系統默認區域的當前時間。
- 使用業務邏輯創建 POJO 類:
public class Now { public DateTimeValue now() { Instant instant = Instant.now(); ZonedDateTime now = instant.atZone(ZoneId.systemDefault()); return new DateTimeValue(now); } }
- 爲 POJO 類添加註釋,以便爲 Automation 360 變量啓用該類並創建軟件包:
@BotCommand(commandType = BotCommand.CommandType.Variable) @CommandPkg(description = "The current datetime at system default zone.", name = "Now", label = "", variable_return_type = DataType.DATETIME) public class Now { public DateTimeValue now() { Instant instant = Instant.now(); ZonedDateTime now = instant.atZone(ZoneId.systemDefault()); return new DateTimeValue(now); } }
- 註釋
NOW
方法以將其指定爲執行方法。@VariableExecute public DateTimeValue now() { Instant instant = Instant.now(); ZonedDateTime now = instant.atZone(ZoneId.systemDefault()); return new DateTimeValue(now); }
每個 變量必須具有一個測試
VariableExecute
方法。