Primo Programma con CGIDEV2

152 views
Skip to first unread message

Davide Galloni

unread,
Nov 16, 2017, 5:53:42 AM11/16/17
to CGIDEV2 Italia
Ciao a tutti, 
non so se questo gruppo è ancora "in funzione" ma ci provo. 
Ho installato poco fa l'utility CGIDEV2 sull'iSeries aziendale. 

Volevo creare un programma che visualizzasse nel browser una Dashboard con dei dati presi dal sistema in tempo reale (Ordini ricevuti, valore ordini, ordini confermati, ordini spediti, fatturato del giorno etc etc....) 

Supponendo di avere già un programma che prepari tutti i totali del caso, da dove devo partire per far si che l'utente, quando voglia interrogare questi valori, gli basti aprire il browser ad un indirizzo predefinito?? 
Ho provato a leggere le guide online, probabilmente in modo superficiale per mancanza di tempo, ma non ne sono venuto a capo.

C'è qualcuno che ha qualche semplice esempio da seguire?
Grazie
Davide 

per...@easy400.net

unread,
Nov 16, 2017, 7:00:37 AM11/16/17
to cgidev2...@googlegroups.com

Davide,

 

usa il link http://www.easy400.net/cgidown/sussidev2-5.zip per scaricare l’eserciziario a suo tempo da me scritto per la rivista NEWS400.

 

Giovanni

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "CGIDEV2 Italia" di Google Gruppi.
Per annullare l'iscrizione a questo gruppo e non ricevere più le sue email, invia un'email a cgidev2-itali...@googlegroups.com.
Per altre opzioni visita https://groups.google.com/d/optout.

Antonio Ventriglia

unread,
Nov 16, 2017, 8:12:47 AM11/16/17
to CGIDEV2 Italia
Ciao Davide,
io lo uso da molto tempo e penso che chi ha messo su questo metodo sia veramente un grande.
Detto cio’, per fare quello che hai descritto sommariamente tu, devi scrivere codice e poi codice e poi codice, nel senso che non c’è nulla (a quanto ne so io) che ti aiuti a fare questo.
La mia esperienza è stata quella di partire dal modulo centaur2 e sviluppare seguendo i vari esempi. Questo all’inizio, perchè una volta capito il metodo, si tratta di un “normale” programma rpgle che scrive su un file html.
 
Ing.Antonio Ventriglia
C.I.S. Informatica S.r.l.
Mobile 3357512389

Davide Galloni

unread,
Nov 16, 2017, 8:15:36 AM11/16/17
to CGIDEV2 Italia
Grazie Giovanni e anche a Antonio, 
Scarico il Sussidev e ci butto dentro la testa sperando di venirne fuori un po' alla svelta perchè purtroppo il tempo come sempre è tiranno.

Davide
Per annullare l'iscrizione a questo gruppo e non ricevere più le sue email, invia un'email a cgidev2-italia+unsubscribe@googlegroups.com.

Davide

unread,
Nov 16, 2017, 9:45:22 AM11/16/17
to cgidev2...@googlegroups.com
Grazie Giovanni, 
le rispondo qui anche alla mail personale così resta traccia a beneficio di tutti.
Ho scaricato e installato SUSSIDEV2 e sto seguendo l'esempio del programma PGM2 che emette a video l'anagrafica clienti, che alla fine è quello che più si avvicina alla mia necessità.

In merito al mio programma, mi piacerebbe che l'emissione sia graficamente accattivante, a colori, con uno o più loghi e con un bel font etc etc....
So che ha sconsigliato l'utilizzo di tool che generano HTML da un file grafico perchè riempiono il file di codice ma mi chiedevo se fosse davvero così sbagliato? 

Io volevo disegnare la videata, ad esempio, con Publisher e salvarla in HTML, dopodichè modificare l'html con un editor e inserire le variabili che mi interessava valorizzare dal programma. 

Non so ancora se alla fine è più complicato o no. 
Se avete suggerimenti, sono in ascolto.
Grazie
Davide 

Per annullare l'iscrizione a questo gruppo e non ricevere più le sue email, invia un'email a cgidev2-italia+unsubscribe@googlegroups.com.


Per altre opzioni visita https://groups.google.com/d/optout.

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "CGIDEV2 Italia" di Google Gruppi.
Per annullare l'iscrizione a questo argomento, visita https://groups.google.com/d/topic/cgidev2-italia/sg92wTHKCXs/unsubscribe.
Per annullare l'iscrizione a questo gruppo e a tutti i suoi argomenti, invia un'email a cgidev2-italia+unsubscribe@googlegroups.com.

lampo

unread,
Nov 16, 2017, 10:35:49 AM11/16/17
to CGIDEV2 Italia
Il programma lo devi scrivere nuovo, puoi recuperare la parte di calcolo che hai per valorizzare i campi html, per il tool puoi usare WYSIWYG Web Builder  
ciao

Davide Galloni

unread,
Nov 16, 2017, 10:52:53 AM11/16/17
to CGIDEV2 Italia
Grazie Lampo, ci darò un occhiata.
Ho guardato gli esempi di sussidev e ho capito (spero) come il programma scrive le diverse sessioni del file html "<as400>lista etc etc.... 
Ho ultimato il mio programma che si chiama ITRPDSTR che dovrebbe emettere a video 3 valori presi da un DB su AS.
L'ho compilato nella libreria oggetti dell'AS400 che si chiama ITCGIOBJ così: 

CRTBNDRPG PGM(ITCGIOBJ/ITRPDSTR) SRCFILE(ITCGISRC/QRPGLESRC) DFTACTGRP(*NO) ACTGRP(ITRPDSTR) DBGVIEW(*SOURCE) 

L'html l'ho postato nella directory IFS itcgiobj/html  

La compilazione è andata a buon fine.

Per richiamarlo vado sulla barra del browser e digito mioindirizzoas:8014/itcgiobj/itrpdstr.pgm 

Il browser va in attesa risposta dall'as400 e poi mi dice The requested URL /itcgiobj/ITRPDSTR.pgm was not found on this server.

Dove sbaglio? 

lampo

unread,
Nov 16, 2017, 11:13:42 AM11/16/17
to CGIDEV2 Italia
Hai configurato le direttive del server http?   httpd.conf 

Davide

unread,
Nov 16, 2017, 11:52:14 AM11/16/17
to cgidev2...@googlegroups.com
Grazie Lampo,
Le direttive le aveva inserite il comando SETCGI. 
Però controllando ho notato che l'alias è diverso e, come fa per sussidev2 devo utilizzare l'aliasmatch per chiamare il programma. 

#----        ITCGIOBJ directives                                            
AliasMatch /itcgiobjh/(.*)\.htm  /QSYS.LIB/ITCGIOBJ.LIB/HTMLSRC.FILE/$1.mbr 
Alias /itcgiobjh/     /QSYS.LIB/ITCGIOBJ.LIB/HTMLSRC.FILE/                  
Alias /itcgiobj/      /itcgiobj/                                            
ScriptAliasMatch /itcgiobjp/(.*).pgm /qsys.lib/itcgiobj.lib/$1.pgm          

Ho quindi provato ad usare ITCGIOBJH e adesso sembra trovarlo ma mi da un errore di autorizzazione: 

FORBIDDEN
You do not have permission to access /itcgiobjh/itrpdstr.pgm on this server.

ho controllato anche il file html e ha le autorizzazioni per qpgmr come quelle che utilizza sussidev2

Cosa può essere?


gb_pe...@easy400.net

unread,
Nov 16, 2017, 12:02:46 PM11/16/17
to cgidev2...@googlegroups.com

Davide,

 

Assicurati di avere queste direttive:

 

<Directory /QSYS.LIB/ITCGIOBJ.LIB>

   AllowOverride None            

   Options None                  

   Require all granted           

</Directory>

Per annullare l'iscrizione a questo gruppo e a tutti i suoi argomenti, invia un'email a cgidev2-itali...@googlegroups.com.


Per altre opzioni visita https://groups.google.com/d/optout.

 

--

Hai ricevuto questo messaggio perché sei iscritto al gruppo "CGIDEV2 Italia" di Google Gruppi.

Per annullare l'iscrizione a questo gruppo e non ricevere più le sue email, invia un'email a cgidev2-itali...@googlegroups.com.

Davide

unread,
Nov 16, 2017, 12:10:07 PM11/16/17
to cgidev2...@googlegroups.com
Giovanni, 
non l'avevo e l'ho inserito, ho restartato l'HTTP Server ma ancora mi da errore di autorizzazione. 

La sezione della direttiva è così adesso: 
#----        ITCGIOBJ directives                                                  
AliasMatch /itcgiobjh/(.*)\.htm  /QSYS.LIB/ITCGIOBJ.LIB/HTMLSRC.FILE/$1.mbr       
Alias /itcgiobjh/     /QSYS.LIB/ITCGIOBJ.LIB/HTMLSRC.FILE/                        
Alias /itcgiobj/      /itcgiobj/                                                  
ScriptAliasMatch /itcgiobjp/(.*).pgm /qsys.lib/itcgiobj.lib/$1.pgm                
<Directory /QSYS.LIB/ITCGIOBJ.LIB>                                                
   AllowOverride None                                                             
   Options +ExecCGI                                                               
   order allow,deny                                                               
   allow from all                                                                 
   Require all granted                                                            
</Directory>                                                                      
<Directory /itcgiobj>         
   AllowOverride None         
   Options None               
   order allow,deny           
   allow from all             
</Directory>                  


Per annullare l'iscrizione a questo gruppo e a tutti i suoi argomenti, invia un'email a cgidev2-italia+unsubscribe@googlegroups.com.


Per altre opzioni visita https://groups.google.com/d/optout.

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "CGIDEV2 Italia" di Google Gruppi.
Per annullare l'iscrizione a questo gruppo e non ricevere più le sue email, invia un'email a cgidev2-italia+unsubscribe@googlegroups.com.

Per altre opzioni visita https://groups.google.com/d/optout.

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "CGIDEV2 Italia" di Google Gruppi.
Per annullare l'iscrizione a questo argomento, visita https://groups.google.com/d/topic/cgidev2-italia/sg92wTHKCXs/unsubscribe.
Per annullare l'iscrizione a questo gruppo e a tutti i suoi argomenti, invia un'email a cgidev2-italia+unsubscribe@googlegroups.com.

per...@easy400.net

unread,
Nov 16, 2017, 12:36:22 PM11/16/17
to cgidev2...@googlegroups.com

Se sia più opportuno scrivere l’HTML a mano o con un di scrittura HTML.

 

Ciascuno si deve fare la sua esperienza e trovare la strada a lui più consona.

 

Per quanto mi riguarda, circa vent’anni fa - quando iniziai a scrivere programmi WEB in RPG con CGIDEV – mi spazientivo della mia lentezza nello scrivere a mano.

Mi decisi così ad utilizzare vari tool per la scrittura di HTML.

Dopo varie prove scopersi che in alcuni casi i controlli interni richiesti da CGIDEV per identificare nomi di “section” ed i delimitatori delle variabili di output andavano persi.

In altri casi avevo necessità di modificare manualmente ciò che il compositore automatico generava, ma il codice HTML generato era così complesso (almeno per me allora) da rendere impraticabili i miei tentativi. Quando poi si trattasse di inserire del Javascript, la cosa potrebbe divenire disperante.

Da quel punto in avanti decisi che avrei fatto tutto a mano.

