private void ProcesarReimpresion(string tipo, int pv, int desde, int hasta) { using (Lfx.Data.Connection Conn = Lfx.Workspace.Master.GetNewConnection("Reimpresión de comprobantes")) { int Cantidad = Math.Abs(hasta - desde); Lfx.Types.OperationProgress Progreso = new Lfx.Types.OperationProgress("Reimprimiendo", "Se están reimprimiendo " + Cantidad.ToString() + " comprobantes."); Progreso.Cancelable = true; Progreso.Max = Cantidad; Progreso.Modal = true; Progreso.Advertise = true; Progreso.Begin(); string IncluyeTipos = ""; switch (tipo) { case "A": IncluyeTipos = "'FA', 'NCA', 'NDA'"; break; case "B": IncluyeTipos = "'FB', 'NCB', 'NDB'"; break; case "C": IncluyeTipos = "'FC', 'NCC', 'NDC'"; break; case "E": IncluyeTipos = "'FE', 'NCE', 'NDE'"; break; case "M": IncluyeTipos = "'FM', 'NCM', 'NDM'"; break; default: IncluyeTipos = "'" + EntradaTipo.TextKey + "'"; break; } int Paso = desde < hasta ? 1 : -1; for (int Numero = desde; Numero != hasta; Numero += Paso) { int IdFactura = Connection.FieldInt("SELECT id_comprob FROM comprob WHERE impresa=1 AND anulada=0 AND tipo_fac IN (" + IncluyeTipos + ") AND pv=" + pv.ToString() + " AND numero=" + Numero.ToString()); if (IdFactura == 0) { // No existe, supongo que está anulado, lo salteo } else { Lbl.Comprobantes.ComprobanteFacturable Fac = new Lbl.Comprobantes.ComprobanteFacturable(Conn, IdFactura); Progreso.ChangeStatus("Imprimiendo " + Fac.ToString()); Lazaro.Impresion.Comprobantes.ImpresorComprobanteConArticulos Impr = new Lazaro.Impresion.Comprobantes.ImpresorComprobanteConArticulos(Fac, null); Impr.Imprimir(); } Progreso.Advance(1); if (Progreso.Cancelar) { break; } } Progreso.End(); } }
private void ProcesarReimpresion(string tipo, int pv, int desde, int hasta) { using (Lfx.Data.Connection Conn = Lfx.Workspace.Master.GetNewConnection("Reimpresión de comprobantes")) { int Cantidad = Math.Abs(hasta - desde); Lfx.Types.OperationProgress Progreso = new Lfx.Types.OperationProgress("Reimprimiendo", "Se están reimprimiendo " + Cantidad.ToString() + " comprobantes."); Progreso.Cancelable = true; Progreso.Max = Cantidad; Progreso.Modal = true; Progreso.Advertise = true; Progreso.Begin(); string IncluyeTipos = ""; switch (tipo) { case "A": IncluyeTipos = "'FA', 'NCA', 'NDA'"; break; case "B": IncluyeTipos = "'FB', 'NCB', 'NDB'"; break; case "C": IncluyeTipos = "'FC', 'NCC', 'NDC'"; break; case "E": IncluyeTipos = "'FE', 'NCE', 'NDE'"; break; case "M": IncluyeTipos = "'FM', 'NCM', 'NDM'"; break; default: IncluyeTipos = "'" + EntradaTipo.TextKey + "'"; break; } int Paso = desde < hasta ? 1 : -1; for (int Numero = desde; Numero != hasta; Numero += Paso) { int IdFactura = Connection.FieldInt("SELECT id_comprob FROM comprob WHERE impresa=1 AND anulada=0 AND tipo_fac IN (" + IncluyeTipos + ") AND pv=" + pv.ToString() + " AND numero=" + Numero.ToString()); if (IdFactura == 0) { // No existe, supongo que está anulado, lo salteo } else { Lbl.Comprobantes.ComprobanteFacturable Fac = new Lbl.Comprobantes.ComprobanteFacturable(Conn, IdFactura); Progreso.ChangeStatus("Imprimiendo " + Fac.ToString()); Lazaro.Impresion.Comprobantes.ImpresorComprobanteConArticulos Impr = new Lazaro.Impresion.Comprobantes.ImpresorComprobanteConArticulos(Fac, null); Impr.Imprimir(); } Progreso.Advance(1); if (Progreso.Cancelar) break; } Progreso.End(); } }