HighbornBD 1.0.7

dotnet add package HighbornBD --version 1.0.7                
NuGet\Install-Package HighbornBD -Version 1.0.7                
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="HighbornBD" Version="1.0.7" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add HighbornBD --version 1.0.7                
#r "nuget: HighbornBD, 1.0.7"                
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install HighbornBD as a Cake Addin
#addin nuget:?package=HighbornBD&version=1.0.7

// Install HighbornBD as a Cake Tool
#tool nuget:?package=HighbornBD&version=1.0.7                

HIGHBORN BANCO DE DADOS

Este nuget é um tipo de banco de dados com algumas funções que eu uso em meus programas.
Ele foi todo criado por mim em VB.net. Como eu entendo muito mais de Visual Basic do que C#,
F# ou ASP podem ter algumas falhas nos códigos mencionados abaixo, mas os em VB sempre
estarão corretos, entretanto, o que eu entender vou dar um caminho.

Classe Tabela(Atividades)

Criando

O primeiro passo para o uso da biblioteca é criar uma variável do tipo "Tabela"

Visual Basic

    Public Tabela As New Tabela

C#

    public new Tabela Tabela;

Posteriormente você pode definir um valor padrão pra ela da seguinte forma:

Vamos usar de exemplo essa tabela:

Coluna 1 Coluna 2
Item 1 Sub 1
Item 2 Sub 2

Lembrando que as linhas podem ter tags(que por enquanto não fazem nada, mas vão fazer no futuro)

Visual Basic

    Tabela.Padrão = "Coluna 1||||Coluna2>>>>Item 1||||Sub 1>>>>Item 2||||Sub 2<<<<Tag linha 1||||Tag linha 2"

C#

    Tabela.Padrão = "Coluna 1||||Coluna2>>>>Item 1||||Sub 1>>>>Item 2||||Sub 2<<<<Tag linha 1||||Tag linha 2";

Com o padrão definido ou não você pode carregar o arquivo da tabela, caso o arquivo não exista, ele cria automaticamente, porém ele exige uma pasta chamada "HBD" no diretório do executável(você também pode colocar o caminho completo do arquivo e a extensão que deseja e ele salva lá). Caso possua um padrão, ele irá criar a tabela com o padrão, caso contrário ele criará uma tabela vazia.

Visual Basic

    Tabela.CarregarTabela("Tabela")

C#

    Tabela.CarregarTabela("Tabela");

Desta forma a tabela vai ser carregada do arquivo salvo ou criada caso não exista com o padrão atual.

O caminho desse arquivo é o caminho do executável/HBD/a string que você colocar no único parâmetro.HBD

Caso você queira aplicá-la em uma ListView, com o nome, por exemplo, de ListView1, pode usar o seguinte comando:

Visual Basic

    Tabela.ConverteLV(ListView1)

C#

    Tabela.ConverteLV(ListView1);

Precisará executá-lo todas as vezes que atualizar a tabela também.

Colunas

Você pode criar colunas da seguinte forma:

Visual Basic

    Tabela.NovaColuna(NomedaColuna)

C#

    Tabela.NovaColuna(NomedaColuna);

Pode criar colunas sem nomes também, mas pode ser confuso pro user.

Removendo colunas:

Visual Basic

    Tabela.RemoveColuna(Endereço)

C#

    Tabela.RemoveColuna(Endereço);

Endereço também é opcional, caso não o coloque ele vai remover a coluna mais a direita da tabela.

Para achar o endereço de uma coluna existem duas formas:

  1. Contar manualmente da esquerda pra direita, sendo que a primeira coluna é contada como 0.
  2. Utilizar o comando EncontreColuna, da seguinte forma:

Visual Basic

    Tabela.EncontreColuna(NomedaColuna, True)

C#

    Tabela.EncontreColuna(NomedaColuna, True);

