METHOD [�]OPEN[�] OF OBJECT [�]_RECORDSET[ï¿

ALVAROVB2009 26/04/2022 17:47:15
#499720
Pessoal boa tarde, quando estou tentando executar a seguinte query

Dim St As String
St = "SELECT c.codAgencia,c.numeroConta,nomecedente,"
St = St & "t.codtit,t.codassoc,t.codassocpart, t.codmsg,nossonumero,dtemissao,dtvencimento,valor,codbarras,dvcliente,nossonumero2,competencia,tipoboleto,"
St = St & "a.matricula,a.nomeassociado as aempresa, a.cpfassociado as cpf,a.bairroassociado as bairro,a.endassociado as end,a.cepassociado as cep,a.estadoassociado as est,a.cidadeassociado as cidade,"
St = St & "ap.nomeassociado as apartic, ap.cpfassociado as cpfpartic,ap.bairroassociado as bairropartic,ap.endassociado as endpartic,ap.cepassociado as ceppartic,ap.estadoassociado as estpartic,ap.cidadeassociado as cidadepartic, "
St = St & "m.*,"
St = St & "me.* "
St = St & "from ((((tbCedentes as c INNER JOIN tbTitulos t ON t.codCedente = c.codCedente) "
St = St & "left JOIN tbassociados as a ON a.codassociado= t.codassoc) "
St = St & "left JOIN tbassociadoparticular as ap ON ap.codassociado= t.codassocpart) "
St = St & "LEFT JOIN tbmensagens as m on m.codmsg = t.codmsg) "
St = St & "LEFT JOIN tbmensagensespeciais as me on me.codmsg = t.codmsgespecial "
St = St & "where t.codempr = 0 and t.status = false "
St = St & "order by a.nomeassociado,ap.nomeassociado"

Ao tentar abrir no recordset esta dando o erro
Method "Open" of object "_Recordset" failed

Porém descobri que por algum motivo, o problema esta nas linhas que tenho que renomear as colunas e isso somente esta acontendo quando tenho que executar pelo sistema, pois no banco de dados a query funciona perfeitamente.
Quando tento executar sem a parte de renomear funciona perfeitamente, a query abaixo é que funciona, porém no Crystal não roda porque tenho que ajustar o nome correto

"St = "SELECT c.codAgencia,c.numeroConta,nomecedente,"
"St = St & "t.codtit,t.codassoc,t.codassocpart, t.codmsg,nossonumero,dtemissao,dtvencimento,valor,codbarras,dvcliente,nossonumero2,competencia,tipoboleto,"
"St = St & "a.matricula,a.nomeassociado , a.cpfassociado ,a.bairroassociado ,a.endassociado ,a.cepassociado ,a.estadoassociado ,a.cidadeassociado ,"
"St = St & "ap.nomeassociado , ap.cpfassociado ,ap.bairroassociado ,ap.endassociado ,ap.cepassociado ,ap.estadoassociado ,ap.cidadeassociado , "
"St = St & "m.*,"
"St = St & "me.* "
"St = St & "from ((((tbCedentes as c INNER JOIN tbTitulos t ON t.codCedente = c.codCedente) "
"St = St & "left JOIN tbassociados as a ON a.codassociado= t.codassoc) "
"St = St & "left JOIN tbassociadoparticular as ap ON ap.codassociado= t.codassocpart) "
"St = St & "LEFT JOIN tbmensagens as m on m.codmsg = t.codmsg) "
"St = St & "LEFT JOIN tbmensagensespeciais as me on me.codmsg = t.codmsgespecial "
"St = St & "where t.codempr = 0 and t.status = false "
"St = St & "order by a.nomeassociado,ap.nomeassociado"

Tem como ajustar isso senão vou ter que ajustar todo o relatório do Crystal

Agradeço desde já a todos
KERPLUNK 26/04/2022 19:13:22
#499721
Voce está usando ADO ou DAO?
ALVAROVB2009 27/04/2022 09:17:45
#499722
Kerplunk obrigado pelo retorno

Realmente esqueci de colocar a conexão

Estou usando ADO

Dim Rs As ADODB.Recordset
Set Rs = New ADODB.Recordset

Rs.Open St, Conexao, adOpenStatic, adLockOptimistic
ALVAROVB2009 27/04/2022 13:20:18
#499729
Pessoal vou deixar a resposta aqui, na minha enorme paciencia que DEUS me deu, fui pegando linha a linha do script e alterando os nomes, porque não era possível ter alguma coisa de errada, pois não era a primeira vez que estava fazendo isso, inclusive outros formulários do mesmo projeto estão com colunas com apelido

Enfim o problema estava se dando na linha
St = St & "a.matricula,a.nomeassociado as aempresa, a.cpfassociado as cpf,a.bairroassociado as bairro,a.endassociado as end,a.cepassociado as cep,a.estadoassociado as est,a.cidadeassociado as cidade,"

A coluna endasssociado que apelidei para end , estava sendo interpretada como comando END , ou seja, fim de comando, fim da variável e simplesmente não carregava mais nada e finalizada a variável recordset
Igual se permitir colocar aspas simples e não dar um tratamento, dará erro também no comando
Foi colocar um outro nome que ajustou , deixei como endassoc
Tópico encerrado , respostas não são mais permitidas