In effetti devo dire che in questo modo ho sviluppato nel tempo un mio standard di scrittura che mi consente di manutenzionare facilmente anche 10 anni dopo i miei scarabocchi HTML semplicemente perché sono assolutamente comprensibili da parte di qualunque principiante.

Con tutto ciò non intendo dire che non di debba trarre vantaggio da questi compositori meccanici, ma che per poterli controllare a dovere occorre farsi una buona esperienza e probabilmente mantenersi sempre sullo stesso tool.

 

Unuscuiusque faber fortunae suae.  

 

G.B. Perotti

 

De:

Enviada em: giovedì 16 novembre 2017 15:45
Para: cgidev2...@googlegroups.com
Assunto: Re: [CGIDEV2 Italia:263] Primo Programma con CGIDEV2

 

Grazie Giovanni, 

le rispondo qui anche alla mail personale così resta traccia a beneficio di tutti.

Ho scaricato e installato SUSSIDEV2 e sto seguendo l'esempio del programma PGM2 che emette a video l'anagrafica clienti, che alla fine è quello che più si avvicina alla mia necessità.

 

In merito al mio programma, mi piacerebbe che l'emissione sia graficamente accattivante, a colori, con uno o più loghi e con un bel font etc etc....

So che ha sconsigliato l'utilizzo di tool che generano HTML da un file grafico perchè riempiono il file di codice ma mi chiedevo se fosse davvero così sbagliato? 

 

Io volevo disegnare la videata, ad esempio, con Publisher e salvarla in HTML, dopodichè modificare l'html con un editor e inserire le variabili che mi interessava valorizzare dal programma. 

 

Non so ancora se alla fine è più complicato o no. 

Se avete suggerimenti, sono in ascolto.

Grazie

Davide 

Il giorno 16 novembre 2017 13:00, <per...@easy400.net> ha scritto:

Davide,

 

usa il link http://www.easy400.net/cgidown/sussidev2-5.zip per scaricare l’eserciziario a suo tempo da me scritto per la rivista NEWS400.

 

Giovanni

 

De: cgidev2...@googlegroups.com [mailto:cgidev2...@googlegroups.com] Em nome de Davide Galloni
Enviada em: giovedì 16 novembre 2017 11:54
Para: CGIDEV2 Italia
Assunto: [CGIDEV2 Italia:260] Primo Programma con CGIDEV2

 

Ciao a tutti, 

non so se questo gruppo è ancora "in funzione" ma ci provo. 

Ho installato poco fa l'utility CGIDEV2 sull'iSeries aziendale. 

 

Volevo creare un programma che visualizzasse nel browser una Dashboard con dei dati presi dal sistema in tempo reale (Ordini ricevuti, valore ordini, ordini confermati, ordini spediti, fatturato del giorno etc etc....) 

 

Supponendo di avere già un programma che prepari tutti i totali del caso, da dove devo partire per far si che l'utente, quando voglia interrogare questi valori, gli basti aprire il browser ad un indirizzo predefinito?? 

Ho provato a leggere le guide online, probabilmente in modo superficiale per mancanza di tempo, ma non ne sono venuto a capo.

 

C'è qualcuno che ha qualche semplice esempio da seguire?

Grazie

Davide 

 

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "CGIDEV2 Italia" di Google Gruppi.

Per annullare l'iscrizione a questo gruppo e non ricevere più le sue email, invia un'email a cgidev2-itali...@googlegroups.com.


Per altre opzioni visita https://groups.google.com/d/optout.

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "CGIDEV2 Italia" di Google Gruppi.
Per annullare l'iscrizione a questo argomento, visita https://groups.google.com/d/topic/cgidev2-italia/sg92wTHKCXs/unsubscribe.

Per annullare l'iscrizione a questo gruppo e a tutti i suoi argomenti, invia un'email a cgidev2-itali...@googlegroups.com.


Per altre opzioni visita https://groups.google.com/d/optout.

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "CGIDEV2 Italia" di Google Gruppi.

Per annullare l'iscrizione a questo gruppo e non ricevere più le sue email, invia un'email a cgidev2-itali...@googlegroups.com.

gb_pe...@easy400.net

unread,
Nov 16, 2017, 12:40:10 PM11/16/17
to cgidev2...@googlegroups.com

Prova a copiare il programma nella libreria CGIDEV2 e vedi se riesci ad eseguirlo dalla  istanza CGIDEV2APA: /cgidev2p/xxx.pgm    .

 


Enviada em: giovedì 16 novembre 2017 18:10
Para: cgidev2...@googlegroups.com

Per annullare l'iscrizione a questo gruppo e a tutti i suoi argomenti, invia un'email a cgidev2-itali...@googlegroups.com.


Per altre opzioni visita https://groups.google.com/d/optout.

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "CGIDEV2 Italia" di Google Gruppi.

Per annullare l'iscrizione a questo gruppo e non ricevere più le sue email, invia un'email a cgidev2-itali...@googlegroups.com.


Per altre opzioni visita https://groups.google.com/d/optout.

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "CGIDEV2 Italia" di Google Gruppi.
Per annullare l'iscrizione a questo argomento, visita https://groups.google.com/d/topic/cgidev2-italia/sg92wTHKCXs/unsubscribe.

Per annullare l'iscrizione a questo gruppo e a tutti i suoi argomenti, invia un'email a cgidev2-itali...@googlegroups.com.


Per altre opzioni visita https://groups.google.com/d/optout.

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "CGIDEV2 Italia" di Google Gruppi.

Per annullare l'iscrizione a questo gruppo e non ricevere più le sue email, invia un'email a cgidev2-itali...@googlegroups.com.

Davide

unread,
Nov 16, 2017, 1:52:17 PM11/16/17
to cgidev2...@googlegroups.com
Domattina proverò. 
Per il resto, sono d'accordo con te, ho purtroppo constatato più volte che copiare qualcosa, apparentemente sembra la soluzione più veloce ma il tempo che si perde poi per le verifiche a volte é più lungo che riscrivere tutto. 
Ti farò sapere l'esito domattina. 
Buona serata 
Davide

Per annullare l'iscrizione a questo gruppo e a tutti i suoi argomenti, invia un'email a cgidev2-italia+unsubscribe@googlegroups.com.


Per altre opzioni visita https://groups.google.com/d/optout.

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "CGIDEV2 Italia" di Google Gruppi.

Per annullare l'iscrizione a questo gruppo e non ricevere più le sue email, invia un'email a cgidev2-italia+unsubscribe@googlegroups.com.


Per altre opzioni visita https://groups.google.com/d/optout.

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "CGIDEV2 Italia" di Google Gruppi.
Per annullare l'iscrizione a questo argomento, visita https://groups.google.com/d/topic/cgidev2-italia/sg92wTHKCXs/unsubscribe.

Per annullare l'iscrizione a questo gruppo e a tutti i suoi argomenti, invia un'email a cgidev2-italia+unsubscribe@googlegroups.com.


Per altre opzioni visita https://groups.google.com/d/optout.

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "CGIDEV2 Italia" di Google Gruppi.

Per annullare l'iscrizione a questo gruppo e non ricevere più le sue email, invia un'email a cgidev2-italia+unsubscribe@googlegroups.com.


Per altre opzioni visita https://groups.google.com/d/optout.

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "CGIDEV2 Italia" di Google Gruppi.
Per annullare l'iscrizione a questo argomento, visita https://groups.google.com/d/topic/cgidev2-italia/sg92wTHKCXs/unsubscribe.
Per annullare l'iscrizione a questo gruppo e a tutti i suoi argomenti, invia un'email a cgidev2-italia+unsubscribe@googlegroups.com.

Davide

unread,
Nov 17, 2017, 3:28:06 AM11/17/17
to cgidev2...@googlegroups.com
Giovanni, ho verificato e credo che il problema sia sul caricamento dell'Html esterno perchè, come indicato nel programma, mi ritorna un errore 500. 
Nel mio programma la routine di LoadHTML è questa:

/free                                                                              
    Begsr LoadHTML;                                                                
                                                                                   
    extHTML='/itcgiobj/html/RiepilogoDstr.htm';                                    
    IfsMultIndicators=getHtmlIfsMult(%trim(exthtml):'<as400>');                    
                                                                                   
    //Se il caricamento dell'HTML esterno fallisce, ritorna (causando ERRORE 500)  
    if NoErrors=*off;                                                              
    return;                                                                        
    endif;                                                                         
                                                                                   
    Endsr;                                                                         
                                                                                   
/end-free                                                                           

Abbastanza semplice ed il percorso è corretto, a meno che, come per il richiamo del programma nella barra indirizzi, non si debba specificare un alias ma, verificando nel Sussidev, sembra di no. 
Non esiste una sorta di Debug dove si può capire cosa non va? 

Antonio Ventriglia

unread,
Nov 17, 2017, 4:29:26 AM11/17/17
to cgidev2...@googlegroups.com
Ma il file sotto ifs, esattamente come si chiama (completo di estensione)?
Per annullare l'iscrizione a questo gruppo e non ricevere più le sue email, invia un'email a cgidev2-itali...@googlegroups.com.

per...@easy400.net

unread,
Nov 17, 2017, 4:37:56 AM11/17/17
to cgidev2...@googlegroups.com

Ti ricordo che simili errori vengono registrati nel file CGIDEBUG.

 

Giovanni

Per annullare l'iscrizione a questo gruppo e a tutti i suoi argomenti, invia un'email a cgidev2-itali...@googlegroups.com.


Per altre opzioni visita https://groups.google.com/d/optout.

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "CGIDEV2 Italia" di Google Gruppi.

Per annullare l'iscrizione a questo gruppo e non ricevere più le sue email, invia un'email a cgidev2-itali...@googlegroups.com.


Per altre opzioni visita https://groups.google.com/d/optout.

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "CGIDEV2 Italia" di Google Gruppi.
Per annullare l'iscrizione a questo argomento, visita https://groups.google.com/d/topic/cgidev2-italia/sg92wTHKCXs/unsubscribe.

Per annullare l'iscrizione a questo gruppo e a tutti i suoi argomenti, invia un'email a cgidev2-itali...@googlegroups.com.


Per altre opzioni visita https://groups.google.com/d/optout.

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "CGIDEV2 Italia" di Google Gruppi.

Per annullare l'iscrizione a questo gruppo e non ricevere più le sue email, invia un'email a cgidev2-itali...@googlegroups.com.


Per altre opzioni visita https://groups.google.com/d/optout.

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "CGIDEV2 Italia" di Google Gruppi.
Per annullare l'iscrizione a questo argomento, visita https://groups.google.com/d/topic/cgidev2-italia/sg92wTHKCXs/unsubscribe.

Per annullare l'iscrizione a questo gruppo e a tutti i suoi argomenti, invia un'email a cgidev2-itali...@googlegroups.com.


Per altre opzioni visita https://groups.google.com/d/optout.

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "CGIDEV2 Italia" di Google Gruppi.

Per annullare l'iscrizione a questo gruppo e non ricevere più le sue email, invia un'email a cgidev2-itali...@googlegroups.com.

Davide

unread,
Nov 17, 2017, 4:46:19 AM11/17/17
to cgidev2...@googlegroups.com
Si chiama RiepilogoDstr.htm e si trova sotto ITCGIOBJ/html 
Ho provato anche a scrivere nel programma ITCGIOBJ in maiuscolo perchè non so se è case sensitive, ma nulla da fare.
Il file CGIDEBUG è vuoto. 

