Quizás te sirva este ejemplo:

 

Importante, maxdev en hoja f, indicadores de respuesta en write y read, en
el registro a mostrar INVITE y al compilar la pantalla WAITRCD que puede ser
*IMMED.

 

 

fpantalla  cf   e             workstn maxdev(*file)                         

C                   dou       *in03                                         

C                   write     registro                             77       

C                   read      pantalla                             8899     

c                   if        not(*in03)                                    

c                   eval      resul = dato * 2                              

c                   endif                                                   

C                   enddo                                                   

C                   eval      *inlr = *on          

 

 

A*%%                                                              

A                                      DSPSIZ(24 80 *DS3)           

A                                      CA03(03)                     

A          R REGISTRO                                               

A*%%       

A                                      INVITE                       

A                                  1 17'Hora:'                      

A                                  1 23TIME                         

A                                  3  1'Dato:'                      

A                                  4 23'F3'                         

A                                      DSPATR(HI)                   

A                                  4 26'Salir'                      

A            DATO           3Y 0B  3  9EDTCDE(4)                    

A                                  3 17'Dato x 2'                   

A            RESUL          5S 0O  3 26                                    

 

CHGDSPF FILE(PANTALLA) WAITRCD(2)    

 

 

From: [email protected]
[mailto:[email protected]] On Behalf Of Javier B.
Sent: miércoles, 06 de agosto de 2014 05:06 a.m.
To: Foro-Help400
Subject: Re: No me muestra registro de pantalla

 

Hola Juan Ramón  :

 

Rectifico, no es que no lo vea, me da los siguientes errores :

 

"Se ha producido un error de E/S permanente (C G S D F)."

"No se ha podido transmitir al dispositivo S1PC10. La sesión no está en
condición de envío."

 

Es un programa que carga un subfile (SFL) y por cada registro marcado, hará
una tarea.

En este momento ya conozco el nº de registros a leer (yy).

Por cada registro leído (xx) del SFL (o cada 100 registros), quiero mostrar
una ventana que ponga "Registro leído : xx de yy".

El SFL lo leo con CHAIN (READC no me vale porque quiero leer todos los
registros que tengan una "X", y esta "X" se puede escribir con el teclado o
mediante una tecla de función que pone "X" en todos los registros).

Y cuando quiero mostrar la ventana de "Registro leído...", lo hago con
WRITE.

 

Un saludo y gracias,

Javier

 


> 
> ------------------------------
> 
> Message: 2
> Date: Tue, 5 Aug 2014 12:11:47 +0200
> From: Juan Ramón Garcia <[email protected]>
> Subject: Re: No me muestra registro de pantalla
> To: "forum.help400" <[email protected]>
> Message-ID:
> <cabs2mgnwtmvvgkk3f162wyfia+lqff_yzz5_oa-z6pf75xw...@mail.gmail.com>
> Content-Type: text/plain; charset="utf-8"
> 
> Hola Javier:
> 
> Al crear el archivo de pantalla CRTDSPF ENHDSP(*YES) DFRWRT(*NO)
> También lo puedes hacer con CHGDSPF.
> 
> Un saludo.
> Juanra
> 
> 
> El 5 de agosto de 2014, 12:06, Javier B. <[email protected]> escribió:
> 
> > Buenas tardes :
> >
> > Estoy intentando poner en un programa que tarda mucho, el nº de registro
> > leído, para que el usuario tenga una idea de cuánto va a tardar el
proceso.
> > Lo que hago es que por cada 100 registros leídos, intento mostrar una
> > ventana del tipo "Registro leído : nn de nn".
> > Entonces lo que hago (utilizo RPG/400) es una 'WRITE registro', pero no
me
> > lo muestra.
> > Me suena que había alguna forma de forzar que visualice el contanido de
un
> > registro de pantalla aunque no se haga un EXFMT, ¿es posible?
> > He probado con KEEP (en la DDS de pantalla) y nada.
> >
> > ¿Me podéis ayudar por favor?
> > A parte de saber por qué no la muestra, ¿hay otra forma más eficaz de
> > conseguir lo mismo?
> >
> > Javier
> >

____________________________________________________
Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd )
Forum.Help400 © Publicaciones Help400, S.L.

Responder a