Generare flux de aprobări
Funcțiile customizate de tipul "Generare flux de aprobări" au fost create cu scopul de a eficientiza crearea și vizualizarea la nivel global a tuturor funcțiilor din spatele aprobărilor aferente fiecărui modul, dar și pentru o tratare unitară a codurilor funcțiilor utilizate în aplicație. După crearea unei funcții customizate de acest tip se va adăuga o aprobare în modulul de interes și se va asocia funcția definită.
Parametru | Tip | Descriere |
---|---|---|
@al_tabel | VARCHAR(6) | ANLUNA, parte din cheia primară a înregistrării asociate |
@pl_tabel | SMALLINT | PCT_LCR, parte din cheia primară a înregistrării asociate |
@id_tabel | NUMERIC(18,0) | ID, parte din cheia primară a înregistrării asociate |
Structura returnată de funcția customizată
Structură | Tip | Descriere |
---|---|---|
retval | NVARCHAR(MAX) | Mesajul de aprobare returnat la îndeplinirea condițiilor |
Exemplu de funcție customizată pentru generarea unui flux de aprobare: Blocare vânzări mărfuri cu ridicata cu adaos procentual < 40%
DECLARE @adaos_pr_max NUMERIC(18,2) = 40.00
SELECT @retval = 'Aprobare validare factura client ' + TRIM(c.seria_doc) + ' '+ TRIM(nr_doc) + '/' + dbo.dtoc(c.data_doc) + ' in valoare de ' + dbo.string(c.tot_val ) + ' ' + TRIM(c.prescdeviz) + ' a clientului ' + c.nume_cli + ' cu ADAOS PROCENTUAL (' + dbo.string(l.adaos_pr) + ') < ' + dbo.string(@adaos_pr_max) + '%.'
FROM cli_view c
INNER JOIN linfactclienti_view l ON c.pct_lcr = l.pl_cli AND c.id = l.id_cli AND c.anluna = l.anluna
WHERE c.anluna = @al_tabel AND c.pct_lcr = @pl_tabel AND c.id = @id_tabel AND c.valid = 0 AND c.anulat = 0
AND l.adaos_pr < @adaos_pr_max AND l.cod_pr LIKE 'F%'