De:
Enviado el: viernes, 12 de mayo de 2006 9:46
Para: '[email protected]'
Asunto: RE: TRIM

Te envío el fuente de un procedimiento en RPG que te ajusta a la izquierda la cadena (quita los blancos por la izquierda) y te devuelve la longitud en 5 posiciones añadidas al final de la cadena.
 
De esta manera, llamándolo desde un CL con CALLPRC, pasándole la cadena y utilizando después una subserie de la cadena, desde la posición 1, con la longitud que te devuelve, tienes la cadena sin blancos por ninguno de los dos lados.
 
h nomain                                                              
 //                                                                   
 // @Trim - Devuelve una cadena ajustada a la izquierda y su longitud 
 //                                                                   
d @Trim           pr            55a                                   
d                               50a                                   
 // -------------------------------------------------------------------
 // Procedimiento de cálculo                                          
 // -------------------------------------------------------------------
p @Trim           b                   export                          
d @Trim           pi            55a                                   
d   Cadena                      50a                                   
d Resultado       s             55a   inz(*blank)                     
d Longitud        s              5p 0 inz(0)                          
 /free                                                                
    if Cadena=*blank;                        
      clear Cadena;                          
      clear Longitud;                        
    else;                                    
      Longitud=%len(%trim(Cadena));          
      Cadena=%trim(Cadena);                  
    endif;                                   
    Resultado=Cadena+%editc(Longitud:'X');   
    return Resultado;                        
 /end-free                                   
p @Trim           e                          
 
 
Saludos.
Juan Carlos.

Responder a