Example #1
0
        private bool Validaciones()
        {
            if (gvConsulta.RowCount == 0 || gvDetalleImp.RowCount == 0)
            {
                XtraMessageBox.Show("No hay información de ordenes de compra, verifique", "Atención", MessageBoxButtons.OK,
                                    MessageBoxIcon.Exclamation);
                return(false);
            }

            int cantidadItemsSeleccionados = VwOrdencompraimpentradaalmacenList.Count(x => x.Itemseleccionado);

            if (cantidadItemsSeleccionados == 0)
            {
                XtraMessageBox.Show("Debe seleccionar los items a importar", "Atención", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                return(false);
            }

            return(true);
        }
Example #2
0
        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;
                    }


                    VwOrdencompra vwOrdencompraSel = (VwOrdencompra)gvConsulta.GetFocusedRow();

                    if (vwOrdencompraSel.Idtipomoneda == 2 && vwOrdencompraSel.Tipocambio == 0m)
                    {
                        XtraMessageBox.Show(string.Format("La orden de compra número {0}-{1} tiene un tipo de cambio invalido, verifique", vwOrdencompraSel.Serieorden, vwOrdencompraSel.Numeroorden), "Atención", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                        return;
                    }
                    //Asignar los controles de entrada a almacen desde la orden de compra seleccionada
                    EntradaalmacenMntFrm.iIdtipomoneda.EditValue         = vwOrdencompraSel.Idtipomoneda;
                    EntradaalmacenMntFrm.iIdtipomoneda.ReadOnly          = true;
                    EntradaalmacenMntFrm.iIncluyeimpuestoitems.EditValue = vwOrdencompraSel.Incluyeimpuestoitems;



                    //Asignar la propiedad del documento de referencia
                    EntradaalmacenMntFrm.EntradaalmacenMnt.Idordencompra        = vwOrdencompraSel.Idordencompra;
                    EntradaalmacenMntFrm.EntradaalmacenMnt.Incluyeimpuestoitems = vwOrdencompraSel.Incluyeimpuestoitems;
                    EntradaalmacenMntFrm.iIncluyeimpuestoitems.EditValue        = vwOrdencompraSel.Incluyeimpuestoitems;
                    EntradaalmacenMntFrm.iTipocambio.EditValue = vwOrdencompraSel.Tipocambio;


                    //Asignar el socio de negocio si no se eligio uno
                    if (VwSocionegocioSel == null)
                    {
                        EntradaalmacenMntFrm.iIdsocionegocio.EditValue = vwOrdencompraSel.Idproveedor;
                    }

                    if (EntradaalmacenMntFrm.Guardar())
                    {
                        EntradaalmacenMntFrm.DeshabilitarModificacion();
                    }
                }

                if (EntradaalmacenMntFrm.IdEntidadMnt > 0)
                {
                    foreach (var item in VwOrdencompraimpentradaalmacenList.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;
            }
        }