Sie sind auf Seite 1von 9

WebERP

Guía de inicio rápido en Español


(Traducción por el Ing. Daniel J. Loayza M.)

Barquisimeto, Venezuela
2006
Guía de inicio rápido.
Prerrequisitos.
• PHP 4.2 o superior. Este sistema es configurable en varios sistemas operativos.
PHP se puede usar como módulo CGI para el uso con MS IIS o como módulo para
el uso con Apache bajo Windows (NT, 2000 o XP), Unix o Linux. También están
las extensiones FTP para la transferencia de las órdenes EDI de ser requeridas.

• MySQL- Que soporte el uso de tablas transaccionales Innodb. Innodb fue


introducido en el 2001 a MySQL y ofrece funcionalidades similares que Oracle,
con velocidades equivalentes. (El sistema se podría utilizar con Oracle u otros
sistemas de la base de datos con una mínima modificación) Las versiones
posteriores a la 4 de MySQL tienen configurado el uso de las tablas innodb por
defecto. Debido que MySQL presenta tan buena relación precio/valor es que ha
sido utilizado. Un archivo my.cnf con la configuración de ejemplo, generalmente
ubicado en /usr/local/mysql/var está disponible en la documentación de MySQL
donde se muestran los ajustes típicos para la configuración de las tablas innodb.
Observe que solamente las tablas que requieren ser transaccionales están
definidas como tablas Innodb. Hay siempre discusión sobre esto, pero las tablas
MyISAM tienen buena reputación por ser más rápidas.

• Un servidor Web. Apache parece lo más sensato, pero la mayoría de los


servidores Web apoyan PHP en varias formas.

• Si se requiere que el servidor Web este accesible a través de Internet y no


solamente a través de la red local, entonces comunicaciones cifradas son
requeridas. Los módulos openssl y MOD-SSL para Apache se pueden configurar
en forma fácil para asegurar que todos los datos se transmiten en forma cifrada.

Hay muchas fuentes en Internet sobre la configuración e instalación de MySql y de PHP.


Sería bueno que revise los siguientes links:

http://logidac.com/apache/apache-install-rpm.phtml

http://www.linux-sottises.net/en_apache_install.php

Es importante asegurarse que el siguiente parámetro session.auto_start = 0 este definido


en el archivo php.ini. Algunas distribuciones vienen con este parámetro definido a 1, lo
que hace imposible utilizar clases dentro del código PHP. Las clases se utilizan
extensivamente en el sistema y siempre que el sistema inicia sesiones las necesita,
entonces es importante fijarlo en el valor 0.

Las situaciones principales que se presentan durante la instalación de PHP parecen ser
las siguientes:

1. Realizando instalaciones bajo Windows, el siguiente ajuste session.save_path=


/tmp viene definido por defecto, este directorio es inadecuado para Windows y
debe ser cambiado a session.save_path= C:\temp o algo más apropiado.
2. Cuando el sistema reside en una granja de servidores Web, para el inicio de
sesión se necesita que este especificado un directorio como directorio
permanente, los otros servidores servirán las páginas subsecuentes dependiendo
de la carga. De no ser así, no se podrá encontrar el cookie para inicio de la
sesión. En el archivo config.php debe fijarse el parámetro $SessionSavePath con
la ruta apropiada en el servidor Web anfitrión.

3. Por alguna razón desconocida, algunos servidores no pueden obtener


automáticamente el directorio correcto usando la línea: $rootpath = dirname
($_SERVER [“PHP_SELF”]); Esto se evidenciará por la inhabilidad del sistema de
encontrar los links de página para las diversas opciones del sistema. Si sucede
esto la variable $rootpath debe fijarse con la ruta en donde se encuentran
grabados los scripts que forman parte del sistema.

El sistema se podría utilizar con muchos otros servidores de base de datos pero se ha
desarrollado y probado en MySQL, se proporciona ConnectDB.inc para Postgres y existe
una configuración en el archivo config.php, $dbtype que permita al administrador utilizar
bases de datos Postgres si lo prefiere. Pruebas independientes demuestran que MySQL
es uno de los más rápidos para la mayoría de las tareas comunes en base de datos,
particularmente en establecer conexiones, puesto que esto se requiere para cada página,
MySql es por lo tanto la suite ideal para el ambiente Web.

Si se requiere una integración con alguna base de datos de conocimiento de la compañía


(knowlege base), se requiere entonces la instalación de wacko wiki en el mismo servidor
Web. Esto es enteramente opcional, pero es altamente recomendado que exista una
manera de compartir información sobre el negocio libremente.
http://wackowiki.com/WackoDownload/InEnglish?v=xlv

La biblioteca FTP para PHP se requiere solamente para enviar archivos de orden en
sistemas alejados.

Asumiendo que un servidor Web con PHP esta totalmente funcional y un servidor MySQL
está disponible en la misma máquina o en la red, una instalación nueva de WebERP
consiste en los seis pasos siguientes:

1. Copiar todos los scripts PHP y los archivos incluidos a un directorio bajo directorio
raíz del servidor Web.
2. Crear la base de datos y la llenarla con los datos iniciales.
3. Editar el archivo config.php con la información adecuada para la conexión a la
base de datos y cualquier otro requerimiento.
4. Ingresar al sistema por primera vez.
5. Fijar los parámetros del sistema.
6. Vaciar la información específica de la compañía en el sistema

Copiando los scripts PHP.


Todos los archivos excepto las instrucciones de instalación que están en el archivo
INSTALL.txt, y los scripts para la creación de las bases de datos (web-erp-demo.sql y
web-erp-new.sql), se deben copiar a un directorio dentro del directorio raíz del servidor
Web. Esto varía entre las distribuciones, pero:

/usr/local/httpd/htdocs/

Es el directorio raíz de apache bajo de SuSE. Normalmente el directorio raíz de Apache


se llama algo como “/htdocs”.

Copie el archivo comprimido en este directorio y explótelo, cree un directorio llamado


WebERP bajo el directorio raíz del servidor Web y coloque allí todos los scripts del
sistema.

Creando la base de datos.


La información proporcionada asume que se está utilizando un servidor de base de datos
MySQL. Un archivo de volcado sql para Postgres también se proporciona. Sin embargo
estas instrucciones se refieren a los pasos necesarios para inicializar un sistema usando
MySQL.

Necesitas conocer el nombre de usuario y la contraseña para el servidor de base de


datos MySQL. Los valores fijados por defecto son:

Usuario: root
Contraseña: “”

Sin embargo, no se debe utilizar esta cuenta; se debe crear otro usuario para la
instalación de MySQL y cambiar la contraseña del usuario root por una diferente a “”.

Se puede consultar a través de la línea de comando del cliente que viene con MySQL
para conocer todas las instrucciones para trabajar con esta base de datos. Para ejecutar
este cliente bajo Windows, se debe invocar a DOS, para ello haga clic en Inicio-Ejecutar-
cmd-Enter si utiliza XP o 2000. El binario de MySQL esta situado por defecto en la
siguiente ruta C:\mysql\bin\mysql.exe. y este sería el comando a ejecutar para llamar al
cliente del MySQL, las opciones discutidas abajo se deben añadir de ser necesario.

Cita del manual de MySQL (editado):

“El usuario root es creado como superusuario y tiene los privilegios para hacer
cualquier cosa. Las conexiones se deben hacer de forma local. NOTA: La
contraseña inicial del usuario root esta vacía, así que cualquier persona puede
conectarse como root sin una contraseña y obtener todos los privilegios. Esto es
porque la instalación inicialmente esta abierta de par en par, una de las primeras
cosas que se debe hacer es especificar una contraseña para el usuario root. Esto se
puede realizar de la siguiente manera (Observe que la contraseña se define usando
la función PASSWORD()):

En la versión 3.22 de MySQL o posterior se puede utilizar el comando SET


PASSWORD:

shell> mysql -u root mysql


mysql> SET PASSWORD FOR root=PASSWORD('new_password');"

Donde “new_password” es la nueva contraseña que se elegió para el usuario root.

También del manual de MySQL (editado):

“También, si has cambiado la contraseña del usuario root, debes especificarla para
volver entrar en el cliente de MySQL, como se muestra abajo. Puedes agregar
nuevos usuarios utilizando el comando GRANT:

shell> mysql --user=root -p 'new_password' mysql


mysql> GRANT ALL PRIVILEGES ON *.* TO weberp@localhost IDENTIFIED BY
'some_pass' WITH GRANT OPTION;"

Donde “some_pass” es la contraseña que se escogió para el nuevo usuario “weberp”.


Observe que este usuario, weberp, puede conectarse solamente de manera local al
servidor MySQL. Si el servidor Web esta en un equipo diferente al de MySQL entonces
es necesario otorgar privilegios para que otras computadoras puedan conectarse. Revise
el manual de MySQL.

Las tablas transaccionales Innodb deben estar habilitadas en el servidor MySQL. Estas
tablas permiten la utilización de transacciones en la base de datos que son un
componente crítico del software ERP. Habilitar las tablas Innodb requiere la definición de
algunos parámetros en el archivo my.cnf. (Hay algunos ejemplos en el manual de MySQL,
observe el índice bajo el título Tablas Innodb)

Si se tiene una cuenta configurada en el servidor MySQL y están habilitadas las tablas
transaccionales Innodb, entonces todo lo que se necesita hacer es ejecutar alguno de los
siguientes scripts sql.

Se proporcionan dos scripts:

1. web-erp-demo.sql Este archivo crea una compañía falsa con una cantidad
mínima de datos. Permite insertar transacciones con la única finalidad de
demostrar cómo el sistema trabaja.

2. web-erp-new.sql Este script crea los datos básicos necesarios para comenzar un
nuevo sistema para una empresa. Si se desea instalar en una compañía el
software Weberp, este es el script que se debe utilizar. Esto crea la base de datos
de Weberp y la inicializa con datos muy básicos para comenzar.

Los archivos web-erp-demo.sql y web-erp-new.sql deben estar en el directorio con todos


las scripts de PHP. Primero debemos ubicarnos en el directorio en donde se encuentran
los scripts, luego se debe teclear:

shell > mysql --user=weberp --password='some_pass' < /path_to_the_sql_script/web-erp-


demo.sql

o
shell > mysql --user=weberp --password='some_pass' < /path_to_the_sql_script/web-erp-
new.sql

En donde weberp y “some_pass” son el usuario y la contraseña que se creó en MySQL


para tal propósito y path_to_the_sql_script es la ruta en donde se encuentran los scripts
sql, quizás sea algo como esto /usr/local/httpd/htdocs/web-erp/

Editando el archivo config.php.


El archivo config.php contiene una serie de variables definidas por el usuario que
determinan cómo el sistema se comportará. Contiene información crítica como lo es el
servidor Web (nombre de la computadora), el nombre de usuario y la contraseña
requeridos para conectarse con el servidor de base de datos. Existe también una opción
para especificar qué tipo de servidor de base de datos se esta utilizando. Actualmente
solamente hay dos opciones MySQL y Postgres. El sistema no seguirá adelante si no se
han proporcionado estos datos.

El contenido por defecto del archivo config.php se muestra a continuación y se puede


modificar con cualquier editor (KATE, Wordpad, etc.), luego debe grabarse en el mismo
directorio donde se encuentran los scripts de WebERP. Sin embargo, el sistema está en
continuo desarrollo y este archivo puede sufrir modificaciones frecuentes.

Lines beginning with a # are commented out. Sections beginning with /* are comments - they
must be terminated with */

/ User configurable variables //---------------------------------------------------

//DefaultLanguage - this is the language that the login screen will use - other users can have
different languages but they will see the default language before they login - once logged in
the user settings are retrieved including their preferred language $DefaultLanguage ='en_GB';

// Whether to display the demo login and password or not $allow_demo_mode = True;

// Application version $Version = '2.9c';

// The timezone of the business - this allows the possibility of having


// the web-server on a overseas machine but record local time
// this is not necessary if you have your own server locally
// putenv('TZ=Europe/London');
// putenv('Australia/Melbourne');
// putenv('Australia/Sydney');
// putenv('TZ=Pacific/Auckland');

// Connection information for the database


// $host is the computer ip address or name where the database is located
// assuming that the web server is also the sql server
$host = 'localhost';

//The type of db server being used - currently only postgres or mysql


$dbType = 'postgres';
//$dbType = 'postgres';
//$dbType = 'mysql';
$DatabaseName = 'weberp';

// sql user & password


$dbuser = 'weberp_db_user';
$dbpassword = 'weberp_db_pwd';

//The maximum time that a login session can be idle before automatic logout
//time is in seconds 3600 seconds in an hour
$SessionLifeTime = 3600;

$rootpath = dirname($_SERVER['PHP_SELF']);
//$rootpath = '/web-erp';

/* ******************END OF USER CONFIGURABLE VARIABLES ******************* */

/*The $rootpath is used in most scripts to tell the script the installation details of the files.

NOTE: In some windows installation this command doesn't work and the administrator must
set this to the path of the installation manually:
eg. if the files are under the webserver root directory then rootpath =""; if they are under
weberp then weberp is the rootpath - notice no additional slashes are necessary.
*/

$rootpath = dirname($_SERVER['PHP_SELF']);
//$rootpath = '/web-erp';

/*Its important to make sure there are no lines after the following "?>" */
?>

Ingresando al sistema por primera vez.


Abra el explorador Web de alguna máquina conectada en la red donde se encuentra el
servidor Web e introduzca la dirección del directorio donde se encuentra instalado
WebERP. Si el navegador Web está en la misma máquina servidor entonces quizás se la
siguiente:

http://localhost/web-erp/index.php

Teclee como nombre de usuario “demo”


Contraseña “weberp” (las comillas no se requieren).

Puedes (a través de la ficha de configuración del sistema), crear cuentas adicionales de


