Principales respuestas
Problema JQgrid suma columna

Pregunta
-
Hola.
Mi problema es que tengo unas columnas con unos formatos, concretamente la columna que quiero sumar tiene un formato de un "." cada 3 cifras (5.000) y cada vez que quiero sumar me toma el punto como una coma y si tengo que sumar 5.000 y 5 me da como resultado 10. Si desactivo el formato de la columna me lo suma sin problema pero querría que el formato se mantuviese.
Así que necesitaba saber como poder hacer que al sumar el punto no lo tome como coma, o que al tomar los datos el método 'sum' los tome sin formato.Mi código para ello sería:
var colSum = $grid.jqGrid('getCol','columna3',false,'sum'); $grid.jqGrid('footerData','set',{columna2: 'Total: ' , columna3: colSum},false);
Gracias
Respuestas
-
hola
que localization estas asignando al jqgrid ? porque la config que tome serala que aplique la puntualcion
jqGrid Loading Data - Localization
veras varios .js de nombre grid.locale-xx.js
en donde xx es la cultura que aplicara, deberias validar cual estas asignando para asi definir si toma el punto o la coma como decimal
saludos
Leandro Tuttini
Blog
MVP Profile
Buenos Aires
Argentina- Propuesto como respuesta Joyce_ACModerator lunes, 22 de mayo de 2017 17:20
- Marcado como respuesta Joyce_ACModerator martes, 23 de mayo de 2017 21:38
-
Encontré la solución y por si alguien más le interesa la pondré aquí.
Para sobrescribir las opciones de formato predeterminadas del archivo de idioma del que habló arriba Leandro
Tuttini tenemos que ir a la parte de código donde tenemos el ColModel, y en la columna que tenía el
problema añadir este código:
formatter:'number',
formatoptions:{thousandsSeparator: ".",decimalSeparator:",", decimalPlaces: 2},Bueno pongo este porque es como me interesa a mí, cada uno pondrá el que le haga falta.
Buen días y gracias Leandro- Marcado como respuesta Joyce_ACModerator martes, 23 de mayo de 2017 21:38
Todas las respuestas
-
hola
que localization estas asignando al jqgrid ? porque la config que tome serala que aplique la puntualcion
jqGrid Loading Data - Localization
veras varios .js de nombre grid.locale-xx.js
en donde xx es la cultura que aplicara, deberias validar cual estas asignando para asi definir si toma el punto o la coma como decimal
saludos
Leandro Tuttini
Blog
MVP Profile
Buenos Aires
Argentina- Propuesto como respuesta Joyce_ACModerator lunes, 22 de mayo de 2017 17:20
- Marcado como respuesta Joyce_ACModerator martes, 23 de mayo de 2017 21:38
-
hola
que localization estas asignando al jqgrid ? porque la config que tome serala que aplique la puntualcion
jqGrid Loading Data - Localization
veras varios .js de nombre grid.locale-xx.js
en donde xx es la cultura que aplicara, deberias validar cual estas asignando para asi definir si toma el punto o la coma como decimal
saludos
Leandro Tuttini
Blog
MVP Profile
Buenos Aires
ArgentinaHola
Lo primero gracias por contestar, lo segundo es que empecé hace 4 días con jquery y concretamente con jqgrid así que ando algo perdido.
Para especificar diré que es una práctica sobre un ejercicio hecho por otra persona y que es parte de una jsp con javascript.
En la jsp no hay nada parecido a grid.locale-xx.js Lo más parecido que hay es en el controlador de la jsp una llamada a la librería java.util.Locale. la aplicación está hecha en España así que supongo que si el grid.locale-xx existe en algún lugar que no encuentro (porque ando muy verde que acabo de empezar) tendría que ser o -es o -gl (España o Galicia).Se me olvidó comentar y es algo muy importante que supongo que cambiará tu posible respuesta es que los fomatos a las columnas se las doy "yo", es decir la columna llama a una función para que le dé formato
index:'Columna3',
editable:false,
hidden:false,
align:'right',
resizable:false,
width:'140px' ,
formatter: precise_round
},y precise_round es una función que usa una librería de java
function precise_round(num) {
return $.fmatter.util.NumberFormat(Math.round(num), $.jgrid.formatter.integer);
}Si hay algo más que se pueda decir de la aplicación para que me puedas ayudar, lo que necesites ;)
Gracias -
Encontré la solución y por si alguien más le interesa la pondré aquí.
Para sobrescribir las opciones de formato predeterminadas del archivo de idioma del que habló arriba Leandro
Tuttini tenemos que ir a la parte de código donde tenemos el ColModel, y en la columna que tenía el
problema añadir este código:
formatter:'number',
formatoptions:{thousandsSeparator: ".",decimalSeparator:",", decimalPlaces: 2},Bueno pongo este porque es como me interesa a mí, cada uno pondrá el que le haga falta.
Buen días y gracias Leandro- Marcado como respuesta Joyce_ACModerator martes, 23 de mayo de 2017 21:38
-
Hola MaNueLiNe,
Gracias por visitar los foros y compartir con nosotros tu solución.
Saludos
Joyce
__________________________________________________________________________________________
Por favor, recuerde "Marcar como respuesta" las respuestas que hayan resuelto su problema, hace que sea más fácil para los otros visitantes encontrar la solución más tarde. Microsoft ofrece este servicio de forma gratuita, con la finalidad de ayudar a los usuarios y la ampliación de la base de datos de conocimientos relacionados con los productos y tecnologías de Microsoft. Este contenido es proporcionado "tal cual" y no implica ninguna responsabilidad de parte de Microsoft.