Я работаю на IBM I серии VR7 и работаю SQL (DB2) с использованием CLLE.
У меня есть SQL процедура в TXT-файле, имеющая приведенную ниже команду для создания таблицы в QTEMP.
create table qtemp.FILE1 as (
select
Field1,Field2,Field3,.....Field10 from FILE2 ) with data;
Я вызываю вышеуказанную процедуру из CLLE, используя следующую команду.
RUNSQLSTM SRCFILE(MyLib/MySrc) SRCMBR(Proc_txt) COMMIT(*NONE)
И затем запустить команду ниже для генерации спула.
RUNQRY QRYFILE((FILE1)) OUTTYPE(*PRINTER) OUTFORM(*DETAIL) FORMSIZE(60 132)
FORMTYPE(*STD) COPIES(1) LINESPACE(1)
Проблема, с которой я сталкиваюсь, заключается в том, что при создании я получаю 2 пробелы между столбцами таблица с помощью команды create table
. Когда эта таблица преобразуется в файл спула с помощью приведенной выше команды RUNQRY
, поля справа обрезаются, поскольку ширина моего отчета по умолчанию составляет 132 , и я не могу ее изменить. Если пробелы в созданной таблице можно уменьшить до 1 , моя проблема будет решена. SQL
Я использую IBM i Series по умолчанию и DB2
в качестве базы данных. Я не имею большого представления об их версии.
Edit2: Еще одна проблема, с которой я столкнулся, заключалась в том, что в поле во второй строке было сообщение. На самом деле согласно требованию поле должно быть во втором ряду под другим полем. Например, мне нужно field10 под field5. Я тоже это исправил, прочитайте мой ответ ниже. Надеюсь, что это помогает нуждающимся людям, но я действительно сомневаюсь.
Edit1: я обновил вопрос в соответствии с просьбой. Любая помощь приветствуется. Спасибо.