ViniciusJau Postado Janeiro 7, 2005 Denunciar Share Postado Janeiro 7, 2005 tenho um script para exibir uma consulta num banco de daos acess, ele exibe os resultados, mais dá esse erro em baixo dos resultados:Microsoft VBScript runtime error '800a000d' Type mismatch: 'FormatPercent' /resultad/mes01.asp, line 17 <%Set conn = createobject("adodb.connection")Conn.open "provider=microsoft.jet.oledb.4.0; data source=" & server.mappath("fechamen.mdb")Set rs = Conn.Execute("SELECT * FROM Fechamentos WHERE Fechamento=1 ORDER BY atingiu DESC") If not rs.EOF Then Do until rs.eof if rs.fields("atingiu") < 1 then cor="BLACK" else cor="GREEN" end if Response.Write rs("Fechamento") & " - " & "<font color=" & cor & " size=2>" & FormatPercent(rs("atingiu")) & " - " & rs("Central") & "<br> </font>" LINHA DO ERRO rs.MoveNext LoopElse Response.Write("O banco de dados ainda está sem registros.")End ifConn.Close()%> Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 cyberalexxx Postado Janeiro 7, 2005 Denunciar Share Postado Janeiro 7, 2005 type mismatch é tipo de dados incompativeis.O campo atingiu é numérico??Tenta: FormatPercent Cint(rs("atingiu")) Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 bareta Postado Janeiro 7, 2005 Denunciar Share Postado Janeiro 7, 2005 pra que serve o FormatPercent??? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 cyberalexxx Postado Janeiro 7, 2005 Denunciar Share Postado Janeiro 7, 2005 FormatPercent ( ) Devolve uma expressão formatada como uma percentagem. (multiplicada por 100) com o caracter % no fimMinhaPercentagem = FormatPercent(2/32) 'MinhaPercentagem tem 6.25%. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 ViniciusJau Postado Janeiro 7, 2005 Autor Denunciar Share Postado Janeiro 7, 2005 deu erro... Expected end of statementbem no Cint....o campo atingiu é numerico.. só que os dados dele são assim: 0,112234 ou 0,07548 o format percent tranforma ele em porcentagem... dai fica assim: 112% ou 75% se eu tiver errado alguém me corrige Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 cyberalexxx Postado Janeiro 7, 2005 Denunciar Share Postado Janeiro 7, 2005 deu erro... Expected end of statementbem no Cint....o campo atingiu é numerico.. só que os dados dele são assim: 0,112234 ou 0,07548 o format percent tranforma ele em porcentagem... dai fica assim: 112% ou 75% se eu tiver errado alguém me corrige pela descrição do erro deve estar faltando um parenteses. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 ViniciusJau Postado Janeiro 7, 2005 Autor Denunciar Share Postado Janeiro 7, 2005 estranho.. .eu só acrescentei o cent<%Set conn = createobject("adodb.connection")Conn.open "provider=microsoft.jet.oledb.4.0; data source=" & server.mappath("fechamen.mdb")Set rs = Conn.Execute("SELECT * FROM Fechamentos WHERE Fechamento=1 ORDER BY atingiu DESC") If not rs.EOF Then Do until rs.eof if rs.fields("atingiu") < 1 then cor="BLACK" else cor="GREEN" end if Response.Write rs("Fechamento") & " - " & "<font color=" & cor & " size=2>" & FormatPercent Cent(rs("atingiu")) & " - " & rs("Central") & "<br> </font>" rs.MoveNext LoopElse Response.Write("O banco de dados ainda está sem registros.")End ifConn.Close()%> Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 cyberalexxx Postado Janeiro 7, 2005 Denunciar Share Postado Janeiro 7, 2005 Mais não é Cent é CInt Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 ViniciusJau Postado Janeiro 7, 2005 Autor Denunciar Share Postado Janeiro 7, 2005 mesmo com o cint ele dá esse erro... dá um look:http://www.amarconsultoria.com.br/resultad/mes01.aspo estranho é que esse mesmo codigo funciona qunado todos os registros tem valor > 0 http://www.amarconsultoria.com.br/resultad/mes9.asp Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 cyberalexxx Postado Janeiro 7, 2005 Denunciar Share Postado Janeiro 7, 2005 Vamos entaum criar uma função:<%function porcento(valor) if valor > 0 then response.write FormatPercent(valor) else valor2=Cint(valor)*100 response.write valor2 & "%" end ifend functionSet conn = createobject("adodb.connection")Conn.open "provider=microsoft.jet.oledb.4.0; data source=" & server.mappath("fechamen.mdb")Set rs = Conn.Execute("SELECT * FROM Fechamentos WHERE Fechamento=1 ORDER BY atingiu DESC") If not rs.EOF Then Do until rs.eof if rs.fields("atingiu") < 1 then cor="BLACK" else cor="GREEN" end if Response.Write rs("Fechamento") & " - " & "<font color=" & cor & " size=2>"Porcento(rs("atingiu"))response.write " - " & rs("Central") & "<br> </font>" rs.MoveNext LoopElse Response.Write("O banco de dados ainda está sem registros.")End ifConn.Close()%> Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 ViniciusJau Postado Janeiro 7, 2005 Autor Denunciar Share Postado Janeiro 7, 2005 humm legal.... num tinha pensando nisso...num funfou.... se você clicar no link você vai ver o erro.. mais agora eu acho que consigo sozinho... vou tentar aqui dai se eu conseguir eu posto !! vamo vê o que dá... !! Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
ViniciusJau
tenho um script para exibir uma consulta num banco de daos acess, ele exibe os resultados, mais dá esse erro em baixo dos resultados:
Link para o comentário
Compartilhar em outros sites
10 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.