Compartilhar via


COleDateTime::GetStatus

Obtém o status (validade) de um determinado objeto de COleDateTime .

DateTimeStatus GetStatus( ) const throw( );

Valor de retorno

Retorna o status de este valor de COleDateTime .Se você chamar GetStatus em um objeto de COleDateTime construído com a opção, retornará válido.Se você chamar GetStatus em um objeto de COleDateTime inicializado com o construtor definido como zero, GetStatus retornará o zero.Consulte Comentários para mais informações.

Comentários

O valor de retorno é definido pelo tipo enumerado de DateTimeStatus , que é definido dentro da classe de COleDateTime .

enum DateTimeStatus

{

error = -1,

valid = 0,

invalid = 1, // Invalid date (out of range, etc.)

null = 2, // Literally has no value

};

Para obter uma descrição resumida de esses valores de status, consulte a lista a seguir:

  • COleDateTime::error indica que um erro ocorreu ao tentar obter a parte de data/valor de tempo.

  • COleDateTime::valid indica que este objeto de COleDateTime é válido.

  • COleDateTime::invalid indica que este objeto de COleDateTime não é válido; isto é, o valor pode estar incorretos.

  • COleDateTime::null indica que este objeto de COleDateTime é zero, isto é, que nenhum valor foi fornecido para esse objeto.(Esse é “zero” no sentido de banco de dados de “não ter nenhum valor”, diferentemente de NULOC++.)

O status de um objeto de COleDateTime não é válido nos seguintes casos:

  • Se o valor é definido de um valor de VARIANT ou de COleVariant que não pode ser convertido em um valor de data/hora.

  • Se o valor é definido de time_t, de SYSTEMTIME, ou do valor de FILETIME que não pode ser convertido em um valor válido de data/hora.

  • Se o valor é definido por SetDateTime com valores de parâmetros inválidos.

  • Se este objeto apresentou um estouro ou um estouro negativo durante uma operação aritmética de atribuição, como, += ou -=.

  • Se um valor inválido foi atribuído ao objeto.

  • Se o status de esse objeto for explicitamente a SetStatusem uso inválido.

Para obter mais informações sobre as operações que podem definir o status para inválido, consulte as seguintes funções de membro:

Para obter mais informações sobre limites para valores de COleDateTime , consulte o artigo Data e hora: Suporte de automação.

Exemplo

COleDateTime t;

// this one is a leap year
t.SetDateTime(2000, 2, 29, 5, 0, 0);
ASSERT(t.GetStatus() == COleDateTime::valid);

// this date isn't valid
t.SetDateTime(1925, 2, 30, 5, 0, 0);
ASSERT(t.GetStatus() == COleDateTime::invalid);

// the only way to set null is to set null!
t.SetStatus(COleDateTime::null);
ASSERT(t.GetStatus() == COleDateTime::null);   

Requisitos

Cabeçalho: atlcomtime.h

Consulte também

Referência

Classe de COleDateTime

Gráfico de hierarquia

COleDateTime::SetStatus

COleDateTime::m_status