[Ora] query 2 excel
От: Funny Rabbit Россия  
Дата: 22.05.20 09:11
Оценка:
Как из произвольного запроса создать XLS файл. CSV делаю без проблем.
То что меня не убивает, делает меня умнее.
Re: [Ora] query 2 excel
От: Dym On Россия  
Дата: 22.05.20 09:21
Оценка: +2
Здравствуйте, Funny Rabbit, Вы писали:

FR>Как из произвольного запроса создать XLS файл. CSV делаю без проблем.

Из какой среды создать?

Проще всего открыть Excel, зайти на вкладку Data(Данные), создать Connection(Подключение), подрубиться к базе и вытащить запросом данные прямо в Excel.
Счастье — это Glück!
Re: [Ora] query 2 excel
От: wildwind Россия  
Дата: 22.05.20 09:26
Оценка: +1
Здравствуйте, Funny Rabbit, Вы писали:

FR>Как из произвольного запроса создать XLS файл. CSV делаю без проблем.


Excel открывает csv без проблем.
Re[2]: [Ora] query 2 excel
От: Funny Rabbit Россия  
Дата: 22.05.20 09:29
Оценка:
Здравствуйте, wildwind, Вы писали:

W>Здравствуйте, Funny Rabbit, Вы писали:


FR>>Как из произвольного запроса создать XLS файл. CSV делаю без проблем.


W>Excel открывает csv без проблем.


У меня задача запросом сформировать лоб и записать в файл в формате XLS. Надо чтобы файл был ХЛС.

if (length(p_NNN) < 3 or length(p_NNN) > 4) then
    p_exception(0, 'Êîä äîëæåí áûòü 3 èëè 4 çíàêà!');
    return;
  end if;

  v_filename := p_V || p_year || p_month || p_day || p_y || '.' || p_NNN ||
                file_ext;
  --p_exception(0,nIdent);

  for rec in (select rownum as nn,
                     a.ncompany as org_code,
                     (select distinct v.sagnpasstype_name
                        from V_AGNDOCUMS v
                       where v.NPRN = a.nrecipient) as doc_name,
                     (select distinct v.sdocser
                        from V_AGNDOCUMS v
                       where v.NPRN = a.nrecipient) as doc_ser,
                     (select distinct v.sdocnumb
                        from V_AGNDOCUMS v
                       where v.NPRN = a.nrecipient) as doc_numb,
                     (select distinct m.agnfamilyname
                        from V_AGNLIST M
                       where m.rn = a.nrecipient) as family_name,
                     (select distinct m.agnfirstname
                        from V_AGNLIST M
                       where m.rn = a.nrecipient) as first_name,
                     (select distinct m.agnlastname
                        from V_AGNLIST M
                       where m.rn = a.nrecipient) as last_name,
                     (select distinct vacc.agnacc
                        from V_AGNACC vacc
                       where vacc.AGNRN = a.nrecipient
                         and vacc.NACCESS_FLAG = 1) as agnacc,
                     a.ntransfsumm
                from V_SLTRANSFERS A, selectlist sl
               where sl.document = a.nrn
                 and sl.ident in (nIdent)   
               order by a.nyear, a.nmonth) loop
   
    clob_data := clob_data || rec.nn || delimiter || rec.org_code ||
                 delimiter || rec.doc_name || delimiter || rec.doc_ser ||
                 delimiter || rec.doc_numb || delimiter || rec.family_name ||
                 delimiter || rec.first_name || delimiter || rec.last_name ||
                 delimiter || rec.agnacc || delimiter || rec.ntransfsumm ||
                 delimiter || clr;
  end loop;
То что меня не убивает, делает меня умнее.
Re[2]: [Ora] query 2 excel
От: Funny Rabbit Россия  
Дата: 22.05.20 09:43
Оценка:
Здравствуйте, Dym On, Вы писали:

DO>Здравствуйте, Funny Rabbit, Вы писали:


FR>>Как из произвольного запроса создать XLS файл. CSV делаю без проблем.

DO>Из какой среды создать?

Вообще это Парус, но делается все стандартым PL/SQL


DO>Проще всего открыть Excel, зайти на вкладку Data(Данные), создать Connection(Подключение), подрубиться к базе и вытащить запросом данные прямо в Excel.


Неположено.
То что меня не убивает, делает меня умнее.
Re[3]: [Ora] query 2 excel
От: wildwind Россия  
Дата: 22.05.20 09:45
Оценка: 4 (1)
Здравствуйте, Funny Rabbit, Вы писали:

FR>У меня задача запросом сформировать лоб и записать в файл в формате XLS. Надо чтобы файл был ХЛС.


Надеюсь, ты понимаешь, что xls бинарный формат, а не текстовый? А может тебе нужен XSLX? Там еще сложнее.

Если делать это нужно непременно в базе (отдельный вопрос зачем), то есть Java библиотеки, которые это умеют. Находи, загружай и юзай.
Re[4]: [Ora] query 2 excel
От: Funny Rabbit Россия  
Дата: 22.05.20 09:55
Оценка:
Здравствуйте, wildwind, Вы писали:

W>Здравствуйте, Funny Rabbit, Вы писали:


FR>>У меня задача запросом сформировать лоб и записать в файл в формате XLS. Надо чтобы файл был ХЛС.


W>Надеюсь, ты понимаешь, что xls бинарный формат, а не текстовый? А может тебе нужен XSLX? Там еще сложнее.


XSLX то что требуется. Где об этом почитать?

W>Если делать это нужно непременно в базе (отдельный вопрос зачем), то есть Java библиотеки, которые это умеют. Находи, загружай и юзай.


Примеры, пожалуйста, можно?
То что меня не убивает, делает меня умнее.
Re[5]: [Ora] query 2 excel
От: wildwind Россия  
Дата: 22.05.20 10:22
Оценка:
Здравствуйте, Funny Rabbit, Вы писали:

FR>XSLX то что требуется. Где об этом почитать?


О чем, о формате? Это открытый стандарт, Office Open XML.

FR>Примеры, пожалуйста, можно?


Давно это было, не помню уже. Но знаю точно, что на каждый популярный формат есть библиотека.
Re[5]: [Ora] query 2 excel
От: AndrewN Россия  
Дата: 22.05.20 14:22
Оценка: 86 (3)
Здравствуйте, Funny Rabbit, Вы писали:

FR>Здравствуйте, wildwind, Вы писали:

FR>Примеры, пожалуйста, можно?


Мы вот эту либу под себя допилили и юзаем

https://technology.amis.nl/2011/02/19/create-an-excel-file-with-plsql/
--------------------------------------------------------------
Правильно заданный вопрос содержит в себе половину ответа
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.