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

Alguien me puede ayudar

Estas en el tema de Alguien me puede ayudar en el foro de Visual Basic clásico en Foros del Web. Tengo este codigo : Private Sub carga_datos() Dim sql As String Dim criterio As String tbdetallefactura where numfactura= " + txtNroPresupuesto.Text & " " criterio ...
  #1 (permalink)  
Antiguo 30/09/2008, 09:21
Avatar de gasafonso  
Fecha de Ingreso: septiembre-2008
Mensajes: 357
Antigüedad: 15 años, 7 meses
Puntos: 1
Alguien me puede ayudar

Tengo este codigo :

Private Sub carga_datos()
Dim sql As String
Dim criterio As String
tbdetallefactura where numfactura= " + txtNroPresupuesto.Text & " "
criterio = "numfactura= '" & txtNroPresupuesto.Text & "'"
dsDetalleFactura.Recordset.FindFirst criterio

For i = 1 To grilla.Rows - 1
dsDetalleFactura.Recordset.MoveFirst

dsDetalleFactura.Recordset.FindFirst criterio
grilla.TextMatrix(i, 0) = dsDetalleFactura.Recordset!cantidad
grilla.TextMatrix(i, 1) = dsDetalleFactura.Recordset!codigoprod
grilla.TextMatrix(i, 3) = dsDetalleFactura.Recordset!precio
grilla.TextMatrix(i, 4) = dsDetalleFactura.Recordset!subtotal
' dsDetalleFactura.Recordset.NextRecordset
Next
-------------------------------------------------------------------------------------
Pero quiero que se repita mientras numfactura= txtNroPresupuesto.Text

numfactura es el campo de una tabla , y quiero cargar todos los items de ese numfactura que estan en un tabla que tiene (numfactura, importe, codiProd, Cantidad)

gracias


PD: Y quiero diseñar un recibo de pago , en que se puede hacer que sea facil y completo yo lo hice en un datareport pero no me gusta , quiero un mejor diseño gracias

End Sub
  #2 (permalink)  
Antiguo 30/09/2008, 10:15
 
Fecha de Ingreso: julio-2004
Mensajes: 104
Antigüedad: 19 años, 9 meses
Puntos: 0
Respuesta: Alguien me puede ayudar

Si no te gusto el diseño del DATAREPORT creo que estas algo frito....
tendrias que usar aplicaciones de terceros como son CrystalReports

Por otro lado... tambien podrias hacer el recibo DIBUJANDO en un PICTURE BOX y posteriomente mandarlo imprimir el picture...

Recuerda que un picture box se comporta como si fuera una hoja de impresion.

Algo asi...

picture1.print "Aqui va un texto"
picture1. print "aqui va otro" etc.. etc..
Asi quedaria como lo deseas pero el costo de trabajo es mucho mayor.
__________________
Podria no estar de acuerdo con lo que dices....., pero daria mi vida por el derecho que tienes de decirlo.
  #3 (permalink)  
Antiguo 30/09/2008, 12:57
Avatar de Kruzado  
Fecha de Ingreso: marzo-2007
Mensajes: 307
Antigüedad: 17 años, 2 meses
Puntos: 17
Respuesta: Alguien me puede ayudar

ya viejito tienes el medio enredo en tu codigo, pero lo primero : estas usando el ciclo erroner, utilias un for, pero lo mas practico debe ser un while, te voy a colocar el codigo que usaria yo, es con dao, pero tu lo llevas a tu tipo de manejo de datos


Private Sub carga_datos()
Dim sql As String
Dim criterio As String
criterio = " select * from tbdetallefacturas where numfactura= " & txtNroPresupuesto.Text
set dsDetalleFactura=tubase.openrecordset(criterio,dbo pendynaset)

while not dsdetallefactura.eof
grilla.TextMatrix(i, 0) = dsDetalleFactura.Recordset!cantidad
grilla.TextMatrix(i, 1) = dsDetalleFactura.Recordset!codigoprod
grilla.TextMatrix(i, 3) = dsDetalleFactura.Recordset!precio
grilla.TextMatrix(i, 4) = dsDetalleFactura.Recordset!subtotal
dsDetalleFactura.movenext
wend

eso acomodaloa tu codigo y debe funcionar
  #4 (permalink)  
Antiguo 30/09/2008, 17:22
Avatar de gasafonso  
Fecha de Ingreso: septiembre-2008
Mensajes: 357
Antigüedad: 15 años, 7 meses
Puntos: 1
Respuesta: Alguien me puede ayudar

Cita:
Iniciado por Kruzado Ver Mensaje
ya viejito tienes el medio enredo en tu codigo, pero lo primero : estas usando el ciclo erroner, utilias un for, pero lo mas practico debe ser un while, te voy a colocar el codigo que usaria yo, es con dao, pero tu lo llevas a tu tipo de manejo de datos


Private Sub carga_datos()
Dim sql As String
Dim criterio As String
criterio = " select * from tbdetallefacturas where numfactura= " & txtNroPresupuesto.Text
set dsDetalleFactura=tubase.openrecordset(criterio,dbo pendynaset)

while not dsdetallefactura.eof
grilla.TextMatrix(i, 0) = dsDetalleFactura.Recordset!cantidad
grilla.TextMatrix(i, 1) = dsDetalleFactura.Recordset!codigoprod
grilla.TextMatrix(i, 3) = dsDetalleFactura.Recordset!precio
grilla.TextMatrix(i, 4) = dsDetalleFactura.Recordset!subtotal
dsDetalleFactura.movenext
wend

eso acomodaloa tu codigo y debe funcionar
Pero no trabajo con dao, estoy un poco mareado como se haria con el otro?


gracias
  #5 (permalink)  
Antiguo 01/10/2008, 09:23
Avatar de gasafonso  
Fecha de Ingreso: septiembre-2008
Mensajes: 357
Antigüedad: 15 años, 7 meses
Puntos: 1
Respuesta: Alguien me puede ayudar

Cita:
Iniciado por Kruzado Ver Mensaje
ya viejito tienes el medio enredo en tu codigo, pero lo primero : estas usando el ciclo erroner, utilias un for, pero lo mas practico debe ser un while, te voy a colocar el codigo que usaria yo, es con dao, pero tu lo llevas a tu tipo de manejo de datos


Private Sub carga_datos()
Dim sql As String
Dim criterio As String
criterio = " select * from tbdetallefacturas where numfactura= " & txtNroPresupuesto.Text
set dsDetalleFactura=tubase.openrecordset(criterio,dbo pendynaset)

while not dsdetallefactura.eof
grilla.TextMatrix(i, 0) = dsDetalleFactura.Recordset!cantidad
grilla.TextMatrix(i, 1) = dsDetalleFactura.Recordset!codigoprod
grilla.TextMatrix(i, 3) = dsDetalleFactura.Recordset!precio
grilla.TextMatrix(i, 4) = dsDetalleFactura.Recordset!subtotal
dsDetalleFactura.movenext
wend

eso acomodaloa tu codigo y debe funcionar

no me funciona , se te ocurre algo no se yo estoy mareado de tanto probar

trabajo con ado
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 06:22.