Anveo Mobile App / Beste praktijken / Hoe om te gaan met FlowFields
Dit is een automatische vertaling. De originele post is beschikbaar in Engels.

Hoe om te gaan met FlowFields

De berekening van FlowFields kost veel tijd in , dus u kunt niet alle FlowFields elke keer dat u synchroniseert bijwerken. Het is ook niet aan te raden om RECALCFIELDS uit te voeren na elke boekingsroutine. Dit zou resulteren in een lang synchronisatieproces dat niet goed is voor de gebruikerservaring. Er zijn andere opties beschikbaar voor FlowFields.

Nachtelijke herberekening van FlowFields

Wij raden u aan om een nieuw, normaal veld in uw -tabel aan te maken dat de waarde opslaat die u naar de gebruiker wilt sturen. In een nachtelijke taak herbereken je het FlowField. Als de waarde is veranderd, werkt u uw nieuwe veld bij en doet u een ”MODIFY”. Dit vermindert het dataverkeer aanzienlijk.

Gebruik van een Online Fields

U kunt ook online velden Online Fields gebruiken om de waarde van FlowField weer te geven. De veldwaarde wordt automatisch bijgewerkt in de app, onafhankelijk van de synchronisatie. Lees hier meer over Online Fields en hoe deze in te stellen.

Herberekening aanvragen

Soms is het nodig om live gegevens beschikbaar te hebben. In dit geval kunt u een nieuwe verzending van FlowField gegevens aanvragen. Uiteraard is hiervoor een online verbinding vereist. De eerste stap is om een knop in uw gebruikersinterface te voorzien van een actiecode die uw FlowField markeert. Een synchronisatie wordt onmiddellijk gestart.

Rec:SETVALUE('Inventory', Rec:GETVALUE('Inventory'));
Rec:MODFIY(TRUE);
SYNC_DB();
Anveo Script Code voorbeeld om FlowField Inventory van tabel Item te markeren.

De volgende keer dat u synchroniseert, kunt u de herkalibratie doen in codeunit ACF App Events.

CASE RecRef.NUMBER OF
// Other code here ...
DATABASE::Item: BEGIN
DeviceRecRef.SETTABLE(DeviceItem);
IF (DeviceFldRef.NUMBER = DeviceItem.FIELDNO(Inventory)) THEN BEGIN
//Recalculate FlowFields for this item
Item.SETRANGE("No.", DeviceItem."No.");
ItemRecRef.GETTABLE(Item);
Mgt.RECALCFIELDS(ItemRecRef);
// Do not change the current value "Inventory"
NAVAction := NAVAction::Ignore;
END;
END;
END;
C/AL Code voorbeeld voor het herberekenen van de FlowField Inventarisatie van het tabelitem.