MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração


Participe do fórum, é rápido e fácil

MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração

MaximoAccess

Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

Dicas Ms Access, Exemplos Ms Access, Codigos VBA Ms Access, SQL Ms Access


4 participantes

    [Resolvido]Ordenar em ordem Crescente campo mm/yyyy

    avatar
    Antonybrazil
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 108
    Registrado : 13/04/2011

    [Resolvido]Ordenar em ordem Crescente campo mm/yyyy Empty Ordenar em ordem crescendo campo MM/YYYY

    Mensagem  Antonybrazil 11/9/2011, 18:05

    Tenho uma tabela de referência cruzada onde o Título de Coluna é um campo calculado a partir do campo DATA. O campo calculado é o seguinte: Format([Data];"mm/yyyy";0;0)

    O problema é que o acess não esta classificando as colunas na ordem crescente mesmo estando selecionada tal classificação. Eu penso que o acess talvez não esteja reconhecendo este campo calculado como um campo DATA e sim como um número inteiro, pois a classificação que ele faz é assim:

    02/2011 03/2011 04/2011 05/2011 10/2010 10/2011 12/2010

    O código CQL é o seguinte:

    TRANSFORM First(DetalhesCD4eCV.Presença) AS PrimeiroDePresença
    SELECT Dadoscomuns.Nomepaciente AS Nome
    FROM Dadoscomuns INNER JOIN DetalhesCD4eCV ON Dadoscomuns.Codigo = DetalhesCD4eCV.Codigo
    WHERE (((Dadoscomuns.CD4_CV)=Yes))
    GROUP BY Dadoscomuns.Nomepaciente
    ORDER BY Dadoscomuns.Nomepaciente, Format([Data],"mm/yyyy",0,0)
    PIVOT Format([Data],"mm/yyyy",0,0);
    Avelino Sampaio
    Avelino Sampaio
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3900
    Registrado : 04/04/2010

    [Resolvido]Ordenar em ordem Crescente campo mm/yyyy Empty Re: [Resolvido]Ordenar em ordem Crescente campo mm/yyyy

    Mensagem  Avelino Sampaio 11/9/2011, 18:30

    Experimente alterando a formatação da data, na ordenação.

    Exemplo:

    ...
    ORDER BY Dadoscomuns.Nomepaciente, Format([Data],"yyyymm",0,0)
    ...
    avatar
    Antonybrazil
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 108
    Registrado : 13/04/2011

    [Resolvido]Ordenar em ordem Crescente campo mm/yyyy Empty Re: [Resolvido]Ordenar em ordem Crescente campo mm/yyyy

    Mensagem  Antonybrazil 11/9/2011, 18:59

    Olá Avelino. Sua sugestão dá perfeitamente certo em uma consulta seleção. Porém numa consulta de referência cruzada apresenta o seguinte erro:

    Você tentou executar uma consulta que não inclui a expressão 'Format([Data],"yyyy/mm")' especificada como parte de uma função agregada.
    Alexandre Neves
    Alexandre Neves
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 8498
    Registrado : 05/11/2009

    [Resolvido]Ordenar em ordem Crescente campo mm/yyyy Empty Re: [Resolvido]Ordenar em ordem Crescente campo mm/yyyy

    Mensagem  Alexandre Neves 11/9/2011, 22:01

    Antony,

    O Amigo Avelino permitir-me-á aproveitar o seu código.
    Adapte o GROUP BY para
    ...
    GROUP BY Dadoscomuns.Nomepaciente, Format([Data],"yyyymm",0,0)
    ...
    avatar
    Antonybrazil
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 108
    Registrado : 13/04/2011

    [Resolvido]Ordenar em ordem Crescente campo mm/yyyy Empty Re: [Resolvido]Ordenar em ordem Crescente campo mm/yyyy

    Mensagem  Antonybrazil 11/9/2011, 22:52

    Ele não deu mais a mensagem de erro especificada a cima, no entanto a consulta continua apresentando as colunas de forma desordenada.

    Marlo Sandrei gosta desta mensagem

    avatar
    Antonybrazil
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 108
    Registrado : 13/04/2011

    [Resolvido]Ordenar em ordem Crescente campo mm/yyyy Empty Re: [Resolvido]Ordenar em ordem Crescente campo mm/yyyy

    Mensagem  Antonybrazil 12/9/2011, 13:28

    Conforme a orientação mestre Avelino eu consequi colocar o campo em ordem crescente somente no padrão de data americano YYYY/MM. Parece que access ficou devendo a ordem crescente para o padrão brasileiro.

    ORDER BY Dadoscomuns.Nomepaciente, Format([Data],"yyyy/mm",0,0)
    PIVOT Format([Data],"yyyy/mm",0,0);
    Avelino Sampaio
    Avelino Sampaio
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3900
    Registrado : 04/04/2010

    [Resolvido]Ordenar em ordem Crescente campo mm/yyyy Empty Re: [Resolvido]Ordenar em ordem Crescente campo mm/yyyy

    Mensagem  Avelino Sampaio 12/9/2011, 14:04

    Olá Antonio

    Não se trata do padrão americano e sim da montagem de uma sequência numérica da data, que permita a ordenação.

    observe que antes era ordenado PRIMEIRO por mês e depois por ano

    02/2011 03/2011 04/2011 05/2011 10/2010 10/2011 12/2010

    Com a mudança na formatação, colocando o ano PRIMEIRO, vc força o Access a ordenar pelo ano e depois pelo mês

    2010/10 2010/12 2011/02 2011/03 2011/04 2011/10

    Sucesso!


    .................................................................................
    Vídeos, livros, kit MontaRibbons e acesso vitalício ao site UsandoAcces  
    Clique AQUI e analise o custo beneficio do material oferecido.
    vieirasoft
    vieirasoft
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7304
    Registrado : 11/05/2010

    [Resolvido]Ordenar em ordem Crescente campo mm/yyyy Empty Re: [Resolvido]Ordenar em ordem Crescente campo mm/yyyy

    Mensagem  vieirasoft 21/9/2011, 16:48

    Como não houve retorno, o tópico passa a resolvido. Qualquer coisa reabra, por favor.

    Marlo Sandrei gosta desta mensagem


    Conteúdo patrocinado


    [Resolvido]Ordenar em ordem Crescente campo mm/yyyy Empty Re: [Resolvido]Ordenar em ordem Crescente campo mm/yyyy

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 22/11/2024, 11:11