Anpassen des MusXml-Exports

<< Klicken Sie hier um das Inhaltsverzeichnis anzuzeigen >>

Navigation:  Konfiguration > Anleitungen >

Anpassen des MusXml-Exports

Anpassen des Exports über die SQL-Datei

Beim MUS / XML Export kann über ein SQL Script individuell selbst definiert werden, welche Datenbank Felder exportiert werden sollen. Die gewünschte SQL-Datei muss in der Konfigurationsdatei (Sektion MusXmlTransfer) angegeben werden:

 

[MusXmlTransfer]

ExportMusXmlSqlFile=N:\D800_prg\PB6\MusXmlExport.sql

 

Wenn dort nichts angegeben wird oder vorhanden ist, dann kommt das Standard SQL Script zum Einsatz:

/*************************************************************************************

* Standard SQL Statement, wenn in der DABiS_PB.INI kein anderes Script angegeben ist *

*************************************************************************************/

SELECT TIREFID, TITYP, TITITELTHEMA, TIINTERPRET,

      TIGESCHLECHT, TIJAHRGANG, TIAUTOR,

      TIARCHIVNR, TISYSTEMNR, TIERSTELLDATUM, TIERSTELLER,

      TIFILENAME, TIANMODERATION, TITEXT, TIABMODERATION,

      TIVORLAUF, TIFADEIN, TIMITTELTEIL, TIFADEOUT, TINACHLAUF,

      TISTARTNEXT, TIINTRO1, TIINTRO2, TIINTRO3,

      TIREFRAIN1, TIREFRAIN2, TIREFRAIN3,

      TIOUTROCHAR, TIAUDIOFLAG, TIARCHIVFLAG, TILOESCHFLAG,

      TILOESCHDATUM, TILEVELOFFSET, TIZUSATZTEXT

FROM TITEL WHERE (TIID = :TIID)

 

Daraus resultiert folgendes XML File von einem Element:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>

