private void bmMntItems_ItemClick(object sender, ItemClickEventArgs e) { var subMenu = e.Item as BarSubItem; if (subMenu != null) { return; } switch (e.Item.Name) { case "btnImportar": if (!Validaciones()) { return; } if (EntradaalmacenMntFrm.IdEntidadMnt == 0) { if (!EntradaalmacenMntFrm.Validaciones()) { return; } string numeroDoc = string.Format("{0} {1}-{2}", EntradaalmacenMntFrm.iIdtipocp.Text.Trim(), EntradaalmacenMntFrm.rSerieentradaalmacen.Text.Trim(), EntradaalmacenMntFrm.rNumeroentradaalmacen.Text.Trim()); if (DialogResult.No == XtraMessageBox.Show(string.Format("¿Desea guardar el documento {0}?", numeroDoc), "Atención", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button1)) { return; } VwCpcompra vwCpcompraSel = (VwCpcompra)gvConsulta.GetFocusedRow(); //Asignar los controles de entrada a almacen desde la orden de compra seleccionada EntradaalmacenMntFrm.iIdtipomoneda.EditValue = vwCpcompraSel.Idtipomoneda; EntradaalmacenMntFrm.iIdtipomoneda.ReadOnly = true; EntradaalmacenMntFrm.iIncluyeimpuestoitems.EditValue = vwCpcompraSel.Incluyeimpuestoitems; EntradaalmacenMntFrm.iTipocambio.EditValue = vwCpcompraSel.Tipocambio; //Asignar la propiedad del documento de referencia EntradaalmacenMntFrm.EntradaalmacenMnt.Idcpcompra = vwCpcompraSel.Idcpcompra; if (EntradaalmacenMntFrm.Guardar()) { EntradaalmacenMntFrm.DeshabilitarModificacion(); } } if (EntradaalmacenMntFrm.IdEntidadMnt > 0) { foreach (var item in VwCpcompradetimpentradaalmacenList.Where(x => x.Itemseleccionado)) { Entradaalmacendet entradaalmacendetMnt = AsignarEntradaAlmacenDetalle(item); int identradaalmacendet = Service.SaveEntradaalmacendet(entradaalmacendetMnt); if (identradaalmacendet > 0) { //Verificar las ubicacion registradas por articulo long cantidadRefUbicaciones = Service.CountVwArticuloubicacion( x => x.Idarticulo == entradaalmacendetMnt.Idarticulo && x.Idalmacen == (int)iIdalmacen.EditValue); if (cantidadRefUbicaciones == 0) { //Insertar ubicacion por defecto Entradaalmacenubicacion entradaalmacenubicacion = new Entradaalmacenubicacion { Identradaalmacendet = identradaalmacendet, Idubicacion = AlmacenSel.Idubicaciondefecto, Cantidadarticulo = entradaalmacendetMnt.Cantidad }; Service.SaveEntradaalmacenubicacion(entradaalmacenubicacion); } else { //Insertar la ubicaciones del articulo del almacen seleccionado List <VwArticuloubicacion> vwArticuloubicacionList = Service.GetAllVwArticuloubicacion( x => x.Idarticulo == entradaalmacendetMnt.Idarticulo && x.Idalmacen == (int)iIdalmacen.EditValue); foreach (var vwArticuloubicacion in vwArticuloubicacionList) { Entradaalmacenubicacion entradaalmacenubicacion = new Entradaalmacenubicacion { Identradaalmacendet = identradaalmacendet, Idubicacion = vwArticuloubicacion.Idubicacion, Cantidadarticulo = entradaalmacendetMnt.Cantidad }; Service.SaveEntradaalmacenubicacion(entradaalmacenubicacion); } } } } EntradaalmacenMntFrm.CargarDetalle(); EntradaalmacenMntFrm.CargarDocumentoReferencia(); } DialogResult = DialogResult.OK; break; case "btnCancelarItem": DialogResult = DialogResult.Cancel; break; case "btnConsultar": if (!ValidacionDatosConsulta()) { return; } CargarDocumentosPendientes(); break; case "btnCerrar": DialogResult = DialogResult.Cancel; break; } }