none
Campo calculado com data RRS feed

  • Pergunta

  • Bom dia a todos,
    Possuo um cadastro e gostaria de calcular o seguinte, o usuário tem um campo aonde ele coloca a data de vencimento, através de um date picker, e assim que ele coloca a data, preciso de uma função que faça a diferença entre a data de vencimento até hoje - TODAY, e me de quantos dias esta em atraso. E assim que se passa os dias ele atualiza este valor, retornando este valor em dias.
    Atenciosamente,
    Emerson
    terça-feira, 10 de novembro de 2009 12:36

Respostas

  • Emerson,

    Tudo bem?

    Para realizar tal cálculo você poderia utilizar a função DATADIF disponível nos campos calculados:

    Sintaxe

    DATADIF(data_inicial,data_final,unidade)

    Data_inicial   Uma data que representa a primeira, ou inicial, data do período. As datas podem ser inseridas como seqüências de caracteres de texto entre aspas (por exemplo, "2001/1/30"), como números de série (por exemplo, 36921, que representa 30 de janeiro, 2001, se você estiver usando o sistema de data 1900), ou como os resultados de outras fórmulas ou funções (por exemplo, DATA.VALOR("2001/1/30")).

    Data_final   Uma data que representa a última, ou final, data do período.

    Unidade   O tipo de informação que você deseja retornar:

    UnidadeRetorna
    "Y" O número de anos completos no período.
    "M" O número de meses completos no período.
    "D" O número de dias no período.
    "MD" A diferença entre os dias na data_inicial e data_final. Os meses e anos das datas são ignorados.
    "YM" A diferença entre os meses na data_inicial e data_final. Os dias e anos das datas são ignorados.
    "YD" A diferença entre os dias da data_inicial e data_final. Os anos das datas são ignorados.



    Desta forma:

    =DATADIF([Data]; Hoje; "D")

    Entretanto você não pode realizar cálculos com campos voláteis como EU e HOJE. Sendo assim, você cria um campo cálculado contendo o valor de Hoje e utiliza este campo para realizar o cálculo.

    Desta forma: =DATADIF([CampoDataInicial]; [CampoDataFinal]; "D")



    Se esta resposta for útil, marque-a como tal.


    Rodrigo Romano
    New Concept - Soluções Inovadoras

    http://www.nconcept.net
    http://rodrigo-romano.spaces.live.com
    terça-feira, 10 de novembro de 2009 18:40
    Moderador

Todas as Respostas

  • Emerson,

    Tudo bem?

    Para realizar tal cálculo você poderia utilizar a função DATADIF disponível nos campos calculados:

    Sintaxe

    DATADIF(data_inicial,data_final,unidade)

    Data_inicial   Uma data que representa a primeira, ou inicial, data do período. As datas podem ser inseridas como seqüências de caracteres de texto entre aspas (por exemplo, "2001/1/30"), como números de série (por exemplo, 36921, que representa 30 de janeiro, 2001, se você estiver usando o sistema de data 1900), ou como os resultados de outras fórmulas ou funções (por exemplo, DATA.VALOR("2001/1/30")).

    Data_final   Uma data que representa a última, ou final, data do período.

    Unidade   O tipo de informação que você deseja retornar:

    UnidadeRetorna
    "Y" O número de anos completos no período.
    "M" O número de meses completos no período.
    "D" O número de dias no período.
    "MD" A diferença entre os dias na data_inicial e data_final. Os meses e anos das datas são ignorados.
    "YM" A diferença entre os meses na data_inicial e data_final. Os dias e anos das datas são ignorados.
    "YD" A diferença entre os dias da data_inicial e data_final. Os anos das datas são ignorados.



    Desta forma:

    =DATADIF([Data]; Hoje; "D")

    Entretanto você não pode realizar cálculos com campos voláteis como EU e HOJE. Sendo assim, você cria um campo cálculado contendo o valor de Hoje e utiliza este campo para realizar o cálculo.

    Desta forma: =DATADIF([CampoDataInicial]; [CampoDataFinal]; "D")



    Se esta resposta for útil, marque-a como tal.


    Rodrigo Romano
    New Concept - Soluções Inovadoras

    http://www.nconcept.net
    http://rodrigo-romano.spaces.live.com
    terça-feira, 10 de novembro de 2009 18:40
    Moderador
  • Bom dia Rodrigo,
    A solução foi adicionada, e funcionou, mas gostaria de saber se este campo vai ser atualizado no dia a dia, por exemplo cadastrei hoje e me deu uma diferença de 2 dias, amanhã esta diferença vai ser de 3 dias e assim por diante, entendeu.
    Atenciosamente,
    Emerson
    quarta-feira, 11 de novembro de 2009 11:39