Autor
|
Tema: Decimales en datagrid y exportar a pdf c# (Leído 8,459 veces)
|
joalbela
Desconectado
Mensajes: 30
|
Hola tengo un inconveniente, lo que pasa es que estoy trayendo informacion d euna base de datos a un datagrid y luego las exporto a pdf pero necesito estrablecerle los decimales por ejemplo tengo este precio de un articulo 638500 y necesito que el decimal se me coloque en la siguiente posicion 6385,00 sin que a este valor traido de la base de datos me coloque ams ceros sino que a los que trae los separe por decimales y que al exportarlos al pdf me generen igual
|
|
|
En línea
|
Jorge MB
|
|
|
SRVAM
Desconectado
Mensajes: 130
|
mmm... y no seria mas facil que en base de datos guardases la cantidad como valor decimal?? asi cuando los recuperes el datagrid cogera el valor tal y como lo tengas, en este caso seria un Decimal. Tambien puedes insertarle al string la coma en el lugar que quieras, y entonces hacer un Decimal.Parse(String), pero lo que veo mejor es tratar directamente el numero como un Decimal en base de datos. Si no, lo que puedes hacer es una chapuza en plan coger con Substring y dividir la cantidad en la parte entera y la parte decimal, y luego los concatenas añadiendo la "coma". Pero esto lo veo una chapuza... no se si a alguien se le ocurre alguna idea mejor xDD Un saludo
|
|
|
En línea
|
C# Programmer
-Estudiante MCTS .NET Framework 3.5-
|
|
|
joalbela
Desconectado
Mensajes: 30
|
Amigo verificando las bases de datos estan los valores con los decimales pero al datagrid no me los trae como estan alla, los estoy trayendo de una base de datos de informix a c# como hago para que el datagrid me los tome y pueda exportarlos a pdf con el valor y el decimal, si quieres te muestro el codigo que genera la consulta
|
|
« Última modificación: 14 Marzo 2011, 03:27 am por joalbela »
|
En línea
|
Jorge MB
|
|
|
SRVAM
Desconectado
Mensajes: 130
|
mm... en teoria, una vez que tu recuperas el valor de la base de datos, lo muestras en el datagrid como un string, y deberia mostrar tambien la coma... yo es que pensaba que los almacenabas como string en la BD.
pon el codigo para que se peuda ver mejor el problema, y si no yo, otra persona tendra alguna idea para solucionarlo.
Si siemrpe usas solamente 2 posiciones decimales, peudes hacer lo que te dije arriba, insertar una "," que separe la parte entera de la decima a la hora de mostrarlo. puesto que tanto en el datagrid, como a la hora de exportar a PDF, lo que se necesita es un String.
No obstante, a ver si con el codigo se puede hayar una solucion mas profesional.
Un saludo
|
|
|
En línea
|
C# Programmer
-Estudiante MCTS .NET Framework 3.5-
|
|
|
joalbela
Desconectado
Mensajes: 30
|
IfxDataAdapter dt = new IfxDataAdapter (" SELECT cdgo_prdcto COD,nmbre_prdcto DESCRIPCION,csto_rpscion CR, " + " clfccion_prmnnte P, clfccion_tmpral T,cdgo_brra BARRA " + " from prdcto " + " where estdo = 'A' " + " order by 2 ", conexion); DataSet dsdatos = new DataSet (); dt.Fill(dsdatos,"Datos"); this.dataGridView1.DataMember = "Datos"; this.dataGridView1.DataSource = dsdatos; }
donde necesito agregale el decimal es en costo reposicion
|
|
|
En línea
|
Jorge MB
|
|
|
SRVAM
Desconectado
Mensajes: 130
|
he pensado que quiza si tu mismo defines las columnas que vas a mostrar en el datatable, y dices que el tipo de la columna costo reposicion es Decimal, te lo mostraria bien, o eso creo. A lo que me refiero es a esto: DS = new DataSet ("dsClients"); //main table definition DataTable mainTable = new DataTable ("clients");DataColumnCollection cols = mainTable.Columns; DataColumn column = cols .Add("clientcode", typeof(Int32 ));column.AllowDBNull = false; cols .Add("clientacctname", typeof(String)).MaxLength = 60;cols .Add("primarycontact", typeof(String)).MaxLength = 30;cols .Add("primaddrcode", typeof(String)).MaxLength = 10;cols .Add("initialamt", typeof(Decimal));cols .Add("createdate", typeof(System.DateTime)); //primary key mainTable .PrimaryKey = new DataColumn [] {cols ["clientcode"]}; //add table to DataSet DS.Tables.Add(mainTable);
Aqui te dejo un enlace donde se utiliza el proveedor de datos de informix y C#, espero que algo de lo que hay ahi te sirva. http://www.ibm.com/developerworks/data/library/techarticle/dm-0510durity/index.htmlUn saludo!
|
|
|
En línea
|
C# Programmer
-Estudiante MCTS .NET Framework 3.5-
|
|
|
joalbela
Desconectado
Mensajes: 30
|
Amigo muchas gracias por tu ayuda mañana pruebo lo que me recomendaste y te comento.
Muchas Gracias
|
|
|
En línea
|
Jorge MB
|
|
|
SRVAM
Desconectado
Mensajes: 130
|
de nada amigo, si aun asi no funciona seguiremos probando a ver si encontramos solucion al problema
|
|
|
En línea
|
C# Programmer
-Estudiante MCTS .NET Framework 3.5-
|
|
|
joalbela
Desconectado
Mensajes: 30
|
No amigo asi no me da
|
|
|
En línea
|
Jorge MB
|
|
|
SRVAM
Desconectado
Mensajes: 130
|
a mi no se me ocurre nada mas... a ver si a algun otro compañero de por aqui se le ocurre alguna idea que pueda ayudarte un saludo
|
|
|
En línea
|
C# Programmer
-Estudiante MCTS .NET Framework 3.5-
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
Problema con decimales
Programación Visual Basic
|
dekland
|
5
|
2,506
|
3 Marzo 2006, 19:20 pm
por dekland
|
|
|
decimales en VB
Programación Visual Basic
|
kakinets
|
1
|
1,632
|
2 Junio 2007, 01:36 am
por <?BRoWLi?>
|
|
|
Ayuda con uso de decimales
.NET (C#, VB.NET, ASP)
|
eliezeralpr
|
4
|
4,716
|
27 Abril 2009, 23:02 pm
por AntonioMeucci
|
|
|
Decimales y Redondeo
Java
|
alexmacan
|
2
|
6,428
|
18 Diciembre 2009, 20:10 pm
por alexmacan
|
|
|
Ayuda con tipo de letra al exportar un datagrid a pdf
.NET (C#, VB.NET, ASP)
|
joalbela
|
6
|
7,751
|
9 Marzo 2011, 20:53 pm
por [D4N93R]
|
|