def __init__(self, datos):
        self.datos_conexion = datos

        arch = archivo("informe_venta_nota_debitos")
        self.obj = arch.get_object

        self.obj("ventana").set_position(1)
        self.obj("ventana").set_title("Informes de Notas de Débito por Ventas")
        self.obj("ventana").set_modal(True)

        self.txt_nro_timb = self.obj("txt_timb")
        self.txt_nro_est, self.txt_nro_cja = self.obj("txt_estab"), self.obj(
            "txt_caja")

        self.idTipoDoc = self.idTotal = -1
        self.txt_cod_per, self.txt_rzn_scl = self.obj(
            "txt_cliente_01"), self.obj("txt_cliente_02")
        self.txt_nro_doc, self.cmb_tip_doc = self.obj(
            "txt_cliente_03"), self.obj("cmb_cliente_doc")
        self.txt_cod_vnd, self.txt_nom_vnd = self.obj(
            "txt_vendedor_01"), self.obj("txt_vendedor_02")

        self.obj("label14").set_visible(False)
        self.obj("txt_total_fin").set_visible(False)

        self.config_combo_total()
        combos_config(self.datos_conexion, self.obj("cmb_cliente_doc"),
                      "tipodocumentos", "idTipoDocumento")
        arch.connect_signals(self)

        self.on_chk_toggled(0)
        self.obj("ventana").show()
Esempio n. 2
0
    def __init__(self, permisos):
        # Verificar los permisos del Usuario (ventana principal)
        self.verificar_permisos = permisos

        arch = archivo("acceso")
        self.obj = arch.get_object

        vent = self.obj("ventana")
        vent.set_title("Acceso de Usuarios")
        vent.set_position(1)
        vent.set_modal(True)
        vent.show()

        self.obj("btn_entrar").set_sensitive(False)
        self.entrar = False

        self.obj("txt_alias").set_max_length(16)
        self.obj("txt_clave").set_max_length(50)
        self.obj("txt_alias").set_text("")
        self.obj("txt_clave").set_text("")
        self.obj("txt_alias").grab_focus()

        arch.connect_signals({
            'verificacion': self.verificacion,
            'on_btn_entrar_clicked': self.on_btn_entrar_clicked,
            'on_btn_salir_clicked': self.on_btn_salir_clicked,
            'on_ventana_hide': self.on_btn_salir_clicked
        })
    def __init__(self, datos):
        self.datos_conexion = datos

        arch = archivo("informe_compra_nota_creditos")
        self.obj = arch.get_object

        self.obj("ventana").set_position(1)
        self.obj("ventana").set_title(
            "Informes de Notas de Crédito por Compras")
        self.obj("ventana").set_modal(True)

        self.idTipoDoc = self.idTotal = -1
        self.txt_cod_per, self.txt_rzn_scl = self.obj("txt_prov_01"), self.obj(
            "txt_prov_02")
        self.txt_nro_doc, self.cmb_tip_doc = self.obj("txt_prov_03"), self.obj(
            "cmb_prov_doc")

        self.obj("label7").set_visible(False)
        self.obj("txt_total_fin").set_visible(False)

        self.config_combo_total()
        combos_config(self.datos_conexion, self.obj("cmb_prov_doc"),
                      "tipodocumentos", "idTipoDocumento")
        arch.connect_signals(self)

        self.on_chk_toggled(0)
        self.obj("ventana").show()
    def __init__(self, edit, origen):
        self.editando = edit
        self.nav = origen

        arch = Op.archivo("usuarios_grupos")
        self.obj = arch.get_object

        self.obj("ventana").set_default_size(700, 500)
        self.obj("ventana").set_position(1)
        self.obj("ventana").set_modal(True)

        edit = "Creando" if not self.editando else "Editando"
        self.obj("ventana").set_title(edit + " Registro del Grupo de Usuarios")

        self.obj("btn_guardar").set_tooltip_text("Presione este botón para guardar el registro del Grupo de Usuarios")
        self.obj("btn_cancelar").set_tooltip_text("Presione este botón para cerrar esta ventana sin guardar cambios")

        self.estadoedicion(True)
        self.estadoguardar(False)
        self.estadopermiso(False)

        self.txt_cod_tabla = self.obj("txt_cod_tabla")
        self.txt_des_tabla = self.obj("txt_des_tabla")

        self.obj("txt_00").set_max_length(10)
        self.obj("txt_01").set_max_length(50)

        self.obj("txt_00").set_tooltip_text("Ingrese el Código del Grupo de Usuarios")
        self.obj("txt_01").set_tooltip_text("Ingrese la Descripción del Grupo de Usuarios")
        self.obj("txt_01").grab_focus()

        self.obj("btn_nuevo").set_tooltip_text("Presione este botón para Agregar\nun permiso sobre una Tabla")
        self.obj("btn_modificar").set_tooltip_text("Presione este botón para Modificar\nel permiso sobre una Tabla")
        self.obj("btn_eliminar").set_tooltip_text("Presione este botón para Eliminar\nel permiso sobre una Tabla")

        self.obj("btn_guardar_tab").set_tooltip_text("Presione este botón para Guardar el registro")
        self.obj("btn_cancelar_tab").set_tooltip_text("Presione este botón para Cancelar esta operación")

        arch.connect_signals(self)

        if self.editando:
            seleccion, iterador = self.nav.obj("grilla").get_selection().get_selected()
            self.cond = str(seleccion.get_value(iterador, 0))
            self.desc = seleccion.get_value(iterador, 1)

            self.obj("txt_00").set_text(self.cond)
            self.obj("txt_01").set_text(self.desc)
        else:
            self.obj("txt_00").set_text(Op.nuevoid(self.nav.datos_conexion,
                "grupousuarios_s", self.nav.campoid))
            self.obj("txt_01").set_text("")

        self.conexion = Op.conectar(self.nav.datos_conexion)
        self.config_grilla_tablas()
        self.cargar_grilla_tablas()

        self.nav.obj("grilla").get_selection().unselect_all()
        self.nav.obj("barraestado").push(0, "")
        self.obj("ventana").show()
Esempio n. 5
0
    def __init__(self, edit, origen):
        self.editando = edit
        self.nav = origen

        arch = Op.archivo("abm_denominaciones")
        self.obj = arch.get_object

        self.obj("ventana").set_position(1)
        self.obj("ventana").set_modal(True)

        edit = "Creando" if not self.editando else "Editando"
        self.obj("ventana").set_title(edit + " Registro de Denominaciones")
        Mens.boton_guardar_cancelar(self.obj("btn_guardar"), self.obj("btn_cancelar"))

        self.obj("txt_00").set_max_length(10)
        self.obj("txt_01").set_max_length(50)
        self.obj("txt_02").set_max_length(10)

        self.obj("txt_00").set_tooltip_text("Ingrese el Código de la Denominación")
        self.obj("txt_01").set_tooltip_text("Ingrese la Descripción de la Denominación")
        self.obj("txt_02").set_tooltip_text("Ingrese el Valor numérico de la Denominación")
        self.obj("txt_01").grab_focus()

        self.idMoneda = self.idTipoDen = -1
        Op.combos_config(self.nav.datos_conexion, self.obj("cmb_moneda"), "monedas_s", "idMoneda")
        Op.combos_config(self.nav.datos_conexion, self.obj("cmb_tipo_den"),
            "tipodenominaciones", "idTipoDenominacion")
        arch.connect_signals(self)

        if self.editando:
            seleccion, iterador = self.nav.obj("grilla").get_selection().get_selected()
            self.cond = str(seleccion.get_value(iterador, 0))
            des = seleccion.get_value(iterador, 1)
            moneda = seleccion.get_value(iterador, 2)
            tipo = seleccion.get_value(iterador, 4)
            val = str(seleccion.get_value(iterador, 6))

            # Asignación de Moneda en Combo
            model, i = self.obj("cmb_moneda").get_model(), 0
            while model[i][0] != moneda: i += 1
            self.obj("cmb_moneda").set_active(i)

            # Asignación de Tipo de Denominación en Combo
            model, i = self.obj("cmb_tipo_den").get_model(), 0
            while model[i][0] != tipo: i += 1
            self.obj("cmb_tipo_den").set_active(i)

            self.obj("txt_00").set_text(self.cond)
            self.obj("txt_01").set_text(des)
            self.obj("txt_02").set_text(val)
        else:
            self.obj("txt_00").set_text(Op.nuevoid(self.nav.datos_conexion,
                self.nav.tabla + "_s", self.nav.campoid))
            self.obj("cmb_moneda").set_active(0)
            self.obj("cmb_tipo_den").set_active(0)

        self.nav.obj("grilla").get_selection().unselect_all()
        self.nav.obj("barraestado").push(0, "")
        self.obj("ventana").show()
Esempio n. 6
0
    def __init__(self, edit, origen):
        self.nav = origen

        arch = Op.archivo("rrhh_aguinaldos")
        self.obj = arch.get_object

        self.obj("ventana").set_position(1)
        self.obj("ventana").set_modal(True)

        self.obj("ventana").set_title("Creando Registro de Aguinaldo")
        Mens.boton_guardar_cancelar(self.obj("btn_guardar"),
                                    self.obj("btn_cancelar"))

        self.obj("txt_00").set_max_length(10)
        self.obj("txt_01").set_max_length(10)
        self.obj("txt_01_2").set_max_length(12)
        self.obj("txt_02").set_max_length(10)
        self.obj("txt_05").set_max_length(100)

        self.obj("txt_00").set_tooltip_text("Ingrese el Código del Aguinaldo")
        self.obj("txt_01").set_tooltip_text(
            Mens.usar_boton("el Empleado cuyo Aguinaldo es registrado"))
        self.obj("txt_01_1").set_tooltip_text("Nombre y Apellido del Empleado")
        self.obj("txt_01_2").set_tooltip_text(
            "Ingrese el Nro. de Documento del Empleado")
        self.obj("txt_02").set_tooltip_text(
            Mens.usar_boton("el Contrato del Empleado seleccionado"))
        self.obj("txt_02_1").set_tooltip_text(
            "Cargo del Empleado dentro de la Empresa")
        self.obj("txt_02_2").set_tooltip_text("Salario Mensual del Empleado")
        self.obj("txt_03").set_tooltip_text(
            Mens.usar_boton(
                "el Monto en base al cual será calculado el Aguinaldo"))
        self.obj("txt_04").set_tooltip_text("Monto a pagar como Aguinaldo")
        self.obj("txt_05").set_tooltip_text(
            "Ingrese cualquier información adicional con respecto al Aguinaldo del Empleado"
        )
        self.obj("txt_02").grab_focus()

        self.txt_cod_per, self.txt_rzn_scl = self.obj("txt_01"), self.obj(
            "txt_01_1")
        self.txt_nro_doc, self.cmb_tip_doc = self.obj("txt_01_2"), self.obj(
            "cmb_tipo_doc")
        self.txt_cod_cnt, self.txt_crg_cnt, self.txt_sal_cnt = self.obj("txt_02"), \
            self.obj("txt_02_1"), self.obj("txt_02_2")

        self.idPersona, self.borrar_contrato, self.idTipoDoc = None, not edit, -1
        Op.combos_config(self.nav.datos_conexion, self.obj("cmb_tipo_doc"),
                         "tipodocumentos", "idTipoDocumento")
        arch.connect_signals(self)

        self.obj("txt_00").set_text(
            Op.nuevoid(self.nav.datos_conexion, self.nav.tabla + "_s",
                       self.nav.campoid))
        self.obj("cmb_tipo_doc").set_active(0)

        self.nav.obj("grilla").get_selection().unselect_all()
        self.nav.obj("barraestado").push(0, "")
        self.obj("ventana").show()
Esempio n. 7
0
    def __init__(self, edit, origen):
        self.editando = edit
        self.nav = origen

        arch = Op.archivo("abm_vehiculos")
        self.obj = arch.get_object

        self.obj("ventana").set_position(1)
        self.obj("ventana").set_modal(True)

        edit = "Creando" if not self.editando else "Editando"
        self.obj("ventana").set_title(edit + " Registro de Vehículos")
        Mens.boton_guardar_cancelar(self.obj("btn_guardar"),
                                    self.obj("btn_cancelar"))

        self.obj("txt_00").set_max_length(10)
        self.obj("txt_01").set_max_length(50)
        self.obj("txt_02").set_max_length(10)

        self.obj("txt_00").set_tooltip_text("Ingrese el Código del Vehículo")
        self.obj("txt_01").set_tooltip_text(
            "Ingrese el Número del Registro Único del Automotor (R.U.A.) del Vehículo"
        )
        self.obj("txt_02").set_tooltip_text(
            "Ingrese el Número de Placa del Vehículo")
        self.obj("txt_01").grab_focus()

        self.idMarcaVeh = -1
        Op.combos_config(self.nav.datos_conexion, self.obj("cmb_marca"),
                         "marcavehiculos", "idMarcaVehiculo")
        arch.connect_signals(self)

        if self.editando:
            seleccion, iterador = self.nav.obj(
                "grilla").get_selection().get_selected()
            self.cond = str(seleccion.get_value(iterador, 0))
            marca = seleccion.get_value(iterador, 1)
            rua = seleccion.get_value(iterador, 3)
            placa = seleccion.get_value(iterador, 4)

            self.obj("txt_00").set_text(self.cond)
            self.obj("txt_01").set_text(rua)
            self.obj("txt_02").set_text(placa)

            # Asignación de Moneda en Combo
            model, i = self.obj("cmb_marca").get_model(), 0
            while model[i][0] != marca:
                i += 1
            self.obj("cmb_marca").set_active(i)
        else:
            self.obj("txt_00").set_text(
                Op.nuevoid(self.nav.datos_conexion, self.nav.tabla + "_s",
                           self.nav.campoid))
            self.obj("cmb_marca").set_active(0)

        self.nav.obj("grilla").get_selection().unselect_all()
        self.nav.obj("barraestado").push(0, "")
        self.obj("ventana").show()
Esempio n. 8
0
    def __init__(self, edit, origen):
        self.editando = edit
        self.nav = origen

        arch = Op.archivo("abm_monedas")
        self.obj = arch.get_object

        self.obj("ventana").set_position(1)
        self.obj("ventana").set_modal(True)

        edit = "Creando" if not self.editando else "Editando"
        self.obj("ventana").set_title(edit + " Registro de Monedas")
        Mens.boton_guardar_cancelar(self.obj("btn_guardar"),
                                    self.obj("btn_cancelar"))

        self.obj("txt_00").set_max_length(10)
        self.obj("txt_01").set_max_length(50)
        self.obj("txt_02").set_max_length(10)
        self.obj("txt_03").set_max_length(5)

        self.obj("txt_00").set_tooltip_text("Ingrese el Código de la Moneda")
        self.obj("txt_01").set_tooltip_text("Ingrese el Nombre de la Moneda")
        self.obj("txt_02").set_tooltip_text(
            Mens.usar_boton("el País de origen de la Moneda"))
        self.obj("txt_02_1").set_tooltip_text("Nombre del País")
        self.obj("txt_03").set_tooltip_text("Ingrese el Símbolo de la Moneda")
        self.obj("txt_01").grab_focus()

        self.txt_cod_pais, self.txt_des_pais = self.obj("txt_02"), self.obj(
            "txt_02_1")
        arch.connect_signals(self)

        if self.editando:
            seleccion, iterador = self.nav.obj(
                "grilla").get_selection().get_selected()
            self.cond = str(seleccion.get_value(iterador, 0))
            nombre = seleccion.get_value(iterador, 1)
            codpais = str(seleccion.get_value(iterador, 2))
            pais = seleccion.get_value(iterador, 3)
            simbolo = seleccion.get_value(iterador, 4)

            self.obj("txt_00").set_text(self.cond)
            self.obj("txt_01").set_text(nombre)
            self.obj("txt_02").set_text(codpais)
            self.obj("txt_02_1").set_text(pais)
            self.obj("txt_03").set_text(simbolo)
        else:
            self.obj("txt_00").set_text(
                Op.nuevoid(self.nav.datos_conexion, self.nav.tabla + "_s",
                           self.nav.campoid))

        self.nav.obj("grilla").get_selection().unselect_all()
        self.nav.obj("barraestado").push(0, "")
        self.obj("ventana").show()
Esempio n. 9
0
    def __init__(self, datos):
        self.datos_conexion = datos

        arch = Op.archivo("rrhh_asistencias")
        self.obj = arch.get_object

        self.obj("ventana").set_position(1)
        self.obj("ventana").set_modal(True)
        self.obj("ventana").set_title("Asistencias")

        self.obj("btn_nuevo").set_tooltip_text(
            "Presione este botón para registrar una Nueva Asistencia")
        self.obj("btn_guardar").set_tooltip_text(
            "Presione este botón para Guardar la Asistencia")
        self.obj("btn_cancelar").set_tooltip_text(
            "Presione este botón para Cancelar la operación")
        self.obj("btn_salir").set_tooltip_text(
            "Presione este botón para Salir de la ventana")

        self.obj("txt_00").set_max_length(10)
        self.obj("txt_00_2").set_max_length(12)
        self.obj("txt_01").set_max_length(10)
        self.obj("txt_02").set_max_length(100)

        self.obj("txt_00").set_tooltip_text(
            Mens.usar_boton("el Empleado cuyo Reposo es registrado"))
        self.obj("txt_00_1").set_tooltip_text("Nombre y Apellido del Empleado")
        self.obj("txt_00_2").set_tooltip_text(
            "Ingrese el Nro. de Documento del Empleado")
        self.obj("txt_01").set_tooltip_text(
            Mens.usar_boton("el Contrato del Empleado seleccionado"))
        self.obj("txt_01_1").set_tooltip_text(
            "Cargo del Empleado dentro de la Empresa")
        self.obj("txt_02").set_tooltip_text("Ingrese una Observación")

        self.txt_cod_per, self.txt_rzn_scl = self.obj("txt_00"), self.obj(
            "txt_00_1")
        self.txt_nro_doc, self.cmb_tip_doc = self.obj("txt_00_2"), self.obj(
            "cmb_tipo_doc")
        self.txt_cod_cnt, self.txt_crg_cnt = self.obj("txt_01"), self.obj(
            "txt_01_1")

        self.idPersona, self.borrar_contrato, self.idTipoDoc = None, True, -1
        Op.combos_config(self.datos_conexion, self.obj("cmb_tipo_doc"),
                         "tipodocumentos", "idTipoDocumento")

        arch.connect_signals(self)

        self.limpiarcampos()
        self.obj("entrada").set_active(True)

        self.on_btn_nuevo_clicked(0)
        self.obj("ventana").show()
Esempio n. 10
0
    def __init__(self, edit, origen):
        self.editando = edit
        self.nav = origen

        arch = Op.archivo("abm_categorias")
        self.obj = arch.get_object

        self.obj("ventana").set_position(1)
        self.obj("ventana").set_modal(True)

        edit = "Creando" if not self.editando else "Editando"
        self.obj("ventana").set_title(edit + " Registro de Categorías")
        Mens.boton_guardar_cancelar(self.obj("btn_guardar"), self.obj("btn_cancelar"))

        self.obj("txt_00").set_max_length(10)
        self.obj("txt_01").set_max_length(50)
        self.obj("txt_02").set_max_length(10)

        self.obj("txt_00").set_tooltip_text("Ingrese el Código de la Categoría")
        self.obj("txt_01").set_tooltip_text("Ingrese la Descripción de la Categoría")
        self.obj("txt_02").set_tooltip_text(Mens.usar_boton("el Impuesto que grava la Categoría"))
        self.obj("txt_02_1").set_tooltip_text("Nombre del Impuesto que grava la Categoría")
        self.obj("txt_03").set_tooltip_text("Porcentaje que grava el Impuesto a la Categoría")
        self.obj("txt_01").grab_focus()

        self.txt_cod_imp, self.txt_des_imp, self.txt_por_imp = self.obj("txt_02"), \
            self.obj("txt_02_1"), self.obj("txt_03")
        arch.connect_signals(self)

        if self.editando:
            seleccion, iterador = self.nav.obj("grilla").get_selection().get_selected()
            self.cond = str(seleccion.get_value(iterador, 0))
            descrip = seleccion.get_value(iterador, 1)
            codimp = str(seleccion.get_value(iterador, 2))
            imp = seleccion.get_value(iterador, 3)
            porc = str(seleccion.get_value(iterador, 4))

            self.obj("txt_00").set_text(self.cond)
            self.obj("txt_01").set_text(descrip)
            self.obj("txt_02").set_text(codimp)
            self.obj("txt_02_1").set_text(imp)
            self.obj("txt_03").set_text(porc)
        else:
            self.obj("txt_00").set_text(Op.nuevoid(self.nav.datos_conexion,
                self.nav.tabla + "_s", self.nav.campoid))

        self.nav.obj("grilla").get_selection().unselect_all()
        self.nav.obj("barraestado").push(0, "")
        self.obj("ventana").show()
Esempio n. 11
0
    def __init__(self, v_or):
        self.origen = v_or

        arch = Op.archivo("buscador")
        self.obj = arch.get_object

        self.obj("ventana").set_title("Seleccione una Cuota a Cobrar")
        self.obj("ventana").set_default_size(950, 500)
        self.obj("ventana").set_position(1)
        self.obj("ventana").set_modal(True)

        self.config_grilla_buscar()
        self.cargar_grilla_buscar()

        arch.connect_signals(self)
        self.obj("ventana").show()
Esempio n. 12
0
    def __init__(self, datos):
        self.datos_conexion = datos

        arch = Op.archivo("usuarios")
        self.obj = arch.get_object

        self.obj("ventana").set_default_size(800, 500)
        self.obj("ventana").set_position(1)
        self.obj("ventana").set_title("Navegar - Usuarios del Sistema")

        arch.connect_signals(self)

        self.config_grilla()
        self.cargar_grilla()
        self.permisos_user()
        self.obj("ventana").show()
Esempio n. 13
0
    def __init__(self, v_or, item):
        self.origen = v_or
        self.idItem = item

        arch = Op.archivo("buscador")
        self.obj = arch.get_object

        self.obj("ventana").set_title("Seleccione un Lote")
        self.obj("ventana").set_default_size(510, 500)
        self.obj("ventana").set_position(1)
        self.obj("ventana").set_modal(True)

        self.config_grilla_buscar()
        self.cargar_grilla_buscar()

        arch.connect_signals(self)
        self.obj("ventana").show()
    def __init__(self, datos, usu):
        self.datos_conexion = datos
        self.usuario = usu

        arch = Op.archivo("usuarios_permisos")
        self.obj = arch.get_object

        self.obj("ventana").set_default_size(700, 500)
        self.obj("ventana").set_position(1)
        self.obj("ventana").set_title("Navegar - Permisos del Usuario")
        self.obj("label").set_text("Permisos de «" + self.usuario + "»")

        self.obj("btn_per_guardar").set_tooltip_text(
            "Presione este botón para Guardar la operación")
        self.obj("btn_per_cancelar").set_tooltip_text(
            "Presione este botón para Cancelar la operación")

        self.obj("btn_per_nuevo").set_tooltip_text(
            "Presione este botón para Agregar\nun permiso sobre una Tabla")
        self.obj("btn_per_modificar").set_tooltip_text(
            "Presione este botón para Modificar\nel permiso sobre una Tabla")
        self.obj("btn_per_eliminar").set_tooltip_text(
            "Presione este botón para Eliminar\nel permiso sobre una Tabla")
        self.obj("btn_per_grupo").set_tooltip_text(
            "Presione este botón para Seleccionar el Grupo\nal que pertenece el Usuario y obtener sus permisos"
        )
        self.obj("btn_per_todos").set_tooltip_text(
            "Presione este botón para Eliminar\ntodos los permisos del Usuario"
        )
        self.obj("btn_per_salir").set_tooltip_text(
            "Presione este botón para Cerrar esta ventana")

        arch.connect_signals(self)

        self.con, self.ins, self.act, self.eli, self.anu = False, False, False, False, False
        self.txt_cod_tabla = self.obj("txt_cod_tabla")
        self.txt_des_tabla = self.obj("txt_des_tabla")
        self.estadoedicion(False)

        self.config_grilla()
        self.cargar_grilla()
        self.obj("ventana").show()
Esempio n. 15
0
    def __init__(self, origen):
        self.origen = origen

        cursor = self.origen.conexion.cursor()
        cursor.execute("SAVEPOINT horario")
        cursor.close()

        arch = Op.archivo("rrhh_horarios")
        self.obj = arch.get_object

        self.obj("ventana").set_default_size(800, 600)
        self.obj("ventana").set_position(1)
        self.obj("ventana").set_modal(True)

        self.obj("ventana").set_title("Registro de Horarios")
        Mens.boton_guardar_cancelar(self.obj("btn_guardar"),
                                    self.obj("btn_cancelar"))

        self.obj("txt_hora_1_ig").set_max_length(8)
        self.obj("txt_hora_2_ig").set_max_length(8)
        self.obj("txt_cod_dif").set_max_length(10)
        self.obj("txt_hora_2_dif").set_max_length(8)
        self.obj("txt_hora_2_dif").set_max_length(8)

        Op.combos_config(self.origen.nav.datos_conexion,
                         self.obj("cmb_primer_dia"), "diassemana", "idDia")
        Op.combos_config(self.origen.nav.datos_conexion,
                         self.obj("cmb_ultimo_dia"), "diassemana", "idDia")
        Op.combos_config(self.origen.nav.datos_conexion, self.obj("cmb_dia"),
                         "diassemana", "idDia")
        Op.combos_config(self.origen.nav.datos_conexion,
                         self.obj("cmb_turno_ig"), "turnos", "idTurno")
        Op.combos_config(self.origen.nav.datos_conexion,
                         self.obj("cmb_turno_dif"), "turnos", "idTurno")

        arch.connect_signals(self)

        self.estadoedicion(False)
        self.config_grilla()
        self.cargar_grilla()

        self.obj("ventana").show()
Esempio n. 16
0
    def __init__(self, v_or, titulo):
        self.origen = v_or

        arch = archivo("informes")
        self.obj = arch.get_object

        self.obj("ventana").set_position(1)
        self.obj("ventana").set_default_size(750, 500)
        self.obj("ventana").set_title("Informes de " + titulo)
        self.obj("ventana").set_modal(True)
        self.obj("label").set_text(titulo)

        self.origen.config_grilla(self.obj("grilla"))
        self.origen.cargar_grilla(self.obj("grilla"), self.obj("barraestado"))

        #if len(self.obj("grilla").get_model()) == 0:  # No hay registros
        #    self.obj("btn_pdf_tab").set_sensitive(False)

        arch.connect_signals(self)
        self.obj("ventana").show()
    def __init__(self, con):
        self.conexion = con

        arch = Op.archivo("buscador")
        self.obj = arch.get_object

        self.obj("ventana").set_title("Seleccione una Nota de Débito")
        self.obj("ventana").set_default_size(950, 500)
        self.obj("ventana").set_position(1)
        self.obj("ventana").set_modal(True)

        # Transforma boton Seleccionar en boton Anular
        self.obj("img_busq_seleccionar").set_property('stock',
                                                      'gtk-find-and-replace')
        self.obj("label_busq_seleccionar").set_text("Anular")
        self.obj("label_busq_cancelar").set_text("Salir")

        self.config_grilla_buscar()
        self.cargar_grilla_buscar()

        arch.connect_signals(self)
        self.obj("ventana").show()
Esempio n. 18
0
    def __init__(self, datos):
        self.datos_conexion = datos

        arch = Op.archivo("informe_asistencias")
        self.obj = arch.get_object

        self.obj("ventana").set_position(1)
        self.obj("ventana").set_modal(True)
        self.obj("ventana").set_title("Informes de Asistencias")

        self.txt_cod_per, self.txt_rzn_scl = self.obj("txt_01"), self.obj("txt_01_1")
        self.txt_nro_doc, self.cmb_tip_doc = self.obj("txt_01_2"), self.obj("cmb_tipo_doc")
        self.txt_cod_cnt, self.txt_crg_cnt = self.obj("txt_02"), self.obj("txt_02_1")

        self.idPersona, self.borrar_contrato, self.idTipoDoc = None, True, -1
        Op.combos_config(self.datos_conexion, self.obj("cmb_tipo_doc"), "tipodocumentos", "idTipoDocumento")

        arch.connect_signals(self)

        self.desactiva_empleado()
        self.obj("btn_aceptar").set_sensitive(False)
        self.obj("ventana").show()
Esempio n. 19
0
    def __init__(self, datos, v_or):
        self.datos_conexion = datos
        self.origen = v_or

        arch = Op.archivo("caja_aperturas")
        self.obj = arch.get_object

        self.obj("ventana").set_position(1)
        self.obj("ventana").set_title("Aperturas de Cajas")
        Mens.boton_guardar_cancelar(self.obj("btn_guardar"), self.obj("btn_cancelar"))

        self.obj("txt_00").set_max_length(10)
        self.obj("txt_01").set_max_length(10)
        self.obj("txt_02").set_max_length(7)
        self.obj("txt_03").set_max_length(15)

        self.obj("txt_00").set_tooltip_text(Mens.usar_boton("el Establecimiento que afectará"))
        self.obj("txt_00_1").set_tooltip_text("Nombre del Establecimiento")
        self.obj("txt_00_2").set_tooltip_text("Dirección o Localización del Establecimiento")
        self.obj("txt_00_2").set_tooltip_text("Teléfono del Establecimiento")
        self.obj("txt_01").set_tooltip_text(Mens.usar_boton("el Punto de Expedición que afectará"))
        self.obj("txt_01_1").set_tooltip_text("Nombre del Punto de Expedición")
        self.obj("txt_02").set_tooltip_text("Ingrese el Número Inicial del Documento a emitir")
        self.obj("txt_03").set_tooltip_text("Ingrese el Monto de Dinero disponible en Caja en este momento")

        self.txt_nro_est, self.txt_nom_est = self.obj("txt_00"), self.obj("txt_00_1")
        self.txt_dir_est, self.txt_tel_est = self.obj("txt_00_2"), self.obj("txt_00_3")
        self.txt_nro_cja, self.txt_nom_cja = self.obj("txt_01"), self.obj("txt_01_1")

        self.idTipoDoc = -1
        Op.combos_config(self.datos_conexion, self.obj("cmb_tipo_doc"),
            "tipodocumentocomerciales", "idTipoDocumentoComercial")
        arch.connect_signals(self)

        self.obj("txt_fecha").set_text(Cal.mysql_fecha(date.today()))
        self.obj("txt_hora").set_text(strftime('%H:%M:%S'))
        self.obj("ventana").show()
Esempio n. 20
0
def calendario():
    arch = archivo("calendario")
    obj = arch.get_object

    obj("ventana").set_title("Calendario: Seleccione una Fecha")
    obj("ventana").set_default_size(350, 300)
    obj("ventana").set_position(1)
    obj("ventana").set_modal(True)

    resp = obj("ventana").run()
    seleccion = False

    if resp == 1:
        year, month, day = obj("calendar").get_date()

        fechaletra = cadenanumeros(day, 2) + " de " + \
            mesesletras(month + 1) + " de " + str(year)
        fechamysql = str(year) + "-" + \
            cadenanumeros(month + 1, 2) + "-" + cadenanumeros(day, 2)

        seleccion = [fechaletra, fechamysql]

    obj("ventana").destroy()
    return seleccion
Esempio n. 21
0
    def __init__(self, edit, origen):
        self.editando = edit
        self.nav = origen

        # Necesario para Vendedores
        self.datos_conexion = self.nav.datos_conexion

        arch = Op.archivo("rrhh_contratos")
        self.obj = arch.get_object

        self.obj("ventana").set_position(1)
        self.obj("ventana").set_modal(True)

        edit = "Creando" if not self.editando else "Editando"
        self.obj("ventana").set_title(edit + " Registro de Contratos")
        Mens.boton_guardar_cancelar(self.obj("btn_guardar"), self.obj("btn_cancelar"))
        self.permiso_vendedores()

        self.obj("txt_00").set_max_length(10)
        self.obj("txt_01").set_max_length(10)
        self.obj("txt_01_2").set_max_length(12)

        self.obj("txt_00").set_tooltip_text("Ingrese el Código de Contrato")
        self.obj("txt_01").set_tooltip_text(Mens.usar_boton("el Empleado con quien se celebró el Contrato"))
        self.obj("txt_01_2").set_tooltip_text("Ingrese el Nro. de Documento del Empleado")

        self.obj("txt_04").set_tooltip_text(Mens.usar_boton("la Fecha de Inicio de Actividades"))
        self.obj("txt_05").set_tooltip_text(Mens.usar_boton("la Fecha de Finalización de Actividades"))
        self.obj("txt_06").set_tooltip_text(Mens.usar_boton("la Fecha de Inicio del Periodo de Prueba"))
        self.obj("txt_07").set_tooltip_text(Mens.usar_boton("la Fecha de Finalización del Periodo de Prueba"))

        self.idTipoDoc = -1
        self.txt_cod_per, self.txt_rzn_scl = self.obj("txt_01"), self.obj("txt_01_1")
        self.txt_nro_doc, self.cmb_tip_doc = self.obj("txt_01_2"), self.obj("cmb_tipo_doc")
        self.txt_dir_per, self.txt_tel_per = self.obj("txt_01_3"), self.obj("txt_01_4")

        Op.combos_config(self.nav.datos_conexion, self.obj("cmb_tipo_doc"), "tipodocumentos", "idTipoDocumento")
        Op.combos_config(self.nav.datos_conexion, self.obj("cmb_cargo"), "cargos", "idCargo")
        Op.combos_config(self.nav.datos_conexion, self.obj("cmb_tipo_contrato"), "tipocontratos", "idTipoContrato")
        Op.combos_config(self.nav.datos_conexion, self.obj("cmb_periodo_pago"), "periodopagos", "idPeriodoPago")
        Op.combos_config(self.nav.datos_conexion, self.obj("cmb_forma_pago"), "formapagos", "idFormaPago")
        Op.combos_config(self.nav.datos_conexion, self.obj("cmb_tipo_salario"), "tiposalarios", "idTipoSalario")

        self.salariominimo = Op.obtener_salario_minimo(self.nav.datos_conexion)
        arch.connect_signals(self)

        self.obj("cmb_tipo_doc").set_active(0)
        self.obj("cmb_cargo").set_active(0)
        self.obj("cmb_tipo_contrato").set_active(0)
        self.obj("cmb_periodo_pago").set_active(0)
        self.obj("cmb_forma_pago").set_active(0)
        self.obj("cmb_tipo_salario").set_active(0)

        if self.editando:
            seleccion, iterador = self.nav.obj("grilla").get_selection().get_selected()
            self.cond = str(seleccion.get_value(iterador, 0))
            idper = str(seleccion.get_value(iterador, 1))
            tipodoc = seleccion.get_value(iterador, 2)
            nrodoc = seleccion.get_value(iterador, 3)
            nombre = seleccion.get_value(iterador, 4)
            direccion = seleccion.get_value(iterador, 6)
            telefono = seleccion.get_value(iterador, 7)

            direccion = "" if direccion is None else direccion
            telefono = "" if telefono is None else telefono

            self.obj("txt_00").set_text(self.cond)
            self.obj("txt_01").set_text(idper)
            self.obj("txt_01_1").set_text(nombre)
            self.obj("txt_01_2").set_text(nrodoc)
            self.obj("txt_01_3").set_text(direccion)
            self.obj("txt_01_4").set_text(telefono)

            # Asignación de Tipo de Documento en Combo
            model, i = self.obj("cmb_tipo_doc").get_model(), 0
            while model[i][0] != tipodoc: i += 1
            self.obj("cmb_tipo_doc").set_active(i)

            cargo = seleccion.get_value(iterador, 12)
            formapago = seleccion.get_value(iterador, 14)
            periodopago = seleccion.get_value(iterador, 16)
            tipocontrato = seleccion.get_value(iterador, 18)
            tiposalario = seleccion.get_value(iterador, 20)

            # Asignación de Cargo en Combo
            model, i = self.obj("cmb_cargo").get_model(), 0
            while model[i][0] != cargo: i += 1
            self.obj("cmb_cargo").set_active(i)

            # Asignación de Tipo de Contrato en Combo
            model, i = self.obj("cmb_tipo_contrato").get_model(), 0
            while model[i][0] != tipocontrato: i += 1
            self.obj("cmb_tipo_contrato").set_active(i)

            # Asignación de Periodo de Pago en Combo
            model, i = self.obj("cmb_periodo_pago").get_model(), 0
            while model[i][0] != periodopago: i += 1
            self.obj("cmb_periodo_pago").set_active(i)

            # Asignación de Forma de Pago en Combo
            model, i = self.obj("cmb_forma_pago").get_model(), 0
            while model[i][0] != formapago: i += 1
            self.obj("cmb_forma_pago").set_active(i)

            # Asignación de Tipo de Salario en Combo
            model, i = self.obj("cmb_tipo_salario").get_model(), 0
            while model[i][0] != tiposalario: i += 1
            self.obj("cmb_tipo_salario").set_active(i)

            # Salario
            minimo = True if seleccion.get_value(iterador, 34) == 1 else False
            cantsal = seleccion.get_value(iterador, 35)
            salario = str(seleccion.get_value(iterador, 24))

            self.obj("rad_minimo").set_active(minimo)
            if cantsal is not None:
                self.obj("txt_02").set_value(float(cantsal))
            self.obj("txt_03").set_text(salario)

            # Fechas
            fecha_ini = seleccion.get_value(iterador, 22)
            fecha_fin = seleccion.get_value(iterador, 23)
            prueba_ini = seleccion.get_value(iterador, 25)
            prueba_fin = seleccion.get_value(iterador, 26)

            self.obj("txt_04").set_text(fecha_ini)
            self.obj("txt_05").set_text(fecha_fin)
            self.obj("txt_06").set_text(prueba_ini)
            self.obj("txt_07").set_text(prueba_fin)

            self.fecha_ini = seleccion.get_value(iterador, 30)
            self.fecha_fin = seleccion.get_value(iterador, 31)
            self.prueba_ini = seleccion.get_value(iterador, 32)
            self.prueba_fin = seleccion.get_value(iterador, 33)
        else:
            self.obj("txt_00").set_text(Op.nuevoid(self.nav.datos_conexion,
                self.nav.tabla + "_s", self.nav.campoid))

            self.obj("rad_minimo").set_active(True)
            self.fecha_ini = self.fecha_fin = self.prueba_ini = self.prueba_fin = None

        self.conexion = Op.conectar(self.nav.datos_conexion)
        self.principal_guardado = True

        self.nav.obj("grilla").get_selection().unselect_all()
        self.nav.obj("barraestado").push(0, "")
        self.obj("ventana").show()
Esempio n. 22
0
    def __init__(self, edit, origen):
        self.editando = edit
        self.nav = origen

        arch = Op.archivo("rrhh_beneficiarios")
        self.obj = arch.get_object

        self.obj("ventana").set_position(1)
        self.obj("ventana").set_default_size(500, 550)
        self.obj("ventana").set_modal(True)

        edit = "Creando" if not self.editando else "Editando"
        self.obj("ventana").set_title(edit + " Registro de " + self.nav.titulo)
        Mens.boton_guardar_cancelar(self.obj("btn_guardar"),
                                    self.obj("btn_cancelar"))

        self.obj("txt_00").set_max_length(10)  # Código
        self.obj("txt_00_2").set_max_length(12)  # Nro. Doc. (Empleado)
        self.obj("txt_01").set_max_length(10)  # Código
        self.obj("txt_01_2").set_max_length(12)  # Nro. Doc. (Familiar)
        self.obj("txt_02").set_max_length(100)  # Observaciones

        self.obj("txt_00").set_tooltip_text(
            Mens.usar_boton("el Empleado cotizante en IPS"))
        self.obj("txt_00_1").set_tooltip_text("Nombre y Apellido del Empleado")
        self.obj("txt_00_2").set_tooltip_text(
            "Ingrese el Nro. de Documento del Empleado")
        self.obj("txt_00_3").set_tooltip_text(
            "Número de Seguro (en IPS) del Empleado")
        self.obj("txt_00_4").set_tooltip_text(
            "Identificador del Asegurado en IPS")
        self.obj("txt_00_5").set_tooltip_text("Sexo del Empleado")
        self.obj("txt_00_6").set_tooltip_text("Nacionalidad del Empleado")
        self.obj("txt_00_7").set_tooltip_text("Estado Civil del Empleado")
        self.obj("txt_00_8").set_tooltip_text(
            "Fecha de Nacimiento del Empleado")
        self.obj("txt_00_9").set_tooltip_text(
            "Lugar de Nacimiento del Empleado")
        self.obj("txt_00_10").set_tooltip_text("Dirección Actual del Empleado")
        self.obj("txt_00_11").set_tooltip_text(
            "Barrio de la Dirección del Empleado")
        self.obj("txt_00_12").set_tooltip_text(
            "Ciudad o Distrito de la Dirección del Empleado")
        self.obj("txt_00_13").set_tooltip_text("Teléfono Laboral del Empleado")
        self.obj("txt_00_14").set_tooltip_text(
            "Teléfono Particular del Empleado")
        self.obj("txt_00_15").set_tooltip_text(
            "Número de Celular del Empleado")
        self.obj("txt_00_16").set_tooltip_text(
            "Dirección de Correo Electrónico del Empleado")
        self.obj("txt_01").set_tooltip_text(
            Mens.usar_boton("el Familiar beneficiado por el Seguro"))
        self.obj("txt_01_1").set_tooltip_text("Nombre y Apellido del Familiar")
        self.obj("txt_01_2").set_tooltip_text(
            "Ingrese el Nro. de Documento del Familiar")
        self.obj("txt_01_3").set_tooltip_text(
            "Fecha de Nacimiento del Familiar")
        self.obj("txt_01_4").set_tooltip_text("Sexo del Familiar")
        self.obj("txt_02").set_tooltip_text(
            "Ingrese una Observación relativa al Beneficiario")

        self.idTipoDocEmpleado = self.idTipoDocFamiliar = self.idTipoParentesco = -1
        Op.combos_config(self.nav.datos_conexion, self.obj("cmb_tipo_doc_emp"),
                         "tipodocumentos", "idTipoDocumento")
        Op.combos_config(self.nav.datos_conexion, self.obj("cmb_tipo_doc_ben"),
                         "tipodocumentos", "idTipoDocumento")
        Op.combos_config(self.nav.datos_conexion, self.obj("cmb_parentesco"),
                         "tipoparentescos", "idTipoParentesco")

        self.config_grilla_beneficiarios()
        arch.connect_signals(self)

        if self.editando:
            seleccion, iterador = self.nav.obj(
                "grilla").get_selection().get_selected()
            self.cond_empleado = str(seleccion.get_value(iterador, 0))

            self.obj("txt_00").set_text(self.cond_empleado)
            self.focus_out_event(self.obj("txt_00"), 0)

            self.cargar_grilla_beneficiarios()
            self.estadoguardar(True)
        else:
            self.obj("cmb_tipo_doc_emp").set_active(0)
            self.obj("cmb_tipo_doc_ben").set_active(0)
            self.obj("cmb_parentesco").set_active(0)
            self.estadoguardar(False)

        self.conexion = Op.conectar(self.nav.datos_conexion)
        self.estadoedicion(False)

        self.nav.obj("grilla").get_selection().unselect_all()
        self.nav.obj("barraestado").push(0, "")
        self.obj("ventana").show()
Esempio n. 23
0
    def __init__(self, datos, con, tab, total, nro, timb=None):
        self.datos_conexion = datos
        self.conexion = con
        self.tabla = tab

        cursor = self.conexion.cursor()
        cursor.execute("SAVEPOINT cobros")
        cursor.close()

        arch = Op.archivo("venta_cobros")
        self.obj = arch.get_object

        self.obj("ventana").set_default_size(775, 600)
        self.obj("ventana").set_position(1)
        self.obj("ventana").set_modal(True)

        self.obj("ventana").set_title("Cobros por Forma de Pago/Cobro")

        self.obj("btn_cheque").set_tooltip_text(
            "Presione este botón para buscar datos de un Cheque de Tercero")
        self.obj("btn_moneda").set_tooltip_text(
            "Presione este botón para buscar datos de una Moneda")
        self.obj("btn_tarjeta").set_tooltip_text(
            "Presione este botón para buscar datos de una Tarjeta")

        self.obj("btn_ch_banco").set_tooltip_text(
            "Presione este botón para buscar datos de una Entidad Financiera")
        self.obj("btn_ch_titular").set_tooltip_text(
            "Presione este botón para buscar datos del Titular del Cheque")
        self.obj("btn_tj_banco").set_tooltip_text(
            "Presione este botón para buscar datos de una Entidad Financiera")
        self.obj("btn_tj_titular").set_tooltip_text(
            "Presione este botón para buscar datos del Titular de la Tarjeta")

        self.obj("btn_nuevo").set_tooltip_text(
            "Presione este botón para agregar un nuevo Cobro por Cheque o Tarjeta"
        )
        self.obj("btn_modificar").set_tooltip_text(
            "Presione este botón para modificar datos de un Cobro por Cheque o Tarjeta"
        )
        self.obj("btn_eliminar").set_tooltip_text(
            "Presione este botón para eliminar un Cobro por Cheque o Tarjeta")

        Op.combos_config(self.datos_conexion, self.obj("cmb_ch_banco"),
                         "tipodocumentos", "idTipoDocumento")
        Op.combos_config(self.datos_conexion, self.obj("cmb_ch_titular"),
                         "tipodocumentos", "idTipoDocumento")
        Op.combos_config(self.datos_conexion, self.obj("cmb_tj_banco"),
                         "tipodocumentos", "idTipoDocumento")
        Op.combos_config(self.datos_conexion, self.obj("cmb_tj_titular"),
                         "tipodocumentos", "idTipoDocumento")

        self.obj("txt_00").set_text(nro)
        self.obj("txt_total").set_text(total)

        if timb is None:
            self.obj("label1").set_text("Nro. Recibo:")
            self.obj("label2").set_visible(False)
            self.obj("txt_01").set_visible(False)
        else:
            self.obj("txt_01").set_text(timb)

        self.txt_nro_chq, self.txt_nro_cta = self.obj("txt_ch_00"), self.obj(
            "txt_ch_01")
        self.txt_monto = self.obj("txt_ch_04")
        self.txt_cod_mon, self.txt_des_mon = self.obj("txt_md_00"), self.obj(
            "txt_md_00_1")
        self.txt_cot_vent = self.obj("txt_md_02")
        self.txt_nro_tj = self.obj("txt_tj_00")

        self.cod_cheque = -1
        self.monto_cheque = 0  # Valor Total del Cheque registrado
        self.monto_ch_doc = 0  # Valor del Cheque para Factura o Recibo (al Editar)
        self.monto_md_doc = 0  # Valor del Efectivo para Factura o Recibo (al Editar)
        self.monto_tj_doc = 0  # Valor de la Tarjeta para Factura o Recibo (al Editar)

        self.estadocobros(False)
        self.config_grilla_detalles()
        self.cargar_grilla_detalles()

        arch.connect_signals(self)
        self.obj("ventana").show()
    def __init__(self, edit, origen, empresa=False):
        self.editando = edit
        self.nav = origen
        self.desde_empresa = empresa

        arch = Op.archivo("abm_establecimientos")
        self.obj = arch.get_object

        self.obj("ventana").set_position(1)
        self.obj("ventana").set_modal(True)

        edit = "Creando" if not self.editando else "Editando"
        self.obj("ventana").set_title(edit + " Registro de Establecimiento")
        Mens.boton_guardar_cancelar(self.obj("btn_guardar"),
                                    self.obj("btn_cancelar"))

        self.obj("txt_00").set_max_length(10)
        self.obj("txt_01").set_max_length(50)
        self.obj("txt_02").set_max_length(10)
        self.obj("txt_04").set_max_length(50)

        self.obj("txt_00").set_tooltip_text(
            "Ingrese el Nro. de Establecimiento")
        self.obj("txt_01").set_tooltip_text(
            "Ingrese el Nombre del Establecimiento")
        self.obj("txt_02").set_tooltip_text(
            Mens.usar_boton("la Empresa a la que pertenece"))
        self.obj("txt_02_1").set_tooltip_text("Nombre de la Empresa")
        self.obj("txt_03").set_tooltip_text(
            "Dirección o Localización de la Empresa")
        self.obj("txt_04").set_tooltip_text(
            "Número de Teléfono del Establecimiento")
        self.obj("txt_01").grab_focus()

        self.txt_cod_emp, self.txt_rzn_scl = self.obj("txt_02"), self.obj(
            "txt_02_1")
        self.idDirec, self.txt_des_dir = -1, self.obj("txt_03")

        arch.connect_signals(self)

        if self.editando:
            seleccion, iterador = self.nav.obj(
                "grilla").get_selection().get_selected()
            self.cond = str(seleccion.get_value(iterador, 0))
            nombre = seleccion.get_value(iterador, 1)
            razonsocial = seleccion.get_value(iterador, 3)
            ciudad = seleccion.get_value(iterador, 4)
            direccion = seleccion.get_value(iterador, 6)
            telefono = seleccion.get_value(iterador, 7)

            activo = True if seleccion.get_value(iterador, 8) == 1 else False
            direccion = "" if direccion is None else ", " + direccion
            telefono = "" if telefono is None else telefono

            empresa = str(seleccion.get_value(iterador, 9))
            self.idDirec = seleccion.get_value(iterador, 10)

            self.obj("txt_00").set_text(self.cond)
            self.obj("txt_01").set_text(nombre)
            self.obj("txt_02").set_text(empresa)
            self.obj("txt_02_1").set_text(razonsocial)
            self.obj("txt_03").set_text(ciudad + direccion)
            self.obj("txt_04").set_text(telefono)
            self.obj("rad_activo").set_active(activo)
        else:
            self.obj("txt_00").set_text(
                Op.nuevoid(self.nav.datos_conexion, "establecimientos_s",
                           "NroEstablecimiento"))
            self.obj("rad_activo").set_active(True)

        if self.desde_empresa:
            self.obj("txt_02").set_text(self.nav.obj("txt_00").get_text())
            self.obj("hbox3").set_visible(
                False)  # No permite cambiar de Empresa
            self.conexion = self.nav.conexion  # Utiliza la conexión de Empresas

            cursor = self.conexion.cursor()
            cursor.execute("SAVEPOINT establecimiento")
            cursor.close()
        else:
            self.conexion = Op.conectar(self.nav.datos_conexion)

        self.nav.obj("grilla").get_selection().unselect_all()
        self.nav.obj("barraestado").push(0, "")
        self.obj("ventana").show()
Esempio n. 25
0
    def __init__(self, edit, origen):
        self.editando = edit
        self.nav = origen

        arch = Op.archivo("rrhh_reposos")
        self.obj = arch.get_object

        self.obj("ventana").set_position(1)
        self.obj("ventana").set_modal(True)

        edit = "Creando" if not self.editando else "Editando"
        self.obj("ventana").set_title(edit + " Registro de " + self.nav.titulo)
        Mens.boton_guardar_cancelar(self.obj("btn_guardar"), self.obj("btn_cancelar"))

        self.obj("txt_00").set_max_length(10)
        self.obj("txt_01").set_max_length(10)
        self.obj("txt_01_2").set_max_length(12)
        self.obj("txt_02").set_max_length(10)
        self.obj("txt_03").set_max_length(20)
        self.obj("txt_08").set_max_length(100)

        self.obj("txt_00").set_tooltip_text("Ingrese el Código del Reposo")
        self.obj("txt_01").set_tooltip_text(Mens.usar_boton("el Empleado cuyo Reposo es registrado"))
        self.obj("txt_01_1").set_tooltip_text("Nombre y Apellido del Empleado")
        self.obj("txt_01_2").set_tooltip_text("Ingrese el Nro. de Documento del Empleado")
        self.obj("txt_02").set_tooltip_text(Mens.usar_boton("el Contrato del Empleado seleccionado"))
        self.obj("txt_02_1").set_tooltip_text("Cargo del Empleado dentro de la Empresa")
        self.obj("txt_03").set_tooltip_text("Ingrese el Nro. de Expediente o de Resolución que corresponde al Reposo del Empleado")
        self.obj("txt_04").set_tooltip_text(Mens.usar_boton("la Fecha de expedición del Expediente o de la Resolución"))
        self.obj("txt_05").set_tooltip_text(Mens.usar_boton("la Fecha de Inicio del Reposo del Empleado"))
        self.obj("txt_06").set_tooltip_text(Mens.usar_boton("la Fecha de Finalización del Reposo del Empleado"))
        self.obj("txt_07").set_tooltip_text("Tiempo de Duración, en Días, del Reposo del Empleado")
        self.obj("txt_08").set_tooltip_text("Ingrese cualquier información adicional con respecto al Reposo del Empleado")
        self.obj("txt_02").grab_focus()

        self.txt_cod_per, self.txt_rzn_scl = self.obj("txt_01"), self.obj("txt_01_1")
        self.txt_nro_doc, self.cmb_tip_doc = self.obj("txt_01_2"), self.obj("cmb_tipo_doc")
        self.txt_cod_cnt, self.txt_crg_cnt = self.obj("txt_02"), self.obj("txt_02_1")

        self.idPersona, self.borrar_contrato, self.idTipoDoc = None, not edit, -1
        Op.combos_config(self.nav.datos_conexion, self.obj("cmb_tipo_doc"), "tipodocumentos", "idTipoDocumento")
        arch.connect_signals(self)

        if self.editando:
            seleccion, iterador = self.nav.obj("grilla").get_selection().get_selected()
            self.cond = str(seleccion.get_value(iterador, 0))
            idcont = str(seleccion.get_value(iterador, 1))
            idemp = str(seleccion.get_value(iterador, 2))
            tipodoc = seleccion.get_value(iterador, 3)
            nrodoc = seleccion.get_value(iterador, 4)
            nombre = seleccion.get_value(iterador, 5)
            cargo = seleccion.get_value(iterador, 8)
            fini = seleccion.get_value(iterador, 9)
            ffin = seleccion.get_value(iterador, 10)
            dias = str(seleccion.get_value(iterador, 11))
            exp = seleccion.get_value(iterador, 12)
            fexp = seleccion.get_value(iterador, 13)

            obs = seleccion.get_value(iterador, 14)
            obs = "" if obs is None else obs

            self.fechaini = seleccion.get_value(iterador, 19)
            self.fechafin = seleccion.get_value(iterador, 20)
            self.fechaexp = seleccion.get_value(iterador, 21)

            self.obj("txt_00").set_text(self.cond)
            self.obj("txt_01").set_text(idemp)
            self.obj("txt_01_1").set_text(nombre)
            self.obj("txt_01_2").set_text(nrodoc)
            self.obj("txt_02").set_text(idcont)
            self.obj("txt_02_1").set_text(cargo)
            self.obj("txt_03").set_text(exp)
            self.obj("txt_04").set_text(fexp)
            self.obj("txt_05").set_text(fini)
            self.obj("txt_06").set_text(ffin)
            self.obj("txt_07").set_text(dias)
            self.obj("txt_08").set_text(obs)

            # Asignación de Tipo de Documento en Combo
            model, i = self.obj("cmb_tipo_doc").get_model(), 0
            while model[i][0] != tipodoc: i += 1
            self.obj("cmb_tipo_doc").set_active(i)
        else:
            self.obj("txt_00").set_text(Op.nuevoid(self.nav.datos_conexion,
                self.nav.tabla + "_s", self.nav.campoid))
            self.obj("cmb_tipo_doc").set_active(0)

        self.nav.obj("grilla").get_selection().unselect_all()
        self.nav.obj("barraestado").push(0, "")
        self.obj("ventana").show()
Esempio n. 26
0
    def __init__(self, edit, origen):
        self.editando = edit
        self.nav = origen

        arch = Op.archivo("compra_ordenes")
        self.obj = arch.get_object

        self.obj("ventana").set_position(1)
        self.obj("ventana").set_default_size(650, 600)
        self.obj("ventana").set_modal(True)

        edit = "Creando" if not self.editando else "Editando"
        self.obj("ventana").set_title(edit + " Registro de " + self.nav.titulo)
        Mens.boton_guardar_cancelar(self.obj("btn_guardar"),
                                    self.obj("btn_cancelar"))

        self.estadoedicion(True)
        self.estadoguardar(False)
        self.estadoitem(False)
        self.config_grilla_items()

        self.obj("txt_00").set_max_length(10)
        self.obj("txt_01").set_max_length(10)
        self.obj("txt_01_2").set_max_length(12)
        self.obj("txt_02").set_max_length(10)

        self.obj("txt_00").set_tooltip_text("Ingrese el Número de " +
                                            self.nav.titulo)
        self.obj("txt_01").set_tooltip_text(
            Mens.usar_boton("al Proveedor de los ítems"))
        self.obj("txt_01_1").set_tooltip_text("Razón Social del Proveedor")
        self.obj("txt_01_2").set_tooltip_text(
            "Nro. de Documento de Identidad del Proveedor")
        self.obj("txt_01_3").set_tooltip_text(
            "Dirección principal del Proveedor")
        self.obj("txt_01_4").set_tooltip_text(
            "Teléfono principal del Proveedor")
        self.obj("txt_02").set_tooltip_text(
            Mens.usar_boton("un Pedido de Compra para cargar la Orden"))
        self.obj("txt_00").grab_focus()

        self.obj("txt_it_01").set_max_length(10)
        self.obj("txt_it_01_1").set_max_length(40)
        self.obj("txt_it_02").set_max_length(14)
        self.obj("txt_it_03").set_max_length(14)
        self.obj("txt_it_05").set_max_length(100)

        self.obj("txt_it_01").set_tooltip_text("Ingrese el Código del Ítem")
        self.obj("txt_it_01_1").set_tooltip_text(
            "Ingrese el Código de Barras del Ítem")
        self.obj("txt_it_01_2").set_tooltip_text("Descripción del Ítem")
        self.obj("txt_it_01_3").set_tooltip_text("Presentación del Ítem")
        self.obj("txt_it_01_4").set_tooltip_text("Categoría del Ítem")
        self.obj("txt_it_02").set_tooltip_text("Ingrese la Cantidad de Ítems")
        self.obj("txt_it_03").set_tooltip_text(
            "Ingrese el Precio Acordado del Ítem")
        self.obj("txt_it_04").set_tooltip_text(
            "Ingrese el Porcentaje de Descuento Acordado")
        self.obj("txt_it_05").set_tooltip_text(
            "Ingrese una Observación sobre el Ítems")

        self.idFormaPago = self.idTipoDoc = -1
        self.txt_cod_per, self.txt_rzn_scl = self.obj("txt_01"), self.obj(
            "txt_01_1")
        self.txt_nro_doc, self.cmb_tip_doc = self.obj("txt_01_2"), self.obj(
            "cmb_tipo_doc")
        self.txt_dir_per, self.txt_tel_per = self.obj("txt_01_3"), self.obj(
            "txt_01_4")
        self.txt_nro_ped = self.obj("txt_02")

        self.txt_cod_it = self.obj("txt_it_01")
        self.txt_bar_it, self.txt_nom_it = self.obj("txt_it_01_1"), self.obj(
            "txt_it_01_2")
        self.txt_des_pres, self.txt_des_cat = self.obj(
            "txt_it_01_3"), self.obj("txt_it_01_4")

        Op.combos_config(self.nav.datos_conexion, self.obj("cmb_tipo_doc"),
                         "tipodocumentos", "idTipoDocumento")
        Op.combos_config(self.nav.datos_conexion, self.obj("cmb_pago"),
                         "formapagos", "idFormaPago")
        arch.connect_signals(self)

        if self.editando:
            seleccion, iterador = self.nav.obj(
                "grilla").get_selection().get_selected()
            self.cond = str(seleccion.get_value(iterador, 0))
            fecha = seleccion.get_value(iterador, 1)[0:-9]  # Quita la Hora
            ruc = seleccion.get_value(iterador, 2)
            nombre = seleccion.get_value(iterador, 3)
            direc = seleccion.get_value(iterador, 4)
            telef = seleccion.get_value(iterador, 5)
            pago = seleccion.get_value(iterador, 7)
            resp = seleccion.get_value(iterador, 11)
            aprob = seleccion.get_value(iterador, 12)

            idper = str(seleccion.get_value(iterador, 14))
            tipodoc = str(seleccion.get_value(iterador, 15))
            pedido = str(seleccion.get_value(iterador, 16))

            direc = "" if direc is None else direc
            telef = "" if telef is None else telef

            self.obj("txt_00").set_text(self.cond)
            self.obj("txt_fecha").set_text(fecha)
            self.obj("txt_01").set_text(idper)
            self.obj("txt_01_1").set_text(nombre)
            self.obj("txt_01_2").set_text(ruc)
            self.obj("txt_01_2").set_text(direc)
            self.obj("txt_01_3").set_text(telef)
            self.obj("txt_02").set_text(pedido)

            # Asignación de Tipo de Documento en Combo
            model, i = self.obj("cmb_tipo_doc").get_model(), 0
            while model[i][0] != tipodoc:
                i += 1
            self.obj("cmb_tipo_doc").set_active(i)

            # Asignación de Forma de Pago en Combo
            model, i = self.obj("cmb_pago").get_model(), 0
            while model[i][0] != pago:
                i += 1
            self.obj("cmb_pago").set_active(i)

            if aprob != 1:
                self.obj("btn_aprobar").set_sensitive(True)
                self.obj("btn_rechazar").set_sensitive(True)
            else:
                self.obj("hbox1").set_sensitive(False)
                self.obj("vbox1").set_sensitive(False)
                self.obj("vbox3").set_sensitive(False)
                self.obj("hbox16").set_sensitive(False)
                self.obj("grilla").set_sensitive(False)
                self.obj("hbox18").set_sensitive(False)

                Mens.no_puede_modificar_eliminar_anular(
                    1, "Seleccionó:\n\nNro. de Orden: " + self.cond +
                    "\nFecha: " + fecha + "\nResponsable: " + resp +
                    "\n\nEsta Orden de Compra ya ha sido Aprobada." +
                    "\nSolo puede modificar Órdenes pendientes de aprobación.")

            self.encabezado_guardado = True
            self.editando_pedido = True if len(pedido) > 0 else False
        else:
            self.obj("txt_00").set_text(
                Op.nuevoid(self.nav.datos_conexion, self.nav.tabla + "_s",
                           self.nav.campoid))
            self.obj("txt_fecha").set_text(Cal.mysql_fecha(date.today()))

            self.obj("cmb_tipo_doc").set_active(0)
            self.obj("cmb_pago").set_active(0)
            self.encabezado_guardado = self.editando_pedido = False

        self.pedido_guardado = True
        self.conexion = Op.conectar(self.nav.datos_conexion)
        self.cargar_grilla_items()

        self.nav.obj("grilla").get_selection().unselect_all()
        self.nav.obj("barraestado").push(0, "")
        self.obj("ventana").show()
Esempio n. 27
0
    def __init__(self, edit, origen):
        self.editando = edit
        self.nav = origen

        # Necesario para Establecimientos
        self.datos_conexion = self.nav.datos_conexion

        arch = Op.archivo("rrhh_empresas")
        self.obj = arch.get_object

        self.obj("ventana").set_position(1)
        self.obj("ventana").set_modal(True)

        edit = "Creando" if not self.editando else "Editando"
        self.obj("ventana").set_title(edit + " Registro de " + self.nav.titulo)
        Mens.boton_guardar_cancelar(self.obj("btn_guardar"), self.obj("btn_cancelar"))

        self.obj("txt_00").set_max_length(10)
        self.obj("txt_01").set_max_length(10)
        self.obj("txt_02").set_max_length(10)
        self.obj("txt_03").set_max_length(12)
        self.obj("txt_04").set_max_length(10)
        self.obj("txt_05").set_max_length(50)
        self.obj("txt_06").set_max_length(50)

        self.obj("txt_m_01").set_max_length(100)
        self.obj("txt_m_02").set_max_length(100)
        self.obj("txt_a_00").set_max_length(10)
        self.obj("txt_a_01").set_max_length(100)

        self.obj("txt_00").set_tooltip_text("Ingrese el Código de la Empresa")
        self.obj("txt_01").set_tooltip_text(Mens.usar_boton("al Propietario de la Empresa"))
        self.obj("txt_01_1").set_tooltip_text("Nombre y Apellido del Propietario")
        self.obj("txt_01_2").set_tooltip_text("Dirección Principal del Propietario")
        self.obj("txt_01_3").set_tooltip_text("Teléfono Principal del Propietario")
        self.obj("txt_02").set_tooltip_text("Ingrese el R.U.C. de la Empresa")
        self.obj("txt_02_1").set_tooltip_text("Ingrese el Dígito Verificador")
        self.obj("txt_03").set_tooltip_text("Ingrese el Nro. Patronal del Instituto de Previsión Social (IPS)")
        self.obj("txt_04").set_tooltip_text("Ingrese el Nro. Patronal del Ministerio de Justicia y Trabajo (MJT)")
        self.obj("txt_05").set_tooltip_text("Ingrese la Razón Social de la Empresa")
        self.obj("txt_06").set_tooltip_text("Ingrese el Nombre de Fantasía de la Empresa")
        self.obj("txt_01").grab_focus()

        Op.combos_config(self.nav.datos_conexion, self.obj("cmb_medio"),
            "tipomediocontactos", "idTipoMedioContacto")

        self.txt_cod_per, self.txt_rzn_scl = self.obj("txt_01"), self.obj("txt_01_1")
        self.txt_dir_per, self.txt_tel_per = self.obj("txt_01_2"), self.obj("txt_01_3")
        self.txt_cod_act, self.txt_des_act = self.obj("txt_a_00"), self.obj("txt_a_00_1")

        arch.connect_signals(self)

        if self.editando:
            seleccion, iterador = self.nav.obj("grilla").get_selection().get_selected()
            self.cond = str(seleccion.get_value(iterador, 0))
            codprop = str(seleccion.get_value(iterador, 4))
            prop = seleccion.get_value(iterador, 6)
            direccion = seleccion.get_value(iterador, 7)
            telefono = seleccion.get_value(iterador, 8)
            ruc = seleccion.get_value(iterador, 1)[:-2]  # Quita el dígito verificador
            verif = seleccion.get_value(iterador, 11)
            ips = seleccion.get_value(iterador, 9)
            mjt = str(seleccion.get_value(iterador, 10))
            social = seleccion.get_value(iterador, 2)
            fantasia = seleccion.get_value(iterador, 3)

            direccion = "" if direccion is None else direccion
            telefono = "" if telefono is None else telefono

            self.obj("txt_00").set_text(self.cond)
            self.obj("txt_01").set_text(codprop)
            self.obj("txt_01_1").set_text(prop)
            self.obj("txt_01_2").set_text(direccion)
            self.obj("txt_01_3").set_text(telefono)
            self.obj("txt_02").set_text(ruc)
            self.obj("txt_02_1").set_value(verif)
            self.obj("txt_03").set_text(ips)
            self.obj("txt_04").set_text(mjt)
            self.obj("txt_05").set_text(social)
            self.obj("txt_06").set_text(fantasia)
        else:
            self.obj("txt_00").set_text(Op.nuevoid(self.nav.datos_conexion,
                self.nav.tabla + "_s", self.nav.campoid))

        self.conexion = Op.conectar(self.nav.datos_conexion)
        self.principal_guardado = True

        self.estadoedicion_medio_contacto(False)
        self.estadoedicion_actividad(False)

        self.config_grilla_establecimiento()
        self.cargar_grilla_establecimiento()
        self.config_grilla_medio()
        self.cargar_grilla_medio()
        self.config_grilla_actividad()
        self.cargar_grilla_actividad()

        self.nav.obj("grilla").get_selection().unselect_all()
        self.nav.obj("barraestado").push(0, "")
        self.obj("ventana").show()
Esempio n. 28
0
    def __init__(self, edit, origen):
        self.editando = edit
        self.nav = origen

        arch = Op.archivo("rrhh_comprobantes")
        self.obj = arch.get_object

        self.obj("ventana").set_position(1)
        self.obj("ventana").set_default_size(800, 600)
        self.obj("ventana").set_modal(True)

        edit = "Creando" if not self.editando else "Editando"
        self.obj("ventana").set_title(edit +
                                      " Registro de Comprobante de Pago")
        Mens.boton_guardar_cancelar(self.obj("btn_guardar"),
                                    self.obj("btn_cancelar"))

        self.obj("txt_00").set_max_length(10)
        self.obj("txt_01").set_max_length(10)
        self.obj("txt_01_2").set_max_length(12)
        self.obj("txt_02").set_max_length(10)
        self.obj("txt_05").set_max_length(100)

        self.obj("txt_c_01").set_max_length(10)
        self.obj("txt_c_02").set_max_length(10)
        self.obj("txt_c_03").set_max_length(12)

        self.obj("txt_00").set_tooltip_text(
            "Ingrese el Número de Comprobante de Pago")
        self.obj("txt_01").set_tooltip_text(
            Mens.usar_boton("el Empleado cuyo Pago es registrado"))
        self.obj("txt_01_1").set_tooltip_text("Nombre y Apellido del Empleado")
        self.obj("txt_01_2").set_tooltip_text(
            "Ingrese el Nro. de Documento del Empleado")
        self.obj("txt_02").set_tooltip_text(
            Mens.usar_boton("el Contrato del Empleado seleccionado"))
        self.obj("txt_02_1").set_tooltip_text(
            "Cargo del Empleado dentro de la Empresa")
        self.obj("txt_03").set_tooltip_text(
            Mens.usar_boton("la Fecha de Inicio del Periodo de Pago"))
        self.obj("txt_04").set_tooltip_text(
            Mens.usar_boton("la Fecha de Finalización del Periodo de Pago"))
        self.obj("txt_05").set_tooltip_text(
            "Ingrese cualquier información adicional con respecto al Pago")
        self.obj("txt_02").grab_focus()

        self.obj("txt_c_01").set_tooltip_text(
            "Ingrese el Código del Detalle del Pago")
        self.obj("txt_c_02").set_tooltip_text(
            Mens.usar_boton("el Concepto de Pago"))
        self.obj("txt_c_03").set_tooltip_text(
            "Ingrese la Cantidad que es Pagada\n(días trabajados, horas extraordinarias, cantidad de hijos...)"
        )
        self.obj("txt_c_04").set_tooltip_text("Ingrese el Monto a Pagar")

        self.txt_cod_per, self.txt_rzn_scl = self.obj("txt_01"), self.obj(
            "txt_01_1")
        self.txt_nro_doc, self.cmb_tip_doc = self.obj("txt_01_2"), self.obj(
            "cmb_tipo_doc")
        self.txt_cod_cnt, self.txt_crg_cnt = self.obj("txt_02"), self.obj(
            "txt_02_1")
        self.txt_cod_con, self.txt_des_con = self.obj("txt_c_02"), self.obj(
            "txt_c_02_1")

        self.idPersona, self.borrar_contrato, self.idTipoDoc = None, not edit, -1
        Op.combos_config(self.nav.datos_conexion, self.obj("cmb_tipo_doc"),
                         "tipodocumentos", "idTipoDocumento")

        self.salariominimo = Op.obtener_salario_minimo(self.nav.datos_conexion)
        arch.connect_signals(self)

        self.config_grilla_conceptos()
        self.conexion = Op.conectar(self.nav.datos_conexion)

        if self.editando:
            seleccion, iterador = self.nav.obj(
                "grilla").get_selection().get_selected()
            self.cond = str(seleccion.get_value(iterador, 0))
            idcont = str(seleccion.get_value(iterador, 1))
            fini = seleccion.get_value(iterador, 9)
            ffin = seleccion.get_value(iterador, 10)
            fecha = seleccion.get_value(iterador, 13)[:-9]

            obs = seleccion.get_value(iterador, 14)
            obs = "" if obs is None else obs

            self.fechaini = seleccion.get_value(iterador, 21)
            self.fechafin = seleccion.get_value(iterador, 22)

            self.obj("txt_00").set_text(self.cond)
            self.obj("txt_02").set_text(idcont)
            self.obj("txt_03").set_text(fini)
            self.obj("txt_04").set_text(ffin)
            self.obj("txt_05").set_text(obs)

            self.focus_out_event(self.obj("txt_02"), 0)
            self.obj("lbl_fecha").set_text(fecha)

            self.cargar_grilla_conceptos()
            self.estadoguardar(True)
        else:
            self.obj("txt_00").set_text(
                Op.nuevoid(self.nav.datos_conexion, self.nav.tabla + "_s",
                           self.nav.campoid))
            self.obj("cmb_tipo_doc").set_active(0)

            self.obj("lbl_fecha").set_text(Cal.mysql_fecha(date.today()))
            self.cargar_grilla_conceptos()
            self.estadoguardar(False)

        self.principal_guardado = True
        self.estadoedicion(False)

        self.nav.obj("grilla").get_selection().unselect_all()
        self.nav.obj("barraestado").push(0, "")
        self.obj("ventana").show()
Esempio n. 29
0
    def __init__(self, edit, origen):
        self.editando = edit
        self.nav = origen

        arch = Op.archivo("abm_cheques")
        self.obj = arch.get_object

        self.obj("ventana").set_position(1)
        self.obj("ventana").set_modal(True)

        edit = "Creando" if not self.editando else "Editando"
        self.obj("ventana").set_title(edit + " Registro de Cheques de Terceros")
        Mens.boton_guardar_cancelar(self.obj("btn_guardar"), self.obj("btn_cancelar"))

        self.obj("txt_00").set_max_length(10)
        self.obj("txt_01").set_max_length(10)
        self.obj("txt_02").set_max_length(20)
        self.obj("txt_03").set_max_length(10)
        self.obj("txt_03_2").set_max_length(12)
        self.obj("txt_04").set_max_length(10)
        self.obj("txt_04_2").set_max_length(12)
        self.obj("txt_07").set_max_length(12)

        self.obj("txt_00").set_tooltip_text("Ingrese el Código del Cheque")
        self.obj("txt_01").set_tooltip_text("Ingrese el Nro. de Cheque")
        self.obj("txt_02").set_tooltip_text("Ingrese el Nro. de Cuenta")
        self.obj("txt_03").set_tooltip_text(Mens.usar_boton("el Banco del Cheque"))
        self.obj("txt_03_1").set_tooltip_text("Razón Social del Banco")
        self.obj("txt_03_2").set_tooltip_text("Ingrese el Nro. de Documento del Banco")
        self.obj("txt_03_3").set_tooltip_text("Dirección del Banco")
        self.obj("txt_03_4").set_tooltip_text("Teléfono del Banco")
        self.obj("txt_04").set_tooltip_text(Mens.usar_boton("el Titular del Cheque"))
        self.obj("txt_04_1").set_tooltip_text("Razón Social del Titular")
        self.obj("txt_04_2").set_tooltip_text("Ingrese el Nro. de Documento del Titular")
        self.obj("txt_05").set_tooltip_text(Mens.usar_boton("la Fecha de Emisión del Cheque"))
        self.obj("txt_06").set_tooltip_text(Mens.usar_boton("la Fecha de Cobro del Cheque"))
        self.obj("txt_07").set_tooltip_text("Ingrese el Monto del Cheque")
        self.obj("txt_01").grab_focus()

        mostrar_ventana = True
        self.idTipoDocBanco = self.idTipoDocTitular = self.idTipoCheque = -1
        Op.combos_config(self.nav.datos_conexion, self.obj("cmb_doc_banco"), "tipodocumentos", "idTipoDocumento")
        Op.combos_config(self.nav.datos_conexion, self.obj("cmb_doc_titular"), "tipodocumentos", "idTipoDocumento")
        Op.combos_config(self.nav.datos_conexion, self.obj("cmb_tipo"), "tipocheques", "idTipoCheque")
        arch.connect_signals(self)

        if self.editando:
            seleccion, iterador = self.nav.obj("grilla").get_selection().get_selected()
            self.cond = str(seleccion.get_value(iterador, 0))
            cheque = str(seleccion.get_value(iterador, 1))
            cuenta = seleccion.get_value(iterador, 2)
            banco = str(seleccion.get_value(iterador, 3))
            tip_banco = seleccion.get_value(iterador, 4)
            doc_banco = seleccion.get_value(iterador, 5)
            nom_banco = seleccion.get_value(iterador, 6)
            dir_banco = seleccion.get_value(iterador, 7)
            tel_banco = seleccion.get_value(iterador, 8)
            titular = str(seleccion.get_value(iterador, 9))
            tip_tit = seleccion.get_value(iterador, 10)
            doc_tit = seleccion.get_value(iterador, 11)
            nom_tit = seleccion.get_value(iterador, 12)
            tipo = seleccion.get_value(iterador, 13)
            emision = seleccion.get_value(iterador, 15)
            cobro = seleccion.get_value(iterador, 16)
            monto = str(seleccion.get_value(iterador, 17))
            anulado = seleccion.get_value(iterador, 18)

            if anulado != 1:
                self.fecha_emision = seleccion.get_value(iterador, 19)
                self.fecha_cobro = seleccion.get_value(iterador, 20)

                dir_banco = "" if dir_banco is None else dir_banco
                tel_banco = "" if tel_banco is None else tel_banco

                # Asignación del Tipo de Documento (Banco) en Combo
                model, i = self.obj("cmb_doc_banco").get_model(), 0
                while model[i][0] != tip_banco: i += 1
                self.obj("cmb_doc_banco").set_active(i)

                # Asignación del Tipo de Documento (Titular) en Combo
                model, i = self.obj("cmb_doc_titular").get_model(), 0
                while model[i][0] != tip_tit: i += 1
                self.obj("cmb_doc_titular").set_active(i)

                # Asignación del Tipo de Cheque en Combo
                model, i = self.obj("cmb_tipo").get_model(), 0
                while model[i][0] != tipo: i += 1
                self.obj("cmb_tipo").set_active(i)

                self.obj("txt_00").set_text(self.cond)
                self.obj("txt_01").set_text(cheque)
                self.obj("txt_02").set_text(cuenta)
                self.obj("txt_03").set_text(banco)
                self.obj("txt_03_1").set_text(nom_banco)
                self.obj("txt_03_2").set_text(doc_banco)
                self.obj("txt_03_3").set_text(dir_banco)
                self.obj("txt_03_4").set_text(tel_banco)
                self.obj("txt_04").set_text(titular)
                self.obj("txt_04_1").set_text(nom_tit)
                self.obj("txt_04_2").set_text(doc_tit)
                self.obj("txt_05").set_text(emision)
                self.obj("txt_06").set_text(cobro)
                self.obj("txt_07").set_text(monto)
            else:
                Mens.no_puede_modificar_eliminar_anular(1, "Seleccionó:\n" +
                    "\nNro. Cheque: " + cheque + "\nNro. Cuenta: " + cuenta +
                    "\nBanco: " + nom_banco + "\nTitular: " + nom_tit +
                    "\nFecha de Emisión: " + emision + "\nFecha de Cobro: " + cobro +
                    "\n\nEste Cheque se encuentra actualmente ANULADO.")
                self.obj("ventana").destroy()
                mostrar_ventana = False
        else:
            self.obj("txt_00").set_text(Op.nuevoid(self.nav.datos_conexion,
                self.nav.tabla + "_s", self.nav.campoid))
            self.obj("cmb_doc_banco").set_active(0)
            self.obj("cmb_doc_titular").set_active(0)
            self.obj("cmb_tipo").set_active(0)

        self.nav.obj("grilla").get_selection().unselect_all()
        self.nav.obj("barraestado").push(0, "")

        if mostrar_ventana:
            self.obj("ventana").show()
Esempio n. 30
0
    def __init__(self,
                 con,
                 datos_con,
                 tab,
                 cant,
                 item,
                 buscar,
                 guardar,
                 sumar=None):
        self.conexion = con
        self.datos_conexion = datos_con
        self.tabla = tab
        self.maximo = self.disponible = cant
        self.cond_buscar = buscar
        self.cond_guardar = guardar
        self.idItem = item
        self.sumar = sumar

        cursor = self.conexion.cursor()
        cursor.execute("SAVEPOINT lotes")
        cursor.close()

        arch = Op.archivo("lotes")
        self.obj = arch.get_object

        self.obj("ventana").set_position(1)
        self.obj("ventana").set_default_size(675, 600)
        self.obj("ventana").set_modal(True)

        self.obj("ventana").set_title("Lotes de Ítems")
        Mens.boton_guardar_cancelar(self.obj("btn_guardar"),
                                    self.obj("btn_cancelar"))

        self.obj("txt_00").set_max_length(10)
        self.obj("txt_00_1").set_max_length(40)
        self.obj("txt_01").set_max_length(20)
        self.obj("txt_03").set_max_length(12)

        self.obj("txt_00").set_tooltip_text("Código de Ítem")
        self.obj("txt_00_1").set_tooltip_text("Código de Barras del Ítem")
        self.obj("txt_00_2").set_tooltip_text("Descripción del Ítem")
        self.obj("txt_00_3").set_tooltip_text("Cód. de Presentación del Ítem")
        self.obj("txt_00_4").set_tooltip_text("Presentación del Ítem")
        self.obj("txt_00_5").set_tooltip_text("Cód. de Categoría del Ítem")
        self.obj("txt_00_6").set_tooltip_text("Categoría del Ítem")
        self.obj("txt_00_7").set_tooltip_text(
            "Porcentaje de IVA gravado al Ítem")

        mensaje = "" if self.tabla != "facturacompras" else " o Ingrese el Número de un NUEVO Lote"
        self.obj("txt_01").set_tooltip_text(
            Mens.usar_boton("el Nro. de Lote del Ítem" + mensaje))
        self.obj("txt_03").set_tooltip_text("Ingrese la Cantidad de Ítems")

        self.txt_cod_it, self.txt_bar_it, self.txt_nom_it = self.obj("txt_00"), \
            self.obj("txt_00_1"), self.obj("txt_00_2")
        self.txt_cod_pres, self.txt_des_pres = self.obj("txt_00_3"), self.obj(
            "txt_00_4")
        self.txt_cod_cat, self.txt_des_cat, self.txt_por_imp = self.obj("txt_00_5"), \
            self.obj("txt_00_6"), self.obj("txt_00_7")

        self.fecha_venc = None
        self.txt_lote_nro, self.txt_lote_fch = self.obj("txt_01"), self.obj(
            "txt_02")

        self.config_grilla_lotes()
        arch.connect_signals(self)

        self.obj("btn_item").set_visible(False)  # NO puede cambiar de ítem
        self.obj("txt_00").set_text(self.idItem)
        self.focus_out_event(self.obj("txt_00"), 0)  # Carga datos y grilla

        self.estadoedicion(False)
        self.obj("ventana").show()