如何創建,轉換UUID[CL_SYSTEM_UUID]


UUID含義是通用唯一識別碼 (Universally Unique Identifier),通俗一點就是一個不重復的字符串,有時會把UUID作為數據庫的一個主鍵,這樣就不用擔心主鍵重復的問題。

SAP中有個專門生成CL_SYSTEM_UUID,提供了4個靜態方法創建生成不同類型的UUID:2進制,16進制,64位以及32位uuid。

也可以進行不同類型UUID之間的相互轉換。

代碼:

REPORT ztest_uuid.

DATA:l_uuid22 TYPE sysuuid_c22,
     l_uuid32 TYPE sysuuid_c32,
     l_uuid26 TYPE sysuuid_c26,
     l_uuid16 TYPE sysuuid_x16.

TRY.
    CALL METHOD cl_system_uuid=>if_system_uuid_static~create_uuid_x16
      RECEIVING
        uuid = l_uuid16.
  CATCH cx_uuid_error .
ENDTRY.
TRY.
    CALL METHOD cl_system_uuid=>if_system_uuid_static~create_uuid_c22
      RECEIVING
        uuid = l_uuid22.
  CATCH cx_uuid_error .
ENDTRY.
TRY.
    CALL METHOD cl_system_uuid=>if_system_uuid_static~create_uuid_c32
      RECEIVING
        uuid = l_uuid32.
  CATCH cx_uuid_error .
ENDTRY.
TRY.
    CALL METHOD cl_system_uuid=>if_system_uuid_static~create_uuid_c26
      RECEIVING
        uuid = l_uuid26.
  CATCH cx_uuid_error .
ENDTRY.

WRITE:  `Binary Format UUID:`,l_uuid16.
WRITE:/ `Base64 UUID:       `,l_uuid22.
WRITE:/ `Base32 UUID:       `,l_uuid26.
WRITE:/ `Hex Format UUID:   `,l_uuid32.

運行結果:

也可以通過函數SYSTEM_UUID_CREATE來生成UUID,SE37

看一下代碼,其中也是調用類CL_SYSTEM_UUID創建的二進制類型UUID

以上。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM