Top Web Hosting Reviews
Top Web Hosting Provider of The Month:
Top Web Hosting
Visit Bluehost.com | Read Bluehost Review

>> Web Hosting Geeks // Web Hosting Articles // Web Development  


Functions and Subroutines in ASP








Functions and Subroutines in ASP

If you read our Tutorial on Include Files (SSI) then you learned how to encapsulate ASP code within include files and the benefits it brings us.

As developers, we should endeavour to make our lives easier wherever possible... no one wants to re-invent the wheel after all.

Functions and Subroutines exist to not only save us time, but to bring power to our ASP.

They are just another way of encapsulating code, but have a lot more functionality than just 'saving some code for later'.

First, let's look at Functions... Imagine a balloon salesman in the street. We've all seen them they require one piece of information when you buy a balloon, the colour.
Let say we asked for a red balloon... The balloon salesman armed with this 'information' then does a pretty basic action... he hands you the balloon. The balloon you received is a direct result of the information you gave the balloon seller.

Functions are just the same... they return to you a value based on the information you provided. Lets look at an example Function: -

<%
Function getBalloon(strColour)
Dim Tempstr
strColour = lcase(strColour) 'This converts the value lowercase.
Select Case strColour
Case "red" Tempstr = "Here is your red balloon"
Case "yellow" Tempstr = "Here is your yellow balloon"
Case "green" Tempstr = "Here is your green balloon"
Case "blue" Tempstr = "Here is your blue balloon"
Case Else Tempstr = "Sorry, we have sold out of that Colour"
End Select
getBalloon = Tempstr
End Function
%>

A Function is passed some information. The information we pass a Function, is known as an 'argument'. The information we get back from a Function is known as the 'return value'. Whilst a Function can have many arguments, it can only have one return value.

Let us look at one more example: -

<%
Function calcTax(amount, taxrate)
Dim Tempvar
Tempvar = amount * (taxrate / 100)
CalcTax = Round(Tempvar, 2) 'round the result to 2 decimal places
End Function
%>

Again, another basic example. We should notice this time that the Function accepts two arguments.

By now, we have some idea of how to write a Function. How do we use one?
Let me show you now how we can use the calcTax example.

<%
shoppingbill=goodsTotal + calcTax(goodsTotal,17.5)
Response.Write "Your shopping came to £" & goodsTotal
Response.Write "
VAT amount = £" & calcTax(goodsTotal)
Response.Write "Total Amount Due = £" & shoppingbill
%>

Above you see the example function in action... easy huh!

I have tried to make understanding Functions as easy as possible... Understanding a Subroutine (Sub) is now going to be easy for you. Imagine a block of code that performed some instructions based on information you gave it...
Sounds very much like a function, doesn?t it? Well this time, we do not get anything back. A sub does NOT pass back information it just uses the data we give it for some purpose.

I will use only one example of a Sub, and in the same example make use of the sub: -

<%
Sub Bday(strName, intAge)
Response.Write "Happy Birthday " & Name
Response.Write ", You are " & intAge & " years old today"
End Sub

'now, call the sub
bDay "Joe",26
%>

The above Sub, demonstrates my point. We put something in, it performs an action (in this case writing to the screen), but nothing is returned to us in the code. One thing that REALLY IS important when using a sub, is that we do not put brackets around the arguments... Because we do not have a return value we do not need brackets and in this case, if we try we will get an error.

Well, that just about concludes this article. We should by now be writing efficient code with the use of Functions and Subs. Don?t forget that if you use your functions and subs in multiple pages then you should really store them within include files for reasons of easy maintenance and better performance.

Rob Collyer, experienced with 20 years programming knowledge and site administrator of www.webforumz.com - Copyright 2003-2004


MORE RESOURCES:

Web Development Company CEO elected to NJRCC Board of Directors
TransWorldNews (press release)
Founder, president and CEO of Web Development Company Hudson Horizons, Daryl H. Bryant, was recently elected onto the Board of Directors for the North ...



Mashable's Weekly Guide to Social Media & Web Development Jobs
Mashable (blog)
But we'd like to help in a more direct way, too. Mashable's job boards are a place for socially-savvy companies to find people like you. ...

and more »


topseos.in Recognizes the Best Indian Web Development Firms for November 2009
Online PR News (press release)
Online PR News – 18-November-2009 – Plymouth, IN- The Best Indian Web Development Firms have been chosen by topsoes.in for this month. ...

and more »


3D Web development critical to HPC growth
EE Times India
The 3D Web development is critical to the growth oh high performance computing. "Nothing is more important to the long term health of the HPC industry than ...



Twitlicious - Republican/Democrat conceit, joining the Trump Network and ...
MarketWatch
Quick note to start - I need some interns for web development, stock mkt research and other stuff. No pay to start, but foot in the door. ...



appendTo Releases Industry-Leading Support, Training Solution to the jQuery ...
PR Web (press release)
“Corporate IT teams and web development professionals are increasingly seeing the value of using jQuery's sustainable, open source JavaScript library for ...

and more »


Advaiya, Inc., Announces Cutting-Edge Microsoft SharePoint and Silverlight Web ...
PR Newswire (press release)
KIRKLAND, Wash., Nov. 17 /PRNewswire/ -- Sandy Sharma, CEO of Advaiya, Inc., a leader in new technology and Web site development, today announced Advaiya's ...

and more »


ASP Web Development Team Leader
ashdowngroup.com
This is an excellent opportunity for an experienced Classic ASP Developer to take a Team Leader / Project Manager position within this leading online ...



Web Development Innovation Set To Disrupt Matters
Scoop.co.nz (press release)
The days of spending thousands of dollars on web development fees for small to medium sized businesses are over, that's according to Andrew Hendrie, ...



Washington Post

Lavish parties are out, but events focused on charity are in
Washington Post
For at least four years, the Web development and interactive technologies firm in Kensington has held a potluck and donated what a party would have cost to ...


Google News





 
 
 

© 2004 - 2008 "Web Hosting Geeks" | Web Hosting Reviews | Customer Reviews | RealMetrics Reviews | Hosting Articles | Directory | Partners | Contacts
Over 7000 articles: web hosting, web development, domain names, ecommerce, web design, site promotion, ppc advertising, seo, site promotion and many others.
Web hosting reviews, ratings and awards are not based on any incentives or commissions. Names and trademarks are the properties of their respective owners.
A direct link to Web Hosting Geeks (http://webhostinggeeks.com) must be provided in order to use any of the above information. Contact us for more info.

Partners: Hosts by speed, Cheap Website Hosting, Free Website Hosting, Cheap Web Hosting, Top 10 Web Hosts, Top 10 Web Hosting Deals, Best Website Hosting, Free Web Hosting, Free Web Hosting, Dedicated Server Hosting, Adult Web Hosting, Web Hosting Discussions, Dedicated Server Reviews, Best Web Hosting, Web Hosting Discounts, HostProfessor.com, rsuog, halyava, PHP Website Hosting Services, Web Hosting Reviews, Hosting Uptime, Best Web Hosting Reviews, Cheap Webhosting, Web Hosting, Flash Templates, CMS Templates, Web Hosting Reviews, Website Hosting Reviews, Web Hosting Providers, Best Web Hosting, Top Web Hosting, RSUOG Web Hosting