Funzione per la conversione da Lire in Euro

Può essere utile studiare per le nostre pagine ASP, una funzione in Visual Basic Script (d'ora in poi VBS ) capace di fare la conversione Lire/Euro per tabelle, listini ed altro ancora.

Anche se Netscape Navigator non supporta il VBS non ci dobbiamo preoccupare, perchè sarà il Web Server remoto a processare e compilare la nostra funzione. Per fare questo all'interno della pagina ASP identificheremo la funzione di conversione attraverso un TAG SCRIPT particolare:

class="colorato">

<SCRIPT RUNAT="Server" Language="VBScript" >

Codice della Funzione

</SCRIPT>

possiamo osservare che a differenza del normale TAG SCRIPT che conosciamo vi è un argomento in più, specifico per i server che supportano ASP: RUNAT="Server"
il quale indica al server web stesso che prima di passare l'output al browser, questo script venga eseguito dal server, e non dal client.

Il codice della nostra funzione

Una funzione in VBS è una procedura che può essere chiamata all'interno di una pagina ASP ed ha la seguente sintassi:.

Function nome ( lista  argomenti )
Corpo della funzione; Espressioni, variabili
End Function

nome = è il nome della funzione, nel nostro caso sarà Euro

lista argomenti = è la lista delle variabili che rappresentano gli argomenti che vengono passati alla funzione quando è chiamata e possiede una sintassi articolata:

( byval nome variabili )

byval = ci dice che l'argomento è passato attraverso un valore.

nome variabili = sono le variabili che vengono passate ed utilizzate all'interno della funzione.

Nel nostro caso l'argomento della funzione Euro sarà la somma in lire che vogliamo convertire, ad esempio Euro(ByVal somma_in_lire_da_convertire).

corpo della funzione = contiene le espressioni ed il codice VBS.

Ecco qui sotto il codice della funzione sistemato all'interno di una ipotetica pagina di prova che abbiamo chiamato euro.asp :

<SCRIPT RUNAT=Server Language=VBScript>
FUNCTION Euro ( ByVal somma_in_lire_da_convertire )  ' Nome e lista degli argomenti  della funzione
Corpo della  funzione
'  Valore dell'EURO è pari a 1936.27
somma_in_EURO = somma_in_lire_da_convertire/1936.27
intEuro = int(somma_in_EURO)
Cents = CInt((somma_in_EURO - intEuro) * 100)
'  Formattazione delle centinaia
If Cents = 0 Then
  strCents = "00"
ElseIf Cents< 10  Then
  strCents = "0" & Cents
Else
  strCents = CStr(Cents)
End If
    '  Inizializzazione dell'EURO
strEuro = ""
'  Determinazione dell'EURO
While len(CStr(intEuro))> 3
  Temp = intEuro mod 1000
If Temp = 0  Then
strEuro = "000" & strEuro
ElseIf Temp< 10 Then
strEuro = "00" & CStr(Temp) & strEuro
ElseIf Temp< 100  Then
strEuro = "0" & CStr(Temp)  & strEuro
   Else
strEuro = CStr(Temp) & strEuro
End If
  strEuro = "." & strEuro
  intEuro = (intEuro - Temp) / 1000
Wend
'  Il simbolo € lo potete trovare premendo alt+0128 sulla tastiera
   ' (se avete la patch dei  font per l'Euro fornita da Microsoft)
strEuro = CStr(intEuro) & strEuro
Euro = "Euro " & strEuro & "." & strCents
END FUNCTION
</SCRIPT>
<HTML>
<HEAD><TITLE>Esempio  di Funzione in VBS</TITLE></HEAD>
<BODY>
Testo della pagina, all'interno del quale posso utilizzare  la mia funzione Euro()
  vedi sotto alcuni esempi.
<P> Il valore di Lire 100.000 è pari  a <%=Euro(100000)%></P>
</BODY>
</HTML>

Se avete un pò di pratica con il Visual Basic od il Basic, non vi sarà difficile riuscire a capire il codice sopradescritto.

Come utilizzarla nelle nostre pagine ASP ?

Una volta inserito il TAG SCRIPT con la nostra funzione in testa alla pagina ASP che dobbiamo produrre, possiamo utilizzare la funzione ogni qualvolta lo desideriamo all'interno della pagina, ad esempio:

Codice HTML/ASP:

<P> Il valore di Lire 100.000 è  pari a <%=Euro(100000)%></P>

Output sul client dopo che la pagina è stata processata dal server:

Il valore di Lire 100.000 è pari a Euro 51.65

oppure se stiamo sfogliando la tabella del nostro database:

Codice HTML/ASP:

.... Connessione al database (per maggiori informazioni)

<TABLE>
<%
   Do While not RS.EOF
%>
   <TR>
   <TD>Il prezzo del prodotto  in lire è<%= RS("prezzi_in_lire")  %>
</TD>
   <TD>Il prezzo del prodotto  in Euro è<%=Euro(RS("prezzi_in_lire"))  %>
</TD>
   </TR>
<%
   rs.MoveNext
   Loop
%>
</TABLE>

Avremo una tabella formattata automaticamente con i prezzi in Lire ed in Euro, con un notevole risparmio di tempo e di spazio.

Difatti il nostro catalogo merci non dovrà essere aggiornato sul database per i nuovi valori in Euro, ma solamente al momento della sua interrogazione via ASP.

Sfruttando i Serve-Sider-Include possiamo inserirla all'interno della nostra pagina in questo modo:

<!--#include virtual="/scripts/euro.inc"-->

Il file euro.inc conterrà il TAG SCRIPT, con all'interno il codice della funzione.

Ovviamente a partire da questo semplice esempio è possibile creare nuovi moduli, in modo da facilitare la conversione in più valute, funzionalità molto comoda ai tempi dell'Euro e dell'Europa unita.

Contenuti dell'articolo

Commenti
Dai un voto a questo articolo, ci aiuterà a migliorare il nostro sito (1 è il voto minimo, 5 il massimo).

Per procedere al rating dell'articolo devi essere autenticato.

Aggiungi un nuovo commento »»»
Per inserire un commento, devi registrarti alla nostra community.


TUTORIALS
TOP TEN ARTICOLI
NOTIFICHE

Iscriviti alla nostra newsletter nuoviarticoli per ricevere e-mail le notifiche!

Indirizzo e-mail:
PROVIDER ASP.NET 2.0

Seleziona il database per avere il web.config pronto per Membership, Roles e Profile API.



IN EVIDENZA
MISC