powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Oracle APEX [игнор отключен] [закрыт для гостей] / Выгрузка группы отчётов в один файл.
13 сообщений из 13, страница 1 из 1
Выгрузка группы отчётов в один файл.
    #39127070
Весёлый
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Была поставлена задача выгружать по нажатию кнопки группу отчётов в экселевский файл. Сложность в том, что файл должен быть один, а мне не хватает места для кода в Processes. Каким образом можно обойти этот момент? Ну, помимо того, чтобы выгружать каждый отчёт в отдельный файл...
...
Рейтинг: 0 / 0
Выгрузка группы отчётов в один файл.
    #39127090
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Весёлыйа мне не хватает места для кода в Processes
хранимки писали?
Получается что у вас вся БЛ в скрипте апекс app.sql?
...
Рейтинг: 0 / 0
Выгрузка группы отчётов в один файл.
    #39127130
Весёлый
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Petro123хранимки писали?

Не доводилось. Собственно, даже не особо представляю, что это и с чем их едят...

Petro123Получается что у вас вся БЛ в скрипте апекс app.sql?

Не совсем понял, как это...
...
Рейтинг: 0 / 0
Выгрузка группы отчётов в один файл.
    #39127141
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ВесёлыйНе совсем понял, как это...
- даже если код написан в process, то всё равно он выполняется не на клиенте (олслике), а на сервере.
Значит бизнес-логику (БЛ) логичнее перенести на сервер. Это место:
Код: sql
1.
2.
3.
4.
create or replace procedure схема_разбора.CreateAllReports
begin
  null;
end;


- потом в свой процеесс вставишь 1 строку
Код: sql
1.
CreateAllReports;
...
Рейтинг: 0 / 0
Выгрузка группы отчётов в один файл.
    #39127158
Весёлый
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Petro123,

у меня на сервере вьюшки, из которых формируются отчёты. Основной объём занимает именно оформление.
...
Рейтинг: 0 / 0
Выгрузка группы отчётов в один файл.
    #39127164
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ВесёлыйОсновной объём занимает именно оформление.
переведи. Чем это помешает моему выше?
...
Рейтинг: 0 / 0
Выгрузка группы отчётов в один файл.
    #39127956
Casufi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Весёлыйу меня на сервере вьюшки, из которых формируются отчёты. Основной объём занимает именно оформление.
Кури книги по разработке на Pl/sql любые. Делаешь пакет, в нем пишешь процедуру или функцию, вызываешь её из процесса на апексе. Только идиот (извини) пихает развернуть логику в процессы.
...
Рейтинг: 0 / 0
Выгрузка группы отчётов в один файл.
    #39128134
Весёлый
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Часть расчётов перенёс в функцию, но от того, чтобы прокручивать цикл и потом выводить информацию в xml таким образом ведь не избавиться?
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
	  for i1 in (select sum(t.plan_year) as py, sum(t.plan_month_approve) as pma, sum(t.plan_month_operational) as pmo, sum(t.for_day_plan) as fdp, sum(t.for_day_fact) as fdf,
                        sum(t.for_day_change) as fdc, sum(t.for_month_plan) as fmp, sum(t.for_month_fact) as fmf, sum(t.for_month_change) as fmc, sum(t.for_year_plan_approve) as fypa,
						sum(t.for_year_plan_operational) as fypo, sum(t.for_year_fact) as fyf, sum(t.for_year_change_approve) as fyca,
						sum(t.for_year_change_operational) as fyco, sum(t.last_year) as ly, sum(t.last_year_change) as lyc
                 from report_final t
		         left join report_indicators t1 on t.ind1 = t1.ind1 and t.ind2 = t1.ind2
                 where t.data = :P202_Date and t.ind1 = i0.ind1 and t1.lvl = 1
                 order by t1.ind1, t1.ind2)
         loop
	        peremen :='
                  <Cell ss:StyleID="s22"><Data ss:Type="String">'||to_number(i1.py)||'</Data></Cell>
                  <Cell ss:StyleID="s22"><Data ss:Type="String">'||to_number(i1.pmo)||'</Data></Cell>
                  <Cell ss:StyleID="s22"><Data ss:Type="String">'||to_number(i1.fdp)||'</Data></Cell>
                  <Cell ss:StyleID="s22"><Data ss:Type="String">'||to_number(i1.fdf)||'</Data></Cell>
                  <Cell ss:StyleID="s22"><Data ss:Type="String">'||to_number(i1.fdc)||'</Data></Cell>
                  <Cell ss:StyleID="s22"><Data ss:Type="String">'||to_number(i1.fmp)||'</Data></Cell>
                  <Cell ss:StyleID="s22"><Data ss:Type="String">'||to_number(i1.fmf)||'</Data></Cell>
                  <Cell ss:StyleID="s22"><Data ss:Type="String">'||to_number(i1.fmc)||'</Data></Cell>
                  <Cell ss:StyleID="s22"><Data ss:Type="String">'||to_number(i1.fypa)||'</Data></Cell>
                  <Cell ss:StyleID="s22"><Data ss:Type="String">'||to_number(i1.fyf)||'</Data></Cell>
                  <Cell ss:StyleID="s22"><Data ss:Type="String">'||to_number(i1.fyca)||'</Data></Cell>
                  <Cell ss:StyleID="s22"><Data ss:Type="String">'||to_number(i1.ly)||'</Data></Cell>
                  <Cell ss:StyleID="s22"><Data ss:Type="String">'||to_number(i1.lyc)||'</Data></Cell>
               </Row>
		       ';
            dbms_lob.append(myfile, utl_i18n.string_to_raw(peremen, 'AL32UTF8'));
		 end loop;


