operar con decimales sumar y multiplicar

Colapsar
X
 
  • Tiempo
  • Mostrar
Limpiar Todo
nuevos mensajes
  • Jacobo
    Member
    • may
    • 58

    #1

    operar con decimales sumar y multiplicar

    Hola

    ya se que es una cosa básica pero no me acuerdo

    como haría con este código para que funcionara

    w_alv_outtab-tipo_impositivo = ( w_tipos_impositivos-taxrate * 0,01 ) +
    W_ALV_OUTTAB-RENTA_ACTUAL + W_ALV_OUTTAB-RENTA +
    W_ALV_OUTTAB-RENTA_GARAJE + W_ALV_OUTTAB-GASTOS_COMUNES.

    tipo_impositivo y taxrate es de tipo decimal y los demas de tipo curr

    si le pongo un 5 o sea un entero en vez de 0,01 funciona,cual es el error?
  • Mauricio Hidalgo
    Senior Member
    • may
    • 481

    #2
    Marque el atributo "Calculo de coma fija." en su programa.

    Saludos

    Comentario

    • Jacobo
      Member
      • may
      • 58

      #3
      Originalmente publicado por Mauricio Hidalgo
      Marque el atributo "Calculo de coma fija." en su programa.

      Saludos
      Está marcado pero sigue sin funcionar

      Saludos

      Comentario

      • Mauricio Hidalgo
        Senior Member
        • may
        • 481

        #4
        A ver aclaremos el error es de cálculo obtenido o no te compila cuando pones 0,01. Si es esto último, la expresión debe decir:

        w_alv_outtab-tipo_impositivo = ( w_tipos_impositivos-taxrate * '0.01' ) +
        W_ALV_OUTTAB-RENTA_ACTUAL + W_ALV_OUTTAB-RENTA +
        W_ALV_OUTTAB-RENTA_GARAJE + W_ALV_OUTTAB-GASTOS_COMUNES.

        saludos

        Comentario

        • Jacobo
          Member
          • may
          • 58

          #5
          Originalmente publicado por Mauricio Hidalgo
          A ver aclaremos el error es de cálculo obtenido o no te compila cuando pones 0,01. Si es esto último, la expresión debe decir:

          w_alv_outtab-tipo_impositivo = ( w_tipos_impositivos-taxrate * '0.01' ) +
          W_ALV_OUTTAB-RENTA_ACTUAL + W_ALV_OUTTAB-RENTA +
          W_ALV_OUTTAB-RENTA_GARAJE + W_ALV_OUTTAB-GASTOS_COMUNES.

          saludos
          Me compila asi pero me da un dump

          esta es la descripción:

          An exception occurred that is explained in detail below.
          The exception, which is assigned to class 'CX_SY_CONVERSION_NO_NUMBER', was not
          caught in
          procedure "F_SALIDA_DATOS" "(FORM)", nor was it propagated by a RAISING clause.
          Since the caller of the procedure could not have anticipated that the
          exception would occur, the current program is terminated.
          The reason for the exception is:
          The program attempted to interpret the value "0,01" as a number, but
          since the value contravenes the rules for correct number formats,
          this was not possible.

          Algo tendrá que ver con los tipos o algo asi

          Comentario

          • Mauricio Hidalgo
            Senior Member
            • may
            • 481

            #6
            Ahora tienes el problema en otra parte del programa. Debugea el programa para que identifiques en donde se está produciendo el error.

            Comentario

            Trabajando...