Foros del Web » Programación para mayores de 30 ;) » Programación General » Visual Basic clásico »

suma de colmunas en datagrid (vb6)

Estas en el tema de suma de colmunas en datagrid (vb6) en el foro de Visual Basic clásico en Foros del Web. Hola tengo un datagrid en un form, que es un libro de contabilidad, con 3 columnas la primera es una descripcion, y las otras 2 ...
  #1 (permalink)  
Antiguo 11/07/2006, 22:38
Avatar de Say_No_More  
Fecha de Ingreso: junio-2005
Mensajes: 71
Antigüedad: 18 años, 11 meses
Puntos: 0
suma de colmunas en datagrid (vb6)

Hola tengo un datagrid en un form, que es un libro de contabilidad, con 3 columnas la primera es una descripcion, y las otras 2 son numericas (debe y haber).
la idea es sumar la columna debe y que ese valor se muestre en un label o textbox y lo mismo con la columna haber, para despues sacar la diferencia (saldo). estoy usando el siguiente codigo pero no da resultado, que hago al o que tengo que hacer??
gracias

codigo:


Private Sub Form_Load()
'SACAR EL SALDO DE LA CUENTA CORRIENTE (NO FUNCA TODAVIA)
SQL = "select debe,sum(debe) as db from pagos"
SQL = "select haber,sum(haber) as hbr from pagos"
resulta2 = db - hbr




lblsaldo.Caption = resulta2

If lblsaldo.Caption < "0" Then
lblsaldo.ForeColor = vbRed
Else
lblsaldo.ForeColor = vbBlue
End If

------------------------------------------------------------------------
pd: base de datos: access
conexion: dataenviorment
__________________
:censura: La Entrada es Gratis, La salida.... Vemos :censura:
  #2 (permalink)  
Antiguo 11/07/2006, 23:06
 
Fecha de Ingreso: abril-2004
Mensajes: 192
Antigüedad: 20 años
Puntos: 0
Hola, no soy experto en esto pero veo que está mal la consulta, el sum va en el comienzo de la clausula (corrijanme si me equivoco). por ejemplo:

Código:
SELECT
Sum(campo)
AS Total FROM tabla;
No lo probe, pero creo que esta bien. salu2
__________________
Recursos visual basic
  #3 (permalink)  
Antiguo 11/07/2006, 23:14
Avatar de Bacarra  
Fecha de Ingreso: julio-2006
Ubicación: España
Mensajes: 10
Antigüedad: 17 años, 9 meses
Puntos: 0
Las consultas SQL tienes que ponerlas asi:

SQL = "select sum(debe) as db from pagos"
SQL = "select sum(haber) as hbr from pagos"

las resta:

resulta2 = RS!db - RS!hbr
(donde rs es el nombre del recordset)


la comapracion asi:

If val(lblsaldo.Caption) < 0 Then
lblsaldo.ForeColor = vbRed
Else
lblsaldo.ForeColor = vbBlue
End If




Saludosss!!
  #4 (permalink)  
Antiguo 12/07/2006, 09:11
Avatar de black_devil  
Fecha de Ingreso: junio-2006
Mensajes: 89
Antigüedad: 17 años, 10 meses
Puntos: 1
Hola haslo en el evento Active del form

Private cn As ADODB.Connection' bueno es mi conexion en mi caso con ODODB ...
Private rs As ADODB.RecordSet
Public rs1 As ADODB.RecordSet


Private Sub Form_Activate()

On Error GoTo Errores
rs.Open "SELECT SUM(debe) FROM PAGOS", cn, adOpenDynamic, adCmdText
If (rs.BOF And rs.EOF) Then
rs.Close
MsgBox "Datos del registro no encontrados.", vbCritical + vbOKOnly, "Búsqueda de datos en el registro"
Else
lblsaldo.Caption = rs.Fields(0)
If lblsaldo.Caption < "0" Then
lblsaldo.ForeColor = vbRed
Else
lblsaldo.ForeColor = vbBlue
End If

rs.Close
End If

rs1.Open "SELECT SUM(haber) FROM PAGOS", cn, adOpenDynamic, adCmdText
If (rs1.BOF And rs1.EOF) Then
rs1.Close
MsgBox "Datos del registro no encontrados.", vbCritical + vbOKOnly, "Búsqueda de datos en el registro"
Else
lblsaldo1.Caption = rs1.Fields(0)
If lblsaldo1.Caption < "0" Then
lblsaldo.ForeColor = vbRed
Else
lblsaldo1.ForeColor = vbBlue
End If
lbresultado.ForeColor = vbRed
lblresultado.Caption = Val(lblsaldo.Caption) - Val(lblsaldo1.Caption)
rs1.Close
End If
Exit Sub
Errores:

End Sub

Espero que te sirva....
  #5 (permalink)  
Antiguo 12/07/2006, 22:06
Avatar de marcos1979  
Fecha de Ingreso: abril-2004
Ubicación: 62º 06' 18" O / 33º 07' 47" S
Mensajes: 331
Antigüedad: 20 años
Puntos: 1
En una unica consulta:

Código:
rs.Open "SELECT sum(debe) as total_debe, sum(haber) as total_haber, (sum(debe) - sum(haber)) as saldo FROM pagos"

