Carregar coluna do grid

22/03/2015

Em windows Form, tem um gridview da tabela itemlocação, mas a última coluna "Valor" é de outra tabela a "Livro". Uso o método abaixo para incluir Livro no grid, preciso ao incluir o id do livro, nome do livro, também incluir o valor, este valor é de uma chave estrangeira...como fazer isto, de preferência usando este mesmo método ?

Este método está no evento keypress do textbox código do livro.

private void codigoLivrotextBox_KeyPress(object sender, KeyPressEventArgs e)
{
if (e.KeyChar == 13)

this.bDBibliotecaDataSet.ItemLocacao.Rows.Add(null, Convert.ToInt32(iDLocacaoTextBox.Text), Convert.ToInt32(codigoLivrotextBox.Text));
}



[img]http://arquivo.devmedia.com.br/forum/imagem/343353-20150325-093305.jpg[/img]


Se alguem souber, já agradeço.

Jair Souza

Respostas

25/03/2015

Jair Souza

Olá pessoal, alguma orientação ?
Não acho nada na net...
Responder Citar

27/03/2015

Jair Souza

Olá pessoal, alguma orientação ? Não acho nada na net...


E aí pessoal, não sei nem o que devo estudar para resolver isto...HELP !!!
Responder Citar

27/03/2015

Randrade

Bom Jair, creio que você está com problemas de foring key, ou retornar duas tabelas.
Vou deixar dois exemplos que podem lhe ajudar, se entendi correto seu problema.

1º Carregar grid de duas tabelas
Dois DataTable em uma GridView


Caso seja isso mesmo, e necessite de mais exemplos, dê uma olhada nesta pesquisa no google.
Responder Citar

06/04/2015

Alisson

Jair conseguiu resolver essa questão?
Caso não informar aqui que te auxilio.
Responder Citar

11/04/2015

Jair Souza

Primeiro quero agradecer pelo seu interesse em ajudar, pois ainda não consegui nenhum exito nesta parte do projeto, toda sua ajuda será muito bem vinda.

Caso precise mais alguma informação é só falar.


Este é o código que uso para adicionar o livro no grid :

Este método está no evento keypress do textbox código do livro.

private void codigoLivrotextBox_KeyPress(object sender, KeyPressEventArgs e)
{
if (e.KeyChar == 13)
 
this.bDBibliotecaDataSet.ItemLocacao.Rows.Add(null, Convert.ToInt32(iDLocacaoTextBox.Text), Convert.ToInt32(codigoLivrotextBox.Text));
}



[img]http://arquivo.devmedia.com.br/forum/imagem/343353-20150411-202901.jpg[/img]

[img]http://arquivo.devmedia.com.br/forum/imagem/343353-20150411-202917.jpg[/img]
Responder Citar

15/04/2015

Jair Souza

Ainda não, tens mais alguma dica ??
Responder Citar

18/04/2015

Jair Souza

A coisa tá feia aqui.... tens alguma dica ?
Responder Citar

21/04/2015

Alisson

Jair boa noite.
Desculpe fiquei sem logar esses tempos, estava a trabalho direto.
Conseguiu resolver seu problema??

No caso precisaria saber qual o código que está utilizando para adicionar.
Como está fazendo a inserção dos dados, via Linq ou Entity?
Como está o mapeamento da sua tabela??

Preciso saber como faz a parte de gravação e recuperação para poder te auxiliar. Mais uma dica para você é primeiro recuperar o valor do livro que está em uma tabela que você informou.

Qualquer coisa caso precise mande seu whats para mim via e-mail que adiciono você e ai te auxlio.
alissonsantoslp@hotmail.com.br.
Responder Citar

21/04/2015

Jair Souza

Ainda não consegui nada...
Bem vamos por parte :

Banco de dados é ACCESS, tem as tabelas Locação, Livro, ItemLocação, entre outras.

Código para adicionar o livro na lista do datagridview :

Este método está no evento keypress do textbox código do livro.
 
private void codigoLivrotextBox_KeyPress(object sender, KeyPressEventArgs e)
{
if (e.KeyChar == 13)
  
this.bDBibliotecaDataSet.ItemLocacao.Rows.Add(null, Convert.ToInt32(iDLocacaoTextBox.Text), Convert.ToInt32(codigoLivrotextBox.Text));
}


Uso o Entity Framework.

Mapeamento das tabelas :

[img]http://arquivo.devmedia.com.br/forum/imagem/343353-20150421-135635.jpg[/img]


A gravação é feita por este método, no botão salvar :

private void BtnSalvar_Click(object sender, EventArgs e)
        {
            try
            {
                if ((iDLocatarioTextBox.Text != "") && (locatariocomboBox.Text != ""))
                {
                    if (itemLocacaoDataGridView.RowCount > 0)
                    {
                        this.Validate();
                        this.locacaoBindingSource.EndEdit();
                        this.tableAdapterManager.UpdateAll(this.bDBibliotecaDataSet);
                        MessageBox.Show("Locação Gravada com Sucesso !", "Locação", MessageBoxButtons.OK, MessageBoxIcon.Information);



A recuperação é feita por esta query, que depois chamo no código com o método FillByIDLocacao :

SELECT ItemLocacao.IDItem, ItemLocacao.IDLocacao, ItemLocacao.IDLivro, ItemLocacao.IDLocatario, ItemLocacao.IDFuncionario, ItemLocacao.[Data de Devolucao],
ItemLocacao.Obs1, ItemLocacao.Obs2, ItemLocacao.Obs3, Livro.[Valor Locacao]
FROM ((ItemLocacao INNER JOIN
Locacao ON Locacao.IDLocacao = ItemLocacao.IDLocacao) INNER JOIN
Livro ON Livro.IDLivro = ItemLocacao.IDLivro)
WHERE (Locacao.IDLocacao = ?)


this.itemLocacaoTableAdapter.FillByIDLocacao(this.bDBibliotecaDataSet.ItemLocacao, Convert.ToInt32(iDLocacaoTextBox.Text));
Responder Citar

17/05/2015

Jair Souza

Ainda não consegui resolver...alguém saberia me ajudar ?
Responder Citar