DUPLICIDADE NO RELATORIO
                    Boa Tarde a Todos.
Tenho um Relatorio onde mostro as coletas reprovadas no periodo.
o meu Select esta assim ...
Quando jogo esse select no Mysql ele não me mostra duplicidade, porem no relatorio traz duplicado
Alguem pode me ajudar ?
            Tenho um Relatorio onde mostro as coletas reprovadas no periodo.
o meu Select esta assim ...
SELECT * FROM cadcoleta[Ô] & _
     [Ô] inner join cadcli on col_codcli = codigo[Ô] & _
      [Ô] where col_dtensaio between [ô][Ô] & Format(CType(mskDtInicial.Text, Date), [Ô]yyyy-MM-dd[Ô]) & [Ô][ô] and [ô][Ô] & Format(CType(mskDtFinal.Text, Date), [Ô]yyyy-MM-dd[Ô]) & [Ô][ô] and col_aprovado <> [ô]M[ô]Quando jogo esse select no Mysql ele não me mostra duplicidade, porem no relatorio traz duplicado
Alguem pode me ajudar ?
                    Alguem ??????????????
                
            
                    LEANDRO, voce esta usando o crystal report ?
                
            
                    sim.!
                
            
                    Ok, me diz uma coisa, como voce criou o paramentro no crystal, passa o codigo ae, que agente tenta resolver.
                
            Imports Dados
Imports MySql.Data.MySqlClient
Public Class frmRelColetasSolicitadas
    Dim Conexao As New Conexao
    Public DtEmissao As String
    Public DtVencimento As String
    Public sqlSolicitacao As String
    [ô]definir as variáveis de conexão
    Sub GerarRelatorio()
        Dim dsPc As New RelColeta
        [ô]definir a string de conexão e as instruções sql para cada tabela
        [ô]frmImpressos.Coleta = Coleta
        Try
            [ô]Criar os objetos dataadapter
            Conexao.Conectar()
            Conexao.da = New MySqlDataAdapter(sqlSolicitacao, Conexao.Conexao)
            [ô]Preenche as tabelas do dataset usando o dataadapter
            Conexao.da.Fill(dsPc, [Ô]cadcli[Ô])
            Conexao.da.Fill(dsPc, [Ô]cadcoleta[Ô])
            [ô]Preencher o relatório e exibÃ-lo no visualizador
            Dim rptColetaSolicitadas As New RelxColetasSolicitadas
            rptColetaSolicitadas.SetDataSource(dsPc)
            CrystalReportViewer.ReportSource = rptColetaSolicitadas
        Catch ex As Exception
            MessageBox.Show(ex.ToString)
        End Try
    End Sub
End Classa Variavel SqlSolicitacao é a que eu coloquei acima
                    LEANDRO, voce criou uma class e com ela voce monta o relatorio certo, ok, agora eu monto o report no proprio crystal e depois chamo no vb.
Agora, eu em casa vou olha com calma para tentamos contornar este erro.
            Agora, eu em casa vou olha com calma para tentamos contornar este erro.
Citação:SELECT * FROM cadcoleta[Ô] & _
[Ô] inner join cadcli on col_codcli = codigo[Ô] & _
[Ô] where col_dtensaio between [ô][Ô] & Format(CType(mskDtInicial.Text, Date), [Ô]yyyy-MM-dd[Ô]) & [Ô][ô] and [ô][Ô] & Format(CType(mskDtFinal.Text, Date), [Ô]yyyy-MM-dd[Ô]) & [Ô][ô] and col_aprovado <> [ô]M[ô]
Public sqlSolicitacao As String
LEANDRO olhando melhor sua class, vou te passar como voce faz seu report funcionar do modo desejado, usando o crystal e o vb6, voce faz algumas modificacoes no .net:
Voce usa assim no .net:
[ô][Ô] & Format(CType(mskDtInicial.Text, Date), [Ô]yyyy-MM-dd[Ô]) & [Ô][ô] and [ô][Ô] & Format(CType(mskDtFinal.Text, Date), [Ô]yyyy-MM-dd[Ô]) & [Ô][ô] and
Eu uso assim no vb6:
.ParameterFields(0) = [Ô]data1;Date([Ô] & Format(DTPicker1.Value, [Ô]YYYY,MM,DD[Ô]) & [Ô]);True[Ô]
.ParameterFields(1) = [Ô]data2;Date([Ô] & Format(DTPicker2.Value, [Ô]YYYY,MM,DD[Ô]) & [Ô]);True[Ô]
Agora no crystal:
Em Report_Edith Selection Formula_Record…
CDate({tbclt.DtClt}) >= {?data1} And CDate({tbclt.DtClt})<= {?data2}
Em Insert_Parameter Field
Defina o name de seu controle no vb onde voce faz o filtro
Defina o Value Type de seu controle, fazer a mesma coisa
com o segundo controle.
Funciona perfeitamente no vb6. Eu entrei no seu topico em .net porque observei que o caminho eh parecido e acredito que funciona para o seu caso tambem, se eu estiver errado, me desculpe ta colega e espero ter ajudado.
Abraços.
                    E se colocar a cláusula DISTINCT no SQL ?
            SELECT DISTINCT * FROM cadcoleta[Ô] 
                        Tópico encerrado , respostas não são mais permitidas
                    
                

