Tenho duas consultas e ao aplicar o Union está dando erro na macro que chama a consulta.
Percebi que se eu fizer apenas com qualquer uma das consultas, ou seja, sem a UNION, funciona OK, mas ao usar o dá erro 3464.
Já estou a 3 semanas tentando descobrir esse problema, pois a base original era no access 97 e funcionava normal, só que na minha empresa está tudo sendo atualizado para a versão 2010, só que na conversão aparece esses problema, e só falta isso para eu conseguir migrar totalmente.
Seguem as consultas (que são todas derivadas da Cons_Documentos_Pessoa_Aux3):
SELECT [Empreiteira],[NrContrato],[Nome],[CPF],[Função],[Subcontratado],[DataInicio],[Demissão],[DataTermino],[MotivoDemissao],[DocCurso],[Frequencia],[MesAno] FROM Cons_Documentos_Pessoa_Aux3a
UNION
SELECT [Empreiteira],[NrContrato],[Nome],[CPF],[Função],[Subcontratado],[DataInicio],[Demissão],[DataTermino],[MotivoDemissao],[DocCurso],[Frequencia],[MesAno] FROM Cons_Documentos_Pessoa_Aux3d;
SELECT
Cons_Documentos_Pessoa_Aux3.Empreiteira, Cons_Documentos_Pessoa_Aux3.NrContrato, Cons_Documentos_Pessoa_Aux3.Nome, Cons_Documentos_Pessoa_Aux3.CPF, Cons_Documentos_Pessoa_Aux3.Função, Cons_Documentos_Pessoa_Aux3.Subcontratado, Cons_Documentos_Pessoa_Aux3.DataInicio, Cons_Documentos_Pessoa_Aux3.Demissão, Cons_Documentos_Pessoa_Aux3.DataTermino, Cons_Documentos_Pessoa_Aux3.MotivoDemissao, Cons_Documentos_Pessoa_Aux3.DocCurso, Cons_Documentos_Pessoa_Aux3.Frequencia, Cons_Documentos_Pessoa_Aux3.MesAno
FROM Cons_Documentos_Pessoa_Aux3
WHERE (((Cons_Documentos_Pessoa_Aux3.DocCurso)<>"Comprovante Entrega Vale-transporte") AND ((Cons_Documentos_Pessoa_Aux3.Frequencia)="Mensal15" Or (Cons_Documentos_Pessoa_Aux3.Frequencia)="Mensal10"));
SELECT
Cons_Documentos_Pessoa_Aux3c.Empreiteira, Cons_Documentos_Pessoa_Aux3c.NrContrato, Cons_Documentos_Pessoa_Aux3c.Nome, Cons_Documentos_Pessoa_Aux3c.CPF, Cons_Documentos_Pessoa_Aux3c.Função, Cons_Documentos_Pessoa_Aux3c.Subcontratado, Cons_Documentos_Pessoa_Aux3c.DataInicio, Cons_Documentos_Pessoa_Aux3c.Demissão, Cons_Documentos_Pessoa_Aux3c.DataTermino, Cons_Documentos_Pessoa_Aux3c.MotivoDemissao, Cons_Documentos_Pessoa_Aux3c.DocCurso, Cons_Documentos_Pessoa_Aux3c.Frequencia, Cons_Documentos_Pessoa_Aux3c.MesAno
FROM
Cons_Documentos_Pessoa_Aux3c
INNER JOIN
Cons_Rel_SitDocs_Opcao_VT ON (Cons_Documentos_Pessoa_Aux3c.ÚltimoDeDataOpcao = Cons_Rel_SitDocs_Opcao_VT.DataOpcao) AND (Cons_Documentos_Pessoa_Aux3c.Nome = Cons_Rel_SitDocs_Opcao_VT.Contratado) AND (Cons_Documentos_Pessoa_Aux3c.CPF = Cons_Rel_SitDocs_Opcao_VT.CPF) AND (Cons_Documentos_Pessoa_Aux3c.NrContrato = Cons_Rel_SitDocs_Opcao_VT.Contrato)
GROUP BY
Cons_Documentos_Pessoa_Aux3c.Empreiteira, Cons_Documentos_Pessoa_Aux3c.NrContrato, Cons_Documentos_Pessoa_Aux3c.Nome, Cons_Documentos_Pessoa_Aux3c.CPF, Cons_Documentos_Pessoa_Aux3c.Função, Cons_Documentos_Pessoa_Aux3c.Subcontratado, Cons_Documentos_Pessoa_Aux3c.DataInicio, Cons_Documentos_Pessoa_Aux3c.Demissão, Cons_Documentos_Pessoa_Aux3c.DataTermino, Cons_Documentos_Pessoa_Aux3c.MotivoDemissao, Cons_Documentos_Pessoa_Aux3c.DocCurso, Cons_Documentos_Pessoa_Aux3c.Frequencia, Cons_Documentos_Pessoa_Aux3c.MesAno, Cons_Documentos_Pessoa_Aux3c.ÚltimoDeDataOpcao, Cons_Rel_SitDocs_Opcao_VT.OpcaoValeTransporte
HAVING (((Cons_Rel_SitDocs_Opcao_VT.OpcaoValeTransporte)=True));
Agradeço muito se alguém conseguir me ajudar
Percebi que se eu fizer apenas com qualquer uma das consultas, ou seja, sem a UNION, funciona OK, mas ao usar o dá erro 3464.
Já estou a 3 semanas tentando descobrir esse problema, pois a base original era no access 97 e funcionava normal, só que na minha empresa está tudo sendo atualizado para a versão 2010, só que na conversão aparece esses problema, e só falta isso para eu conseguir migrar totalmente.
Seguem as consultas (que são todas derivadas da Cons_Documentos_Pessoa_Aux3):
SELECT [Empreiteira],[NrContrato],[Nome],[CPF],[Função],[Subcontratado],[DataInicio],[Demissão],[DataTermino],[MotivoDemissao],[DocCurso],[Frequencia],[MesAno] FROM Cons_Documentos_Pessoa_Aux3a
UNION
SELECT [Empreiteira],[NrContrato],[Nome],[CPF],[Função],[Subcontratado],[DataInicio],[Demissão],[DataTermino],[MotivoDemissao],[DocCurso],[Frequencia],[MesAno] FROM Cons_Documentos_Pessoa_Aux3d;
SELECT
Cons_Documentos_Pessoa_Aux3.Empreiteira, Cons_Documentos_Pessoa_Aux3.NrContrato, Cons_Documentos_Pessoa_Aux3.Nome, Cons_Documentos_Pessoa_Aux3.CPF, Cons_Documentos_Pessoa_Aux3.Função, Cons_Documentos_Pessoa_Aux3.Subcontratado, Cons_Documentos_Pessoa_Aux3.DataInicio, Cons_Documentos_Pessoa_Aux3.Demissão, Cons_Documentos_Pessoa_Aux3.DataTermino, Cons_Documentos_Pessoa_Aux3.MotivoDemissao, Cons_Documentos_Pessoa_Aux3.DocCurso, Cons_Documentos_Pessoa_Aux3.Frequencia, Cons_Documentos_Pessoa_Aux3.MesAno
FROM Cons_Documentos_Pessoa_Aux3
WHERE (((Cons_Documentos_Pessoa_Aux3.DocCurso)<>"Comprovante Entrega Vale-transporte") AND ((Cons_Documentos_Pessoa_Aux3.Frequencia)="Mensal15" Or (Cons_Documentos_Pessoa_Aux3.Frequencia)="Mensal10"));
SELECT
Cons_Documentos_Pessoa_Aux3c.Empreiteira, Cons_Documentos_Pessoa_Aux3c.NrContrato, Cons_Documentos_Pessoa_Aux3c.Nome, Cons_Documentos_Pessoa_Aux3c.CPF, Cons_Documentos_Pessoa_Aux3c.Função, Cons_Documentos_Pessoa_Aux3c.Subcontratado, Cons_Documentos_Pessoa_Aux3c.DataInicio, Cons_Documentos_Pessoa_Aux3c.Demissão, Cons_Documentos_Pessoa_Aux3c.DataTermino, Cons_Documentos_Pessoa_Aux3c.MotivoDemissao, Cons_Documentos_Pessoa_Aux3c.DocCurso, Cons_Documentos_Pessoa_Aux3c.Frequencia, Cons_Documentos_Pessoa_Aux3c.MesAno
FROM
Cons_Documentos_Pessoa_Aux3c
INNER JOIN
Cons_Rel_SitDocs_Opcao_VT ON (Cons_Documentos_Pessoa_Aux3c.ÚltimoDeDataOpcao = Cons_Rel_SitDocs_Opcao_VT.DataOpcao) AND (Cons_Documentos_Pessoa_Aux3c.Nome = Cons_Rel_SitDocs_Opcao_VT.Contratado) AND (Cons_Documentos_Pessoa_Aux3c.CPF = Cons_Rel_SitDocs_Opcao_VT.CPF) AND (Cons_Documentos_Pessoa_Aux3c.NrContrato = Cons_Rel_SitDocs_Opcao_VT.Contrato)
GROUP BY
Cons_Documentos_Pessoa_Aux3c.Empreiteira, Cons_Documentos_Pessoa_Aux3c.NrContrato, Cons_Documentos_Pessoa_Aux3c.Nome, Cons_Documentos_Pessoa_Aux3c.CPF, Cons_Documentos_Pessoa_Aux3c.Função, Cons_Documentos_Pessoa_Aux3c.Subcontratado, Cons_Documentos_Pessoa_Aux3c.DataInicio, Cons_Documentos_Pessoa_Aux3c.Demissão, Cons_Documentos_Pessoa_Aux3c.DataTermino, Cons_Documentos_Pessoa_Aux3c.MotivoDemissao, Cons_Documentos_Pessoa_Aux3c.DocCurso, Cons_Documentos_Pessoa_Aux3c.Frequencia, Cons_Documentos_Pessoa_Aux3c.MesAno, Cons_Documentos_Pessoa_Aux3c.ÚltimoDeDataOpcao, Cons_Rel_SitDocs_Opcao_VT.OpcaoValeTransporte
HAVING (((Cons_Rel_SitDocs_Opcao_VT.OpcaoValeTransporte)=True));
Agradeço muito se alguém conseguir me ajudar
Última edição por Nemesys em 16/7/2014, 13:58, editado 1 vez(es)