Esempio n. 1
0
def Descarga_Resultado():

    dateini = request.args.get('desde')
    dateend = request.args.get('hasta')
    operacion = request.args.get('modulo_ipdial')

    myRoute = '/BI_Archivos/GOOGLE/Claro/result/' + dateini + '_' + dateend + '_' + operacion + '.csv'
    # myQuery ='SELECT * FROM `contento-bi.telefonia_vistas.claro_fija_cons` where periodo between'+'"'+dateini+'"'+'AND'+'"'+dateend+'"'+'AND'+'"'operacion'"''
    myQuery = 'SELECT * FROM `contento-bi.telefonia_vistas.claro_fija_cons` where (periodo between' + '"' + dateini + '"' + 'AND' + '"' + dateend + '"' + ') AND ipdial_code =' + '"' + operacion + '"'

    print(myQuery)
    myHeader = [
        "id_call", "periodo", "agent_identification", "agent_name",
        "id_customer", "nombre_cliente", "id_campaing", "date",
        "hora_inicio_llamada", "tel_number", "duration", "typing_code",
        "descri__typing_code", "comment", "captura1", "captura2", "captura3",
        "captura4", "opt1", "opt2", "opt3", "opt4", "opt5", "opt6", "opt7",
        "opt8", "opt9", "opt10", "opt11", "opt12", "RANK", "ipdial_code",
        "TIpo", "apellido", "tipoid", "edad", "sexo", "pais", "departamento",
        "ciudad", "zona", "direccion", "fecha_captura", "hora_captura",
        "fecha_permanencia", "direccion_alterna", "tel_alterno",
        "ciudad_captura", "nombre", "customer_phone", "id_captura"
    ]

    return descargas.descargar_csv(myRoute, myQuery, myHeader)
Esempio n. 2
0
def Descarga_Resultado_Consolidado():

    dateini = request.args.get('mes_inicio')
    dateend = request.args.get('mes_final')

    if dateini is None:
        dateini = ""
    else:
        dateini = dateini

    if dateend is None:
        dateend = ""
    else:
        dateend = dateend
    # operacion= request.args.get('modulo_ipdial')

    myRoute = '/BI_Archivos/GOOGLE/Liberty/result_consolidado/' "gestion_consolidada" '.csv'
    # myQuery ='SELECT * FROM `contento-bi.telefonia_vistas.claro_fija_cons` where periodo between'+'"'+dateini+'"'+'AND'+'"'+dateend+'"'+'AND'+'"'operacion'"''

    if dateini == "":
        myQuery = 'SELECT * FROM `contento-bi.Liberty.Exportable_Liberty_Consolidado`'

    else:
        myQuery = 'SELECT * FROM `contento-bi.Liberty.Exportable_Liberty_Consolidado`where mes_base between' + '"' + dateini + '"' + 'AND' + '"' + dateend + '"'

    print(myQuery)
    myHeader = [
        "id_customer", "nombre", "cuenta_gestion", "cuenta_base",
        "codigo_tipificacion", "tel_number", "mes_base",
        "fecha_getion_efectiva", "hora_getion_efectiva", "campana",
        "agent_name", "wpc", "rpc", "sin_contacto", "source", "intentos",
        "gestionable", "ipdial_code", "producto"
    ]

    return descargas.descargar_csv(myRoute, myQuery, myHeader)
