WP2020.1.97 - Implementación Cálculo Automático de Retales

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 7

Implementación cálculo automático

de retales
WhitePaper
Abril 2022

Ronda Guglielmo Marconi, 9 T (+34) 96 338 99 66 Preference, S.L. NIF B96251988


Parque Tecnológico ventas@preference.es Registro Mercantil de Valencia, Tomo 4770, General 2080
Por favor,
46980 Paterna, Valencia (Spain) www.preference.es Folio 145 Hoja V-31996, Inscripción 1ª, Fecha 15/02/1994 recicle
Contenidos
1. Propósito ______________________________________________________ 3
2. Implementación de la dll __________________________________________ 4
3. Configuración de la base de datos ___________________________________ 5
4. Comprobación de la funcionalidad ___________________________________ 7

Implementación cálculo automático de retales | WhitePaper | 2


1. Propósito
Actualmente, PrefGest permite el uso de cálculo de retales de forma manual para cada presupuesto a través
del Estudio y Manipulación de Precios. Existe la posibilidad, a través de la contratación del correspondiente
módulo, de realizar ese cálculo de manera automática para trabajar tanto en la base de datos de fábrica
como en la de PrefWeb.
Esta funcionalidad se encuentra disponible a partir de la versión 2018.2 de PrefSuite.

Implementación cálculo automático de retales | WhitePaper | 3


2. Implementación de la dll
La dll de cálculo automático de retales se encuentra incluida en la PrefSolutions. Si se trabaja con dll de
usuario, es necesario añadir las siguientes llamadas a la PrefSolutionsNET desde el proyecto PrefUserCSharp
de usuario.
En el evento SalesDoc_BeforeSave, del módulo SalesModule, hay que incluir el siguiente código:

public void SalesDoc_BeforeSave(SalesDoc salesDoc, ref bool cancel)


{
if (PrefSolutionsSalesModule == null)
{
PrefSolutionsSalesModule = new PrefSolutionsNET.SalesModule();
}
PrefSolutionsSalesModule.SalesDoc_BeforeSave(salesDoc, ref cancel);
}

Por último, es necesario registrar desde la aplicación Símbolo de Sistema de Windows la PrefUserCsharp en
la misma ruta donde se encuentra instalada la PrefSolutions, ya que será quien realice la llamada a esta y a
la dll de retales.

Para instalaciones de PrefSuite en x86:


C:\Windows\Microsoft.NET\Framework\v4.0.30319\RegAsm.exe "RutaDeUbicación/NombreCompleto.dll" /c

Para instalaciones de PrefSuite en x64:


C:\Windows\Microsoft.NET\Framework64\v4.0.30319\RegAsm.exe "RutaDeUbicación/NombreCompleto.dll" /c

En caso de que nuestra dll de usuario esté programada en VB6, la llamada sería la siguiente:

Public Sub SalesDoc_BeforeSave(ByVal SalesDoc As PrefSales.ISalesDoc, Cancel As Boolean)


Dim obj
Set obj = CreateObject(“CustomizationRetales.Retales”)
Call obj.CalculoRetales(SalesDoc, Cancel)
Set obj = Nothing

Para registrar la PrefUserVB6, el código es el siguiente:


regsvr32 "RutaDeUbicación/NombreCompleto.dll" /c

Implementación cálculo automático de retales | WhitePaper | 4


3. Configuración de la base de datos
Una vez registrada las PrefSolutions y la PrefUser, es necesario que la base de datos cuente con la siguiente
configuración:
o Tener creada y configurada una línea de producción. PrefSuite viene con una línea de producción
configurada por defecto.

o Si no está creada, hay que añadir la siguiente variable global indicando el nombre de la línea de
producción (sea la de por defecto u otra):

insert into variablesglobales (Empresa, nombre, valor) values(1,'USR_LineaRetales',1)

UPDATE VariablesGlobales SET Valor = 'LineaProducción' WHERE Nombre = 'USR_LineaRetales'

o En caso de que la base de datos trabaje con más de una línea de producción, se debe ejecutar el siguiente
script SQL en la base de datos indicando el nombre de ambas líneas:

UPDATE VariablesGlobales SET Valor = 'LineaProducción1;LineaProduccion2' WHERE Nombre =


'USR_LineaRetales'

o Los modelos de la base de datos deben tener un tipo de producción y estos deben estar asociados a una
línea de producción.

o Máquina creada y asociada a los perfiles en la línea de producción correspondiente. Las máquinas se
crean desde el apartado Máquinas de Producción de PrefWise, y los materiales tipo barra se asocian a
estas desde el apartado Materiales Base:

o Hay que ejecutar, uno a uno, los siguientes scripts proporcionados sobre la base de datos:

1. CreaTarifaINC_RETAL. Este script inserta una tarifa de Vendedor en la base de datos llamada
INC_RETAL. Esta tarifa se utilizará para aplicar el aumento de retales.
2. Insert Tariff Chain PrefSuite Sales Retales (a Coste fábrica o a Venta). Este script inserta una
cadena de tarifas nueva llamada con las modificaciones necesarias para que se aumente el
precio de los retales. *
3. AñadirCampoUSR_UseRealLength-Materiales. Crea un campo en la tabla Materiales para
poder indicar a qué perfiles no queremos que se les aplique el cálculo automático de retales.

Implementación cálculo automático de retales | WhitePaper | 5


* Para fábrica se ejecutará el script para aplicar el retal en la tarifa venta al precio del coste de la fábrica. En
PrefWeb se aplicará el retal en la tarifa coste a precio de la venta de la fábrica.

o Indicar qué colores de la base de datos tendrán activados la aplicación del retal. Para ello, hay que
modificar el campo Standard de la tabla colores con los siguientes valores:

• Standard= 0 (No aplica retal).


• Standard= 1 (Aplica retal).

UPDATE Colores SET Standard = 1 WHERE Nombre = 'NombreColor'

o En caso de que tengamos algún material al que no queremos que se aplique el cálculo de retal
automático, debemos indicar con valor 1 al campo USR_UseRealLength de la tabla Materiales:

UPDATE Materiales SET USR_UseRealLength = 1 WHERE ReferenciaBase = 'ReferenciaBaseMaterial'

Implementación cálculo automático de retales | WhitePaper | 6


4. Comprobación de la funcionalidad
Para comprobar que el cálculo de retales automático está operativo, lo más sencillo es realizar esta prueba,
una vez registradas las dll y configurada la BD. Es necesario ejecutar PrefGest la primera vez en modo
Administrador para que los cambios se hagan efectivos:

1. Crear un presupuesto con un modelo que únicamente contenga un perfil configurado para que se le
aplique el incremento (el ejemplo más sencillo es un fijo sin vidrio de 1000x1000). En este caso, el
material a emplear será de 4 tramos de 1000 mm. El precio, en cuanto se guarde el documento, debe
indicar (si no se está generando ningún otro material) al correspondiente a una barra entera (en mi
siguiente ejemplo trabajo con barras de 6500 mm).

2. Para 2 unidades de ese mismo modelo, al guardar el presupuesto el Importe Unitario seguirá siendo el
mismo, ya que serán necesarias dos barras (8000mm) para poder producirlos, que se repartirán entre
los dos modelos (2 barras para 2 modelos).

3. Para 3 unidades, en cambio, hablaríamos de una necesidad de 12000 mm, que se suplirá con dos barras
enteras. Aquí, cuando guardemos el documento, debemos notar un descenso apreciable en el Importe
Unitario de los modelos (2 barras para 3 modelos).

4. El comportamiento será el mismo sucesivamente.

Implementación cálculo automático de retales | WhitePaper | 7

También podría gustarte