<DATAPACKET Version="2.0">

 <METADATA>

         <FIELDS>

                 <FIELD attrname="TIREFID" fieldtype="i4"/>

                 <FIELD attrname="TITYP" fieldtype="string" SUBTYPE="FixedChar" WIDTH="2"/>

                 <FIELD attrname="TITITELTHEMA" fieldtype="string" SUBTYPE="FixedChar" WIDTH="50"/>

                 <FIELD attrname="TIINTERPRET" fieldtype="string" SUBTYPE="FixedChar" WIDTH="30"/>

                 <FIELD attrname="TIGESCHLECHT" fieldtype="string" SUBTYPE="FixedChar" WIDTH="1"/>

                 <FIELD attrname="TIJAHRGANG" fieldtype="i2"/>

                 <FIELD attrname="TIAUTOR" fieldtype="string" SUBTYPE="FixedChar" WIDTH="30"/>

                 <FIELD attrname="TIARCHIVNR" fieldtype="string" SUBTYPE="FixedChar" WIDTH="30"/>

                 <FIELD attrname="TISYSTEMNR" fieldtype="string" SUBTYPE="FixedChar" WIDTH="10"/>

                 <FIELD attrname="TIERSTELLDATUM" fieldtype="dateTime"/>

                 <FIELD attrname="TIERSTELLER" fieldtype="string" SUBTYPE="FixedChar" WIDTH="15"/>

                 <FIELD attrname="TIFILENAME" fieldtype="string" SUBTYPE="FixedChar" WIDTH="12"/>

                 <FIELD attrname="TIANMODERATION" fieldtype="bin.hex" SUBTYPE="Text" WIDTH="1"/>

                 <FIELD attrname="TITEXT" fieldtype="bin.hex" SUBTYPE="Text" WIDTH="1"/>

                 <FIELD attrname="TIABMODERATION" fieldtype="bin.hex" SUBTYPE="Text" WIDTH="1"/>

                 <FIELD attrname="TIVORLAUF" fieldtype="i4"/>

                 <FIELD attrname="TIFADEIN" fieldtype="i4"/>

                 <FIELD attrname="TIMITTELTEIL" fieldtype="i4"/>

                 <FIELD attrname="TIFADEOUT" fieldtype="i4"/>

                 <FIELD attrname="TINACHLAUF" fieldtype="i4"/>

                 <FIELD attrname="TISTARTNEXT" fieldtype="i4"/>

                 <FIELD attrname="TIINTRO1" fieldtype="i4"/>

                 <FIELD attrname="TIINTRO2" fieldtype="i4"/>

                 <FIELD attrname="TIINTRO3" fieldtype="i4"/>

                 <FIELD attrname="TIREFRAIN1" fieldtype="i4"/>

                 <FIELD attrname="TIREFRAIN2" fieldtype="i4"/>

                 <FIELD attrname="TIREFRAIN3" fieldtype="i4"/>

                 <FIELD attrname="TIOUTROCHAR" fieldtype="string" SUBTYPE="FixedChar" WIDTH="1"/>

                 <FIELD attrname="TIAUDIOFLAG" fieldtype="i2"/>

                 <FIELD attrname="TIARCHIVFLAG" fieldtype="i2"/>

                 <FIELD attrname="TILOESCHFLAG" fieldtype="i2"/>

                 <FIELD attrname="TILOESCHDATUM" fieldtype="dateTime"/>

                 <FIELD attrname="TILEVELOFFSET" fieldtype="i4"/>

                 <FIELD attrname="TIZUSATZTEXT" fieldtype="bin.hex" SUBTYPE="Text" WIDTH="1"/>

         </FIELDS>

         <PARAMS LCID="2057"/>

 </METADATA>

 <ROWDATA>

         <ROW

                 TITYP="M"

                 TITITELTHEMA="Rise Up Radio Edit"

                 TIINTERPRET="Yves Larock"

                 TIGESCHLECHT="M"

                 TIJAHRGANG="2007"

                 TIAUTOR="Rise Up"

                 TIARCHIVNR=""

                 TISYSTEMNR="S0087673"

                 TIERSTELLDATUM="20080402T17:38:23000"

                 TIERSTELLER="KBA"

                 TIFILENAME="276508.mus"

                 TIVORLAUF="1000"

                 TIFADEIN="0"

                 TIMITTELTEIL="165890"

                 TIFADEOUT="0"

                 TINACHLAUF="7300"

                 TISTARTNEXT="166900"

                 TIINTRO1="-1"

                 TIINTRO2="-1"

                 TIINTRO3="-1"

                 TIREFRAIN1="-1"

                 TIREFRAIN2="-1"

                 TIREFRAIN3="-1"

                 TIOUTROCHAR=""

                 TIAUDIOFLAG="1"

                 TIARCHIVFLAG="0"

                 TILOESCHFLAG="0"

                 TILOESCHDATUM="20080407"

                 TILEVELOFFSET="-6"

         />

 </ROWDATA>

</DATAPACKET>

 

Ein weiteres SELECT Statement mit den GEMA/ SUISA Feldern:

SELECT TIREFID, TITYP, TITITELTHEMA, TIINTERPRET,

      CAST(TIGESCHLECHT AS CHAR(2)) AS TIGESCHLECHT,

      TIJAHRGANG, TIAUTOR, TIKOMPONIST,

      TIARCHIVNR, TISYSTEMNR, TIERSTELLDATUM, TIERSTELLER,

      TIFILENAME, TIANMODERATION, TITEXT, TIABMODERATION,

      TIVORLAUF, TIFADEIN, TIMITTELTEIL, TIFADEOUT, TINACHLAUF,

      TISTARTNEXT, TIINTRO1, TIINTRO2, TIINTRO3,

      TIREFRAIN1, TIREFRAIN2, TIREFRAIN3,

      TIOUTROCHAR, TIAUDIOFLAG, TIARCHIVFLAG, TILOESCHFLAG,

      TILOESCHDATUM, TILEVELOFFSET, TIVERLAG, TILAID,

      TIKATALOGNR, TIISRC, TIALBUMNAME,

      LACODE, LANAME, TIHITJAHRGANG,

      H.LUVALUE as Herkunft, M.LUVALUE as MusikVersion

FROM TITEL LEFT JOIN LABEL ON TILAID = LAID

 LEFT JOIN LOOKUPVALUES H ON TIHERKUNFTID = LUID

 LEFT JOIN LOOKUPVALUES M ON TIMUSIKVERSIONID = LUID

WHERE (TIID = :TIID)

 

Anpassen des Exports über ein Transformationsfile

Das Aussehen des XML Format bei der Version 3 oder 5 wird durch die Transformationsdatei beschrieben. Dazu wird eine Transformationsdatei benötigt, die mit der oben beschriebenen SQL-Datei zusammen passen und in der Konfigurationsdatei der Planning Base (DABiS_PB.INI) entsprechend referenziert sein muss.

 

So könnte eine Transformationsdatei aussehen (D800toXML.xtr):

<XmlTransformation Version="1.0">

 <Transform Direction="ToXml" DataEncoding="ISO-8859-1">

   <SelectEach from="DATAPACKET\ROWDATA\ROW" dest="\D800\Titel">

     <Select from="@TIREFID" dest="\Refid"/>

     <Select from="@TITYP" dest="\Typ"/>

     <Select from="@TITITELTHEMA" dest="\TitelThema"/>

     <Select from="@TIINTERPRET" dest="\Interpret"/>

     <Select from="@TIGESCHLECHT" dest="\Geschlecht"/>

     <Select from="@TIJAHRGANG" dest="\Jahrgang"/>

     <Select from="@TIAUTOR" dest="\Autor"/>

     <Select from="@TIARCHIVNR" dest="\ArchivNr"/>

     <Select from="@TISYSTEMNR" dest="\SystemNr"/>

     <Select from="@TIERSTELLDATUM" dest="\Erstelldatum" Format_Date="YYYY-MM-DD"/>

     <Select from="@TIERSTELLER" dest="\Ersteller"/>

     <Select from="@TIFILENAME" dest="\Filename"/>

     <Select from="@TIANMODERATION" dest="\Anmoderation"/>

     <Select from="@TITEXT" dest="\Text"/>

     <Select from="@TIABMODERATION" dest="\Abmoderation"/>

     <Select from="@TIVORLAUF" dest="\Vorlauf"/>

     <Select from="@TIFADEIN" dest="\FadeIn"/>

     <Select from="@TIMITTELTEIL" dest="\Mittelteil"/>

     <Select from="@TIFADEOUT" dest="\FadeOut"/>

     <Select from="@TINACHLAUF" dest="\Nachlauf"/>

     <Select from="@TISTARTNEXT" dest="\StartNext"/>

     <Select from="@TIINTRO1" dest="\Intro1"/>

     <Select from="@TIINTRO2" dest="\Intro2"/>

     <Select from="@TIINTRO3" dest="\Intro3"/>

     <Select from="@TIREFRAIN1" dest="\Refrain1"/>

     <Select from="@TIREFRAIN2" dest="\Refrain2"/>

     <Select from="@TIREFRAIN3" dest="\Refrain3"/>

     <Select from="@TIOUTROCHAR" dest="\OutroChar"/>

     <Select from="@TIAUDIOFLAG" dest="\AudioFlag"/>

     <Select from="@TIARCHIVFLAG" dest="\ArchivFlag"/>

     <Select from="@TILOESCHFLAG" dest="\Loeschflag"/>

     <Select from="@TILOESCHDATUM" dest="\Loeschdatum" Format_Date="YYYY-MM-DD"/>

     <Select from="@TILEVELOFFSET" dest="\LevelOffset"/>

   </SelectEach>

 </Transform><XmlSchema RootName="D800"><![CDATA[<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">

 <xs:element name="Refid" type="RefidType"/>

 <xs:simpleType name="RefidType">

   <xs:restriction base="xs:integer"/>

 </xs:simpleType>

 <xs:element name="Typ" type="TypType"/>

 <xs:simpleType name="TypType">

   <xs:restriction base="xs:string"/>

 </xs:simpleType>

 <xs:element name="TitelThema" type="TitelThemaType"/>

 <xs:simpleType name="TitelThemaType">

   <xs:restriction base="xs:string"/>

 </xs:simpleType>

 <xs:element name="Interpret" type="InterpretType"/>

 <xs:simpleType name="InterpretType">

   <xs:restriction base="xs:string"/>

 </xs:simpleType>

 <xs:element name="Geschlecht" type="GeschlechtType"/>

 <xs:simpleType name="GeschlechtType">

   <xs:restriction base="xs:string"/>

 </xs:simpleType>

 <xs:element name="Jahrgang" type="JahrgangType"/>

 <xs:simpleType name="JahrgangType">

   <xs:restriction base="xs:integer"/>

 </xs:simpleType>

 <xs:element name="Autor" type="AutorType"/>

 <xs:simpleType name="AutorType">

   <xs:restriction base="xs:string"/>

 </xs:simpleType>

 <xs:element name="ArchivNr" type="ArchivNrType"/>

 <xs:simpleType name="ArchivNrType">

   <xs:restriction base="xs:string"/>

 </xs:simpleType>

 <xs:element name="SystemNr" type="SystemNrType"/>

 <xs:simpleType name="SystemNrType">

   <xs:restriction base="xs:string"/>

 </xs:simpleType>

 <xs:element name="Erstelldatum" type="ErstelldatumType"/>

 <xs:simpleType name="ErstelldatumType">

   <xs:restriction base="xs:date"/>

 </xs:simpleType>

 <xs:element name="Ersteller" type="ErstellerType"/>

 <xs:simpleType name="ErstellerType">

   <xs:restriction base="xs:string"/>

 </xs:simpleType>

 <xs:element name="Filename" type="FilenameType"/>

 <xs:simpleType name="FilenameType">

   <xs:restriction base="xs:string"/>

 </xs:simpleType>

 <xs:element name="Anmoderation" type="AnmoderationType"/>

 <xs:simpleType name="AnmoderationType">

   <xs:restriction base="xs:string"/>

 </xs:simpleType>

 <xs:element name="Text" type="TextType"/>

 <xs:simpleType name="TextType">

   <xs:restriction base="xs:string"/>

 </xs:simpleType>

 <xs:element name="Abmoderation" type="AbmoderationType"/>

 <xs:simpleType name="AbmoderationType">

   <xs:restriction base="xs:string"/>

 </xs:simpleType>

 <xs:element name="Vorlauf" type="VorlaufType"/>

 <xs:simpleType name="VorlaufType">

   <xs:restriction base="xs:integer"/>

 </xs:simpleType>

 <xs:element name="FadeIn" type="FadeInType"/>

 <xs:simpleType name="FadeInType">

   <xs:restriction base="xs:integer"/>

 </xs:simpleType>

 <xs:element name="Mittelteil" type="MittelteilType"/>

 <xs:simpleType name="MittelteilType">

   <xs:restriction base="xs:integer"/>

 </xs:simpleType>

 <xs:element name="FadeOut" type="FadeOutType"/>

 <xs:simpleType name="FadeOutType">

   <xs:restriction base="xs:integer"/>

 </xs:simpleType>

 <xs:element name="Nachlauf" type="NachlaufType"/>

 <xs:simpleType name="NachlaufType">

   <xs:restriction base="xs:integer"/>

 </xs:simpleType>

 <xs:element name="StartNext" type="StartNextType"/>

 <xs:simpleType name="StartNextType">

   <xs:restriction base="xs:integer"/>

 </xs:simpleType>

 <xs:element name="Intro1" type="Intro1Type"/>

 <xs:simpleType name="Intro1Type">

   <xs:restriction base="xs:integer"/>

 </xs:simpleType>

 <xs:element name="Intro2" type="Intro2Type"/>

 <xs:simpleType name="Intro2Type">

   <xs:restriction base="xs:integer"/>

 </xs:simpleType>

 <xs:element name="Intro3" type="Intro3Type"/>

 <xs:simpleType name="Intro3Type">

   <xs:restriction base="xs:integer"/>

 </xs:simpleType>

 <xs:element name="Refrain1" type="Refrain1Type"/>

 <xs:simpleType name="Refrain1Type">

   <xs:restriction base="xs:integer"/>

 </xs:simpleType>

 <xs:element name="Refrain2" type="Refrain2Type"/>

 <xs:simpleType name="Refrain2Type">

   <xs:restriction base="xs:integer"/>

 </xs:simpleType>

 <xs:element name="Refrain3" type="Refrain3Type"/>

 <xs:simpleType name="Refrain3Type">

   <xs:restriction base="xs:integer"/>

 </xs:simpleType>

 <xs:element name="OutroChar" type="OutroCharType"/>

 <xs:simpleType name="OutroCharType">

   <xs:restriction base="xs:string"/>

 </xs:simpleType>

 <xs:element name="AudioFlag" type="AudioFlagType"/>

 <xs:simpleType name="AudioFlagType">

   <xs:restriction base="xs:boolean"/>

 </xs:simpleType>

 <xs:element name="ArchivFlag" type="ArchivFlagType"/>

 <xs:simpleType name="ArchivFlagType">

   <xs:restriction base="xs:boolean"/>

 </xs:simpleType>

 <xs:element name="Loeschflag" type="LoeschflagType"/>

 <xs:simpleType name="LoeschflagType">

   <xs:restriction base="xs:boolean"/>

 </xs:simpleType>

 <xs:element name="Loeschdatum" type="LoeschdatumType"/>

 <xs:simpleType name="LoeschdatumType">

   <xs:restriction base="xs:date"/>

 </xs:simpleType>

 <xs:element name="LevelOffset" type="LevelOffsetType"/>

 <xs:simpleType name="LevelOffsetType">

   <xs:restriction base="xs:string"/>

 </xs:simpleType>

 <xs:element name="Titel" type="TitelType"/>

 <xs:complexType name="TitelType">

   <xs:sequence>

     <xs:element name="Refid" type="RefidType"/>

     <xs:element name="Typ" type="TypType"/>

     <xs:element name="TitelThema" type="TitelThemaType"/>

     <xs:element name="Interpret" type="InterpretType"/>

     <xs:element name="Geschlecht" type="GeschlechtType"/>

     <xs:element name="Jahrgang" type="JahrgangType"/>

     <xs:element name="Autor" type="AutorType"/>

     <xs:element name="ArchivNr" type="ArchivNrType"/>

     <xs:element name="SystemNr" type="SystemNrType"/>

     <xs:element name="Erstelldatum" type="ErstelldatumType"/>

     <xs:element name="Ersteller" type="ErstellerType"/>

     <xs:element name="Filename" type="FilenameType"/>

     <xs:element name="Anmoderation" type="AnmoderationType"/>

     <xs:element name="Text" type="TextType"/>

     <xs:element name="Abmoderation" type="AbmoderationType"/>

     <xs:element name="Vorlauf" type="VorlaufType"/>

     <xs:element name="FadeIn" type="FadeInType"/>

     <xs:element name="Mittelteil" type="MittelteilType"/>

     <xs:element name="FadeOut" type="FadeOutType"/>

     <xs:element name="Nachlauf" type="NachlaufType"/>

     <xs:element name="StartNext" type="StartNextType"/>

     <xs:element name="Intro1" type="Intro1Type"/>

     <xs:element name="Intro2" type="Intro2Type"/>

     <xs:element name="Intro3" type="Intro3Type"/>

     <xs:element name="Refrain1" type="Refrain1Type"/>

     <xs:element name="Refrain2" type="Refrain2Type"/>

     <xs:element name="Refrain3" type="Refrain3Type"/>

     <xs:element name="OutroChar" type="OutroCharType"/>

     <xs:element name="AudioFlag" type="AudioFlagType" minOccurs="0" maxOccurs="1"/>

     <xs:element name="ArchivFlag" type="ArchivFlagType" minOccurs="0" maxOccurs="1"/>

     <xs:element name="Loeschflag" type="LoeschflagType" minOccurs="0" maxOccurs="1"/>

     <xs:element name="Loeschdatum" type="LoeschdatumType"/>

     <xs:element name="LevelOffset" type="LevelOffsetType"/>

   </xs:sequence>

 </xs:complexType>

 <xs:element name="D800" type="D800Type"/>

 <xs:complexType name="D800Type">

   <xs:sequence>

     <xs:element name="Titel" type="TitelTyp" minOccurs="0" maxOccurs="unbounded"/>

   </xs:sequence>

 </xs:complexType>

</xs:schema>]]>

