Použití uložené procedury SQL

Uložená procedura je poskytována jako součást datového rozhraní. Tuto uloženou proceduru byste měli zvážit, pokud potřebujete vložit dva nebo více záznamů do tabulky EcENTITY A tyto záznamy mají logickou asociaci/e. Jméno: Parametry:

• @EntName NVARCHAR (100)
• @BulkID INT = -1 OUT
• @EntClassID NVARCHAR (10) = 'ITEM'

Vrácená hodnota: nový záznam Id

Příklad č. 1 - vložení jednoho záznamu EcENTITY

slouží k přenosu údajů o vytvořené nebo aktualizované zakoupené položce z ERP do Vaultu.

DECLARE     @EntName nvarchar(100), @EntId bigint;

SET @EntName = 'PurchItem 987';
EXEC @EntId = EcWriteEntity @EntName
UPDATE EcENTITY SET category = 'Purchased', txt00 = 'BOLT M10 x 25mm, GOLD-COATED', comm_status = 0 WHERE id = @EntId;
SELECT @EntId;

Příklad č. 2 - vložení dvou přidružených záznamů EcENTITY

slouží k vytvoření odpovědi na požadavek na novou zakoupenou položku.

DECLARE @BulkID int, @EntName nvarchar(100), @EntClassID nvarchar(10) 
DECLARE @CldId bigint, @ParId bigint;

SET @BulkID = NULL;

SET @EntName = 'PurchItem 123';
EXEC @CldId = EcWriteEntity @EntName, @BulkID OUTPUT
UPDATE EcENTITY SET category = N'Purchased' WHERE id = @CldId;

SET @EntClassID = 'CUSTENT';
SET @EntName = 'PurchRequest';
EXEC @ParId = EcWriteEntity @EntName, @BulkID OUTPUT, @EntClassID 
UPDATE EcENTITY SET
guid = '25737496-b00d-4f2f-a898-2c7df05250d6',
lfcycst_name = N'Approved' 
WHERE id = @ParId;

INSERT INTO EcASSOC
(ent_id_parent, ent_id_child, assoc_type) 
VALUES
(@ParId, @CldId, 30);

UPDATE EcENTITY SET comm_status = 0 WHERE bulk_id = @BulkID; 
SELECT @BulkID;