Close Menu

Instalación y Configuración de ELCONIX S7

En la seccion anterior se presento todos los pasos para lograr llevar un servidor limpio a contener todo lo necesario para la instalacion de ELCONIX S7.

A continuacion presentamos los pasos para instalar y configurar ELCONIX S7 sobre un servidor que ya tiene instalado:

  • Linux
  • Apache
  • PHP
  • MySQL

Los cuales son necesarios para que ELCONIX S7 funcione correctamente.

 

Preparación Inicial para ELCONIX S7

Es importante notar que esta seccion ya se reviso en la primera parte, pero es importante notar que estas carpetas esten ya configuradas en el Servidor donde se instalara ELCONIX S7.

Para esto realizamos la siguientes comandos:

 

[[email protected] ~]# mkdir /Elconix_AS
[[email protected] ~]# mkdir /Elconix_AS/Applications
[[email protected] ~]# mkdir /Elconix_AS/Applications/ENX_S7/
[[email protected] ~]#
[[email protected] ~]#
[[email protected] ~]# chown -R elconix:elconix /Elconix_AS
[[email protected] ~]# chmod -R 755 /Elconix_AS

 

Adicional es importante que se revise las configuraciones de httpd, mod_ssl y php descritas en la seccion anterior de este documento.

 

Descarga de Archivo SQL de Base Datos Predefinida

Para descargar la ultima versión de la base de datos de ELCONIX S7 es importante que se comunique con el departamento de Proyectos de ELCONIX.

La forma que es distribuido la aplicacion es en descargar una copia de la base de datos actualizada a un archivo SQL. Para descargar el archivo puede utilizar la siguiente información:

[[email protected] ENX_S7]# mysqldump -hproyectos.elconix.net -uinstaller -p --compress --databases datawarehouse enx_clean --routines --triggers --events > enx_instalacion.sql

 

Renombre del Archivo de SQL a la Base de datos a utilizar.

Una vez el archivo descargado procedemos con cambiar el nombre de enx_clean que es la base de datos predefinida a la base de datos que queremos usar.

[[email protected] ENX_S7]# sed -i.bak -e 's/enx_clean/enx_elconix/g' enx_instalacion.sql

Este comando analiza el archivo enx_instalacion.sql y remplaza todo valor que diga enx_clean por enx_elconix. Util para realizar remplazos sobre archivos muy grandes o de forma facil sin necesidad de entrar al mismo archivo por algun editor.

 

 

Instalacion de Base de Datos de ELCONIX S7

Para instalar la base de datos procedemos a realizar los siguientes comandos:

[[email protected] ENX_S7]# mysql < enx_instalacion.sql

Es posible que tenga algunos errores de usuarios de mysql que no existen los cuales deberemos remplazarlo con el usuario que acabamos de crear.

 

[[email protected] ENX_S7]# mysql < enx_instalacion.sql
[[email protected] ENX_S7]# sed -i.bak -e 's/mvega/elconix/g' enx_instalacion.sql 

[[email protected] ENX_S7]# mysql < enx_instalacion.sql
ERROR 1449 (HY000) at line 62865: The user specified as a definer ('developer'@'%') does not exist
[[email protected] ENX_S7]# sed -i.bak -e 's/developer/elconix/g' enx_instalacion.sql
[[email protected] ENX_S7]# mysql < enx_instalacion.sql 

# sed -i.bak -e 's/CHARSET=latin1/CHARSET=utf8/g' enx_instalacion.sql
# sed -i.bak -e 's/CHARACTER SET latin1/CHARACTER SET utf8/g' enx_instalacion.sql
# sed -i.bak -e 's/latin1_bin/utf8_bin/g' enx_instalacion.sql
# sed -i.bak -e 's/latin1_spanish_ci/utf8_bin/g' enx_instalacion.sql

 

Tambien es posible errores de base de datos que no hacen referencia a esta instalación, usted podra resolver los problemas al simplemente ejecutar el siguiente comando segun sea necesario.

[[email protected] ENX_S7]# sed -i.bak -e 's/enx_clean/enx_elconix/g' enx_instalacion.sql

 

