private void ObtenerDetalle(bool forzarBD) { if (ViewState["detalle"] == null || forzarBD) { long peru_id = Convert.ToInt64(hf_idPeru.Value); ViewState["detalle"] = new PedidoDetalleBC().ObtenerTodo(peru_id: peru_id); } gv_detalle.DataSource = ViewState["detalle"]; gv_detalle.DataBind(); ScriptManager.RegisterStartupScript(this.Page, this.GetType(), "dibujaTable", "drawTableDetalles();", true); }
protected void btn_detalleGuardar_Click(object sender, EventArgs e) { if (!string.IsNullOrEmpty(hf_idPeru.Value)) { try { PedidoDetalleBC dp = new PedidoDetalleBC() { CODIGO_PRODUCTO = txt_detalleCod.Text, PEDE_DESC_PRODUCTO = txt_detalleDesc.Text, CODIGO_CLIENTE = txt_detalleCodCl.Text, DIRECCION_CLIENTE = txt_detalleDireccionCl.Text, NOMBRE_CLIENTE = txt_detalleNomCl.Text, NUMERO_GUIA = txt_detalleNro.Text, PESO_PEDIDO = Convert.ToDecimal(txt_detallePeso.Text), PEDE_CANTIDAD = Convert.ToDecimal(txt_detalleCant.Text) }; if (gv_detalle.SelectedIndex != -1) { dp.PEDE_ID = Convert.ToInt64(gv_detalle.SelectedDataKey.Value); } dp.PEDIDO.PERU_ID = Convert.ToInt64(hf_idPeru.Value); dp.COMUNA_CLIENTE.COMU_ID = Convert.ToInt32(ddl_detalleComunaCl.SelectedValue); dp.Guardar(); } catch (Exception ex) { utils.ShowMessage(this, ex.Message, "error", false); } finally { utils.CerrarModal(this, "modalDetalle"); ObtenerDetalle(true); } } else { DataTable dt = (DataTable)ViewState["detalle"]; DataRow dr; if (gv_detalle.SelectedIndex == -1) { dr = dt.NewRow(); } else { dr = dt.Rows[gv_detalle.SelectedIndex]; } //if (!string.IsNullOrEmpty(hf_idPede.Value)) //{ // foreach (DataRow row in dt.Rows) // { // if (row["PEDE_ID"].ToString() == hf_idPede.Value) // { // dr = row; // break; // } // } //} //dr["PERU_ID"] = Convert.ToInt64(hf_idPeru.Value); dr["CODIGO_PRODUCTO"] = txt_detalleCod.Text; dr["PEDE_DESC_PRODUCTO"] = txt_detalleDesc.Text; dr["CODIGO_CLIENTE"] = txt_detalleCodCl.Text; dr["DIRECCION_CLIENTE"] = txt_detalleDireccionCl.Text; dr["NOMBRE_CLIENTE"] = txt_detalleNomCl.Text; dr["ID_COMUNA_CLIENTE"] = Convert.ToInt32(ddl_detalleComunaCl.SelectedValue); dr["COMUNA_CLIENTE"] = ddl_detalleComunaCl.SelectedItem.Text; dr["CIUD_ID_CLIENTE"] = Convert.ToInt32(ddl_detalleCiudadCl.SelectedValue); dr["CIUD_NOMBRE_CLIENTE"] = ddl_detalleCiudadCl.SelectedItem.Text; dr["REGI_ID_CLIENTE"] = Convert.ToInt32(ddl_detalleRegionCl.SelectedValue); dr["REGI_NOMBRE_CLIENTE"] = ddl_detalleRegionCl.SelectedItem.Text; dr["NUMERO_GUIA"] = txt_detalleNro.Text; dr["PESO_PEDIDO"] = Convert.ToDecimal(txt_detallePeso.Text); dr["PEDE_CANTIDAD"] = Convert.ToDecimal(txt_detalleCant.Text); if (gv_detalle.SelectedIndex == -1) { dt.Rows.Add(dr); } ObtenerDetalle(false); utils.CerrarModal(this, "modalDetalle"); } }