OK, you have to be careful with your terms. You don't want to sort the data, you want to extract the data which means a certain criteria.
data-to-search,1,lengthoffield1plusfive,SS
or
data-to-search,1,lengthoffield1plusfive
INCLUDE COND=(data-to-search,EQ,JP1)
or
INCLUDE COND=(data-to-search,SS,EQ,JP1)
Which are both the same as:
INCLUDE COND=(1,15,SS,EQ,JP1)
There's only one potential problem with this, and that is your data. I suggested using the length of the first part of the data plus five (the length you are matching to) for two reasons: avoiding a "false hit"; performance.
If it is possible that the data after the second field could match to something you want, then you should add the PARSE, temporarily include the PARSEd field on the record and use OUTFIL with INCLUDE= to filter further and BUILD to remove the parsed field.
The SS is a type which allows for a sub-string search.
You can specify it on the symbol, or leave the data-type off the symbol and specify it in the INCLUDE, whichever you and your colleagues feel is clearer.
You don't need any other code than the COPY and the INCLUDE.
For this task you don't need to use ICETOOL. SORT itself will be entirely sufficient. Just use the control cards you have in the USING file as your SORTIN.
Good to see you using symbols/SYMNAMES.