none
Usar DefaultValue em uma coluna RRS feed

  • Pergunta

  • Pessoal,

    Estou usando um dataset.xsd e no meu form de cadastro tenho um dataset, um bindingnavigator, um bindingsource e um tableadapter.

    acontece tenho um campo data que não pode ser Null  E QUE recebe a data do dia a cada vez que é inserido um novo registro.

    E no evento click do botão New do meu bindingnavigator coloquei o seguinte código para este campo data receber a data do dia atual.

    dSetCadastros.TABLE_FPAS.DATA_INCColumn.DefaultValue =

    DateTime.Now;

    Acontece que quando vou atualizar no botão SaveItem do meu bindingnavigator me é retornado o seguinte aviso:

    "A coluna DATA_INC não pode ser null"

    O que pode ser?

    Alguem pode me dar uma ajuda?

    Airton Barros

     

     


    JOAB
    quarta-feira, 9 de junho de 2010 00:53

Respostas

  • Joab,

    Não sei se resolveu seu problema, caso contrário no seu codigo informa que o valor do campo é 

    dSetCadastros.TABLE_FPAS.DATA_INCColumn.DefaultValue =

    DateTime.Now;

    Você tentou usar DateTime.Now.ToString();

    No seu DB, a coluna que ira receber esse valor é de qual tipo?

    Abs

     

    terça-feira, 15 de junho de 2010 23:59
  • Olá Novamente,

    Então,  imagino que vc esteja utilizando controles textbox na tela.

    Vamos fazer um teste, em vez de ligar os databinding com o textbox, ligue eles com um grid.

    No grid, qdo vc for digitar uma linha nova, ele automaticamente já vai preencher a coluna data com o default value.

    Outra coisa, no seu formulário, este campo de data está ligado a um textbox ou ele não é exibido para o usuário?

    Ficamos no aguardo.

    quinta-feira, 24 de junho de 2010 23:39
  • Olá Ricardo, tudo bem?

    O campo não aparece para o usuário.

    Mas consegui fazer uma gambiarra, entrei no designer.cs do dataset.xsd e aonde é criado as colunas e suas propriedades coloquei a coluna para receber o System.DateTime.Now e deu certo. 


    JOAB
    • Sugerido como Resposta R1c4rd0 sexta-feira, 25 de junho de 2010 13:15
    • Marcado como Resposta AndreAlvesLimaModerator sexta-feira, 25 de junho de 2010 14:56
    sexta-feira, 25 de junho de 2010 12:39

Todas as Respostas

  • Olá,

    realizei um teste aqui com um grid, simulando sua situação, e funcionou.

    esse seu dataset "dSetCdastros" é o objeto que está usado na tela?

    fico no aguardo.

    quarta-feira, 9 de junho de 2010 12:02
  • Olá Ricardo, desculpe a demora.

    Seguinte:

    Criei um DataSource Com minha tabela TABLE_FPAS e automaticamente me foi gerado um Dataset.xsd com os objetos Table e TableAdapter, Depois arrastei da janela DataSource para o Meu Form, a tabela, e me foi gerado automaticamente no meu Form, 01 Dataset, 01 BindingNavigator, 01 BindingSource e 01 TableAdapter.

    Pergunta:

    "esse seu dataset "dSetCdastros" é o objeto que está usado na tela?"

    Resposta:

    Sim este dataset é o que foi gerado no meu Form.

    Em tempo:

    Estou usando o VS2005 e C#.

    No Aguardo,

    Airton Barros


    JOAB
    quarta-feira, 9 de junho de 2010 20:41
  • Joab,

    Não sei se resolveu seu problema, caso contrário no seu codigo informa que o valor do campo é 

    dSetCadastros.TABLE_FPAS.DATA_INCColumn.DefaultValue =

    DateTime.Now;

    Você tentou usar DateTime.Now.ToString();

    No seu DB, a coluna que ira receber esse valor é de qual tipo?

    Abs

     

    terça-feira, 15 de junho de 2010 23:59
  • Olá, tudo ok?

    Desculpe a demora.

    Respondendo,o meu campo é do tipo DateTime.

    Airton


    JOAB
    quinta-feira, 24 de junho de 2010 17:39
  • Olá Novamente,

    Então,  imagino que vc esteja utilizando controles textbox na tela.

    Vamos fazer um teste, em vez de ligar os databinding com o textbox, ligue eles com um grid.

    No grid, qdo vc for digitar uma linha nova, ele automaticamente já vai preencher a coluna data com o default value.

    Outra coisa, no seu formulário, este campo de data está ligado a um textbox ou ele não é exibido para o usuário?

    Ficamos no aguardo.

    quinta-feira, 24 de junho de 2010 23:39
  • Olá Ricardo, tudo bem?

    O campo não aparece para o usuário.

    Mas consegui fazer uma gambiarra, entrei no designer.cs do dataset.xsd e aonde é criado as colunas e suas propriedades coloquei a coluna para receber o System.DateTime.Now e deu certo. 


    JOAB
    • Sugerido como Resposta R1c4rd0 sexta-feira, 25 de junho de 2010 13:15
    • Marcado como Resposta AndreAlvesLimaModerator sexta-feira, 25 de junho de 2010 14:56
    sexta-feira, 25 de junho de 2010 12:39