SC_include_library – Trabajando con librerías | Scriptcase Blog - Development, Web Design, Sales and Digital Marketing

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.

sc_url_library_01

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.

sc_url_library_02

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.

sc_url_library_03

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.

sc_url_library_04

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

sc_url_library_05

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

sc_url_library_06

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”

sc_url_library_07

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”.

sc_url_library_08

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

sc_url_library_09

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).

sc_url_library_10

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.

sc_url_library_11

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

sc_url_library_12

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.

sc_url_library_13

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.

sc_url_library_14

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

sc_url_library_15

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

sc_url_library_16

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().

sc_url_library_17

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.

sc_url_library_18

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.

sc_url_library_19

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.

sc_url_library_20

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.

sc_url_library_21

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.

sc_url_library_22

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.

Tambien te puede interesar

¿Scriptcase usa MVC?

En la actualidad es habitual la implementación del patrón de arquitectura de software llamado MV...

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 nuestras apl...

Deshabilitar el relleno automático y autocompletar: Chrome

Hola, aquí quiero mostrar una alternativa para deshabilitar el relleno automático y el autocomplet...

Comentar este post

Reciba los nuevos post, novedades y ofertas!

Ingresa tu e-mail para recibir orientaciones y asistencia técnica durante el período de evaluación, además de comunicaciones como novedades y ofertas especiales de Scriptcase. Tu información será utilizada de acuerdo con nuestra política de privacidad. Puedes optar por no participar en cualquier momento