Jump to content


Photo

[Resolvido] Erro - Tipos Incompativeis


  • Faça o login para participar
2 replies to this topic

#1 EuNaoSei

EuNaoSei

    Novato no fórum

  • Usuários
  • 9 posts
  • Sexo:Feminino

Posted 02/12/2009, 16:17

Oi Gente...

Estou mechendo em um cod q nao é meu (isso é horriveel..) e esta dando um erro q eu nao entendi o q pode ser, tenho os seguintes cod:

(FORMULARIO)
[codebox]If aTotLinha(1) + aTotLinha(2) + aTotLinha(3) <> 0 Then%>

<form method="post" name="frm<%=variavel_x%>" action="Rel_BancoHorasAtual.asp?op=<%=op%>">
<input type="hidden" name="analista" value="<%=analista_%>">
<input type="hidden" name="data_i_" value="<%=data_i_%>">
<input type="hidden" name="data_f_" value="<%=data_f_%>">

<input type="hidden" name="usuario" value="<%=DADOS_PRINCIPAL("nome_analista")%>">
<input type="hidden" name="data" value="<%=DADOS_PRINCIPAL("Data")%>">
<input type="hidden" name="projeto_h" value="<%=projeto_%>">

<tr class="F_Centro F_Preto_PP FundoCinzaClaro L_Hand" onmouseover="javascript: muda_cor_fundo('<%=DADOS_PRINCIPAL("codigo")%>')" onmouseout="javascript: volta_cor_fundo('<%=DADOS_PRINCIPAL("codigo")%>')" onclick="document.frm<%=variavel_x%>.submit();" id="<%=DADOS_PRINCIPAL("codigo")%>">

<td><%=DADOS_PRINCIPAL("nome_analista")%></td>
<td><%=CorrigeDataMA(DADOS_PRINCIPAL("Data"))%></td>
<td><%=ConverteMinutos(aTotLinha(1),0)%></td>
<td><%=ConverteMinutos(aTotLinha(3),0)%></td>
<td><%=ConverteMinutos(aTotLinha(2),0)%></td>
<td><%=ConverteMinutos(aTotLinha(1)-aTotLinha(2),0)%></td>
<td><%=FormatNumber((aTotLinha(1)-aTotLinha(2))/60,2)%></td>

</tr><%
end if%>
[/codebox]

Nessa parte ira abrir outra pagina na mesma janela q retornara o resultado por analista(o usuario da session), por data,e para retornar isso, tenho o seguinte select..

(FUNÇÃO - Func_UtlApon)
[codebox] Dim SQL_, QUERY_

SQL_ = "Select a_analista "
SQL_ = SQL_ & "From t_apontamento "
SQL_ = SQL_ & "Where "
if op_ = 3 or op_ = 4 then
SQL_ = SQL_ & "apon_data Between '" & data_ & "01' and '" & data_ & "31' "
else
if op_ = 2 then
SQL_ = SQL_ & "apon_data Between '" & data_ & "01' and '" & dataF_ & "31' "
if motivo_ <> 0 then
SQL_ = SQL_ & "And apon_motivo = " & motivo_ & " "
end if
end if
end if
if projetos_ <> "0" then
SQL_ = SQL_ & "And apon_projeto In (" & projetos_ & ") "
end if
if user_ <> 0 then
SQL_ = SQL_ & "And apon_analista = " & user_ & " "
end if
[/codebox]

Sendo que o resultado de user é uma queryString
user_ = Request.QueryString("user")
e no link dessa chamada user é 1 ou 0
entao se user_ for 1 ele pega o analista da session.. q é feito aqui

[codebox]If user_ <> "" then

'Verifica os projetos do analista
If user_ = 0 then
SQL = "Select proj_text,proj_code FROM tb_projeto "
SQL = SQL & "INNER JOIN t_time ON t_time.time_projeto=tb_projeto.proj_code "
SQL = SQL & "INNER JOIN t_time_analistas ON t_time.ti_code=tbc_ti_analistas.ti_time "
SQL = SQL & "WHERE ti_analista = " & Session("usuario") & " "
SQL = SQL & "GROUP BY proj_text ORDER BY proj_text"

Set PROJETO = db.execute(SQL)

'Retorna todos os projetos quando estiverem no Financeiro
else
SQL = "Select proj_text,proj_code From tb_projeto "
SQL = SQL & "Where proj_finan = " & Session("usuario")

'Verifica se é Gerente ou Diretor para listar os projetos respectivamente
if filt_ = 0 then
SQL = SQL & " Or proj_dir = " & Session("usuario")
SQL = SQL & " Or proj_ger = " & Session("usuario")
end if

SQL = SQL & " ORDER BY proj_text"

Set PROJETO = db.execute(SQL)

End if
[/codebox]

o Erro q esta dando é esse..

Tipo de erro:
Erro de tempo de execução do Microsoft VBScript (0x800A000D)
Tipos incompatíveis: 'user_'
/suporte/Func_UtilApon.asp, line 241

Linha 141:
[codebox]if user_ <> 0 then
SQL_ = SQL_ & "And apon_analista = " & user_ & " "
end if
[/codebox]

Espero que alguem entenda e possa me ajudaaar :rolleyes:

Agradeço desde já.

Edição feita por: Renan L. Queiroz, 15/12/2009, 10:50.
Inclusão da tag [ codebox ] para postagem de scripts


#2 Renan L. Queiroz

Renan L. Queiroz

    Mestre

  • Usuários
  • 690 posts
  • Sexo:Masculino
  • Localidade:Brasilia - DF

