Anveo Mobile App / Mejores prácticas / Gestión de Mobile Number Series
Esta es una traducción automática. El mensaje original está disponible en Inglés.

Gestión de Mobile Number Series

El Anveo Mobile App le permite crear nuevos registros, sin necesidad de utilizar una comunicación directa con Dynamics. Debido a este hecho es importante evitar conflictos con la asignación de números para pedidos, presupuestos, clientes, etc., que han sido creados en el dispositivo y enviados a Dynamics por la sincronización. Esto permite que los dispositivos móviles tengan su propia number series de números que están separados por la number series números de Dynamics. Puede configurar mobile number series utilizando la página Mobile App No. Series Setup en el menú principal de Anveo Client Suite:

Code

El Code especifica el identificador único de la number series móviles. Mediante este código, se puede hacer referencia a una number series móvil a través de Anveo Script.

Prefix

En el campo Prefix puede especificar qué prefijo obtienen los números de la number series móviles. Los prefijos son caracteres que preceden a las cifras de un número.

Suffix

En el campo Suffix puede especificar qué sufijo obtienen los números de la number series móviles. Los sufijos son caracteres que aparecen detrás de las cifras de un número.

Length

En el campo Length se indica cuántos dígitos debe contener el número de la number series móvil.

Incrementation

En el campo Incrementation se indica en cuántos pasos debe incrementarse un número de la number series móviles.

Si desea utilizar number series móvil en Anveo Script, utilice la función predefinida Get-NextNo(NoSeriesCode) de la biblioteca LIB_NOSERIES.

Opción 1: Number Series independientes por usuario

Puede gestionar number series series numéricas de diferentes maneras: La primera opción es asignar a cada usuario una serie de number series separada y única. Configurar una Mobile No. Series en Anveo para cada usuario. La mejor manera es dar a su código de la number series un prefijo o sufijo por Anveo User Code. Si lo hace, añada este prefijo o sufijo a su llamada GetNextNo en Anveo Script cuando añada nuevos registros. Se recomienda actualizar los paquetes de sincronización para que sólo se envíen number series que pertenezcan a los usuarios correspondientes. También tenga cuidado de que sus series numéricas sean únicas, incluso con number series de Dynamics.

Opción 2: Number Series temporales

Como alternativa, Anveo Mobile App te permite utilizar number series temporales sólo para dispositivos móviles. En la sincronización, el código de la serie de números de móvil se eliminará en codeunit ACF App Events y se utilizará la number series de Dynamics. En este caso, puede utilizar una serie de number series de móvil para todos los usuarios Anveo Mobile App, ya que el registro que utiliza la number series móvil se eliminará y se volverá a enviar al dispositivo móvil utilizando el código de number series final de Dynamics.

Para activar esta opción, inserte el siguiente código en la codeunit ACF App Events. Ponga el código en el disparador OnInsertRec antes de ejecutar INSERT. En nuestra plantilla, esto se puede hacer fácilmente usando la función OnBeforeInsert.

CASE RecRef.NUMBER OF
DATABASE::"Sales Header": BEGIN
RecRef.SETTABLE(SalesHeader);
SalesHeader."No." := '';
SalesHeader."Document Date" := TODAY;
RecRef.GETTABLE(SalesHeader);
END;
END;
Ejemplo de código C/AL para eliminar el código de number series móvil. De este modo, se utilizará la serie numérica de Dynamics.

Probablemente, el usuario ha añadido algunas líneas de ventas a la nueva cabecera de ventas. Estas líneas seguirán teniendo el código de serie del número de móvil de la cabecera de ventas. Esto significa que en la codeunit ACF App Events también debe realizarse una conversión del código de la serie de números de cabecera de ventas de todas las líneas de ventas entrantes. Utilice la función de traducción GetMatchedRecRef en la codeunit
ACF App Events para una traducción de un código de cabecera de ventas móviles al código de serie de números final.

CASE RecRef.NUMBER OF
DATABASE::"Sales Line": BEGIN
RecRef.SETTABLE(SalesLine);
SalesHeader."Document Type" := SalesLine."Document Type";
SalesHeader."No." := SalesLine."Document No.";
LocalRecRef.GETTABLE(SalesHeader);
// Lookup a translation between mobile no. and final no.
IF GetMatchedRecRef(LocalRecRef) THEN BEGIN
// A translation exists for this Anveo User and Device
LocalRecRef.SETTABLE(SalesHeader);
// Assign correct, final Sales Header No.
SalesLine."Document No." := SalesHeader."No.";
END;
RecRef.GETTABLE(SalesLine);
END;
END;
Ejemplo de código C/AL para una traducción de líneas de ventas’ primary key.

Anveo Client Suite detecta automáticamente los cambios de clave principal en codeunit ACF App Events y guarda las entradas de traducción en la tabla ACF Mobile No. Matching para cada usuario y dispositivo. Esta tabla se utiliza para la traducción automática de todos los datos entrantes. El mapping se almacena individualmente para cada usuario y dispositivo, por lo que se utilizarán los mismos números de móvil para todos los Usuarios de Anveo. No pasa nada porque son temporales. De este modo, no podrá dar estos números a usuarios externos como referencia. Si es necesario, elija una combinación de las opciones 1 y 2.

Si un usuario móvil puede añadir otros datos relacionados con la cabecera de ventas, como comentarios de la cabecera de ventas o comentarios de la línea de ventas, deberá añadir también un código de traducción para estas tablas. Utilice el código de la línea de ventas anterior como plantilla.

Debido a un cambio de clave primaria durante la sincronización, el Anveo Mobile App no puede permanecer en una Anveo Page que utilice el antiguo código de serie numérica. En nuestro ejemplo Si el usuario pulsa sincronizar en la cabecera de ventas o en la línea de ventas y la serie de números sigue siendo móvil, temporal, la Anveo Page se cerrará automáticamente después de la sincronización. Por supuesto, la cabecera de venta final está disponible en el dispositivo móvil después de la sincronización, si se ajusta a los criterios de filtro de los usuarios en los paquetes de sincronización.