Ir al contenido


Foto

como pongo un edit en estilo millares


  • Por favor identifícate para responder
6 respuestas en este tema

#1 amell2020

amell2020

    Advanced Member

  • Miembros
  • PipPipPip
  • 340 mensajes
  • LocationEn un solo Lugar

Escrito 27 noviembre 2011 - 09:09

hola favor ayuda amigos como puedo poner edit que refleje los datos millares ejemplo: 10,000.00.

porque yo estoy usando sql Server y el tipo de datos de esa columna es tipo money y el valor que se guarda es de esta forma 1000.00 me gustaria que como hacer para que guarde los datos de la forma millares como puse en el ejemplo.

  • 0

#2 poliburro

poliburro

    Advanced Member

  • Administrador
  • 4.945 mensajes
  • LocationMéxico

Escrito 27 noviembre 2011 - 09:47

podrías pasar el valor con el formato de la siguiente manera:



delphi
  1. Edit1.txt := format('###,###,##0.00#,dataset.fields[].AsCurrency)
  2.  


  • 0

#3 amell2020

amell2020

    Advanced Member

  • Miembros
  • PipPipPip
  • 340 mensajes
  • LocationEn un solo Lugar

Escrito 27 noviembre 2011 - 10:10

Ok primero me gustaria saber donde va ese codigo, otra cosa yo quiero que esos datos aparezcan de esa misma forma en mi columna costo de mi BD, porque ella me lo guarda de esta forma 66555.889
  • 0

#4 felipe

felipe

    Advanced Member

  • Administrador
  • 3.283 mensajes
  • LocationColombia

Escrito 27 noviembre 2011 - 11:32

Entonces lo haces en el dataset, el campo debe tener la propiedad format, allí pones algo como $ ,0 y eso te dará un formato de valor.


Saludos!
  • 0

#5 escafandra

escafandra

    Advanced Member

  • Administrador
  • 4.111 mensajes
  • LocationMadrid - España

Escrito 28 noviembre 2011 - 01:21

Estudia también el uso de TMaskEdit.


Saludos.
  • 0

#6 Jose_Augusto

Jose_Augusto

    Member

  • Miembros
  • PipPip
  • 35 mensajes

Escrito 28 noviembre 2011 - 11:33

Hola,

bueno, leyendo tu problema, comentas que tu campo es de tipo Money y te lo guarda SQL Server de esta forma, 100000.00 revisando mis tablas en los campos money, me lo guarda de la misma forma y hasta el momento no he encontrado la forma en que le agregue la coma, como separadores de millar, al menos que lo ponga de tipo varchar() y desde el programa ya le ponga el $ y la coma, en delphi lo que hago es mostrar una mascara para estos campos.

utilizo dos herramientas que me han servido mucho, quizas haya otras formas mas funcionales, pero a mi me sirve.

la primera es que utilizo los componentes ADO, en los componentes Table y Query, cuando tu le configuras una tabla en el caso del primero o le escribes una consulta en el caso de la query en la propiedad SQL, claro, tambien indicandole la conexion, puedes agregar los campos para usarlos como variables, esto lo haces dando doble clic sobre el componente, sale una pequeña ventana, das clic en esa ventana y seleccionas "Add all Fields" se agregan los campos, seleccionas los campos que son tipo moneda que delphi los maneja como tipo "currency", estas variables por su tipo tienen una propiedad "currency" que es boolean, la pones como true, y con esto ya se le da el formato de moneda, pero solo de forma visible, en reportes y en dbedits, asi se mostrará no quiere decir que cuando le asignes algo tengas que poner el $ y la , porque se hará un caos.

es ahi donde entra la segunda parte, he instalado los componentes JEDI (Joint Endeavor of Delphi Innovators). estas librerias son gratuitas (puede parecer publicidad comercial) este es el sitio de descarga www.delphi-jedi.org  tienes que instalar primero las JCV y despues las JVCL. dentro de las JVCL hay componentes para bases de datos y hay toda una barra de Edits dentro de ellos hay uno que es una maravilla el JvValidateEdit porque tu le dices el formato que vas a trabajar y como lo vas a asignar u operar.


por ejemplo quiero mandar un mensaje en pantalla teniendo un edit tipo JvValidateEdit  que se llame total:
ShowMessage('El total es ' total.AsString);
quiero hacer operaciones aritmeticas

Total.asCurrency := subtotal + Impuesto;

yo antes hacia conversiones con las funciones tipo StrToCurr y CurrtoStr pero en ocasiones me daban problemas el signo $ o la coma, con estos componentes me salto todas estas conversiones.

espero que te sirva de algo mis comentarios






  • 0

#7 enecumene

enecumene

    Webmaster

  • Administrador
  • 7.419 mensajes
  • LocationRepública Dominicana

Escrito 28 noviembre 2011 - 11:43

Jamas, que se entienda desde ahora, Jamas ningun motor de Base de Datos ese tipo de campo va a almacenar el separador de miles, solamente el decimal porque se trata de un campo de tipo numero flotante (FLOAT), si se almacenara el separador de miles como harias las formulas como las calcularia el motor???, pues seria algo bastante ilogico, para eso debes hacerlo desde DELPHI, para ello existe Format, DisplayFormat, etc etc.

Saludos.
  • 0




IP.Board spam blocked by CleanTalk.