Гость
Форумы / Oracle APEX [игнор отключен] [закрыт для гостей] / формат ячейки при выгрузке отчета из апекса в excel / 7 сообщений из 7, страница 1 из 1
13.01.2012, 10:29
    #37612512
checkin
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
формат ячейки при выгрузке отчета из апекса в excel
При выгрузке отчета в 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
13.01.2012, 23:07
    #37614141
SvDev
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
формат ячейки при выгрузке отчета из апекса в excel
checkin,

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

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

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

Мне не совсем понятно. Это и есть код, при помощи которого формируется excel.
Можно примером сказать, кажется мы друг друга не понимаем :)
...
Рейтинг: 0 / 0
16.01.2012, 14:14
    #37616240
SvDev
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
формат ячейки при выгрузке отчета из апекса в excel
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
16.01.2012, 15:15
    #37616365
checkin
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
формат ячейки при выгрузке отчета из апекса в excel
SvDev,

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

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


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