Настроить заголовок столбца CSV

Я пишу программу на COBOL, которая считывает данные из таблицы и выгружает их в файл CSV. Столбцы моих рабочих определений определены как (например) FACILITYCODE. Ниже приведены детали столбца:

Рабочая память: WS-FACILITYCODE PIC X(04) VALUE "XYZ".

Определение программы: MOVE WS-FACILITYCODE TO ABI-FACILITYCODE.

Когда моя программа написана, заголовок CSV выходит как «Facilitycode». Я хочу изменить это на "FACILITY_CODE"

Код, используемый для создания файла CSV PERFORM 800-WRITECSV-XYZINV.

Сопоставимым примером в мире SQL будет «AS».

Любые предложения, пожалуйста.

Благодарю вас!


person Shaji    schedule 05.05.2014    source источник
comment
Таблица означает что-то в COBOL. В этом ли смысле вы его используете? Или вы имеете в виду таблицу БД? Как вы создаете CSV? Вам нужно будет показать, как вы создаете CSV.   -  person Bill Woodger    schedule 05.05.2014
comment
Спасибо @BillWoodger. В этом случае, скажем, я пишу константу в файл CSV. Имя столбца моего рабочего магазина — это что-то; но я хочу, чтобы имя моего столбца CSV было другим. Я также запрашиваю данные из базы данных SQL, и мне трудно настроить заголовки столбцов CSV на основе моих спецификаций.   -  person Shaji    schedule 05.05.2014
comment
Можете ли вы отредактировать (ссылка под вашим вопросом) фактический код, который вы используете для создания CSV, в свой вопрос, пожалуйста.   -  person Bill Woodger    schedule 05.05.2014
comment
Хорошо, спасибо. Возможно, я был неясен. Где-то в вашей программе есть код для форматирования заголовка CSV и форматирования самого CSV. Знание того, было ли это что-то, упакованное Micro Focus, или самодельная процедура на вашем сайте, или же это зависит от всего кода, находящегося в вашей программе, дало бы нам некоторое представление о том, как ответить на ваш вопрос. Ну покажи код.   -  person Bill Woodger    schedule 06.05.2014
comment
Что делает 800-WRITECSV-XYZINV??? как/где пишется заголовок CSV   -  person Bruce Martin    schedule 06.05.2014


Ответы (1)


Как все говорят, нам нужно знать, что делает PERFORM 800-WRITECSV-XYZINV....

но я работал в аналогичном решении для записи файлов CSV

  *...
  *acces to you table and it fills the variables WS-A WS-B and WS-C

  *build heather
   STRING "A"  ","
          "B"  "," 
          "C"         DELIMITED BY SIZE
      INTO WS-LINE
   END-STRING

  * write header
   WRITE FILE  FROM WS-LINE
   ...

Затем для каждого файла из таблицы можно:

   INITIALIZE WS-LINE

  *build line whit the values
   STRING WS-A  ","
          WS-B  "," 
          WS-C         DELIMITED BY "SIZE" <-- it will print all spaces that each variable have 
      INTO WS-LINE
   END-STRING

  * write line
   WRITE FILE  FROM WS-LINE
   ...
person Sarabadu    schedule 15.05.2014