SAP BW (Business Warehouse) ortamında büyük veri hacimlerini yönetmek ve analiz etmek bazen zaman alabilir. Ancak, bu zorlukları aşmanın bir yolu var: SAP BW'de HANA prosedürlerini kullanarak veri aktarımını optimize etmek.

Adım 1: HANA Tabloları ve Veri Ekleme

İlk olarak, HANA veritabanında gerekli tabloları oluşturmanız ve bu tablolara veri eklemeniz gerekmektedir. Örneğin:

CREATE COLUMN TABLE SalesOrders (

    VBELN_SALES NVARCHAR(10),

    POSNR_SALES INTEGER,

    MATNR NVARCHAR(10),

    NETWR DECIMAL(15,2)

);

 

CREATE COLUMN TABLE BillingItems (

    VBELN_BILLING NVARCHAR(10),

         VBELN_SALES NVARCHAR(10),   

         POSNR_BILLING INTEGER,

    POSNR_SALES INTEGER,

    NETWR DECIMAL(15,2)

);


 CREATE TABLE SALES_TABLE (

VBELN NVARCHAR(10),

    VBELN_BILLING NVARCHAR(10),

POSNR INTEGER,

    POSNR_BILLING INTEGER,

MATNR NVARCHAR(10),

NETWR DECIMAL(15,2)

);


INSERT INTO SalesOrders VALUES ('1001', 10, 'MAT001', 100.00);

INSERT INTO SalesOrders VALUES ('1002', 20, 'MAT002', 200.00);

 

INSERT INTO BillingItems VALUES ('1001', 10, 1, 100.00);

INSERT INTO BillingItems VALUES ('1002', 20, 2, 200.00);

 

Adım 2: HANA Prosedürü Oluşturma

HANA Studio veya SQL Editor gibi araçlar aracılığıyla, veri aktarımını gerçekleştirecek bir HANA prosedürü oluşturun. Bu prosedür, veri tabloları arasında ilişki kurarak ve belirli iş mantığını uygulayarak veri aktarımını gerçekleştirecektir. Örneğin:


CREATE PROCEDURE INSERT_SALES_DATA ()

LANGUAGE SQLSCRIPT

AS

BEGIN

INSERT INTO SALES_TABLE (VBELN, POSNR, VBELN_BILLING, POSNR_BILLING, MATNR, NETWR)

SELECT SO.VBELN_SALES, SO.POSNR_SALES, BI.VBELN_BILLING, BI.POSNR_BILLING SO.MATNR, SO.NETWR

FROM SalesOrders SO

INNER JOIN BillingItems BI ON SO.VBELN_SALES = VBELN.POSNR_SALES and SO.POSNR_SALES = BI.POSNR_SALES;

END;

 

Adım 3: SAP BW'de Method Oluşturma ve Çağırma

SAP BW ortamında, SE24 aracılığıyla bir method oluşturarak HANA'da oluşturduğunuz prosedürü çağırabilirsiniz. Bu method, veri aktarımını gerçekleştirmek için HANA prosedürünü çağırır ve SAP BW ortamında veri işleme sürelerini optimize eder. Örneğin:

  METHOD call_insert_sales_data BY DATABASE PROCEDURE
                               
FOR ADB
                               
LANGUAGE SQLSCRIPT.
   
CALL SYS.INSERT_SALES_DATA;
ENDMETHOD.

Bu adımlar, veri aktarımını optimize etmenin ve SAP BW ortamında HANA'nın gücünden faydalanmanın anahtarıdır