I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
Jeg kan ikke bruge if-statement og jeg tror heller ikke jeg kan bruge select case... For jeg har noget kode der ser ca. sådan ud:
1. If not Len("" & strEmailAddress) = 0 then 2. objJMail.AddRecipient strEmailAddress 3. Else 4. 5. End If 6. ...og så skal jeg have noget i linje 4. som går til linje 32. hvis altså at ikke strEmailAddress = 0, hvordan gør jeg det???
Det er ikke for at være ond, men typisk betragtes behovet for en Goto at koden er struktureret for dårligt. I C og Visual Basic er der en "function/metode" som hedder goto. Hvis man læser omkring dem på nettet og i bøger er de omtalt i en bisætning og der står altid at man aldrig bør bruge goto, da det giver total ustruktureret kode. I VB vil det se sådan ud:
if fejl = true then Goto labelnavn end if ... mere kode
labelnavn: ... hopper herned
Men den mulighed er fjernet i VBScript/ASP.
Et alternativ kunne være at lave en fejl variable..: error_found = false og så tjekke på den ned igennem koden:
do while xxxxx error_found = false
If not Len("" & strEmailAddress) = 0 then objJMail.AddRecipient strEmailAddress Else error_found = true End If
if error_found = false then ...gør noget End if rs.MoveNext Loop
----
Et andet alternativ kunne være: On Error Resume Next Som gør at hvis der er fejl i en linie forsætter den bare til næste linie..:
On Error Resume Next
do while xxx
If not Len("" & strEmailAddress) = 0 then objJMail.AddRecipient strEmailAddress End If
rs.MoveNext Loop
---- Et tredje alternativ, der findes noget som hedder Exit (do|for|function|sub). Så hvis du kan pakke koden ind i en for inden i do loopet så kan du lav en Exit For hvis der opstår et problem:
do while xxxxx
'hvis man skriver xxx=1 to 1 så vil for sætningen blive kørt en gang, 'eller indtil den stoppes med Exit For for xxx = 1 to 1 If not Len("" & strEmailAddress) = 0 then objJMail.AddRecipient strEmailAddress Else Exit For 'Hopper ud af for sætningen nede ved next End If
Sub line32 ' Put det som skal være på linie 32 ind her if noget then response.write "linie 32" end if end sub
1. If not Len("" & strEmailAddress) = 0 then 2. objJMail.AddRecipient strEmailAddress 3. Else 4. call lini32 5. End If 6.
* MoRoax.dk
Synes godt om
Ny brugerNybegynder
Din løsning...
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.