Posted 09/12/2009, 10:52

Por acaso a linha que está dando erro e a linha que contém:
if user_ <> 0 then
Veja que você requisita o user_ (string) e o compara com 0 (int).
Tente converter o mesmo para bool ou int, o que for mais adequado. ;-)

Edição feita por: Renan L. Queiroz, 09/12/2009, 10:52.

Especialidade: Desenvolvimento e Banco de Dados.


Este post lhe ajudou? Agradeça: Posted Image


#3 EuNaoSei

EuNaoSei

    Novato no fórum

  • Usuários
  • 9 posts
  • Sexo:Feminino

Posted 11/12/2009, 15:38

Oi Gente...

Estou mechendo em um cod q nao é meu (isso é horriveel..) e esta dando um erro q eu nao entendi o q pode ser, tenho os seguintes cod:

(FORMULARIO)

If aTotLinha(1) + aTotLinha(2) + aTotLinha(3) <> 0 Then%>					<form method="post" name="frm<%=variavel_x%>" action="Rel_BancoHorasAtual.asp?op=<%=op%>">				 <input type="hidden" name="analista" value="<%=analista_%>">				 <input type="hidden" name="data_i_" value="<%=data_i_%>">				 <input type="hidden" name="data_f_" value="<%=data_f_%>">								 <input type="hidden" name="usuario" value="<%=DADOS_PRINCIPAL("nome_analista")%>">				 <input type="hidden" name="data" value="<%=DADOS_PRINCIPAL("Data")%>">				 <input type="hidden" name="projeto_h" value="<%=projeto_%>">							<tr class="F_Centro F_Preto_PP FundoCinzaClaro L_Hand" onmouseover="javascript: muda_cor_fundo('<%=DADOS_PRINCIPAL("codigo")%>')" onmouseout="javascript: volta_cor_fundo('<%=DADOS_PRINCIPAL("codigo")%>')" onclick="document.frm<%=variavel_x%>.submit();"  id="<%=DADOS_PRINCIPAL("codigo")%>">									<td><%=DADOS_PRINCIPAL("nome_analista")%></td>					<td><%=CorrigeDataMA(DADOS_PRINCIPAL("Data"))%></td>					<td><%=ConverteMinutos(aTotLinha(1),0)%></td>					<td><%=ConverteMinutos(aTotLinha(3),0)%></td>					<td><%=ConverteMinutos(aTotLinha(2),0)%></td>					<td><%=ConverteMinutos(aTotLinha(1)-aTotLinha(2),0)%></td>					<td><%=FormatNumber((aTotLinha(1)-aTotLinha(2))/60,2)%></td>								  </tr><%			end if%>

Nessa parte ira abrir outra pagina na mesma janela q retornara o resultado por analista(o usuario da session), por data,e para retornar isso, tenho o seguinte select..

(FUNÇÃO - Func_UtlApon)
Dim SQL_, QUERY_		SQL_ = "Select a_analista "	SQL_ = SQL_ & "From t_apontamento "	SQL_ = SQL_ & "Where "		if op_ = 3 or op_ = 4 then			SQL_ = SQL_ & "apon_data Between  '" & data_ & "01' and '" & data_ & "31' "		else			if op_ = 2 then				SQL_ = SQL_ & "apon_data Between  '" & data_ & "01' and '" & dataF_ & "31' "				if motivo_ <> 0 then					SQL_ = SQL_ & "And apon_motivo = " & motivo_ & " "				end if			end if		end if		if projetos_ <> "0" then			SQL_ = SQL_ & "And apon_projeto In (" & projetos_ & ") " 		end if		if user_ <> 0 then			SQL_ = SQL_ & "And apon_analista = " & user_ & " "		end if

Sendo que o resultado de user é uma queryString
user_ = Request.QueryString("user")
e no link dessa chamada user é 1 ou 0
entao se user_ for 1 ele pega o analista da session.. q é feito aqui

If user_ <> "" then	'Verifica os projetos do analista	If user_ = 0 then 		SQL = "Select proj_text,proj_code FROM tb_projeto "		SQL = SQL & "INNER JOIN t_time ON t_time.time_projeto=tb_projeto.proj_code "		SQL = SQL & "INNER JOIN t_time_analistas ON t_time.ti_code=tbc_ti_analistas.ti_time "		SQL = SQL & "WHERE ti_analista = " & Session("usuario") & " "		SQL = SQL & "GROUP BY proj_text ORDER BY proj_text"				Set PROJETO = db.execute(SQL)		'Retorna todos os projetos quando estiverem no Financeiro 	else 		SQL = "Select proj_text,proj_code From tb_projeto "		SQL = SQL & "Where proj_finan = " & Session("usuario")					'Verifica se é Gerente ou Diretor para listar os projetos respectivamente			if filt_ = 0 then 				SQL = SQL & " Or proj_dir = " & Session("usuario")				SQL = SQL & " Or proj_ger = " & Session("usuario")			end if			 		SQL = SQL & " ORDER BY proj_text"				Set PROJETO = db.execute(SQL)			End if

o Erro q esta dando é esse..

Tipo de erro:
Erro de tempo de execução do Microsoft VBScript (0x800A000D)
Tipos incompatíveis: 'user_'
/suporte/Func_UtilApon.asp, line 241

Linha 141:
if user_ <> 0 then			SQL_ = SQL_ & "And apon_analista = " & user_ & " "		end if

Espero que alguem entenda e possa me ajudaaar :rolleyes:

Agradeço desde já.




DEU CERTO RENAAN! Obrigada!!




1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq