Академический Документы
Профессиональный Документы
Культура Документы
St
ud
io
Tr
ia
sk
PD
5. Listados
de
Si se selecciona Proyectos, Cargar un formulario con los cuadros de texto Cdigo, Nombre, Telfono Fijo,
Telfono Mvil y los botones para Ingresar, Consultar, Modificar y Borrar un Proyecto.
Si se selecciona Actividades, Cargar un formulario con los cuadros de texto y los botones para Ingresar,
Consultar, Modificar y Borrar una actividad.
Si se selecciona Responsables, Cargar un formulario con los cuadros de texto y los botones para Ingresar,
Consultar, Modificar y Borrar Un responsable.
Si se selecciona ActividadesxProyectos con Responsables Cargar un formulario con los cuadros de texto y
los botones para Ingresar, Consultar, Modificar y Borrar ActividadesxProyectos con Responsables.
Si selecciona Listados, Mostrar un formulario con los botones: 1 Listado de Proyectos con sus actividades. 2.
Listados de Responsables con sus actividades. Los listados se deben mostrar en QTableView
2. La herramientas
de
sk
PD
St
ud
io
Tr
ia
https://www.python.org/downloads/
de
sk
PD
St
ud
io
Tr
ia
http://www.riverbankcomputing.co.uk/software/pyqt/download
de
sk
PD
St
ud
io
Tr
ia
https://code.google.com/p/pyscripter/downloads/list
http://dev.mysql.com/downloads/file.php?id=454383
sk
PD
de
F
io
ud
St
l
ia
Tr
3. Instalar Herramientas
de
sk
PD
St
ud
io
Tr
ia
l
ia
Tr
io
ud
St
F
sk
PD
de
Finalizar
Instalar PyQt4-4.11.3-gpl-Py2.7-Qt4.8.6-x32
sk
PD
de
F
io
ud
St
l
ia
Tr
sk
PD
de
F
io
ud
St
l
ia
Tr
l
ia
Tr
io
ud
St
F
sk
PD
de
Finalizar
Instalar PyScripter-v2.5.3-Setup
sk
PD
de
F
io
ud
St
l
ia
Tr
sk
PD
de
F
io
ud
St
l
ia
Tr
sk
PD
de
F
io
ud
St
l
ia
Tr
sk
PD
de
F
io
ud
St
l
ia
Tr
sk
PD
de
F
io
ud
St
Finalizar
ia
Tr
de
sk
PD
St
ud
io
Tr
ia
sk
PD
de
F
io
ud
St
l
ia
Tr
sk
PD
de
F
io
ud
St
l
ia
Tr
l
ia
Tr
io
ud
St
F
sk
PD
de
sk
PD
de
F
io
ud
St
l
ia
Tr
l
ia
Tr
io
ud
St
F
sk
PD
de
3.2 Abrir PHPMYADMIN en un Navegador WEB:
Se digita: http://localhost:81/phpmyadmin
Mowes Fue configurado para salir por el puerto 81
sk
PD
de
F
io
ud
St
l
ia
Tr
l
ia
Tr
io
ud
St
F
de
sk
PD
sk
PD
de
F
io
ud
St
l
ia
Tr
l
ia
Tr
io
F
St
ud
de
sk
PD
sk
PD
de
F
io
ud
St
l
ia
Tr
sk
PD
de
F
io
ud
St
Click en Grabar
ia
Tr
l
ia
Tr
io
St
ud
de
sk
PD
sk
PD
de
F
io
ud
St
l
ia
Tr
sk
PD
de
F
io
ud
St
l
ia
Tr
sk
PD
de
F
io
ud
St
l
ia
Tr
l
ia
Tr
io
F
St
ud
de
sk
PD
l
ia
Tr
io
ud
St
sk
PD
de
sk
PD
de
F
io
ud
St
l
ia
Tr
l
ia
Tr
io
ud
St
F
de
sk
PD
sk
PD
de
F
io
ud
St
l
ia
Tr
l
ia
Tr
io
St
ud
de
sk
PD
sk
PD
de
F
io
ud
St
l
ia
Tr
l
ia
Tr
io
St
ud
de
sk
PD
sk
PD
de
F
io
ud
St
l
ia
Tr
l
ia
Tr
io
ud
St
de
sk
PD
3.8.1.3 En la segunda columna del Item relaciones internas se selecciona la clave primaria en la tabla
RESPONSABLE (en la fila de la Clave Fornea CODRESP):
sk
PD
de
F
io
ud
St
Click en grabar
ia
Tr
l
ia
Tr
io
ud
St
de
sk
PD
sk
PD
de
F
io
ud
St
l
ia
Tr
sk
PD
de
F
io
ud
St
l
ia
Tr
sk
PD
de
F
io
ud
St
l
ia
Tr
l
ia
Tr
io
ud
St
de
sk
PD
sk
PD
de
F
io
ud
St
Click en grabar
ia
Tr
l
ia
Tr
io
ud
St
de
sk
PD
l
ia
Tr
io
ud
St
de
sk
PD
Click en Diseador:
sk
PD
de
F
io
ud
St
l
ia
Tr
l
ia
Tr
io
ud
St
F
de
sk
PD
l
ia
Tr
io
F
St
ud
de
sk
PD
Y Se reorganizan al gusto:
l
ia
Tr
io
ud
St
de
sk
PD
l
ia
Tr
io
ud
St
de
sk
PD
Click en exportar:
l
ia
Tr
io
ud
St
F
de
sk
PD
l
ia
Tr
io
ud
St
F
Click en continuar
de
sk
PD
sk
PD
de
F
io
ud
St
l
ia
Tr
sk
PD
de
F
io
ud
St
l
ia
Tr
de
sk
PD
St
ud
io
Tr
ia
5. Cdigo
5.1 Se crea una carpeta llamada pryProyectos, con tres carpetas: modelo, vita y control:
5.2 desde PYSCRIPTER se crea un mdulo llamado__init__.py dentro de cada carpeta para
relacionarlas como paquetes:
sk
PD
de
F
io
ud
St
l
ia
Tr
sk
PD
de
F
io
ud
St
l
ia
Tr
sk
PD
de
F
io
ud
St
l
ia
Tr
sk
PD
de
F
io
ud
St
l
ia
Tr
sk
PD
de
F
io
ud
St
l
ia
Tr
sk
PD
de
F
io
ud
St
l
ia
Tr
sk
PD
de
F
io
ud
St
l
ia
Tr
sk
PD
de
F
io
ud
St
l
ia
Tr
sk
PD
de
F
io
ud
St
l
ia
Tr
sk
PD
de
F
io
ud
St
l
ia
Tr
sk
PD
de
F
io
ud
St
l
ia
Tr
l
ia
Tr
io
ud
St
F
de
sk
PD
sk
PD
de
F
io
ud
St
l
ia
Tr
l
ia
Tr
io
F
St
ud
de
sk
PD
sk
PD
de
F
io
ud
St
l
ia
Tr
l
ia
Tr
io
ud
St
de
sk
PD
l
ia
Tr
io
ud
St
de
sk
PD
5.3.1.4 Crear el archivo frmMenuPrincipal.py utilizando el aplicativo que crea archivos .py a partir de
archivos.ui
5.3.1.5 Se ejecuta el cmd de DOS y se cambia a la carpeta C:\Python27\Lib\site-packages\PyQt4
sk
PD
de
F
io
ud
St
l
ia
Tr
sk
PD
de
F
io
ud
St
l
ia
Tr
l
ia
Tr
io
ud
St
F
de
sk
PD
sk
PD
de
F
io
ud
St
l
ia
Tr
l
ia
Tr
io
ud
St
de
sk
PD
sk
PD
de
F
io
ud
St
l
ia
Tr
l
ia
Tr
io
ud
St
de
sk
PD
sk
PD
de
F
io
ud
St
l
ia
Tr
l
ia
Tr
io
ud
St
F
sk
PD
de
5.3.2
l
ia
Tr
io
ud
St
F
sk
PD
de
5.3.2.1 El Formulario para proyectos se llama FrmProyectos
l
ia
Tr
de
sk
PD
St
ud
io
5.3.2.2 FrmProyectos contiene 6 etiquetas (Labels)(una de ellas para el ttulo), 5 cuadros de texto
(Plain Text Edit) llamados txtCod, txtTit, txtFini,txtFfin y txtCos. 4 botones de comando (Push
Button) llamdos btnGuardar, btnConsultar, btnModificar y btnBorrar
l
ia
Tr
de
sk
PD
St
ud
io
l
ia
Tr
io
de
sk
PD
St
ud
sk
PD
St
ud
io
Tr
ia
de
5.3.2.7 Copiar los Archivos creados en la carpeta vista del proyecto y abrirlos con PYSCRIPTER
l
ia
Tr
io
ud
6. Codificacin
St
sk
PD
Adicionalmente se debe implementar el mtodo __init__, en la clase de cada formulario para lograr el
efecto del llamado al mtodo show():
def __init__(self):
de
QtGui.QWidget.__init__(self)
self.setupUi(self)
sk
PD
de
F
io
ud
St
l
ia
Tr
sk
PD
de
F
io
ud
St
l
ia
Tr
l
ia
Tr
io
de
sk
PD
St
ud
En el Formulario principal se define la accin para cada men de barra, y que no tiene submen:
Como Listado de proyectos con sus actividades y Listado de Responsables con sus actividades, son
submens, ya vienen adicionados desde el diseador PYQT4.
l
ia
Tr
io
de
sk
PD
St
ud
Al Formulario principal se le adiciona la accin a cada men de la barra y que no tiene submen:
A los Mens, que no tienen submen, se cambia la propiedad setTitle por setText, y el nombre del men,
por el nombre de la accin.
l
ia
Tr
de
sk
PD
St
ud
io
Se invoca el mtodo connect de la clase QObject del mdulo QtCore, de tal manera que al darle click al
men o submen invoque los mtodos asociados y que permiten mostrar cada formulario segn sea el
caso:
l
Tr
ia
de
sk
PD
St
ud
io
sk
PD
de
F
io
ud
St
l
ia
Tr
sk
PD
de
F
io
ud
St
l
ia
Tr
sk
PD
de
F
io
ud
St
l
ia
Tr
sk
PD
St
ud
io
Tr
ia
de
#------------------------------------------------------------------------------# Name:
module1
# Purpose:
# Author:
Carlos Arturo
#
# Created:
06/12/2014
<your licence>
#-------------------------------------------------------------------------------
class Proyecto(object):
def __init__(self, param_codigo, param_titulo, param_fechaIni,param_fechaFin,param_costo):
self.__codigo=param_codigo
self.__titulo=param_titulo
self.__fechaIni=param_fechaIni
self.__fechaFin=param_fechaFin
ia
self.__costo=param_costo
Tr
def __getCodigo(self):
sk
PD
def __getTitulo(self):
St
self.__codigo = param_codigo
ud
io
return self.__codigo
return self.__titulo
de
def __getFechaIni(self):
return self.__fechaIni
def __getFechaFin(self):
return self.__fechaFin
def __getCosto(self):
return self.__costo
ia
io
Tr
self.__costo = param_costo
ud
St
fechaIni = property(fget = __getFechaIni, fset = __setFechaIni, doc = 'Fecha de Inicio del proyecto')
sk
PD
de
l
ia
Tr
io
ud
St
F
# Name:
module1
# Author:
de
# Purpose:
#
sk
PD
#-------------------------------------------------------------------------------
Carlos Arturo
#
# Created:
08/12/2014
<your licence>
#-------------------------------------------------------------------------------
class Actividad(object):
def __init__(self, param_codigo, param_descripcion, param_fechaIni,param_fechaFin):
self.__codigo=param_codigo
self.__descripcion=param_descripcion
self.__fechaIni=param_fechaIni
self.__fechaFin=param_fechaFin
def __getCodigo(self):
ia
return self.__codigo
Tr
io
self.__codigo = param_codigo
ud
def __getDescripcion(self):
St
return self.__descripcion
sk
PD
de
def __getFechaIni(self):
return self.__fechaIni
def __getFechaFin(self):
return self.__fechaFin
sk
PD
St
ud
io
Clase Responsable
de
6.1.3
Tr
ia
module1
# Purpose:
#
# Author:
Carlos Arturo
#
# Created:
08/12/2014
class Responsable(object):
ud
St
self.__codigo=codigo
sk
PD
self.__nombre=nombre
self.__telFijo=telFijo
self.__telMovil=telMovil
de
def __getCodigo(self):
return self.__codigo
def __getNombre(self):
return self.__nombre
io
#-------------------------------------------------------------------------------
ia
<your licence>
Tr
# Licence:
def __getTelFijo(self):
return self.__telFijo
ia
def __getTelMovil(self):
io
Tr
return self.__telMovil
St
ud
self.__telMovil = telMovil
sk
PD
de
l
ia
Tr
io
ud
St
F
sk
PD
#------------------------------------------------------------------------------# Name:
module1
#
# Author:
de
# Purpose:
Carlos Arturo
#
# Created:
08/12/2014
<your licence>
#-------------------------------------------------------------------------------
class Resp_Act_Proy(object):
def __init__(self, codResp, codActiv, codProy,fecha_Asig):
self.__codResp=codResp
self.__codActiv=codActiv
self.__codProy=codProy
self.__fecha_Asig=fecha_Asig
def __getCodResp(self):
Tr
ia
return self.__codResp
io
ud
self.__codResp = codResp
St
def __getCodActiv(self):
sk
PD
return self.__codActiv
de
self.__codActiv = codActiv
def __getCodProy(self):
return self.__codProy
def __getFecha_Asig(self):
return self.__fecha_Asig
Tr
ia
ud
io
St
#!/usr/bin/python
# Name:
sk
PD
#------------------------------------------------------------------------------module1
# Purpose:
# Author:
#
# Created:
de
Carlos Arturo
06/12/2014
<your licence>
#------------------------------------------------------------------------------import MySQLdb
class ConexionMySQL(object):
mensaje="ok"
conexion=None
cursor=None
lista=None
def __init__(self):
pass
def getLista(self):
Tr
ia
return self.lista
io
def abrirBd(self,usuario,contrasena,baseDeDatos):
mensaje="ok"
ud
try:
self.cursor = self.conexion.cursor()
St
sk
PD
except MySQLdb.Error,msgError:
de
def cerrarBd(self):
mensaje="ok"
try:
self.cursor.close()
self.conexion.close()
except MySQLdb.Error,msgError:
self.mensaje= "Problemas con la Base de Datos Error :%s"%msgError
except AttributeError as objAttributeError:
self.mensaje= "Problemas con la Base de Datos Error :"+objAttributeError[0]
return self.mensaje
def ejecutarComandoSql(self,comandoSql):
mensaje="ok"
ia
try:
Tr
self.cursor.execute(comandoSql)
io
self.lista = list(self.cursor)
self.conexion.commit()
ud
except MySQLdb.Error,msgError:
St
sk
PD
Clase CtrProyecto
de
6.2.2
#------------------------------------------------------------------------------# Name:
module1
# Purpose:
#
# Author:
#
Carlos Arturo
# Created:
04/12/2014
<your licence>
ia
pass
Tr
if __name__ == '__main__':
io
main()
ud
class CtrProyecto(object):
St
mensaje='ok'
objProyecto=None
sk
PD
lista=None
def __init__(self,Proyecto):
de
self.objProyecto=Proyecto
def getLista(self):
return self.lista
def getObjProyecto(self):
return self.objProyecto
def guardar(self):
codigo=self.objProyecto.codigo
titulo=self.objProyecto.titulo
fechaIni=self.objProyecto.fechaIni
fechaFin=self.objProyecto.fechaFin
costo=self.objProyecto.costo
comandoSql="INSERT INTO PROYECTO
VALUES('"+codigo+"','"+titulo+"','"+fechaIni+"','"+fechaFin+"',"+str(costo)+")"
objConexionMySQL=ConexionMySQL()
ia
self.mensaje=objConexionMySQL.abrirBd("root","","bdproyectos")
Tr
if self.mensaje=='ok':
if self.mensaje=='ok':
ud
self.mensaje= objConexionMySQL.cerrarBd()
sk
PD
codigo=self.objProyecto.codigo
St
return self.mensaje
def modificar(self):
io
self.mensaje=objConexionMySQL.ejecutarComandoSql(comandoSql)
titulo=self.objProyecto.titulo
fechaIni=self.objProyecto.fechaIni
de
fechaFin=self.objProyecto.fechaFin
costo=self.objProyecto.costo
if self.mensaje=='ok':
self.mensaje= objConexionMySQL.cerrarBd()
return self.mensaje
def borrar(self):
codigo=self.objProyecto.codigo
Tr
if self.mensaje=='ok':
ia
self.mensaje=objConexionMySQL.abrirBd("root","","bdproyectos")
objConexionMySQL=ConexionMySQL()
if self.mensaje=='ok':
ud
self.mensaje= objConexionMySQL.cerrarBd()
io
self.mensaje=objConexionMySQL.ejecutarComandoSql(comandoSql)
sk
PD
def consultar(self):
St
return self.mensaje
codigo=self.objProyecto.codigo
de
self.objProyecto.titulo= self.lista[0][1]
self.objProyecto.fechaIni= self.lista[0][2]
self.objProyecto.fechaFin= self.lista[0][3]
self.objProyecto.costo= self.lista[0][4]
if self.mensaje=='ok':
self.mensaje= objConexionMySQL.cerrarBd()
return self.mensaje
def listar(self):
codigo=self.objProyecto.codigo
ia
Tr
objConexionMySQL=ConexionMySQL()
io
self.mensaje=objConexionMySQL.abrirBd("root","","bdproyectos")
if self.mensaje=='ok':
St
self.lista=objConexionMySQL.getLista()
ud
self.mensaje=objConexionMySQL.ejecutarComandoSql(comandoSql)
if self.mensaje=='ok':
sk
PD
self.mensaje= objConexionMySQL.cerrarBd()
6.2.3
de
return self.mensaje
Clase CtrActividad
module1
# Purpose:
#
# Author:
#
Carlos Arturo
# Created:
04/12/2014
<your licence>
ia
pass
Tr
if __name__ == '__main__':
io
main()
ud
class CtrActividad(object):
St
mensaje='ok'
objActividad=None
sk
PD
lista=None
def __init__(self,Actividad):
de
self.objActividad=Actividad
def getLista(self):
return self.lista
def getObjActividad(self):
return self.objActividad
def guardar(self):
codigo=self.objActividad.codigo
descripcion=self.objActividad.descripcion
fechaIni=self.objActividad.fechaIni
fechaFin=self.objActividad.fechaFin
objConexionMySQL=ConexionMySQL()
ia
self.mensaje=objConexionMySQL.abrirBd("root","","bdproyectos")
Tr
if self.mensaje=='ok':
if self.mensaje=='ok':
ud
self.mensaje= objConexionMySQL.cerrarBd()
St
return self.mensaje
def modificar(self):
io
self.mensaje=objConexionMySQL.ejecutarComandoSql(comandoSql)
sk
PD
codigo=self.objActividad.codigo
descripcion=self.objActividad.descripcion
fechaIni=self.objActividad.fechaIni
de
fechaFin=self.objActividad.fechaFin
if self.mensaje=='ok':
self.mensaje= objConexionMySQL.cerrarBd()
return self.mensaje
def borrar(self):
codigo=self.objActividad.codigo
ia
self.mensaje=objConexionMySQL.abrirBd("root","","bdproyectos")
objConexionMySQL=ConexionMySQL()
Tr
if self.mensaje=='ok':
if self.mensaje=='ok':
ud
self.mensaje= objConexionMySQL.cerrarBd()
io
self.mensaje=objConexionMySQL.ejecutarComandoSql(comandoSql)
sk
PD
def consultar(self):
St
return self.mensaje
codigo=self.objActividad.codigo
de
self.objActividad.descripcion= self.lista[0][1]
self.objActividad.fechaIni= self.lista[0][2]
self.objActividad.fechaFin= self.lista[0][3]
if self.mensaje=='ok':
self.mensaje= objConexionMySQL.cerrarBd()
return self.mensaje
def listar(self):
codigo=self.objActividad.codigo
ia
Tr
objConexionMySQL=ConexionMySQL()
io
self.mensaje=objConexionMySQL.abrirBd("root","","bdproyectos")
if self.mensaje=='ok':
St
self.lista=objConexionMySQL.getLista()
ud
self.mensaje=objConexionMySQL.ejecutarComandoSql(comandoSql)
if self.mensaje=='ok':
sk
PD
self.mensaje= objConexionMySQL.cerrarBd()
6.2.4
de
return self.mensaje
Clase CtrResponsable
module1
# Purpose:
#
# Author:
Carlos Arturo
#
# Created:
04/12/2014
<your licence>
Tr
ia
pass
io
if __name__ == '__main__':
ud
main()
St
class CtrResponsable(object):
lista=None
sk
PD
objResponsable=None
mensaje='ok'
de
def __init__(self,Responsable):
self.objResponsable=Responsable
def getLista(self):
return self.lista
def getObjResponsable(self):
return self.objResponsable
def guardar(self):
codigo=self.objResponsable.codigo
nombre=self.objResponsable.nombre
telFijo=self.objResponsable.telFijo
telMovil=self.objResponsable.telMovil
Tr
self.mensaje=objConexionMySQL.abrirBd("root","","bdproyectos")
ia
objConexionMySQL=ConexionMySQL()
if self.mensaje=='ok':
io
self.mensaje=objConexionMySQL.ejecutarComandoSql(comandoSql)
ud
if self.mensaje=='ok':
St
self.mensaje= objConexionMySQL.cerrarBd()
sk
PD
def modificar(self):
return self.mensaje
codigo=self.objResponsable.codigo
nombre=self.objResponsable.nombre
de
telFijo=self.objResponsable.telFijo
telMovil=self.objResponsable.telMovil
if self.mensaje=='ok':
self.mensaje= objConexionMySQL.cerrarBd()
return self.mensaje
def borrar(self):
codigo=self.objResponsable.codigo
Tr
if self.mensaje=='ok':
ia
self.mensaje=objConexionMySQL.abrirBd("root","","bdproyectos")
objConexionMySQL=ConexionMySQL()
if self.mensaje=='ok':
ud
self.mensaje= objConexionMySQL.cerrarBd()
io
self.mensaje=objConexionMySQL.ejecutarComandoSql(comandoSql)
sk
PD
def consultar(self):
St
return self.mensaje
codigo=self.objResponsable.codigo
de
self.objResponsable.nombre= self.lista[0][1]
self.objResponsable.telFijo= self.lista[0][2]
self.objResponsable.telMovil= self.lista[0][3]
if self.mensaje=='ok':
self.mensaje= objConexionMySQL.cerrarBd()
return self.mensaje
def listar(self):
codigo=self.objResponsable.codigo
ia
Tr
objConexionMySQL=ConexionMySQL()
io
self.mensaje=objConexionMySQL.abrirBd("root","","bdproyectos")
if self.mensaje=='ok':
St
self.lista=objConexionMySQL.getLista()
ud
self.mensaje=objConexionMySQL.ejecutarComandoSql(comandoSql)
if self.mensaje=='ok':
sk
PD
self.mensaje= objConexionMySQL.cerrarBd()
6.2.5
de
return self.mensaje
Clase CtrResp_Act_Proy
module1
# Purpose:
#
# Author:
Carlos Arturo
#
# Created:
04/12/2014
<your licence>
Tr
ia
pass
io
if __name__ == '__main__':
ud
main()
St
class CtrResp_Act_Proy(object):
lista=None
sk
PD
objResp_Act_Proy=None
mensaje='ok'
de
def __init__(self,Resp_Act_Proy):
self.objResp_Act_Proy=Resp_Act_Proy
def getLista(self):
return self.lista
def getObjResp_Act_Proy(self):
return self.objResp_Act_Proy
def guardar(self):
codResp=self.objResp_Act_Proy.codResp
codActiv=self.objResp_Act_Proy.codActiv
codProy=self.objResp_Act_Proy.codProy
fecha_Asig=self.objResp_Act_Proy.fecha_Asig
Tr
self.mensaje=objConexionMySQL.abrirBd("root","","bdproyectos")
ia
objConexionMySQL=ConexionMySQL()
if self.mensaje=='ok':
io
self.mensaje=objConexionMySQL.ejecutarComandoSql(comandoSql)
ud
if self.mensaje=='ok':
St
self.mensaje= objConexionMySQL.cerrarBd()
sk
PD
def modificar(self):
return self.mensaje
codResp=self.objResp_Act_Proy.codResp
codActiv=self.objResp_Act_Proy.codActiv
de
codProy=self.objResp_Act_Proy.codProy
fecha_Asig=self.objResp_Act_Proy.fecha_Asig
self.mensaje=objConexionMySQL.ejecutarComandoSql(comandoSql)
if self.mensaje=='ok':
self.mensaje= objConexionMySQL.cerrarBd()
return self.mensaje
def borrar(self):
codResp=self.objResp_Act_Proy.codResp
codActiv=self.objResp_Act_Proy.codActiv
ia
codProy=self.objResp_Act_Proy.codProy
Tr
io
objConexionMySQL=ConexionMySQL()
ud
self.mensaje=objConexionMySQL.abrirBd("root","","bdproyectos")
St
if self.mensaje=='ok':
if self.mensaje=='ok':
self.mensaje=objConexionMySQL.ejecutarComandoSql(comandoSql)
sk
PD
self.mensaje= objConexionMySQL.cerrarBd()
return self.mensaje
de
def consultar(self):
codResp=self.objResp_Act_Proy.codResp
codActiv=self.objResp_Act_Proy.codActiv
codProy=self.objResp_Act_Proy.codProy
if self.mensaje=='ok':
self.mensaje=objConexionMySQL.ejecutarComandoSql(comandoSql)
self.lista=objConexionMySQL.getLista()
if (self.lista!=None):
self.objResp_Act_Proy.fecha_Asig= self.lista[0][3]
if self.mensaje=='ok':
self.mensaje= objConexionMySQL.cerrarBd()
return self.mensaje
Tr
ia
def listar(self):
io
ud
self.mensaje=objConexionMySQL.abrirBd("root","","bdproyectos")
St
if self.mensaje=='ok':
self.mensaje=objConexionMySQL.ejecutarComandoSql(comandoSql)
sk
PD
self.lista=objConexionMySQL.getLista()
if self.mensaje=='ok':
self.mensaje= objConexionMySQL.cerrarBd()
de
return self.mensaje
sk
PD
de
F
io
ud
St
l
ia
Tr
sk
PD
de
F
io
ud
St
l
ia
Tr
l
ia
Tr
io
ud
St
F
sk
PD
Clase Ui_FrmActividades
de
6.3.2
sk
PD
de
F
io
ud
St
l
ia
Tr
sk
PD
de
F
io
ud
St
l
ia
Tr
l
ia
Tr
io
ud
St
F
sk
PD
Clase Ui_FrmResponsables
de
6.3.3
sk
PD
de
F
io
ud
St
l
ia
Tr
sk
PD
de
F
io
ud
St
l
ia
Tr
l
ia
Tr
io
ud
F
St
de
sk
PD
sk
PD
de
F
io
ud
St
l
ia
Tr
sk
PD
de
F
io
ud
St
l
ia
Tr
sk
PD
de
F
io
ud
St
l
ia
Tr
de
sk
PD
St
ud
io
Tr
ia
sk
PD
de
F
io
ud
St
l
ia
Tr
sk
PD
de
F
io
ud
St
l
ia
Tr
sk
PD
de
F
io
ud
St
l
ia
Tr
sk
PD
de
F
io
ud
St
l
ia
Tr
l
ia
Tr
io
de
sk
PD
St
ud
Ver: http://geekytheory.com/generar-un-ejecutable-exe-a-partir-de-un-py/
sk
PD
de
F
io
ud
St
l
ia
Tr
l
ia
Tr
io
ud
St
F
sk
PD
de
8.2 Crear Un archivo llamado setup.py en la vista
l
ia
Tr
ud
io
version="1.0",
sk
PD
setup(name="Manejo Proyectos",
St
import py2exe
description="Breve descripcion",
de
author="autor",
license="tipo de licencia",
scripts=["frmMenuPrincipal.py"],
console=["frmMenuPrincipal.py"],
options={"py2exe": {"bundle_files": 1}},
zipfile=None,
)
io
Tr
ia
de
sk
PD
St
ud