Descarga de ELCONIX S7 (Aplicación)

Para descargar la ultima versión de ELCONIX S7 es importante que se comunique con el departamento de Proyectos de ELCONIX.

La forma que es distribuido la aplicacion es en un archivo comprimido tar.gz. Una vez que tiene este archivo en el Servidor realize los siguientes comandos.

 

[[email protected] elconix]# cd /Elconix_AS/Applications/
[[email protected] Applications]# rm -rf ENX_S7 

[[email protected] Applications]# wget https://proyectos.elconix.net/installers/ELCONIX_S7_X.X.X.tar.gz
Espere mientras descarga el archivo al servidor.

 

Instalacion de ELCONIX S7 (Aplicación)

Una vez descargado el archivo procedemos a los pasos de la instalación de ELCONIX S7.

[[email protected] Applications]# tar -zxvf ELCONIX_S7_10.0.1.p8.tar.gz

Esto descomprimira todos los archivos en la carpeta dentro de Aplications. Una vez esto se procede a ajustar el nombre de la carpeta a la deseada ENX_S7 y algunas configuraciones de permisos y demas. A continuacion los comandos:

[[email protected] Applications]# mv DEMO ENX_S7
[[email protected] Applications]# chown -R elconix:elconix ENX_S7
[[email protected] Applications]# chmod -R 777 ENX_S7/S7_files

Una vez estos comandos procedemos a la configuracion de acceso inicial de la aplicacion a la base de datos.

[[email protected] Applications]# cd ENX_S7/
[[email protected] ENX_S7]# vim config_global.php

Luego de esto procedemos a configurar segun necesidad el siguiente variables.

$db_system = array( array('enx_elconix','ENX COMPANY','127.0.0.1','root','','s7.demos.elconix.net') ) ;

Esta variable se configura segun necesidad de la cantidad de URL o Dominios que van a usar ELCONIX S7.

Por cada cominio se arma un array de conexion dentro del array principal. Por lo cual si tenemos un solo dominio lo hacemos asi:

$db_system = array( array('enx_elconix','ENX COMPANY','127.0.0.1','root','','s7.elconix.net') ) ;

Si no contamos con dominio sino que seria por ip entonces procedemos a realizar la configuración asi, usando el ip asignado al servidor:

$db_system = array( array('enx_elconix','ENX COMPANY','127.0.0.1','root','','192.168.1.100') ) ;

Si contamos con multiples dominios el cual seran usados para diferentes empresas o grupo de empresas, entonces configuramos asi.

$db_system = array( array('enx_company1','COMPANY 1','127.0.0.1','root','','s7.company1.com'), array('enx_company2','COMPANY 2','127.0.0.1','root','','s7.company2.com'),
array('enx_company3','COMPANY 3','127.0.0.1','root','','192.168.1.100') ) ;

Podemos realizar mezclas segun se necesario de ip o varios ips, con dominios o varios dominios.

Es importante almenos configurar un Array.

Una vez realizada la configuracion procedemos a guardar nuestros cambios al archivo config_global.php.

Reiniciamos el apache para asegurarnos que la configuración este correcta:

[[email protected] conf.d]# /etc/init.d/httpd restart

Compruebe que funcione su configuracion al entrar en su navegador a la direccion:

https://192.168.1.100/ 
https://192.168.1.100/

Asegurese que la configuracion de config_global.php este correcta al poder ver que el campo de GRUPO tenga valor correcto.

Ejemplo:

pastedgraphic-6_med

 

Instalacion de IonCube Loader (Desifrador ByteCode)

ELCONIX S7 viene protegido su codigo fuente con el encoder de IonCube. Por lo cual se requiere instalar el IonCube Loader el cual permite correr estos archivos protegidos.

Para realizar la instalación se requiere agregar una linea de codigo en el archivo de configuración del php.

[[email protected] Elconix_AS]# vim /etc/php.ini

Nota: Deben validar que php.ini esta usando el PHP que corre en el servidor ya que para ese debe usarse para los cambios a continuación.

 

Una vez dentro del archivo procedemos a realizar la configuración, se agrega esta linea en el archivo, recomedable al inicio:

[PHP]
zend_extension = /Elconix_AS/Applications/ENX_S7/ioncube/ioncube_loader_lin_5.3.so

Donde /Elconix_AS/ioncube/ioncube_loader_lin_5.3.so es la ubicación exacta al loader. Para una instalación de S7 el Ioncube loader viene ya ubicado dentro de la aplicación. Para esto puede ubicarlo en: /Elconix_AS/Applications/ENX_S7/ioncube/

Nota: Recuerde instalar la version del loader dependiendo de la versión del PHP.

Ejemplo esta tabla:

Version de PHP Version de IonCube Loader
5.3.X ioncube_loader_lin_5.3.so
4.1.X ioncube_loader_lin_4.1.so
4.4.X ioncube_loader_lin_4.4.so

 

Una vez esto recuerde reiniciar el Apache HTTPD server.

[[email protected] Elconix_AS]# /etc/init.d/httpd restart

Para validar que este instalado correctamente, proceda a entrar a la direccion del S7 instalado y coloque el archivo php.php.

Ejemplo: (Recuerde reemplazar elhttps://s7.dev.elconix.net segun sea el servidor donde esta instalando el IonCube Loader)

 

pastedgraphic-7_med

 

Una vez dentro del archivo busque si el Loader de Ioncube esta instalado. Esto se vera asi:

 

pastedgraphic_1-5_med

Debe estar en la seccion de Additional Modules.

 

Generar Solicitud de Licencia (license request)

Para generar la licencia necesaria para ELCONIX S7, debe generar un codigo request. Esto se realiza de la siguiente manera.

Una vez instalado todo, en un navegador web puede entrar a la siguiente dirección:

https://s7.dev.elconix.net/ioncube/license_request.php

Donde debe remplazar segun la dirección configuradada. Esto generara un codigo parecido a este:

 

------ SERVER ADAPTER DATA -----
V16US3147pkjeyvg5QLQzrsnvmIMln90
KNfxmMUrZtYNHmoiVfDJaFIcMTsB0EVc
uo+Wh7PHRplicTCwenKzqxQF
--------------------------------

 

Este codigo debe enviarlo a la persona encargada de generar la licencias de ELCONIX S7 para poder generar dichas licencias de forma rapida y segura.

 

Instalacion de Licencia (license.txt)

Para instalar la licencia de ELCONIX S7, solo es necesario copiar el archivo txt como license.txt en la carpeta principal de ELCONIX S7.

/Elconix_AS/Applications/ENX_S7/license.txt

 

Configuracion Inicial de ELCONIX S7 (Aplicación)

A continuacion presentamos los pasos necesarios para poder lograr el primer login y tambien los pasos para iniciar con la configuracion de ELCONIX S7.

Ya si todos los pasos anteriores se han hecho correctamente, debemos lograr tener un login aceptable utilizando la siguiente información de cuenta:

 

Usuario

Contraseña

ELCONIX

4321

 

Una vez tengamos los accesos debemos configurar de forma minima la siguiente información.

 

Configuracion Inicial del Sistema

Una vez instalado el sistema y con acceso al mismo procedemos a configurar los parametros iniciales del sistema. Para esto procedemos a configurlo inicialmente en la pantalla de configuracion del sistema, Esto se realiza al ir a:

Configuracion >

 

Configuracion de Compañias.

Para establecer el nombre de la compañia y la información relacionada a esta debemos llenar la tabla con dicha informacion llamada “companies” a continuacion mostramos su descripción:

 

mysql> describe companies ;
+------------------+---------------------------+------+-----+---------+----------------+
| Field            | Type                      | Null | Key | Default | Extra          |
+------------------+---------------------------+------+-----+---------+----------------+
| id               | int(5)                    | NO   | PRI | NULL    | auto_increment |
| Name             | varchar(100)              | NO   | MUL |         |                |
| RUC              | varchar(100)              | NO   |     |         |                |
| DV               | varchar(4)                | NO   |     | NULL    |                |
| Address          | text                      | NO   |     | NULL    |                |
| CreatedBy        | varchar(50)               | NO   |     |         |                |
| Created          | datetime                  | YES  |     | NULL    |                |
| UpdatedBy        | varchar(50)               | NO   |     |         |                |
| Updated          | datetime                  | NO   |     | NULL    |                |
| Status           | enum('ACTIVE','INACTIVE') | NO   |     | ACTIVE  |                |
| Logo             | varchar(100)              | NO   |     | NULL    |                |
| DB_name          | varchar(100)              | NO   |     |         |                |
| DB_host          | varchar(100)              | NO   |     |         |                |
| DB_user          | varchar(100)              | NO   |     |         |                |
| DB_pass          | varchar(100)              | NO   |     |         |                |
| Report_DB_name   | varchar(100)              | NO   |     | NULL    |                |
| Report_DB_host   | varchar(100)              | NO   |     | NULL    |                |
| Report_DB_user   | varchar(100)              | NO   |     | NULL    |                |
| Report_DB_pass   | varchar(100)              | NO   |     | NULL    |                |
| Proveedor_Id     | varchar(22)               | NO   |     | NULL    |                |
| Customer_Id      | varchar(22)               | NO   |     | NULL    |                |
| IsMaster         | enum('YES','NO')          | NO   |     | NO      |                |
| OrderBy          | int(4)                    | NO   |     | NULL    |                |
| Nombre_Impresion | varchar(100)              | NO   |     | NULL    |                |
| Logo_Impresion   | varchar(100)              | NO   |     | NULL    |                |
+------------------+---------------------------+------+-----+---------+----------------+
25 rows in set (0.09 sec)

mysql>

Es importante realizar el ingreso de al menos una empresa, y definir los campos de base de datos que tambien son importantes.

Por default el sistema trae definida la empresa de prueba:

 

mysql> select * from companies \G
*************************** 1. row ***************************
id              : 1
Name            : ENX DEMO COMPANY
RUC             : R1U2C3
DV              :
Address         : Panama, Ciudad de Panama
CreatedBy       :
Created         : NULL
UpdatedBy       :
Updated         : 0000-00-00 00:00:00
Status          : ACTIVE
Logo            :
DB_name         : enx_elconix
DB_host         : 127.0.0.1
DB_user         : root
DB_pass         :
Report_DB_name  : enx_elconix
Report_DB_host  : 127.0.0.1
Report_DB_user  : root
Report_DB_pass  :
Proveedor_Id    : P000770
Customer_Id     :
IsMaster        : NO
OrderBy         : 0
Nombre_Impresion:
Logo_Impresion  :
1 rows in set (0.03 sec)

Para cambiar los valores predefinidos puede proceder con los siguientes pasos:

 

1) Configuración > Administradores > Administrador de Tablas.

Seleccionar Configuracion de Compañias.

pastedgraphic_2-5_med

 

Selecciona la Compañia que desea editar.

pastedgraphic_3-4_med

Edite segun sea necesario.

 

Importante: el agregar nuevas compañias en esta seccion no indica que las compañias se les creara de forma automatica sus base de datos, este es otro proceso que se tiene que hacer para poder habilitar multicompañias.

 

Configuracion de las Monedas.

Recuerde establecer la moneda que se van a usar. Esto se define desde el administrador de tablas la tabla llamada:

image-676_med

 

En esta tabla usted debe definir las monedas que se estaran utilizando en el sistema. Para definir la moneda principal debe colocar en LocalCurrency = Y:

image-677_med

 

Luego debe definir esta moneda en la tabla de la compañia como moneda principal.

Recuerde colocar el nombre corto “ShortName” en el campo de Currency en la tabla de compañias.

 

Tablas que recomendamos configurar para inicializar:

A continuación las tablas del administrador de tablas que le recomendamos entrar para terminar de configurar el sistema:

 

Configuracion > Administrador de Tablas > Areas de la Organización

Configuracion > Administradores > Administrador de Centro de Costos

Configuracion > Administrador de Tablas > Departamentos y Sus Correos

RH > Empleados > Administrar Cargos

