protected void Generar_Encomienda(string numero) { string agenciaO, ruta, fecha, entregaNit, entregaCel, placa, numBus, entregaNombre, recibeNit, recibeCel, recibeNombre, descripcion, unidades, peso, volumen, valDeclarado, costo, iva, total, responsableNit, responsableNombre; string plantilla = ""; string nlchar = "`", redChar = "^"; int anchoTiquete = Tiquetes.anchoTiquete; try { string strLinea = ""; StreamReader strArchivo; strArchivo = File.OpenText(ConfigurationManager.AppSettings["PathToPapeleria"] + "\\PlantillaEncomienda.txt"); strLinea = strArchivo.ReadLine(); //La primera linea puede contener el ancho del tiquete try { anchoTiquete = Int16.Parse(strLinea); strLinea = strArchivo.ReadLine(); } catch {} while (strLinea != null) { plantilla += strLinea + nlchar; strLinea = strArchivo.ReadLine(); } strArchivo.Close(); } catch { Utils.MostrarAlerta(Response, "No se ha creado la plantilla de Encomiendas, no se pudo imprimir."); return; } plantilla = plantilla.Replace("<RED>", redChar); DataSet dsEncomienda = new DataSet(); DBFunctions.Request(dsEncomienda, IncludeSchema.NO, "SELECT * FROM DBXSCHEMA.MENCOMIENDAS WHERE NUM_DOCUMENTO=" + numero + ";"); if (dsEncomienda.Tables[0].Rows.Count == 0) { plantilla = "NO EXISTE LA ENCOMIENDA"; return; } agenciaO = DBFunctions.SingleData("SELECT MAGE_NOMBRE FROM DBXSCHEMA.MAGENCIA WHERE MAG_CODIGO=" + dsEncomienda.Tables[0].Rows[0]["MAG_RECIBE"].ToString() + ";"); ruta = DBFunctions.SingleData("SELECT MRUT_DESCRIPCION FROM DBXSCHEMA.MRUTAS WHERE MRUT_CODIGO='" + dsEncomienda.Tables[0].Rows[0]["MRUT_CODIGO"].ToString() + "';"); fecha = Convert.ToDateTime(dsEncomienda.Tables[0].Rows[0]["FECHA_RECIBE"]).ToString("yyyy/MM/dd"); placa = dsEncomienda.Tables[0].Rows[0]["MCAT_PLACA"].ToString(); numBus = DBFunctions.SingleData("SELECT MBUS_NUMERO FROM DBXSCHEMA.MBUSAFILIADO WHERE MCAT_PLACA='" + placa + "';"); entregaNit = dsEncomienda.Tables[0].Rows[0]["MNIT_EMISOR"].ToString(); entregaNombre = DBFunctions.SingleData("SELECT MPAS_NOMBRES CONCAT ' ' CONCAT MPAS_APELLIDOS FROM DBXSCHEMA.MPASAJERO where MPAS_NIT='" + entregaNit + "';"); entregaCel = DBFunctions.SingleData("SELECT MPAS_TELEFONO FROM DBXSCHEMA.MPASAJERO where MPAS_NIT='" + entregaNit + "';"); recibeNit = dsEncomienda.Tables[0].Rows[0]["MNIT_DESTINATARIO"].ToString(); recibeNombre = DBFunctions.SingleData("SELECT MPAS_NOMBRES CONCAT ' ' CONCAT MPAS_APELLIDOS FROM DBXSCHEMA.MPASAJERO where MPAS_NIT='" + recibeNit + "';"); recibeCel = DBFunctions.SingleData("SELECT MPAS_TELEFONO FROM DBXSCHEMA.MPASAJERO where MPAS_NIT='" + recibeNit + "';"); responsableNit = dsEncomienda.Tables[0].Rows[0]["MNIT_RESPONSABLE_RECIBE"].ToString(); responsableNombre = DBFunctions.SingleData("SELECT MNIT_NOMBRES CONCAT ' ' CONCAT MNIT_APELLIDOS FROM DBXSCHEMA.MNIT where MNIT_NIT='" + responsableNit + "';"); unidades = Convert.ToDouble(dsEncomienda.Tables[0].Rows[0]["UNIDADES"]).ToString("###,###,##0"); peso = Convert.ToDouble(dsEncomienda.Tables[0].Rows[0]["PESO"]).ToString("###,###,##0"); volumen = Convert.ToDouble(dsEncomienda.Tables[0].Rows[0]["VOLUMEN"]).ToString("###,###,##0"); valDeclarado = Convert.ToDouble(dsEncomienda.Tables[0].Rows[0]["VALOR_AVALUO"]).ToString("###,###,##0"); costo = Convert.ToDouble(dsEncomienda.Tables[0].Rows[0]["COSTO_ENCOMIENDA"]).ToString("###,###,##0"); iva = Convert.ToDouble(dsEncomienda.Tables[0].Rows[0]["VALOR_IVA"]).ToString("###,###,##0"); total = Convert.ToDouble(dsEncomienda.Tables[0].Rows[0]["VALOR_TOTAL"]).ToString("###,###,##0"); plantilla = plantilla.Replace("<NUMERO>", numero); plantilla = plantilla.Replace("<FECHA>", fecha); plantilla = plantilla.Replace("<PLANILLA>", dsEncomienda.Tables[0].Rows[0]["MPLA_CODIGO"].ToString()); plantilla = plantilla.Replace("<DOCUMENTO>", dsEncomienda.Tables[0].Rows[0]["NUM_DOC_REFERENCIA"].ToString()); plantilla = plantilla.Replace("<AGENCIA>", agenciaO); plantilla = plantilla.Replace("<RUTA>", ruta); plantilla = plantilla.Replace("<BUS_NUMERO>", numBus); plantilla = plantilla.Replace("<BUS_PLACA>", placa); plantilla = plantilla.Replace("<ENTREGA_NOMBRE>", entregaNombre); plantilla = plantilla.Replace("<ENTREGA_NIT>", entregaNit); plantilla = plantilla.Replace("<ENTREGA_CEL>", entregaCel); plantilla = plantilla.Replace("<RECIBE_NOMBRE>", recibeNombre); plantilla = plantilla.Replace("<RECIBE_NIT>", recibeNit); plantilla = plantilla.Replace("<RECIBE_CEL>", recibeCel); //descripcion=Tiquetes.CortarTexto(dsEncomienda.Tables[0].Rows[0]["DESCRIPCION_CONTENIDO"].ToString(),anchoTiquete); descripcion = dsEncomienda.Tables[0].Rows[0]["DESCRIPCION_CONTENIDO"].ToString(); int longitud = descripcion.Length; int lineas = longitud / Tiquetes.anchoTiquete; string txtDescripcion = ""; int subindice = 0; for (int i = 1; i <= lineas; i++) { txtDescripcion += Tiquetes.ReemplazarTexto(descripcion.Substring(subindice, Tiquetes.anchoTiquete).ToString()) + nlchar; subindice += Tiquetes.anchoTiquete; } if (subindice < longitud) { txtDescripcion += Tiquetes.ReemplazarTexto(descripcion.Substring(subindice, longitud - subindice).ToString()) + nlchar; } plantilla = plantilla.Replace("<DESCRIPCION>", txtDescripcion); //plantilla=plantilla.Replace("<DESCRIPCION>",descripcion); plantilla = plantilla.Replace("<UNIDADES>", unidades); plantilla = plantilla.Replace("<PESO>", peso); plantilla = plantilla.Replace("<VOLUMEN>", volumen); plantilla = plantilla.Replace("<VALOR_DECLARADO>", valDeclarado); plantilla = plantilla.Replace("<COSTO_ENCOMIENDA>", costo); plantilla = plantilla.Replace("<IVA_ENCOMIENDA>", iva); plantilla = plantilla.Replace("<TOTAL_ENCOMIENDA>", total); plantilla = plantilla.Replace("<NITRESPONSABLE>", responsableNit); plantilla = plantilla.Replace("<RESPONSABLE>", responsableNombre); txtEncomienda = plantilla; }
//Generar el anticipo a partir de su plantilla public static string GenerarAnticipo(string numero, string plantilla, string nlchar, string redChar, int anchoTiquete) { string agencia, fecha, busNumero, busPlaca, planilla, concepto, entregaNit, entregaNombre, recibeNit, recibeNombre, descripcion, cantidad, valorU, valorT; plantilla = plantilla.Replace("<RED>", redChar); DataSet dsAnticipo = new DataSet(); DBFunctions.Request(dsAnticipo, IncludeSchema.NO, "SELECT * FROM DBXSCHEMA.MGASTOS_TRANSPORTES WHERE NUM_DOCUMENTO=" + numero + ";"); if (dsAnticipo.Tables[0].Rows.Count == 0) { return("NO EXISTE EL ANTICIPO"); } agencia = DBFunctions.SingleData("SELECT MAGE_NOMBRE FROM DBXSCHEMA.MAGENCIA WHERE MAG_CODIGO=" + dsAnticipo.Tables[0].Rows[0]["MAG_CODIGO"].ToString() + ";"); busPlaca = dsAnticipo.Tables[0].Rows[0]["MCAT_PLACA"].ToString(); busNumero = DBFunctions.SingleData("SELECT MBUS_NUMERO FROM DBXSCHEMA.MBUSAFILIADO WHERE MCAT_PLACA='"+ busPlaca + "';"); planilla = dsAnticipo.Tables[0].Rows[0]["MPLA_CODIGO"].ToString(); concepto = DBFunctions.SingleData("SELECT NOMBRE from DBXSCHEMA.TCONCEPTOS_TRANSPORTES WHERE TCON_CODIGO=" + dsAnticipo.Tables[0].Rows[0]["TCON_CODIGO"].ToString() + ";"); entregaNit = dsAnticipo.Tables[0].Rows[0]["MNIT_RESPONSABLE_ENTREGA"].ToString(); entregaNombre = DBFunctions.SingleData("SELECT MNIT_NOMBRES CONCAT ' ' CONCAT MNIT_APELLIDOS FROM DBXSCHEMA.MNIT where MNIT_NIT='" + entregaNit + "';"); recibeNit = dsAnticipo.Tables[0].Rows[0]["MNIT_RESPONSABLE_RECIBE"].ToString(); recibeNombre = DBFunctions.SingleData("SELECT MNIT_NOMBRES CONCAT ' ' CONCAT MNIT_APELLIDOS FROM DBXSCHEMA.MNIT where MNIT_NIT='" + recibeNit + "';"); //descripcion=Tiquetes.CortarTexto(dsAnticipo.Tables[0].Rows[0]["DESCRIPCION"].ToString(),anchoTiquete); cantidad = Convert.ToDouble(dsAnticipo.Tables[0].Rows[0]["CANTIDAD_CONSUMO"]).ToString("##0"); valorU = Convert.ToDouble(dsAnticipo.Tables[0].Rows[0]["VALOR_UNIDAD"]).ToString("###,###,##0"); valorT = Convert.ToDouble(dsAnticipo.Tables[0].Rows[0]["VALOR_TOTAL_AUTORIZADO"]).ToString("###,###,##0"); fecha = Convert.ToDateTime(dsAnticipo.Tables[0].Rows[0]["FECHA_DOCUMENTO"]).ToString("yyyy/MM/dd"); plantilla = plantilla.Replace("<FECHA_IMPRESION>", DateTime.Now.ToString("dd/MM/yyyy hh:mm:ss tt")); plantilla = plantilla.Replace("<NUMERO>", numero); plantilla = plantilla.Replace("<AGENCIA>", agencia); plantilla = plantilla.Replace("<BUS_NUMERO>", busNumero); plantilla = plantilla.Replace("<BUS_PLACA>", busPlaca); plantilla = plantilla.Replace("<PLANILLA>", planilla); plantilla = plantilla.Replace("<CONCEPTO>", concepto); plantilla = plantilla.Replace("<ENTREGA_NOMBRE>", entregaNombre); plantilla = plantilla.Replace("<ENTREGA_NIT>", entregaNit); plantilla = plantilla.Replace("<RECIBE_NOMBRE>", recibeNombre); plantilla = plantilla.Replace("<RECIBE_NIT>", recibeNit); descripcion = dsAnticipo.Tables[0].Rows[0]["DESCRIPCION"].ToString(); int longitud = descripcion.Length; int lineas = longitud / Tiquetes.anchoTiquete; string txtDescripcion = ""; int subindice = 0; for (int i = 1; i <= lineas; i++) { txtDescripcion += Tiquetes.ReemplazarTexto(descripcion.Substring(subindice, Tiquetes.anchoTiquete).ToString()) + nlchar; subindice += Tiquetes.anchoTiquete; } if (subindice < longitud) { txtDescripcion += Tiquetes.ReemplazarTexto(descripcion.Substring(subindice, longitud - subindice).ToString()) + nlchar; } plantilla = plantilla.Replace("<DESCRIPCION>", txtDescripcion); //plantilla=plantilla.Replace("<DESCRIPCION>",descripcion); plantilla = plantilla.Replace("<CANTIDAD>", cantidad); plantilla = plantilla.Replace("<VALOR_UNIDAD>", valorU); plantilla = plantilla.Replace("<VALOR_TOTAL>", valorT); return(plantilla.Replace("<FECHA>", fecha)); }
protected void Generar_Giro(string numero) { string agenciaO, agenciaD, fecha, entregaNit, entregaNombre, recibeNit, recibeNombre, ResponsableNombre, valor, costo, iva, total; string plantilla = ""; string nlchar = "`", redChar = "^"; int anchoTiquete = Tiquetes.anchoTiquete; try { string strLinea = ""; StreamReader strArchivo; strArchivo = File.OpenText(ConfigurationManager.AppSettings["PathToPapeleria"] + "\\PlantillaGiro.txt"); strLinea = strArchivo.ReadLine(); //La primera linea puede contener el ancho del tiquete try { anchoTiquete = Int16.Parse(strLinea); strLinea = strArchivo.ReadLine(); } catch {} while (strLinea != null) { plantilla += strLinea + nlchar; strLinea = strArchivo.ReadLine(); } strArchivo.Close(); } catch { Utils.MostrarAlerta(Response, "No se ha creado la plantilla de Giros, no se pudo imprimir."); return; } plantilla = plantilla.Replace("<RED>", redChar); DataSet dsGiro = new DataSet(); DBFunctions.Request(dsGiro, IncludeSchema.NO, "SELECT * FROM DBXSCHEMA.MGIROS WHERE NUM_DOCUMENTO=" + numero + ";"); if (dsGiro.Tables[0].Rows.Count == 0) { plantilla = "NO EXISTE EL GIRO"; return; } //Validar responsable string nitResponsable = DBFunctions.SingleData("select mnit_nit from DBXSCHEMA.susuario where susu_login='******';"); if (nitResponsable.Length == 0) { Utils.MostrarAlerta(Response, "NO TIENE NIT EL USUARIO--> CREELO EN NITS"); return; } agenciaO = DBFunctions.SingleData("SELECT MAGE_NOMBRE FROM DBXSCHEMA.MAGENCIA WHERE MAG_CODIGO=" + dsGiro.Tables[0].Rows[0]["MAG_AGENCIA_ORIGEN"].ToString() + ";"); agenciaD = DBFunctions.SingleData("SELECT MAGE_NOMBRE FROM DBXSCHEMA.MAGENCIA WHERE MAG_CODIGO=" + dsGiro.Tables[0].Rows[0]["MAG_AGENCIA_DESTINO"].ToString() + ";"); fecha = Convert.ToDateTime(dsGiro.Tables[0].Rows[0]["FECHA_RECIBE"]).ToString("yyyy/MM/dd"); entregaNit = dsGiro.Tables[0].Rows[0]["MNIT_EMISOR"].ToString(); entregaNombre = DBFunctions.SingleData("SELECT MNIT_NOMBRES CONCAT ' ' CONCAT MNIT_APELLIDOS FROM DBXSCHEMA.MNIT where MNIT_NIT='" + entregaNit + "';"); ResponsableNombre = DBFunctions.SingleData("SELECT MNIT_NOMBRES CONCAT ' ' CONCAT MNIT_APELLIDOS FROM DBXSCHEMA.MNIT where MNIT_NIT='" + nitResponsable + "';"); recibeNit = dsGiro.Tables[0].Rows[0]["MNIT_DESTINATARIO"].ToString(); recibeNombre = DBFunctions.SingleData("SELECT MNIT_NOMBRES CONCAT ' ' CONCAT MNIT_APELLIDOS FROM DBXSCHEMA.MNIT where MNIT_NIT='" + recibeNit + "';"); valor = Convert.ToDouble(dsGiro.Tables[0].Rows[0]["VALOR_GIRO"]).ToString("###,###,##0"); costo = Convert.ToDouble(dsGiro.Tables[0].Rows[0]["COSTO_GIRO"]).ToString("###,###,##0"); iva = Convert.ToDouble(dsGiro.Tables[0].Rows[0]["VALOR_IVA"]).ToString("###,###,##0"); total = (Convert.ToDouble(dsGiro.Tables[0].Rows[0]["VALOR_GIRO"]) + Convert.ToDouble(dsGiro.Tables[0].Rows[0]["COSTO_GIRO"]) + Convert.ToDouble(dsGiro.Tables[0].Rows[0]["VALOR_IVA"])).ToString("###,###,##0"); plantilla = plantilla.Replace("<NUMERO>", numero); plantilla = plantilla.Replace("<FECHA>", fecha); plantilla = plantilla.Replace("<AGENCIA_ORIGEN>", agenciaO); plantilla = plantilla.Replace("<AGENCIA_DESTINO>", agenciaD); plantilla = plantilla.Replace("<ENTREGA_NOMBRE>", entregaNombre); plantilla = plantilla.Replace("<ENTREGA_NIT>", entregaNit); plantilla = plantilla.Replace("<RECIBE_NOMBRE>", recibeNombre); plantilla = plantilla.Replace("<RECIBE_NIT>", recibeNit); plantilla = plantilla.Replace("<VALOR_GIRO>", valor); plantilla = plantilla.Replace("<COSTO_GIRO>", costo); plantilla = plantilla.Replace("<IVA_GIRO>", iva); plantilla = plantilla.Replace("<TOTAL_GIRO>", total); int longitud = ResponsableNombre.Length; int lineas = longitud / Tiquetes.anchoTiquete; string txtNombre = ""; int subindice = 0; for (int i = 1; i <= lineas; i++) { txtNombre += Tiquetes.ReemplazarTexto(ResponsableNombre.Substring(subindice, Tiquetes.anchoTiquete).ToString()) + nlchar; subindice += Tiquetes.anchoTiquete; } if (subindice < longitud) { txtNombre += Tiquetes.ReemplazarTexto(ResponsableNombre.Substring(subindice, longitud - subindice).ToString()) + nlchar; } plantilla = plantilla.Replace("<RESPONSABLE>", txtNombre); txtGiro = plantilla; }
//Generar la planilla a pertir de su plantilla public static string GenerarPlanilla(string numero, string plantilla, string nlchar, string redChar, int anchoTiquete) { DataSet dsPlanilla = new DataSet(); DataSet dsViaje = new DataSet(); DataSet dsInfoTiquete = new DataSet(); //Info general DBFunctions.Request(dsInfoTiquete, IncludeSchema.NO, "select * from dbxschema.ccampos_tiquete;"); //Planilla DBFunctions.Request(dsPlanilla, IncludeSchema.NO, "SELECT * FROM DBXSCHEMA.MPLANILLAVIAJE WHERE MPLA_CODIGO=" + numero + ";"); if (dsPlanilla.Tables[0].Rows.Count == 0) { return("NO HAY DATOS DE LA PLANILLA"); } string agencia = dsPlanilla.Tables[0].Rows[0]["MAG_CODIGO"].ToString(); string rutaP = dsPlanilla.Tables[0].Rows[0]["MRUT_CODIGO"].ToString(); string viaje = dsPlanilla.Tables[0].Rows[0]["MVIAJE_NUMERO"].ToString(); DBFunctions.Request(dsViaje, IncludeSchema.NO, "SELECT * FROM DBXSCHEMA.MVIAJE WHERE MRUT_CODIGO='" + rutaP + "' AND MVIAJE_NUMERO=" + viaje + ";"); if (dsViaje.Tables[0].Rows.Count == 0) { return("NO HAY DATOS DEL VIAJE"); } int hora = Convert.ToInt32(dsViaje.Tables[0].Rows[0]["HORA_SALIDA"]); int horaDespacho = Convert.ToInt32(dsViaje.Tables[0].Rows[0]["HORA_DESPACHO"]); string placa = dsViaje.Tables[0].Rows[0]["MCAT_PLACA"].ToString(); string numVehiculo = DBFunctions.SingleData("SELECT MBUS_NUMERO FROM DBXSCHEMA.MBUSAFILIADO WHERE MCAT_PLACA='"+ placa + "';"); /*txtPlanilla+=redChar+new String('-',anchoTiquete)+nlchar; * if(dsInfoTiquete.Tables[0].Rows.Count>0) * { * txtPlanilla+=Tiquetes.CentrarTexto(dsInfoTiquete.Tables[0].Rows[0]["NOMBRE_EMPRESA"].ToString(),' ')+nlchar; * txtPlanilla+=Tiquetes.CentrarTexto("NIT. "+dsInfoTiquete.Tables[0].Rows[0]["NIT_EMPRESA"].ToString(),' ')+nlchar;} * txtPlanilla+=redChar+new String('-',anchoTiquete)+nlchar; * txtPlanilla+=""+nlchar;*/ //txtPlanilla+="Número: "+dsPlanilla.Tables[0].Rows[0]["MPLA_CODIGO"].ToString()+nlchar; plantilla = plantilla.Replace("<NUMERO>", dsPlanilla.Tables[0].Rows[0]["MPLA_CODIGO"].ToString()); //txtPlanilla+="Fecha: "+DateTime.Now.ToString("yyyy-MM-dd HH:mm")+nlchar; plantilla = plantilla.Replace("<FECHA>", DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")); //txtPlanilla+="Bus: "+numVehiculo+" ("+placa+")"+nlchar; plantilla = plantilla.Replace("<BUS_NUMERO>", numVehiculo); plantilla = plantilla.Replace("<BUS_PLACA>", placa); //txtPlanilla+="Origen : "+DBFunctions.SingleData("SELECT PC.PCIU_NOMBRE FROM DBXSCHEMA.MAGENCIA MA, DBXSCHEMA.PCIUDAD PC WHERE PC.PCIU_CODIGO=MA.PCIU_CODIGO AND MA.MAG_CODIGO="+agencia+";")+nlchar; plantilla = plantilla.Replace("<ORIGEN>", DBFunctions.SingleData("SELECT PC.PCIU_NOMBRE FROM DBXSCHEMA.MAGENCIA MA, DBXSCHEMA.PCIUDAD PC WHERE PC.PCIU_CODIGO=MA.PCIU_CODIGO AND MA.MAG_CODIGO=" + agencia + ";")); //txtPlanilla+="Destino: "+DBFunctions.SingleData("SELECT PC.PCIU_NOMBRE FROM DBXSCHEMA.MRUTAS MR, DBXSCHEMA.PCIUDAD PC WHERE PC.PCIU_CODIGO=MR.PCIU_CODDES AND MR.MRUT_CODIGO='"+rutaP+"';")+nlchar; plantilla = plantilla.Replace("<DESTINO>", DBFunctions.SingleData("SELECT PC.PCIU_NOMBRE FROM DBXSCHEMA.MRUTAS MR, DBXSCHEMA.PCIUDAD PC WHERE PC.PCIU_CODIGO=MR.PCIU_CODDES AND MR.MRUT_CODIGO='" + rutaP + "';")); plantilla = plantilla.Replace("<NUMERO_VIAJE>", viaje); //txtPlanilla+="Agencia: "+DBFunctions.SingleData("SELECT MAGE_NOMBRE FROM DBXSCHEMA.MAGENCIA WHERE MAG_CODIGO="+agencia+";")+nlchar; plantilla = plantilla.Replace("<AGENCIA>", DBFunctions.SingleData("SELECT MAGE_NOMBRE FROM DBXSCHEMA.MAGENCIA WHERE MAG_CODIGO=" + agencia + ";")); //txtPlanilla+="Salida: "+Convert.ToDateTime(dsViaje.Tables[0].Rows[0]["FECHA_SALIDA"]).ToString("yyyy-MM-dd")+" "+Math.Round((double)hora/60,0).ToString("00")+":"+(hora%60).ToString("00")+nlchar; plantilla = plantilla.Replace("<FECHA_SALIDA>", Convert.ToDateTime(dsViaje.Tables[0].Rows[0]["FECHA_SALIDA"]).ToString("yyyy-MM-dd") + " " + (hora / 60).ToString("00") + ":" + (hora % 60).ToString("00")); plantilla = plantilla.Replace("<HORA_DESPACHO>", ((int)horaDespacho / 60).ToString("00") + ":" + (horaDespacho % 60).ToString("00")); //txtPlanilla+=Tiquetes.CortarTexto("Conductor: "+DBFunctions.SingleData("select mnit_nombres concat ' ' concat mnit_apellidos FROM DBXSCHEMA.MNIT WHERE MNIT_NIT='"+dsViaje.Tables[0].Rows[0]["MNIT_CONDUCTOR"]+"';"))+nlchar; plantilla = plantilla.Replace("<CONDUCTOR_NOMBRE>", DBFunctions.SingleData("select mnit_nombres concat ' ' concat mnit_apellidos FROM DBXSCHEMA.MNIT WHERE MNIT_NIT='" + dsViaje.Tables[0].Rows[0]["MNIT_CONDUCTOR"] + "';")); //txtPlanilla+=Tiquetes.CortarTexto("Relevador: "+DBFunctions.SingleData("select mnit_nombres concat ' ' concat mnit_apellidos FROM DBXSCHEMA.MNIT WHERE MNIT_NIT='"+dsViaje.Tables[0].Rows[0]["MNIT_RELEVADOR1"]+"';"))+nlchar; plantilla = plantilla.Replace("<RELEVADOR_NOMBRE>", DBFunctions.SingleData("select mnit_nombres concat ' ' concat mnit_apellidos FROM DBXSCHEMA.MNIT WHERE MNIT_NIT='" + dsViaje.Tables[0].Rows[0]["MNIT_RELEVADOR1"] + "';")); string espacio = " "; string num = ""; //Tiquetes DataSet dsTiquetes = new DataSet(); DBFunctions.Request(dsTiquetes, IncludeSchema.NO, "Select cast(right(rtrim(char(MV.NUM_DOCUMENTO))," + AMS.Comercial.Tiquetes.lenTiquete + ") as integer) AS NUM_DOCUMENTO,PC.PCIU_NOMBRE AS DESTINO,MV.NUMERO_PUESTOS,MV.VALOR_PASAJE,MV.VALOR_TOTAL " + "FROM DBXSCHEMA.MTIQUETE_VIAJE MV,DBXSCHEMA.PCIUDAD PC,DBXSCHEMA.MRUTAS MR " + "WHERE MR.MRUT_CODIGO=MV.MRUT_CODIGO AND PC.PCIU_CODIGO=MR.PCIU_CODDES AND MV.TEST_CODIGO='V' AND MV.MPLA_CODIGO=" + numero + ";"); string txtPlanilla = ""; if (dsTiquetes.Tables[0].Rows.Count > 0) { txtPlanilla += nlchar; txtPlanilla += "TIQUETES" + nlchar; txtPlanilla += redChar + "--------" + nlchar; } double TotalPasajes = 0; double TotalPasajeros = 0; double TotalGiros = 0; double TotalIngresos = 0; double TotalEgresos = 0; double TotalPlanilla = 0; foreach (DataRow dr in dsTiquetes.Tables[0].Rows) { num = dr["NUM_DOCUMENTO"].ToString().Trim(); if (num.Length > Tiquetes.lenTiquete) { num = Convert.ToInt32(num.Substring(num.Length - Tiquetes.lenTiquete)).ToString(); } num = new string('0', Tiquetes.lenTiquete - num.Length) + num; txtPlanilla += "No. " + num + espacio + dr["DESTINO"].ToString() + nlchar; num = dr["NUMERO_PUESTOS"].ToString(); num = new string(' ', Tiquetes.lenTiquete - num.Length) + num; txtPlanilla += "Vr. " + num + espacio + dr["VALOR_PASAJE"].ToString() + nlchar; txtPlanilla += "Tot. " + new string(' ', Tiquetes.lenTiquete) + espacio + dr["VALOR_TOTAL"].ToString() + nlchar; TotalPasajes += Convert.ToDouble(dr["VALOR_TOTAL"].ToString()); TotalPasajeros += Convert.ToDouble(dr["NUMERO_PUESTOS"].ToString()); TotalIngresos += Convert.ToDouble(dr["VALOR_TOTAL"].ToString()); } txtPlanilla += "" + nlchar; txtPlanilla += "Total Pasajes: " + TotalPasajes.ToString("###,###,##0") + nlchar; //Tiquetes Prepago DataSet dsTiquetesPre = new DataSet(); DBFunctions.Request(dsTiquetesPre, IncludeSchema.NO, "Select cast(right(rtrim(char(MV.NUM_DOCUMENTO))," + AMS.Comercial.Tiquetes.lenTiquete + ") as integer) AS NUM_DOCUMENTO,PC.PCIU_NOMBRE AS DESTINO,MV.VALOR_PASAJE,MV.VALOR_TOTAL " + "FROM DBXSCHEMA.MTIQUETE_VIAJE_PREPAGO MV,DBXSCHEMA.PCIUDAD PC,DBXSCHEMA.MRUTAS MR " + "WHERE MR.MRUT_CODIGO=MV.MRUT_CODIGO AND PC.PCIU_CODIGO=MR.PCIU_CODDES AND MV.MPLA_CODIGO=" + numero + ";"); if (dsTiquetesPre.Tables[0].Rows.Count > 0) { txtPlanilla += "" + nlchar; txtPlanilla += "TIQUETES PREPAGO" + nlchar; txtPlanilla += redChar + "-------- -------" + nlchar; } foreach (DataRow dr in dsTiquetesPre.Tables[0].Rows) { num = dr["NUM_DOCUMENTO"].ToString().Trim(); if (num.Length > Tiquetes.lenTiquete) { num = Convert.ToInt32(num.Substring(num.Length - Tiquetes.lenTiquete)).ToString(); } num = new string('0', Tiquetes.lenTiquete - num.Length) + num; txtPlanilla += "No. " + num + espacio + dr["DESTINO"].ToString() + nlchar; num = new string(' ', Tiquetes.lenTiquete); txtPlanilla += "Vr. " + num + espacio + dr["VALOR_PASAJE"].ToString() + nlchar; txtPlanilla += "Tot. " + num + espacio + dr["VALOR_TOTAL"].ToString() + nlchar; TotalPasajeros += 1; } //Encomiendas DataSet dsEncomiendas = new DataSet(); DBFunctions.Request(dsEncomiendas, IncludeSchema.NO, "Select MV.NUM_DOCUMENTO,PC.PCIU_NOMBRE AS DESTINO,MV.COSTO_ENCOMIENDA,MV.VALOR_TOTAL,MV.DESCRIPCION_CONTENIDO " + "FROM DBXSCHEMA.MENCOMIENDAS MV,DBXSCHEMA.PCIUDAD PC,DBXSCHEMA.MRUTAS MR " + "WHERE MR.MRUT_CODIGO=MV.MRUT_CODIGO AND PC.PCIU_CODIGO=MR.PCIU_CODDES AND MV.MPLA_CODIGO=" + numero + ";"); if (dsEncomiendas.Tables[0].Rows.Count > 0) { txtPlanilla += "" + nlchar; txtPlanilla += "ENCOMIENDAS" + nlchar; txtPlanilla += redChar + "-----------" + nlchar; } foreach (DataRow dr in dsEncomiendas.Tables[0].Rows) { num = dr["NUM_DOCUMENTO"].ToString().Trim(); if (num.Length > Tiquetes.lenTiquete) { num = Convert.ToInt32(num.Substring(num.Length - Tiquetes.lenTiquete)).ToString(); } num = new string('0', Tiquetes.lenTiquete - num.Length) + num; txtPlanilla += "No. " + num + espacio + dr["DESTINO"].ToString() + nlchar; num = new string(' ', Tiquetes.lenTiquete); txtPlanilla += "Vr. " + num + espacio + dr["COSTO_ENCOMIENDA"].ToString() + nlchar; TotalIngresos += Convert.ToDouble(dr["COSTO_ENCOMIENDA"].ToString()); txtPlanilla += "Tot. " + num + espacio + dr["VALOR_TOTAL"].ToString() + nlchar; txtPlanilla += Tiquetes.CortarTexto(espacio + dr["DESCRIPCION_CONTENIDO"].ToString()) + nlchar; } //Giros DataSet dsGiros = new DataSet(); DBFunctions.Request(dsGiros, IncludeSchema.NO, "Select MV.NUM_DOCUMENTO,PC.PCIU_NOMBRE AS DESTINO,MV.COSTO_GIRO,MV.VALOR_GIRO " + "FROM DBXSCHEMA.MGIROS MV,DBXSCHEMA.PCIUDAD PC,DBXSCHEMA.MAGENCIA MA " + "WHERE MA.MAG_CODIGO=MV.MAG_AGENCIA_DESTINO AND PC.PCIU_CODIGO=MA.PCIU_CODIGO AND MV.MPLA_CODIGO=" + numero + ";"); if (dsGiros.Tables[0].Rows.Count > 0) { txtPlanilla += "" + nlchar; txtPlanilla += "GIROS" + nlchar; txtPlanilla += redChar + "-----" + nlchar; } foreach (DataRow dr in dsGiros.Tables[0].Rows) { num = dr["NUM_DOCUMENTO"].ToString().Trim(); if (num.Length > Tiquetes.lenTiquete) { num = Convert.ToInt32(num.Substring(num.Length - Tiquetes.lenTiquete)).ToString(); } num = new string('0', Tiquetes.lenTiquete - num.Length) + num; txtPlanilla += "No. " + num + espacio + dr["DESTINO"].ToString() + nlchar; num = new string(' ', Tiquetes.lenTiquete); txtPlanilla += "Cst. " + num + espacio + dr["COSTO_GIRO"].ToString() + nlchar; txtPlanilla += "Vr. " + num + espacio + dr["VALOR_GIRO"].ToString() + nlchar; TotalIngresos += Convert.ToDouble(dr["COSTO_GIRO"].ToString()); TotalGiros += Convert.ToDouble(dr["VALOR_GIRO"].ToString()); } //Anticipos DataSet dsAnticipos = new DataSet(); DBFunctions.Request(dsAnticipos, IncludeSchema.NO, "Select MV.NUM_DOCUMENTO,TG.NOMBRE AS CONCEPTO,IMPUTACION_CONTABLE,VALOR_TOTAL_AUTORIZADO " + "FROM DBXSCHEMA.MGASTOS_TRANSPORTES MV, DBXSCHEMA.TCONCEPTOS_TRANSPORTES TG " + "WHERE MV.TCON_CODIGO=TG.TCON_CODIGO AND MV.MPLA_CODIGO=" + numero + ";"); if (dsAnticipos.Tables[0].Rows.Count > 0) { txtPlanilla += "" + nlchar; txtPlanilla += "ANTICIPOS-OTROSINGRESOS-EGRESOS" + nlchar; txtPlanilla += redChar + "---------" + nlchar; } foreach (DataRow dr in dsAnticipos.Tables[0].Rows) { num = dr["NUM_DOCUMENTO"].ToString().Trim(); if (num.Length > Tiquetes.lenTiquete) { num = Convert.ToInt32(num.Substring(num.Length - Tiquetes.lenTiquete)).ToString(); } num = new string('0', Tiquetes.lenTiquete - num.Length) + num; txtPlanilla += "No. " + dr["CONCEPTO"].ToString() + nlchar; num = new string(' ', Tiquetes.lenTiquete); txtPlanilla += "Vr. " + num + espacio + dr["VALOR_TOTAL_AUTORIZADO"].ToString() + nlchar; if (dr["IMPUTACION_CONTABLE"].ToString() == "D") { TotalIngresos += Convert.ToDouble(dr["VALOR_TOTAL_AUTORIZADO"].ToString()); } else { TotalEgresos += Convert.ToDouble(dr["VALOR_TOTAL_AUTORIZADO"].ToString()); } } plantilla = plantilla.Replace("<CONTENIDO>", txtPlanilla); //txtPlanilla+=redChar+"INGRESOS: "+Convert.ToDouble(DBFunctions.SingleData("SELECT coalesce(VALOR_INGRESOS,0) FROM DBXSCHEMA.MPLANILLAVIAJE WHERE MPLA_CODIGO="+numero)).ToString("###,###,###")+nlchar; plantilla = plantilla.Replace("<INGRESOS>", TotalIngresos.ToString("###,###,##0")); //txtPlanilla+=redChar+"EGRESOS: "+Convert.ToDouble(DBFunctions.SingleData("SELECT coalesce(VALOR_EGRESOS,0) FROM DBXSCHEMA.MPLANILLAVIAJE WHERE MPLA_CODIGO="+numero)).ToString("###,###,###")+nlchar; plantilla = plantilla.Replace("<EGRESOS>", TotalEgresos.ToString("###,###,##0")); TotalPlanilla = TotalIngresos - TotalEgresos; plantilla = plantilla.Replace("<TOTAL_PLANILLA>", TotalPlanilla.ToString("###,###,##0")); /*txtPlanilla+=redChar+"TOTAL PASAJEROS: "+DBFunctions.SingleData("Select sum(MV.NUMERO_PUESTOS) "+ * "FROM DBXSCHEMA.MTIQUETE_VIAJE MV,DBXSCHEMA.PCIUDAD PC,DBXSCHEMA.MRUTAS MR "+ * "WHERE MR.MRUT_CODIGO=MV.MRUT_CODIGO AND PC.PCIU_CODIGO=MR.PCIU_CODDES AND MV.TEST_CODIGO='V' AND MV.MPLA_CODIGO="+numero+";")+nlchar;*/ plantilla = plantilla.Replace("<PASAJEROS>", TotalPasajeros.ToString()); plantilla = plantilla.Replace("<VALOR_GIROS>", TotalGiros.ToString("###,###,##0")); string ObservacionPlanilla = DBFunctions.SingleData("select OBSERVACION_PLANILLA from dbxschema.mplanilla_observacion where mpla_codigo=" + numero + ";"); int longitud = ObservacionPlanilla.Length; int lineas = longitud / Tiquetes.anchoTiquete; txtPlanilla = ""; int subindice = 0; for (int i = 1; i <= lineas; i++) { txtPlanilla += Tiquetes.ReemplazarTexto(ObservacionPlanilla.Substring(subindice, Tiquetes.anchoTiquete).ToString()) + nlchar; subindice += Tiquetes.anchoTiquete; } if (subindice < longitud) { txtPlanilla += Tiquetes.ReemplazarTexto(ObservacionPlanilla.Substring(subindice, longitud - subindice).ToString()) + nlchar; } plantilla = plantilla.Replace("<OBSERVACIONES>", txtPlanilla); return(plantilla); }