Ho un problema!!

Devo concentrare (ottimizzare) più script ASP in un unica pagina.
In questa pagina devo fare diverse interrogazioni a LIBRERIE diverse su un DB AS400 e vorrei mettere il tutto in Funzioni o Procedure per evitare di riscrivere sempre lo stesso codice.
All'inizio riporto i valori di connessione dentro delle variabili SESSION, poi dovrei richiamare quando serve le varie funzioni!!!

Questo è il codice standart per la connessione all'AS400

Codice PHP:
    Session("AS400_Userid") = "UserId"
    
Session("AS400_Password") = "Password"
    
Session("Library") = "Libreria"
    
Session("FileName") = "Archivio"
    
Session("AS400_SystemName") = "Ip"
' varialibi

Dim AS400Connessione
Dim AS400Command
Dim AS400File_rs
Dim ConnectionString
Dim CommandText
Dim CommandType
On Error Resume Next

'
----- dichiarazione di connessione ---------
      
ConnectionString "Provider=IBMDA400;Data Source=" Session("AS400_SystemName") & ";"
     
[BCommandText "SELECT * FROM " Session("Library") & "." Session("FileName")[/B]
      
CommandType adCmdText

'------ apertura connessione --------------

Set AS400Connection = Server.CreateObject("ADODB.Connection")
AS400Connection.Open ConnectionString,Session("As400_Userid"),Session("AS400_Password")
Set AS400Command = Server.CreateObject("ADODB.Command")
AS400Command.ActiveConnection = AS400Connection

da questo punto in poi è inserito una porzione di codice che ci permette di visualizzare l'intero archivio

'
Comandi da eseguire sul sistema AS/400

AS400Command
.CommandText CommandText
AS400Command
.CommandType CommandType

'Esecuzione comandi

Set AS400File_rs = AS400Command.Execute

'
Chiusura connessione
AS400File_rs
.Close
Set AS400File_rs 
Nothing
AS400Connection
.Close
Set AS400Connessione 
Nothing
Set AS400Command 
Nothing 
L'unica parte di codice che cambierà, sara' quella relativa alla libreria e al file che dovrò interrogare.

Codice PHP:
CommandText "SELECT * FROM " Session("Library") & "." Session("FileName"
tutto il resto rimane uguale.

La mia idea è quella di creare una SUB per L'APERTURA CONNESSIONE, i valori non cambiano !!
Un'altra SUB per la CHIUSURA CONNESSIONE
Una FUNZIONE per la DICHIARAZIONE connessione, i valori cambiano a seconda della LIBRERIA e del FILE che devo utilizzare.
Più FUNZIONI con i COMANDI da ESEGUIRE e l'ESECUZIONE comandi ,queste funzioni avranno in entrata dei valori che confrontati con il DB AS400 daranno dei risultati che verranno sparati su variabili e scritte su un DB ACCESS!!!

Le domande che mi pongo e non ho certezza sono:

1) Le variabili SESSION le devo passare nella SUB o Function o no?
2) se le devo passare... come ?
3) è giusta questa logica e suddivisione????

ho fatto qualche prova ma sembra che mi perdo qualcosa e va in loop!!