Informatiebestanden : scripts

0000001929     -      22-10-2025

Algemene informatie over scripts

Het begrip script breidt het begrip prijsformule uit dat beschikbaar is via de optie "Tools / Setup / Prijzen". Scripts zijn daarom beschikbaar voor alle informatiebestanden.  Scripts voor elk informatiebestand kunnen worden bewerkt via "Tools / Schermen Informatiebestanden / Scripts / ...")

Dit betreft alle informatiebestanden: klanten, leveranciers, artikelen, projecten, algemene rekeningen, analytische rekeningen, contactpersonen, prospecten, vaste activa, ...

Met een script kunt u een willekeurig gebied van een informatiebestand berekenen op basis van een berekening (een formule) met behulp van andere gebieden van hetzelfde informatiebestand.

Via een van deze menupunten kun je scripts definiëren (met C# syntax) die worden uitgevoerd zodra de cursor bepaalde velden van het betreffende informatiebestand verlaat.
Voor elk gebied van het scherm kun je definiëren of het script wel of niet moet worden uitgevoerd wanneer de cursor het gebied verlaat. Dit wordt gedaan via "Tools / Schermen Informatiebestanden / Parametrering".

Voorbeeld: s_prix_ti = s_prix_ht * (1+(s_taux_tva/100));

De knop "Syntaxis Nakijken" wordt gebruik om de syntaxis van de ingevoerde code te controleren. Als er een fout is, wordt er automatisch een venster geopend met de volledige code. Dit toont je de code die je nodig hebt om het script uit te voeren. Deze is verdeeld in drie delen:

  1. initialisatie van alle variabelen die corresponderen met de tabelvelden;
  2. de formule die in het script is ingevoerd (bevindt zich tussen de regels "//Begin of Script" en "//End of Script");
  3. initialisatie van de tabelvelden met de waarden in de variabelen die zijn gewijzigd.

De hoofding van dit venster toont informatie over de fout die tijdens het compileren is opgetreden.
Voorbeeld: Fatal : ; verwacht (line 235)

Het script kan alleen worden opgeslagen als de syntaxis correct is.

attention De variabelen worden geïnitialiseerd met alle velden in de tabel (punt 1 hierboven) en de velden worden geïnitialiseerd vanuit de variabelen (punt 3 hierboven) tijdens het compileren (dat opnieuw wordt uitgevoerd wanneer het script wordt opgeslagen).
Als er vervolgens velden worden verwijderd in het betreffende informatiebestand, is het absoluut noodzakelijk om de scripts opnieuw te doorlopen, een wijziging aan te brengen en ze opnieuw te valideren. Ze worden dan opnieuw gecompileerd, rekening houdend met de huidige structuur van de DB.

Voorbeelden

Deze functionaliteit is uitgebreid naar alle informatiebestanden en is toegankelijk via "Tools / Schermen Informatiebestanden / Scripts".
Om deze functie te gebruiken (en dus scripts te definiëren), maak je gewoon de volgende variabele aan in het corresponderende informatiebestand:

  • CLI = klanten: C_CALCUL char(10)
  • FOU = leveranciers: F_CALCUL char(10)
  • PROJ = projecten: P_CALCUL char(10)
  • DEST = 4de informatiebestand: D_CALCUL char(10)
  • TACT = contacten: T_CALCUL char(10)
  • GEN = algemene rekeningen: G_CALCUL char(10)
  • ANA = analytische rekeningen: A_CALCUL char(10)
  • IMM = vast activa: I_CALCUL char(10)
  • XLEAD = prospecten : X_CALCUL char(10)
  • YPREST = dienstverleners: Y_CALCUL char(10)
  • MPLACE : locaties: M_CALCUL char(10)

Vervolgens, in het informatiebestand, hoef je alleen maar het volgende toe te voegen

  1. een combobox waarvan de bron het veld x_CALCUL (waarbij x staat voor de letter van het informatiebestand)
  2. een control van het type Object waarvan de eigenschap ObjectType is ingesteld op ScriptCalculator

 

Technische informatie

De scripts (gecompileerde assemblies) worden opgeslagen in de tabel Assemblies.


Trefwoorden: formules; herberekening; prijs; de kolom xxx hoort niet tot de tabel Tabel



Functionele cookies: Cookies die nodig zijn voor het gebruik van de website en voorkeurscookies. Ze bevatten geen persoonsgegevens. (Meer informatie)

Analytische cookies: Verzamelen van statistieken met betrekking tot het gedrag van internetgebruikers. (Meer informatie)

Marketingcookies: Om bezoekers op verschillende websites te volgen voor advertentiedoeleinden. (Meer informatie)