Ho provato anche a copiare l'html sul pc, gli ho sistituito le variabili con delle costanti e ho provato a richiamarlo dal browser e me lo fa vedere tranquillamente, è semplicissimo. 

Davide

unread,
Nov 17, 2017, 4:49:14 AM11/17/17
to cgidev2...@googlegroups.com
Giovanni, 
il file CGIDebug nella libreria ITCGIOBJ è vuoto. 
Il programma lo compilo così: 
CRTBNDRPG PGM(ITCGIOBJ/ITRPDSTR) SRCFILE(ITCGISRC/QRPGLESRC) SRCMBR(ITRPDSTR) DFTACTGRP(*NO) ACTGRP(ITRPDSTR) DBGVIEW(*SOURCE)

Per annullare l'iscrizione a questo gruppo e a tutti i suoi argomenti, invia un'email a cgidev2-italia+unsubscribe@googlegroups.com.


Per altre opzioni visita https://groups.google.com/d/optout.

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "CGIDEV2 Italia" di Google Gruppi.

Per annullare l'iscrizione a questo gruppo e non ricevere più le sue email, invia un'email a cgidev2-italia+unsubscribe@googlegroups.com.


Per altre opzioni visita https://groups.google.com/d/optout.

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "CGIDEV2 Italia" di Google Gruppi.
Per annullare l'iscrizione a questo argomento, visita https://groups.google.com/d/topic/cgidev2-italia/sg92wTHKCXs/unsubscribe.

Per annullare l'iscrizione a questo gruppo e a tutti i suoi argomenti, invia un'email a cgidev2-italia+unsubscribe@googlegroups.com.


Per altre opzioni visita https://groups.google.com/d/optout.

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "CGIDEV2 Italia" di Google Gruppi.

Per annullare l'iscrizione a questo gruppo e non ricevere più le sue email, invia un'email a cgidev2-italia+unsubscribe@googlegroups.com.


Per altre opzioni visita https://groups.google.com/d/optout.

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "CGIDEV2 Italia" di Google Gruppi.
Per annullare l'iscrizione a questo argomento, visita https://groups.google.com/d/topic/cgidev2-italia/sg92wTHKCXs/unsubscribe.

Per annullare l'iscrizione a questo gruppo e a tutti i suoi argomenti, invia un'email a cgidev2-italia+unsubscribe@googlegroups.com.


Per altre opzioni visita https://groups.google.com/d/optout.

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "CGIDEV2 Italia" di Google Gruppi.

Per annullare l'iscrizione a questo gruppo e non ricevere più le sue email, invia un'email a cgidev2-italia+unsubscribe@googlegroups.com.


Per altre opzioni visita https://groups.google.com/d/optout.

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "CGIDEV2 Italia" di Google Gruppi.
Per annullare l'iscrizione a questo argomento, visita https://groups.google.com/d/topic/cgidev2-italia/sg92wTHKCXs/unsubscribe.
Per annullare l'iscrizione a questo gruppo e a tutti i suoi argomenti, invia un'email a cgidev2-italia+unsubscribe@googlegroups.com.

per...@easy400.net

unread,
Nov 17, 2017, 5:34:58 AM11/17/17
to cgidev2...@googlegroups.com

Guarda in tutti i file CGIDEBUG che trovi sul sistema.

 

De: cgidev2...@googlegroups.com [mailto:cgidev2...@googlegroups.com] Em nome de Davide
Enviada em: venerdì 17 novembre 2017 10:46
Para: cgidev2...@googlegroups.com
Assunto: Re: [CGIDEV2 Italia:276] Re: Primo Programma con CGIDEV2

 

Si chiama RiepilogoDstr.htm e si trova sotto ITCGIOBJ/html 

Ho provato anche a scrivere nel programma ITCGIOBJ in maiuscolo perchè non so se è case sensitive, ma nulla da fare.

Il file CGIDEBUG è vuoto. 

 

Ho provato anche a copiare l'html sul pc, gli ho sistituito le variabili con delle costanti e ho provato a richiamarlo dal browser e me lo fa vedere tranquillamente, è semplicissimo. 

 

Il giorno 17 novembre 2017 10:29, Antonio Ventriglia <ventrigli...@cisweb.it> ha scritto:

Ma il file sotto ifs, esattamente come si chiama (completo di estensione)?

From: Davide

Sent: Friday, November 17, 2017 9:28 AM

Subject: Re: RES: [CGIDEV2 Italia:273] Re: Primo Programma con CGIDEV2

Giovanni, ho verificato e credo che il problema sia sul caricamento dell'Html esterno perchè, come indicato nel programma, mi ritorna un errore 500.

Nel mio programma la routine di LoadHTML è questa:

 

/free                                                                             

    Begsr LoadHTML;                                                               

                                                                                  

   extHTML='/itcgiobj/html/RiepilogoDstr.htm';                                   

    IfsMultIndicators=getHtmlIfsMult(%trim(exthtml):'<as400>');                   

                                                                                  

    //Se il caricamento dell'HTML esterno fallisce, ritorna (causando ERRORE 500) 

    if NoErrors=*off;                                                             

    return;                                                                       

    endif;                                                                        

                                                                                  

    Endsr;                                                                        

                                                                                  

/end-free                                                                          

 

Abbastanza semplice ed il percorso è corretto, a meno che, come per il richiamo del programma nella barra indirizzi, non si debba specificare un alias ma, verificando nel Sussidev, sembra di no.

Non esiste una sorta di Debug dove si può capire cosa non va?

 

Il giorno 16 novembre 2017 19:52, Davide <davide....@gmail.com> ha scritto:

Domattina proverò. 

Per il resto, sono d'accordo con te, ho purtroppo constatato più volte che copiare qualcosa, apparentemente sembra la soluzione più veloce ma il tempo che si perde poi per le verifiche a volte é più lungo che riscrivere tutto.

Ti farò sapere l'esito domattina.

Buona serata

Davide

Il 16 nov 2017 6:40 PM, <gb_pe...@easy400.net> ha scritto:

Prova a copiare il programma nella libreria CGIDEV2 e vedi se riesci ad eseguirlo dalla  istanza CGIDEV2APA: /cgidev2p/xxx.pgm    .

 

Per annullare l'iscrizione a questo gruppo e a tutti i suoi argomenti, invia un'email a cgidev2-itali...@googlegroups.com.


Per altre opzioni visita https://groups.google.com/d/optout.

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "CGIDEV2 Italia" di Google Gruppi.

Per annullare l'iscrizione a questo gruppo e non ricevere più le sue email, invia un'email a cgidev2-itali...@googlegroups.com.


Per altre opzioni visita https://groups.google.com/d/optout.

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "CGIDEV2 Italia" di Google Gruppi.
Per annullare l'iscrizione a questo argomento, visita https://groups.google.com/d/topic/cgidev2-italia/sg92wTHKCXs/unsubscribe.

Per annullare l'iscrizione a questo gruppo e a tutti i suoi argomenti, invia un'email a cgidev2-itali...@googlegroups.com.


Per altre opzioni visita https://groups.google.com/d/optout.

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "CGIDEV2 Italia" di Google Gruppi.

Per annullare l'iscrizione a questo gruppo e non ricevere più le sue email, invia un'email a cgidev2-itali...@googlegroups.com.


Per altre opzioni visita https://groups.google.com/d/optout.

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "CGIDEV2 Italia" di Google Gruppi.
Per annullare l'iscrizione a questo argomento, visita https://groups.google.com/d/topic/cgidev2-italia/sg92wTHKCXs/unsubscribe.

Per annullare l'iscrizione a questo gruppo e a tutti i suoi argomenti, invia un'email a cgidev2-itali...@googlegroups.com.


Per altre opzioni visita https://groups.google.com/d/optout.

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "CGIDEV2 Italia" di Google Gruppi.

Per annullare l'iscrizione a questo gruppo e non ricevere più le sue email, invia un'email a cgidev2-itali...@googlegroups.com.


Per altre opzioni visita https://groups.google.com/d/optout.

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "CGIDEV2 Italia" di Google Gruppi.
Per annullare l'iscrizione a questo argomento, visita https://groups.google.com/d/topic/cgidev2-italia/sg92wTHKCXs/unsubscribe.

Per annullare l'iscrizione a questo gruppo e a tutti i suoi argomenti, invia un'email a cgidev2-itali...@googlegroups.com.


Per altre opzioni visita https://groups.google.com/d/optout.

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "CGIDEV2 Italia" di Google Gruppi.

Per annullare l'iscrizione a questo gruppo e non ricevere più le sue email, invia un'email a cgidev2-itali...@googlegroups.com.

per...@easy400.net

unread,
Nov 17, 2017, 5:39:28 AM11/17/17
to cgidev2...@googlegroups.com

Prova a togliere il controllo sull’indicatore NoErrors e vediamo che cosa succede.

 


Enviada em: venerdì 17 novembre 2017 10:46

Para: cgidev2...@googlegroups.com
Assunto: Re: [CGIDEV2 Italia:276] Re: Primo Programma con CGIDEV2

 

Si chiama RiepilogoDstr.htm e si trova sotto ITCGIOBJ/html 

Ho provato anche a scrivere nel programma ITCGIOBJ in maiuscolo perchè non so se è case sensitive, ma nulla da fare.

Il file CGIDEBUG è vuoto. 

 

Ho provato anche a copiare l'html sul pc, gli ho sistituito le variabili con delle costanti e ho provato a richiamarlo dal browser e me lo fa vedere tranquillamente, è semplicissimo. 

 

Il giorno 17 novembre 2017 10:29, Antonio Ventriglia <ventrigli...@cisweb.it> ha scritto:

Ma il file sotto ifs, esattamente come si chiama (completo di estensione)?

From: Davide

Sent: Friday, November 17, 2017 9:28 AM

Subject: Re: RES: [CGIDEV2 Italia:273] Re: Primo Programma con CGIDEV2

Giovanni, ho verificato e credo che il problema sia sul caricamento dell'Html esterno perchè, come indicato nel programma, mi ritorna un errore 500.

Nel mio programma la routine di LoadHTML è questa:

 

/free                                                                             

    Begsr LoadHTML;                                                               

                                                                                  

   extHTML='/itcgiobj/html/RiepilogoDstr.htm';                                   

    IfsMultIndicators=getHtmlIfsMult(%trim(exthtml):'<as400>');                   

                                                                                  

    //Se il caricamento dell'HTML esterno fallisce, ritorna (causando ERRORE 500) 

    if NoErrors=*off;                                                             

    return;                                                                       

    endif;                                                                        

                                                                                  

    Endsr;                                                                        

                                                                                  

/end-free                                                                          

 

Abbastanza semplice ed il percorso è corretto, a meno che, come per il richiamo del programma nella barra indirizzi, non si debba specificare un alias ma, verificando nel Sussidev, sembra di no.

Non esiste una sorta di Debug dove si può capire cosa non va?

 

Il giorno 16 novembre 2017 19:52, Davide <davide....@gmail.com> ha scritto:

Domattina proverò. 

Per il resto, sono d'accordo con te, ho purtroppo constatato più volte che copiare qualcosa, apparentemente sembra la soluzione più veloce ma il tempo che si perde poi per le verifiche a volte é più lungo che riscrivere tutto.

Ti farò sapere l'esito domattina.

Buona serata

Davide

Il 16 nov 2017 6:40 PM, <gb_pe...@easy400.net> ha scritto:

Prova a copiare il programma nella libreria CGIDEV2 e vedi se riesci ad eseguirlo dalla  istanza CGIDEV2APA: /cgidev2p/xxx.pgm    .

 

Per annullare l'iscrizione a questo gruppo e a tutti i suoi argomenti, invia un'email a cgidev2-itali...@googlegroups.com.


Per altre opzioni visita https://groups.google.com/d/optout.

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "CGIDEV2 Italia" di Google Gruppi.

Per annullare l'iscrizione a questo gruppo e non ricevere più le sue email, invia un'email a cgidev2-itali...@googlegroups.com.


Per altre opzioni visita https://groups.google.com/d/optout.

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "CGIDEV2 Italia" di Google Gruppi.
Per annullare l'iscrizione a questo argomento, visita https://groups.google.com/d/topic/cgidev2-italia/sg92wTHKCXs/unsubscribe.

Per annullare l'iscrizione a questo gruppo e a tutti i suoi argomenti, invia un'email a cgidev2-itali...@googlegroups.com.


Per altre opzioni visita https://groups.google.com/d/optout.

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "CGIDEV2 Italia" di Google Gruppi.

Per annullare l'iscrizione a questo gruppo e non ricevere più le sue email, invia un'email a cgidev2-itali...@googlegroups.com.


Per altre opzioni visita https://groups.google.com/d/optout.

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "CGIDEV2 Italia" di Google Gruppi.
Per annullare l'iscrizione a questo argomento, visita https://groups.google.com/d/topic/cgidev2-italia/sg92wTHKCXs/unsubscribe.

Per annullare l'iscrizione a questo gruppo e a tutti i suoi argomenti, invia un'email a cgidev2-itali...@googlegroups.com.


Per altre opzioni visita https://groups.google.com/d/optout.

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "CGIDEV2 Italia" di Google Gruppi.

Per annullare l'iscrizione a questo gruppo e non ricevere più le sue email, invia un'email a cgidev2-itali...@googlegroups.com.


Per altre opzioni visita https://groups.google.com/d/optout.

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "CGIDEV2 Italia" di Google Gruppi.
Per annullare l'iscrizione a questo argomento, visita https://groups.google.com/d/topic/cgidev2-italia/sg92wTHKCXs/unsubscribe.

Per annullare l'iscrizione a questo gruppo e a tutti i suoi argomenti, invia un'email a cgidev2-itali...@googlegroups.com.


Per altre opzioni visita https://groups.google.com/d/optout.

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "CGIDEV2 Italia" di Google Gruppi.

Per annullare l'iscrizione a questo gruppo e non ricevere più le sue email, invia un'email a cgidev2-itali...@googlegroups.com.

Davide

unread,
Nov 17, 2017, 5:46:49 AM11/17/17
to cgidev2...@googlegroups.com
Avevo modificato il valore dell'area dati CGIDEBUG impostandola = '1' perchè il comando CGIDEBUG Mi dava Debug Off. 
Riprovando però, i file non vengono alimentati. 
Ho un dubbio, nel programma io vado a reperire dei dati da un file, con quale utente e/o lista librerie viene richiamato il programma dal browser? 

Il giorno 17 novembre 2017 11:39, <per...@easy400.net> ha scritto:

Prova a togliere il controllo sull’indicatore NoErrors e vediamo che cosa succede.

 

De: cgidev2-italia@googlegroups.com [mailto:cgidev2-italia@googlegroups.com] Em nome de Davide
Enviada em: venerdì 17 novembre 2017 10:46
Para: cgidev2-italia@googlegroups.com
Assunto: Re: [CGIDEV2 Italia:276] Re: Primo Programma con CGIDEV2

 

Si chiama RiepilogoDstr.htm e si trova sotto ITCGIOBJ/html 

Ho provato anche a scrivere nel programma ITCGIOBJ in maiuscolo perchè non so se è case sensitive, ma nulla da fare.

Il file CGIDEBUG è vuoto. 

 

Ho provato anche a copiare l'html sul pc, gli ho sistituito le variabili con delle costanti e ho provato a richiamarlo dal browser e me lo fa vedere tranquillamente, è semplicissimo. 

 

Il giorno 17 novembre 2017 10:29, Antonio Ventriglia <ventrigli...@cisweb.it> ha scritto:

Ma il file sotto ifs, esattamente come si chiama (completo di estensione)?

From: Davide

Sent: Friday, November 17, 2017 9:28 AM

Per annullare l'iscrizione a questo gruppo e a tutti i suoi argomenti, invia un'email a cgidev2-italia+unsubscribe@googlegroups.com.


Per altre opzioni visita https://groups.google.com/d/optout.

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "CGIDEV2 Italia" di Google Gruppi.

Per annullare l'iscrizione a questo gruppo e non ricevere più le sue email, invia un'email a cgidev2-italia+unsubscribe@googlegroups.com.


Per altre opzioni visita https://groups.google.com/d/optout.

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "CGIDEV2 Italia" di Google Gruppi.
Per annullare l'iscrizione a questo argomento, visita https://groups.google.com/d/topic/cgidev2-italia/sg92wTHKCXs/unsubscribe.

Per annullare l'iscrizione a questo gruppo e a tutti i suoi argomenti, invia un'email a cgidev2-italia+unsubscribe@googlegroups.com.


Per altre opzioni visita https://groups.google.com/d/optout.

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "CGIDEV2 Italia" di Google Gruppi.

Per annullare l'iscrizione a questo gruppo e non ricevere più le sue email, invia un'email a cgidev2-italia+unsubscribe@googlegroups.com.


Per altre opzioni visita https://groups.google.com/d/optout.

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "CGIDEV2 Italia" di Google Gruppi.
Per annullare l'iscrizione a questo argomento, visita https://groups.google.com/d/topic/cgidev2-italia/sg92wTHKCXs/unsubscribe.

Per annullare l'iscrizione a questo gruppo e a tutti i suoi argomenti, invia un'email a cgidev2-italia+unsubscribe@googlegroups.com.


Per altre opzioni visita https://groups.google.com/d/optout.

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "CGIDEV2 Italia" di Google Gruppi.

Per annullare l'iscrizione a questo gruppo e non ricevere più le sue email, invia un'email a cgidev2-italia+unsubscribe@googlegroups.com.


Per altre opzioni visita https://groups.google.com/d/optout.

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "CGIDEV2 Italia" di Google Gruppi.
Per annullare l'iscrizione a questo argomento, visita https://groups.google.com/d/topic/cgidev2-italia/sg92wTHKCXs/unsubscribe.

Per annullare l'iscrizione a questo gruppo e a tutti i suoi argomenti, invia un'email a cgidev2-italia+unsubscribe@googlegroups.com.


Per altre opzioni visita https://groups.google.com/d/optout.

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "CGIDEV2 Italia" di Google Gruppi.

Per annullare l'iscrizione a questo gruppo e non ricevere più le sue email, invia un'email a cgidev2-italia+unsubscribe@googlegroups.com.


Per altre opzioni visita https://groups.google.com/d/optout.

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "CGIDEV2 Italia" di Google Gruppi.
Per annullare l'iscrizione a questo argomento, visita https://groups.google.com/d/topic/cgidev2-italia/sg92wTHKCXs/unsubscribe.
Per annullare l'iscrizione a questo gruppo e a tutti i suoi argomenti, invia un'email a cgidev2-italia+unsubscribe@googlegroups.com.

Davide

unread,
Nov 17, 2017, 9:34:24 AM11/17/17
to cgidev2...@googlegroups.com
Giovanni,
non sapendo con quale lista librerie accede il PGM ho aggiunto l'apertura manuale del file previa OVRDBF. 
Niente, mi da sempre l'errore 500.
Il programma di per sè è semplice, così come l'html, anche se non sono granchè ferrato su quest'ultimo. 
Provo a postarli entrambi, magari salta all'occhio qualcosa che non vedo. 


Il giorno 17 novembre 2017 11:46, Davide <davide....@gmail.com> ha scritto:
Avevo modificato il valore dell'area dati CGIDEBUG impostandola = '1' perchè il comando CGIDEBUG Mi dava Debug Off. 
Riprovando però, i file non vengono alimentati. 
Ho un dubbio, nel programma io vado a reperire dei dati da un file, con quale utente e/o lista librerie viene richiamato il programma dal browser? 
Il giorno 17 novembre 2017 11:39, <per...@easy400.net> ha scritto:

Prova a togliere il controllo sull’indicatore NoErrors e vediamo che cosa succede.

 

De: cgidev2...@googlegroups.com [mailto:cgidev2-italia@googlegroups.com] Em nome de Davide
Enviada em: venerdì 17 novembre 2017 10:46
Para: cgidev2...@googlegroups.com
Assunto: Re: [CGIDEV2 Italia:276] Re: Primo Programma con CGIDEV2

 

Si chiama RiepilogoDstr.htm e si trova sotto ITCGIOBJ/html 

Ho provato anche a scrivere nel programma ITCGIOBJ in maiuscolo perchè non so se è case sensitive, ma nulla da fare.

Il file CGIDEBUG è vuoto. 

 

Ho provato anche a copiare l'html sul pc, gli ho sistituito le variabili con delle costanti e ho provato a richiamarlo dal browser e me lo fa vedere tranquillamente, è semplicissimo. 

 

Il giorno 17 novembre 2017 10:29, Antonio Ventriglia <ventrigli...@cisweb.it> ha scritto:

Ma il file sotto ifs, esattamente come si chiama (completo di estensione)?

From: Davide

Sent: Friday, November 17, 2017 9:28 AM

itrpdstr.txt
RiepilogoDstr.htm

per...@easy400.net

unread,
Nov 17, 2017, 1:27:05 PM11/17/17
to cgidev2...@googlegroups.com

Con la lista librerie della jobd qhttpsvr/qzhbhttp .

Per ovviare al problema, nel pgm CGI si può

1-      Definire i file con USROPN, usare delle OVRDBF, poi fare la OPEN ----- OPPURE

2-      Nelle specifiche del file usare la keyword EXTFILE.

Io uso di solito il metodo 2.

 

Giovanni

 


Enviada em: venerdì 17 novembre 2017 11:47
Para: cgidev2...@googlegroups.com

Assunto: Re: [CGIDEV2 Italia:280] Re: Primo Programma con CGIDEV2

 

Avevo modificato il valore dell'area dati CGIDEBUG impostandola = '1' perchè il comando CGIDEBUG Mi dava Debug Off. 

Riprovando però, i file non vengono alimentati. 

Ho un dubbio, nel programma io vado a reperire dei dati da un file, con quale utente e/o lista librerie viene richiamato il programma dal browser? 

Il giorno 17 novembre 2017 11:39, <per...@easy400.net> ha scritto:

Prova a togliere il controllo sull’indicatore NoErrors e vediamo che cosa succede.

 

De: cgidev2...@googlegroups.com [mailto:cgidev2...@googlegroups.com] Em nome de Davide
Enviada em: venerdì 17 novembre 2017 10:46
Para: cgidev2...@googlegroups.com
Assunto: Re: [CGIDEV2 Italia:276] Re: Primo Programma con CGIDEV2

 

Si chiama RiepilogoDstr.htm e si trova sotto ITCGIOBJ/html 

Ho provato anche a scrivere nel programma ITCGIOBJ in maiuscolo perchè non so se è case sensitive, ma nulla da fare.

Il file CGIDEBUG è vuoto. 

 

