Results 1 to 3 of 3
  1. #1
    Join Date
    Jul 2006
    Posts
    56

    Question Unanswered: new problem with ORA-01843: not a valid month

    I've been getting the following error message
    ORA-01843: not a valid month

    and I do know that that's related to the format of the date.

    Thing is, I can't figure out where is the problem. I'm not inserting any data, and when I do, I do use the to_timestamp() function, which handles the dates just the way I want (by the way: dd/mm/yyy hh24:mm:ss)

    In this new problem, I'm getting this error while using select !!! Is that possible?!?!

    Anywayz, here are some data for anyone who might be willing to help me out:
    (I know it's messy)

    The query was around some SQL = SQL & " ... " so there might be some errors in there because of this ...

    select

    chefp.empresas.cnpj cnpj, chefp.empresas.nome_fantasia, chefp.empresas.slogan, chefp.empresas.endereco,
    chefp.empresas.id_bairro, chefp.empresas.cep, chefp.empresas.telefone_1,
    chefp.empresas.id_tipo_estabelecimento, chefp.empresas.mapa_local, chefp.empresas.logomarca,

    localizacao.id_bairro id_bairro_local, localizacao.desc_bairro desc_bairro_local,
    localizacao.id_cidade id_cidade_local,

    chefp.cidades.id_cidade, chefp.cidades.desc_cidade, chefp.cidades.id_uf,

    chefp.ufs.id_uf, chefp.ufs.desc_uf,

    chefp.tipos_estabelecimentos.id_tipo_estabelecimen to,
    chefp.tipos_estabelecimentos.desc_tipo_estabelecim ento,

    chefp.empresas_restaurantes.cnpj cnpj2, chefp.empresas_restaurantes.preco_medio,
    chefp.empresas_restaurantes.musica_ao_vivo, chefp.empresas_restaurantes.estacionamento,
    chefp.empresas_restaurantes.manobrista, chefp.empresas_restaurantes.ar_condicionado,
    chefp.empresas_restaurantes.parque_infantil, chefp.empresas_restaurantes.aceita_reservas,
    chefp.empresas_restaurantes.area_fumantes, chefp.empresas_restaurantes.carta_vinhos,
    chefp.empresas_restaurantes.local, chefp.empresas_restaurantes.delivery,
    chefp.empresas_restaurantes.telefone_delivery, chefp.empresas_restaurantes.expediente,

    chefp.contratos.cnpj, chefp.contratos.id_tipo_contrato,
    chefp.contratos.data_inicio inicio_contrato, chefp.contratos.data_fim fim_contrato,
    chefp.contratos.id_situacao, chefp.contratos.pierre_van,

    chefp.tipos_contratos.id_tipo_contrato, chefp.tipos_contratos.telefones,
    chefp.tipos_contratos.entrega_domicilio, chefp.tipos_contratos.web_cardapio,
    chefp.tipos_contratos.web_pedido, chefp.tipos_contratos.pierre_vip,

    chefp.empresas_eventos.cnpj, chefp.empresas_eventos.data_inicio inicio_evento,
    chefp.empresas_eventos.data_fim fim_evento,

    chefp.empresas_promocoes.cnpj, chefp.empresas_promocoes.data_inicio inicio_promocao,
    chefp.empresas_promocoes.data_fim fim_promocao

    from
    chefp.empresas

    left outer join chefp.bairros localizacao on
    (chefp.empresas.id_bairro = localizacao.id_bairro)

    left outer join chefp.cidades on
    (localizacao.id_cidade = chefp.cidades.id_cidade)

    left outer join chefp.ufs on
    (chefp.cidades.id_uf = chefp.ufs.id_uf)

    left outer join chefp.tipos_estabelecimentos on
    (chefp.empresas.id_tipo_estabelecimento = chefp.tipos_estabelecimentos.id_tipo_estabelecimen to)

    left outer join chefp.empresas_restaurantes on
    (chefp.empresas.cnpj = chefp.empresas_restaurantes.cnpj)

    left outer join chefp.contratos on
    (chefp.empresas.cnpj = chefp.contratos.cnpj)

    left outer join chefp.tipos_contratos on
    (chefp.contratos.id_tipo_contrato = chefp.tipos_contratos.id_tipo_contrato)

    left outer join chefp.empresas_eventos on
    (chefp.empresas.cnpj = chefp.empresas_eventos.cnpj)

    left outer join chefp.empresas_promocoes on
    (chefp.empresas.cnpj = chefp.empresas_promocoes.cnpj)

    left outer join chefp.restaurantes_tipos_comida on
    (chefp.empresas.cnpj = chefp.restaurantes_tipos_comida.cnpj)

    left outer join chefp.tipos_comida on
    (chefp.restaurantes_tipos_comida.id_tipo_comida = chefp.tipos_comida.id_tipo_comida)

    left outer join chefp.restaurantes_bairros on
    (chefp.empresas.cnpj = chefp.restaurantes_bairros.cnpj)

    left outer join chefp.bairros delivery on
    (chefp.restaurantes_bairros.id_bairro = delivery.id_bairro)


    param = 0

    function setWhereClause()
    param = param + 1

    if (param > 1) then
    prefix = and
    else
    prefix = where
    end if

    setWhereClause = prefix
    end Function


    SQL = SQL & setWhereClause & chefp.cidades.id_cidade = & Session(cidade) &

    SQL = SQL & setWhereClause & chefp.tipos_estabelecimentos.id_tipo_estabelecimen to = & id_tipo_estabelecimento(0) &


    if (len(nome_fantasia(0)) > 0) then
    SQL = SQL & setWhereClause & chefp.empresas.nome_fantasia like '% & nome_fantasia(0) & %'
    end if


    if (id_tipo_comida(0) > 0) then
    SQL = SQL & setWhereClause & chefp.restaurantes_tipos_comida.id_tipo_comida = & id_tipo_comida(0) &
    end if

    if (pierre_vip(0) > 0) then
    SQL = SQL & setWhereClause & chefp.tipos_contratos.pierre_vip = 1
    end if

    if (web_cardapio(0) > 0) then
    SQL = SQL & setWhereClause & chefp.tipos_contratos.web_cardapio = 1
    end if

    if not (expediente(0) = 0) then
    SQL = SQL & setWhereClause & chefp.empresas_restaurantes.expediente = 1
    end if


    if (act = delivery) then

    SQL = SQL & setWhereClause & chefp.empresas_restaurantes.delivery = 1


    if (web_pedido(0) > 0) then
    SQL = SQL & setWhereClause & chefp.tipos_contratos.web_pedido = 1
    end if


    SQL = SQL & setWhereClause & chefp.tipos_contratos.entrega_domicilio = 1


    if (id_bairro_delivery(0) > 0) then
    SQL = SQL & setWhereClause & delivery.id_bairro = & cInt(id_bairro_delivery(0)) &
    end if
    end if



    if (act = visita) then

    SQL = SQL & setWhereClause & chefp.empresas_restaurantes.local = 1


    if (id_bairro_local(0) > 0) then
    SQL = SQL & setWhereClause & localizacao.id_bairro = & id_bairro_local(0) &
    end if


    if (pierre_van(0) > 0) then
    SQL = SQL & setWhereClause & chefp.contratos.pierre_van = 1
    end if


    if (evento(0) > 0) then
    SQL = SQL & setWhereClause & chefp.empresas_eventos.data_inicio < to_timestamp(' & now() & ')
    SQL = SQL & setWhereClause & chefp.empresas_eventos.data_fim > to_timestamp(' & now() & ')
    end if


    if (aceita_reservas(0) > 0) then
    SQL = SQL & setWhereClause & chefp.empresas_restaurantes.aceita_reservas = 1
    end if


    if (ar_condicionado(0) > 0) then
    SQL = SQL & setWhereClause & chefp.empresas_restaurantes.ar_condicionado = 1
    end if


    if (area_fumantes(0) > 0) then
    SQL = SQL & setWhereClause & chefp.empresas_restaurantes.area_fumantes = 1
    end if


    if (musica_ao_vivo(0) > 0) then
    SQL = SQL & setWhereClause & chefp.empresas_restaurantes.musica_ao_vivo = 1
    end if


    if (parque_infantil(0) > 0) then
    SQL = SQL & setWhereClause & chefp.empresas_restaurantes.parque_infantil = 1
    end if


    if (estacionamento(0) > 0) then
    SQL = SQL & setWhereClause & chefp.empresas_restaurantes.estacionamento = 1
    end if


    if (manobrista(0) > 0) then
    SQL = SQL & setWhereClause & chefp.empresas_restaurantes.manobrista = 1
    end if






    if (mapa_local(0) > 0) then
    SQL = SQL & setWhereClause & chefp.empresas.mapa_local != '(n/d)'
    end if


    if (carta_vinhos(0) > 0) then
    SQL = SQL & setWhereClause & chefp.empresas_restaurantes.carta_vinhos = 1
    end if


    if (preco_medio(0) > 0) then
    SQL = SQL & setWhereClause & chefp.empresas_restaurantes.preco_medio = & preco_medio(0) &
    end if


    if (promocao(0) > 0) then
    SQL = SQL & setWhereClause & chefp.empresas_promocoes.data_inicio < to_timestamp(' & now() & ')
    SQL = SQL & setWhereClause & chefp.empresas_promocoes.data_fim > to_timestamp(' & now() & ')
    end if




    SQL = SQL & setWhereClause & chefp.contratos.id_situacao <= 3


    SQL = SQL & setWhereClause & chefp.contratos.data_inicio <= to_timestamp(' & now & ')
    SQL = SQL & setWhereClause & chefp.contratos.data_fim > to_timestamp(' & now & ')



    group by

    chefp.empresas.cnpj, chefp.empresas.nome_fantasia, chefp.empresas.slogan, chefp.empresas.endereco,
    chefp.empresas.id_bairro, chefp.empresas.cep, chefp.empresas.telefone_1,
    chefp.empresas.id_tipo_estabelecimento, chefp.empresas.mapa_local, chefp.empresas.logomarca,

    localizacao.id_bairro, localizacao.desc_bairro, localizacao.id_cidade,

    chefp.cidades.id_cidade, chefp.cidades.desc_cidade, chefp.cidades.id_uf,

    chefp.ufs.id_uf, chefp.ufs.desc_uf,

    chefp.tipos_estabelecimentos.id_tipo_estabelecimen to,
    chefp.tipos_estabelecimentos.desc_tipo_estabelecim ento,

    chefp.empresas_restaurantes.cnpj, chefp.empresas_restaurantes.aceita_reservas,
    chefp.empresas_restaurantes.area_fumantes, chefp.empresas_restaurantes.ar_condicionado,
    chefp.empresas_restaurantes.carta_vinhos, chefp.empresas_restaurantes.estacionamento,
    chefp.empresas_restaurantes.manobrista, chefp.empresas_restaurantes.musica_ao_vivo,
    chefp.empresas_restaurantes.parque_infantil, chefp.empresas_restaurantes.preco_medio,
    chefp.empresas_restaurantes.telefone_delivery, chefp.empresas_restaurantes.tempo_medio,
    chefp.empresas_restaurantes.local, chefp.empresas_restaurantes.delivery,
    chefp.empresas_restaurantes.expediente,

    chefp.contratos.cnpj, chefp.contratos.id_tipo_contrato, chefp.contratos.data_inicio,
    chefp.contratos.data_fim, chefp.contratos.id_situacao, chefp.contratos.pierre_van,

    chefp.tipos_contratos.id_tipo_contrato, chefp.tipos_contratos.telefones,
    chefp.tipos_contratos.entrega_domicilio, chefp.tipos_contratos.web_cardapio,
    chefp.tipos_contratos.web_pedido, chefp.tipos_contratos.pierre_vip,

    chefp.empresas_eventos.cnpj, chefp.empresas_eventos.data_inicio,
    chefp.empresas_eventos.data_fim,

    chefp.empresas_promocoes.cnpj, chefp.empresas_promocoes.data_inicio,
    chefp.empresas_promocoes.data_fim


    order by
    chefp.tipos_contratos.pierre_vip DESC, chefp.empresas.nome_fantasia ASC



    There's another funny thing... The error comes up actually in this line:

    if (objRS.PageCount > 1) then

    way after objRS.open ...

    some other info:

    objRS.CursorLocation = 3
    objRS.open SQL, objConn

    server.createobject(ADODB.Connection)
    Provider = MSDAORA


    Thanks for any help

  2. #2
    Join Date
    Jul 2006
    Posts
    56
    BTW, the dates are actually the fields starting with data_

    data_inicio, data_fim etc.

    if there's need for translating the fields, lemme know

    thanx

  3. #3
    Join Date
    Jul 2006
    Posts
    56
    gee, nevermind, guys... fixed it...

    I replaced the to_timestamp() 's with to_date(date_value,date_format) 's and now it works
    Still not sure why the timestamp didn't work... anywayz

    used 'dd/mm/yyyy hh24:mi:ss'


    hope it helps somebody else!

    thanx for anybody who read all this (ouch!)

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •