Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

cesarhtc

ORA-01861: literal does not match format string

Recommended Posts

Alguém poderia me ajudar não sei mas o que fazer.

 

 

mensagem de erro:

 

 

OraOLEDB error '80040e14'

 

 

ORA-01861: literal does not match format string

/Suprimentos/web_esti/aviso_pg_protheus_CHC2.asp, line 80

 

 

 

 

Codigo que uso.

 

 

strSql= "SELECT PROTHEUS.CO1010.CO1_XDTABL, PROTHEUS.CO1010.CO1_FILIAL, PROTHEUS.CO1010.CO1_CODEDT, PROTHEUS.CO1010.CO1_XHRABL, PROTHEUS.CO1010.CO1_XPUBLI, PROTHEUS.CO1010.CO1_OBS1, PROTHEUS.CO1010.CO1_DTABER FROM PROTHEUS.CO1010 WHERE CAST(TRIM(SUBSTR(PROTHEUS.CO1010.CO1_XDTABL, 7, 2) || SUBSTR(PROTHEUS.CO1010.CO1_XDTABL, 5, 2) || SUBSTR(PROTHEUS.CO1010.CO1_XDTABL, 0, 4))AS DATE) > SYSDATE AND PROTHEUS.CO1010.CO1_XPUBLI = 'S' ORDER BY NULL "

'Response.Write strSQL & "<BR>"

 

 

'response.end

 

 

 

'1) Montar a String de Conexão

Dim Conexao

Set Conexao = CreateObject("ADODB.Connection")

 

Conexao = "Provider=OraOLEDB.Oracle.1;Password=cn72f4;Persist Security Info=True;User ID=conodbc_protheus;Data Source=hsiga;"

 

 

'response.write conexao: response.flush

 

 

'*************************************************************************

 

 

'Cria um objeto recordset

set rstMain = Server.CreateObject("ADODB.Recordset")

 

 

 

'Conecta ao BD pelo DSN e abre a consulta

'Como resultado, o recordset conterá a tabela-resposta

rstMain.Open StrSQL,conexao LINHA 80

 

 

 

 

 

if not rstMain.EOF Then

 

 

%>

 

 

 

 

 

<table border="1" width=80% align="center" >

<tr bgcolor="#C0C0C0">

<td align=center height="19"><font face="tahoma" size="1" color="#000080"><B>UF</B></font></td>

<td align=center height="19"><font face="tahoma" size="1" color="#000080"><b>Número</b></td>

<td align=center height="19"><font face="tahoma" size="1" color="#000080"><b>Abertura</b></td>

<td align=center height="19"><font face="tahoma" size="1" color="#000080"><b>Objeto</b></td>

</tr>

 

 

<%

 

 

'Percorrer o recordset até o final

 

 

Do until rstMain.EOF

 

 

 

 

 

'============================

' Variaveis e seus Conteúdos

'============================

 

 

wLocal = rstMain("CO1_FILIAL") '***** Filial

wNu_licit = rstMain("CO1_CODEDT") '***** Número da Licitação

wdata = rstMain("Abertura") '***** Data de Abertura da Licitação

whora = rstMain("CO1_XHRABL") '***** Hora da Licitação

wmodalidade = rstMain("CO1_MODALI") '***** Modalidade

wobjeto = rstMain("CO1_OBS1") '***** Objeto Licitado

wano = rstmain("CO1_DTABER") '***** Ano que foi gerada a Licitação

 

 

 

%>

 

 

 

<TR>

<% If WLOCAL = "02" Then

wlocal = "RJ"

Else

wlocal = wlocal

End If

%>

<td align=center width=2% height="19" ><font face="arial" size= "1"> <b><%=wLocal%></b></td>

 

<%

nu= rstMain("CO1_CODEDT")

ano= rstmain("CO1_DTABER")

 

parte1=right(nu,6)

parte2=left(ano,4)

nu_ano = parte1 & "." & parte2

'response.write nu_ano

%>

 

 

 

<td align=center width=5% height="19"><font face="arial" size= "1"> <b><%=nu_ano%></b></td>

 

 

<%

 

 

 

DD=left(wdata,2)

MM=Mid(wdata,3,2)

AA=right(wdata,4)

 

abertura = DD & "/" & MM & "/" & AA

 

'response.write abertura

RESPONSE.WRITE TypeName(WDATA)

RESPONSE.WRITE TypeName(ABERTURA)

RESPONSE.WRITE IsDate(ABERTURA)

 

 

 

 

HH=Left(whora,2)

MM=Right(whora,3)

Hora=HH & ":" & MM

'response.end

%>

<td align=center width=5% height="19"><font face="arial" size= "1"> <b><%=ABERTURA%> <BR> <%=hora%></b></td>

 

 

 

 

 

 

<td align=justify width=20% height="18"><font face="arial" size= "1"><b><%response.binarywrite rstMain("CO1_OBS1")%></b></td>

 

 

 

 

 

</TR>

 

 

 

<%

' Move para o próximo registro

rstMain.movenext

Loop

%>

 

 

</table>

 

 

<%

rstMain.Close

%>

 

 

<%

'Libera a memória (destrói o objeto recordset)

Set rstMain=Nothing

%>

 

 

 

<HR width=80%>

<table width=80%>

<TR>

<td colspan=1>

<td align=center><font face="arial" color="blue" size= "1"><strong>O Edital encontra-se à disposição dos Interessados no portal <A HREF="http://www.comprasnet.gov.br">www.comprasnet.gov.br</A> ou na respectiva <A HREF="http://portal.dataprev.gov.br/2009/07/26/unidades-regionais-ur/">Unidade Federativa</strong></A>.</td>

</td>

</TR>

</table>

 

 

<%

else

%>

 

 

<table border="0" align="center" width=80%>

<TR>

<td colspan=1>

<td width="400" style="padding-left:15px;">

<p> </p>

<p> </p>

<h1 align="center" ><strong> <% response.write "Não há licitação no momento" %></strong></h1>

</td>

</td>

</TR>

</table>

 

 

 

<%

'Libera a memória (destrói o objeto recordset)

Set rstMain=Nothing

%>

 

 

 

 

 

<%End If %>

 

 

 

</TABLE> <!-- FIM DA TABELA PRINCIPAL-->

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Se a coluna CO1_XDTABL for do tipo DATE nao precisa converter

SELECT P.CO1_XDTABL, P.CO1_FILIAL,  P.CO1_CODEDT, P.CO1_XHRABL,  P.CO1_XPUBLI,  P.CO1_OBS1, P.CO1_DTABER FROM PROTHEUS.CO1010 P WHERE P.CO1_XDTABL > SYSDATE AND P.CO1_XPUBLI = 'S' ORDER BY 1 NULLS FIRST

 

Se a coluna CO1_XDTABL for do tipo VACHAR2 faça assim

SELECT P.CO1_XDTABL, P.CO1_FILIAL,  P.CO1_CODEDT, P.CO1_XHRABL, P.CO1_XPUBLI,  P.CO1_OBS1, P.CO1_DTABER FROM PROTHEUS.CO1010 P WHERE  TO_DATE(TO_CHAR(P.CO1_XDTABL, 'RRRRMMDD'), 'RRRRMMDD') > SYSDATE AND P.CO1_XPUBLI = 'S' ORDER BY 1 NULLS  FIRST

Compartilhar este post


Link para o post
Compartilhar em outros sites

Verifique a ortografia. pode ser um nome de coluna Invalido 'sua_coluna'. A coluna a qual você se refere na Base de Dados não foi encontrada. e também veja se os tipos de dados estão corretos

Compartilhar este post


Link para o post
Compartilhar em outros sites

Primeiro obrigado pela ajuda, mas o campo CO1_XDTABL é do tipo char e preenchido YYYYMMDD.

 

Apareceu esta mensagem.

 

OraOLEDB error '80040e14'

 

ORA-01481: invalid number format model

 

/Suprimentos/web_esti/aviso_PG_protheus_novo.asp, line 85

 

 

 

 

Se a coluna CO1_XDTABL for do tipo DATE nao precisa converter

SELECT P.CO1_XDTABL, P.CO1_FILIAL,  P.CO1_CODEDT, P.CO1_XHRABL,  P.CO1_XPUBLI,  P.CO1_OBS1, P.CO1_DTABER FROM PROTHEUS.CO1010 P WHERE P.CO1_XDTABL > SYSDATE AND P.CO1_XPUBLI = 'S' ORDER BY 1 NULLS FIRST

 

Se a coluna CO1_XDTABL for do tipo VACHAR2 faça assim

SELECT P.CO1_XDTABL, P.CO1_FILIAL,  P.CO1_CODEDT, P.CO1_XHRABL, P.CO1_XPUBLI,  P.CO1_OBS1, P.CO1_DTABER FROM PROTHEUS.CO1010 P WHERE  TO_DATE(TO_CHAR(P.CO1_XDTABL, 'RRRRMMDD'), 'RRRRMMDD') > SYSDATE AND P.CO1_XPUBLI = 'S' ORDER BY 1 NULLS  FIRST

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.