<?xml version="1.0" encoding="UTF-8"?>
<Export generator="Cache" version="25" zv="Cache for Windows (x86-64) 2011.1.2 (Build 701U)" ts="2011-12-14 17:07:08">
<Class name="DBLohn.AF.ArbeitszeitErfAF">
<Super>%RegisteredObject</Super>
<TimeChanged>62417,33284</TimeChanged>
<TimeCreated>62053,36497.181692</TimeCreated>

<Query name="ListeGesamt">
<Type>%SQLQuery</Type>
<FormalSpec>Mitarbeiter:%String,Monat:%Integer,Jahr:%Integer,Lang:%String</FormalSpec>
<SqlProc>1</SqlProc>
<SqlQuery><![CDATA[	SELECT %ID, Datum, Mitarbeiter, DATEPART(DAY, Datum) AS Tag, VormittagKommt, 
	VormittagGeht, NachmittagKommt,Unterbr1Kommt, Unterbr2Geht, Unterbr2Kommt,
	NachmittagGeht, ZusatzzeitKommt, ZusatzzeitGeht, Unterbr1Geht, Saldo,
	Arbeitsposition->Nummer AS APNummer, DBIntrap_SD.Arbeitsposition_GetBezeichnungClass(Arbeitsposition->ID, Mitarbeiter->Mandant, :Lang) AS APText
	FROM DBLohn.ArbeitszeitErf
	WHERE Mitarbeiter = :Mitarbeiter AND 
	DATEPART(MONTH, Datum) = :Monat AND DATEPART(YEAR, Datum) = :Jahr
	ORDER BY Tag]]></SqlQuery>
</Query>

<Query name="ListeDruck">
<Type>%SQLQuery</Type>
<FormalSpec>vonMitarbeiterNr:%Integer,bisMitarbeiterNr:%Integer,vonDatum:%Date,bisDatum:%Date,MandantOid:%String</FormalSpec>
<SqlProc>1</SqlProc>
<SqlQuery><![CDATA[	SELECT %ID, VormittagKommt,	VormittagGeht, NachmittagKommt, NachmittagGeht,
	Unterbr1Kommt, ZusatzzeitKommt, ZusatzzeitGeht, Unterbr1Geht
	FROM DBLohn.ArbeitszeitErf
	WHERE Mitarbeiter->Nummer Between :vonMitarbeiterNr AND :bisMitarbeiterNr AND Mitarbeiter->Mandant = :MandantOid
	AND Datum Between :vonDatum AND :bisDatum
	ORDER BY Mitarbeiter->Nummer]]></SqlQuery>
</Query>
</Class>


<Class name="DBLohn.AF.LohnabrechnungKopfAF">
<Super>%RegisteredObject</Super>
<TimeChanged>62437,32537.842501</TimeChanged>
<TimeCreated>62430,56762.939377</TimeCreated>

<Query name="ListeDruckMitTechLohn">
<Type>%SQLQuery</Type>
<FormalSpec>Jahr:%Integer,vonPeriode:%Integer,bisPeriode:%Integer,vonMitarbeiter:%String,bisMitarbeiter:%String</FormalSpec>
<SqlProc>1</SqlProc>
<SqlQuery><![CDATA[	SELECT ID, LohnabrechnungKopf->Periode, Lohnart AS LID, Lohnart->Nummer AS LNr,
		LohnartText, Betrag,LohnabrechnungKopf->Mitarbeiter AS MID,
		LohnabrechnungKopf->Mitarbeiter->MitarbeiterBasis->Name AS MaName,
		LohnabrechnungKopf->Mitarbeiter->MitarbeiterBasis->Vorname AS MaVorname,
		LohnabrechnungKopf->Mitarbeiter->Geburtsdatum AS MaGebDatum,
		LohnabrechnungKopf->Mitarbeiter->MitarbeiterBasis->Nummer AS MaNummer,
		YEAR(LohnabrechnungKopf->Periode) AS Jahr, MONTH(LohnabrechnungKopf->Periode) AS Monat,
		Lohnart->Berechnungsart
	FROM DBLohn.LohnabrechnungPos
	WHERE MONTH(LohnabrechnungKopf->Periode) BETWEEN :vonPeriode AND :bisPeriode
	AND YEAR(LohnabrechnungKopf->Periode) = :Jahr
	AND LohnabrechnungKopf->Mitarbeiter->MitarbeiterBasis->Nummer BETWEEN :vonMitarbeiter AND :bisMitarbeiter
	ORDER BY MaNummer, LNr]]></SqlQuery>
</Query>

<Query name="ListeDruckOhneTechLohn">
<Type>%SQLQuery</Type>
<FormalSpec>Jahr:%Integer,vonPeriode:%Integer,bisPeriode:%Integer,vonMitarbeiter:%String,bisMitarbeiter:%String</FormalSpec>
<SqlProc>1</SqlProc>
<SqlQuery><![CDATA[	SELECT ID, LohnabrechnungKopf->Periode, Lohnart AS LID, Lohnart->Nummer AS LNr,
		LohnartText, Betrag,LohnabrechnungKopf->Mitarbeiter AS MID,
		LohnabrechnungKopf->Mitarbeiter->MitarbeiterBasis->Name AS MaName,
		LohnabrechnungKopf->Mitarbeiter->MitarbeiterBasis->Vorname AS MaVorname,
		LohnabrechnungKopf->Mitarbeiter->Geburtsdatum AS MaGebDatum,
		LohnabrechnungKopf->Mitarbeiter->MitarbeiterBasis->Nummer AS MaNummer,
		YEAR(LohnabrechnungKopf->Periode) AS Jahr, MONTH(LohnabrechnungKopf->Periode) AS Monat,
		Lohnart->Berechnungsart
	FROM DBLohn.LohnabrechnungPos
	WHERE MONTH(LohnabrechnungKopf->Periode) BETWEEN :vonPeriode AND :bisPeriode
	AND YEAR(LohnabrechnungKopf->Periode) = :Jahr
	AND LohnabrechnungKopf->Mitarbeiter->MitarbeiterBasis->Nummer BETWEEN :vonMitarbeiter AND :bisMitarbeiter
	AND Lohnart->Nummer < 9000
	ORDER BY MaNummer, LNr]]></SqlQuery>
</Query>
</Class>


<Class name="DBLohn.AF.LohnabrechnungPosAF">
<Super>%RegisteredObject</Super>
<TimeChanged>62439,33213.949508</TimeChanged>
<TimeCreated>62413,41242.376675</TimeCreated>

<Query name="ListeByKopf">
<Type>%SQLQuery</Type>
<FormalSpec>LohnabrechnungKopfOid:%String</FormalSpec>
<SqlProc>1</SqlProc>
<SqlQuery><![CDATA[    SELECT ID, 
           Lohnart,
           Lohnart->Nummer As LohnartNr,
           Lohnart->Berechnungsart As Berechnungsart,
           LohnartText,
           Einheit,
           Anzahl,
           Faktor,
           Ansatz,
           Betrag,
           Lohnzahlungsart,
           IBAN,
           Zahlungshinweis
    FROM DBLohn.LohnabrechnungPos
    WHERE LohnabrechnungKopf = :LohnabrechnungKopfOid 
    ORDER BY Lohnart->Nummer]]></SqlQuery>
</Query>

<Query name="ListeLohnabrechnung">
<Type>%SQLQuery</Type>
<FormalSpec>MandantOid:%String,Periode:%Date</FormalSpec>
<SqlProc>1</SqlProc>
<SqlQuery><![CDATA[	SELECT ID, 
           Lohnart,
           Lohnart->Nummer As LohnartNr,
           Lohnart->Berechnungsart As Berechnungsart,
           LohnartText,
           Einheit,
           Anzahl,
           Faktor,
           Ansatz,
           Betrag,
           Lohnzahlungsart,
           Lohnzahlungsart->Zahlungsart As "Lohnzahlungsart.Zahlungsart",
           Lohnzahlungsart->Lohnanteilsart As "Lohnzahlungsart.Lohnanteilsart",
           Lohnzahlungsart->BetragProzent As "Lohnzahlungsart.BetragProzent",
           IBAN,
           Zahlungshinweis,
           LohnabrechnungKopf->Mitarbeiter As Mitarbeiter
    FROM DBLohn.LohnabrechnungPos
	WHERE LohnabrechnungKopf->Mitarbeiter->MitarbeiterBasis->Mandant = :MandantOid AND
			LohnabrechnungKopf->Periode = :Periode AND 
			Lohnart->Nummer < 9000
	ORDER BY Lohnart->Nummer]]></SqlQuery>
</Query>
</Class>


<Class name="DBLohn.AF.LohnartAF">
<Super>%RegisteredObject</Super>
<TimeChanged>62431,38803.359378</TimeChanged>
<TimeCreated>61990,34729.314457</TimeCreated>

<Query name="ListeBaum">
<Type>%SQLQuery</Type>
<FormalSpec>MandantOid:%String,Lang:%String</FormalSpec>
<SqlProc>1</SqlProc>
<SqlQuery>	SELECT %ID, Nummer, DBLohn.Lohnart_GetBezeichnungClass(%ID, :MandantOid, :Lang) As Text, 
	Mandant
	FROM DBLohn.Lohnart
	WHERE Mandant = :MandantOid ORDER BY ' '||Nummer</SqlQuery>
</Query>

<Query name="ListeBaumBasis">
<Type>%SQLQuery</Type>
<FormalSpec>MandantOid:%String,Lang:%String</FormalSpec>
<SqlProc>1</SqlProc>
<SqlQuery>	SELECT %ID, Nummer, DBLohn.Lohnart_GetBezeichnungClass(%ID, :MandantOid, :Lang) As Text, 
	Mandant
	FROM DBLohn.Lohnart
	WHERE Mandant IS NULL
	ORDER BY ' '||Nummer</SqlQuery>
</Query>

<Query name="ListeStandardlohnarten">
<Type>%SQLQuery</Type>
<FormalSpec>MandantOid:%String,Lang:%String</FormalSpec>
<SqlProc>1</SqlProc>
<SqlQuery>	SELECT %ID, Nummer, DBLohn.Lohnart_GetBezeichnungCLass(%ID, :MandantOid, :Lang) As Text,
	Mandant
	FROM DBLohn.Lohnart
	WHERE Mandant IS NULL AND Standardlohnart=1</SqlQuery>
</Query>

<Query name="GetEntryByNummer">
<Type>%SQLQuery</Type>
<FormalSpec>MandantOid:%String,Lang:%String,Nummer:%Integer</FormalSpec>
<SqlProc>1</SqlProc>
<SqlQuery><![CDATA[	SELECT ID, Nummer, DBLohn.Lohnart_GetBezeichnungClass(%ID, :MandantOid, :Lang) As Bezeichnung
	FROM DBLohn.Lohnart
	WHERE NVL(Mandant,'') = :MandantOid
	AND Nummer %StartsWith :Nummer AND Nummer >= 1000]]></SqlQuery>
</Query>

<Query name="GetEntryByBezeichnung">
<Type>%SQLQuery</Type>
<FormalSpec>MandantOid:%String,Lang:%String,Bezeichnung:%String</FormalSpec>
<SqlProc>1</SqlProc>
<SqlQuery><![CDATA[	SELECT TOP 1 ID, Nummer, DBLohn.Lohnart_GetBezeichnungClass(%ID, :MandantOid, :Lang) As Bezeichnung
	FROM DBLohn.Lohnart
	WHERE NVL(Mandant,'') = :MandantOid
	AND DBLohn.Lohnart_GetBezeichnungClass(%ID, :MandantOid, :Lang) LIKE :Bezeichnung
	AND Nummer >= 1000
	ORDER BY Bezeichnung]]></SqlQuery>
</Query>

<Query name="ListeDruck">
<Type>%SQLQuery</Type>
<FormalSpec>MandantOid:%String,Lang:%String,MandantJahrOid:%String</FormalSpec>
<SqlProc>1</SqlProc>
<SqlQuery><![CDATA[    SELECT %ID,	Nummer,
	    DBLohn.Lohnart_GetBezeichnungClass(%ID, :MandantOid, :Lang) As Bezeichnung,
	    Berechnungsart, Verrechnungseinheit->Code AS VerrechnungseinheitNr,
	    DBLohn_SD.VerrechnungEinh_GetBezeichnungClass(Verrechnungseinheit, :MandantOid, :Lang) AS VerrechnungseinheitBez,
	    DBLohn_SD.VerrechnungEinh_GetKurzTextClass(Verrechnungseinheit, :MandantOid, :Lang) AS VerrechnungseinheitKurzBez,
	    Mutierbar, Zugang, Lohnausweisposition, Statistik->Code AS StatistikNr,
	    DBLohn_SD.Statistiktext_GetBezeichnungClass(Statistik, :MandantOid, :Lang) AS StatistikBez,
	    DBLohn_SD.Statistiktext_GetKurzTextClass(Statistik, :MandantOid, :Lang) AS StatistikKurzBez,
	    Fibukonto->KontoNr AS FibuKontoNr,
	    DBFibu.Konto_GetKontoBezeichnungClass(:MandantJahrOid, FibuKonto) AS FibuKontoBez,
	    Soll, KalkBruttolohn, KalkAhvAlv, KalkUvg, KalkUvgz, KalkKtg, KalkBvg, KalkQuellensteuer, 
	    KalkBasisDreizehnter, KalkBasisFeriengeld, KalkBasisTeuerungszulage, Serienerfassung, 
	    Reduktion
    FROM DBLohn.Lohnart
    WHERE NVL(Mandant,'') = :MandantOid 
    ORDER BY ' '||Nummer]]></SqlQuery>
</Query>

<Query name="BasisListeDruck">
<Type>%SQLQuery</Type>
<FormalSpec>MandantOid:%String,Lang:%String,MandantJahrOid:%String</FormalSpec>
<SqlProc>1</SqlProc>
<SqlQuery><![CDATA[	SELECT %ID,	Nummer,
		DBLohn.Lohnart_GetBezeichnungClass(%ID, :MandantOid, :Lang) As Bezeichnung,
	    Berechnungsart, Verrechnungseinheit->Code AS VerrechnungseinheitNr,
	    DBLohn_SD.VerrechnungEinh_GetBezeichnungClass(Verrechnungseinheit, :MandantOid, :Lang) AS VerrechnungseinheitBez,
	    DBLohn_SD.VerrechnungEinh_GetKurzTextClass(Verrechnungseinheit, :MandantOid, :Lang) AS VerrechnungseinheitKurzBez,
	    Mutierbar, Zugang, Lohnausweisposition, Statistik->Code AS StatistikNr,
	    DBLohn_SD.Statistiktext_GetBezeichnungClass(Statistik, :MandantOid, :Lang) AS StatistikBez,
	    DBLohn_SD.Statistiktext_GetKurzTextClass((DBLohn_SD.Statistiktext_GetOidByCode(:MandantOid, BlsStatistikTexteNr)), :MandantOid, :Lang) AS StatistikKurzBez,
	    BlsFibuKontoNr AS FibuKontoNr,
	    DBFibu.Konto_GetKontoBezeichnungClass(:MandantJahrOid, FibuKonto) AS FibuKontoBez,
	    Soll, KalkBruttolohn, KalkAhvAlv, KalkUvg, KalkUvgz, KalkKtg, KalkBvg, KalkQuellensteuer, KalkBasisDreizehnter,
	    KalkBasisFeriengeld, KalkBasisTeuerungszulage, Serienerfassung, Reduktion
	FROM DBLohn.Lohnart
	WHERE Mandant IS NULL
	ORDER BY ' '||Nummer]]></SqlQuery>
</Query>

<Query name="ListeNachMandant">
<Type>%SQLQuery</Type>
<FormalSpec>MandantOid:%String</FormalSpec>
<SqlProc>1</SqlProc>
<SqlQuery>	SELECT ID, Berechnungsart
	FROM DBLohn.Lohnart
	WHERE NVL(Mandant,'') = :MandantOid ORDER BY Nummer</SqlQuery>
</Query>

<Query name="ListeNachMandantAbNummer">
<Type>%SQLQuery</Type>
<FormalSpec>MandantOid:%String,AbNummer:%Integer</FormalSpec>
<SqlProc>1</SqlProc>
<SqlQuery><![CDATA[    SELECT ID, Berechnungsart, Nummer
    FROM DBLohn.Lohnart
    WHERE NVL(Mandant,'') = :MandantOid AND
                   Nummer>=:AbNummer
    ORDER BY Nummer]]></SqlQuery>
</Query>

<Query name="ListeGrid">
<Type>%SQLQuery</Type>
<FormalSpec>MandantOid:%String,Lang:%String</FormalSpec>
<SqlProc>1</SqlProc>
<SqlQuery>    SELECT %ID, 
           Nummer, 
           DBLohn.Lohnart_GetBezeichnungClass(%ID, :MandantOid, :Lang) As Bezeichnung, 
           Berechnungsart,
           NVL(Zugang,0) As Zugang,
           NVL(Mutierbar,0) As Mutierbar,
           Verrechnungseinheit,
           BlsVerrechnungseinheitNr,
           NVL(Standardlohnart, 0) As Standardlohnart,
           Mandant,
           Soll,
           Fibukonto,
           BlsFibukontoNr
    FROM DBLohn.Lohnart
    WHERE NVL(Mandant,'') = :MandantOid ORDER BY ' ' || Nummer</SqlQuery>
</Query>
</Class>


<Class name="DBLohn.AF.LohnartJeMaAF">
<Super>%RegisteredObject</Super>
<TimeChanged>62431,29639.410093</TimeChanged>
<TimeCreated>62396,62595.580874</TimeCreated>

<Query name="ListeJeMa">
<Type>%SQLQuery</Type>
<FormalSpec>MitarbeiterOid:%String</FormalSpec>
<SqlProc>1</SqlProc>
<SqlQuery><![CDATA[    SELECT ID, 
           Lohnart,
           Lohnart->Nummer AS LohnartNr,
           LohnartText,
           Einheit,
           Anzahl,
           Faktor,
           Ansatz,
           Betrag,
           Lohnzahlungsart,
           IBAN,
           Zahlungshinweis
    FROM DBLohn.LohnartJeMa
    WHERE Mitarbeiter = :MitarbeiterOid 
    ORDER BY Lohnart->Nummer]]></SqlQuery>
</Query>

<Query name="ListeDruck">
<Type>%SQLQuery</Type>
<FormalSpec>Lang:%String,VonMA:%Integer,BisMA:%Integer</FormalSpec>
<SqlProc>1</SqlProc>
<SqlQuery><![CDATA[    SELECT ID, Lohnart, Lohnart->Nummer AS LohnartNr, LohnartText, Einheit, Anzahl,
           Faktor, Ansatz, Betrag,
           Mitarbeiter->MitarbeiterBasis->Nummer AS MANummer,
           Mitarbeiter->MitarbeiterBasis->Name AS MAName,
           Mitarbeiter->MitarbeiterBasis->Vorname AS MAVorname,
           Mitarbeiter->MitarbeiterBasis->Beruf AS MABeruf,
           Mitarbeiter->MitarbeiterBasis->Strasse AS MAStrasse, 
           Mitarbeiter->MitarbeiterBasis->Plz AS MAPlz,
           Mitarbeiter->MitarbeiterBasis->Ort AS MAOrt,
           Mitarbeiter->MitarbeiterBasis->Aktiv AS MAAktiv,
           IBAN, Zahlungshinweis, Lohnzahlungsart->Bezeichnung AS LohnzahlungsEinst
    FROM DBLohn.LohnartJeMa
    WHERE Mitarbeiter->MitarbeiterBasis->Nummer Between :VonMA AND :BisMA
    ORDER BY Mitarbeiter->MitarbeiterBasis->Nummer, Lohnart->Nummer]]></SqlQuery>
</Query>

<Query name="ListeDruckAktiv">
<Type>%SQLQuery</Type>
<FormalSpec>Lang:%String,VonMA:%Integer,BisMA:%Integer,Aktiv:%Boolean</FormalSpec>
<SqlProc>1</SqlProc>
<SqlQuery><![CDATA[    SELECT ID, Lohnart, Lohnart->Nummer AS LohnartNr, LohnartText, Einheit, Anzahl,
           Faktor, Ansatz, Betrag,
           Mitarbeiter->MitarbeiterBasis->Nummer AS MANummer,
           Mitarbeiter->MitarbeiterBasis->Name AS MAName,
           Mitarbeiter->MitarbeiterBasis->Vorname AS MAVorname,
           Mitarbeiter->MitarbeiterBasis->Beruf AS MABeruf,
           Mitarbeiter->MitarbeiterBasis->Strasse AS MAStrasse, 
           Mitarbeiter->MitarbeiterBasis->Plz AS MAPlz,
           Mitarbeiter->MitarbeiterBasis->Ort AS MAOrt,
           Mitarbeiter->MitarbeiterBasis->Aktiv AS MAAktiv,
           IBAN, Zahlungshinweis, Lohnzahlungsart->Bezeichnung AS LohnzahlungsEinst
    FROM DBLohn.LohnartJeMa
    WHERE Mitarbeiter->MitarbeiterBasis->Nummer Between :VonMA AND :BisMA
    AND Mitarbeiter->MitarbeiterBasis->Aktiv = :Aktiv
    ORDER BY Mitarbeiter->MitarbeiterBasis->Nummer, Lohnart->Nummer]]></SqlQuery>
</Query>

<Query name="ListeDruckNachKurzN">
<Type>%SQLQuery</Type>
<FormalSpec>Lang:%String,VonMA:%Integer,BisMA:%Integer</FormalSpec>
<SqlProc>1</SqlProc>
<SqlQuery><![CDATA[	SELECT ID, Lohnart, Lohnart->Nummer AS LohnartNr, LohnartText, Einheit, Anzahl,
           Faktor, Ansatz, Betrag,
           Mitarbeiter->MitarbeiterBasis->Nummer AS MANummer,
           Mitarbeiter->MitarbeiterBasis->Name AS MAName,
           Mitarbeiter->MitarbeiterBasis->Vorname AS MAVorname,
           Mitarbeiter->MitarbeiterBasis->Beruf AS MABeruf,
           Mitarbeiter->MitarbeiterBasis->Strasse AS MAStrasse, 
           Mitarbeiter->MitarbeiterBasis->Plz AS MAPlz,
           Mitarbeiter->MitarbeiterBasis->Ort AS MAOrt,
           Mitarbeiter->MitarbeiterBasis->Aktiv AS MAAktiv,
           IBAN, Zahlungshinweis, Lohnzahlungsart->Bezeichnung AS LohnzahlungsEinst
	FROM DBLohn.LohnartJeMa
	WHERE Mitarbeiter->MitarbeiterBasis->Nummer Between :VonMA AND :BisMA
	ORDER BY Mitarbeiter->MitarbeiterBasis->Kurzname, Lohnart->Nummer]]></SqlQuery>
</Query>

<Query name="ListeDruckAktivNachKurzN">
<Type>%SQLQuery</Type>
<FormalSpec>Lang:%String,VonMA:%Integer,BisMA:%Integer,Aktiv:%Boolean</FormalSpec>
<SqlProc>1</SqlProc>
<SqlQuery><![CDATA[	SELECT ID, Lohnart, Lohnart->Nummer AS LohnartNr, LohnartText, Einheit, Anzahl,
           Faktor, Ansatz, Betrag,
           Mitarbeiter->MitarbeiterBasis->Nummer AS MANummer,
           Mitarbeiter->MitarbeiterBasis->Name AS MAName,
           Mitarbeiter->MitarbeiterBasis->Vorname AS MAVorname,
           Mitarbeiter->MitarbeiterBasis->Beruf AS MABeruf,
           Mitarbeiter->MitarbeiterBasis->Strasse AS MAStrasse, 
           Mitarbeiter->MitarbeiterBasis->Plz AS MAPlz,
           Mitarbeiter->MitarbeiterBasis->Ort AS MAOrt,
           Mitarbeiter->MitarbeiterBasis->Aktiv AS MAAktiv,
           IBAN, Zahlungshinweis, Lohnzahlungsart->Bezeichnung AS LohnzahlungsEinst
	FROM DBLohn.LohnartJeMa
	WHERE Mitarbeiter->MitarbeiterBasis->Nummer Between :VonMA AND :BisMA
	AND Mitarbeiter->MitarbeiterBasis->Aktiv = :Aktiv
	ORDER BY Mitarbeiter->MitarbeiterBasis->Kurzname, Lohnart->Nummer]]></SqlQuery>
</Query>
</Class>


<Class name="DBLohn.AF.MitarbeiterAF">
<Super>%RegisteredObject</Super>
<TimeChanged>62437,55766.801445</TimeChanged>
<TimeCreated>62399,42190.800969</TimeCreated>

<Query name="ListeDruckNr">
<Type>%SQLQuery</Type>
<FormalSpec>MandOid:%String,Lang:%String,SelektionVon:%Integer,SelektionBis:%Integer</FormalSpec>
<SqlProc>1</SqlProc>
<SqlQuery><![CDATA[	SELECT ID, MitarbeiterBasis, MitarbeiterBasis->Nummer, MitarbeiterBasis->Kurzname,
	MitarbeiterBasis->Anrede, MitarbeiterBasis->Name, MitarbeiterBasis->Vorname,
	MitarbeiterBasis->Strasse, MitarbeiterBasis->Ort, MitarbeiterBasis->Plz,
	MitarbeiterBasis->Telefon1, MitarbeiterBasis->EMail, MitarbeiterBasis->Sprachcode,
	MitarbeiterBasis->Aktiv, PartnerName, PartnerVorname, Bemerkung, ZarNr, Ferienart,
	Geburtsdatum, DBCore.Abteilung_GetBezeichnungClass(MitarbeiterBasis->Abteilung, :MandOid, :Lang) As AbteilungBez, 
	MitarbeiterBasis->Abteilung->Abteilungnr AS AbteilungNr
	FROM DBLohn.Mitarbeiter
	WHERE MitarbeiterBasis->Mandant = :MandOid
	AND MitarbeiterBasis->Abteilung->Abteilungnr BETWEEN :SelektionVon AND :SelektionBis 
	UNION ALL 
	SELECT "" AS ID, ID AS MitarbeiterBasis, Nummer, Kurzname,
	Anrede, Name, Vorname,
	Strasse, Ort, Plz,
	Telefon1, EMail, Sprachcode,
	Aktiv, "" AS PartnerName, "" AS PartnerVorname, "" AS Bemerkung, "" AS ZarNr, "" AS Ferienart,
	NULL AS Geburtsdatum, DBCore.Abteilung_GetBezeichnungClass(Abteilung, :MandOid, :Lang) As AbteilungBez, 
	Abteilung->Abteilungnr AS AbteilungNr
	FROM DBCore.Mitarbeiter 
	WHERE ID NOT IN (SELECT MitarbeiterBasis FROM DBLohn.Mitarbeiter WHERE MitarbeiterBasis->Mandant = :MandOid)
	AND Abteilung->Abteilungnr BETWEEN :SelektionVon AND :SelektionBis 
	ORDER BY Nummer]]></SqlQuery>
</Query>

<Query name="ListeDruckName">
<Type>%SQLQuery</Type>
<FormalSpec>MandOid:%String,Lang:%String,SelektionVon:%Integer,SelektionBis:%Integer</FormalSpec>
<SqlProc>1</SqlProc>
<SqlQuery><![CDATA[	SELECT ID, MitarbeiterBasis, MitarbeiterBasis->Nummer, MitarbeiterBasis->Kurzname,
	MitarbeiterBasis->Anrede, MitarbeiterBasis->Name, MitarbeiterBasis->Vorname,
	MitarbeiterBasis->Strasse, MitarbeiterBasis->Ort, MitarbeiterBasis->Plz,
	MitarbeiterBasis->Telefon1, MitarbeiterBasis->EMail, MitarbeiterBasis->Sprachcode,
	MitarbeiterBasis->Aktiv, PartnerName, PartnerVorname, Bemerkung, ZarNr, Ferienart,
	Geburtsdatum, DBCore.Abteilung_GetBezeichnungClass(MitarbeiterBasis->Abteilung, :MandOid, :Lang) As AbteilungBez, 
	MitarbeiterBasis->Abteilung->Abteilungnr AS AbteilungNr
	FROM DBLohn.Mitarbeiter
	WHERE MitarbeiterBasis->Mandant = :MandOid
	AND MitarbeiterBasis->Abteilung->Abteilungnr BETWEEN :SelektionVon AND :SelektionBis 
	UNION ALL 
	SELECT "" AS ID, ID AS MitarbeiterBasis, Nummer, Kurzname,
	Anrede, Name, Vorname,
	Strasse, Ort, Plz,
	Telefon1, EMail, Sprachcode,
	Aktiv, "" AS PartnerName, "" AS PartnerVorname, "" AS Bemerkung, "" AS ZarNr, "" AS Ferienart,
	NULL AS Geburtsdatum, DBCore.Abteilung_GetBezeichnungClass(Abteilung, :MandOid, :Lang) As AbteilungBez, 
	Abteilung->Abteilungnr AS AbteilungNr
	FROM DBCore.Mitarbeiter 
	WHERE ID NOT IN (SELECT MitarbeiterBasis FROM DBLohn.Mitarbeiter WHERE MitarbeiterBasis->Mandant = :MandOid)
	AND Abteilung->Abteilungnr BETWEEN :SelektionVon AND :SelektionBis 
	ORDER BY Name]]></SqlQuery>
</Query>

<Query name="ListeDruckGebDatum">
<Type>%SQLQuery</Type>
<FormalSpec>MandOid:%String,Lang:%String,SelektionVon:%Integer,SelektionBis:%Integer</FormalSpec>
<SqlProc>1</SqlProc>
<SqlQuery><![CDATA[	SELECT ID, MitarbeiterBasis, MitarbeiterBasis->Nummer, MitarbeiterBasis->Kurzname,
	MitarbeiterBasis->Anrede, MitarbeiterBasis->Name, MitarbeiterBasis->Vorname,
	MitarbeiterBasis->Strasse, MitarbeiterBasis->Ort, MitarbeiterBasis->Plz,
	MitarbeiterBasis->Telefon1, MitarbeiterBasis->EMail, MitarbeiterBasis->Sprachcode,
	MitarbeiterBasis->Aktiv, PartnerName, PartnerVorname, Bemerkung, ZarNr, Ferienart,
	Geburtsdatum, DBCore.Abteilung_GetBezeichnungClass(MitarbeiterBasis->Abteilung, :MandOid, :Lang) As AbteilungBez, 
	MitarbeiterBasis->Abteilung->Abteilungnr AS AbteilungNr
	FROM DBLohn.Mitarbeiter
	WHERE MitarbeiterBasis->Mandant = :MandOid
	AND MitarbeiterBasis->Abteilung->Abteilungnr BETWEEN :SelektionVon AND :SelektionBis 
	UNION ALL 
	SELECT "" AS ID, ID AS MitarbeiterBasis, Nummer, Kurzname,
	Anrede, Name, Vorname,
	Strasse, Ort, Plz,
	Telefon1, EMail, Sprachcode,
	Aktiv, "" AS PartnerName, "" AS PartnerVorname, "" AS Bemerkung, "" AS ZarNr, "" AS Ferienart,
	NULL AS Geburtsdatum, DBCore.Abteilung_GetBezeichnungClass(Abteilung, :MandOid, :Lang) As AbteilungBez, 
	Abteilung->Abteilungnr AS AbteilungNr
	FROM DBCore.Mitarbeiter 
	WHERE ID NOT IN (SELECT MitarbeiterBasis FROM DBLohn.Mitarbeiter WHERE MitarbeiterBasis->Mandant = :MandOid)
	AND Abteilung->Abteilungnr BETWEEN :SelektionVon AND :SelektionBis 
	ORDER BY Geburtsdatum]]></SqlQuery>
</Query>

<Query name="ListeDruckNrAlle">
<Type>%SQLQuery</Type>
<FormalSpec>MandOid:%String,Lang:%String,SelektionVon:%Integer,SelektionBis:%Integer</FormalSpec>
<SqlProc>1</SqlProc>
<SqlQuery><![CDATA[	SELECT ID, MitarbeiterBasis, MitarbeiterBasis->Nummer, MitarbeiterBasis->Kurzname,
	MitarbeiterBasis->Anrede, MitarbeiterBasis->Name, MitarbeiterBasis->Vorname,
	MitarbeiterBasis->Strasse, MitarbeiterBasis->Ort, MitarbeiterBasis->Plz,
	MitarbeiterBasis->Telefon1, MitarbeiterBasis->EMail, MitarbeiterBasis->Sprachcode,
	MitarbeiterBasis->Aktiv, PartnerName, PartnerVorname, Bemerkung, ZarNr, Ferienart,
	Geburtsdatum, DBCore.Abteilung_GetBezeichnungClass(MitarbeiterBasis->Abteilung, :MandOid, :Lang) As AbteilungBez, 
	MitarbeiterBasis->Abteilung->Abteilungnr AS AbteilungNr
	FROM DBLohn.Mitarbeiter
	WHERE MitarbeiterBasis->Mandant = :MandOid
	UNION ALL 
	SELECT "" AS ID, ID AS MitarbeiterBasis, Nummer, Kurzname,
	Anrede, Name, Vorname,
	Strasse, Ort, Plz,
	Telefon1, EMail, Sprachcode,
	Aktiv, "" AS PartnerName, "" AS PartnerVorname, "" AS Bemerkung, "" AS ZarNr, "" AS Ferienart,
	NULL AS Geburtsdatum, DBCore.Abteilung_GetBezeichnungClass(Abteilung, :MandOid, :Lang) As AbteilungBez, 
	Abteilung->Abteilungnr AS AbteilungNr
	FROM DBCore.Mitarbeiter 
	WHERE ID NOT IN (SELECT MitarbeiterBasis FROM DBLohn.Mitarbeiter WHERE MitarbeiterBasis->Mandant = :MandOid)
	ORDER BY Nummer]]></SqlQuery>
</Query>

<Query name="ListeDruckNameAlle">
<Type>%SQLQuery</Type>
<FormalSpec>MandOid:%String,Lang:%String,SelektionVon:%Integer,SelektionBis:%Integer</FormalSpec>
<SqlProc>1</SqlProc>
<SqlQuery><![CDATA[	SELECT ID, MitarbeiterBasis, MitarbeiterBasis->Nummer, MitarbeiterBasis->Kurzname,
	MitarbeiterBasis->Anrede, MitarbeiterBasis->Name, MitarbeiterBasis->Vorname,
	MitarbeiterBasis->Strasse, MitarbeiterBasis->Ort, MitarbeiterBasis->Plz,
	MitarbeiterBasis->Telefon1, MitarbeiterBasis->EMail, MitarbeiterBasis->Sprachcode,
	MitarbeiterBasis->Aktiv, PartnerName, PartnerVorname, Bemerkung, ZarNr, Ferienart,
	Geburtsdatum, DBCore.Abteilung_GetBezeichnungClass(MitarbeiterBasis->Abteilung, :MandOid, :Lang) As AbteilungBez, 
	MitarbeiterBasis->Abteilung->Abteilungnr AS AbteilungNr
	FROM DBLohn.Mitarbeiter
	WHERE MitarbeiterBasis->Mandant = :MandOid
	UNION ALL 
	SELECT "" AS ID, ID AS MitarbeiterBasis, Nummer, Kurzname,
	Anrede, Name, Vorname,
	Strasse, Ort, Plz,
	Telefon1, EMail, Sprachcode,
	Aktiv, "" AS PartnerName, "" AS PartnerVorname, "" AS Bemerkung, "" AS ZarNr, "" AS Ferienart,
	NULL AS Geburtsdatum, DBCore.Abteilung_GetBezeichnungClass(Abteilung, :MandOid, :Lang) As AbteilungBez, 
	Abteilung->Abteilungnr AS AbteilungNr
	FROM DBCore.Mitarbeiter 
	WHERE ID NOT IN (SELECT MitarbeiterBasis FROM DBLohn.Mitarbeiter WHERE MitarbeiterBasis->Mandant = :MandOid)
	ORDER BY Name]]></SqlQuery>
</Query>

<Query name="ListeDruckGebDatumAlle">
<Type>%SQLQuery</Type>
<FormalSpec>MandOid:%String,Lang:%String,SelektionVon:%Integer,SelektionBis:%Integer</FormalSpec>
<SqlProc>1</SqlProc>
<SqlQuery><![CDATA[	SELECT ID, MitarbeiterBasis, MitarbeiterBasis->Nummer, MitarbeiterBasis->Kurzname,
	MitarbeiterBasis->Anrede, MitarbeiterBasis->Name, MitarbeiterBasis->Vorname,
	MitarbeiterBasis->Strasse, MitarbeiterBasis->Ort, MitarbeiterBasis->Plz,
	MitarbeiterBasis->Telefon1, MitarbeiterBasis->EMail, MitarbeiterBasis->Sprachcode,
	MitarbeiterBasis->Aktiv, PartnerName, PartnerVorname, Bemerkung, ZarNr, Ferienart,
	Geburtsdatum, DBCore.Abteilung_GetBezeichnungClass(MitarbeiterBasis->Abteilung, :MandOid, :Lang) As AbteilungBez, 
	MitarbeiterBasis->Abteilung->Abteilungnr AS AbteilungNr
	FROM DBLohn.Mitarbeiter
	WHERE MitarbeiterBasis->Mandant = :MandOid
	UNION ALL 
	SELECT "" AS ID, ID AS MitarbeiterBasis, Nummer, Kurzname,
	Anrede, Name, Vorname,
	Strasse, Ort, Plz,
	Telefon1, EMail, Sprachcode,
	Aktiv, "" AS PartnerName, "" AS PartnerVorname, "" AS Bemerkung, "" AS ZarNr, "" AS Ferienart,
	NULL AS Geburtsdatum, DBCore.Abteilung_GetBezeichnungClass(Abteilung, :MandOid, :Lang) As AbteilungBez, 
	Abteilung->Abteilungnr AS AbteilungNr
	FROM DBCore.Mitarbeiter 
	WHERE ID NOT IN (SELECT MitarbeiterBasis FROM DBLohn.Mitarbeiter WHERE MitarbeiterBasis->Mandant = :MandOid)
	ORDER BY Geburtsdatum]]></SqlQuery>
</Query>

<Query name="ListeEinzelDruck">
<Type>%SQLQuery</Type>
<FormalSpec>MitarbeiterOid:%String,Lang:%String,MandOid:%String</FormalSpec>
<SqlProc>1</SqlProc>
<SqlQuery><![CDATA[	SELECT ID, MitarbeiterBasis, MitarbeiterBasis->Anrede, MitarbeiterBasis->Name, MitarbeiterBasis->Vorname,
	MitarbeiterBasis->Strasse, MitarbeiterBasis->Ort, MitarbeiterBasis->Plz,
	MitarbeiterBasis->Telefon1, MitarbeiterBasis->Sprachcode, Beschaeftigungsgrad
	FROM DBLohn.Mitarbeiter
	WHERE MitarbeiterBasis = :MitarbeiterOid
	UNION ALL
	SELECT "" AS ID, ID AS MitarbeiterBasis, Anrede, Name, Vorname,
	Strasse, Ort, Plz,
	Telefon1, Sprachcode, "" AS Beschaeftigungsgrad
	FROM DBCore.Mitarbeiter
	WHERE ID NOT IN (SELECT MitarbeiterBasis FROM DBLohn.Mitarbeiter WHERE MitarbeiterBasis->Mandant = :MandOid)
	AND ID = :MitarbeiterOid]]></SqlQuery>
</Query>

<Query name="ListeLohnabrechnung">
<Type>%SQLQuery</Type>
<FormalSpec>MandantOid:%String</FormalSpec>
<SqlProc>1</SqlProc>
<SqlQuery><![CDATA[	SELECT ID, 
		MitarbeiterBasis, 
		MitarbeiterBasis->Nummer, 
		MitarbeiterBasis->Kurzname,
		MitarbeiterBasis->Anrede, 
		MitarbeiterBasis->Name, 
		MitarbeiterBasis->Vorname,
		MitarbeiterBasis->Strasse, 
		MitarbeiterBasis->Ort, 
		MitarbeiterBasis->Plz,
		MitarbeiterBasis->Telefon1, 
		MitarbeiterBasis->EMail, 
		MitarbeiterBasis->Sprachcode,
		MitarbeiterBasis->Aktiv, 
		PartnerName, 
		PartnerVorname, 
		Bemerkung, 
		ZarNr, 
		Ferienart,
		Geburtsdatum, 
		DBCore.Abteilung_GetBezeichnungClass(MitarbeiterBasis->Abteilung, :MandantOid, MitarbeiterBasis->Sprachcode) As AbteilungBez, 
		MitarbeiterBasis->Abteilung->Abteilungnr AS AbteilungNr
	FROM DBLohn.Mitarbeiter
	WHERE MitarbeiterBasis->Mandant = :MandantOid
	ORDER BY MitarbeiterBasis->Nummer]]></SqlQuery>
</Query>
</Class>


<Class name="DBLohn.AF.MitarbeiterEinAustrittAF">
<Super>%RegisteredObject</Super>
<TimeChanged>62417,33284</TimeChanged>
<TimeCreated>62381,54218.36915</TimeCreated>

<Query name="ListeNachMitarbeiter">
<Type>%SQLQuery</Type>
<FormalSpec>MitarbeiterOid:%String</FormalSpec>
<SqlProc>1</SqlProc>
<SqlQuery>	SELECT ID, 
			Eintritt,
			Austritt,
			Wegzug,
			Bemerkung
	FROM DBLohn.MitarbeiterEinAustritt
	WHERE Mitarbeiter = :MitarbeiterOid 
	ORDER BY Eintritt</SqlQuery>
</Query>
</Class>


<Class name="DBLohn.AF.MitarbeiterKindAF">
<Super>%RegisteredObject</Super>
<TimeChanged>62417,33284</TimeChanged>
<TimeCreated>62377,63092.784701</TimeCreated>

<Query name="ListeNachMitarbeiter">
<Type>%SQLQuery</Type>
<FormalSpec>MitarbeiterOid:%String</FormalSpec>
<SqlProc>1</SqlProc>
<SqlQuery>	SELECT ID, 
			Name, 
			Vorname,
			Geburtsdatum,
			Zulagentyp,
			Kinderzulage,
			KzBerechtigtBis,
			Ausbildungszulage,
			AzVerlaengerungBis
	FROM DBLohn.MitarbeiterKind
	WHERE Mitarbeiter = :MitarbeiterOid 
	ORDER BY Name, Vorname, Geburtsdatum</SqlQuery>
</Query>
</Class>


<Class name="DBLohn.AF.MultiSelMAAF">
<Super>%RegisteredObject</Super>
<TimeChanged>62423,61884.55208</TimeChanged>
<TimeCreated>62423,59072.811007</TimeCreated>

<Query name="GetMultiSelByMA">
<Type>%SQLQuery</Type>
<FormalSpec>MitarbeiterOid:%String</FormalSpec>
<SqlProc>1</SqlProc>
<SqlQuery><![CDATA[	SELECT ID As "ID", IndMultiSel->ID As "IndMultiSelId"
	FROM DBLohn.MultiSelMA
	WHERE Mitarbeiter = :MitarbeiterOid
	ORDER BY IndMultiSel->Kuerzel]]></SqlQuery>
</Query>

<Query name="GetValueByMutiSelMA">
<Type>%SQLQuery</Type>
<FormalSpec>MitarbeiterOid:%String,MultiSelOid:%String</FormalSpec>
<SqlProc>1</SqlProc>
<SqlQuery><![CDATA[	SELECT ID
	FROM DBLohn.MultiSelMA
	WHERE Mitarbeiter = :MitarbeiterOid
	AND IndMultiSel = :MultiSelOid
	ORDER BY IndMultiSel->Kuerzel]]></SqlQuery>
</Query>
</Class>


<Class name="DBLohn.AF.SD.AhvAlvAF">
<Super>%RegisteredObject</Super>
<TimeChanged>62417,33284</TimeChanged>
<TimeCreated>62017,40781.012786</TimeCreated>

<Query name="ListeAdressen">
<Type>%SQLQuery</Type>
<FormalSpec>MandantOid:%String</FormalSpec>
<SqlProc>1</SqlProc>
<SqlQuery>	SELECT ID, 
		AdressNr, 
		Name,
		Adresszeile1,
		Adresszeile2,
		Adresszeile3,
		Plz,
		PlzInklZusatz,
		Ort, 
		BetriebsNr,
		NrAusgleichskasse
	FROM DBLohn_SD.AhvAlvAdresse
	WHERE Mandant = :MandantOid
	ORDER BY AdressNr</SqlQuery>
</Query>
</Class>


<Class name="DBLohn.AF.SD.AnredeAF">
<Super>%RegisteredObject</Super>
<TimeChanged>62417,33284</TimeChanged>
<TimeCreated>62374,57851.075677</TimeCreated>

<Query name="ListeGesamt">
<Type>%SQLQuery</Type>
<FormalSpec>MandantOid:%String,Lang:%String</FormalSpec>
<SqlProc>1</SqlProc>
<SqlQuery>	SELECT ID, 
			Code, 
			DBLohn_SD.Anrede_GetTextClass(%ID, :MandantOid, :Lang) As Text, 
			Mandant
	FROM DBLohn_SD.Anrede
	WHERE Mandant = :MandantOid 
	ORDER BY Code</SqlQuery>
</Query>

<Query name="ListeDruck">
<Type>%SQLQuery</Type>
<FormalSpec>MandantOid:%String,Lang:%String</FormalSpec>
<SqlProc>1</SqlProc>
<SqlQuery>	SELECT ID, 
			Code AS Nr, 
			DBLohn_SD.Anrede_GetTextClass(%ID, :MandantOid, :Lang) As wert1, 
			'' As wert2, 
			Mandant
	FROM DBLohn_SD.Anrede as Stammdate 
	WHERE Mandant = :MandantOid ORDER BY Code</SqlQuery>
</Query>
</Class>


<Class name="DBLohn.AF.SD.ArbeitsschemaAF">
<Super>%RegisteredObject</Super>
<TimeChanged>62417,33284</TimeChanged>
<TimeCreated>62066,35607.731247</TimeCreated>

<Query name="ListeGesamt">
<Type>%SQLQuery</Type>
<FormalSpec>MandantOid:%String,Lang:%String</FormalSpec>
<SqlProc>1</SqlProc>
<SqlQuery><![CDATA[	SELECT %ID, Nr, Bezeichnung, DBIntrap_SD.Arbeitsposition_GetBezeichnungClass(Arbeitsposition->ID, Mandant, :Lang) AS Arbeitsposition,
	DBLohn.Lohnart_GetBezeichnungClass(Lohnart->ID, Mandant, :Lang) AS Lohnart,
	Mandant
	FROM DBLohn_SD.Arbeitsschema
	WHERE Mandant = :MandantOid
	ORDER BY Nr]]></SqlQuery>
</Query>
</Class>


<Class name="DBLohn.AF.SD.BvgAF">
<Super>%RegisteredObject</Super>
<TimeChanged>62417,33284</TimeChanged>
<TimeCreated>62046,42947.400882</TimeCreated>

<Query name="ListeAdressen">
<Type>%SQLQuery</Type>
<FormalSpec>MandantOid:%String</FormalSpec>
<SqlProc>1</SqlProc>
<SqlQuery>	SELECT ID, 
		AdressNr, 
		Name,
		Adresszeile1,
		Adresszeile2,
		Adresszeile3,
		Plz,
		PlzInklZusatz,
		Ort, 
		BetriebsNr,
		NrAusgleichskasse
	FROM DBLohn_SD.BvgAdresse
	WHERE Mandant = :MandantOid
	ORDER BY AdressNr</SqlQuery>
</Query>
</Class>


<Class name="DBLohn.AF.SD.FakAF">
<Super>%RegisteredObject</Super>
<TimeChanged>62417,33284</TimeChanged>
<TimeCreated>62026,47514.66707</TimeCreated>

<Query name="ListeAdressen">
<Type>%SQLQuery</Type>
<FormalSpec>MandantOid:%String</FormalSpec>
<SqlProc>1</SqlProc>
<SqlQuery>	SELECT ID, 
		AdressNr, 
		Name,
		Adresszeile1,
		Adresszeile2,
		Adresszeile3,
		Plz,
		PlzInklZusatz,
		Ort, 
		BetriebsNr,
		NrAusgleichskasse
	FROM DBLohn_SD.FakAdresse
	WHERE Mandant = :MandantOid
	ORDER BY AdressNr</SqlQuery>
</Query>
</Class>


<Class name="DBLohn.AF.SD.FusstextAF">
<Super>%RegisteredObject</Super>
<TimeChanged>62417,33284</TimeChanged>
<TimeCreated>62385,51215.940562</TimeCreated>

<Query name="ListeGesamt">
<Type>%SQLQuery</Type>
<FormalSpec>MandantOid:%String,Lang:%String</FormalSpec>
<SqlProc>1</SqlProc>
<SqlQuery>	SELECT ID, Nummer, 
			DBLohn_SD.Fusstext_GetTextClass(%ID, :MandantOid, :Lang) As Text, 
			Mandant
	FROM DBLohn_SD.Fusstext
	WHERE Mandant = :MandantOid 
	ORDER BY Nummer</SqlQuery>
</Query>

<Query name="ListeDruck">
<Type>%SQLQuery</Type>
<FormalSpec>MandantOid:%String,Lang:%String</FormalSpec>
<SqlProc>1</SqlProc>
<SqlQuery>	SELECT ID, 
			Nummer AS Nr, 
			DBLohn_SD.Fusstext_GetTextClass(%ID, :MandantOid, :Lang) As wert1, 
			'' As wert2, 
			Mandant
	FROM DBLohn_SD.Fusstext as Stammdate
	WHERE Mandant = :MandantOid 
	ORDER BY Nummer</SqlQuery>
</Query>
</Class>


<Class name="DBLohn.AF.SD.IndMultiSelAF">
<Super>%RegisteredObject</Super>
<TimeChanged>62417,33284</TimeChanged>
<TimeCreated>61982,41866.49917</TimeCreated>

<Query name="ListeGesamt">
<Type>%SQLQuery</Type>
<FormalSpec>MandantOid:%String,Lang:%String</FormalSpec>
<SqlProc>1</SqlProc>
<SqlQuery>SELECT ID, Code As Nr, Kuerzel, DBLohn_SD.IndMultiSel_GetText1Class(%ID, :MandantOid, :Lang) As Text1, 
	DBLohn_SD.IndMultiSel_GetText2Class(%ID, :MandantOid, :Lang) As Text2 
	FROM DBLohn_SD.IndMultiSel WHERE AktMandant = :MandantOid ORDER BY Code</SqlQuery>
</Query>

<Query name="ListeDruck">
<Type>%SQLQuery</Type>
<FormalSpec>MandantOid:%String,Lang:%String</FormalSpec>
<SqlProc>1</SqlProc>
<SqlQuery>SELECT ID, Code As Nr,
Kuerzel As wert1,
DBLohn_SD.IndMultiSel_GetText1Class(%ID, :MandantOid, :Lang) As wert2 
FROM DBLohn_SD.IndMultiSel WHERE AktMandant = :MandantOid ORDER BY Code</SqlQuery>
</Query>
</Class>


<Class name="DBLohn.AF.SD.IndSel1AF">
<Super>%RegisteredObject</Super>
<TimeChanged>62417,33284</TimeChanged>
<TimeCreated>61982,41468.194694</TimeCreated>

<Query name="ListeGesamt">
<Type>%SQLQuery</Type>
<FormalSpec>MandantOid:%String,Lang:%String</FormalSpec>
<SqlProc>1</SqlProc>
<SqlQuery>SELECT ID, Code As Nr, DBLohn_SD.IndSelektion1_GetText1Class(%ID, :MandantOid, :Lang) As Text1, 
	DBLohn_SD.IndSelektion1_GetText2Class(%ID, :MandantOid, :Lang) As Text2
	FROM DBLohn_SD.IndSelektion1 WHERE AktMandant = :MandantOid ORDER BY Code</SqlQuery>
</Query>

<Query name="ListeDruck">
<Type>%SQLQuery</Type>
<FormalSpec>MandantOid:%String,Lang:%String</FormalSpec>
<SqlProc>1</SqlProc>
<SqlQuery>SELECT ID, Code As Nr,
DBLohn_SD.IndSelektion1_GetText1Class(%ID, :MandantOid, :Lang) As wert1,
DBLohn_SD.IndSelektion1_GetText2Class(%ID, :MandantOid, :Lang) As wert2
FROM DBLohn_SD.IndSelektion1 WHERE AktMandant = :MandantOid ORDER BY Code</SqlQuery>
</Query>
</Class>


<Class name="DBLohn.AF.SD.IndSel2AF">
<Super>%RegisteredObject</Super>
<TimeChanged>62417,33284</TimeChanged>
<TimeCreated>61982,41568.800841</TimeCreated>

<Query name="ListeGesamt">
<Type>%SQLQuery</Type>
<FormalSpec>MandantOid:%String,Lang:%String</FormalSpec>
<SqlProc>1</SqlProc>
<SqlQuery>SELECT ID, Code As Nr, DBLohn_SD.IndSelektion2_GetText1Class(%ID, :MandantOid, :Lang) As Text1, 
	DBLohn_SD.IndSelektion2_GetText2Class(%ID, :MandantOid, :Lang) As Text2
	FROM DBLohn_SD.IndSelektion2 WHERE AktMandant = :MandantOid ORDER BY Code</SqlQuery>
</Query>

<Query name="ListeDruck">
<Type>%SQLQuery</Type>
<FormalSpec>MandantOid:%String,Lang:%String</FormalSpec>
<SqlProc>1</SqlProc>
<SqlQuery>SELECT ID, Code As Nr,
DBLohn_SD.IndSelektion2_GetText1Class(%ID, :MandantOid, :Lang) As wert1,
DBLohn_SD.IndSelektion2_GetText2Class(%ID, :MandantOid, :Lang) As wert2
FROM DBLohn_SD.IndSelektion2 WHERE AktMandant = :MandantOid ORDER BY Code</SqlQuery>
</Query>
</Class>


<Class name="DBLohn.AF.SD.IndSel3AF">
<Super>%RegisteredObject</Super>
<TimeChanged>62417,33284</TimeChanged>
<TimeCreated>61982,41701.269592</TimeCreated>

<Query name="ListeGesamt">
<Type>%SQLQuery</Type>
<FormalSpec>MandantOid:%String,Lang:%String</FormalSpec>
<SqlProc>1</SqlProc>
<SqlQuery>SELECT ID, Code As Nr, DBLohn_SD.IndSelektion3_GetText1Class(%ID, :MandantOid, :Lang) As Text1, 
	DBLohn_SD.IndSelektion3_GetText2Class(%ID, :MandantOid, :Lang) As Text2
	FROM DBLohn_SD.IndSelektion3 WHERE AktMandant = :MandantOid ORDER BY Code</SqlQuery>
</Query>

<Query name="ListeDruck">
<Type>%SQLQuery</Type>
<FormalSpec>MandantOid:%String,Lang:%String</FormalSpec>
<SqlProc>1</SqlProc>
<SqlQuery>SELECT ID, Code As Nr,
DBLohn_SD.IndSelektion3_GetText1Class(%ID, :MandantOid, :Lang) As wert1,
DBLohn_SD.IndSelektion3_GetText2Class(%ID, :MandantOid, :Lang) As wert2
FROM DBLohn_SD.IndSelektion3 WHERE AktMandant = :MandantOid ORDER BY Code</SqlQuery>
</Query>
</Class>


<Class name="DBLohn.AF.SD.IndSel4AF">
<Super>%RegisteredObject</Super>
<TimeChanged>62417,33284</TimeChanged>
<TimeCreated>61982,41753.526148</TimeCreated>

<Query name="ListeGesamt">
<Type>%SQLQuery</Type>
<FormalSpec>MandantOid:%String,Lang:%String</FormalSpec>
<SqlProc>1</SqlProc>
<SqlQuery>SELECT ID, Code As Nr, DBLohn_SD.IndSelektion4_GetText1Class(%ID, :MandantOid, :Lang) As Text1, 
	DBLohn_SD.IndSelektion4_GetText2Class(%ID, :MandantOid, :Lang) As Text2
	FROM DBLohn_SD.IndSelektion4 WHERE AktMandant = :MandantOid ORDER BY Code</SqlQuery>
</Query>

<Query name="ListeDruck">
<Type>%SQLQuery</Type>
<FormalSpec>MandantOid:%String,Lang:%String</FormalSpec>
<SqlProc>1</SqlProc>
<SqlQuery>SELECT ID, Code As Nr,
DBLohn_SD.IndSelektion4_GetText1Class(%ID, :MandantOid, :Lang) As wert1,
DBLohn_SD.IndSelektion4_GetText2Class(%ID, :MandantOid, :Lang) As wert2
FROM DBLohn_SD.IndSelektion4 WHERE AktMandant = :MandantOid ORDER BY Code</SqlQuery>
</Query>
</Class>


<Class name="DBLohn.AF.SD.IndSel5AF">
<Super>%RegisteredObject</Super>
<TimeChanged>62417,33284</TimeChanged>
<TimeCreated>61982,41796.867398</TimeCreated>

<Query name="ListeGesamt">
<Type>%SQLQuery</Type>
<FormalSpec>MandantOid:%String,Lang:%String</FormalSpec>
<SqlProc>1</SqlProc>
<SqlQuery>SELECT ID, Code As Nr, DBLohn_SD.IndSelektion5_GetText1Class(%ID, :MandantOid, :Lang) As Text1, 
	DBLohn_SD.IndSelektion5_GetText2Class(%ID, :MandantOid, :Lang) As Text2 
	FROM DBLohn_SD.IndSelektion5 WHERE AktMandant = :MandantOid ORDER BY Code</SqlQuery>
</Query>

<Query name="ListeDruck">
<Type>%SQLQuery</Type>
<FormalSpec>MandantOid:%String,Lang:%String</FormalSpec>
<SqlProc>1</SqlProc>
<SqlQuery>SELECT ID, Code As Nr,
DBLohn_SD.IndSelektion5_GetText1Class(%ID, :MandantOid, :Lang) As wert1,
DBLohn_SD.IndSelektion5_GetText2Class(%ID, :MandantOid, :Lang) As wert2
FROM DBLohn_SD.IndSelektion5 WHERE AktMandant = :MandantOid ORDER BY Code</SqlQuery>
</Query>
</Class>


<Class name="DBLohn.AF.SD.KonfessionAF">
<Super>%RegisteredObject</Super>
<TimeChanged>62417,33284</TimeChanged>
<TimeCreated>62374,57262.481912</TimeCreated>

<Query name="ListeGesamt">
<Type>%SQLQuery</Type>
<FormalSpec>MandantOid:%String,Lang:%String</FormalSpec>
<SqlProc>1</SqlProc>
<SqlQuery>	SELECT ID, 
			Code, 
			DBLohn_SD.Konfession_GetTextClass(%ID, :MandantOid, :Lang) As Text, 
			Mandant
	FROM DBLohn_SD.Konfession
	WHERE Mandant = :MandantOid 
	ORDER BY Code</SqlQuery>
</Query>

<Query name="ListeDruck">
<Type>%SQLQuery</Type>
<FormalSpec>MandantOid:%String,Lang:%String</FormalSpec>
<SqlProc>1</SqlProc>
<SqlQuery>	SELECT ID, 
			Code AS Nr, 
			DBLohn_SD.Konfession_GetTextClass(%ID, :MandantOid, :Lang) As wert1, 
			'' As wert2, 
			Mandant
	FROM DBLohn_SD.Konfession as Stammdate
	WHERE Mandant = :MandantOid 
	ORDER BY Code</SqlQuery>
</Query>
</Class>


<Class name="DBLohn.AF.SD.KrankenkasseAF">
<Super>%RegisteredObject</Super>
<TimeChanged>62417,33284</TimeChanged>
<TimeCreated>62045,53857.246996</TimeCreated>

<Query name="ListeAdressen">
<Type>%SQLQuery</Type>
<FormalSpec>MandantOid:%String</FormalSpec>
<SqlProc>1</SqlProc>
<SqlQuery>	SELECT ID, 
		AdressNr, 
		Name,
		Adresszeile1,
		Adresszeile2,
		Adresszeile3,
		Plz,
		PlzInklZusatz,
		Ort, 
		BetriebsNr,
		NrAusgleichskasse
	FROM DBLohn_SD.KrankenkasseAdr
	WHERE Mandant = :MandantOid
	ORDER BY AdressNr</SqlQuery>
</Query>
</Class>


<Class name="DBLohn.AF.SD.KtgAF">
<Super>%RegisteredObject</Super>
<TimeChanged>62417,33284</TimeChanged>
<TimeCreated>62045,31019.856972</TimeCreated>

<Query name="ListeAdressen">
<Type>%SQLQuery</Type>
<FormalSpec>MandantOid:%String</FormalSpec>
<SqlProc>1</SqlProc>
<SqlQuery>	SELECT ID, 
		AdressNr, 
		Name,
		Adresszeile1,
		Adresszeile2,
		Adresszeile3,
		Plz,
		PlzInklZusatz,
		Ort, 
		BetriebsNr,
		NrAusgleichskasse
	FROM DBLohn_SD.KtgAdresse
	WHERE Mandant = :MandantOid
	ORDER BY AdressNr</SqlQuery>
</Query>
</Class>


<Class name="DBLohn.AF.SD.LohnzahlungsartAF">
<Super>%RegisteredObject</Super>
<TimeChanged>62417,33284</TimeChanged>
<TimeCreated>62392,60220.320028</TimeCreated>

<Query name="ListeGesamt">
<Type>%SQLQuery</Type>
<FormalSpec>MandantOid:%String</FormalSpec>
<SqlProc>1</SqlProc>
<SqlQuery>	SELECT ID, 
			Nummer, 
			Bezeichnung, 
			Zahlungsart,
			Lohnanteilsart,
			BetragProzent,
			Mandant
	FROM DBLohn_SD.Lohnzahlungsart
	WHERE Mandant = :MandantOid 
	ORDER BY Nummer</SqlQuery>
</Query>
</Class>


<Class name="DBLohn.AF.SD.MitarbeiterKatAF">
<Super>%RegisteredObject</Super>
<TimeChanged>62417,33284</TimeChanged>
<TimeCreated>61968,57143.256461</TimeCreated>

<Query name="ListeGesamt">
<Type>%SQLQuery</Type>
<FormalSpec>MandantOid:%String,Lang:%String</FormalSpec>
<SqlProc>1</SqlProc>
<SqlQuery>	SELECT ID, 
			Code, 
			DBLohn_SD.MitarbeiterKat_GetTextClass(%ID, :MandantOid, :Lang) As Text, 
			Mandant
	FROM DBLohn_SD.MitarbeiterKat
	WHERE Mandant = :MandantOid 
	ORDER BY Code</SqlQuery>
</Query>

<Query name="ListeDruck">
<Type>%SQLQuery</Type>
<FormalSpec>MandantOid:%String,Lang:%String</FormalSpec>
<SqlProc>1</SqlProc>
<SqlQuery>	SELECT ID, 
			Code AS Nr, 
			DBLohn_SD.MitarbeiterKat_GetTextClass(%ID, :MandantOid, :Lang) As wert1, 
			'' As wert2, 
			Mandant
	FROM DBLohn_SD.MitarbeiterKat as Stammdate 
	WHERE Mandant = :MandantOid 
	ORDER BY Code</SqlQuery>
</Query>
</Class>


<Class name="DBLohn.AF.SD.NiederlassungAF">
<Super>%RegisteredObject</Super>
<TimeChanged>62423,61670.880081</TimeChanged>
<TimeCreated>62374,57355.197631</TimeCreated>

<Query name="ListeGesamt">
<Type>%SQLQuery</Type>
<FormalSpec>MandantOid:%String,Lang:%String</FormalSpec>
<SqlProc>1</SqlProc>
<SqlQuery>    SELECT ID, Code, Kanton,
           DBLohn_SD.Niederlassung_GetTextClass(%ID, :MandantOid, :Lang) As Text, 
           Mandant
    FROM DBLohn_SD.Niederlassung
    WHERE Mandant = :MandantOid 
    ORDER BY Code</SqlQuery>
</Query>

<Query name="ListeDruck">
<Type>%SQLQuery</Type>
<FormalSpec>MandantOid:%String,Lang:%String</FormalSpec>
<SqlProc>1</SqlProc>
<SqlQuery>    SELECT ID, 
           Code AS Nr, 
           DBLohn_SD.Niederlassung_GetTextClass(%ID, :MandantOid, :Lang) As wert1, 
           Kanton As wert2, 
           Mandant
    FROM DBLohn_SD.Niederlassung as Stammdate 
    WHERE Mandant = :MandantOid 
    ORDER BY Code</SqlQuery>
</Query>
</Class>


<Class name="DBLohn.AF.SD.PersAnredeAF">
<Super>%RegisteredObject</Super>
<TimeChanged>62417,33284</TimeChanged>
<TimeCreated>62374,57957.907187</TimeCreated>

<Query name="ListeGesamt">
<Type>%SQLQuery</Type>
<FormalSpec>MandantOid:%String,Lang:%String</FormalSpec>
<SqlProc>1</SqlProc>
<SqlQuery>	SELECT ID, 
			Code, 
			DBLohn_SD.PersAnrede_GetTextClass(%ID, :MandantOid, :Lang) As Text, 
			Mandant
	FROM DBLohn_SD.PersAnrede
	WHERE Mandant = :MandantOid 
	ORDER BY Code</SqlQuery>
</Query>

<Query name="ListeDruck">
<Type>%SQLQuery</Type>
<FormalSpec>MandantOid:%String,Lang:%String</FormalSpec>
<SqlProc>1</SqlProc>
<SqlQuery>	SELECT ID, 
			Code AS Nr, 
			DBLohn_SD.PersAnrede_GetTextClass(%ID, :MandantOid, :Lang) As wert1, 
			'' As wert2, 
			Mandant
	FROM DBLohn_SD.PersAnrede as Stammdate 
	WHERE Mandant = :MandantOid 
	ORDER BY Code</SqlQuery>
</Query>
</Class>


<Class name="DBLohn.AF.SD.QsTarifAF">
<Super>%RegisteredObject</Super>
<TimeChanged>62417,33284</TimeChanged>
<TimeCreated>62406,36925.605441</TimeCreated>

<Query name="ListeJahre">
<Type>%SQLQuery</Type>
<SqlProc>1</SqlProc>
<SqlQuery>	SELECT Jahr 
	FROM DBLohn_SD.QsTarif
	GROUP BY Jahr
	ORDER BY Jahr</SqlQuery>
</Query>

<Query name="ListeKantoneByJahr">
<Type>%SQLQuery</Type>
<FormalSpec>Jahr:%Integer</FormalSpec>
<SqlProc>1</SqlProc>
<SqlQuery>	SELECT Kanton
	FROM DBLohn_SD.QsTarif
	WHERE Jahr=:Jahr
	GROUP BY Kanton
	ORDER BY Kanton</SqlQuery>
</Query>

<Query name="ListeTarifeByJahrKanton">
<Type>%SQLQuery</Type>
<FormalSpec>Jahr:%Integer,Kanton:%String</FormalSpec>
<SqlProc>1</SqlProc>
<SqlQuery>	SELECT ID, 
			Jahr,
			Kanton,
			CodeTarif,
			SteuerbaresEinkommenAbFr,
			TarifschrittInFr,
			Geschlecht,
			AnzahlKinder,
			SteuerInFr,
			SteuerProzentsatz
	FROM DBLohn_SD.QsTarif
	WHERE Jahr=:Jahr AND
			Kanton=:Kanton
	ORDER BY CodeTarif, SteuerbaresEinkommenAbFr, Geschlecht</SqlQuery>
</Query>
</Class>


<Class name="DBLohn.AF.SD.QuellensteuerAF">
<Super>%RegisteredObject</Super>
<TimeChanged>62417,33284</TimeChanged>
<TimeCreated>62391,42989.694925</TimeCreated>

<Query name="ListeAdressen">
<Type>%SQLQuery</Type>
<FormalSpec>MandantOid:%String</FormalSpec>
<SqlProc>1</SqlProc>
<SqlQuery>	SELECT ID, 
		AdressNr, 
		Name,
		Adresszeile1,
		Adresszeile2,
		Adresszeile3,
		Plz,
		PlzInklZusatz,
		Ort, 
		BetriebsNr
	FROM DBLohn_SD.QsAdresse
	WHERE Mandant = :MandantOid
	ORDER BY AdressNr</SqlQuery>
</Query>
</Class>


<Class name="DBLohn.AF.SD.StaatsAngAF">
<Super>%RegisteredObject</Super>
<TimeChanged>62417,33284</TimeChanged>
<TimeCreated>61968,57393.899105</TimeCreated>

<Query name="ListeGesamt">
<Type>%SQLQuery</Type>
<FormalSpec>MandantOid:%String,Lang:%String</FormalSpec>
<SqlProc>1</SqlProc>
<SqlQuery>	SELECT ID, 
			Code, 
			DBLohn_SD.StaatsAng_GetTextClass(%ID, :MandantOid, :Lang) As Text, 
			Mandant
	FROM DBLohn_SD.StaatsAng
	WHERE Mandant = :MandantOid 
	ORDER BY Code</SqlQuery>
</Query>

<Query name="ListeDruck">
<Type>%SQLQuery</Type>
<FormalSpec>MandantOid:%String,Lang:%String</FormalSpec>
<SqlProc>1</SqlProc>
<SqlQuery>	SELECT ID, 
			Code AS Nr, 
			DBLohn_SD.StaatsAng_GetTextClass(%ID, :MandantOid, :Lang) As wert1, 
			'' As wert2, 
			Mandant
	FROM DBLohn_SD.StaatsAng as Stammdate 
	WHERE Mandant = :MandantOid 
	ORDER BY Code</SqlQuery>
</Query>
</Class>


<Class name="DBLohn.AF.SD.StatistiktextAF">
<Super>%RegisteredObject</Super>
<TimeChanged>62417,33284</TimeChanged>
<TimeCreated>62374,58056.207419</TimeCreated>

<Query name="ListeGesamt">
<Type>%SQLQuery</Type>
<FormalSpec>MandOid:%String,Lang:%String</FormalSpec>
<SqlProc>1</SqlProc>
<SqlQuery>	SELECT ID, 
			Code, 
			DBLohn_SD.Statistiktext_GetBezeichnungClass(%ID, :MandOid, :Lang) As Bezeichnung, 
			DBLohn_SD.Statistiktext_GetKurztextClass(%ID, :MandOid, :Lang) As KurzText 
	FROM DBLohn_SD.Statistiktext
	WHERE Mandant=:MandOid
	ORDER BY Code</SqlQuery>
</Query>

<Query name="ListeDruck">
<Type>%SQLQuery</Type>
<FormalSpec>MandOid:%String,Lang:%String</FormalSpec>
<SqlProc>1</SqlProc>
<SqlQuery>	SELECT ID, 
			Code As Nr, 
			DBLohn_SD.Statistiktext_GetKurztextClass(%ID, :MandOid, :Lang) As wert1, 
			DBLohn_SD.Statistiktext_GetBezeichnungClass(%ID, :MandOid, :Lang) as wert2 
	FROM DBLohn_SD.Statistiktext
	WHERE Mandant=:MandOid
	ORDER BY Code</SqlQuery>
</Query>
</Class>


<Class name="DBLohn.AF.SD.UvgAF">
<Super>%RegisteredObject</Super>
<TimeChanged>62417,33284</TimeChanged>
<TimeCreated>62039,42135.456379</TimeCreated>

<Query name="ListeAdressen">
<Type>%SQLQuery</Type>
<FormalSpec>MandantOid:%String</FormalSpec>
<SqlProc>1</SqlProc>
<SqlQuery>	SELECT ID, 
		AdressNr, 
		Name,
		Adresszeile1,
		Adresszeile2,
		Adresszeile3,
		Plz,
		PlzInklZusatz,
		Ort, 
		BetriebsNr,
		NrAusgleichskasse
	FROM DBLohn_SD.UvgAdresse
	WHERE Mandant = :MandantOid
	ORDER BY AdressNr</SqlQuery>
</Query>
</Class>


<Class name="DBLohn.AF.SD.UvgzAF">
<Super>%RegisteredObject</Super>
<TimeChanged>62417,33284</TimeChanged>
<TimeCreated>62039,56625.511418</TimeCreated>

<Query name="ListeAdressen">
<Type>%SQLQuery</Type>
<FormalSpec>MandantOid:%String</FormalSpec>
<SqlProc>1</SqlProc>
<SqlQuery>	SELECT ID, 
		AdressNr, 
		Name,
		Adresszeile1,
		Adresszeile2,
		Adresszeile3,
		Plz,
		PlzInklZusatz,
		Ort, 
		BetriebsNr,
		NrAusgleichskasse
	FROM DBLohn_SD.UvgzAdresse
	WHERE Mandant = :MandantOid
	ORDER BY AdressNr</SqlQuery>
</Query>
</Class>


<Class name="DBLohn.AF.SD.VerrechnungEinhAF">
<Super>%RegisteredObject</Super>
<TimeChanged>62417,33284</TimeChanged>
<TimeCreated>61975,49636.36334</TimeCreated>

<Query name="ListeGesamt">
<Type>%SQLQuery</Type>
<FormalSpec>MandOid:%String,Lang:%String</FormalSpec>
<SqlProc>1</SqlProc>
<SqlQuery>	SELECT ID, 
		Code, 
		DBLohn_SD.VerrechnungEinh_GetBezeichnungClass(%ID, :MandOid, :Lang) As Bezeichnung, 
		DBLohn_SD.VerrechnungEinh_GetKurztextClass(%ID, :MandOid, :Lang) As KurzText 
	FROM DBLohn_SD.VerrechnungEinh
	WHERE Mandant=:MandOid</SqlQuery>
</Query>

<Query name="ListeDruck">
<Type>%SQLQuery</Type>
<FormalSpec>MandOid:%String,Lang:%String</FormalSpec>
<SqlProc>1</SqlProc>
<SqlQuery>	SELECT ID, 
		Code As Nr, 
		DBLohn_SD.VerrechnungEinh_GetKurztextClass(%ID, :MandOid, :Lang) As wert1, 
		DBLohn_SD.VerrechnungEinh_GetBezeichnungClass(%ID, :MandOid, :Lang) as wert2 
	FROM DBLohn_SD.VerrechnungEinh
	WHERE Mandant=:MandOid</SqlQuery>
</Query>
</Class>


<Class name="DBLohn.ArbeitszeitErf">
<Super>%Persistent,%XML.Adaptor,DBCore.MandantRel</Super>
<TimeChanged>62437,41986.914724</TimeChanged>
<TimeCreated>62052,31568.360887</TimeCreated>
<Inheritance>right</Inheritance>

<Parameter name="XMLIGNOREINVALIDATTRIBUTE">
<Description><![CDATA[
Controls how to handle attributes that are unexpected.
-> If this parameter is 1 (the default), such attributes are ignored.
-> If it is 0, they are treated as errors, and import fails.]]></Description>
<Default>1</Default>
</Parameter>

<Parameter name="XMLIGNOREINVALIDTAG">
<Description><![CDATA[
Controls how to handle tags that are unexpected. 
-> If this parameter is 1, such tags are ignored. 
-> If it is 0 (the default), they are treated as errors, and import fails.]]></Description>
<Default>1</Default>
</Parameter>

<Parameter name="XMLIGNORENULL">
<Default>1</Default>
</Parameter>

<Property name="VormittagKommt">
<Description>
VormittagKommt</Description>
<Type>%Time</Type>
</Property>

<Property name="VormittagGeht">
<Description>
VormittagGeht</Description>
<Type>%Time</Type>
</Property>

<Property name="NachmittagKommt">
<Description>
NachmittagKommt</Description>
<Type>%Time</Type>
</Property>

<Property name="NachmittagGeht">
<Description>
NachmittagGeht</Description>
<Type>%Time</Type>
</Property>

<Property name="ZusatzzeitKommt">
<Description>
ZusatzzeitKommt</Description>
<Type>%Time</Type>
</Property>

<Property name="ZusatzzeitGeht">
<Description>
ZusatzzeitGeht</Description>
<Type>%Time</Type>
</Property>

<Property name="Unterbr1Geht">
<Description>
Unterbr1Geht</Description>
<Type>%Time</Type>
</Property>

<Property name="Unterbr1Kommt">
<Description>
Unterbr1</Description>
<Type>%Time</Type>
</Property>

<Property name="Unterbr2Geht">
<Description>
Unterbr2Geht</Description>
<Type>%Time</Type>
</Property>

<Property name="Unterbr2Kommt">
<Description>
Unterbr2Kommt</Description>
<Type>%Time</Type>
</Property>

<Property name="VormittagZeit">
<Description>
VormittagZeit</Description>
<Type>%Time</Type>
</Property>

<Property name="VormittagPause">
<Description>
VormittagPause</Description>
<Type>%Time</Type>
</Property>

<Property name="NachmittagZeit">
<Description>
NachmittagZeit</Description>
<Type>%Time</Type>
</Property>

<Property name="NachmittagPause">
<Description>
NachmittagPause</Description>
<Type>%Time</Type>
</Property>

<Property name="ZusatzzeitZeit">
<Description>
ZusatzzeitZeit</Description>
<Type>%Time</Type>
</Property>

<Property name="Unterbr1Zeit">
<Description>
Unterbr1Zeit</Description>
<Type>%Time</Type>
</Property>

<Property name="Unterbr2Zeit">
<Description>
Unterbr2Zeit</Description>
<Type>%Time</Type>
</Property>

<Property name="Datum">
<Description>
Datum</Description>
<Type>%Date</Type>
</Property>

<Property name="Saldo">
<Description>
Saldo</Description>
<Type>%Time</Type>
</Property>

<Property name="Mitarbeiter">
<Type>DBCore.Mitarbeiter</Type>
<Cardinality>one</Cardinality>
<Inverse>Arbeitszeiterfassung</Inverse>
<Relationship>1</Relationship>
<Parameter name="XMLELEMENTREF" value="1"/>
<Parameter name="XMLNAME" value="Mitarbeiter"/>
<Parameter name="XMLPROJECTION" value="ATTRIBUTE"/>
<Parameter name="XMLREFERENCE" value="ID"/>
</Property>

<Index name="MitarbeiterDatumIdx">
<Properties>Mitarbeiter,Datum</Properties>
</Index>

<Property name="Arbeitsposition">
<Type>DBIntrap.SD.Arbeitsposition</Type>
<Cardinality>one</Cardinality>
<Inverse>Arbeitszeiterfassung</Inverse>
<Relationship>1</Relationship>
<Parameter name="XMLELEMENTREF" value="1"/>
<Parameter name="XMLNAME" value="Arbeitsposition"/>
<Parameter name="XMLPROJECTION" value="ATTRIBUTE"/>
<Parameter name="XMLREFERENCE" value="ID"/>
</Property>

<Method name="GetIstZeitByMonatMitarbeiter">
<ClassMethod>1</ClassMethod>
<FormalSpec>MonatNr:%Integer,Jahr:%Integer,Mitarbeiter:%String</FormalSpec>
<ReturnType>%Integer</ReturnType>
<Implementation><![CDATA[
      set istZeit =""
      //Convert to Integer = seconds
      &sql(SELECT SUM({fn CONVERT(Saldo, SQL_INTEGER)}) INTO :istZeit FROM DBLohn.ArbeitszeitErf
           WHERE Mitarbeiter = :Mitarbeiter 
           AND DATEPART(MONTH, Datum) = :MonatNr AND DATEPART(YEAR, Datum) = :Jahr)
      Quit istZeit
]]></Implementation>
</Method>

<Method name="GetIdByTagOnMitarbeiter">
<ClassMethod>1</ClassMethod>
<FormalSpec>Mitarbeiter:%String,Datum:%Date</FormalSpec>
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[

	set id = ""
	w "Datum: "_Datum,!
	w "Mitarbeiter: "_Mitarbeiter,!
	
	&sql(SELECT ID INTO :id FROM DBLohn.ArbeitszeitErf WHERE Mitarbeiter = :Mitarbeiter AND Datum = :Datum)
	if (SQLCODE'=0) {
		set id=""
	}
	Quit id
]]></Implementation>
</Method>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
<DataLocation>^DBLohn.ArbeitszeitErfD</DataLocation>
<DefaultData>ArbeitszeitErfDefaultData</DefaultData>
<IdLocation>^DBLohn.ArbeitszeitErfD</IdLocation>
<IndexLocation>^DBLohn.ArbeitszeitErfI</IndexLocation>
<StreamLocation>^DBLohn.ArbeitszeitErfS</StreamLocation>
<Data name="ArbeitszeitErfDefaultData">
<Structure>listnode</Structure>
<Subscript/>
<Value name="1">
<Value>%%CLASSNAME</Value>
</Value>
<Value name="2">
<Value>VormittagKommt</Value>
</Value>
<Value name="3">
<Value>VormittagGeht</Value>
</Value>
<Value name="4">
<Value>NachmittagKommt</Value>
</Value>
<Value name="5">
<Value>NachmittagGeht</Value>
</Value>
<Value name="6">
<Value>ZusatzzeitKommt</Value>
</Value>
<Value name="7">
<Value>ZusatzzeitGeht</Value>
</Value>
<Value name="8">
<Value>Unterbr1Geht</Value>
</Value>
<Value name="9">
<Value>Unterbr1Kommt</Value>
</Value>
<Value name="10">
<Value>Unterbr2Geht</Value>
</Value>
<Value name="11">
<Value>Unterbr2Kommt</Value>
</Value>
<Value name="12">
<Value>TagNr</Value>
</Value>
<Value name="13">
<Value>Datum</Value>
</Value>
<Value name="14">
<Value>Mandant</Value>
</Value>
<Value name="15">
<Value>Mitarbeiter</Value>
</Value>
<Value name="16">
<Value>VormittagZeit</Value>
</Value>
<Value name="17">
<Value>VormittagPause</Value>
</Value>
<Value name="18">
<Value>NachmittagZeit</Value>
</Value>
<Value name="19">
<Value>NachmittagPause</Value>
</Value>
<Value name="20">
<Value>ZusatzzeitZeit</Value>
</Value>
<Value name="21">
<Value>Saldo</Value>
</Value>
<Value name="22">
<Value>Unterbr1Zeit</Value>
</Value>
<Value name="23">
<Value>Unterbr2Zeit</Value>
</Value>
<Value name="24">
<Value>MonatNr</Value>
</Value>
<Value name="25">
<Value>Monat</Value>
</Value>
<Value name="26">
<Value>Jahr</Value>
</Value>
<Value name="27">
<Value>Arbeitsposition</Value>
</Value>
<Value name="28">
<Value>Tag</Value>
</Value>
</Data>
<Property name="Arbeitsposition"/>
<Property name="Datum"/>
<Property name="Mitarbeiter"/>
<Property name="NachmittagGeht"/>
<Property name="NachmittagKommt"/>
<Property name="NachmittagPause"/>
<Property name="NachmittagZeit"/>
<Property name="Saldo"/>
<Property name="Unterbr1Geht"/>
<Property name="Unterbr1Kommt"/>
<Property name="Unterbr1Zeit"/>
<Property name="Unterbr2Geht"/>
<Property name="Unterbr2Kommt"/>
<Property name="Unterbr2Zeit"/>
<Property name="VormittagGeht"/>
<Property name="VormittagKommt"/>
<Property name="VormittagPause"/>
<Property name="VormittagZeit"/>
<Property name="ZusatzzeitGeht"/>
<Property name="ZusatzzeitKommt"/>
<Property name="ZusatzzeitZeit"/>
</Storage>
</Class>


<Class name="DBLohn.LohnabrechnungKopf">
<Super>%Persistent,%XML.Adaptor</Super>
<TimeChanged>62437,55776</TimeChanged>
<TimeCreated>62413,38505.02605</TimeCreated>
<Inheritance>right</Inheritance>

<Parameter name="XMLIGNOREINVALIDATTRIBUTE">
<Description><![CDATA[
Controls how to handle attributes that are unexpected.
-> If this parameter is 1 (the default), such attributes are ignored.
-> If it is 0, they are treated as errors, and import fails.]]></Description>
<Default>1</Default>
</Parameter>

<Parameter name="XMLIGNOREINVALIDTAG">
<Description><![CDATA[
Controls how to handle tags that are unexpected. 
-> If this parameter is 1, such tags are ignored. 
-> If it is 0 (the default), they are treated as errors, and import fails.]]></Description>
<Default>1</Default>
</Parameter>

<Parameter name="XMLIGNORENULL">
<Default>1</Default>
</Parameter>

<Property name="Mitarbeiter">
<Type>DBLohn.Mitarbeiter</Type>
<Cardinality>one</Cardinality>
<Inverse>LohnabrechnungKopf</Inverse>
<Relationship>1</Relationship>
<Parameter name="XMLELEMENTREF" value="1"/>
<Parameter name="XMLNAME" value="Mitarbeiter"/>
<Parameter name="XMLPROJECTION" value="ATTRIBUTE"/>
<Parameter name="XMLREFERENCE" value="ID"/>
</Property>

<Index name="MitarbeiterIndex">
<Properties>Mitarbeiter</Properties>
</Index>

<Property name="Positionen">
<Type>DBLohn.LohnabrechnungPos</Type>
<Cardinality>children</Cardinality>
<Inverse>LohnabrechnungKopf</Inverse>
<Relationship>1</Relationship>
</Property>

<Property name="Periode">
<Type>%Date</Type>
</Property>

<Property name="Status">
<Type>%Integer</Type>
</Property>

<Index name="MaPeriodeIndex">
<Properties>Mitarbeiter,Periode</Properties>
<Unique>1</Unique>
</Index>

<Property name="AhvAlvAdresse">
<Type>DBLohn.SD.AhvAlvAdresse</Type>
<Cardinality>one</Cardinality>
<Inverse>LohnabrechnungKopf</Inverse>
<Relationship>1</Relationship>
<Parameter name="XMLELEMENTREF" value="1"/>
<Parameter name="XMLNAME" value="AhvAlvAdresse"/>
<Parameter name="XMLPROJECTION" value="ATTRIBUTE"/>
<Parameter name="XMLREFERENCE" value="ID"/>
</Property>

<Property name="UvgAdresse">
<Type>DBLohn.SD.UvgAdresse</Type>
<Cardinality>one</Cardinality>
<Inverse>LohnabrechnungKopf</Inverse>
<Relationship>1</Relationship>
<Parameter name="XMLELEMENTREF" value="1"/>
<Parameter name="XMLNAME" value="UvgAdresse"/>
<Parameter name="XMLPROJECTION" value="ATTRIBUTE"/>
<Parameter name="XMLREFERENCE" value="ID"/>
</Property>

<Property name="UvgzAdresse">
<Type>DBLohn.SD.UvgzAdresse</Type>
<Cardinality>one</Cardinality>
<Inverse>LohnabrechnungKopf</Inverse>
<Relationship>1</Relationship>
<Parameter name="XMLELEMENTREF" value="1"/>
<Parameter name="XMLNAME" value="UvgzAdresse"/>
<Parameter name="XMLPROJECTION" value="ATTRIBUTE"/>
<Parameter name="XMLREFERENCE" value="ID"/>
</Property>

<Property name="KtgAdresse">
<Type>DBLohn.SD.KtgAdresse</Type>
<Cardinality>one</Cardinality>
<Inverse>LohnabrechnungKopf</Inverse>
<Relationship>1</Relationship>
<Parameter name="XMLELEMENTREF" value="1"/>
<Parameter name="XMLNAME" value="KtgAdresse"/>
<Parameter name="XMLPROJECTION" value="ATTRIBUTE"/>
<Parameter name="XMLREFERENCE" value="ID"/>
</Property>

<Property name="KrankenkasseAdresse">
<Type>DBLohn.SD.KrankenkasseAdr</Type>
<Cardinality>one</Cardinality>
<Inverse>LohnabrechnungKopf</Inverse>
<Relationship>1</Relationship>
<Parameter name="XMLELEMENTREF" value="1"/>
<Parameter name="XMLNAME" value="KrankenkasseAdresse"/>
<Parameter name="XMLPROJECTION" value="ATTRIBUTE"/>
<Parameter name="XMLREFERENCE" value="ID"/>
</Property>

<Property name="BvgAdresse">
<Type>DBLohn.SD.BvgAdresse</Type>
<Cardinality>one</Cardinality>
<Inverse>LohnabrechnungKopf</Inverse>
<Relationship>1</Relationship>
<Parameter name="XMLELEMENTREF" value="1"/>
<Parameter name="XMLNAME" value="BvgAdresse"/>
<Parameter name="XMLPROJECTION" value="ATTRIBUTE"/>
<Parameter name="XMLREFERENCE" value="ID"/>
</Property>

<Property name="FakAdresse">
<Type>DBLohn.SD.FakAdresse</Type>
<Cardinality>one</Cardinality>
<Inverse>LohnabrechnungKopf</Inverse>
<Relationship>1</Relationship>
<Parameter name="XMLELEMENTREF" value="1"/>
<Parameter name="XMLNAME" value="FakAdresse"/>
<Parameter name="XMLPROJECTION" value="ATTRIBUTE"/>
<Parameter name="XMLREFERENCE" value="ID"/>
</Property>

<Property name="QsAdresse">
<Type>DBLohn.SD.QsAdresse</Type>
<Cardinality>one</Cardinality>
<Inverse>LohnabrechnungKopf</Inverse>
<Relationship>1</Relationship>
<Parameter name="XMLELEMENTREF" value="1"/>
<Parameter name="XMLNAME" value="QsAdresse"/>
<Parameter name="XMLPROJECTION" value="ATTRIBUTE"/>
<Parameter name="XMLREFERENCE" value="ID"/>
</Property>

<Property name="UvgBetriebsteil">
<Type>%Integer</Type>
</Property>

<Property name="KrankenkasseFixbetragAN">
<Type>%Decimal</Type>
<Parameter name="SCALE" value="5"/>
</Property>

<Property name="BvgFixbetragAN">
<Type>%Decimal</Type>
<Parameter name="SCALE" value="5"/>
</Property>

<Property name="BvgFixbetragAG">
<Type>%Decimal</Type>
<Parameter name="SCALE" value="5"/>
</Property>

<Property name="Uvgz">
<Type>%Integer</Type>
</Property>

<Property name="Ktg">
<Type>%Integer</Type>
</Property>

<Property name="Krankenkasse">
<Type>%Integer</Type>
</Property>

<Property name="Bvg">
<Type>%Integer</Type>
</Property>

<Property name="QsQuellensteuer">
<Type>%Integer</Type>
</Property>

<Property name="QsArbeitskanton">
<Type>%String</Type>
<Parameter name="MAXLEN" value="50"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="QsWohnkanton">
<Type>%String</Type>
<Parameter name="MAXLEN" value="50"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="QsKirchensteuer">
<Type>%Boolean</Type>
</Property>

<Property name="QsAbweichendeKinderanzahl">
<Type>%Boolean</Type>
</Property>

<Property name="QsAnzahlAbweichendeKinder">
<Type>%Integer</Type>
</Property>

<Property name="QsFreibetrag">
<Type>%Decimal</Type>
<Parameter name="SCALE" value="5"/>
</Property>

<Property name="QsFixerProzentsatz">
<Type>%Decimal</Type>
<Parameter name="SCALE" value="5"/>
</Property>

<Property name="QsIndividualTarifCode">
<Type>%String</Type>
<Parameter name="MAXLEN" value="50"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Method name="GetIdByLohnmitarbeiterPeriode">
<ClassMethod>1</ClassMethod>
<FormalSpec>LohnmitarbeiterOid:%String,Periode:%Date</FormalSpec>
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[
	set id = ""
	&sql(SELECT ID INTO :id 
			FROM DBLohn.LohnabrechnungKopf
		 	WHERE Mitarbeiter = :LohnmitarbeiterOid AND Periode = :Periode)
		 	
	if (SQLCODE'=0) {
		set id = ""
	}
	Quit id
]]></Implementation>
</Method>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
<DataLocation>^DBLohn.LohnabrechnungKopfD</DataLocation>
<DefaultData>LohnabrechnungKopfDefaultData</DefaultData>
<IdLocation>^DBLohn.LohnabrechnungKopfD</IdLocation>
<IndexLocation>^DBLohn.LohnabrechnungKopfI</IndexLocation>
<StreamLocation>^DBLohn.LohnabrechnungKopfS</StreamLocation>
<Data name="LohnabrechnungKopfDefaultData">
<Structure>listnode</Structure>
<Subscript/>
<Value name="1">
<Value>%%CLASSNAME</Value>
</Value>
<Value name="2">
<Value>Mitarbeiter</Value>
</Value>
<Value name="3">
<Value>Periode</Value>
</Value>
<Value name="4">
<Value>Status</Value>
</Value>
<Value name="5">
<Value>AhvAlvAdresse</Value>
</Value>
<Value name="6">
<Value>UvgAdresse</Value>
</Value>
<Value name="7">
<Value>UvgzAdresse</Value>
</Value>
<Value name="8">
<Value>KtgAdresse</Value>
</Value>
<Value name="9">
<Value>KrankenkasseAdresse</Value>
</Value>
<Value name="10">
<Value>BvgAdresse</Value>
</Value>
<Value name="11">
<Value>FakAdresse</Value>
</Value>
<Value name="12">
<Value>QsAdresse</Value>
</Value>
<Value name="13">
<Value>UvgBetriebsteil</Value>
</Value>
<Value name="14">
<Value>KrankenkasseFixbetragAN</Value>
</Value>
<Value name="15">
<Value>BvgFixbetragAN</Value>
</Value>
<Value name="16">
<Value>BvgFixbetragAG</Value>
</Value>
<Value name="17">
<Value>Uvgz</Value>
</Value>
<Value name="18">
<Value>Ktg</Value>
</Value>
<Value name="19">
<Value>Krankenkasse</Value>
</Value>
<Value name="20">
<Value>Bvg</Value>
</Value>
<Value name="21">
<Value>QsQuellensteuer</Value>
</Value>
<Value name="22">
<Value>QsArbeitskanton</Value>
</Value>
<Value name="23">
<Value>QsWohnkanton</Value>
</Value>
<Value name="24">
<Value>QsKirchensteuer</Value>
</Value>
<Value name="25">
<Value>QsAbweichendeKinderanzahl</Value>
</Value>
<Value name="26">
<Value>QsAnzahlAbweichendeKinder</Value>
</Value>
<Value name="27">
<Value>QsFreibetrag</Value>
</Value>
<Value name="28">
<Value>QsFixerProzentsatz</Value>
</Value>
<Value name="29">
<Value>QsIndividualTarifCode</Value>
</Value>
</Data>
<Property name="%%CLASSNAME">
</Property>
<Property name="AhvAlvAdresse">
</Property>
<Property name="Bvg">
</Property>
<Property name="BvgAdresse">
</Property>
<Property name="BvgFixbetragAG">
</Property>
<Property name="BvgFixbetragAN">
</Property>
<Property name="FakAdresse">
</Property>
<Property name="Krankenkasse">
</Property>
<Property name="KrankenkasseAdresse">
</Property>
<Property name="KrankenkasseFixbetragAN">
</Property>
<Property name="Ktg">
</Property>
<Property name="KtgAdresse">
</Property>
<Property name="Mitarbeiter">
</Property>
<Property name="Periode">
</Property>
<Property name="QsAbweichendeKinderanzahl">
</Property>
<Property name="QsAdresse">
</Property>
<Property name="QsAnzahlAbweichendeKinder">
</Property>
<Property name="QsArbeitskanton">
</Property>
<Property name="QsFixerProzentsatz">
</Property>
<Property name="QsFreibetrag">
</Property>
<Property name="QsIndividualTarifCode">
</Property>
<Property name="QsKirchensteuer">
</Property>
<Property name="QsQuellensteuer">
</Property>
<Property name="QsWohnkanton">
</Property>
<Property name="Status">
</Property>
<Property name="UvgAdresse">
</Property>
<Property name="UvgBetriebsteil">
</Property>
<Property name="Uvgz">
</Property>
<Property name="UvgzAdresse">
</Property>
</Storage>
</Class>


<Class name="DBLohn.LohnabrechnungPos">
<Super>%Persistent,%XML.Adaptor</Super>
<TimeChanged>62437,55776</TimeChanged>
<TimeCreated>62413,38467.618248</TimeCreated>
<Inheritance>right</Inheritance>

<Parameter name="XMLIGNOREINVALIDATTRIBUTE">
<Description><![CDATA[
Controls how to handle attributes that are unexpected.
-> If this parameter is 1 (the default), such attributes are ignored.
-> If it is 0, they are treated as errors, and import fails.]]></Description>
<Default>1</Default>
</Parameter>

<Parameter name="XMLIGNOREINVALIDTAG">
<Description><![CDATA[
Controls how to handle tags that are unexpected. 
-> If this parameter is 1, such tags are ignored. 
-> If it is 0 (the default), they are treated as errors, and import fails.]]></Description>
<Default>1</Default>
</Parameter>

<Parameter name="XMLIGNORENULL">
<Default>1</Default>
</Parameter>

<Property name="Lohnart">
<Type>DBLohn.Lohnart</Type>
<Cardinality>one</Cardinality>
<Inverse>LohnabrechnungPos</Inverse>
<Relationship>1</Relationship>
<Parameter name="XMLELEMENTREF" value="1"/>
<Parameter name="XMLNAME" value="Lohnart"/>
<Parameter name="XMLPROJECTION" value="ATTRIBUTE"/>
<Parameter name="XMLREFERENCE" value="ID"/>
</Property>

<Index name="LohnartIndex">
<Properties>Lohnart</Properties>
</Index>

<Property name="LohnartText">
<Type>%String</Type>
<Parameter name="MAXLEN" value="255"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="Einheit">
<Type>%String</Type>
<Parameter name="MAXLEN" value="255"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="Anzahl">
<Type>%Decimal</Type>
<Parameter name="SCALE" value="5"/>
</Property>

<Property name="Faktor">
<Type>%Decimal</Type>
<Parameter name="SCALE" value="5"/>
</Property>

<Property name="Ansatz">
<Type>%Decimal</Type>
<Parameter name="SCALE" value="5"/>
</Property>

<Property name="Betrag">
<Type>%Decimal</Type>
<Parameter name="SCALE" value="5"/>
</Property>

<Property name="Lohnzahlungsart">
<Type>DBLohn.SD.Lohnzahlungsart</Type>
<Cardinality>one</Cardinality>
<Inverse>LohnabrechnungPos</Inverse>
<Relationship>1</Relationship>
<Parameter name="XMLELEMENTREF" value="1"/>
<Parameter name="XMLNAME" value="Lohnzahlungsart"/>
<Parameter name="XMLPROJECTION" value="ATTRIBUTE"/>
<Parameter name="XMLREFERENCE" value="ID"/>
</Property>

<Index name="LohnzahlungsartIndex">
<Properties>Lohnzahlungsart</Properties>
</Index>

<Property name="IBAN">
<Type>%String</Type>
<Parameter name="MAXLEN" value="50"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="Zahlungshinweis">
<Type>%String</Type>
<Parameter name="MAXLEN" value="100"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="LohnabrechnungKopf">
<Type>DBLohn.LohnabrechnungKopf</Type>
<Cardinality>parent</Cardinality>
<Inverse>Positionen</Inverse>
<Relationship>1</Relationship>
</Property>

<Index name="KopfLohnartIndex">
<Properties>LohnabrechnungKopf,Lohnart</Properties>
<Unique>1</Unique>
</Index>

<Property name="FaktorArbeitgeber">
<Type>%Decimal</Type>
<Parameter name="SCALE" value="5"/>
</Property>

<Property name="BetragArbeitgeber">
<Type>%Decimal</Type>
<Parameter name="SCALE" value="5"/>
</Property>

<Method name="GetIdByKopfLohnart">
<ClassMethod>1</ClassMethod>
<FormalSpec>LohnabrechnungKopfOid:%String,LohnartOid:%String</FormalSpec>
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[
	set id = ""
	&sql(SELECT ID INTO :id 
			FROM DBLohn.LohnabrechnungPos
		 	WHERE LohnabrechnungKopf = :LohnabrechnungKopfOid AND 
		 		Lohnart = :LohnartOid)
		 	
	if (SQLCODE'=0) {
		set id = ""
	}
	Quit id
]]></Implementation>
</Method>

<Method name="GetIdByMaPeriodeLohnart">
<ClassMethod>1</ClassMethod>
<FormalSpec>LohnmitarbeiterOid:%String,Periode:%Date,LohnartOid:%String</FormalSpec>
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[
    set id = ""
    &sql(SELECT ID INTO :id 
	       FROM DBLohn.LohnabrechnungPos
	       WHERE LohnabrechnungKopf->Mitarbeiter = :LohnmitarbeiterOid AND 
			LohnabrechnungKopf->Periode = :Periode AND
	        Lohnart = :LohnartOid)
                                   
    if (SQLCODE'=0) {
		set id = ""
    }
    Quit id
]]></Implementation>
</Method>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
<DataLocation>{%%PARENT}("Positionen")</DataLocation>
<DefaultData>LohnabrechnungPosDefaultData</DefaultData>
<IdLocation>^DBLohn.LohnabrechnungKopfC("Positionen")</IdLocation>
<IndexLocation>^DBLohn.LohnabrechnungPosI</IndexLocation>
<StreamLocation>^DBLohn.LohnabrechnungPosS</StreamLocation>
<Data name="LohnabrechnungPosDefaultData">
<Structure>listnode</Structure>
<Subscript/>
<Value name="1">
<Value>%%CLASSNAME</Value>
</Value>
<Value name="2">
<Value>Lohnart</Value>
</Value>
<Value name="3">
<Value>LohnartText</Value>
</Value>
<Value name="4">
<Value>Einheit</Value>
</Value>
<Value name="5">
<Value>Anzahl</Value>
</Value>
<Value name="6">
<Value>Faktor</Value>
</Value>
<Value name="7">
<Value>Ansatz</Value>
</Value>
<Value name="8">
<Value>Betrag</Value>
</Value>
<Value name="9">
<Value>Lohnzahlungsart</Value>
</Value>
<Value name="10">
<Value>IBAN</Value>
</Value>
<Value name="11">
<Value>Zahlungshinweis</Value>
</Value>
<Value name="12">
<Value>FaktorArbeitgeber</Value>
</Value>
<Value name="13">
<Value>BetragArbeitgeber</Value>
</Value>
</Data>
<Property name="%%CLASSNAME">
</Property>
<Property name="Ansatz">
</Property>
<Property name="Anzahl">
</Property>
<Property name="Betrag">
</Property>
<Property name="BetragArbeitgeber">
</Property>
<Property name="Einheit">
</Property>
<Property name="Faktor">
</Property>
<Property name="FaktorArbeitgeber">
</Property>
<Property name="IBAN">
</Property>
<Property name="LohnabrechnungKopf">
</Property>
<Property name="Lohnart">
</Property>
<Property name="LohnartText">
</Property>
<Property name="Lohnzahlungsart">
</Property>
<Property name="Zahlungshinweis">
</Property>
<Property name="childsub">
</Property>
</Storage>
</Class>


<Class name="DBLohn.Lohnart">
<Super>%Persistent,%XML.Adaptor,DBCore.MandantRel</Super>
<TimeChanged>62437,55776</TimeChanged>
<TimeCreated>61984,59855.398956</TimeCreated>
<Inheritance>right</Inheritance>

<Parameter name="XMLIGNOREINVALIDATTRIBUTE">
<Description><![CDATA[
Controls how to handle attributes that are unexpected.
-> If this parameter is 1 (the default), such attributes are ignored.
-> If it is 0, they are treated as errors, and import fails.]]></Description>
<Default>1</Default>
</Parameter>

<Parameter name="XMLIGNOREINVALIDTAG">
<Description><![CDATA[
Controls how to handle tags that are unexpected. 
-> If this parameter is 1, such tags are ignored. 
-> If it is 0 (the default), they are treated as errors, and import fails.]]></Description>
<Default>1</Default>
</Parameter>

<Parameter name="XMLIGNORENULL">
<Default>1</Default>
</Parameter>

<Property name="Nummer">
<Description>
Lohnart-Nummer</Description>
<Type>%Integer</Type>
</Property>

<Index name="NummerIndex">
<Data>%%ID,Nummer</Data>
<Properties>Mandant,Nummer</Properties>
<Unique>1</Unique>
</Index>

<Property name="Bezeichnung">
<Description>
Bezeichnung</Description>
<Type>%String</Type>
<Collection>array</Collection>
<Parameter name="MAXLEN" value="255"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Index name="BezeichnungIndex">
<Data>%%ID,Nummer,Bezeichnung(KEYS),Bezeichnung(ELEMENTS)</Data>
<Properties>Mandant:Exact,Bezeichnung(KEYS):Exact,Bezeichnung(ELEMENTS):Exact</Properties>
</Index>

<Property name="Berechnungsart">
<Description>
Berechnungsart</Description>
<Type>%Integer</Type>
</Property>

<Property name="Zugang">
<Description>
Zugang / Abgang</Description>
<Type>%Boolean</Type>
</Property>

<Property name="KalkBruttolohn">
<Description>
Kalkulation Bruttolohn</Description>
<Type>%Boolean</Type>
</Property>

<Property name="KalkAhvAlv">
<Description>
Kalkulation AHV / ALV</Description>
<Type>%Boolean</Type>
</Property>

<Property name="KalkUvg">
<Description>
Kalkulation UVG</Description>
<Type>%Boolean</Type>
</Property>

<Property name="KalkUvgz">
<Description>
Kalkulation UVGZ</Description>
<Type>%Boolean</Type>
</Property>

<Property name="KalkKtg">
<Description>
Kalkulation KTG</Description>
<Type>%Boolean</Type>
</Property>

<Property name="KalkBvg">
<Description>
Kalkulation BVG</Description>
<Type>%Boolean</Type>
</Property>

<Property name="KalkQuellensteuer">
<Description>
Kalkulation Quellensteuer</Description>
<Type>%Boolean</Type>
</Property>

<Property name="KalkBasisDreizehnter">
<Description>
Kalkulationsbasis 13. Monatslohn</Description>
<Type>%Boolean</Type>
</Property>

<Property name="KalkBasisFeriengeld">
<Description>
Kalkulationsbasis Feriengeld</Description>
<Type>%Boolean</Type>
</Property>

<Property name="KalkBasisTeuerungszulage">
<Description>
Kalkulationsbasis Teuerungszulage</Description>
<Type>%Boolean</Type>
</Property>

<Property name="Serienerfassung">
<Description>
Autom. Serienerfassung</Description>
<Type>%Integer</Type>
</Property>

<Property name="Reduktion">
<Description>
Autom. Reduktion</Description>
<Type>%Integer</Type>
</Property>

<Property name="Soll">
<Description>
Soll/Haben-Nummer</Description>
<Type>%Boolean</Type>
</Property>

<Property name="KalkQuellensteuerZulagen">
<Description>
Kalkulation Quellensteuer-Zulagen</Description>
<Type>%Boolean</Type>
</Property>

<Property name="SpezLohnartBezug">
<Description>
Speziallohnarten Bezug</Description>
<Type>%Integer</Type>
</Property>

<Property name="SpezLohnartFaktor">
<Description>
Speziallohnarten Faktor</Description>
<Type>%Decimal</Type>
<Parameter name="SCALE" value="5"/>
</Property>

<Property name="Mutierbar">
<Description>
Mutierbar</Description>
<Type>%Boolean</Type>
</Property>

<Property name="Mandant">
<Type>%String</Type>
</Property>

<ForeignKey name="FKMandant">
<Properties>Mandant</Properties>
<ReferencedClass>DBCore.Mandant</ReferencedClass>
<ReferencedKey>MandIdIndex</ReferencedKey>
</ForeignKey>

<Index name="MandantIdx">
<Properties>Mandant</Properties>
</Index>

<Property name="Verrechnungseinheit">
<Type>DBLohn.SD.VerrechnungEinh</Type>
<Cardinality>one</Cardinality>
<Inverse>Lohnart</Inverse>
<Relationship>1</Relationship>
<Parameter name="XMLELEMENTREF" value="1"/>
<Parameter name="XMLNAME" value="Verrechnungseinheit"/>
<Parameter name="XMLPROJECTION" value="ATTRIBUTE"/>
<Parameter name="XMLREFERENCE" value="ID"/>
</Property>

<Property name="Statistik">
<Type>DBLohn.SD.Statistiktext</Type>
<Cardinality>one</Cardinality>
<Inverse>Lohnart</Inverse>
<Relationship>1</Relationship>
<Parameter name="XMLELEMENTREF" value="1"/>
<Parameter name="XMLNAME" value="Statistik"/>
<Parameter name="XMLPROJECTION" value="ATTRIBUTE"/>
<Parameter name="XMLREFERENCE" value="ID"/>
</Property>

<Property name="Fibukonto">
<Type>DBFibu.Konto</Type>
<Cardinality>one</Cardinality>
<Inverse>Lohnart</Inverse>
<Relationship>1</Relationship>
<Parameter name="XMLELEMENTREF" value="1"/>
<Parameter name="XMLNAME" value="FibuKonto"/>
<Parameter name="XMLPROJECTION" value="ATTRIBUTE"/>
<Parameter name="XMLREFERENCE" value="ID"/>
</Property>

<Property name="FibuKontoAgBeitraege">
<Type>DBFibu.Konto</Type>
<Cardinality>one</Cardinality>
<Inverse>LohnartAGBeitraege</Inverse>
<Relationship>1</Relationship>
<Parameter name="XMLELEMENTREF" value="1"/>
<Parameter name="XMLNAME" value="AGBetraegeKonto"/>
<Parameter name="XMLPROJECTION" value="ATTRIBUTE"/>
<Parameter name="XMLREFERENCE" value="ID"/>
</Property>

<Property name="SpezLohnartLohnart">
<Type>DBLohn.Lohnart</Type>
<Cardinality>one</Cardinality>
<Inverse>SpezLohnartLohnarten</Inverse>
<Relationship>1</Relationship>
<Parameter name="XMLELEMENTREF" value="1"/>
<Parameter name="XMLNAME" value="SpezLohnartLohnart"/>
<Parameter name="XMLPROJECTION" value="ATTRIBUTE"/>
<Parameter name="XMLREFERENCE" value="ID"/>
</Property>

<Property name="SpezLohnartLohnarten">
<Type>DBLohn.Lohnart</Type>
<Cardinality>many</Cardinality>
<Inverse>SpezLohnartLohnart</Inverse>
<Relationship>1</Relationship>
<Parameter name="XMLPROJECTION" value="NONE"/>
</Property>

<Property name="BlsFibuKontoNr">
<Description>
Basislohnartenstamm - Fibukonto Nr</Description>
<Type>%String</Type>
</Property>

<Property name="BlsFibuKontoBez">
<Description>
Basislohnartenstamm - Fibukonto Bezeichnung</Description>
<Type>%String</Type>
</Property>

<Property name="BlsVerrechnungseinheitNr">
<Description>
Basislohnartenstamm - Verrecheneinheit Nr</Description>
<Type>%Integer</Type>
</Property>

<Property name="BlsVerrechnungseinheitBez">
<Description>
Basislohnartenstamm - Verrecheneinheit Bezeichnung</Description>
<Type>%String</Type>
</Property>

<Property name="BlsFibuKontoAgBeitraegeNr">
<Description>
Basislohnartenstamm - Fibukonto Arbeitgeberbeitraege Nr</Description>
<Type>%String</Type>
</Property>

<Property name="BlsFibuKontoAgBeitraegeBez">
<Description>
Basislohnartenstamm - Fibukonto Arbeitgeberbeitraege Bezeichnung</Description>
<Type>%String</Type>
</Property>

<Property name="Arbeitsschema">
<Type>DBLohn.SD.Arbeitsschema</Type>
<Cardinality>many</Cardinality>
<Inverse>Lohnart</Inverse>
<Relationship>1</Relationship>
<Parameter name="XMLPROJECTION" value="NONE"/>
</Property>

<Property name="Lohnausweisposition">
<Description>
LohnausweisPosition</Description>
<Type>%Integer</Type>
</Property>

<Property name="Standardlohnart">
<Description>
Standardlohnart</Description>
<Type>%Boolean</Type>
</Property>

<Property name="BlsStatistikTexteNr">
<Description>
Basislohnartenstamm - StatistikTexte Nr</Description>
<Type>%Integer</Type>
</Property>

<Property name="BlsStatistikTexteBez">
<Description>
Basislohnartenstamm - StatistikTexte Bezeichnung</Description>
<Type>%String</Type>
</Property>

<Property name="LohnartJeMa">
<Type>DBLohn.LohnartJeMa</Type>
<Cardinality>many</Cardinality>
<Inverse>Lohnart</Inverse>
<Relationship>1</Relationship>
<Parameter name="XMLPROJECTION" value="NONE"/>
</Property>

<Property name="LohnabrechnungPos">
<Type>DBLohn.LohnabrechnungPos</Type>
<Cardinality>many</Cardinality>
<Inverse>Lohnart</Inverse>
<Relationship>1</Relationship>
<Parameter name="XMLPROJECTION" value="NONE"/>
</Property>

<Method name="GetBezeichnung">
<FormalSpec>MandOid:%String,Lang:%String</FormalSpec>
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[	Quit ##Class(DBUtils.StringUtils).GetText(..Bezeichnung, Lang, MandOid)
]]></Implementation>
</Method>

<Method name="GetBezeichnungClass">
<ClassMethod>1</ClassMethod>
<FormalSpec>myID:%String,MandOid:%String,Lang:%String</FormalSpec>
<ReturnType>%String</ReturnType>
<SqlProc>1</SqlProc>
<Implementation><![CDATA[
	set bezeichnung = ""
	if ((myID '= "") && (myID '= $c(0))) {
		Set rs=##Class(DBLohn.Lohnart).%OpenId(myID)
		set bezeichnung = rs.GetBezeichnung(MandOid, Lang)
	}
	Quit bezeichnung
]]></Implementation>
</Method>

<Method name="SetBezeichnung">
<FormalSpec>MandOid:%String="",Lang:%String,Value:%String</FormalSpec>
<Implementation><![CDATA[	Do ##class(DBUtils.StringUtils).SetText(..Bezeichnung, Value, Lang, MandOid)
]]></Implementation>
</Method>

<Method name="GetIdByNummerOnMandant">
<ClassMethod>1</ClassMethod>
<FormalSpec>MandantOid:%String,Nummer:%Integer</FormalSpec>
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[

	set id = ""
	&sql(SELECT ID INTO :id FROM DBLohn.Lohnart
		 WHERE NVL(Mandant,'') = :MandantOid AND Nummer = :Nummer)
		 
	if (SQLCODE '= 0) {
		set id = ""
	}
	Quit id
]]></Implementation>
</Method>

<Method name="GetLohnartIdByBezeichnung">
<ClassMethod>1</ClassMethod>
<FormalSpec>MandantOid:%String,Lang:%String,Bezeichnung:%String</FormalSpec>
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[
    set id = ""
    &sql(SELECT TOP 1 ID INTO :id 
        FROM DBLohn.Lohnart
        WHERE NVL(Mandant,'') = :MandantOid AND 
           DBLohn.Lohnart_GetBezeichnungClass(%ID, :MandantOid, :Lang) LIKE :Bezeichnung)
    
    if (SQLCODE '= 0) {
		set id = ""
    }
    
    Quit id
]]></Implementation>
</Method>

<Method name="MoveFirstOnNummer">
<ClassMethod>1</ClassMethod>
<FormalSpec>MandantOid:%String</FormalSpec>
<ReturnType>%List</ReturnType>
<Implementation><![CDATA[
	set list = $ListBuild()
	if ((MandantOid = "") || (MandantOid = $c(0))) {
		set MandantOid = " "
	} else {
		set MandantOid = " "_MandantOid
	}
	set art = $Order(^DBLohn.LohnartI("NummerIndex",MandantOid,""),1)
	if (art '= ""){
		set id = $Order(^DBLohn.LohnartI("NummerIndex",MandantOid,art,""),1,list)
	} else {
		Quit ""	
	}
	Quit list
]]></Implementation>
</Method>

<Method name="MoveLastOnNummer">
<ClassMethod>1</ClassMethod>
<FormalSpec>MandantOid:%String</FormalSpec>
<ReturnType>%List</ReturnType>
<Implementation><![CDATA[
	set list = $ListBuild()
	if ((MandantOid = "") || (MandantOid = $c(0))) {
		set MandantOid = " "
	} else {
		set MandantOid = " "_MandantOid
	}
	set art = $Order(^DBLohn.LohnartI("NummerIndex",MandantOid,""),-1)
	if (art '= ""){
		set id = $Order(^DBLohn.LohnartI("NummerIndex",MandantOid,art,""),-1,list)
	} else {
		Quit ""	
	}
	Quit list
]]></Implementation>
</Method>

<Method name="MoveNextOnNummer">
<ClassMethod>1</ClassMethod>
<FormalSpec>MandantOid:%String,Nummer:%Integer</FormalSpec>
<ReturnType>%List</ReturnType>
<Implementation><![CDATA[
	set list = $ListBuild()
	if ((MandantOid = "") || (MandantOid = $c(0))) {
		set MandantOid = " "
	} else {
		set MandantOid = " "_MandantOid
	}
    set nextNummer = $Order(^DBLohn.LohnartI("NummerIndex",MandantOid,Nummer))
	if (nextNummer '= "") {
		set res = $Order(^DBLohn.LohnartI("NummerIndex",MandantOid,nextNummer,""),1,list)
	} else {
		set list = ##class(DBLohn.Lohnart).MoveLastOnNummer(MandantOid)
	}
	
	Quit list
]]></Implementation>
</Method>

<Method name="MovePrevOnNummer">
<ClassMethod>1</ClassMethod>
<FormalSpec>MandantOid:%String,Nummer:%Integer</FormalSpec>
<ReturnType>%List</ReturnType>
<Implementation><![CDATA[
	set list = $ListBuild()
	if ((MandantOid = "") || (MandantOid = $c(0))) {
		set MandantOid = " "
	} else {
		set MandantOid = " "_MandantOid
	}
    set nextNummer = $Order(^DBLohn.LohnartI("NummerIndex",MandantOid,Nummer),-1)
	if (nextNummer '= "") {
		set res = $Order(^DBLohn.LohnartI("NummerIndex",MandantOid,nextNummer,""),-1,list)
	} else {
		set list = ##class(DBLohn.Lohnart).MoveFirstOnNummer(MandantOid)
	}
	
	Quit list
]]></Implementation>
</Method>

<Method name="MoveFirstOnBezeichnung">
<ClassMethod>1</ClassMethod>
<FormalSpec>MandantOid:%String,Lang:%String</FormalSpec>
<ReturnType>%List</ReturnType>
<Implementation><![CDATA[
	set list = $ListBuild()

	set lang = $Order(^DBLohn.LohnartI("BezeichnungIndex",MandantOid,""),1)
	if (lang '= ""){
		set lohnart = $Order(^DBLohn.LohnartI("BezeichnungIndex",MandantOid,Lang,""),1)
		if (lohnart '= "") {
			set id = $Order(^DBLohn.LohnartI("BezeichnungIndex",MandantOid,Lang,lohnart,""),1,list)
		} else {
			Quit ""
		}
	} else {
		Quit ""	
	}
	Quit list
]]></Implementation>
</Method>

<Method name="MoveLastOnBezeichnung">
<ClassMethod>1</ClassMethod>
<FormalSpec>MandantOid:%String,Lang:%String</FormalSpec>
<ReturnType>%List</ReturnType>
<Implementation><![CDATA[
	set list = $ListBuild()

	set lang = $Order(^DBLohn.LohnartI("BezeichnungIndex",MandantOid,""),1)
	if (lang '= ""){
		set lohnart = $Order(^DBLohn.LohnartI("BezeichnungIndex",MandantOid,Lang,""),-1)
		if (lohnart '= "") {
			set id = $Order(^DBLohn.LohnartI("BezeichnungIndex",MandantOid,Lang,lohnart,""),-1,list)
		} else {
			Quit ""
		}
	} else {
		Quit ""	
	}
	Quit list
]]></Implementation>
</Method>

<Method name="MoveNextOnBezeichnung">
<ClassMethod>1</ClassMethod>
<FormalSpec>MandantOid:%String,Lang:%String,Bezeichnung:%String</FormalSpec>
<ReturnType>%List</ReturnType>
<Implementation><![CDATA[
	set list = $ListBuild()
    set nextNummer = $Order(^DBLohn.LohnartI("BezeichnungIndex",MandantOid,Lang,Bezeichnung))
	if (nextNummer '= "") {
		set res = $Order(^DBLohn.LohnartI("BezeichnungIndex",MandantOid,Lang,nextNummer,""),1,list)
	} else {
		set list = ##class(DBLohn.Lohnart).MoveLastOnBezeichnung(MandantOid,Lang)
	}
	
	Quit list
]]></Implementation>
</Method>

<Method name="MovePrevOnBezeichnung">
<ClassMethod>1</ClassMethod>
<FormalSpec>MandantOid:%String,Lang:%String,Bezeichnung:%String</FormalSpec>
<ReturnType>%List</ReturnType>
<Implementation><![CDATA[
	set list = $ListBuild()
    set nextNummer = $Order(^DBLohn.LohnartI("BezeichnungIndex",MandantOid,Lang,Bezeichnung),-1)
	if (nextNummer '= "") {
		set res = $Order(^DBLohn.LohnartI("BezeichnungIndex",MandantOid,Lang,nextNummer,""),-1,list)
	} else {
		set list = ##class(DBLohn.Lohnart).MoveFirstOnBezeichnung(MandantOid,Lang)
	}
	
	Quit list
]]></Implementation>
</Method>

<Method name="GetFirstIdOnMandant">
<ClassMethod>1</ClassMethod>
<FormalSpec>MandantOid:%String</FormalSpec>
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[
	set id = ""
	&sql(SELECT TOP 1 ID INTO :id FROM DBLohn.Lohnart
		 WHERE NVL(Mandant,'') = :MandantOid ORDER BY Nummer)
		 
	if (SQLCODE '= 0) {
		set id = ""
	}
	Quit id
]]></Implementation>
</Method>

<Method name="GetFirstLohnartIdOnMandant">
<ClassMethod>1</ClassMethod>
<FormalSpec>MandantOid:%String</FormalSpec>
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[
	set id = ""
	&sql(SELECT TOP 1 ID INTO :id FROM DBLohn.Lohnart
		 WHERE NVL(Mandant,'') = :MandantOid AND Nummer > 10
		 ORDER BY Nummer)
		 
	if (SQLCODE '= 0) {
		set id = ""
	}
	Quit id
]]></Implementation>
</Method>

<Method name="GetBerechnungsart">
<ClassMethod>1</ClassMethod>
<FormalSpec>LohnartOid:%String</FormalSpec>
<ReturnType>%Integer</ReturnType>
<Implementation><![CDATA[
  set typ = 0
  &sql(SELECT Berechnungsart INTO :typ 
       FROM DBLohn.Lohnart
       WHERE ID = :LohnartOid)
                                
  if (SQLCODE '= 0) {
       set typ = 0
  }
  Quit typ
]]></Implementation>
</Method>

<Method name="CopyLohnart">
<ClassMethod>1</ClassMethod>
<FormalSpec>VonOid:%String,MandOid:%String,NachNummer:%Integer,NachBez:%String,Lang:%String</FormalSpec>
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[
 set oldLohnart = ##class(DBLohn.Lohnart).%OpenId(VonOid)
 if (oldLohnart '= ""){
    set newLohnart = oldLohnart.%ConstructClone(-1)
    set newLohnart.Nummer = NachNummer
    if (MandOid '= ""){
    set newLohnart.Mandant = MandOid
    do newLohnart.SetBezeichnung(MandOid, Lang, NachBez)
    } else {
     set newLohnart.Mandant = $$$NULLOREF
     do newLohnart.SetBezeichnung("", Lang, NachBez) 
    }
    do newLohnart.%Save()
    set id = newLohnart.%Id()
    set newLohnart = ""
    set oldLohnart = ""
    QUIT id
 } else {
    QUIT ""                 
 }
]]></Implementation>
</Method>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
<DataLocation>^DBLohn.LohnartD</DataLocation>
<DefaultData>LohnartDefaultData</DefaultData>
<IdLocation>^DBLohn.LohnartD</IdLocation>
<IndexLocation>^DBLohn.LohnartI</IndexLocation>
<StreamLocation>^DBLohn.LohnartS</StreamLocation>
<Data name="Bezeichnung">
<Attribute>Bezeichnung</Attribute>
<Structure>subnode</Structure>
<Subscript>"Bezeichnung"</Subscript>
</Data>
<Data name="LohnartDefaultData">
<Structure>listnode</Structure>
<Subscript/>
<Value name="1">
<Value>%%CLASSNAME</Value>
</Value>
<Value name="2">
<Value>Code</Value>
</Value>
<Value name="3">
<Value>Mandant</Value>
</Value>
<Value name="4">
<Value>Verrechnungseinheit</Value>
</Value>
<Value name="5">
<Value>Code2</Value>
</Value>
<Value name="6">
<Value>Code3</Value>
</Value>
<Value name="7">
<Value>Bruttolohn</Value>
</Value>
<Value name="8">
<Value>Berechnungsart</Value>
</Value>
<Value name="9">
<Value>ZugangAbgang</Value>
</Value>
<Value name="10">
<Value>AhvAlv</Value>
</Value>
<Value name="11">
<Value>Uvg</Value>
</Value>
<Value name="12">
<Value>Uvgz</Value>
</Value>
<Value name="13">
<Value>Ktg</Value>
</Value>
<Value name="14">
<Value>Bvg</Value>
</Value>
<Value name="15">
<Value>Quellensteuer</Value>
</Value>
<Value name="16">
<Value>BasisDreizehnter</Value>
</Value>
<Value name="17">
<Value>BasisFeriengeld</Value>
</Value>
<Value name="18">
<Value>BasisTeuerungszulage</Value>
</Value>
<Value name="19">
<Value>ReserveBasis</Value>
</Value>
<Value name="20">
<Value>ReserveBasis2</Value>
</Value>
<Value name="21">
<Value>Serienerfassung</Value>
</Value>
<Value name="22">
<Value>Reduktion</Value>
</Value>
<Value name="23">
<Value>LohnausweisPosition</Value>
</Value>
<Value name="24">
<Value>Statistik</Value>
</Value>
<Value name="25">
<Value>FibuKonto</Value>
</Value>
<Value name="26">
<Value>SollHabenCode</Value>
</Value>
<Value name="27">
<Value>BebuKostenstelle</Value>
</Value>
<Value name="28">
<Value>BebuErtragsKostenart</Value>
</Value>
<Value name="29">
<Value>Umlageschluessel</Value>
</Value>
<Value name="30">
<Value>ReserveBasis3</Value>
</Value>
<Value name="31">
<Value>ReserveBasis4</Value>
</Value>
<Value name="32">
<Value>Fibukonto</Value>
</Value>
<Value name="33">
<Value>BebuKontenstelle</Value>
</Value>
<Value name="34">
<Value>BebuErtragsart</Value>
</Value>
<Value name="35">
<Value>ReserveBasis1</Value>
</Value>
<Value name="36">
<Value>QuellensteuerZulagen</Value>
</Value>
<Value name="37">
<Value>Bezug</Value>
</Value>
<Value name="38">
<Value>Faktor</Value>
</Value>
<Value name="39">
<Value>Mutierbar</Value>
</Value>
<Value name="40">
<Value>Beitraege</Value>
</Value>
<Value name="41">
<Value>LohnartNr</Value>
</Value>
<Value name="42">
<Value>AGBetraegeKonto</Value>
</Value>
<Value name="43">
<Value>LohnartNrBez</Value>
</Value>
<Value name="44">
<Value>LohnartenstammNummern</Value>
</Value>
<Value name="45">
<Value>BasisFibuKontoBez</Value>
</Value>
<Value name="46">
<Value>BasisFibuKontoNr</Value>
</Value>
<Value name="47">
<Value>BasisVerrecheneinheitNr</Value>
</Value>
<Value name="48">
<Value>BasisRueckstellkonto</Value>
</Value>
<Value name="49">
<Value>BasisStandardLohnart</Value>
</Value>
<Value name="50">
<Value>Zugang</Value>
</Value>
<Value name="51">
<Value>KalkBruttolohn</Value>
</Value>
<Value name="52">
<Value>KalkAhvAlv</Value>
</Value>
<Value name="53">
<Value>KalkUvg</Value>
</Value>
<Value name="54">
<Value>KalkUvgz</Value>
</Value>
<Value name="55">
<Value>KalkKtg</Value>
</Value>
<Value name="56">
<Value>KalkBvg</Value>
</Value>
<Value name="57">
<Value>KalkQuellensteuer</Value>
</Value>
<Value name="58">
<Value>KalkBasisDreizehnter</Value>
</Value>
<Value name="59">
<Value>KalkBasisFeriengeld</Value>
</Value>
<Value name="60">
<Value>KalkBasisTeuerungszulage</Value>
</Value>
<Value name="61">
<Value>Soll</Value>
</Value>
<Value name="62">
<Value>BebuUmlageschluessel</Value>
</Value>
<Value name="63">
<Value>KalkQuellensteuerZulagen</Value>
</Value>
<Value name="64">
<Value>SpezLohnArtBezug</Value>
</Value>
<Value name="65">
<Value>SpezLohnArtFaktor</Value>
</Value>
<Value name="66">
<Value>FibuKontoAgBeitraege</Value>
</Value>
<Value name="67">
<Value>BlsFibuKontoNr</Value>
</Value>
<Value name="68">
<Value>BlsFibuKontoBez</Value>
</Value>
<Value name="69">
<Value>BlsVerrechnungseinheitNr</Value>
</Value>
<Value name="70">
<Value>BlsVerrechnungseinheitBez</Value>
</Value>
<Value name="71">
<Value>BlsFibuKontoAgBeitraegeNr</Value>
</Value>
<Value name="72">
<Value>BlsFibuKontoAgBeitraegeBez</Value>
</Value>
<Value name="73">
<Value>Lohnausweisposition</Value>
</Value>
<Value name="74">
<Value>SpezLohnartBezug</Value>
</Value>
<Value name="75">
<Value>SpezLohnartFaktor</Value>
</Value>
<Value name="76">
<Value>SpezLohnartLohnart</Value>
</Value>
<Value name="77">
<Value>Nummer</Value>
</Value>
<Value name="78">
<Value>Standardlohnart</Value>
</Value>
<Value name="79">
<Value>BlsStatistikTexteNr</Value>
</Value>
<Value name="80">
<Value>BlsStatistikTexteBez</Value>
</Value>
</Data>
<Property name="%%CLASSNAME">
</Property>
<Property name="AGBetraegeKonto"/>
<Property name="AhvAlv"/>
<Property name="BasisDreizehnter"/>
<Property name="BasisFeriengeld"/>
<Property name="BasisFibuKontoBez"/>
<Property name="BasisFibuKontoNr"/>
<Property name="BasisRueckstellkonto"/>
<Property name="BasisStandardLohnart"/>
<Property name="BasisTeuerungszulage"/>
<Property name="BasisVerrecheneinheitNr"/>
<Property name="BebuErtragsart"/>
<Property name="BebuKontenstelle"/>
<Property name="Beitraege"/>
<Property name="Berechnungsart">
</Property>
<Property name="Bezug"/>
<Property name="BlsFibuKontoAgBeitraegeBez">
</Property>
<Property name="BlsFibuKontoAgBeitraegeNr">
</Property>
<Property name="BlsFibuKontoBez">
</Property>
<Property name="BlsFibuKontoNr">
</Property>
<Property name="BlsStatistikTexteBez">
</Property>
<Property name="BlsStatistikTexteNr">
</Property>
<Property name="BlsVerrechnungseinheitBez">
</Property>
<Property name="BlsVerrechnungseinheitNr">
</Property>
<Property name="Bruttolohn"/>
<Property name="Bvg"/>
<Property name="Code"/>
<Property name="Faktor"/>
<Property name="FibuKontoAgBeitraege">
</Property>
<Property name="Fibukonto">
</Property>
<Property name="KalkAhvAlv">
</Property>
<Property name="KalkBasisDreizehnter">
</Property>
<Property name="KalkBasisFeriengeld">
</Property>
<Property name="KalkBasisTeuerungszulage">
</Property>
<Property name="KalkBruttolohn">
</Property>
<Property name="KalkBvg">
</Property>
<Property name="KalkKtg">
</Property>
<Property name="KalkQuellensteuer">
</Property>
<Property name="KalkQuellensteuerZulagen">
</Property>
<Property name="KalkUvg">
</Property>
<Property name="KalkUvgz">
</Property>
<Property name="Ktg"/>
<Property name="LohnartNr"/>
<Property name="LohnartenstammNummern"/>
<Property name="LohnausweisPosition"/>
<Property name="Lohnausweisposition">
</Property>
<Property name="Mandant">
</Property>
<Property name="Mutierbar">
</Property>
<Property name="Nummer">
</Property>
<Property name="Quellensteuer"/>
<Property name="QuellensteuerZulagen"/>
<Property name="Reduktion">
</Property>
<Property name="ReserveBasis1"/>
<Property name="ReserveBasis2"/>
<Property name="ReserveBasis3"/>
<Property name="ReserveBasis4"/>
<Property name="Serienbrieferfassung"/>
<Property name="Serienerfassung">
</Property>
<Property name="Soll">
</Property>
<Property name="SollHabenCode"/>
<Property name="SpezLohnartBezug">
</Property>
<Property name="SpezLohnartFaktor">
</Property>
<Property name="SpezLohnartLohnart">
</Property>
<Property name="Standardlohnart">
</Property>
<Property name="Statistik">
</Property>
<Property name="Umlageschluessel"/>
<Property name="Uvg"/>
<Property name="Uvgz"/>
<Property name="Verrechnungseinheit">
</Property>
<Property name="Zugang">
</Property>
<Property name="ZugangAbgang"/>
</Storage>
</Class>


<Class name="DBLohn.LohnartJeMa">
<Super>%Persistent,%XML.Adaptor,DBCore.MandantRel</Super>
<TimeChanged>62437,55776</TimeChanged>
<TimeCreated>62396,54434.001171</TimeCreated>
<Inheritance>right</Inheritance>

<Parameter name="XMLIGNOREINVALIDATTRIBUTE">
<Description><![CDATA[
Controls how to handle attributes that are unexpected.
-> If this parameter is 1 (the default), such attributes are ignored.
-> If it is 0, they are treated as errors, and import fails.]]></Description>
<Default>1</Default>
</Parameter>

<Parameter name="XMLIGNOREINVALIDTAG">
<Description><![CDATA[
Controls how to handle tags that are unexpected. 
-> If this parameter is 1, such tags are ignored. 
-> If it is 0 (the default), they are treated as errors, and import fails.]]></Description>
<Default>1</Default>
</Parameter>

<Parameter name="XMLIGNORENULL">
<Default>1</Default>
</Parameter>

<Property name="Mitarbeiter">
<Type>DBLohn.Mitarbeiter</Type>
<Cardinality>one</Cardinality>
<Inverse>LohnartJeMa</Inverse>
<Relationship>1</Relationship>
<Parameter name="XMLELEMENTREF" value="1"/>
<Parameter name="XMLNAME" value="Mitarbeiter"/>
<Parameter name="XMLPROJECTION" value="ATTRIBUTE"/>
<Parameter name="XMLREFERENCE" value="ID"/>
</Property>

<Index name="MitarbeiterIndex">
<Properties>Mitarbeiter</Properties>
</Index>

<Property name="Lohnart">
<Type>DBLohn.Lohnart</Type>
<Cardinality>one</Cardinality>
<Inverse>LohnartJeMa</Inverse>
<Relationship>1</Relationship>
<Parameter name="XMLELEMENTREF" value="1"/>
<Parameter name="XMLNAME" value="Lohnart"/>
<Parameter name="XMLPROJECTION" value="ATTRIBUTE"/>
<Parameter name="XMLREFERENCE" value="ID"/>
</Property>

<Index name="LohnartIndex">
<Properties>Lohnart</Properties>
</Index>

<Property name="LohnartText">
<Type>%String</Type>
<Parameter name="MAXLEN" value="255"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="Einheit">
<Type>%String</Type>
<Parameter name="MAXLEN" value="255"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="Anzahl">
<Type>%Decimal</Type>
<Parameter name="SCALE" value="5"/>
</Property>

<Property name="Faktor">
<Type>%Decimal</Type>
<Parameter name="SCALE" value="5"/>
</Property>

<Property name="Ansatz">
<Type>%Decimal</Type>
<Parameter name="SCALE" value="5"/>
</Property>

<Property name="Betrag">
<Type>%Decimal</Type>
<Parameter name="SCALE" value="5"/>
</Property>

<Property name="Lohnzahlungsart">
<Type>DBLohn.SD.Lohnzahlungsart</Type>
<Cardinality>one</Cardinality>
<Inverse>LohnartJeMa</Inverse>
<Relationship>1</Relationship>
<Parameter name="XMLELEMENTREF" value="1"/>
<Parameter name="XMLNAME" value="Lohnzahlungsart"/>
<Parameter name="XMLPROJECTION" value="ATTRIBUTE"/>
<Parameter name="XMLREFERENCE" value="ID"/>
</Property>

<Index name="LohnzahlungsartIndex">
<Properties>Lohnzahlungsart</Properties>
</Index>

<Property name="IBAN">
<Type>%String</Type>
<Parameter name="MAXLEN" value="50"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="Zahlungshinweis">
<Type>%String</Type>
<Parameter name="MAXLEN" value="100"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Index name="MaLohnartIndex">
<Properties>Mitarbeiter,Lohnart</Properties>
<Unique>1</Unique>
</Index>

<Method name="GetIdByMaLohnart">
<ClassMethod>1</ClassMethod>
<FormalSpec>MitarbeiterOid:%String,LohnartOid:%String</FormalSpec>
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[
	set id = ""
	&sql(SELECT ID INTO :id 
			FROM DBLohn.LohnartJeMa
		 	WHERE Mitarbeiter = :MitarbeiterOid AND 
		 		Lohnart = :LohnartOid)
		 	
	if (SQLCODE'=0) {
		set id = ""
	}
	Quit id
]]></Implementation>
</Method>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
<DataLocation>^DBLohn.LohnartJeMaD</DataLocation>
<DefaultData>LohnartJeMaDefaultData</DefaultData>
<IdLocation>^DBLohn.LohnartJeMaD</IdLocation>
<IndexLocation>^DBLohn.LohnartJeMaI</IndexLocation>
<StreamLocation>^DBLohn.LohnartJeMaS</StreamLocation>
<Data name="LohnartJeMaDefaultData">
<Structure>listnode</Structure>
<Subscript/>
<Value name="1">
<Value>%%CLASSNAME</Value>
</Value>
<Value name="2">
<Value>Mitarbeiter</Value>
</Value>
<Value name="3">
<Value>Lohnart</Value>
</Value>
<Value name="4">
<Value>LohnartText</Value>
</Value>
<Value name="5">
<Value>Einheit</Value>
</Value>
<Value name="6">
<Value>Anzahl</Value>
</Value>
<Value name="7">
<Value>Faktor</Value>
</Value>
<Value name="8">
<Value>Ansatz</Value>
</Value>
<Value name="9">
<Value>Betrag</Value>
</Value>
<Value name="10">
<Value>Lohnzahlungsart</Value>
</Value>
<Value name="11">
<Value>IBAN</Value>
</Value>
<Value name="12">
<Value>Zahlungshinweis</Value>
</Value>
</Data>
<Property name="%%CLASSNAME">
</Property>
<Property name="Ansatz">
</Property>
<Property name="Anzahl">
</Property>
<Property name="Betrag">
</Property>
<Property name="Einheit">
</Property>
<Property name="Faktor">
</Property>
<Property name="IBAN">
</Property>
<Property name="Lohnart">
</Property>
<Property name="LohnartText">
</Property>
<Property name="Lohnzahlungsart">
</Property>
<Property name="Mitarbeiter">
</Property>
<Property name="Zahlungshinweis">
</Property>
</Storage>
</Class>


<Class name="DBLohn.Mitarbeiter">
<Super>%Persistent,%XML.Adaptor</Super>
<TimeChanged>62439,43050.501213</TimeChanged>
<TimeCreated>62376,43174.784661</TimeCreated>
<Inheritance>right</Inheritance>

<Parameter name="XMLIGNOREINVALIDATTRIBUTE">
<Description><![CDATA[
Controls how to handle attributes that are unexpected.
-> If this parameter is 1 (the default), such attributes are ignored.
-> If it is 0, they are treated as errors, and import fails.]]></Description>
<Default>1</Default>
</Parameter>

<Parameter name="XMLIGNOREINVALIDTAG">
<Description><![CDATA[
Controls how to handle tags that are unexpected. 
-> If this parameter is 1, such tags are ignored. 
-> If it is 0 (the default), they are treated as errors, and import fails.]]></Description>
<Default>1</Default>
</Parameter>

<Parameter name="XMLIGNORENULL">
<Default>1</Default>
</Parameter>

<Property name="IdForExport">
<Type>%XML.Id</Type>
<Private>1</Private>
<Transient>1</Transient>
<Parameter name="XMLNAME" value="ID"/>
<Parameter name="XMLPROJECTION" value="ATTRIBUTE"/>
</Property>

<Property name="MitarbeiterBasis">
<Type>DBCore.Mitarbeiter</Type>
<Cardinality>parent</Cardinality>
<Inverse>MitarbeiterLohn</Inverse>
<Relationship>1</Relationship>
</Property>

<Property name="PartnerName">
<Type>%String</Type>
<Parameter name="MAXLEN" value="50"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="PartnerVorname">
<Type>%String</Type>
<Parameter name="MAXLEN" value="50"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="Bemerkung">
<Type>%String</Type>
<Parameter name="MAXLEN" value="255"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="ZarNr">
<Type>%String</Type>
<Parameter name="MAXLEN" value="50"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="Ferienart">
<Type>%Integer</Type>
</Property>

<Property name="Geburtsdatum">
<Type>%Date</Type>
</Property>

<Property name="Konfession">
<Type>DBLohn.SD.Konfession</Type>
<Cardinality>one</Cardinality>
<Inverse>Mitarbeiter</Inverse>
<Relationship>1</Relationship>
<Parameter name="XMLELEMENTREF" value="1"/>
<Parameter name="XMLNAME" value="Konfession"/>
<Parameter name="XMLPROJECTION" value="ATTRIBUTE"/>
<Parameter name="XMLREFERENCE" value="ID"/>
</Property>

<Property name="Geschlecht">
<Type>%Integer</Type>
</Property>

<Property name="Alleinerziehend">
<Type>%Boolean</Type>
</Property>

<Property name="Zivilstand">
<Type>%Integer</Type>
</Property>

<Property name="Beschaeftigungsgrad">
<Type>%Decimal</Type>
<Parameter name="SCALE" value="5"/>
</Property>

<Property name="Kategorie">
<Type>DBLohn.SD.MitarbeiterKat</Type>
<Cardinality>one</Cardinality>
<Inverse>Mitarbeiter</Inverse>
<Relationship>1</Relationship>
<Parameter name="XMLELEMENTREF" value="1"/>
<Parameter name="XMLNAME" value="Kategorie"/>
<Parameter name="XMLPROJECTION" value="ATTRIBUTE"/>
<Parameter name="XMLREFERENCE" value="ID"/>
</Property>

<Property name="Niederlassung">
<Type>DBLohn.SD.Niederlassung</Type>
<Cardinality>one</Cardinality>
<Inverse>Mitarbeiter</Inverse>
<Relationship>1</Relationship>
<Parameter name="XMLELEMENTREF" value="1"/>
<Parameter name="XMLNAME" value="Niederlassung"/>
<Parameter name="XMLPROJECTION" value="ATTRIBUTE"/>
<Parameter name="XMLREFERENCE" value="ID"/>
</Property>

<Property name="Kinder">
<Type>DBLohn.MitarbeiterKind</Type>
<Cardinality>children</Cardinality>
<Inverse>Mitarbeiter</Inverse>
<Relationship>1</Relationship>
</Property>

<Property name="Staatsangehoerigkeit">
<Type>DBLohn.SD.StaatsAng</Type>
<Cardinality>one</Cardinality>
<Inverse>Mitarbeiter</Inverse>
<Relationship>1</Relationship>
<Parameter name="XMLELEMENTREF" value="1"/>
<Parameter name="XMLNAME" value="Staatsangehoerigkeit"/>
<Parameter name="XMLPROJECTION" value="ATTRIBUTE"/>
<Parameter name="XMLREFERENCE" value="ID"/>
</Property>

<Property name="EinAustritte">
<Type>DBLohn.MitarbeiterEinAustritt</Type>
<Cardinality>children</Cardinality>
<Inverse>Mitarbeiter</Inverse>
<Relationship>1</Relationship>
</Property>

<Property name="Fusstext">
<Type>DBLohn.SD.Fusstext</Type>
<Cardinality>one</Cardinality>
<Inverse>Mitarbeiter</Inverse>
<Relationship>1</Relationship>
<Parameter name="XMLELEMENTREF" value="1"/>
<Parameter name="XMLNAME" value="Fusstext"/>
<Parameter name="XMLPROJECTION" value="ATTRIBUTE"/>
<Parameter name="XMLREFERENCE" value="ID"/>
</Property>

<Property name="LohnartJeMa">
<Type>DBLohn.LohnartJeMa</Type>
<Cardinality>many</Cardinality>
<Inverse>Mitarbeiter</Inverse>
<Relationship>1</Relationship>
</Property>

<Property name="LohnabrechnungKopf">
<Type>DBLohn.LohnabrechnungKopf</Type>
<Cardinality>many</Cardinality>
<Inverse>Mitarbeiter</Inverse>
<Relationship>1</Relationship>
</Property>

<Property name="FeriengeldProzentsatz">
<Type>%Decimal</Type>
<Parameter name="SCALE" value="5"/>
</Property>

<Property name="Versicherung">
<Type>DBLohn.MitarbeiterVs</Type>
<Cardinality>one</Cardinality>
<Inverse>Mitarbeiter</Inverse>
<Relationship>1</Relationship>
</Property>

<Property name="Selektion">
<Type>DBLohn.MitarbeiterSel</Type>
<Cardinality>one</Cardinality>
<Inverse>Mitarbeiter</Inverse>
<Relationship>1</Relationship>
</Property>

<Property name="Lohnausweis">
<Type>DBLohn.MitarbeiterAusw</Type>
<Cardinality>one</Cardinality>
<Inverse>Mitarbeiter</Inverse>
<Relationship>1</Relationship>
</Property>

<Property name="AlternativNr">
<Type>%Integer</Type>
</Property>

<Method name="GetMitarbeiterOidByBasisMa">
<ClassMethod>1</ClassMethod>
<FormalSpec>BasisMitarbeiterOid:%String</FormalSpec>
<ReturnType>%String</ReturnType>
<SqlProc>1</SqlProc>
<Implementation><![CDATA[
    set ma = ""
    &sql(SELECT ID INTO :ma 
        FROM DBLohn.Mitarbeiter 
        WHERE MitarbeiterBasis = :BasisMitarbeiterOid)
                    
    if (SQLCODE '= 0) {
		set ma = ""
    }
    quit ma
]]></Implementation>
</Method>

<Method name="GetMitarbeiterOidByAlternativNr">
<ClassMethod>1</ClassMethod>
<FormalSpec>MandantOid:%String,AlternativNr:%Integer</FormalSpec>
<ReturnType>%String</ReturnType>
<SqlProc>1</SqlProc>
<Implementation><![CDATA[
    set ma = ""
    &sql(SELECT ID INTO :ma 
        FROM DBLohn.Mitarbeiter 
        WHERE MitarbeiterBasis->Mandant = :MandantOid AND
        	AlternativNr = :AlternativNr)
                    
    if (SQLCODE '= 0) {
		set ma = ""
    }
    quit ma
]]></Implementation>
</Method>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
<DataLocation>^DBLohn.MitarbeiterD</DataLocation>
<DefaultData>MitarbeiterDefaultData</DefaultData>
<IdLocation>^DBLohn.MitarbeiterD</IdLocation>
<IndexLocation>^DBLohn.MitarbeiterI</IndexLocation>
<StreamLocation>^DBLohn.MitarbeiterS</StreamLocation>
<Data name="MitarbeiterDefaultData">
<Value name="1">
<Value>%%CLASSNAME</Value>
</Value>
<Value name="2">
<Value>PartnerName</Value>
</Value>
<Value name="3">
<Value>PartnerVorname</Value>
</Value>
<Value name="4">
<Value>Bemerkung</Value>
</Value>
<Value name="5">
<Value>ZarNr</Value>
</Value>
<Value name="6">
<Value>Ferienart</Value>
</Value>
<Value name="7">
<Value>Geburtsdatum</Value>
</Value>
<Value name="8">
<Value>Konfession</Value>
</Value>
<Value name="9">
<Value>Geschlecht</Value>
</Value>
<Value name="10">
<Value>Alleinerziehend</Value>
</Value>
<Value name="11">
<Value>Zivilstand</Value>
</Value>
<Value name="12">
<Value>Beschaeftigungsgrad</Value>
</Value>
<Value name="13">
<Value>Kategorie</Value>
</Value>
<Value name="14">
<Value>Niederlassung</Value>
</Value>
<Value name="15">
<Value>Staatsangehoerigkeit</Value>
</Value>
<Value name="16">
<Value>Fusstext</Value>
</Value>
<Value name="17">
<Value>AhvAlvAdresse</Value>
</Value>
<Value name="18">
<Value>UvgAdresse</Value>
</Value>
<Value name="19">
<Value>UvgzAdresse</Value>
</Value>
<Value name="20">
<Value>KtgAdresse</Value>
</Value>
<Value name="21">
<Value>KrankenkasseAdresse</Value>
</Value>
<Value name="22">
<Value>BvgAdresse</Value>
</Value>
<Value name="23">
<Value>FakAdresse</Value>
</Value>
<Value name="24">
<Value>Ahv</Value>
</Value>
<Value name="25">
<Value>Alv</Value>
</Value>
<Value name="26">
<Value>Uvg</Value>
</Value>
<Value name="27">
<Value>UvgBetriebsteil</Value>
</Value>
<Value name="28">
<Value>Uvgz</Value>
</Value>
<Value name="29">
<Value>Ktg</Value>
</Value>
<Value name="30">
<Value>Krankenkasse</Value>
</Value>
<Value name="31">
<Value>KrankenkasseFixbetragAN</Value>
</Value>
<Value name="32">
<Value>Bvg</Value>
</Value>
<Value name="33">
<Value>BvgFixbetragAN</Value>
</Value>
<Value name="34">
<Value>BvgFixbetragAG</Value>
</Value>
<Value name="35">
<Value>SozialversicherungsNr</Value>
</Value>
<Value name="36">
<Value>SozialversicherungsNrUnbekannt</Value>
</Value>
<Value name="37">
<Value>QsQuellensteuer</Value>
</Value>
<Value name="38">
<Value>QsArbeitskanton</Value>
</Value>
<Value name="39">
<Value>QsWohnkanton</Value>
</Value>
<Value name="40">
<Value>QsKirchensteuer</Value>
</Value>
<Value name="41">
<Value>QsAbweichendeKinderanzahl</Value>
</Value>
<Value name="42">
<Value>QsAnzahlAbweichendeKinder</Value>
</Value>
<Value name="43">
<Value>QsFreibetrag</Value>
</Value>
<Value name="44">
<Value>QsFixerProzentsatz</Value>
</Value>
<Value name="45">
<Value>QsAdresse</Value>
</Value>
<Value name="46">
<Value>Selektion1</Value>
</Value>
<Value name="47">
<Value>Selektion2</Value>
</Value>
<Value name="48">
<Value>Selektion3</Value>
</Value>
<Value name="49">
<Value>Selektion4</Value>
</Value>
<Value name="50">
<Value>Selektion5</Value>
</Value>
<Value name="51">
<Value>SelDatum1</Value>
</Value>
<Value name="52">
<Value>SelDatum2</Value>
</Value>
<Value name="53">
<Value>SelDatum3</Value>
</Value>
<Value name="54">
<Value>SelDatum4</Value>
</Value>
<Value name="55">
<Value>SelDatum5</Value>
</Value>
<Value name="56">
<Value>LohnALohnausw</Value>
</Value>
<Value name="57">
<Value>LohnBRentenBesch</Value>
</Value>
<Value name="58">
<Value>LohnFUnentgeldliche</Value>
</Value>
<Value name="59">
<Value>LohnGKantinenverpflegung</Value>
</Value>
<Value name="60">
<Value>LohnAndereNebenL</Value>
</Value>
<Value name="61">
<Value>LohnUnregelmaessigeL</Value>
</Value>
<Value name="62">
<Value>LohnKapitalL</Value>
</Value>
<Value name="63">
<Value>LohnAndereL</Value>
</Value>
<Value name="64">
<Value>LohnReise</Value>
</Value>
<Value name="65">
<Value>LohnUebrigeEffektiv</Value>
</Value>
<Value name="66">
<Value>LohnWeitereGehLeis1</Value>
</Value>
<Value name="67">
<Value>LohnWeitereGehLeis2</Value>
</Value>
<Value name="68">
<Value>LohnBem1</Value>
</Value>
<Value name="69">
<Value>LohnBem2</Value>
</Value>
<Value name="70">
<Value>LohnMitarbDurch</Value>
</Value>
<Value name="71">
<Value>LohnGenehmigtAm</Value>
</Value>
<Value name="72">
<Value>LohnImKanton</Value>
</Value>
<Value name="73">
<Value>LohnMitarbBetNoch</Value>
</Value>
<Value name="74">
<Value>LohnGrund</Value>
</Value>
<Value name="75">
<Value>LohnKinderzulagen</Value>
</Value>
<Value name="76">
<Value>LohnAusbezUmzugK</Value>
</Value>
<Value name="77">
<Value>LohnPrivatantWVerfahren</Value>
</Value>
<Value name="78">
<Value>LohnPrivatWGenAm</Value>
</Value>
<Value name="79">
<Value>LohnPrivatWGenImKant</Value>
</Value>
<Value name="80">
<Value>LohnSpesenGenAm</Value>
</Value>
<Value name="81">
<Value>LohnSpesenGenImKant</Value>
</Value>
<Value name="82">
<Value>LohnBedinungVonRz52</Value>
</Value>
<Value name="83">
<Value>FeriengeldProzentsatz</Value>
</Value>
<Value name="84">
<Value>QsIndividualTarifCode</Value>
</Value>
<Value name="85">
<Value>Versicherung</Value>
</Value>
<Value name="86">
<Value>Selektion</Value>
</Value>
<Value name="87">
<Value>Lohnausweis</Value>
</Value>
<Value name="88">
<Value>AlternativNr</Value>
</Value>
</Data>
<Property name="%%CLASSNAME">
</Property>
<Property name="Ahv"/>
<Property name="AhvAlvAdresse"/>
<Property name="Alleinerziehend">
</Property>
<Property name="Alv"/>
<Property name="Bemerkung">
</Property>
<Property name="Beschaeftigungsgrad">
</Property>
<Property name="Bvg"/>
<Property name="BvgAdresse"/>
<Property name="BvgFixbetragAG"/>
<Property name="BvgFixbetragAN"/>
<Property name="FakAdresse"/>
<Property name="Ferienart">
</Property>
<Property name="FeriengeldProzentsatz">
</Property>
<Property name="Fusstext">
</Property>
<Property name="Geburtsdatum">
</Property>
<Property name="Geschlecht">
</Property>
<Property name="Kategorie">
</Property>
<Property name="Konfession">
</Property>
<Property name="Krankenkasse"/>
<Property name="KrankenkasseAdresse"/>
<Property name="KrankenkasseFixbetragAN"/>
<Property name="Ktg"/>
<Property name="KtgAdresse"/>
<Property name="Lohnausweis">
</Property>
<Property name="MitarbeiterBasis">
</Property>
<Property name="Niederlassung">
</Property>
<Property name="PartnerName">
</Property>
<Property name="PartnerVorname">
</Property>
<Property name="QsAbweichendeKinderanzahl"/>
<Property name="QsAdresse"/>
<Property name="QsAnzahlAbweichendeKinder"/>
<Property name="QsArbeitskanton"/>
<Property name="QsFixerProzentsatz"/>
<Property name="QsFreibetrag"/>
<Property name="QsKirchensteuer"/>
<Property name="QsQuellensteuer"/>
<Property name="QsWohnkanton"/>
<Property name="SelDatum1"/>
<Property name="SelDatum2"/>
<Property name="SelDatum3"/>
<Property name="SelDatum4"/>
<Property name="SelDatum5"/>
<Property name="Selektion">
</Property>
<Property name="Selektion1"/>
<Property name="Selektion2"/>
<Property name="Selektion3"/>
<Property name="Selektion4"/>
<Property name="Selektion5"/>
<Property name="SozialversicherungsNr"/>
<Property name="SozialversicherungsNrUnbekannt"/>
<Property name="Staatsangehoerigkeit">
</Property>
<Property name="Uvg"/>
<Property name="UvgAdresse"/>
<Property name="UvgBetriebsteil"/>
<Property name="Uvgz"/>
<Property name="UvgzAdresse"/>
<Property name="Versicherung">
</Property>
<Property name="ZarNr">
</Property>
<Property name="Zivilstand">
</Property>
<Property name="childsub">
</Property>
</Storage>
</Class>


<Class name="DBLohn.MitarbeiterAusw">
<Super>%Persistent,%XML.Adaptor</Super>
<TimeChanged>62430,54840.330997</TimeChanged>
<TimeCreated>62430,53998.511369</TimeCreated>

<Property name="Mitarbeiter">
<Type>DBLohn.Mitarbeiter</Type>
<Cardinality>many</Cardinality>
<Inverse>Lohnausweis</Inverse>
<Relationship>1</Relationship>
</Property>

<Property name="LohnALohnausw">
<Type>%Boolean</Type>
</Property>

<Property name="LohnBRentenBesch">
<Type>%Boolean</Type>
</Property>

<Property name="LohnFUnentgeldliche">
<Type>%Boolean</Type>
</Property>

<Property name="LohnGKantinenverpflegung">
<Type>%Boolean</Type>
</Property>

<Property name="LohnAndereNebenL">
<Type>%String</Type>
</Property>

<Property name="LohnUnregelmaessigeL">
<Type>%String</Type>
</Property>

<Property name="LohnKapitalL">
<Type>%String</Type>
</Property>

<Property name="LohnAndereL">
<Type>%String</Type>
</Property>

<Property name="LohnReise">
<Type>%Boolean</Type>
</Property>

<Property name="LohnUebrigeEffektiv">
<Type>%String</Type>
</Property>

<Property name="LohnWeitereGehLeis1">
<Type>%String</Type>
</Property>

<Property name="LohnWeitereGehLeis2">
<Type>%String</Type>
</Property>

<Property name="LohnBem1">
<Type>%String</Type>
</Property>

<Property name="LohnBem2">
<Type>%String</Type>
</Property>

<Property name="LohnMitarbDurch">
<Type>%String</Type>
</Property>

<Property name="LohnGenehmigtAm">
<Type>%Date</Type>
</Property>

<Property name="LohnImKanton">
<Type>%String</Type>
</Property>

<Property name="LohnMitarbBetNoch">
<Type>%Boolean</Type>
</Property>

<Property name="LohnGrund">
<Type>%Integer</Type>
</Property>

<Property name="LohnKinderzulagen">
<Type>%Boolean</Type>
</Property>

<Property name="LohnAusbezUmzugK">
<Type>%Decimal</Type>
<Parameter name="SCALE" value="5"/>
</Property>

<Property name="LohnPrivatantWVerfahren">
<Type>%Boolean</Type>
</Property>

<Property name="LohnPrivatWGenAm">
<Type>%Date</Type>
</Property>

<Property name="LohnPrivatWGenImKant">
<Type>%String</Type>
</Property>

<Property name="LohnSpesenGenAm">
<Type>%Date</Type>
</Property>

<Property name="LohnSpesenGenImKant">
<Type>%String</Type>
</Property>

<Property name="LohnBedinungVonRz52">
<Type>%Boolean</Type>
</Property>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
<DataLocation>^DBLohn.MitarbeiterAuswD</DataLocation>
<DefaultData>MitarbeiterAuswDefaultData</DefaultData>
<IdLocation>^DBLohn.MitarbeiterAuswD</IdLocation>
<IndexLocation>^DBLohn.MitarbeiterAuswI</IndexLocation>
<StreamLocation>^DBLohn.MitarbeiterAuswS</StreamLocation>
<Data name="MitarbeiterAuswDefaultData">
<Structure>listnode</Structure>
<Subscript/>
<Value name="1">
<Value>%%CLASSNAME</Value>
</Value>
<Value name="2">
<Value>LohnALohnausw</Value>
</Value>
<Value name="3">
<Value>LohnBRentenBesch</Value>
</Value>
<Value name="4">
<Value>LohnFUnentgeldliche</Value>
</Value>
<Value name="5">
<Value>LohnGKantinenverpflegung</Value>
</Value>
<Value name="6">
<Value>LohnAndereNebenL</Value>
</Value>
<Value name="7">
<Value>LohnUnregelmaessigeL</Value>
</Value>
<Value name="8">
<Value>LohnKapitalL</Value>
</Value>
<Value name="9">
<Value>LohnAndereL</Value>
</Value>
<Value name="10">
<Value>LohnReise</Value>
</Value>
<Value name="11">
<Value>LohnUebrigeEffektiv</Value>
</Value>
<Value name="12">
<Value>LohnWeitereGehLeis1</Value>
</Value>
<Value name="13">
<Value>LohnWeitereGehLeis2</Value>
</Value>
<Value name="14">
<Value>LohnBem1</Value>
</Value>
<Value name="15">
<Value>LohnBem2</Value>
</Value>
<Value name="16">
<Value>LohnMitarbDurch</Value>
</Value>
<Value name="17">
<Value>LohnGenehmigtAm</Value>
</Value>
<Value name="18">
<Value>LohnImKanton</Value>
</Value>
<Value name="19">
<Value>LohnMitarbBetNoch</Value>
</Value>
<Value name="20">
<Value>LohnGrund</Value>
</Value>
<Value name="21">
<Value>LohnKinderzulagen</Value>
</Value>
<Value name="22">
<Value>LohnAusbezUmzugK</Value>
</Value>
<Value name="23">
<Value>LohnPrivatantWVerfahren</Value>
</Value>
<Value name="24">
<Value>LohnPrivatWGenAm</Value>
</Value>
<Value name="25">
<Value>LohnPrivatWGenImKant</Value>
</Value>
<Value name="26">
<Value>LohnSpesenGenAm</Value>
</Value>
<Value name="27">
<Value>LohnSpesenGenImKant</Value>
</Value>
<Value name="28">
<Value>LohnBedinungVonRz52</Value>
</Value>
</Data>
</Storage>
</Class>


<Class name="DBLohn.MitarbeiterEinAustritt">
<Super>%Persistent,%XML.Adaptor</Super>
<TimeChanged>62437,55776</TimeChanged>
<TimeCreated>62381,54014.152525</TimeCreated>
<Inheritance>right</Inheritance>

<Parameter name="XMLIGNOREINVALIDATTRIBUTE">
<Description><![CDATA[
Controls how to handle attributes that are unexpected.
-> If this parameter is 1 (the default), such attributes are ignored.
-> If it is 0, they are treated as errors, and import fails.]]></Description>
<Default>1</Default>
</Parameter>

<Parameter name="XMLIGNOREINVALIDTAG">
<Description><![CDATA[
Controls how to handle tags that are unexpected. 
-> If this parameter is 1, such tags are ignored. 
-> If it is 0 (the default), they are treated as errors, and import fails.]]></Description>
<Default>1</Default>
</Parameter>

<Parameter name="XMLIGNORENULL">
<Default>1</Default>
</Parameter>

<Property name="IdForExport">
<Type>%XML.Id</Type>
<Private>1</Private>
<Transient>1</Transient>
<Parameter name="XMLNAME" value="ID"/>
<Parameter name="XMLPROJECTION" value="ATTRIBUTE"/>
</Property>

<Property name="Mitarbeiter">
<Type>DBLohn.Mitarbeiter</Type>
<Cardinality>parent</Cardinality>
<Inverse>EinAustritte</Inverse>
<Relationship>1</Relationship>
</Property>

<Property name="Eintritt">
<Type>%Date</Type>
</Property>

<Property name="Austritt">
<Type>%Date</Type>
</Property>

<Property name="Wegzug">
<Type>%Date</Type>
</Property>

<Property name="Bemerkung">
<Type>%String</Type>
<Parameter name="MAXLEN" value="255"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Method name="GetFirstEinAustritt">
<ClassMethod>1</ClassMethod>
<FormalSpec>MitarbeiterOid:%String</FormalSpec>
<ReturnType>%String</ReturnType>
<SqlProc>1</SqlProc>
<Implementation><![CDATA[
	set einAustritt = ""
	&sql(SELECT TOP 1 ID INTO :einAustritt 
		 FROM DBLohn.MitarbeiterEinAustritt 
		 WHERE Mitarbeiter = :MitarbeiterOid
		 ORDER BY Eintritt)
		 
	if (SQLCODE '= 0) {
		set einAustritt = ""
	}
	quit einAustritt
]]></Implementation>
</Method>

<Method name="GetEintrittOhneAustritt">
<ClassMethod>1</ClassMethod>
<FormalSpec>MitarbeiterOid:%String</FormalSpec>
<ReturnType>%String</ReturnType>
<SqlProc>1</SqlProc>
<Implementation><![CDATA[
	set einAustritt = ""
	&sql(SELECT TOP 1 ID INTO :einAustritt 
		 FROM DBLohn.MitarbeiterEinAustritt 
		 WHERE Mitarbeiter = :MitarbeiterOid AND
		 		Austritt <= TO_DATE(0)
		 ORDER BY Eintritt)
		 
	if (SQLCODE '= 0) {
		set einAustritt = ""
	}
	quit einAustritt
]]></Implementation>
</Method>

<Method name="GetLastEinAustritt">
<ClassMethod>1</ClassMethod>
<FormalSpec>MitarbeiterOid:%String</FormalSpec>
<ReturnType>%String</ReturnType>
<SqlProc>1</SqlProc>
<Implementation><![CDATA[
	set einAustritt = ""
	&sql(SELECT TOP 1 ID INTO :einAustritt 
		 FROM DBLohn.MitarbeiterEinAustritt 
		 WHERE Mitarbeiter = :MitarbeiterOid
		 ORDER BY Eintritt DESC)
		 
	if (SQLCODE '= 0) {
		set einAustritt = ""
	}
	quit einAustritt
]]></Implementation>
</Method>

<Method name="GetEinAustrittByMonatJahr">
<ClassMethod>1</ClassMethod>
<FormalSpec>MitarbeiterOid:%String,Monat:%Integer,Jahr:%Integer</FormalSpec>
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[
    set id =""
    &sql(SELECT ID Into :id 
       FROM dblohn.mitarbeitereinaustritt 
       WHERE Mitarbeiter=:MitarbeiterOid AND
           ((Year(Eintritt)=:Jahr AND Month(Eintritt)<=:Monat) OR Year(Eintritt)<:Jahr)
           AND ((Year(Austritt)=:Jahr AND Month(Austritt)>=:Monat) OR Year(Austritt)>:Jahr OR Year(Austritt)<=1840))
                                   
    if (SQLCODE '= 0) {
                   set id = ""
    }
    quit id
]]></Implementation>
</Method>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
<DataLocation>^DBLohn.MitarbeiterEinAustrittD</DataLocation>
<DefaultData>MitarbeiterEinAustrittDefaultData</DefaultData>
<IdLocation>^DBLohn.MitarbeiterEinAustrittD</IdLocation>
<IndexLocation>^DBLohn.MitarbeiterEinAustrittI</IndexLocation>
<StreamLocation>^DBLohn.MitarbeiterEinAustrittS</StreamLocation>
<Data name="MitarbeiterEinAustrittDefaultData">
<Value name="1">
<Value>%%CLASSNAME</Value>
</Value>
<Value name="2">
<Value>Eintritt</Value>
</Value>
<Value name="3">
<Value>Austritt</Value>
</Value>
<Value name="4">
<Value>Wegzug</Value>
</Value>
<Value name="5">
<Value>Bemerkung</Value>
</Value>
</Data>
<Property name="%%CLASSNAME">
</Property>
<Property name="Austritt">
</Property>
<Property name="Bemerkung">
</Property>
<Property name="Eintritt">
</Property>
<Property name="Mitarbeiter">
</Property>
<Property name="Mitarbeiter.%%ID">
</Property>
<Property name="Mitarbeiter.MitarbeiterBasis">
</Property>
<Property name="Wegzug">
</Property>
<Property name="childsub">
</Property>
</Storage>
</Class>


<Class name="DBLohn.MitarbeiterKind">
<Super>%Persistent,%XML.Adaptor</Super>
<TimeChanged>62437,55776</TimeChanged>
<TimeCreated>62377,56606.34714</TimeCreated>
<Inheritance>right</Inheritance>

<Parameter name="XMLIGNOREINVALIDATTRIBUTE">
<Description><![CDATA[
Controls how to handle attributes that are unexpected.
-> If this parameter is 1 (the default), such attributes are ignored.
-> If it is 0, they are treated as errors, and import fails.]]></Description>
<Default>1</Default>
</Parameter>

<Parameter name="XMLIGNOREINVALIDTAG">
<Description><![CDATA[
Controls how to handle tags that are unexpected. 
-> If this parameter is 1, such tags are ignored. 
-> If it is 0 (the default), they are treated as errors, and import fails.]]></Description>
<Default>1</Default>
</Parameter>

<Parameter name="XMLIGNORENULL">
<Default>1</Default>
</Parameter>

<Property name="IdForExport">
<Type>%XML.Id</Type>
<Private>1</Private>
<Transient>1</Transient>
<Parameter name="XMLNAME" value="ID"/>
<Parameter name="XMLPROJECTION" value="ATTRIBUTE"/>
</Property>

<Property name="Mitarbeiter">
<Type>DBLohn.Mitarbeiter</Type>
<Cardinality>parent</Cardinality>
<Inverse>Kinder</Inverse>
<Relationship>1</Relationship>
</Property>

<Property name="Name">
<Type>%String</Type>
<Parameter name="MAXLEN" value="50"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="Vorname">
<Type>%String</Type>
<Parameter name="MAXLEN" value="50"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="Geburtsdatum">
<Type>%Date</Type>
</Property>

<Property name="Zulagentyp">
<Type>%Integer</Type>
</Property>

<Property name="Kinderzulage">
<Type>%Decimal</Type>
<Parameter name="SCALE" value="5"/>
</Property>

<Property name="KzBerechtigtBis">
<Type>%Date</Type>
</Property>

<Property name="Ausbildungszulage">
<Type>%Decimal</Type>
<Parameter name="SCALE" value="5"/>
</Property>

<Property name="AzVerlaengerungBis">
<Type>%Date</Type>
</Property>

<Method name="GetFirstKind">
<ClassMethod>1</ClassMethod>
<FormalSpec>MitarbeiterOid:%String</FormalSpec>
<ReturnType>%String</ReturnType>
<SqlProc>1</SqlProc>
<Implementation><![CDATA[
	set kind = ""
	&sql(SELECT TOP 1 ID INTO :kind 
		 FROM DBLohn.MitarbeiterKind 
		 WHERE Mitarbeiter = :MitarbeiterOid
		 ORDER BY Name, Vorname)
		 
	if (SQLCODE '= 0) {
		set kind = ""
	}
	quit kind
]]></Implementation>
</Method>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
<DataLocation>^DBLohn.MitarbeiterKindD</DataLocation>
<DefaultData>MitarbeiterKindDefaultData</DefaultData>
<IdLocation>^DBLohn.MitarbeiterKindD</IdLocation>
<IndexLocation>^DBLohn.MitarbeiterKindI</IndexLocation>
<StreamLocation>^DBLohn.MitarbeiterKindS</StreamLocation>
<Data name="MitarbeiterKindDefaultData">
<Value name="1">
<Value>%%CLASSNAME</Value>
</Value>
<Value name="2">
<Value>Name</Value>
</Value>
<Value name="3">
<Value>Vorname</Value>
</Value>
<Value name="4">
<Value>Geburtsdatum</Value>
</Value>
<Value name="5">
<Value>Zulagentyp</Value>
</Value>
<Value name="6">
<Value>Kinderzulage</Value>
</Value>
<Value name="7">
<Value>KzBerechtigtBis</Value>
</Value>
<Value name="8">
<Value>Ausbildungszulage</Value>
</Value>
<Value name="9">
<Value>AzVerlaengerungBis</Value>
</Value>
</Data>
<Property name="%%CLASSNAME">
</Property>
<Property name="Ausbildungszulage">
</Property>
<Property name="AzVerlaengerungBis">
</Property>
<Property name="Geburtsdatum">
</Property>
<Property name="Kinderzulage">
</Property>
<Property name="KzBerechtigtBis">
</Property>
<Property name="Mitarbeiter">
</Property>
<Property name="Mitarbeiter.%%ID">
</Property>
<Property name="Mitarbeiter.MitarbeiterBasis">
</Property>
<Property name="Name">
</Property>
<Property name="Vorname">
</Property>
<Property name="Zulagentyp">
</Property>
<Property name="childsub">
</Property>
</Storage>
</Class>


<Class name="DBLohn.MitarbeiterSel">
<Super>%Persistent,%XML.Adaptor</Super>
<TimeChanged>62437,55776</TimeChanged>
<TimeCreated>62430,54182.114509</TimeCreated>

<Property name="Mitarbeiter">
<Type>DBLohn.Mitarbeiter</Type>
<Cardinality>many</Cardinality>
<Inverse>Selektion</Inverse>
<Relationship>1</Relationship>
</Property>

<Property name="Selektion1">
<Type>DBLohn.SD.IndSelektion1</Type>
<Cardinality>one</Cardinality>
<Inverse>Mitarbeiter</Inverse>
<Relationship>1</Relationship>
</Property>

<Property name="Selektion2">
<Type>DBLohn.SD.IndSelektion2</Type>
<Cardinality>one</Cardinality>
<Inverse>Mitarbeiter</Inverse>
<Relationship>1</Relationship>
</Property>

<Property name="Selektion3">
<Type>DBLohn.SD.IndSelektion3</Type>
<Cardinality>one</Cardinality>
<Inverse>Mitarbeiter</Inverse>
<Relationship>1</Relationship>
</Property>

<Property name="Selektion4">
<Type>DBLohn.SD.IndSelektion4</Type>
<Cardinality>one</Cardinality>
<Inverse>Mitarbeiter</Inverse>
<Relationship>1</Relationship>
</Property>

<Property name="Selektion5">
<Type>DBLohn.SD.IndSelektion5</Type>
<Cardinality>one</Cardinality>
<Inverse>Mitarbeiter</Inverse>
<Relationship>1</Relationship>
</Property>

<Property name="SelDatum1">
<Type>%Date</Type>
</Property>

<Property name="SelDatum2">
<Type>%Date</Type>
</Property>

<Property name="SelDatum3">
<Type>%Date</Type>
</Property>

<Property name="SelDatum4">
<Type>%Date</Type>
</Property>

<Property name="SelDatum5">
<Type>%Date</Type>
</Property>

<Property name="MultiSelMA">
<Type>DBLohn.MultiSelMA</Type>
<Cardinality>many</Cardinality>
<Inverse>Mitarbeiter</Inverse>
<Relationship>1</Relationship>
</Property>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
<DataLocation>^DBLohn.MitarbeiterSelD</DataLocation>
<DefaultData>MitarbeiterSelDefaultData</DefaultData>
<IdLocation>^DBLohn.MitarbeiterSelD</IdLocation>
<IndexLocation>^DBLohn.MitarbeiterSelI</IndexLocation>
<StreamLocation>^DBLohn.MitarbeiterSelS</StreamLocation>
<Data name="MitarbeiterSelDefaultData">
<Structure>listnode</Structure>
<Subscript/>
<Value name="1">
<Value>%%CLASSNAME</Value>
</Value>
<Value name="2">
<Value>Selektion1</Value>
</Value>
<Value name="3">
<Value>Selektion2</Value>
</Value>
<Value name="4">
<Value>Selektion3</Value>
</Value>
<Value name="5">
<Value>Selektion4</Value>
</Value>
<Value name="6">
<Value>Selektion5</Value>
</Value>
<Value name="7">
<Value>SelDatum1</Value>
</Value>
<Value name="8">
<Value>SelDatum2</Value>
</Value>
<Value name="9">
<Value>SelDatum3</Value>
</Value>
<Value name="10">
<Value>SelDatum4</Value>
</Value>
<Value name="11">
<Value>SelDatum5</Value>
</Value>
</Data>
<Property name="%%CLASSNAME">
</Property>
<Property name="SelDatum1">
</Property>
<Property name="SelDatum2">
</Property>
<Property name="SelDatum3">
</Property>
<Property name="SelDatum4">
</Property>
<Property name="SelDatum5">
</Property>
<Property name="Selektion1">
</Property>
<Property name="Selektion2">
</Property>
<Property name="Selektion3">
</Property>
<Property name="Selektion4">
</Property>
<Property name="Selektion5">
</Property>
</Storage>
</Class>


<Class name="DBLohn.MitarbeiterVs">
<Super>%Persistent,%XML.Adaptor</Super>
<TimeChanged>62437,55776</TimeChanged>
<TimeCreated>62430,54430.476731</TimeCreated>

<Property name="Mitarbeiter">
<Type>DBLohn.Mitarbeiter</Type>
<Cardinality>many</Cardinality>
<Inverse>Versicherung</Inverse>
<Relationship>1</Relationship>
</Property>

<Property name="AhvAlvAdresse">
<Type>DBLohn.SD.AhvAlvAdresse</Type>
<Cardinality>one</Cardinality>
<Inverse>Mitarbeiter</Inverse>
<Relationship>1</Relationship>
<Parameter name="XMLELEMENTREF" value="1"/>
<Parameter name="XMLNAME" value="AhvAlvAdresse"/>
<Parameter name="XMLPROJECTION" value="ATTRIBUTE"/>
<Parameter name="XMLREFERENCE" value="ID"/>
</Property>

<Property name="UvgAdresse">
<Type>DBLohn.SD.UvgAdresse</Type>
<Cardinality>one</Cardinality>
<Inverse>Mitarbeiter</Inverse>
<Relationship>1</Relationship>
<Parameter name="XMLELEMENTREF" value="1"/>
<Parameter name="XMLNAME" value="UvgAdresse"/>
<Parameter name="XMLPROJECTION" value="ATTRIBUTE"/>
<Parameter name="XMLREFERENCE" value="ID"/>
</Property>

<Property name="UvgzAdresse">
<Type>DBLohn.SD.UvgzAdresse</Type>
<Cardinality>one</Cardinality>
<Inverse>Mitarbeiter</Inverse>
<Relationship>1</Relationship>
<Parameter name="XMLELEMENTREF" value="1"/>
<Parameter name="XMLNAME" value="UvgzAdresse"/>
<Parameter name="XMLPROJECTION" value="ATTRIBUTE"/>
<Parameter name="XMLREFERENCE" value="ID"/>
</Property>

<Property name="KtgAdresse">
<Type>DBLohn.SD.KtgAdresse</Type>
<Cardinality>one</Cardinality>
<Inverse>Mitarbeiter</Inverse>
<Relationship>1</Relationship>
<Parameter name="XMLELEMENTREF" value="1"/>
<Parameter name="XMLNAME" value="KtgAdresse"/>
<Parameter name="XMLPROJECTION" value="ATTRIBUTE"/>
<Parameter name="XMLREFERENCE" value="ID"/>
</Property>

<Property name="KrankenkasseAdresse">
<Type>DBLohn.SD.KrankenkasseAdr</Type>
<Cardinality>one</Cardinality>
<Inverse>Mitarbeiter</Inverse>
<Relationship>1</Relationship>
<Parameter name="XMLELEMENTREF" value="1"/>
<Parameter name="XMLNAME" value="KrankenkasseAdresse"/>
<Parameter name="XMLPROJECTION" value="ATTRIBUTE"/>
<Parameter name="XMLREFERENCE" value="ID"/>
</Property>

<Property name="BvgAdresse">
<Type>DBLohn.SD.BvgAdresse</Type>
<Cardinality>one</Cardinality>
<Inverse>Mitarbeiter</Inverse>
<Relationship>1</Relationship>
<Parameter name="XMLELEMENTREF" value="1"/>
<Parameter name="XMLNAME" value="BvgAdresse"/>
<Parameter name="XMLPROJECTION" value="ATTRIBUTE"/>
<Parameter name="XMLREFERENCE" value="ID"/>
</Property>

<Property name="FakAdresse">
<Type>DBLohn.SD.FakAdresse</Type>
<Cardinality>one</Cardinality>
<Inverse>Mitarbeiter</Inverse>
<Relationship>1</Relationship>
<Parameter name="XMLELEMENTREF" value="1"/>
<Parameter name="XMLNAME" value="FakAdresse"/>
<Parameter name="XMLPROJECTION" value="ATTRIBUTE"/>
<Parameter name="XMLREFERENCE" value="ID"/>
</Property>

<Property name="Ahv">
<Type>%Integer</Type>
</Property>

<Property name="Alv">
<Type>%Integer</Type>
</Property>

<Property name="Uvg">
<Type>%Integer</Type>
</Property>

<Property name="UvgBetriebsteil">
<Type>%Integer</Type>
</Property>

<Property name="Uvgz">
<Type>%Integer</Type>
</Property>

<Property name="Ktg">
<Type>%Integer</Type>
</Property>

<Property name="Krankenkasse">
<Type>%Integer</Type>
</Property>

<Property name="KrankenkasseFixbetragAN">
<Type>%Decimal</Type>
<Parameter name="SCALE" value="5"/>
</Property>

<Property name="Bvg">
<Type>%Integer</Type>
</Property>

<Property name="BvgFixbetragAN">
<Type>%Decimal</Type>
<Parameter name="SCALE" value="5"/>
</Property>

<Property name="BvgFixbetragAG">
<Type>%Decimal</Type>
<Parameter name="SCALE" value="5"/>
</Property>

<Property name="SozialversicherungsNr">
<Type>%String</Type>
<Parameter name="MAXLEN" value="50"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="SozialversicherungsNrUnbekannt">
<Type>%Boolean</Type>
</Property>

<Property name="QsQuellensteuer">
<Type>%Integer</Type>
</Property>

<Property name="QsArbeitskanton">
<Type>%String</Type>
<Parameter name="MAXLEN" value="50"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="QsWohnkanton">
<Type>%String</Type>
<Parameter name="MAXLEN" value="50"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="QsKirchensteuer">
<Type>%Boolean</Type>
</Property>

<Property name="QsAbweichendeKinderanzahl">
<Type>%Boolean</Type>
</Property>

<Property name="QsAnzahlAbweichendeKinder">
<Type>%Integer</Type>
</Property>

<Property name="QsFreibetrag">
<Type>%Decimal</Type>
<Parameter name="SCALE" value="5"/>
</Property>

<Property name="QsFixerProzentsatz">
<Type>%Decimal</Type>
<Parameter name="SCALE" value="5"/>
</Property>

<Property name="QsAdresse">
<Type>DBLohn.SD.QsAdresse</Type>
<Cardinality>one</Cardinality>
<Inverse>Mitarbeiter</Inverse>
<Relationship>1</Relationship>
<Parameter name="XMLELEMENTREF" value="1"/>
<Parameter name="XMLNAME" value="FakAdresse"/>
<Parameter name="XMLPROJECTION" value="ATTRIBUTE"/>
<Parameter name="XMLREFERENCE" value="ID"/>
</Property>

<Property name="QsIndividualTarifCode">
<Type>%String</Type>
<Parameter name="MAXLEN" value="50"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
<DataLocation>^DBLohn.MitarbeiterVsD</DataLocation>
<DefaultData>MitarbeiterVsDefaultData</DefaultData>
<IdLocation>^DBLohn.MitarbeiterVsD</IdLocation>
<IndexLocation>^DBLohn.MitarbeiterVsI</IndexLocation>
<StreamLocation>^DBLohn.MitarbeiterVsS</StreamLocation>
<Data name="MitarbeiterVsDefaultData">
<Structure>listnode</Structure>
<Subscript/>
<Value name="1">
<Value>%%CLASSNAME</Value>
</Value>
<Value name="2">
<Value>AhvAlvAdresse</Value>
</Value>
<Value name="3">
<Value>UvgAdresse</Value>
</Value>
<Value name="4">
<Value>UvgzAdresse</Value>
</Value>
<Value name="5">
<Value>KtgAdresse</Value>
</Value>
<Value name="6">
<Value>KrankenkasseAdresse</Value>
</Value>
<Value name="7">
<Value>BvgAdresse</Value>
</Value>
<Value name="8">
<Value>FakAdresse</Value>
</Value>
<Value name="9">
<Value>Ahv</Value>
</Value>
<Value name="10">
<Value>Alv</Value>
</Value>
<Value name="11">
<Value>Uvg</Value>
</Value>
<Value name="12">
<Value>UvgBetriebsteil</Value>
</Value>
<Value name="13">
<Value>Uvgz</Value>
</Value>
<Value name="14">
<Value>Ktg</Value>
</Value>
<Value name="15">
<Value>Krankenkasse</Value>
</Value>
<Value name="16">
<Value>KrankenkasseFixbetragAN</Value>
</Value>
<Value name="17">
<Value>Bvg</Value>
</Value>
<Value name="18">
<Value>BvgFixbetragAN</Value>
</Value>
<Value name="19">
<Value>BvgFixbetragAG</Value>
</Value>
<Value name="20">
<Value>SozialversicherungsNr</Value>
</Value>
<Value name="21">
<Value>SozialversicherungsNrUnbekannt</Value>
</Value>
<Value name="22">
<Value>QsQuellensteuer</Value>
</Value>
<Value name="23">
<Value>QsArbeitskanton</Value>
</Value>
<Value name="24">
<Value>QsWohnkanton</Value>
</Value>
<Value name="25">
<Value>QsKirchensteuer</Value>
</Value>
<Value name="26">
<Value>QsAbweichendeKinderanzahl</Value>
</Value>
<Value name="27">
<Value>QsAnzahlAbweichendeKinder</Value>
</Value>
<Value name="28">
<Value>QsFreibetrag</Value>
</Value>
<Value name="29">
<Value>QsFixerProzentsatz</Value>
</Value>
<Value name="30">
<Value>QsAdresse</Value>
</Value>
<Value name="31">
<Value>QsIndividualTarifCode</Value>
</Value>
</Data>
<Property name="%%CLASSNAME">
</Property>
<Property name="Ahv">
</Property>
<Property name="AhvAlvAdresse">
</Property>
<Property name="Alv">
</Property>
<Property name="Bvg">
</Property>
<Property name="BvgAdresse">
</Property>
<Property name="BvgFixbetragAG">
</Property>
<Property name="BvgFixbetragAN">
</Property>
<Property name="FakAdresse">
</Property>
<Property name="Krankenkasse">
</Property>
<Property name="KrankenkasseAdresse">
</Property>
<Property name="KrankenkasseFixbetragAN">
</Property>
<Property name="Ktg">
</Property>
<Property name="KtgAdresse">
</Property>
<Property name="QsAbweichendeKinderanzahl">
</Property>
<Property name="QsAdresse">
</Property>
<Property name="QsAnzahlAbweichendeKinder">
</Property>
<Property name="QsArbeitskanton">
</Property>
<Property name="QsFixerProzentsatz">
</Property>
<Property name="QsFreibetrag">
</Property>
<Property name="QsIndividualTarifCode">
</Property>
<Property name="QsKirchensteuer">
</Property>
<Property name="QsQuellensteuer">
</Property>
<Property name="QsWohnkanton">
</Property>
<Property name="SozialversicherungsNr">
</Property>
<Property name="SozialversicherungsNrUnbekannt">
</Property>
<Property name="Uvg">
</Property>
<Property name="UvgAdresse">
</Property>
<Property name="UvgBetriebsteil">
</Property>
<Property name="Uvgz">
</Property>
<Property name="UvgzAdresse">
</Property>
</Storage>
</Class>


<Class name="DBLohn.MultiSelMA">
<Super>%Persistent,%XML.Adaptor</Super>
<TimeChanged>62430,55119.014774</TimeChanged>
<TimeCreated>62416,38740.764178</TimeCreated>
<Inheritance>right</Inheritance>

<Parameter name="XMLIGNOREINVALIDATTRIBUTE">
<Description><![CDATA[
Controls how to handle attributes that are unexpected.
-> If this parameter is 1 (the default), such attributes are ignored.
-> If it is 0, they are treated as errors, and import fails.]]></Description>
<Default>1</Default>
</Parameter>

<Parameter name="XMLIGNOREINVALIDTAG">
<Description><![CDATA[
Controls how to handle tags that are unexpected. 
-> If this parameter is 1, such tags are ignored. 
-> If it is 0 (the default), they are treated as errors, and import fails.]]></Description>
<Default>1</Default>
</Parameter>

<Parameter name="XMLIGNORENULL">
<Default>1</Default>
</Parameter>

<Property name="IdForExport">
<Type>%XML.Id</Type>
<Private>1</Private>
<Transient>1</Transient>
<Parameter name="XMLNAME" value="ID"/>
<Parameter name="XMLPROJECTION" value="ATTRIBUTE"/>
</Property>

<Property name="Mitarbeiter">
<Type>DBLohn.MitarbeiterSel</Type>
<Cardinality>one</Cardinality>
<Inverse>MultiSelMA</Inverse>
<Relationship>1</Relationship>
</Property>

<Index name="MitarbeiterIndex">
<Properties>Mitarbeiter</Properties>
</Index>

<Property name="IndMultiSel">
<Type>DBLohn.SD.IndMultiSel</Type>
<Cardinality>one</Cardinality>
<Inverse>MultiSelMA</Inverse>
<Relationship>1</Relationship>
</Property>

<Index name="IndMultiSelIndex">
<Properties>IndMultiSel</Properties>
</Index>

<Index name="MitarbeiterMultiSelIndex">
<Properties>Mitarbeiter,IndMultiSel</Properties>
<Unique>1</Unique>
</Index>

<Method name="GetMAInMultiSel">
<ClassMethod>1</ClassMethod>
<FormalSpec>Mitarbeiter:%String,Multisel:%String</FormalSpec>
<ReturnType>%Boolean</ReturnType>
<SqlProc>1</SqlProc>
<Implementation><![CDATA[
    set ret = 0
    set res = 0
    set multisel = ""
    For index = 1:1:($Length(Multisel, "-")) {
       set multisel = $Piece(Multisel, "-", +index)
       &sql(SELECT COUNT(ID) INTO :ret FROM DBLohn.MultiSelMA WHERE Mitarbeiter = :Mitarbeiter AND IndMultiSel->Kuerzel LIKE :multisel)
       if (SQLCODE '= 0) {
	       set ret=0
       }
       
       if (ret > 0) {
           set res = ret
       }
    }
    quit res
]]></Implementation>
</Method>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
<DataLocation>^DBLohn.MultiSelMAD</DataLocation>
<DefaultData>MultiSelMADefaultData</DefaultData>
<IdLocation>^DBLohn.MultiSelMAD</IdLocation>
<IndexLocation>^DBLohn.MultiSelMAI</IndexLocation>
<StreamLocation>^DBLohn.MultiSelMAS</StreamLocation>
<Data name="MultiSelMADefaultData">
<Structure>listnode</Structure>
<Subscript/>
<Value name="1">
<Value>%%CLASSNAME</Value>
</Value>
<Value name="2">
<Value>Mitarbeiter</Value>
</Value>
<Value name="3">
<Value>IndMultiSel</Value>
</Value>
</Data>
</Storage>
</Class>


<Project name="DBLohn">
  <Items>
    <ProjectItem name="DBLohn.AF.ArbeitszeitErfAF" type="CLS"></ProjectItem>
    <ProjectItem name="DBLohn.AF.LohnabrechnungKopfAF" type="CLS"></ProjectItem>
    <ProjectItem name="DBLohn.AF.LohnabrechnungPosAF" type="CLS"></ProjectItem>
    <ProjectItem name="DBLohn.AF.LohnartAF" type="CLS"></ProjectItem>
    <ProjectItem name="DBLohn.AF.LohnartJeMaAF" type="CLS"></ProjectItem>
    <ProjectItem name="DBLohn.AF.MitarbeiterAF" type="CLS"></ProjectItem>
    <ProjectItem name="DBLohn.AF.MitarbeiterEinAustrittAF" type="CLS"></ProjectItem>
    <ProjectItem name="DBLohn.AF.MitarbeiterKindAF" type="CLS"></ProjectItem>
    <ProjectItem name="DBLohn.AF.MultiSelMAAF" type="CLS"></ProjectItem>
    <ProjectItem name="DBLohn.AF.SD.AhvAlvAF" type="CLS"></ProjectItem>
    <ProjectItem name="DBLohn.AF.SD.AnredeAF" type="CLS"></ProjectItem>
    <ProjectItem name="DBLohn.AF.SD.ArbeitsschemaAF" type="CLS"></ProjectItem>
    <ProjectItem name="DBLohn.AF.SD.BvgAF" type="CLS"></ProjectItem>
    <ProjectItem name="DBLohn.AF.SD.FakAF" type="CLS"></ProjectItem>
    <ProjectItem name="DBLohn.AF.SD.FusstextAF" type="CLS"></ProjectItem>
    <ProjectItem name="DBLohn.AF.SD.IndMultiSelAF" type="CLS"></ProjectItem>
    <ProjectItem name="DBLohn.AF.SD.IndSel1AF" type="CLS"></ProjectItem>
    <ProjectItem name="DBLohn.AF.SD.IndSel2AF" type="CLS"></ProjectItem>
    <ProjectItem name="DBLohn.AF.SD.IndSel3AF" type="CLS"></ProjectItem>
    <ProjectItem name="DBLohn.AF.SD.IndSel4AF" type="CLS"></ProjectItem>
    <ProjectItem name="DBLohn.AF.SD.IndSel5AF" type="CLS"></ProjectItem>
    <ProjectItem name="DBLohn.AF.SD.KonfessionAF" type="CLS"></ProjectItem>
    <ProjectItem name="DBLohn.AF.SD.KrankenkasseAF" type="CLS"></ProjectItem>
    <ProjectItem name="DBLohn.AF.SD.KtgAF" type="CLS"></ProjectItem>
    <ProjectItem name="DBLohn.AF.SD.LohnzahlungsartAF" type="CLS"></ProjectItem>
    <ProjectItem name="DBLohn.AF.SD.MitarbeiterKatAF" type="CLS"></ProjectItem>
    <ProjectItem name="DBLohn.AF.SD.NiederlassungAF" type="CLS"></ProjectItem>
    <ProjectItem name="DBLohn.AF.SD.PersAnredeAF" type="CLS"></ProjectItem>
    <ProjectItem name="DBLohn.AF.SD.QsTarifAF" type="CLS"></ProjectItem>
    <ProjectItem name="DBLohn.AF.SD.QuellensteuerAF" type="CLS"></ProjectItem>
    <ProjectItem name="DBLohn.AF.SD.StaatsAngAF" type="CLS"></ProjectItem>
    <ProjectItem name="DBLohn.AF.SD.StatistiktextAF" type="CLS"></ProjectItem>
    <ProjectItem name="DBLohn.AF.SD.UvgAF" type="CLS"></ProjectItem>
    <ProjectItem name="DBLohn.AF.SD.UvgzAF" type="CLS"></ProjectItem>
    <ProjectItem name="DBLohn.AF.SD.VerrechnungEinhAF" type="CLS"></ProjectItem>
    <ProjectItem name="DBLohn.ArbeitszeitErf" type="CLS"></ProjectItem>
    <ProjectItem name="DBLohn.LohnabrechnungKopf" type="CLS"></ProjectItem>
    <ProjectItem name="DBLohn.LohnabrechnungPos" type="CLS"></ProjectItem>
    <ProjectItem name="DBLohn.Lohnart" type="CLS"></ProjectItem>
    <ProjectItem name="DBLohn.LohnartJeMa" type="CLS"></ProjectItem>
    <ProjectItem name="DBLohn.Mitarbeiter" type="CLS"></ProjectItem>
    <ProjectItem name="DBLohn.MitarbeiterAusw" type="CLS"></ProjectItem>
    <ProjectItem name="DBLohn.MitarbeiterEinAustritt" type="CLS"></ProjectItem>
    <ProjectItem name="DBLohn.MitarbeiterKind" type="CLS"></ProjectItem>
    <ProjectItem name="DBLohn.MitarbeiterSel" type="CLS"></ProjectItem>
    <ProjectItem name="DBLohn.MitarbeiterVs" type="CLS"></ProjectItem>
    <ProjectItem name="DBLohn.MultiSelMA" type="CLS"></ProjectItem>
    <ProjectItem name="DBLohn.SD.AhvAlv" type="CLS"></ProjectItem>
    <ProjectItem name="DBLohn.SD.AhvAlvAdresse" type="CLS"></ProjectItem>
    <ProjectItem name="DBLohn.SD.Anrede" type="CLS"></ProjectItem>
    <ProjectItem name="DBLohn.SD.Arbeitsschema" type="CLS"></ProjectItem>
    <ProjectItem name="DBLohn.SD.Bvg" type="CLS"></ProjectItem>
    <ProjectItem name="DBLohn.SD.BvgAdresse" type="CLS"></ProjectItem>
    <ProjectItem name="DBLohn.SD.Fak" type="CLS"></ProjectItem>
    <ProjectItem name="DBLohn.SD.FakAdresse" type="CLS"></ProjectItem>
    <ProjectItem name="DBLohn.SD.Formular" type="CLS"></ProjectItem>
    <ProjectItem name="DBLohn.SD.Fusstext" type="CLS"></ProjectItem>
    <ProjectItem name="DBLohn.SD.IndMultiSel" type="CLS"></ProjectItem>
    <ProjectItem name="DBLohn.SD.IndSelektion" type="CLS"></ProjectItem>
    <ProjectItem name="DBLohn.SD.IndSelektion1" type="CLS"></ProjectItem>
    <ProjectItem name="DBLohn.SD.IndSelektion2" type="CLS"></ProjectItem>
    <ProjectItem name="DBLohn.SD.IndSelektion3" type="CLS"></ProjectItem>
    <ProjectItem name="DBLohn.SD.IndSelektion4" type="CLS"></ProjectItem>
    <ProjectItem name="DBLohn.SD.IndSelektion5" type="CLS"></ProjectItem>
    <ProjectItem name="DBLohn.SD.Konfession" type="CLS"></ProjectItem>
    <ProjectItem name="DBLohn.SD.Krankenkasse" type="CLS"></ProjectItem>
    <ProjectItem name="DBLohn.SD.KrankenkasseAdr" type="CLS"></ProjectItem>
    <ProjectItem name="DBLohn.SD.Ktg" type="CLS"></ProjectItem>
    <ProjectItem name="DBLohn.SD.KtgAdresse" type="CLS"></ProjectItem>
    <ProjectItem name="DBLohn.SD.Lohnzahlungsart" type="CLS"></ProjectItem>
    <ProjectItem name="DBLohn.SD.MitarbeiterKat" type="CLS"></ProjectItem>
    <ProjectItem name="DBLohn.SD.Niederlassung" type="CLS"></ProjectItem>
    <ProjectItem name="DBLohn.SD.PersAnrede" type="CLS"></ProjectItem>
    <ProjectItem name="DBLohn.SD.QsAdresse" type="CLS"></ProjectItem>
    <ProjectItem name="DBLohn.SD.QsTarif" type="CLS"></ProjectItem>
    <ProjectItem name="DBLohn.SD.StaatsAng" type="CLS"></ProjectItem>
    <ProjectItem name="DBLohn.SD.Statistiktext" type="CLS"></ProjectItem>
    <ProjectItem name="DBLohn.SD.Uvg" type="CLS"></ProjectItem>
    <ProjectItem name="DBLohn.SD.UvgAdresse" type="CLS"></ProjectItem>
    <ProjectItem name="DBLohn.SD.Uvgz" type="CLS"></ProjectItem>
    <ProjectItem name="DBLohn.SD.UvgzAdresse" type="CLS"></ProjectItem>
    <ProjectItem name="DBLohn.SD.VerrechnungEinh" type="CLS"></ProjectItem>
  </Items>
</Project>


<Class name="DBLohn.SD.AhvAlv">
<Super>%Persistent,%XML.Adaptor,DBCore.MandantRel</Super>
<TimeChanged>62437,55776</TimeChanged>
<TimeCreated>62017,32727.059642</TimeCreated>
<Inheritance>right</Inheritance>

<Parameter name="XMLIGNOREINVALIDATTRIBUTE">
<Description><![CDATA[
Controls how to handle attributes that are unexpected.
-> If this parameter is 1 (the default), such attributes are ignored.
-> If it is 0, they are treated as errors, and import fails.]]></Description>
<Default>1</Default>
</Parameter>

<Parameter name="XMLIGNOREINVALIDTAG">
<Description><![CDATA[
Controls how to handle tags that are unexpected. 
-> If this parameter is 1, such tags are ignored. 
-> If it is 0 (the default), they are treated as errors, and import fails.]]></Description>
<Default>1</Default>
</Parameter>

<Parameter name="XMLIGNORENULL">
<Default>1</Default>
</Parameter>

<Property name="IdForExport">
<Type>%XML.Id</Type>
<Private>1</Private>
<Transient>1</Transient>
<Parameter name="XMLNAME" value="ID"/>
<Parameter name="XMLPROJECTION" value="ATTRIBUTE"/>
</Property>

<Property name="Mandant">
<Type>%String</Type>
</Property>

<ForeignKey name="FKMandant">
<Properties>Mandant</Properties>
<ReferencedClass>DBCore.Mandant</ReferencedClass>
<ReferencedKey>MandIdIndex</ReferencedKey>
</ForeignKey>

<Index name="MandantIdx">
<Properties>Mandant</Properties>
</Index>

<Property name="AbDatum">
<Description>
AbDatum</Description>
<Type>%Date</Type>
</Property>

<Index name="MandAbDatumIdx">
<Properties>Mandant,AbDatum</Properties>
<Unique>1</Unique>
</Index>

<Property name="AhvBeitragspflicht">
<Description>
AhvBeitragspflicht</Description>
<Type>%Integer</Type>
</Property>

<Property name="BeginnRentenalterMaenner">
<Description>
BeginnRentenalterMaenner</Description>
<Type>%Integer</Type>
</Property>

<Property name="BeginnRentenalterFrauen">
<Description>
BeginnRentenalterFrauen</Description>
<Type>%Integer</Type>
</Property>

<Property name="AhvArbeitnehmerbeitrag">
<Description>
AhvArbeitnehmerbeitrag</Description>
<Type>%Decimal</Type>
</Property>

<Property name="AhvArbeitgeberbeitrag">
<Description>
AhvArbeitgeberbeitrag</Description>
<Type>%Decimal</Type>
</Property>

<Property name="AhvFreibetragRentner">
<Description>
AhvFreibetragRentner</Description>
<Type>%Decimal</Type>
</Property>

<Property name="AlvHoechstlohn">
<Description>
AlvHoechstlohn</Description>
<Type>%Decimal</Type>
</Property>

<Property name="AlvArbeitnehmerbeitrag">
<Description>
AlvArbeitnehmerbeitrag</Description>
<Type>%Decimal</Type>
</Property>

<Property name="AlvArbeitgerberbeitrag">
<Description>
AlvArbeitgeberbeitrag</Description>
<Type>%Decimal</Type>
</Property>

<Property name="AlvzHoechstlohn">
<Description>
AlvzHoechstlohn</Description>
<Type>%Decimal</Type>
</Property>

<Property name="AlvzArbeitnehmerbeitrag">
<Description>
AlvzArbeitnehmerbeitrag</Description>
<Type>%Decimal</Type>
</Property>

<Property name="AlvzArbeitgerberbeitrag">
<Description>
AlvzArbeitgeberbeitrag</Description>
<Type>%Decimal</Type>
</Property>

<Method name="GetOidByAbDatumOnMandant">
<ClassMethod>1</ClassMethod>
<FormalSpec>MandantOid:%String,AbDatum:%Date</FormalSpec>
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[
	set id = ""
	&sql(SELECT TOP 1 ID INTO :id 
			FROM DBLohn_SD.AhvAlv
		 	WHERE Mandant = :MandantOid AND 
		 			AbDatum <= TODATE(:AbDatum)
		 	ORDER BY AbDatum DESC)
		 	
	if (SQLCODE'=0) {
		set id = ""
	}
	Quit id
]]></Implementation>
</Method>

<Method name="GetNextOidByAbDatumOnMandant">
<ClassMethod>1</ClassMethod>
<FormalSpec>MandantOid:%String,AbDatum:%Date</FormalSpec>
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[
	set id = ""
	&sql(SELECT TOP 1 ID INTO :id 
			FROM DBLohn_SD.AhvAlv
		 	WHERE Mandant = :MandantOid AND 
		 			AbDatum > TODATE(:AbDatum)
		 	ORDER BY AbDatum)
		 	
	if (SQLCODE'=0) {
		set id = ""
	}
	Quit id
]]></Implementation>
</Method>

<Method name="GetLastOidOnMandant">
<ClassMethod>1</ClassMethod>
<FormalSpec>MandantOid:%String</FormalSpec>
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[
	set id = ""
	&sql(SELECT TOP 1 ID INTO :id 
			FROM DBLohn_SD.AhvAlv
		 	WHERE Mandant = :MandantOid
		 	ORDER BY AbDatum DESC)
		 	
	if (SQLCODE'=0) {
		set id = ""
	}
	Quit id
]]></Implementation>
</Method>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
<DataLocation>^DBLohn.SD.AhvAlvD</DataLocation>
<DefaultData>AhvAlvDefaultData</DefaultData>
<IdLocation>^DBLohn.SD.AhvAlvD</IdLocation>
<IndexLocation>^DBLohn.SD.AhvAlvI</IndexLocation>
<StreamLocation>^DBLohn.SD.AhvAlvS</StreamLocation>
<Data name="AhvAlvDefaultData">
<Structure>listnode</Structure>
<Subscript/>
<Value name="1">
<Value>%%CLASSNAME</Value>
</Value>
<Value name="2">
<Value>Jahr</Value>
</Value>
<Value name="3">
<Value>Mandant</Value>
</Value>
<Value name="4">
<Value>AhvBeitragspflicht</Value>
</Value>
<Value name="5">
<Value>BeginnRentenalterMaenner</Value>
</Value>
<Value name="6">
<Value>BeginnRentenalterFrauen</Value>
</Value>
<Value name="7">
<Value>AhvArbeitnehmerbeitrag</Value>
</Value>
<Value name="8">
<Value>AhvArbeitgeberbeitrag</Value>
</Value>
<Value name="9">
<Value>AhvFreibetragRentner</Value>
</Value>
<Value name="10">
<Value>AlvHoechstlohn</Value>
</Value>
<Value name="11">
<Value>AlvArbeitnehmerbeitrag</Value>
</Value>
<Value name="12">
<Value>AlvArbeitgerberbeitrag</Value>
</Value>
<Value name="13">
<Value>AlvzHoechstlohn</Value>
</Value>
<Value name="14">
<Value>AlvzArbeitnehmerbeitrag</Value>
</Value>
<Value name="15">
<Value>AlvzArbeitgerberbeitrag</Value>
</Value>
<Value name="16">
<Value>AdressNr</Value>
</Value>
<Value name="17">
<Value>Name</Value>
</Value>
<Value name="18">
<Value>Adresszeile1</Value>
</Value>
<Value name="19">
<Value>Adresszeile2</Value>
</Value>
<Value name="20">
<Value>Adresszeile3</Value>
</Value>
<Value name="21">
<Value>BetriebsNr</Value>
</Value>
<Value name="22">
<Value>SubNr</Value>
</Value>
<Value name="23">
<Value>NrAusgleichskasse</Value>
</Value>
<Value name="24">
<Value>Ort</Value>
</Value>
<Value name="25">
<Value>Plz</Value>
</Value>
<Value name="26">
<Value>PlzInklZusatz</Value>
</Value>
<Value name="27">
<Value>AbDatum</Value>
</Value>
</Data>
<Property name="%%CLASSNAME">
</Property>
<Property name="AbDatum">
</Property>
<Property name="AdressNr"/>
<Property name="Adresszeile1"/>
<Property name="Adresszeile2"/>
<Property name="Adresszeile3"/>
<Property name="AhvArbeitgeberbeitrag">
</Property>
<Property name="AhvArbeitnehmerbeitrag">
</Property>
<Property name="AhvBeitragspflicht">
</Property>
<Property name="AhvFreibetragRentner">
</Property>
<Property name="AlvArbeitgerberbeitrag">
</Property>
<Property name="AlvArbeitnehmerbeitrag">
</Property>
<Property name="AlvHoechstlohn">
</Property>
<Property name="AlvzArbeitgerberbeitrag">
</Property>
<Property name="AlvzArbeitnehmerbeitrag">
</Property>
<Property name="AlvzHoechstlohn">
</Property>
<Property name="BeginnRentenalterFrauen">
</Property>
<Property name="BeginnRentenalterMaenner">
</Property>
<Property name="BetriebsNr"/>
<Property name="Jahr"/>
<Property name="Mandant">
</Property>
<Property name="Name"/>
<Property name="NrAusgleichskasse"/>
<Property name="Ort"/>
<Property name="Plz"/>
<Property name="PlzInklZusatz"/>
<Property name="SubNr"/>
</Storage>
</Class>


<Class name="DBLohn.SD.AhvAlvAdresse">
<Super>%Persistent,%XML.Adaptor,DBCore.MandantRel</Super>
<TimeChanged>62437,55776</TimeChanged>
<TimeCreated>62361,57398.36482</TimeCreated>
<Inheritance>right</Inheritance>

<Parameter name="XMLIGNOREINVALIDATTRIBUTE">
<Description><![CDATA[
Controls how to handle attributes that are unexpected.
-> If this parameter is 1 (the default), such attributes are ignored.
-> If it is 0, they are treated as errors, and import fails.]]></Description>
<Default>1</Default>
</Parameter>

<Parameter name="XMLIGNOREINVALIDTAG">
<Description><![CDATA[
Controls how to handle tags that are unexpected. 
-> If this parameter is 1, such tags are ignored. 
-> If it is 0 (the default), they are treated as errors, and import fails.]]></Description>
<Default>1</Default>
</Parameter>

<Parameter name="XMLIGNORENULL">
<Default>1</Default>
</Parameter>

<Property name="IdForExport">
<Type>%XML.Id</Type>
<Private>1</Private>
<Transient>1</Transient>
<Parameter name="XMLNAME" value="ID"/>
<Parameter name="XMLPROJECTION" value="ATTRIBUTE"/>
</Property>

<Property name="AdressNr">
<Description>
AdressNr</Description>
<Type>%Integer</Type>
</Property>

<Property name="Name">
<Description>
Name</Description>
<Type>%String</Type>
<Parameter name="MAXLEN" value="50"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="Adresszeile1">
<Description>
Adresszeile1</Description>
<Type>%String</Type>
<Parameter name="MAXLEN" value="50"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="Adresszeile2">
<Description>
Adresszeile2</Description>
<Type>%String</Type>
<Parameter name="MAXLEN" value="50"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="Adresszeile3">
<Description>
Adresszeile3</Description>
<Type>%String</Type>
<Parameter name="MAXLEN" value="50"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="BetriebsNr">
<Description>
BertriebsNr</Description>
<Type>%String</Type>
<Parameter name="MAXLEN" value="50"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="SubNr">
<Description>
SubNr</Description>
<Type>%String</Type>
<Parameter name="MAXLEN" value="50"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="NrAusgleichskasse">
<Description>
NrAusgleichskasse</Description>
<Type>%String</Type>
<Parameter name="MAXLEN" value="50"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="Ort">
<Type>%Library.String</Type>
<Parameter name="MAXLEN" value="255"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="Plz">
<Type>%Library.String</Type>
<Parameter name="MAXLEN" value="15"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="PlzInklZusatz">
<Type>%Library.String</Type>
<Parameter name="MAXLEN" value="15"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="Mandant">
<Type>%String</Type>
</Property>

<ForeignKey name="FKMandant">
<Properties>Mandant</Properties>
<ReferencedClass>DBCore.Mandant</ReferencedClass>
<ReferencedKey>MandIdIndex</ReferencedKey>
</ForeignKey>

<Index name="MandantIdx">
<Properties>Mandant</Properties>
</Index>

<Index name="MandantAdressNrIdx">
<Properties>Mandant,AdressNr</Properties>
<Unique>1</Unique>
</Index>

<Property name="Mitarbeiter">
<Type>DBLohn.MitarbeiterVs</Type>
<Cardinality>many</Cardinality>
<Inverse>AhvAlvAdresse</Inverse>
<Relationship>1</Relationship>
<Parameter name="XMLPROJECTION" value="NONE"/>
</Property>

<Property name="LohnabrechnungKopf">
<Type>DBLohn.LohnabrechnungKopf</Type>
<Cardinality>many</Cardinality>
<Inverse>AhvAlvAdresse</Inverse>
<Relationship>1</Relationship>
<Parameter name="XMLPROJECTION" value="NONE"/>
</Property>

<Method name="GetNextNumber">
<ClassMethod>1</ClassMethod>
<FormalSpec>MandantOid:%String</FormalSpec>
<ReturnType>%Integer</ReturnType>
<Implementation><![CDATA[
	set nr = 0
	&sql(SELECT TOP 1 AdressNr INTO :nr 
			FROM DBLohn_SD.AhvAlvAdresse
		 	WHERE Mandant = :MandantOid
		 	ORDER BY AdressNr DESC)
		 	
	if (SQLCODE'=0) {
		set nr = 0
	}
	Quit (nr+1)
]]></Implementation>
</Method>

<Method name="GetOidByNummer">
<ClassMethod>1</ClassMethod>
<FormalSpec>MandantOid:%String,Adressnr:%Integer</FormalSpec>
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[
	set oid = ""
	&sql(SELECT ID INTO :oid 
			FROM DBLohn_SD.AhvAlvAdresse
		 	WHERE Mandant = :MandantOid AND
		 		AdressNr = :Adressnr)
		 	
	if (SQLCODE'=0) {
		set oid = ""
	}
	Quit oid
]]></Implementation>
</Method>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
<DataLocation>^DBLohn.SD.AhvAlvAdresseD</DataLocation>
<DefaultData>AhvAlvAdresseDefaultData</DefaultData>
<IdLocation>^DBLohn.SD.AhvAlvAdresseD</IdLocation>
<IndexLocation>^DBLohn.SD.AhvAlvAdresseI</IndexLocation>
<StreamLocation>^DBLohn.SD.AhvAlvAdresseS</StreamLocation>
<Data name="AhvAlvAdresseDefaultData">
<Structure>listnode</Structure>
<Subscript/>
<Value name="1">
<Value>%%CLASSNAME</Value>
</Value>
<Value name="2">
<Value>AdressNr</Value>
</Value>
<Value name="3">
<Value>Name</Value>
</Value>
<Value name="4">
<Value>Adresszeile1</Value>
</Value>
<Value name="5">
<Value>Adresszeile2</Value>
</Value>
<Value name="6">
<Value>Adresszeile3</Value>
</Value>
<Value name="7">
<Value>BetriebsNr</Value>
</Value>
<Value name="8">
<Value>SubNr</Value>
</Value>
<Value name="9">
<Value>NrAusgleichskasse</Value>
</Value>
<Value name="10">
<Value>Ort</Value>
</Value>
<Value name="11">
<Value>Plz</Value>
</Value>
<Value name="12">
<Value>PlzInklZusatz</Value>
</Value>
<Value name="13">
<Value>AhvAlvEintrag</Value>
</Value>
<Value name="14">
<Value>Mandant</Value>
</Value>
</Data>
<Property name="%%CLASSNAME">
</Property>
<Property name="AdressNr">
</Property>
<Property name="Adresszeile1">
</Property>
<Property name="Adresszeile2">
</Property>
<Property name="Adresszeile3">
</Property>
<Property name="AhvAlvEintrag"/>
<Property name="BetriebsNr">
</Property>
<Property name="Mandant">
</Property>
<Property name="Name">
</Property>
<Property name="NrAusgleichskasse">
</Property>
<Property name="Ort">
</Property>
<Property name="Plz">
</Property>
<Property name="PlzInklZusatz">
</Property>
<Property name="SubNr">
</Property>
<Property name="childsub"/>
</Storage>
</Class>


<Class name="DBLohn.SD.Anrede">
<Super>%Persistent,%XML.Adaptor,DBCore.MandantRel</Super>
<TimeChanged>62416,57281.686688</TimeChanged>
<TimeCreated>62374,57505.727557</TimeCreated>
<Inheritance>right</Inheritance>

<Parameter name="XMLIGNOREINVALIDATTRIBUTE">
<Description><![CDATA[
Controls how to handle attributes that are unexpected.
-> If this parameter is 1 (the default), such attributes are ignored.
-> If it is 0, they are treated as errors, and import fails.]]></Description>
<Default>1</Default>
</Parameter>

<Parameter name="XMLIGNOREINVALIDTAG">
<Description><![CDATA[
Controls how to handle tags that are unexpected. 
-> If this parameter is 1, such tags are ignored. 
-> If it is 0 (the default), they are treated as errors, and import fails.]]></Description>
<Default>1</Default>
</Parameter>

<Parameter name="XMLIGNORENULL">
<Default>1</Default>
</Parameter>

<Property name="IdForExport">
<Type>%XML.Id</Type>
<Private>1</Private>
<Transient>1</Transient>
<Parameter name="XMLNAME" value="ID"/>
<Parameter name="XMLPROJECTION" value="ATTRIBUTE"/>
</Property>

<Property name="Code">
<Description>
Code</Description>
<Type>%Integer</Type>
</Property>

<Property name="Text">
<Description>
Text</Description>
<Type>%String</Type>
<Collection>array</Collection>
<Parameter name="MAXLEN" value="255"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="Mandant">
<Type>%String</Type>
</Property>

<ForeignKey name="FKMandant">
<Properties>Mandant</Properties>
<ReferencedClass>DBCore.Mandant</ReferencedClass>
<ReferencedKey>MandIdIndex</ReferencedKey>
</ForeignKey>

<Index name="MandantIdx">
<Properties>Mandant</Properties>
</Index>

<Method name="GetText">
<FormalSpec>MandOid:%String,Lang:%String</FormalSpec>
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[	Quit ##Class(DBUtils.StringUtils).GetText(..Text, Lang, MandOid)
]]></Implementation>
</Method>

<Method name="GetTextClass">
<ClassMethod>1</ClassMethod>
<FormalSpec>myID:%String,MandOid:%String,Lang:%String</FormalSpec>
<ReturnType>%String</ReturnType>
<SqlProc>1</SqlProc>
<Implementation><![CDATA[
	set text = ""
	if ((myID '= "") && (myID '= $c(0))) {
		Set rs=##Class(DBLohn.SD.Anrede).%OpenId(myID)
		set text = rs.GetText(MandOid, Lang)
	}
	Quit text
]]></Implementation>
</Method>

<Method name="SetText">
<FormalSpec>MandOid:%String,Lang:%String,Value:%String</FormalSpec>
<Implementation><![CDATA[	Do ##class(DBUtils.StringUtils).SetText(..Text, Value, Lang, MandOid)
]]></Implementation>
</Method>

<Method name="GetIdByCodeOnMandant">
<ClassMethod>1</ClassMethod>
<FormalSpec>MandantOid:%String,Code:%Integer</FormalSpec>
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[

	set id = ""
	&sql(SELECT ID INTO :id 
			FROM DBLohn_SD.Anrede
		 	WHERE Mandant = :MandantOid AND Code = :Code)
		 	
	if (SQLCODE'=0) {
		set id = ""
	}
	Quit id
]]></Implementation>
</Method>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
<DataLocation>^DBLohn.SD.AnredeD</DataLocation>
<DefaultData>AnredeDefaultData</DefaultData>
<IdLocation>^DBLohn.SD.AnredeD</IdLocation>
<IndexLocation>^DBLohn.SD.AnredeI</IndexLocation>
<StreamLocation>^DBLohn.SD.AnredeS</StreamLocation>
<Data name="AnredeDefaultData">
<Structure>listnode</Structure>
<Subscript/>
<Value name="1">
<Value>%%CLASSNAME</Value>
</Value>
<Value name="2">
<Value>Code</Value>
</Value>
<Value name="3">
<Value>Mandant</Value>
</Value>
</Data>
<Data name="Text">
<Attribute>Text</Attribute>
<Structure>subnode</Structure>
<Subscript>"Text"</Subscript>
</Data>
</Storage>
</Class>


<Class name="DBLohn.SD.Arbeitsschema">
<Super>%Persistent,%XML.Adaptor,DBCore.MandantRel</Super>
<TimeChanged>62437,55776</TimeChanged>
<TimeCreated>62061,42938.949505</TimeCreated>
<Inheritance>right</Inheritance>

<Parameter name="XMLIGNOREINVALIDATTRIBUTE">
<Description><![CDATA[
Controls how to handle attributes that are unexpected.
-> If this parameter is 1 (the default), such attributes are ignored.
-> If it is 0, they are treated as errors, and import fails.]]></Description>
<Default>1</Default>
</Parameter>

<Parameter name="XMLIGNOREINVALIDTAG">
<Description><![CDATA[
Controls how to handle tags that are unexpected. 
-> If this parameter is 1, such tags are ignored. 
-> If it is 0 (the default), they are treated as errors, and import fails.]]></Description>
<Default>1</Default>
</Parameter>

<Parameter name="XMLIGNORENULL">
<Default>1</Default>
</Parameter>

<Property name="IdForExport">
<Type>%XML.Id</Type>
<Private>1</Private>
<Transient>1</Transient>
<Parameter name="XMLNAME" value="ID"/>
<Parameter name="XMLPROJECTION" value="ATTRIBUTE"/>
</Property>

<Property name="Mandant">
<Type>%String</Type>
</Property>

<ForeignKey name="FKMandant">
<Properties>Mandant</Properties>
<ReferencedClass>DBCore.Mandant</ReferencedClass>
<ReferencedKey>MandIdIndex</ReferencedKey>
</ForeignKey>

<Index name="MandantIdx">
<Properties>Mandant</Properties>
</Index>

<Property name="Nr">
<Description>
Nr</Description>
<Type>%Integer</Type>
</Property>

<Property name="Bezeichnung">
<Description>
Bezeichnung</Description>
<Type>%String</Type>
</Property>

<Property name="IstStundenlohn">
<Description>
IstStundenlohn</Description>
<Type>%Boolean</Type>
</Property>

<Property name="SAAVorMo">
<Description>
SAAVorMo</Description>
<Type>%Boolean</Type>
</Property>

<Property name="SAAVorDi">
<Description>
SAAVorDi</Description>
<Type>%Boolean</Type>
</Property>

<Property name="SAAVorMi">
<Description>
SAAVorMi</Description>
<Type>%Boolean</Type>
</Property>

<Property name="SAAVorDo">
<Description>
SAAVorDo</Description>
<Type>%Boolean</Type>
</Property>

<Property name="SAAVorFr">
<Description>
SAAVorFr</Description>
<Type>%Boolean</Type>
</Property>

<Property name="SAAVorSa">
<Description>
SAAVorSa</Description>
<Type>%Boolean</Type>
</Property>

<Property name="SAAVorSo">
<Description>
SAAVorSo</Description>
<Type>%Boolean</Type>
</Property>

<Property name="SAANachMo">
<Description>
SAANachMo</Description>
<Type>%Boolean</Type>
</Property>

<Property name="SAANachDi">
<Description>
SAANachDi</Description>
<Type>%Boolean</Type>
</Property>

<Property name="SAANachMi">
<Description>
SAANachMi</Description>
<Type>%Boolean</Type>
</Property>

<Property name="SAANachDo">
<Description>
SAANachDo</Description>
<Type>%Boolean</Type>
</Property>

<Property name="SAANachFr">
<Description>
SAANachFr</Description>
<Type>%Boolean</Type>
</Property>

<Property name="SAANachSa">
<Description>
SAANachSa</Description>
<Type>%Boolean</Type>
</Property>

<Property name="SAANachSo">
<Description>
SAANachSo</Description>
<Type>%Boolean</Type>
</Property>

<Property name="Arbeitszeitvorschlagen">
<Description>
Arbeitszeitvorschlagen</Description>
<Type>%Boolean</Type>
</Property>

<Property name="VAVorKommtMo">
<Description>
VAVorKommtMo</Description>
<Type>%Time</Type>
</Property>

<Property name="VAVorKommtDi">
<Description>
VAVorKommtDi</Description>
<Type>%Time</Type>
</Property>

<Property name="VAVorKommtMi">
<Description>
VAVorKommtMi</Description>
<Type>%Time</Type>
</Property>

<Property name="VAVorKommtDo">
<Description>
VAVorKommtDo</Description>
<Type>%Time</Type>
</Property>

<Property name="VAVorKommtFr">
<Description>
VAVorKommtFr</Description>
<Type>%Time</Type>
</Property>

<Property name="VAVorKommtSa">
<Description>
VAVorKommtSa</Description>
<Type>%Time</Type>
</Property>

<Property name="VAVorKommtSo">
<Description>
VAVorKommtSo</Description>
<Type>%Time</Type>
</Property>

<Property name="VANachKommtMo">
<Description>
VANachKommtMo</Description>
<Type>%Time</Type>
</Property>

<Property name="VANachKommtDi">
<Description>
VANachKommtDi</Description>
<Type>%Time</Type>
</Property>

<Property name="VANachKommtMi">
<Description>
VANachKommtMi</Description>
<Type>%Time</Type>
</Property>

<Property name="VANachKommtDo">
<Description>
VANachKommtDo</Description>
<Type>%Time</Type>
</Property>

<Property name="VANachKommtFr">
<Description>
VANachKommtFr</Description>
<Type>%Time</Type>
</Property>

<Property name="VANachKommtSa">
<Description>
VANachKommtSa</Description>
<Type>%Time</Type>
</Property>

<Property name="VANachKommtSo">
<Description>
VANachKommtSo</Description>
<Type>%Time</Type>
</Property>

<Property name="VAVorGehtMo">
<Description>
VAVorGehtMo</Description>
<Type>%Time</Type>
</Property>

<Property name="VAVorGehtDi">
<Description>
VAVorGehtDi</Description>
<Type>%Time</Type>
</Property>

<Property name="VAVorGehtMi">
<Description>
VAVorGehtMi</Description>
<Type>%Time</Type>
</Property>

<Property name="VAVorGehtDo">
<Description>
VAVorGehtDo</Description>
<Type>%Time</Type>
</Property>

<Property name="VAVorGehtFr">
<Description>
VAVorGehtFr</Description>
<Type>%Time</Type>
</Property>

<Property name="VAVorGehtSa">
<Description>
VAVorGehtSa</Description>
<Type>%Time</Type>
</Property>

<Property name="VAVorGehtSo">
<Description>
VAVorGehtSo</Description>
<Type>%Time</Type>
</Property>

<Property name="VANachGehtMo">
<Description>
VANachGehtMo</Description>
<Type>%Time</Type>
</Property>

<Property name="VANachGehtDi">
<Description>
VANachGehtDi</Description>
<Type>%Time</Type>
</Property>

<Property name="VANachGehtMi">
<Description>
VANachGehtMi</Description>
<Type>%Time</Type>
</Property>

<Property name="VANachGehtDo">
<Description>
VANachGehtDo</Description>
<Type>%Time</Type>
</Property>

<Property name="VANachGehtFr">
<Description>
VANachGehtFr</Description>
<Type>%Time</Type>
</Property>

<Property name="VANachGehtSa">
<Description>
VANachGehtSa</Description>
<Type>%Time</Type>
</Property>

<Property name="VANachGehtSo">
<Description>
VANachGehtSo</Description>
<Type>%Time</Type>
</Property>

<Property name="VPVorMinMo">
<Description>
VPVorMinMo</Description>
<Type>%Integer</Type>
</Property>

<Property name="VPVorMinDi">
<Description>
VPVorMinDi</Description>
<Type>%Integer</Type>
</Property>

<Property name="VPVorMinMi">
<Description>
VPVorMinMi</Description>
<Type>%Integer</Type>
</Property>

<Property name="VPVorMinDo">
<Description>
VPVorMinDo</Description>
<Type>%Integer</Type>
</Property>

<Property name="VPVorMinFr">
<Description>
VPVorMinFr</Description>
<Type>%Integer</Type>
</Property>

<Property name="VPVorMinSa">
<Description>
VPVorMinSa</Description>
<Type>%Integer</Type>
</Property>

<Property name="VPVorMinSo">
<Description>
VPVorMinSo</Description>
<Type>%Integer</Type>
</Property>

<Property name="VPNachMinMo">
<Description>
VPNachMinMo</Description>
<Type>%Integer</Type>
</Property>

<Property name="VPNachMinDi">
<Description>
VPNachMinDi</Description>
<Type>%Integer</Type>
</Property>

<Property name="VPNachMinMi">
<Description>
VPNachMinMi</Description>
<Type>%Integer</Type>
</Property>

<Property name="VPNachMinDo">
<Description>
VPNachMinDo</Description>
<Type>%Integer</Type>
</Property>

<Property name="VPNachMinFr">
<Description>
VPNachMinFr</Description>
<Type>%Integer</Type>
</Property>

<Property name="VPNachMinSa">
<Description>
VPNachMinSa</Description>
<Type>%Integer</Type>
</Property>

<Property name="VPNachMinSo">
<Description>
VPNachMinSo</Description>
<Type>%Integer</Type>
</Property>

<Property name="PausenEditierbar">
<Description>
PausenEditierbar</Description>
<Type>%Boolean</Type>
</Property>

<Property name="Arbeitsposition">
<Type>DBIntrap.SD.Arbeitsposition</Type>
<Cardinality>one</Cardinality>
<Inverse>Arbeitsschema</Inverse>
<Relationship>1</Relationship>
<Parameter name="XMLELEMENTREF" value="1"/>
<Parameter name="XMLNAME" value="Arbeitsposition"/>
<Parameter name="XMLPROJECTION" value="ATTRIBUTE"/>
<Parameter name="XMLREFERENCE" value="ID"/>
</Property>

<Property name="Lohnart">
<Type>DBLohn.Lohnart</Type>
<Cardinality>one</Cardinality>
<Inverse>Arbeitsschema</Inverse>
<Relationship>1</Relationship>
<Parameter name="XMLELEMENTREF" value="1"/>
<Parameter name="XMLNAME" value="Lohnart"/>
<Parameter name="XMLPROJECTION" value="ATTRIBUTE"/>
<Parameter name="XMLREFERENCE" value="ID"/>
</Property>

<Property name="Mitarbeiter">
<Type>DBCore.Mitarbeiter</Type>
<Cardinality>many</Cardinality>
<Inverse>Arbeitsschema</Inverse>
<Relationship>1</Relationship>
</Property>

<Method name="GetIdByNrOnMandant">
<ClassMethod>1</ClassMethod>
<FormalSpec>MandantOid:%String,Nr:%Integer</FormalSpec>
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[

	set id = ""
	&sql(SELECT ID INTO :id FROM DBLohn_SD.Arbeitsschema
		 WHERE Mandant = :MandantOid AND Nr = :Nr)
	Quit id
]]></Implementation>
</Method>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
<DataLocation>^DBLohn.SD.ArbeitsschemaD</DataLocation>
<DefaultData>ArbeitsschemaDefaultData</DefaultData>
<IdLocation>^DBLohn.SD.ArbeitsschemaD</IdLocation>
<IndexLocation>^DBLohn.SD.ArbeitsschemaI</IndexLocation>
<StreamLocation>^DBLohn.SD.ArbeitsschemaS</StreamLocation>
<Data name="ArbeitsschemaDefaultData">
<Structure>listnode</Structure>
<Subscript/>
<Value name="1">
<Value>%%CLASSNAME</Value>
</Value>
<Value name="2">
<Value>Mandant</Value>
</Value>
<Value name="3">
<Value>Nr</Value>
</Value>
<Value name="4">
<Value>Bezeichnung</Value>
</Value>
<Value name="5">
<Value>IstStundenlohn</Value>
</Value>
<Value name="6">
<Value>SAAVorMo</Value>
</Value>
<Value name="7">
<Value>SAAVorDi</Value>
</Value>
<Value name="8">
<Value>SAAVorMi</Value>
</Value>
<Value name="9">
<Value>SAAVorDo</Value>
</Value>
<Value name="10">
<Value>SAAVorFr</Value>
</Value>
<Value name="11">
<Value>SAAVorSa</Value>
</Value>
<Value name="12">
<Value>SAAVorSo</Value>
</Value>
<Value name="13">
<Value>SAANachMo</Value>
</Value>
<Value name="14">
<Value>SAANachDi</Value>
</Value>
<Value name="15">
<Value>SAANachMi</Value>
</Value>
<Value name="16">
<Value>SAANachDo</Value>
</Value>
<Value name="17">
<Value>SAANachFr</Value>
</Value>
<Value name="18">
<Value>SAANachSa</Value>
</Value>
<Value name="19">
<Value>SAANachSo</Value>
</Value>
<Value name="20">
<Value>Arbeitszeitvorschlagen</Value>
</Value>
<Value name="21">
<Value>VAVorKommtMo</Value>
</Value>
<Value name="22">
<Value>VAVorKommtDi</Value>
</Value>
<Value name="23">
<Value>VAVorKommtMi</Value>
</Value>
<Value name="24">
<Value>VAVorKommtDo</Value>
</Value>
<Value name="25">
<Value>VAVorKommtFr</Value>
</Value>
<Value name="26">
<Value>VAVorKommtSa</Value>
</Value>
<Value name="27">
<Value>VAVorKommtSo</Value>
</Value>
<Value name="28">
<Value>VANachKommtMo</Value>
</Value>
<Value name="29">
<Value>VANachKommtDi</Value>
</Value>
<Value name="30">
<Value>VANachKommtMi</Value>
</Value>
<Value name="31">
<Value>VANachKommtDo</Value>
</Value>
<Value name="32">
<Value>VANachKommtFr</Value>
</Value>
<Value name="33">
<Value>VANachKommtSa</Value>
</Value>
<Value name="34">
<Value>VANachKommtSo</Value>
</Value>
<Value name="35">
<Value>VAVorGehtMo</Value>
</Value>
<Value name="36">
<Value>VAVorGehtDi</Value>
</Value>
<Value name="37">
<Value>VAVorGehtMi</Value>
</Value>
<Value name="38">
<Value>VAVorGehtDo</Value>
</Value>
<Value name="39">
<Value>VAVorGehtFr</Value>
</Value>
<Value name="40">
<Value>VAVorGehtSa</Value>
</Value>
<Value name="41">
<Value>VAVorGehtSo</Value>
</Value>
<Value name="42">
<Value>VANachGehtMo</Value>
</Value>
<Value name="43">
<Value>VANachGehtDi</Value>
</Value>
<Value name="44">
<Value>VANachGehtMi</Value>
</Value>
<Value name="45">
<Value>VANachGehtDo</Value>
</Value>
<Value name="46">
<Value>VANachGehtFr</Value>
</Value>
<Value name="47">
<Value>VANachGehtSa</Value>
</Value>
<Value name="48">
<Value>VANachGehtSo</Value>
</Value>
<Value name="49">
<Value>VPVorMinMo</Value>
</Value>
<Value name="50">
<Value>VPVorMinDi</Value>
</Value>
<Value name="51">
<Value>VPVorMinMi</Value>
</Value>
<Value name="52">
<Value>VPVorMinDo</Value>
</Value>
<Value name="53">
<Value>VPVorMinFr</Value>
</Value>
<Value name="54">
<Value>VPVorMinSa</Value>
</Value>
<Value name="55">
<Value>VPVorMinSo</Value>
</Value>
<Value name="56">
<Value>VPNachMinMo</Value>
</Value>
<Value name="57">
<Value>VPNachMinDi</Value>
</Value>
<Value name="58">
<Value>VPNachMinMi</Value>
</Value>
<Value name="59">
<Value>VPNachMinDo</Value>
</Value>
<Value name="60">
<Value>VPNachMinFr</Value>
</Value>
<Value name="61">
<Value>VPNachMinSa</Value>
</Value>
<Value name="62">
<Value>VPNachMinSo</Value>
</Value>
<Value name="63">
<Value>PausenEditierbar</Value>
</Value>
<Value name="64">
<Value>Arbeitsposition</Value>
</Value>
<Value name="65">
<Value>Lohnart</Value>
</Value>
</Data>
<Property name="%%CLASSNAME">
</Property>
<Property name="Arbeitsposition">
</Property>
<Property name="Arbeitszeitvorschlagen">
</Property>
<Property name="Bezeichnung">
</Property>
<Property name="IstStundenlohn">
</Property>
<Property name="Lohnart">
</Property>
<Property name="Mandant">
</Property>
<Property name="Nr">
</Property>
<Property name="PausenEditierbar">
</Property>
<Property name="SAANachDi">
</Property>
<Property name="SAANachDo">
</Property>
<Property name="SAANachFr">
</Property>
<Property name="SAANachMi">
</Property>
<Property name="SAANachMo">
</Property>
<Property name="SAANachSa">
</Property>
<Property name="SAANachSo">
</Property>
<Property name="SAAVorDi">
</Property>
<Property name="SAAVorDo">
</Property>
<Property name="SAAVorFr">
</Property>
<Property name="SAAVorMi">
</Property>
<Property name="SAAVorMo">
</Property>
<Property name="SAAVorSa">
</Property>
<Property name="SAAVorSo">
</Property>
<Property name="VANachGehtDi">
</Property>
<Property name="VANachGehtDo">
</Property>
<Property name="VANachGehtFr">
</Property>
<Property name="VANachGehtMi">
</Property>
<Property name="VANachGehtMo">
</Property>
<Property name="VANachGehtSa">
</Property>
<Property name="VANachGehtSo">
</Property>
<Property name="VANachKommtDi">
</Property>
<Property name="VANachKommtDo">
</Property>
<Property name="VANachKommtFr">
</Property>
<Property name="VANachKommtMi">
</Property>
<Property name="VANachKommtMo">
</Property>
<Property name="VANachKommtSa">
</Property>
<Property name="VANachKommtSo">
</Property>
<Property name="VAVorGehtDi">
</Property>
<Property name="VAVorGehtDo">
</Property>
<Property name="VAVorGehtFr">
</Property>
<Property name="VAVorGehtMi">
</Property>
<Property name="VAVorGehtMo">
</Property>
<Property name="VAVorGehtSa">
</Property>
<Property name="VAVorGehtSo">
</Property>
<Property name="VAVorKommtDi">
</Property>
<Property name="VAVorKommtDo">
</Property>
<Property name="VAVorKommtFr">
</Property>
<Property name="VAVorKommtMi">
</Property>
<Property name="VAVorKommtMo">
</Property>
<Property name="VAVorKommtSa">
</Property>
<Property name="VAVorKommtSo">
</Property>
<Property name="VPNachMinDi">
</Property>
<Property name="VPNachMinDo">
</Property>
<Property name="VPNachMinFr">
</Property>
<Property name="VPNachMinMi">
</Property>
<Property name="VPNachMinMo">
</Property>
<Property name="VPNachMinSa">
</Property>
<Property name="VPNachMinSo">
</Property>
<Property name="VPVorMinDi">
</Property>
<Property name="VPVorMinDo">
</Property>
<Property name="VPVorMinFr">
</Property>
<Property name="VPVorMinMi">
</Property>
<Property name="VPVorMinMo">
</Property>
<Property name="VPVorMinSa">
</Property>
<Property name="VPVorMinSo">
</Property>
</Storage>
</Class>


<Class name="DBLohn.SD.Bvg">
<Super>%Persistent,%XML.Adaptor,DBCore.MandantRel</Super>
<TimeChanged>62437,55776</TimeChanged>
<TimeCreated>62046,41570.474358</TimeCreated>
<Inheritance>right</Inheritance>

<Parameter name="XMLIGNOREINVALIDATTRIBUTE">
<Description><![CDATA[
Controls how to handle attributes that are unexpected.
-> If this parameter is 1 (the default), such attributes are ignored.
-> If it is 0, they are treated as errors, and import fails.]]></Description>
<Default>1</Default>
</Parameter>

<Parameter name="XMLIGNOREINVALIDTAG">
<Description><![CDATA[
Controls how to handle tags that are unexpected. 
-> If this parameter is 1, such tags are ignored. 
-> If it is 0 (the default), they are treated as errors, and import fails.]]></Description>
<Default>1</Default>
</Parameter>

<Parameter name="XMLIGNORENULL">
<Default>1</Default>
</Parameter>

<Property name="IdForExport">
<Type>%XML.Id</Type>
<Private>1</Private>
<Transient>1</Transient>
<Parameter name="XMLNAME" value="ID"/>
<Parameter name="XMLPROJECTION" value="ATTRIBUTE"/>
</Property>

<Property name="Adresse">
<Type>DBLohn.SD.BvgAdresse</Type>
<Cardinality>parent</Cardinality>
<Inverse>BvgEintrag</Inverse>
<Relationship>1</Relationship>
<Parameter name="XMLELEMENTREF" value="1"/>
<Parameter name="XMLNAME" value="Adresse"/>
<Parameter name="XMLPROJECTION" value="ATTRIBUTE"/>
<Parameter name="XMLREFERENCE" value="ID"/>
</Property>

<Property name="AbDatum">
<Description>
AbDatum</Description>
<Type>%Date</Type>
</Property>

<Property name="Koordinationsabzug">
<Description>
Koordinationsabzug</Description>
<Type>%Decimal</Type>
</Property>

<Property name="Hoechstlohn">
<Description>
Hoechstlohn</Description>
<Type>%Decimal</Type>
</Property>

<Property name="Mindestbetrag">
<Description>
Mindestbetrag</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MaxVerwaltungsabzug">
<Description>
MaxVerwaltungsabzug</Description>
<Type>%Decimal</Type>
</Property>

<Property name="Limit1">
<Description>
Limit1</Description>
<Type>%Decimal</Type>
</Property>

<Property name="Verwaltungsabzug1">
<Description>
Verwaltungsabzug1</Description>
<Type>%Decimal</Type>
</Property>

<Property name="Limit2">
<Description>
Limit2</Description>
<Type>%Decimal</Type>
</Property>

<Property name="Verwaltungsabzug2">
<Description>
Verwaltungsabzug2 </Description>
<Type>%Decimal</Type>
</Property>

<Property name="MBisJA">
<Description>
MBisJA</Description>
<Type>%Integer</Type>
</Property>

<Property name="MNehmerA">
<Description>
MNehmerA</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MSonderA">
<Description>
MSonderA</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MGeberA">
<Description>
MGeberA</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FBisJA">
<Description>
FBisJA</Description>
<Type>%Integer</Type>
</Property>

<Property name="FNehmerA">
<Description>
FNehmerA</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FSonderA">
<Description>
FSonderA</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FGeberA">
<Description>
FGeberA</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MBisJB">
<Description>
MBisJB</Description>
<Type>%Integer</Type>
</Property>

<Property name="MNehmerB">
<Description>
MNehmerB</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MSonderB">
<Description>
MSonderB</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MGeberB">
<Description>
MGeberB</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FBisJB">
<Description>
FBisJB</Description>
<Type>%Integer</Type>
</Property>

<Property name="FNehmerB">
<Description>
FNehmerB</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FSonderB">
<Description>
FSonderB</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FGeberB">
<Description>
FGeberB</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MBisJC">
<Description>
MBisJC</Description>
<Type>%Integer</Type>
</Property>

<Property name="MNehmerC">
<Description>
MNehmerC</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MSonderC">
<Description>
MSonderC</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MGeberC">
<Description>
MGeberC</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FBisJC">
<Description>
FBisJC</Description>
<Type>%Integer</Type>
</Property>

<Property name="FNehmerC">
<Description>
FNehmerC</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FSonderC">
<Description>
FSonderC</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FGeberC">
<Description>
FGeberC</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MBisJD">
<Description>
MBisJD</Description>
<Type>%Integer</Type>
</Property>

<Property name="MNehmerD">
<Description>
MNehmerD</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MSonderD">
<Description>
MSonderD</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MGeberD">
<Description>
MGeberD</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FBisJD">
<Description>
FBisJD</Description>
<Type>%Integer</Type>
</Property>

<Property name="FNehmerD">
<Description>
FNehmerD</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FSonderD">
<Description>
FSonderD</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FGeberD">
<Description>
FGeberD</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MBisJE">
<Description>
MBisJE</Description>
<Type>%Integer</Type>
</Property>

<Property name="MNehmerE">
<Description>
MNehmerE</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MSonderE">
<Description>
MSonderE</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MGeberE">
<Description>
MGeberE</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FBisJE">
<Description>
FBisJE</Description>
<Type>%Integer</Type>
</Property>

<Property name="FNehmerE">
<Description>
FNehmerE</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FSonderE">
<Description>
FSonderE</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FGeberE">
<Description>
FGeberE</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MBisJF">
<Description>
MBisJF</Description>
<Type>%Integer</Type>
</Property>

<Property name="MNehmerF">
<Description>
MNehmerF</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MSonderF">
<Description>
MSonderF</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MGeberF">
<Description>
MGeberF</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FBisJF">
<Description>
FBisJF</Description>
<Type>%Integer</Type>
</Property>

<Property name="FNehmerF">
<Description>
FNehmerF</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FSonderF">
<Description>
FSonderF</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FGeberF">
<Description>
FGeberF</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MBisJG">
<Description>
MBisJG</Description>
<Type>%Integer</Type>
</Property>

<Property name="MNehmerG">
<Description>
MNehmerG</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MSonderG">
<Description>
MSonderG</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MGeberG">
<Description>
MGeberG</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FBisJG">
<Description>
FBisJG</Description>
<Type>%Integer</Type>
</Property>

<Property name="FNehmerG">
<Description>
FNehmerG</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FSonderG">
<Description>
FSonderG</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FGeberG">
<Description>
FGeberG</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MBisJH">
<Description>
MBisJH</Description>
<Type>%Integer</Type>
</Property>

<Property name="MNehmerH">
<Description>
MNehmerH</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MSonderH">
<Description>
MSonderH</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MGeberH">
<Description>
MGeberH</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FBisJH">
<Description>
FBisJH</Description>
<Type>%Integer</Type>
</Property>

<Property name="FNehmerH">
<Description>
FNehmerH</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FSonderH">
<Description>
FSonderH</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FGeberH">
<Description>
FGeberH</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MBisJI">
<Description>
MBisJI</Description>
<Type>%Integer</Type>
</Property>

<Property name="MNehmerI">
<Description>
MNehmerI</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MSonderI">
<Description>
MSonderI</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MGeberI">
<Description>
MGeberI</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FBisJI">
<Description>
FBisJI</Description>
<Type>%Integer</Type>
</Property>

<Property name="FNehmerI">
<Description>
FNehmerI</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FSonderI">
<Description>
FSonderI</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FGeberI">
<Description>
FGeberI</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MBisJK">
<Description>
MBisJK</Description>
<Type>%Integer</Type>
</Property>

<Property name="MNehmerK">
<Description>
MNehmerK</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MSonderK">
<Description>
MSonderK</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MGeberK">
<Description>
MGeberK</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FBisJK">
<Description>
FBisJK</Description>
<Type>%Integer</Type>
</Property>

<Property name="FNehmerK">
<Description>
FNehmerK</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FSonderK">
<Description>
FSonderK</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FGeberK">
<Description>
FGeberK</Description>
<Type>%Decimal</Type>
</Property>

<Method name="GetOidByAbDatumOnAdresse">
<ClassMethod>1</ClassMethod>
<FormalSpec>BvgAdressOid:%String,AbDatum:%Date</FormalSpec>
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[
	set id = ""
	&sql(SELECT TOP 1 ID INTO :id 
			FROM DBLohn_SD.Bvg
		 	WHERE Adresse = :BvgAdressOid AND 
		 			AbDatum <= TODATE(:AbDatum)
		 	ORDER BY AbDatum DESC)
		 	
	if (SQLCODE'=0) {
		set id = ""
	}
	Quit id
]]></Implementation>
</Method>

<Method name="GetNextOidByAbDatumOnAdresse">
<ClassMethod>1</ClassMethod>
<FormalSpec>BvgAdressOid:%String,AbDatum:%Date</FormalSpec>
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[
	set id = ""
	&sql(SELECT TOP 1 ID INTO :id 
			FROM DBLohn_SD.Bvg
		 	WHERE Adresse = :BvgAdressOid AND 
		 			AbDatum > TODATE(:AbDatum)
		 	ORDER BY AbDatum)
		 	
	if (SQLCODE'=0) {
		set id = ""
	}
	Quit id
]]></Implementation>
</Method>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
<DataLocation>^DBLohn.SD.BvgD</DataLocation>
<DefaultData>BvgDefaultData</DefaultData>
<IdLocation>^DBLohn.SD.BvgD</IdLocation>
<IndexLocation>^DBLohn.SD.BvgI</IndexLocation>
<StreamLocation>^DBLohn.SD.BvgS</StreamLocation>
<Data name="BvgDefaultData">
<Structure>listnode</Structure>
<Subscript/>
<Value name="1">
<Value>%%CLASSNAME</Value>
</Value>
<Value name="2">
<Value>Jahr</Value>
</Value>
<Value name="3">
<Value>AdressNr</Value>
</Value>
<Value name="4">
<Value>Name</Value>
</Value>
<Value name="5">
<Value>Adresszeile1</Value>
</Value>
<Value name="6">
<Value>Adresszeile2</Value>
</Value>
<Value name="7">
<Value>Adresszeile3</Value>
</Value>
<Value name="8">
<Value>BetriebsNr</Value>
</Value>
<Value name="9">
<Value>SubNr</Value>
</Value>
<Value name="10">
<Value>NrAusgleichskasse</Value>
</Value>
<Value name="11">
<Value>Mandant</Value>
</Value>
<Value name="12">
<Value>Ort</Value>
</Value>
<Value name="13">
<Value>Plz</Value>
</Value>
<Value name="14">
<Value>PlzInklZusatz</Value>
</Value>
<Value name="15">
<Value>AdressNrBroker</Value>
</Value>
<Value name="16">
<Value>Bemerkung1</Value>
</Value>
<Value name="17">
<Value>Bemerkung2</Value>
</Value>
<Value name="18">
<Value>Suva</Value>
</Value>
<Value name="19">
<Value>Koordinationsabzug</Value>
</Value>
<Value name="20">
<Value>Hoechstlohn</Value>
</Value>
<Value name="21">
<Value>Mindestbetrag</Value>
</Value>
<Value name="22">
<Value>MaxVerwaltungsabzug</Value>
</Value>
<Value name="23">
<Value>Limit1</Value>
</Value>
<Value name="24">
<Value>Verwaltungsabzug1</Value>
</Value>
<Value name="25">
<Value>Limit2</Value>
</Value>
<Value name="26">
<Value>Verwaltungsabzug2</Value>
</Value>
<Value name="27">
<Value>MBisJA</Value>
</Value>
<Value name="28">
<Value>MNehmerA</Value>
</Value>
<Value name="29">
<Value>MSonderA</Value>
</Value>
<Value name="30">
<Value>MGeberA</Value>
</Value>
<Value name="31">
<Value>FBisJA</Value>
</Value>
<Value name="32">
<Value>FNehmerA</Value>
</Value>
<Value name="33">
<Value>FSonderA</Value>
</Value>
<Value name="34">
<Value>FGeberA</Value>
</Value>
<Value name="35">
<Value>MBisJB</Value>
</Value>
<Value name="36">
<Value>MNehmerB</Value>
</Value>
<Value name="37">
<Value>MSonderB</Value>
</Value>
<Value name="38">
<Value>MGeberB</Value>
</Value>
<Value name="39">
<Value>FBisJB</Value>
</Value>
<Value name="40">
<Value>FNehmerB</Value>
</Value>
<Value name="41">
<Value>FSonderB</Value>
</Value>
<Value name="42">
<Value>FGeberB</Value>
</Value>
<Value name="43">
<Value>MVonJB</Value>
</Value>
<Value name="44">
<Value>FVonJB</Value>
</Value>
<Value name="45">
<Value>MBisJC</Value>
</Value>
<Value name="46">
<Value>MNehmerC</Value>
</Value>
<Value name="47">
<Value>MSonderC</Value>
</Value>
<Value name="48">
<Value>MGeberC</Value>
</Value>
<Value name="49">
<Value>FBisJC</Value>
</Value>
<Value name="50">
<Value>FNehmerC</Value>
</Value>
<Value name="51">
<Value>FSonderC</Value>
</Value>
<Value name="52">
<Value>FGeberC</Value>
</Value>
<Value name="53">
<Value>MVonJC</Value>
</Value>
<Value name="54">
<Value>FVonJC</Value>
</Value>
<Value name="55">
<Value>MBisJD</Value>
</Value>
<Value name="56">
<Value>MNehmerD</Value>
</Value>
<Value name="57">
<Value>MSonderD</Value>
</Value>
<Value name="58">
<Value>MGeberD</Value>
</Value>
<Value name="59">
<Value>FBisJD</Value>
</Value>
<Value name="60">
<Value>FNehmerD</Value>
</Value>
<Value name="61">
<Value>FSonderD</Value>
</Value>
<Value name="62">
<Value>FGeberD</Value>
</Value>
<Value name="63">
<Value>MVonJD</Value>
</Value>
<Value name="64">
<Value>FVonJD</Value>
</Value>
<Value name="65">
<Value>MBisJE</Value>
</Value>
<Value name="66">
<Value>MNehmerE</Value>
</Value>
<Value name="67">
<Value>MSonderE</Value>
</Value>
<Value name="68">
<Value>MGeberE</Value>
</Value>
<Value name="69">
<Value>FBisJE</Value>
</Value>
<Value name="70">
<Value>FNehmerE</Value>
</Value>
<Value name="71">
<Value>FSonderE</Value>
</Value>
<Value name="72">
<Value>FGeberE</Value>
</Value>
<Value name="73">
<Value>MVonJE</Value>
</Value>
<Value name="74">
<Value>FVonJE</Value>
</Value>
<Value name="75">
<Value>MBisJF</Value>
</Value>
<Value name="76">
<Value>MNehmerF</Value>
</Value>
<Value name="77">
<Value>MSonderF</Value>
</Value>
<Value name="78">
<Value>MGeberF</Value>
</Value>
<Value name="79">
<Value>FBisJF</Value>
</Value>
<Value name="80">
<Value>FNehmerF</Value>
</Value>
<Value name="81">
<Value>FSonderF</Value>
</Value>
<Value name="82">
<Value>FGeberF</Value>
</Value>
<Value name="83">
<Value>MVonJF</Value>
</Value>
<Value name="84">
<Value>FVonJF</Value>
</Value>
<Value name="85">
<Value>MBisJG</Value>
</Value>
<Value name="86">
<Value>MNehmerG</Value>
</Value>
<Value name="87">
<Value>MSonderG</Value>
</Value>
<Value name="88">
<Value>MGeberG</Value>
</Value>
<Value name="89">
<Value>FBisJG</Value>
</Value>
<Value name="90">
<Value>FNehmerG</Value>
</Value>
<Value name="91">
<Value>FSonderG</Value>
</Value>
<Value name="92">
<Value>FGeberG</Value>
</Value>
<Value name="93">
<Value>MVonJG</Value>
</Value>
<Value name="94">
<Value>FVonJG</Value>
</Value>
<Value name="95">
<Value>MBisJH</Value>
</Value>
<Value name="96">
<Value>MNehmerH</Value>
</Value>
<Value name="97">
<Value>MSonderH</Value>
</Value>
<Value name="98">
<Value>MGeberH</Value>
</Value>
<Value name="99">
<Value>FBisJH</Value>
</Value>
<Value name="100">
<Value>FNehmerH</Value>
</Value>
<Value name="101">
<Value>FSonderH</Value>
</Value>
<Value name="102">
<Value>FGeberH</Value>
</Value>
<Value name="103">
<Value>MVonJH</Value>
</Value>
<Value name="104">
<Value>FVonJH</Value>
</Value>
<Value name="105">
<Value>MBisJI</Value>
</Value>
<Value name="106">
<Value>MNehmerI</Value>
</Value>
<Value name="107">
<Value>MSonderI</Value>
</Value>
<Value name="108">
<Value>MGeberI</Value>
</Value>
<Value name="109">
<Value>FBisJI</Value>
</Value>
<Value name="110">
<Value>FNehmerI</Value>
</Value>
<Value name="111">
<Value>FSonderI</Value>
</Value>
<Value name="112">
<Value>FGeberI</Value>
</Value>
<Value name="113">
<Value>MVonJI</Value>
</Value>
<Value name="114">
<Value>FVonJI</Value>
</Value>
<Value name="115">
<Value>MBisJK</Value>
</Value>
<Value name="116">
<Value>MNehmerK</Value>
</Value>
<Value name="117">
<Value>MSonderK</Value>
</Value>
<Value name="118">
<Value>MGeberK</Value>
</Value>
<Value name="119">
<Value>FBisJK</Value>
</Value>
<Value name="120">
<Value>FNehmerK</Value>
</Value>
<Value name="121">
<Value>FSonderK</Value>
</Value>
<Value name="122">
<Value>FGeberK</Value>
</Value>
<Value name="123">
<Value>MVonJK</Value>
</Value>
<Value name="124">
<Value>FVonJK</Value>
</Value>
<Value name="125">
<Value>AbDatum</Value>
</Value>
</Data>
<Property name="%%CLASSNAME">
</Property>
<Property name="AbDatum">
</Property>
<Property name="AdressNr"/>
<Property name="AdressNrBroker"/>
<Property name="Adresse">
</Property>
<Property name="Adresszeile1"/>
<Property name="Adresszeile2"/>
<Property name="Adresszeile3"/>
<Property name="Bemerkung1"/>
<Property name="Bemerkung2"/>
<Property name="BetriebsNr"/>
<Property name="FBisJA">
</Property>
<Property name="FBisJB">
</Property>
<Property name="FBisJC">
</Property>
<Property name="FBisJD">
</Property>
<Property name="FBisJE">
</Property>
<Property name="FBisJF">
</Property>
<Property name="FBisJG">
</Property>
<Property name="FBisJH">
</Property>
<Property name="FBisJI">
</Property>
<Property name="FBisJK">
</Property>
<Property name="FGeberA">
</Property>
<Property name="FGeberB">
</Property>
<Property name="FGeberC">
</Property>
<Property name="FGeberD">
</Property>
<Property name="FGeberE">
</Property>
<Property name="FGeberF">
</Property>
<Property name="FGeberG">
</Property>
<Property name="FGeberH">
</Property>
<Property name="FGeberI">
</Property>
<Property name="FGeberK">
</Property>
<Property name="FNehmerA">
</Property>
<Property name="FNehmerB">
</Property>
<Property name="FNehmerC">
</Property>
<Property name="FNehmerD">
</Property>
<Property name="FNehmerE">
</Property>
<Property name="FNehmerF">
</Property>
<Property name="FNehmerG">
</Property>
<Property name="FNehmerH">
</Property>
<Property name="FNehmerI">
</Property>
<Property name="FNehmerK">
</Property>
<Property name="FSonderA">
</Property>
<Property name="FSonderB">
</Property>
<Property name="FSonderC">
</Property>
<Property name="FSonderD">
</Property>
<Property name="FSonderE">
</Property>
<Property name="FSonderF">
</Property>
<Property name="FSonderG">
</Property>
<Property name="FSonderH">
</Property>
<Property name="FSonderI">
</Property>
<Property name="FSonderK">
</Property>
<Property name="FVonJB"/>
<Property name="FVonJC"/>
<Property name="FVonJD"/>
<Property name="FVonJE"/>
<Property name="FVonJF"/>
<Property name="FVonJG"/>
<Property name="FVonJH"/>
<Property name="FVonJI"/>
<Property name="FVonJK"/>
<Property name="Hoechstlohn">
</Property>
<Property name="Jahr"/>
<Property name="Koordinationsabzug">
</Property>
<Property name="Limit1">
</Property>
<Property name="Limit2">
</Property>
<Property name="MBisJA">
</Property>
<Property name="MBisJB">
</Property>
<Property name="MBisJC">
</Property>
<Property name="MBisJD">
</Property>
<Property name="MBisJE">
</Property>
<Property name="MBisJF">
</Property>
<Property name="MBisJG">
</Property>
<Property name="MBisJH">
</Property>
<Property name="MBisJI">
</Property>
<Property name="MBisJK">
</Property>
<Property name="MGeberA">
</Property>
<Property name="MGeberB">
</Property>
<Property name="MGeberC">
</Property>
<Property name="MGeberD">
</Property>
<Property name="MGeberE">
</Property>
<Property name="MGeberF">
</Property>
<Property name="MGeberG">
</Property>
<Property name="MGeberH">
</Property>
<Property name="MGeberI">
</Property>
<Property name="MGeberK">
</Property>
<Property name="MNehmerA">
</Property>
<Property name="MNehmerB">
</Property>
<Property name="MNehmerC">
</Property>
<Property name="MNehmerD">
</Property>
<Property name="MNehmerE">
</Property>
<Property name="MNehmerF">
</Property>
<Property name="MNehmerG">
</Property>
<Property name="MNehmerH">
</Property>
<Property name="MNehmerI">
</Property>
<Property name="MNehmerK">
</Property>
<Property name="MSonderA">
</Property>
<Property name="MSonderB">
</Property>
<Property name="MSonderC">
</Property>
<Property name="MSonderD">
</Property>
<Property name="MSonderE">
</Property>
<Property name="MSonderF">
</Property>
<Property name="MSonderG">
</Property>
<Property name="MSonderH">
</Property>
<Property name="MSonderI">
</Property>
<Property name="MSonderK">
</Property>
<Property name="MVonJB"/>
<Property name="MVonJC"/>
<Property name="MVonJD"/>
<Property name="MVonJE"/>
<Property name="MVonJF"/>
<Property name="MVonJG"/>
<Property name="MVonJH"/>
<Property name="MVonJI"/>
<Property name="MVonJK"/>
<Property name="Mandant"/>
<Property name="MaxVerwaltungsabzug">
</Property>
<Property name="Mindestbetrag">
</Property>
<Property name="Name"/>
<Property name="NrAusgleichskasse"/>
<Property name="Ort"/>
<Property name="Plz"/>
<Property name="PlzInklZusatz"/>
<Property name="SubNr"/>
<Property name="Suva"/>
<Property name="Verwaltungsabzug1">
</Property>
<Property name="Verwaltungsabzug2">
</Property>
<Property name="childsub">
</Property>
</Storage>
</Class>


<Class name="DBLohn.SD.BvgAdresse">
<Super>%Persistent,%XML.Adaptor,DBCore.MandantRel</Super>
<TimeChanged>62437,55776</TimeChanged>
<TimeCreated>62368,34686.077565</TimeCreated>
<Inheritance>right</Inheritance>

<Parameter name="XMLIGNOREINVALIDATTRIBUTE">
<Description><![CDATA[
Controls how to handle attributes that are unexpected.
-> If this parameter is 1 (the default), such attributes are ignored.
-> If it is 0, they are treated as errors, and import fails.]]></Description>
<Default>1</Default>
</Parameter>

<Parameter name="XMLIGNOREINVALIDTAG">
<Description><![CDATA[
Controls how to handle tags that are unexpected. 
-> If this parameter is 1, such tags are ignored. 
-> If it is 0 (the default), they are treated as errors, and import fails.]]></Description>
<Default>1</Default>
</Parameter>

<Parameter name="XMLIGNORENULL">
<Default>1</Default>
</Parameter>

<Property name="IdForExport">
<Type>%XML.Id</Type>
<Private>1</Private>
<Transient>1</Transient>
<Parameter name="XMLNAME" value="ID"/>
<Parameter name="XMLPROJECTION" value="ATTRIBUTE"/>
</Property>

<Property name="Mandant">
<Type>%String</Type>
</Property>

<ForeignKey name="FKMandant">
<Properties>Mandant</Properties>
<ReferencedClass>DBCore.Mandant</ReferencedClass>
<ReferencedKey>MandIdIndex</ReferencedKey>
</ForeignKey>

<Index name="MandantIdx">
<Properties>Mandant</Properties>
</Index>

<Property name="AdressNr">
<Description>
AdressNr</Description>
<Type>%Integer</Type>
</Property>

<Index name="MandantAdresseIdx">
<Properties>Mandant,AdressNr</Properties>
<Unique>1</Unique>
</Index>

<Property name="Name">
<Description>
Name</Description>
<Type>%String</Type>
<Parameter name="MAXLEN" value="50"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="Adresszeile1">
<Description>
Adresszeile1</Description>
<Type>%String</Type>
<Parameter name="MAXLEN" value="50"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="Adresszeile2">
<Description>
Adresszeile2</Description>
<Type>%String</Type>
<Parameter name="MAXLEN" value="50"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="Adresszeile3">
<Description>
Adresszeile3</Description>
<Type>%String</Type>
<Parameter name="MAXLEN" value="50"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="BetriebsNr">
<Description>
BertriebsNr</Description>
<Type>%String</Type>
<Parameter name="MAXLEN" value="50"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="SubNr">
<Description>
SubNr</Description>
<Type>%String</Type>
<Parameter name="MAXLEN" value="50"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="NrAusgleichskasse">
<Description>
NrAusgleichskasse</Description>
<Type>%String</Type>
<Parameter name="MAXLEN" value="50"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="Ort">
<Type>%Library.String</Type>
<Parameter name="MAXLEN" value="255"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="Plz">
<Type>%Library.String</Type>
<Parameter name="MAXLEN" value="15"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="PlzInklZusatz">
<Type>%Library.String</Type>
<Parameter name="MAXLEN" value="15"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="AdressNrBroker">
<Description>
AdressNrBroker</Description>
<Type>%String</Type>
</Property>

<Property name="Bemerkung1">
<Description>
Bemerkung1</Description>
<Type>%String</Type>
</Property>

<Property name="Bemerkung2">
<Description>
Bemerkung2</Description>
<Type>%String</Type>
</Property>

<Property name="BvgEintrag">
<Type>DBLohn.SD.Bvg</Type>
<Cardinality>children</Cardinality>
<Inverse>Adresse</Inverse>
<Relationship>1</Relationship>
<Parameter name="XMLPROJECTION" value="NONE"/>
</Property>

<Property name="Mitarbeiter">
<Type>DBLohn.MitarbeiterVs</Type>
<Cardinality>many</Cardinality>
<Inverse>BvgAdresse</Inverse>
<Relationship>1</Relationship>
<Parameter name="XMLPROJECTION" value="NONE"/>
</Property>

<Property name="LohnabrechnungKopf">
<Type>DBLohn.LohnabrechnungKopf</Type>
<Cardinality>many</Cardinality>
<Inverse>BvgAdresse</Inverse>
<Relationship>1</Relationship>
<Parameter name="XMLPROJECTION" value="NONE"/>
</Property>

<Method name="GetNextNumber">
<ClassMethod>1</ClassMethod>
<FormalSpec>MandantOid:%String</FormalSpec>
<ReturnType>%Integer</ReturnType>
<Implementation><![CDATA[
	set nr = 0
	&sql(SELECT TOP 1 AdressNr INTO :nr 
			FROM DBLohn_SD.BvgAdresse
		 	WHERE Mandant = :MandantOid
		 	ORDER BY AdressNr DESC)
		 	
	if (SQLCODE'=0) {
		set nr = 0
	}
	Quit (nr+1)
]]></Implementation>
</Method>

<Method name="GetFirstAdressOid">
<ClassMethod>1</ClassMethod>
<FormalSpec>MandantOid:%String</FormalSpec>
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[
	set oid = ""
	&sql(SELECT TOP 1 ID INTO :oid 
			FROM DBLohn_SD.BvgAdresse
		 	WHERE Mandant = :MandantOid
		 	ORDER BY AdressNr)
		 	
	if (SQLCODE'=0) {
		set oid = ""
	}
	Quit oid
]]></Implementation>
</Method>

<Method name="GetOidByNummer">
<ClassMethod>1</ClassMethod>
<FormalSpec>MandantOid:%String,Adressnr:%Integer</FormalSpec>
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[
	set oid = ""
	&sql(SELECT ID INTO :oid 
			FROM DBLohn_SD.BvgAdresse
		 	WHERE Mandant = :MandantOid AND
		 		AdressNr = :Adressnr)
		 	
	if (SQLCODE'=0) {
		set oid = ""
	}
	Quit oid
]]></Implementation>
</Method>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
<DataLocation>^DBLohn.SD.BvgAdresseD</DataLocation>
<DefaultData>BvgAdresseDefaultData</DefaultData>
<IdLocation>^DBLohn.SD.BvgAdresseD</IdLocation>
<IndexLocation>^DBLohn.SD.BvgAdresseI</IndexLocation>
<StreamLocation>^DBLohn.SD.BvgAdresseS</StreamLocation>
<Data name="BvgAdresseDefaultData">
<Structure>listnode</Structure>
<Subscript/>
<Value name="1">
<Value>%%CLASSNAME</Value>
</Value>
<Value name="2">
<Value>Mandant</Value>
</Value>
<Value name="3">
<Value>AdressNr</Value>
</Value>
<Value name="4">
<Value>Name</Value>
</Value>
<Value name="5">
<Value>Adresszeile1</Value>
</Value>
<Value name="6">
<Value>Adresszeile2</Value>
</Value>
<Value name="7">
<Value>Adresszeile3</Value>
</Value>
<Value name="8">
<Value>BetriebsNr</Value>
</Value>
<Value name="9">
<Value>SubNr</Value>
</Value>
<Value name="10">
<Value>NrAusgleichskasse</Value>
</Value>
<Value name="11">
<Value>Ort</Value>
</Value>
<Value name="12">
<Value>Plz</Value>
</Value>
<Value name="13">
<Value>PlzInklZusatz</Value>
</Value>
<Value name="14">
<Value>AdressNrBroker</Value>
</Value>
<Value name="15">
<Value>Bemerkung1</Value>
</Value>
<Value name="16">
<Value>Bemerkung2</Value>
</Value>
</Data>
<Property name="%%CLASSNAME">
</Property>
<Property name="AdressNr">
</Property>
<Property name="AdressNrBroker">
</Property>
<Property name="Adresszeile1">
</Property>
<Property name="Adresszeile2">
</Property>
<Property name="Adresszeile3">
</Property>
<Property name="Bemerkung1">
</Property>
<Property name="Bemerkung2">
</Property>
<Property name="BetriebsNr">
</Property>
<Property name="Mandant">
</Property>
<Property name="Name">
</Property>
<Property name="NrAusgleichskasse">
</Property>
<Property name="Ort">
</Property>
<Property name="Plz">
</Property>
<Property name="PlzInklZusatz">
</Property>
<Property name="SubNr">
</Property>
</Storage>
</Class>


<Class name="DBLohn.SD.Fak">
<Super>%Persistent,%XML.Adaptor,DBCore.MandantRel</Super>
<TimeChanged>62437,55776</TimeChanged>
<TimeCreated>62026,30614.654466</TimeCreated>
<Inheritance>right</Inheritance>

<Parameter name="XMLIGNOREINVALIDATTRIBUTE">
<Description><![CDATA[
Controls how to handle attributes that are unexpected.
-> If this parameter is 1 (the default), such attributes are ignored.
-> If it is 0, they are treated as errors, and import fails.]]></Description>
<Default>1</Default>
</Parameter>

<Parameter name="XMLIGNOREINVALIDTAG">
<Description><![CDATA[
Controls how to handle tags that are unexpected. 
-> If this parameter is 1, such tags are ignored. 
-> If it is 0 (the default), they are treated as errors, and import fails.]]></Description>
<Default>1</Default>
</Parameter>

<Parameter name="XMLIGNORENULL">
<Default>1</Default>
</Parameter>

<Property name="IdForExport">
<Type>%XML.Id</Type>
<Private>1</Private>
<Transient>1</Transient>
<Parameter name="XMLNAME" value="ID"/>
<Parameter name="XMLPROJECTION" value="ATTRIBUTE"/>
</Property>

<Property name="Mandant">
<Type>%String</Type>
</Property>

<ForeignKey name="FKMandant">
<Properties>Mandant</Properties>
<ReferencedClass>DBCore.Mandant</ReferencedClass>
<ReferencedKey>MandIdIndex</ReferencedKey>
</ForeignKey>

<Index name="MandantIdx">
<Properties>Mandant</Properties>
</Index>

<Property name="AbDatum">
<Description>
AbDatum</Description>
<Type>%Date</Type>
</Property>

<Property name="HoechstlohnJeJahr">
<Description>
HoechstlohnJeJahr</Description>
<Type>%Decimal</Type>
</Property>

<Property name="Arbeitgeberbeitraege">
<Description>
Arbeitgeberbeitraege</Description>
<Type>%Decimal</Type>
</Property>

<Method name="GetOidByAbDatumOnMandant">
<ClassMethod>1</ClassMethod>
<FormalSpec>MandantOid:%String,AbDatum:%Date</FormalSpec>
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[
	set id = ""
	&sql(SELECT TOP 1 ID INTO :id 
			FROM DBLohn_SD.Fak
		 	WHERE Mandant = :MandantOid AND 
		 			AbDatum <= TODATE(:AbDatum)
		 	ORDER BY AbDatum DESC)
		 	
	if (SQLCODE'=0) {
		set id = ""
	}
	Quit id
]]></Implementation>
</Method>

<Method name="GetNextOidByAbDatumOnMandant">
<ClassMethod>1</ClassMethod>
<FormalSpec>MandantOid:%String,AbDatum:%Date</FormalSpec>
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[
	set id = ""
	&sql(SELECT TOP 1 ID INTO :id 
			FROM DBLohn_SD.Fak
		 	WHERE Mandant = :MandantOid AND 
		 			AbDatum > TODATE(:AbDatum)
		 	ORDER BY AbDatum)
		 	
	if (SQLCODE'=0) {
		set id = ""
	}
	Quit id
]]></Implementation>
</Method>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
<DataLocation>^DBLohn.SD.FakD</DataLocation>
<DefaultData>FakDefaultData</DefaultData>
<IdLocation>^DBLohn.SD.FakD</IdLocation>
<IndexLocation>^DBLohn.SD.FakI</IndexLocation>
<StreamLocation>^DBLohn.SD.FakS</StreamLocation>
<Data name="FakDefaultData">
<Structure>listnode</Structure>
<Subscript/>
<Value name="1">
<Value>%%CLASSNAME</Value>
</Value>
<Value name="2">
<Value>Jahr</Value>
</Value>
<Value name="3">
<Value>Adresse</Value>
</Value>
<Value name="4">
<Value>HoechstlohnJeJahr</Value>
</Value>
<Value name="5">
<Value>Arbeitgeberbeitraege</Value>
</Value>
<Value name="6">
<Value>AdressNr</Value>
</Value>
<Value name="7">
<Value>Name</Value>
</Value>
<Value name="8">
<Value>Adresszeile1</Value>
</Value>
<Value name="9">
<Value>Adresszeile2</Value>
</Value>
<Value name="10">
<Value>Adresszeile3</Value>
</Value>
<Value name="11">
<Value>BetriebsNr</Value>
</Value>
<Value name="12">
<Value>SubNr</Value>
</Value>
<Value name="13">
<Value>NrAusgleichskasse</Value>
</Value>
<Value name="14">
<Value>Mandant</Value>
</Value>
<Value name="15">
<Value>Ort</Value>
</Value>
<Value name="16">
<Value>Plz</Value>
</Value>
<Value name="17">
<Value>PlzInklZusatz</Value>
</Value>
<Value name="18">
<Value>AbDatum</Value>
</Value>
</Data>
<Property name="%%CLASSNAME">
</Property>
<Property name="AbDatum">
</Property>
<Property name="AdressNr"/>
<Property name="Adresse"/>
<Property name="Adresszeile1"/>
<Property name="Adresszeile2"/>
<Property name="Adresszeile3"/>
<Property name="Arbeitgeberbeitraege">
</Property>
<Property name="BetriebsNr"/>
<Property name="HoechstlohnJeJahr">
</Property>
<Property name="Jahr"/>
<Property name="Mandant">
</Property>
<Property name="Name"/>
<Property name="NrAusgleichskasse"/>
<Property name="Ort"/>
<Property name="Plz"/>
<Property name="PlzInklZusatz"/>
<Property name="SubNr"/>
</Storage>
</Class>


<Class name="DBLohn.SD.FakAdresse">
<Super>%Persistent,%XML.Adaptor,DBCore.MandantRel</Super>
<TimeChanged>62430,54482.682381</TimeChanged>
<TimeCreated>62364,32345.513097</TimeCreated>
<Inheritance>right</Inheritance>

<Parameter name="XMLIGNOREINVALIDATTRIBUTE">
<Description><![CDATA[
Controls how to handle attributes that are unexpected.
-> If this parameter is 1 (the default), such attributes are ignored.
-> If it is 0, they are treated as errors, and import fails.]]></Description>
<Default>1</Default>
</Parameter>

<Parameter name="XMLIGNOREINVALIDTAG">
<Description><![CDATA[
Controls how to handle tags that are unexpected. 
-> If this parameter is 1, such tags are ignored. 
-> If it is 0 (the default), they are treated as errors, and import fails.]]></Description>
<Default>1</Default>
</Parameter>

<Parameter name="XMLIGNORENULL">
<Default>1</Default>
</Parameter>

<Property name="IdForExport">
<Type>%XML.Id</Type>
<Private>1</Private>
<Transient>1</Transient>
<Parameter name="XMLNAME" value="ID"/>
<Parameter name="XMLPROJECTION" value="ATTRIBUTE"/>
</Property>

<Property name="AdressNr">
<Description>
AdressNr</Description>
<Type>%Integer</Type>
</Property>

<Property name="Name">
<Description>
Name</Description>
<Type>%String</Type>
<Parameter name="MAXLEN" value="50"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="Adresszeile1">
<Description>
Adresszeile1</Description>
<Type>%String</Type>
<Parameter name="MAXLEN" value="50"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="Adresszeile2">
<Description>
Adresszeile2</Description>
<Type>%String</Type>
<Parameter name="MAXLEN" value="50"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="Adresszeile3">
<Description>
Adresszeile3</Description>
<Type>%String</Type>
<Parameter name="MAXLEN" value="50"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="BetriebsNr">
<Description>
BertriebsNr</Description>
<Type>%String</Type>
<Parameter name="MAXLEN" value="50"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="SubNr">
<Description>
SubNr</Description>
<Type>%String</Type>
<Parameter name="MAXLEN" value="50"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="NrAusgleichskasse">
<Description>
NrAusgleichskasse</Description>
<Type>%String</Type>
<Parameter name="MAXLEN" value="50"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="Ort">
<Type>%Library.String</Type>
<Parameter name="MAXLEN" value="255"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="Plz">
<Type>%Library.String</Type>
<Parameter name="MAXLEN" value="15"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="PlzInklZusatz">
<Type>%Library.String</Type>
<Parameter name="MAXLEN" value="15"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="Mandant">
<Type>%String</Type>
</Property>

<ForeignKey name="FKMandant">
<Properties>Mandant</Properties>
<ReferencedClass>DBCore.Mandant</ReferencedClass>
<ReferencedKey>MandIdIndex</ReferencedKey>
</ForeignKey>

<Index name="MandantIdx">
<Properties>Mandant</Properties>
</Index>

<Index name="MandantAdressNrIdx">
<Properties>Mandant,AdressNr</Properties>
<Unique>1</Unique>
</Index>

<Property name="Mitarbeiter">
<Type>DBLohn.MitarbeiterVs</Type>
<Cardinality>many</Cardinality>
<Inverse>FakAdresse</Inverse>
<Relationship>1</Relationship>
<Parameter name="XMLPROJECTION" value="NONE"/>
</Property>

<Property name="LohnabrechnungKopf">
<Type>DBLohn.LohnabrechnungKopf</Type>
<Cardinality>many</Cardinality>
<Inverse>FakAdresse</Inverse>
<Relationship>1</Relationship>
<Parameter name="XMLPROJECTION" value="NONE"/>
</Property>

<Method name="GetNextNumber">
<ClassMethod>1</ClassMethod>
<FormalSpec>MandantOid:%String</FormalSpec>
<ReturnType>%Integer</ReturnType>
<Implementation><![CDATA[
	set nr = 0
	&sql(SELECT TOP 1 AdressNr INTO :nr 
			FROM DBLohn_SD.FakAdresse
		 	WHERE Mandant = :MandantOid
		 	ORDER BY AdressNr DESC)
		 	
	if (SQLCODE'=0) {
		set nr = 0
	}
	Quit (nr+1)
]]></Implementation>
</Method>

<Method name="GetOidByNummer">
<ClassMethod>1</ClassMethod>
<FormalSpec>MandantOid:%String,Adressnr:%Integer</FormalSpec>
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[
	set oid = ""
	&sql(SELECT ID INTO :oid 
			FROM DBLohn_SD.FakAdresse
		 	WHERE Mandant = :MandantOid AND
		 		AdressNr = :Adressnr)
		 	
	if (SQLCODE'=0) {
		set oid = ""
	}
	Quit oid
]]></Implementation>
</Method>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
<DataLocation>^DBLohn.SD.FakAdresseD</DataLocation>
<DefaultData>FakAdresseDefaultData</DefaultData>
<IdLocation>^DBLohn.SD.FakAdresseD</IdLocation>
<IndexLocation>^DBLohn.SD.FakAdresseI</IndexLocation>
<StreamLocation>^DBLohn.SD.FakAdresseS</StreamLocation>
<Data name="FakAdresseDefaultData">
<Structure>listnode</Structure>
<Subscript/>
<Value name="1">
<Value>%%CLASSNAME</Value>
</Value>
<Value name="2">
<Value>AdressNr</Value>
</Value>
<Value name="3">
<Value>Name</Value>
</Value>
<Value name="4">
<Value>Adresszeile1</Value>
</Value>
<Value name="5">
<Value>Adresszeile2</Value>
</Value>
<Value name="6">
<Value>Adresszeile3</Value>
</Value>
<Value name="7">
<Value>BetriebsNr</Value>
</Value>
<Value name="8">
<Value>SubNr</Value>
</Value>
<Value name="9">
<Value>NrAusgleichskasse</Value>
</Value>
<Value name="10">
<Value>Ort</Value>
</Value>
<Value name="11">
<Value>Plz</Value>
</Value>
<Value name="12">
<Value>PlzInklZusatz</Value>
</Value>
<Value name="13">
<Value>Mandant</Value>
</Value>
</Data>
<Property name="AdressNr"/>
<Property name="Adresszeile1"/>
<Property name="Adresszeile2"/>
<Property name="Adresszeile3"/>
<Property name="BetriebsNr"/>
<Property name="Mandant"/>
<Property name="Name"/>
<Property name="NrAusgleichskasse"/>
<Property name="Ort"/>
<Property name="Plz"/>
<Property name="PlzInklZusatz"/>
<Property name="SubNr"/>
</Storage>
</Class>


<Class name="DBLohn.SD.Formular">
<Super>%Persistent,%XML.Adaptor,DBCore.MandantRel</Super>
<TimeChanged>62437,55776</TimeChanged>
<TimeCreated>62437,34325.344847</TimeCreated>
<Inheritance>right</Inheritance>

<Parameter name="XMLIGNOREINVALIDATTRIBUTE">
<Description><![CDATA[
Controls how to handle attributes that are unexpected.
-> If this parameter is 1 (the default), such attributes are ignored.
-> If it is 0, they are treated as errors, and import fails.]]></Description>
<Default>1</Default>
</Parameter>

<Parameter name="XMLIGNOREINVALIDTAG">
<Description><![CDATA[
Controls how to handle tags that are unexpected. 
-> If this parameter is 1, such tags are ignored. 
-> If it is 0 (the default), they are treated as errors, and import fails.]]></Description>
<Default>1</Default>
</Parameter>

<Parameter name="XMLIGNORENULL">
<Default>1</Default>
</Parameter>

<Property name="IdForExport">
<Type>%XML.Id</Type>
<Private>1</Private>
<Transient>1</Transient>
<Parameter name="XMLNAME" value="ID"/>
<Parameter name="XMLPROJECTION" value="ATTRIBUTE"/>
</Property>

<Property name="Nummer">
<Type>%Integer</Type>
<Required>1</Required>
</Property>

<Index name="NummerIndex">
<Properties>Nummer</Properties>
</Index>

<Property name="Mandant">
<Type>%String</Type>
</Property>

<ForeignKey name="FKMandant">
<Properties>Mandant</Properties>
<ReferencedClass>DBCore.Mandant</ReferencedClass>
<ReferencedKey>MandIdIndex</ReferencedKey>
</ForeignKey>

<Index name="MandantIdx">
<Properties>Mandant</Properties>
</Index>

<Index name="MandantNummerIndex">
<Properties>Mandant,Nummer</Properties>
<Unique>1</Unique>
</Index>

<Property name="FormularFile">
<Type>DBCore.ReportStream</Type>
<Cardinality>many</Cardinality>
<Inverse>LohnFormular</Inverse>
<Relationship>1</Relationship>
</Property>

<Method name="OutputStream">
<ReturnType>%Library.GlobalBinaryStream</ReturnType>
<Implementation><![CDATA[
	Set tmpStream=##class(%Library.GlobalBinaryStream).%New()
	Set oid = ..%Id()
	Set Ret=""
	If (oid'="") {
		&sql(SELECT %ID INTO :sID 
			 FROM DBCore.ReportStream 
			 WHERE LohnFormular=:oid)
		If ((sID'="") && (SQLCODE=0)) {
			Set s=##Class(DBCore.ReportStream).%OpenId(sID)
			Set Size=s.DataStream.Size
			Set Ret=tmpStream.CopyFromAndSave(s.DataStream)
		}
	}
	Quit tmpStream
]]></Implementation>
</Method>

<Method name="InputStream">
<FormalSpec>Stream:%Library.GlobalBinaryStream</FormalSpec>
<ReturnType>%Boolean</ReturnType>
<Implementation><![CDATA[
	Set res=0
	Set oid=..%Id()
	Set sID = ""
	If (oid'="") {
		Set Cnt=0
		&sql(SELECT count(ID) As Cnt INTO :Cnt
		     FROM DBCore.ReportStream 
		     WHERE LohnFormular=:oid)
		If (Cnt=0) {
			Set n=##Class(DBCore.ReportStream).%New()
			Set n.Sprache = "de"
			Set n.LohnFormular = ##Class(DBLohn.SD.Formular).%OpenId(oid)
			Set Ret=n.%Save()
			Set n=""
			Set res=(Ret=1)
			Quit:'res res
		}
		&sql(SELECT ID InTo :sID 
		     FROM DBCore.ReportStream 
		     WHERE LohnFormular=:oid)
		Set s=##Class(DBCore.ReportStream).%OpenId(sID)
		Set Ret=s.DataStream.CopyFromAndSave(Stream)
		Set RetS = s.%Save()
		Set res=((Ret=1) && (RetS=1))
	}
	Quit res
]]></Implementation>
</Method>

<Method name="GetFormularOidByCode">
<ClassMethod>1</ClassMethod>
<FormalSpec>MandOid:%String,FormularNr:%Integer</FormalSpec>
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[
	Set oid = ""
	&sql(SELECT ID INTO :oid
		 FROM DBLohn_SD.Formular
		 WHERE Nummer = :FormularNr AND Mandant=:MandOid)
	Quit oid
]]></Implementation>
</Method>

<Method name="%OnDelete">
<Description><![CDATA[
This callback method is invoked by the <METHOD>%Delete</METHOD> method to 
provide notification that the object specified by <VAR>oid</VAR> is being deleted.

<P>If this method returns an error then the object will not be deleted.
[Previously private]]]></Description>
<ClassMethod>1</ClassMethod>
<FormalSpec>oid:%ObjectIdentity</FormalSpec>
<ReturnType>%Status</ReturnType>
<ServerOnly>1</ServerOnly>
<Implementation><![CDATA[
	set reportOid = $lg(oid,1)
	
	&sql(DELETE FROM DBCore.ReportStream WHERE LohnFormular = :reportOid)
			
	Quit $$$OK
]]></Implementation>
</Method>

<Trigger name="trgOnDelete">
<Code><![CDATA[	set myId = {ID*O}
	&sql(DELETE FROM DBCore.ReportStream WHERE LohnFormular = :myId)]]></Code>
<Event>DELETE</Event>
</Trigger>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
<DataLocation>^DBLohn.SD.FormularD</DataLocation>
<DefaultData>FormularDefaultData</DefaultData>
<IdLocation>^DBLohn.SD.FormularD</IdLocation>
<IndexLocation>^DBLohn.SD.FormularI</IndexLocation>
<StreamLocation>^DBLohn.SD.FormularS</StreamLocation>
<Data name="FormularDefaultData">
<Structure>listnode</Structure>
<Subscript/>
<Value name="1">
<Value>%%CLASSNAME</Value>
</Value>
<Value name="2">
<Value>Nummer</Value>
</Value>
<Value name="3">
<Value>Mandant</Value>
</Value>
</Data>
<Property name="%%CLASSNAME">
</Property>
<Property name="Mandant">
</Property>
<Property name="Nummer">
</Property>
</Storage>
</Class>


<Class name="DBLohn.SD.Fusstext">
<Super>%Persistent,%XML.Adaptor,DBCore.MandantRel</Super>
<TimeChanged>62416,57282.487464</TimeChanged>
<TimeCreated>62385,51067.357132</TimeCreated>
<Inheritance>right</Inheritance>

<Parameter name="XMLIGNOREINVALIDATTRIBUTE">
<Description><![CDATA[
Controls how to handle attributes that are unexpected.
-> If this parameter is 1 (the default), such attributes are ignored.
-> If it is 0, they are treated as errors, and import fails.]]></Description>
<Default>1</Default>
</Parameter>

<Parameter name="XMLIGNOREINVALIDTAG">
<Description><![CDATA[
Controls how to handle tags that are unexpected. 
-> If this parameter is 1, such tags are ignored. 
-> If it is 0 (the default), they are treated as errors, and import fails.]]></Description>
<Default>1</Default>
</Parameter>

<Parameter name="XMLIGNORENULL">
<Default>1</Default>
</Parameter>

<Property name="IdForExport">
<Type>%XML.Id</Type>
<Private>1</Private>
<Transient>1</Transient>
<Parameter name="XMLNAME" value="ID"/>
<Parameter name="XMLPROJECTION" value="ATTRIBUTE"/>
</Property>

<Property name="Nummer">
<Description>
Nummer</Description>
<Type>%Integer</Type>
</Property>

<Property name="Text">
<Description>
Text</Description>
<Type>%String</Type>
<Collection>array</Collection>
<Parameter name="MAXLEN" value="32767"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="Mandant">
<Type>%String</Type>
</Property>

<ForeignKey name="FKMandant">
<Properties>Mandant</Properties>
<ReferencedClass>DBCore.Mandant</ReferencedClass>
<ReferencedKey>MandIdIndex</ReferencedKey>
</ForeignKey>

<Index name="MandantIdx">
<Properties>Mandant</Properties>
</Index>

<Property name="Mitarbeiter">
<Type>DBLohn.Mitarbeiter</Type>
<Cardinality>many</Cardinality>
<Inverse>Fusstext</Inverse>
<Relationship>1</Relationship>
<Parameter name="XMLPROJECTION" value="NONE"/>
</Property>

<Method name="GetText">
<FormalSpec>MandOid:%String,Lang:%String</FormalSpec>
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[	Quit ##Class(DBUtils.StringUtils).GetText(..Text, Lang, MandOid)
]]></Implementation>
</Method>

<Method name="GetTextClass">
<ClassMethod>1</ClassMethod>
<FormalSpec>myID:%String,MandOid:%String,Lang:%String</FormalSpec>
<ReturnType>%String</ReturnType>
<SqlProc>1</SqlProc>
<Implementation><![CDATA[
	set text = ""
	if ((myID '= "") && (myID '= $c(0))) {
		Set rs=##Class(DBLohn.SD.Fusstext).%OpenId(myID)
		set text = rs.GetText(MandOid, Lang)
	}
	Quit text
]]></Implementation>
</Method>

<Method name="SetText">
<FormalSpec>MandOid:%String,Lang:%String,Value:%String</FormalSpec>
<Implementation><![CDATA[	Do ##class(DBUtils.StringUtils).SetText(..Text, Value, Lang, MandOid)
]]></Implementation>
</Method>

<Method name="GetIdByCodeOnMandant">
<ClassMethod>1</ClassMethod>
<FormalSpec>MandantOid:%String,Code:%Integer</FormalSpec>
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[

	set id = ""
	&sql(SELECT ID INTO :id 
			FROM DBLohn_SD.Fusstext
		 	WHERE Mandant = :MandantOid AND Nummer = :Code)
		 	
	if (SQLCODE'=0) {
		set id = ""
	}
	Quit id
]]></Implementation>
</Method>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
<DataLocation>^DBLohn.SD.FusstextD</DataLocation>
<DefaultData>FusstextDefaultData</DefaultData>
<IdLocation>^DBLohn.SD.FusstextD</IdLocation>
<IndexLocation>^DBLohn.SD.FusstextI</IndexLocation>
<StreamLocation>^DBLohn.SD.FusstextS</StreamLocation>
<Data name="FusstextDefaultData">
<Structure>listnode</Structure>
<Subscript/>
<Value name="1">
<Value>%%CLASSNAME</Value>
</Value>
<Value name="2">
<Value>Nummer</Value>
</Value>
<Value name="3">
<Value>Mandant</Value>
</Value>
</Data>
<Data name="Text">
<Attribute>Text</Attribute>
<Structure>subnode</Structure>
<Subscript>"Text"</Subscript>
</Data>
<Property name="Mandant"/>
<Property name="Nummer"/>
</Storage>
</Class>


<Class name="DBLohn.SD.IndMultiSel">
<Super>DBLohn.SD.IndSelektion,%XML.Adaptor</Super>
<TimeChanged>62416,38663.22137</TimeChanged>
<TimeCreated>61982,40057.22256</TimeCreated>
<Inheritance>right</Inheritance>

<Property name="MultiSelMA">
<Type>DBLohn.MultiSelMA</Type>
<Cardinality>many</Cardinality>
<Inverse>IndMultiSel</Inverse>
<Relationship>1</Relationship>
</Property>

<Method name="PosNrExists">
<ClassMethod>1</ClassMethod>
<FormalSpec>MandantOid:%String,Code:%Integer</FormalSpec>
<ReturnType>%Boolean</ReturnType>
<Implementation><![CDATA[
	
	set id = ""
	&sql(SELECT TOP 1 ID INTO :id FROM DBLohn_SD.IndMultiSel
	     WHERE Code = :Code AND AktMandant = :MandantOid)
	if (id = "") {
		Quit 0
	} else {
		Quit 1
	}
]]></Implementation>
</Method>

<Method name="GetIdByPosNrOnMandant">
<ClassMethod>1</ClassMethod>
<FormalSpec>MandantOid:%String,PosNr:%Integer</FormalSpec>
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[

	set id = ""
	&sql(SELECT ID INTO :id FROM DBLohn_SD.IndMultiSel
		 WHERE AktMandant = :MandantOid AND Code = :PosNr)
	Quit id
]]></Implementation>
</Method>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
</Storage>
</Class>


<Class name="DBLohn.SD.IndSelektion">
<Super>%Persistent,%XML.Adaptor,DBCore.MandantRel</Super>
<TimeChanged>62416,57282.604428</TimeChanged>
<TimeCreated>61982,39466.93271</TimeCreated>
<Inheritance>right</Inheritance>

<Parameter name="XMLIGNOREINVALIDATTRIBUTE">
<Description><![CDATA[
Controls how to handle attributes that are unexpected.
-> If this parameter is 1 (the default), such attributes are ignored.
-> If it is 0, they are treated as errors, and import fails.]]></Description>
<Default>1</Default>
</Parameter>

<Parameter name="XMLIGNOREINVALIDTAG">
<Description><![CDATA[
Controls how to handle tags that are unexpected. 
-> If this parameter is 1, such tags are ignored. 
-> If it is 0 (the default), they are treated as errors, and import fails.]]></Description>
<Default>1</Default>
</Parameter>

<Parameter name="XMLIGNORENULL">
<Default>1</Default>
</Parameter>

<Property name="IdForExport">
<Type>%XML.Id</Type>
<Private>1</Private>
<Transient>1</Transient>
<Parameter name="XMLNAME" value="ID"/>
<Parameter name="XMLPROJECTION" value="ATTRIBUTE"/>
</Property>

<Property name="Code">
<Type>%Library.Integer</Type>
<Required>1</Required>
<Parameter name="MAXVAL" value="999"/>
<Parameter name="MINVAL" value="1"/>
</Property>

<Property name="Kuerzel">
<Type>%String</Type>
<Parameter name="MAXLEN" value="2"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="Text1">
<Type>%String</Type>
<Collection>array</Collection>
<Parameter name="MAXLEN" value="255"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="Text2">
<Type>%String</Type>
<Collection>array</Collection>
<Parameter name="MAXLEN" value="255"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="AktMandant">
<Type>%String</Type>
</Property>

<ForeignKey name="FKAktMandant">
<Properties>AktMandant</Properties>
<ReferencedClass>DBCore.Mandant</ReferencedClass>
<ReferencedKey>MandIdIndex</ReferencedKey>
</ForeignKey>

<Index name="AktMandantIdx">
<Properties>AktMandant</Properties>
</Index>

<Index name="CodeIndex">
<Properties>AktMandant,Code</Properties>
</Index>

<Method name="GetText1">
<FormalSpec>MandOid:%String,Lang:%String</FormalSpec>
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[	Quit ##Class(DBUtils.StringUtils).GetText(..Text1, Lang, MandOid)
]]></Implementation>
</Method>

<Method name="GetText1Class">
<ClassMethod>1</ClassMethod>
<FormalSpec>myID:%String,MandOid:%String="",Lang:%String=""</FormalSpec>
<ReturnType>%String</ReturnType>
<SqlProc>1</SqlProc>
<Implementation><![CDATA[
	set text = ""
	if (myID'="") {
		Set rs=##Class(DBLohn.SD.IndSelektion).%OpenId(myID)
		set text = rs.GetText1(MandOid, Lang)
	}
	Quit text
]]></Implementation>
</Method>

<Method name="SetText1">
<FormalSpec>MandOid:%String,Lang:%String,Value:%String</FormalSpec>
<Implementation><![CDATA[	Do ##class(DBUtils.StringUtils).SetText(..Text1, Value, Lang, MandOid)
]]></Implementation>
</Method>

<Method name="GetText2">
<FormalSpec>MandOid:%String="",Lang:%String=""</FormalSpec>
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[	Quit ##Class(DBUtils.StringUtils).GetText(..Text2, Lang, MandOid)
]]></Implementation>
</Method>

<Method name="GetText2Class">
<ClassMethod>1</ClassMethod>
<FormalSpec>myID:%String,MandOid:%String,Lang:%String</FormalSpec>
<ReturnType>%String</ReturnType>
<SqlProc>1</SqlProc>
<Implementation><![CDATA[
	set text = ""
	if (myID'="") {
		Set rs=##Class(DBLohn.SD.IndSelektion).%OpenId(myID)
		set text = rs.GetText2(MandOid, Lang)
	}
	Quit text
]]></Implementation>
</Method>

<Method name="SetText2">
<FormalSpec>MandOid:%String="",Lang:%String="",Value:%String=""</FormalSpec>
<Implementation><![CDATA[	Do ##class(DBUtils.StringUtils).SetText(..Text2, Value, Lang, MandOid)
]]></Implementation>
</Method>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
<DataLocation>^DBLohn.SD.IndSelektionD</DataLocation>
<DefaultData>IndSelektionDefaultData</DefaultData>
<IdLocation>^DBLohn.SD.IndSelektionD</IdLocation>
<IndexLocation>^DBLohn.SD.IndSelektionI</IndexLocation>
<StreamLocation>^DBLohn.SD.IndSelektionS</StreamLocation>
<Data name="IndSelektionDefaultData">
<Value name="1">
<Value>%%CLASSNAME</Value>
</Value>
<Value name="2">
<Value>Code</Value>
</Value>
<Value name="3">
<Value>Kuerzel</Value>
</Value>
<Value name="4">
<Value>AktMandant</Value>
</Value>
</Data>
<Data name="Text1">
<Attribute>Text1</Attribute>
<Structure>subnode</Structure>
<Subscript>"Text1"</Subscript>
</Data>
<Data name="Text2">
<Attribute>Text2</Attribute>
<Structure>subnode</Structure>
<Subscript>"Text2"</Subscript>
</Data>
<Property name="AktMandant"/>
<Property name="Code"/>
<Property name="Kuerzel"/>
</Storage>
</Class>


<Class name="DBLohn.SD.IndSelektion1">
<Super>DBLohn.SD.IndSelektion,%XML.Adaptor</Super>
<TimeChanged>62430,54495.9159</TimeChanged>
<TimeCreated>61982,39876.408902</TimeCreated>
<Inheritance>right</Inheritance>

<Property name="Mitarbeiter">
<Type>DBLohn.MitarbeiterSel</Type>
<Cardinality>many</Cardinality>
<Inverse>Selektion1</Inverse>
<Relationship>1</Relationship>
</Property>

<Method name="PosNrExists">
<ClassMethod>1</ClassMethod>
<FormalSpec>MandantOid:%String,Code:%Integer</FormalSpec>
<ReturnType>%Boolean</ReturnType>
<Implementation><![CDATA[
	
	set id = ""
	&sql(SELECT TOP 1 ID INTO :id FROM DBLohn_SD.IndSelektion1
	     WHERE Code = :Code AND AktMandant = :MandantOid)
	if (id = "") {
		Quit 0
	} else {
		Quit 1
	}
]]></Implementation>
</Method>

<Method name="GetIdByPosNrOnMandant">
<ClassMethod>1</ClassMethod>
<FormalSpec>MandantOid:%String,PosNr:%Integer</FormalSpec>
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[

	set id = ""
	&sql(SELECT ID INTO :id FROM DBLohn_SD.IndSelektion1
		 WHERE AktMandant = :MandantOid AND Code = :PosNr)
	Quit id
]]></Implementation>
</Method>

<Method name="RemoveSelByMandant">
<ClassMethod>1</ClassMethod>
<FormalSpec>MandantOid:%String</FormalSpec>
<Implementation><![CDATA[
	
	&sql(DELETE FROM DBLohn_SD.IndSelektion1 WHERE AktMandant = :MandantOid)
]]></Implementation>
</Method>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
</Storage>
</Class>


<Class name="DBLohn.SD.IndSelektion2">
<Super>DBLohn.SD.IndSelektion,%XML.Adaptor</Super>
<TimeChanged>62430,54511.455031</TimeChanged>
<TimeCreated>61982,40267.336643</TimeCreated>
<Inheritance>right</Inheritance>

<Property name="Mitarbeiter">
<Type>DBLohn.MitarbeiterSel</Type>
<Cardinality>many</Cardinality>
<Inverse>Selektion2</Inverse>
<Relationship>1</Relationship>
</Property>

<Method name="PosNrExists">
<ClassMethod>1</ClassMethod>
<FormalSpec>MandantOid:%String,Code:%Integer</FormalSpec>
<ReturnType>%Boolean</ReturnType>
<Implementation><![CDATA[
	
	set id = ""
	&sql(SELECT TOP 1 ID INTO :id FROM DBLohn_SD.IndSelektion2
	     WHERE Code = :Code AND AktMandant = :MandantOid)
	if (id = "") {
		Quit 0
	} else {
		Quit 1
	}
]]></Implementation>
</Method>

<Method name="GetIdByPosNrOnMandant">
<ClassMethod>1</ClassMethod>
<FormalSpec>MandantOid:%String,PosNr:%Integer</FormalSpec>
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[

	set id = ""
	&sql(SELECT ID INTO :id FROM DBLohn_SD.IndSelektion2
		 WHERE AktMandant = :MandantOid AND Code = :PosNr)
	Quit id
]]></Implementation>
</Method>

<Method name="RemoveSelByMandant">
<ClassMethod>1</ClassMethod>
<FormalSpec>MandantOid:%String</FormalSpec>
<Implementation><![CDATA[
	
	&sql(DELETE FROM DBLohn_SD.IndSelektion2 WHERE AktMandant = :MandantOid)
]]></Implementation>
</Method>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
</Storage>
</Class>


<Class name="DBLohn.SD.IndSelektion3">
<Super>DBLohn.SD.IndSelektion,%XML.Adaptor</Super>
<TimeChanged>62430,54542.913417</TimeChanged>
<TimeCreated>61982,40356.419051</TimeCreated>
<Inheritance>right</Inheritance>

<Property name="Mitarbeiter">
<Type>DBLohn.MitarbeiterSel</Type>
<Cardinality>many</Cardinality>
<Inverse>Selektion3</Inverse>
<Relationship>1</Relationship>
</Property>

<Method name="PosNrExists">
<ClassMethod>1</ClassMethod>
<FormalSpec>MandantOid:%String,Code:%Integer</FormalSpec>
<ReturnType>%Boolean</ReturnType>
<Implementation><![CDATA[
	
	set id = ""
	&sql(SELECT TOP 1 ID INTO :id FROM DBLohn_SD.IndSelektion3
	     WHERE Code = :Code AND AktMandant = :MandantOid)
	if (id = "") {
		Quit 0
	} else {
		Quit 1
	}
]]></Implementation>
</Method>

<Method name="GetIdByPosNrOnMandant">
<ClassMethod>1</ClassMethod>
<FormalSpec>MandantOid:%String,PosNr:%Integer</FormalSpec>
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[

	set id = ""
	&sql(SELECT ID INTO :id FROM DBLohn_SD.IndSelektion3
		 WHERE AktMandant = :MandantOid AND Code = :PosNr)
	Quit id
]]></Implementation>
</Method>

<Method name="RemoveSelByMandant">
<ClassMethod>1</ClassMethod>
<FormalSpec>MandantOid:%String</FormalSpec>
<Implementation><![CDATA[
	
	&sql(DELETE FROM DBLohn_SD.IndSelektion3 WHERE AktMandant = :MandantOid)
]]></Implementation>
</Method>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
</Storage>
</Class>


<Class name="DBLohn.SD.IndSelektion4">
<Super>DBLohn.SD.IndSelektion,%XML.Adaptor</Super>
<TimeChanged>62430,54563.714349</TimeChanged>
<TimeCreated>61982,40450.88902</TimeCreated>
<Inheritance>right</Inheritance>

<Property name="Mitarbeiter">
<Type>DBLohn.MitarbeiterSel</Type>
<Cardinality>many</Cardinality>
<Inverse>Selektion4</Inverse>
<Relationship>1</Relationship>
</Property>

<Method name="PosNrExists">
<ClassMethod>1</ClassMethod>
<FormalSpec>MandantOid:%String,Code:%Integer</FormalSpec>
<ReturnType>%Boolean</ReturnType>
<Implementation><![CDATA[
	
	set id = ""
	&sql(SELECT TOP 1 ID INTO :id FROM DBLohn_SD.IndSelektion4
	     WHERE Code = :Code AND AktMandant = :MandantOid)
	if (id = "") {
		Quit 0
	} else {
		Quit 1
	}
]]></Implementation>
</Method>

<Method name="GetIdByPosNrOnMandant">
<ClassMethod>1</ClassMethod>
<FormalSpec>MandantOid:%String,PosNr:%Integer</FormalSpec>
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[

	set id = ""
	&sql(SELECT ID INTO :id FROM DBLohn_SD.IndSelektion4
		 WHERE AktMandant = :MandantOid AND Code = :PosNr)
	Quit id
]]></Implementation>
</Method>

<Method name="RemoveSelByMandant">
<ClassMethod>1</ClassMethod>
<FormalSpec>MandantOid:%String</FormalSpec>
<Implementation><![CDATA[
	
	&sql(DELETE FROM DBLohn_SD.IndSelektion4 WHERE AktMandant = :MandantOid)
]]></Implementation>
</Method>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
</Storage>
</Class>


<Class name="DBLohn.SD.IndSelektion5">
<Super>DBLohn.SD.IndSelektion,%XML.Adaptor</Super>
<TimeChanged>62430,54577.601556</TimeChanged>
<TimeCreated>61982,40635.536509</TimeCreated>
<Inheritance>right</Inheritance>

<Property name="Mitarbeiter">
<Type>DBLohn.MitarbeiterSel</Type>
<Cardinality>many</Cardinality>
<Inverse>Selektion5</Inverse>
<Relationship>1</Relationship>
</Property>

<Method name="PosNrExists">
<ClassMethod>1</ClassMethod>
<FormalSpec>MandantOid:%String,Code:%Integer</FormalSpec>
<ReturnType>%Boolean</ReturnType>
<Implementation><![CDATA[
	
	set id = ""
	&sql(SELECT TOP 1 ID INTO :id FROM DBLohn_SD.IndSelektion5
	     WHERE Code = :Code AND AktMandant = :MandantOid)
	if (id = "") {
		Quit 0
	} else {
		Quit 1
	}
]]></Implementation>
</Method>

<Method name="GetIdByPosNrOnMandant">
<ClassMethod>1</ClassMethod>
<FormalSpec>MandantOid:%String,PosNr:%Integer</FormalSpec>
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[

	set id = ""
	&sql(SELECT ID INTO :id FROM DBLohn_SD.IndSelektion5
		 WHERE AktMandant = :MandantOid AND Code = :PosNr)
	Quit id
]]></Implementation>
</Method>

<Method name="RemoveSelByMandant">
<ClassMethod>1</ClassMethod>
<FormalSpec>MandantOid:%String</FormalSpec>
<Implementation><![CDATA[
	
	&sql(DELETE FROM DBLohn_SD.IndSelektion5 WHERE AktMandant = :MandantOid)
]]></Implementation>
</Method>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
</Storage>
</Class>


<Class name="DBLohn.SD.Konfession">
<Super>%Persistent,%XML.Adaptor,DBCore.MandantRel</Super>
<TimeChanged>62416,57282.70596</TimeChanged>
<TimeCreated>62374,56984.553206</TimeCreated>
<Inheritance>right</Inheritance>

<Parameter name="XMLIGNOREINVALIDATTRIBUTE">
<Description><![CDATA[
Controls how to handle attributes that are unexpected.
-> If this parameter is 1 (the default), such attributes are ignored.
-> If it is 0, they are treated as errors, and import fails.]]></Description>
<Default>1</Default>
</Parameter>

<Parameter name="XMLIGNOREINVALIDTAG">
<Description><![CDATA[
Controls how to handle tags that are unexpected. 
-> If this parameter is 1, such tags are ignored. 
-> If it is 0 (the default), they are treated as errors, and import fails.]]></Description>
<Default>1</Default>
</Parameter>

<Parameter name="XMLIGNORENULL">
<Default>1</Default>
</Parameter>

<Property name="IdForExport">
<Type>%XML.Id</Type>
<Private>1</Private>
<Transient>1</Transient>
<Parameter name="XMLNAME" value="ID"/>
<Parameter name="XMLPROJECTION" value="ATTRIBUTE"/>
</Property>

<Property name="Code">
<Description>
Code</Description>
<Type>%Integer</Type>
</Property>

<Property name="Text">
<Description>
Text</Description>
<Type>%String</Type>
<Collection>array</Collection>
<Parameter name="MAXLEN" value="255"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="Mandant">
<Type>%String</Type>
</Property>

<ForeignKey name="FKMandant">
<Properties>Mandant</Properties>
<ReferencedClass>DBCore.Mandant</ReferencedClass>
<ReferencedKey>MandIdIndex</ReferencedKey>
</ForeignKey>

<Index name="MandantIdx">
<Properties>Mandant</Properties>
</Index>

<Property name="Mitarbeiter">
<Type>DBLohn.Mitarbeiter</Type>
<Cardinality>many</Cardinality>
<Inverse>Konfession</Inverse>
<Relationship>1</Relationship>
<Parameter name="XMLPROJECTION" value="NONE"/>
</Property>

<Method name="GetText">
<FormalSpec>MandOid:%String,Lang:%String</FormalSpec>
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[	Quit ##Class(DBUtils.StringUtils).GetText(..Text, Lang, MandOid)
]]></Implementation>
</Method>

<Method name="GetTextClass">
<ClassMethod>1</ClassMethod>
<FormalSpec>myID:%String,MandOid:%String,Lang:%String</FormalSpec>
<ReturnType>%String</ReturnType>
<SqlProc>1</SqlProc>
<Implementation><![CDATA[
	set text = ""
	if ((myID '= "") && (myID '= $c(0))) {
		Set rs=##Class(DBLohn.SD.Konfession).%OpenId(myID)
		set text = rs.GetText(MandOid, Lang)
	}
	Quit text
]]></Implementation>
</Method>

<Method name="SetText">
<FormalSpec>MandOid:%String,Lang:%String,Value:%String</FormalSpec>
<Implementation><![CDATA[	Do ##class(DBUtils.StringUtils).SetText(..Text, Value, Lang, MandOid)
]]></Implementation>
</Method>

<Method name="GetIdByCodeOnMandant">
<ClassMethod>1</ClassMethod>
<FormalSpec>MandantOid:%String,Code:%Integer</FormalSpec>
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[

	set id = ""
	&sql(SELECT ID INTO :id 
			FROM DBLohn_SD.Konfession
		 	WHERE Mandant = :MandantOid AND Code = :Code)
		 	
	if (SQLCODE'=0) {
		set id = ""
	}
	Quit id
]]></Implementation>
</Method>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
<DataLocation>^DBLohn.SD.KonfessionD</DataLocation>
<DefaultData>KonfessionDefaultData</DefaultData>
<IdLocation>^DBLohn.SD.KonfessionD</IdLocation>
<IndexLocation>^DBLohn.SD.KonfessionI</IndexLocation>
<StreamLocation>^DBLohn.SD.KonfessionS</StreamLocation>
<Data name="KonfessionDefaultData">
<Structure>listnode</Structure>
<Subscript/>
<Value name="1">
<Value>%%CLASSNAME</Value>
</Value>
<Value name="2">
<Value>Code</Value>
</Value>
<Value name="3">
<Value>Mandant</Value>
</Value>
</Data>
<Data name="Text">
<Attribute>Text</Attribute>
<Structure>subnode</Structure>
<Subscript>"Text"</Subscript>
</Data>
</Storage>
</Class>


<Class name="DBLohn.SD.Krankenkasse">
<Super>%Persistent,%XML.Adaptor,DBCore.MandantRel</Super>
<TimeChanged>62437,55776</TimeChanged>
<TimeCreated>62045,53467.928789</TimeCreated>
<Inheritance>right</Inheritance>

<Parameter name="XMLIGNOREINVALIDATTRIBUTE">
<Description><![CDATA[
Controls how to handle attributes that are unexpected.
-> If this parameter is 1 (the default), such attributes are ignored.
-> If it is 0, they are treated as errors, and import fails.]]></Description>
<Default>1</Default>
</Parameter>

<Parameter name="XMLIGNOREINVALIDTAG">
<Description><![CDATA[
Controls how to handle tags that are unexpected. 
-> If this parameter is 1, such tags are ignored. 
-> If it is 0 (the default), they are treated as errors, and import fails.]]></Description>
<Default>1</Default>
</Parameter>

<Parameter name="XMLIGNORENULL">
<Default>1</Default>
</Parameter>

<Property name="IdForExport">
<Type>%XML.Id</Type>
<Private>1</Private>
<Transient>1</Transient>
<Parameter name="XMLNAME" value="ID"/>
<Parameter name="XMLPROJECTION" value="ATTRIBUTE"/>
</Property>

<Property name="Adresse">
<Type>DBLohn.SD.KrankenkasseAdr</Type>
<Cardinality>parent</Cardinality>
<Inverse>KrankenkasseAdrEintrag</Inverse>
<Relationship>1</Relationship>
<Parameter name="XMLELEMENTREF" value="1"/>
<Parameter name="XMLNAME" value="Adresse"/>
<Parameter name="XMLPROJECTION" value="ATTRIBUTE"/>
<Parameter name="XMLREFERENCE" value="ID"/>
</Property>

<Property name="AbDatum">
<Description>
AbDatum</Description>
<Type>%Date</Type>
</Property>

<Property name="MNehmerA">
<Description>
MNehmerA</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FNehmerA">
<Description>
FNehmerA</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MGeberA">
<Description>
MGeberA</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FGeberA">
<Description>
FGeberA</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MNehmerB">
<Description>
MNehmerB</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FNehmerB">
<Description>
FNehmerB</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MGeberB">
<Description>
MGeberB</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FGeberB">
<Description>
FGeberB</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MNehmerC">
<Description>
MNehmerC</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FNehmerC">
<Description>
FNehmerC</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MGeberC">
<Description>
MGeberC</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FGeberC">
<Description>
FGeberC</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MNehmerD">
<Description>
MNehmerD</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FNehmerD">
<Description>
FNehmerD</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MGeberD">
<Description>
MGeberD</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FGeberD">
<Description>
FGeberD</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MNehmerE">
<Description>
MNehmerE</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FNehmerE">
<Description>
FNehmerE</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MGeberE">
<Description>
MGeberE</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FGeberE">
<Description>
FGeberE</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MNehmerF">
<Description>
MNehmerF</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FNehmerF">
<Description>
FNehmerF</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MGeberF">
<Description>
MGeberF</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FGeberF">
<Description>
FGeberF</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MNehmerG">
<Description>
MNehmerG</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FNehmerG">
<Description>
FNehmerG</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MGeberG">
<Description>
MGeberG</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FGeberG">
<Description>
FGeberG</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MNehmerH">
<Description>
MNehmerH</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FNehmerH">
<Description>
FNehmerH</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MGeberH">
<Description>
MGeberH</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FGeberH">
<Description>
FGeberH</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MNehmerI">
<Description>
MNehmerI</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FNehmerI">
<Description>
FNehmerI</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MGeberI">
<Description>
MGeberI</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FGeberI">
<Description>
FGeberI</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MNehmerK">
<Description>
MNehmerK</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FNehmerK">
<Description>
FNehmerK</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MGeberK">
<Description>
MGeberK</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FGeberK">
<Description>
FGeberK</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MAlterAbA">
<Description>
MAlterAbA</Description>
<Type>%Integer</Type>
</Property>

<Property name="FAlterAbA">
<Description>
FAlterAbA</Description>
<Type>%Integer</Type>
</Property>

<Property name="MAlterAbB">
<Description>
MAlterAbB</Description>
<Type>%Integer</Type>
</Property>

<Property name="FAlterAbB">
<Description>
FAlterAbB</Description>
<Type>%Integer</Type>
</Property>

<Property name="MAlterAbC">
<Description>
MAlterAbC</Description>
<Type>%Integer</Type>
</Property>

<Property name="FAlterAbC">
<Description>
FAlterAbC</Description>
<Type>%Integer</Type>
</Property>

<Property name="MAlterAbD">
<Description>
MAlterAbD</Description>
<Type>%Integer</Type>
</Property>

<Property name="FAlterAbD">
<Description>
FAlterAbD</Description>
<Type>%Integer</Type>
</Property>

<Property name="MAlterAbE">
<Description>
MAlterAbE</Description>
<Type>%Integer</Type>
</Property>

<Property name="FAlterAbE">
<Description>
FAlterAbE</Description>
<Type>%Integer</Type>
</Property>

<Property name="MAlterAbF">
<Description>
MAlterAbF</Description>
<Type>%Integer</Type>
</Property>

<Property name="FAlterAbF">
<Description>
FAlterAbF</Description>
<Type>%Integer</Type>
</Property>

<Property name="MAlterAbG">
<Description>
MAlterAbG</Description>
<Type>%Integer</Type>
</Property>

<Property name="FAlterAbG">
<Description>
FAlterAbG</Description>
<Type>%Integer</Type>
</Property>

<Property name="MAlterAbH">
<Description>
MAlterAbH</Description>
<Type>%Integer</Type>
</Property>

<Property name="FAlterAbH">
<Description>
FAlterAbH</Description>
<Type>%Integer</Type>
</Property>

<Property name="MAlterAbI">
<Description>
MAlterAbI</Description>
<Type>%Integer</Type>
</Property>

<Property name="FAlterAbI">
<Description>
FAlterAbI</Description>
<Type>%Integer</Type>
</Property>

<Property name="MAlterAbK">
<Description>
MAlterAbK</Description>
<Type>%Integer</Type>
</Property>

<Property name="FAlterAbK">
<Description>
FAlterAbK</Description>
<Type>%Integer</Type>
</Property>

<Method name="GetOidByAbDatumOnAdresse">
<ClassMethod>1</ClassMethod>
<FormalSpec>KrankenkasseAdrOid:%String,AbDatum:%Date</FormalSpec>
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[
	set id = ""
	&sql(SELECT TOP 1 ID INTO :id 
			FROM DBLohn_SD.Krankenkasse
		 	WHERE Adresse = :KrankenkasseAdrOid AND 
		 			AbDatum <= TODATE(:AbDatum)
		 	ORDER BY AbDatum DESC)
		 	
	if (SQLCODE'=0) {
		set id = ""
	}
	Quit id
]]></Implementation>
</Method>

<Method name="GetNextOidByAbDatumOnAdresse">
<ClassMethod>1</ClassMethod>
<FormalSpec>KrankenkasseAdrOid:%String,AbDatum:%Date</FormalSpec>
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[
	set id = ""
	&sql(SELECT TOP 1 ID INTO :id 
			FROM DBLohn_SD.Krankenkasse
		 	WHERE Adresse = :KrankenkasseAdrOid AND 
		 			AbDatum > TODATE(:AbDatum)
		 	ORDER BY AbDatum)
		 	
	if (SQLCODE'=0) {
		set id = ""
	}
	Quit id
]]></Implementation>
</Method>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
<DataLocation>^DBLohn.SD.KrankenkasseD</DataLocation>
<DefaultData>KrankenkasseDefaultData</DefaultData>
<IdLocation>^DBLohn.SD.KrankenkasseD</IdLocation>
<IndexLocation>^DBLohn.SD.KrankenkasseI</IndexLocation>
<StreamLocation>^DBLohn.SD.KrankenkasseS</StreamLocation>
<Data name="KrankenkasseDefaultData">
<Structure>listnode</Structure>
<Subscript/>
<Value name="1">
<Value>%%CLASSNAME</Value>
</Value>
<Value name="2">
<Value>Jahr</Value>
</Value>
<Value name="3">
<Value>AdressNr</Value>
</Value>
<Value name="4">
<Value>Name</Value>
</Value>
<Value name="5">
<Value>Adresszeile1</Value>
</Value>
<Value name="6">
<Value>Adresszeile2</Value>
</Value>
<Value name="7">
<Value>Adresszeile3</Value>
</Value>
<Value name="8">
<Value>BetriebsNr</Value>
</Value>
<Value name="9">
<Value>SubNr</Value>
</Value>
<Value name="10">
<Value>NrAusgleichskasse</Value>
</Value>
<Value name="11">
<Value>Mandant</Value>
</Value>
<Value name="12">
<Value>Ort</Value>
</Value>
<Value name="13">
<Value>Plz</Value>
</Value>
<Value name="14">
<Value>PlzInklZusatz</Value>
</Value>
<Value name="15">
<Value>MNehmerA</Value>
</Value>
<Value name="16">
<Value>FNehmerA</Value>
</Value>
<Value name="17">
<Value>MGeberA</Value>
</Value>
<Value name="18">
<Value>FGeberA</Value>
</Value>
<Value name="19">
<Value>MNehmerB</Value>
</Value>
<Value name="20">
<Value>FNehmerB</Value>
</Value>
<Value name="21">
<Value>MGeberB</Value>
</Value>
<Value name="22">
<Value>FGeberB</Value>
</Value>
<Value name="23">
<Value>MNehmerC</Value>
</Value>
<Value name="24">
<Value>FNehmerC</Value>
</Value>
<Value name="25">
<Value>MGeberC</Value>
</Value>
<Value name="26">
<Value>FGeberC</Value>
</Value>
<Value name="27">
<Value>MNehmerD</Value>
</Value>
<Value name="28">
<Value>FNehmerD</Value>
</Value>
<Value name="29">
<Value>MGeberD</Value>
</Value>
<Value name="30">
<Value>FGeberD</Value>
</Value>
<Value name="31">
<Value>MNehmerE</Value>
</Value>
<Value name="32">
<Value>FNehmerE</Value>
</Value>
<Value name="33">
<Value>MGeberE</Value>
</Value>
<Value name="34">
<Value>FGeberE</Value>
</Value>
<Value name="35">
<Value>MNehmerF</Value>
</Value>
<Value name="36">
<Value>FNehmerF</Value>
</Value>
<Value name="37">
<Value>MGeberF</Value>
</Value>
<Value name="38">
<Value>FGeberF</Value>
</Value>
<Value name="39">
<Value>MNehmerG</Value>
</Value>
<Value name="40">
<Value>FNehmerG</Value>
</Value>
<Value name="41">
<Value>MGeberG</Value>
</Value>
<Value name="42">
<Value>FGeberG</Value>
</Value>
<Value name="43">
<Value>MNehmerH</Value>
</Value>
<Value name="44">
<Value>FNehmerH</Value>
</Value>
<Value name="45">
<Value>MGeberH</Value>
</Value>
<Value name="46">
<Value>FGeberH</Value>
</Value>
<Value name="47">
<Value>MNehmerI</Value>
</Value>
<Value name="48">
<Value>FNehmerI</Value>
</Value>
<Value name="49">
<Value>MGeberI</Value>
</Value>
<Value name="50">
<Value>FGeberI</Value>
</Value>
<Value name="51">
<Value>MNehmerK</Value>
</Value>
<Value name="52">
<Value>FNehmerK</Value>
</Value>
<Value name="53">
<Value>MGeberK</Value>
</Value>
<Value name="54">
<Value>FGeberK</Value>
</Value>
<Value name="55">
<Value>AdressNrBroker</Value>
</Value>
<Value name="56">
<Value>Bemerkung1</Value>
</Value>
<Value name="57">
<Value>Bemerkung2</Value>
</Value>
<Value name="58">
<Value>Suva</Value>
</Value>
<Value name="59">
<Value>MAlterAbA</Value>
</Value>
<Value name="60">
<Value>FAlterAbA</Value>
</Value>
<Value name="61">
<Value>MAlterAbB</Value>
</Value>
<Value name="62">
<Value>FAlterAbB</Value>
</Value>
<Value name="63">
<Value>MAlterAbC</Value>
</Value>
<Value name="64">
<Value>FAlterAbC</Value>
</Value>
<Value name="65">
<Value>MAlterAbD</Value>
</Value>
<Value name="66">
<Value>FAlterAbD</Value>
</Value>
<Value name="67">
<Value>MAlterAbE</Value>
</Value>
<Value name="68">
<Value>FAlterAbE</Value>
</Value>
<Value name="69">
<Value>MAlterAbF</Value>
</Value>
<Value name="70">
<Value>FAlterAbF</Value>
</Value>
<Value name="71">
<Value>MAlterAbG</Value>
</Value>
<Value name="72">
<Value>FAlterAbG</Value>
</Value>
<Value name="73">
<Value>MAlterAbH</Value>
</Value>
<Value name="74">
<Value>FAlterAbH</Value>
</Value>
<Value name="75">
<Value>MAlterAbI</Value>
</Value>
<Value name="76">
<Value>FAlterAbI</Value>
</Value>
<Value name="77">
<Value>MAlterAbK</Value>
</Value>
<Value name="78">
<Value>FAlterAbK</Value>
</Value>
<Value name="79">
<Value>AbDatum</Value>
</Value>
</Data>
<Property name="%%CLASSNAME">
</Property>
<Property name="AbDatum">
</Property>
<Property name="Adresse">
</Property>
<Property name="FAlterAbA">
</Property>
<Property name="FAlterAbB">
</Property>
<Property name="FAlterAbC">
</Property>
<Property name="FAlterAbD">
</Property>
<Property name="FAlterAbE">
</Property>
<Property name="FAlterAbF">
</Property>
<Property name="FAlterAbG">
</Property>
<Property name="FAlterAbH">
</Property>
<Property name="FAlterAbI">
</Property>
<Property name="FAlterAbK">
</Property>
<Property name="FGeberA">
</Property>
<Property name="FGeberB">
</Property>
<Property name="FGeberC">
</Property>
<Property name="FGeberD">
</Property>
<Property name="FGeberE">
</Property>
<Property name="FGeberF">
</Property>
<Property name="FGeberG">
</Property>
<Property name="FGeberH">
</Property>
<Property name="FGeberI">
</Property>
<Property name="FGeberK">
</Property>
<Property name="FNehmerA">
</Property>
<Property name="FNehmerB">
</Property>
<Property name="FNehmerC">
</Property>
<Property name="FNehmerD">
</Property>
<Property name="FNehmerE">
</Property>
<Property name="FNehmerF">
</Property>
<Property name="FNehmerG">
</Property>
<Property name="FNehmerH">
</Property>
<Property name="FNehmerI">
</Property>
<Property name="FNehmerK">
</Property>
<Property name="MAlterAbA">
</Property>
<Property name="MAlterAbB">
</Property>
<Property name="MAlterAbC">
</Property>
<Property name="MAlterAbD">
</Property>
<Property name="MAlterAbE">
</Property>
<Property name="MAlterAbF">
</Property>
<Property name="MAlterAbG">
</Property>
<Property name="MAlterAbH">
</Property>
<Property name="MAlterAbI">
</Property>
<Property name="MAlterAbK">
</Property>
<Property name="MGeberA">
</Property>
<Property name="MGeberB">
</Property>
<Property name="MGeberC">
</Property>
<Property name="MGeberD">
</Property>
<Property name="MGeberE">
</Property>
<Property name="MGeberF">
</Property>
<Property name="MGeberG">
</Property>
<Property name="MGeberH">
</Property>
<Property name="MGeberI">
</Property>
<Property name="MGeberK">
</Property>
<Property name="MNehmerA">
</Property>
<Property name="MNehmerB">
</Property>
<Property name="MNehmerC">
</Property>
<Property name="MNehmerD">
</Property>
<Property name="MNehmerE">
</Property>
<Property name="MNehmerF">
</Property>
<Property name="MNehmerG">
</Property>
<Property name="MNehmerH">
</Property>
<Property name="MNehmerI">
</Property>
<Property name="MNehmerK">
</Property>
<Property name="childsub">
</Property>
</Storage>
</Class>


<Class name="DBLohn.SD.KrankenkasseAdr">
<Super>%Persistent,%XML.Adaptor,DBCore.MandantRel</Super>
<TimeChanged>62437,55776</TimeChanged>
<TimeCreated>62368,30784.024148</TimeCreated>
<Inheritance>right</Inheritance>

<Parameter name="XMLIGNOREINVALIDATTRIBUTE">
<Description><![CDATA[
Controls how to handle attributes that are unexpected.
-> If this parameter is 1 (the default), such attributes are ignored.
-> If it is 0, they are treated as errors, and import fails.]]></Description>
<Default>1</Default>
</Parameter>

<Parameter name="XMLIGNOREINVALIDTAG">
<Description><![CDATA[
Controls how to handle tags that are unexpected. 
-> If this parameter is 1, such tags are ignored. 
-> If it is 0 (the default), they are treated as errors, and import fails.]]></Description>
<Default>1</Default>
</Parameter>

<Parameter name="XMLIGNORENULL">
<Default>1</Default>
</Parameter>

<Property name="IdForExport">
<Type>%XML.Id</Type>
<Private>1</Private>
<Transient>1</Transient>
<Parameter name="XMLNAME" value="ID"/>
<Parameter name="XMLPROJECTION" value="ATTRIBUTE"/>
</Property>

<Property name="Mandant">
<Type>%String</Type>
</Property>

<ForeignKey name="FKMandant">
<Properties>Mandant</Properties>
<ReferencedClass>DBCore.Mandant</ReferencedClass>
<ReferencedKey>MandIdIndex</ReferencedKey>
</ForeignKey>

<Index name="MandantIdx">
<Properties>Mandant</Properties>
</Index>

<Property name="AdressNr">
<Description>
AdressNr</Description>
<Type>%Integer</Type>
</Property>

<Index name="MandantAdresseIdx">
<Properties>Mandant,AdressNr</Properties>
<Unique>1</Unique>
</Index>

<Property name="Name">
<Description>
Name</Description>
<Type>%String</Type>
<Parameter name="MAXLEN" value="50"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="Adresszeile1">
<Description>
Adresszeile1</Description>
<Type>%String</Type>
<Parameter name="MAXLEN" value="50"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="Adresszeile2">
<Description>
Adresszeile2</Description>
<Type>%String</Type>
<Parameter name="MAXLEN" value="50"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="Adresszeile3">
<Description>
Adresszeile3</Description>
<Type>%String</Type>
<Parameter name="MAXLEN" value="50"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="BetriebsNr">
<Description>
BertriebsNr</Description>
<Type>%String</Type>
<Parameter name="MAXLEN" value="50"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="SubNr">
<Description>
SubNr</Description>
<Type>%String</Type>
<Parameter name="MAXLEN" value="50"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="NrAusgleichskasse">
<Description>
NrAusgleichskasse</Description>
<Type>%String</Type>
<Parameter name="MAXLEN" value="50"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="Ort">
<Type>%Library.String</Type>
<Parameter name="MAXLEN" value="255"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="Plz">
<Type>%Library.String</Type>
<Parameter name="MAXLEN" value="15"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="PlzInklZusatz">
<Type>%Library.String</Type>
<Parameter name="MAXLEN" value="15"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="AdressNrBroker">
<Description>
AdressNrBroker</Description>
<Type>%String</Type>
</Property>

<Property name="Bemerkung1">
<Description>
Bemerkung1</Description>
<Type>%String</Type>
</Property>

<Property name="Bemerkung2">
<Description>
Bemerkung2</Description>
<Type>%String</Type>
</Property>

<Property name="KrankenkasseAdrEintrag">
<Type>DBLohn.SD.Krankenkasse</Type>
<Cardinality>children</Cardinality>
<Inverse>Adresse</Inverse>
<Relationship>1</Relationship>
<Parameter name="XMLPROJECTION" value="NONE"/>
</Property>

<Property name="Mitarbeiter">
<Type>DBLohn.MitarbeiterVs</Type>
<Cardinality>many</Cardinality>
<Inverse>KrankenkasseAdresse</Inverse>
<Relationship>1</Relationship>
<Parameter name="XMLPROJECTION" value="NONE"/>
</Property>

<Property name="LohnabrechnungKopf">
<Type>DBLohn.LohnabrechnungKopf</Type>
<Cardinality>many</Cardinality>
<Inverse>KrankenkasseAdresse</Inverse>
<Relationship>1</Relationship>
<Parameter name="XMLPROJECTION" value="NONE"/>
</Property>

<Method name="GetNextNumber">
<ClassMethod>1</ClassMethod>
<FormalSpec>MandantOid:%String</FormalSpec>
<ReturnType>%Integer</ReturnType>
<Implementation><![CDATA[
	set nr = 0
	&sql(SELECT TOP 1 AdressNr INTO :nr 
			FROM DBLohn_SD.KrankenkasseAdr
		 	WHERE Mandant = :MandantOid
		 	ORDER BY AdressNr DESC)
		 	
	if (SQLCODE'=0) {
		set nr = 0
	}
	Quit (nr+1)
]]></Implementation>
</Method>

<Method name="GetFirstAdressOid">
<ClassMethod>1</ClassMethod>
<FormalSpec>MandantOid:%String</FormalSpec>
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[
	set oid = ""
	&sql(SELECT TOP 1 ID INTO :oid 
			FROM DBLohn_SD.KrankenkasseAdr
		 	WHERE Mandant = :MandantOid
		 	ORDER BY AdressNr)
		 	
	if (SQLCODE'=0) {
		set oid = ""
	}
	Quit oid
]]></Implementation>
</Method>

<Method name="GetOidByNummer">
<ClassMethod>1</ClassMethod>
<FormalSpec>MandantOid:%String,Adressnr:%Integer</FormalSpec>
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[
	set oid = ""
	&sql(SELECT ID INTO :oid 
			FROM DBLohn_SD.KrankenkasseAdr
		 	WHERE Mandant = :MandantOid AND
		 		AdressNr = :Adressnr)
		 	
	if (SQLCODE'=0) {
		set oid = ""
	}
	Quit oid
]]></Implementation>
</Method>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
<DataLocation>^DBLohn.SD.KrankenkasseAdrD</DataLocation>
<DefaultData>KrankenkasseAdrDefaultData</DefaultData>
<IdLocation>^DBLohn.SD.KrankenkasseAdrD</IdLocation>
<IndexLocation>^DBLohn.SD.KrankenkasseAdrI</IndexLocation>
<StreamLocation>^DBLohn.SD.KrankenkasseAdrS</StreamLocation>
<Data name="KrankenkasseAdrDefaultData">
<Structure>listnode</Structure>
<Subscript/>
<Value name="1">
<Value>%%CLASSNAME</Value>
</Value>
<Value name="2">
<Value>Mandant</Value>
</Value>
<Value name="3">
<Value>AdressNr</Value>
</Value>
<Value name="4">
<Value>Name</Value>
</Value>
<Value name="5">
<Value>Adresszeile1</Value>
</Value>
<Value name="6">
<Value>Adresszeile2</Value>
</Value>
<Value name="7">
<Value>Adresszeile3</Value>
</Value>
<Value name="8">
<Value>BetriebsNr</Value>
</Value>
<Value name="9">
<Value>SubNr</Value>
</Value>
<Value name="10">
<Value>NrAusgleichskasse</Value>
</Value>
<Value name="11">
<Value>Ort</Value>
</Value>
<Value name="12">
<Value>Plz</Value>
</Value>
<Value name="13">
<Value>PlzInklZusatz</Value>
</Value>
<Value name="14">
<Value>AdressNrBroker</Value>
</Value>
<Value name="15">
<Value>Bemerkung1</Value>
</Value>
<Value name="16">
<Value>Bemerkung2</Value>
</Value>
</Data>
<Property name="%%CLASSNAME">
</Property>
<Property name="AdressNr">
</Property>
<Property name="AdressNrBroker">
</Property>
<Property name="Adresszeile1">
</Property>
<Property name="Adresszeile2">
</Property>
<Property name="Adresszeile3">
</Property>
<Property name="Bemerkung1">
</Property>
<Property name="Bemerkung2">
</Property>
<Property name="BetriebsNr">
</Property>
<Property name="Mandant">
</Property>
<Property name="Name">
</Property>
<Property name="NrAusgleichskasse">
</Property>
<Property name="Ort">
</Property>
<Property name="Plz">
</Property>
<Property name="PlzInklZusatz">
</Property>
<Property name="SubNr">
</Property>
</Storage>
</Class>


<Class name="DBLohn.SD.Ktg">
<Super>%Persistent,%XML.Adaptor</Super>
<TimeChanged>62437,55776</TimeChanged>
<TimeCreated>62045,30967.941152</TimeCreated>
<Inheritance>right</Inheritance>

<Parameter name="XMLIGNOREINVALIDATTRIBUTE">
<Description><![CDATA[
Controls how to handle attributes that are unexpected.
-> If this parameter is 1 (the default), such attributes are ignored.
-> If it is 0, they are treated as errors, and import fails.]]></Description>
<Default>1</Default>
</Parameter>

<Parameter name="XMLIGNOREINVALIDTAG">
<Description><![CDATA[
Controls how to handle tags that are unexpected. 
-> If this parameter is 1, such tags are ignored. 
-> If it is 0 (the default), they are treated as errors, and import fails.]]></Description>
<Default>1</Default>
</Parameter>

<Parameter name="XMLIGNORENULL">
<Default>1</Default>
</Parameter>

<Property name="IdForExport">
<Type>%XML.Id</Type>
<Private>1</Private>
<Transient>1</Transient>
<Parameter name="XMLNAME" value="ID"/>
<Parameter name="XMLPROJECTION" value="ATTRIBUTE"/>
</Property>

<Property name="Adresse">
<Type>DBLohn.SD.KtgAdresse</Type>
<Cardinality>parent</Cardinality>
<Inverse>KtgEintrag</Inverse>
<Relationship>1</Relationship>
<Parameter name="XMLELEMENTREF" value="1"/>
<Parameter name="XMLNAME" value="Adresse"/>
<Parameter name="XMLPROJECTION" value="ATTRIBUTE"/>
<Parameter name="XMLREFERENCE" value="ID"/>
</Property>

<Property name="AbDatum">
<Description>
AbDatum</Description>
<Type>%Date</Type>
</Property>

<Property name="MNehmerA">
<Description>
MNehmerA</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FNehmerA">
<Description>
FNehmerA</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MGeberA">
<Description>
MGeberA</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FGeberA">
<Description>
FGeberA</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MHoechstA">
<Description>
MHoechstA</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FHoechstA">
<Description>
FHoechstA</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MNehmerB">
<Description>
MNehmerB</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FNehmerB">
<Description>
FNehmerB</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MGeberB">
<Description>
MGeberB</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FGeberB">
<Description>
FGeberB</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MHoechstB">
<Description>
MHoechstB</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FHoechstB">
<Description>
FHoechstB</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MNehmerC">
<Description>
MNehmerC</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FNehmerC">
<Description>
FNehmerC</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MGeberC">
<Description>
MGeberC</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FGeberC">
<Description>
FGeberC</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MHoechstC">
<Description>
MHoechstC</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FHoechstC">
<Description>
FHoechstC</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MNehmerD">
<Description>
MNehmerD</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FNehmerD">
<Description>
FNehmerD</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MGeberD">
<Description>
MGeberD</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FGeberD">
<Description>
FGeberD</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MHoechstD">
<Description>
MHoechstD</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FHoechstD">
<Description>
FHoechstD</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MNehmerE">
<Description>
MNehmerE</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FNehmerE">
<Description>
FNehmerE</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MGeberE">
<Description>
MGeberE</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FGeberE">
<Description>
FGeberE</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MHoechstE">
<Description>
MHoechstE</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FHoechstE">
<Description>
FHoechstE</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MNehmerF">
<Description>
MNehmerF</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FNehmerF">
<Description>
FNehmerF</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MGeberF">
<Description>
MGeberF</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FGeberF">
<Description>
FGeberF</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MHoechstF">
<Description>
MHoechstF</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FHoechstF">
<Description>
FHoechstF</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MNehmerG">
<Description>
MNehmerG</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FNehmerG">
<Description>
FNehmerG</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MGeberG">
<Description>
MGeberG</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FGeberG">
<Description>
FGeberG</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MHoechstG">
<Description>
MHoechstG</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FHoechstG">
<Description>
FHoechstG</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MNehmerH">
<Description>
MNehmerH</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FNehmerH">
<Description>
FNehmerH</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MGeberH">
<Description>
MGeberH</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FGeberH">
<Description>
FGeberH</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MHoechstH">
<Description>
MHoechstH</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FHoechstH">
<Description>
FHoechstH</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MNehmerI">
<Description>
MNehmerI</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FNehmerI">
<Description>
FNehmerI</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MGeberI">
<Description>
MGeberI</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FGeberI">
<Description>
FGeberI</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MHoechstI">
<Description>
MHoechstI</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FHoechstI">
<Description>
FHoechstI</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MNehmerK">
<Description>
MNehmerK</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FNehmerK">
<Description>
FNehmerK</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MGeberK">
<Description>
MGeberK</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FGeberK">
<Description>
FGeberK</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MHoechstK">
<Description>
MHoechstK</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FHoechstK">
<Description>
FHoechstK</Description>
<Type>%Decimal</Type>
</Property>

<Method name="GetOidByAbDatumOnAdresse">
<ClassMethod>1</ClassMethod>
<FormalSpec>KtgAdressOid:%String,AbDatum:%Date</FormalSpec>
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[
	set id = ""
	&sql(SELECT TOP 1 ID INTO :id 
			FROM DBLohn_SD.Ktg
		 	WHERE Adresse = :KtgAdressOid AND 
		 			AbDatum <= TODATE(:AbDatum)
		 	ORDER BY AbDatum DESC)
		 	
	if (SQLCODE'=0) {
		set id = ""
	}
	Quit id
]]></Implementation>
</Method>

<Method name="GetNextOidByAbDatumOnAdresse">
<ClassMethod>1</ClassMethod>
<FormalSpec>KtgAdressOid:%String,AbDatum:%Date</FormalSpec>
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[
	set id = ""
	&sql(SELECT TOP 1 ID INTO :id 
			FROM DBLohn_SD.Ktg
		 	WHERE Adresse = :KtgAdressOid AND 
		 			AbDatum > TODATE(:AbDatum)
		 	ORDER BY AbDatum)
		 	
	if (SQLCODE'=0) {
		set id = ""
	}
	Quit id
]]></Implementation>
</Method>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
<DataLocation>^DBLohn.SD.KtgD</DataLocation>
<DefaultData>KtgDefaultData</DefaultData>
<IdLocation>^DBLohn.SD.KtgD</IdLocation>
<IndexLocation>^DBLohn.SD.KtgI</IndexLocation>
<StreamLocation>^DBLohn.SD.KtgS</StreamLocation>
<Data name="KtgDefaultData">
<Structure>listnode</Structure>
<Subscript/>
<Value name="1">
<Value>%%CLASSNAME</Value>
</Value>
<Value name="2">
<Value>Jahr</Value>
</Value>
<Value name="3">
<Value>AdressNr</Value>
</Value>
<Value name="4">
<Value>Name</Value>
</Value>
<Value name="5">
<Value>Adresszeile1</Value>
</Value>
<Value name="6">
<Value>Adresszeile2</Value>
</Value>
<Value name="7">
<Value>Adresszeile3</Value>
</Value>
<Value name="8">
<Value>BetriebsNr</Value>
</Value>
<Value name="9">
<Value>SubNr</Value>
</Value>
<Value name="10">
<Value>NrAusgleichskasse</Value>
</Value>
<Value name="11">
<Value>Mandant</Value>
</Value>
<Value name="12">
<Value>Ort</Value>
</Value>
<Value name="13">
<Value>Plz</Value>
</Value>
<Value name="14">
<Value>PlzInklZusatz</Value>
</Value>
<Value name="15">
<Value>MNehmerA</Value>
</Value>
<Value name="16">
<Value>FNehmerA</Value>
</Value>
<Value name="17">
<Value>MGeberA</Value>
</Value>
<Value name="18">
<Value>FGeberA</Value>
</Value>
<Value name="19">
<Value>MHoechstA</Value>
</Value>
<Value name="20">
<Value>FHoechstA</Value>
</Value>
<Value name="21">
<Value>MNehmerB</Value>
</Value>
<Value name="22">
<Value>FNehmerB</Value>
</Value>
<Value name="23">
<Value>MGeberB</Value>
</Value>
<Value name="24">
<Value>FGeberB</Value>
</Value>
<Value name="25">
<Value>MHoechstB</Value>
</Value>
<Value name="26">
<Value>FHoechstB</Value>
</Value>
<Value name="27">
<Value>MNehmerC</Value>
</Value>
<Value name="28">
<Value>FNehmerC</Value>
</Value>
<Value name="29">
<Value>MGeberC</Value>
</Value>
<Value name="30">
<Value>FGeberC</Value>
</Value>
<Value name="31">
<Value>MHoechstC</Value>
</Value>
<Value name="32">
<Value>FHoechstC</Value>
</Value>
<Value name="33">
<Value>MNehmerD</Value>
</Value>
<Value name="34">
<Value>FNehmerD</Value>
</Value>
<Value name="35">
<Value>MGeberD</Value>
</Value>
<Value name="36">
<Value>FGeberD</Value>
</Value>
<Value name="37">
<Value>MHoechstD</Value>
</Value>
<Value name="38">
<Value>FHoechstD</Value>
</Value>
<Value name="39">
<Value>MNehmerE</Value>
</Value>
<Value name="40">
<Value>FNehmerE</Value>
</Value>
<Value name="41">
<Value>MGeberE</Value>
</Value>
<Value name="42">
<Value>FGeberE</Value>
</Value>
<Value name="43">
<Value>MHoechstE</Value>
</Value>
<Value name="44">
<Value>FHoechstE</Value>
</Value>
<Value name="45">
<Value>MNehmerF</Value>
</Value>
<Value name="46">
<Value>FNehmerF</Value>
</Value>
<Value name="47">
<Value>MGeberF</Value>
</Value>
<Value name="48">
<Value>FGeberF</Value>
</Value>
<Value name="49">
<Value>MHoechstF</Value>
</Value>
<Value name="50">
<Value>FHoechstF</Value>
</Value>
<Value name="51">
<Value>MNehmerG</Value>
</Value>
<Value name="52">
<Value>FNehmerG</Value>
</Value>
<Value name="53">
<Value>MGeberG</Value>
</Value>
<Value name="54">
<Value>FGeberG</Value>
</Value>
<Value name="55">
<Value>MHoechstG</Value>
</Value>
<Value name="56">
<Value>FHoechstG</Value>
</Value>
<Value name="57">
<Value>MNehmerH</Value>
</Value>
<Value name="58">
<Value>FNehmerH</Value>
</Value>
<Value name="59">
<Value>MGeberH</Value>
</Value>
<Value name="60">
<Value>FGeberH</Value>
</Value>
<Value name="61">
<Value>MHoechstH</Value>
</Value>
<Value name="62">
<Value>FHoechstH</Value>
</Value>
<Value name="63">
<Value>MNehmerI</Value>
</Value>
<Value name="64">
<Value>FNehmerI</Value>
</Value>
<Value name="65">
<Value>MGeberI</Value>
</Value>
<Value name="66">
<Value>FGeberI</Value>
</Value>
<Value name="67">
<Value>MHoechstI</Value>
</Value>
<Value name="68">
<Value>FHoechstI</Value>
</Value>
<Value name="69">
<Value>MNehmerK</Value>
</Value>
<Value name="70">
<Value>FNehmerK</Value>
</Value>
<Value name="71">
<Value>MGeberK</Value>
</Value>
<Value name="72">
<Value>FGeberK</Value>
</Value>
<Value name="73">
<Value>MHoechstK</Value>
</Value>
<Value name="74">
<Value>FHoechstK</Value>
</Value>
<Value name="75">
<Value>AdressNrBroker</Value>
</Value>
<Value name="76">
<Value>Bemerkung1</Value>
</Value>
<Value name="77">
<Value>Bemerkung2</Value>
</Value>
<Value name="78">
<Value>Suva</Value>
</Value>
<Value name="79">
<Value>AbDatum</Value>
</Value>
</Data>
<Property name="%%CLASSNAME">
</Property>
<Property name="AbDatum">
</Property>
<Property name="AdressNr"/>
<Property name="AdressNrBroker"/>
<Property name="Adresse">
</Property>
<Property name="Adresszeile1"/>
<Property name="Adresszeile2"/>
<Property name="Adresszeile3"/>
<Property name="Bemerkung1"/>
<Property name="Bemerkung2"/>
<Property name="BetriebsNr"/>
<Property name="FGeberA">
</Property>
<Property name="FGeberB">
</Property>
<Property name="FGeberC">
</Property>
<Property name="FGeberD">
</Property>
<Property name="FGeberE">
</Property>
<Property name="FGeberF">
</Property>
<Property name="FGeberG">
</Property>
<Property name="FGeberH">
</Property>
<Property name="FGeberI">
</Property>
<Property name="FGeberK">
</Property>
<Property name="FHoechstA">
</Property>
<Property name="FHoechstB">
</Property>
<Property name="FHoechstC">
</Property>
<Property name="FHoechstD">
</Property>
<Property name="FHoechstE">
</Property>
<Property name="FHoechstF">
</Property>
<Property name="FHoechstG">
</Property>
<Property name="FHoechstH">
</Property>
<Property name="FHoechstI">
</Property>
<Property name="FHoechstK">
</Property>
<Property name="FNehmerA">
</Property>
<Property name="FNehmerB">
</Property>
<Property name="FNehmerC">
</Property>
<Property name="FNehmerD">
</Property>
<Property name="FNehmerE">
</Property>
<Property name="FNehmerF">
</Property>
<Property name="FNehmerG">
</Property>
<Property name="FNehmerH">
</Property>
<Property name="FNehmerI">
</Property>
<Property name="FNehmerK">
</Property>
<Property name="Jahr"/>
<Property name="MGeberA">
</Property>
<Property name="MGeberB">
</Property>
<Property name="MGeberC">
</Property>
<Property name="MGeberD">
</Property>
<Property name="MGeberE">
</Property>
<Property name="MGeberF">
</Property>
<Property name="MGeberG">
</Property>
<Property name="MGeberH">
</Property>
<Property name="MGeberI">
</Property>
<Property name="MGeberK">
</Property>
<Property name="MHoechstA">
</Property>
<Property name="MHoechstB">
</Property>
<Property name="MHoechstC">
</Property>
<Property name="MHoechstD">
</Property>
<Property name="MHoechstE">
</Property>
<Property name="MHoechstF">
</Property>
<Property name="MHoechstG">
</Property>
<Property name="MHoechstH">
</Property>
<Property name="MHoechstI">
</Property>
<Property name="MHoechstK">
</Property>
<Property name="MNehmerA">
</Property>
<Property name="MNehmerB">
</Property>
<Property name="MNehmerC">
</Property>
<Property name="MNehmerD">
</Property>
<Property name="MNehmerE">
</Property>
<Property name="MNehmerF">
</Property>
<Property name="MNehmerG">
</Property>
<Property name="MNehmerH">
</Property>
<Property name="MNehmerI">
</Property>
<Property name="MNehmerK">
</Property>
<Property name="Mandant"/>
<Property name="Name"/>
<Property name="NrAusgleichskasse"/>
<Property name="Ort"/>
<Property name="Plz"/>
<Property name="PlzInklZusatz"/>
<Property name="SubNr"/>
<Property name="Suva"/>
<Property name="childsub">
</Property>
</Storage>
</Class>


<Class name="DBLohn.SD.KtgAdresse">
<Super>%Persistent,%XML.Adaptor,DBCore.MandantRel</Super>
<TimeChanged>62437,55776</TimeChanged>
<TimeCreated>62368,29752.227557</TimeCreated>
<Inheritance>right</Inheritance>

<Parameter name="XMLIGNOREINVALIDATTRIBUTE">
<Description><![CDATA[
Controls how to handle attributes that are unexpected.
-> If this parameter is 1 (the default), such attributes are ignored.
-> If it is 0, they are treated as errors, and import fails.]]></Description>
<Default>1</Default>
</Parameter>

<Parameter name="XMLIGNOREINVALIDTAG">
<Description><![CDATA[
Controls how to handle tags that are unexpected. 
-> If this parameter is 1, such tags are ignored. 
-> If it is 0 (the default), they are treated as errors, and import fails.]]></Description>
<Default>1</Default>
</Parameter>

<Parameter name="XMLIGNORENULL">
<Default>1</Default>
</Parameter>

<Property name="IdForExport">
<Type>%XML.Id</Type>
<Private>1</Private>
<Transient>1</Transient>
<Parameter name="XMLNAME" value="ID"/>
<Parameter name="XMLPROJECTION" value="ATTRIBUTE"/>
</Property>

<Property name="Mandant">
<Type>%String</Type>
</Property>

<ForeignKey name="FKMandant">
<Properties>Mandant</Properties>
<ReferencedClass>DBCore.Mandant</ReferencedClass>
<ReferencedKey>MandIdIndex</ReferencedKey>
</ForeignKey>

<Index name="MandantIdx">
<Properties>Mandant</Properties>
</Index>

<Property name="AdressNr">
<Description>
AdressNr</Description>
<Type>%Integer</Type>
</Property>

<Index name="MandantAdresseIdx">
<Properties>Mandant,AdressNr</Properties>
<Unique>1</Unique>
</Index>

<Property name="Name">
<Description>
Name</Description>
<Type>%String</Type>
<Parameter name="MAXLEN" value="50"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="Adresszeile1">
<Description>
Adresszeile1</Description>
<Type>%String</Type>
<Parameter name="MAXLEN" value="50"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="Adresszeile2">
<Description>
Adresszeile2</Description>
<Type>%String</Type>
<Parameter name="MAXLEN" value="50"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="Adresszeile3">
<Description>
Adresszeile3</Description>
<Type>%String</Type>
<Parameter name="MAXLEN" value="50"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="BetriebsNr">
<Description>
BertriebsNr</Description>
<Type>%String</Type>
<Parameter name="MAXLEN" value="50"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="SubNr">
<Description>
SubNr</Description>
<Type>%String</Type>
<Parameter name="MAXLEN" value="50"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="NrAusgleichskasse">
<Description>
NrAusgleichskasse</Description>
<Type>%String</Type>
<Parameter name="MAXLEN" value="50"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="Ort">
<Type>%Library.String</Type>
<Parameter name="MAXLEN" value="255"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="Plz">
<Type>%Library.String</Type>
<Parameter name="MAXLEN" value="15"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="PlzInklZusatz">
<Type>%Library.String</Type>
<Parameter name="MAXLEN" value="15"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="AdressNrBroker">
<Description>
AdressNrBroker</Description>
<Type>%String</Type>
</Property>

<Property name="Bemerkung1">
<Description>
Bemerkung1</Description>
<Type>%String</Type>
</Property>

<Property name="Bemerkung2">
<Description>
Bemerkung2</Description>
<Type>%String</Type>
</Property>

<Property name="KtgEintrag">
<Type>DBLohn.SD.Ktg</Type>
<Cardinality>children</Cardinality>
<Inverse>Adresse</Inverse>
<Relationship>1</Relationship>
<Parameter name="XMLPROJECTION" value="NONE"/>
</Property>

<Property name="Mitarbeiter">
<Type>DBLohn.MitarbeiterVs</Type>
<Cardinality>many</Cardinality>
<Inverse>KtgAdresse</Inverse>
<Relationship>1</Relationship>
<Parameter name="XMLPROJECTION" value="NONE"/>
</Property>

<Property name="LohnabrechnungKopf">
<Type>DBLohn.LohnabrechnungKopf</Type>
<Cardinality>many</Cardinality>
<Inverse>KtgAdresse</Inverse>
<Relationship>1</Relationship>
<Parameter name="XMLPROJECTION" value="NONE"/>
</Property>

<Method name="GetNextNumber">
<ClassMethod>1</ClassMethod>
<FormalSpec>MandantOid:%String</FormalSpec>
<ReturnType>%Integer</ReturnType>
<Implementation><![CDATA[
	set nr = 0
	&sql(SELECT TOP 1 AdressNr INTO :nr 
			FROM DBLohn_SD.KtgAdresse
		 	WHERE Mandant = :MandantOid
		 	ORDER BY AdressNr DESC)
		 	
	if (SQLCODE'=0) {
		set nr = 0
	}
	Quit (nr+1)
]]></Implementation>
</Method>

<Method name="GetFirstAdressOid">
<ClassMethod>1</ClassMethod>
<FormalSpec>MandantOid:%String</FormalSpec>
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[
	set oid = ""
	&sql(SELECT TOP 1 ID INTO :oid 
			FROM DBLohn_SD.KtgAdresse
		 	WHERE Mandant = :MandantOid
		 	ORDER BY AdressNr)
		 	
	if (SQLCODE'=0) {
		set oid = ""
	}
	Quit oid
]]></Implementation>
</Method>

<Method name="GetOidByNummer">
<ClassMethod>1</ClassMethod>
<FormalSpec>MandantOid:%String,Adressnr:%Integer</FormalSpec>
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[
	set oid = ""
	&sql(SELECT ID INTO :oid 
			FROM DBLohn_SD.KtgAdresse
		 	WHERE Mandant = :MandantOid AND
		 		AdressNr = :Adressnr)
		 	
	if (SQLCODE'=0) {
		set oid = ""
	}
	Quit oid
]]></Implementation>
</Method>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
<DataLocation>^DBLohn.SD.KtgAdresseD</DataLocation>
<DefaultData>KtgAdresseDefaultData</DefaultData>
<IdLocation>^DBLohn.SD.KtgAdresseD</IdLocation>
<IndexLocation>^DBLohn.SD.KtgAdresseI</IndexLocation>
<StreamLocation>^DBLohn.SD.KtgAdresseS</StreamLocation>
<Data name="KtgAdresseDefaultData">
<Structure>listnode</Structure>
<Subscript/>
<Value name="1">
<Value>%%CLASSNAME</Value>
</Value>
<Value name="2">
<Value>Mandant</Value>
</Value>
<Value name="3">
<Value>AdressNr</Value>
</Value>
<Value name="4">
<Value>Name</Value>
</Value>
<Value name="5">
<Value>Adresszeile1</Value>
</Value>
<Value name="6">
<Value>Adresszeile2</Value>
</Value>
<Value name="7">
<Value>Adresszeile3</Value>
</Value>
<Value name="8">
<Value>BetriebsNr</Value>
</Value>
<Value name="9">
<Value>SubNr</Value>
</Value>
<Value name="10">
<Value>NrAusgleichskasse</Value>
</Value>
<Value name="11">
<Value>Ort</Value>
</Value>
<Value name="12">
<Value>Plz</Value>
</Value>
<Value name="13">
<Value>PlzInklZusatz</Value>
</Value>
<Value name="14">
<Value>AdressNrBroker</Value>
</Value>
<Value name="15">
<Value>Bemerkung1</Value>
</Value>
<Value name="16">
<Value>Bemerkung2</Value>
</Value>
</Data>
<Property name="%%CLASSNAME">
</Property>
<Property name="AdressNr">
</Property>
<Property name="AdressNrBroker">
</Property>
<Property name="Adresszeile1">
</Property>
<Property name="Adresszeile2">
</Property>
<Property name="Adresszeile3">
</Property>
<Property name="Bemerkung1">
</Property>
<Property name="Bemerkung2">
</Property>
<Property name="BetriebsNr">
</Property>
<Property name="Mandant">
</Property>
<Property name="Name">
</Property>
<Property name="NrAusgleichskasse">
</Property>
<Property name="Ort">
</Property>
<Property name="Plz">
</Property>
<Property name="PlzInklZusatz">
</Property>
<Property name="SubNr">
</Property>
</Storage>
</Class>


<Class name="DBLohn.SD.Lohnzahlungsart">
<Super>%Persistent,%XML.Adaptor,DBCore.MandantRel</Super>
<TimeChanged>62437,55776</TimeChanged>
<TimeCreated>62392,56852.146998</TimeCreated>
<Inheritance>right</Inheritance>

<Parameter name="XMLIGNOREINVALIDATTRIBUTE">
<Description><![CDATA[
Controls how to handle attributes that are unexpected.
-> If this parameter is 1 (the default), such attributes are ignored.
-> If it is 0, they are treated as errors, and import fails.]]></Description>
<Default>1</Default>
</Parameter>

<Parameter name="XMLIGNOREINVALIDTAG">
<Description><![CDATA[
Controls how to handle tags that are unexpected. 
-> If this parameter is 1, such tags are ignored. 
-> If it is 0 (the default), they are treated as errors, and import fails.]]></Description>
<Default>1</Default>
</Parameter>

<Parameter name="XMLIGNORENULL">
<Default>1</Default>
</Parameter>

<Property name="IdForExport">
<Type>%XML.Id</Type>
<Private>1</Private>
<Transient>1</Transient>
<Parameter name="XMLNAME" value="ID"/>
<Parameter name="XMLPROJECTION" value="ATTRIBUTE"/>
</Property>

<Property name="Nummer">
<Description>
Nummer</Description>
<Type>%Integer</Type>
</Property>

<Property name="Bezeichnung">
<Description>
Text</Description>
<Type>%String</Type>
<Parameter name="MAXLEN" value="255"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="Mandant">
<Type>%String</Type>
</Property>

<ForeignKey name="FKMandant">
<Properties>Mandant</Properties>
<ReferencedClass>DBCore.Mandant</ReferencedClass>
<ReferencedKey>MandIdIndex</ReferencedKey>
</ForeignKey>

<Index name="MandantIdx">
<Properties>Mandant</Properties>
</Index>

<Property name="Zahlungsart">
<Description>
Zahlungsart</Description>
<Type>%Integer</Type>
</Property>

<Property name="Lohnanteilsart">
<Description>
Lohnanteilsart</Description>
<Type>%Integer</Type>
</Property>

<Property name="BetragProzent">
<Description>
BetragProzent</Description>
<Type>%Decimal</Type>
<Parameter name="SCALE" value="5"/>
</Property>

<Property name="LohnartJeMa">
<Type>DBLohn.LohnartJeMa</Type>
<Cardinality>many</Cardinality>
<Inverse>Lohnzahlungsart</Inverse>
<Relationship>1</Relationship>
<Parameter name="XMLPROJECTION" value="NONE"/>
</Property>

<Property name="LohnabrechnungPos">
<Type>DBLohn.LohnabrechnungPos</Type>
<Cardinality>many</Cardinality>
<Inverse>Lohnzahlungsart</Inverse>
<Relationship>1</Relationship>
<Parameter name="XMLPROJECTION" value="NONE"/>
</Property>

<Method name="GetIdByNrOnMandant">
<ClassMethod>1</ClassMethod>
<FormalSpec>MandantOid:%String,Nummer:%Integer</FormalSpec>
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[
	set id = ""
	&sql(SELECT ID INTO :id 
			FROM DBLohn_SD.Lohnzahlungsart
		 	WHERE Mandant = :MandantOid AND Nummer = :Nummer)
		 	
	if (SQLCODE'=0) {
		set id = ""
	}
	Quit id
]]></Implementation>
</Method>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
<DataLocation>^DBLohn.SD.LohnzahlungsartD</DataLocation>
<DefaultData>LohnzahlungsartDefaultData</DefaultData>
<IdLocation>^DBLohn.SD.LohnzahlungsartD</IdLocation>
<IndexLocation>^DBLohn.SD.LohnzahlungsartI</IndexLocation>
<StreamLocation>^DBLohn.SD.LohnzahlungsartS</StreamLocation>
<Data name="LohnzahlungsartDefaultData">
<Structure>listnode</Structure>
<Subscript/>
<Value name="1">
<Value>%%CLASSNAME</Value>
</Value>
<Value name="2">
<Value>Nummer</Value>
</Value>
<Value name="3">
<Value>Bezeichnung</Value>
</Value>
<Value name="4">
<Value>Mandant</Value>
</Value>
<Value name="5">
<Value>Zahlungsart</Value>
</Value>
<Value name="6">
<Value>Lohnanteilsart</Value>
</Value>
<Value name="7">
<Value>BetragProzent</Value>
</Value>
</Data>
<Property name="%%CLASSNAME">
</Property>
<Property name="BetragProzent">
</Property>
<Property name="Bezeichnung">
</Property>
<Property name="Lohnanteilsart">
</Property>
<Property name="Mandant">
</Property>
<Property name="Nummer">
</Property>
<Property name="Zahlungsart">
</Property>
</Storage>
</Class>


<Class name="DBLohn.SD.MitarbeiterKat">
<Super>%Persistent,%XML.Adaptor,DBCore.MandantRel</Super>
<TimeChanged>62416,57283.223465</TimeChanged>
<TimeCreated>61968,56550.691147</TimeCreated>
<Inheritance>right</Inheritance>

<Parameter name="XMLIGNOREINVALIDATTRIBUTE">
<Description><![CDATA[
Controls how to handle attributes that are unexpected.
-> If this parameter is 1 (the default), such attributes are ignored.
-> If it is 0, they are treated as errors, and import fails.]]></Description>
<Default>1</Default>
</Parameter>

<Parameter name="XMLIGNOREINVALIDTAG">
<Description><![CDATA[
Controls how to handle tags that are unexpected. 
-> If this parameter is 1, such tags are ignored. 
-> If it is 0 (the default), they are treated as errors, and import fails.]]></Description>
<Default>1</Default>
</Parameter>

<Parameter name="XMLIGNORENULL">
<Default>1</Default>
</Parameter>

<Property name="IdForExport">
<Type>%XML.Id</Type>
<Private>1</Private>
<Transient>1</Transient>
<Parameter name="XMLNAME" value="ID"/>
<Parameter name="XMLPROJECTION" value="ATTRIBUTE"/>
</Property>

<Property name="Code">
<Description>
Code</Description>
<Type>%Integer</Type>
</Property>

<Property name="Text">
<Description>
Text</Description>
<Type>%String</Type>
<Collection>array</Collection>
<Parameter name="MAXLEN" value="255"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="Mandant">
<Type>%String</Type>
</Property>

<ForeignKey name="FKMandant">
<Properties>Mandant</Properties>
<ReferencedClass>DBCore.Mandant</ReferencedClass>
<ReferencedKey>MandIdIndex</ReferencedKey>
</ForeignKey>

<Index name="MandantIdx">
<Properties>Mandant</Properties>
</Index>

<Property name="Mitarbeiter">
<Type>DBLohn.Mitarbeiter</Type>
<Cardinality>many</Cardinality>
<Inverse>Kategorie</Inverse>
<Relationship>1</Relationship>
<Parameter name="XMLPROJECTION" value="NONE"/>
</Property>

<Method name="GetText">
<FormalSpec>MandOid:%String,Lang:%String</FormalSpec>
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[	Quit ##Class(DBUtils.StringUtils).GetText(..Text, Lang, MandOid)
]]></Implementation>
</Method>

<Method name="GetTextClass">
<ClassMethod>1</ClassMethod>
<FormalSpec>myID:%String,MandOid:%String,Lang:%String</FormalSpec>
<ReturnType>%String</ReturnType>
<SqlProc>1</SqlProc>
<Implementation><![CDATA[
	set text = ""
	if ((myID '= "") && (myID '= $c(0))) {
		Set rs=##Class(DBLohn.SD.MitarbeiterKat).%OpenId(myID)
		set text = rs.GetText(MandOid, Lang)
	}
	Quit text
]]></Implementation>
</Method>

<Method name="SetText">
<FormalSpec>MandOid:%String,Lang:%String,Value:%String</FormalSpec>
<Implementation><![CDATA[	Do ##class(DBUtils.StringUtils).SetText(..Text, Value, Lang, MandOid)
]]></Implementation>
</Method>

<Method name="GetIdByCodeOnMandant">
<ClassMethod>1</ClassMethod>
<FormalSpec>MandantOid:%String,Code:%Integer</FormalSpec>
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[

	set id = ""
	&sql(SELECT ID INTO :id FROM DBLohn_SD.MitarbeiterKat
		 WHERE Mandant = :MandantOid AND Code = :Code)
		 
	if (SQLCODE'=0) {
		set id = ""
	}
	Quit id
]]></Implementation>
</Method>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
<DataLocation>^DBLohn.SD.MitarbeiterKatD</DataLocation>
<DefaultData>MitarbeiterKatDefaultData</DefaultData>
<IdLocation>^DBLohn.SD.MitarbeiterKatD</IdLocation>
<IndexLocation>^DBLohn.SD.MitarbeiterKatI</IndexLocation>
<StreamLocation>^DBLohn.SD.MitarbeiterKatS</StreamLocation>
<Data name="MitarbeiterKatDefaultData">
<Structure>listnode</Structure>
<Subscript/>
<Value name="1">
<Value>%%CLASSNAME</Value>
</Value>
<Value name="2">
<Value>Code</Value>
</Value>
<Value name="3">
<Value>Mandant</Value>
</Value>
</Data>
<Data name="Text">
<Attribute>Text</Attribute>
<Structure>subnode</Structure>
<Subscript>"Text"</Subscript>
</Data>
<Property name="Code"/>
<Property name="Mandant"/>
</Storage>
</Class>


<Class name="DBLohn.SD.Niederlassung">
<Super>%Persistent,%XML.Adaptor,DBCore.MandantRel</Super>
<TimeChanged>62423,62086</TimeChanged>
<TimeCreated>62374,57095.893679</TimeCreated>
<Inheritance>right</Inheritance>

<Parameter name="XMLIGNOREINVALIDATTRIBUTE">
<Description><![CDATA[
Controls how to handle attributes that are unexpected.
-> If this parameter is 1 (the default), such attributes are ignored.
-> If it is 0, they are treated as errors, and import fails.]]></Description>
<Default>1</Default>
</Parameter>

<Parameter name="XMLIGNOREINVALIDTAG">
<Description><![CDATA[
Controls how to handle tags that are unexpected. 
-> If this parameter is 1, such tags are ignored. 
-> If it is 0 (the default), they are treated as errors, and import fails.]]></Description>
<Default>1</Default>
</Parameter>

<Parameter name="XMLIGNORENULL">
<Default>1</Default>
</Parameter>

<Property name="IdForExport">
<Type>%XML.Id</Type>
<Private>1</Private>
<Transient>1</Transient>
<Parameter name="XMLNAME" value="ID"/>
<Parameter name="XMLPROJECTION" value="ATTRIBUTE"/>
</Property>

<Property name="Code">
<Description>
Code</Description>
<Type>%Integer</Type>
</Property>

<Property name="Text">
<Description>
Text</Description>
<Type>%String</Type>
<Collection>array</Collection>
<Parameter name="MAXLEN" value="255"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="Mandant">
<Type>%String</Type>
</Property>

<ForeignKey name="FKMandant">
<Properties>Mandant</Properties>
<ReferencedClass>DBCore.Mandant</ReferencedClass>
<ReferencedKey>MandIdIndex</ReferencedKey>
</ForeignKey>

<Index name="MandantIdx">
<Properties>Mandant</Properties>
</Index>

<Property name="Mitarbeiter">
<Type>DBLohn.Mitarbeiter</Type>
<Cardinality>many</Cardinality>
<Inverse>Niederlassung</Inverse>
<Relationship>1</Relationship>
<Parameter name="XMLPROJECTION" value="NONE"/>
</Property>

<Property name="Kanton">
<Description>
Kanton</Description>
<Type>%String</Type>
</Property>

<Method name="GetText">
<FormalSpec>MandOid:%String,Lang:%String</FormalSpec>
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[	Quit ##Class(DBUtils.StringUtils).GetText(..Text, Lang, MandOid)
]]></Implementation>
</Method>

<Method name="GetTextClass">
<ClassMethod>1</ClassMethod>
<FormalSpec>myID:%String,MandOid:%String,Lang:%String</FormalSpec>
<ReturnType>%String</ReturnType>
<SqlProc>1</SqlProc>
<Implementation><![CDATA[
	set text = ""
	if ((myID '= "") && (myID '= $c(0))) {
		Set rs=##Class(DBLohn.SD.Niederlassung).%OpenId(myID)
		set text = rs.GetText(MandOid, Lang)
	}
	Quit text
]]></Implementation>
</Method>

<Method name="SetText">
<FormalSpec>MandOid:%String,Lang:%String,Value:%String</FormalSpec>
<Implementation><![CDATA[	Do ##class(DBUtils.StringUtils).SetText(..Text, Value, Lang, MandOid)
]]></Implementation>
</Method>

<Method name="GetIdByCodeOnMandant">
<ClassMethod>1</ClassMethod>
<FormalSpec>MandantOid:%String,Code:%Integer</FormalSpec>
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[

	set id = ""
	&sql(SELECT ID INTO :id 
			FROM DBLohn_SD.Niederlassung
		 	WHERE Mandant = :MandantOid AND Code = :Code)
	
	if (SQLCODE '= 0) {
		set id = ""
	}
	
	Quit id
]]></Implementation>
</Method>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
<DataLocation>^DBLohn.SD.NiederlassungD</DataLocation>
<DefaultData>NiederlassungDefaultData</DefaultData>
<IdLocation>^DBLohn.SD.NiederlassungD</IdLocation>
<IndexLocation>^DBLohn.SD.NiederlassungI</IndexLocation>
<StreamLocation>^DBLohn.SD.NiederlassungS</StreamLocation>
<Data name="NiederlassungDefaultData">
<Structure>listnode</Structure>
<Subscript/>
<Value name="1">
<Value>%%CLASSNAME</Value>
</Value>
<Value name="2">
<Value>Code</Value>
</Value>
<Value name="3">
<Value>Mandant</Value>
</Value>
<Value name="4">
<Value>Kanton</Value>
</Value>
</Data>
<Data name="Text">
<Attribute>Text</Attribute>
<Structure>subnode</Structure>
<Subscript>"Text"</Subscript>
</Data>
</Storage>
</Class>


<Class name="DBLohn.SD.PersAnrede">
<Super>%Persistent,%XML.Adaptor,DBCore.MandantRel</Super>
<TimeChanged>62416,57283.437269</TimeChanged>
<TimeCreated>62374,57600.151199</TimeCreated>
<Inheritance>right</Inheritance>

<Parameter name="XMLIGNOREINVALIDATTRIBUTE">
<Description><![CDATA[
Controls how to handle attributes that are unexpected.
-> If this parameter is 1 (the default), such attributes are ignored.
-> If it is 0, they are treated as errors, and import fails.]]></Description>
<Default>1</Default>
</Parameter>

<Parameter name="XMLIGNOREINVALIDTAG">
<Description><![CDATA[
Controls how to handle tags that are unexpected. 
-> If this parameter is 1, such tags are ignored. 
-> If it is 0 (the default), they are treated as errors, and import fails.]]></Description>
<Default>1</Default>
</Parameter>

<Parameter name="XMLIGNORENULL">
<Default>1</Default>
</Parameter>

<Property name="IdForExport">
<Type>%XML.Id</Type>
<Private>1</Private>
<Transient>1</Transient>
<Parameter name="XMLNAME" value="ID"/>
<Parameter name="XMLPROJECTION" value="ATTRIBUTE"/>
</Property>

<Property name="Code">
<Description>
Code</Description>
<Type>%Integer</Type>
</Property>

<Property name="Text">
<Description>
Text</Description>
<Type>%String</Type>
<Collection>array</Collection>
<Parameter name="MAXLEN" value="255"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="Mandant">
<Type>%String</Type>
</Property>

<ForeignKey name="FKMandant">
<Properties>Mandant</Properties>
<ReferencedClass>DBCore.Mandant</ReferencedClass>
<ReferencedKey>MandIdIndex</ReferencedKey>
</ForeignKey>

<Index name="MandantIdx">
<Properties>Mandant</Properties>
</Index>

<Method name="GetText">
<FormalSpec>MandOid:%String,Lang:%String</FormalSpec>
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[	Quit ##Class(DBUtils.StringUtils).GetText(..Text, Lang, MandOid)
]]></Implementation>
</Method>

<Method name="GetTextClass">
<ClassMethod>1</ClassMethod>
<FormalSpec>myID:%String,MandOid:%String,Lang:%String</FormalSpec>
<ReturnType>%String</ReturnType>
<SqlProc>1</SqlProc>
<Implementation><![CDATA[
	set text = ""
	if ((myID '= "") && (myID '= $c(0))) {
		Set rs=##Class(DBLohn.SD.PersAnrede).%OpenId(myID)
		set text = rs.GetText(MandOid, Lang)
	}
	Quit text
]]></Implementation>
</Method>

<Method name="SetText">
<FormalSpec>MandOid:%String,Lang:%String,Value:%String</FormalSpec>
<Implementation><![CDATA[	Do ##class(DBUtils.StringUtils).SetText(..Text, Value, Lang, MandOid)
]]></Implementation>
</Method>

<Method name="GetIdByCodeOnMandant">
<ClassMethod>1</ClassMethod>
<FormalSpec>MandantOid:%String,Code:%Integer</FormalSpec>
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[

	set id = ""
	&sql(SELECT ID INTO :id 
			FROM DBLohn_SD.PersAnrede
		 	WHERE Mandant = :MandantOid AND Code = :Code)
		 	
	if (SQLCODE'=0) {
		set id = ""
	}
	Quit id
]]></Implementation>
</Method>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
<DataLocation>^DBLohn.SD.PersAnredeD</DataLocation>
<DefaultData>PersAnredeDefaultData</DefaultData>
<IdLocation>^DBLohn.SD.PersAnredeD</IdLocation>
<IndexLocation>^DBLohn.SD.PersAnredeI</IndexLocation>
<StreamLocation>^DBLohn.SD.PersAnredeS</StreamLocation>
<Data name="PersAnredeDefaultData">
<Structure>listnode</Structure>
<Subscript/>
<Value name="1">
<Value>%%CLASSNAME</Value>
</Value>
<Value name="2">
<Value>Code</Value>
</Value>
<Value name="3">
<Value>Mandant</Value>
</Value>
</Data>
<Data name="Text">
<Attribute>Text</Attribute>
<Structure>subnode</Structure>
<Subscript>"Text"</Subscript>
</Data>
</Storage>
</Class>


<Class name="DBLohn.SD.QsAdresse">
<Super>%Persistent,%XML.Adaptor,DBCore.MandantRel</Super>
<TimeChanged>62430,54627.795927</TimeChanged>
<TimeCreated>62391,41602.909404</TimeCreated>
<Inheritance>right</Inheritance>

<Parameter name="XMLIGNOREINVALIDATTRIBUTE">
<Description><![CDATA[
Controls how to handle attributes that are unexpected.
-> If this parameter is 1 (the default), such attributes are ignored.
-> If it is 0, they are treated as errors, and import fails.]]></Description>
<Default>1</Default>
</Parameter>

<Parameter name="XMLIGNOREINVALIDTAG">
<Description><![CDATA[
Controls how to handle tags that are unexpected. 
-> If this parameter is 1, such tags are ignored. 
-> If it is 0 (the default), they are treated as errors, and import fails.]]></Description>
<Default>1</Default>
</Parameter>

<Parameter name="XMLIGNORENULL">
<Default>1</Default>
</Parameter>

<Property name="IdForExport">
<Type>%XML.Id</Type>
<Private>1</Private>
<Transient>1</Transient>
<Parameter name="XMLNAME" value="ID"/>
<Parameter name="XMLPROJECTION" value="ATTRIBUTE"/>
</Property>

<Property name="Mandant">
<Type>%String</Type>
</Property>

<ForeignKey name="FKMandant">
<Properties>Mandant</Properties>
<ReferencedClass>DBCore.Mandant</ReferencedClass>
<ReferencedKey>MandIdIndex</ReferencedKey>
</ForeignKey>

<Index name="MandantIdx">
<Properties>Mandant</Properties>
</Index>

<Property name="AdressNr">
<Description>
AdressNr</Description>
<Type>%Integer</Type>
</Property>

<Index name="MandantAdresseIdx">
<Properties>Mandant,AdressNr</Properties>
<Unique>1</Unique>
</Index>

<Property name="Name">
<Description>
Name</Description>
<Type>%String</Type>
<Parameter name="MAXLEN" value="50"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="Adresszeile1">
<Description>
Adresszeile1</Description>
<Type>%String</Type>
<Parameter name="MAXLEN" value="50"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="Adresszeile2">
<Description>
Adresszeile2</Description>
<Type>%String</Type>
<Parameter name="MAXLEN" value="50"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="Adresszeile3">
<Description>
Adresszeile3</Description>
<Type>%String</Type>
<Parameter name="MAXLEN" value="50"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="BetriebsNr">
<Description>
BertriebsNr</Description>
<Type>%String</Type>
<Parameter name="MAXLEN" value="50"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="Ort">
<Type>%Library.String</Type>
<Parameter name="MAXLEN" value="255"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="Plz">
<Type>%Library.String</Type>
<Parameter name="MAXLEN" value="15"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="PlzInklZusatz">
<Type>%Library.String</Type>
<Parameter name="MAXLEN" value="15"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="AbrechnungNach">
<Type>%Integer</Type>
</Property>

<Property name="Abrechnungsart">
<Type>%Integer</Type>
</Property>

<Property name="Bezugsprovision">
<Type>%Decimal</Type>
<Parameter name="SCALE" value="5"/>
</Property>

<Property name="Mindestbetrag">
<Type>%Decimal</Type>
<Parameter name="SCALE" value="5"/>
</Property>

<Property name="MaMitCBwilligungDrucken">
<Type>%Boolean</Type>
</Property>

<Property name="Bemerkung1">
<Description>
Bemerkung1</Description>
<Type>%String</Type>
</Property>

<Property name="Bemerkung2">
<Description>
Bemerkung2</Description>
<Type>%String</Type>
</Property>

<Property name="Mitarbeiter">
<Type>DBLohn.MitarbeiterVs</Type>
<Cardinality>many</Cardinality>
<Inverse>QsAdresse</Inverse>
<Relationship>1</Relationship>
<Parameter name="XMLPROJECTION" value="NONE"/>
</Property>

<Property name="LohnabrechnungKopf">
<Type>DBLohn.LohnabrechnungKopf</Type>
<Cardinality>many</Cardinality>
<Inverse>QsAdresse</Inverse>
<Relationship>1</Relationship>
<Parameter name="XMLPROJECTION" value="NONE"/>
</Property>

<Method name="GetNextNumber">
<ClassMethod>1</ClassMethod>
<FormalSpec>MandantOid:%String</FormalSpec>
<ReturnType>%Integer</ReturnType>
<Implementation><![CDATA[
	set nr = 0
	&sql(SELECT TOP 1 AdressNr INTO :nr 
			FROM DBLohn_SD.QsAdresse
		 	WHERE Mandant = :MandantOid
		 	ORDER BY AdressNr DESC)
		 	
	if (SQLCODE'=0) {
		set nr = 0
	}
	Quit (nr+1)
]]></Implementation>
</Method>

<Method name="GetFirstAdressOid">
<ClassMethod>1</ClassMethod>
<FormalSpec>MandantOid:%String</FormalSpec>
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[
	set oid = ""
	&sql(SELECT TOP 1 ID INTO :oid 
			FROM DBLohn_SD.QsAdresse
		 	WHERE Mandant = :MandantOid
		 	ORDER BY AdressNr)
		 	
	if (SQLCODE'=0) {
		set oid = ""
	}
	Quit oid
]]></Implementation>
</Method>

<Method name="GetOidByNummer">
<ClassMethod>1</ClassMethod>
<FormalSpec>MandantOid:%String,Adressnr:%Integer</FormalSpec>
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[
	set oid = ""
	&sql(SELECT ID INTO :oid 
			FROM DBLohn_SD.QsAdresse
		 	WHERE Mandant = :MandantOid AND
		 		AdressNr = :Adressnr)
		 	
	if (SQLCODE'=0) {
		set oid = ""
	}
	Quit oid
]]></Implementation>
</Method>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
<DataLocation>^DBLohn.SD.QsAdresseD</DataLocation>
<DefaultData>QsAdresseDefaultData</DefaultData>
<IdLocation>^DBLohn.SD.QsAdresseD</IdLocation>
<IndexLocation>^DBLohn.SD.QsAdresseI</IndexLocation>
<StreamLocation>^DBLohn.SD.QsAdresseS</StreamLocation>
<Data name="QsAdresseDefaultData">
<Structure>listnode</Structure>
<Subscript/>
<Value name="1">
<Value>%%CLASSNAME</Value>
</Value>
<Value name="2">
<Value>Mandant</Value>
</Value>
<Value name="3">
<Value>AdressNr</Value>
</Value>
<Value name="4">
<Value>Name</Value>
</Value>
<Value name="5">
<Value>Adresszeile1</Value>
</Value>
<Value name="6">
<Value>Adresszeile2</Value>
</Value>
<Value name="7">
<Value>Adresszeile3</Value>
</Value>
<Value name="8">
<Value>BetriebsNr</Value>
</Value>
<Value name="9">
<Value>Ort</Value>
</Value>
<Value name="10">
<Value>Plz</Value>
</Value>
<Value name="11">
<Value>PlzInklZusatz</Value>
</Value>
<Value name="12">
<Value>AbrechnungNach</Value>
</Value>
<Value name="13">
<Value>Abrechnungsart</Value>
</Value>
<Value name="14">
<Value>Bezugsprovision</Value>
</Value>
<Value name="15">
<Value>Mindestbetrag</Value>
</Value>
<Value name="16">
<Value>MaMitCBwilligungDrucken</Value>
</Value>
<Value name="17">
<Value>Bemerkung1</Value>
</Value>
<Value name="18">
<Value>Bemerkung2</Value>
</Value>
</Data>
<Property name="AbrechnungNach"/>
<Property name="Abrechnungsart"/>
<Property name="AdressNr"/>
<Property name="Adresszeile1"/>
<Property name="Adresszeile2"/>
<Property name="Adresszeile3"/>
<Property name="Bemerkung1"/>
<Property name="Bemerkung2"/>
<Property name="BetriebsNr"/>
<Property name="Bezugsprovision"/>
<Property name="MaMitCBwilligungDrucken"/>
<Property name="Mandant"/>
<Property name="Mindestbetrag"/>
<Property name="Name"/>
<Property name="Ort"/>
<Property name="Plz"/>
<Property name="PlzInklZusatz"/>
</Storage>
</Class>


<Class name="DBLohn.SD.QsTarif">
<Super>%Persistent,%XML.Adaptor</Super>
<TimeChanged>62437,55776</TimeChanged>
<TimeCreated>62406,36528.373835</TimeCreated>
<Inheritance>right</Inheritance>

<Parameter name="XMLIGNOREINVALIDATTRIBUTE">
<Description><![CDATA[
Controls how to handle attributes that are unexpected.
-> If this parameter is 1 (the default), such attributes are ignored.
-> If it is 0, they are treated as errors, and import fails.]]></Description>
<Default>1</Default>
</Parameter>

<Parameter name="XMLIGNOREINVALIDTAG">
<Description><![CDATA[
Controls how to handle tags that are unexpected. 
-> If this parameter is 1, such tags are ignored. 
-> If it is 0 (the default), they are treated as errors, and import fails.]]></Description>
<Default>1</Default>
</Parameter>

<Parameter name="XMLIGNORENULL">
<Default>1</Default>
</Parameter>

<Property name="IdForExport">
<Type>%XML.Id</Type>
<Private>1</Private>
<Transient>1</Transient>
<Parameter name="XMLNAME" value="ID"/>
<Parameter name="XMLPROJECTION" value="ATTRIBUTE"/>
</Property>

<Property name="Kanton">
<Description>
Kanton</Description>
<Type>%String</Type>
<Parameter name="MAXLEN" value="2"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="Jahr">
<Description>
Jahr</Description>
<Type>%Integer</Type>
</Property>

<Property name="CodeTarif">
<Description>
Kanton</Description>
<Type>%String</Type>
<Parameter name="MAXLEN" value="10"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="SteuerbaresEinkommenAbFr">
<Description>
Steuerbares Einkommen ab Fr</Description>
<Type>%Decimal</Type>
<Parameter name="SCALE" value="5"/>
</Property>

<Property name="TarifschrittInFr">
<Description>
Tarifschritt in Fr</Description>
<Type>%Decimal</Type>
<Parameter name="SCALE" value="5"/>
</Property>

<Property name="Geschlecht">
<Description>
Geschlecht</Description>
<Type>%String</Type>
<Parameter name="MAXLEN" value="1"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="AnzahlKinder">
<Description>
Anzahl Kinder</Description>
<Type>%Integer</Type>
</Property>

<Property name="SteuerInFr">
<Description>
Steuer in Fr</Description>
<Type>%Decimal</Type>
<Parameter name="SCALE" value="5"/>
</Property>

<Property name="SteuerProzentsatz">
<Description>
Steuer Prozentsatz</Description>
<Type>%Decimal</Type>
<Parameter name="SCALE" value="5"/>
</Property>

<Index name="JahrKantonIdx">
<Properties>Jahr,Kanton,CodeTarif</Properties>
</Index>

<Method name="ExistsKantonJahr">
<ClassMethod>1</ClassMethod>
<FormalSpec>Kanton:%String,Jahr:%Integer</FormalSpec>
<ReturnType>%Boolean</ReturnType>
<Implementation><![CDATA[
	set id = ""
	&sql(SELECT ID INTO :id 
			FROM DBLohn_SD.QsTarif
		 	WHERE Kanton = :Kanton AND Jahr = :Jahr)
		 	
	if (SQLCODE'=0) {
		set id = ""
	}
	Quit id'=""
]]></Implementation>
</Method>

<Method name="DeleteTarifeByKantonJahr">
<ClassMethod>1</ClassMethod>
<FormalSpec>Kanton:%String,Jahr:%Integer</FormalSpec>
<Implementation><![CDATA[
	set id = ""
	&sql(DELETE	FROM DBLohn_SD.QsTarif
		 	WHERE Kanton = :Kanton AND Jahr = :Jahr)
		 	
	if (SQLCODE'=0) {
		set id = ""
	}
]]></Implementation>
</Method>

<Method name="GetMaxAnzahlKinder">
<ClassMethod>1</ClassMethod>
<FormalSpec>Kanton:%String,Jahr:%Integer,Tarifgruppe:%String,Grenzgaenger:%String</FormalSpec>
<ReturnType>%Integer</ReturnType>
<Implementation><![CDATA[
    set anz = 0
    &sql(SELECT MAX(AnzahlKinder) InTo :anz 
	       FROM DBLohn_SD.QsTarif 
	       WHERE Kanton=:Kanton AND 
	           Jahr=:Jahr AND 
	           CodeTarif like :Tarifgruppe||'%'||:Grenzgaenger)
                                   
    if (SQLCODE'=0) {
		set anz = 0
    }
    Quit anz
]]></Implementation>
</Method>

<Method name="GetTarifOid">
<ClassMethod>1</ClassMethod>
<FormalSpec>Kanton:%String,Jahr:%Integer,CodeTarif:%String,Betrag:%Decimal,Geschlecht:%String</FormalSpec>
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[
    set id = ""
    &sql(SELECT ID InTo :id 
           FROM DBLohn_SD.QsTarif 
           WHERE Kanton=:Kanton AND 
               Jahr=:Jahr AND 
               CodeTarif = :CodeTarif AND
               (Geschlecht = :Geschlecht OR Geschlecht = ' ') AND
               :Betrag BETWEEN SteuerbaresEinkommenAbFr AND (SteuerbaresEinkommenAbFr+TarifschrittInFr))
                                   
    if (SQLCODE'=0) {
       set id = ""
    }
    Quit id
]]></Implementation>
</Method>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
<DataLocation>^DBLohn.SD.QsTarifD</DataLocation>
<DefaultData>QsTarifDefaultData</DefaultData>
<IdLocation>^DBLohn.SD.QsTarifD</IdLocation>
<IndexLocation>^DBLohn.SD.QsTarifI</IndexLocation>
<StreamLocation>^DBLohn.SD.QsTarifS</StreamLocation>
<Data name="QsTarifDefaultData">
<Structure>listnode</Structure>
<Subscript/>
<Value name="1">
<Value>%%CLASSNAME</Value>
</Value>
<Value name="2">
<Value>Kanton</Value>
</Value>
<Value name="3">
<Value>Jahr</Value>
</Value>
<Value name="4">
<Value>CodeTarif</Value>
</Value>
<Value name="5">
<Value>SteuerbaresEinkommenAbFr</Value>
</Value>
<Value name="6">
<Value>TarifschrittInFr</Value>
</Value>
<Value name="7">
<Value>Geschlecht</Value>
</Value>
<Value name="8">
<Value>AnzahlKinder</Value>
</Value>
<Value name="9">
<Value>SteuerInFr</Value>
</Value>
<Value name="10">
<Value>SteuerProzentsatz</Value>
</Value>
</Data>
<Property name="%%CLASSNAME">
</Property>
<Property name="AnzahlKinder">
</Property>
<Property name="CodeTarif">
</Property>
<Property name="Geschlecht">
</Property>
<Property name="Jahr">
</Property>
<Property name="Kanton">
</Property>
<Property name="SteuerInFr">
</Property>
<Property name="SteuerProzentsatz">
</Property>
<Property name="SteuerbaresEinkommenAbFr">
</Property>
<Property name="TarifschrittInFr">
</Property>
</Storage>
</Class>


<Class name="DBLohn.SD.StaatsAng">
<Super>%Persistent,%XML.Adaptor,DBCore.MandantRel</Super>
<TimeChanged>62437,55776</TimeChanged>
<TimeCreated>61968,56690.039178</TimeCreated>
<Inheritance>right</Inheritance>

<Parameter name="XMLIGNOREINVALIDATTRIBUTE">
<Description><![CDATA[
Controls how to handle attributes that are unexpected.
-> If this parameter is 1 (the default), such attributes are ignored.
-> If it is 0, they are treated as errors, and import fails.]]></Description>
<Default>1</Default>
</Parameter>

<Parameter name="XMLIGNOREINVALIDTAG">
<Description><![CDATA[
Controls how to handle tags that are unexpected. 
-> If this parameter is 1, such tags are ignored. 
-> If it is 0 (the default), they are treated as errors, and import fails.]]></Description>
<Default>1</Default>
</Parameter>

<Parameter name="XMLIGNORENULL">
<Default>1</Default>
</Parameter>

<Property name="IdForExport">
<Type>%XML.Id</Type>
<Private>1</Private>
<Transient>1</Transient>
<Parameter name="XMLNAME" value="ID"/>
<Parameter name="XMLPROJECTION" value="ATTRIBUTE"/>
</Property>

<Property name="Code">
<Description>
Code</Description>
<Type>%Integer</Type>
</Property>

<Property name="Text">
<Description>
Text</Description>
<Type>%String</Type>
<Collection>array</Collection>
<Parameter name="MAXLEN" value="255"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="Mandant">
<Type>%String</Type>
</Property>

<ForeignKey name="FKMandant">
<Properties>Mandant</Properties>
<ReferencedClass>DBCore.Mandant</ReferencedClass>
<ReferencedKey>MandIdIndex</ReferencedKey>
</ForeignKey>

<Index name="MandantIdx">
<Properties>Mandant</Properties>
</Index>

<Property name="Mitarbeiter">
<Type>DBLohn.Mitarbeiter</Type>
<Cardinality>many</Cardinality>
<Inverse>Staatsangehoerigkeit</Inverse>
<Relationship>1</Relationship>
<Parameter name="XMLPROJECTION" value="NONE"/>
</Property>

<Method name="GetText">
<FormalSpec>MandOid:%String,Lang:%String</FormalSpec>
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[	Quit ##Class(DBUtils.StringUtils).GetText(..Text, Lang, MandOid)
]]></Implementation>
</Method>

<Method name="GetTextClass">
<ClassMethod>1</ClassMethod>
<FormalSpec>myID:%String,MandOid:%String,Lang:%String</FormalSpec>
<ReturnType>%String</ReturnType>
<SqlProc>1</SqlProc>
<Implementation><![CDATA[
	set text = ""
	if ((myID '= "") && (myID '= $c(0))) {
		Set rs=##Class(DBLohn.SD.StaatsAng).%OpenId(myID)
		set text = rs.GetText(MandOid, Lang)
	}
	Quit text
]]></Implementation>
</Method>

<Method name="SetText">
<FormalSpec>MandOid:%String,Lang:%String,Value:%String</FormalSpec>
<Implementation><![CDATA[	Do ##class(DBUtils.StringUtils).SetText(..Text, Value, Lang, MandOid)
]]></Implementation>
</Method>

<Method name="GetIdByCodeOnMandant">
<ClassMethod>1</ClassMethod>
<FormalSpec>MandantOid:%String,Code:%Integer</FormalSpec>
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[
	set id = ""
	&sql(SELECT ID INTO :id 
			FROM DBLohn_SD.StaatsAng
		 	WHERE Mandant = :MandantOid AND Code = :Code)
		 	
	if (SQLCODE '= 0) {
		set id = ""
	}
	
	Quit id
]]></Implementation>
</Method>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
<DataLocation>^DBLohn.SD.StaatsAngD</DataLocation>
<DefaultData>StaatsAngDefaultData</DefaultData>
<IdLocation>^DBLohn.SD.StaatsAngD</IdLocation>
<IndexLocation>^DBLohn.SD.StaatsAngI</IndexLocation>
<StreamLocation>^DBLohn.SD.StaatsAngS</StreamLocation>
<Data name="StaatsAngDefaultData">
<Structure>listnode</Structure>
<Subscript/>
<Value name="1">
<Value>%%CLASSNAME</Value>
</Value>
<Value name="2">
<Value>Code</Value>
</Value>
<Value name="3">
<Value>Mandant</Value>
</Value>
</Data>
<Data name="Text">
<Attribute>Text</Attribute>
<Structure>subnode</Structure>
<Subscript>"Text"</Subscript>
</Data>
<Property name="%%CLASSNAME">
</Property>
<Property name="Code">
</Property>
<Property name="Mandant">
</Property>
</Storage>
</Class>


<Class name="DBLohn.SD.Statistiktext">
<Super>%Persistent,%XML.Adaptor,DBCore.MandantRel</Super>
<TimeChanged>62437,55776</TimeChanged>
<TimeCreated>62374,57743.426201</TimeCreated>
<Inheritance>right</Inheritance>

<Parameter name="XMLIGNOREINVALIDATTRIBUTE">
<Description><![CDATA[
Controls how to handle attributes that are unexpected.
-> If this parameter is 1 (the default), such attributes are ignored.
-> If it is 0, they are treated as errors, and import fails.]]></Description>
<Default>1</Default>
</Parameter>

<Parameter name="XMLIGNOREINVALIDTAG">
<Description><![CDATA[
Controls how to handle tags that are unexpected. 
-> If this parameter is 1, such tags are ignored. 
-> If it is 0 (the default), they are treated as errors, and import fails.]]></Description>
<Default>1</Default>
</Parameter>

<Parameter name="XMLIGNORENULL">
<Default>1</Default>
</Parameter>

<Property name="IdForExport">
<Type>%XML.Id</Type>
<Private>1</Private>
<Transient>1</Transient>
<Parameter name="XMLNAME" value="ID"/>
<Parameter name="XMLPROJECTION" value="ATTRIBUTE"/>
</Property>

<Property name="Code">
<Type>%Library.Integer</Type>
<Required>1</Required>
<Parameter name="MAXVAL" value="999"/>
<Parameter name="MINVAL" value="1"/>
</Property>

<Property name="Bezeichnung">
<Type>%String</Type>
<Collection>array</Collection>
<Parameter name="MAXLEN" value="255"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="Kurztext">
<Type>%String</Type>
<Collection>array</Collection>
<Parameter name="MAXLEN" value="255"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="Mandant">
<Type>%String</Type>
</Property>

<ForeignKey name="FKMandant">
<Properties>Mandant</Properties>
<ReferencedClass>DBCore.Mandant</ReferencedClass>
<ReferencedKey>MandIdIndex</ReferencedKey>
</ForeignKey>

<Index name="MandantIdx">
<Properties>Mandant</Properties>
</Index>

<Index name="CodeIndex">
<Properties>Mandant,Code</Properties>
<Unique>1</Unique>
</Index>

<Property name="Lohnart">
<Type>DBLohn.Lohnart</Type>
<Cardinality>many</Cardinality>
<Inverse>Statistik</Inverse>
<Relationship>1</Relationship>
<Parameter name="XMLPROJECTION" value="NONE"/>
</Property>

<Method name="GetBezeichnung">
<FormalSpec>MandOid:%String,Lang:%String</FormalSpec>
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[	Quit ##Class(DBUtils.StringUtils).GetText(..Bezeichnung, Lang, MandOid)
]]></Implementation>
</Method>

<Method name="GetBezeichnungClass">
<ClassMethod>1</ClassMethod>
<FormalSpec>myID:%String,MandOid:%String,Lang:%String</FormalSpec>
<ReturnType>%String</ReturnType>
<SqlProc>1</SqlProc>
<Implementation><![CDATA[
	set text = ""
	if (myID'="") {
		Set rs=##Class(DBLohn.SD.Statistiktext).%OpenId(myID)
		set text = rs.GetBezeichnung(MandOid, Lang)
	}
	Quit text
]]></Implementation>
</Method>

<Method name="SetBezeichnung">
<FormalSpec>MandOid:%String,Lang:%String,Value:%String</FormalSpec>
<Implementation><![CDATA[	Do ##class(DBUtils.StringUtils).SetText(..Bezeichnung, Value, Lang, MandOid)
]]></Implementation>
</Method>

<Method name="GetKurztext">
<FormalSpec>MandOid:%String,Lang:%String</FormalSpec>
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[	Quit ##Class(DBUtils.StringUtils).GetText(..Kurztext, Lang, MandOid)
]]></Implementation>
</Method>

<Method name="GetKurztextClass">
<ClassMethod>1</ClassMethod>
<FormalSpec>myID:%String,MandOid:%String,Lang:%String</FormalSpec>
<ReturnType>%String</ReturnType>
<SqlProc>1</SqlProc>
<Implementation><![CDATA[
	set text = ""
	if (myID'="") {
		Set rs=##Class(DBLohn.SD.Statistiktext).%OpenId(myID)
		set text = rs.GetKurztext(MandOid, Lang)
	}
	Quit text
]]></Implementation>
</Method>

<Method name="SetKurztext">
<FormalSpec>MandOid:%String,Lang:%String,Value:%String</FormalSpec>
<Implementation><![CDATA[	Do ##class(DBUtils.StringUtils).SetText(..Kurztext, Value, Lang, MandOid)
]]></Implementation>
</Method>

<Method name="GetCodeByOidClass">
<ClassMethod>1</ClassMethod>
<FormalSpec>myID:%String</FormalSpec>
<ReturnType>%Integer</ReturnType>
<SqlProc>1</SqlProc>
<Implementation><![CDATA[
	set code = ""
	&sql(SELECT Code into :code 
			FROM DBLohn_SD.Statistiktext 
			WHERE ID = :myID)
			
	if (SQLCODE'=0) {
		set code = ""
	}
	Quit code
]]></Implementation>
</Method>

<Method name="GetOidByCode">
<ClassMethod>1</ClassMethod>
<FormalSpec>MandOid:%String,Code:%Integer</FormalSpec>
<ReturnType>%String</ReturnType>
<SqlProc>1</SqlProc>
<Implementation><![CDATA[
	set myID = ""
	&sql(SELECT ID into :myID 
			FROM DBLohn_SD.Statistiktext 
			WHERE Mandant=:MandOid AND Code=:Code)
			
	if (SQLCODE'=0) {
		set myID = ""
	}
	Quit myID
]]></Implementation>
</Method>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
<DataLocation>^DBLohn.SD.StatistiktextD</DataLocation>
<DefaultData>StatistiktextDefaultData</DefaultData>
<IdLocation>^DBLohn.SD.StatistiktextD</IdLocation>
<IndexLocation>^DBLohn.SD.StatistiktextI</IndexLocation>
<StreamLocation>^DBLohn.SD.StatistiktextS</StreamLocation>
<Data name="Bezeichnung">
<Attribute>Bezeichnung</Attribute>
<Structure>subnode</Structure>
<Subscript>"Bezeichnung"</Subscript>
</Data>
<Data name="Kurztext">
<Attribute>Kurztext</Attribute>
<Structure>subnode</Structure>
<Subscript>"Kurztext"</Subscript>
</Data>
<Data name="StatistiktextDefaultData">
<Structure>listnode</Structure>
<Subscript/>
<Value name="1">
<Value>%%CLASSNAME</Value>
</Value>
<Value name="2">
<Value>Code</Value>
</Value>
<Value name="3">
<Value>Mandant</Value>
</Value>
</Data>
<Property name="%%CLASSNAME">
</Property>
<Property name="Code">
</Property>
<Property name="Mandant">
</Property>
</Storage>
</Class>


<Class name="DBLohn.SD.Uvg">
<Super>%Persistent,%XML.Adaptor</Super>
<TimeChanged>62437,55776</TimeChanged>
<TimeCreated>62039,40917.42414</TimeCreated>
<Inheritance>right</Inheritance>

<Parameter name="XMLIGNOREINVALIDATTRIBUTE">
<Description><![CDATA[
Controls how to handle attributes that are unexpected.
-> If this parameter is 1 (the default), such attributes are ignored.
-> If it is 0, they are treated as errors, and import fails.]]></Description>
<Default>1</Default>
</Parameter>

<Parameter name="XMLIGNOREINVALIDTAG">
<Description><![CDATA[
Controls how to handle tags that are unexpected. 
-> If this parameter is 1, such tags are ignored. 
-> If it is 0 (the default), they are treated as errors, and import fails.]]></Description>
<Default>1</Default>
</Parameter>

<Parameter name="XMLIGNORENULL">
<Default>1</Default>
</Parameter>

<Property name="IdForExport">
<Type>%XML.Id</Type>
<Private>1</Private>
<Transient>1</Transient>
<Parameter name="XMLNAME" value="ID"/>
<Parameter name="XMLPROJECTION" value="ATTRIBUTE"/>
</Property>

<Property name="Adresse">
<Type>DBLohn.SD.UvgAdresse</Type>
<Cardinality>parent</Cardinality>
<Inverse>UvgEintrag</Inverse>
<Relationship>1</Relationship>
<Parameter name="XMLELEMENTREF" value="1"/>
<Parameter name="XMLNAME" value="Adresse"/>
<Parameter name="XMLPROJECTION" value="ATTRIBUTE"/>
<Parameter name="XMLREFERENCE" value="ID"/>
</Property>

<Property name="AbDatum">
<Description>
AbDatum</Description>
<Type>%Date</Type>
</Property>

<Property name="MNehmerA">
<Description>
MNehmerA</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FNehmerA">
<Description>
FNehmerA</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MGeberA">
<Description>
MGeberA</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FGeberA">
<Description>
FGeberA</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MHoechstA">
<Description>
MHoechstA</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FHoechstA">
<Description>
FHoechstA</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MNehmerB">
<Description>
MNehmerB</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FNehmerB">
<Description>
FNehmerB</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MGeberB">
<Description>
MGeberB</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FGeberB">
<Description>
FGeberB</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MHoechstB">
<Description>
MHoechstB</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FHoechstB">
<Description>
FHoechstB</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MNehmerC">
<Description>
MNehmerC</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FNehmerC">
<Description>
FNehmerC</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MGeberC">
<Description>
MGeberC</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FGeberC">
<Description>
FGeberC</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MHoechstC">
<Description>
MHoechstC</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FHoechstC">
<Description>
FHoechstC</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MNehmerD">
<Description>
MNehmerD</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FNehmerD">
<Description>
FNehmerD</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MGeberD">
<Description>
MGeberD</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FGeberD">
<Description>
FGeberD</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MHoechstD">
<Description>
MHoechstD</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FHoechstD">
<Description>
FHoechstD</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MNehmerE">
<Description>
MNehmerE</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FNehmerE">
<Description>
FNehmerE</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MGeberE">
<Description>
MGeberE</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FGeberE">
<Description>
FGeberE</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MHoechstE">
<Description>
MHoechstE</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FHoechstE">
<Description>
FHoechstE</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MNehmerF">
<Description>
MNehmerF</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FNehmerF">
<Description>
FNehmerF</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MGeberF">
<Description>
MGeberF</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FGeberF">
<Description>
FGeberF</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MHoechstF">
<Description>
MHoechstF</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FHoechstF">
<Description>
FHoechstF</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MNehmerG">
<Description>
MNehmerG</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FNehmerG">
<Description>
FNehmerG</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MGeberG">
<Description>
MGeberG</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FGeberG">
<Description>
FGeberG</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MHoechstG">
<Description>
MHoechstG</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FHoechstG">
<Description>
FHoechstG</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MNehmerH">
<Description>
MNehmerH</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FNehmerH">
<Description>
FNehmerH</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MGeberH">
<Description>
MGeberH</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FGeberH">
<Description>
FGeberH</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MHoechstH">
<Description>
MHoechstH</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FHoechstH">
<Description>
FHoechstH</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MNehmerI">
<Description>
MNehmerI</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FNehmerI">
<Description>
FNehmerI</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MGeberI">
<Description>
MGeberI</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FGeberI">
<Description>
FGeberI</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MHoechstI">
<Description>
MHoechstI</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FHoechstI">
<Description>
FHoechstI</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MNehmerK">
<Description>
MNehmerK</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FNehmerK">
<Description>
FNehmerK</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MGeberK">
<Description>
MGeberK</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FGeberK">
<Description>
FGeberK</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MHoechstK">
<Description>
MHoechstK</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FHoechstK">
<Description>
FHoechstK</Description>
<Type>%Decimal</Type>
</Property>

<Method name="GetOidByAbDatumOnAdresse">
<ClassMethod>1</ClassMethod>
<FormalSpec>UvgAdressOid:%String,AbDatum:%Date</FormalSpec>
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[
	set id = ""
	&sql(SELECT TOP 1 ID INTO :id 
			FROM DBLohn_SD.Uvg
		 	WHERE Adresse = :UvgAdressOid AND 
		 			AbDatum <= TODATE(:AbDatum)
		 	ORDER BY AbDatum DESC)
		 	
	if (SQLCODE'=0) {
		set id = ""
	}
	Quit id
]]></Implementation>
</Method>

<Method name="GetNextOidByAbDatumOnAdresse">
<ClassMethod>1</ClassMethod>
<FormalSpec>UvgAdressOid:%String,AbDatum:%Date</FormalSpec>
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[
	set id = ""
	&sql(SELECT TOP 1 ID INTO :id 
			FROM DBLohn_SD.Uvg
		 	WHERE Adresse = :UvgAdressOid AND 
		 			AbDatum > TODATE(:AbDatum)
		 	ORDER BY AbDatum)
		 	
	if (SQLCODE'=0) {
		set id = ""
	}
	Quit id
]]></Implementation>
</Method>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
<DataLocation>^DBLohn.SD.UvgD</DataLocation>
<DefaultData>UvgDefaultData</DefaultData>
<IdLocation>^DBLohn.SD.UvgD</IdLocation>
<IndexLocation>^DBLohn.SD.UvgI</IndexLocation>
<StreamLocation>^DBLohn.SD.UvgS</StreamLocation>
<Data name="UvgDefaultData">
<Structure>listnode</Structure>
<Subscript/>
<Value name="1">
<Value>%%CLASSNAME</Value>
</Value>
<Value name="2">
<Value>Jahr</Value>
</Value>
<Value name="3">
<Value>AdressNr</Value>
</Value>
<Value name="4">
<Value>Name</Value>
</Value>
<Value name="5">
<Value>Adresszeile1</Value>
</Value>
<Value name="6">
<Value>Adresszeile2</Value>
</Value>
<Value name="7">
<Value>Adresszeile3</Value>
</Value>
<Value name="8">
<Value>BetriebsNr</Value>
</Value>
<Value name="9">
<Value>SubNr</Value>
</Value>
<Value name="10">
<Value>NrAusgleichskasse</Value>
</Value>
<Value name="11">
<Value>Mandant</Value>
</Value>
<Value name="12">
<Value>Ort</Value>
</Value>
<Value name="13">
<Value>Plz</Value>
</Value>
<Value name="14">
<Value>PlzInklZusatz</Value>
</Value>
<Value name="15">
<Value>AdressNrBroker</Value>
</Value>
<Value name="16">
<Value>Bemerkung1</Value>
</Value>
<Value name="17">
<Value>Bemerkung2</Value>
</Value>
<Value name="18">
<Value>MNehmerA</Value>
</Value>
<Value name="19">
<Value>FNehmerA</Value>
</Value>
<Value name="20">
<Value>MGeberA</Value>
</Value>
<Value name="21">
<Value>FGeberA</Value>
</Value>
<Value name="22">
<Value>MHoechstA</Value>
</Value>
<Value name="23">
<Value>FHoechstA</Value>
</Value>
<Value name="24">
<Value>MNehmerB</Value>
</Value>
<Value name="25">
<Value>FNehmerB</Value>
</Value>
<Value name="26">
<Value>MGeberB</Value>
</Value>
<Value name="27">
<Value>FGeberB</Value>
</Value>
<Value name="28">
<Value>MHoechstB</Value>
</Value>
<Value name="29">
<Value>FHoechstB</Value>
</Value>
<Value name="30">
<Value>MNehmerC</Value>
</Value>
<Value name="31">
<Value>FNehmerC</Value>
</Value>
<Value name="32">
<Value>MGeberC</Value>
</Value>
<Value name="33">
<Value>FGeberC</Value>
</Value>
<Value name="34">
<Value>MHoechstC</Value>
</Value>
<Value name="35">
<Value>FHoechstC</Value>
</Value>
<Value name="36">
<Value>MNehmerD</Value>
</Value>
<Value name="37">
<Value>FNehmerD</Value>
</Value>
<Value name="38">
<Value>MGeberD</Value>
</Value>
<Value name="39">
<Value>FGeberD</Value>
</Value>
<Value name="40">
<Value>MHoechstD</Value>
</Value>
<Value name="41">
<Value>FHoechstD</Value>
</Value>
<Value name="42">
<Value>MNehmerE</Value>
</Value>
<Value name="43">
<Value>FNehmerE</Value>
</Value>
<Value name="44">
<Value>MGeberE</Value>
</Value>
<Value name="45">
<Value>FGeberE</Value>
</Value>
<Value name="46">
<Value>MHoechstE</Value>
</Value>
<Value name="47">
<Value>FHoechstE</Value>
</Value>
<Value name="48">
<Value>MNehmerF</Value>
</Value>
<Value name="49">
<Value>FNehmerF</Value>
</Value>
<Value name="50">
<Value>MGeberF</Value>
</Value>
<Value name="51">
<Value>FGeberF</Value>
</Value>
<Value name="52">
<Value>MHoechstF</Value>
</Value>
<Value name="53">
<Value>FHoechstF</Value>
</Value>
<Value name="54">
<Value>MNehmerG</Value>
</Value>
<Value name="55">
<Value>FNehmerG</Value>
</Value>
<Value name="56">
<Value>MGeberG</Value>
</Value>
<Value name="57">
<Value>FGeberG</Value>
</Value>
<Value name="58">
<Value>MHoechstG</Value>
</Value>
<Value name="59">
<Value>FHoechstG</Value>
</Value>
<Value name="60">
<Value>MNehmerH</Value>
</Value>
<Value name="61">
<Value>FNehmerH</Value>
</Value>
<Value name="62">
<Value>MGeberH</Value>
</Value>
<Value name="63">
<Value>FGeberH</Value>
</Value>
<Value name="64">
<Value>MHoechstH</Value>
</Value>
<Value name="65">
<Value>FHoechstH</Value>
</Value>
<Value name="66">
<Value>MNehmerI</Value>
</Value>
<Value name="67">
<Value>FNehmerI</Value>
</Value>
<Value name="68">
<Value>MGeberI</Value>
</Value>
<Value name="69">
<Value>FGeberI</Value>
</Value>
<Value name="70">
<Value>MHoechstI</Value>
</Value>
<Value name="71">
<Value>FHoechstI</Value>
</Value>
<Value name="72">
<Value>MNehmerK</Value>
</Value>
<Value name="73">
<Value>FNehmerK</Value>
</Value>
<Value name="74">
<Value>MGeberK</Value>
</Value>
<Value name="75">
<Value>FGeberK</Value>
</Value>
<Value name="76">
<Value>MHoechstK</Value>
</Value>
<Value name="77">
<Value>FHoechstK</Value>
</Value>
<Value name="78">
<Value>AbDatum</Value>
</Value>
</Data>
<Property name="%%CLASSNAME">
</Property>
<Property name="AbDatum">
</Property>
<Property name="AdressNr"/>
<Property name="AdressNrBroker"/>
<Property name="Adresse">
</Property>
<Property name="Adresszeile1"/>
<Property name="Adresszeile2"/>
<Property name="Adresszeile3"/>
<Property name="Bemerkung1"/>
<Property name="Bemerkung2"/>
<Property name="BetriebsNr"/>
<Property name="FGeberA">
</Property>
<Property name="FGeberB">
</Property>
<Property name="FGeberC">
</Property>
<Property name="FGeberD">
</Property>
<Property name="FGeberE">
</Property>
<Property name="FGeberF">
</Property>
<Property name="FGeberG">
</Property>
<Property name="FGeberH">
</Property>
<Property name="FGeberI">
</Property>
<Property name="FGeberK">
</Property>
<Property name="FHoechstA">
</Property>
<Property name="FHoechstB">
</Property>
<Property name="FHoechstC">
</Property>
<Property name="FHoechstD">
</Property>
<Property name="FHoechstE">
</Property>
<Property name="FHoechstF">
</Property>
<Property name="FHoechstG">
</Property>
<Property name="FHoechstH">
</Property>
<Property name="FHoechstI">
</Property>
<Property name="FHoechstK">
</Property>
<Property name="FNehmerA">
</Property>
<Property name="FNehmerB">
</Property>
<Property name="FNehmerC">
</Property>
<Property name="FNehmerD">
</Property>
<Property name="FNehmerE">
</Property>
<Property name="FNehmerF">
</Property>
<Property name="FNehmerG">
</Property>
<Property name="FNehmerH">
</Property>
<Property name="FNehmerI">
</Property>
<Property name="FNehmerK">
</Property>
<Property name="Jahr"/>
<Property name="MGeberA">
</Property>
<Property name="MGeberB">
</Property>
<Property name="MGeberC">
</Property>
<Property name="MGeberD">
</Property>
<Property name="MGeberE">
</Property>
<Property name="MGeberF">
</Property>
<Property name="MGeberG">
</Property>
<Property name="MGeberH">
</Property>
<Property name="MGeberI">
</Property>
<Property name="MGeberK">
</Property>
<Property name="MHoechstA">
</Property>
<Property name="MHoechstB">
</Property>
<Property name="MHoechstC">
</Property>
<Property name="MHoechstD">
</Property>
<Property name="MHoechstE">
</Property>
<Property name="MHoechstF">
</Property>
<Property name="MHoechstG">
</Property>
<Property name="MHoechstH">
</Property>
<Property name="MHoechstI">
</Property>
<Property name="MHoechstK">
</Property>
<Property name="MNehmerA">
</Property>
<Property name="MNehmerB">
</Property>
<Property name="MNehmerC">
</Property>
<Property name="MNehmerD">
</Property>
<Property name="MNehmerE">
</Property>
<Property name="MNehmerF">
</Property>
<Property name="MNehmerG">
</Property>
<Property name="MNehmerH">
</Property>
<Property name="MNehmerI">
</Property>
<Property name="MNehmerK">
</Property>
<Property name="Mandant"/>
<Property name="Name"/>
<Property name="NrAusgleichskasse"/>
<Property name="Ort"/>
<Property name="Plz"/>
<Property name="PlzInklZusatz"/>
<Property name="SubNr"/>
<Property name="childsub">
</Property>
</Storage>
</Class>


<Class name="DBLohn.SD.UvgAdresse">
<Super>%Persistent,%XML.Adaptor,DBCore.MandantRel</Super>
<TimeChanged>62437,55776</TimeChanged>
<TimeCreated>62367,32190.12483</TimeCreated>
<Inheritance>right</Inheritance>

<Parameter name="XMLIGNOREINVALIDATTRIBUTE">
<Description><![CDATA[
Controls how to handle attributes that are unexpected.
-> If this parameter is 1 (the default), such attributes are ignored.
-> If it is 0, they are treated as errors, and import fails.]]></Description>
<Default>1</Default>
</Parameter>

<Parameter name="XMLIGNOREINVALIDTAG">
<Description><![CDATA[
Controls how to handle tags that are unexpected. 
-> If this parameter is 1, such tags are ignored. 
-> If it is 0 (the default), they are treated as errors, and import fails.]]></Description>
<Default>1</Default>
</Parameter>

<Parameter name="XMLIGNORENULL">
<Default>1</Default>
</Parameter>

<Property name="IdForExport">
<Type>%XML.Id</Type>
<Private>1</Private>
<Transient>1</Transient>
<Parameter name="XMLNAME" value="ID"/>
<Parameter name="XMLPROJECTION" value="ATTRIBUTE"/>
</Property>

<Property name="Mandant">
<Type>%String</Type>
</Property>

<ForeignKey name="FKMandant">
<Properties>Mandant</Properties>
<ReferencedClass>DBCore.Mandant</ReferencedClass>
<ReferencedKey>MandIdIndex</ReferencedKey>
</ForeignKey>

<Index name="MandantIdx">
<Properties>Mandant</Properties>
</Index>

<Property name="AdressNr">
<Description>
AdressNr</Description>
<Type>%Integer</Type>
</Property>

<Index name="MandantAdresseIdx">
<Properties>Mandant,AdressNr</Properties>
<Unique>1</Unique>
</Index>

<Property name="Name">
<Description>
Name</Description>
<Type>%String</Type>
<Parameter name="MAXLEN" value="50"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="Adresszeile1">
<Description>
Adresszeile1</Description>
<Type>%String</Type>
<Parameter name="MAXLEN" value="50"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="Adresszeile2">
<Description>
Adresszeile2</Description>
<Type>%String</Type>
<Parameter name="MAXLEN" value="50"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="Adresszeile3">
<Description>
Adresszeile3</Description>
<Type>%String</Type>
<Parameter name="MAXLEN" value="50"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="BetriebsNr">
<Description>
BertriebsNr</Description>
<Type>%String</Type>
<Parameter name="MAXLEN" value="50"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="SubNr">
<Description>
SubNr</Description>
<Type>%String</Type>
<Parameter name="MAXLEN" value="50"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="NrAusgleichskasse">
<Description>
NrAusgleichskasse</Description>
<Type>%String</Type>
<Parameter name="MAXLEN" value="50"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="Ort">
<Type>%Library.String</Type>
<Parameter name="MAXLEN" value="255"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="Plz">
<Type>%Library.String</Type>
<Parameter name="MAXLEN" value="15"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="PlzInklZusatz">
<Type>%Library.String</Type>
<Parameter name="MAXLEN" value="15"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="AdressNrBroker">
<Description>
AdressNrBroker</Description>
<Type>%String</Type>
</Property>

<Property name="Bemerkung1">
<Description>
Bemerkung1</Description>
<Type>%String</Type>
</Property>

<Property name="Bemerkung2">
<Description>
Bemerkung2</Description>
<Type>%String</Type>
</Property>

<Property name="UvgEintrag">
<Type>DBLohn.SD.Uvg</Type>
<Cardinality>children</Cardinality>
<Inverse>Adresse</Inverse>
<Relationship>1</Relationship>
<Parameter name="XMLPROJECTION" value="NONE"/>
</Property>

<Property name="Suva">
<Description>
SUVA</Description>
<Type>%Boolean</Type>
</Property>

<Property name="Mitarbeiter">
<Type>DBLohn.MitarbeiterVs</Type>
<Cardinality>many</Cardinality>
<Inverse>UvgAdresse</Inverse>
<Relationship>1</Relationship>
<Parameter name="XMLPROJECTION" value="NONE"/>
</Property>

<Property name="LohnabrechnungKopf">
<Type>DBLohn.LohnabrechnungKopf</Type>
<Cardinality>many</Cardinality>
<Inverse>UvgAdresse</Inverse>
<Relationship>1</Relationship>
<Parameter name="XMLPROJECTION" value="NONE"/>
</Property>

<Method name="GetNextNumber">
<ClassMethod>1</ClassMethod>
<FormalSpec>MandantOid:%String</FormalSpec>
<ReturnType>%Integer</ReturnType>
<Implementation><![CDATA[
	set nr = 0
	&sql(SELECT TOP 1 AdressNr INTO :nr 
			FROM DBLohn_SD.UvgAdresse
		 	WHERE Mandant = :MandantOid
		 	ORDER BY AdressNr DESC)
		 	
	if (SQLCODE'=0) {
		set nr = 0
	}
	Quit (nr+1)
]]></Implementation>
</Method>

<Method name="GetFirstAdressOid">
<ClassMethod>1</ClassMethod>
<FormalSpec>MandantOid:%String</FormalSpec>
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[
	set oid = ""
	&sql(SELECT TOP 1 ID INTO :oid 
			FROM DBLohn_SD.UvgAdresse
		 	WHERE Mandant = :MandantOid
		 	ORDER BY AdressNr)
		 	
	if (SQLCODE'=0) {
		set oid = ""
	}
	Quit oid
]]></Implementation>
</Method>

<Method name="GetOidByNummer">
<ClassMethod>1</ClassMethod>
<FormalSpec>MandantOid:%String,Adressnr:%Integer</FormalSpec>
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[
	set oid = ""
	&sql(SELECT ID INTO :oid 
			FROM DBLohn_SD.UvgAdresse
		 	WHERE Mandant = :MandantOid AND
		 		AdressNr = :Adressnr)
		 	
	if (SQLCODE'=0) {
		set oid = ""
	}
	Quit oid
]]></Implementation>
</Method>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
<DataLocation>^DBLohn.SD.UvgAdresseD</DataLocation>
<DefaultData>UvgAdresseDefaultData</DefaultData>
<IdLocation>^DBLohn.SD.UvgAdresseD</IdLocation>
<IndexLocation>^DBLohn.SD.UvgAdresseI</IndexLocation>
<StreamLocation>^DBLohn.SD.UvgAdresseS</StreamLocation>
<Data name="UvgAdresseDefaultData">
<Structure>listnode</Structure>
<Subscript/>
<Value name="1">
<Value>%%CLASSNAME</Value>
</Value>
<Value name="2">
<Value>Mandant</Value>
</Value>
<Value name="3">
<Value>AdressNr</Value>
</Value>
<Value name="4">
<Value>Name</Value>
</Value>
<Value name="5">
<Value>Adresszeile1</Value>
</Value>
<Value name="6">
<Value>Adresszeile2</Value>
</Value>
<Value name="7">
<Value>Adresszeile3</Value>
</Value>
<Value name="8">
<Value>BetriebsNr</Value>
</Value>
<Value name="9">
<Value>SubNr</Value>
</Value>
<Value name="10">
<Value>NrAusgleichskasse</Value>
</Value>
<Value name="11">
<Value>Ort</Value>
</Value>
<Value name="12">
<Value>Plz</Value>
</Value>
<Value name="13">
<Value>PlzInklZusatz</Value>
</Value>
<Value name="14">
<Value>AdressNrBroker</Value>
</Value>
<Value name="15">
<Value>Bemerkung1</Value>
</Value>
<Value name="16">
<Value>Bemerkung2</Value>
</Value>
<Value name="17">
<Value>Suva</Value>
</Value>
</Data>
<Property name="%%CLASSNAME">
</Property>
<Property name="AdressNr">
</Property>
<Property name="AdressNrBroker">
</Property>
<Property name="Adresszeile1">
</Property>
<Property name="Adresszeile2">
</Property>
<Property name="Adresszeile3">
</Property>
<Property name="Bemerkung1">
</Property>
<Property name="Bemerkung2">
</Property>
<Property name="BetriebsNr">
</Property>
<Property name="Mandant">
</Property>
<Property name="Name">
</Property>
<Property name="NrAusgleichskasse">
</Property>
<Property name="Ort">
</Property>
<Property name="Plz">
</Property>
<Property name="PlzInklZusatz">
</Property>
<Property name="SubNr">
</Property>
<Property name="Suva">
</Property>
</Storage>
</Class>


<Class name="DBLohn.SD.Uvgz">
<Super>%Persistent,%XML.Adaptor</Super>
<TimeChanged>62437,55776</TimeChanged>
<TimeCreated>62039,56449.892926</TimeCreated>
<Inheritance>right</Inheritance>

<Parameter name="XMLIGNOREINVALIDATTRIBUTE">
<Description><![CDATA[
Controls how to handle attributes that are unexpected.
-> If this parameter is 1 (the default), such attributes are ignored.
-> If it is 0, they are treated as errors, and import fails.]]></Description>
<Default>1</Default>
</Parameter>

<Parameter name="XMLIGNOREINVALIDTAG">
<Description><![CDATA[
Controls how to handle tags that are unexpected. 
-> If this parameter is 1, such tags are ignored. 
-> If it is 0 (the default), they are treated as errors, and import fails.]]></Description>
<Default>1</Default>
</Parameter>

<Parameter name="XMLIGNORENULL">
<Default>1</Default>
</Parameter>

<Property name="IdForExport">
<Type>%XML.Id</Type>
<Private>1</Private>
<Transient>1</Transient>
<Parameter name="XMLNAME" value="ID"/>
<Parameter name="XMLPROJECTION" value="ATTRIBUTE"/>
</Property>

<Property name="Adresse">
<Type>DBLohn.SD.UvgzAdresse</Type>
<Cardinality>parent</Cardinality>
<Inverse>UvgzEintrag</Inverse>
<Relationship>1</Relationship>
<Parameter name="XMLELEMENTREF" value="1"/>
<Parameter name="XMLNAME" value="Adresse"/>
<Parameter name="XMLPROJECTION" value="ATTRIBUTE"/>
<Parameter name="XMLREFERENCE" value="ID"/>
</Property>

<Property name="AbDatum">
<Description>
AbDatum</Description>
<Type>%Date</Type>
</Property>

<Property name="MNehmerA">
<Description>
MNehmerA</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FNehmerA">
<Description>
FNehmerA</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MGeberA">
<Description>
MGeberA</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FGeberA">
<Description>
FGeberA</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MHoechstA">
<Description>
MHoechstA</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FHoechstA">
<Description>
FHoechstA</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MNehmerB">
<Description>
MNehmerB</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FNehmerB">
<Description>
FNehmerB</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MGeberB">
<Description>
MGeberB</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FGeberB">
<Description>
FGeberB</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MHoechstB">
<Description>
MHoechstB</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FHoechstB">
<Description>
FHoechstB</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MNehmerC">
<Description>
MNehmerC</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FNehmerC">
<Description>
FNehmerC</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MGeberC">
<Description>
MGeberC</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FGeberC">
<Description>
FGeberC</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MHoechstC">
<Description>
MHoechstC</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FHoechstC">
<Description>
FHoechstC</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MNehmerD">
<Description>
MNehmerD</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FNehmerD">
<Description>
FNehmerD</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MGeberD">
<Description>
MGeberD</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FGeberD">
<Description>
FGeberD</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MHoechstD">
<Description>
MHoechstD</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FHoechstD">
<Description>
FHoechstD</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MNehmerE">
<Description>
MNehmerE</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FNehmerE">
<Description>
FNehmerE</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MGeberE">
<Description>
MGeberE</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FGeberE">
<Description>
FGeberE</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MHoechstE">
<Description>
MHoechstE</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FHoechstE">
<Description>
FHoechstE</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MNehmerF">
<Description>
MNehmerF</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FNehmerF">
<Description>
FNehmerF</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MGeberF">
<Description>
MGeberF</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FGeberF">
<Description>
FGeberF</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MHoechstF">
<Description>
MHoechstF</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FHoechstF">
<Description>
FHoechstF</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MNehmerG">
<Description>
MNehmerG</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FNehmerG">
<Description>
FNehmerG</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MGeberG">
<Description>
MGeberG</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FGeberG">
<Description>
FGeberG</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MHoechstG">
<Description>
MHoechstG</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FHoechstG">
<Description>
FHoechstG</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MNehmerH">
<Description>
MNehmerH</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FNehmerH">
<Description>
FNehmerH</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MGeberH">
<Description>
MGeberH</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FGeberH">
<Description>
FGeberH</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MHoechstH">
<Description>
MHoechstH</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FHoechstH">
<Description>
FHoechstH</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MNehmerI">
<Description>
MNehmerI</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FNehmerI">
<Description>
FNehmerI</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MGeberI">
<Description>
MGeberI</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FGeberI">
<Description>
FGeberI</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MHoechstI">
<Description>
MHoechstI</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FHoechstI">
<Description>
FHoechstI</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MNehmerK">
<Description>
MNehmerK</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FNehmerK">
<Description>
FNehmerK</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MGeberK">
<Description>
MGeberK</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FGeberK">
<Description>
FGeberK</Description>
<Type>%Decimal</Type>
</Property>

<Property name="MHoechstK">
<Description>
MHoechstK</Description>
<Type>%Decimal</Type>
</Property>

<Property name="FHoechstK">
<Description>
FHoechstK</Description>
<Type>%Decimal</Type>
</Property>

<Method name="GetOidByAbDatumOnAdresse">
<ClassMethod>1</ClassMethod>
<FormalSpec>UvgzAdressOid:%String,AbDatum:%Date</FormalSpec>
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[
	set id = ""
	&sql(SELECT TOP 1 ID INTO :id 
			FROM DBLohn_SD.Uvgz
		 	WHERE Adresse = :UvgzAdressOid AND 
		 			AbDatum <= TODATE(:AbDatum)
		 	ORDER BY AbDatum DESC)
		 	
	if (SQLCODE'=0) {
		set id = ""
	}
	Quit id
]]></Implementation>
</Method>

<Method name="GetNextOidByAbDatumOnAdresse">
<ClassMethod>1</ClassMethod>
<FormalSpec>UvgzAdressOid:%String,AbDatum:%Date</FormalSpec>
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[
	set id = ""
	&sql(SELECT TOP 1 ID INTO :id 
			FROM DBLohn_SD.Uvgz
		 	WHERE Adresse = :UvgzAdressOid AND 
		 			AbDatum > TODATE(:AbDatum)
		 	ORDER BY AbDatum)
		 	
	if (SQLCODE'=0) {
		set id = ""
	}
	Quit id
]]></Implementation>
</Method>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
<DataLocation>^DBLohn.SD.UvgzD</DataLocation>
<DefaultData>UvgzDefaultData</DefaultData>
<IdLocation>^DBLohn.SD.UvgzD</IdLocation>
<IndexLocation>^DBLohn.SD.UvgzI</IndexLocation>
<StreamLocation>^DBLohn.SD.UvgzS</StreamLocation>
<Data name="UvgzDefaultData">
<Structure>listnode</Structure>
<Subscript/>
<Value name="1">
<Value>%%CLASSNAME</Value>
</Value>
<Value name="2">
<Value>Jahr</Value>
</Value>
<Value name="3">
<Value>AdressNr</Value>
</Value>
<Value name="4">
<Value>Name</Value>
</Value>
<Value name="5">
<Value>Adresszeile1</Value>
</Value>
<Value name="6">
<Value>Adresszeile2</Value>
</Value>
<Value name="7">
<Value>Adresszeile3</Value>
</Value>
<Value name="8">
<Value>BetriebsNr</Value>
</Value>
<Value name="9">
<Value>SubNr</Value>
</Value>
<Value name="10">
<Value>NrAusgleichskasse</Value>
</Value>
<Value name="11">
<Value>Mandant</Value>
</Value>
<Value name="12">
<Value>Ort</Value>
</Value>
<Value name="13">
<Value>Plz</Value>
</Value>
<Value name="14">
<Value>PlzInklZusatz</Value>
</Value>
<Value name="15">
<Value>AdressNrBroker</Value>
</Value>
<Value name="16">
<Value>Bemerkung1</Value>
</Value>
<Value name="17">
<Value>Bemerkung2</Value>
</Value>
<Value name="18">
<Value>Suva</Value>
</Value>
<Value name="19">
<Value>MNehmerA</Value>
</Value>
<Value name="20">
<Value>FNehmerA</Value>
</Value>
<Value name="21">
<Value>MGeberA</Value>
</Value>
<Value name="22">
<Value>FGeberA</Value>
</Value>
<Value name="23">
<Value>MHoechstA</Value>
</Value>
<Value name="24">
<Value>FHoechstA</Value>
</Value>
<Value name="25">
<Value>MNehmerB</Value>
</Value>
<Value name="26">
<Value>FNehmerB</Value>
</Value>
<Value name="27">
<Value>MGeberB</Value>
</Value>
<Value name="28">
<Value>FGeberB</Value>
</Value>
<Value name="29">
<Value>MHoechstB</Value>
</Value>
<Value name="30">
<Value>FHoechstB</Value>
</Value>
<Value name="31">
<Value>MNehmerC</Value>
</Value>
<Value name="32">
<Value>FNehmerC</Value>
</Value>
<Value name="33">
<Value>MGeberC</Value>
</Value>
<Value name="34">
<Value>FGeberC</Value>
</Value>
<Value name="35">
<Value>MHoechstC</Value>
</Value>
<Value name="36">
<Value>FHoechstC</Value>
</Value>
<Value name="37">
<Value>MNehmerD</Value>
</Value>
<Value name="38">
<Value>FNehmerD</Value>
</Value>
<Value name="39">
<Value>MGeberD</Value>
</Value>
<Value name="40">
<Value>FGeberD</Value>
</Value>
<Value name="41">
<Value>MHoechstD</Value>
</Value>
<Value name="42">
<Value>FHoechstD</Value>
</Value>
<Value name="43">
<Value>MNehmerE</Value>
</Value>
<Value name="44">
<Value>FNehmerE</Value>
</Value>
<Value name="45">
<Value>MGeberE</Value>
</Value>
<Value name="46">
<Value>FGeberE</Value>
</Value>
<Value name="47">
<Value>MHoechstE</Value>
</Value>
<Value name="48">
<Value>FHoechstE</Value>
</Value>
<Value name="49">
<Value>MNehmerF</Value>
</Value>
<Value name="50">
<Value>FNehmerF</Value>
</Value>
<Value name="51">
<Value>MGeberF</Value>
</Value>
<Value name="52">
<Value>FGeberF</Value>
</Value>
<Value name="53">
<Value>MHoechstF</Value>
</Value>
<Value name="54">
<Value>FHoechstF</Value>
</Value>
<Value name="55">
<Value>MNehmerG</Value>
</Value>
<Value name="56">
<Value>FNehmerG</Value>
</Value>
<Value name="57">
<Value>MGeberG</Value>
</Value>
<Value name="58">
<Value>FGeberG</Value>
</Value>
<Value name="59">
<Value>MHoechstG</Value>
</Value>
<Value name="60">
<Value>FHoechstG</Value>
</Value>
<Value name="61">
<Value>MNehmerH</Value>
</Value>
<Value name="62">
<Value>FNehmerH</Value>
</Value>
<Value name="63">
<Value>MGeberH</Value>
</Value>
<Value name="64">
<Value>FGeberH</Value>
</Value>
<Value name="65">
<Value>MHoechstH</Value>
</Value>
<Value name="66">
<Value>FHoechstH</Value>
</Value>
<Value name="67">
<Value>MNehmerI</Value>
</Value>
<Value name="68">
<Value>FNehmerI</Value>
</Value>
<Value name="69">
<Value>MGeberI</Value>
</Value>
<Value name="70">
<Value>FGeberI</Value>
</Value>
<Value name="71">
<Value>MHoechstI</Value>
</Value>
<Value name="72">
<Value>FHoechstI</Value>
</Value>
<Value name="73">
<Value>MNehmerK</Value>
</Value>
<Value name="74">
<Value>FNehmerK</Value>
</Value>
<Value name="75">
<Value>MGeberK</Value>
</Value>
<Value name="76">
<Value>FGeberK</Value>
</Value>
<Value name="77">
<Value>MHoechstK</Value>
</Value>
<Value name="78">
<Value>FHoechstK</Value>
</Value>
<Value name="79">
<Value>AbDatum</Value>
</Value>
</Data>
<Property name="%%CLASSNAME">
</Property>
<Property name="AbDatum">
</Property>
<Property name="AdressNr"/>
<Property name="AdressNrBroker"/>
<Property name="Adresse">
</Property>
<Property name="Adresszeile1"/>
<Property name="Adresszeile2"/>
<Property name="Adresszeile3"/>
<Property name="Bemerkung1"/>
<Property name="Bemerkung2"/>
<Property name="BetriebsNr"/>
<Property name="FGeberA">
</Property>
<Property name="FGeberB">
</Property>
<Property name="FGeberC">
</Property>
<Property name="FGeberD">
</Property>
<Property name="FGeberE">
</Property>
<Property name="FGeberF">
</Property>
<Property name="FGeberG">
</Property>
<Property name="FGeberH">
</Property>
<Property name="FGeberI">
</Property>
<Property name="FGeberK">
</Property>
<Property name="FHoechstA">
</Property>
<Property name="FHoechstB">
</Property>
<Property name="FHoechstC">
</Property>
<Property name="FHoechstD">
</Property>
<Property name="FHoechstE">
</Property>
<Property name="FHoechstF">
</Property>
<Property name="FHoechstG">
</Property>
<Property name="FHoechstH">
</Property>
<Property name="FHoechstI">
</Property>
<Property name="FHoechstK">
</Property>
<Property name="FNehmerA">
</Property>
<Property name="FNehmerB">
</Property>
<Property name="FNehmerC">
</Property>
<Property name="FNehmerD">
</Property>
<Property name="FNehmerE">
</Property>
<Property name="FNehmerF">
</Property>
<Property name="FNehmerG">
</Property>
<Property name="FNehmerH">
</Property>
<Property name="FNehmerI">
</Property>
<Property name="FNehmerK">
</Property>
<Property name="Jahr"/>
<Property name="MGeberA">
</Property>
<Property name="MGeberB">
</Property>
<Property name="MGeberC">
</Property>
<Property name="MGeberD">
</Property>
<Property name="MGeberE">
</Property>
<Property name="MGeberF">
</Property>
<Property name="MGeberG">
</Property>
<Property name="MGeberH">
</Property>
<Property name="MGeberI">
</Property>
<Property name="MGeberK">
</Property>
<Property name="MHoechstA">
</Property>
<Property name="MHoechstB">
</Property>
<Property name="MHoechstC">
</Property>
<Property name="MHoechstD">
</Property>
<Property name="MHoechstE">
</Property>
<Property name="MHoechstF">
</Property>
<Property name="MHoechstG">
</Property>
<Property name="MHoechstH">
</Property>
<Property name="MHoechstI">
</Property>
<Property name="MHoechstK">
</Property>
<Property name="MNehmerA">
</Property>
<Property name="MNehmerB">
</Property>
<Property name="MNehmerC">
</Property>
<Property name="MNehmerD">
</Property>
<Property name="MNehmerE">
</Property>
<Property name="MNehmerF">
</Property>
<Property name="MNehmerG">
</Property>
<Property name="MNehmerH">
</Property>
<Property name="MNehmerI">
</Property>
<Property name="MNehmerK">
</Property>
<Property name="Mandant"/>
<Property name="Name"/>
<Property name="NrAusgleichskasse"/>
<Property name="Ort"/>
<Property name="Plz"/>
<Property name="PlzInklZusatz"/>
<Property name="SubNr"/>
<Property name="Suva"/>
<Property name="childsub">
</Property>
</Storage>
</Class>


<Class name="DBLohn.SD.UvgzAdresse">
<Super>%Persistent,%XML.Adaptor,DBCore.MandantRel</Super>
<TimeChanged>62437,55776</TimeChanged>
<TimeCreated>62367,62181.320821</TimeCreated>
<Inheritance>right</Inheritance>

<Parameter name="XMLIGNOREINVALIDATTRIBUTE">
<Description><![CDATA[
Controls how to handle attributes that are unexpected.
-> If this parameter is 1 (the default), such attributes are ignored.
-> If it is 0, they are treated as errors, and import fails.]]></Description>
<Default>1</Default>
</Parameter>

<Parameter name="XMLIGNOREINVALIDTAG">
<Description><![CDATA[
Controls how to handle tags that are unexpected. 
-> If this parameter is 1, such tags are ignored. 
-> If it is 0 (the default), they are treated as errors, and import fails.]]></Description>
<Default>1</Default>
</Parameter>

<Parameter name="XMLIGNORENULL">
<Default>1</Default>
</Parameter>

<Property name="IdForExport">
<Type>%XML.Id</Type>
<Private>1</Private>
<Transient>1</Transient>
<Parameter name="XMLNAME" value="ID"/>
<Parameter name="XMLPROJECTION" value="ATTRIBUTE"/>
</Property>

<Property name="Mandant">
<Type>%String</Type>
</Property>

<ForeignKey name="FKMandant">
<Properties>Mandant</Properties>
<ReferencedClass>DBCore.Mandant</ReferencedClass>
<ReferencedKey>MandIdIndex</ReferencedKey>
</ForeignKey>

<Index name="MandantIdx">
<Properties>Mandant</Properties>
</Index>

<Property name="AdressNr">
<Description>
AdressNr</Description>
<Type>%Integer</Type>
</Property>

<Index name="MandantAdresseIdx">
<Properties>Mandant,AdressNr</Properties>
<Unique>1</Unique>
</Index>

<Property name="Name">
<Description>
Name</Description>
<Type>%String</Type>
<Parameter name="MAXLEN" value="50"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="Adresszeile1">
<Description>
Adresszeile1</Description>
<Type>%String</Type>
<Parameter name="MAXLEN" value="50"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="Adresszeile2">
<Description>
Adresszeile2</Description>
<Type>%String</Type>
<Parameter name="MAXLEN" value="50"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="Adresszeile3">
<Description>
Adresszeile3</Description>
<Type>%String</Type>
<Parameter name="MAXLEN" value="50"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="BetriebsNr">
<Description>
BertriebsNr</Description>
<Type>%String</Type>
<Parameter name="MAXLEN" value="50"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="SubNr">
<Description>
SubNr</Description>
<Type>%String</Type>
<Parameter name="MAXLEN" value="50"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="NrAusgleichskasse">
<Description>
NrAusgleichskasse</Description>
<Type>%String</Type>
<Parameter name="MAXLEN" value="50"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="Ort">
<Type>%Library.String</Type>
<Parameter name="MAXLEN" value="255"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="Plz">
<Type>%Library.String</Type>
<Parameter name="MAXLEN" value="15"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="PlzInklZusatz">
<Type>%Library.String</Type>
<Parameter name="MAXLEN" value="15"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="AdressNrBroker">
<Description>
AdressNrBroker</Description>
<Type>%String</Type>
</Property>

<Property name="Bemerkung1">
<Description>
Bemerkung1</Description>
<Type>%String</Type>
</Property>

<Property name="Bemerkung2">
<Description>
Bemerkung2</Description>
<Type>%String</Type>
</Property>

<Property name="UvgzEintrag">
<Type>DBLohn.SD.Uvgz</Type>
<Cardinality>children</Cardinality>
<Inverse>Adresse</Inverse>
<Relationship>1</Relationship>
<Parameter name="XMLPROJECTION" value="NONE"/>
</Property>

<Property name="Suva">
<Description>
SUVA</Description>
<Type>%Boolean</Type>
</Property>

<Property name="Mitarbeiter">
<Type>DBLohn.MitarbeiterVs</Type>
<Cardinality>many</Cardinality>
<Inverse>UvgzAdresse</Inverse>
<Relationship>1</Relationship>
<Parameter name="XMLPROJECTION" value="NONE"/>
</Property>

<Property name="LohnabrechnungKopf">
<Type>DBLohn.LohnabrechnungKopf</Type>
<Cardinality>many</Cardinality>
<Inverse>UvgzAdresse</Inverse>
<Relationship>1</Relationship>
<Parameter name="XMLPROJECTION" value="NONE"/>
</Property>

<Method name="GetNextNumber">
<ClassMethod>1</ClassMethod>
<FormalSpec>MandantOid:%String</FormalSpec>
<ReturnType>%Integer</ReturnType>
<Implementation><![CDATA[
	set nr = 0
	&sql(SELECT TOP 1 AdressNr INTO :nr 
			FROM DBLohn_SD.UvgzAdresse
		 	WHERE Mandant = :MandantOid
		 	ORDER BY AdressNr DESC)
		 	
	if (SQLCODE'=0) {
		set nr = 0
	}
	Quit (nr+1)
]]></Implementation>
</Method>

<Method name="GetFirstAdressOid">
<ClassMethod>1</ClassMethod>
<FormalSpec>MandantOid:%String</FormalSpec>
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[
	set oid = ""
	&sql(SELECT TOP 1 ID INTO :oid 
			FROM DBLohn_SD.UvgzAdresse
		 	WHERE Mandant = :MandantOid
		 	ORDER BY AdressNr)
		 	
	if (SQLCODE'=0) {
		set oid = ""
	}
	Quit oid
]]></Implementation>
</Method>

<Method name="GetOidByNummer">
<ClassMethod>1</ClassMethod>
<FormalSpec>MandantOid:%String,Adressnr:%Integer</FormalSpec>
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[
	set oid = ""
	&sql(SELECT ID INTO :oid 
			FROM DBLohn_SD.UvgzAdresse
		 	WHERE Mandant = :MandantOid AND
		 		AdressNr = :Adressnr)
		 	
	if (SQLCODE'=0) {
		set oid = ""
	}
	Quit oid
]]></Implementation>
</Method>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
<DataLocation>^DBLohn.SD.UvgzAdresseD</DataLocation>
<DefaultData>UvgzAdresseDefaultData</DefaultData>
<IdLocation>^DBLohn.SD.UvgzAdresseD</IdLocation>
<IndexLocation>^DBLohn.SD.UvgzAdresseI</IndexLocation>
<StreamLocation>^DBLohn.SD.UvgzAdresseS</StreamLocation>
<Data name="UvgzAdresseDefaultData">
<Structure>listnode</Structure>
<Subscript/>
<Value name="1">
<Value>%%CLASSNAME</Value>
</Value>
<Value name="2">
<Value>Mandant</Value>
</Value>
<Value name="3">
<Value>AdressNr</Value>
</Value>
<Value name="4">
<Value>Name</Value>
</Value>
<Value name="5">
<Value>Adresszeile1</Value>
</Value>
<Value name="6">
<Value>Adresszeile2</Value>
</Value>
<Value name="7">
<Value>Adresszeile3</Value>
</Value>
<Value name="8">
<Value>BetriebsNr</Value>
</Value>
<Value name="9">
<Value>SubNr</Value>
</Value>
<Value name="10">
<Value>NrAusgleichskasse</Value>
</Value>
<Value name="11">
<Value>Ort</Value>
</Value>
<Value name="12">
<Value>Plz</Value>
</Value>
<Value name="13">
<Value>PlzInklZusatz</Value>
</Value>
<Value name="14">
<Value>AdressNrBroker</Value>
</Value>
<Value name="15">
<Value>Bemerkung1</Value>
</Value>
<Value name="16">
<Value>Bemerkung2</Value>
</Value>
<Value name="17">
<Value>Suva</Value>
</Value>
</Data>
<Property name="%%CLASSNAME">
</Property>
<Property name="AdressNr">
</Property>
<Property name="AdressNrBroker">
</Property>
<Property name="Adresszeile1">
</Property>
<Property name="Adresszeile2">
</Property>
<Property name="Adresszeile3">
</Property>
<Property name="Bemerkung1">
</Property>
<Property name="Bemerkung2">
</Property>
<Property name="BetriebsNr">
</Property>
<Property name="Mandant">
</Property>
<Property name="Name">
</Property>
<Property name="NrAusgleichskasse">
</Property>
<Property name="Ort">
</Property>
<Property name="Plz">
</Property>
<Property name="PlzInklZusatz">
</Property>
<Property name="SubNr">
</Property>
<Property name="Suva">
</Property>
</Storage>
</Class>


<Class name="DBLohn.SD.VerrechnungEinh">
<Super>%Persistent,%XML.Adaptor,DBCore.MandantRel</Super>
<TimeChanged>62437,55776</TimeChanged>
<TimeCreated>61975,34149.554477</TimeCreated>
<Inheritance>right</Inheritance>

<Parameter name="XMLIGNOREINVALIDATTRIBUTE">
<Description><![CDATA[
Controls how to handle attributes that are unexpected.
-> If this parameter is 1 (the default), such attributes are ignored.
-> If it is 0, they are treated as errors, and import fails.]]></Description>
<Default>1</Default>
</Parameter>

<Parameter name="XMLIGNOREINVALIDTAG">
<Description><![CDATA[
Controls how to handle tags that are unexpected. 
-> If this parameter is 1, such tags are ignored. 
-> If it is 0 (the default), they are treated as errors, and import fails.]]></Description>
<Default>1</Default>
</Parameter>

<Parameter name="XMLIGNORENULL">
<Default>1</Default>
</Parameter>

<Property name="IdForExport">
<Type>%XML.Id</Type>
<Private>1</Private>
<Transient>1</Transient>
<Parameter name="XMLNAME" value="ID"/>
<Parameter name="XMLPROJECTION" value="ATTRIBUTE"/>
</Property>

<Property name="Code">
<Type>%Library.Integer</Type>
<Required>1</Required>
<Parameter name="MAXVAL" value="999"/>
<Parameter name="MINVAL" value="1"/>
</Property>

<Property name="Bezeichnung">
<Type>%String</Type>
<Collection>array</Collection>
<Parameter name="MAXLEN" value="255"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="Kurztext">
<Type>%String</Type>
<Collection>array</Collection>
<Parameter name="MAXLEN" value="255"/>
<Parameter name="TRUNCATE" value="1"/>
</Property>

<Property name="Mandant">
<Type>%String</Type>
</Property>

<ForeignKey name="FKMandant">
<Properties>Mandant</Properties>
<ReferencedClass>DBCore.Mandant</ReferencedClass>
<ReferencedKey>MandIdIndex</ReferencedKey>
</ForeignKey>

<Index name="MandantIdx">
<Properties>Mandant</Properties>
</Index>

<Index name="CodeIndex">
<Properties>Mandant,Code</Properties>
<Unique>1</Unique>
</Index>

<Property name="Lohnart">
<Type>DBLohn.Lohnart</Type>
<Cardinality>many</Cardinality>
<Inverse>Verrechnungseinheit</Inverse>
<Relationship>1</Relationship>
<Parameter name="XMLPROJECTION" value="NONE"/>
</Property>

<Method name="GetBezeichnung">
<FormalSpec>MandOid:%String,Lang:%String</FormalSpec>
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[	Quit ##Class(DBUtils.StringUtils).GetText(..Bezeichnung, Lang, MandOid)
]]></Implementation>
</Method>

<Method name="GetBezeichnungClass">
<ClassMethod>1</ClassMethod>
<FormalSpec>myID:%String,MandOid:%String,Lang:%String</FormalSpec>
<ReturnType>%String</ReturnType>
<SqlProc>1</SqlProc>
<Implementation><![CDATA[
	set text = ""
	if (myID'="") {
		Set rs=##Class(DBLohn.SD.VerrechnungEinh).%OpenId(myID)
		set text = rs.GetBezeichnung(MandOid, Lang)
	}
	Quit text
]]></Implementation>
</Method>

<Method name="SetBezeichnung">
<FormalSpec>MandOid:%String,Lang:%String,Value:%String</FormalSpec>
<Implementation><![CDATA[	Do ##class(DBUtils.StringUtils).SetText(..Bezeichnung, Value, Lang, MandOid)
]]></Implementation>
</Method>

<Method name="GetKurztext">
<FormalSpec>MandOid:%String,Lang:%String</FormalSpec>
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[	Quit ##Class(DBUtils.StringUtils).GetText(..Kurztext, Lang, MandOid)
]]></Implementation>
</Method>

<Method name="GetKurztextClass">
<ClassMethod>1</ClassMethod>
<FormalSpec>myID:%String,MandOid:%String,Lang:%String</FormalSpec>
<ReturnType>%String</ReturnType>
<SqlProc>1</SqlProc>
<Implementation><![CDATA[
	set text = ""
	if (myID'="") {
		Set rs=##Class(DBLohn.SD.VerrechnungEinh).%OpenId(myID)
		set text = rs.GetKurztext(MandOid, Lang)
	}
	Quit text
]]></Implementation>
</Method>

<Method name="SetKurztext">
<FormalSpec>MandOid:%String,Lang:%String,Value:%String</FormalSpec>
<Implementation><![CDATA[	Do ##class(DBUtils.StringUtils).SetText(..Kurztext, Value, Lang, MandOid)
]]></Implementation>
</Method>

<Method name="GetCodeByOidClass">
<ClassMethod>1</ClassMethod>
<FormalSpec>myID:%String</FormalSpec>
<ReturnType>%Integer</ReturnType>
<SqlProc>1</SqlProc>
<Implementation><![CDATA[
	set code = ""
	&sql(SELECT Code into :code FROM DBLohn_SD.VerrechnungEinh WHERE ID = :myID)
	if (SQLCODE'=0) {
		set code = ""
	}
	Quit code
]]></Implementation>
</Method>

<Method name="GetOidByCode">
<ClassMethod>1</ClassMethod>
<FormalSpec>MandOid:%String,Code:%Integer</FormalSpec>
<ReturnType>%String</ReturnType>
<SqlProc>1</SqlProc>
<Implementation><![CDATA[
	set myID = ""
	&sql(SELECT ID into :myID FROM DBLohn_SD.VerrechnungEinh WHERE Mandant=:MandOid AND Code=:Code)
	if (SQLCODE'=0) {
		set myID = ""
	}
	Quit myID
]]></Implementation>
</Method>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
<DataLocation>^DBLohn.SD.VerrechnungEinhD</DataLocation>
<DefaultData>VerrechnungEinhDefaultData</DefaultData>
<IdLocation>^DBLohn.SD.VerrechnungEinhD</IdLocation>
<IndexLocation>^DBLohn.SD.VerrechnungEinhI</IndexLocation>
<StreamLocation>^DBLohn.SD.VerrechnungEinhS</StreamLocation>
<Data name="Bezeichnung">
<Attribute>Bezeichnung</Attribute>
<Structure>subnode</Structure>
<Subscript>"Bezeichnung"</Subscript>
</Data>
<Data name="Kurztext">
<Attribute>Kurztext</Attribute>
<Structure>subnode</Structure>
<Subscript>"Kurztext"</Subscript>
</Data>
<Data name="VerrechnungEinhDefaultData">
<Structure>listnode</Structure>
<Subscript/>
<Value name="1">
<Value>%%CLASSNAME</Value>
</Value>
<Value name="2">
<Value>Code</Value>
</Value>
<Value name="3">
<Value>KurzText</Value>
</Value>
<Value name="4">
<Value>AktMandant</Value>
</Value>
<Value name="5">
<Value>Mandant</Value>
</Value>
</Data>
<Property name="%%CLASSNAME">
</Property>
<Property name="AktMandant"/>
<Property name="Code">
</Property>
<Property name="KurzText"/>
<Property name="Mandant">
</Property>
</Storage>
</Class>
</Export>
