geconverteerde tijden bij elkaar optellen

Status
Niet open voor verdere reacties.

Jos58

Gebruiker
Lid geworden
28 feb 2020
Berichten
6
Hoi,
Ik heb een tabel waarin voor een meld installatie de begin en eindtijd van een storing staan, de storing code en een omschrijving.
Via een query haal ik uit deze tabel de waardes die ik nodig heb.
In het formulier wordt uitgegaan van de tijd in decimalen. Verder moet er een onderscheid gemaakt worden tussen de type meldingen.
De omrekening en selectie van de melding doe ik in een keer met de twee formules:
=IIf([Type Melding]=1;([tijd_einde]-[tijd_begin])*24;"") en
=IIf([Type Melding]=2;([tijd_einde]-[tijd_begin])*24;"")
De twee onafhankelijke velden voor de uitkomst van deze berekeningen heten txtblok1 en txtblok2
Zoals het plaatje laat zien lukt deze berekening goed alleen de sommering in de voetbalk lukt niet.

De formule die ik in de voetbalk voor beide kolommen gebruik is:

intern is =Som([txtblok1])
Extern is =Som([txtblok2])

Met als resultaat #Fout
Wat doe ik fout???
foutmelding.png
 
Zoiets:

Intern: Round(IIf([Type Melding]=1;([tijd_einde]-[tijd_begin])*24;"0");2)
 
Dit zou genoeg moeten zijn:
PHP:
=IIf([Type Melding]=1;Nz([tijd_einde]-[tijd_begin])*24;0))
en
PHP:
=IIf([Type Melding]=2;Nz([tijd_einde]-[tijd_begin])*24;0))
Je probleem wordt veroorzaakt doordat je lege tekstvelden (die je maakt met je IIF formule) probeert op te tellen. Sommeren kan alleen als alle op te tellen velden een getal bevatten.
 
Je hoeft bij een IIF functie geen nz functie gebruiken, immers de waarde nietwaar kan je aangeven dat deze 0 is, of een andere waarde.
 
Als je de Engelstalige functie IIf gebruikt, dan zal je waarschijnlijk ook beter de engelse syntax voor de som moeten gebruiken, en niet het Nederlandse Som.
 
Bedankt allemaal voor de tips, ik heb verschillende uitgeprobeerd en heb het sterke vermoeden dat het wel mogelijk is om in een onafhankelijk veld een berekening van een aantal gedefinieerde te doen, maar ik denk dat het dan niet mogelijk is om op deze onafhankelijke velden weer een volgende berekening te doen.
Ik heb het probleem opgelost door in het formulier waar de tijd velden gegeneerd worden alle berekeningen te maken en de uitkomsten daarvan in een de tabel toe te voegen.
Deze uitkomsten haal ik dan middels de query op om in het vervolg formulier de berekeningen te maken.
Misschien een beetje omslachtig, maar het werkt.
Bedankt voor het meedenken
Vriendelijke groet,
Jos
 
ik heb verschillende uitgeprobeerd en heb het sterke vermoeden dat het wel mogelijk is om in een onafhankelijk veld een berekening van een aantal gedefinieerde te doen, maar ik denk dat het dan niet mogelijk is om op deze onafhankelijke velden weer een volgende berekening te doen.
Dat denk je toch verkeerd :). Zonder db is het echter lastig om te zien waar je iets verkeerd doet, en blijft het dus gokken.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan