Formatação - Semana do Mês



  • Olá estou utilizando a função formatação, passando os parâmetros (data, W) para retornar a semana do mês, meu fluxo é do tipo servidor.

    Acontece que, na minha máquina de produção o fluxo retorna um valor diferente da minha máquina de desenvolvimento.

    Ex: 09/09/2013 máquina produção retorna semana 1
    09/09/2013 máquina desenvolvimento retorna semana 2

    Já verifiquei as configurações data/hora do SO e do banco, estão iguais.
    Alguém sabe oq pode ser?


  • [quote="VVB"]Olá estou utilizando a função formatação, passando os parâmetros (data, W) para retornar a semana do mês, meu fluxo é do tipo servidor.

    Acontece que, na minha máquina de produção o fluxo retorna um valor diferente da minha máquina de desenvolvimento.

    Ex: 09/09/2013 máquina produção retorna semana 1
    09/09/2013 máquina desenvolvimento retorna semana 2

    Já verifiquei as configurações data/hora do SO e do banco, estão iguais.
    Alguém sabe oq pode ser?[/quote] Qual o banco de dados?


  • Postgres versão 8.2.5.
    Os arquivos [u]postgresql.conf[/u] das duas máquinas estão idênticos.

    A diferença é apenas no SO, uma delas está com Windows Server 2003 [u]Enterprise[/u] Edition e a outra com Windows Server 2003 [u]Datacenter[/u] Edition, isso pode influenciar?


  • Tente a função TO_DATE no próprio banco e veja se retorna algo diferente:

    TO_DATE(<campo>, 'W')


  • Olá, acho que a função TO_DATE não funciona nesses casos, tentei a seguinte sintaxe:

    [b]select to_date('2013-09-09'::text, 'W'::text);[/b] e o retorno é sempre [b]"0001-01-08 BC"[/b].

    Já a função TO_CHAR retorna resultados iguais nas duas máquinas:

    [b]select to_char('2013-09-09'::timestamp, 'W');[/b] o retorno é [b]"2"[/b].

    O problema é que a função TO_CHAR me obriga a fazer diversos cálculos para saber a semana certa.


  • Realmente era a função TO_CHAR, coloquei o to_date...

    Bom, não entendi quando você diz que terá de fazer vários cálculos com ela.. uma vez que basta que você utilize-a, no lugar da função do Maker.


  • A função TO_CHAR não começa a semana no DOMINGO.

    Por exemplo o mês de AGOSTO 2013.
    O dia 1 é uma quinta-feira e está na semana 1, só a partir do dia 8 a próxima quinta-feira será considerado semana 2.

Log in to reply