</XmlSchema>

<CdsSkeleton>

 <![CDATA[<DATAPACKET Version="2.0">

   <METADATA>

     <FIELDS>

       <FIELD attrname="TIREFID" fieldtype="i4"/>

       <FIELD attrname="TITYP" fieldtype="string" WIDTH="2"/>

       <FIELD attrname="TITITELTHEMA" fieldtype="string" WIDTH="50"/>

       <FIELD attrname="TIINTERPRET" fieldtype="string" WIDTH="30"/>

       <FIELD attrname="TIGESCHLECHT" fieldtype="string" WIDTH="1"/>

       <FIELD attrname="TIJAHRGANG" fieldtype="i2"/>

       <FIELD attrname="TIAUTOR" fieldtype="string" WIDTH="30"/>

       <FIELD attrname="TIARCHIVNR" fieldtype="string" WIDTH="30"/>

       <FIELD attrname="TISYSTEMNR" fieldtype="string" WIDTH="10"/>

       <FIELD attrname="TIERSTELLDATUM" fieldtype="date"/>

       <FIELD attrname="TIERSTELLER" fieldtype="string" WIDTH="15"/>

       <FIELD attrname="TIFILENAME" fieldtype="string" WIDTH="12"/>

       <FIELD attrname="TIANMODERATION" fieldtype="bin.hex" SUBTYPE="Text" WIDTH="1"/>

       <FIELD attrname="TITEXT" fieldtype="bin.hex" SUBTYPE="Text" WIDTH="1"/>

       <FIELD attrname="TIABMODERATION" fieldtype="bin.hex" SUBTYPE="Text" WIDTH="1"/>

       <FIELD attrname="TIVORLAUF" fieldtype="i4"/>

       <FIELD attrname="TIFADEIN" fieldtype="i4"/>

       <FIELD attrname="TIMITTELTEIL" fieldtype="i4"/>

       <FIELD attrname="TIFADEOUT" fieldtype="i4"/>

       <FIELD attrname="TINACHLAUF" fieldtype="i4"/>

       <FIELD attrname="TISTARTNEXT" fieldtype="i4"/>

       <FIELD attrname="TIINTRO1" fieldtype="i4"/>

       <FIELD attrname="TIINTRO2" fieldtype="i4"/>

       <FIELD attrname="TIINTRO3" fieldtype="i4"/>

       <FIELD attrname="TIREFRAIN1" fieldtype="i4"/>

       <FIELD attrname="TIREFRAIN2" fieldtype="i4"/>

       <FIELD attrname="TIREFRAIN3" fieldtype="i4"/>

       <FIELD attrname="TIOUTROCHAR" fieldtype="string" WIDTH="1"/>

       <FIELD attrname="TIAUDIOFLAG" fieldtype="i2"/>

       <FIELD attrname="TIARCHIVFLAG" fieldtype="i2"/>

       <FIELD attrname="TILOESCHFLAG" fieldtype="i2"/>

       <FIELD attrname="TILOESCHDATUM" fieldtype="date"/>

       <FIELD attrname="TILEVELOFFSET" fieldtype="i4"/>

     </FIELDS>

     <PARAMS/>

   </METADATA>

   <ROWDATA/>

 </DATAPACKET>

]]>

