sql >> Databáze >  >> RDS >> Oracle

Převod zpráv Oracle (.rdf) na zprávy BIRT

Plně automatizované řešení pravděpodobně není možné. Proces převodu můžete částečně automatizovat následovně:

  1. Převeďte soubory RDF do formátu XML.
  2. Extrahujte dotaz přehledu.
  3. 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.



  1. MySQL ODBC konektor 32bit nebo 64bit?

  2. Oracle SQL seskupit podle sloupce s počtem, ale pouze pokud je sloupec null nebo 0

  3. Nelze se přihlásit k serveru SQL Server 2008 pomocí nástroje příkazového řádku

  4. odstranit všechny číselné znaky ze sloupce mysql