# Tutor de reemplazo

El [reemplazo](https://doc.velneo.com/velneo-vdevelop/proyectos-objetos-y-editores/proyecto-de-aplicacion/reemplazo) es un objeto que permite reemplazar un objeto existente en una solución por otro objeto diferente del mismo tipo.&#x20;

Es muy útil para personalizar soluciones desde soluciones heredadas, sin tener que editar el código fuente original. Por ejemplo, si usamos la plantilla [Velneo vERP](https://doc.velneo.com/velneo-verp/que-es-velneo-verp), podemos personalizarla creando una solución que la herede y reemplazando objetos visuales de ésta por los que creemos en nuestra solución.

En el tutor hemos hecho un ejemplo muy sencillo: crear dos rejillas la original y que es la que se usa dentro de la aplicación y la de reemplazo, que es la que la sustituirá en tiempo de ejecución.

Todos los objetos están programados en la carpeta Tutores/Avanzados/Reemplazo.

Hemos creado una rejilla de artículos llamada ART\_M\_ORI que tiene las columna siguientes:

* Código.
* Nombre.

Esta rejilla se carga en una vista de datos dentro del formulario llamado TUT\_REE:

![](https://content.gitbook.com/content/3LV49PQOXXZc5eok6Vpo/blobs/acIc9cwsL2Inv8rgOiGM/image.png)

Cuando queramos que un objeto de un proyecto pueda ser personalizado, en la propiedad **estilo** debemos activarle el estilo **personalizable**. Y eso hemos hecho con la rejilla ART\_M\_ORI.

Hemos creado otra rejilla, llamada ART\_M\_REE, con las columnas siguientes:

* Código.
* Nombre.
* Pendiente de servir.
* Precio.

Y hemos creado un tercer objeto de tipo [reemplazo](https://doc.velneo.com/velneo-vdevelop/proyectos-objetos-y-editores/proyecto-de-aplicacion/reemplazo). Y hemos establacido las propiedades siguientes:

* **Identificador**: ART\_M\_REE.
* **Nombre**: Reemplazo rejilla de artículos.&#x20;
* **Objeto**: en esta propiedad debemos seleccionar el objeto a reemplazar, al desplegar la lista solamente aparecerán los objetos que tengan activado el **estilo** ***personalizable***. Seleccionar la rejilla ART\_M\_ORI.
* **Objeto sustituto**: seleccionaremos la rejilla ART\_M\_REE.

Si ejecutamos la solución, al cargar el ejemplo de este tutor veremos que no se presenta la rejilla que tenía configurada (ART\_M\_ORI) sino que carga la rejilla sustituita: ART\_M\_REE.