</CdsSkeleton>

<XslTransform/>

<Skeleton>

<![CDATA[<?xml version="1.0" encoding="ISO-8859-1" standalone="yes"?>

<D800>

   <Titel>

       <Refid></Refid>

       <Typ></Typ>

       <TitelThema></TitelThema>

       <Interpret></Interpret>

       <Geschlecht></Geschlecht>

       <Jahrgang></Jahrgang>

       <Autor></Autor>

       <ArchivNr></ArchivNr>

       <SystemNr></SystemNr>

       <Erstelldatum></Erstelldatum>

       <Ersteller></Ersteller>

       <Filename></Filename>

       <Anmoderation></Anmoderation>

       <Text></Text>

       <Abmoderation></Abmoderation>

       <Vorlauf></Vorlauf>

       <FadeIn></FadeIn>

       <Mittelteil></Mittelteil>

       <FadeOut></FadeOut>

       <Nachlauf></Nachlauf>

       <StartNext></StartNext>

       <Intro1></Intro1>

       <Intro2></Intro2>

       <Intro3></Intro3>

       <Refrain1></Refrain1>

       <Refrain2></Refrain2>

       <Refrain3></Refrain3>

       <OutroChar></OutroChar>

       <AudioFlag></AudioFlag>

       <ArchivFlag></ArchivFlag>

       <Loeschflag></Loeschflag>

       <Loeschdatum></Loeschdatum>

       <LevelOffset></LevelOffset>

   </Titel>

</D800>

]]>

</Skeleton>

</XmlTransformation>