Array
(
)

Transferência entre Grid - Windows Form .net

Fernanda Oliveira
   - 10 out 2012

Pessoal,
espero que me ajudem....estou fazendo uma aplicação Windows .net e preciso fazer a transferencia Total entre as Contas, ou seja Conta A e Conta B.....preciso transferir tudo de um grid para o outro. E tbm faço a Transferencia Parcial entre Contas, ou seja Conta A tem 10 ítens e Conta B tem 2 ítens, aí essa é a parcial, transfiro 8 ítens da A para B, mas não fecho a conta.
Esse projeto é restaurante, exemplo Mesa 1 Conta A Mesa 2 Conta B, eu quero pagar só alguns ítens da Conta A......deu p entender??
No FormTransferencia, caso seja parcial segue o nº 1 e total nº2
1 -
private void btnMoverItemProximo_Click(object sender, EventArgs e)
{
var ok = (ValidarConta(_contaDestino));
if (ok)
{
ok = (gridContaOrigem.SelectedRows.Count > 0);
}
if (ok)
{
#region Seleciona no Grid
var rows = gridContaOrigem.SelectedRows.Select(x => x.DataBoundItem).ToList();
foreach (LancamentoGrid lancamento in rows)
{
if (lancamento != null)
{
_bsnVenda.TransferirLancamento(lancamento, _listaLancamentoGridOrigem, _listaLancamentoGridDestino, _contaOrigem);
}
else
{
MessageBox.Show(_msg10);
}
}
#endregion
this.AtualizarGrid();
}
else
{
MessageBox.Show(_msg02);
}
}
2 -
private void btnSelecionarTodos_Click(object sender, EventArgs e)
{
var ok = (ValidarConta(_contaDestino));
if (ok)
{
ok = (gridContaOrigem.SelectedRows.Count > 0);
}
if (ok)
{
#region Seleciona Todos no Grid
gridContaOrigem.SelectAll();
var rows = gridContaOrigem.SelectedRows.Select(x => x.DataBoundItem).ToList();
foreach (LancamentoGrid lancamento in rows)
{
if (lancamento != null)
{
_bsnVenda.TransferirContaCompleta(lancamento, _listaLancamentoGridOrigem, _listaLancamentoGridDestino, _contaOrigem);
}
else
{
MessageBox.Show(_msg10);
}
}
#endregion
this.AtualizarGrid();
}
else
{
MessageBox.Show(_msg02);
}
}

Estou usando essa nomenclatura q uso na Business, caso seja parcial segue o nº 1 e total nº2
1 -
public void TransferirLancamento(LancamentoGrid lancamentoGrid, List<LancamentoGrid> listaLancamentoGridOrigem,
List<LancamentoGrid> listaLancamentoGridDestino, Conta conta)
{
listaLancamentoGridOrigem.Remove(lancamentoGrid);
listaLancamentoGridDestino.Add(lancamentoGrid);
var docFiscal = (conta.DocumentosFiscais as List<DocumentoFiscal>);
var lanc = (lancamentoGrid.BD.DocumentoFiscal.ObjectID);
var lancConta = (lancamentoGrid.BD.ObjectID);
var lancamento = ((docFiscal.Find(x => x.ObjectID == lanc).Lancamentos as List<Lancamento>).Find(x => x.ObjectID == lancConta).Conta);
if (lancamento != null)
{
lancamento = conta;
}
}
2 -
public void TransferirContaCompleta(LancamentoGrid lancamentoGrid, List<LancamentoGrid> listaLancamentoGridOrigem,
List<LancamentoGrid> listaLancamentoGridDestino, Conta conta)
{
listaLancamentoGridOrigem.Remove(lancamentoGrid);
listaLancamentoGridDestino.Add(lancamentoGrid);
var docFiscal = (conta.DocumentosFiscais as List<DocumentoFiscal>);
var lanc = (lancamentoGrid.BD.DocumentoFiscal.ObjectID);
var lancConta = (lancamentoGrid.BD.ObjectID);
docFiscal.Find(x => x.ObjectID == lanc).Conta = conta;
var lancamento = (docFiscal.Find(x => x.ObjectID == lanc).Lancamentos as List<Lancamento>).Find(x => x.ObjectID == lancConta).Conta;
if (lancamento != null)
{
lancamento = conta;
}
}

Sendo q o Lancamento está vindo null e não sei onde errei........Alguém pode me ajudar?????
Obrigada desde já!