Esempio n. 3
0
def Descarga_Encuesta():

    dateini = request.args.get('desde')
    dateend = request.args.get('hasta')

    myRoute = '/BI_Archivos/GOOGLE/Mobility/Perfil_Cliente/' + dateini + '_' + dateend + '.csv'
    myQuery = 'SELECT * FROM `contento-bi.Auteco_Mobility.Informe_Perfil_Cliente_Agent_Script_Completo`  where Fecha_Encuesta between' + '"' + dateini + '"' + 'AND' + '"' + dateend + '"'
    myHeader = [
        "BASE", "ESTADO", "ANOCREACION", "MESCREACION", "FECHACREACION",
        "TERCEROPROPIETARIO", "NITPROPIETARIO", "DIRECCIONPROPIETARIO",
        "CIUDAD", "DEPARTAMENTO", "TELEFONOFIJO", "CELULAR", "OTROTELEFONO",
        "EMAIL", "AUTORIZAHABEASDATAPROPIETARIO", "CHASISSERIE", "MODELO",
        "MARCA", "LINEA", "RAZONSOCIALESTABLECIMIENTO", "MODELO_LINEA",
        "UNIDAD_DE_NEGOCIO", "CATEGORIA", "SUBCATEGORIA", "SEGMENTO",
        "SUBSEGMENTO", "MARCA2", "Fecha_Encuesta", "Hora_Exacta", "Hora",
        "Responde_Encuesta",
        "Podriamos_Comunicarnos_Con_Usted_En_Otro_Horario", "Motivo",
        "Segun_Genero_Es_Femenino_O_Masculino",
        "Es_Usted_El_Propietario_Del_Vehiculo", "Cedula_Cliente",
        "Es_Usted_El_Usuario_Permanente_Del_Vehiculo", "De_Manera_General",
        "Con_Que_Frecuencia_Conduce_El_Vehiculo",
        "Cual_Es_El_Uso_Principal_Que_Le_Da_A_Su_Vehiculo",
        "Herramienta_Trabajo", "Otra_Herramienta_Trabajo",
        "Cual_Es_La_Actividad_Economica_Principal_Que_Usted_Desempena",
        "Por_Favor_Me_Indica_Su_Fecha_De_Nacimiento", "Edad", "Rango_Edad",
        "Cual_Es_Su_Estado_Civil",
        "Cual_Es_El_Maximo_Nivel_De_Estudios_Que_Ha_Alcanzado_Hasta_El_Momento",
        "Cual_Es_El_Estrato_Del_Lugar_Donde_Vives", "Tienes_Hijos",
        "Cuantas_Personas_Dependen_Economicamente_De_Usted",
        "Cual_Es_Su_Nivel_De_Ingresos",
        "Realizo_Algun_Prestamo_Para_La_Compra",
        "En_Que_Entidad_Solicito_El_Prestamo", "Otra_Entidad_Categoria",
        "Cual_Fue_La_Entidad_Con_La_Cual_Realizo_El_Prestamo", "Otra_Entidad",
        "Quien_Le_Ayudo_A_Tomar_La_Decision_De_La_Marca_Y_Modelo_Que_Deberia_Comprar",
        "Otro_Ayuda", "Tenia_Un_Vehiculo_Antes_De_Adquirir_Este_Cual",
        "Categoria_Vehiculo", "Cuantas_Ha_Tenido_Antes",
        "Hace_Cuanto_Tiempo_La_Habia_Adquirido", "Categoria_Marca",
        "Cual_Era_La_Marca", "Recuerda_La_Referencia", "Era_Nuevo_O_Usado",
        "En_Caso_De_Comprar__En_El_Futuro_Cual_Le_Gustaria_Comprar",
        "Marca_Compra",
        "Usa_Y_Conduce_Otro_Vehiculo_Adicional_Al_Que_Compro_Con_Nosotros",
        "Cual_Usa", "Cedula_Cliente3", "Usa_Facebook", "Usa_Instragram",
        "Usa_Twitter", "Usa_Youtube", "Usa_Whatsapp", "No_Usa_Ninguna",
        "Calificacion_Calidad_", "Calificacion_El_Diseno_",
        "Calificacion_Garantia_Y_Respaldo_", "Calificacion_Tecnologia__",
        "Calificacion_Desempeno_", "Calificacion_Asesoria__Servicio_",
        "Calificacion_Ubicacion_O_Cercania_Del_Punto_De_Venta__",
        "Calificacion_Opciones_De_Financiacion_", "Calificacion_Precio_",
        "Calificacion_Los_Descuentos_", "Calificacion_Recomendacion",
        "Id_Llamada", "Asesor"
    ]

    return descargas.descargar_csv(myRoute, myQuery, myHeader)
