Deze lijst omvat een overzicht van alle interne veldnamen, veldtypen en maximale veldlengtes, welke gebruikt kunnen worden in een itemprofiel in JOIN Zaak & Document. Het overzicht geldt voor een Oracle database.
(Varchar = Variable Character Field)
Interne veldnaam | Veldtype | Maximale veldlengte | Bijzonderheid |
---|---|---|---|
SEQUENCE | Numeric | 6,0 | Volgnummerveld wordt automatisch aangemaakt |
MARK | Varchar | 250 | |
SUBJECT1 | Varchar | 250 | |
SUBJECT2 | Varchar | 250 | |
DOCUMENT_DATE | Datetime | 16 | |
RECIEVED_DATE | Datetime | 16 | |
PROCESSED | Character | 1 | |
COMPANY | Varchar | 250 | De koppelingsknop tussen documenten en adressen wordt altijd bij het COMPANY-veld geplaatst. |
MAILADDRESS | Varchar | 250 | COMPANY, MAILADDRESS, ZIPCODE en CITY worden gebruikt als adresgegevens. ZIPCODE is het postcodeveld. |
ZIPCODE | Varchar | 10 | |
CITY | Varchar | 250 | |
COUNTRY | Varchar | 20 | |
PHONE1 | Varchar | 20 | |
PHONE2 | Varchar | 20 | |
PHONE3 | Varchar | 20 | |
FAX1 | Varchar | 20 | |
FAX2 | Varchar | 20 | |
URL | Varchar | 250 | Alle gegevens beginnend met https://, wordt de inhoud van het veld herkend als internetadres. |
SALUTATION | Varchar | 250 | |
INITIALS | Varchar | 50 | |
SURNAME | Varchar | 250 | |
FIRSTNAME | Varchar | 50 | |
PREFIX | Varchar | 50 | |
TITLE | Varchar | 250 | |
FUNCTION | Varchar | 250 | |
DEPARTMENT | Varchar | 250 | |
SEX | Varchar | 8 | |
EMAIL1 | Varchar | 250 | Als één van de e-mailvelden een geldig e-mailadres bevat wordt er een mailto-link geplaatst. |
EMAIL2 | Varchar | 250 | |
EMAIL3 | Varchar | 250 | |
TEXT1 | Varchar | 250 | |
TEXT2 | Varchar | 250 | TEXT2 wordt standaard gebruikt als dossiernaam met een documentregistratie. De koppelingsknop voor dossiers wordt naast dit veld geplaatst. |
TEXT3 | Varchar | 250 | TEXT3 – TEXT5 kunnen worden gebruikt als tweede adres, postcode en plaats (standaard calling address) in een adres. TEXT4 kan dus gekoppeld worden aan de postcodetabel. |
TEXT4 | Varchar | 250 | |
TEXT5 | Varchar | 250 | |
TEXT6 | Varchar | 250 | |
TEXT7 | Varchar | 250 | |
TEXT8 | Varchar | 250 | |
TEXT9 | Varchar | 250 | |
DATE1 | Datetime | 16 | |
DATE2 | Datetime | 16 | |
DATE3 | Datetime | 16 | |
DATE4 | Datetime | 16 | |
DATE5 | Datetime | 16 | |
DATE6 | Datetime | 16 | |
DATE7 | Datetime | 16 | |
DATE8 | Datetime | 16 | |
NUM1 | Numeric | 12,2 | |
NUM2 | Numeric | 12,2 | |
NUM3 | Numeric | 12,2 | |
NUM4 | Numeric | 12,2 | |
NUM5 | Numeric | 12,2 | |
NUM6 | Numeric | 12,2 | |
BOL1 | Character | 1 | Character(1) velden worden gezien als Booleaanse velden (Ja/Nee-velden) in JOIN Zaak & Document. |
BOL2 | Character | 1 | |
BOL3 | Character | 1 | |
BOL4 | Character | 1 | |
BOL5 | Charcter | 1 | |
BOL6 | Character | 1 | |
BOL7 | Character | 1 | |
BOL8 | Character | 1 | |
BOL9 | Character | 1 | |
BOL10 | Character | 1 | |
ARCHIVED | Character | 1 | Dit veld wordt gebruikt om een registratie te archiveren |
MEMO | Text | Uitgebreide Inhoud | |
LEGALID | Numeric | ID-veld (bijv BSN) | |
CONFIDENTIALITY | Text | Vastleggen van vertrouwelijkheid |
Bovenstaande datatypes zijn weergegeven zoals ze door JOIN Zaak & Document worden gebruikt in een SQL serverdatabase. Hieronder ziet u de corresponderende datatypes voor andere database-types:
SQL server | Oracle | MySQL | MS Acces | Informix | Omschrijving |
---|---|---|---|---|---|
Character | Character | Character | Text | Character | Tekstveld, vaste lengte |
Varchar | Varchar | Varchar | Text | Varchar | Tekstveld, variabele lengte |
Numeric | Numeric | Numeric | Number | Numeric | Numeriek veld |
Datetime | Date | Datetime | Date/Time | Date | Datum/tijd veld |
Text | Long Raw | Longblob | OLE | Text | Kan een grote hoeveelheid tekst bevatten |
NB: MS Access ondersteunt geen fixed-length tekstvelden.
Macro | Omschrijving |
---|---|
FOFMON() | eerste dag van de huidige maand in. |
LOFMON() | laatste dag van de huidige maand in. |
FPRMON() | eerste dag van de vorige maand in. |
LPRMON() | laatste dag van de vorige maand in. |
FDAYWK() | eerste dag van de huidige werkweek in. |
LDAYWK() | laatste dag van de huidige werkweek in. |
FDAYPW() | eerste dag van de vorige werkweek in. |
LDAYPW() | laatste dag van de vorige werkweek in. |
FofQ() | eerste dag van dit kwartaal in. |
LofQ() | laatste dag van dit kwartaal in. |
FPrQ() | eerste dag van vorig kwartaal in. |
LPrQ() | laatste dag van vorig kwartaal in. |
FofY() | eerste dag van dit jaar in. |
LofY() | laatste dag van dit jaar in. |
FprY() | eerste dag van vorig jaar in. |
LprY() | laatste dag van vorig jaar in. |
De onderstaande macro’s worden door JOIN Zaak & Document herkend als u de macro-optie in de veldinstellingen van een itemprofiel hebt geactiveerd. Een macro wordt door JOIN Zaak & Document automatisch vervangen door een gegenereerde waarde als een nieuwe registratie wordt aangemaakt, een registratie (dossier, adres, contactpersoon) wordt gekoppeld, of wanneer een registratie wordt afgehandeld. Bekijk de noties bij de verschillende typen macro, om te zien wat de specifieke werking is.
Macro | Omschrijving |
---|---|
DATE() | Vult na het creëren van een nieuwe registratie de datum van vandaag in. |
DATE() + 5 | Vult na het creëren van een nieuwe registratie de datum, vijf dagen na vandaag in. |
NOW() | Vult na het creëren van een nieuwe registratie het huidige tijdstip in. |
NOW() + 5 | Vult na het creëren van een nieuwe registratie het tijdstip, vijf uur na het huidige tijdstip in. |
GLOBALNUM() | Vult na het creëren van een nieuwe registratie een globaal volgnummer in, dat uniek is over alle boeken. Deze macro kan niet gebruikt worden op het SEQUENCE-veld. Gebruik GLOBALNUM(REEKSNAAM) om meerdere globale reeksen, elk met hun eigen naam aan te maken. Vul in plaats van REEKSNAAM de gewenste naam in. |
%BEHANDELAAR% | Vult na het creëren van de registratie de volledige naam in van de aangemelde gebruiker. |
%USER% | Vult na het creëren van de registratie de volledige naam in van de aangemelde gebruiker. |
%USERTEL% | Vult na het creëren van de registratie het telefoonnummer (PHONE1) van de aangemelde gebruiker in. |
%USERFAX% | Vult na het creëren van de registratie het faxnummer (FAX1) in van de aangemelde gebruiker. |
%USERLOC% | Vult na het creëren van de registratie de afdeling (DEPARTMENT) in van de aangemelde gebruiker. |
%USER_[veldnaam]% | Vult na het creëren van de registratie de waarde van [veldnaam] in van de huidige gebruiker (bv. %USER_CITY%). |
Let op: De macro YEAR([macro]) om een bestaande datummacro heen, bv. YEAR(DATE()), vult alleen het jaar in. Voor GLOBALNUM() is een hernummertool beschikbaar om bestaande registraties die aan het profiel te voldoen van een globaal uniek nummer te voorzien.
Macro | Omschrijving |
---|---|
%ADDRES_[veldnaam]% | Waarde van [veldnaam] van het gekozen adres |
%FOLDER_[veldnaam]% | Waarde van [veldnaam] van het gekozen dossier |
%CONTACT_[veldnaam]% | Waarde van [veldnaam] van de gekozen contactpersoon |
%FOLDER_ITEM_APPLIES_TO% | Waarde van het ‘alleen zichtbaar voor’-veld |
%ADDRES_COMPANY% | Naam van het bedrijf van het gekoppelde adres |
%ADRESS_COUNTRY% | Land van het gekoppelde adres |
%FOLDER_SUBJECT1% | Omschrijving van het gekoppelde dossier |
%FOLDER_TAB% | Biedt in de documentregistratie na de keuze van een dossier de beschikbare tabbladen aan. |
Let op: Als één of meer van deze macro’s zijn ingesteld, vervallen de “standaardmacro’s” na het invullen van een adres of van een contactpersoon.
Standaard worden na het kiezen van een adres de volgende velden ingevuld: COMPANY, MAILADDRESS, ZIPCODE, CITY, COUNTRY, PHONE1, FAX1 en TEXT2 (het TEXT2 veld wordt gekopieerd naar het TEXT1 veld van het document of dossier).
Standaard worden na het kiezen van een contactpersoon de volgende velden ingevuld: SURNAME, FIRSTNAME, PREFIX, INITIALS, SALUTATION, PHONE1, PHONE2, PHONE3, FAX1 en FAX2.
Standaard worden er geen gerelateerde velden van dossiers overgenomen.
Macro’s van het type %[macro]_[veldnaam]% zullen altijd actief worden bij het (her)kopppelen van een registratie, maar kunnen daarna overschreven worden (tenzij voor het veld ‘alleen lezen’ is aangevinkt). Dit kan handig zijn, soms wil je een andere werking. Als slechts éénmaal de waarde opgehaald moet worden, gebruik dan een IF-macro (zie verderop). Als het gekoppelde veld altijd moet worden bijgewerkt bij wijzigingen, gebruik dan een DLOOKUP-macro. Deze wordt verderop ook beter uitgelegd.
De volgende macro’s worden alleen uitgevoerd, wanneer de huidige waarde van het veld nog leeg is. Bestaande data wordt dus niet overschreven!
Knop | Omschrijving |
---|---|
DATE(PROCESSED) | Vult na het afhandelen van de registratie de afhandeldatum in |
DESTROY(DATE1,TEXT2) | Vult na het afhandelen van de registratie de vernietigingsdatum in. De vernietigingsdatum wordt berekend door het aantal jaar, dat in het ‘TEXT2’ veld ingevuld is, op te tellen bij het DATE1 veld. De vernietigingsdatum is dan de eerstvolgende 1 januari hierna. Wordt bij het TEXT2 veld de tekst ‘permanent’ ingevuld, wordt de vernietigingsdatum ook ‘permanent’. De vernietigingsdatum kan alleen in een tekstveld worden gebruikt. |
Let op: De Macro YEAR([macro]) om een bestaande datummacro heen bv. YEAR(DATE(PROCESSED)) vult alleen het jaar in.
Macro | Omschrijving |
---|---|
SETINVISIBLE() | Wordt uitgevoerd bij het opslaan. Gebruiken in een BOL veld, maakt de registratie onzichtbaar voor andere gebruikers ongeacht hun rechten. |
ANSWERTEMPLATE() | Wordt uitgevoerd bij selectie. Vult in de antwoordwizard het juiste sjabloon in, het veld waarin deze macro gebruikt wordt moet dezelfde waarde bevatten als de naam van de sjabloon. Bijvoorbeeld: Soort document=ontvangstbevestiging; als er een sjabloon bestaat met dezelfde ‘nicename’ dan wordt deze alvast ingevuld in de wizard. |
%ACTHANDLER_[veldnaam]% | Wordt uitgevoerd bij selectie. Deze macro vult op het activiteiten of workflow tabblad gewenste gegevens van de gekozen behandelaar in. |
%PREVIOUSVALUE% | Bij het maken van een nieuw record wordt de waarde gevuld met de laats gebruikte waarde door dezelfde waarden door dezelfde gebruiker in hetzelfde boek. |
LASTCHANGEDATE() | Wordt uitgevoerd bij aanmaak registratie, en daarna bij opslaan. Vult de datum en tijd van de laatste wijziging van het record in, kan in datum en tekstveld. |
LASTCHANGEDBY() | Wordt uitgevoerd bij aanmaak registratie, en daarna bij opslaan. Vult de naam van de gebruiker in die de laatste wijziging aanbracht in het record. |
SIGNATURE() | Getekend door: bij elektronische handtekening. |
SIGNDT() | Getekend op datum: bij elektronische handtekening. |
EXPDT() | Vervaldatum certificaat: bij elektronische handtekening. |
U kunt in de standaardwaarde van een veld in een itemprofiel een berekening gebruiken door een formule in te voeren die begint met het ‘=’-teken. Vink ook de macro-optie aan als u berekeningen gebruikt. U kunt rekenen met getallen en datumwaarden en kunt voor in- en uitvoer alle typen velden (numerieke, tekst-, datum- of BOL-velden) gebruiken. Uitkomsten worden echter alleen als datum weergegeven als u de macro op een datumveld toepast.
Deze macro’s worden uitgevoerd tijdens het opslaan van de registratie.
Invoergegevens
U kunt rekenen met andere velden in dezelfde registratie, bijvoorbeeld:
=NUM1+NUM2
is een geldige expressie die de som van de velden NUM1 en NUM2 aan het doelveld toekent. Ook is het mogelijk om velden van gekoppelde registraties in een veld te totaliseren, bijvoorbeeld:
=DSum(“DOCUMENT”,“NUM1”,“”)
Deze macro geeft de som van het veld NUM1 in alle gekoppelde documentregistraties als resultaat. De laatste twee dubbele aanhalingstekens [“”] kunnen vervangen worden door een SQL-conditie, waarop gefilterd kan worden. Als voorbeeld, met de SQL-conditie “IT_PARENT_KEY=‘DD812024E1A81E4FBC02485B0EB5EDB1’”, worden alleen de velden opgeteld, van de gekoppelde registraties met het ITEM_KEY ‘DD812024E1A81E4FBC02485B0EB5EDB1’. Hiermee kan je dus een documentboek specificeren.
Binnen JOIN Zaak & Document kunt u een aantal opzoekfuncties gebruiken, te weten:
Macro | Omschrijving |
---|---|
=DSum(“”,“”,“”) | Som van de waarden van het aangegeven veld in gekoppelde registraties van het aangegeven type. |
=DAvg(“”,“”,“”) | Gemiddelde van de waarden van het aangegeven veld in gekoppelde registraties van het aangegeven type. |
=DMin(“”,“”,“”) | Minimum van de waarden van het aangegeven veld in gekoppelde registraties van het aangegeven type. |
=DMax(“”,“”,“”) | Maximum van de waarden van het aangegeven veld in gekoppelde registraties van het aangegeven type. |
=DCount(“”,“”,“”) | Het aantal gevulde waarden voor het aangegeven veld in gekoppelde registraties van het aangegeven type. Geef een veld dat gegarandeerd niet leeg is als tweede parameter op (bijvoorbeeld “ITEM_KEY”) om alle gekoppelde registraties van het aangegeven type te tellen. |
=Dlookup(“”,“”,“”) | Geeft de veldwaarde aan gerefereerde veld. |
Alle opzoekfuncties hebben drie parameters, die altijd met dubbele aanhalingstekens [“”] omsloten moeten zijn:
Als eerste parameter het type gekoppelde registratie: “DOCUMENT” (document), “ADDRESS” (adres), “FOLDER” (dossier) of “CONTACT” (contactpersoon). Als tweede parameter het veld in de gekoppelde registraties waarop de bewerking moet worden uitgevoerd. En als derde parameter kan een SQL-conditie waarop de gekoppelde registraties gefilterd moeten worden. Geef alleen twee dubbele aanhalingstekens [“”] als 3e parameter om alle gekoppelde registraties van het aangegeven type in de berekening te gebruiken. Indien er alleen vanuit een specifiek gekoppelde registratie iets opgehaald mag worden, dient als 3e parameter weer een IT_PARENT_KEY opgegeven te worden. Ook kunnen andere SQL-condities worden opgegeven.
Voorbeeld
=DAvg(“CONTACT”,“DATE1”,“SURNAME=‘Jansen’”)
Dit geeft de gemiddelde waarde van het DATE1 veld voor gekoppelde contactpersonen met de achternaam ‘Jansen’. Let op het gebruik van aanhalingstekens: de drie parameters van DAvg zijn allen door dubbele aanhalingstekens omsloten, maar in de SQL-conditie (3e parameter) worden enkele aanhalingstekens gebruikt om de tekstwaarde te omsluiten.
Voorbeeld 2
Voor een DLookup macro kan de notering per database verschillend zijn. Hieronder vindt u voorbeelden van een lookup-macro die een locatieadres (straat, postcode en plaats) van een gekoppeld adres in een registratie ophaalt.
SQL Server:
=Dlookup(“ADDRESS”,“MAILADDRESS+', ‘+ZIPCODE+’ '+CITY)”, “IT_PARENT_KEY=‘DD812024E1A81E4FBC02485B0EB5EDB1’”)
Oracle:
=Dlookup(“ADDRESS”,“MAILADDRESS || ', ’ || ZIPCODE || ’ ’ || CITY)”, “IT_PARENT_KEY=‘DD812024E1A81E4FBC02485B0EB5EDB1’”)
MySQL:
=Dlookup(“ADDRESS”,“CONCAT(MAILADDRESS,', ‘,ZIPCODE,’ ',CITY)”, “IT_PARENT_KEY=‘DD812024E1A81E4FBC02485B0EB5EDB1’”)
Let op: ook hier wordt alleen het adres opgehaald, als het betreffende adresboek het ITEM_KEY ‘DD812024E1A81E4FBC02485B0EB5EDB1’ heeft. Als uit alle adresboeken het adres opgehaald mag worden, vervang dan “‘DD812024E1A81E4FBC02485B0EB5EDB1’” door [“”].
Berekende veldwaarden in Decos Document ondersteunt de volgende datumfuncties:
Macro | Omschrijving |
---|---|
Date() | De huidige datum als aantal dagen sinds 1-1-1900, in JOIN wordt de echte datum weergegeven |
Time() | De huidige tijd als een fractioneel getal tussen 0 en 1, in JOIN wordt de echte tijd weergegeven |
Now() | De huidige datum en tijd in één getal, in JOIN wordt de echte datum en tijd weergegeven |
Year(d) | Het jaartal van de datumwaarde |
Month(d) | Geeft de maand van de datum weer als getal tussen 1 en 12 |
Day(d) | Geeft de dag van de datum weer als getal tussen 1 en 31 |
Hour(t) | Geeft het uur van de tijdswaarde weer als getal tussen 1 en 23 |
Minute(t) | Geeft de minuut van de tijdswaarde weer als getal tussen 1 en 59 |
Second(t) | Geeft de seconde van de tijdswaarde weer als getal tussen 1 en 59 |
DateSerial(y,m,d) | Stel een datumwaarde samen uit drie getallen, bijvoorbeeld =DateSerial(2010,2,28) codeert de datum 28 februari 2010. |
TimeSerial(h,m,s) | Stel een tijdswaarde samen uit drie getallen |
Bij de functies DateSerial() en TimeSerial() kunt u ook variabelen gebruiken, bijvoorbeeld:
=DateSerial(Year(DATE1),Month(DATE1)+1,DAY(DATE1))
Deze macro geeft een datum die precies één maand na de datum in het veld DATE1 is. U zou ook een getal bij Year(DATE1) kunnen optellen om een verschuiving van een aantal jaren te krijgen, of een getal bij Day(DATE1) om een verschuiving van een aantal dagen te krijgen. Om dit variable te maken, zou de macro aangepast kunnen worden naar:
=DateSerial(Year(DATE1),Month(DATE1)+NUM1,DAY(DATE1))
In dit geval kan de gebruiker dus een getal in het NUM1-veld invullen, waarna de macro de datum van DATE1 verhoogt met het aantal dagen, wat is ingevuld in NUM1. Uiteraard moet het veld NUM1 wel actief zijn.
IF([conditie],[formule 1],[formule 2])
Het resultaat van de IF-functie is gelijk aan [formule 1] als de conditie “waar” is, of [formule 2] als de conditie “onwaar” is. Bij [conditie] kan ook direct een getal- of datumveld ingevuld worden, zonder een vergelijking te gebruiken. Als het veld de waarde 0 heeft of leeg is wordt dat als “onwaar” beschouwd en wordt dus [formule 2] uitgevoerd, voor alle andere waarden wordt [formule 1] uitgevoerd.
Toepassing
De IF-functie wordt het meest gebruikt om te zorgen dat een veld dat het resultaat van een formule moet weergeven leeg blijft totdat de invoervelden gevuld zijn. We kunnen hem bijvoorbeeld toepassen op een datumformule:
=DateSerial(Year(DATE1),Month(DATE1)+3,Day(DATE1))
Als DATE1 niet ingevuld is geeft deze formule het resultaat 29 feb 2000. Mooier is echter dat het resultaat leeg is zolang DATE1 niet ingevuld is. We kunnen dit bereiken met de IF-functie waarin we DATE1 als conditie te gebruiken en voor het geval dat dit veld leeg is de waarde 0 (lege datum) terug te geven:
=IF(DATE1,DateSerial(Year(DATE1),Month(DATE1)+3,Day(DATE1)),0)
Door een “conditie” voor de oorspronkelijke formule te zetten, kunnen we aangeven wat er getoond moet worden. De oorspronkelijke formule wordt uitgevoerd als de conditie “waar” is, dus als DATE1 niet leeg is. 0 is wat het resultaat moet zijn als de conditie “onwaar” is, dus als DATE1 leeg is.
Resultaat
Als DATE1 de datum 01-01-2023 bevat, wordt het resultaat 01-04-2023. Als DATE1 leeg is, blijft het resultaat ook leeg.
Een gemakkelijke manier om dit in te voeren is:
Als [testveld] mogen ook BOL-velden (“waar” als aangevinkt) en NUM-velden (“waar” als ongelijk aan 0) gebruikt worden. Uiteraard ca ner een [conditie] worden opgegeven
Er kan ook een vergelijking gebruikt worden in plaats van direct op de waarde van een veld te testen:
=IF(NUM1 >= 18, “meerderjarig”, “minderjarig”)
Deze formule toegepast op een tekstveld geeft de tekst “meerderjarig” weer als NUM1 groter dan of gelijk aan 18 is, of “minderjarig” als de waarde kleiner is.
If-functies in schrijfbare velden
Normaal worden de besproken functies in “alleen lezen” velden gebruikt, omdat het resultaat van het veld immers altijd een berekende waarde is. Het is echter ook mogelijk om formules in een schrijfbaar veld te gebruiken, door een truc met de IF-functie:
=IF(,,) Als het veld nog niet ingevuld is, wordt eenmalig de berekende waarde ingevuld. Als de invoerder van de berekening wil afwijken, kan dat ook. Als de veldwaarde niet leeg is, is het resultaat van deze formule gelijk aan de huidige veldwaarde en die blijft dus behouden.
Voorbeeld We geven deze formule op voor het schrijfbare veld DOCUMENT_DATE: =IF(DOCUMENT_DATE,DOCUMENT_DATE,DATE()+1)
Het resultaat is dat standaard de datum van morgen wordt ingevuld, maar de operator kan ook besluiten om een heel andere datum in te vullen. Als er eenmaal een datum bepaald is blijft deze behouden bij herberekening van de formule.
Macro | Omschrijving |
---|---|
Format(,“formaat”) | Format geeft als resultaat een geformatteerde tekst die afgeleid is van de waarde. Zie ook de uitleg voor formattering in Decos Admin. Voorbeeld: =“IN/05-”+Format(IT_SEQUENCE,“0000”) Deze formule toegepast op een tekstveld geeft bijvoorbeeld de tekst “IN/05-0003” als het volgnummer 3 is. Het formaat “0000” geeft hierbij aan dat het getal op 4 posities uitgelijnd moet worden met voorloopnullen. |
Replace(, , ) | Replace geeft als resultaat een tekst terug waarin het aangegeven tekstgedeelte overal vervangen is door de tekst in . Replace wordt het meest gebruikt om spaties uit een tekst te verwijderen. Er zijn bijvoorbeeld veel websites waar op postcode gezocht kan worden, maar die postcode mag geen spatie bevatten. Deze formule kan gebruikt worden in het URL-veld: =“http://www.postcode.nl/index.php?address=” + Replace(ZIPCODE, " ", “”) Als het ZIPCODE-veld bijvoorbeeld de waarde “2201 XA” bevat, komt er in het URL-veld de tekst “http://www.postcode.nl/index.php?address=2201XA” te staan, zonder spatie tussen 2201 en XA. |
@display: | De display: tekstopmaak kan gebruikt worden om in het URL-veld in plaats van een onoverzichtelijk lang webadres een korte tekst voor weergave van de link te tonen. Als bijvoorbeeld @display:Zoek postcode achter de voorbeeldformule uit de vorige paragraaf toegevoegd wordt, ziet men in Decos web Zoek postcode in plaats van het volledige webadres. |
Like(, ) | De Like-functie geeft 1 terug als het tekstpatroon in voorkomt in de tekstwaarde, of 0 als dat niet het geval is. moet voorafgegaan of gevolgd worden door % om aan te geven welk deel van de tekst moet overeenkomen. Voorbeeld TEXT1 bevat de waarde “Decos Software Engineering”. In dat geval geven deze drie formules alle drie het getal 1 terug: =Like(TEXT1, “Decos%”) =Like(TEXT1, “%eering”) =Like(TEXT1, “%Software%”) |
NotLike(, ) | NotLike geeft het omgekeerde resultaat van Like. |
Huisnummer() | De huisnummerfunctie geeft het numerieke deel van een Nederlands adres terug als getal. Dit kan toegepast worden om samenstellingen van postcode en huisnummer te maken: Replace(ZIPCODE, " ", “”) + Huisnummer(MAILADDRESS) Dit geeft bijvoorbeeld het resultaat “1119PE30” als het adres “Boeing Avenue 30” en de postcode “1119 PE” is. |
De volgende overige functies worden door de berekende velden ondersteund:
Functie | Beschrijving | Opmerking | |
---|---|---|---|
+ | Optelling | ||
- | aftrekking | ||
* | vermenigvuldiging | ||
/ | deling | 35/4 = 8.75 | |
% | quotiënt van de deling | 35%4 = 3(hetzelfde als mod) | |
\ | integere deling | 35\4 = 8 | |
^ | machtsverheffing | 3^1.8 = 7.22467405584208 | |
| | absolute waarde | -5|=5 (hetzelfde als abs) | |
! | faculteit | 5!=120(hetzelfde als fact) | |
abs(x) | absolute waarde | abs(-5)=5 | |
atn(x) | inverse tangens | ||
cos(x) | cosinus | paramter in radialen | |
sin(x) | sinus | parameter in radialen | |
exp(x) | natuurlijke exponent | exp(1) = 2.71828182845905 | |
fix(x) | integer deel | afgerond naar kleinste absolute waarde: fix(-3.8) = 3 | |
int(x) | integer deel | afgerond naar kleinste waarde: int(-3.8) = 4 | |
dec(x) | decimaal deel | dec(-3.8) = -0.8 | |
ln(x) | natuurlijke logaritme | parameter x>0 | |
log(x) | logaritme met grondtal 10 | paramter x>0 | |
rnd(x) | random | geeft een willekeurig getaltussen 0 en x | |
sgn(x) | teken | geeft 1 als x>0; 0 als x=0 -1 als x<0 | |
sqr(x) | vierkantswortel | sqr(2) =1.4142135623731; also 2^(1/2) | |
cbr(x) | derdemachtswortel | cbr(2) = 1.259921049899487; also 2^(1/3) | |
tan(x) | tangens | parameter (in radialen) x¹ k*p/2 met k = ± 1, ± 2… | |
acos(x) | inverse cosinus | parameter -1 £ x £ 1 | |
asin(x) | inverse sinus | parameter -1 £ x £ 1 | |
cosh(x) | hyperbolische sinus | ||
sinh(x) | hyperbolische sinus | ||
tanh(x) | hyperbolische tangens | ||
acosh(x) | inverse hyperbolische cosinus | parameter x ³ 1 | |
asinh(x) | inverse hyperbolische sinus | ||
atanh(x) | inverse hyperbolische tangens | parameter -1 < x < 1 | |
root(x,n) | n-de machts wortel | parameter x ³ 0 (hetzelfde als x^(1/n) | |
mod(a;b) | quotiënt van de deling | ||
fact(n) | faculteit | parameter 0 £ n £ 170 | |
comb(n;k) | combinaties | comb(6;3) = 20 | |
min(a;b) | minimum van 2 getallen | ||
max(a;b) | maximum van 2 getallen | ||
mcd(a;b) | grootste gemene deler | mcm(4346;174) = 2 | |
mcm(a;b) | kleinste gemene multiplicator | mcm(4346;174) = 378102 | |
gcd(a;b) | grootste gemene deler | Hetzelfde als mcd | |
lcm(a;b) | kleinste gemene multiplicator | Hetzelfde als mcm | |
erf(x) | error Gauss functie | parameter x³0 | |
gamma(x) | gamma | parameter 0 < x £ 171 | |
gammaln(x) | logaritme gamma | parameter x>0 | |
digamma(x) | digamma | parameter x>0 | |
beta(x;y) | bèta | parameter x>0y>0 | |
zeta(x) | zeta Riemman’s functie | parameter x<-1 or x>1 | |
ei(x) | exponentiële integraal functie | parameter x>0 | |
csc(x) | cosecant | parameter (in radialen) x¹ k*p with k = 0, ± 1, ± 2… | |
sec(x) | secant | parameter (in radialen) x¹ k*p/2 with k = ± 1, ± 2… | |
cot(x) | cotangent | parameter (in radialen) x¹ k*p with k = 0, ± 1, ± 2… | |
acsc(x) | inverse cosecant | ||
asec(x) | inverse secant | ||
acot(x) | inverse cotangent | ||
csch(x) | hyperbolic cosecant | parameter x>0 | |
sech(x) | hyperbolic secant | parameter x>1 | |
coth(x) | hyperbolic contangent | parameter x>2 | |
acsch(x) | inverse hyperbloic cosecant | ||
asech | inverse hyperbolic secant | parameter 0 £ x £ 1 | |
acoth(x) | inverse hyperbolic cotangent | parameter x<-1 or x>1 | |
rad(x) | conversie naar radialen | rad(90) = 1.5707963267949 | |
deg(x) | conversie naar graden | deg(pi/4) = 45 | |
round(x;d) | rond af op d decimalen | round(1.35712;2) = 1.36 | |
> | groter dan | resultaat 1 (true) of 0 (false) | |
>= | groter of gelijk aan | reultaat 1 (true) of 0 (false) | |
< | kleiner dan | resultaat 1 (true) of 0 (false) | |
<= | kleiner of gelijk aan | resultaat 1 (true) of 0 (false) | |
= | gelijk aan | resultaat 1 (true) of 0 (false) | |
<> | Niet gelijk aan | resultaat 1 (true) of 0 (false) | |
and | logische and | and(a;b resultaat 1 (true) of 0 (false) | |
or | logische or | or (a;b)resultaat 1 (true) of 0 (false) | |
not | logsiche not | not (a) = resultaat 0(false) als a ¹ 0 ; anders 1 | |
xor | logische exclusive-or | xor(a;b) | = resultaat 1 (true) alleen als a=b |
nand | logsiche nand | nand(a;b) = resultaat 1 (true) als a=1 of b=1 | |
nor | logsiche nor | nor(a;b) = resultaat 1 (true) alleen als a=0 en b=0 | |
nxor | logische exclusive-nor | nxor(a;b) = resultaat 1(true) alleen als a=b |
U kunt op twee plaatsen in Decos Admin opmaakcodes gebruiken om te bepalen hoe een veldinhoud in de applicatie wordt weergegeven:
Dit kan bijvoorbeeld gebruikt worden om aan te geven dat getallen die geldbedragen voorstellen altijd met twee cijfers achter de komma moeten worden weergegeven, maar ook om tekst- of datumvelden op te maken.
De code is als volgt opgebouwd:
Voor getallen zijn de volgende opmaakcodes beschikbaar:
Opmaakcode | Omschrijving |
---|---|
# | Dit teken staat voor significante cijfers. Niet significante tekens (voorloopnullen) worden niet weergegeven op de plaats van een #. |
0 | Niet-significante nullen (voorloopnullen of nullen achter de komma) worden ook weergegeven op de plaats waar in de opmaakcode een 0 staat. |
. | De punt geeft de plaats van het decimale scheidingsteken in de opmaakcode weer. U moet in de opmaakcode altijd een punt gebruiken. In de uitvoer gebruikt Decos een punt of een komma, afhankelijk van de ingestelde taal. |
De opmaakcode voor een getal mag beginnen met een serie willekeurige tekens die als een valutacode voor het getal worden weergegeven. Meest gebruikt is het euroteken (€), maar u mag ook een ander valutateken of een lettercode zoals EUR gebruiken.
U kunt in Decos niet de punt gebruiken om duizendtallen te scheiden. De reden is dat de software toestaat om zowel de punt als de komma als decimaal scheidingsteken voor invoer te gebruiken. Wij raden aan om desgewenst de spatie als scheidingsteken voor duizendtallen te gebruiken, zie de onderstaande voorbeelden:
Scheidingsteken | Omschrijving |
---|---|
0@R€# ### ##0.00 | In een velddefinitie in een itemprofiel: geef het veld de standaardwaarde 0, lijn de uitvoer rechts uit en pas het formaat “€# ### ##0,00” toe. Het getal 1234567,8 wordt in dit formaat weergegeven als: € 1 234 567,80 |
R€# ### ##0.00 | Het zelfde formaat als boven, toegepast in de kolom “Opmaak” in de query-definitie van een overzicht. |
Voor datumvelden zijn de volgende opmaakcodes beschikbaar:
Dagen, maanden en jaren
Opmaakcode | Omschrijving |
---|---|
M | Maanden als 1-12 |
MM | Maanden als 01-12 |
MMM | Maanden als jan-dec |
MMMM | Maanden als januari-december |
d | Dagen als 1-31 |
dd | Dagen als 01-31 |
ddd | Dagen als zon-zat |
dddd | Dagen als zondag-zaterdag |
yy | Jaren als 00-99 |
yyyy | Jaren als 1900-9999 |
Let op: Als u ‘m’ direct na de code ‘u’ of ‘uu’ gebruikt of direct voor de code ‘ss’ of ‘s’, worden de minuten weergegeven in plaats van de maand.
Uren, minuten en seconden
Opmaakcode | Omschrijving |
---|---|
u | Uren als 0-23 |
uu | Uren als 00-23 |
m | Minuten als 0-59 |
mm | Minuten als 00-59 |
s | Seconden als 0-59 |
ss | Seconden als 00-59 |
u AM/PM | Uren als 4 AM |
u:mm AM/PM | Uren als 4:36PM u:mm |
u:mm:ss A/P | Tijd als 4:36:03P |
[u]:mm | Verstreken tijd in uren, bijvoorbeeld 25:02 |
[mm]:ss | Verstreken tijd in minuten |
[ss] | Verstreken tijd in seconden |
u:mm:ss.00 | Fracties van een seconde |
AM en PM Als de notatie de indicatie AM of PM bevat, is het uur gebaseerd op de 12-uursklok. ‘AM’ of ‘A’ duidt op de tijd vanaf middernacht tot het middaguur en ‘PM’ of ‘P’ duidt op de tijd vanaf het middaguur tot middernacht. Geeft u deze indicatie niet op, dan is de tijdsaanduiding op de 24-uursklok gebaseerd. De code ‘m’ of ‘mm’ moet direct achter de code ‘u’ of ‘uu’ of direct voor de code ‘ss’ staan, anders wordt de maand in plaats van de minuten weergegeven.
Opmaakcode | Omschrijving |
---|---|
> | Gebruik dit teken om de tekst altijd in hoofdletters weer te geven |
< | Gebruik dit teken om de tekst altijd in kleine letters weer te geven |
Let op: Bij een tekstveld in een itemprofiel moet u altijd de optie “Macro” aanvinken als u een opmaakcode gebruikt. Bij een numeriek of datumveld is dit niet nodig als u geen macro’s in combinatie met de opmaakcode gebruikt.
Als u een macro gebruikt in combinatie met een opmaakcode, moet u de opmaakcode aan het einde van de macro worden toegevoegd. Een opmaakcode verandert niet de inhoud van de velden in de database, maar alleen de weergave van de velden in JOIN.
Decos D5 kan gebruik maken van verschillende soorten databases. De applicatie ondersteunt de volgende databases: Oracle Microsoft SQL Server MySQL
Om Decos D5 te laten communiceren met een database zult u een connection-string voor de database moeten instellen. Deze connection-string moet zowel in het global.asa bestand van Decos D5 als in DecosAdmin.ini van Decos Admin worden ingesteld en dient alleen te worden gewijzigd door ervaren beheerders!
Om ook bestaande stukken van globaal unieke nummers te voorzien na het toevoegen van een GLOBALNUM() macro, kunt u gebruik maken van de GlobalNumberingTool. U kunt deze tool hier downloaden: http://support.decos.nl/GlobalNumberingTool.zip Start de tool op een machine waarop Decos Admin beschikbaar is of op de Decos webserver. Als het programma in een geldige Decos omgeving gestart is, toont het allereerst de melding “Successfully connected to database”. Klik vervolgens op OK om het hernummerproces te beginnen. Als het proces voltooid is, wordt de boodschap “Action complete” getoond. Na uitvoeren van de tool zijn de stukken die een profiel gebruiken waarin een GLOBALNUM-macro voorkomt die nog geen nummer hadden voorzien van een uniek volgnummer. Stukken die al een nummer hadden in dit veld worden niet meegenomen en kunnen mogelijk nog steeds een niet-uniek nummer hebben. Als u zeker wilt zijn dat alle stukken die aan het profiel voldoen een uniek nummer krijgen is het aan te bevelen om het nummeringsveld eerst in alle stukken leeg te maken door een bulkwijziging. Het programma bewaart een logbestand genaamd GlobalNumbering- yyyymmdd.log (met yyyymmdd de datum) in de map waarin het opgestart wordt. In deze map vindt u na afloop ook een bestand genaamd GlobalNumbering- yyyymmdd-undo.sql. Dit sqlscript kan eventueel door uw databasebeheerder gebruikt worden om de acties van de tool ongedaan te maken.
Zie ook: Macro’s bij het aanmaken van een registratie