ORDENAR POR QUALQUER TABELA
Olá amigos, estou com uma dúvida danada.
possuo esse codigo:
Estou precisando ordernar meu relatorio por um campo da tabela Alojamentotb. Mas como estou comparando a tabela com a variavel &cod& criada, não sei como fazer para organizar a lista ordenando pelo campo [Ô]Sala[Ô] da tabela Alojamentotb. Alguem sabe ordenar um relatorio usando uma conexao com o banco sem ser a primeira conexao criada?
Desculpa se não deu pra entender muito bem minha pergunta
Desde já, agradeço a todos.
possuo esse codigo:
Citação:set sql = conectarAtend.execute([Ô]SELECT * FROM CadEscola[Ô])
do while not sql.eof
if sql([Ô]Status[Ô]) = [Ô]MATRICULADO[Ô] then
cod = sql([Ô]CodAluno[Ô])
set sql2 = conexao.execute([Ô]SELECT Nome FROM relacaotb WHERE Codigo = [Ô]&cod&[Ô][Ô])
set sql3 = conexao.execute([Ô]SELECT * FROM Alojamentotb WHERE Codigo = [Ô]&cod&[Ô][Ô])
Estou precisando ordernar meu relatorio por um campo da tabela Alojamentotb. Mas como estou comparando a tabela com a variavel &cod& criada, não sei como fazer para organizar a lista ordenando pelo campo [Ô]Sala[Ô] da tabela Alojamentotb. Alguem sabe ordenar um relatorio usando uma conexao com o banco sem ser a primeira conexao criada?
Desculpa se não deu pra entender muito bem minha pergunta
Desde já, agradeço a todos.
Veja se é isso ajuda:
set sql3 = conexao.execute([Ô]SELECT * FROM Alojamentotb WHERE Codigo = [Ô] & cod & [Ô] ORDER BY sala[Ô] )
Olá LLAIA, então, isso mesmo que eu tentei, mas o que acontece é que ele só aceita fazer o ORDER BY se for pelo SELECT da primeira tabela que selecionei que seria o CadEscola. Quando faço esse esquema ele continua sem ordernar.
Abraço
Abraço
alguem com outra ideia ?
Olá BARROS, precisa ser feito esses selects sim, pois não posso cadastrar [Ô]Sala[Ô] do Alojamentotb na tabela CadEscolatb.
A não ser que tenha um modo de fazer apenas 1 select pegando as duas tabelas que são de conexões diferentes ainda.
Já essa parte de usar apenas uma query relacionando as duas, não sei como eu faria.
Valeu pela força.
Abraço.
A não ser que tenha um modo de fazer apenas 1 select pegando as duas tabelas que são de conexões diferentes ainda.
Já essa parte de usar apenas uma query relacionando as duas, não sei como eu faria.
Valeu pela força.
Abraço.
tenta assim
o código seria este acima praticamente em uma unica query consultar baseado em tres tabelas.
repara que ordenei por ce.Sala, porém nem sei se existe este campo na tabela ce (CadEscola) se não funcionar coloque os nomes dos campos das tabelas e qual o relacionamento entre eles
sSQL = [Ô]SELECT ce.*, re.*, al.* FROM CadEscola ce INNER JOIN ( relacaotb re INNER JOIN Alojamentotb al ON re.codigo = al.codigo) ON ce.codaluno = re.codigo WHERE ce.Status = [ô]MATRICULADO[ô] ORDER BY ce.Sala[Ô]
set RS = conectarAtend.execute(sSQL)
o código seria este acima praticamente em uma unica query consultar baseado em tres tabelas.
repara que ordenei por ce.Sala, porém nem sei se existe este campo na tabela ce (CadEscola) se não funcionar coloque os nomes dos campos das tabelas e qual o relacionamento entre eles
Valeu MARCELO-TREZE, esse modo que você fez é um pouco confuso pra eu conseguir entender, vou estudando esse codigo que você criou e tentar colocar no programa aqui. O ce.* re.* al.* seriam 3 variaveis que você criou para usar no banco ou são as abreviações das tabelas?
Abraço!
Valeu pela força. xD
Abraço!
Valeu pela força. xD
são abreviações ou apledidos, que vc determina para diminuir o tamnho da query
veja onde eu determinei cada um deles
sSQL = [Ô]SELECT [txt-color=#e80000]ce[/txt-color].*, [txt-color=#0000f0]re[/txt-color].*,[txt-color=#007100] al[/txt-color].* FROM CadEscola [txt-color=#e80000]ce[/txt-color] INNER JOIN ( relacaotb [txt-color=#0000f0]re[/txt-color] INNER JOIN Alojamentotb [txt-color=#007100]al[/txt-color] ON re.codigo = al.codigo) ON ce.codaluno = re.codigo WHERE ce.Status = [ô]MATRICULADO[ô] ORDER BY ce.Sala[Ô]
porém a questão é vc testou a query
veja onde eu determinei cada um deles
sSQL = [Ô]SELECT [txt-color=#e80000]ce[/txt-color].*, [txt-color=#0000f0]re[/txt-color].*,[txt-color=#007100] al[/txt-color].* FROM CadEscola [txt-color=#e80000]ce[/txt-color] INNER JOIN ( relacaotb [txt-color=#0000f0]re[/txt-color] INNER JOIN Alojamentotb [txt-color=#007100]al[/txt-color] ON re.codigo = al.codigo) ON ce.codaluno = re.codigo WHERE ce.Status = [ô]MATRICULADO[ô] ORDER BY ce.Sala[Ô]
porém a questão é vc testou a query
Você falou que são duas conexões diferentes, então eu tenho isso para você:
Se for SQL-Server:
Você pode chamar uma outra conexão sem sair da sua.
Eu, por exemplo, tenho um aplicativo ligado a um Servidor de IP: xxx.xxx.x.6, mas faço leitura e gravação no Servidor de IP: xxx.xxx.xx.21.
O que eu fiz;
Criei ama conexão no Linked Server.
Aqui é um exemplo de Linked Server entre SQL e Access.
http://marcelo.todoinfo.com.br/sql-server-linked-server/
Pesquise LINKED SERVER na WEB.
Agora se form Dois banco s diferentes em um mesmo servidor (ou mesma conexão) você pode fazer uma view unindo duas ou mais bases de dados e suas tabelas.
Na hora do INSERT você divide as informações como deve ser, cada qual para a sua tabela.
******************************************************************************************************************
MAS...
Você falou que um relatório, então uma simples view resolve.
******************************************************************************************************************
Se for SQL-Server:
Você pode chamar uma outra conexão sem sair da sua.
Eu, por exemplo, tenho um aplicativo ligado a um Servidor de IP: xxx.xxx.x.6, mas faço leitura e gravação no Servidor de IP: xxx.xxx.xx.21.
O que eu fiz;
Criei ama conexão no Linked Server.
Aqui é um exemplo de Linked Server entre SQL e Access.
http://marcelo.todoinfo.com.br/sql-server-linked-server/
Pesquise LINKED SERVER na WEB.
Agora se form Dois banco s diferentes em um mesmo servidor (ou mesma conexão) você pode fazer uma view unindo duas ou mais bases de dados e suas tabelas.
Na hora do INSERT você divide as informações como deve ser, cada qual para a sua tabela.
******************************************************************************************************************
MAS...
Você falou que um relatório, então uma simples view resolve.
******************************************************************************************************************
Tópico encerrado , respostas não são mais permitidas