Scrivere su sistemi AS/400

di Rino Castiglia, in Database,

Questo è il secondo articolo inerente l'utilizzo di sistemi AS/400 da pagine ASP.
Come pre-requisito è fondamentale avere letto il mio articolo precedente , dato che qui viene riproposto lo stesso metodo di connessione al server AS.

Ad esempio, abbiamo bisogno di una pagina (asp) che invii a un file AS/400 tre informazioni:
id, nome e cognome.

Faccio notare che sull'AS/400 non si usa la terminologia database, ma file.
Dovremo dunque creare un file (o archivio) con un tracciato record costituito da 3 campi, il primo a chiave univoca ID, e gli altri due a stringa.

Lo script è composto da due pagine, una di inserimento e una che si occupa di effettuare la scrittura sul DB.

Il controllo dei dati

Questa sarebbe la classica pagina a cui tutti più o meno siamo abituati, una semplice form che richiama la seconda (aggiungi.asp) passando i 3 parametri richiesti.

Quando andiamo a scrivere nelle librerie dell'AS/400 (per librerie si intende cartelle, e per archivio si intende il file), bisogna usare queste specifiche specifiche:

  • ip: indirizzo ip dell'AS/400 (l'AS/400 deve essere configurato in rete tcp, tale script non funziona su reti con emulatori "praime" o reti "token-ring")
  • userid: userid dell'utente abilitato sul server
  • password: password dell'utente
  • libreria: libreria o directory dove si trova il file su cui andiamo a scrivere
  • archivio: file su cui scriviamo

Eccone il contenuto:

 <b>AGGIUNTA RECORD</b>
<FORM NAME="connessione" METHOD="POST" ACTION="aggiungi.asp">
<table width="31%" border="0" cellspacing="0" cellpadding="0">
  <tr> 
   <td width="9%"><b>ip </b></td>
   <td width="91%"> 
     <input type="text" name="ip">
   </td>
  </tr>
  <tr> 
   <td width="9%"><b>userid</b></td>
   <td width="91%"> 
     <input type="text" name="userid">
   </td>
  </tr>
  <tr> 
   <td width="9%"><b>password</b> </td>
   <td width="91%"> 
     <input type="password" name="password">
   </td>
  </tr>
  <tr> 
   <td width="9%"> <b>libreria</b></td>
   <td width="91%"> 
     <input type="text" name="libreria">
   </td>
  </tr>
  <tr> 
   <td width="9%"><b>archivio</b></td>
   <td width="91%"> 
     <input type="text" name="archivio">
   </td>
  </tr>
</table>
  <hr>
  <table width="31%" border="0">
   <tr>
     <td>id </td>
     <td>
      <input type="text" name="id">
     </td>
   </tr>
   <tr>
     <td>nome </td>
     <td>
      <input type="text" name="nome">
     </td>
   </tr>
   <tr>
     <td>cognome</td>
     <td>
      <input type="text" name="cognome">
     </td>
   </tr>
   <tr>
     <td> </td>
     <td>
      <input type="submit" name="Submit" value="aggiungi">
      <input type="reset" name="Submit2" value="Reset">
     </td>
   </tr>
  </table>
</form>

L'inserimento

Dopo aver definito le variabili di sistema, preleviamo i 3 parametri che devono essere processati e inseriti nel ns archivio.

Subito dopo operiamo un semplice controllo per verificare se sono stati inseriti dati, altrimenti verrebbe generato un errore dal sistema AS/400 visibile nella wrkactjob dello stesso.
La wrkactjob non è altro che un comando di sistema che permette di visionare i lavori in corso, un po' come il task manager di Windows.

Diverso discorso viene fatto per questi altri parametri della form:

 Session("AS400_Userid") = Request.Form("UserId")
Session("AS400_Password") = Request.Form("Password")
Session("Library") = Request.Form("Libreria")
Session("FileName") = Request.Form("Archivio")
Session("AS400_SystemName") = Request.Form("Ip")

E' necessario metterli in variabili session, ma sarebbe oltremodo pratico, allorché il server sia lo stesso, inserirli direttamente nel global.asa, stando però molto attenti ai permessi dell'utente, che deve avere privilegi similo QPGMR, l'utente standard di riferimento per la programmazione su AS.

Aggiungo inoltre che ho testato questo script anche su server Remoti, utilizzando un Ip pubblico, e non ho avuto nessun tipo di problema.

2 pagine in totale: 1 2
Contenuti dell'articolo

Commenti

Visualizza/aggiungi commenti

| Condividi su: Twitter, Facebook, LinkedIn

Per inserire un commento, devi avere un account.

Fai il login e torna a questa pagina, oppure registrati alla nostra community.

Approfondimenti

Nessuna risorsa collegata