Boa noite,
Alguem consegue me dizer aonde está o erro dessa consulta abaixo? ela pega dados de uma tabela e joga em uma listbox cheia de colunas. Porem quando clico no botão os dados não são filtrados pela data, e some tudo e a lista com 19 colunas fica em branco.
Private Sub btnMes_Click()
Dim StrSQL As String, StrSQL1 As String
If IsNull(DataInicial) = True Or Me.DataInicial = "" Or IsNull(DataFinal) = True Or Me.DataFinal = "" Then
MsgBox "é obrigatório o preenchimento dos campos Data Inicial e Data Final" & vbCrLf & _
"para efetuar a consulta", vbCritical, "Atençao!"
Exit Sub
Else
If Me.btnMes.Caption = "Filtrar" Then
If Format(Me.DataInicial, "dd/mm/yyyy") > Format(Me.DataFinal, "dd/mm/yyyy") Then
MsgBox "A Data Inicial não pode ser menor que a Data Final", vbCritical, "Atenção!"
Exit Sub
Else
Me.btnMes.Caption = "Filtrado"
Me.btnMes.ForeColor = vbRed
StrSQL = "SELECT tabCondenasp.ID_CodCondenasparciais, tabCondenasp.CpData AS DATA," _
& "tabgranjas.CpNomeGranja AS GRANJA, tabCondenasp.CpTipo AS TIPO," _
& "tabCondenasp.CpAbcesso AS ABCESSO, tabCondenasp.CpAerosacolite AS AEROSACULITE," _
& "tabCondenasp.CpArtrite AS ARTRITE, tabCondenasp.CpAscite AS ASCITE," _
& "tabCondenasp.CpCaquexia AS CAQUEXIA,tabCondenasp.CpCelulite AS CELULITE," _
& "tabCondenasp.CpColigranulatose AS COLIGRANULATOSE, tabCondenasp.CpContaminacao AS CONTAMINAÇÃO," _
& "tabCondenasp.CpContusaoFratura AS [CONTUSÃO/FRATURA], tabCondenasp.CpDermatose AS DERMATOSE," _
& "tabCondenasp.CpEscaldagemExcessiva AS [ESCALDAGEM EXCESSIVA], tabCondenasp.CpMaSangria AS [MA SANGRIA]," _
& "tabCondenasp.CpSalpingite AS SALPINGITE, tabCondenasp.Cpdoeca1 AS [DOENCA 1]," _
& "tabCondenasp.Cpdoeca2 AS [DOENCA 2]," _
& "FROM tabgranjas LEFT JOIN tabCondenasp ON tabgranjas.ID_Granja = tabCondenasp.ID_Granja" _
& " WHERE (((tabCondenasp.ID_CodCondenasparciais) Is Not Null)) And ((tabCondenasp.CpData >=#" & Format(Me.DataInicial, "mm/dd/yyyy") & "#) And (tabCondenasp.CpData <=#" & Format(Me.DataFinal, "mm/dd/yyyy") & "#))"
If Me.CboGranja <> "" Then
StrSQL = StrSQL & " And tabCondenasp.ID_Granja =" & Me.txtGranja & ""
End If
If Me.CboTipoAve <> "" Then
StrSQL = StrSQL & " And tabCondenasp.CpTipo ='" & Me.CboTipoAve & "'"
End If
StrSQL = StrSQL & " ORDER BY tabCondenasp.CpData;"
Me.lstConsulta.RowSource = StrSQL
Call AplicarCalculos
End If
Else
Call LimpaFiltro
Me.txtAviso.Visible = False
Me.btnMes.Caption = "Filtrar"
Me.btnMes.ForeColor = vbBlack
End If
End If
If Me.txtQtdReg = -1 Then
MsgBox "Não foi encontrado registro para esta consulta!", vbInformation, "Atenção"
Me.txtAviso.Visible = True
End If
End Sub
----------------------------------------------------------------
Sub LimpaFiltro()
Dim StrSQLLimpa As String
StrSQLLimpa = "SELECT tabCondenasp.ID_CodCondenasparciais, tabCondenasp.CpData AS DATA," _
& "tabgranjas.CpNomeGranja AS GRANJA, tabCondenasp.CpTipo AS TIPO," _
& "tabCondenasp.CpAbcesso AS ABCESSO, tabCondenasp.CpAerosacolite AS AEROSACULITE," _
& "tabCondenasp.CpArtrite AS ARTRITE, tabCondenasp.CpAscite AS ASCITE," _
& "tabCondenasp.CpCaquexia AS CAQUEXIA, tabCondenasp.CpCelulite AS CELULITE," _
& "tabCondenasp.CpColigranulatose AS COLIGRANULATOSE, tabCondenasp.CpContaminacao AS CONTAMINAÇÃO," _
& "tabCondenasp.CpContusaoFratura AS [CONTUSÃO/FRATURA], tabCondenasp.CpDermatose AS DERMATOSE," _
& "tabCondenasp.CpEscaldagemExcessiva AS [ESCALDAGEM EXCESSIVA], tabCondenasp.CpMaSangria AS [MA SANGRIA]," _
& "tabCondenasp.CpSalpingite AS SALPINGITE, tabCondenasp.Cpdoeca1 AS [DOENCA 1]," _
& "tabCondenasp.Cpdoeca2 AS [DOENCA 2]," _
& "FROM tabgranjas LEFT JOIN tabCondenasp ON tabgranjas.ID_Granja = tabCondenasp.ID_Granja" _
& " WHERE (((tabCondenasp.ID_CodCondenasparciais) Is Not Null));"
Me.lstConsulta.RowSource = StrSQLLimpa
Me.DataInicial = ""
Me.DataFinal = ""
Me.CboTipoAve = ""
Me.CboGranja = ""
Me.txtGranja = ""
Call AplicarCalculos
End Sub
Alguem consegue me dizer aonde está o erro dessa consulta abaixo? ela pega dados de uma tabela e joga em uma listbox cheia de colunas. Porem quando clico no botão os dados não são filtrados pela data, e some tudo e a lista com 19 colunas fica em branco.
Private Sub btnMes_Click()
Dim StrSQL As String, StrSQL1 As String
If IsNull(DataInicial) = True Or Me.DataInicial = "" Or IsNull(DataFinal) = True Or Me.DataFinal = "" Then
MsgBox "é obrigatório o preenchimento dos campos Data Inicial e Data Final" & vbCrLf & _
"para efetuar a consulta", vbCritical, "Atençao!"
Exit Sub
Else
If Me.btnMes.Caption = "Filtrar" Then
If Format(Me.DataInicial, "dd/mm/yyyy") > Format(Me.DataFinal, "dd/mm/yyyy") Then
MsgBox "A Data Inicial não pode ser menor que a Data Final", vbCritical, "Atenção!"
Exit Sub
Else
Me.btnMes.Caption = "Filtrado"
Me.btnMes.ForeColor = vbRed
StrSQL = "SELECT tabCondenasp.ID_CodCondenasparciais, tabCondenasp.CpData AS DATA," _
& "tabgranjas.CpNomeGranja AS GRANJA, tabCondenasp.CpTipo AS TIPO," _
& "tabCondenasp.CpAbcesso AS ABCESSO, tabCondenasp.CpAerosacolite AS AEROSACULITE," _
& "tabCondenasp.CpArtrite AS ARTRITE, tabCondenasp.CpAscite AS ASCITE," _
& "tabCondenasp.CpCaquexia AS CAQUEXIA,tabCondenasp.CpCelulite AS CELULITE," _
& "tabCondenasp.CpColigranulatose AS COLIGRANULATOSE, tabCondenasp.CpContaminacao AS CONTAMINAÇÃO," _
& "tabCondenasp.CpContusaoFratura AS [CONTUSÃO/FRATURA], tabCondenasp.CpDermatose AS DERMATOSE," _
& "tabCondenasp.CpEscaldagemExcessiva AS [ESCALDAGEM EXCESSIVA], tabCondenasp.CpMaSangria AS [MA SANGRIA]," _
& "tabCondenasp.CpSalpingite AS SALPINGITE, tabCondenasp.Cpdoeca1 AS [DOENCA 1]," _
& "tabCondenasp.Cpdoeca2 AS [DOENCA 2]," _
& "FROM tabgranjas LEFT JOIN tabCondenasp ON tabgranjas.ID_Granja = tabCondenasp.ID_Granja" _
& " WHERE (((tabCondenasp.ID_CodCondenasparciais) Is Not Null)) And ((tabCondenasp.CpData >=#" & Format(Me.DataInicial, "mm/dd/yyyy") & "#) And (tabCondenasp.CpData <=#" & Format(Me.DataFinal, "mm/dd/yyyy") & "#))"
If Me.CboGranja <> "" Then
StrSQL = StrSQL & " And tabCondenasp.ID_Granja =" & Me.txtGranja & ""
End If
If Me.CboTipoAve <> "" Then
StrSQL = StrSQL & " And tabCondenasp.CpTipo ='" & Me.CboTipoAve & "'"
End If
StrSQL = StrSQL & " ORDER BY tabCondenasp.CpData;"
Me.lstConsulta.RowSource = StrSQL
Call AplicarCalculos
End If
Else
Call LimpaFiltro
Me.txtAviso.Visible = False
Me.btnMes.Caption = "Filtrar"
Me.btnMes.ForeColor = vbBlack
End If
End If
If Me.txtQtdReg = -1 Then
MsgBox "Não foi encontrado registro para esta consulta!", vbInformation, "Atenção"
Me.txtAviso.Visible = True
End If
End Sub
----------------------------------------------------------------
Sub LimpaFiltro()
Dim StrSQLLimpa As String
StrSQLLimpa = "SELECT tabCondenasp.ID_CodCondenasparciais, tabCondenasp.CpData AS DATA," _
& "tabgranjas.CpNomeGranja AS GRANJA, tabCondenasp.CpTipo AS TIPO," _
& "tabCondenasp.CpAbcesso AS ABCESSO, tabCondenasp.CpAerosacolite AS AEROSACULITE," _
& "tabCondenasp.CpArtrite AS ARTRITE, tabCondenasp.CpAscite AS ASCITE," _
& "tabCondenasp.CpCaquexia AS CAQUEXIA, tabCondenasp.CpCelulite AS CELULITE," _
& "tabCondenasp.CpColigranulatose AS COLIGRANULATOSE, tabCondenasp.CpContaminacao AS CONTAMINAÇÃO," _
& "tabCondenasp.CpContusaoFratura AS [CONTUSÃO/FRATURA], tabCondenasp.CpDermatose AS DERMATOSE," _
& "tabCondenasp.CpEscaldagemExcessiva AS [ESCALDAGEM EXCESSIVA], tabCondenasp.CpMaSangria AS [MA SANGRIA]," _
& "tabCondenasp.CpSalpingite AS SALPINGITE, tabCondenasp.Cpdoeca1 AS [DOENCA 1]," _
& "tabCondenasp.Cpdoeca2 AS [DOENCA 2]," _
& "FROM tabgranjas LEFT JOIN tabCondenasp ON tabgranjas.ID_Granja = tabCondenasp.ID_Granja" _
& " WHERE (((tabCondenasp.ID_CodCondenasparciais) Is Not Null));"
Me.lstConsulta.RowSource = StrSQLLimpa
Me.DataInicial = ""
Me.DataFinal = ""
Me.CboTipoAve = ""
Me.CboGranja = ""
Me.txtGranja = ""
Call AplicarCalculos
End Sub