Sendo que o primeiro parâmetro é uma string com o nome dado a coluna na hora de cria-la e o segundo é se contém no nome, por exemplo, caso criássemos uma tabela como a padrão, e quiséssemos encontrar a primeira coluna que contém a palavra "Coluna" nela, usaríamos da seguinte forma:

Visual Basic

    Tabela.EncontreColuna("Coluna", true)
Retorna: 0

Caso colocássemos false no segundo parâmetro ele procuraria uma coluna com o nome exato "Coluna", e como não existe na tabela ele retornaria o valor -1, dessa forma:

Visual Basic

    Tabela.EncontreColuna("Coluna", false)
Retorna: -1

-1 significa um erro ou não encontrado.

Itens

Escrevendo itens

Para escrever um item utilize o seguinte comando:

Visual Basic

    Tabela.EscreveProximo(TextodoItem, 0)

O primeiro parâmetro é o texto que será exibido no item, enquanto o segundo, que é opcional, é a linha que ele será escrito, começando do 0. A linha é opcional já que se não colocar ele irá adicionar a ultima linha.

Também pode colocar mais de um item de uma vez das seguintes formas:

1. Utilizando strings:

Visual Basic

    Tabela.EscreveProximo(Valor1, Valor2, Valor3 ..., 0)

Cada um dos valores escritos é um item adicionado e o ultimo parâmetro é a linha, que é opcional. Isso é valido até 20 itens de uma vez, caso precise de mais use a segunda opção.

2. Utilizando uma lista de strings:

Visual Basic:

    Tabela.EscreveProximo(ListadeStrings, 0)

Cada um dos itens da lista vão ser escritos na mesma linha, o ultimo parâmetro é a linha, que é opcional.

Ao escrever itens você pode extrapolar a quantidade de colunas, o item estará em uma coluna que ainda não existe, mas ao cria-la ele será exibido.

Você também pode escrever em uma coluna

Caso queira usar o nome da coluna ao invés de escrever até chegar nela.

Visual Basic

    Tabela.EscrevenaColuna(NomedaColuna, TextodoItem, true)

O Ultimo parâmetro é se contém na coluna ou não, funciona exatamente da mesma forma que no comando "EncontreColuna", já mencionado em cima. Caso o item já exista ele irá editar. O comando sempre será executado na ultima linha.

Editando item criado

Visual Basic

    Tabela.EscreveItem(NovoTexto, EndereçodaLinha, EndereçodaColuna)

Coletando valor de um item

Visual Basic

    Dim TextodoItem As String = Tabela.Item(EndereçodaLinha, EndereçodaColuna)

Removendo itens

Você pode tanto remover um item especifico quanto remover um item com um texto especifico da ultima linha.

Removendo item com texto especifico da ultima linha

Visual Basic

    Tabela.RemoveItem(TextoaSerRemovido)
Removendo item por coordenada

Visual Basic

    Tabela.RemoveItem(EndereçodaLinha, EndereçodaColuna)
Removendo por endereço

Visual Basic

    Tabela.RemoveItem(EndereçodaColuna)

Pesquisas

Você também pode pesquisar dentre os itens criados pra conseguir as coordenadas deles.

Pesquisando um item

Visual Basic

    Dim coordenada = Tabela.Encontre(TextodoItem, False)

Este retornará um objeto de coordenada contendo a linha e a coluna do item, o ultimo parâmetro é o contém e funciona exatamente da mesma forma que pesquisando colunas. Caso haja mais de um item, ele informará a coordenada do primeiro que achar da esquerda pra direita e de cima pra baixo.

Pesquisando vários itens

Visual Basic

    Dim coordenadas = Tabela.EncontreAlguns(TextodoItem, False)

Este retornará uma lista de objetos de coordenada, cada um deles possui a linha e a coluna dos itens encontrados. O ultimo parâmetro é o contém e funciona exatamente da mesma forma que pesquisando colunas.

Linhas

Você pode adicionar uma linha da seguinte forma:

Visual Basic

    Tabela.ProximaLinha()

