Clauido José Postado Janeiro 6, 2009 Denunciar Share Postado Janeiro 6, 2009 (editado) sDatBaix = rsAcrecimo("DatBaixa") if sDatBaix = "" then sDatBa = "01/01/1900" response.Write("deu" & sDatBa & "<BR>") Response.End() elseif sDatBaix <> "" then response.Write("deu 3" & sDatBa & "<BR>") Response.End() end ifalguém pode me ajudar a dizer porque mesmo com a data em branco ele não entra na sDatBaix = "011\1900" Editado Janeiro 6, 2009 por Clauido José Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 .Andreia. Postado Janeiro 9, 2009 Denunciar Share Postado Janeiro 9, 2009 Debuga, manda imprimir a variavel sDatBaix qualquer coisa tenta assimif IsNull(sDatBaix) or if sDatBaix = "" then Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 jow Postado Janeiro 9, 2009 Denunciar Share Postado Janeiro 9, 2009 O q você quer fazer exatamente ?? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Clauido José Postado Janeiro 9, 2009 Autor Denunciar Share Postado Janeiro 9, 2009 Eu estou inserindo um campo data em branco no access com o asp e pelo que sei ele não aceita data em branco correto então fiz o seguinte verifico se a data for branco ele grava a data "011\1900" entendeu? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 .Andreia. Postado Janeiro 9, 2009 Denunciar Share Postado Janeiro 9, 2009 Ue... no Accesss, o campo está "Requerido = Sim" ?? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Clauido José Postado Janeiro 9, 2009 Autor Denunciar Share Postado Janeiro 9, 2009 mas eu coloquei isso mas quando eu gravo uma data em branco ele da este erroTipo de dados imcompatível na expressão de critério.Andei verificando é porque existem datas em branco por isso e me informaram aqui no site que o asp não aceita data em branco. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 .Andreia. Postado Janeiro 10, 2009 Denunciar Share Postado Janeiro 10, 2009 Tipo de dados imcompatível na expressão de critério.Esse erro é quando tenta inserir um tipo de dados q no banco seja diferente. Exemplo, colocar texto em um campo do tipo numerico. No seu caso você está tentando inserir um valor que não é um tipo data: 011\1900 (isso não é uma data)Andei verificando é porque existem datas em branco por isso e me informaram aqui no site que o asp não aceita data em branco.como o asp não aceita data em branco? Se no seu access não tem o "Requerido=Sim" nada impede de você deixar o campo em branco ou nulo. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Clauido José Postado Janeiro 12, 2009 Autor Denunciar Share Postado Janeiro 12, 2009 (editado) Andreia da uma olhada nesse tópico do aspbrasil.com por isso que eu fiz assim eu andei quebrando a cabeça com isso então resolvei ir iliminando os campos até achar o campo que estava dando erro, e é justamente este campo data em que esta em branco e eu coloquei o requerido como sim e testei ele como não.data em branco Editado Janeiro 12, 2009 por Clauido José Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 .Andreia. Postado Janeiro 12, 2009 Denunciar Share Postado Janeiro 12, 2009 Se você quer colocar a data em branco não faz sentido deixar como Requerido. você pode enviar NULL no campo data ou então deixar o valor padrão como null (dai você nem precisaria adicionar o campo data nos insert) Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Clauido José Postado Janeiro 12, 2009 Autor Denunciar Share Postado Janeiro 12, 2009 (editado) O problema é seguinte este banco recebe dados de uma importação de arquivo excell as vezes esse campo data esta em branco as vezes não entende? A detalhe estava me esquecendo por exemplo num outro caso que tenho num cadastro de usuario existe um campo data ativo e outro data inativo quando for incluir um usuario ele sempre vai ser ativo e logicamente a data inativo vai ser branco e na hora de atualizar ele pode colocar ou não a data inativo e sempre que atualizo ou insiro uma data em branco ele me da esse tipo de erro. Editado Janeiro 12, 2009 por Clauido José Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 .Andreia. Postado Janeiro 12, 2009 Denunciar Share Postado Janeiro 12, 2009 E você não pode fazer um replace()? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Clauido José Postado Janeiro 12, 2009 Autor Denunciar Share Postado Janeiro 12, 2009 como assim? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 .Andreia. Postado Janeiro 12, 2009 Denunciar Share Postado Janeiro 12, 2009 tenta assim:data = replace(trim(request("data")), "",NULL) Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Clauido José Postado Janeiro 12, 2009 Autor Denunciar Share Postado Janeiro 12, 2009 Andreia eu coloque assim sDatBaix = Replace(rsAcrecimo("DatBaixa")," ", Null) E deu a seguinte mensagem de erroErro de tempo de execução do Microsoft VBScript (0x800A005E)Uso inválido de Null: 'Replace' Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Rafael Spilki Postado Janeiro 12, 2009 Denunciar Share Postado Janeiro 12, 2009 Realmente... o access até aceita datas em branco... POREEEEEÉM, para isso o campo data não pode aparecer na instrução de insert, sacaram?Duas formas de resolver issoprimeira (gambiarra):if campo_data = "" then canpo_data = "01/01/1900" end if segunda: if campo_data = "" then instrução de insert sem o campo data else instrução de insert com o campo data end ifsacou?[]'s Rafael Spilki Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Clauido José Postado Janeiro 13, 2009 Autor Denunciar Share Postado Janeiro 13, 2009 a ta entendi vou tentar depois coloco se deu certo. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Rafael Spilki Postado Janeiro 13, 2009 Denunciar Share Postado Janeiro 13, 2009 Legal... Só lembre-se... que a segunda forma, para funcionar, precisa te certificar de que o campo data não esteja marcado como requerido no bd tb, ok?Abração... Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Clauido José Postado Janeiro 13, 2009 Autor Denunciar Share Postado Janeiro 13, 2009 E Rafa sempre me salvando heim valeu mais uma vez obrigado Andrei mesmo assim consegui resolver ficou assim a pagina.<!--#include file="strCon.asp"--> <% dim strTitulo,strTexto,strNew, Conexao, strSql,sDatBaix call abreConexao() data = date-1 dia = datepart ("d", data) mes = datepart ("m", data) ano = datepart ("yyyy", data) strdata = (mes&"/"&dia&"/"&ano) strSql = "SELECT * FROM tabDth WHERE (((tabDth.DatCompromisso)=#" & strData & "#)) AND tabDTH.Status='AC' " if rsAcrecimo.state = 1 then rsAcrecimo.Close rsAcrecimo.Open strSql, Conexao, 3,3 'response.Write(rsAcrecimo.RecordCount) if rsAcrecimo.RecordCount >0 then while not rsAcrecimo.Eof data = date() dia = datepart ("d", data) mes = datepart ("m", data) ano = datepart ("yyyy", data) sNoOs = rsAcrecimo("NoOs") sDatComp = FormataData(mes&"/"&dia&"/"&ano) sIdTipoO = rsAcrecimo("idTipoOs") sIdProdu = rsAcrecimo("idProduto") sIdClien = rsAcrecimo("idCliente") sTipoRes = rsAcrecimo("TipoResidencia") sTermina = rsAcrecimo("Terminal") sDatSoli = FormataData(rsAcrecimo("DatSolicitada")) sQtdPont = rsAcrecimo("QtdPontos") sTarAssi = rsAcrecimo("TarAssisTecnico") sidEmpre = rsAcrecimo("idEmpresa") sIdTecni = rsAcrecimo("idTecnico") sStatus = "AB" smotivo = rsAcrecimo("idMotivoBaixa") sNoTa = rsAcrecimo("NoTa") sDatBaix = (rsAcrecimo("DatBaixa")) if sDatBaix = " " then sDatBaix = (rsAcrecimo("DatBaixa")) elseif sDatBaix <> " " then sDatBaix = FormataData(rsAcrecimo("DatBaixa")) end if sHoraIni = rsAcrecimo("HoraInicio") sHOraTer = rsAcrecimo("HoraTermino") sObsServ = rsAcrecimo("ObsServico") sContDia = rsAcrecimo("ContagemDia") sTarefa = rsAcrecimo("Tarefa") sContato = rsAcrecimo("Contato") sInfoAdc = rsACrecimo("InfoAdcionais") sDescric = rsACrecimo("Descricao") sResulta = rsACrecimo("Resultado") sObsLaud = rsACrecimo("ObsLauda") sDatInst = rsACrecimo("DatInstalacao") if sDatInst = " " then sDatInst = (rsAcrecimo("DatInstalacao")) elseif sDatBaix <> " " then sDatInst = FormataData(rsAcrecimo("DatInstalacao")) end if sTipo = rsACrecimo("Tipo") sNo = rsACrecimo("No") sComplem = rsACrecimo("Complemento") sIdUsuar = rsACrecimo("idUsuario") sAtenden = rsACrecimo("Atendente") sReAtend = rsACrecimo("REAtendente") sDatAlte = rsAcrecimo("DatAlterado") if sDatAlte = " " then sDatAlte = (rsAcrecimo("DatAlterado")) elseif sDatAlte <> " " then sDatAlte = FormataData(rsAcrecimo("DatAlterado")) end if sMotivo = rsACrecimo("idMotivoBaixa") campos = "NoOS,idTipoOS,idProduto,idCliente,TipoResidencia,Terminal,Periodo,QtdPontos," campos = campos & "TarAssisTecnico,idEmpresa,idTecnico,Status,NoTa,HoraInicio,HoraTermino,ObsServico," campos = campos & "ContagemDia,Tarefa,Contato,InfoAdcionais,Descricao,Resultado,ObsLauda,Tipo," campos = campos & "No,Complemento,Atendente,REAtendente,idMotivoBaixa" if sDatComp <> " " then campos = campos & ",DatCompromisso" end if if sDatSoli <> " " then campos = campos & ",DatSolicitada" end if if sDatBaix <> " " then campos = campos & ",DatBaixa" end if if sDatInst <> " " then campos = campos & ",DatInstalacao" end if if sDatAlte <> " " then campos = campos & ",DatAlterado" end if strSql = "Insert Into tabDTH (" & campos & ") values (" strSql = strSql & sNoOs & "," & sIdTipoO & "," & sIdProdu & "," & sIdClien & ",'" strSql = strSql & sTipoRes & "','" & sTermina & "','" & sPeriodo & "','" & sQtdPont & "','" strSql = strSql & sTarAssi & "'," & sIdEmpre & "," & sIdTecni & ",'" & sStatus & "','" strSql = strSql & sNoTa & "','" & sHoraIni & "','" & sHoraTer & "','" & sObsServ & "'," strSql = strSql & sContDia & ",'" & sTarefa & "','" & sContato & "','" & sInfoAdc & "','" strSql = strSql & sDescric & "','" & sResulta & "','" & sObsLaud & "','" & sTipo & "'," strSql = strSql & sNo & ",'" & sComplem & "','" & sAtenden & "','" & sReAtend & "'," strSql = strSql & sMotivo if sDatComp <> " " then strSql = strSql & ",#" & sDatComp & "#" end if if sDatSoli <> " " then strSql = strSql & ",#" & sDatSoli & "#" end if if sDatBaix <> " " then strSql = strSql & ",#" & sDatBaix & "#" end if if sDatInst <> " " then strSql = strSql & ",#" & sDatInst & "#" end if if sDatAlte <> " " then strSql = strSql & ",#" & sDatAlte & "#" end if strsql = strsql & ")" response.write "sql="& strSql&"<br>" Conexao.Execute(StrSql) rsAcrecimo.MoveNext 'Response.End() wEnd response.write "Total="& rsAcrecimo.RecordCount else response.write "Total="& rsAcrecimo.RecordCount end if %> Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Clauido José
alguém pode me ajudar a dizer porque mesmo com a data em branco ele não entra na sDatBaix = "011\1900"
Editado por Clauido JoséLink para o comentário
Compartilhar em outros sites
17 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.