#file #sorting #mainframe #jcl #packed-decimal
Вопрос:
У меня есть файл vb длиной 2504. Мне нужно отсортировать поле (234,7) Объявление поля — S9(13) comp-3. Так как это файл vb, который мне понравился ниже.
//Sysin dd*
Sort fields= (238,7,pd,A)
/*
Но он неправильно сортируется .
Пожалуйста, помогите ..
Спасибо!!
Комментарии:
1. Первые 4 байта в записи в файле VB -это RDW (в основном длина записи). При сортировке вам нужно добавить 4 байта в начальные позиции. Если вы не разрешили использовать 4 байта, попробуйте
Sort fields=(2427,pd,A)
2. Спасибо, Брюс.. реальная длина моего поля-234.. Уже добавили 4 и попробовали
3. по памяти это позиция, за которой следует длина
4. Я предполагаю, что в вашем заявлении о сортировке есть некоторые опечатки , потому что DFSORT не примет ни пробел после
fields=
, ни строчный регистр. Если бы DFSORT не жаловался,FIELDS=(238,7,PD,A)
он определенно отсортировал бы упакованное десятичное поле. Не могли бы вы показать хотя бы данные одной входной записи в шестнадцатеричной системе счисления?5. Пожалуйста, повторите
JCL
пометку. Это не имеет никакого отношения кJCL
чему бы то ни было.