Пример #1
0
def procesoReactiva(fechaInput, fechaRangoUno, fechaRangoDos, archivoXlsxInput,
                    archivoCertificacionXls, archivoComplementoCliente,
                    pathArchivoTxt):

    hora = datetime.datetime.now()
    pathLogSalida = "REACTIVA/{0}log_{1}{2}_{3}.txt".format(
        PATH_LOG, 'REACTIVA', fechaInput, hora.strftime("%Y%m%d%H%M"))
    print("Iniciando proceso REACTIVA...")
    try:
        dataReactivaTxt = leerArchivoReactiva(archivoXlsxInput, fechaInput,
                                              fechaRangoUno, fechaRangoDos,
                                              archivoCertificacionXls,
                                              archivoComplementoCliente)
        logProceso = LOG_PROCESO_REACTIVA

        if dataReactivaTxt:
            for data in dataReactivaTxt:
                salidaTxt = "{0}/{1}{2}.txt".format(pathArchivoTxt,
                                                    data['NOMBRE_ARCHIVO'],
                                                    fechaInput)
                salidaArchivoTxtProactiva(salidaTxt, data['DATA'],
                                          data['ENCABEZADO'])

        if salidaLogTxt(pathLogSalida, logProceso):
            print("Archivo: {0}\{1} Creado!".format(PATH_RAIZ, pathLogSalida))

    except Exception as e:
        print(e)
Пример #2
0
def procesoProactiva(fechaInput, archivoXlsxInput, archivoComplementoCliente,
                     pathArchivoTxt):

    hora = datetime.datetime.now()
    pathLogSalida = "PROACTIVA/{0}log_{1}{2}_{3}.txt".format(
        PATH_LOG, 'PROACTIVA', fechaInput, hora.strftime("%Y%m%d%H%M"))
    print("Iniciando proceso PROACTIVA...")
    try:
        dataProactivaXlsx, encabezadoXlsx, reliquidacionesTxt, encabezadoReliquidacionesTxt = leerArchivoProactiva(
            archivoXlsxInput, fechaInput, archivoComplementoCliente)
        formatoSalidaTxt = PROACTIVA_CONFIG_XLSX['SALIDA_TXT']
        formatoSalidaReliquidaciones = PROACTIVA_CONFIG_XLSX[
            'SALIDA_RELIQUIDACION']
        logProceso = LOG_PROCESO_PROACTIVA

        salidaTxt = "{0}/{1}{2}.txt".format(pathArchivoTxt, formatoSalidaTxt,
                                            fechaInput)
        salidaTxtReliquidaciones = "{0}/{1}{2}.txt".format(
            pathArchivoTxt, formatoSalidaReliquidaciones, fechaInput)

        if dataProactivaXlsx:
            salidaArchivoTxtProactiva(salidaTxt, dataProactivaXlsx,
                                      encabezadoXlsx)
            salidaArchivoTxtProactiva(salidaTxtReliquidaciones,
                                      reliquidacionesTxt,
                                      encabezadoReliquidacionesTxt)

        if salidaLogTxt(pathLogSalida, logProceso):
            print("Archivo: {0}\{1} Creado!".format(PATH_RAIZ, pathLogSalida))

    except Exception as e:
        print(e)
Пример #3
0
def procesoDotacion(fechaInput, pathArchivoTxt):

    procesoInput = 'DOTACION'
    pathLogSalidaDotacion = "CRO/{0}log_{1}{2}_{3}.txt".format(PATH_LOG, procesoInput, fechaInput, hora.strftime("%Y%m%d%H%M"))
    salidaTxtDotacion = "{0}/{1}{2}.txt".format(pathArchivoTxt, DOTACION_CONFIG_XLSX['SALIDA_TXT'], fechaInput)

    print("Iniciando proceso de Archivo DOTACION")
    dataXlsx, encabezadoXlsxDotacion = leerArchivoDotacion(fechaInput)
    try:
        if dataXlsx:
            salidaArchivoTxt(salidaTxtDotacion, dataXlsx, encabezadoXlsxDotacion)

        logProceso = LOG_PROCESO_DOTACION
        if salidaLogTxt(pathLogSalidaDotacion, logProceso):
            print("Archivo: {0}\{1} Creado!".format(PATH_RAIZ, pathLogSalidaDotacion))
    except Exception as e:
        print(e)
Пример #4
0
def procesoAsistencia(fechaInput, archivoXlsxInput, pathArchivoTxt):
    
    procesoInput = 'ASISTENCIA'
    pathLogSalida = "CRO/{0}log_{1}{2}_{3}.txt".format(PATH_LOG, procesoInput, fechaInput, hora.strftime("%Y%m%d%H%M"))

    print("Iniciando Lectura del archivo de {0}...".format(archivoXlsxInput))
    try:
        dataXlsx, encabezadoXlsx = leerArchivoAsistencia(archivoXlsxInput, fechaInput)
        salidaTxtAsistencia = "{0}/{1}{2}.txt".format(pathArchivoTxt, ASISTENCIA_CONFIG_XLSX['SALIDA_TXT'], fechaInput)
        logProceso = LOG_PROCESO_ASISTENCIA

        if dataXlsx:
            salidaArchivoTxt(salidaTxtAsistencia, dataXlsx, encabezadoXlsx)

        if salidaLogTxt(pathLogSalida, logProceso):
            print("Archivo: {0}\{1} Creado!".format(PATH_RAIZ, pathLogSalida))
    except Exception as e:
        print(e)
Пример #5
0
def procesoGenerico(fechaInput, archivoXlsxInput, pathArchivoTxt, procesoInput,
                    *valoresExtraGestion):

    hora = datetime.datetime.now()
    pathLogSalida = "CRO/{0}log_{1}{2}_{3}.txt".format(
        PATH_LOG, procesoInput, fechaInput, hora.strftime("%Y%m%d%H%M"))

    print("Iniciando Lectura del archivo de {0}...".format(archivoXlsxInput))
    try:
        if procesoInput == 'CALIDAD':
            dataXlsx, encabezadoXlsx = leerArchivoCalidad(
                archivoXlsxInput, fechaInput)
            formatoSalidaTxt = CALIDAD_CONFIG_XLSX['SALIDA_TXT']
            logProceso = LOG_PROCESO_CALIDAD
        elif procesoInput == 'CAMPANHA_ESPECIAL':
            dataXlsx, encabezadoXlsx = leerArchivoCampanhasEsp(
                archivoXlsxInput, fechaInput)
            formatoSalidaTxt = CAMPANHAS_CONFIG_XLSX['SALIDA_TXT']
            logProceso = LOG_PROCESO_CAMPANHAS
        elif procesoInput == 'FUGA':
            fechaMesAnterior = formatearFechaMesAnterior(fechaInput)
            dataXlsx, encabezadoXlsx = leerArchivoFuga(
                archivoXlsxInput, fechaMesAnterior.strftime("%Y%m"))
            formatoSalidaTxt = FUGA_CONFIG_XLSX['SALIDA_TXT']
            logProceso = LOG_PROCESO_FUGA
        elif procesoInput == 'GESTION':
            dataXlsx, encabezadoXlsx = leerArchivoGestion(
                archivoXlsxInput, fechaInput, valoresExtraGestion[0],
                valoresExtraGestion[1], valoresExtraGestion[2])
            formatoSalidaTxt = GESTION_CONFIG_XLSX['SALIDA_TXT']
            logProceso = LOG_PROCESO_GESTION

        salidaTxt = "{0}/{1}{2}.txt".format(pathArchivoTxt, formatoSalidaTxt,
                                            fechaInput)

        if dataXlsx:
            salidaArchivoTxt(salidaTxt, dataXlsx, encabezadoXlsx)

        if salidaLogTxt(pathLogSalida, logProceso):
            print("Archivo: {0}\{1} Creado!".format(PATH_RAIZ, pathLogSalida))
    except Exception as e:
        print(e)
Пример #6
0
def main():
    if procesos.get(procesoInput):
        if len(sys.argv) == procesos[procesoInput]["ARGUMENTOS_PROCESO"] + 1:
            if (procesoInput == "FUGA" or procesoInput == "ASISTENCIA"
                    or procesoInput == "CAMPANHA_ESPECIAL"
                    or procesoInput == "CALIDAD"):
                fechaEntrada = str(sys.argv[2])
                archivoXls = str(sys.argv[3])
                pathArchivoTxt = str(sys.argv[4])
                procesoGeneral(procesoInput, fechaEntrada, archivoXls,
                               pathArchivoTxt)

            elif procesoInput == "DOTACION":
                fechaEntrada = str(sys.argv[2])
                pathArchivoTxt = str(sys.argv[3])
                pathLogSalida = ("%slog_%s%s.txt") % (PATH_LOG, procesoInput,
                                                      fechaEntrada)
                dataXlsxDotacion, encabezadoXlsxDotacion = leerArchivoDotacion(
                    fechaEntrada)
                salidaTxt = "%s%s.txt" % (
                    DOTACION_CONFIG_XLSX['SALIDA_TXT'],
                    fechaEntrada,
                )

                if dataXlsxDotacion:
                    archivoTxtOutput = '%s/%s' % (pathArchivoTxt, salidaTxt)
                    salidaArchivoTxt(archivoTxtOutput, dataXlsxDotacion,
                                     encabezadoXlsxDotacion)

                logProceso = LOG_PROCESO_DOTACION
                if salidaLogTxt(pathLogSalida, logProceso):
                    print("Archivo: %s creado !!" % pathLogSalida)

            elif procesoInput == "GESTION":
                fechaEntrada = str(sys.argv[2])
                fechaRangoUno = str(sys.argv[3])
                fechaRangoDos = str(sys.argv[4])
                archivoXls = str(sys.argv[5])
                archivoPropietariosXls = str(sys.argv[6])
                pathSalidaTxt = str(sys.argv[7])

                if os.path.isfile(archivoXls):
                    print("Archivo: %s encontrado." % archivoXls)
                    print("Iniciando Lectura...")
                    pathTxtSalida = PATH_TXT
                    archivoTxt = ("%s/%s%s.txt") % (
                        pathSalidaTxt,
                        GESTION_CONFIG_XLSX["SALIDA_TXT"],
                        fechaEntrada,
                    )
                    pathLogSalida = ("%slog_%s_%s.txt") % (
                        PATH_LOG,
                        procesoInput,
                        fechaEntrada,
                    )
                    dataXlsx, encabezadoXlsx = leerArchivoGestion(
                        archivoXls, fechaEntrada, fechaRangoUno, fechaRangoDos,
                        archivoPropietariosXls)
                    if dataXlsx and salidaArchivoTxt(archivoTxt, dataXlsx,
                                                     encabezadoXlsx):
                        LOG_PROCESO_GESTION.setdefault(
                            "SALIDA_TXT",
                            {
                                len(LOG_PROCESO_GESTION) + 1:
                                "Archivo: %s creado!! " % archivoTxt
                            },
                        )
                    erroresProceso = LOG_PROCESO_GESTION
                    if salidaLogTxt(pathLogSalida, erroresProceso):
                        print("Archivo: %s creado !!" % pathLogSalida)
                else:
                    print("Error: Archivo %s no encontrado" % archivoXls)
        else:
            print("Error: El programa "
                  '"%s"'
                  " necesita %s parametros para su ejecucion" %
                  (procesoInput, procesos[procesoInput]["ARGUMENTOS_PROCESO"]))
    else:
        print('Error: Proceso "' "%s" '" no encontrado' % procesoInput)
Пример #7
0
def procesoGeneral(procesoInput, fechaInput, archivoXlsxInput, pathArchivoTxt):

    if validaFechaInput(fechaInput):

        archivoXlsx = archivoXlsxInput
        pathLogSalida = ("%slog_%s%s.txt") % (PATH_LOG, procesoInput,
                                              fechaInput)

        if os.path.isfile(archivoXlsx):
            print("Archivo: %s encontrado." % archivoXlsx)
            print("Iniciando Lectura...")
            try:
                if procesoInput == "FUGA":
                    mesSiguiente = formatearFechaMesSiguiente(fechaInput)
                    salidaTxt = "%s%s.txt" % (
                        FUGA_CONFIG_XLSX['SALIDA_TXT'],
                        mesSiguiente.strftime("%Y%m"),
                    )
                    dataXlsx, encabezadoXlsx = leerArchivoFuga(
                        archivoXlsx, fechaInput)
                    logProceso = LOG_PROCESO_FUGA

                elif procesoInput == "ASISTENCIA":
                    dataXlsx, encabezadoXlsx = leerArchivoAsistencia(
                        archivoXlsx, fechaInput)
                    salidaTxt = "%s%s.txt" % (
                        ASISTENCIA_CONFIG_XLSX['SALIDA_TXT'],
                        fechaInput,
                    )
                    logProceso = LOG_PROCESO_ASISTENCIA

                elif procesoInput == "CAMPANHA_ESPECIAL":
                    dataXlsx, encabezadoXlsx = leerArchivoCampanhasEsp(
                        archivoXlsx, fechaInput)
                    salidaTxt = "%s%s.txt" % (
                        CAMPANHAS_CONFIG_XLSX['SALIDA_TXT'],
                        fechaInput,
                    )
                    logProceso = LOG_PROCESO_CAMPANHAS

                elif procesoInput == "CALIDAD":
                    dataXlsx, encabezadoXlsx = leerArchivoCalidad(
                        archivoXlsx, fechaInput)
                    salidaTxt = "%s%s.txt" % (
                        CALIDAD_CONFIG_XLSX['SALIDA_TXT'],
                        fechaInput,
                    )
                    logProceso = LOG_PROCESO_CALIDAD

                if dataXlsx:

                    archivoTxtOutput = '%s/%s' % (pathArchivoTxt, salidaTxt)
                    salidaArchivoTxt(archivoTxtOutput, dataXlsx,
                                     encabezadoXlsx)

                if salidaLogTxt(pathLogSalida, logProceso):
                    print("Archivo: %s creado !!" % pathLogSalida)
            except Exception as e:
                print(e)
        else:
            print("Error: Archivo %s no encontrado" % archivoXlsx)