private string AlmacenarHojaConsulta(string tituloHoja, bool requerida) { var hojaConsulta = _listaHojas.FirstOrDefault(datosHoja => datosHoja.Title.Text == tituloHoja); if (hojaConsulta == null) { return(requerida ? "Libro incorrecto, no tiene hoja " + tituloHoja + "." : ""); } var linkHoja = hojaConsulta.Links.FindService(GDataSpreadsheetsNameTable.CellRel, null).HRef.ToString(); CuentaUsuario.AlmacenarLinkHojaConsulta(linkHoja); CuentaUsuario.AlmacenarNombreDeHoja(linkHoja, tituloHoja); AlmacenarColumnasVerEInventario(linkHoja); if (tituloHoja.Equals("Productos App")) { // Link para pantalla PaginaGrilla _linkHojaConsulta = linkHoja; // 1 - Se valida si tenemos que habilitar la funcionalidad de Relación Insumo - Producto // Ocurre si existe en el libro una hoja de nombre "Costos variables". // 2 - Almacena las columnas de Producto - Se usarán en la pantalla Pedido (para almacenar movimientos de stock desde el detalle de pedido). ValidarHabilitacionRelacionesInsumoProducto(_linkHojaConsulta); AlmacenarColumnasProducto(_linkHojaConsulta); } return(""); }
private async void EnviarPagina(string linkHoja, string nombreHoja, bool desvinculaHoja) { //Si está desvinculando borra todas las configuraciones anteriores de la hoja seleccionada if (desvinculaHoja) { CuentaUsuario.ReiniciarHoja(linkHoja); CargarListaHojas(); } else { ContentPage pagina; //Si ya se usó esta hoja alguna vez y si el botón presionado NO es el de Desvincular, carga las columnas ya seleccionadas y envía a Grilla. //Si no (alguna de las dos condiciones) envía a pantallas de selección de histórico y columnas. if (CuentaUsuario.VerificarHojaUsadaRecuperarColumnas(linkHoja)) { App.Instancia.LimpiarNavegadorLuegoIrPagina(new PaginaGrilla(linkHoja, _servicio)); } else { if (CuentaUsuario.VerificarHojaUsada(linkHoja)) { await DisplayAlert("Configuración incompleta", "La hoja a la que intenta acceder tiene una configuración incompleta, por favor, desvincule la hoja y vuelva a configurarla.", "Listo"); return; } if (CuentaUsuario.VerificarHojaUsadaPorNombre(nombreHoja)) { await DisplayAlert("Hoja con el mismo nombre", "Ya existe una hoja con el mismo nombre en uso, por favor, modifique el nombre de la hoja y vuelva a configurarla.", "Listo"); return; } // Se almacena el link para recobrar los datos de stock de la hoja cuando ingrese nuevamente. CuentaUsuario.AlmacenarLinkHojaConsulta(linkHoja); CuentaUsuario.AlmacenarNombreDeHoja(linkHoja, nombreHoja); // 1 - Se ha seleccionado una hoja principal (de nombre "Productos App"), se valida si tenemos que habilitar la funcionalidad de Relación Insumo - Producto // Ocurre si existe en el libro una hoja de nombre "Costos variables". // 2 - Almacena las columnas de Producto - Se usarán en la pantalla Pedido (para almacenar movimientos de stock desde el detalle de pedido). if (nombreHoja == "Productos App") { ValidarHabilitacionRelacionesInsumoProducto(linkHoja); AlmacnarColumnasProducto(linkHoja); // HACER -- En la configuración directa, agregar nunto a las otras hojas. Hacer if anidados y recorrer la lista de hojas una sola vez. AgregarHojaClientes(); AgregarHojaPedidos(); } pagina = new ListaHojasHistoricoGoogle(_servicio, _listaHojas); await Navigation.PushAsync(pagina, true); } } }