cancel
Showing results for 
Search instead for 
Did you mean: 

Transaction Notification / Socio de Negocio

douglas_marroquin
Participant
0 Kudos

set @Duplicado=

(select COUNT(U_Registro) from OCRD T0  group by T0.U_Registro, T0.CardType  having T0.U_Registro= @list_of_cols_val_tab_del and T0.cardType='C' )

             

              if @Duplicado >1   

              begin

                    select @error =2

                    select @error_message = 'Número de Registro ya  existe'

             end

Buenos días,

estoy tratando de modificar el TN pero no me logra validar,

lo que necesito hacer es lo siguiente:

el campo de usuario U_Registro guarda un número único del SN y quiero validar que no coloquen ese número repetido.

Muhas Gracias.

No sé que estoy haciendo mal.

Pasen buen día

Accepted Solutions (1)

Accepted Solutions (1)

former_member413321
Contributor
0 Kudos

En la variable de Lista, lo que viene es el código del cliente. No tu código.

Por lo que el código que necesitas sería como este.

set @Duplicado=

(select COUNT(U_Registro) from OCRD T0

Where T0.U_Registro in (select T1.U_Registro from OCRD T1

                                         Where T1.CardCode = @list_of_cols_val_tab_del and T0.cardType='C')

Answers (2)

Answers (2)

douglas_marroquin
Participant

Gracias Alejandro,

así lo esta haciendo pero se activaba siempre

este es el query original que devuelve si hay duplicados

select COUNT(U_Registro) from OCRD t0 group by t0.U_Registro,  T0.CardType  having T0.U_Registros='44455' and T0.CardType='C'

Gracias por tu tiempo.

Saludos

former_member413321
Contributor
0 Kudos

2 opciones te doy.

1. Verifica cual es el contenido de la variable @list_of_cols_val_tab_del hacienda que el mensaje de error que regresa sea el contenido de la variable.

2. En lugar de utilizer el Having, coloca eso en el Where.

select COUNT(U_Registro) from OCRD t0 Where T0.U_Registros='44455' and T0.CardType='C' group by t0.U_Registro,  T0.CardType

douglas_marroquin
Participant
0 Kudos

Gracias Alejandro,

Te confirmo que me funciona el primer post que me enviaste.

Gracias por tu tiempo.

Saludos.

Former Member
0 Kudos

Buen dia necesito validar, que al crear un SN, el codigo (cardcode)  no sea de esta forma 'C-' ,,

el orden que llevamos actualmente es asi    C000001, C000002, etc.

Saludos

former_member413321
Contributor
0 Kudos

Hola,

     Debes utilizar CharIndex (ValorBuscado, Valor, IniciaBusqueda) entonces haces lo siguiente:

Declare @Pos int

select @Pos = CHARINDEX('C-',CardCode, 0)

If @Pos > 0 then 'Error'

Cuando charindex devuelve cero es que no lo encontro.

Former Member
0 Kudos

Gracias Alejandro, funcionando al 100%