jueves, 6 de septiembre de 2012

Librerías de gráficos HTML5

Esta es una lista de las librerías que he encontrado googleando para generar gráficos HTML5.


Rgraph
http://www.rgraph.net/
Licencia:
Gratis para uso no comercial
Licencias para usos comerciales.

Costo Referencia: 249 Euros Licencia un desarrollador.

En mi opinión están bien logrados los gráficos.




Canvas Xpress
http://canvasxpress.org 
Licencia: LGPL3

No tiene gráfica tan vistosa como rgraph. Pero cumple con el  objetivo.








Flotr2
http://www.humblesoftware.com/flotr2/index
Licencia : Open Source

En cuanto a gráfica lo pondría por debajo de rgraph.

sábado, 1 de septiembre de 2012

Fatal error: Uncaught exception 'Zend_Db_Adapter_Exception'

Estoy integrando el Framework Zend a mi administrador de Frameworks Helfer.  Y luego de ejecutar esta linea:

zf configure db-adapter "adapter=PDO_MYSQL&username=root&password=nodoypass" production


Me apareció el siguiente error:

Fatal error: Uncaught exception 'Zend_Db_Adapter_Exception' with message 'Configuration array must have a key for 'dbname' that names the database instance' in /usr/share/php/libzend-framework-php/Zend/Db/Adapter/Abstract.php:287 Stack trace: #0 /usr/share/php/libzend-framework-php/Zend/Db/Adapter/Abstract.php(183): Zend_Db_Adapter_Abstract->_checkRequiredOptions(Array) #1 /usr/share/php/libzend-framework-php/Zend/Db.php(270): Zend_Db_Adapter_Abstract->__construct(Array) #2 /usr/share/php/libzend-framework-php/Zend/Application/Resource/Db.php(142): Zend_Db::factory('PDO_MYSQL', Array) #3 /usr/share/php/libzend-framework-php/Zend/Application/Resource/Db.php(154): Zend_Application_Resource_Db->getDbAdapter() #4 /usr/share/php/libzend-framework-php/Zend/Application/Bootstrap/BootstrapAbstract.php(683): Zend_Application_Resource_Db->init() #5 /usr/share/php/libzend-framework-php/Zend/Application/Bootstrap/BootstrapAbstract.php(626): Zend_Application_Bootstrap_BootstrapAbstract->_executeResource('db') #6 /usr/share/php/libzend in /usr/share/php/libzend-framework-php/Zend/Db/Adapter/Abstract.php on line 287


Al ver mirar el archivo donde se guarda esta configuración (en mi caso):

/var/www/zftest/application/configs

Veo que faltan parámetros (el error dice must have a key for dbname), host por ejemplo, nombre de la base, etc. El video tutorial me indujo a error.

La instrucción correcta es:
zf configure db-adapter "adapter=PDO_MYSQL&dbname=zftest&host=localhost&username=root&password=fateswarning" development


Cambie el ultimo parámetro de production a development, debido a dos cosas:
1. Es ambiente de desarrollo
2. Me daba un error al ya estar creada la entrada para production
    The config already has a db resource configured in section production.

Fuentes
http://j.gs/1MxU

Vídeo Tutorial
http://j.gs/1MxV


jueves, 30 de agosto de 2012

Instalando Zend Framework en Ubuntu

Para instalar Zend Framework en Ubuntu solo basta escribir la instrucción:
 sudo apt-get install zend-framework

Una vez instalado se puede crear un proyecto. Para eso te debes ubicar en la carpeta de proyectos Web en mi caso /var/www/ y escribir:
sudo zf create project zftest

Donde zftest es el nombre de mi proyecto.

Paso siguiente habilitamos el uso de layouts
sudo zf.sh enable layout

Zend queda instalado en la siguiente dirección:
/usr/share/php/libzend-framework-php

Y se debe copiar la carpeta Zend en la carpeta library de nuestro proyecto
/var/www/zftest/library

Para eso mejor crearemos un symbolic link
sudo ln -s /usr/share/php/libzend-framework-php/Zend Zend

