# System Functions

JST( ) | Justify String

## Format

JST(string$,len [, jstcode [$] ][,char$][,ERR=stmtref])
Where:

char$ | Optional string. Its first character is used to pad string$. If omitted, the default is to pad with blanks. String expression.
len | Desired length of string. Numeric expression.
jstcode | Optional numeric or string parameter defining how to justify the string:
| 0 or R | Right justify
| 1 or L | Left justify (Default)
| 2 or C | Centre in string
If omitted, the string is right justified.
stmtref | Program line number or statement label to which to transfer control.
string$ | String expression to be processed.

## Returns

The value of the string after applying the padding/truncation.

## Description

The JST( ) function converts a given character string (string$) to the length (len) specified. It makes the string the desired length either by truncating the string$ or by appending a defined pad character. The default is to pad with spaces.

If the length you specify is less than 0, PxPlus returns an Error #41: Invalid integer encountered (range error or non-integer).

(The JST( ) function was added in PxPlus v7.)

## See Also

PAD( ) Pad/Truncate String

## Example

The following code sample uses * (asterisks) to justify a numeric value to a length of 30 characters:

> chq_amt=1.98,cust_name$="ACME INC."
> chq_amt$="*****"+jst(str(chq_amt),30,"*")
> print 'CS',@(0,5),"Customer name :",jst(cust_name$,20),"| ",
> print @(0,6),chq_amt$

> ->run
> Customer name :ACME INC. |
> *****1.98**************************

This example illustrates the use of alpha-numeric versus numeric pad types in the JST( ) function:

> ! ^100 - PAD and JST functions
> Orig$="Test String",Char$=".",PadLen=20
> print 'LF',"Original String: "+@(24)+'BR'+Orig$+'ER'+'LF'
> Type=0,Type$="L";
> gosub JustifyIt;
> print
> Type=1,Type$="R";
> gosub JustifyIt;
> print
> Type=2,Type$="C";
> gosub JustifyIt
> stop
> !
> ! ^100
> JustifyIt:
> print "PAD(Orig$,"+str(PadLen)+","+quo+Type$+quo+","+quo+Char$+quo,
> print ") = "+@(24)+'BR'+pad(Orig$,PadLen,Type$,Char$)+'ER'
> print "JST(Orig$,"+str(PadLen)+","+quo+Type$+quo+","+quo+Char$+quo,
> print ") = "+@(24)+'BR'+jst(Orig$,PadLen,Type$,Char$)+'ER'
> return