Plně automatizované řešení pravděpodobně není možné. Proces převodu můžete částečně automatizovat následovně:
- Převeďte soubory RDF do formátu XML.
- Extrahujte dotaz přehledu.
- Převeďte XML na BIRT (nebo JRXML) pomocí XSLT.
Konverze XML
První krok je poměrně jednoduchý, pomocí Cygwin:
cd /path/to/reports/
mkdir xml
for i in *.rdf; do
rwconverter.exe batch=yes source="$i" dest=xml/"$i".xml dtype=xmlfile \
userid=scott/[email protected]
done
Extrakce
Druhý krok je také relativně snadný pomocí starlet
(přejmenujte xml.exe
na starlet.exe
abyste se vyhnuli konfliktům s xml.exe
Oracle ):
starlet.exe sel -t -v "/report/data/dataSource/select" filename.rdf.xml
Můžete také použít xmllint, ale obsahuje select
a CDATA
prvky, které byste museli analyzovat samostatně:
xmllint --xpath /report/data/dataSource/select filename.rdf.xml
Konverze formátu
Třetí krok je náročný. Vytvořte šablonu XSL, která čte rozvržení RDF (např. <displayInfo x="0.74377" y="0.97913" width="1.29626" height="1.62695" />
). Poté tato rozvržení převeďte do odpovídajícího formátu používaného nástrojem cílové sestavy (jako je BIRT nebo JasperReports).
Nezískali byste 100% řešení, ale 80% řešení by mohlo výrazně snížit množství monotónní práce náchylné k chybám potřebné k převodu sestav.