Flávia Dirk Postado Março 19, 2009 Denunciar Share Postado Março 19, 2009 Oi!!Estou trabalhando com o seguinte exemplo:dim camCont camCont = "\\SS\Bs_publico$\Teste\intranet\documentos\RAC" & dados(k,3) & dados(k,1)& ".doc" Response.Write ("<td><a href='" & camCont & "'><img src='relatorio3.gif' alt='Relatorio'></a></td>")Ao clicar na imagem abre um doc em word nomeado pelos dados filtrados na sql:dados(k,3) - número do contratodados(k,1) - número da classeProblema: Caso esse documento não exista dá o erro de 'página não encontrada'.Teria como verificar se não vai encontrar a página (o documento) e não abrir nada, continuar na página atual??Att. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 jow Postado Março 19, 2009 Denunciar Share Postado Março 19, 2009 você deve verificar se este documento existe .... Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Rafael Spilki Postado Março 19, 2009 Denunciar Share Postado Março 19, 2009 Acho que terás de fazer uma rotina usando FSO para averiguar a existência do documento antes de o abrir...ou ainda algum tratamento de erro do tipo:if err <> 0 then response.write "ERRO, ESTE ARQUIVO NÃO EXISTE!"[]'s Rafael Spilki Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 jow Postado Março 20, 2009 Denunciar Share Postado Março 20, 2009 Um outro exemplo de como fazer ...if Not (fs.FileExists(file)=true) then response.write "ERRO. Arquivo inexistente" else ... ... ... end if Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Flávia Dirk Postado Março 20, 2009 Autor Denunciar Share Postado Março 20, 2009 (editado) Oi gente! Obrigada pela ajuda!!Mas tenho uma dúvida, como ficaria isso no response.write???Coloquei com o exemplo do Jow:teste = "<td><a href='" if Not (fs.FileExists(camCont)=true) then teste=teste & "#"'><img src='relatorio3.gif' alt='Relatorio'></a></td>") else teste=teste & camCont & "'><img src='relatorio3.gif' alt='Relatorio'></a></td>") end if Response.Write (teste) if Not (fs.FileExists(camCont)=true) then camCont = "#" else camCont = camCont end if Response.Write ("<td><a href='" & camCont & "'><img src='relatorio3.gif' alt='Relatorio'></a></td>")Fiz com o código do Rafael também, na mesma colocação. Mas em nenhum dos 2 aparece a figura. Assim q você abre a página as figuras não aparecemA imagem a ser clicada tem q aparecer sempre, e a verificação só será rodada quando clicarem na imagem.OBS.: a minha página mostra todos os contratos (principais dados) q tenho (q nem um form contínuo) do lado de cada contrato tem uma imagem q abre o contrato em word. É esse o meu caso, caso o contrato não exista em word gostaria q não acontece nada, no lugar de ficar abrindo a "Página não pode ser exibida". Editado Março 20, 2009 por Flávia Dirk Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 jow Postado Março 20, 2009 Denunciar Share Postado Março 20, 2009 heheh não entendi nada ... você quer q sempre apareça a figura e só depois q clicar fazer a verificação, se existe ou não, se forexibe as figuras aki, com um parametro 'aki você deve usar um um if para saber se o parametro acima não está vazio if Not (fs.FileExists(camCont)=true) then camCont = "#" else camCont = camCont end if Response.Write ("<td><a href='" & camCont & "'><img src='relatorio3.gif' alt='Relatorio'></a></td>") 'aki você fecha o primeiro if, q deverá ser aberto Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 bareta Postado Março 20, 2009 Denunciar Share Postado Março 20, 2009 bom se o que acontece é página não encontrada, seria só configurar o arquivo de erros, de forma que ele exiba uma mensagem no 404.agora por um acaso seu FSO tá completo??Ótima referencia:http://www.w3schools.com/asp/asp_ref_filesystem.asp<% Set fs=Server.CreateObject("Scripting.FileSystemObject") If (fs.FileExists("c:\winnt\cursors\3dgarro.cur"))=true Then Response.Write("File c:\winnt\cursors\3dgarro.cur exists.") Else Response.Write("File c:\winnt\cursors\3dgarro.cur does not exist.") End If set fs=nothing %> Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Flávia Dirk Postado Março 20, 2009 Autor Denunciar Share Postado Março 20, 2009 Oi Jow! Pensei melhor e a idéia do Bareta fica ótima junto a tua!Aí ficaria assim:Pretendo colocar em cada imagem um id com o mesmo nome do arquivo q pretendo abrir.Quando a página for aberta irei listar todos os arquivos existentes, se caso o id da imagem não bater com o com algum arquivo não mostrarei akela imagem.Vou testar os seus códigos e já volto para postar o resultado (dúvida ou solução) =] Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Flávia Dirk Postado Março 20, 2009 Autor Denunciar Share Postado Março 20, 2009 (editado) Dúvida:dim RAC dim idRAC dim espaco dim teste RAC = "\\SS\Bs_publico$\Teste\intranet\documentos\RAC" & dados(k,3) & dados(k,1)& ".doc" idRAC = "RAC" & dados(k,3) & dados(k,1) & ".doc" Set fs=Server.CreateObject("Scripting.FileSystemObject") teste = (fs.FileExists(RAC)) if teste = idRAC then espaco = " " Response.Write("<td><a href='" & RAC & "' id='" & idRAC & "'><img src='relatorio3.gif' alt='Relatorio'></a></td>") else 'não mostra nada end If set fs=nothingBaseado na minha idéia postada acima.No momento estou com somente um arquivo existe, referido ao 1º contrato. Então pela lógica o 1º contrato deveria mostrar o "botão" (imagem) para clicar e abrir o documento.Erro: o código acima está tirando a imagem de todos.O q está errado nele?!?!! Editado Março 20, 2009 por Flávia Dirk Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 bareta Postado Março 20, 2009 Denunciar Share Postado Março 20, 2009 isso acontece porque pelo seu if as informações são sempre diferentes...teste = (fs.FileExists(RAC)) if teste = idRAC then a variavel teste me retorna um teste lógico... (true / false) sobre o arquivo existir ou não logo: if (true/false) = (arquivo.doc) then sempre irá retornar false.... e não mostrar nada neste trecho: else 'não mostra nada end Ifse não terá nada entre o else e o end if, não precisa nem colocar o else. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 fdirk Postado Março 20, 2009 Denunciar Share Postado Março 20, 2009 (editado) Como posso conseguir comprarar com o nome do arquivo?Ficaria:Set fs=Server.CreateObject("Scripting.FileSystemObject") teste = (fs.FileExists(RAC)) if teste = true then 'se arquivo existe if (nome do arquivo) = idRAC then 'compara o nome do arquivo com o nome do botão ...Com qual termo conseguiria puxar o nome do arquivo.Em relação ao else, estou usando porque tem mais códigos q vão rolar dentro dele, só a imagem q não vai entrar. Editado Março 20, 2009 por fdirk Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Flávia Dirk Postado Março 23, 2009 Autor Denunciar Share Postado Março 23, 2009 Consegui puxar o nome do arquivo pelo:"(fs.GetFileName(file))"Erro: O arquivo existe mas o código está dizendo q nãodim RAC dim idRAC dim espaco dim teste RAC = "\\SS\Bs_publico$\Teste\intranet\documentos\RAC" & dados(k,3) & dados(k,1)& ".doc" idRAC = "RAC" & dados(k,3) & dados(k,1) & ".doc" Set fs=Server.CreateObject("Scripting.FileSystemObject") if not (fs.FileExists(RAC)=true) then Response.Write("não existe") else teste = (fs.GetFileName(RAC)) if teste = idRAC then espaco = " " Response.Write("<td><a href='" & RAC & "' id='" & idRAC & "'><img src='relatorio3.gif' alt='Relatorio'></a></td>") end if end If set fs=nothingSão ao td 20 contratos, o 1º existe um doc. Mas esse código acima está dizendo q nenhum existe. O q pode estar acontecendo?!?!?! Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 bareta Postado Março 24, 2009 Denunciar Share Postado Março 24, 2009 e pelo link ele encontra o arquivo?espaco = " " Response.Write("<td><a href='" & RAC & "' id='" & idRAC & "'><img src='relatorio3.gif' alt='Relatorio'></a></td>") Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Flávia Dirk Postado Março 24, 2009 Autor Denunciar Share Postado Março 24, 2009 Sim, encontra. Abre normalmente. Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Flávia Dirk
Oi!!
Estou trabalhando com o seguinte exemplo:
Ao clicar na imagem abre um doc em word nomeado pelos dados filtrados na sql:
dados(k,3) - número do contrato
dados(k,1) - número da classe
Problema: Caso esse documento não exista dá o erro de 'página não encontrada'.
Teria como verificar se não vai encontrar a página (o documento) e não abrir nada, continuar na página atual??
Att.
Link para o comentário
Compartilhar em outros sites
13 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.