Matlab - App Designer y compilador de matlab usando archivos de excel

 
Vista:
sin imagen de perfil
Val: 10
Ha disminuido su posición en 3 puestos en Matlab (en relación al último mes)
Gráfica de Matlab

App Designer y compilador de matlab usando archivos de excel

Publicado por Ernesto (6 intervenciones) el 13/05/2019 19:38:22
Estoy realizando una interfaz gráfica con matlab usando App designer. La interfaz requiere de archivos excel para importar datos y exportar reportes. Dentro de app designer, la interfaz funciona correctamente. Sin embargo, cuando compilo la aplicación y comienzo a usarla, no logro exportar los reportes (archivos excel). Solamente se escucha el típico sonido de windows cuando hay algún warning. Pienso que quizá me está faltando agregar algo en el compilador de matlab, pero no he logrado encontrar documentación al respecto. Agradezco mucho su ayuda con este tema.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de jesus david ariza royeth
Val: 3.309
Plata
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

App Designer y compilador de matlab usando archivos de excel

Publicado por jesus david ariza royeth (1818 intervenciones) el 13/05/2019 20:25:30
Estimado para que se dé cuenta lo que le está faltando debe agregar la opción de que cree archivo log file en el compilador, en opciones adicionales... Este archivo le muestra todos los errores y advertencias una vez ejecutado el programa
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 10
Ha disminuido su posición en 3 puestos en Matlab (en relación al último mes)
Gráfica de Matlab

App Designer y compilador de matlab usando archivos de excel

Publicado por Ernesto (6 intervenciones) el 13/05/2019 23:56:14
Muchas gracias Jesús. El error que me aparece se debe a que no encuentra el archivo de excel que uso como referencia (Error using copyfile. No matching files were found). En la aplicación uso un archivo de excel como base, en el cual pego los resultados del análisis. Esto para mantener el formato de los reportes. La porción del código que utilizo para hacer esta acción es el siguiente:

BaseRegiones_template='BaseRegiones_template.xls'; % Archivo de excel base
[filenameBR, pathname] = uiputfile('*.xls', 'Nombre del archivo'); % Nombre del archivo de salida definido por el usuario
outname = fullfile(pathname, filenameBR);
copyfile(BaseRegiones_template,outname,'f');

Como menciono, esto funciona muy bien directamente en matlab, pero al compilar la aplicación me devuelve el error:
Error using copyfile. No matching files were found

Gracias por la orientación.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 918
Bronce
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

App Designer y compilador de matlab usando archivos de excel

Publicado por Daniel (354 intervenciones) el 14/05/2019 08:24:07
Hola,

Los recursos estáticos que no sea archivos de Matlab, como imágenes o archivos plantillas Excel, es necesario indicarle al compilador que lo incluya. Si trabajas con mcc se hace con la opción -a

1
mcc -m fun.m -a plantilla.xls

donde fun.m es el programa Matlab y plantilla.xls es el archivo Excel. Puede ver un tutorial para crear aplicaciones en Matlab en el que se explica esto.

Si compilas desde la aplicación grafica hay una zona para agregar archivos donde tendrías que agregar el archivo Excel.

Saludos,
Daniel Rodríguez.
Analytics Lane
Matlab en Analytics Lane
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 10
Ha disminuido su posición en 3 puestos en Matlab (en relación al último mes)
Gráfica de Matlab

App Designer y compilador de matlab usando archivos de excel

Publicado por Ernesto (6 intervenciones) el 14/05/2019 17:16:24
Hola. Gracias por tu respuesta. Estoy compilando usando la aplicación gráfica. El archivo de excel lo he agregado en "Files required for your application to run" y luego en "Files installed for your end user", incluso en ambos sitios al mismo tiempo y sigo viendo el mismo error. En settings también traté agregando la platilla con -a plantilla.xls. La interfaz primero carga un archivo de excel que el usuario busca en su directorio, usando "uigetfile" (esto si funciona correctamente). Una vez que termina el proceso, el usuario debe dar click a otro botón para guardar los resultados. En ese botón se encuentra una función que construye el reporte usando la platilla de excel. Explico esto porque quizá desde los settings esté cometiendo un error. Agradezco tu apoyo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 918
Bronce
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

App Designer y compilador de matlab usando archivos de excel

Publicado por Daniel (354 intervenciones) el 14/05/2019 20:46:54
Hola,

El problema lo puedes tener en la ruta al recurso, revisa si cambias la ruta al ejecutar el código o indica una ruta absoluta al mismo. Para ello puedes usar la función mfilename.

Por cierto, ¿no será una plantilla para el Toolbox Report Generator?

Saludos,
Daniel Rodríguez.
Analytics Lane
Matlab en Analytics Lane
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 10
Ha disminuido su posición en 3 puestos en Matlab (en relación al último mes)
Gráfica de Matlab

App Designer y compilador de matlab usando archivos de excel

Publicado por Ernesto (6 intervenciones) el 15/05/2019 20:39:40
Hola

Si, efectivamente el problema es la ruta de la plantilla. Al colocar la ruta exactamente en donde se encuentra la plantilla en mi equipo, todo funciona correctamente. Ahora el problema que tengo es que al instalar la aplicación en otros equipos, la ruta de la plantilla no existe para ellos, por lo que me sigue marcando error al usar copyfile. Voy a revisar la función mfilename que comentas. Sobre tu pregunta, no, no es plantilla para el Toolbox Report Generator. Gracias por tu respuesta.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 918
Bronce
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

App Designer y compilador de matlab usando archivos de excel

Publicado por Daniel (354 intervenciones) el 15/05/2019 23:33:13
Hola,

Por lo menos no es por el Report Generator, da demasiados problemas cuando se ejecuta en una aplicación compilada.

La versión compilada de un programa de Matlab no es más que los archivos originales ejecutándose en una carpeta temporal. La función mfilename ejecutada en un archivo da el nombre y la ruta de este, si la ejecutas en la terminal da una cadena en blanco. Con esta información puedes saber donde se han descomprimido los archivos de tu aplicación para localizar el Excel.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 10
Ha disminuido su posición en 3 puestos en Matlab (en relación al último mes)
Gráfica de Matlab

App Designer y compilador de matlab usando archivos de excel

Publicado por Ernesto (6 intervenciones) el 16/05/2019 16:18:35
Muchas gracias por el consejo. Tenías razón. Pude solucionar el problema usando fileparts(mfilename('fullpath')). Ahora mis colegas pueden usar la aplicación desde sus equipos personales. Te agradezco nuevamente. Saludos!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 15
Ha disminuido 1 puesto en Matlab (en relación al último mes)
Gráfica de Matlab

App Designer y compilador de matlab usando archivos de excel

Publicado por Rubén (6 intervenciones) el 27/08/2020 20:49:36
¡Buen día!

tengo el mismo problema que menciona Ernesto, sin embargo, a mi me marca estos errores:

Unable to check out a Report Generator license. Reason:

Error in mlreportgen.report.internal.Document/open

Error in mlreportgen.report.ReportBase/openImpl

Error in mlreportgen.report.ReportBase/open

Error in mlreportgen.report.ReportBase/add

Error in pruebareporte/ButtonPushed (line 44)

Error in appdesigner.internal.service.AppManagementService/tryCallback (line 333)

Error in matlab.apps.AppBase>@(source,event)tryCallback(appdesigner.internal.service.AppManagementService.instance(),app,callback,requiresEventData,event)

Error using matlab.ui.control.internal.controller.ComponentController/executeUserCallback (line 335)
Error while evaluating Button PrivateButtonPushedFcn.

Agradecería mucho su ayuda.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar