Las secuencias de comandos que componen el sistema están separadas en varios directorios. Sin embargo, la mayor parte de los comandos en webERP se encuentran en el directorio de nivel superior.
• El directorio de nivel superior contiene todos los comandos que se llaman directamente desde enlaces del sistema. El propósito fundamental del diseño era evitar que el programador de PHP ocasional y quizás principiante tuviera que examinar el código en muchos archivos diferentes para conseguir una comprensión de la lógica. El desarrollador rara vez necesitará mirar más allá del directorio raíz principal de los comandos webERP y el directorio include.
• Las secuencias de comandos o partes de las secuencias de comandos que se incluyen en uno o más de los comandos principales se mantienen en el directorio/subdirectorio. Muchos de estos se incluyen y se usan de una manera similar a las funciones.
• Cabe destacar una serie de subdirectorios en el directorio include, en particular el directorio php-plot contiene la clase php-plot (de Miguel de Benito Delgado y otros - mantenida como un proyecto separado) que es el código utilizado por webERP para crear gráficos para consultas de análisis de ventas. La clase php-gettext (de Danilo Segan) es utilizada por webERP para intentar traducir usando los archivos en los directorios locales donde las bibliotecas binarias gettext de php no están instaladas. En la práctica, es mucho mejor tener las bibliotecas de gettext cuando se opera webERP en una instalación multilingüe. Además, la clase TCPDF que es un derivado de la clase FPDF de Olivier Plathey desarrollada por Nicola Asuni que permite que los archivos PDF sean creados por webERP usando el conjunto de caracteres utf-8 y las fuentes CID, esto permite a webERP crear archivos PDF ligeros donde las fuentes para todos los idiomas están incluidos en Adobe Acrobat Reader. Aunque esta clase se mantiene como un proyecto separado, Javier de Lorenzo-Cáceres ha realizado algunas modificaciones a esta clase que permiten que las fuentes CID se asignen correctamente. Esta clase es una colección muy grande de archivos y se recorto significativamente para la distribución webERP, excluyendo toda la documentación y ejemplos de TCPDF.
• Los comandos para crear la base de datos se conservan en el directorio sql. Debajo de este directorio, actualmente sólo hay un directorio mysql ya que sólo el RDBMS mysql es compatible. Anteriormente había un directorio pg para comados postgres sql. En el subdirectorio mysql del directorio sql - son comandos sql creados por mysqldump. Hay unas secuencias de comandos para crear una nueva instalación con sólo datos mínimos para iniciar un nuevo sistema: weberp-new.sql. También hay un comando para hacer un sistema de demostración - weberp-demo.sql.
• El directorio local contiene todas las traducciones de idiomas diferentes instaladas. Sólo el idioma en_GB.utf8 esta instalado de forma predeterminada. Muchos otros paquetes de idiomas se pueden descargar e instalar en este directorio. En el directorio de configuracion regional, cada uno de los idiomas debe estar bajo un nombre de directorio que coincida con una configuración regional instalada en el servidor web. Bajo este directorio, el directorio LC_MESSAGES contiene dos archivos: messages.po,- que contiene las traducciones y un messages.mo que se compila como un archivo indexado binario para buscar las traducciones lo más rápido posible utilizando la funcionalidad gettext para la internacionalización de aplicaciones.
• La documentación se encuentra en el directorio/subdirectorio donde este manual se encuentra en el subdirectorio Manual del directorio doc. Los manuales específicos de un idioma/configuración regional determinados se encuentran en el subdirectorio de idioma/idioma.
• El directorio api contiene todos los comandos API (Application programming interface/Interfaz de programación de aplicaciones).
• El directorio xmlrpc contiene el cliente XML-RPC y el código de servidor necesarios para el API (webERP utiliza una clase creada por G. Giunta para este propósito) el árbol completo de esta clase XML-RPC.
• El directorio de números contiene la clase PEAR para convertir números a palabras; este código es usado por el código de escritura de cheques en webERP. La instalación de la clase PEAR no es necesaria ya que PEAR agrega una gran sobrecarga a PHP, no se requiere como una dependencia para usar webERP, por lo que este código se incluye con webERP.
• La instalación del directorio es donde se guardan las secuencias de comandos minimos del instalador; estos se pueden eliminar si es necesario después de la instalación. Sólo cuando el archivo config.php no existe, en una nueva instalación se utilizarán los comandos de este directorio.
• El directorio de banderas contiene imágenes pequeñas de banderas nacionales apropiadas para las abreviaturas de código de moneda ISO 4217 cada archivo se nombra con el código ISO .jpg estas se muestran en el formulario de monedas en webERP.
• El directorio FPDI es una extensión de la clase de creación de PDF TCPDF que permite que otros archivos PDF se concatenen en archivos PDF creados a partir del sistema; esta clase se crea y mantiene como un proyecto separado por Setasign - Jan Slabon. WebERP permite que los documentos seleccionables por el usuario se anexen a las facturas;(esta funcionalidad requiere esta clase y los archivos de este directorio).
• El formato de las hojas de estilo se guardan bajo el css - consulte la sección de temas en la seccion anterior. En el directorio css hay un árbol de directorios para cada uno de los temas que vienen con la distribución. Para crear un nuevo tema, simplemente copie uno de los árboles de directorios existentes en uno nuevo en el directorio css, que automáticamente podrá ser seleccionado como un nuevo tema por webERP.
• El directorio javascripts contiene sólo un archivo que se incluye en la sección HEAD de cada secuencia de comandos webERP y contiene todos los javascript utilizados por webERP.
• El directorio de reportes e informes contiene el redactor del informes sql usado con webERP (esta contribución de Dave Premo) el autor de Phreebooks no sigue ninguna de las convenciones del resto de webERP pero agrega funcionalidad importante a webERP. Existe toda una estructura de directorios en el directorio de reportes e informes y el código es más difícil de seguir. Afortunadamente, Dave escribió una buena ayuda para permitir su uso.
La construcción de nuevos comandos debe hacer uso de los siguientes componentes básicos que se utilizan en todo el sistema.