Vamos a configurar nuestra aplicación en Apache
En la carpeta docs de nuestro proyecto se debe editar el archivo README.txt

sudo vim README.txt
:set nu

Copio las lineas que corresponden a la configuración para Apache en un nuevo archivo dentro de la carpeta de configuración de virtual host de Apache.
:16,30 write /etc/apache2/sites-available/zftest

Habilitamos nuestro sitio
sudo a2ensite zftest

Reiniciamos Apache
sudo /etc/init.d/apache2 reload

Agregamos nuestro sitio en el archivo hosts
127.0.1.1       zftest.local


Y después colocamos en el navegador zftest.local y este es el resultado


Fuentes
http://j.gs/1MO1

martes, 28 de agosto de 2012

[DFCENGINE] Engine Logic:Privilegios insuficientes - Microstrategy


Voy a cumplir un año trabajando con la herramienta Microstrategy y no he escrito nada, hasta ahora. Una buena oportunidad para hacerlo es este error que reporto uno de los usuarios de unos reportes que desarrollé:

Error en los resultados del informe
(SQLEngine obtuvo una Excepción de DFC: [DFCENGINE] Engine Logic:Privilegios insuficientes: no se puede ejecutar un informe que utiliza varios orígenes de datosError en el método de Proceso del Componente: SQLEngineServer, proyecto NCL Reports-Pre-Producción, Trabajo 9619, Cód Error= -2147212800.)

El asunto es que solo al usuario de el le ocurría el problema.

La solución la encontré en los foros de la herramienta y es la siguiente:

Desde el Desktop:
En Administración -  User Manager - Everyone

Editar usuario User Definition - Project Access  y dar permisos en la opción Multisource Option


Para que los cambios tengan efecto, se debe salir y volver a entrar a la sesión.

Multisource Option no viene con la versión estándar de la herramienta, es una característica que se debe comprar aparte, por lo menos en la versión que estoy usando.

Fuente:
http://j.gs/1M8z

miércoles, 22 de agosto de 2012

Contar el numero de lineas de un archivo con AWK

Las lineas de un archivo se pueden contar desde Bash, con la siguiente orden:
wc -l nombre_archivo


El problema con esta orden es que tambien muestra el nombre del archivo. Es un problema si lo que quieres es solo el numero.

El siguiente script AWK muestra la cantidad de lineas de un archivo pero solo el numero.

Nombre de archivo contar.awk

La forma de uso es la siguiente:
awk -f contar.awk archivo_a_contar.txt

martes, 21 de agosto de 2012

Eliminar elementos repetidos con AWK

AWK es uno de esos lenguajes super poderosos, en que sientes que puedes hacer cualquier cosa. Disponible originalmente en Unix y por extensión a Linux, ahora se puede instalar hasta en Windows.

Dejando la chachara de lado, les dejo una funcionalidad para eliminar elementos repetidos de una lista.

Ponganle por nombre a este archivo distinct.awk


Modo de uso:
awk -f distinct.awk lista_repetidos.txt > resultado.txt

lista_repetidos.txt es un archivo con una columna, con una lista de elementos que pueden o no estar repetidos. Este script dejará registros únicos.

Mas sobre AWK
http://j.gs/1KmI

domingo, 19 de agosto de 2012

Repetir n Veces un carácter en VIM



Necesitamos repetir caracteres algunas veces cuando comentamos código, algunos entre los cuales me cuento, colocamos varias rayitas para separar textos o destacar. Lo que muchos hacen es presionar la tecla del carácter a repetir n veces hasta que tienen una cadena con un largo aceptable.

En VI la forma mas eficiente de hacer esta minucia es escribiendo la siguiente orden:
:norm 50i=

Donde
norm : norm[al] Ejecuta los comandos en modo normal
50 : Es el numero de veces que se desea repetir el caracter
i : insert
= : Es el símbolo o carácter a repetir.

y con una orden tienes repetido tantas veces quieras un carácter.

Fuente
http://j.gs/1I5G