Configuracion > Administrador de Tablas > Regiones de Sucursales

Configuracion > Administrador de Sucursales

Configuracion > Administrador de Tablas > Punto de Ventas

Configuracion > Administrador de Bodegas

 

Configuración de Monitor de MySQL

Es importante configurar el monitor de mysql para poder darle mantenimiento de primer nivel a la base de datos y monitorar la salud del mismo.

pastedgraphic_4-4_med

 

Una vez dentro del sistema vamos a Configuración > Administradores > Administrador de Tablas.

Seleccionamos la tabla bajo grupo de Sistema llamada Configuracion de Monitor de MySQL.

pastedgraphic_5-3_med

 

Una vez en esta tabla configuramos segun sea requerido.

pastedgraphic_6-3_med

 

Luego de configurar esta parte podemos entrar al monitor en la opcion, Configuración > Estado de Base de Datos el cual nos mostrara detalles y estado de las base de datos del sistema.

Podra agregar mas base de datos segun sea necesario.

pastedgraphic_7-3_med

 

Configuracion de Crontab

Una vez instalado el sistema y con acceso al mismo debemos definir la instalacion de los crontab del sistema:

Para esto entramos al archivo de configuracion de crontab y configuramos segun necesidad. Preferible los que abajo describimos.

 

#Backup
0 5 * * * root /root/enx_BackupAll.sh

# Sync de DateTime
# RH o CENTOS
0 6 * * * root ntpdate -u 0.pool.ntp.org
# SUSE
0 6 * * * root sntp -P no -r pool.ntp.org

# ELCONIX
*/1 * * * * root /usr/local/zend/bin/php /Elconix_AS/Applications/ELCONIX-INC/ERP/crontab_session_manager.php
*/1 * * * * root /usr/local/zend/bin/php /Elconix_AS/Applications/ELCONIX-INC/ERP/crontab_reminders_runner.php
#*/2 * * * * root /usr/local/zend/bin/php /Elconix_AS/Applications/ELCONIX-INC/ERP/mailbot/cron_mailbot_fetchpop3.php

# ELCONIX S7
*/5 * * * * root /usr/local/zend/bin/php /Elconix_AS/Applications/ENX_S7/cron_calc_costs.php
*/5 * * * * root /usr/local/zend/bin/php /Elconix_AS/Applications/ENX_S7/ENXCRONS/cronx_accpos_generator.php
#CRON DE CUMPLE
0 6 * * * root /usr/local/zend/bin/php /Elconix_AS/Applications/ENX_S7/cron_birthday_cliente.php
0 6 * * * root /usr/local/zend/bin/php /Elconix_AS/Applications/ENX_S7/cron_birthday_contacto.php
0 6 * * * root /usr/local/zend/bin/php /Elconix_AS/Applications/ENX_S7/cron_cheques_expirados.php
0 6 * * * root /usr/local/zend/bin/php /Elconix_AS/Applications/ENX_S7/cron_fal_sob.php
0 6 * * * root /usr/local/zend/bin/php /Elconix_AS/Applications/ENX_S7/cron_tck_expired.php
0 6 * * * root /usr/local/zend/bin/php /Elconix_AS/Applications/ENX_S7/cron_stock_max_min.php
0 6 * * * root /usr/local/zend/bin/php /Elconix_AS/Applications/ENX_S7/cron_correos_masivos.php
0 6 * * * root /usr/local/zend/bin/php /Elconix_AS/Applications/ENX_S7/cron_expire_purchases_requests.php
0 6 * * * root /usr/local/zend/bin/php /Elconix_AS/Applications/ENX_S7/cron_promotion_expire.php
0 6 * * * root /usr/local/zend/bin/php /Elconix_AS/Applications/ENX_S7/crontab_promocion_por_expirar.php

Nota Importante: Es importante notar que es posible que se requiera entrar a estos crons y configurarlo segun la base de datos del cliente y correos que se envian.