Ho provato anche a copiare l'html sul pc, gli ho sistituito le variabili con delle costanti e ho provato a richiamarlo dal browser e me lo fa vedere tranquillamente, è semplicissimo. 

 

Il giorno 17 novembre 2017 10:29, Antonio Ventriglia <ventrigli...@cisweb.it> ha scritto:

Ma il file sotto ifs, esattamente come si chiama (completo di estensione)?

From: Davide

Sent: Friday, November 17, 2017 9:28 AM

Subject: Re: RES: [CGIDEV2 Italia:273] Re: Primo Programma con CGIDEV2

Giovanni, ho verificato e credo che il problema sia sul caricamento dell'Html esterno perchè, come indicato nel programma, mi ritorna un errore 500.

Nel mio programma la routine di LoadHTML è questa:

 

/free                                                                             

    Begsr LoadHTML;                                                               

                                                                                  

   extHTML='/itcgiobj/html/RiepilogoDstr.htm';                                   

    IfsMultIndicators=getHtmlIfsMult(%trim(exthtml):'<as400>');                   

                                                                                  

    //Se il caricamento dell'HTML esterno fallisce, ritorna (causando ERRORE 500) 

    if NoErrors=*off;                                                             

    return;                                                                       

    endif;                                                                        

                                                                                  

    Endsr;                                                                        

                                                                                  

/end-free                                                                          

 

Abbastanza semplice ed il percorso è corretto, a meno che, come per il richiamo del programma nella barra indirizzi, non si debba specificare un alias ma, verificando nel Sussidev, sembra di no.

Non esiste una sorta di Debug dove si può capire cosa non va?

 

Il giorno 16 novembre 2017 19:52, Davide <davide....@gmail.com> ha scritto:

Domattina proverò. 

Per il resto, sono d'accordo con te, ho purtroppo constatato più volte che copiare qualcosa, apparentemente sembra la soluzione più veloce ma il tempo che si perde poi per le verifiche a volte é più lungo che riscrivere tutto.

Ti farò sapere l'esito domattina.

Buona serata

Davide

Il 16 nov 2017 6:40 PM, <gb_pe...@easy400.net> ha scritto:

Prova a copiare il programma nella libreria CGIDEV2 e vedi se riesci ad eseguirlo dalla  istanza CGIDEV2APA: /cgidev2p/xxx.pgm    .

 

Per annullare l'iscrizione a questo gruppo e a tutti i suoi argomenti, invia un'email a cgidev2-itali...@googlegroups.com.


Per altre opzioni visita https://groups.google.com/d/optout.

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "CGIDEV2 Italia" di Google Gruppi.

Per annullare l'iscrizione a questo gruppo e non ricevere più le sue email, invia un'email a cgidev2-itali...@googlegroups.com.


Per altre opzioni visita https://groups.google.com/d/optout.

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "CGIDEV2 Italia" di Google Gruppi.
Per annullare l'iscrizione a questo argomento, visita https://groups.google.com/d/topic/cgidev2-italia/sg92wTHKCXs/unsubscribe.

Per annullare l'iscrizione a questo gruppo e a tutti i suoi argomenti, invia un'email a cgidev2-itali...@googlegroups.com.


Per altre opzioni visita https://groups.google.com/d/optout.

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "CGIDEV2 Italia" di Google Gruppi.

Per annullare l'iscrizione a questo gruppo e non ricevere più le sue email, invia un'email a cgidev2-itali...@googlegroups.com.


Per altre opzioni visita https://groups.google.com/d/optout.

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "CGIDEV2 Italia" di Google Gruppi.
Per annullare l'iscrizione a questo argomento, visita https://groups.google.com/d/topic/cgidev2-italia/sg92wTHKCXs/unsubscribe.

Per annullare l'iscrizione a questo gruppo e a tutti i suoi argomenti, invia un'email a cgidev2-itali...@googlegroups.com.


Per altre opzioni visita https://groups.google.com/d/optout.

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "CGIDEV2 Italia" di Google Gruppi.

Per annullare l'iscrizione a questo gruppo e non ricevere più le sue email, invia un'email a cgidev2-itali...@googlegroups.com.


Per altre opzioni visita https://groups.google.com/d/optout.

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "CGIDEV2 Italia" di Google Gruppi.
Per annullare l'iscrizione a questo argomento, visita https://groups.google.com/d/topic/cgidev2-italia/sg92wTHKCXs/unsubscribe.

Per annullare l'iscrizione a questo gruppo e a tutti i suoi argomenti, invia un'email a cgidev2-itali...@googlegroups.com.


Per altre opzioni visita https://groups.google.com/d/optout.

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "CGIDEV2 Italia" di Google Gruppi.

Per annullare l'iscrizione a questo gruppo e non ricevere più le sue email, invia un'email a cgidev2-itali...@googlegroups.com.


Per altre opzioni visita https://groups.google.com/d/optout.

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "CGIDEV2 Italia" di Google Gruppi.
Per annullare l'iscrizione a questo argomento, visita https://groups.google.com/d/topic/cgidev2-italia/sg92wTHKCXs/unsubscribe.

Per annullare l'iscrizione a questo gruppo e a tutti i suoi argomenti, invia un'email a cgidev2-itali...@googlegroups.com.


Per altre opzioni visita https://groups.google.com/d/optout.

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "CGIDEV2 Italia" di Google Gruppi.

Per annullare l'iscrizione a questo gruppo e non ricevere più le sue email, invia un'email a cgidev2-itali...@googlegroups.com.

per...@easy400.net

unread,
Nov 17, 2017, 1:35:53 PM11/17/17
to cgidev2...@googlegroups.com

Davide,

 

ti sei ricordato di spedire il buffer di output con WRTSECTION(‘*fini’) prima di effettuare la RETURN?

Vedi pagina http://cgidev2.easy400.net/cgidev2o/debug.htm , 3- Error 500 trivial cases

Giovanni

 

De: cgidev2...@googlegroups.com [mailto:cgidev2...@googlegroups.com] Em nome de Davide
Enviada em: venerdì 17 novembre 2017 15:34
Para: cgidev2...@googlegroups.com
Assunto: Re: [CGIDEV2 Italia:281] Re: Primo Programma con CGIDEV2

 

Giovanni,

non sapendo con quale lista librerie accede il PGM ho aggiunto l'apertura manuale del file previa OVRDBF. 

Niente, mi da sempre l'errore 500.

Il programma di per sè è semplice, così come l'html, anche se non sono granchè ferrato su quest'ultimo. 

Provo a postarli entrambi, magari salta all'occhio qualcosa che non vedo. 

 

Il giorno 17 novembre 2017 11:46, Davide <davide....@gmail.com> ha scritto:

Avevo modificato il valore dell'area dati CGIDEBUG impostandola = '1' perchè il comando CGIDEBUG Mi dava Debug Off. 

Riprovando però, i file non vengono alimentati. 

Ho un dubbio, nel programma io vado a reperire dei dati da un file, con quale utente e/o lista librerie viene richiamato il programma dal browser? 

Il giorno 17 novembre 2017 11:39, <per...@easy400.net> ha scritto:

Prova a togliere il controllo sull’indicatore NoErrors e vediamo che cosa succede.

 

Per annullare l'iscrizione a questo gruppo e a tutti i suoi argomenti, invia un'email a cgidev2-itali...@googlegroups.com.


Per altre opzioni visita https://groups.google.com/d/optout.

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "CGIDEV2 Italia" di Google Gruppi.

Per annullare l'iscrizione a questo gruppo e non ricevere più le sue email, invia un'email a cgidev2-itali...@googlegroups.com.


Per altre opzioni visita https://groups.google.com/d/optout.

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "CGIDEV2 Italia" di Google Gruppi.
Per annullare l'iscrizione a questo argomento, visita https://groups.google.com/d/topic/cgidev2-italia/sg92wTHKCXs/unsubscribe.

Per annullare l'iscrizione a questo gruppo e a tutti i suoi argomenti, invia un'email a cgidev2-itali...@googlegroups.com.


Per altre opzioni visita https://groups.google.com/d/optout.

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "CGIDEV2 Italia" di Google Gruppi.

Per annullare l'iscrizione a questo gruppo e non ricevere più le sue email, invia un'email a cgidev2-itali...@googlegroups.com.


Per altre opzioni visita https://groups.google.com/d/optout.

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "CGIDEV2 Italia" di Google Gruppi.
Per annullare l'iscrizione a questo argomento, visita https://groups.google.com/d/topic/cgidev2-italia/sg92wTHKCXs/unsubscribe.

Per annullare l'iscrizione a questo gruppo e a tutti i suoi argomenti, invia un'email a cgidev2-itali...@googlegroups.com.


Per altre opzioni visita https://groups.google.com/d/optout.

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "CGIDEV2 Italia" di Google Gruppi.

Per annullare l'iscrizione a questo gruppo e non ricevere più le sue email, invia un'email a cgidev2-itali...@googlegroups.com.


Per altre opzioni visita https://groups.google.com/d/optout.

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "CGIDEV2 Italia" di Google Gruppi.
Per annullare l'iscrizione a questo argomento, visita https://groups.google.com/d/topic/cgidev2-italia/sg92wTHKCXs/unsubscribe.

Per annullare l'iscrizione a questo gruppo e a tutti i suoi argomenti, invia un'email a cgidev2-itali...@googlegroups.com.


Per altre opzioni visita https://groups.google.com/d/optout.

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "CGIDEV2 Italia" di Google Gruppi.

Per annullare l'iscrizione a questo gruppo e non ricevere più le sue email, invia un'email a cgidev2-itali...@googlegroups.com.


Per altre opzioni visita https://groups.google.com/d/optout.

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "CGIDEV2 Italia" di Google Gruppi.
Per annullare l'iscrizione a questo argomento, visita https://groups.google.com/d/topic/cgidev2-italia/sg92wTHKCXs/unsubscribe.

Per annullare l'iscrizione a questo gruppo e a tutti i suoi argomenti, invia un'email a cgidev2-itali...@googlegroups.com.


Per altre opzioni visita https://groups.google.com/d/optout.

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "CGIDEV2 Italia" di Google Gruppi.

Per annullare l'iscrizione a questo gruppo e non ricevere più le sue email, invia un'email a cgidev2-itali...@googlegroups.com.

Davide

unread,
Nov 27, 2017, 4:47:27 AM11/27/17
to cgidev2...@googlegroups.com
Buongiorno a tutti, 
Giovanni, ho risolto i problemi ed ora riesco ad emettere l'html che volevo. 
Sono partito dal tool sussidev2/pgm2 adattandolo alle mie esigenze. 
Il risultato è ottimo. 
Ora devo lavorare sulla grafica e sul reperimento di altri valori.
A tal proposito Giovanni, vorrei sapere se è possibile utilizzare un programma SQL che mi tornerebbe molto più comodo per le mie esigenze.
Ho provato a convertirlo ma incontro problemi già in compilazione con le direttive di BINDING inserite nella scheda H e poi c'è il discorso dei Gruppi di attivazione che, in caso di programma SQL non si possono specificare in fase di compilazione.
Avete già incontrato questo problema?

Grazie comunque per il preziosissimo supporto
Davide 

Per annullare l'iscrizione a questo gruppo e a tutti i suoi argomenti, invia un'email a cgidev2-italia+unsubscribe@googlegroups.com.


Per altre opzioni visita https://groups.google.com/d/optout.

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "CGIDEV2 Italia" di Google Gruppi.