И это только небольшой кусок вывода одного из отчётов, а их, как я понимаю из хотелок руководства, будет вагон и маленькая тележка. При этом диспетчер должна только нажать на кнопку и отправить на печать.
...
Рейтинг: 0 / 0
Выгрузка группы отчётов в один файл.
    #39128150
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Весёлыйчтобы прокручивать цикл и потом выводить информацию в xml таким образом ведь не избавиться?
не вижу вопроса. Переносите всё что можно. Если IDE будет ругаться, тогда и спрашивайте.
ВесёлыйИ это только небольшой кусок вывода одного из отчётов, а их, как я понимаю из хотелок руководства, будет вагон и маленькая тележка
и что? Нас не испугать)).
Не делайте склейку строк - поставьте внешний отчётник по типу Jasper report.
ВесёлыйПри этом диспетчер должна только нажать на кнопку и отправить на печать.
нет. Она ещё заполнит :P202_Date, которое нужно вынести во входной параметр функции.
...
Рейтинг: 0 / 0
Выгрузка группы отчётов в один файл.
    #39128223
Весёлый
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Petro123Не делайте склейку строк - поставьте внешний отчётник по типу Jasper report.

Можно об этом подробней? - Никогда не сталкивался и даже определения не слышал...

Petro123Она ещё заполнит :P202_Date, которое нужно вынести во входной параметр функции.

Туда можно автоматически sysdate подставлять :)
...
Рейтинг: 0 / 0
Выгрузка группы отчётов в один файл.
    #39128244
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Весёлый,
http://www.sql.ru/forum/afsearch.aspx?s=Jasper Report&submit=?????&bid=67
https://www.google.ru/search?q=jasper report designer&newwindow=1&biw=1280&bih=927&source=lnms&tbm=isch&sa=X&ved=0ahUKEwj6oN_Wut3JAhWC33IKHc2GAtoQ_AUIBygC
но у него сразу на несколько отчётов наверно проблематично. У меня на один отчёт с подотчётами внутри.
...
Рейтинг: 0 / 0
Выгрузка группы отчётов в один файл.
    #39137776
Весёлый
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Написал выгрузку четыремя блоками, а дальше в один файл собирается макросом. Правда каждый блок выгружается по своей кнопке. Есть возможность выгрузить разом четыре файла по одной кнопке?
...
Рейтинг: 0 / 0
Выгрузка группы отчётов в один файл.
    #39137787
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Весёлый,
Опиши скрин, код как сделал.
...
Рейтинг: 0 / 0
13 сообщений из 13, страница 1 из 1
Форумы / Oracle APEX [игнор отключен] [закрыт для гостей] / Выгрузка группы отчётов в один файл.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]