McJota Posted July 12, 2016 at 03:19 AM Report #597626 Posted July 12, 2016 at 03:19 AM Boa noite amigos, estou tentando criar um sistema de controle de validade de produtos, porém estou com dificuldades para preencher uma ListView com os produtos que estão a menos de 30 dias de vencer! Tenho o projeto quase pronto, só falta está parte onde preenche a ListView! Fiz o projeto todo com imagens e TXT, ao cadastrar um novo produto, salva a imagem em uma pasta, salva um TXT com o nome da marca do produto, salva um TXT com o nome do produto e a data de validade do mesmo, ou seja, tem 3 pastas, Imagens, Marcas e Produtos! Ao abrir o form, carrega os TXT que estão dentro da pasta "Marcas" em uma ComboBox! Queria que ao carregar o TXT, fizesse uma varredura nos arquivos TXT da pasta "Produtos" e comparasse as datas dos mesmos com a data atual, para alertar do prazo de validade! Digamos que tenho 3 marcas de produtos, cada marca tem 10 produtos diferentes! Queria que ao carregar os TXT das marcas, pegasse a marca "A" e carregasse os 10 produtos da respectiva marca em uma segunda Combobox! Então comparasse a data do produto "1" da marca "A" com a data atual, se a diferença fosse menor que 30, adicionasse a ListView com 3 colunas, "Marca", "Produto" e "Data", e passasse para o produto "2" da marca "A", e assim por diante, até o último produto da última marca! Podem me dar uma luz?? Agradecido.....
McJota Posted July 12, 2016 at 04:18 AM Author Report #597627 Posted July 12, 2016 at 04:18 AM Consegui resolver usando o seguinte código! Dim s1 As Integer s1 = 0 For t = 0 To ComboBox1.Items.Count() - 1 Dim a1 As String = ComboBox1.Items.Item(s1) Dim DirDiretorio2 As DirectoryInfo = New DirectoryInfo(Application.StartupPath + "/Produtos/" + a1 + "/") Dim oFileInfoCollection2() As FileInfo Dim oFileInfo2 As FileInfo Dim u As Integer oFileInfoCollection2 = DirDiretorio2.GetFiles("*.txt") For u = 0 To oFileInfoCollection2.Length() - 1 oFileInfo2 = oFileInfoCollection2.GetValue(u) ComboBox2.Items.Add(oFileInfo2.Name.ToString.Replace(".txt", "")) Next For s2 = 0 To ComboBox2.Items.Count() - 1 Dim a2 As String = ComboBox2.Items.Item(s2) Dim oTxtIn As New IO.StreamReader(Application.StartupPath + "\Produtos\" + a1 + "\" + a2 + ".txt") Dim oTxtContent As String = oTxtIn.ReadToEnd() Dim oTxtArr() As String = oTxtContent.Split(Environment.NewLine) TextBox1.Text = oTxtArr(0) oTxtIn.Close() Dim date1 As Date Dim date2 As Date Dim result As Integer date1 = TextBox2.Text date2 = TextBox1.Text result = DateDiff("d", date1, date2) If result < "30" Then Dim item As New ListViewItem item.Text = (a1).ToString item.SubItems.Add(a2).ToString() item.SubItems.Add(TextBox1.Text).ToString() ListView1.Items.Add(item) End If Next ComboBox2.Items.Clear() s1 = s1 + 1 Next Obrigado.....
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