Esempio n. 4
0
def Descarga_Encuesta():

    dateini = request.args.get('desde')
    dateend = request.args.get('hasta')

    myRoute = '/BI_Archivos/GOOGLE/Sensus/Aseguramiento/Dagricola/Descargas/' + dateini + '_' + dateend + '.csv'
    myQuery = 'SELECT * FROM `contento-bi.sensus.Dagrciola_admin`  where fecha between' + '"' + dateini + '"' + 'AND' + '"' + dateend + '"'
    myHeader = [
        "Unico", "Nombre", "Fecha", "Nombre_gestor", "Cartera",
        "Nombre_evaluador", "PEC", "Telefono_cliente", "Cierre_de_la_llamada",
        "Evaluacion_del_Saludo", "Evaluacion_negociacion", "Aspectos_mejora",
        "Aspectos_positivos", "Observaciones"
    ]

    return descargas.descargar_csv(myRoute, myQuery, myHeader)
Esempio n. 5
0
def DescargaDatosAgentScript():

    dateini = request.args.get('desde')
    dateend = request.args.get('hasta')

    myRoute = '/BI_Archivos/GOOGLE/Ucc/Tipificador/' + dateini + '_' + dateend + '.csv'
    myQuery = 'SELECT * FROM `contento-bi.telefonia_vistas.Vista_Agent_Script_UCC` WHERE FECHA BETWEEN' + '"' + dateini + '"' + 'AND' + '"' + dateend + '"'
    myHeader = [
        "FECHA", "HORA", "ID_AGENTE", "NOMBRE", "INTERES", "CANAL", "CEDULA",
        "CAMPUS", "TIPO_PROGRAMA", "PROGRAMA", "CELULAR", "FIJO", "EMAIL",
        "CODIGO_1", "CODIGO_2", "CODIGO_3", "CODIGO_2A", "CODIGO_3A",
        "CODIGO_2B", "CODIGO_3B", "ID_LLAMADA"
    ]

    return descargas.descargar_csv(myRoute, myQuery, myHeader)
Esempio n. 6
0
def Descarga_Encuesta():

    dateini = request.args.get('desde')
    dateend = request.args.get('hasta')

    myRoute = '/BI_Archivos/GOOGLE/Claro/result/' + dateini + '_' + dateend + '.csv'
    myQuery = 'SELECT * FROM `contento-bi.telefonia_vistas.claro_fija_cons` where periodo between' + '"' + dateini + '"' + 'AND' + '"' + dateend + '"'
    myHeader = [
        "id_call", "periodo", "agent_identification", "agent_name",
        "id_customer", "nombre_cliente", "id_campaing", "date",
        "final_llamada", "tel_number", "duration", "typing_code",
        "descri_typing_code", "comment", "captura1", "captura2", "captura3",
        "captura4", "opt1", "opt2", "opt3", "opt4", "opt5", "opt6", "opt7",
        "opt8", "opt9", "opt10", "opt11", "opt12", "RANK"
    ]

    return descargas.descargar_csv(myRoute, myQuery, myHeader)
Esempio n. 7
0
def Descarga_Resultado():

    dateini = request.args.get('desde')
    dateend = request.args.get('hasta')
    operacion = request.args.get('modulo_ipdial')

    myRoute = '/BI_Archivos/GOOGLE/Metlife/result/' + dateini + '_' + dateend + '_' + operacion + '.csv'
    # myQuery ='SELECT * FROM `contento-bi.telefonia_vistas.claro_fija_cons` where periodo between'+'"'+dateini+'"'+'AND'+'"'+dateend+'"'+'AND'+'"'operacion'"''
    myQuery = 'SELECT * FROM `contento-bi.MetLife.Exportable_Duraciones` where (date between' + '"' + dateini + '"' + 'AND' + '"' + dateend + '"' + ') AND ipdial_code =' + '"' + operacion + '"'

    print(myQuery)
    myHeader = [
        "id_call", "id_customer", "date", "hora_llamada", "id_agent",
        "cod_act", "duration", "ipdial_code"
    ]

    return descargas.descargar_csv(myRoute, myQuery, myHeader)