lblDebe.Caption = IIf(IsNull(rs.Fields("total_debe").Value), 0, rs.Fields("total_debe").Value)
lblHaber.Caption = IIf(IsNull(rs.Fields("total_haber").Value), 0, rs.Fields("total_haber").Value)
lblSaldo.Caption = IIf(IsNull(rs.Fields("saldo").Value), 0, rs.Fields("saldo").Value)
Un saludo
__________________
Marcos

El dinero no da la felicidad... démelo y sea feliz!!!
  #6 (permalink)  
Antiguo 07/06/2007, 14:58
 
Fecha de Ingreso: mayo-2007
Mensajes: 3
Antigüedad: 17 años
Puntos: 0
Re: suma de colmunas en datagrid (vb6)

Cita:
Iniciado por Bacarra Ver Mensaje
Las consultas SQL tienes que ponerlas asi:

SQL = "select sum(debe) as db from pagos"
SQL = "select sum(haber) as hbr from pagos"

las resta:

resulta2 = RS!db - RS!hbr
(donde rs es el nombre del recordset)


la comapracion asi:

If val(lblsaldo.Caption) < 0 Then
lblsaldo.ForeColor = vbRed
Else
lblsaldo.ForeColor = vbBlue
End If




Saludosss!!

hola mira tengo este problema yo he declarado en mi form asi

sub Suma ( )
dim sql as string

sql = "SELECT sum(PRECIO) as TOTAL from PRODUCTOS"
resultado= rs!PRECIO
text1.text = resultado

end sub
y en el text1 he declarado asi

private sub text1_change()
Suma
end sub


y sabes que es lo que pasa que al sumar se supone que debe aparecer el total de mi columna precio pero me aparece el total del primer registro. si me pueden ayudar les agradeceria mucho gracias.
  #7 (permalink)  
Antiguo 08/06/2007, 20:24
 
Fecha de Ingreso: marzo-2007
Mensajes: 53
Antigüedad: 17 años, 1 mes
Puntos: 0
Re: suma de colmunas en datagrid (vb6)

Private Sub Form_Load()
'SACAR EL SALDO DE LA CUENTA CORRIENTE (NO FUNCA TODAVIA)
SQL = "select debe,sum(debe) as db from pagos"
SQL = "select haber,sum(haber) as hbr from pagos"
resulta2 = db - hbr

seria así:

SQL = "select sum(debe) as db from pagos"


set text1.datasource = SQL
text1.datafield = "db"

asi te muestra la suma de la columna debe.... ahora haz lo que falta..

yo hice algo similar y asi me funciono... espero te sirva
  #8 (permalink)  
Antiguo 08/06/2007, 20:32
 
Fecha de Ingreso: marzo-2007
Mensajes: 53
Antigüedad: 17 años, 1 mes
Puntos: 0
Re: suma de colmunas en datagrid (vb6)

bueno, se me ocurrio algo despues de que mande el primero..je :)

SQL = "select sum(debe) as db, sum(haber) as hbr from pagos"


set text1.datasource = SQL
text1.datafield = "db"
set text2.datasource = SQL
text2.datafield = "hbr"

diferencia = text1 - text2
espero asi te sirva tambien.. si no.. pues disculpame...:(
  #9 (permalink)  
Antiguo 09/06/2007, 09:52
 
Fecha de Ingreso: mayo-2007
Mensajes: 3
Antigüedad: 17 años
Puntos: 0
suma de colmunas en datagrid (vb6)

hola gente tengo este problema yo he declarado en mi form asi

sub Suma ( )
dim sql as string

sql = "SELECT sum(PRECIO) as TOTAL from PRODUCTOS"
resultado= rs!PRECIO
text1.text = resultado

end sub
y en el text1 he declarado asi

private sub text1_change()
Suma
end sub


y saben que es lo que pasa que al sumar se supone que debe aparecer el total de mi columna precio pero me aparece el total del primer registro. si me pueden ayudar les agradeceria mucho gracias necesito que me ayuden gracias.
  #10 (permalink)  
Antiguo 14/01/2008, 17:10
 
Fecha de Ingreso: enero-2008
Mensajes: 1
Antigüedad: 16 años, 3 meses
Puntos: 0
Re: suma de colmunas en datagrid (vb6)

Cita:
Iniciado por pedrokristian Ver Mensaje
hola mira tengo este problema yo he declarado en mi form asi

sub Suma ( )
dim sql as string

sql = "SELECT sum(PRECIO) as TOTAL from PRODUCTOS"
resultado= rs!PRECIO
text1.text = resultado

end sub
y en el text1 he declarado asi

private sub text1_change()
Suma
end sub


y sabes que es lo que pasa que al sumar se supone que debe aparecer el total de mi columna precio pero me aparece el total del primer registro. si me pueden ayudar les agradeceria mucho gracias.
pusiste mal la variable
es:

resultado= rs!total
text1.text = resultado
  #11 (permalink)  
Antiguo 02/04/2008, 19:16
 
Fecha de Ingreso: abril-2008
Mensajes: 2
Antigüedad: 16 años, 1 mes
Puntos: 0
Pregunta Ayuda con grid....

Hola a todos, estoy trabajando con vb6, y neesito hacer un formulario de ventas con un grid (datagrid, dbgrid o similar) donde pueda sumar por columnas, efectuar operaciones entre columnas (multiplicar y sumar) localizar datos en una columna del grid desde un campo codigo y descripcion a la vez (deseo utilizar lector de codigo de barras). si tienen algo po favor pasenlo cuanto antes. Gracias.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 07:06.