08. juli 2015 - 09:30Der er
6 kommentarer og 1 løsning
Forklar lidt kode for mig
Jeg har overtaget noget kode fra en anden og inde i den ligger dette som jeg ikke helt forstår og håber nogen kunne give mig en forklaring før jeg begynder at ændre eller fjerne den.
Hvornår er 'if' sandt og hvornår bruger den 'else'? Hvorfor er det lavet sådan? (er der en chance for at det bliver null eller 0?)
vis nu SamletVaegt var/blev 30 via noget complex loop og udregning ---------------------------------------------------------
if Int((SamletVaegt/1000)) < (SamletVaegt/1000) then HeleKilo = int((SamletVaegt/1000))+1 else HeleKilo = (SamletVaegt/1000) end if
Session("SamletVaegt") = (HeleKilo*1000)
---------------------------------------------------------- Personligt så jeg gerne at det endte med session(samletvaegt) = samletvaegt i stedet for, men jeg kender ikke grunden til at dette er blevet lavet.
Det tror jeg du har ret i, så vis samletvaegt er 30 gram så ender det med at blive 1000gram i sessionen? (jeg troede det ville blive 1030 gram) begge er skidt fordi jeg har en "if else" på en anden side som er if session("samletvaegt") < (tal fra db som er 100) then (kode der burde køre) else ... end if
Det er en simulering af Ceil-funktionen (som umiddelbart ikke findes i VBScript). Den bruges, hvis der altid skal rundes op til nærmeste heltal.
Hvorfor konstruktionen er lavet i din kode, må bero på en forretningsregel om, at den pågældende værdi altid skal rundes op. Det kunne f.eks. være smart, at forsendelser ikke vejer mere end man har betalt for i forsendelse, så derfor vil en oprunding af den reelle vægt sikre, at du får betalt den forsendelse du skal.
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.