Por las necesidades del cliente, se dan situaciones donde es necesario configurar contabilidad analítica de forma automática por departamentos y así podrá visualizar los datos tanto de forma conjunta como diferenciando por CC.


Por ejemplo se trata de una empresa que trabaja con centros de coste donde quieren asignar centros de coste en compras/ventas en función del departamento que realice las operaciones.

Aquí no trabajan con facturas agrupando diferentes pedidos etc, sino que cada gestión desde pedido hasta la factura lo realiza de forma individual el único departamento, de otra forma esta configuración no sería valida.


La automatización de la asignación de los CC,  requiere utilizaremos CC línea y aunque todas las líneas sean del mismo departamento de esta forma la automatización no requiere de mucha personalización.


Parámetros a tener en cuenta en la configuración:


CENTROCOSTE_LINEA

CENTROCOSTE_LONGITUD


Como vamos automatizar la asignación de CC:

CENTROCOSTE_LINEA_AUTO


Parámetros a considerar en este caso:


CENTROCOSTE_LINEA_REQUERIDO

CENTROCOSTE_LINEA_GENERICO




Paso seguido damos de alta los CC:



Paso 3.:

Centros Coste Definición: en este formulario definimos cómo se comportará el asistente de selección de centros de coste que nos aparecerá cuando editemos o tratemos de asignar un centro de coste a un objeto (cabecera o líneas indistintamente).



Paso 4: Informaremos el CC que le corresponde para cada departamento:


Configuramos la asignación de CC de forma automática por objeto:




Para ello debemos ir a la Tabla Conta_CentrosCoste_Config y activar la asignación automática en el objeto PedidoProv_Linea (1)



SQL de consulta en la configuración de CC automático del ejemplo es la siguiente (seleccionamos el CC informado en la ficha del departamento que se asigna en el pedido y lo asignamos en la linea del pedido): 


select d.CentroCoste 
from Pedidos_Prov_Cabecera P
inner join Departamentos d on d.iddepartamento = p.iddepartamento
inner join Pedidos_Prov_Lineas ppl on ppl.IdPedido = p.idpedido where ppl.IdDoc =