public DsGuiaServicioConfirmacion GetGuiasSinConfirmacion(string guias, int tipo) { DsGuiaServicioConfirmacion ds = new DsGuiaServicioConfirmacion(); Config.Conexion.LlenarTypeDataSet(ds.Datos, System.Data.CommandType.StoredProcedure, "GuiasSinServicioConfirmacion", new SqlParameter("@GuiasID", guias), new SqlParameter("@Tipo", tipo)); return(ds); }
public DsGuiaServicioConfirmacion Consultar() { DsGuiaServicioConfirmacion ds = new DsGuiaServicioConfirmacion(); Config.Conexion.LlenarTypeDataSet(ds.Datos, System.Data.CommandType.StoredProcedure, "GuiaServicioConfirmacionSel", new SqlParameter("@GuiaID", GuiaID)); return(ds); }
public override global::System.Data.DataSet Clone() { DsGuiaServicioConfirmacion cln = ((DsGuiaServicioConfirmacion)(base.Clone())); cln.InitVars(); cln.SchemaSerializationMode = this.SchemaSerializationMode; return(cln); }
public static global::System.Xml.Schema.XmlSchemaComplexType GetTypedDataSetSchema(global::System.Xml.Schema.XmlSchemaSet xs) { DsGuiaServicioConfirmacion ds = new DsGuiaServicioConfirmacion(); global::System.Xml.Schema.XmlSchemaComplexType type = new global::System.Xml.Schema.XmlSchemaComplexType(); global::System.Xml.Schema.XmlSchemaSequence sequence = new global::System.Xml.Schema.XmlSchemaSequence(); global::System.Xml.Schema.XmlSchemaAny any = new global::System.Xml.Schema.XmlSchemaAny(); any.Namespace = ds.Namespace; sequence.Items.Add(any); type.Particle = sequence; global::System.Xml.Schema.XmlSchema dsSchema = ds.GetSchemaSerializable(); if (xs.Contains(dsSchema.TargetNamespace)) { global::System.IO.MemoryStream s1 = new global::System.IO.MemoryStream(); global::System.IO.MemoryStream s2 = new global::System.IO.MemoryStream(); try { global::System.Xml.Schema.XmlSchema schema = null; dsSchema.Write(s1); for (global::System.Collections.IEnumerator schemas = xs.Schemas(dsSchema.TargetNamespace).GetEnumerator(); schemas.MoveNext();) { schema = ((global::System.Xml.Schema.XmlSchema)(schemas.Current)); s2.SetLength(0); schema.Write(s2); if ((s1.Length == s2.Length)) { s1.Position = 0; s2.Position = 0; for (; ((s1.Position != s1.Length) && (s1.ReadByte() == s2.ReadByte()));) { ; } if ((s1.Position == s1.Length)) { return(type); } } } } finally { if ((s1 != null)) { s1.Close(); } if ((s2 != null)) { s2.Close(); } } } xs.Add(dsSchema); return(type); }
protected void btnGuardar_Click(object sender, EventArgs e) { // Proceso el grid de conceptos Int32 indice = 0; CheckBox chkSeleccionado; TextBox txtRemitos; string guiasSinRemito = string.Empty; DsGuiaServicioConfirmacion ds = (DsGuiaServicioConfirmacion)Session["GuiasSinConfirmar"]; foreach (DsGuiaServicioConfirmacion.DatosRow item in ds.Tables[0].Rows) { // Busco los controles chkSeleccionado = (CheckBox)grid.Rows[indice].FindControl("chkSeleccionado"); txtRemitos = (TextBox)grid.Rows[indice].FindControl("txtRemito"); if (chkSeleccionado.Checked && (txtRemitos.Text == string.Empty)) // no ingreso el nro de remito { guiasSinRemito += item.NroGuia + " - "; } else { // Cargo los datos item.Seleccionado = chkSeleccionado.Checked; item.NroRemito = txtRemitos.Text; } ++indice; } if (guiasSinRemito != string.Empty) { // Muestro el error y sigo en la pantalla para agregar los datos faltantes lblError.Text = "Falta cargar el número de remito de las siguientes guias: " + guiasSinRemito; hdnCorrecto.Value = "NO"; } else { // Guardo los datos Session["GuiasSinConfirmar"] = ds; hdnCorrecto.Value = "SI"; } Response.Redirect("RecepcionConformadas.aspx?RemitoID=1"); }
public static global::System.Xml.Schema.XmlSchemaComplexType GetTypedTableSchema(global::System.Xml.Schema.XmlSchemaSet xs) { global::System.Xml.Schema.XmlSchemaComplexType type = new global::System.Xml.Schema.XmlSchemaComplexType(); global::System.Xml.Schema.XmlSchemaSequence sequence = new global::System.Xml.Schema.XmlSchemaSequence(); DsGuiaServicioConfirmacion ds = new DsGuiaServicioConfirmacion(); global::System.Xml.Schema.XmlSchemaAny any1 = new global::System.Xml.Schema.XmlSchemaAny(); any1.Namespace = "http://www.w3.org/2001/XMLSchema"; any1.MinOccurs = new decimal(0); any1.MaxOccurs = decimal.MaxValue; any1.ProcessContents = global::System.Xml.Schema.XmlSchemaContentProcessing.Lax; sequence.Items.Add(any1); global::System.Xml.Schema.XmlSchemaAny any2 = new global::System.Xml.Schema.XmlSchemaAny(); any2.Namespace = "urn:schemas-microsoft-com:xml-diffgram-v1"; any2.MinOccurs = new decimal(1); any2.ProcessContents = global::System.Xml.Schema.XmlSchemaContentProcessing.Lax; sequence.Items.Add(any2); global::System.Xml.Schema.XmlSchemaAttribute attribute1 = new global::System.Xml.Schema.XmlSchemaAttribute(); attribute1.Name = "namespace"; attribute1.FixedValue = ds.Namespace; type.Attributes.Add(attribute1); global::System.Xml.Schema.XmlSchemaAttribute attribute2 = new global::System.Xml.Schema.XmlSchemaAttribute(); attribute2.Name = "tableTypeName"; attribute2.FixedValue = "DatosDataTable"; type.Attributes.Add(attribute2); type.Particle = sequence; global::System.Xml.Schema.XmlSchema dsSchema = ds.GetSchemaSerializable(); if (xs.Contains(dsSchema.TargetNamespace)) { global::System.IO.MemoryStream s1 = new global::System.IO.MemoryStream(); global::System.IO.MemoryStream s2 = new global::System.IO.MemoryStream(); try { global::System.Xml.Schema.XmlSchema schema = null; dsSchema.Write(s1); for (global::System.Collections.IEnumerator schemas = xs.Schemas(dsSchema.TargetNamespace).GetEnumerator(); schemas.MoveNext();) { schema = ((global::System.Xml.Schema.XmlSchema)(schemas.Current)); s2.SetLength(0); schema.Write(s2); if ((s1.Length == s2.Length)) { s1.Position = 0; s2.Position = 0; for (; ((s1.Position != s1.Length) && (s1.ReadByte() == s2.ReadByte()));) { ; } if ((s1.Position == s1.Length)) { return(type); } } } } finally { if ((s1 != null)) { s1.Close(); } if ((s2 != null)) { s2.Close(); } } } xs.Add(dsSchema); return(type); }
protected void btnBuscar_Click(object sender, EventArgs e) { try { IGuia oGuia = GuiaFactory.GetGuia(); IGuiaServicioConfirmacion oGuiaServ = GuiaServicioConfirmacionFactory.GetGuiaServicioConfirmacion(); DsGuias ds = new DsGuias(); DsGuiaServicioConfirmacion dsGuiaServ = new DsGuiaServicioConfirmacion(); if (this.rbCodigo.Checked) { try { oGuia.TipoGuia = NegociosSisPackInterface.SisPack.TipoGuia(this.txtCodigoBarra.Text.Substring(0, 1).Trim()).Trim(); if (oGuia.TipoGuia.Equals("")) { throw new Exception("Errores.Invalidos.CodigoBarrasLongitud"); } oGuia.NroSucursalGuia = this.txtCodigoBarra.Text.Substring(1, 4); oGuia.NroGuia = Convert.ToInt32(this.txtCodigoBarra.Text.Substring(5)); ds = oGuia.GetGuiaOneServicio(); } catch (Exception) { ((ErrorWeb)this.phErrores.Controls[0]).setMensaje("No se ha ingresado un nro. de guía correcto."); return; } } else if (this.rbTipo.Checked) { oGuia.TipoGuia = this.ddlTipoGuia.SelectedValue; oGuia.NroSucursalGuia = this.txtNroSucursal.Text.Trim().Equals("") ? "0" : this.txtNroSucursal.Text.Trim(); oGuia.NroGuia = this.txtNroGuia.Text.Trim().Equals("") ? 0 : Convert.ToInt32(this.txtNroGuia.Text.Trim()); ds = oGuia.GetGuiaOneServicio(); } else if (rbRemito.Checked) { ds = oGuia.GetGuiaByRemitoDataSet(txtNroRemito.Text); if (ds.Datos.Count > 0) { oGuia.GuiaID = Convert.ToInt32(ds.Datos.Rows[0]["GuiaID"].ToString()); oGuia.NroGuia = Convert.ToInt32(ds.Datos.Rows[0]["NroGuia"].ToString()); oGuia.NroSucursalGuia = ds.Datos.Rows[0]["NroSucursalGuia"].ToString(); oGuia.TipoGuia = ds.Datos.Rows[0]["TipoGuia"].ToString(); } } else { ((ErrorWeb)this.phErrores.Controls[0]).setMensaje("No se ha ingresado el nro. de guía ."); return; } if (ds.Datos.Count == 0) { ((ErrorWeb)this.phErrores.Controls[0]).setMensaje("El nro. de guía no es correcto o no tiene asociado un servicio a confirmar."); return; } oGuiaServ.GuiaID = oGuia.GuiaID; dsGuiaServ = oGuiaServ.Consultar(); if (dsGuiaServ.Datos.Count > 0) { lblMensaje.Text = "La guia ya ha sido confirmada"; butImprimir.Enabled = true; btnGuardar.Enabled = false; return; } else { hdnRemito.Value = ds.Datos.Rows[0]["Observaciones"].ToString(); // en Observaciones viene guardado el numero de remito lblMensaje.Text = "La guia se encuentra en condiciones de confirmar su servicio"; butImprimir.Enabled = false; btnGuardar.Enabled = true; } txtNroGuia.Text = oGuia.NroGuia.ToString(); txtNroSucursal.Text = oGuia.NroSucursalGuia; ddlTipoGuia.SelectedValue = oGuia.TipoGuia; txtCodigoBarra.Text = (oGuia.TipoGuia == "R" ? "9" : (oGuia.TipoGuia == "A" ? "3" : "4")) + oGuia.NroSucursalGuia + oGuia.NroGuia.ToString(); Session["GuiaConfirmacion"] = ds; } catch (Exception ex) { ((ErrorWeb)this.phErrores.Controls[0]).setMensaje(ex.Message); } }
protected void GuardarConRemito() { string lista = string.Empty; usuario = (IUsuarios)Session["usuario"]; IAgencia agencia = AgenciaFactory.GetAgencia(); DsAgencias dsAgencias = agencia.GetAgenciasDataSet(); string[] nroGuias = Session["ListaGuias"].ToString().Split(','); bool ok = true; Hashtable hGuias = new Hashtable(); // Guías que no se pueden recibir, porque ya fueron recibidas Hashtable hGuiasNR = new Hashtable(); // Guías que no están en condiciones de ser recibidas porque no existen en el sistema. string mensaje = ""; string mensaje2 = ""; string nroguiaAnt = ""; int loteant = 0; DsGuiaServicioConfirmacion ds = (DsGuiaServicioConfirmacion)Session["GuiasSinConfirmar"]; int cant = nroGuias.Length;// Utiles.Validaciones.obtieneEntero(this.txtGuiaIndex.Text); int nroGuia; DsImpresionConfirmacionServicio dsImpresion = new DsImpresionConfirmacionServicio(); for (int i = 0; i < cant; i++) { // ANTES DE RECIBIR CADA GUÍA HAY QUE REALIZAR LOS CONTROLES CORRESPONDIENTES // E IR GUARDANDO LAS GUÍAS QUE FALLAN, PARA LUEGO VISUALIZAR UNA LISTA DE ESAS GUÍAS if (int.TryParse(nroGuias[i], out nroGuia)) { IGuia oGuia = GuiaFactory.GetGuia(); oGuia.GuiaID = nroGuia; oGuia.Consultar(); // Lógica para recibir guías string tGuia = ""; tGuia = oGuia.TipoGuia; string nroSucursal = oGuia.NroSucursalGuia; string nGuia = oGuia.NroGuia.ToString(); string nroRemito = string.Empty; string numero_guia = string.Empty; oGuia.UsuarioID = usuario.UsuarioID; oGuia.GuiaConformadaDesdeModuloRecepcionConformadas = true; lista += oGuia.GuiaID + ","; ICaja caja = CajaFactory.GetCajaFactory(); caja.CajaID = cajaID; // si la guía existe en el sistema if (oGuia.GuiaID > 0) { foreach (DsGuiaServicioConfirmacion.DatosRow dr in ds.Tables[0].Rows) { if (oGuia.GuiaID == dr.GuiaID && dr.Seleccionado) { nroRemito = dr.NroRemito; numero_guia = dr.NroGuia; } } // Asocio la guia con el lote. lote = caja.AgregarGuia(oGuia, usuario, this.AgenciaConectadaID, this.cantGuias, nroRemito); if (lote == 0) // Si es igual a cero es porque la guía ya se almacenó. { // La guia ya se encuentra almacenada. La agrego al hashtable de guias ya almacenadas string guia = nroSucursal + "-" + nGuia + "-" + tGuia; if (hGuias.ContainsKey(oGuia.GuiaID) == false) { hGuias.Add(oGuia.GuiaID, guia); } } else { if (nroRemito != string.Empty) { dsImpresion.Datos.AddDatosRow(numero_guia, nroRemito); } } // Comparo para ir guardando los cambios de lote, para al finalizar mostrar un mensaje con la posicion y lote de la guia. if (loteant != lote && lote != 0 && loteant != 0) { // Se muestran mensaje con el siguiente formato: "Lote 1. Posicion: 100. Guia: 9414100020" mensaje = "Lote : " + loteant + " . Posicion : " + cantGuias.ToString() + " . Guia : " + nroguiaAnt; mensaje2 = "Lote : " + lote + " . Posicion : 001 . Guia : " + nroGuia; } if (lote != 0) { loteant = lote; } else { if (loteant != 0) { lote = loteant; } } nroguiaAnt = nroGuia.ToString(); } else // La guia no existe en el sistema { //La agrego al hashtable de guias que no existen en el sistema. string guia = nroSucursal + "-" + nGuia + "-" + tGuia; hGuiasNR.Add(guia, guia); } } } // fin for Session["GuiaConfirmacion"] = dsImpresion; Session["GuiasNR"] = hGuiasNR; Session["Guias"] = hGuias; // Si todo ocurrió bien y además no hubo cambio de lote muestro el mensaje simple if (ok && lote != 0 && mensaje == "") { Session["GuiasDefectuosas"] = null; // LLAMO A LA PAGINA QUE TIENE LA LOGICA PARA LA IMPRESION string scriptString = "<script language='javascript'>\n"; scriptString += "alert('Guias Almacenadas en Lote: " + lote + "'); \n"; scriptString += "window.showModalDialog('ImprimirConfirmaciones.aspx','Imprimiendo Confirmacion...','dialogHeight: 934px;dialogWidth: 762px;edge: Raised; center: No; Status:No; help: No; resizable: No;');"; scriptString += "window.location.href = 'RecepcionConformadas.aspx?d=0&cajaID=" + cajaID + "';\n"; scriptString += "</script>\n"; Page.RegisterStartupScript("scriptOpen", scriptString); //Page.RegisterStartupScript("muestraMensaje", // SisPackController.GenerarJavaScripts.MostrarMensaje( // "Guias Almacenadas en Lote: " + lote, // "RecepcionEmitidas.aspx?cajaID=" + cajaID)); } // Si todo ocurrió bien pero hubo cambio de lote muestro el mensaje compuesto por mensaje y mensaje2 else if (mensaje != "") { Session["GuiasDefectuosas"] = null; // LLAMO A LA PAGINA QUE TIENE LA LOGICA PARA LA IMPRESION string scriptString = "<script language='javascript'>\n"; scriptString += "alert('" + mensaje + "\\n" + mensaje2 + "'); \n"; scriptString += "window.showModalDialog('ImprimirConfirmaciones.aspx','Imprimiendo Confirmacion...','dialogHeight: 934px;dialogWidth: 762px;edge: Raised; center: No; Status:No; help: No; resizable: No;');"; scriptString += "window.location.href = 'RecepcionConformadas.aspx?d=0&cajaID=" + cajaID + "';\n"; scriptString += "</script>\n"; Page.RegisterStartupScript("scriptOpen", scriptString); //Page.RegisterStartupScript("muestraMensaje", // SisPackController.GenerarJavaScripts.MostrarMensaje( // mensaje + "\\n" + mensaje2, "RecepcionEmitidas.aspx?cajaID=" + cajaID)); } // Si no se almaceno ninguna guia no muestro mensaje. Redirecciono al load con los errores. else { this.txtGuiasDefectuosas.Text = "1"; Session["GuiasDefectuosas"] = hGuias; Response.Redirect("RecepcionConformadas.aspx?d=0&cajaID=" + cajaID); } }
private void butConfirmar_Click(object sender, System.EventArgs e) { List <IGuia> listadoGuias = new List <IGuia>(); List <IFactura> listadoFacturas = new List <IFactura>(); string lista = string.Empty; string listaFacturas = string.Empty; usuario = (IUsuarios)Session["usuario"]; IAgencia agencia = AgenciaFactory.GetAgencia(); DsAgencias dsAgencias = agencia.GetAgenciasDataSet(); bool ok = true; Hashtable hGuias = new Hashtable(); // Guías que no se pueden recibir, porque ya fueron recibidas Hashtable hGuiasNR = new Hashtable(); // Guías que no están en condiciones de ser recibidas porque no existen en el sistema. string mensaje = ""; string mensaje2 = ""; string nroguiaAnt = ""; int loteant = 0; int cant = Utiles.Validaciones.obtieneEntero(this.txtGuiaIndex.Text); for (int i = 0; i < cant; i++) { // ANTES DE RECIBIR CADA GUÍA HAY QUE REALIZAR LOS CONTROLES CORRESPONDIENTES // E IR GUARDANDO LAS GUÍAS QUE FALLAN, PARA LUEGO VISUALIZAR UNA LISTA DE ESAS GUÍAS string txt = "txt" + i; string ddl = "ddl" + i.ToString(); string nroGuia = Request.Form[txt].ToString(); // Lógica para recibir guías string tGuia = ""; tGuia = NegociosSisPackInterface.SisPack.TipoGuia(nroGuia.Substring(0, 1)); string nroSucursal = nroGuia.Substring(1, 4); string nGuia = nroGuia.Substring(5).Replace(",", ""); IGuia oGuia = GuiaFactory.GetGuia(); oGuia.NroGuia = Utiles.Validaciones.obtieneEntero(nGuia); oGuia.NroSucursalGuia = nroSucursal; oGuia.TipoGuia = tGuia; oGuia.ConsultarByNroGuia(); oGuia.UnidadNegocioID = this.UnidadNegocioID; oGuia.UsuarioID = usuario.UsuarioID; oGuia.GuiaConformadaDesdeModuloRecepcionConformadas = true; if (oGuia.GuiaID > 0) //Es una guia { if (!lista.Contains(oGuia.GuiaID.ToString())) { lista += oGuia.GuiaID + ","; listadoGuias.Add(oGuia); } } else // es una factura { IFactura oFactura = FacturaFactory.GetFactura(); oFactura.NroGuia = Utiles.Validaciones.obtieneEntero(nGuia); oFactura.NroSucursalGuia = nroSucursal; oFactura.TipoGuia = tGuia; oFactura.ConsultarByNroFactura(); if (oFactura.FacturaID > 0) { if (!listaFacturas.Contains(oFactura.FacturaID.ToString())) { listaFacturas += oFactura.FacturaID + ","; listadoFacturas.Add(oFactura); } } else // La guia no existe en el sistema { //La agrego al hashtable de guias que no existen en el sistema. string guia = nroSucursal + "-" + nGuia + "-" + tGuia; hGuiasNR.Add(guia, guia); } } } /*Diego 22/03/2013 Guardar los valores para pasar a la pantalla de confirmacion */ IGuiaServicioConfirmacion guiaServicio = GuiaServicioConfirmacionFactory.GetGuiaServicioConfirmacion(); DsGuiaServicioConfirmacion ds = guiaServicio.GetGuiasSinConfirmacion(lista, 1); //1 = busca las guias emitidas if (ds.Datos.Rows.Count > 0) { /*debo guardar los id para mostrar el pop up para ingresar */ Session["GuiasSinConfirmar"] = ds; Session["ListaGuias"] = lista; Session["ListaFacturas"] = listaFacturas; string script = "<script language='javascript'>\n"; script += " window.showModalDialog('Recepcion_ConfirmacionGuias.aspx','Confirmacion','dialogHeight: 934px;dialogWidth: 762px;edge: Raised; center: No; Status:No; help: No; resizable: No;');\n"; script += " GuardarServicios(); \n"; script += " </script>\n"; Page.RegisterStartupScript("scriptImprimirGuiaUnidad", script); } else { /* No tiene guias para confirmar el servicio*/ foreach (var oGuia in listadoGuias) { ICaja caja = CajaFactory.GetCajaFactory(); caja.CajaID = cajaID; // si la guía existe en el sistema if (oGuia.GuiaID > 0) { // Asocio la guia con el lote. lote = caja.AgregarGuiaEmision(oGuia, usuario, this.AgenciaConectadaID, this.cantGuias, ""); if (lote == 0) // Si es igual a cero es porque la guía ya se almacenó. { // La guia ya se encuentra almacenada. La agrego al hashtable de guias ya almacenadas string guia = oGuia.NroSucursalGuia + "-" + oGuia.NroGuia.ToString() + "-" + oGuia.TipoGuia; // nroSucursal + "-" + nGuia + "-" + tGuia; if (hGuias.ContainsKey(oGuia.GuiaID) == false) { hGuias.Add(oGuia.GuiaID, guia); } } // Comparo para ir guardando los cambios de lote, para al finalizar mostrar un mensaje con la posicion y lote de la guia. if (loteant != lote && lote != 0 && loteant != 0) { // Se muestran mensaje con el siguiente formato: "Lote 1. Posicion: 100. Guia: 9414100020" mensaje = "Lote : " + loteant + " . Posicion : " + cantGuias.ToString() + " . Guia : " + nroguiaAnt; mensaje2 = "Lote : " + lote + " . Posicion : 001 . Guia : " + oGuia.NroGuia.ToString();// nroGuia; } if (lote != 0) { loteant = lote; } else { if (loteant != 0) { lote = loteant; } } nroguiaAnt = oGuia.NroGuia.ToString();// nroGuia; } } // fin foreach foreach (var oFactura in listadoFacturas) { ICaja caja = CajaFactory.GetCajaFactory(); caja.CajaID = cajaID; // si la guía existe en el sistema if (oFactura.FacturaID > 0) { // Asocio la guia con el lote. lote = caja.AgregarFacturaEmision(oFactura, usuario, this.AgenciaConectadaID, this.cantGuias, ""); if (lote == 0) // Si es igual a cero es porque la guía ya se almacenó. { // La guia ya se encuentra almacenada. La agrego al hashtable de guias ya almacenadas string guia = oFactura.NroSucursalGuia + "-" + oFactura.NroGuia.ToString() + "-" + oFactura.TipoGuia; // nroSucursal + "-" + nGuia + "-" + tGuia; if (hGuias.ContainsKey(oFactura.FacturaID) == false) { hGuias.Add(oFactura.FacturaID, guia); } } // Comparo para ir guardando los cambios de lote, para al finalizar mostrar un mensaje con la posicion y lote de la guia. if (loteant != lote && lote != 0 && loteant != 0) { // Se muestran mensaje con el siguiente formato: "Lote 1. Posicion: 100. Guia: 9414100020" mensaje = "Lote : " + loteant + " . Posicion : " + cantGuias.ToString() + " . Guia : " + nroguiaAnt; mensaje2 = "Lote : " + lote + " . Posicion : 001 . Guia : " + oFactura.NroGuia.ToString();// nroGuia; } if (lote != 0) { loteant = lote; } else { if (loteant != 0) { lote = loteant; } } nroguiaAnt = oFactura.NroGuia.ToString();// nroGuia; } } // fin foreach /* * for (int i = 0; i < cant; i++) * { * // ANTES DE RECIBIR CADA GUÍA HAY QUE REALIZAR LOS CONTROLES CORRESPONDIENTES * // E IR GUARDANDO LAS GUÍAS QUE FALLAN, PARA LUEGO VISUALIZAR UNA LISTA DE ESAS GUÍAS * string txt = "txt" + i; * string ddl = "ddl" + i.ToString(); * * string nroGuia = Request.Form[txt].ToString(); * * // Lógica para recibir guías * string tGuia = ""; * tGuia = NegociosSisPackInterface.SisPack.TipoGuia(nroGuia.Substring(0, 1)); * string nroSucursal = nroGuia.Substring(1, 4); * string nGuia = nroGuia.Substring(5); * * IGuia oGuia = GuiaFactory.GetGuia(); * oGuia.NroGuia = Utiles.Validaciones.obtieneEntero(nGuia); * oGuia.NroSucursalGuia = nroSucursal; * oGuia.TipoGuia = tGuia; * oGuia.ConsultarByNroGuia(); * oGuia.UnidadNegocioID = this.UnidadNegocioID; * oGuia.UsuarioID = usuario.UsuarioID; * oGuia.GuiaConformadaDesdeModuloRecepcionConformadas = true; * lista += oGuia.GuiaID + ","; * ICaja caja = CajaFactory.GetCajaFactory(); * caja.CajaID = cajaID; * * // si la guía existe en el sistema * if (oGuia.GuiaID > 0) * { * // Asocio la guia con el lote. * lote = caja.AgregarGuiaEmision(oGuia, usuario, this.AgenciaConectadaID, this.cantGuias, ""); * if (lote == 0) // Si es igual a cero es porque la guía ya se almacenó. * { * // La guia ya se encuentra almacenada. La agrego al hashtable de guias ya almacenadas * string guia = nroSucursal + "-" + nGuia + "-" + tGuia; * if (hGuias.ContainsKey(oGuia.GuiaID) == false) * hGuias.Add(oGuia.GuiaID, guia); * } * // Comparo para ir guardando los cambios de lote, para al finalizar mostrar un mensaje con la posicion y lote de la guia. * if (loteant != lote && lote != 0 && loteant != 0) * { * // Se muestran mensaje con el siguiente formato: "Lote 1. Posicion: 100. Guia: 9414100020" * mensaje = "Lote : " + loteant + " . Posicion : " + cantGuias.ToString() + " . Guia : " + * nroguiaAnt; * mensaje2 = "Lote : " + lote + " . Posicion : 001 . Guia : " + nroGuia; * } * * if (lote != 0) * loteant = lote; * else * { * if (loteant != 0) * lote = loteant; * } * nroguiaAnt = nroGuia; * } * else // La guia no existe en el sistema * { * //La agrego al hashtable de guias que no existen en el sistema. * string guia = nroSucursal + "-" + nGuia + "-" + tGuia; * hGuiasNR.Add(guia, guia); * } * } */ Session["GuiasNR"] = hGuiasNR; Session["Guias"] = hGuias; // Si todo ocurrió bien y además no hubo cambio de lote muestro el mensaje simple if (ok && lote != 0 && mensaje == "") { Session["GuiasDefectuosas"] = null; Page.RegisterStartupScript("muestraMensaje", SisPackController.GenerarJavaScripts.MostrarMensaje( "Guias Almacenadas en Lote: " + lote, "RecepcionEmitidas.aspx?cajaID=" + cajaID)); } // Si todo ocurrió bien pero hubo cambio de lote muestro el mensaje compuesto por mensaje y mensaje2 else if (mensaje != "") { Session["GuiasDefectuosas"] = null; Page.RegisterStartupScript("muestraMensaje", SisPackController.GenerarJavaScripts.MostrarMensaje( mensaje + "\\n" + mensaje2, "RecepcionEmitidas.aspx?cajaID=" + cajaID)); } // Si no se almaceno ninguna guia no muestro mensaje. Redirecciono al load con los errores. else { this.txtGuiasDefectuosas.Text = "1"; Session["GuiasDefectuosas"] = hGuias; Response.Redirect("RecepcionEmitidas.aspx?d=0&cajaID=" + cajaID); } } }