h NoMain
     //_______________________________________________________________
     //    šCenter text.
     //    šReturns passed in text centered within size of field
     //    špassed in.
           //     Copyright 2009
     //    iPort Tech  www.iPortTech.com
     //_______________________________________________________________
     //ˆRevision Log
     //žDate       žProgrammer   žComment
 
     /Copy cpysrc,z_Center
 
     //_______________________________________________________________
    p z_Center        b                   Export
    d                 pi           256a
    d peString                     256a   Const
    d                                     Varying
    d peLength                       5u 0 Const
    d                                     Options(*NoPass)
 
    d StartPos        s              5i 0 Inz
    d wwLen           s              5i 0 Inz
    d retField        s            256a   Varying
 
     /Free
      If %Parms > 1;
        wwLen = peLength;
      Else;
        wwLen = %Len(peString);
      EndIf;
      retField = wwLen;
      StartPos = ((wwLen – %Len(%Trim(peString))) / 2) + 1;
      %SubSt(retField :StartPos) = %Trim(peString);
 
      Return retField;
     /End-Free

    p                 e 

Tags: ,