powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / Oracle APEX [игнор отключен] [закрыт для гостей] / формат ячейки при выгрузке отчета из апекса в excel
7 сообщений из 7, страница 1 из 1
формат ячейки при выгрузке отчета из апекса в excel
    #37612512
checkin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
При выгрузке отчета в excel через html (в базе создана процедура) формат ячейки (там стоит тип varchar) в excel показывает как дату (например: 7.7 как "7.июль")

Это кусок процедуры:
Код: sql
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.
PROCEDURE my(pID number)
IS

BEGIN

   OWA_UTIL.mime_header ('application/octet', FALSE);
   htp.p('Content-Disposition: attachment;filename="'||'From'||to_char(sysdate,' dd-mm-yyyy')||'.xls"');
   owa_util.mime_header(ccontent_type => 'application/vnd.ms-excel');
   owa_util.http_header_close;
htp.prn('
            <html lang="ru">
            <head>
            <title>0</title>
            <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
            <style type="text/css">
<!--
.style1 {
    color: #FFFFFF;
    font-weight: bold;
}
.style2 {color: #FF0000}
.style3 {font-size: 16px}
-->
</style>
  </head>




Как можно это исправить? to_date не получится, потому что кроме цифр есть и текстовые слова.
...
Рейтинг: 0 / 0
формат ячейки при выгрузке отчета из апекса в excel
    #37614141
SvDev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
checkin,

Вы уверены, что это связный кусок процедуры? Приведенный html представленный как внутренность xls совсем не вяжется.
Где и как у вас соб-но формируется эта ячейка?
...
Рейтинг: 0 / 0
формат ячейки при выгрузке отчета из апекса в excel
    #37615689
checkin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ячейка формируется обычным селектом внутри курсора
...
Рейтинг: 0 / 0
формат ячейки при выгрузке отчета из апекса в excel
    #37615943
SvDev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
checkin,

Вообще-то хотелось увидеть код, относящийся к формированию excel, или названия библиотек/продуктов, его формирующий.

P.S. Если добавить первым символом одинарную кавычку, будет как текст отображать.
...
Рейтинг: 0 / 0
формат ячейки при выгрузке отчета из апекса в excel
    #37616062
checkin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
SvDev,

Мне не совсем понятно. Это и есть код, при помощи которого формируется excel.
Можно примером сказать, кажется мы друг друга не понимаем :)
...
Рейтинг: 0 / 0
формат ячейки при выгрузке отчета из апекса в excel
    #37616240
SvDev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
checkinSvDev,

Мне не совсем понятно. Это и есть код, при помощи которого формируется excel.
Можно примером сказать, кажется мы друг друга не понимаем :)

Всё я понял, не знал что Excel может читать настолько свободно html формат.
Ожидал увидеть что-то вроде этого
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
begin
-- Set the MIME type
owa_util.mime_header( 'application/octet', FALSE );
-- Set the name of the file
htp.p('Content-Disposition: attachment; filename="emp.csv"');
-- Close the HTTP Header
owa_util.http_header_close;
-- Loop through all rows in EMP
for x in (select e.ename, e.empno, d.dname
from emp e, dept d where e.deptno = d.deptno
  and e.deptno like :P1_DEPTNO)
loop
 -- Print out a portion of a row,
 -- separated by commas and ended by a CR
 htp.prn(x.ename ||','|| x.empno ||','||
         x.dname || chr(13));
end loop;
-- Send an error code so that the
-- rest of the HTML does not render
htmldb_application.g_unrecoverable_error := true;
end;


(Из блога Scott Spendolini)
http://spendolini.blogspot.com/2006/04/custom-export-to-csv.html

или этого
Код: 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.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
105.
106.
107.
108.
109.
110.
111.
112.
113.
114.
115.
116.
117.
118.
119.
120.
121.
122.
123.
124.
125.
126.
127.
128.
129.
130.
131.
132.
133.
134.
135.
136.
137.
138.
139.
140.
141.
142.
143.
144.
145.
146.
   PROCEDURE print_header (no_of_cols IN NUMBER)
   AS
      v_head   VARCHAR2 (32767);
   BEGIN
      v_head :=
            '<html xmlns:o="urn:schemas-microsoft-com:office:office"'
         || 'xmlns:x="urn:schemas-microsoft-com:office:excel"'
         || 'xmlns="http://www.w3.org/TR/REC-html40">'
         || '<head>'
         || '<meta http-equiv=Content-Type content="text/html; charset=UTF-8">'
         || '<meta name=ProgId content=Excel.Sheet>'
         || '<meta name=Generator content="Microsoft Excel 9">'
         || '<link rel=File-List href="./Sheet1-File/filelist.xml">'
         || '<link rel=Edit-Time-Data href="./Sheet1-File/editdata.mso">'
         || '<link rel=OLE-Object-Data href="./Sheet1-File/oledata.mso">'
         || '<!--[if gte mso 9]><xml>'
         || '<o:DocumentProperties>'
         || '<o:Author></o:Author>'
         || '<o:LastAuthor></o:LastAuthor>'
         || '<o:Created></o:Created>'
         || '<o:LastSaved></o:LastSaved>'
         || '<o:Company></o:Company>'
         || '<o:Version>9.3821</o:Version>'
         || '</o:DocumentProperties>'
         || '<o:OfficeDocumentSettings>'
         || '<o:DownloadComponents/>'
         || '<o:LocationOfComponents HRef="file:"/>'
         || '</o:OfficeDocumentSettings>'
         || '</xml><![endif]-->'
         || '<style>'
         || '<!--table'
         || '{mso-displayed-decimal-separator:"\,";'
         || 'mso-displayed-thousand-separator:"\.";}'
         || '@page'
         || '{margin:.98in .79in .98in .79in;'
         || 'mso-header-margin:.49in;'
         || 'mso-footer-margin:.49in;}'
         || 'tr'
         || '{mso-height-source:auto;}'
         || 'col'
         || '{mso-width-source:auto;}'
         || 'br'
         || '{mso-data-placement:same-cell;}'
         || '.style0'
         || '{mso-number-format:General;'
         || 'text-align:general;'
         || 'vertical-align:bottom;'
         || 'white-space:nowrap;'
         || 'mso-rotate:0;'
         || 'mso-background-source:auto;'
         || 'mso-pattern:auto;'
         || 'color:windowtext;'
         || 'font-size:10.0pt;'
         || 'font-weight:400;'
         || 'font-style:normal;'
         || 'text-decoration:none;'
         || 'font-family:Arial;'
         || 'mso-generic-font-family:auto;'
         || 'mso-font-charset:0;'
         || 'border:none;'
         || 'mso-protection:locked visible;'
         || 'mso-style-name:Standard;'
         || 'mso-style-id:0;}'
         || 'td'
         || '{mso-style-parent:style0;'
         || 'padding-top:1px;'
         || 'padding-right:1px;'
         || 'padding-left:1px;'
         || 'mso-ignore:padding;'
         || 'color:windowtext;'
         || 'font-size:10.0pt;'
         || 'font-weight:400;'
         || 'font-style:normal;'
         || 'text-decoration:none;'
         || 'font-family:Arial;'
         || 'mso-generic-font-family:auto;'
         || 'mso-font-charset:0;'
