Wholesale CBDC 部署參考
下列資訊包括 ORDS 命令檔所建立之資料庫物件的描述,以及疑難排解秘訣。
ORDS 命令檔會使用設定的 VIEW_PREFIX 參數建立下列作業視觀表。
<VIEW_PREFIX>_ACCOUNTS_V
<VIEW_PREFIX>_TRANSFER_EVENTS_V
<VIEW_PREFIX>_HOLDS_V
<VIEW_PREFIX>_ACTIVE_ROLES_V
<VIEW_PREFIX>_ACCOUNT_TX_HISTORY_V
<VIEW_PREFIX>_ACCOUNT_HISTORY_V如果您選取分析,就會建立下列分析檢視,並將其範圍設定為部署。
<VIEW_PREFIX>_ACCOUNTS_MOD
<VIEW_PREFIX>_TRANSACTION_MOD
<VIEW_PREFIX>_ACCOUNTS_TRANSACTION_MOD此命令檔也會使用設定的值,建立或設定 ORDS 模組、路由、綱要別名、角色、權限、OAuth 從屬端以及從屬端角色關聯。
檢視型錄與查詢邏輯
下列視觀表是所選綱要中的一般 Oracle 視觀表;它們不會修改擷取器表格。
| 檢視 | 主要來源 | 目的 / 邏輯 |
|---|---|---|
<VIEW_PREFIX>_ACCOUNTS_V |
_more, _store_state |
從 createAccount 呼叫和帳戶 / 權杖狀態建立目前的帳戶目錄。它可解決帳戶、使用者和組織識別、餘額、保留餘額、狀態、每日限制、權杖描述資料,以及建立交易描述資料。
|
<VIEW_PREFIX>_TRANSFER_EVENTS_V |
_more |
將變數替代字收貨日誌標準化為移轉事件資料列。它會擷取寄件者、接收者、金額、函數、區塊 / 交易描述資料,以及選擇性的 ~OBPRPCTX~.value.category 相關資訊環境。
|
<VIEW_PREFIX>_HOLDS_V |
_store_hist, _more, _store_state |
重新建構保留薄荷、燒錄與轉移記錄。它會擷取作業 / 保留 ID、帳戶、公證人、金額、到期、變數替代字、類目、描述及最新生命週期狀態。當目前的狀態資料列無法解析時,它也提供後援資料列。 |
<VIEW_PREFIX>_ACTIVE_ROLES_V |
_more |
套用角色新增 / 移除歷史記錄,並傳回每個帳戶與角色的最新有效角色指派。 |
<VIEW_PREFIX>_ACCOUNT_TX_HISTORY_V |
上一個作業視觀表 | 產生面向帳戶的交易歷史記錄資料列,包含移轉兩側與標準化的薄荷 / 消耗 / 保留生命週期結果。它會從 _ACCOUNTS_V 視觀表強化身分識別。
|
<VIEW_PREFIX>_ACCOUNT_HISTORY_V |
_more, _ACCOUNTS_V |
從帳戶合約變化產生帳戶組態歷史記錄,包含每日限額修訂、時間戳記、鎖房團訂編號及交易 ID。 |
<VIEW_PREFIX>_ACCOUNTS_MOD (選擇性分析)
|
_ACCOUNTS_V |
在與分析相容的帳戶資源配置中顯示帳戶描述資料。 |
<VIEW_PREFIX>_TRANSACTION_MOD (選擇性分析)
|
_TRANSFER_EVENTS_V, _HOLDS_V, _store_hist |
顯示標準化的業務交易,包括移轉、提示、燒錄、要求、保留、核發及產生的餘額 (若有的話)。 |
<VIEW_PREFIX>_ACCOUNTS_TRANSACTION_MOD (選擇性分析)
|
_TRANSACTION_MOD, _ACCOUNTS_V |
將來源與目的地組織內容新增至分析異動記錄。 |
ORDS 路由
所有路由都是 <BASE_PATH>/ 底下的 GET 路由,且需要 OAuth Bearer 權杖。ORDS 會傳回集合附加訊息;具有 HTTP 200 的空白 items 陣列表示要求有效,但沒有相符的已編製索引記錄。
| 路由 | 使用與回應行為 | 必要輸入 | 選擇性輸入與預設行為 |
|---|---|---|---|
getCBDCTransactionById |
傳回一筆標準化分類帳 - 交易明細記錄。 | token_id 識別 WCBDC 權杖;transaction_id 是要擷取的 Besu 交易雜湊 / 識別碼。
|
無。沒有相符的交易傳回空白集合。 |
getCBDCAccountTransactionHistoryWithFilters |
傳回其業務識別所識別之帳戶的歷史記錄。 | token_id 會識別記號;org_id 會識別組織;user_id 會識別帳戶使用者。
|
startTime 和 endTime 會限制時間範圍;省略代表沒有時間範圍下限 / 上限。bookmark 是以零為基礎的位移;省略代表 0。pageSize 是要求的資料列數目;省略則使用處理程式預設值。
|
getAllCBDCAccountTransactionHistoryWithFilters |
傳回整個權杖的帳戶交易歷史記錄。 | token_id 識別記號。
|
startTime、endTime、bookmark 及 pageSize 的行為與帳戶特定的歷史記錄路徑相同。
|
getCBDCAccountStatusHistory |
傳回商業帳戶的已編列索引狀態歷史記錄資料列。 | token_id、org_id 及 user_id 識別帳戶。
|
無。沒有相符的帳戶 / 歷史記錄會傳回空白集合。 |
getApproverActionHistory |
傳回 mint/burn 決策和最終傳輸保留動作。執行 executeHold;拒絕 releaseHold。
|
token_id 會將結果限制為記號。
|
caller_account_id 是管理者 / 核准者公事包位址。省略以傳回所有動作者的動作;提供只傳回該公事包的動作。它是資料範圍篩選,而非授權。
|
getTokenHistory |
傳回權杖層級歷史記錄與供應相關資訊。 | token_id 識別記號。
|
無。 |
getCBDCAccountsByRole |
傳回與角色相關聯的帳戶。 | role 是要比對的角色名稱。
|
無;結果不是由此路由篩選的記號。 |
getUsersByRole |
傳回角色的使用者 / 帳戶角色指派。 | role 是要比對的角色名稱。
|
無。 |
getOrgAccountsByRole |
傳回一個組織中具有角色的帳戶 | org_id 識別組織;role 是角色名稱。
|
無。 |
getAllCBDCAccounts |
傳回一個權杖的所有已編製索引帳戶。 | token_id 識別記號。
|
無。 |
getAllActiveCBDCAccounts |
傳回目前狀態為有效的已編列索引帳戶。 | token_id 識別記號。
|
無。 |
getAllSuspendedCBDCAccounts |
傳回目前狀態為暫停的已編列索引帳戶。 | token_id 識別記號。
|
無。 |
getAllOrgAccounts |
傳回一個組織中所有已編製索引的帳戶。 | org_id 識別組織。
|
無;結果不是由此路由篩選的記號。 |
getPendingCBDCIssuance |
僅傳回目前暫緩移轉保留作業;不包含終端機、已執行、已拒絕及已核發作業。 | token_id 識別記號。
|
caller_account_id 是公證人 / 管理者公事包。將它省略為整個擱置佇列;提供它只傳回指派給該公事包的保留。
|
getPendingCBDCRequest |
僅傳回目前待處理的 Mint/burn 要求。 | token_id 可識別記號;request_type 可選取支援的要求類型,例如 mint 或 burn。
|
無。已核准或已拒絕的要求會被排除。 |
getPendingRequest |
相同待要求使用案例的相容性遞送。 | token_id 和 request_type 的意義與 getPendingCBDCRequest 的意義相同 |
無。 |
getCBDCAccountsByUser |
傳回一個組織 / 使用者 / 權杖組合的帳戶記錄。 | token_id、org_id 及 user_id 可識別帳戶擁有者與權杖。
|
無。 |
getCBDCAccountHistory |
傳回帳戶組態 / 歷史記錄修訂版本。 | account_address 是區塊鏈帳戶 / 公事包位址。
|
offset 是以零為基礎的資料列偏移量;在第一頁省略。limit 是資料列數目上限;省略以使用 SQL 處理程式預設值。
|
getCBDCAccountStatus |
傳回目前已編列索引的帳戶狀態。 | token_id、org_id 及 user_id 識別帳戶。
|
無。 |
getRolesByAccount |
傳回已解決帳戶的角色。 | 一律需要 token_id。提供 account_address (區塊鏈帳戶 / 公事包地址),或合併的 org_id 和 user_id 業務查詢。
|
如果提供 account_address,則為直接帳戶篩選;否則路由會使用 org_id 和 user_id。如果兩個查尋都無法解決帳戶,則回應為空白。
|
getAllRegisteredOrgs |
傳回記號已編製索引之帳戶所代表的組織。 | token_id 識別記號。
|
無。 |
getCBDCMetadata |
傳回已編製索引的不可變權杖描述資料。 | token_id 識別記號。
|
無。 |
getCBDCRetiredQuantity |
傳回變數替代字的處分 / 消耗數量資訊。 | token_id 識別記號。
|
無。 |
分頁和時戳:對於支援 bookmark 和 pageSize 參數的兩個歷史記錄路由,bookmark 參數是以零為基礎的資料列位移,而 pageSize 參數為駝峰式大小寫。省略任一值以使用處理程式預設值。如果提供 startTime 和 endTime 參數,請使用格式為 YYYY-MM-DDTHH:MI:SS+/-HH:MI 的 ISO-8601 時戳文字。
端點產品目錄:實際的路由產品目錄屬於針對部署封裝的命令檔版本。執行之後,請使用 ORDS OpenAPI 目錄或產生的端點輸出作為從屬端應用程式的授權清單。
疑難排解
| 訊息或條件 | 解決方式 |
|---|---|
NJS-516: no configuration directory set |
使用的 TNS 別名沒有可存取的公事包 / 組態目錄。擷取公事包並設定 Oracle 從屬端,讓 tnsnames.ora 檔案可供使用。
|
NJS-511 或 ORA-12506 |
監聽器、端點、服務名稱、網路允許清單或公事包組態問題。使用 DBA 驗證命令檔之外的 Oracle 連線。 |
| OAuth 權杖要求傳回 404 | 驗證 /ords/<ALIAS_NAME>/oauth/token 中的確切別名。別名不一定是 Oracle 使用者名稱。
|
| 端點傳回 401 | 取得全新的權杖並確認 OAuth 從屬端具備與所設定模組基本路徑關聯的角色 / 權限。 |
| 端點傳回 404 | 請檢查主機、別名、基礎路徑、路由名稱,以及模組是否已發布。 |
ORDS-25001 |
端點已達 ORDS,但其 SQL 失敗。請驗證表格首碼、合約地址、來源資料形狀及必要要求參數。 |
ORA-20049: Cannot alter the URL mapping while the schema is enabled |
選擇的 ALIAS_NAME 與啟用的綱要對應衝突。重複使用綱要的現有別名,或讓 ORDS 管理員完成核准的停用 / 重新對應 / 啟用程序,再重新執行命令檔。
|
| 檢視未包含資料列 | 確認在建立執行處理時選取了正確的 RTF 歷史記錄設定檔、表格前置碼確實相符、符合已部署代理主機的合約地址,以及已編製交易索引。 |
| 物件與其他部署衝突 | 使用不同的 VIEW_PREFIX、模組名稱、基礎路徑、角色、權限、OAuth 從屬端名稱及別名。
|