Имеется Форма (Oracle Froms 6i)
в теле формы пилится
1.
'XLS Files (*.xml)|*.xml|'
БАШКА:
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
out_file:=Text_IO.Fopen(f_name, 'w');
Text_IO.Put(out_file, '<?xml version="1.0" encoding="windows-1251"?>
<?mso-application progid="Excel.Sheet"?>
<Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet"
xmlns:o="urn:schemas-microsoft-com:office:office"
xmlns:x="urn:schemas-microsoft-com:office:excel"
xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet"
xmlns:html="http://www.w3.org/TR/REC-html40">
<DocumentProperties xmlns="urn:schemas-microsoft-com:office:office">
<Author>operator</Author>
<LastAuthor>operator</LastAuthor>
<Created>2017-03-06T08:59:38Z</Created>
<LastSaved>2017-03-06T09:00:17Z</LastSaved>
<Version>14.00</Version>
</DocumentProperties>
<OfficeDocumentSettings xmlns="urn:schemas-microsoft-com:office:office">
<AllowPNG/>
</OfficeDocumentSettings>
<ExcelWorkbook xmlns="urn:schemas-microsoft-com:office:excel">
<WindowHeight>15390</WindowHeight>
<WindowWidth>27795</WindowWidth>
. . . . . . . . . . . . .
Заполняем столбцы:
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
for cur_rec in cur_1
loop
Text_IO.New_Line(out_file);
Text_IO.Put(out_file, '<Row ss:AutoFitHeight="0">
<Cell ss:StyleID="s62"><Data ss:Type="String">' || cur_rec.name ||'</Data></Cell>');
Text_IO.New_Line(out_file);
Text_IO.Put(out_file, '<Cell ss:StyleID="s62"><Data ss:Type="String">'|| cur_rec.numnal ||'</Data></Cell>');
. . . . . . . .
exit when cur_1%notfound;
end loop;
Конец xml:
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
Text_IO.New_Line(out_file);
Text_IO.Put(out_file, '
</Table>
<WorksheetOptions xmlns="urn:schemas-microsoft-com:office:excel">
<PageSetup>
<Header x:Margin="0.3"/>
<Footer x:Margin="0.3"/>
<PageMargins x:Bottom="0.75" x:Left="0.7" x:Right="0.7" x:Top="0.75"/>
</PageSetup>
<Unsynced/>
<Selected/>
<ProtectObjects>False</ProtectObjects>
<ProtectScenarios>False</ProtectScenarios>
</WorksheetOptions>
<AutoFilter x:Range="R1C1:R1C8" xmlns="urn:schemas-microsoft-com:office:excel">
</AutoFilter>
</Worksheet>
</Workbook>');
Необходимо данные из этого курсора впихнуть в первый цикл:
1.
2.
3.
4.
5.
6.
7.
for rec_month in cur_2
loop
Text_IO.New_Line(out_file);
Text_IO.Put_line(out_file, '<Cell ss:StyleID="s62"><Data ss:Type="String">'|| rec_month.SUMM ||'</Data></Cell>
</Row>');
exit when cur_2%notfound;
end loop;
Просьба направить куда ковырять, дайте по возможности RTFM.