Anveo Mobile App / Melhores Práticas / Gestão de Mobile Number Series
Esta é uma tradução automática. O post original está disponível em Inglês .

Gestão de Mobile Number Series

O Anveo Mobile App permite-lhe criar novos registos, sem utilizar uma comunicação direta com o Dynamics. Devido a este facto, é importante evitar conflitos com a atribuição de números a encomendas, cotações, clientes, etc., que tenham sido criados no dispositivo e enviados para o Dynamics pela sincronização. Isto permite que os dispositivos móveis tenham as suas próprias number series separadas pela number series da Dinâmica. Pode configurar mobile number series utilizando a página Mobile App No. Series Setup no menu principal do Anveo Client Suite:

Code

O Code especifica o identificador único da number series móveis. Utilizando este código, uma number series telemóvel pode ser referenciada através do Anveo Script.

Prefix

No campo Prefix, pode indicar qual o prefixo que obtém os números da number series móveis. Os prefixos são caracteres que se encontram à frente dos algarismos de um número.

Suffix

No campo Suffix, pode indicar qual o sufixo que obtém os números da number series móveis. Os sufixos são caracteres que se encontram atrás dos algarismos de um número.

Length

No campo Length, indica quantos dígitos devem conter o número da number series móveis.

Incrementation

No campo Incrementation indica quantos passos um número da number series móveis deve ser incrementado.

Para utilizar number series móveis no Anveo Script, utilizar a função predefinida Get-NextNo(NoSeriesCode) da biblioteca LIB_NOSERIES.

Opção 1: Number Series separadas por utilizador

A gestão das number series éricas pode ser efectuada de diferentes formas: A primeira opção é atribuir a cada utilizador uma number series numérica separada e única. Configure uma Mobile No. Series no Anveo para cada utilizador. A melhor maneira é atribuir ao seu código da number series um prefixo ou sufixo através do Anveo User Code. Se o fizer, adicione este prefixo ou sufixo à sua chamada GetNextNo no Anveo Script onde adiciona novos registos. Recomenda-se que actualize os seus pacotes de sincronização para enviar apenas as number series que pertencem aos utilizadores correspondentes. Tenha também cuidado para que as suas séries de números sejam únicas, mesmo com number series da Dynamics.

Opção 2: Number Series temporários

Em alternativa, Anveo Mobile App permite-lhe utilizar number series temporárias apenas para dispositivos móveis. Na sincronização, o código da série de números móveis será eliminado na codeunit ACF App Events e será utilizada a number series do Dynamics. Neste caso, é possível utilizar uma number series móveis para todos os utilizadores Anveo Mobile App porque o registo que utiliza a number series móveis será eliminado e reenviado para o dispositivo móvel utilizando o código da number series final do Dynamics.

Para ativar esta opção, insira o seguinte código na codeunit ACF App Events. Coloque o código no acionador OnInsertRec antes de executar INSERT. No nosso modelo, isto pode ser feito facilmente utilizando a função OnBeforeInsert.

CASE RecRef.NUMBER OF
DATABASE::"Sales Header": BEGIN
RecRef.SETTABLE(SalesHeader);
SalesHeader."No." := '';
SalesHeader."Document Date" := TODAY;
RecRef.GETTABLE(SalesHeader);
END;
END;
Exemplo de código C/AL para remover o código de number series telemóvel. Desta forma, será utilizada a série numérica do Dynamics.

Provavelmente, o utilizador adicionou algumas linhas de vendas ao novo cabeçalho de vendas. Estas linhas continuarão a ter o código de série do número de telemóvel do cabeçalho de vendas. Isso significa que uma conversão do código da série de números do cabeçalho de vendas de todas as linhas de vendas recebidas também deve ser feita na codeunit ACF App Events. Utilizar a função de conversão GetMatchedRecRef na codeunit
ACF App Events para uma conversão de um código de cabeçalho de vendas móvel para o código da série 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;
Exemplo de código C/AL para uma tradução de linhas de vendas’ chave primária.

O Anveo Client Suite detecta automaticamente alterações de chave primária na codeunit ACF App Events e guarda entradas de tradução na tabela ACF Mobile No. Matching para cada utilizador e dispositivo. Esta tabela é utilizada para a tradução automática de todos os dados de entrada. O mapping é armazenado individualmente para cada utilizador e dispositivo, pelo que serão utilizados os mesmos números de telemóvel para todos os utilizadores Anveo. Não faz mal, porque são temporários. Desta forma, não é possível dar estes números a utilizadores externos como referência. Se tal for necessário, escolher uma combinação das opções 1 e 2.

Se um utilizador móvel puder adicionar outros dados relacionados com o cabeçalho de vendas, como comentários do cabeçalho de vendas ou comentários da linha de vendas, é necessário adicionar também um código de conversão para estas tabelas. Utilize o código da linha de vendas acima como modelo.

Devido a uma alteração da chave primária durante a sincronização, o Anveo Mobile App não pode permanecer numa Anveo Page que utilize o código da série de números antiga. No nosso exemplo: Se o utilizador premir sincronizar no cabeçalho de vendas ou na linha de vendas e a série de números ainda for móvel e temporária, a Anveo Page será fechada automaticamente após a sincronização. Naturalmente, o cabeçalho final das vendas está disponível no dispositivo móvel após a sincronização, se corresponder aos critérios de filtragem dos utilizadores nos pacotes de sincronização.