sumar campo y guardar en un edit
hola, miren necesito sumar un cmapo de una tabla a traves de sum
y luego ese resultado guardar o asignar a un edit. el campo es de tipo money Select sum(MONTO) as Monto from TABLAPAGO where CODCLIENTE = 1 '+ ahora nose como asignarlo al Monto a un edit o dbedit. de que manera seria? se que luego se puede sacar el signo $ del edit si es que se puede asignar. edit1.text:= Query1.Fields[0].Value; Estaria Bien asi?? gracias a todos |
Cita:
También puedes acceder por el nombre de campo.
|
hola
edit1.text:= Query1.FieldByName('Monto').AsString; la suma monto es tipo money, sera que al final va .asstring? gracias |
Hola.
Si decidís hacerlo con Value, tenés que hacer la conversíon correspondiente:
En el caso que uses el nombre de campo como te explicó Neftali, el tipo de conversión esta garantizada con AsString. Pero siempre se debe convertir un valor numérico del tipo que corresponda, al asignarlo a una variable/propiedad de tipo string. Saludos.:) |
hola tambien vi que se puede usar un dbedt y asociarlo a un datasource q ala vez se asocia al tquery, pero no se en que propiedad se coloca SUM OF y me sume una columna y me aparezca en el dbedit, gracais , saben como seria?
|
Hola.
Debés referenciar al sinónimo de sum(MONTO) que en tu caso es: Monto.
Saludos. :) |
Hola.
Disculpá Gonza, ahora veo que lo que querés es asignar Monto a un TDBEdit, no a un TEdit. En ese caso, tenés que asignar lo siguiente. Puede ser en el evento OnCreate del form, como ejemplo:
Saludos. :) |
Hola
Amigo recapacita, estas seguro que en el evento OnCreate ???.:confused: Saludos |
Cita:
Saludos. :) |
Amigo Caral, se a que te estás referiendo con tu observación :), ya que si llama Query con otra sentencia que no declare el campo 'Monto' va a generar error. Pero limitándome al ejemplo funciona.
De todas formas y sin lugar a dudas creo que estás acertado, no es seguro hubicar el código ahí. ;) Saludos. :) |
Cita:
|
Cita:
Saludos. :) |
otra opcion es:
Quer1.SQL.Text:='Select sum(MONTO) as Monto from TABLAPAGO where CODCLIENTE = :numeroclie '; Query1.Params[0].asinteger=1; Query1.open; edit1.text:= Floattostr(Query1.fields[0].AsFloat);//no hace falta el alias tambien podes usar un currencyedit y asignar el campo como float a la propiedad value del currency respecto de donde quieres q vaya tu codigo es depende de como lo necesites, en mi caso por ejemplo abro todas mis consultas en el OnCreate y si es algo especifico lo ubico en el Onshow cuando ya esta creado y lo llama otra form. Si no queres sorpresas pone todo en un bloque try except. Nota: No me gusta usar los DBEdits, prefiero tener el control de lo q se escribe, (desde mi punto de vista no recargo el servidor manteniendo conexiones activas) y usando consultas (puro SQL) y luego asignado a los ditintos componentes, ademas de ahorrar en componentes, no hace mal escribir un poco je |
La franja horaria es GMT +2. Ahora son las 02:53:25. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi