Partilhar via


COleDateTime::GetStatus

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

DateTimeStatus GetStatus( ) const throw( );

Valor de retorno

Retorna o status deste COleDateTime valor. Se você chamar GetStatus on a COleDateTime objeto construído com o padrão, ele retornará válido. Se você chamar GetStatus on a COleDateTime objeto inicializado com o construtor conjunto como null, GetStatus retornará nulo.See Comentários para obter mais informações.

Comentários

O valor retornado é definido pelo DateTimeStatus enumerados tipo, que é definido dentro de COleDateTime classe.

enum DateTimeStatus

{

error = -1,

valid = 0,

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

null = 2, // Literally has no value

};

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

  • COleDateTime::error   Indica que ocorreu um erro ao tentar obter parte o Data/time valor.

  • COleDateTime::valid   Indica que este COleDateTime o objeto é válido.

  • COleDateTime::invalid   Indica que este COleDateTime o objeto é inválido; ou seja, seu valor pode ser incorreto.

  • COleDateTime::null   Indica que este COleDateTime o objeto é nulo, ou seja, se nenhum valor foi fornecido para este objeto. (Isso é "nulo" no sentido de banco de dados de "não ter nenhum valor" em oposição do C++NULO.)

O status de um COleDateTime o objeto é inválido nos seguintes casos:

  • Se seu valor é conjunto por um VARIANTE or COleVariant valor que não pôde ser convertido para um valor de data/hora.

  • Se seu valor é conjunto por um time_t, SYSTEMTIME, ou FILETIME valor que não pôde ser convertido para um valor de data/time válida.

  • Se seu valor é conjunto por SetDateTime com os valores de parâmetro inválido.

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

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

  • Se o status deste objeto foi explicitamente definido como inválido usando SetStatus.

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

Para obter mais informações sobre os limites de COleDateTime valores, consulte o artigo Data e time: 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 COleDateTime

Gráfico de hierarquia

COleDateTime::SetStatus

COleDateTime::m_status

Outros recursos

COleDateTime membros