Visual Basic - Decimal de BD a Datagrid

Life is soft - evento anual de software empresarial
 
Vista:
sin imagen de perfil
Val: 40
Ha disminuido su posición en 2 puestos en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

Decimal de BD a Datagrid

Publicado por fran (16 intervenciones) el 10/09/2020 14:08:22
Buenas, estoy mirando por el foro y no me funciona lo que leo, uso VB13.

Yo guardo un numero con decimal en una base de datos , y al recuperarlo en un Gridview, no me lo muestra.

si es 2,95 me muestra 295

uso

1
DataGridViewarticulos.Columns(2).DefaultCellStyle.Format = "N2"

y me pone 295.00

alguien sabria decirme el por que?

NO creo el datagrid por codigo, lo lleno directamente

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Adaptador = New Finisar.SQLite.SQLiteDataAdapter("select * from Articulos where Familia = '" & Familia_pulsadas & "' ORDER BY Posicion Asc", Conexion)  ' V8  para coger posicion
 
Adaptador.Fill(ds)
 
 
 
If ds.Tables(0).Rows.Count > 0 Then
 
    DataGridViewarticulos.DataSource = ds.Tables(0)
 
Else
    DataGridViewarticulos.DataSource = Nothing
End If
 
 
Conexion.Close()
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Andres Leonardo
Val: 3.117
Oro
Ha mantenido su posición en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

Decimal de BD a Datagrid

Publicado por Andres Leonardo (1798 intervenciones) el 10/09/2020 15:52:02
Si haces la consulta directo a la base como esta el numero , cuidado en la base el campo esta detallado como Entero.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil
Val: 40
Ha disminuido su posición en 2 puestos en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

Decimal de BD a Datagrid

Publicado por fran (16 intervenciones) el 12/09/2020 13:59:42
Gracias por comentar, pero no entendí que me quieres decir, últimamente estoy algo espeso jaja.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 355
Bronce
Ha mantenido su posición en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

Decimal de BD a Datagrid

Publicado por raul (160 intervenciones) el 11/09/2020 15:35:22
Otro de los problemas aparte de los que te comento Leonardo, puede estar dado por como interpreta tu programa los puntos y las comas.
Veras a nivel mundial los separadores decimales y miliares no son los mismos. Microsoft resolvio su problema muy simple ya que WINDOWS y la OFFICE comparten las misma API e interpretan como un guante a una mano los puntos y las comas pero cuando se trabaja en programación se deben crear las rutinas necesarias para que nuestros objetos se adapten a las expecificaciones de WINDOWS. Como saberlo muy facil.

Prueba que tu programa FALLE o sea que escribas 2.95 y el guarde 295... busca la configuración de windows (click derecho => cambiar hora y fecha => cambiar calendario) y busca la pestaña "Números" e invierte el saparador decimal y el separador miliar.

Vuelbe a probar tu programa... si esta vez funciona bien, entonces ya sabes el problema y te tocara editar las mascaras de entrada de datos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
2
Comentar
sin imagen de perfil
Val: 40
Ha disminuido su posición en 2 puestos en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

Decimal de BD a Datagrid

Publicado por fran (16 intervenciones) el 12/09/2020 14:01:34
Hice lo que me comenteas, y la unica diferencia es que en vez de mostrarme 27,00 me lo muestra con un punto 27.00 , os pongo una imagen de como se ve en la base de datos y como se me carga en el datagridview metiendo la linea siguiente

1
2
3
4
5
6
7
8
9
10
If ds.Tables(0).Rows.Count > 0 Then
 
            DataGridViewarticulos.DataSource = ds.Tables(0)
            DataGridViewarticulos.Columns(2).DefaultCellStyle.Format = "N2"
        Else
            DataGridViewarticulos.DataSource = Nothing
        End If
 
 
        Conexion.Close()

y aqui la imagen.

IMAGEN
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 40
Ha disminuido su posición en 2 puestos en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

Decimal de BD a Datagrid

Publicado por fran (16 intervenciones) el 12/09/2020 14:37:10
Estoy probando, y e encontrado el posible error, yo guardo el valor con " comas " , pero al volcarlo al datagrid no me las reconoce.

Si guardo el valor con " puntos" al devolverlo al datagrid si me reconoce que son decimales, con las variables DOUBLES

voy a seguir pro ahí y comento pero creo que esta solucionado así.

Muchas gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Andres Leonardo
Val: 3.117
Oro
Ha mantenido su posición en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

Decimal de BD a Datagrid

Publicado por Andres Leonardo (1798 intervenciones) el 15/09/2020 15:56:54
Es lo que te dijo el compañero, cuando guardes el valor ponle una mascara
es el tema de configuracion regional o quizas algo de la configuracion de access.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar