BzhEssenGGmbH/Export/DatevExporter mit Fehlkontakten
This commit is contained in:
@@ -38,16 +38,6 @@ namespace BzhEssenGGmbH.Export
|
|||||||
sb.AppendLine("Betrag;Konto;Gegenkonto;Belegdatum;Rechnungsnummer;Buchungstext;Kostenstelle");
|
sb.AppendLine("Betrag;Konto;Gegenkonto;Belegdatum;Rechnungsnummer;Buchungstext;Kostenstelle");
|
||||||
//sb.AppendLine("Datum;Text;Belegnr.;Betrag;Konto;Gegenkonto;Kostenstelle");
|
//sb.AppendLine("Datum;Text;Belegnr.;Betrag;Konto;Gegenkonto;Kostenstelle");
|
||||||
|
|
||||||
//sb.AppendLine("Umsatz (ohne Soll/Haben-Kz);Soll/Haben-Kennzeichen;WKZ Umsatz;Kurs;Basis-Umsatz;WKZ Basis-Umsatz;Konto;Gegenkonto (ohne BU-Schlüssel);BU-Schlüssel;Belegdatum;Belegfeld 1;Belegfeld 2;Skonto;Buchungstext;Postensperre;Diverse Adressnummer;Geschäftspartnerbank;Sachverhalt;Zinssperre;Beleglink;" +
|
|
||||||
// "Beleginfo - Art 1;Beleginfo - Inhalt 1;Beleginfo - Art 2;Beleginfo - Inhalt 2;Beleginfo - Art 3;Beleginfo - Inhalt 3;Beleginfo - Art 4;Beleginfo - Inhalt 4;Beleginfo - Art 5;Beleginfo - Inhalt 5;Beleginfo - Art 6;Beleginfo - Inhalt 6;Beleginfo - Art 7;Beleginfo - Inhalt 7;Beleginfo - Art 8;Beleginfo - Inhalt 8;" +
|
|
||||||
// "KOST1 - Kostenstelle;KOST2 - Kostenstelle;Kost-Menge;EU-Land u. UStID (Bestimmung);EU-Steuersatz (Bestimmung);Abw. Versteuerungsart;Sachverhalt L+L;Funktionsergänzung L+L;BU 49 Hauptfunktionstyp;BU 49 Hauptfunktionsnummer;BU 49 Funktionsergänzung;" +
|
|
||||||
// "Zusatzinformation - Art 1;Zusatzinformation- Inhalt 1;Zusatzinformation - Art 2;Zusatzinformation- Inhalt 2;Zusatzinformation - Art 3;Zusatzinformation- Inhalt 3;Zusatzinformation - Art 4;Zusatzinformation- Inhalt 4;Zusatzinformation - Art 5;Zusatzinformation- Inhalt 5;Zusatzinformation - Art 6;" +
|
|
||||||
// "Zusatzinformation- Inhalt 6;Zusatzinformation - Art 7;Zusatzinformation- Inhalt 7;Zusatzinformation - Art 8;Zusatzinformation- Inhalt 8;Zusatzinformation - Art 9;Zusatzinformation- Inhalt 9;Zusatzinformation - Art 10;Zusatzinformation- Inhalt 10;Zusatzinformation - Art 11;Zusatzinformation- Inhalt 11;Zusatzinformation - Art 12;Zusatzinformation- Inhalt 12;" +
|
|
||||||
// "Zusatzinformation - Art 13;Zusatzinformation- Inhalt 13;Zusatzinformation - Art 14;Zusatzinformation- Inhalt 14;Zusatzinformation - Art 15;Zusatzinformation- Inhalt 15;Zusatzinformation - Art 16;Zusatzinformation- Inhalt 16;Zusatzinformation - Art 17;Zusatzinformation- Inhalt 17;Zusatzinformation - Art 18;Zusatzinformation- Inhalt 18;" +
|
|
||||||
// "Zusatzinformation - Art 19;Zusatzinformation- Inhalt 19;Zusatzinformation - Art 20;Zusatzinformation- Inhalt 20;Stück;Gewicht;Zahlweise;Forderungsart;Veranlagungsjahr;Zugeordnete Fälligkeit;Skontotyp;Auftragsnummer;Buchungstyp (Anzahlungen);USt-Schlüssel (Anzahlungen);EU-Land (Anzahlungen);Sachverhalt L+L (Anzahlungen);EU-Steuersatz (Anzahlungen);" +
|
|
||||||
// "Erlöskonto (Anzahlungen);Herkunft-Kz;Buchungs GUID;KOST-Datum;SEPA-Mandatsreferenz;Skontosperre;Gesellschaftername;Beteiligtennummer;Identifikationsnummer;Zeichnernummer;Postensperre bis;Bezeichnung SoBil-Sachverhalt;Kennzeichen SoBil-Buchung;Festschreibung;Leistungsdatum;Datum Zuord. Steuerperiode;Fälligkeit;Generalumkehr (GU);Steuersatz;Land;" +
|
|
||||||
// "Abrechnungsreferenz;BVV-Position;EU-Land u. UStID (Ursprung);EU-Steuersatz (Ursprung)");
|
|
||||||
|
|
||||||
var s = GetMonatlicheBetraegeString(date);
|
var s = GetMonatlicheBetraegeString(date);
|
||||||
if (!String.IsNullOrWhiteSpace(s))
|
if (!String.IsNullOrWhiteSpace(s))
|
||||||
{
|
{
|
||||||
@@ -185,7 +175,15 @@ ib.InvoiceId
|
|||||||
private static String GetMonatlicheBetraegeLvrLwlSql(DateTime date)
|
private static String GetMonatlicheBetraegeLvrLwlSql(DateTime date)
|
||||||
{
|
{
|
||||||
String sql = @"
|
String sql = @"
|
||||||
SELECT
|
SELECT
|
||||||
|
sum(qry.Betrag),
|
||||||
|
qry.DebitorNumber,
|
||||||
|
qry.CostCenter,
|
||||||
|
qry.Verwendung,
|
||||||
|
qry.Oid
|
||||||
|
FROM
|
||||||
|
(
|
||||||
|
(SELECT
|
||||||
IF(crpRateFactor.`CostRateValue` is null, ROUND((sr.`GeleisteteFLM` / 60) * (SELECT crp.`CostRateValue` FROM `costrateperiod` crp WHERE crp.`ObjectTid` = 22 AND crp.`CostRateType` = 0 AND crp.`ObjectOid` = cb2sc.`CostBearerOid` AND (crp.`EndDate` is null or crp.`EndDate` > ':Monat_Start') order by IF(crp.`EndDate` is null, MAKEDATE(9999,365),crp.`EndDate`) LIMIT 1 )),
|
IF(crpRateFactor.`CostRateValue` is null, ROUND((sr.`GeleisteteFLM` / 60) * (SELECT crp.`CostRateValue` FROM `costrateperiod` crp WHERE crp.`ObjectTid` = 22 AND crp.`CostRateType` = 0 AND crp.`ObjectOid` = cb2sc.`CostBearerOid` AND (crp.`EndDate` is null or crp.`EndDate` > ':Monat_Start') order by IF(crp.`EndDate` is null, MAKEDATE(9999,365),crp.`EndDate`) LIMIT 1 )),
|
||||||
ROUND(ROUND((sr.`GeleisteteFLM` / 60), 2) * (SELECT crp.`CostRateValue` FROM `costrateperiod` crp WHERE crp.`ObjectTid` = 22 AND crp.`CostRateType` = 0 AND crp.`ObjectOid` = cb2sc.`CostBearerOid` AND (crp.`EndDate` is null or crp.`EndDate` > ':Monat_Start') order by IF(crp.`EndDate` is null, MAKEDATE(9999,365),crp.`EndDate`) LIMIT 1 ) * ((100 + crpRateFactor.`CostRateValue`)/100), 2)) AS 'Betrag',
|
ROUND(ROUND((sr.`GeleisteteFLM` / 60), 2) * (SELECT crp.`CostRateValue` FROM `costrateperiod` crp WHERE crp.`ObjectTid` = 22 AND crp.`CostRateType` = 0 AND crp.`ObjectOid` = cb2sc.`CostBearerOid` AND (crp.`EndDate` is null or crp.`EndDate` > ':Monat_Start') order by IF(crp.`EndDate` is null, MAKEDATE(9999,365),crp.`EndDate`) LIMIT 1 ) * ((100 + crpRateFactor.`CostRateValue`)/100), 2)) AS 'Betrag',
|
||||||
c.DebitorNumber,
|
c.DebitorNumber,
|
||||||
@@ -206,12 +204,36 @@ ib.InvoiceId
|
|||||||
(SELECT sr2.`CostBearer2SupportConceptOid`, SUM(sr2.`roundedduration` / IF(sr2.`GroupEmployeeCount` is null, 1, sr2.`GroupEmployeeCount`)) AS GeleisteteFLM FROM `servicerecord` sr2
|
(SELECT sr2.`CostBearer2SupportConceptOid`, SUM(sr2.`roundedduration` / IF(sr2.`GroupEmployeeCount` is null, 1, sr2.`GroupEmployeeCount`)) AS GeleisteteFLM FROM `servicerecord` sr2
|
||||||
INNER JOIN `servicedescription` sd ON sr2.`ServiceDescriptionOid` = sd.`Oid`
|
INNER JOIN `servicedescription` sd ON sr2.`ServiceDescriptionOid` = sd.`Oid`
|
||||||
INNER JOIN `servicecategory` sc ON sd.`ServiceCategoryOid` = sc.`Oid`
|
INNER JOIN `servicecategory` sc ON sd.`ServiceCategoryOid` = sc.`Oid`
|
||||||
WHERE sr2.`StartDate` >= ':Monat_Start' AND sr2.`StartDate` < ':Monat_End' AND sc.`Billable` = 1 GROUP BY sr2.`CostBearer2SupportConceptOid`)
|
WHERE sr2.`StartDate` >= ':Monat_Start' AND sr2.`StartDate` < ':Monat_End' AND sc.`Billable` = 1 and sd.Name <> 'Fehlkontakt' GROUP BY sr2.`CostBearer2SupportConceptOid`)
|
||||||
AS sr ON sr.`CostBearer2SupportConceptOid` = cb2sc.`Oid`
|
AS sr ON sr.`CostBearer2SupportConceptOid` = cb2sc.`Oid`
|
||||||
WHERE c.`IsActive` = 1 AND sc.`IsActive` = 1
|
WHERE c.`IsActive` = 1 AND sc.`IsActive` = 1
|
||||||
and (sr.`GeleisteteFLM` is not null)
|
and (sr.`GeleisteteFLM` is not null)
|
||||||
and (org.Name = 'LVR' OR org.Name = 'LWL')
|
and (org.Name = 'LVR' OR org.Name = 'LWL'))
|
||||||
ORDER BY p.`LastName`, p.`FirstName`, cb2sc.`ApprovedStartDate`
|
UNION
|
||||||
|
(SELECT
|
||||||
|
ROUND(0.8 * (sr.`GeleisteteFLM` / 60) * (SELECT crp.`CostRateValue` FROM `costrateperiod` crp WHERE crp.`ObjectTid` = 22 AND crp.`CostRateType` = 0 AND crp.`ObjectOid` = cb2sc.`CostBearerOid` AND (crp.`EndDate` is null or crp.`EndDate` > ':Monat_Start') order by IF(crp.`EndDate` is null, MAKEDATE(9999,365),crp.`EndDate`) LIMIT 1 )) AS 'Betrag',
|
||||||
|
c.DebitorNumber,
|
||||||
|
c.CostCenter,
|
||||||
|
CONCAT(p.`LastName`, ', ', p.`FirstName`) as 'Verwendung',
|
||||||
|
cb2sc.Oid
|
||||||
|
FROM `supportconcept` sc
|
||||||
|
INNER JOIN `costbearer2supportconcept` cb2sc ON sc.`Oid` = cb2sc.`SupportConceptOid`
|
||||||
|
INNER JOIN `costbearer` cb ON cb2sc.`CostBearerOid` = cb.`Oid`
|
||||||
|
INNER JOIN `organisation` org ON org.`CostBearerOid` = cb.`Oid`
|
||||||
|
INNER JOIN `customer` c ON sc.`CustomerOid` = c.`Oid`
|
||||||
|
INNER JOIN `person` p on c.`PersonOid` = p.`Oid`
|
||||||
|
LEFT JOIN
|
||||||
|
(SELECT sr2.`CostBearer2SupportConceptOid`, SUM(sr2.`roundedduration` / IF(sr2.`GroupEmployeeCount` is null, 1, sr2.`GroupEmployeeCount`)) AS GeleisteteFLM FROM `servicerecord` sr2
|
||||||
|
INNER JOIN `servicedescription` sd ON sr2.`ServiceDescriptionOid` = sd.`Oid`
|
||||||
|
INNER JOIN `servicecategory` sc ON sd.`ServiceCategoryOid` = sc.`Oid`
|
||||||
|
WHERE sr2.`StartDate` >= ':Monat_Start' AND sr2.`StartDate` < ':Monat_End' AND sc.`Billable` = 1 and sd.Name = 'Fehlkontakt' GROUP BY sr2.`CostBearer2SupportConceptOid`)
|
||||||
|
AS sr ON sr.`CostBearer2SupportConceptOid` = cb2sc.`Oid`
|
||||||
|
WHERE c.`IsActive` = 1 AND sc.`IsActive` = 1
|
||||||
|
and (sr.`GeleisteteFLM` is not null)
|
||||||
|
and (org.Name = 'LVR' OR org.Name = 'LWL'))
|
||||||
|
)qry
|
||||||
|
GROUP BY qry.OID
|
||||||
|
ORDER BY qry.Verwendung
|
||||||
";
|
";
|
||||||
|
|
||||||
return sql;
|
return sql;
|
||||||
|
|||||||
Reference in New Issue
Block a user