Blackvelvet Posted May 17, 2012 at 03:13 PM Report #456420 Posted May 17, 2012 at 03:13 PM (edited) Boas a todos. Estou com problema que não consigo resolver. Eu tenho um botão na aplicação que é para adicionar ficheiros pdf , referente a um determinado id,e depois vizualiza-los numa listbox,para futura consulta . Acontece que na listbox só me aparece o cominho e não o nome do pdf. Abrir Ficheiro: OpenFileDialog1.Title = "Seleccionar Ficheiro" OpenFileDialog1.InitialDirectory = CurDir() OpenFileDialog1.Filter = "Ficheiros PDF|*.pdf" If OpenFileDialog1.ShowDialog = Windows.Forms.DialogResult.OK Then ListBox1.SelectedItem = OpenFileDialog1.FileName End If Guardar ficheiro: Dim myStream As Stream Dim sfdFicheiro As New SaveFileDialog() sfdFicheiro.Filter = "PDF (*.PDF)|*.PDF" sfdFicheiro.FilterIndex = 2 sfdFicheiro.RestoreDirectory = True If sfdFicheiro.ShowDialog() = DialogResult.OK Then myStream = sfdFicheiro.OpenFile() If (myStream IsNot Nothing) Then ' Code to write the stream goes here. myStream.Close() End If End If para inserir na bd: ' Texto de ligação à base de dados Dim myConnectionString As String = _ "Data Source=.\SQLEXPRESS; Initial Catalog=Parque; Integrated Security=SSPI;" ' Comando que irá inserir dados na tabela "Parque" os campos 'que são passados através de parâmetros Dim SQL As String = "INSERT INTO fatura ([nome],[url_pdf],[idGestaoFK]) VALUES ('" & OpenFileDialog1.FileName & "','" & sfdFicheiro.FileName & "','" & txtId.Text & "');" ' Cria uma nova ligação à base de dados Dim connection As New SqlConnection(myConnectionString) ' Criação do comando indicando a instrução e a ligação Dim command As New SqlCommand(SQL, connection) ' Indicação dos parâmetros que serão inseridos connection.Open() Dim x As Integer = command.ExecuteNonQuery() If x < 1 Then End If ' Fecha a ligação e limpa as variáveis connection.Close() connection = Nothing command = Nothing 'Se existir o id_pesquisa If tabela.id_pesquisa <> "" Then ' conecção á base de dados Dim objConnection As New SqlConnection _ ("Data Source=.\SQLEXPRESS;Initial Catalog=Parque;Integrated Security=SSPI;") Dim query As String query = " SELECT * FROM fatura WHERE idGestaoFK='" & tabela.id_pesquisa & "'" Dim commando As New SqlCommand(query, objConnection) ' command.CommandText=query objConnection.Open() Dim DataAdapter As New SqlDataAdapter(commando) Dim reader = commando.ExecuteReader() ListBox1.Items.Clear() While (reader.Read()) ListBox1.Items.Add(reader(2)) End While objConnection.Close() objConnection = Nothing commando = Nothing Else End If End Sub Uma ajudinha era bom...... 🙂🙂 Um abraço Edited May 17, 2012 at 03:15 PM by Caça GeSHi
Caça Posted May 17, 2012 at 03:19 PM Report #456422 Posted May 17, 2012 at 03:19 PM Mas está a aparecer o caminho\nome.pdf, certo? Pedro Martins Não respondo a duvidas por PM
Blackvelvet Posted May 17, 2012 at 03:30 PM Author Report #456427 Posted May 17, 2012 at 03:30 PM Sim exactamente. Aparece o caminho de onde foi procurado e depois aparece o caminho onde foi guardado. Mas a mim interessava-me o nome do ficheiro guardado,para poder clicar e vizualizar.
Caça Posted May 17, 2012 at 03:42 PM Report #456429 Posted May 17, 2012 at 03:42 PM Utiliza a classe FileInfo Dim FL As New IO.FileInfo("Caminho para o ficheiro") ListBox1.Items.Add(FL.Name) Pedro Martins Não respondo a duvidas por PM
Blackvelvet Posted May 17, 2012 at 04:25 PM Author Report #456456 Posted May 17, 2012 at 04:25 PM (edited) Os ficheiros vão estar guardados em bd e numa pasta, no servidor e não sei qual é o caminho. Experimentei de varias formas,mas sem sucesso na mesma 😞 Edited May 17, 2012 at 04:26 PM by Blackvelvet
Caça Posted May 17, 2012 at 04:28 PM Report #456458 Posted May 17, 2012 at 04:28 PM No primeiro bloco de código que mostras-te estás a usar um OpenFileDialog, ai tens o caminho para o ficheiro. Pedro Martins Não respondo a duvidas por PM
Blackvelvet Posted May 17, 2012 at 04:48 PM Author Report #456461 Posted May 17, 2012 at 04:48 PM (edited) Como estou a fazer um duplo clik na listbox, tenho este codigo para abrir o pdf. Private Sub ListBox1_DoubleClick(sender As System.Object, e As System.EventArgs) Handles ListBox1.DoubleClick Dim url As String = My.Application.Info.DirectoryPath & " *.pdf\" & ListBox1.SelectedItem.ToString() Process.Start(url) End Sub e dá-me o erro que não encontra o caminho especificado (?) Alias, o erro é o seguinte: "O sistema não conseguiu localizar o ficheiro especificado" Edited May 17, 2012 at 10:33 PM by Caça GeSHi
Caça Posted May 17, 2012 at 10:33 PM Report #456559 Posted May 17, 2012 at 10:33 PM Já viste bem o que estás a fazer?? Pedro Martins Não respondo a duvidas por PM
Blackvelvet Posted May 18, 2012 at 02:09 PM Author Report #456662 Posted May 18, 2012 at 02:09 PM Já viste bem o que estás a fazer?? Boa tarde,para começar..... 🙂 Desculpa a minha ingorancia,mas eu pensava que estava a fazer tudo correcto. Se me puderes corrigir, eu agradecia Um abraço
Caça Posted May 18, 2012 at 02:13 PM Report #456663 Posted May 18, 2012 at 02:13 PM Tens de verificar qual o caminho que esse código está a gerar, resumindo deve estar a fazer algo deste género ...\Bin\Debug*.pdf\Ficheiro.pdf Pedro Martins Não respondo a duvidas por PM
Blackvelvet Posted May 18, 2012 at 02:25 PM Author Report #456667 Posted May 18, 2012 at 02:25 PM Uma questão: há algum problema se eu tiver um so botão para ir buscar o documento a outro lado e salvar onde quero ao mesmo tempo?
Caça Posted May 18, 2012 at 02:27 PM Report #456669 Posted May 18, 2012 at 02:27 PM Não. Pedro Martins Não respondo a duvidas por PM
Blackvelvet Posted May 18, 2012 at 03:03 PM Author Report #456677 Posted May 18, 2012 at 03:03 PM Ja alterei para: Private Sub ListBox1_DoubleClick(sender As System.Object, e As System.EventArgs) Handles ListBox1.DoubleClick Dim url As String = My.Application.Info.DirectoryPath & " \pdf\" & ListBox1.SelectedItem.ToString() Process.Start(url) End Sub eliminei o " *.pdf\ ". mesmo assim continua a dar erro. Eu queria que me amostra-se o nome do pdf. como aparece na imagem
Caça Posted May 18, 2012 at 03:12 PM Report #456679 Posted May 18, 2012 at 03:12 PM Onde é que está esse pdf? Pedro Martins Não respondo a duvidas por PM
Blackvelvet Posted May 18, 2012 at 03:20 PM Author Report #456680 Posted May 18, 2012 at 03:20 PM Vou tentar dar a entender o que realmente pretendo. Eu criei uma tabela a qual dei o de fatura. É para que? Para a pessoa digitalizar as facturas em pdf e depois guarda-las na bd. A aplicação tem uma listbox com as faturas associadas ao respectivo id,para que o utilizador passa,mais tarde,ou uma eventual, auditoria,poderem visualizar a fatura,que neste caso seria a copia( a original fica guardada em pasta). O pdf que se vê na imagem, foi inserido directamente no sql,para testar, e realmente funciona. assim que se dá 2 clicks, o pdf abre. Eu não estou a conseguir é fazer o que mostra a imagem, que era o que pretendia,para acabar a aplicação e entregar. (estou em estagio) Espero que me tenha feito entender...
Caça Posted May 18, 2012 at 03:30 PM Report #456681 Posted May 18, 2012 at 03:30 PM O que é que queres fazer afinal? Já me baralhaste todo.. Pedro Martins Não respondo a duvidas por PM
Blackvelvet Posted May 18, 2012 at 03:35 PM Author Report #456682 Posted May 18, 2012 at 03:35 PM Quero buscar o documento pdf, adiciona-lo á listbox,para depois vizualizar o pdf.
Caça Posted May 18, 2012 at 03:40 PM Report #456683 Posted May 18, 2012 at 03:40 PM Só a listbox? Pedro Martins Não respondo a duvidas por PM
Blackvelvet Posted May 18, 2012 at 03:57 PM Author Report #456687 Posted May 18, 2012 at 03:57 PM A aplicação é para fazer a gestão de um parque informatico da empresa na qual estou a estagiar. O gestor pediu-me se podia fazer,na aplicação, um campo em que mostrasse as facturas de um determinado equipamento. O que se pretende é o que aparece na imagem. Que na listbox,apareça o nome da fatura e não o caminho. assim o gestor clica 2x no item que deseja e abre o pdf. O gestor,vai digitalizar a fatura em pdf, e quer, que esta, fique guardada na bd,mas na listbox só apareça o nome. Fazer a busca e guardar na bd,isso eu ja consegui fazer. Mas o que pretendo é que apareca na listbox o nome da fatura,como mostra a imagem
Caça Posted May 18, 2012 at 04:16 PM Report #456695 Posted May 18, 2012 at 04:16 PM Estas com dificuldade em abrir um ficheiro que esta guardado na BD? Pedro Martins Não respondo a duvidas por PM
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now