usuario y cambiar la contraseña. (Los usuarios pueden cambiar ellos mismos sus
contraseñas en cualquier momento, haciendo clic en su nombre de usuario ubicado en la
esquina superior izquierda de la pantalla). Tenga cuidado de no suprimir al usuario de
demostración hasta que haya creado un nuevo usuario administrador del sistema. Si no
hay usuarios definidos la próxima vez que intente ingresar al sistema no será posible. En
esta situación la única manera de crear un usuario es conectándose directamente a la
tabla WWW_Users. Si phpMyAdmin está instalado en el servidor Web, se puede entonces
agregar un nuevo registro a WWW_Users.

Note la importancia de fijar una contraseña para el usuario root de MySQL, sino cualquier
persona podía modificar WWW_Users y acceder a la información privada de la compañía.

Configuración de parámetros.
En versiones anteriores a la 3.0 los parámetros fueron almacenados dentro del archivo
config.php y se requería editar manualmente este archivo para modificar los parámetros
del sistema. Luego de la versión 3.0 una pantalla nueva para los parámetros del sistema
fue desarrollada, la cual permite que una amplia variedad de variables del sistema sean
definidas. Estas ahora se almacenan en la base de datos, permitiendo actualizaciones del
sistema sin tener que re-editar el archivo config.php. La pantalla para los parámetros del
sistema fue enlazada en el menú principal, bajo la ficha configuración, debajo de
general. Cada uno de estos parámetros deben ser revisados en detalle, notas que
describen la función de cada variable son mostradas a todo lo largo.

Temas y modificación de la interfaz gráfica del usuario (GUI).


Lo que agrada visualmente a unos no agrada a menudo a otros. A pesar que la función
administrativa es la principal, la apariencia importa. Cierta flexibilidad está disponible con
la modificación del esquema de color, el tamaño de la fuente y la utilización de hojas en
cascada de la interfaz gráfica (css).

La interfaz gráfica puede ser modificada adoptando uno de los temas definidos o creando
un nuevo tema. Hay actualmente solo tres temas definidos en la distribución, “Por
defecto”, “Profesional” y “Fresco”.

Cada usuario, en forma particular; puede seleccionar sus preferencias en lo que se


refiere a la interfaz gráfica. Esto es posible haciendo clic en el nombre del usuario que se
encuentra en la parte superior izquierda de la pantalla.

Para crear un nuevo tema, se debe copiar el directorio de uno de los temas definidos con
un nuevo nombre. Los temas se almacenan bajo directorio css del sistema, hay un
directorio dentro de css para cada tema. Copiando los archivos a un nuevo directorio y
asignándole un nombre nuevo, por ejemplo “New_theme”, entonces este se podrá editar
para conseguir el look deseado. Los nuevos temas son mostrados automáticamente en la
pantalla Preferencias de Usuario, así que los usuarios pueden seleccionarlos para
modificarlos según sus requisitos particulares.

Configurando Usuarios.
Entrando al sistema como el usuario de demostración, lo primero a realizar es crear un
nuevo usuario con privilegios administrativos y el usuario de demostración debe ser
eliminado. Debemos hacer clic en la opción de Cuentas de Usuario en el menú de
configuración, los usuarios definidos serán mostrados. Tanto el nombre de usuario como
la contraseña deben contener cinco caracteres o más. La contraseña no puede ser el
mismo nombre de usuario o contenerlo. No es necesario introducir datos como: el
teléfono, el nombre completo y otros detalles. El nivel de acceso es muy importante pues
este determina las páginas a que el usuario podrá tener acceso. En la mayoría de los
negocios, los empleados no son también los dueños, por esto es recomendable la división
de funciones de tal manera que una persona no pueda completar totalmente una
transacción. Obviamente existen empresas más pequeñas donde esto es poco práctico.
Sin embargo, el sistema tiene gran flexibilidad para permitir el acceso que finalmente
tendrán los usuarios. Vea la sección Esquema de seguridad.

Así como también existe la flexibilidad para que el acceso sea restringido, determinando
que links estarán habilitados para el usuario. En la pantalla de la Cuenta del Usuario, el
administrador puede definir qué fichas del menú principal estarán disponibles para el
usuario.

También existe la posibilidad de crear cuentas de conexión para los clientes. Obviamente
con un acceso restringido, pero que les permite consultar su estado de cuenta,
reimpresión de facturas y a el envió de nuevas ordenes de compra. Las conexiones de los
clientes no permiten ninguna modificación de precios. Para hacer esto el nivel de acceso
debe ser fijado como “customer logon” y las configuraciones presentes en el archivo
config.php para “customes logon” no deben ser modificadas. Por ejemplo: $PageSecurity
= 1 es el único valor permitido para este parámetro. Además, datos como el código del
cliente, contraseña y otros datos que identifican la persona que entra deben ser
especificados.

Das könnte Ihnen auch gefallen