Conteúdo
1º Passo: Criação do Banco de Dados
2ª Passo: Criar o Projeto
3º Passo: Conectando com o Banco de Dados
4º Passo: Layout do Formulário
5º Codificando o formulário.
Neste Tutorial iremos desenvolver um Cadastro de Cliente completo, onde o usuário pode filtrar a consulta em uma data grid e quando o usuário clicar em uma linha da Data Grid os resultados vão para os seus determinados Campos.
1º Passo: Criação do Banco de Dados
Entre no SQL Server e digite o código a seguir:
create database bdcliente
/*Apague a linha de cima e digite o trecho abaixo*/
Use bdCliente
Create table tbCliente
(
codCliente int not null primary key,
nome varchar(100),
cpf char(14),
telephone char(13)
);
Feche o SQL Server e entre no Visual Studio de sua Preferencia.
2ª Passo: Criar o Projeto
Crie um novo Projeto no menu File > New > C# > Windows > Windows Applications.
Dê o nome de SisCliente
3º Passo: Conectando com o Banco de Dados
Clique no Menu Data > Add New Data Source > DataBase > New Connection.
Escolha Change:
Microsoft SQL Server Database File
Encontre a Pasta do Banco de Dados: Geralmente em C:\Arquivos de programas\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA
Teste a Conexão:
Clique em Sim:
Clique em Next:
Selecione o Tables:
Clique em Finish.
4º Passo: Layout do Formulário
Nesta Parte iremos inserir as mascara no CPF e Telefone.
Em Data Sources(SHIFT + ALT + D) > bdclienteDataSet > tbCliente> cpf
Clique com o botão Direito e selecione MaskedTextBox. Caso não esteja aparecendo clique em Customize e Selecione na lista a MaskedTexBox.
Faça isso com o campo Telephone.
Observe que mudou a figura do lado do nome.
Em Data Sources(SHIFT + ALT + D) > bdclienteDataSet > tbCliente
Clique com o botão Direito e Selecione Detais:
Em ToolBox arraste o componente Containers > GroupBox para o formulário. Feito isso arraste a tabela tbCliente para o formulário.
Agora faça o layout como você preferir.
Agora faça o layout como você preferir.
Uma Sugestão:
Nesta Parte iremos inserir a mascara clique na campo CPF, Ira aparecer uma seta para a direita clique nela e depois em Set Mask. Como na imagem:
Clique em <Custom> e digite a mascara do CPF. Observe que estou digitando virgula em vez de ponto. Porque o usuário irá vê o ponto
Faça isso com o Telefone e digite a mascara a seguir: (00)0000-0000.
Seu Layout deverá ficar assim:
Agora arraste os componente a seguir:
1 GroupBox;
Componentes | Name | Valores |
1 GroupBox; | - | Text: Pesquisar |
1 Label | - | Text: Filtrar por: |
1 ComboBox: | cbmFilrar | Propriedade Items : Código, Nome e CPF |
1 Label | - | Text : “=” |
1 TextBox | txtPesquisar | - |
1 Botão | btnPesquisar | Text: Pesquisar |
No Event SelectedIndexChanged(Icone Raio ou duas vezes na combobox) Da Combobox Filtrar ‘cbmFiltrar’ digite o seguinte:
if (cbmFiltrar.Text == "Código") { txtPesquisar.Mask = ""; } if (cbmFiltrar.Text == "Nome") { txtPesquisar.Mask = ""; } if (cbmFiltrar.Text == "CPF") { txtPesquisar.Mask = "000,000,000-00"; } if (cbmFiltrar.Text == "") { txtPesquisar.Mask = ""; } |
Como na imagem:
Nesta parte iremos mostrar todos os Dados em uma datagrid. Para isso arraste uma Data Grid e na table tbCliente mude o tipo de Dados que esta como Detais para Data Grid e Arraste para a GroupBox como na imagem:
Clique na seta no canto superior direita e clique na palavra Dock in parent container com isso o Data Grid selecionar o GroupBox inteiro. Clique em Edit Columns para mudar as palavras das Colunas.
Desmarque as opções a seguir:
Enable Adding;
Enable Editing e
Enable Deleting.
Volte para o Design(F7) e clique duas vezes no botão Pesquisar e insira Código a Seguir:
try { if (cbmFiltrar.Text == "Código") { //Define a instrução Sql string sql = "SELECT * FROM tbCliente WHERE codFuncionario =" + txtPesquisar.Text + ""; //Lê os dados da variavel sql e conectar no cn cmd = new SqlCommand(sql, cn); //Abre conexão cn.Open(); //Define o valor da CommandType para cmd cmd.CommandType = CommandType.Text; /*Representa um conjunto de comandos de dados e uma conexão de banco de dados * que são usados para preencher o DataSet e atualizar um banco de dados SQL Server.*/ SqlDataAdapter da = new SqlDataAdapter(cmd); //Representa uma tabela de dados na memória. DataTable cliente = new DataTable(); /* Adiciona ou atualiza linhas em um DataTable para que correspondam na fonte de * dados usando o DataTable.*/ da.Fill(cliente); /*A tbClienteDataGridView recebe o DataTable cliente*/ tbClienteDataGridView.DataSource = cliente; //Fechar a conexão } if (cbmFiltrar.Text == "Nome") { //define a instrução SQL string sql = "SELECT * FROM tbCliente WHERE cliente LIKE '%" + txtPesquisar.Text + "%'"; cmd = new SqlCommand(sql, cn); cn.Open(); cmd.CommandType = CommandType.Text; SqlDataAdapter da = new SqlDataAdapter(cmd); DataTable cliente = new DataTable(); da.Fill(cliente); tbClienteDataGridView.DataSource = cliente; } if (cbmFiltrar.Text == "CPF") { //define a instrução SQL string sql = "SELECT * FROM tbCliente WHERE CPF ='" + txtPesquisar.Text + "'"; cmd = new SqlCommand(sql, cn); cn.Open(); cmd.CommandType = CommandType.Text; SqlDataAdapter da = new SqlDataAdapter(cmd); DataTable cliente = new DataTable(); da.Fill(cliente); tbClienteDataGridView.DataSource = cliente; } if (cbmFiltrar.Text == "") { //define a instrução SQL string sql = "SELECT * FROM tbCliente"; cmd = new SqlCommand(sql, cn); cn.Open(); cmd.CommandType = CommandType.Text; SqlDataAdapter da = new SqlDataAdapter(cmd); DataTable cliente = new DataTable(); da.Fill(cliente); tbClienteDataGridView.DataSource = cliente; } } catch (Exception ex) { //Caso haja uma exceção MessageBox.Show(ex.Message); } finally { //Fechar a conexão cn.Close(); } |
Nesta Parte quando o usuário clicar em uma linha da datagrid os dados vão para os campos determinados.
Primeiro vamos criar um método que limpar todas as textbox e maskedTextBox como no trecho abaixo:
private void LimparCampo() { foreach (Control c in Controls) { if (c is GroupBox) { for (int i = 0; i < c.Controls.Count; i++) { if (c.Controls[i] is TextBox) { (c.Controls[i] as TextBox).Text = ""; } if (c.Controls[i] is MaskedTextBox) { (c.Controls[i] as MaskedTextBox).Text = ""; } if (c.Controls[i] is ComboBox) { (c.Controls[i] as ComboBox).Text = ""; } } } } } |
Nesta parte iremos acessar a evento da Data Grid que ficar responsável por mostrar os dados quando o usuário clicar uma vez.
Clique na data grid > Em Propriedade > Observer uma figura de uma Raio. Clique nela então clique duas vezes na propriedade Click e insira o código abaixo:
private void tbClienteDataGridView_Click(object sender, EventArgs e) { //Limpar a GroupBox LimparCampo(); //O Campo codFuncionario recebe da datagrid tbCliente a celula número 0 e assim por diante codFuncionarioTextBox.Text = tbClienteDataGridView.CurrentRow.Cells[0].Value.ToString(); nomeTextBox.Text = tbClienteDataGridView.CurrentRow.Cells[1].Value.ToString(); cpfMaskedTextBox.Text = tbClienteDataGridView.CurrentRow.Cells[2].Value.ToString(); telephoneMaskedTextBox.Text = tbClienteDataGridView.CurrentRow.Cells[3].Value.ToString(); } |
O Tutorial esta concluído. Foi um Prazer pode ajudar vocês.
Vídeo.
Até Logo,
By: Natanael.
Olá
ResponderExcluirSou novo por aqui.
Gostaria da ajuda de vcs, na linguagem C#.
Tenho um pequeno projeto, com um Form inicial. Este Form tem uma barra de progresso.
Gostaria de um código, pra chamar o próximo Formm depois de um determinado momento. Ou chamar o próximo Form quando a barra de progresso atingir o máximo.
Já tentei várias formas: usando contadores, timers, etc.Todos sem sucesso.
Se puderem ajudar, ficarei agradecido.
Bruno.
oi bruno é fácil use o timer e coloque no program.cs o projeto que vc que que inicie (Application.Run(new o seu form());) ai coloca o timer como true e o intervalo 50 ai dentro do timer ou a linha do evento dele vc coloca
Excluirif (pbcarrega.value < 100){
pbcarrega.value =pbcarrega.value+1;
ai aqui vc chama o form
form frm = new form
frm.showdialog();
}
espero ter ajudado
Segue o Tutorial Criando uma Tela de Splash que segue o mesmo lógica que você está querendo:
ResponderExcluirhttp://nstutoriais.blogspot.com/2010/12/tela-de-splash-em-c.html
Olá
ResponderExcluirConsegui fazer a Tela de Splash. Muito Obrigado!
Continuei fazendo o tutorial desta página, porém me deparei com erros no código do botão pesquisar.
Alguns comandos como:
" cmd = new SqlCommand(sql, cn);"
" cn.Open();"
" cmd.CommandType = CommandType.Text;"
" SqlDataAdapter da = new SqlDataAdapter(cmd);"
Não foram reconhecidos pelo Visual Studio 2010.
Sublinhado vermelho nas palavras: "cn", "cmd", "SqlDataAdapter" e "SqlCommand".
Será a falta de algum namespace?
O que posso fazer para resolver isso?
Se puder me adicionar no msn( bruno_bgr08@hotmail.com ) ou skype ( brunobgr08 ) ficarei agradecido.
Bruno.
Este comandos são para ter acesso ao Banco de Dados e precisando no namespace(Biblioteca ou Classe) a seguir:
ResponderExcluirusing System.Data.SqlCliente
A palavra cn representa uma conexão com o SQL Server exemplo:
//Biblioteca para ter acesso ao Banco de Dados SQL Server
using System.Data.SqlClient;
//Representa uma conexão com o SQL Server
SqlConnection cn = new SqlConnection(Properties.Settings.Default.dbPomposoCS);
//Representa um comando SQL
SqlCommand cmd = null;
//Exemplo
cmd = new SqlCommand("SELECT * FROM tabela1",cn);
SqlDataAdapter adapter = new SqlDataAdapter(cmd, cn);
ola natanael da um help ai cara esto iniciando nessa area de desenvolvedor agr e começando pelo C# , enfim pra min chamar o metodo MASK eu devo cria-lo ?
ResponderExcluirPrimeiro use o componente de interface do usuário MaskedTextBox assim poderá usa.
ResponderExcluirExemplo
tenho um componente MaskedTextBox chamado mtbcpf e gostaria de inserir uma mascara para o CPF:
Exemplo:
mtbcnpj.Mask = "000,000,000-00";
me refiro a essa parte do tuto:
ResponderExcluirNo Event SelectedIndexChanged(Icone Raio ou duas vezes na combobox) Da Combobox Filtrar ‘cbmFiltrar’ digite o seguinte:
if (cbmFiltrar.Text == "Código")
{
txtPesquisar.Mask = "";
}
Para acessar a Propriedade Mask e indispensável o componente MaskedTextbox(arrastar e soltar).
ResponderExcluirentão e adicionei as MaskedTextbox e as mascaras mas quando eu digito esse comando no combox filtrar ele naum reconhece ...
ResponderExcluirola desculpe o inconveniente eu consegui da seguinte maneira
ResponderExcluirif (cmbFiltrar.Text == "CPF")
{
cpfMaskedTextBox.Mask = "000,000,000-00";
}
Poren como eu posso usar a propriedade Mask para filtrar a textBox nome ?
1. Pela Textbox eu não sei usando mascara. Porque a Propriedade Mask e exclusiva para o componente MaskedTextBox. Quem souber usar mascara na TextBox por Favor poste um comentário.
ResponderExcluirPara Filtrar a MaskedTextbox Nome faça:
2. Primeiro você limpa a mascara usando o if e a propriedade Mask vazia. Então vai poder filtrar pelo nome.
e como eu faço isso ?
ResponderExcluirif (cmbFiltrar.Text == "Nome")
ResponderExcluir{
cpfMaskedTextBox.Mask = "";
}
Agora sim pode filtra pelo nome
estou muito grato pela atenção como eu disse sou iniciante e estou aprendendo a entender a logida do C#...
ResponderExcluirMe diz uma coisa amigo nesse caso acima eu estaria limpando a caixa cpfMaskedBox, porém resta a MaskedBoxtelafone isso não iria gerar um erro ?
eu teria q chamar um else ?
...
não aconteceria nenhum erro. Pois quando a propriedade Mask esta vazia ela aceita qualquer caractere.
ResponderExcluirE ae natanael blz então veio infelismente naum consegui fzr seu tuto, naum sei se foi prq usei sql2008 e vs2010 e criei o bd de forma diferente da sua mas naum consegui usar os comandos cn e cmd do sql mesmo adcionando o namespace vou tentar finalizar o projeto usando o bindingSource em vez de maskaras .qndo eu estiver mais familiarizado com o C# volto a tentar denovo
ResponderExcluirobrigado otimo blog ...
ok. Qualquer coisa estou aqui.
ResponderExcluirflw
Natanael, bom dia!
ResponderExcluirCara suas vídeos aulas são muito boas e o material aqui do site também.
Apenas sinto falta do projeto criado por você, por que você não disponibiliza para nós? Seria de grande ajuda.
Valeu,
Júnior
Vlw Júnior.
ResponderExcluirNos próximos tutoriais irei fazer isso.
Flw
Olá amigo gostei do seu tutorial mas no meu deu um erro, tem como ver se consegue me ajudar?
ResponderExcluirprivate void btnPesquisar_Click(object sender, EventArgs e)
{
try
{
if (txtPesquisaFuncionario.Text != "" && txtPesquisaMesAno.Text != "")
{
string sql = "SELECT * FROM tbBercario WHERE Funcionario LIKE '%" + txtPesquisaFuncionario + "%' AND MesAno=" + txtPesquisaMesAno + "";
cmd = new SqlCommand(sql, cn);
cn.Open();
cmd.CommandType = CommandType.Text;
SqlDataAdapter da = new SqlDataAdapter(cmd);
DataTable tbBbercario = new DataTable();
da.Fill(tbBbercario);
tdBercarioDataGridView.DataSource = tbBbercario;
}
else if (txtPesquisaFuncionario.Text != "" && txtPesquisaMesAno.Text == "")
{
string sql = "SELECT * FROM tbBercario WHERE Funcionario LIKE '%" + txtPesquisaFuncionario + "%'";
cmd = new SqlCommand(sql, cn);
cn.Open();
cmd.CommandType = CommandType.Text;
SqlDataAdapter da = new SqlDataAdapter(cmd);
DataTable tbBbercario = new DataTable();
da.Fill(tbBbercario);
tdBercarioDataGridView.DataSource = tbBbercario;
}
else
{
MessageBox.Show("Preencha os campos!");
}
}
catch (Exception ex)
{
//Caso haja uma exceção
MessageBox.Show(ex.Message);
}
finally
{
//Fechar a conexão
cn.Close();
}
Vê agora.
ResponderExcluirprivate void btnPesquisar_Click(object sender, EventArgs e)
{
try
{
if ((txtPesquisaFuncionario.Text != "") && (txtPesquisaMesAno.Text != ""))
{
string sql = "SELECT * FROM tbBercario WHERE Funcionario LIKE '%" + txtPesquisaFuncionario.Text + "%' AND MesAno=" + txtPesquisaMesAno.Text + "";
cmd = new SqlCommand(sql, cn);
cn.Open();
cmd.CommandType = CommandType.Text;
SqlDataAdapter da = new SqlDataAdapter(cmd);
DataTable tbBbercario = new DataTable();
da.Fill(tbBbercario);
tdBercarioDataGridView.DataSource = tbBbercario;
}
else if ((txtPesquisaFuncionario.Text != "") && (txtPesquisaMesAno.Text == ""))
{
string sql = "SELECT * FROM tbBercario WHERE Funcionario LIKE '%" + txtPesquisaFuncionario.Text + "%'";
cmd = new SqlCommand(sql, cn);
cn.Open();
cmd.CommandType = CommandType.Text;
SqlDataAdapter da = new SqlDataAdapter(cmd);
DataTable tbBbercario = new DataTable();
da.Fill(tbBbercario);
tdBercarioDataGridView.DataSource = tbBbercario;
}
else
{
MessageBox.Show("Preencha os campos!");
}
}
catch (Exception ex)
{
//Caso haja uma exceção
MessageBox.Show(ex.Message);
}
finally
{
//Fechar a conexão
cn.Close();
}
Pq vc nao postou todas as video aula cara ?
ResponderExcluirabraços
Neste tutorial é apenas mostrado o video do sistema final. Infelizmente não tenho ele em video aula apresentando o código.
ResponderExcluirOlá, Preciso da sua ajuda. Estou desenvolvendo um TCC e vou desenvolver um sistema para cantina na lingua c# e gostaria que me ajudasse. Se você responde esta mensagem eu te mando o meu e-mail para nos falar melhor, enfim Beijos.
ResponderExcluirtem como sim! Em que posso te ajudar?
ResponderExcluirNatanael ótimo vídeo... tem algum tutorial que ensine a fazer sistema simples para um oficina em c# ... ?
ExcluirOlá Natanael, ótimo blog cara!
ResponderExcluirParabéns pelos acessos merecidos, percebi sua grande atenção com o pessoal
e tbm não poderia passar sem deixar uma perguntinha.. heheh
então é o seguinte:
criei uma tabela de clientes e tudo certinho
o programa salva no banco de dados e tudo OK
Porém, quando ele salva.. ele não atualiza o banco de dados na mesma hora. É necessário fechar o programa e abrir novamente pra poder ver o último item registrado.
o VB não tá reconhecendo o comando então ele tá dando erro exatamente na linha que faria atualizar a lista dos itens.. estou usando DataGridView e a linha que dá erro é a seguinte:
...
Grid.DataBind();
...
Nataniel, seu novo em desenvolvimento voce teria algum modelo de cadastro mas utilizando 2 tabelas com o relacionamento entre PK e FK? cara gostei muito do seu tuto sobre o cadastro com uma tabela me ajudaou d+++, mas agora quero ir um pouco alem>>>
ResponderExcluirOla Como faço para Adquirir esse Aplicativo ?
ResponderExcluiratraves do meu email 259.natanael@gmail.com
ResponderExcluirEste comentário foi removido pelo autor.
ResponderExcluiramigo
ResponderExcluirestá td mt bonito e tal.... ja fiz essa pergunta em outra oportunidade e vc nao me respondeu.
vc fala em editar e excluir.
veja bem!
no momento da pesquisa do usuario, cpf ou ID atualiza a tbClienteDataGridView:
SqlDataAdapter da = new SqlDataAdapter(cmd);
DataTable cliente = new DataTable();
da.Fill(cliente);
tbClienteDataGridView.DataSource = cliente;
neste momento entra o editar e surge o problema.
um duplo clic no DataGridView e preenche os textBox acima com as informaços e assim por diante.... funcionando OK.
se for editar diretamento no texbox nao vai atualizar o BD atraves do TableAdapter.Update (que está no botão save) gerando conflito com a chave primaria.
detalhe disso td, se editar diretamente no DataGridView ele permite a edição.
gosto dos teus tutorias, estou sempre por aqui "espiando" e creio que vc consiga me ajudar nessa.
forte abraço
Natanael boa tarde,
ResponderExcluirEstou com um sistema de gerenciamento de um clínica de biomedicina, estou fazendo a parte de cadastro de exames, porém é um trabalho de conclusão de curso, e meu grupo decidiu usar entity, como faço esse mesmo processo de cadastro - exclusão - alteração. Já adicionei você no meu msn é robinholink@hotmail.com
Está assim, tenho um form de cadastro de exames, onde tem campo código com o botão de gerar código e um campo nome do exame, seguindo dos botões continuar - alterar - excluir - cancelar - sair, ao clicar em continuar abre um form onde temos o cadastro das analises do exame, onde tenho campos para preenchimento do nome das analises, referencias dos exames e unidade de medida da analise, seguindo de botões cadastrar - cancelar - voltar, clicando em cadastrar salva no banco de dados. Cadastro efetuado com sucesso e sai do cadastro.
em seguida temos o preenchimento dos resultados dos exames, neste form tem campo CPF tendo um botão pesquisa - trazendo todas as informações do paciente cadastrado no sistema, um campo solicitante, tendo um campo pesquisa para pesquisar os médico que pediu o exame, seguindo de um campo de método, material e um combobox selecione o exame, sendo que todos os exames cadastro no sistema ele tem q aparecer neste combobox, ao selecionar este combobox e clicar no botão continuar abrira um form com resultados, onde tem labels que receberão as analises cadastradas neste exame selecionado, tendo os campos para o preenchimento do resultado, em seguida um textArea para observações, e botões gerar laudo - cancelar - voltar, clicando em gerar laudo segue um relatório com as informações dos pacientes e os resultados preenchidos.
Se você puder me ajudar eu agradeço muito, já te add no msn e tenho o sistema aqui se você quiser que eu te mande para fácil entendimento, fico no aguardo.
Desde já agradeço
atenciosamente,
Robson.
Bom Dia Natanael
ResponderExcluirExcelente trabalho de pesquisa. Sou professor e trabalhei no NTE(Núcelo de TEcnologia Educacional), de Campo GRande MS. Hoje moro em Itapema, SC. mas mesmo aposentado ainda curto a programação. Gostaria muito que vc mostrase como fazer o "Cadastro de Cliente", exatamente como está en C#. Só que uso WebMatrix e gostaria que fosse feito em ASPNet usando a linguagem C#.
Certo de Ser Atendido, antecipo meus agradecimentos
PRof. Edmilson Rodrigues de Oliveira
Ola.
ResponderExcluirBoa noite eu refiz o projeto deste tutorial e quando coloco para debugar ele entra na excecao com a mensagem "object reference not set to an instance of AN OBJECT"...
ResponderExcluirsegue o trecho do codigo ..sem o mask
ResponderExcluirprivate void cmbFiltrar_SelectedIndexChanged(object sender, EventArgs e)
{
if (cmbFiltrar.Text == "Código")
{
textPesquisar.Text = "";
}
if (cmbFiltrar.Text == "Nome")
{
textPesquisar.Text = "";
}
if (cmbFiltrar.Text == "CPF")
{
textPesquisar.Text = "000.000.000-00";
}
if (cmbFiltrar.Text == "")
{
textPesquisar.Text = "";
}
}
private void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e)
{
}
private void btnPesquisar_Click(object sender, EventArgs e)
{
try
{
if (cmbFiltrar.Text == "Código")
{
string sql = "SELECT * FROM Cliente WHERE codigo =" + textPesquisar.Text;
cmd = new SqlCommand(sql, cn);
cn.Open();
cmd.CommandType = CommandType.Text;
SqlDataAdapter da = new SqlDataAdapter(cmd);
DataTable cliente = new DataTable();
da.Fill(cliente);
ClienteDataGridView.DataSource = cliente;
}
if (cmbFiltrar.Text == "Nome")
{
string sql = "SELECT * FROM Cliente WHERE cliente LIKE '%" + textPesquisar.Text + "%'";
cmd = new SqlCommand(sql, cn);
cn.Open();
cmd.CommandType = CommandType.Text;
SqlDataAdapter da = new SqlDataAdapter(cmd);
DataTable cliente = new DataTable();
da.Fill(cliente);
ClienteDataGridView.DataSource = cliente;
}
if (cmbFiltrar.Text == "CPF")
{
string sql = "SELECT * FROM Cliente WHERE CPF ='" + textPesquisar.Text + "'";
cmd = new SqlCommand(sql, cn);
cn.Open();
cmd.CommandType = CommandType.Text;
SqlDataAdapter da = new SqlDataAdapter(cmd);
DataTable cliente = new DataTable();
da.Fill(cliente);
ClienteDataGridView.DataSource = cliente;
}
if (cmbFiltrar.Text == "")
{
string sql = "SELECT * FROM Cliente";
cmd = new SqlCommand(sql, cn);
cn.Open();
cmd.CommandType = CommandType.Text;
SqlDataAdapter da = new SqlDataAdapter(cmd);
DataTable cliente = new DataTable();
da.Fill(cliente);
ClienteDataGridView.DataSource = cliente;
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
finally
{
cn.Close();
}
}
public SqlConnection cn { get; set; }
public SqlCommand cmd { get; set; }
private void groupBox1_Enter(object sender, EventArgs e)
{
}
}
}
Boa Tarde Guerreiro, eu tentei instalar o visual studio 2005 no windows seven mas não rolou, eu tenho uma empresa de motoboy aqui em são paulo e gostaria de criar o meu próprio sistema, coisa basica - cadastro de clientes, motoboys, serviços,ordem de serviço e relatórios dos mesmo.
ResponderExcluirPergunta - voce é da iurd
Sem mais,
Abraço
Instalar o Visual Studio 2010.
ResponderExcluirEu sou da iurd-df
Natanael tipo quando eu chego no terceiro passo faço tudo certinho quando vo seleciona banco de dados la em C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA
ResponderExcluirdiz assim :Você não tem permissão para abrir o arquivo
oque eu faço ?
Srs. Bom dia!
ResponderExcluirMeu nome é Corte sou iniciante em programação C Sharp e estou com algumas duvidas referente ao codigo, percebi que voces estao conversando acima sobre o botao pesquisa e mesmo assi estou com algumas duvidas. Como faço para excluir um registro do banco.
Se alguem usar skype me adicionei Skype: andre.corte4 e meu email: andre@cortecobol.om.br
Boa Tarde!
ResponderExcluirQual a linha de comando, que ao intruduzir algum texto na textobox ele fique em letras maiusculas e sem acentos?
no aguardo.
Ola amigo é bem simples veja:
ResponderExcluirusing System;
public class OlaAmigo
{
public static void Main(String[] args)
{
string frase = "esta frase esta em minuscula";
Console.WriteLine(frase.ToUpper());
//O metodo ToUpper converte qualquer string em //maiuscula.
}
}
ESTAR DANDO ERRO! SEGUE O CODIGO ABAIXO:
ResponderExcluirnamespace SiSolucao
{
public partial class FrmCadContrato : Form
{
public FrmCadContrato()
{
InitializeComponent();
}
public class OlaAmigo
{
public static void Main(string[] args)
{
string frase = "esta frase esta em minuscula";
Console.WriteLine(frase.ToUpper());
//O metodo ToUpper converte quaquer string em //maiusculo.
}
}
private void cadContratoBindingNavigatorSaveItem_Click(object sender, EventArgs e)
{
.
.
ESTAR DANDO ERRO NO
public static void Main(string[] args) "Main"
E NA LISTA DE ERRO:
namespace SiSolucao
{
static class Program
{
///
/// The main entry point for the application.
///
[STAThread]
static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new Form1());
}
}
}
NO MAIN TBM.
O QUE PODE SER?
Qual a mensagem de erro?
ResponderExcluirMAIS OUTRA PERGUNTA.
ResponderExcluirANTES DE EXECUTAR O PROGRAMA TIPO QUANDO CLICA NO BUTAO SALVAR EXECUTA SE OS CAMPOS ESTAR PREENCHIDOS.
EX. PARA TxtBox.
//Verifica se os Campos Estão Preenchidos
if (TextBox.Text != "")
{
"o comando a ser salvo"
}
else
{
messagebox......
}
A minha pergunta é qual o teste para o "MaskedTextBox" verificar se foi preenchido sendo que ele vai conter formatação ex: ___/____/___.
vo pode entra no meu pc?
ResponderExcluirID do TeamViewer
580 699 746
senha
fjm719
Natanael... cade o "Cadastro de Cliente I"?
ResponderExcluirprocurei mas nao encontrei...
esse código vc utiliza C# 2008
ResponderExcluirDesenvolvi na versão 2.0 C# , VS 2005, mas é possível usar em versões atuais.
ResponderExcluireu uso o visual studio 2010 e n na parte de pesquisa ~ta dando erro no cmd exemplo: cmd = new SqlCommand(sql, cn); e em todos os cmd
ResponderExcluirQual erro que esta dando ?
ResponderExcluircmd sumblinhado
ResponderExcluir//Criar uma variavel de Conexão
ResponderExcluirstring connection = @"Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\bdClientes.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True";
//Representa uma conexão aberta para um banco de dados SQL Server.
SqlConnection cn = new SqlConnection(connection);
//Testar a Conexão
{
try
if (cbmFiltrar.Text == "Código")
{
//Define a instrução Sql
string sql = "SELECT * FROM dbCliente WHERE Código =" + txtPesquisar.Text + "";
//Lê os dados da variavel sql e conectar no cn
cmd = new SqlCommand(sql, cn);
//Abre conexão
cn.Open();
//Define o valor da CommandType para cmd
cmd.CommandType = CommandType.Text;
/*Representa um conjunto de comandos de dados e uma conexão de banco de dados
* que são usados para preencher o DataSet e atualizar um banco de dados SQL Server.*/
SqlDataAdapter da = new SqlDataAdapter(cmd);
//Representa uma tabela de dados na memória.
DataTable cliente = new DataTable();
/* Adiciona ou atualiza linhas em um DataTable para que correspondam na fonte de
* dados usando o DataTable.*/
da.Fill(cliente);
/*A tbClienteDataGridView recebe o DataTable cliente*/
dbClienteDataGridView.DataSource = cliente;
//Fechar a conexão
}
if (cbmFiltrar.Text == "Nome")
{
//define a instrução SQL
string sql = "SELECT * FROM dbCliente WHERE cliente LIKE '%" + txtPesquisar.Text + "%'";
cmd = new SqlCommand(sql, cn);
cn.Open();
cmd.CommandType = CommandType.Text;
SqlDataAdapter da = new SqlDataAdapter(cmd);
DataTable cliente = new DataTable();
da.Fill(cliente);
dbClienteDataGridView.DataSource = cliente;
}
if (cbmFiltrar.Text == "CPF")
{
//define a instrução SQL
string sql = "SELECT * FROM dbCliente WHERE CPF ='" + txtPesquisar.Text + "'";
cmd = new SqlCommand(sql, cn);
cn.Open();
cmd.CommandType = CommandType.Text;
SqlDataAdapter da = new SqlDataAdapter(cmd);
DataTable cliente = new DataTable();
da.Fill(cliente);
dbClienteDataGridView.DataSource = cliente;
}
if (cbmFiltrar.Text == "")
{
//define a instrução SQL
string sql = "SELECT * FROM tbCliente";
cmd = new SqlCommand(sql, cn);
cn.Open();
cmd.CommandType = CommandType.Text;
SqlDataAdapter da = new SqlDataAdapter(cmd);
DataTable cliente = new DataTable();
da.Fill(cliente);
dbClienteDataGridView.DataSource = cliente;
}
}
catch (Exception ex)
{
//Caso haja uma exceção
MessageBox.Show(ex.Message);
}
finally
{
//Fechar a conexão
cn.Close();
Bom dia Natael !
ResponderExcluirMeu nome é Diego venho pedir uma ajuda ao amigo, estudo linguagens de programação e estou desenvolvendo um sistema de oficina mecânica como projeto do meu treinamento. Já fiz alguns forms o sistema ta começando a ficar legal.
Quando faço cadastro do cliente eu salvo os dados em txt, porque comecei aprender agora banco de dados.
Na minha segunda tela eu tenho um textbox onde vai a Placa do veículo e um botão consultar Placa onde ele já chama o form de cadastro de cliente. Só que quero colocar um código no botão consultar Placa, que quando for inserida a Placa do veículo ao clicar no botão o sistema faça uma verificação no diretório onde o arquivo está salvo e me retorne, se já está cadastrado algum nome de cliente com aquela Placa ou a própria Placa que foi inserida no textbox esteje salva, caso já tenha cadastrado no sistema, ai eu chamo esse cadastro e preenchendo o form de cadastro de cliente em branco com esses dados, caso não tenha cadastro de cliente ou da própria Placa mesmo, me retorna uma mensagem dizendo que não existe, ai chamo form cadastro de cliente e cadastro ele, fazendo isso evito de correr o risco de cadastrar mais de uma vez o mesmo cliente que já esteje cadastrado.
Agradeço desde já.
Se puder me ajudar melhor ainda, assim aprimoro mais o meu trabalho e aprendo junto com você.
valeu até mais.
abraço
olá to precisando de um help!!! n sei pq mas dá exception quando eu clico no código e deixo o txt sozinho, funciona somente quando digito algo...pode me ajudar por favor?
ResponderExcluirpublic void consultar()
{
SqlConnection sqlconn = Conexao.abrirConexao();
try
{
if (cbConsulta.Text == "Código")
{
string sql = "SELECT * FROM CLIENTE WHERE CodCli =" + txtConsulta.Text + "";
SqlCommand cmd = new SqlCommand(sql, sqlconn);
cmd.CommandType = CommandType.Text;
SqlDataAdapter de = new SqlDataAdapter(cmd);
DataTable cliente = new DataTable();
de.Fill(cliente);
dGConsulta.DataSource = cliente;
}
if (cbConsulta.Text == "Nome")
{
//define a instrução SQL
string sql = "SELECT * FROM CLIENTE WHERE NomeCli LIKE '%" + txtConsulta.Text + "%'";
SqlCommand cmd = new SqlCommand(sql, sqlconn);
cmd.CommandType = CommandType.Text;
SqlDataAdapter da = new SqlDataAdapter(cmd);
DataTable cliente = new DataTable();
da.Fill(cliente);
dGConsulta.DataSource = cliente;
}
if (cbConsulta.Text == "CPF")
{
//define a instrução SQL
string sql = "SELECT * FROM CLIENTE WHERE CPFCli ='" + txtConsulta.Text + "'";
SqlCommand cmd = new SqlCommand(sql, sqlconn);
cmd.CommandType = CommandType.Text;
SqlDataAdapter da = new SqlDataAdapter(cmd);
DataTable cliente = new DataTable();
da.Fill(cliente);
dGConsulta.DataSource = cliente;
}
if (cbConsulta.Text == "")
{
//define a instrução SQL
string sql = "SELECT * FROM CLIENTE";
SqlCommand cmd = new SqlCommand(sql, sqlconn);
cmd.CommandType = CommandType.Text;
SqlDataAdapter da = new SqlDataAdapter(cmd);
DataTable cliente = new DataTable();
da.Fill(cliente);
dGConsulta.DataSource = cliente;
}
else
{
MessageBox.Show(" Dados não cadastrados");
}
}
catch (Exception errro)
{
//Caso haja uma exceção
MessageBox.Show(errro.Message +" no banco");
}
finally
{
Conexao.fecharConexao();
}
}
Cadê em C+?
ResponderExcluirCara, sensacional seu sisteminha. Ajudou muito, eu que sou estudante na área. Se possível, poderia me enviar a solution? lucasbuim@hotmail.com
ResponderExcluirmeu nome é pedro
ResponderExcluircomo faço a programação usandi linguagem em c++....... estou começando agora e presiso de ajuda
Muito bom seu blog e seus tutoriais, dar pra aprender muitas coisas, o ruim é que dar erro e não roda... Verifica antes de postar... Braço...Obg.
ResponderExcluirBom dia.
ResponderExcluirParabéns pelo site.
Sou estudante de programação pelo curso adv, www.cursoadv.com.br.
Gostei muitos dos seus tutoriais, muito obrigado pela ajuda.
Natanael, boa tarde....estou seguindo o seu tutorial, mas quando acesso C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\DATA para pegar o banco de dados, ele dá acesso negado. Sabe me dizer o porque? Eu uso o win 8.1
ResponderExcluirMesmo problema aqui.
ExcluirOla Natanael. qual codigo coloco para que não aceite dados duplicados...tipo cliente com mesmo cpf?
ResponderExcluirOpa! A lógica é o seguinte
ResponderExcluir1º Verificar se o CPF existe na base de dados
2º Se existir, avisar para o usuário. Se não, insere os dados.
Abraços
No sql coloque o cpf como primary key logo o cpf ja cadastrado nunca se repetirá pois sera chave primaria, no C# deve se tratar a forma como o sql responde a esta tentativa de cadastro de um cpf ja cadastrado, Ex: se tentar inserir via codigo direto no sql ele alertara que o dado é um pk( primary key) e nao pode ser duplicado. ja o C# tem que intender este alerta do sql quando ele disse que o dado nao pode ser alterado... criando a condiçao if... eu costumo programar abilitando os objetos no VS. EX; se o dado que vou cadastrar ja estiver cadastrado o botao cadastrar nao abilita e em um dialogshow eu mostro o detalhe do cadastro dizendo.... o cpf xxxx pertence ao cliente xxx... ai ja estamos em LP.
ResponderExcluirqual comando eu uso q mostra erro quando um campo de um cadastro esta vazio ou incompleto
ResponderExcluirqual comando eu uso q mostra erro quando um campo de um cadastro esta vazio ou incompleto
ResponderExcluirPrecisa programar um messagebox
ExcluirIf(condição){
Messagebox ("mensagem");
Else
Messagebox ("mensagem");
}
Programa no button de cadastro mesmo
ExcluirBom dia preciso fazer uma implementação em C# cadastro de funcionarios e veiculos, quem poder ajudar ficarei grato.
ResponderExcluirOlá, para assessoria em trabalho entre em contato através do email: natanaelsantos@outlook.com
ResponderExcluirMuito obrigado cara por salvar a minha pele, precisava de um modo de fazer uma pesquisa por código no meu trabalho para APRESENTAR cara kk, e por fim uma luz no fim do túnel graças a DEUS me levou ao seu vídeo !!!!, muita satisfação quando deu certo aqui, Natanael pode deixar que os crédito serão dados a você obrigado meu brother !!
ResponderExcluirNo meu caso a chave primária é o CPF, coloquei o codigo como label no frmCliente (desta maneira o usuario não consegue altera-lo). Como faço para aparecer uma mensagem de "CPF já cadastrado" se tentarem entrar com um CPF já cadastrado:?
ResponderExcluirPreciso de ajuda., estou desenvolvendo o TCC e gostaria de saber como faço pra fazer uma pesquisa interativa, eu insiro ás informações no textbox e enquanto vou digitando o datagrid vai automaticamente atuálizando e mostrando os cadastros correspondendo cada letra que eu digitar,, e outra como faço pra inserir fotos no banco de dados pelo c#, em um sistema de cadastro que necessita de foto., obrigado, meu email é douglasdgs1234@gmail,, espero que possam me ajudar
ResponderExcluirola estou com uma dificuldade, e preciso de ajuda;
ResponderExcluira minha questão é a seguinte:
Quero criar um pequeno programa que ao carregar no botão, executa uma stored procedure e se a Stored não existir na base de dados o sistema cria essa stored
Olá, parabéns pelo trabalho, estou tendo dificuldades em alterar os dados do cliente depois que é feito a pesquisa.
ResponderExcluirConsigo cadastrar, clicando na gridviewer as txtbox preenchem com as informações e se eu as altero e clico no botão salvar funciona legal.
Mas se vc pesquisa o cliente e clica na gridviewer para preencher as txtbox e altera as informações quando vc clica no botão salvar ele sobrescreve o primeiro cliente. Pode me ajudar ?
Pessoal, como seria a questão de não ter que colocar o ID sendo ele pego e exibido do banco de dados ?
ResponderExcluirComo faço para aparecer uma mensagem de usuário já cadastrado quando eu apertar o botão cadastrar
ResponderExcluir