Avalados por :

Como validar o campo de referência do OINV para evitar duplicatas de valores.

  • Creado 01/03/2024
  • Modificado 01/03/2024
  • 1 Vistas
0
Cargando...

Olá a todos,

Ajuda na validação do campo de referência do OINV para evitar duplicatas ou repetições de valores.

Tentei desta maneira:

Mas não está validando corretamente...

if @object_type = '13' e (@transaction_type = 'A' ou @transaction_type = 'U')

BEGIN

DECLARE @numref AS varchar(100)

DECLARE @ref AS int

SET @ref = 0

SET @numref = (SELECT x.NumAtCard FROM OINV x WHERE x.DocEntry=@list_of_cols_val_tab_del )

SET @ref = (SELECT COUNT(xx.NumAtCard) FROM OINV xx WHERE UPPER(xx.NumAtCard) = UPPER(@numref))

SET @ref = @ref - 1

IF @ref >= 0 OU @numref É NULO

BEGIN

SET @error = '9998'

SET @error_message = 'O Número da Nota de Remessa [ '+@numref+' ] já existe ou está em branco, por favor verifique '+CAST(@ref AS varchar(10))

END

Desde já agradeço sua valiosa ajuda.

Atenciosamente: Edwin

Pedro Pascal
Se unió el 07/03/2018
Pinterest
Telegram
Linkedin
Whatsapp

4 Respuestas

0
Cargando...

Seria mais fácil, na minha opinião, habilitar a opção de bloquear a referência do cliente em Gestão - Inicialização do sistema - Parametrizações de documento, aba Por Documento. Lá você seleciona Fatura e depois escolhe "Bloquear liberação/recibo" na seção "Se ocorrer uma duplicação do número de referência do cliente".

Atenciosamente,

Juan Carlos.

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019
0
Cargando...

Olá Alessandro,

Já revisei o código, testei e funcionou. Obrigado.

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019
0
Cargando...

Perfeito, vou revisar...

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019
0
Cargando...

Veja se isso te ajuda de alguma forma,

if @object_type = '13' and (@transaction_type in ('A' ,'U'))begindeclare @Numref as varchar (100)if (@object_type = '13')beginselect @Numref = NumAtCard from OINV T0 where docentry = @list_of_cols_Val_tab_delbeginif (@Numref is not null) or (@Numref is null)beginif 1!= (select count (docentry) from OINV  where (NumatCard = @Numref) )beginselect @error =9998select @error_message = 'O Número da Fatura ['+@Numref+'] já existe ou está em branco, por favor verifique'EndEndEndEndEnd

Saudações.

Alessandro.

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019

contacto@primeinstitute.com

(+51) 1641 9379
(+57) 1489 6964

© 2024 Copyright. Todos los derechos reservados.

Desarrollado por Prime Institute

¡Hola! Soy Diana, asesora académica de Prime Institute, indícame en que curso estas interesado, saludos!
Hola ¿Puedo ayudarte?