El test(d) lo has de hacer a una numérica de 8,0 

 

D  fecha80        s              8  0 inz(*zeros)       

c                   move      '20180219'    fecha80     

c                   eval      *in51 =  *off                            

c     *ymd          test(d)                 fecha80                51  

 

un saludo

 

 

 


LogoElayFri

Vicente Aliaga
Director Informática

 

961 920 029

vali...@silomar.es

 


Silomar Elaborados y Distribución, SL & Silomar Frigoríficos, SL

Autovía A-3 Madrid-Valencia, km 345 • 46930 • QUART DE POBLET • Valencia •
www.silomar.es


P No lo imprima si no es necesario. Protejamos el medio ambiente.

Este mensaje y sus archivos adjuntos pueden contener información
confidencial y están dirigidos exclusivamente a su destinatario. Le
informamos que la legislación vigente prohíbe el uso, divulgación o copia
del contenido del presente mensaje por persona distinta del destinatario sin
autorización previa. Si Ud. no es el destinatario de este mensaje y lo ha
recibido por error le agradeceríamos que nos lo comunicara y que procediera
a destruirlo. This message can contain confidential information and is
directed exclusively to its adressee. We inform you that the legislation
prohibits to use, spreading or copy the content of the present message by
person different from the adressee without previous authorization. If you
are not the adressee of this message or you have received it by error we
would be thankful if you notify us and delete it.

 




 

De: forum.help400-boun...@listas.combios.es
[mailto:forum.help400-boun...@listas.combios.es] En nombre de Javier Baca
Enviado el: martes, 20 de febrero de 2018 7:45
Para: forum.help400@listas.combios.es
Asunto: Código de operación TEST()

 

Buenos días :

 

¿Alguien me podría decir por favor qué hago mal?

En el siguiente código ile rpg, TEST() siempre me devuelve que la fecha es
errónea.

 

h datedit(*ymd) datfmt(*iso)                         

 *                                                   

d fecha1          s              8a   inz('20180219')

d fecha2          s              8a   inz('20180230')

d werror          s              2a   inz('  ')      

 *                                                

c                   eval      werror='NO'         

c     *ymd          test(d)                 fecha1                 51

c                   if        *in51=*on           

c                   eval      werror='SI'         

c                   endif                         

 *                                                

c                   eval      werror='NO'         

c     *ymd          test(d)                 fecha1                 52

c                   if        *in52=*on           

c                   eval      werror='SI'         

c                   endif                         

 *                                                

c                   eval      *inlr=*on           

 

Saludos,

 

Javier

 

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

Responder a