Esempio n. 8
0
def Descarga_Resultado_completo():

    dateini = request.args.get('desde')
    dateend = request.args.get('hasta')
    ##operacion= request.args.get('modulo_ipdial')

    myRoute = '/BI_Archivos/GOOGLE/Liberty/result_diario_gestiones_completas/' + dateini + '_' + dateend + '.csv'
    # myQuery ='SELECT * FROM `contento-bi.telefonia_vistas.claro_fija_cons` where periodo between'+'"'+dateini+'"'+'AND'+'"'+dateend+'"'+'AND'+'"'operacion'"''
    myQuery = 'SELECT * FROM `contento-bi.Liberty.Exportable_Liberty_Gestiones_Totales` where Fecha_Gestion between' + '"' + dateini + '"' + 'AND' + '"' + dateend + '"'
    print(myQuery)
    myHeader = [
        "Id", "Nombre", "Cuenta_Gestiones", "Base", "Codigo_Tipificacion",
        "duration", "tel_number", "Fecha_Gestion", "Campana", "duration",
        "Agent_name", "wpc", "rpc", "sin_contacto", "hit", "Source",
        "Intentos", "Gestionable", "Ipdial_code", "Producto", "RANK"
    ]

    return descargas.descargar_csv(myRoute, myQuery, myHeader)
Esempio n. 9
0
def Descarga_Resultado_Consolidado_pichincha():

    ##dateini= request.args.get('desde')
    ## dateend= request.args.get('hasta')
    ##operacion= request.args.get('modulo_ipdial')

    myRoute = '/BI_Archivos/GOOGLE/Liberty/result_consolidado/' "gestion_consolidada_pichincha" '.csv'
    # myQuery ='SELECT * FROM `contento-bi.telefonia_vistas.claro_fija_cons` where periodo between'+'"'+dateini+'"'+'AND'+'"'+dateend+'"'+'AND'+'"'operacion'"''
    myQuery = 'SELECT * FROM `contento-bi.Liberty.Exportable_pichincha_bdo_consolidado`'

    print(myQuery)
    myHeader = [
        "id_customer", "placa", "nombre", "mes_de_campana", "cuenta_gestion",
        "cuenta_base", "codigo_tipificacion", "fecha_gestion", "campana",
        "agent_name", "wpc", "rpc", "sin_contacto", "hit", "source",
        "barridos", "gestionable", "ipdial_code", "producto"
    ]

    return descargas.descargar_csv(myRoute, myQuery, myHeader)
Esempio n. 10
0
def Descarga_Resultado_diario_cafam():

    dateini = request.args.get('desde')
    dateend = request.args.get('hasta')
    ##operacion= request.args.get('modulo_ipdial')

    myRoute = '/BI_Archivos/GOOGLE/Cafam/result_diario/' + dateini + '_' + dateend + '_' + "cafam" + '.csv'
    # myQuery ='SELECT * FROM `contento-bi.telefonia_vistas.claro_fija_cons` where periodo between'+'"'+dateini+'"'+'AND'+'"'+dateend+'"'+'AND'+'"'operacion'"''
    myQuery = 'SELECT * FROM `contento-bi.cafam.Exportable_cafam_diario` where Fecha_Gestion between' + '"' + dateini + '"' + 'AND' + '"' + dateend + '"'

    print(myQuery)
    myHeader = [
        "id_customer", "nombre", "cuenta_gestion", "cuenta_base",
        "codigo_tipificacion", "fecha_gestion", "campana", "agent_name", "wpc",
        "rpc", "sin_contacto", "hit", "source", "intentos", "gestionable",
        "ipdial_code", "producto"
    ]

    return descargas.descargar_csv(myRoute, myQuery, myHeader)
def Metlife_Rep_descarga_Base():

    operacion = request.args.get('operacion')
    idcampana = request.args.get('idcampana')
    dateini = request.args.get('desde')
    dateend = request.args.get('hasta')

    myRoute = '/BI_Archivos/GOOGLE/Metlife/Bases_Wolkvox/' + operacion + '_' + idcampana + '_' + dateini + '_' + dateend + '.csv'
    myQuery = 'SELECT * FROM `contento-bi.MetLife.Descarga_Bases_Wolkvox` where (Fecha_gestion between' + '"' + dateini + '"' + 'AND' + '"' + dateend + '"' + ') AND id_campana = ' + '"' + idcampana + '"' + 'AND ipdial_code =' + '"' + operacion + '"'
    myHeader = [
        "nombre_cliente", "apellido_cliente", "tipo_doc", "id_doc_cliente",
        "sexo", "pais", "departamento", "ciudad", "zona", "direccion", "opt1",
        "opt2", "opt3", "opt4", "opt5", "opt6", "opt7", "opt8", "opt9",
        "opt10", "opt11", "opt12", "tel1", "tel2", "tel3", "tel4", "tel5",
        "tel6", "tel7", "tel8", "tel9", "tel10", "tel_extra", "id_agent",
        "fecha", "llamadas", "id_call", "rellamada", "resultado", "cod_rslt1",
        "cod_rslt2", "rellamada_count", "id_cliente", "ipdial_code",
        "rand_token", "hora", "id_campana", "fecha_cargue", "Fecha_gestion"
    ]

    return descargas.descargar_csv(myRoute, myQuery, myHeader)
Esempio n. 12
0
def x():

    # Query de ejecucion de los campos calculados:
    # Defino la ruta de descarga.
    myRoute = '/BI_Archivos/GOOGLE/Refinancia/BD_Calculada/Descargas/Base_Calculada.csv'
    # Defino la consulta SQL a ejecutar en BigQuery.
    myQuery = 'SELECT * FROM `contento-bi.refinancia.BD_Calculada_QRY_Consolidado`'
    # Defino los titulos de los campos resultantes de la ejecucion del query.
    myHeader = [
        "FECHA", "IDENTIFICACION", "CLIENTE", "ID_CLIENTE", "PORTAFOLIO",
        "CIUDADDEPTO", "PERFIL", "ESTCLIENTE", "ESTCOMERCIAL", "CAPITAL",
        "MONTOTOTAL", "NO_CRE", "SCORE", "DIAS_MORA", "TOP", "CUANTIA_RANGOS",
        "E_ASIGNACION", "MEJOR_COD_MES_ACTUAL", "MEJOR_COD_MES_ANTERIOR",
        "MEJOR_COD_ULT_TRIMESTRE", "PAGOS", "TEL1", "TEL2", "TEL3", "TEL4",
        "TEL5", "TEL6", "TEL7", "TEL8", "TEL9", "TEL10",
        "FECHA_GENERACION_ULT_PROMESA", "FECHA_COMPROMISO_ULT_PROMESA",
        "VALOR_COMPROMISO_ULT_PROMESA", "VALOR_TOTAL_PAGADO_ULT_PROMESA",
        "ESTADO_ULT_PROMESA"
    ]

    return descargas.descargar_csv(myRoute, myQuery, myHeader)
def archivos_masivos():

    response = {}
    response["code"] = 400
    response["description"] = "No se encontraron ficheros"
    response["status"] = False

    local_route = fileserver_baseroute + "/BI_Archivos/GOOGLE/Bancolombia_Cast/Masivos/"

    # Definicion de variables insumo.
    tipo = ['Predictivo', 'SMS', 'TTS']
    fecha_ini = [11, 4, 4]
    fecha_fin = [21, 14, 14]
    my_storage = ['info-predictivo', 'info-sms', 'info-tts']
    my_table = ['predictivo', 'sms', 'tts']
    my_pipeline = [
        bancolombia_castigada_predictivo_beam, bancolombia_castigada_sms_beam,
        bancolombia_castigada_tts_beam
    ]
    my_dates_process = ['', '', '']
    my_files = [[], [], []]  # Almacena las fechas de los archivos.
    my_query = ['QRY_MASIVO_PREDICTIVO', 'QRY_MASIVO_SMS', 'QRY_MASIVO_TTS']

    # Hace limpieza de las 3 tablas completamente una sola vez, y no por cada archivo. Esto para prevenir el streaming buffer.
    for i in [0, 1, 2]:
        deleteQuery = "DELETE FROM `contento-bi.bancolombia_castigada." + my_table[
            i] + "` WHERE 1 = 1"
        client = bigquery.Client(
        )  #Eliminamos todos los registros que contengan esa fecha
        query_job = client.query(deleteQuery)
        query_job.result(
        )  # Corremos el job de eliminacion de datos de BigQuery

    # Limpia la tabla masivos con los resultados finales.
    for i in [0, 1, 2]:
        my_route = local_route + tipo[i] + '/'
        archivos = os.listdir(my_route)
        myCont = 0
        for archivo in archivos:
            if archivo.endswith(".csv"):
                mifecha = archivo[
                    fecha_ini[i]:
                    fecha_fin[i]]  # Almacena las fechas de los archivos.
                my_files[i].append(mifecha)
                if myCont == 0:
                    my_dates_process[
                        i] = my_dates_process[i] + "'" + mifecha + "'"
                else:
                    my_dates_process[
                        i] = my_dates_process[i] + ",'" + mifecha + "'"
                myCont += 1

    deleteQuery_1 = "DELETE FROM `contento-bi.bancolombia_castigada.masivos` WHERE TIPO = 'Predictivo' AND FECHA IN (" + my_dates_process[
        0] + ") OR TIPO = 'SMS' AND FECHA IN (" + my_dates_process[
            1] + ") OR TIPO = 'TTS' AND FECHA IN (" + my_dates_process[2] + ")"
    client_1 = bigquery.Client()
    query_job_1 = client_1.query(deleteQuery_1)
    query_job_1.result()

    # Inicia el proceso de carga de la información para los 3 tipos de masivos (Predictivo, SMS y TTS)
    for i in [0, 1, 2]:
        my_route = local_route + tipo[i] + '/'

        archivos = os.listdir(my_route)
        for archivo in archivos:
            if archivo.endswith(".csv"):
                mifecha = archivo[fecha_ini[i]:fecha_fin[i]]

                storage_client = storage.Client()
                bucket = storage_client.get_bucket('ct-bancolombia_castigada')

                # Subir fichero a Cloud Storage antes de enviarlo a procesar a Dataflow
                blob = bucket.blob(my_storage[i] + '/' + archivo)
                blob.upload_from_filename(my_route + archivo)

                # Una vez subido el fichero a Cloud Storage procedemos a eliminar los registros de BigQuery
                # deleteQuery = "DELETE FROM `contento-bi.bancolombia_castigada." + my_table[i] + "` WHERE fecha = '" + mifecha + "'"

                # Terminada la eliminacion de BigQuery y la subida a Cloud Storage corremos el Job
                mensaje = my_pipeline[i].run(
                    'gs://ct-bancolombia_castigada/' + my_storage[i] + '/' +
                    archivo, mifecha)
                if mensaje == "Corrio Full HD":
                    move(my_route + archivo,
                         my_route + "Procesados/" + archivo)
                    response["code"] = 200
                    response["description"] = "Se realizo la peticion Full HD"
                    response["status"] = True

                    time.sleep(
                        30
                    )  # Le da tiempo al Storage, para que lleve la informacion a la tabla seguimiento en BigQuery.

                    # Guarda la información ya procesada en Tabla General Masivos.
                    insertQuery_1 = "INSERT INTO `contento-bi.bancolombia_castigada.masivos` (SELECT '" + mifecha + "','" + tipo[
                        i] + "', LISTO FROM `contento-bi.bancolombia_castigada." + my_query[
                            i] + "`)"
                    client_11 = bigquery.Client()
                    query_job_11 = client_11.query(insertQuery_1)
                    query_job_11.result()

    # Inicia el proceso de descarga de la Información ya procesada:
    for i in [0, 1, 2]:
        for my_file in my_files[i]:
            # Defino la ruta de descarga (Sin incluir '//192.168.20.87').
            download_route = '/BI_Archivos/GOOGLE/Bancolombia_Cast/Masivos/Exportes/' + tipo[
                i] + '_' + my_file + '.csv'
            # Defino la consulta SQL a ejecutar en BigQuery.
            export_query = "SELECT INFO FROM `contento-bi.bancolombia_castigada.masivos` WHERE TIPO = '" + tipo[
                i] + "' AND FECHA = '" + my_file + "'"
            # Defino los títulos de los campos resultantes de la ejecución del query.
            header = ['INFO']

            descargas.descargar_csv(
                download_route, export_query,
                header)  # Hago el llamado a la función de descarga.

    return jsonify(response), response["code"]