Per annullare l'iscrizione a questo gruppo e non ricevere più le sue email, invia un'email a cgidev2-italia+unsubscribe@googlegroups.com.


Per altre opzioni visita https://groups.google.com/d/optout.

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "CGIDEV2 Italia" di Google Gruppi.
Per annullare l'iscrizione a questo argomento, visita https://groups.google.com/d/topic/cgidev2-italia/sg92wTHKCXs/unsubscribe.

Per annullare l'iscrizione a questo gruppo e a tutti i suoi argomenti, invia un'email a cgidev2-italia+unsubscribe@googlegroups.com.


Per altre opzioni visita https://groups.google.com/d/optout.

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "CGIDEV2 Italia" di Google Gruppi.

Per annullare l'iscrizione a questo gruppo e non ricevere più le sue email, invia un'email a cgidev2-italia+unsubscribe@googlegroups.com.


Per altre opzioni visita https://groups.google.com/d/optout.

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "CGIDEV2 Italia" di Google Gruppi.
Per annullare l'iscrizione a questo argomento, visita https://groups.google.com/d/topic/cgidev2-italia/sg92wTHKCXs/unsubscribe.

Per annullare l'iscrizione a questo gruppo e a tutti i suoi argomenti, invia un'email a cgidev2-italia+unsubscribe@googlegroups.com.


Per altre opzioni visita https://groups.google.com/d/optout.

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "CGIDEV2 Italia" di Google Gruppi.

Per annullare l'iscrizione a questo gruppo e non ricevere più le sue email, invia un'email a cgidev2-italia+unsubscribe@googlegroups.com.


Per altre opzioni visita https://groups.google.com/d/optout.

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "CGIDEV2 Italia" di Google Gruppi.
Per annullare l'iscrizione a questo argomento, visita https://groups.google.com/d/topic/cgidev2-italia/sg92wTHKCXs/unsubscribe.

Per annullare l'iscrizione a questo gruppo e a tutti i suoi argomenti, invia un'email a cgidev2-italia+unsubscribe@googlegroups.com.


Per altre opzioni visita https://groups.google.com/d/optout.

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "CGIDEV2 Italia" di Google Gruppi.

Per annullare l'iscrizione a questo gruppo e non ricevere più le sue email, invia un'email a cgidev2-italia+unsubscribe@googlegroups.com.


Per altre opzioni visita https://groups.google.com/d/optout.

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "CGIDEV2 Italia" di Google Gruppi.
Per annullare l'iscrizione a questo argomento, visita https://groups.google.com/d/topic/cgidev2-italia/sg92wTHKCXs/unsubscribe.

Per annullare l'iscrizione a questo gruppo e a tutti i suoi argomenti, invia un'email a cgidev2-italia+unsubscribe@googlegroups.com.


Per altre opzioni visita https://groups.google.com/d/optout.

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "CGIDEV2 Italia" di Google Gruppi.

Per annullare l'iscrizione a questo gruppo e non ricevere più le sue email, invia un'email a cgidev2-italia+unsubscribe@googlegroups.com.


Per altre opzioni visita https://groups.google.com/d/optout.

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "CGIDEV2 Italia" di Google Gruppi.
Per annullare l'iscrizione a questo argomento, visita https://groups.google.com/d/topic/cgidev2-italia/sg92wTHKCXs/unsubscribe.
Per annullare l'iscrizione a questo gruppo e a tutti i suoi argomenti, invia un'email a cgidev2-italia+unsubscribe@googlegroups.com.

Antonio Ventriglia

unread,
Nov 27, 2017, 5:01:49 AM11/27/17
to cgidev2...@googlegroups.com
Ciao Davide,
io faccio cosi... Nella parte dichiarativa tolgo il primo copy e metto le dichiarazioni. Ad esempio per il mio programma hinventa (c’è anche il comando  CRT...  per compilare il programma) faccio:
* CRTSQLRPGI OBJ(CENTAUR2/HINVENTA)                                          
* SRCFILE(CENTAUR2/QRPGLESRCP) SRCMBR(HINVENTA) RPGPPOPT(*LVL2)              
*********************************************************************        
Hcopyright('xxxxxxxxxxxxxx')                                            
Hoptimize(*NONE)                                                              
HDECEDIT('0.')                                                                
Htruncnbr(*NO)                                                                
hDFTACTGRP(*NO)                                                               
Hoption(*srcstmt : *nodebugio)                                                
/copy CENTAUR2/qrpglesrc,hspecsbnd                                           
* files details                                                              
FLGRPART4  if   e           K DISK    USROPN                                  
 
From: Davide
Sent: Monday, November 27, 2017 10:47 AM
Per annullare l'iscrizione a questo gruppo e non ricevere più le sue email, invia un'email a cgidev2-itali...@googlegroups.com.

Davide

unread,
Nov 27, 2017, 7:20:48 AM11/27/17
to cgidev2...@googlegroups.com
Grazie Antonio, 
Funziona. 
Oggi proseguo a implementare il programma. 
Ho una domanda sul file css, se ne vengo fuori bene sennò vi disturbo ancora. 
Grazie

Davide

unread,
Nov 27, 2017, 8:24:33 AM11/27/17
to cgidev2...@googlegroups.com
Se ho una data Area da leggere a programma, come gli specifico la libreria dove è residente? 
Con i file faccio un ovrdbf ma l'area dati? 
Devo mettere la libreria nella lista librerie della jobd? 

Antonio Ventriglia

unread,
Nov 27, 2017, 8:30:45 AM11/27/17
to cgidev2...@googlegroups.com
Davide,
è un programma rpg a tutti gli effetti.
se proprio non vuoi fare cose “strane” chiama un cl (li la puoi mettere la libr) che ti legge l’area dati, o che ti aggiusta la lista delle libr e poi leggi l’area dati a programma.
 
From: Davide
Sent: Monday, November 27, 2017 2:24 PM
Per annullare l'iscrizione a questo gruppo e non ricevere più le sue email, invia un'email a cgidev2-itali...@googlegroups.com.

Davide

unread,
Nov 27, 2017, 11:56:21 AM11/27/17
to cgidev2...@googlegroups.com
Grazie davvero Antonio, funziona tutto 
ho fatto una routine di inizializzazione che fa il setup dell'ambiente prima di ogni altra cosa. Tutto ok.
Ora la cosa si fa interessante. 
Introdurrò una combo box per "navigare" tra mesi diversi ed avere i relativi dati di riferimento. 
La cosa che vedo più complicata è rendere l'interfaccia davvero accattivante, non so se ci si possa arrivare scrivendo HTML a mano affidandosi ai CSS. 

Tu la gestisci così l'interfaccia nel browser? 

 

Antonio Ventriglia

unread,
Nov 27, 2017, 12:38:04 PM11/27/17
to cgidev2...@googlegroups.com
Ciao Davide,
dipende da cosa vuoi fare. Considera che la parte della programmazione, a mio modo di vedere, è la parte piu semplice.
Per la grafica, io li scrivo a mano (Perotti docet), ma il problema non è come scriverli ma cosa scrivere e anche in questo caso conviene affidarsi a mani esperte.
Quindi se sono pagine senza grandi ambizioni, ti guardi un po di esempi su internet ed hai fatto, se invece si tratta di un grosso progetto allora la cosa cambia.
Per annullare l'iscrizione a questo gruppo e non ricevere più le sue email, invia un'email a cgidev2-itali...@googlegroups.com.

lampo

unread,
Nov 28, 2017, 4:15:27 AM11/28/17
to CGIDEV2 Italia
Ciao Davide,
 per la lista delle librerie puoi usare la direttiva SetEnv, per la scrittura dell'html anche io ho iniziato a mano, ma visti i tempi per la realizzazione dei progetti sempre (per ieri) e se vuoi un risultato accattivante, ho sei esperto html,css,javascript oppure devi usare un tool.




 

Il giorno 16 novembre 2017 18:02, <gb_perotti@ea

Davide

unread,
Nov 28, 2017, 8:20:07 AM11/28/17
to cgidev2...@googlegroups.com
Grazie Antoni e Lampo per il supporto.
Ho preso spunto da una semplice pagina html (http://www.marchettidesign.net/demo/pagina-web-html-css/) che già potrebbe andarmi bene, per poi completarla aggiungendo le Section che il programma scrive nell'html 
Ho provato ad aprirla dal browser e vedo l'esempio nella foto qui sotto, con le variabili giustamente non compilate ma la pagina mi funziona.

Eseguito invece dal programma RPG, mi restituisce il codice 500. 
Sono andato nel file CGIDEBUG che allego alla mail, ma non ho trovato messaggi di errore che mi possano aiutare a capire dov'è l'errore.

Suggerimenti?

Immagine incorporata 1 

--
cgidebug.txt

per...@easy400.net

unread,
Nov 28, 2017, 8:53:33 AM11/28/17
to cgidev2...@googlegroups.com

L’errore http 500 ha note motivazioni.

Ti ho già detto a quale pagina della documentazione di CGIDEV2 ti devi riferire. Rileggila tre volte al giorno: questa è la prescrizione per tutti i principianti.

Da quanto racconti, è probabile che tu abbia dimenticati di inserire in test la http-header

Content-type: text/html

Seguita da una riga vuota.

 

Prima o poi questo diventerà una abitudine.

 

Buon lavoro,

 

Giovanni

De: cgidev2...@googlegroups.com [mailto:cgidev2...@googlegroups.com] Em nome de Davide
Enviada em: venerdì 17 novembre 2017 15:34
Para: cgidev2...@googlegroups.com
Assunto: Re: [CGIDEV2 Italia:281] Re: Primo Programma con CGIDEV2

 

Giovanni,

non sapendo con quale lista librerie accede il PGM ho aggiunto l'apertura manuale del file previa OVRDBF.

Niente, mi da sempre l'errore 500.

Il programma di per sè è semplice, così come l'html, anche se non sono granchè ferrato su quest'ultimo.

Provo a postarli entrambi, magari salta all'occhio qualcosa che non vedo.

 

Il giorno 17 novembre 2017 11:46, Davide <davide....@gmail.com> ha scritto:

Avevo modificato il valore dell'area dati CGIDEBUG impostandola = '1' perchè il comando CGIDEBUG Mi dava Debug Off.

Riprovando però, i file non vengono alimentati.

Ho un dubbio, nel programma io vado a reperire dei dati da un file, con quale utente e/o lista librerie viene richiamato il programma dal browser?

Il giorno 17 novembre 2017 11:39, <per...@easy400.net> ha scritto:

Prova a togliere il controllo sull’indicatore NoErrors e vediamo che cosa succede.

 

--

Per annullare l'iscrizione a questo gruppo e a tutti i suoi argomenti, invia un'email a cgidev2-itali...@googlegroups.com.


Per altre opzioni visita https://groups.google.com/d/optout.

 

--

Hai ricevuto questo messaggio perché sei iscritto al gruppo "CGIDEV2 Italia" di Google Gruppi.

Per annullare l'iscrizione a questo gruppo e non ricevere più le sue email, invia un'email a cgidev2-itali...@googlegroups.com.

image002.jpg

Davide

unread,
Nov 28, 2017, 8:57:40 AM11/28/17
to cgidev2...@googlegroups.com
Grazie Giovanni, 
era quello il problema. 
Nel caso di problemi, faccio riferimento alla guida. 
Buona giornata 
Davide 

Subject: Re: [CGIDEV2 Italia:289] Re: Primo Programma con CGIDEV2

Grazie davvero Antonio, funziona tutto 

ho fatto una routine di inizializzazione che fa il setup dell'ambiente prima di ogni altra cosa. Tutto ok.

Ora la cosa si fa interessante.

Introdurrò una combo box per "navigare" tra mesi diversi ed avere i relativi dati di riferimento.

La cosa che vedo più complicata è rendere l'interfaccia davvero accattivante, non so se ci si possa arrivare scrivendo HTML a mano affidandosi ai CSS.

 

Tu la gestisci così l'interfaccia nel browser?

 


 

Il giorno 27 novembre 2017 14:30, Antonio Ventriglia <ventrigli...@cisweb.it> ha scritto:

Davide,

è un programma rpg a tutti gli effetti.

se proprio non vuoi fare cose “strane” chiama un cl (li la puoi mettere la libr) che ti legge l’area dati, o che ti aggiusta la lista delle libr e poi leggi l’area dati a programma.

From: Davide

Sent: Monday, November 27, 2017 2:24 PM

Subject: Re: [CGIDEV2 Italia:287] Re: Primo Programma con CGIDEV2

Se ho una data Area da leggere a programma, come gli specifico la libreria dove è residente? 

Con i file faccio un ovrdbf ma l'area dati?

Devo mettere la libreria nella lista librerie della jobd?

Il giorno 27 novembre 2017 11:01, Antonio Ventriglia <ventrigli...@cisweb.it> ha scritto:

Ciao Davide,

io faccio cosi... Nella parte dichiarativa tolgo il primo copy e metto le dichiarazioni. Ad esempio per il mio programma hinventa (c’è anche il comando  CRT...  per compilare il programma) faccio:

* CRTSQLRPGI OBJ(CENTAUR2/HINVENTA)                                          

* SRCFILE(CENTAUR2/QRPGLESRCP) SRCMBR(HINVENTA) RPGPPOPT(*LVL2)              

*********************************************************************        

Hcopyright('xxxxxxxxxxxxxx')                                            

Hoptimize(*NONE)                                                              

HDECEDIT('0.')                                                                

Htruncnbr(*NO)                                                                

hDFTACTGRP(*NO)                                                               

Hoption(*srcstmt : *nodebugio)                                                

/copy CENTAUR2/qrpglesrc,hspecsbnd                                           

* files details                                                              

FLGRPART4  if   e           K DISK    USROPN                                  

From: Davide

Sent: Monday, November 27, 2017 10:47 AM

--

Per annullare l'iscrizione a questo gruppo e a tutti i suoi argomenti, invia un'email a cgidev2-italia+unsubscribe@googlegroups.com.


Per altre opzioni visita https://groups.google.com/d/optout.

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "CGIDEV2 Italia" di Google Gruppi.
Per annullare l'iscrizione a questo gruppo e non ricevere più le sue email, invia un'email a cgidev2-italia+unsubscribe@googlegroups.com.

Per altre opzioni visita https://groups.google.com/d/optout.

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "CGIDEV2 Italia" di Google Gruppi.
Per annullare l'iscrizione a questo argomento, visita https://groups.google.com/d/topic/cgidev2-italia/sg92wTHKCXs/unsubscribe.
Per annullare l'iscrizione a questo gruppo e a tutti i suoi argomenti, invia un'email a cgidev2-italia+unsubscribe@googlegroups.com.

Davide

unread,
Nov 29, 2017, 6:38:20 AM11/29/17
to cgidev2...@googlegroups.com
Buongiorno a tutti, 
il progetto sta venendo davvero bene e completo e mi sta aprendo un mondo. 
Uso programmi SQL e i tempi di risposta sono ottimi. 

Ringrazio Giovanni del lavoro fatto per permettere tutto questo e ringrazio voi del supporto. 

Avrei una domanda riguardante la possibilità di controllare l'emissione delle pagine in base alle autorizzazioni.
Mi spiego:
Ho creato una pagina Dasboard con i dati di vendita dell'azienda.
Nella navigation bar della pagina ci sono tre link: Home, Magazzino e Finance. 
Vorrei ad esempio che il link Finance venisse visualizzato solo per determinati utenti e non per tutti.
A programma non posso usare la variabile utente della SDS perchè ovviamente mi restituisce sempre QTMHHTTP. 

Potrei richiedere una login all'AS400 dal browser? 
Ma come autenticare però i dati inseriti? 




Subject: Re: [CGIDEV2 Italia:289] Re: Primo Programma con CGIDEV2

Grazie davvero Antonio, funziona tutto 

ho fatto una routine di inizializzazione che fa il setup dell'ambiente prima di ogni altra cosa. Tutto ok.

Ora la cosa si fa interessante.

Introdurrò una combo box per "navigare" tra mesi diversi ed avere i relativi dati di riferimento.

La cosa che vedo più complicata è rendere l'interfaccia davvero accattivante, non so se ci si possa arrivare scrivendo HTML a mano affidandosi ai CSS.

 

Tu la gestisci così l'interfaccia nel browser?

 


 

Il giorno 27 novembre 2017 14:30, Antonio Ventriglia <ventrigli...@cisweb.it> ha scritto:

Davide,

è un programma rpg a tutti gli effetti.

se proprio non vuoi fare cose “strane” chiama un cl (li la puoi mettere la libr) che ti legge l’area dati, o che ti aggiusta la lista delle libr e poi leggi l’area dati a programma.

From: Davide

Sent: Monday, November 27, 2017 2:24 PM

Subject: Re: [CGIDEV2 Italia:287] Re: Primo Programma con CGIDEV2

Se ho una data Area da leggere a programma, come gli specifico la libreria dove è residente? 

Con i file faccio un ovrdbf ma l'area dati?

Devo mettere la libreria nella lista librerie della jobd?

Il giorno 27 novembre 2017 11:01, Antonio Ventriglia <ventrigli...@cisweb.it> ha scritto:

Ciao Davide,

io faccio cosi... Nella parte dichiarativa tolgo il primo copy e metto le dichiarazioni. Ad esempio per il mio programma hinventa (c’è anche il comando  CRT...  per compilare il programma) faccio:

* CRTSQLRPGI OBJ(CENTAUR2/HINVENTA)                                          

* SRCFILE(CENTAUR2/QRPGLESRCP) SRCMBR(HINVENTA) RPGPPOPT(*LVL2)              

*********************************************************************        

Hcopyright('xxxxxxxxxxxxxx')                                            

Hoptimize(*NONE)                                                              

HDECEDIT('0.')                                                                

Htruncnbr(*NO)                                                                

hDFTACTGRP(*NO)                                                               

Hoption(*srcstmt : *nodebugio)                                                

/copy CENTAUR2/qrpglesrc,hspecsbnd                                           

* files details                                                              

FLGRPART4  if   e           K DISK    USROPN                                  

From: Davide

Sent: Monday, November 27, 2017 10:47 AM

lampo

unread,
Nov 29, 2017, 8:20:45 AM11/29/17
to CGIDEV2 Italia
Ciao per l'autentica dal browser devi mettere la direttiva sotto, utilizza l'autenticazione di as400 (gestione utenti)
per gli utenti (se utilizzi l'autentica AS400) utilizzo questo metodo:
a programma usando queste variabili  psdsjobnam, psdsusrnam, psdsjobnbr  ti ritorna il nome del lavoro, user, e numero
importante per capire quale è il lavoro in esecuzione (esempio x debug)
oppure UDuser=getenv('REMOTE_USER':qusec)

<location />                    
authname intranet_xxxxxx          
authtype basic                  
UserID %%CLIENT%%               
PasswdFile %%SYSTEM%%           
Require valid-user              
</location>                     

Buon Lavoro

per...@easy400.net

unread,
Nov 29, 2017, 8:48:50 AM11/29/17
to cgidev2...@googlegroups.com

Come personalizzare la risposta WEB a seconda dell’user profile loggato:

 

1-      Prima di tutto devi immettere delle direttive http di questo tipo (dove xxx è il nome della tua libreria dei programmi CGI):

<LocationMatch ^/xxxp/(.*)$ >

AuthType Basic

AuthName “…tua dicitura…”

PasswdFile %%SYSTEM%%

UserID %%CLIENT%%

Require valid-user

</LocationMatch>

In questo modo, per poter accedere a qualunque programma nella tua libreria, il browser chiederà che vengano specificati il nome di un profilo utente e la sua password.

2-      I tuoi programmi CGI dovranno poi trovare il nome del CURRENT user profile . Questo si recupera dalla PSDS, vedi mbr VARIABLES3 in CGIDEV2/QRPGLESRC.

 

Giovanni

 

 

De: cgidev2...@googlegroups.com [mailto:cgidev2...@googlegroups.com] Em nome de Davide
Enviada em: mercoledì 29 novembre 2017 12:38
Para: cgidev2...@googlegroups.com
Assunto: Re: [CGIDEV2 Italia:295] Re: Primo Programma con CGIDEV2

 

Buongiorno a tutti, 

il progetto sta venendo davvero bene e completo e mi sta aprendo un mondo. 

De: cgidev2...@googlegroups.com [mailto:cgidev2...@googlegroups.com] Em nome de Davide
Enviada em: venerdì 17 novembre 2017 15:34
Para: cgidev2...@googlegroups.com
Assunto: Re: [CGIDEV2 Italia:281] Re: Primo Programma con CGIDEV2

 

Giovanni,

non sapendo con quale lista librerie accede il PGM ho aggiunto l'apertura manuale del file previa OVRDBF.

Niente, mi da sempre l'errore 500.

Il programma di per sè è semplice, così come l'html, anche se non sono granchè ferrato su quest'ultimo.

Provo a postarli entrambi, magari salta all'occhio qualcosa che non vedo.

 

Il giorno 17 novembre 2017 11:46, Davide <davide....@gmail.com> ha scritto:

Avevo modificato il valore dell'area dati CGIDEBUG impostandola = '1' perchè il comando CGIDEBUG Mi dava Debug Off.

Riprovando però, i file non vengono alimentati.

Ho un dubbio, nel programma io vado a reperire dei dati da un file, con quale utente e/o lista librerie viene richiamato il programma dal browser?

Il giorno 17 novembre 2017 11:39, <per...@easy400.net> ha scritto:

Prova a togliere il controllo sull’indicatore NoErrors e vediamo che cosa succede.

 

--

Per annullare l'iscrizione a questo gruppo e a tutti i suoi argomenti, invia un'email a cgidev2-itali...@googlegroups.com.


Per altre opzioni visita https://groups.google.com/d/optout.

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "CGIDEV2 Italia" di Google Gruppi.

Per annullare l'iscrizione a questo gruppo e non ricevere più le sue email, invia un'email a cgidev2-itali...@googlegroups.com.


Per altre opzioni visita https://groups.google.com/d/optout.

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "CGIDEV2 Italia" di Google Gruppi.
Per annullare l'iscrizione a questo argomento, visita https://groups.google.com/d/topic/cgidev2-italia/sg92wTHKCXs/unsubscribe.

Per annullare l'iscrizione a questo gruppo e a tutti i suoi argomenti, invia un'email a cgidev2-itali...@googlegroups.com.


Per altre opzioni visita https://groups.google.com/d/optout.

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "CGIDEV2 Italia" di Google Gruppi.

Per annullare l'iscrizione a questo gruppo e non ricevere più le sue email, invia un'email a cgidev2-itali...@googlegroups.com.

image001.jpg

Davide

unread,
Nov 29, 2017, 9:02:04 AM11/29/17
to cgidev2...@googlegroups.com
Grazie Lampo,
perdonami perchè non sono ancora così ferrato sull'argomento: 
Ricapitolo:

Nella direttiva HTTP che utilizzo aggiungo questo segmento: 

<location />                    
authname intranet_xxxxxx          
authtype basic                  
UserID %%CLIENT%%               
PasswdFile %%SYSTEM%%           
Require valid-user              
</location>    

ma la prima voce authname intranet come va completata? 

Nel programma è sufficiente usare Utente=getenv('REMOTE_USER':qusec) per avere, nella variabile utente, il nome dello usr che si è autenticato?? 



--

Davide

unread,
Nov 29, 2017, 9:39:55 AM11/29/17
to cgidev2...@googlegroups.com
Perfetto. 
Funziona. 
Grazie Giovanni, Lampo....
Davide

Davide

unread,
Dec 6, 2017, 11:38:58 AM12/6/17
to cgidev2...@googlegroups.com
Ciao a tutti, 
sto installando la libreria GRAPHIT perchè vorrei visualizzare negli HTML da AS anche qualche grafico. 
Durante la procedura di installazione mi da un errore sulla compilazione di EMBEDGRAPH:

Compilation stopped. Severity 30 errors found in program.              

Compilation failed. Program EMBEDGRAPH not created in library GRAPHIT. 

Function check. RNS9310 unmonitored by COMPILE at statement 0000035600,

  instruction X'0000'.                                                 

Program EMBEDGRAPH not created.   


Ho provato a compilarlo dal PDM aggiungendo la lista librerie ma mi da 3 errori 30 per file che non trova nella qtemp quindi presumo non sia la procedura corretta da fare.

Qualcuno ha già riscontrato questo problema??

 

lampo

unread,
Dec 7, 2017, 8:34:01 AM12/7/17
to CGIDEV2 Italia
Ciao Davide, per i grafici io utilizzo le api di google chart, qui puoi vedere alcuni esempi, https://developers.google.com/chart/

                                                                                   <span style="color:

Davide

unread,
Dec 7, 2017, 11:24:57 AM12/7/17
to cgidev2-italia
Grazie Lampo, ci proverò al rientro in ufficio. 
Buon weekend 


--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "CGIDEV2 Italia" di Google Gruppi.
Per annullare l'iscrizione a questo argomento, visita https://groups.google.com/d/topic/cgidev2-italia/sg92wTHKCXs/unsubscribe.
Per annullare l'iscrizione a questo gruppo e a tutti i suoi argomenti, invia un'email a cgidev2-itali...@googlegroups.com.

Davide

unread,
Dec 13, 2017, 6:18:27 AM12/13/17
to cgidev2-italia
Ciao, 
i grafici di Google funzionano molto bene.
Che voi sappiate, hanno qualche limitazione sul numero di chiamate???

--

Antonio Ventriglia

unread,
Dec 27, 2017, 12:37:13 PM12/27/17
to cgidev2...@googlegroups.com
Salve Dott.Perotti,
ho un pgm che mi va in errore sul copy del prolog3. Fermandolo in debug ho:
image
Facendo un dsppfm del file cgidebug ho:
image
Mi potrebbe aiutare?
image[5].png
image[4].png

gb_pe...@easy400.net

unread,
Dec 27, 2017, 12:45:12 PM12/27/17
to cgidev2...@googlegroups.com

Caro Ventriglia,

 

probabilmente Lei ha un programma A che effettua la GETINPUT (prolog3), dopo di che chiama il programma B che effettua anch’esso la GETINPUT.

Il programma B si pianta come da Lei descritto.

CAUSA: in una transazione CGI è consentita una sola GETINPUT.

 

Buone Feste!

 

G.B. Perotti

--

image001.png
image002.png

Antonio Ventriglia

unread,
Dec 27, 2017, 1:01:46 PM12/27/17
to cgidev2...@googlegroups.com
Buone feste anche a lei...
Non mi pare che sia questo il caso (almeno mi pare).
Il programma fa un export in csv di una griglia di articoli opportunamente modificati su una pagina http.
image
Questo lavoro lo fa l’utente fornitore per fornitore. Funziona per tutti i fornitori tranne che per uno che guarda caso è anche quello col numero di articoli maggiore.
Tenga presente che per evitare problemi sul numero di variabili, sulla pagina web c’è in js che mi riempie 15 variabili e le ricevo a pgm con delle variabili lunghe 20000.
Oltretutto il programma è questo:
image
Grazie ancora.
image[6].png
image[2].png
image001.png
image002.png

per...@easy400.net

unread,
Dec 27, 2017, 1:11:08 PM12/27/17
to cgidev2...@googlegroups.com

Per quel che ne so io, le specifiche di CGIDEV2 (http://cgidev2.easy400.net/cgidev2o/version2.htm ) dovrebbero supportare il Suo caso.

image001.png
image002.png
image003.png
image004.png

Antonio Ventriglia

unread,
Dec 28, 2017, 2:03:56 AM12/28/17
to cgidev2...@googlegroups.com
Buongiorno,
puo essere che è installata una versione vecchia di cgi? Come posso vederlo?
E mi saprebbe indicare un modo per risolvere il problema?
image001.png
image002.png
image003.png
image004.png

per...@easy400.net

unread,
Dec 28, 2017, 4:38:41 AM12/28/17
to cgidev2...@googlegroups.com

Versione CGIDEV2: immetter comando CGIDEV2/RELEASED. L’ultima versione porta la data November 01, 2017.

Analisi problema: si può fare solamente debug-gando il caso reale ed entrando con il debug nella esecuzione della procedura zhbgetinput() .

 

Giovanni

image001.png
image002.png
image003.png
image004.png

Antonio Ventriglia

unread,
Dec 28, 2017, 7:19:03 AM12/28/17
to cgidev2...@googlegroups.com
Salve,
ho fatto come lei suggeriva. Il programma va in errore nel punto evidenziato:
image
con il valore:
image
image
image[3].png
image[5].png
image[1].png
image001.png
image002.png
image003.png
image004.png

per...@easy400.net

unread,
Dec 28, 2017, 8:14:57 AM12/28/17
to cgidev2...@googlegroups.com

Ho qualche difficoltà a leggere le schermate inviate: i caratteri sono pressoché indecifrabili.

Mi sembra tuttavia che il codice di errore sia CPF3C17 (Error occurred with input data parameter).

Se è così’, può essere che una variabile di input, attesa in caratteri, si presenti in modo indecifrabile.

 

Siamo sicuri che nelle direttive http dell’stanza sia stato specificato

                    CgiConvMode %%EBCDIC/EBCDIC%%

??????

image001.png
image002.png
image003.png
image004.png
image005.png
image006.png
image007.png

Antonio Ventriglia

unread,
Dec 28, 2017, 8:48:32 AM12/28/17
to cgidev2...@googlegroups.com
Ha ragione... non ci ho pensato ad ingrandire le img. Le rimando è in fondo c’è la prima videata dell’httpd.conf
image
image
image
Cmq nelle direttive c’è:
image[11].png
image006.png
image007.png
image[7].png
image[15].png
image[16].png
image001.png
image002.png
image003.png
image004.png
image005.png

per...@easy400.net

unread,
Dec 28, 2017, 9:13:34 AM12/28/17
to cgidev2...@googlegroups.com

Sembra tutto regolare. Non so che dire.

Bisognerebbe rifare girare il tutto aumentando ogni volta le variabili di input in gioco, sino a trovare quella che lo fa saltare. Non facile, credo.

 

Non ho altro da suggerire.

image001.png
image010.png
image011.png
image002.png
image003.png
image004.png
image005.png
image006.png
image007.png
image008.png
image009.png

Antonio Ventriglia

unread,
Dec 28, 2017, 9:18:20 AM12/28/17
to cgidev2...@googlegroups.com
La ringrazio per il tempo e la disponibilità.
image001.png
image010.png
image011.png
image002.png
image003.png
image004.png
image005.png
image006.png
image007.png
image008.png
image009.png

per...@easy400.net

unread,
Dec 28, 2017, 11:07:23 AM12/28/17
to cgidev2...@googlegroups.com

Dai dati in nostro possesso risulta che il Suo ultimo download di CGIDEV2 è datato 15 Giugno 2004.

 

L’elenco degli aggiornamenti di CGIDEV2 è alla pagina http://www.easy400.net/easy400sources/CGIDEV2/whatsnew/CGIDEV2.txt .

Da quella data sono stati apportati 93 aggiornamenti.

 

Che sia il caso di aggiornare il Suo CGIDEV2?

 

Giovanni B. Perotti

 

.

Antonio Ventriglia

unread,
Dec 28, 2017, 11:27:24 AM12/28/17
to cgidev2...@googlegroups.com
Salve dott.Perotti ma non li faccio solo io i download , ma siamo almeno in tre.
Ad ogni modo ho:
image
Devo aggiornare?
Sent: Thursday, December 28, 2017 5:07 PM
Subject: [CGIDEV2 Italia:315] CGIDEV2 di Antonio Ventriglia
 
--
image[6].png

per...@easy400.net

unread,
Dec 28, 2017, 12:12:49 PM12/28/17
to cgidev2...@googlegroups.com

Io mi terrei sempre aggiornato.

 

De: cgidev2...@googlegroups.com [mailto:cgidev2...@googlegroups.com] Em nome de Antonio Ventriglia


Enviada em: giovedì 28 dicembre 2017 17:27
Para: cgidev2...@googlegroups.com

image001.png

Davide

unread,
Feb 7, 2018, 11:14:40 AM2/7/18
to cgidev2-italia
Buongiorno a tutti, 
in merito allo sviluppo del mini sito interno con i dati di produzione, siamo praticamente alla fine, abbiamo scelto anche a quali Grafici affidarmi per l'esposizione grafica, utilizzeremo i C3js. 

Una delle cose che ancora mi manca è la creazione di un indirizzo semplice da ricordare da digitare sulla barra indirizzi del browser  (es: http://statistiche) che ridirezioni alla mia home page: 10.144.22.234:8014/itcgiobj/libr/dash.pgm 

Si può fare?? Devo modificare qualche setup nell'http su iseries? 
Grazie
Davide 

per...@easy400.net

unread,
Feb 7, 2018, 1:23:13 PM2/7/18
to cgidev2...@googlegroups.com

Al file di configurazione della tua istanza http aggiungi una direttiva Redirect

vedi pagina https://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzaie/rzaiemod_alias.htm#redirect

 

Giovanni

 

 

De: cgidev2...@googlegroups.com [mailto:cgidev2...@googlegroups.com] Em nome de Davide
Enviada em: mercoledì 7 febbraio 2018 17:15
Para: cgidev2-italia
Assunto: Re: [CGIDEV2 Italia:318] Re: Primo Programma con CGIDEV2

 

Buongiorno a tutti, 

in merito allo sviluppo del mini sito interno con i dati di produzione, siamo praticamente alla fine, abbiamo scelto anche a quali Grafici affidarmi per l'esposizione grafica, utilizzeremo i C3js. 

Davide

unread,
Feb 13, 2018, 12:09:14 PM2/13/18
to cgidev2-italia
Grazie Giovanni,
alla fine abbiamo optato per una diversa soluzione e cioè di mettere un alias a monte, a livello di rete in modo che tutti i device collegati al network, possano visualizzare 
le pagine delle statistiche. 
Grazie.
Davide

--
Reply all
Reply to author
Forward
0 new messages