AJUDA NUM SELECT
21/08/2008
0
será qua alguem pode me ajudar nesse select está apresentando erro:
segue uma parte do codigo:
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
recebe_cookies()
Dim vMatricula, vMesini, vdata_ini, vdata_fim, vexercicio As String
vMatricula = lblMatricula.Text
´************************
vdata_ini = ´16/01/2000´
vdata_fim = ´15/02/2000´
vMesini = lblMes.Text
vexercicio = lblAno.Text
Select Case vMesini
Case ´Janeiro´
vMesini = ´01´
vdata_ini = Mid(vdata_ini, 1, 3) + LTrim(Str(Val(vMesini) - 1)) + ´/´ + Mid(vexercicio, 1, 4)
vdata_fim = Mid(vdata_fim, 1, 3) + vMesini + ´/´ + Mid(vexercicio, 1, 4)
Case ´Fevereiro´
vMesini = ´02´
vdata_ini = Mid(vdata_ini, 1, 3) + LTrim(Str(Val(vMesini) - 1)) + ´/´ + Mid(vexercicio, 1, 4)
vdata_fim = Mid(vdata_fim, 1, 3) + vMesini + ´/´ + Mid(vexercicio, 1, 4)
Case ´Março´
vMesini = ´03´
vdata_ini = Mid(vdata_ini, 1, 3) + LTrim(Str(Val(vMesini) - 1)) + ´/´ + Mid(vexercicio, 1, 4)
vdata_fim = Mid(vdata_fim, 1, 3) + vMesini + ´/´ + Mid(vexercicio, 1, 4)
Case ´Abril´
vMesini = ´04´
vdata_ini = Mid(vdata_ini, 1, 3) + LTrim(Str(Val(vMesini) - 1)) + ´/´ + Mid(vexercicio, 1, 4)
vdata_fim = Mid(vdata_fim, 1, 3) + vMesini + ´/´ + Mid(vexercicio, 1, 4)
Case ´Maio´
vMesini = ´05´
vdata_ini = Mid(vdata_ini, 1, 3) + LTrim(Str(Val(vMesini) - 1)) + ´/´ + Mid(vexercicio, 1, 4)
vdata_fim = Mid(vdata_fim, 1, 3) + vMesini + ´/´ + Mid(vexercicio, 1, 4)
Case ´Junho´
vMesini = ´06´
vdata_ini = Mid(vdata_ini, 1, 3) + LTrim(Str(Val(vMesini) - 1)) + ´/´ + Mid(vexercicio, 1, 4)
vdata_fim = Mid(vdata_fim, 1, 3) + vMesini + ´/´ + Mid(vexercicio, 1, 4)
Case ´Julho´
vMesini = ´07´
vdata_ini = Mid(vdata_ini, 1, 3) + LTrim(Str(Val(vMesini) - 1)) + ´/´ + Mid(vexercicio, 1, 4)
vdata_fim = Mid(vdata_fim, 1, 3) + vMesini + ´/´ + Mid(vexercicio, 1, 4)
Case ´Agosto´
vMesini = ´08´
vdata_ini = Mid(vdata_ini, 1, 3) + LTrim(Str(Val(vMesini) - 1)) + ´/´ + Mid(vexercicio, 1, 4)
vdata_fim = Mid(vdata_fim, 1, 3) + vMesini + ´/´ + Mid(vexercicio, 1, 4)
Case ´Setembro´
vMesini = ´09´
vdata_ini = Mid(vdata_ini, 1, 3) + LTrim(Str(Val(vMesini) - 1)) + ´/´ + Mid(vexercicio, 1, 4)
vdata_fim = Mid(vdata_fim, 1, 3) + vMesini + ´/´ + Mid(vexercicio, 1, 4)
Case ´Outubro´
vMesini = ´10´
vdata_ini = Mid(vdata_ini, 1, 3) + LTrim(Str(Val(vMesini) - 1)) + ´/´ + Mid(vexercicio, 1, 4)
vdata_fim = Mid(vdata_fim, 1, 3) + vMesini + ´/´ + Mid(vexercicio, 1, 4)
Case ´Novembro´
vMesini = ´11´
vdata_ini = Mid(vdata_ini, 1, 3) + LTrim(Str(Val(vMesini) - 1)) + ´/´ + Mid(vexercicio, 1, 4)
vdata_fim = Mid(vdata_fim, 1, 3) + vMesini + ´/´ + Mid(vexercicio, 1, 4)
Case ´Dezembro´
vMesini = ´12´
vdata_ini = Mid(vdata_ini, 1, 3) + LTrim(Str(Val(vMesini) - 1)) + ´/´ + Mid(vexercicio, 1, 4)
vdata_fim = Mid(vdata_fim, 1, 3) + vMesini + ´/´ + Mid(vexercicio, 1, 4)
End Select
If vtipo = ´Individual´ Then
Dim dr As Data.Odbc.OdbcDataReader
nesse select apresenta o erro:
Server: Msg 170, Level 15, State 1, Line 1
Line 1: Incorrect syntax near ´6´.
Dim sql As String = ´select * from tb_atvltr where cod_cadusu = ´ + vMatricula + ´ and (year(dta_hor_atvltr) =´ + RTrim(Str(Year(vdata_ini))) + ´ or (year(dta_hor_atvltr) =´ + RTrim(Str(Year(vdata_fim))) + ´ and (month(dta_hor_atvltr) =´ + RTrim(Str(Month(vdata_ini))) + ´ and (month(dta_hor_atvltr) =´ + RTrim(Str(Month(vdata_fim))) + ´ ´´´
Dim conexao As Data.Odbc.OdbcConnection
conexao = New Data.Odbc.OdbcConnection(´Driver={Microsoft Access Driver (*.mdb)};DBQ=u:\Tradenet.mdb´)
conexao.Open()
Dim cmd As Data.Odbc.OdbcCommand = New Data.Odbc.OdbcCommand(sql, conexao)
dr = cmd.ExecuteReader()
vdata_ini = Mid(vdata_ini, 1, 3) + LTrim(Str(Val(vMesini) - 1)) + ´/´ + Mid(vexercicio, 1, 4)
vdata_fim = Mid(vdata_fim, 1, 3) + vMesini + ´/´ + Mid(vexercicio, 1, 4)
DataGrid1.DataSource = dr
DataGrid1.DataBind()
dr.Close()
conexao.Close()
conexao = Nothing
Else
End If
´vdata_ini = Mid(vdata_ini, 1, 3) + LTrim(Str(Val(vMesini) - 1)) + ´/´ + Mid(vexercicio, 1, 4)
´vdata_fim = Mid(vdata_fim, 1, 3) + vMesini + ´/´ + Mid(vexercicio, 1, 4)
´dr.Close()
´conexao.Close()
´conexao = Nothing
End Sub
grato.
Oliverjer10
Posts
22/08/2008
Emerson Nascimento
Dim sql As String = ´select * from tb_atvltr where cod_cadusu = ´ + vMatricula +´ and [b:4ae96ceee9]([/b:4ae96ceee9](year(dta_hor_atvltr) = ´ + RTrim(Str(Year(vdata_ini))) + ´[b:4ae96ceee9])[/b:4ae96ceee9] or (year(dta_hor_atvltr) = ´ + RTrim(Str(Year(vdata_fim))) + ´[b:4ae96ceee9]))[/b:4ae96ceee9] and [b:4ae96ceee9]([/b:4ae96ceee9](month(dta_hor_atvltr) = ´ + RTrim(Str(Month(vdata_ini))) + ´[b:4ae96ceee9])[/b:4ae96ceee9] or (month(dta_hor_atvltr) = ´ + RTrim(Str(Month(vdata_fim))) + ´[b:4ae96ceee9]))[/b:4ae96ceee9] ´
creio também que o case possa ser resumido:
Select Case vMesini Case "Janeiro" vMesini = "01" Case "Fevereiro" vMesini = "02" Case "Março" vMesini = "03" Case "Abril" vMesini = "04" Case "Maio" vMesini = "05" Case "Junho" vMesini = "06" Case "Julho" vMesini = "07" Case "Agosto" vMesini = "08" Case "Setembro" vMesini = "09" Case "Outubro" vMesini = "10" Case "Novembro" vMesini = "11" Case "Dezembro" vMesini = "12" End Select if vMesini = "01" vdata_ini = Mid(vdata_ini, 1, 3) + "12/" + Str(Val(Mid(vexercicio, 1, 4)) - 1) else vdata_ini = Mid(vdata_ini, 1, 3) + LTrim(Str(Val(vMesini) - 1)) + "/" + Mid(vexercicio, 1, 4) end if vdata_fim = Mid(vdata_fim, 1, 3) + vMesini + "/" + Mid(vexercicio, 1, 4)
22/08/2008
Oliverjer10
fico agradecido pela ajuda do colega.
um abraço.
Clique aqui para fazer login e interagir na Comunidade :)