private void PopulaGridMedicamentosCronicos() { try { //dtgDadosMedicamentos.Columns[0].ReadOnly = false; btnIncluirDispensacao.Visible = true; ITENSESTOQUETableAdapter estoque = new ITENSESTOQUETableAdapter(); ViewItensMedicamentoUsuarioCronicoTableAdapter viewitens = new ViewItensMedicamentoUsuarioCronicoTableAdapter(); ITENSDISPENSACAOTableAdapter dispensacao = new ITENSDISPENSACAOTableAdapter(); dtgDadosMedicamentosDispensacao.Rows.Clear(); DataRow Linha; DataTable tabela = viewitens.RetornaDataTableMedicamentosUsuarioCronico(int.Parse(txIDReceitaDispencacao.Text)); dtgDadosMedicamentosDispensacao.Rows.Add(tabela.Rows.Count); for (int i = 0; i < tabela.Rows.Count; i++) { Linha = tabela.Rows[i]; int saldo = (int)estoque.RetornaQuantidadePorDescricao(Linha["DESCRICAO"].ToString()); int quantidade = int.Parse(Linha["QUANTIDADE"].ToString()); //fazer rotina para validar entrega no mes ***** dtgDadosMedicamentosDispensacao["MEDICAMENTO", i].Value = Linha["DESCRICAO"].ToString(); dtgDadosMedicamentosDispensacao["QUANTIDADE", i].Value = Linha["QUANTIDADE"].ToString(); dtgDadosMedicamentosDispensacao[0, i].Value = true; DataTable itensdispensacao = dispensacao.RetornaDatatableDataDispDescricaoQuantidade(int.Parse(txIDUsuario.Text), Linha["DESCRICAO"].ToString()); if (itensdispensacao.Rows.Count > 0) { for (int k = 0; k < itensdispensacao.Rows.Count; k++) { DateTime aux = (DateTime)itensdispensacao.Rows[k]["DATA"]; if (aux.Month == DateTime.Now.Month && aux.Year == DateTime.Now.Year) { MessageBox.Show("O paciente já recebeu o medicamento este mês, confira no histórico.\n" + Linha["DESCRICAO"].ToString()); dtgDadosMedicamentosDispensacao[0, i].ReadOnly = true; dtgDadosMedicamentosDispensacao[0, i].Value = null; dtgDadosMedicamentosDispensacao["QUANTIDADE", i].Value = 0; break; } } } else { if (saldo < quantidade) { if (saldo == 0) { MessageBox.Show("Não há saldo suficiente em estoque do medicamento: \n" + Linha["DESCRICAO"].ToString()); dtgDadosMedicamentosDispensacao[0, i].ReadOnly = true; dtgDadosMedicamentosDispensacao[0, i].Value = null; dtgDadosMedicamentosDispensacao["QUANTIDADE", i].Value = saldo; } else { MessageBox.Show("Saldo inferior do medicamento: \n" + Linha["DESCRICAO"].ToString()); dtgDadosMedicamentosDispensacao["QUANTIDADE", i].Value = saldo; } } } } for (int i = 0; i < dtgDadosMedicamentosDispensacao.Rows.Count; i++) { if (dtgDadosMedicamentosDispensacao[0, i].Value != null) { btnIncluirDispensacao.Enabled = true; break; } else { btnIncluirDispensacao.Enabled = false; txIDReceitaDispencacao.Text = ""; } } } catch (Exception err) { MessageBox.Show(err.Message); } }
private void CarregaMedicamentos() { try { ViewItensMedicamentoUsuarioCronicoTableAdapter viewitens = new ViewItensMedicamentoUsuarioCronicoTableAdapter(); dtgDadosMedicamentos.DataSource = viewitens.RetornaDataTableMedicamentosUsuarioCronico(int.Parse(txIdReceita.Text)); } catch (Exception err) { MessageBox.Show(err.Message); } }