Estructura/Organización de Clases del Negocio

De CidesaWiki

(Diferencias entre revisiones)
Saltar a navegación, buscar
Línea 7: Línea 7:
* Helper: Aquí están y se colocan los los Helpers (o ayudantes) adicionales (creados para el proyecto) para objetos o funcionalidades de la vista, por ejemplo encontraras un helper para llamar a catálogos o Grids. Si se quiere crear un helper se debe hacer en esta carpeta, y se debe seguir la metodología de los otros helper.
* Helper: Aquí están y se colocan los los Helpers (o ayudantes) adicionales (creados para el proyecto) para objetos o funcionalidades de la vista, por ejemplo encontraras un helper para llamar a catálogos o Grids. Si se quiere crear un helper se debe hacer en esta carpeta, y se debe seguir la metodología de los otros helper.
-
* model: Aqui se encuentran las clases de conexion con cada tabla de la base de datos, junto que sus clases bases. Estas clases son generadas automaticamente en base a un esquema de la base de datos a través de la funcionalidad [["propel" http://www.symfony-project.com/book/trunk/08-Inside-the-Model-Layer]] que contiene symfony.
+
* model: Aqui se encuentran las clases de conexion con cada tabla de la base de datos, junto que sus clases bases. Estas clases son generadas automaticamente en base a un esquema de la base de datos a través de la funcionalidad ["propel" http://www.symfony-project.com/book/trunk/08-Inside-the-Model-Layer] que contiene symfony.
* Business: En esta carpeta estan organziadas las clases del manejo del negecio. Aqui se debe colocar todo el código que tenga que ver con procesos del negocio. Esta carpeta tentativamente tiene la siguiente organziación:
* Business: En esta carpeta estan organziadas las clases del manejo del negecio. Aqui se debe colocar todo el código que tenga que ver con procesos del negocio. Esta carpeta tentativamente tiene la siguiente organziación:
Línea 26: Línea 26:
Por ejemplo dentro de la carpeta "compras" existen las siguientes clases:
Por ejemplo dentro de la carpeta "compras" existen las siguientes clases:
 +
<pre>
------- compras
------- compras
-----------Articulos.class.php
-----------Articulos.class.php
-----------Compras.class.php
-----------Compras.class.php
 +
</pre>
Estas 2 clases contienen funcionalidades específicas de estos conceptos. por ejemplo la clase Articulos contiene:
Estas 2 clases contienen funcionalidades específicas de estos conceptos. por ejemplo la clase Articulos contiene:

Revisión de 23:15 27 abr 2007

Dentro de Siga el código fuente de la lógica del negocio esta separado del controlador y la vista, lo que llamamos el modelo. Este modelo se encuentra en la carpeta "lib" de nuestro proyecto, y esta organizado de la siguiente forma:

Lib.png

La carpeta "Lib" es raíz del proyecto y dentro esta toda la información del modelo de datos. Allí podrás encontrar las siguientes carpetas:

------- compras
------- bienes
------- formulacion
------- ingresos
------- nomina
------- obras
------- tesoreria
------- .....

Cada una de estas carpetas contiene las clases de cada uno de las aplicaciones.

Por ejemplo dentro de la carpeta "compras" existen las siguientes clases:

------- compras
-----------Articulos.class.php
-----------Compras.class.php

Estas 2 clases contienen funcionalidades específicas de estos conceptos. por ejemplo la clase Articulos contiene:


class Articulos
{
        // Funcion para el formulario "Almregart"
	public static function validarAlmregart($articulo)
	{
        }

        // Funcion para el formulario "Almregart"
	public static function salvarAlmregart($articulo,$grid)
        {
            self::Grabar_Articulo($articulo,$grid);		
        }

        // Funcion para el formulario "Almregart"
	public static function Grabar_Articulo($articulo,$grid)
	{	
            // Se graba el Artículo		
            $articulo->save();
			
            // Se graban los almacenes del articulo
            self::Grabar_ArticulosAlmacen($articulo,$grid);

	}
	
        // Funcion para el formulario "Almregart"
	public static function Grabar_ArticulosAlmacen($articulo,$grid)
	{ 
            ......
	} 



	    
        // Funcion para validar el formato del código del 
artículo
	public static function validarCodart($articulo)

	{

	}

}


Estructura de las clases del Negocio

Tomando como ejemplo la estructura de la clase "Artículos" expuesta anteriormente, tenemos lo siguiente:

Herramientas personales
Espacios de nombres
Variantes
Acciones
Navegación
Herramientas