Foros > Visual Basic: filtrar fecha com visual basic 6 y acces 2007

  1. deamortegui

    Mensajes [1] - Enviado el Miércoles 23 de Enero de 2008 a las 18:30hs

    hola amigos tengo una coneccion a un base de datos atravez de un modulo asi

    Public con As Connection
    Public rscaja As Recordset
    Public rspension As Recordset
    Public rseps As Recordset
    Public rsempleado As Recordset
    Public rsnovedad As Recordset
    Public rsnovedademple As Recordset
    Public rsaux As Recordset
    Public aux As String
    Public diastrabajados As Integer
    Public rspagos As Recordset
    Public rslegales As Recordset
    Public auxlegales As String
    Public salmin As Double
    Public subtrans As Double

    Sub main()
    Set con = New Connection
    con.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\nomina iyt.mdb;Persist Security Info=False"
    Set rslegales = New Recordset
    auxlegales = " select * from salminimo "
    rslegales.Open auxlegales, con, adOpenDynamic, adLockOptimistic
    salmin = rslegales!salminimo
    subtrans = rslegales!subtransporte
    MsgBox con.State
    Frinicio.Show
    End Sub
    y luego estoy trabajando en un formulario el siguiente codigo

    Dim c1 As Double
    Dim r1 As Double
    Dim y As Double
    Private Sub btnliquidar_Click()
    rsempleado.MoveFirst
    Dim mes As Integer
    Dim mes1 As Integer
    Dim a?o As Integer
    Dim a?o1 As Integer
    Dim novedad As Double
    Dim auxnovedad As Double
    Dim cedula As Double
    Dim cedula1 As Double
    Dim salario As Double
    Dim subtrans1 As Double
    Dim sueldo As Double
    Dim pension As Double
    Dim cesantias As Double
    Dim sena As Double
    Dim icbf As Double
    Dim arp As Double
    Dim prima As Double
    Dim intces As Double
    Dim vac As Double
    Dim cajacomp As Double
    Dim apsalud As Double
    Dim appension As Double
    Dim neto As String
    While rsempleado.EOF = False
    cedula = CDbl(rsempleado!cedula_empleado)
    salario = CDbl(rsempleado!sueldo_empleado)
    rsnovedademple.MoveFirst
    novedad = 0
    auxnovedad = 0
    While rsnovedademple.EOF = False
    cedula1 = CDbl(rsnovedademple!novemp_cod)
    mes = Month(Date)
    mes1 = Month(rsnovedademple!novemple_fecha)
    a?o = Year(Date)
    a?o1 = Year(rsnovedademple!novemple_fecha)
    If ((cedula = cedula1) And (mes = mes1) And (a?o = a?o1)) Then
    auxnovedad = CDbl(rsnovedademple!novemple_valor)
    novedad = novedad + auxnovedad
    Else
    End If
    rsnovedademple.MoveNext
    Wend
    novedad = Round(novedad, 2)
    neto = salario + novedad
    apsalud = neto * 0.04
    If (salmin / salario) < 4 Then
    appension = neto * 0.03875
    cajacomp = apsalud
    Else
    appension = neto * 0.04875
    cajacomp = 0
    End If
    If (salmin / salario) <= 2 Then
    subtrans1 = subtrans
    Else
    subtrans1 = 0
    End If
    sueldo = neto - apsalud - appension
    eps = neto * 0.085
    pension = neto * 0.12
    arp = neto * 0.02533
    sena = neto * 0.02
    icbf = neto * 0.03
    neto = neto + subtrans1
    prima = neto * 0.0833
    cesantias = neto * 0.0833
    intces = cesantias * 0.12
    vac = salario * 0.0417
    rspagos.AddNew
    rspagos!pagempleado_cod = cedula 'cedula del empleado
    rspagos!pagempleado_fecha = Date ' fecha de liquidacion de nomina
    rspagos!pagempleado_base = salario ' salario base
    rspagos!pagempleado_subtrans = subtrans1 'subsidio de transporte
    rspagos!pagempleado_nove = novedad ' novedades descuentos por fallas recargo nocturno y comisiones
    rspagos!pagempleado_salario = sueldo 'sueldo final luego de novedades y deducciones y subsiodo de transporte
    rspagos!pagempleado_eps = eps 'aporte parafiscal eps
    rspagos!pagempleado_pencion = pension 'aporte parafisca pencion
    rspagos!pagempleado_cesantias = cesantias 'aporte parafiscal cesantias
    rspagos!pagempleado_icbf = icbf 'aporte parafiscal cesantias
    rspagos!pagempleado_sena = sena 'aporte parafiscal sena
    rspagos!pagempleado_arp = arp 'aporte parafisca arp
    rspagos!pagempleado_prima = prima 'aporte parafiscal prima
    rspagos!pagempleado_vac = vac ' aporte parafisca vacasiones
    rspagos!pagempleado_intces = intces 'aporte parafiscal intereses cesantias
    rspagos!pagempleado_cajacomp = cajacomp 'aporte parafiscal caja compensacion
    rspagos!pagempleado_apsalud = apsalud 'aporte empleado salud
    rspagos!pagempleado_appension = appension 'aporte empleado pension
    rspagos.Update
    novedad = 0
    auxnovedad = 0
    rsempleado.MoveNext
    Wend
    Call verdatos
    End Sub

    Private Sub Command1_Click()
    Unload Me
    frmenu.Show
    End Sub

    Private Sub Form_Load()
    Set rslegales = New Recordset
    Set rsempleado = New Recordset
    Set rspagos = New Recordset
    Set rsnovedademple = New Recordset
    Dim auxempleado As String
    Dim auxpagos As String
    Dim auxnovedademple As String
    auxempleado = "select * from empleado order by cedula_empleado"
    auxpagos = "select * from pagosempleado"
    auxnovedademple = "select * from noveemple"
    rsempleado.Open auxempleado, con, adOpenDynamic, adLockOptimistic
    rsnovedademple.Open auxnovedademple, con, adOpenDynamic, adLockOptimistic
    rspagos.Open auxpagos, con, adOpenDynamic, adLockOptimistic
    End Sub

    Sub verdatos()
    Dim y As String
    Dim auxpagos1 As String
    Dim rspagos1 As Recordset
    Set rspagos1 = New Recordset
    y = Text1.Text
    If rspagos1.State = 1 Then rspagos1.Close
    auxpagos1 = "SELECT pagosempleado.pagempleado_appension, pagosempleado.pagempleado_apsalud, pagosempleado.pagempleado_arp, pagosempleado.pagempleado_base, pagosempleado.pagempleado_cajacomp, pagosempleado.pagempleado_cesantias, pagosempleado.pagempleado_cod, pagosempleado.pagempleado_eps, pagosempleado.pagempleado_fecha, pagosempleado.pagempleado_icbf, pagosempleado.pagempleado_intces, pagosempleado.pagempleado_nove, pagosempleado.pagempleado_pencion, pagosempleado.pagempleado_prima, pagosempleado.pagempleado_salario, pagosempleado.pagempleado_sena, pagosempleado.pagempleado_subtrans, pagosempleado.pagempleado_vac, empleado.apellidos_empleado, empleado.nombres_empleado FROM pagosempleado, empleado WHERE pagosempleado.pagempleado_cod = empleado.cedula_empleado"
    rspagos1.Open auxpagos1, con, adOpenDynamic, adLockOptimistic
    Set cuadri.Recordset = rspagos.DataSource
    cuadri.Width = 15000
    If cuadri.Height < 6000 Then
    cuadri.Height = cuadri.Rows * 255
    Else
    cuadri.Height = 6000
    End If
    frmnomina.Width = cuadri.Left + cuadri.Width + 500
    frmnomina.Height = cuadri.Height + cuadri.Top + 500
    frmnomina.Left = 2500
    cuadri.Col = 0
    cuadri.Row = 0
    cuadri.Text = "cedula"
    cuadri.Col = 1
    cuadri.Text = "fecha"
    cuadri.Col = 2
    cuadri.Text = "base"
    cuadri.Col = 3
    cuadri.Text = "sub trans"
    cuadri.Col = 4
    cuadri.Text = "novedad"
    cuadri.Col = 5
    cuadri.Text = "salud emp"
    cuadri.Col = 6
    cuadri.Text = "pension emp"
    cuadri.Col = 7
    cuadri.Text = "total emp"
    cuadri.Col = 8
    cuadri.Text = "eps empresa"
    cuadri.Col = 9
    cuadri.Text = "pensio empresa"
    cuadri.Col = 10
    cuadri.Text = "cesantias empresa"
    cuadri.Col = 11
    cuadri.Text = "icbf"
    cuadri.Col = 12
    cuadri.Text = "sena"
    cuadri.Col = 13
    cuadri.Text = "arp"
    cuadri.Col = 14
    cuadri.Text = "prima"
    cuadri.Col = 15
    cuadri.Text = "vacasiones"
    cuadri.Col = 16
    cuadri.Text = "int cesan"
    cuadri.Col = 17
    cuadri.Text = "caja comp"
    c1 = cuadri.Cols - 1
    r1 = cuadri.Rows - 1
    End Sub


    pero cuando estoy en el aux con la sentencia where necesito escoger los campos que solo fueron creados en una fecha determinada intente con un like con un and en el where pero nada no me coge la sentencia por ningun lado asi que estaria agradecido a quien me pudiera pegar una ayudita coon esto gracias y bye


responder

Para poder responder a este tema tenes que ingresar. Si no tenes una cuenta podes registrarse gratis..

publicidad

API DE FACEBOOK
GOOGLE CALENDAR API
GOOGLE MAPS API