-- bkahles, 14.06.2007
--         || 'mso-number-format:General;'
         || 'mso-number-format:\@;'
         || 'text-align:general;'
         || 'vertical-align:bottom;'
         || 'border:none;'
         || 'mso-background-source:auto;'
         || 'mso-pattern:auto;'
         || 'mso-protection:locked visible;'
         || 'white-space:nowrap;'
         || 'mso-rotate:0;}'
         || '.xl24'
         || '{mso-style-parent:style0;'
         || 'border:.5pt solid windowtext;'
         || 'background:#FFEFD5;'
         || 'mso-pattern:auto none;}'
         || '.xl25'
         || '{mso-style-parent:style0;'
         || 'border:.5pt solid windowtext;'
         || 'background:#D9E8F2;'
         || 'mso-pattern:auto none;}'
         || '-->'
         || '</style>'
         || '<!--[if gte mso 9]><xml>'
         || '<x:ExcelWorkbook>'
         || '<x:ExcelWorksheets>'
         || '<x:ExcelWorksheet>'
         || '<x:Name>Tabelle1</x:Name>'
         || '<x:WorksheetOptions>'
         || '<x:DefaultRowHeight>264</x:DefaultRowHeight>'
         || '<x:DefaultColWidth>10</x:DefaultColWidth>'
         || '<x:Selected/>'
         || '<x:ProtectContents>False</x:ProtectContents>'
         || '<x:ProtectObjects>False</x:ProtectObjects>'
         || '<x:ProtectScenarios>False</x:ProtectScenarios>'
         || '</x:WorksheetOptions>'
         || '</x:ExcelWorksheet>'
         || '<x:ExcelWorksheet>'
         || '<x:Name>Tabelle2</x:Name>'
         || '<x:WorksheetOptions>'
         || '<x:DefaultRowHeight>264</x:DefaultRowHeight>'
         || '<x:DefaultColWidth>10</x:DefaultColWidth>'
         || '<x:ProtectContents>False</x:ProtectContents>'
         || '<x:ProtectObjects>False</x:ProtectObjects>'
         || '<x:ProtectScenarios>False</x:ProtectScenarios>'
         || '</x:WorksheetOptions>'
         || '</x:ExcelWorksheet>'
         || '<x:ExcelWorksheet>'
         || '<x:Name>Tabelle3</x:Name>'
         || '<x:WorksheetOptions>'
         || '<x:DefaultRowHeight>264</x:DefaultRowHeight>'
         || '<x:DefaultColWidth>10</x:DefaultColWidth>'
         || '<x:ProtectContents>False</x:ProtectContents>'
         || '<x:ProtectObjects>False</x:ProtectObjects>'
         || '<x:ProtectScenarios>False</x:ProtectScenarios>'
         || '</x:WorksheetOptions>'
         || '</x:ExcelWorksheet>'
         || '</x:ExcelWorksheets>'
         || '<x:WindowHeight>10620</x:WindowHeight>'
         || '<x:WindowWidth>18240</x:WindowWidth>'
         || '<x:WindowTopX>480</x:WindowTopX>'
         || '<x:WindowTopY>84</x:WindowTopY>'
         || '<x:ProtectStructure>False</x:ProtectStructure>'
         || '<x:ProtectWindows>False</x:ProtectWindows>'
         || '</x:ExcelWorkbook>'
         || '</xml><![endif]-->'
         || '</head>';
      HTP.prn (v_head);
   END print_header;...


(Из блога Denes Kubicek)
http://htmldb.oracle.com/pls/otn/f?p=31517:108:2273820010342499:::::

Или с использованием настроенных серверов печати.

В общем предлагаю использовать одинарную кавычку, для строки.
Или заменить точку на запятую для числа.
...
Рейтинг: 0 / 0
формат ячейки при выгрузке отчета из апекса в excel
    #37616365
checkin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
SvDev,

Спасибо, единственный выход пока ставить точку в самом конце или точку менять на запятую.

Но вопрос все равно пока открытый :)
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / Oracle APEX [игнор отключен] [закрыт для гостей] / формат ячейки при выгрузке отчета из апекса в excel
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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