public override global::System.Data.DataSet Clone() { DsImpresionConfirmacionServicio cln = ((DsImpresionConfirmacionServicio)(base.Clone())); cln.InitVars(); cln.SchemaSerializationMode = this.SchemaSerializationMode; return(cln); }
public static global::System.Xml.Schema.XmlSchemaComplexType GetTypedDataSetSchema(global::System.Xml.Schema.XmlSchemaSet xs) { DsImpresionConfirmacionServicio ds = new DsImpresionConfirmacionServicio(); 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 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); } }
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(); DsImpresionConfirmacionServicio ds = new DsImpresionConfirmacionServicio(); 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); }