def archivos_Prejuridico_castigada():

    response = {}
    response["code"] = 400
    response["description"] = "No se encontraron ficheros"
    response["status"] = False

    local_route = fileserver_baseroute + "/BI_Archivos/GOOGLE/Bancolombia_Cast/Prejuridico/"
    archivos = os.listdir(local_route)
    for archivo in archivos:
        if archivo.endswith(".csv"):
            mifecha = archivo[29:37]

            storage_client = storage.Client()
            bucket = storage_client.get_bucket('ct-bancolombia_castigada')

            # Subir fichero a Cloud Storage antes de enviarlo a procesar a Dataflow
            blob = bucket.blob('info-prejuridico/' + archivo)
            blob.upload_from_filename(local_route + archivo)

            # Una vez subido el fichero a Cloud Storage procedemos a eliminar los registros de BigQuery
            deleteQuery = "DELETE FROM `contento-bi.bancolombia_castigada.prejuridico` WHERE fecha = '" + mifecha + "'"

            #Primero eliminamos todos los registros que contengan esa fecha
            client = bigquery.Client()
            query_job = client.query(deleteQuery)

            #result = query_job.result()
            query_job.result(
            )  # Corremos el job de eliminacion de datos de BigQuery

            # Terminada la eliminacion de BigQuery y la subida a Cloud Storage corremos el Job
            mensaje = bancolombia_castigada_prejuridico_beam.run(
                'gs://ct-bancolombia_castigada/info-prejuridico/' + archivo,
                mifecha)
            if mensaje == "Corrio Full HD":
                move(
                    local_route + archivo, fileserver_baseroute +
                    "/BI_Archivos/GOOGLE/Bancolombia_Cast/Prejuridico/Procesados/"
                    + archivo)
                response["code"] = 200
                response["description"] = "Se realizo la peticion Full HD"
                response["status"] = True

                time.sleep(
                    210
                )  # Le da tiempo al Storage, para que lleve la informacion a la tabla prejuridico en BigQuery.

                # Inicia proceso de calculo para Fecha de Promesa Ajustada.
                # ----------------------------------------------------------------------------------------------------------------
                # Busqueda de Fecha Promesa Ajustada (UPDATE):
                deleteQuery_2 = "UPDATE `contento-bi.bancolombia_castigada.ajuste_promesas` A SET A.MAX_FECHA_PROMESA_AJUSTADA = CAST(B.FECHA_PROMESA AS DATE) FROM `contento-bi.bancolombia_castigada.QRY_CALCULATE_MAX_DATE_HIT_UP` B WHERE A.NIT = B.NIT"
                client_2 = bigquery.Client()
                query_job_2 = client_2.query(deleteQuery_2)
                query_job_2.result()

                time.sleep(30)

                # Busqueda de Fecha Promesa Ajustada (INSERT):
                deleteQuery_3 = "INSERT INTO `contento-bi.bancolombia_castigada.ajuste_promesas` (NIT, MAX_FECHA_PROMESA_AJUSTADA)	(SELECT NIT, CAST(FECHA_PROMESA AS DATE) FROM `contento-bi.bancolombia_castigada.QRY_CALCULATE_MAX_DATE_HIT_IN`)"
                client_3 = bigquery.Client()
                query_job_3 = client_3.query(deleteQuery_3)
                query_job_3.result()
                # ----------------------------------------------------------------------------------------------------------------

                time.sleep(15)

                # Query de ejecución de los campos calculados:
                # Defino la ruta de descarga.
                route = '/BI_Archivos/GOOGLE/Bancolombia_Cast/Base_marcada/Base Calculada/Bancolombia_Cast_Base_Calculada.csv'
                # Defino la consulta SQL a ejecutar en BigQuery.
                query = 'SELECT * FROM `contento-bi.bancolombia_castigada.QRY_CALCULATE_BM`'
                # Defino los títulos de los campos resultantes de la ejecución del query.
                header = [
                    "IDKEY", "FECHA", "CONSECUTIVO_DOCUMENTO_DEUDOR",
                    "VALOR_CUOTA", "NIT", "NOMBRES", "NUMERO_DOCUMENTO",
                    "TIPO_PRODUCTO", "FECHA_ACTUALIZACION_PRIORIZACION",
                    "FECHA_PAGO_CUOTA", "NOMBRE_DE_PRODUCTO",
                    "FECHA_DE_PERFECCIONAMIENTO", "FECHA_VENCIMIENTO_DEF",
                    "NUMERO_CUOTAS", "CUOTAS_EN_MORA",
                    "DIA_DE_VENCIMIENTO_DE_CUOTA", "VALOR_OBLIGACION",
                    "VALOR_VENCIDO", "SALDO_ACTIVO", "SALDO_ORDEN", "REGIONAL",
                    "CIUDAD", "GRABADOR", "CODIGO_AGENTE", "NOMBRE_ASESOR",
                    "CODIGO_ABOGADO", "NOMBRE_ABOGADO",
                    "FECHA_ULTIMA_GESTION_PREJURIDICA",
                    "ULTIMO_CODIGO_DE_GESTION_PARALELO",
                    "ULTIMO_CODIGO_DE_GESTION_PREJURIDICO",
                    "DESCRIPCION_SUBSECTOR", "DESCRIPCION_CODIGO_SEGMENTO",
                    "DESC_ULTIMO_CODIGO_DE_GESTION_PREJURIDICO",
                    "DESCRIPCION_SUBSEGMENTO", "DESCRIPCION_SECTOR",
                    "DESCRIPCION_CODIGO_CIIU",
                    "CODIGO_ANTERIOR_DE_GESTION_PREJURIDICO",
                    "DESC_CODIGO_ANTERIOR_DE_GESTION_PREJURIDICO",
                    "FECHA_ULTIMA_GESTION_JURIDICA",
                    "ULTIMA_FECHA_DE_ACTUACION_JURIDICA", "ULTIMA_FECHA_PAGO",
                    "EJEC_ULTIMO_CODIGO_DE_GESTION_JURIDICO",
                    "DESC_ULTIMO_CODIGO_DE_GESTION_JURIDICO", "CANT_OBLIG",
                    "CLUSTER_PERSONA", "DIAS_MORA", "PAIS_RESIDENCIA",
                    "TIPO_DE_CARTERA", "CALIFICACION", "RADICACION",
                    "ESTADO_DE_LA_OBLIGACION", "FONDO_NACIONAL_GARANTIAS",
                    "REGION", "SEGMENTO", "CODIGO_SEGMENTO",
                    "FECHA_IMPORTACION", "NIVEL_DE_RIESGO",
                    "FECHA_ULTIMA_FACTURACION", "SUBSEGMENTO",
                    "TITULAR_UNIVERSAL", "NEGOCIO_TITUTULARIZADO",
                    "SECTOR_ECONOMICO", "PROFESION", "CAUSAL", "OCUPACION",
                    "CUADRANTE", "FECHA_TRASLADO_PARA_COBRO",
                    "DESC_CODIGO_DE_GESTION_VISITA", "FECHA_GRABACION_VISITA",
                    "ENDEUDAMIENTO", "CALIFICACION_REAL", "FECHA_PROMESA",
                    "RED", "ESTADO_NEGOCIACION", "TIPO_CLIENTE_SUFI", "CLASE",
                    "FRANQUICIA", "SALDO_CAPITAL_PESOS",
                    "SALDO_INTERESES_PESOS",
                    "PROBABILIDAD_DE_PROPENSION_DE_PAGO", "PRIORIZACION_FINAL",
                    "PRIORIZACION_POR_CLIENTE", "GRUPO_DE_PRIORIZACION",
                    "FECHA_PROMESA_V2", "FECHA_PROMESA_AJUSTADA",
                    "DIAS_DESDE_TRASLADO", "DIAS_SIN_COMPROMISO",
                    "DIAS_SIN_PAGO", "DIAS_SIN_RPC", "FRANJA_MORA",
                    "RANGO_PROP_TRASLADO", "RANGO_PROP_PAGO",
                    "RANGO_PROP_CONTACTO", "RANGO_PROP_ACUERDO", "DESFASE",
                    "EQUIPO", "MEJOR_DIA", "MEJOR_HORA", "LOTE",
                    "VUELTAS_REQUERIDAS", "VUELTAS_REALES", "GRABADOR_AJUSTADO"
                ]

                b = descargas.descargar_csv(
                    route, query,
                    header)  # Hago el llamado a la función de descarga.

    return jsonify(response), response["code"]