CISA FotoGallery

Statistiche

Tot. visite contenuti : 928375
Home Articoli tecnici Funzioni SQL Server Numero ricevuta incrementata

Numero ricevuta incrementata

Questa funzione restituisce il numero della prossima ricevuta del tipo richiesto.

 

Il formato del numero è

A Lettera caratterizzante il tipo di ricevuta

99 Anno richiesto (non per forza dell'anno corrente, si pensi alle ricevute di inizio gennaio riferite all'anno prima)

- un segno di separazione

99999 un incremento in base al tipo di ricevuta

 

USE [PcShop]
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- =============================================
-- Author:        MA
-- Create date: 14707/2010
-- Description:    resituisce il numero di ricevuta in base ai parametri
-- =============================================
ALTER FUNCTION [dbo].[fctRicNum]
(
@nvTipoRic varchar(1),
@intAnno integer
)
RETURNS nchar(9)
AS
BEGIN
DECLARE
@nvRic nchar(9)  --Valore di Ritorno Funzione

SELECT TOP 1 @nvRic= RIGHT(nvDocNum,5) FROM T_Documenti
WHERE LEFT(nvDocNum,1) = @nvTipoRic
AND YEAR(sdDel) = @intAnno
ORDER BY RIGHT(nvDocNum,5)

IF @nvRic IS NULL
SET @nvRic = @nvTipoRic + convert(nvarchar(2),RIGHT(@intAnno,2)) + '-00001'
ELSE
SET @nvRic = @nvTipoRic + convert(nvarchar(2),RIGHT(@intAnno,2)) + '-' +  RIGHT('00000' + CONVERT(varchar, @nvRic+1),5)


RETURN @nvRic

END