private bool Aprobar() { try { gvDetalle.MoveNext(); cmbSucursalDestino.Focus(); if (!Validar()) { return(false); } var temp = blstDet.Where(q => q.A == true || q.R == true).GroupBy(q => new { q.IdEmpresa, q.IdSucursalOrigen, q.IdBodegaOrigen, q.IdTransferencia }).FirstOrDefault(); in_transferencia_Info info = new in_transferencia_Info { IdEmpresa = temp.Key.IdEmpresa, IdSucursalOrigen = temp.Key.IdSucursalOrigen, IdBodegaOrigen = temp.Key.IdBodegaOrigen, IdTransferencia = temp.Key.IdTransferencia, IdUsuario = param.IdUsuario }; info = busTransferencia.Get_Info_transferencia(param.IdEmpresa, info.IdSucursalOrigen, info.IdBodegaOrigen, info.IdTransferencia); info.IdUsuario = param.IdUsuario; info.lista_detalle_transferencia = blstDet.Where(q => q.IdEmpresa == info.IdEmpresa && q.IdSucursalOrigen == info.IdSucursalOrigen && q.IdBodegaOrigen == info.IdBodegaOrigen && q.IdTransferencia == info.IdTransferencia).ToList(); if (info.lista_detalle_transferencia.Where(q => q.A == true).Count() > 0) { if (busTransferencia.Aprobar(info)) { MessageBox.Show("Transferencia aprobada exitósamente", param.Nombre_sistema, MessageBoxButtons.OK, MessageBoxIcon.Asterisk); return(true); } else { MessageBox.Show("Ha ocurrido un error", param.Nombre_sistema, MessageBoxButtons.OK, MessageBoxIcon.Error); } } else { if (busTransferencia.AnularDB(info)) { MessageBox.Show("Transferencia anulada exitósamente", param.Nombre_sistema, MessageBoxButtons.OK, MessageBoxIcon.Asterisk); return(true); } } return(false); } catch (Exception) { throw; } }
private bool AccionGrabar() { try { bool Res = false; string mensaje = "Registro {0} exitósamente"; switch (Accion) { case Cl_Enumeradores.eTipo_action.grabar: if (!Validar()) { return(false); } GetInfo(); Res = busTransferencia.Guardar(infoTransferencia); mensaje = mensaje.Replace("{0}", "guardado"); break; case Cl_Enumeradores.eTipo_action.actualizar: if (!Validar()) { return(false); } GetInfo(); Res = busTransferencia.Modificar(infoTransferencia); mensaje = mensaje.Replace("{0}", "actualizado"); break; case Cl_Enumeradores.eTipo_action.Anular: infoTransferencia.IdUsuario = param.IdUsuario; Res = busTransferencia.AnularDB(infoTransferencia); mensaje = mensaje.Replace("{0}", "anulado"); break; } if (Res) { var lstoc = infoTransferencia.lista_detalle_transferencia.Where(q => q.IdOrdenCompra != null).ToList(); foreach (var item in lstOCDet) { if (lstoc.Where(q => q.IdEmpresa == item.IdEmpresa && q.IdSucursal_oc == item.IdSucursal_oc && q.IdOrdenCompra == item.IdOrdenCompra && q.Secuencia_oc == item.Secuencia_oc).Count() == 0) { lstoc.Add(item); } } foreach (var OCD in lstoc) { busPedido.ValidarProceso(OCD.IdEmpresa, OCD.IdSucursal_oc ?? 0, OCD.IdOrdenCompra ?? 0, OCD.Secuencia_oc ?? 0); } MessageBox.Show(mensaje, param.Nombre_sistema, MessageBoxButtons.OK, MessageBoxIcon.Asterisk); if (Accion != Cl_Enumeradores.eTipo_action.Anular && MessageBox.Show("Desea imprimir la transferencia?", param.Nombre_sistema, MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes) { Imprimir(); } } else { MessageBox.Show("No se ha podido completar la transacción", param.Nombre_sistema, MessageBoxButtons.OK, MessageBoxIcon.Error); } return(Res); } catch (Exception ex) { busLogError.Log_Error(ex.ToString()); MessageBox.Show(ex.ToString(), "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); return(false); } }