Ele irá adicionar mais uma linha no final da tabela.

Removendo linhas:

Visual Basic

    Tabela.RemoveLinha(EndereçodaLinha)

O endereço da linha é completamente opcional, já que se não colocado a ultima será removida.

Encontrando uma linha:

Visual Basic

    Dim Linha = Encontre(ListadeItens)

Esta retornará o endereço de uma linha que possua exatamente os itens contidos na lista procurada, levando em conta aquela primeira lista padrão que eu mencionei observe o exemplo:

Visual Basic

    Dim Linha as new List(Of String)
    
    Linha.add("Item 2")
    Linha.add("Sub 2")

    Dim Linha = Tabela.Encontre(Linha)
Retorna: 1

Ele sempre irá retornar a primeira linha que encontrar com os exatos itens da lista. Caso a linha não exista, ele retornará -1

Tags:

Editando a tag de uma linha:

Visual Basic

    Tabela.Propriedades(EndereçodaLinha) = "TagDesejada"

Conversores de saída

Caso queira converter sua tabela pra outros formatos, temos diversas formas de fazer isso.
Começando por transformar uma ListView em uma Tabela Highborn

Visual Basic

    Tabela.TabelaPraHBD(ListView)

Tabela Highborn pra ListView:

Visual Basic

    Dim ListView = Tabela.ConverteLV()

Tabela Highborn pra ListViewItem

Visual Basic

    Dim LVI = Tabela.LVIpraHBD(EndereçodaLinha)

CSV pra Tabela Highborn

Visual Basic

    Tabela.CSVpraHBD(CSV)

O csv deve estar em formato de string ou array de strings.

Salvamentos

Salvando pra .HBD(que é o arquivo de leitura do Highborn)

Visual Basic

    Tabela.SalvarTabela()

Você precisa ter uma pasta no caminho do executável com o nome "HBD" pra essa função.

Salvando em XLSX(ou como dizem, em "Excel")

Visual Basic

    Tabela.SalvarEx(True)

O único parâmetro dessa função é se a primeira linha da tabela será as coluna, caso não seja ele começa pelos itens.

Salvando em CSV

Visual Basic

    Tabela.SalvarCSV()

Miscelâneas

Miscelâneas são coisas aleatórias que eu uso de vez em quando que podem ser úteis também no projeto.

Salvando Listview em Excel

Visual Basic

    Miscelaneas.SalvarEx(ListView)

C#

    Miscelaneas.SalvarEx(ListView);

Salvando ListView em CSV

Visual Basic

    Miscelaneas.SalvarCSV(ListView)

C#

    Miscelaneas.SalvarCSV(ListView);

Importando Arquivos

Visual Basic

    Dim Arquivo = Miscelaneas.ImportarArquivos(Filtro, True)

Neste ele vai importar arquivos, mas vai retornar uma array de strings, é perfeito pra importar CSVs ou TXTs que tem o mesmo aspecto que um CSV ou é uma lista separada por quebras de linha. O parâmetro Filtro é o mesmo que o filtro do OpenfileDialog, como padrão ele vem "CSV ou TXT|.csv;.txt", já o ultimo parâmetro é pra remover linhas duplicadas, vem por padrão como falso. Todos os parâmetros aqui são opcionais, dessa forma pra importar um CSV ou um TXT fica muito fácil.

Isso é tudo pe-pe-pessoal! Bom proveito!
Product Compatible and additional computed target framework versions.
.NET Framework net46 is compatible.  net461 was computed.  net462 was computed.  net463 was computed.  net47 was computed.  net471 was computed.  net472 was computed.  net48 was computed.  net481 was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
1.0.7 413 10/27/2021
1.0.6 325 6/8/2021
1.0.5 368 6/5/2021
1.0.4 339 6/4/2021
1.0.3 302 6/3/2021

-Join opcional no thread dos salvamentos de miscelaneas.
-Agora pode salvar a tabela em qualquer lugar do computador e não só na pasta do executável.