sozsoft-platform/configs/seeds/postgres/object/Inv_P_TransferNumber.sql

18 lines
695 B
MySQL
Raw Normal View History

2026-10-12 21:43:05 +00:00
-- Numarası olmayan transfer belgesine operasyon türünün numaratöründen (Inv_T_OperationType.SequenceName) numara verir.
CREATE OR REPLACE PROCEDURE public."Inv_P_TransferNumber"(p_id uuid)
LANGUAGE plpgsql AS $$
DECLARE v_seq varchar(128); v_tenant uuid; v_no varchar(128);
BEGIN
SELECT ot."SequenceName", t."TenantId" INTO v_seq, v_tenant
FROM "Inv_T_Transfer" t
INNER JOIN "Inv_T_OperationType" ot ON ot."Id" = t."OperationTypeId"
WHERE t."Id" = p_id AND t."TransferNo" IS NULL;
IF v_seq IS NULL THEN
RETURN;
END IF;
CALL public."Adm_P_SequenceNext"(v_seq, v_tenant, v_no);
UPDATE "Inv_T_Transfer" SET "TransferNo" = left(v_no, 32) WHERE "Id" = p_id;
END;
$$;