none
Problemas con Decimales y Miles en Reporte RRS feed

  • Pregunta

  • Saludos

     

    He terminado un Programita En Visual studio 2010, en VB , al momento de mandar el reporte hecho en reporviewer me manda los decimales en coma(,) y los miles en punto(.).

    ya verifique configuracion Reginal en Panel de Control, tambien en los campos del reporte esta configurado de tal manera que me de separador de miles y decimales en configuracion Regional Español, Mexico.

    No se si alguien podria Ayudarme, o haya tenido el mismo detalle

    Gracias

     

    martes, 10 de mayo de 2011 3:39

Respuestas

  • Si, mira, el problema era que al ejecutar el reporte de una Tabla en reportviewer los numeros me mostraba puntos para miles y comas para decimales,

    yo trabajo en la version Visual Studio 2010 español. Si tienes el mismo caso entonces, dentro del diseño del reporte  Report.rdlc como yo trabaje con Tablas Tablix selecciona la celda donde esta el numero le das F4 para que muestre las Propiedades, si buscas detalladamente esta una opcion de Lenguaje y ahi escribes o buscas idioma que necesitas, en mi caso es-MX,

    Espero haber ayudado.

    Gracias a Todos

     

    lunes, 16 de mayo de 2011 3:51

Todas las respuestas

  • hola

    solo para validarlo, no has intentado definir una cultura para la aplicacion

    System.Threading.Thread.CurrentThread.CurrentCulture = new System.Globalization.CultureInfo("es-MX");

     

    lo ideal seria poner esa linea en el Sub Main(), pero sino colcoala en el load del priemr form o el principal que inicia la aplicacion

    se que por ahi fijar una cultura no es lo mejor, pero al menos para validar que no viene por este lado el problema

     

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina


    martes, 10 de mayo de 2011 3:47
  • Gracias Leandro Por Responder

    En este Caso Inicia con una Forma que se llama Menu, y tiene la herramienta MenuStrip,

    el codigo Load queda asi, con la definicion que me dices:

    Private Sub MenuPrincipal_Load(ByVal sender As System.ObjectByVal e As System.EventArgsHandles MyBase.Load
     
            System.Threading.Thread.CurrentThread.CurrentCulture = New System.Globalization.CultureInfo("es-MX")
     
        End Sub
    

    pero los reportes siguen manejando ejemplo 7.210,00

    no se si estoy haciendo algo mal

    Gracias

     

     

    martes, 10 de mayo de 2011 4:10
  • :-)
    Hola,

    ¿Cómo tienes la configuración regional de tu Windows?


    No olvides marcar la respuesta como correcta si te ha sido de utilidad :-)

    [MS-MVP-MCTS]

    Follow me on Facebook or Twitter!

    Mi Perfil MVP en: https://mvp.support.microsoft.com/profile/Lluis
    NUG: http://andorradotnet.com
    Web: http://www.ordeeno.com
    Geeks: http://geeks.ms/blogs/lfranco

    martes, 10 de mayo de 2011 7:54
    Moderador
  • Hola!

     

    Independientemente de la configuración regional (que la deberías revisar para ver que está correcta) en el propio informe puedes modificar esos valores. En los campos numéricos tienes una opción para personalizarlos dándole con el botón derecho sobre ellos, "Dar formato a objeto"

     

    Saludos!

    martes, 10 de mayo de 2011 11:25
  • pero entonces lo quieres con la configuracion de EEUU ?

    porque pense que era al contrario

    cambia a

    System.Threading.Thread.CurrentThread.CurrentCulture = New System.Globalization.CultureInfo("en-US")

     

    de esta forma defines la cultura de EEUU y esta si usa el punto para los decimales


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    martes, 10 de mayo de 2011 12:09
  • Hola, he cambiado la definicion de la cultura a EEUU en la primera forma que es el Menu de mi proyecto, pero sigue de la misma manera, tambien he revisado las Propiedades del informe y esta todo bien, pero sigue mostrandome el informe con miles en punto y decimales en comas.

    seguire revisando, gracias

     

     

    martes, 10 de mayo de 2011 15:36
  • porque no utilizas un replace antes de mandar los datos?

    a = "1.23,56" ' valor

    a = replace(a,".","")

    a= replace(a,",",".")

    a te queda 123.56.

    Yo he tenido problemas con un datagrid al realizar operaciones con numeros, y mi solucion fue esa.

    en el caso que requieras que la coma sea separador de miles, y el punto separador de decimales precisas un replace mas:

    a = replace(a,".",";")

    a= replace(a,",",".")

    a = replace(a,";",",")


    Saludos Maximiliano Ferrari, Uruguay
    martes, 10 de mayo de 2011 17:49
  • Gracias por responder

    Realmente el problema que tengo es en los reportes que hice en reportviewer . ya hice todo lo que me aconsejan y no cambia. en los datagrids esta conforme lo necesito pero cuando llamo el reportviewer me lanza miles en punto y decimales en coma. y lo que necesito es al revez.  ejemplo de  1.000,00   a 1,000.00 ,

    ya verifique configuracion regional y la tengo EEUU para coma como miles y punto para decimales

    tambien inlui esta en la primera form de inicio

    Imports System.Globalization
    
      Private Sub MenuPrincipal_Load(ByVal sender As System.ObjectByVal e As System.EventArgsHandles MyBase.Load
            System.Threading.Thread.CurrentThread.CurrentCulture = New System.Globalization.CultureInfo("en-US")
            System.Threading.Thread.CurrentThread.CurrentCulture.DateTimeFormat.ShortDatePattern = "dd/MM/yyyy"
            System.Threading.Thread.CurrentThread.CurrentCulture.NumberFormat.CurrencyDecimalSeparator = "."
            System.Threading.Thread.CurrentThread.CurrentCulture.NumberFormat.CurrencyGroupSeparator = ","
            System.Threading.Thread.CurrentThread.CurrentCulture.NumberFormat.NumberDecimalSeparator = "."
            System.Threading.Thread.CurrentThread.CurrentCulture.NumberFormat.NumberGroupSeparator = ","
     
     
        End Sub

    ASI me lanza el reporte , y no he podido arreglar ese detalle gracias

      739 100 $ 6.651,00 $ 450,00

    $ 7.101,00    

    miércoles, 11 de mayo de 2011 5:13
  • ¿pero has probado lo que te dije? Botón derecho sobre el campo numérico del informe, y en "Dar formato a objeto" puedes cambiar eso...

     

    Saludos

    miércoles, 11 de mayo de 2011 7:02
  • Si ya lo hice, click derecho al campo de la tabla, entro a propiedades y en numero utilizo Divisa, en Ingles USA donde esta la coma en miles y punto en decimales.
    miércoles, 11 de mayo de 2011 18:51
  • Ya encontré la solución a mi problema. Como realizaba una Consulta a Base de Datos SQL y lo miraba en ReportViewer, usaba Tablix, en la Ventana de Propiedades de Tablix era seleccionar en Lenguaje en-US

    Gracias por su ayuda

     

    jueves, 12 de mayo de 2011 19:24
  • Hey Podrias explicar mejor comoresolvistes tu problema ya que yo tengo el mismo caso, pero ahi lo habia dejado, si podrias explicarlo, gracias
    jueves, 12 de mayo de 2011 22:05
  • Si, mira, el problema era que al ejecutar el reporte de una Tabla en reportviewer los numeros me mostraba puntos para miles y comas para decimales,

    yo trabajo en la version Visual Studio 2010 español. Si tienes el mismo caso entonces, dentro del diseño del reporte  Report.rdlc como yo trabaje con Tablas Tablix selecciona la celda donde esta el numero le das F4 para que muestre las Propiedades, si buscas detalladamente esta una opcion de Lenguaje y ahi escribes o buscas idioma que necesitas, en mi caso es-MX,

    Espero haber ayudado.

    Gracias a Todos

     

    lunes, 16 de mayo de 2011 3:51
  • Muchas Gracias!! me salvaste la vida! y el trabajo! :D
    miércoles, 2 de mayo de 2012 16:27
  • Se le cambia el Languaje a En-US a cada control que deseamos con ese formato

    ejemplo: De 1.000,00 a 1,000.00

    • Editado Tib32 jueves, 24 de diciembre de 2015 20:32
    jueves, 24 de diciembre de 2015 20:32
  • Auque soy de Guatemala, le coloco la opción de es-GQ pero no funciona. Le he colocado la opción es.MX y de esta manera si funciona.

    Saludos.


    William Lickez

    martes, 8 de noviembre de 2016 18:12
  • Te marco como respuesta pero no sale la opción.

    William Lickez

    martes, 8 de noviembre de 2016 18:12
  • A pesar de mucho tiempo estoy realizando un sistema de facturacion y si esta es la respuesta en opciones para la casilla te sale language y alli ases el procedimiento antes mencionado es-MX yo uso visual estudios 2015 C# muy buen aporte saludos y gracias y pueden confiar en este aporte...!

      
    lunes, 3 de julio de 2017 16:39
  • Que pasaria si tengo unos 50 reportes con cientos de campos, tendria que hacer este procedimiento para cada uno de ellos??  no saben de alguna forma de fijar todo el reporte un mismo formato??
    martes, 29 de agosto de 2017 18:26