Pesquisas em Páginas de Cartões
Uma pesquisa em uma página de cartão lhe dá a capacidade de simplesmente selecionar um valor de uma lista em vez de digitar. Cenários típicos do Dynamics são campos de código que têm apenas um nome muito curto. Requer uma descrição para compreender o seu valor. Além disso, as pesquisas podem acelerar significativamente o processo de entrada.
Conceito geral
Ao contrário do Dynamics, Anvaigo Mobile App não possui um automatismo para activar uma pesquisa num campo. Isto permite uma configuração muito mais flexível. Ele é composto de três componentes básicos: Botão em uma página de cartão para abrir a exibição em lista, Anvaigo Page do tipo lista para mostrar os valores de pesquisa e um Script Anvaigo para salvar o valor selecionado no registro.
Anvaigo Mobile App fornece um exemplo na Anvaigo Page ASLS_CUSTOMER com uma pesquisa para vendedores usando Anvaigo Page Anvaigo Page ASLS_SALESPERSON_LU
1. Criar nova Anvaigo Page da lista de tipos
O primeiro passo é criar uma nova página de lista que mostre sua tela de pesquisa (veja aqui). Esta Anvaigo Page pode ser usada apenas para pesquisas, mas você pode adicionar entradas de menu para navegação adicional, se necessário. Example Anvaigo Page é ASLS_SALESPERSON_LU
2. Abrir pesquisa Anvaigo Page via botão
Na segunda etapa, adicione um botão na página do seu cartão usando um código Anvaigo Script para abrir sua Anvaigo Page de pesquisa. Adicione um botão à sua Anvaigo Page (veja aqui). Como você já pode ter uma relação de tabela global entre os dois registros de origem e a Anvaigo Page de pesquisa (veja aqui), a Anvaigo Page de pesquisa deve ser aberta via Anvaigo Script sem nenhum filtro. Adicione um novo Código de Ação e atribua-o ao seu botão (veja aqui). O seguinte código Anvaigo Script abre sua Anvaigo Page sem nenhum filtro:
local Salesperson = Record('Salesperson/Purchaser');
PAGE_OPEN('ASLS_SALESPERSON_LU', Salesperson,Rec);
Exemplo, vide Anvaigo Page ASLS_CUSTOMER , código de ação ASLS_OPN:PAYTERMS_LU.
3. Código de ação na sua Anvaigo Page de pesquisa
O último passo é adicionar um novo Código de ação que é executado no evento Mobile Shortpress (consulte Ação de imprensa curta). Ele salva o valor selecionado no seu registro de origem srcRec na placa e fecha a Anvaigo Page de pesquisa.
if (srcRec) then
[[Lookup Page="" can="" be="" used="" for="" multiple="" sources]=""]]
if (srcRec:GETTABLENAME() == 'Customer') then
[[Write value="" back="" to="" customer="" table="" and="" close="" Anvaigo="" Page]=""]]
srcRec:SETVALUE('Salesperson Code', Rec:GETVALUE('Code'));
srcRec:MODIFY(false);
PAGE('CLOSE');
else
[[Error message="" if="" source="" is="" not="" defined="" yet]=""]]
MESSAGE('Cannot perform action because src table is '
.. srcRec:GETTABLENAME());
end;
end;
Uma Anvaigo Page de pesquisa pode ser usada várias vezes para diferentes tabelas de origem. Nesse exemplo, também é possível utilizar a Anvaigo Page para uma pesquisa no cabeçalho de vendas ou no contato. Basta adicionar novas tabelas de origem ao último Anvaigo Script. No srcRec você sabe de onde a Anvaigo Page foi aberta.
Em alguns cenários, uma Anvaigo Page de pesquisa é aberta a partir de campos diferentes, mas a partir da mesma tabela. Então, o último Script Anvaigo não sabe para onde escrever os dados. Requer código adicional.
Opção 1: usar várias Anvaigo Pages de pesquisa.
Opção 2: Lembre-se do campo de origem na tabela ACF Lookup Helper como uma variável global e use-o ao escrever de volta na tabela de origem.
Exemplo: Consulta de Sell-to Customer No. e Bill-to Customer No. na tabela Sales Header.