sexta-feira, 24 de maio de 2013

Control Time (Hours and Minutes)
Controlo de horas e minutos


Este lindo controlo para seleccionar horas e minutos.
Composto por uma textbox e quatro botões.

Querem saber como fazer? (envia-me uma mensagem)
Quero receber o teu "feedback"...
 

terça-feira, 23 de abril de 2013

Continuação de my-fyireporting...


Vamos conhecer mais um pouco desta fabulosa ferramenta. Para quem usa uma versão express do VS.Net não tem o datareports ou não possa ou não queira usar outras ferramentas como o sql reporting services (existem mais), mas o fyireporting é uma excelente alternativa.

 Podemos inserir caixas de texto, etiquetas, rectângulos,linhas, listas, grelhas, imagens, sub-relatórios, tabelas, gráficos, etc.

Neste artigo vamos aprender a usar mais do que um dataset e mais do que uma datasource.
No menu Data, temos Data Sets onde são visualizados os datasets já criados ou podemos adicionar novos (new...)
- Data Sources a nossa fonte de dados (podemos criar várias).


(As abas da nossa ferramenta: Designer, RDL Text e Preview)


 No botão "Add" - Adicionar nova data source, nome DS2
Neste caso vamos escolher em Data provider uma conecxão XML.
 E em baixo colocamos a nossa connection string


Vamos então criar uma nova tabela:

Criamos a nova tabela (escolhemos o DataSet, os campos,...)

Uma nova etiqueta


Inserimos uma nova tabela.

domingo, 21 de abril de 2013


 Breve introdução ao my-fyireporting


FyiReporting sem relatórios (vazio)
 

Novo relatório
  

Conexão a base de dados
Seleccionamos o tipo de base de dados
Abrimos a conexão, neste caso uma conexão Sqlite

 Escolhemos a tabela ou criamos a nossa instrução SQL

Pré-Visualização do nosso relatório.



 Até ao próximo artigo, onde vamos falar dos datasource e datasets.

http://portugalvbnet.blogspot.pt/2013/04/continuacao-de-my-fyireporting.html









terça-feira, 3 de abril de 2012

Colorir linha em controlo ListBox

Como pintar linhas em um control ListBox? (VB.NET 2010)

Primeiro temos que definir a propriedade DrawMode para DrawMode.OwnerDrawFixed, para que seja disparado o evento DrawItem.


E no evento escrevemos:
Vou chamar ao control ListBox de Lista
  Private Sub Lista_DrawItem(sender As Object, e As System.Windows.Forms.DrawItemEventArgs) Handles Lista.DrawItem

        Dim cor As Brush = Brushes.Black

        If e.Index = 5 Then 'Por exemplo colorir a linha 5 de uma cor diferente.
            cor = Brushes.Blue
        End If

        e.DrawBackground()

        Dim mybrush As Brush = Brushes.Beige
        e.Graphics.FillRectangle(mybrush, e.Bounds)
        If (e.Index > -1) Then
            e.Graphics.DrawString(Lista.Items(e.Index).ToString, e.Font, cor, e.Bounds)
        End If
        e.DrawFocusRectangle()

    End Sub

terça-feira, 27 de março de 2012

Ficheiros XML

XML (Extensible Markup Language) é um formato organizado de dados.

Neste artigo vou mostrar de uma forma simples, como escrever, ler, alterar e eliminar dados nestes ficheiros.
Estrutura de ficheiro xml, deve existir sempre um elemento principal (root tag) e os elementos secundários.


<?xml version="1.0" encoding="utf-8"?>
<!--Lista de Compras-->
<Compras>
  <Vegetais>
    <Vegetal1>Couves</Vegetal1>
    <Vegetal2>Alfaces</Vegetal2>
    <Vegetal3>Espinafre</Vegetal3>
  </Vegetais>
  <Frutos>
    <Fruto1>Maça</Fruto1>
    <Fruto2>Banana</Fruto2>
    <Fruto1>Laranja</Fruto1>
    <Fruto2>Cereja</Fruto2>
  </Frutos>
</Compras>

- Criar
' Cria um novo ficheiro XML com a codificação UTF8
Dim xmlw As New XmlTextWriter(Environment.CurrentDirectory & "\MyXML.xml", System.Text.Encoding.UTF8)
        xmlw.Formatting = Formatting.Indented
        xmlw.WriteStartDocument()
        ' Adiciona um comentário geral
        xmlw.WriteComment("Lista de Compras")
        ' Criar um elemento geral
        xmlw.WriteStartElement("Compras")
        ' Criar o elemento "Vegetais" e alguns dados
        With xmlw
            .WriteStartElement("Vegetais")
            .WriteElementString("Vegetal1", "Couves")
            .WriteElementString("Vegetal2", "Alfaces")
            .WriteElementString("Vegetal3", "Espinafre")
            .WriteEndElement()
        End With
        ' Criar o elemento "Frutos" e alguns dados
        With xmlw
            .WriteStartElement("Frutos")
            .WriteElementString("Fruto1", "Maça")
            .WriteElementString("Fruto2", "Banana")
            .WriteElementString("Fruto1", "Laranja")
            .WriteElementString("Fruto2", "Cereja")

            .WriteEndElement()
        End With
        xmlw.WriteEndElement()
        xmlw.WriteEndDocument()
        ' Fecha o documento XML
        xmlw.Flush()
        xmlw.Close()
- Fim Criar

Para ler um elemento
 xml.Load(Environment.CurrentDirectory & "\MyXML.xml") 'Pegar nomes para as colunas do DGV_SEL
Dim s As String = xml.DocumentElement.GetElementsByTagName("Vegetal1").Item(0).InnerText
MsgBox(s)

Para modificar um elemento

 'Para alterar valores
        Dim xDoc As New XmlDocument : xDoc.Load(Environment.CurrentDirectory & "\MyXML.xml")
        Dim nodelist As Xml.XmlNodeList
        nodelist = xDoc.GetElementsByTagName("Vegetal1")
        nodelist.Item(0).InnerText = "1"

        xDoc.Save(Environment.CurrentDirectory & "\MyXML.xml")


E por ultimo apagar um elemento
        Dim xmlFile = XDocument.Load(Environment.CurrentDirectory & "\MyXML.xml")
        xmlFile...<Numeros>.Remove() 'Remove um elemento geral (por completo)
        xmlFile...<N1>.Remove() 'Remove um único elemento
        xmlFile.Save(Environment.CurrentDirectory & "\MyXML.xml")

Neste artigo pretendo demonstrar como trabalhar com ficheiros xml de uma forma simples.
Até breve...

quarta-feira, 14 de março de 2012

SQLite (continuação)

Finalizando o artigo anterior, vamos então editar ou  eliminar o registo da nossa tabela.

Recorrendo ao uso do SQL

Para actualizar usamos o UPDATE

 Dim sql As String = "UPDATE contactos SET telefone='999000999' WHERE nome='João'"
 Dim cmd As New SqLiteCommand(sql, connection)
 cmd.ExecuteNonQuery()

Para eliminar usamos DELETE
 Dim sql As String = "DELETE FROM contactos WHERE nome='João';"
 Dim cmd As New SqLiteCommand(sql, connection)
 cmd.ExecuteNonQuery()

domingo, 13 de novembro de 2011

Gravar dados em SQLite com vb.net

1 sem título
Neste artigo vou mostrar como guardar dados na nossa tabela.
  Guardar com a passagem de parâmetros, no inicio também não olhava bem para esta técnica. Mas tem grandes vantagens. Procedimentos Armazenados ou SP são tarefas ou objectos guardados dentro da base de dados que contém uma colecção pré-esquematizada de instruções SQL, que são executadas directamente no servidor. O que possibilita a passagem dinâmica de parâmetros, maior rapidez, melhor manutenção e mais segurança.
 

 Rotina para guardar dados na nossa tabela. Adicione a um form duas textboxes txt_nome e txt_tel, e um botão. No evento do botão faça a chamada a rotina guardar().


Public Class Form2

Dim connection As New SQLiteConnection(myConnectionString)

Private Sub guardar()

connection.Open() 'Abre a conexão

'Na instrução sql indico quais os campos que são passado atravez dos parametros

Dim sql As String = "INSERT INTO contactos(nome,telefone) VALUES (@nome,@tel)"

Dim cmd As New SQLiteCommand(sql, connection)
'Parametros a serem inseridos na tabela
cmd.Parameters.Add("@nome", SqlDbType.VarChar).Value = txt_nome.Text
cmd.Parameters.Add("@tel", SqlDbType.Int).Value = txt_tel.Text
cmd.ExecuteNonQuery() 'Executa a operação mas não resultam registos
cmd.Dispose() 'Liberar a memória usada
Cursor.Current = Cursors.Default
connection.Close() 'Fecha a conexão
End Sub
Private Sub btn_guardar_Click(sender As System.Object, e As System.EventArgs) Handles btn_guardar.Click
guardar()
End Sub
End Class


Até ao próximo artigo, como editar e eliminar dados.