DUVIDA COM DATE

USUARIO.EXCLUIDOS 15/08/2007 07:42:58
#230934
Pessoal, no meu prog tenho 1 banco Access e estou fazendo 1 tabela com as alterações feitas nos produtos como por exemplo,

alteração de descrição
alteração de sua estrutura
cadastro de novo insumos

enfim, uma porrada de coisa...

Mas p/ isso eu preciso gravar em meu banco de dados acess uma variável com a DATA e HORA (opcional, talvez não use) desta mudança...

Como devo proceder sendo que tenho 1 campo do tipo DATE/HOUR no meu banco de dados??

Lembrando que a função DATE não funcionou aqui... a data que ele retorna é 00:01:15...

mas na minha statusbar esse comando funfa...

como faço p/ proceder??

Deverá fiar salvo assim no banco:

15/08/2007

Alguem pode me dar essa ajuda??

Agradeço desde já!

Rodrigo
GOLVEIAR 15/08/2007 08:00:14
#230935
caro rodrigo veja a configuração de data do seu pc no painel de controle opcões regionais e de idioma
na guia opções gerais personalisar na guia hora escolha o formato de hora HH:mm:ss e na guia data escolha formato de data abreviada dd/MM/aaaa ai seu pc não retornará mais na fuanção date 00:01:15.. blz no seu campo de date do seu db deixa texto e personalize o txt ou objeto que usar com data exe.: barras para que o usuario não precise digitar valeu. Espero que te ajudei
EMANUEL 15/08/2007 08:17:16
#230937
Amigo, vc esta usando a funação Format ?

Se nao, utilize a esta função para quando for gravar ou alterar. tiopo assim:

'" & format(Date(),"DD/MM/YYYY HH:MM") & "'


onde o Date() vc pode substituir pelo seu controle...

sds
espero ter ajudado.
Emanuel
USUARIO.EXCLUIDOS 15/08/2007 12:48:29
#231011
Segue a rotina que estou usando p/ salvar estes dados:

Private Sub Produto()

Dim cnnComando As New ADODB.Command

ProdutoA = "Barramento de " & cmbMaterial.Text & " - " & txtEspessura.Text & " X " & txtLargura.Text

With cnnComando
.ActiveConnection = cnnBanco
.CommandType = adCmdText
.CommandText = "INSERT INTO Alteracoes " & _
"(Usuario, Operacao, Produto, Data) VALUES ('" & _
UsuarioMaster & "','Cadastro no sistema','" & _
ProdutoA & "'," & Date & ");"
.Execute

Limpar
End With

End Sub


Qual o problema aqui??

pq não grava de forma correta??
USUARIO.EXCLUIDOS 15/08/2007 13:05:08
#231012
Resposta escolhida
Tipo assim amigo, as datas no Access são gravadas no formato MM\DD\AAAA, e a função Date, retorna no formato DD\MM\AAAA.

Eu aconselho também utilar o NOW ao invés do Date.

Tente fazer assim:
Dim cnnComando As New ADODB.Command

ProdutoA = "Barramento de " & cmbMaterial.Text & " - " & txtEspessura.Text & " X " & txtLargura.Text

With cnnComando
.ActiveConnection = cnnBanco
.CommandType = adCmdText
.CommandText = "INSERT INTO Alteracoes " & _
"(Usuario, Operacao, Produto, Data) VALUES ('" & _
UsuarioMaster & "','Cadastro no sistema','" & _
ProdutoA & "',#" & Format(Now,"MM/DD/AAAA HH:nn:SS" & "#);"
.Execute

Limpar
End With

USUARIO.EXCLUIDOS 16/08/2007 12:31:12
#231178
Marcelo...

ao aplicar essa forma com o Now algo dá errado, ele não passa pela Sub Rotina algo assim!!! Ele não demonstra mensagem de erro nenhuma mas tbm não executa!!!
USUARIO.EXCLUIDOS 16/08/2007 13:03:49
#231183
ele deve executar sim, creio que o problema está em outra coisa.

O Now não influenciaria desta forma...


Vc tentou trocar o Now pelo Date pra ver o que acontece?
USUARIO.EXCLUIDOS 16/08/2007 13:58:09
#231194
Sim.. inicialmente eu usava o Date...

Não sei cara.. mas o que aconteçe é o seguinte:

qdo uso a função com DATE ele executa normalmente e eu pedi p/ ele me dar 1 msgbox na saida da sub rotina produto...

qdo troco p/ a função NOW ele não me dá essa msgbox na saida da sub rotina...

por isso creio que ali esta o prob!!!
USUARIO.EXCLUIDOS 16/08/2007 14:19:24
#231200
Está faltando uns parenteses ali no meu exemplo, agora que percebi, vc chegou a arrumar ?
Se não, está aí o exemplo novamente.

With cnnComando
.ActiveConnection = cnnBanco
.CommandType = adCmdText
.CommandText = "INSERT INTO Alteracoes " & _
"(Usuario, Operacao, Produto, Data) VALUES ('" & _
UsuarioMaster & "','Cadastro no sistema','" & _
ProdutoA & "',#" & Format(Now,"MM/DD/YYYY HH:nn:SS") & "#);"
.Execute

Limpar
End With



Creio que o problema não está no Now... testa com o exemplo acima.
USUARIO.EXCLUIDOS 16/08/2007 14:25:15
#231204
Pahhhh...

consegui aqui manualmente... hehehe.. o prob foi numa outra instrução que dei anteriormente.. nd a ver com o DATE...

Marcelo.. eu havia visto sim cara... sempre dou uma revisada e tento entender o código antes de utilizá-lo...

Vlw a ajuda.. topico fechado!!!
Tópico encerrado , respostas não são mais permitidas