protected void UiVistaBodegasAsociadasAOficinaDeVentas_OnBatchUpdate(object sender, ASPxDataBatchUpdateEventArgs e)
        {
            var idOficina = 0;

            if (UiTxtCodigo.Text != "")
            {
                idOficina = int.Parse(UiTxtCodigo.Text);
            }

            if (idOficina != 0)
            {
                var listaBodegasEliminadas = new List <Bodega>();

                foreach (var item in e.DeleteValues)
                {
                    var bodega = new Bodega
                    {
                        CODE_WAREHOUSE = item.Keys["CODE_WAREHOUSE"].ToString()
                    };

                    listaBodegasEliminadas.Add(bodega);
                }

                if (listaBodegasEliminadas.Count > 0)
                {
                    foreach (var item in listaBodegasEliminadas)
                    {
                        UsuarioDeseaEliminarBodegaALaOficinaDeVentas?.Invoke(sender, new OficinaDeVentaArgumento
                        {
                            OficinaDeVenta = new OficinaDeVenta
                            {
                                SALES_OFFICE_ID = idOficina
                            }
                            ,
                            Bodega = item
                        });
                    }
                }
                e.Handled = true;
                UiVistaBodegasAsociadasAOficinaDeVentas.JSProperties.Add("cpTerminoBatchBodegas", "Enabled");
            }
            else
            {
                var listaNueva = BodegasAsociadas ?? new List <Bodega>();

                foreach (var item in e.DeleteValues)
                {
                    var tmp = (List <Bodega>)listaNueva;

                    tmp.RemoveAll(x => x.CODE_WAREHOUSE == item.Keys["CODE_WAREHOUSE"].ToString());

                    listaNueva = tmp;
                }

                BodegasAsociadas = listaNueva;

                e.Handled = true;

                var res =
                    BodegasNoAsociadas.Where(
                        s => BodegasAsociadas.All(s2 => s2.CODE_WAREHOUSE != s.CODE_WAREHOUSE)).ToList();

                BodegasNoAsociadas = res;

                UiVistaBodegasAsociadasAOficinaDeVentas.JSProperties.Add("cpTerminoBatchBodegasNueva", "Enabled");
            }
        }
        public void AgregarBodegasNuevaOficina(object sender)
        {
            var listaBodegasAAsociar =
                UiListaBodegasNoAsociadasAOficinaDeVentas.GridView.GetSelectedFieldValues("WAREHOUSE", "CODE_WAREHOUSE",
                                                                                          "DESCRIPTION_WAREHOUSE", "WEATHER_WAREHOUSE",
                                                                                          "STATUS_WAREHOUSE", "IS_EXTERNAL", "ADDRESS_WAREHOUSE", "SALES_OFFICE_ID");

            IList <Bodega> listaBodegas = new List <Bodega>();

            if (BodegasAsociadas == null)
            {
                BodegasAsociadas = new List <Bodega>();
            }
            else
            {
                listaBodegas = BodegasAsociadas.ToList();
            }

            if (listaBodegasAAsociar.Count > 0)
            {
                foreach (var bodega in listaBodegasAAsociar)
                {
                    var address  = "";
                    var external = 0;
                    if (((object[])bodega)[6] != null)
                    {
                        address = ((object[])bodega)[6].ToString();
                    }
                    if (((object[])bodega)[5] != null)
                    {
                        external = int.Parse(((object[])bodega)[5].ToString());
                    }
                    var bod = new Bodega
                    {
                        WAREHOUSE = int.Parse(((object[])bodega)[0].ToString())
                        ,
                        CODE_WAREHOUSE = ((object[])bodega)[1].ToString()
                        ,
                        DESCRIPTION_WAREHOUSE = ((object[])bodega)[2].ToString()
                        ,
                        WEATHER_WAREHOUSE = ((object[])bodega)[3].ToString()
                        ,
                        STATUS_WAREHOUSE = ((object[])bodega)[4].ToString()
                        ,
                        IS_EXTERNAL = external
                        ,
                        ADDRESS_WAREHOUSE = address
                        ,
                        SALES_OFFICE_ID = int.Parse(((object[])bodega)[7].ToString())
                    };

                    listaBodegas.Add(bod);
                }
            }

            BodegasAsociadas = listaBodegas;

            var res =
                BodegasNoAsociadas.Where(
                    s => BodegasAsociadas.All(s2 => s2.CODE_WAREHOUSE != s.CODE_WAREHOUSE)).ToList();

            BodegasNoAsociadas = res;
        }