Cómo Agregar y utilizar una Librería Externa

Antes de la Versión 8 en Scriptcase, para utilizar una Librería Externa debíamos copiar manualmente los archivos en algún lugar dentro del directorio de nuestro proyecto y luego instanciarlo utilizando la Función PHP require_once.

Esto suponía complicaciones en el caso de que la estructura del proyecto cambie o bien la necesidad de copiar en cada proyecto la Librería que se quería utilizar si se prefería no tenerla accesible desde un lugar común. También suponía copiar la librería manualmente en caso de que se cambie se servidor el proyecto entre otros procesos que se debían hacer cada vez que se generase completamente el proyecto para su publicación.

Desde que se tiene la opción de Librería Externa en el Scriptcase, utilizar una librería como Bootstrap o PHPExcel (por citar solo algunos) se ha vuelto mucho más fácil y eficaz. En este post mostraremos cómo sacarle el mayor provecho a la misma.

Para nuestro ejemplo utilizaremos la Librería PHPExcel, la cual es muy útil en el caso de que debamos generar planillas electrónicas con estructura pre-establecida, ampliamente demandado en casos de integración entre sistemas, o bien cuando requiramos leer una planilla electrónica con datos cargados por usuarios externos y procesarlos luego dentro de nuestro Proyecto Scriptcase.

La Librería PHPExcel se puede descargar desde su repositorio en GitHub: https://github.com/PHPOffice/PHPExcel

La documentación de la macro que utilizaremos está en: http://www.scriptcase.net/docs/es_es/v81/scriptcase-macros/scriptcase-macros#sc_include_library

Desde el enlace de la Librería Externa, solo se debe elegir la opción “Download ZIP” y realizar la descarga.

El archivo descargado, además de la Librería propiamente, contiene su documentación y ejemplos de cómo implementarla en aplicaciones PHP.

Por el momento solo debemos descomprimir la carpeta y archivo contenidos dentro de PHPExcel-1.8\Classes tal y como se muestra en la siguiente imagen.

A continuación, para facilitar la creación de nuestra Librería Externa en Scriptcase, comprimimos la carpeta y archivo que habíamos descomprimido recién.

Recuerden comprimirlo en formato .ZIP de manera a que sea compatible en el futuro.

Ahora que tenemos el archivo comprimido, nos vamos al Scriptcase e ingresamos en el proyecto donde queremos agregar actualmente la Librería Externa.

Estando dentro del proyecto, vamos al menú Herramientas -> Librerías Externas

Al ingresar a la opción de Librerías Externas, nos despliega la lista que Librerías Externas que ya hemos creado en el proyecto actual y en todos los demás. Allí le damos clic en “Crear una nueva librería”

A continuación debemos elegir si la Librería que vamos a crear estará disponible solo para el proyecto actual o pública para todos los proyectos dentro de nuestro Entorno de Desarrollo Scriptcase. Luego ingresamos el nombre que queremos tenga la Librería, para nuestro ejemplo será “PHPExcel” y para finalizar damos clic en “Guardar”.

Ya hemos creado la Librería Externa deseada, damos clic en “Editar” de forma a agregar los archivos a la misma.

Una vez dentro de la Librería, damos clic en “Upload” y seleccionamos el archivo comprimido que generamos recién (no subir el que descargamos que contiene la documentación y ejemplos).

Una vez que subido el archivo, el mismo aparecerá en la ventana desplegada tal y como muestra la siguiente imagen. Tildamos la opción señalada en recuadro de forma a que Scriptcase extraiga el archivo ZIP y damos clic en “OK” para finalizar.

Una vez que nuestra librería tenga los archivos necesarios, se mostrará tal y como muestra la siguiente imagen.

Antes de realizar la codificación en nuestras aplicaciones, debemos verificar que la Librería esté habilitada para nuestro Proyecto, para ello en la lista de Librerías debe figurar con el icono de Check () en Verde al lado del nombre de nuestra librería PHPExcel.

Para realizar la prueba de que la Librería esta funcional de el Scriptcase, vamos a tomar uno de los ejemplos que vienen con la librería descargada. En nuestro caso tomaremos el archivo 01simple.php tal y como se muestra en la siguiente imagen.

Abrimos el archivo en el Blog de Notas y copiamos todo el código que encontramos dentro.

Dentro del Scriptcase creamos una aplicación de tipo Blank y le asignamos un nombre.

Dentro del Evento onExecute pegamos el código copiado recientemente desde el Blog de Notas y a continuación eliminamos la parte del código que no utilizaremos.

La porción de código a borrarse va desde el inicio hasta la línea donde se especificaba la Zona Horaria con la función date_default_timezone_set().

A continuación notamos que, al ser un ejemplo PHP, utiliza la función de PHP require_once para utilizar la Librería PHPExcel. Nosotros al ya tenerlo dentro del Scriptcase, la llamaremos con la función sc_include_library. Con esto sacamos la mayor utilidad de nuestro Scriptcase y evitamos utilizar rutas de directorio que pueden cambiar a lo largo de la vida del proyecto.

Recuerden que la documentación sobre la macro sc_include_library está mencionada más arriba. Los parámetros que requiere son:

Ambito: sys (cuando la librería es pública) y prj (cuando la librería está disponible solo para el proyecto).

Nombre de la Librería: En nuestro ejemplo PHPExcel.

Nombre del Archivo: Una Librería podría incluir varios archivos principales, en nuestro caso el archivo es PHPExcel.php.

Y dos parámetros opcionales:

include_once: Se asegura de que el archivo solo sea incluido una vez (en caso de no especificarlo, el valor por defecto es “true”)

Require: Se especifica que el archivo de la librería será requerido o no (si no es especificado, el valor por defecto es “true”). En caso que sea requerido, se generará un error si por algún motivo el archivo no se encuentra.

Una vez agregada esa línea de código ya podemos realizar la ejecución de nuestra prueba sin cambio extra alguno.

Al ejecutar la aplicación, debería mostrar un log del proceso parecido al siguiente y al final indicar en qué lugar fueron guardados los dos archivos generados.

Al acceder a la ruta indicada, si es que no se tuvo errores de permisos o de algún otro tipo por restricciones, veremos que fueron generados los archivos index.xls e index.xlsx.

Si bien el archivo contiene mayormente caracteres sin mucha relación entre sí, sirve para demostrar el potencial de la herramienta y cómo utilizarla.

Es importante recordar además que se tiene muchos más ejemplos que se pueden probar según la necesidad específica que se tenga a futuro.

Para editar la ruta donde serán generados los archivos se debe editar, tal y como se indica en recuadro en la siguiente imagen, la función “save” de la instancia de nuestra planilla electrónica.

Espero sea de utilidad tanto para la creación de librerías externas como también la librería que utilizamos de ejemplo si es que no la conocían aún.

You might also like…

Te pagan por tu sistema no por el código

En el mundo empresarial el tiempo es un factor determinante, dado que puede provocar ganancias o ta...

Principales características de un buen desarrollador web

Quizás en algún momento se haya preguntado qué habilidades se necesitan para convertirse en desa...

Cómo Implementar A2F usando un Desarrollo Propio en NodeJS en una aplicación Scriptcase

En un anterior a2f artículo hablamos de Swivel como herramienta externa para integrar nuestra...

You might also like…

Get new posts, resources, offers and more each week.

We will use the information you provide to update you about our Newsletter and Special Offers. You can unsubscribe any time you want by clinck in a link in the footer of any email you receive from us, or by contacting us at sales@scriptcase.net. Learn more about our Privacy Police.