Skip to Content

Problemas en campos CashSum, CreditSum, CheckSum y TrsfrSum en procedimiento almacenado

Buen día para todos.

Saben, he estado intentando crear un bloqueo mediante el transaction notificaction donde el usuario no pueda crear un pago con más de un medio de pago pero me he topado con que el sistema me arroja el siguiente error al hacer alusión a los campos mencionados en el titulo de la discusión.

El error es el siguiente y una muestra sencilla de mi código:

Se ha producido un error interno (8114)  [Mensaje 131-183]

If @transaction_type in ('A', 'U') AND @object_type = '24'

     BEGIN

          DECLARE @EFECTIVO AS Numeric(19,6)

          SET @EFECTIVO = (Select IsNull(T0.CashSum,0) FROM ORCT T0 WHERE T0.DocEntry = @list_of_cols_val_tab_del)

          SET @error = 9

          SET @error_message = 'Valor Obtenido: ' + @EFECTIVO

     END

De esta manera pruebo el valor que estoy obteniendo de la variable pero lo único que obtengo es el error interno mencionado. Epero alguien me pueda ayudar sobre este error o bien sugerirme alternativas para lograr el objetivo de mi bloqueo.

Gracias.

Add comment
10|10000 characters needed characters exceeded

  • Get RSS Feed

1 Answer

  • Best Answer
    avatar image
    Former Member
    Dec 31, 2014 at 10:23 PM

    Hola, Gerardo

    Pudiera ser por el tipo de dato de tu variable @Efectivo. La declaras como numèrica pero la estàs agregando a una variable tipo nvarchar (@error_message).

    Intenta hacer la conversiòn de @Efectivo a nvarchar y luego haz nuevas pruebas.

    Saludos,

    JC.

    Add comment
    10|10000 characters needed characters exceeded

    • Hola Juan Carlos.

      Gracias por el seguimiento, la verdad busqué otra manera de plasmar el código y me funcionó de maravilla para el fin buscado.

      La manera en que se plasmo el código es validando por medio de un IF las cantidades de los campos mencionados, evitando así la declaración de variables.

      Gracias por el apoyo.