Merge branch 'master' of ssh://float.ownsoft.de/git/beyondSoft/BeWo
This commit is contained in:
1
.gitignore
vendored
1
.gitignore
vendored
@@ -650,3 +650,4 @@ obj
|
||||
/ReportImp/Lazy/Properties/licenses.licx
|
||||
/TestReportCustomization/Class1.cs
|
||||
/TestReportCustomization/TestReportCustomization.csproj
|
||||
/CustomerDlls
|
||||
|
||||
@@ -936,36 +936,15 @@ namespace Host
|
||||
}
|
||||
|
||||
String t = slicedToken["tenant"].ToString();
|
||||
AbstractReportCreator creator = null;
|
||||
#if DEBUG
|
||||
SessionFacade.Tenant = t;
|
||||
|
||||
|
||||
//Kundennummern zum Testen nur noch in PluginLoader eintragen:
|
||||
t = PluginLoader.Tenant;
|
||||
AbstractReportCreator creator = PluginLoader.FindClass<DefaultReportCreator>();
|
||||
|
||||
|
||||
String customerDllPath = HttpContext.Current.Server.MapPath(@"bin\" + t + "_reports.dll");
|
||||
#else
|
||||
String customerDllPath = HttpContext.Current.Server.MapPath(@"Customer\" + t + "_reports.dll");
|
||||
#endif
|
||||
if (File.Exists(customerDllPath))
|
||||
{
|
||||
var allTypes = Assembly.LoadFrom(customerDllPath).GetTypes();
|
||||
|
||||
var reportCreator = allTypes.FirstOrDefault(i => typeof(AbstractReportCreator).IsAssignableFrom(i));
|
||||
if (reportCreator != null)
|
||||
{
|
||||
creator = Activator.CreateInstance(reportCreator) as AbstractReportCreator;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
if (creator == null)
|
||||
creator = new DefaultReportCreator();
|
||||
creator.TemplateOid = templateOid;
|
||||
creator.Tenant = t;
|
||||
creator.ReportPath = customerDllPath;
|
||||
|
||||
|
||||
#if DEBUG
|
||||
creator.TempPath = BS.Shared.Core.Utils.CreateSavePath(AppDomain.CurrentDomain.BaseDirectory, @"demo\temp");
|
||||
#else
|
||||
|
||||
@@ -219,6 +219,10 @@
|
||||
<add key="LicenseOrderUrl" value="https://support.bewoplaner.de/lizenzbestellung/?k=[TENANT]" />
|
||||
<add key="LicenseCancellationUrl" value="https://support.bewoplaner.de/api/licencecancellation.php?k=[TENANT]" />
|
||||
<add key="ContractStateUrl" value="https://support.bewoplaner.de/api/getcontractstate.php?CustomerID=[TENANT]" />
|
||||
|
||||
<add key="PluginBasePath" value="..\CustomerDlls" />
|
||||
<add key="PluginPath" value="..\CustomerDlls" />
|
||||
|
||||
<!--<add key="MaxDocumentSize" value="20971520" />-->
|
||||
<add key="MaxDocumentSize" value="20971520" />
|
||||
<add key="ICD10File" value="ICD10\icd10.xml" />
|
||||
|
||||
@@ -9,10 +9,6 @@ namespace BeWo.Report
|
||||
{
|
||||
public abstract class AbstractReportCreator
|
||||
{
|
||||
public String Tenant { get; set; }
|
||||
|
||||
public string ReportPath { get; set; }
|
||||
|
||||
public string TempPath { get; set; }
|
||||
public long? TemplateOid { get; set; }
|
||||
|
||||
|
||||
@@ -51,13 +51,10 @@ namespace BeWo.Report
|
||||
}
|
||||
}
|
||||
Type[] lAllReportTypes = null;
|
||||
var fullPath = Path.GetFullPath(ReportPath);
|
||||
if (Tenant != null && File.Exists(ReportPath))
|
||||
{
|
||||
lAllReportTypes = Assembly.LoadFrom(ReportPath).GetTypes();
|
||||
result = FindReportImp<T>(lAllReportTypes, specificReportId, typename, true);
|
||||
}
|
||||
|
||||
lAllReportTypes = PluginLoader.GetAllCustomerTypes();
|
||||
result = FindReportImp<T>(lAllReportTypes, specificReportId, typename, true);
|
||||
|
||||
|
||||
if (result == null)
|
||||
{
|
||||
@@ -1291,7 +1288,7 @@ namespace BeWo.Report
|
||||
//}
|
||||
#endregion
|
||||
|
||||
var helper = new ExportAndPrintHelper();
|
||||
var helper = PluginLoader.FindClass<ExportAndPrintHelper>();
|
||||
|
||||
string[] lHeaderCaption = helper.PrepareHeaderArrayForUserExport();
|
||||
string[][] lContent = helper.PrepareContentArrayForUserExport(oids.ToArray());
|
||||
@@ -1332,7 +1329,7 @@ namespace BeWo.Report
|
||||
public override XtraReport CreateUserGroupListReport(List<long> oids)
|
||||
{
|
||||
var queryReport = FindReportImp<QueryRO>(null, "Benutzergruppen");
|
||||
var helper = new ExportAndPrintHelper();
|
||||
var helper = PluginLoader.FindClass<ExportAndPrintHelper>();
|
||||
|
||||
//var lUserGroups = DAOFactory.GenericDAO.LoadByIDs<UserGroup>(oids);
|
||||
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
<DebugType>full</DebugType>
|
||||
<Optimize>false</Optimize>
|
||||
<OutputPath>..\..\Host\bin\</OutputPath>
|
||||
<OutputPath>..\..\CustomerDlls\</OutputPath>
|
||||
<DefineConstants>DEBUG;TRACE</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
@@ -25,7 +25,7 @@
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||
<DebugType>pdbonly</DebugType>
|
||||
<Optimize>true</Optimize>
|
||||
<OutputPath>..\..\Host\bin\</OutputPath>
|
||||
<OutputPath>..\..\CustomerDlls\</OutputPath>
|
||||
<DefineConstants>TRACE</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
<DebugType>full</DebugType>
|
||||
<Optimize>false</Optimize>
|
||||
<OutputPath>..\..\Host\bin\</OutputPath>
|
||||
<OutputPath>..\..\CustomerDlls\</OutputPath>
|
||||
<DefineConstants>DEBUG;TRACE</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
@@ -25,7 +25,7 @@
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||
<DebugType>pdbonly</DebugType>
|
||||
<Optimize>true</Optimize>
|
||||
<OutputPath>..\..\Host\bin\</OutputPath>
|
||||
<OutputPath>..\..\CustomerDlls\</OutputPath>
|
||||
<DefineConstants>TRACE</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
@@ -50,6 +50,13 @@
|
||||
<ItemGroup>
|
||||
<Compile Include="Export\CustomDataExporter.cs" />
|
||||
<Compile Include="Export\AddisonExporter.cs" />
|
||||
<Compile Include="Export\CustomExportAndPrintHelper.cs" />
|
||||
<Compile Include="InvoiceCustomerReport.cs">
|
||||
<SubType>Component</SubType>
|
||||
</Compile>
|
||||
<Compile Include="InvoiceCustomerReport.Designer.cs">
|
||||
<DependentUpon>InvoiceCustomerReport.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Invoicing\CustomInvoiceFactory.cs" />
|
||||
<Compile Include="Invoicing\DefaultInvoiceCreation.cs" />
|
||||
<Compile Include="Invoicing\PauschalenHelper.cs" />
|
||||
@@ -62,6 +69,18 @@
|
||||
</Compile>
|
||||
<Compile Include="Service\CustomAccountingService.cs" />
|
||||
<Compile Include="Service\CustomSaveInterceptor.cs" />
|
||||
<Compile Include="SettlementReport.cs">
|
||||
<SubType>Component</SubType>
|
||||
</Compile>
|
||||
<Compile Include="SettlementReport.Designer.cs">
|
||||
<DependentUpon>SettlementReport.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="SettlementReport2.cs">
|
||||
<SubType>Component</SubType>
|
||||
</Compile>
|
||||
<Compile Include="SettlementReport2.Designer.cs">
|
||||
<DependentUpon>SettlementReport2.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="StundenzettelBi2.cs">
|
||||
<SubType>Component</SubType>
|
||||
</Compile>
|
||||
@@ -107,11 +126,23 @@
|
||||
</ProjectReference>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<EmbeddedResource Include="InvoiceCustomerReport.resx">
|
||||
<DependentUpon>InvoiceCustomerReport.cs</DependentUpon>
|
||||
<SubType>Designer</SubType>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="Properties\licenses.licx" />
|
||||
<EmbeddedResource Include="RechnungPa.resx">
|
||||
<DependentUpon>RechnungPa.cs</DependentUpon>
|
||||
<SubType>Designer</SubType>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="SettlementReport.resx">
|
||||
<DependentUpon>SettlementReport.cs</DependentUpon>
|
||||
<SubType>Designer</SubType>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="SettlementReport2.resx">
|
||||
<DependentUpon>SettlementReport2.cs</DependentUpon>
|
||||
<SubType>Designer</SubType>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="StundenzettelBi2.resx">
|
||||
<DependentUpon>StundenzettelBi2.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
|
||||
@@ -19,7 +19,10 @@ namespace AlzeyTeilhabe.Export
|
||||
{
|
||||
DateTime dt = DateTime.Now;
|
||||
DateTime.TryParse(query.Parameter[0].Value.ToString(), out dt);
|
||||
long? scOid = query.Parameter[1].Value as long?;
|
||||
|
||||
long? scOid = null;
|
||||
if (query.Parameter.Count >= 2)
|
||||
scOid = query.Parameter[1].Value as long?;
|
||||
|
||||
ServiceCategory serviceCategory = scOid != null ? DAOFactory.GenericDAO.GetByID<ServiceCategory>(scOid.Value) : null;
|
||||
|
||||
|
||||
167
ReportImp/AlzeyTeilhabe/Export/CustomExportAndPrintHelper.cs
Normal file
167
ReportImp/AlzeyTeilhabe/Export/CustomExportAndPrintHelper.cs
Normal file
@@ -0,0 +1,167 @@
|
||||
using BeWo.Data.Access;
|
||||
using BeWo.Data.Entities;
|
||||
using BeWo.Service.Reporting;
|
||||
using BeWo.Service.ServiceUtils;
|
||||
using BS.Shared;
|
||||
using BS.Shared.Extensions;
|
||||
using BS.Shared.Translation;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace AlzeyTeilhabe.Export
|
||||
{
|
||||
public class CustomExportAndPrintHelper : ExportAndPrintHelper
|
||||
{
|
||||
// Hier ist der Code, der die StringArrays für den Excel-Export und die Print-Versionen des Exports erstellt
|
||||
public override string[] PrepareHeaderArrayForCustomerExport()
|
||||
{
|
||||
string[] lHeaderCaption = {
|
||||
"Nachname", // 0
|
||||
"Vorname", // 1
|
||||
"Geburtsdatum", // 3
|
||||
"Beruf", // 4
|
||||
"Geschlecht", // 5
|
||||
"Familienstand", // 6
|
||||
"Telefon", // 7
|
||||
"Mobil", // 8
|
||||
"Mail", // 9
|
||||
"Fax", // 10
|
||||
"Strasse", // 11
|
||||
"PLZ", // 12
|
||||
"Ort", // 13
|
||||
"Bemerkung", // 14
|
||||
"Erstbetreuung", // 15
|
||||
"Betreuung begonnen", // 16
|
||||
"Betreuung beendet", // 17
|
||||
"Grund für Beendigung", // 18
|
||||
"Teams" // 19 NUR ALZEY
|
||||
};
|
||||
|
||||
return lHeaderCaption;
|
||||
}
|
||||
|
||||
public override string[][] PrepareContentArrayForCustomerExport(long[] pSortedOids)
|
||||
{
|
||||
#region Standard
|
||||
var lCustomers = DAOFactory.GenericDAO.LoadByIDs<Customer>(pSortedOids);
|
||||
|
||||
var lHeaderCaption = PrepareHeaderArrayForCustomerExport();
|
||||
|
||||
var lContent = new string[lCustomers.Count][];
|
||||
|
||||
for (int iRowCount = 0; iRowCount < lCustomers.Count; iRowCount++)
|
||||
{
|
||||
lContent[iRowCount] = new string[lHeaderCaption.Count()];
|
||||
|
||||
lContent[iRowCount][0] = lCustomers[iRowCount].Person.LastName;
|
||||
lContent[iRowCount][1] = lCustomers[iRowCount].Person.FirstName;
|
||||
//lContent[iRowCount][2] = lCustomers[iRowCount].ReferenceNumber;
|
||||
|
||||
if (lCustomers[iRowCount].Person.DateOfBirth.HasValue)
|
||||
{
|
||||
lContent[iRowCount][2] = lCustomers[iRowCount].Person.DateOfBirth.Value.ToShortDateString();
|
||||
}
|
||||
|
||||
lContent[iRowCount][3] = lCustomers[iRowCount].Person.Profession;
|
||||
|
||||
lContent[iRowCount][4] = lCustomers[iRowCount].Person.Sex == Sex.Male
|
||||
? "männlich"
|
||||
: "weiblich";
|
||||
|
||||
if (lCustomers[iRowCount].Person.FamilyStatus != null)
|
||||
{
|
||||
switch (lCustomers[iRowCount].Person.FamilyStatus.Value)
|
||||
{
|
||||
case FamilyStatus.Divorced:
|
||||
lContent[iRowCount][5] = "geschieden";
|
||||
break;
|
||||
case FamilyStatus.Married:
|
||||
lContent[iRowCount][5] = "verheiratet";
|
||||
break;
|
||||
case FamilyStatus.Single:
|
||||
lContent[iRowCount][5] = "ledig";
|
||||
break;
|
||||
case FamilyStatus.Widowed:
|
||||
lContent[iRowCount][5] = "verwitwet";
|
||||
break;
|
||||
case FamilyStatus.Partner:
|
||||
lContent[iRowCount][5] = "in Partnerschaft";
|
||||
break;
|
||||
case FamilyStatus.PartnerDivorced:
|
||||
lContent[iRowCount][5] = "getrennt lebend";
|
||||
break;
|
||||
case FamilyStatus.PartnerDead:
|
||||
lContent[iRowCount][5] = "partnerhinterblieben";
|
||||
break;
|
||||
case FamilyStatus.PartnerMarried:
|
||||
lContent[iRowCount][5] = "verpartnert";
|
||||
break;
|
||||
case FamilyStatus.Entpartnert:
|
||||
lContent[iRowCount][5] = "entpartnert";
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
foreach (var iContact in lCustomers[iRowCount].Person.Contacts)
|
||||
{
|
||||
switch (iContact.Type)
|
||||
{
|
||||
case ContactType.business_Phone:
|
||||
lContent[iRowCount][6] = iContact.Value;
|
||||
break;
|
||||
case ContactType.business_MobilePhone:
|
||||
lContent[iRowCount][7] = iContact.Value;
|
||||
break;
|
||||
case ContactType.business_Mail:
|
||||
lContent[iRowCount][8] = iContact.Value;
|
||||
break;
|
||||
case ContactType.business_Fax:
|
||||
lContent[iRowCount][9] = iContact.Value;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if (lCustomers[iRowCount].Person.Address != null)
|
||||
{
|
||||
lContent[iRowCount][10] = lCustomers[iRowCount].Person.Address.Street;
|
||||
lContent[iRowCount][11] = lCustomers[iRowCount].Person.Address.PostalCode;
|
||||
lContent[iRowCount][12] = lCustomers[iRowCount].Person.Address.Town;
|
||||
}
|
||||
|
||||
lContent[iRowCount][13] = lCustomers[iRowCount].Notice;
|
||||
|
||||
if (lCustomers[iRowCount].Employee2CustomerList == null)
|
||||
continue;
|
||||
|
||||
foreach (var e2c in lCustomers[iRowCount].Employee2CustomerList)
|
||||
{
|
||||
foreach (var vle in e2c.ValueList.Select(vle2o => vle2o.Entry).Where(vle => vle.SystemEntryID != null && vle.SystemEntryID.Value == SystemEntryID.EmployeeRoleMainAttendant))
|
||||
{
|
||||
lHeaderCaption[14] = vle.Value;
|
||||
lContent[iRowCount][14] = e2c.Employee.Person.FirstName + " " + e2c.Employee.Person.LastName;
|
||||
}
|
||||
}
|
||||
|
||||
lContent[iRowCount][15] = String.Format("{0:dd.MM.yyyy}", lCustomers[iRowCount].AssistanceBegin);
|
||||
lContent[iRowCount][16] = String.Format("{0:dd.MM.yyyy}", lCustomers[iRowCount].TerminationDate);
|
||||
|
||||
if (lCustomers[iRowCount].TerminationReason != null)
|
||||
{
|
||||
lContent[iRowCount][17] = lCustomers[iRowCount].TerminationReason.Value;
|
||||
}
|
||||
else
|
||||
{
|
||||
lContent[iRowCount][17] = "";
|
||||
}
|
||||
#endregion
|
||||
|
||||
lContent[iRowCount][18] = string.Join(", ", lCustomers[iRowCount].Team2CustomerList.Select(t => t.Team.Name));
|
||||
}
|
||||
|
||||
return lContent;
|
||||
}
|
||||
}
|
||||
}
|
||||
758
ReportImp/AlzeyTeilhabe/InvoiceCustomerReport.Designer.cs
generated
Normal file
758
ReportImp/AlzeyTeilhabe/InvoiceCustomerReport.Designer.cs
generated
Normal file
@@ -0,0 +1,758 @@
|
||||
using BeWo.Report.ReportObjects;
|
||||
namespace AlzeyTeilhabe
|
||||
{
|
||||
partial class InvoiceCustomerReport
|
||||
{
|
||||
/// <summary>
|
||||
/// Required designer variable.
|
||||
/// </summary>
|
||||
private System.ComponentModel.IContainer components = null;
|
||||
|
||||
/// <summary>
|
||||
/// Clean up any resources being used.
|
||||
/// </summary>
|
||||
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
|
||||
protected override void Dispose(bool disposing)
|
||||
{
|
||||
if (disposing && (components != null))
|
||||
{
|
||||
components.Dispose();
|
||||
}
|
||||
base.Dispose(disposing);
|
||||
}
|
||||
|
||||
#region Designer generated code
|
||||
|
||||
/// <summary>
|
||||
/// Required method for Designer support - do not modify
|
||||
/// the contents of this method with the code editor.
|
||||
/// </summary>
|
||||
private void InitializeComponent()
|
||||
{
|
||||
this.components = new System.ComponentModel.Container();
|
||||
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(InvoiceCustomerReport));
|
||||
this.Detail = new DevExpress.XtraReports.UI.DetailBand();
|
||||
this.xrTable1 = new DevExpress.XtraReports.UI.XRTable();
|
||||
this.xrTableRow9 = new DevExpress.XtraReports.UI.XRTableRow();
|
||||
this.xrTableCell6 = new DevExpress.XtraReports.UI.XRTableCell();
|
||||
this.xrTableCell7 = new DevExpress.XtraReports.UI.XRTableCell();
|
||||
this.xrTableCell9 = new DevExpress.XtraReports.UI.XRTableCell();
|
||||
this.xrTableCell14 = new DevExpress.XtraReports.UI.XRTableCell();
|
||||
this.xrTableCell10 = new DevExpress.XtraReports.UI.XRTableCell();
|
||||
this.xrTableCell12 = new DevExpress.XtraReports.UI.XRTableCell();
|
||||
this.ReportHeader = new DevExpress.XtraReports.UI.ReportHeaderBand();
|
||||
this.xrLabel1 = new DevExpress.XtraReports.UI.XRLabel();
|
||||
this.lblAddress = new DevExpress.XtraReports.UI.XRLabel();
|
||||
this.xrTable3 = new DevExpress.XtraReports.UI.XRTable();
|
||||
this.xrTableRow10 = new DevExpress.XtraReports.UI.XRTableRow();
|
||||
this.xrTableCell15 = new DevExpress.XtraReports.UI.XRTableCell();
|
||||
this.xrTableCell16 = new DevExpress.XtraReports.UI.XRTableCell();
|
||||
this.xrTableCell17 = new DevExpress.XtraReports.UI.XRTableCell();
|
||||
this.xrTableCell18 = new DevExpress.XtraReports.UI.XRTableCell();
|
||||
this.xrTableCell19 = new DevExpress.XtraReports.UI.XRTableCell();
|
||||
this.xrTableCell20 = new DevExpress.XtraReports.UI.XRTableCell();
|
||||
this.xrLabel6 = new DevExpress.XtraReports.UI.XRLabel();
|
||||
this.xrLabel5 = new DevExpress.XtraReports.UI.XRLabel();
|
||||
this.xrLabel4 = new DevExpress.XtraReports.UI.XRLabel();
|
||||
this.xrLabel3 = new DevExpress.XtraReports.UI.XRLabel();
|
||||
this.xrLabel2 = new DevExpress.XtraReports.UI.XRLabel();
|
||||
this.xrTable2 = new DevExpress.XtraReports.UI.XRTable();
|
||||
this.xrTableRow2 = new DevExpress.XtraReports.UI.XRTableRow();
|
||||
this.xrTableCell4 = new DevExpress.XtraReports.UI.XRTableCell();
|
||||
this.xrTableRow5 = new DevExpress.XtraReports.UI.XRTableRow();
|
||||
this.xrTableCell13 = new DevExpress.XtraReports.UI.XRTableCell();
|
||||
this.xrTableRow4 = new DevExpress.XtraReports.UI.XRTableRow();
|
||||
this.xrTableCell11 = new DevExpress.XtraReports.UI.XRTableCell();
|
||||
this.xrTableRow1 = new DevExpress.XtraReports.UI.XRTableRow();
|
||||
this.xrTableCell1 = new DevExpress.XtraReports.UI.XRTableCell();
|
||||
this.xrTableRow6 = new DevExpress.XtraReports.UI.XRTableRow();
|
||||
this.xrTableCell2 = new DevExpress.XtraReports.UI.XRTableCell();
|
||||
this.xrTableRow8 = new DevExpress.XtraReports.UI.XRTableRow();
|
||||
this.xrTableCell5 = new DevExpress.XtraReports.UI.XRTableCell();
|
||||
this.ruleRateFactorNull = new DevExpress.XtraReports.UI.FormattingRule();
|
||||
this.ReportFooter = new DevExpress.XtraReports.UI.ReportFooterBand();
|
||||
this.xrLabel8 = new DevExpress.XtraReports.UI.XRLabel();
|
||||
this.xrLabel10 = new DevExpress.XtraReports.UI.XRLabel();
|
||||
this.xrLabel12 = new DevExpress.XtraReports.UI.XRLabel();
|
||||
this.lblNotice = new DevExpress.XtraReports.UI.XRLabel();
|
||||
this.xrTable4 = new DevExpress.XtraReports.UI.XRTable();
|
||||
this.xrTableRow11 = new DevExpress.XtraReports.UI.XRTableRow();
|
||||
this.xrTableCell23 = new DevExpress.XtraReports.UI.XRTableCell();
|
||||
this.topMarginBand1 = new DevExpress.XtraReports.UI.TopMarginBand();
|
||||
this.bottomMarginBand1 = new DevExpress.XtraReports.UI.BottomMarginBand();
|
||||
this.DetailReport = new DevExpress.XtraReports.UI.DetailReportBand();
|
||||
this.Detail1 = new DevExpress.XtraReports.UI.DetailBand();
|
||||
this.bindingSource1 = new System.Windows.Forms.BindingSource(this.components);
|
||||
this.xrPictureBox1 = new DevExpress.XtraReports.UI.XRPictureBox();
|
||||
((System.ComponentModel.ISupportInitialize)(this.xrTable1)).BeginInit();
|
||||
((System.ComponentModel.ISupportInitialize)(this.xrTable3)).BeginInit();
|
||||
((System.ComponentModel.ISupportInitialize)(this.xrTable2)).BeginInit();
|
||||
((System.ComponentModel.ISupportInitialize)(this.xrTable4)).BeginInit();
|
||||
((System.ComponentModel.ISupportInitialize)(this.bindingSource1)).BeginInit();
|
||||
((System.ComponentModel.ISupportInitialize)(this)).BeginInit();
|
||||
//
|
||||
// Detail
|
||||
//
|
||||
this.Detail.HeightF = 0F;
|
||||
this.Detail.Name = "Detail";
|
||||
this.Detail.Padding = new DevExpress.XtraPrinting.PaddingInfo(0, 0, 0, 0, 100F);
|
||||
this.Detail.TextAlignment = DevExpress.XtraPrinting.TextAlignment.TopLeft;
|
||||
//
|
||||
// xrTable1
|
||||
//
|
||||
this.xrTable1.LocationFloat = new DevExpress.Utils.PointFloat(0F, 0F);
|
||||
this.xrTable1.Name = "xrTable1";
|
||||
this.xrTable1.Rows.AddRange(new DevExpress.XtraReports.UI.XRTableRow[] {
|
||||
this.xrTableRow9});
|
||||
this.xrTable1.SizeF = new System.Drawing.SizeF(671.4175F, 25F);
|
||||
this.xrTable1.StylePriority.UseFont = false;
|
||||
//
|
||||
// xrTableRow9
|
||||
//
|
||||
this.xrTableRow9.Cells.AddRange(new DevExpress.XtraReports.UI.XRTableCell[] {
|
||||
this.xrTableCell6,
|
||||
this.xrTableCell7,
|
||||
this.xrTableCell9,
|
||||
this.xrTableCell14,
|
||||
this.xrTableCell10,
|
||||
this.xrTableCell12});
|
||||
this.xrTableRow9.Name = "xrTableRow9";
|
||||
this.xrTableRow9.Weight = 1D;
|
||||
//
|
||||
// xrTableCell6
|
||||
//
|
||||
this.xrTableCell6.Borders = ((DevExpress.XtraPrinting.BorderSide)(((DevExpress.XtraPrinting.BorderSide.Left | DevExpress.XtraPrinting.BorderSide.Right)
|
||||
| DevExpress.XtraPrinting.BorderSide.Bottom)));
|
||||
this.xrTableCell6.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
|
||||
new DevExpress.XtraReports.UI.XRBinding("Text", null, "InvoiceItems.AccountingPeriodStart")});
|
||||
this.xrTableCell6.Name = "xrTableCell6";
|
||||
this.xrTableCell6.Padding = new DevExpress.XtraPrinting.PaddingInfo(5, 0, 0, 0, 100F);
|
||||
this.xrTableCell6.StylePriority.UseBorders = false;
|
||||
this.xrTableCell6.StylePriority.UsePadding = false;
|
||||
this.xrTableCell6.StylePriority.UseTextAlignment = false;
|
||||
this.xrTableCell6.Text = "xrTableCell6";
|
||||
this.xrTableCell6.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleLeft;
|
||||
this.xrTableCell6.Weight = 1D;
|
||||
//
|
||||
// xrTableCell7
|
||||
//
|
||||
this.xrTableCell7.Borders = ((DevExpress.XtraPrinting.BorderSide)(((DevExpress.XtraPrinting.BorderSide.Left | DevExpress.XtraPrinting.BorderSide.Right)
|
||||
| DevExpress.XtraPrinting.BorderSide.Bottom)));
|
||||
this.xrTableCell7.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
|
||||
new DevExpress.XtraReports.UI.XRBinding("Text", null, "InvoiceItems.AccountingPeriodEnd")});
|
||||
this.xrTableCell7.Name = "xrTableCell7";
|
||||
this.xrTableCell7.Padding = new DevExpress.XtraPrinting.PaddingInfo(5, 0, 0, 0, 100F);
|
||||
this.xrTableCell7.StylePriority.UseBorders = false;
|
||||
this.xrTableCell7.StylePriority.UsePadding = false;
|
||||
this.xrTableCell7.StylePriority.UseTextAlignment = false;
|
||||
this.xrTableCell7.Text = "xrTableCell7";
|
||||
this.xrTableCell7.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleLeft;
|
||||
this.xrTableCell7.Weight = 1D;
|
||||
//
|
||||
// xrTableCell9
|
||||
//
|
||||
this.xrTableCell9.Borders = ((DevExpress.XtraPrinting.BorderSide)(((DevExpress.XtraPrinting.BorderSide.Left | DevExpress.XtraPrinting.BorderSide.Right)
|
||||
| DevExpress.XtraPrinting.BorderSide.Bottom)));
|
||||
this.xrTableCell9.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
|
||||
new DevExpress.XtraReports.UI.XRBinding("Text", null, "InvoiceItems.ItemDescription")});
|
||||
this.xrTableCell9.Name = "xrTableCell9";
|
||||
this.xrTableCell9.Padding = new DevExpress.XtraPrinting.PaddingInfo(5, 0, 0, 0, 100F);
|
||||
this.xrTableCell9.StylePriority.UseBorders = false;
|
||||
this.xrTableCell9.StylePriority.UsePadding = false;
|
||||
this.xrTableCell9.StylePriority.UseTextAlignment = false;
|
||||
this.xrTableCell9.Text = "xrTableCell9";
|
||||
this.xrTableCell9.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleLeft;
|
||||
this.xrTableCell9.Weight = 2.3350077713203072D;
|
||||
//
|
||||
// xrTableCell14
|
||||
//
|
||||
this.xrTableCell14.Borders = ((DevExpress.XtraPrinting.BorderSide)(((DevExpress.XtraPrinting.BorderSide.Left | DevExpress.XtraPrinting.BorderSide.Right)
|
||||
| DevExpress.XtraPrinting.BorderSide.Bottom)));
|
||||
this.xrTableCell14.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
|
||||
new DevExpress.XtraReports.UI.XRBinding("Text", null, "InvoiceItems.UnitPrice")});
|
||||
this.xrTableCell14.Name = "xrTableCell14";
|
||||
this.xrTableCell14.Padding = new DevExpress.XtraPrinting.PaddingInfo(5, 0, 0, 0, 100F);
|
||||
this.xrTableCell14.StylePriority.UseBorders = false;
|
||||
this.xrTableCell14.StylePriority.UsePadding = false;
|
||||
this.xrTableCell14.StylePriority.UseTextAlignment = false;
|
||||
this.xrTableCell14.Text = "xrTableCell14";
|
||||
this.xrTableCell14.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleLeft;
|
||||
this.xrTableCell14.Weight = 0.81217660612832132D;
|
||||
//
|
||||
// xrTableCell10
|
||||
//
|
||||
this.xrTableCell10.Borders = ((DevExpress.XtraPrinting.BorderSide)(((DevExpress.XtraPrinting.BorderSide.Left | DevExpress.XtraPrinting.BorderSide.Right)
|
||||
| DevExpress.XtraPrinting.BorderSide.Bottom)));
|
||||
this.xrTableCell10.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
|
||||
new DevExpress.XtraReports.UI.XRBinding("Text", null, "InvoiceItems.UnitCount", "{0:0.##}")});
|
||||
this.xrTableCell10.Name = "xrTableCell10";
|
||||
this.xrTableCell10.Padding = new DevExpress.XtraPrinting.PaddingInfo(5, 0, 0, 0, 100F);
|
||||
this.xrTableCell10.StylePriority.UseBorders = false;
|
||||
this.xrTableCell10.StylePriority.UsePadding = false;
|
||||
this.xrTableCell10.StylePriority.UseTextAlignment = false;
|
||||
this.xrTableCell10.Text = "xrTableCell10";
|
||||
this.xrTableCell10.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleLeft;
|
||||
this.xrTableCell10.Weight = 0.6539656324947265D;
|
||||
//
|
||||
// xrTableCell12
|
||||
//
|
||||
this.xrTableCell12.Borders = ((DevExpress.XtraPrinting.BorderSide)(((DevExpress.XtraPrinting.BorderSide.Left | DevExpress.XtraPrinting.BorderSide.Right)
|
||||
| DevExpress.XtraPrinting.BorderSide.Bottom)));
|
||||
this.xrTableCell12.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
|
||||
new DevExpress.XtraReports.UI.XRBinding("Text", null, "InvoiceItems.AmountSum")});
|
||||
this.xrTableCell12.Name = "xrTableCell12";
|
||||
this.xrTableCell12.Padding = new DevExpress.XtraPrinting.PaddingInfo(0, 3, 0, 0, 100F);
|
||||
this.xrTableCell12.StylePriority.UseBorders = false;
|
||||
this.xrTableCell12.StylePriority.UsePadding = false;
|
||||
this.xrTableCell12.StylePriority.UseTextAlignment = false;
|
||||
this.xrTableCell12.Text = "xrTableCell12";
|
||||
this.xrTableCell12.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleRight;
|
||||
this.xrTableCell12.Weight = 1.0152204985905673D;
|
||||
//
|
||||
// ReportHeader
|
||||
//
|
||||
this.ReportHeader.Controls.AddRange(new DevExpress.XtraReports.UI.XRControl[] {
|
||||
this.xrPictureBox1,
|
||||
this.xrLabel1,
|
||||
this.lblAddress,
|
||||
this.xrTable3,
|
||||
this.xrLabel6,
|
||||
this.xrLabel5,
|
||||
this.xrLabel4,
|
||||
this.xrLabel3,
|
||||
this.xrLabel2,
|
||||
this.xrTable2});
|
||||
this.ReportHeader.Font = new System.Drawing.Font("Verdana", 10F);
|
||||
this.ReportHeader.HeightF = 518.875F;
|
||||
this.ReportHeader.Name = "ReportHeader";
|
||||
this.ReportHeader.StylePriority.UseFont = false;
|
||||
//
|
||||
// xrLabel1
|
||||
//
|
||||
this.xrLabel1.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
|
||||
new DevExpress.XtraReports.UI.XRBinding("Text", null, "InvoiceDate")});
|
||||
this.xrLabel1.LocationFloat = new DevExpress.Utils.PointFloat(448.9583F, 297.9167F);
|
||||
this.xrLabel1.Name = "xrLabel1";
|
||||
this.xrLabel1.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
|
||||
this.xrLabel1.SizeF = new System.Drawing.SizeF(201.0417F, 23.95834F);
|
||||
this.xrLabel1.StylePriority.UseTextAlignment = false;
|
||||
this.xrLabel1.Text = "xrLabel1";
|
||||
this.xrLabel1.TextAlignment = DevExpress.XtraPrinting.TextAlignment.TopRight;
|
||||
//
|
||||
// lblAddress
|
||||
//
|
||||
this.lblAddress.LocationFloat = new DevExpress.Utils.PointFloat(0F, 129.875F);
|
||||
this.lblAddress.Multiline = true;
|
||||
this.lblAddress.Name = "lblAddress";
|
||||
this.lblAddress.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
|
||||
this.lblAddress.SizeF = new System.Drawing.SizeF(351.375F, 131F);
|
||||
this.lblAddress.StylePriority.UseFont = false;
|
||||
this.lblAddress.Text = "[RecipientOrganisation]\r\n[RecipientDivision]\r\n[RecipientFirstName] [RecipientLast" +
|
||||
"Name]\r\n[RecipientStreet]\r\n[RecipientPostCode] [RecipientTown]";
|
||||
//
|
||||
// xrTable3
|
||||
//
|
||||
this.xrTable3.LocationFloat = new DevExpress.Utils.PointFloat(0F, 493.8749F);
|
||||
this.xrTable3.Name = "xrTable3";
|
||||
this.xrTable3.Rows.AddRange(new DevExpress.XtraReports.UI.XRTableRow[] {
|
||||
this.xrTableRow10});
|
||||
this.xrTable3.SizeF = new System.Drawing.SizeF(671.4175F, 25F);
|
||||
this.xrTable3.StylePriority.UseFont = false;
|
||||
//
|
||||
// xrTableRow10
|
||||
//
|
||||
this.xrTableRow10.Cells.AddRange(new DevExpress.XtraReports.UI.XRTableCell[] {
|
||||
this.xrTableCell15,
|
||||
this.xrTableCell16,
|
||||
this.xrTableCell17,
|
||||
this.xrTableCell18,
|
||||
this.xrTableCell19,
|
||||
this.xrTableCell20});
|
||||
this.xrTableRow10.Name = "xrTableRow10";
|
||||
this.xrTableRow10.Weight = 1D;
|
||||
//
|
||||
// xrTableCell15
|
||||
//
|
||||
this.xrTableCell15.Borders = ((DevExpress.XtraPrinting.BorderSide)((((DevExpress.XtraPrinting.BorderSide.Left | DevExpress.XtraPrinting.BorderSide.Top)
|
||||
| DevExpress.XtraPrinting.BorderSide.Right)
|
||||
| DevExpress.XtraPrinting.BorderSide.Bottom)));
|
||||
this.xrTableCell15.Name = "xrTableCell15";
|
||||
this.xrTableCell15.Padding = new DevExpress.XtraPrinting.PaddingInfo(5, 0, 0, 0, 100F);
|
||||
this.xrTableCell15.StylePriority.UseBorders = false;
|
||||
this.xrTableCell15.StylePriority.UsePadding = false;
|
||||
this.xrTableCell15.StylePriority.UseTextAlignment = false;
|
||||
this.xrTableCell15.Text = "Von";
|
||||
this.xrTableCell15.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleLeft;
|
||||
this.xrTableCell15.Weight = 1D;
|
||||
//
|
||||
// xrTableCell16
|
||||
//
|
||||
this.xrTableCell16.Borders = ((DevExpress.XtraPrinting.BorderSide)((((DevExpress.XtraPrinting.BorderSide.Left | DevExpress.XtraPrinting.BorderSide.Top)
|
||||
| DevExpress.XtraPrinting.BorderSide.Right)
|
||||
| DevExpress.XtraPrinting.BorderSide.Bottom)));
|
||||
this.xrTableCell16.Name = "xrTableCell16";
|
||||
this.xrTableCell16.Padding = new DevExpress.XtraPrinting.PaddingInfo(5, 0, 0, 0, 100F);
|
||||
this.xrTableCell16.StylePriority.UseBorders = false;
|
||||
this.xrTableCell16.StylePriority.UsePadding = false;
|
||||
this.xrTableCell16.StylePriority.UseTextAlignment = false;
|
||||
this.xrTableCell16.Text = "Bis";
|
||||
this.xrTableCell16.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleLeft;
|
||||
this.xrTableCell16.Weight = 1D;
|
||||
//
|
||||
// xrTableCell17
|
||||
//
|
||||
this.xrTableCell17.Borders = ((DevExpress.XtraPrinting.BorderSide)((((DevExpress.XtraPrinting.BorderSide.Left | DevExpress.XtraPrinting.BorderSide.Top)
|
||||
| DevExpress.XtraPrinting.BorderSide.Right)
|
||||
| DevExpress.XtraPrinting.BorderSide.Bottom)));
|
||||
this.xrTableCell17.Name = "xrTableCell17";
|
||||
this.xrTableCell17.Padding = new DevExpress.XtraPrinting.PaddingInfo(5, 0, 0, 0, 100F);
|
||||
this.xrTableCell17.StylePriority.UseBorders = false;
|
||||
this.xrTableCell17.StylePriority.UsePadding = false;
|
||||
this.xrTableCell17.StylePriority.UseTextAlignment = false;
|
||||
this.xrTableCell17.Text = "Posten";
|
||||
this.xrTableCell17.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleLeft;
|
||||
this.xrTableCell17.Weight = 2.3350077713203934D;
|
||||
//
|
||||
// xrTableCell18
|
||||
//
|
||||
this.xrTableCell18.Borders = ((DevExpress.XtraPrinting.BorderSide)((((DevExpress.XtraPrinting.BorderSide.Left | DevExpress.XtraPrinting.BorderSide.Top)
|
||||
| DevExpress.XtraPrinting.BorderSide.Right)
|
||||
| DevExpress.XtraPrinting.BorderSide.Bottom)));
|
||||
this.xrTableCell18.Name = "xrTableCell18";
|
||||
this.xrTableCell18.Padding = new DevExpress.XtraPrinting.PaddingInfo(5, 0, 0, 0, 100F);
|
||||
this.xrTableCell18.StylePriority.UseBorders = false;
|
||||
this.xrTableCell18.StylePriority.UsePadding = false;
|
||||
this.xrTableCell18.StylePriority.UseTextAlignment = false;
|
||||
this.xrTableCell18.Text = "Satz";
|
||||
this.xrTableCell18.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleLeft;
|
||||
this.xrTableCell18.Weight = 0.81217660612829246D;
|
||||
//
|
||||
// xrTableCell19
|
||||
//
|
||||
this.xrTableCell19.Borders = ((DevExpress.XtraPrinting.BorderSide)((((DevExpress.XtraPrinting.BorderSide.Left | DevExpress.XtraPrinting.BorderSide.Top)
|
||||
| DevExpress.XtraPrinting.BorderSide.Right)
|
||||
| DevExpress.XtraPrinting.BorderSide.Bottom)));
|
||||
this.xrTableCell19.Name = "xrTableCell19";
|
||||
this.xrTableCell19.Padding = new DevExpress.XtraPrinting.PaddingInfo(5, 0, 0, 0, 100F);
|
||||
this.xrTableCell19.StylePriority.UseBorders = false;
|
||||
this.xrTableCell19.StylePriority.UsePadding = false;
|
||||
this.xrTableCell19.StylePriority.UseTextAlignment = false;
|
||||
this.xrTableCell19.Text = "Anzahl";
|
||||
this.xrTableCell19.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleLeft;
|
||||
this.xrTableCell19.Weight = 0.6539656324946691D;
|
||||
//
|
||||
// xrTableCell20
|
||||
//
|
||||
this.xrTableCell20.Borders = ((DevExpress.XtraPrinting.BorderSide)((((DevExpress.XtraPrinting.BorderSide.Left | DevExpress.XtraPrinting.BorderSide.Top)
|
||||
| DevExpress.XtraPrinting.BorderSide.Right)
|
||||
| DevExpress.XtraPrinting.BorderSide.Bottom)));
|
||||
this.xrTableCell20.Name = "xrTableCell20";
|
||||
this.xrTableCell20.Padding = new DevExpress.XtraPrinting.PaddingInfo(5, 5, 0, 0, 100F);
|
||||
this.xrTableCell20.StylePriority.UseBorders = false;
|
||||
this.xrTableCell20.StylePriority.UsePadding = false;
|
||||
this.xrTableCell20.StylePriority.UseTextAlignment = false;
|
||||
this.xrTableCell20.Text = "Betrag";
|
||||
this.xrTableCell20.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleRight;
|
||||
this.xrTableCell20.Weight = 1.0152204985905673D;
|
||||
//
|
||||
// xrLabel6
|
||||
//
|
||||
this.xrLabel6.LocationFloat = new DevExpress.Utils.PointFloat(0F, 446.875F);
|
||||
this.xrLabel6.Multiline = true;
|
||||
this.xrLabel6.Name = "xrLabel6";
|
||||
this.xrLabel6.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
|
||||
this.xrLabel6.SizeF = new System.Drawing.SizeF(666.9999F, 23.25F);
|
||||
this.xrLabel6.StylePriority.UseFont = false;
|
||||
this.xrLabel6.Text = "für den Betreuungszeitraum [AccountingPeriod] berechnen wir folgende Leistungen:";
|
||||
//
|
||||
// xrLabel5
|
||||
//
|
||||
this.xrLabel5.LocationFloat = new DevExpress.Utils.PointFloat(0F, 413.875F);
|
||||
this.xrLabel5.Multiline = true;
|
||||
this.xrLabel5.Name = "xrLabel5";
|
||||
this.xrLabel5.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
|
||||
this.xrLabel5.SizeF = new System.Drawing.SizeF(581.4177F, 17.00003F);
|
||||
this.xrLabel5.StylePriority.UseFont = false;
|
||||
this.xrLabel5.Text = "[RecipientSalutation]";
|
||||
//
|
||||
// xrLabel4
|
||||
//
|
||||
this.xrLabel4.BackColor = System.Drawing.Color.Transparent;
|
||||
this.xrLabel4.CanShrink = true;
|
||||
this.xrLabel4.Font = new System.Drawing.Font("Verdana", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.xrLabel4.LocationFloat = new DevExpress.Utils.PointFloat(0F, 363.875F);
|
||||
this.xrLabel4.Multiline = true;
|
||||
this.xrLabel4.Name = "xrLabel4";
|
||||
this.xrLabel4.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
|
||||
this.xrLabel4.SizeF = new System.Drawing.SizeF(650F, 17F);
|
||||
this.xrLabel4.StylePriority.UseBackColor = false;
|
||||
this.xrLabel4.StylePriority.UseFont = false;
|
||||
this.xrLabel4.Text = "[CustomerReferenceNumber]";
|
||||
this.xrLabel4.WordWrap = false;
|
||||
//
|
||||
// xrLabel3
|
||||
//
|
||||
this.xrLabel3.BackColor = System.Drawing.Color.Transparent;
|
||||
this.xrLabel3.CanShrink = true;
|
||||
this.xrLabel3.Font = new System.Drawing.Font("Verdana", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.xrLabel3.LocationFloat = new DevExpress.Utils.PointFloat(0F, 346.875F);
|
||||
this.xrLabel3.Name = "xrLabel3";
|
||||
this.xrLabel3.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
|
||||
this.xrLabel3.SizeF = new System.Drawing.SizeF(650F, 16F);
|
||||
this.xrLabel3.StylePriority.UseBackColor = false;
|
||||
this.xrLabel3.StylePriority.UseFont = false;
|
||||
this.xrLabel3.Text = "Abrechnung über Betreuungsleistungen";
|
||||
this.xrLabel3.WordWrap = false;
|
||||
//
|
||||
// xrLabel2
|
||||
//
|
||||
this.xrLabel2.BackColor = System.Drawing.Color.Transparent;
|
||||
this.xrLabel2.CanShrink = true;
|
||||
this.xrLabel2.Font = new System.Drawing.Font("Verdana", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.xrLabel2.LocationFloat = new DevExpress.Utils.PointFloat(0F, 321.875F);
|
||||
this.xrLabel2.Name = "xrLabel2";
|
||||
this.xrLabel2.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
|
||||
this.xrLabel2.SizeF = new System.Drawing.SizeF(650F, 17F);
|
||||
this.xrLabel2.StylePriority.UseBackColor = false;
|
||||
this.xrLabel2.StylePriority.UseFont = false;
|
||||
this.xrLabel2.Text = "Rechnung Nr. [InvoiceNumber]";
|
||||
this.xrLabel2.WordWrap = false;
|
||||
//
|
||||
// xrTable2
|
||||
//
|
||||
this.xrTable2.LocationFloat = new DevExpress.Utils.PointFloat(367.0001F, 129.875F);
|
||||
this.xrTable2.Name = "xrTable2";
|
||||
this.xrTable2.Rows.AddRange(new DevExpress.XtraReports.UI.XRTableRow[] {
|
||||
this.xrTableRow2,
|
||||
this.xrTableRow5,
|
||||
this.xrTableRow4,
|
||||
this.xrTableRow1,
|
||||
this.xrTableRow6,
|
||||
this.xrTableRow8});
|
||||
this.xrTable2.SizeF = new System.Drawing.SizeF(283F, 114F);
|
||||
//
|
||||
// xrTableRow2
|
||||
//
|
||||
this.xrTableRow2.Cells.AddRange(new DevExpress.XtraReports.UI.XRTableCell[] {
|
||||
this.xrTableCell4});
|
||||
this.xrTableRow2.Name = "xrTableRow2";
|
||||
this.xrTableRow2.Weight = 0.13245033112582783D;
|
||||
//
|
||||
// xrTableCell4
|
||||
//
|
||||
this.xrTableCell4.CanShrink = true;
|
||||
this.xrTableCell4.Name = "xrTableCell4";
|
||||
this.xrTableCell4.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
|
||||
this.xrTableCell4.ProcessNullValues = DevExpress.XtraReports.UI.ValueSuppressType.SuppressAndShrink;
|
||||
this.xrTableCell4.StylePriority.UseFont = false;
|
||||
this.xrTableCell4.StylePriority.UseTextAlignment = false;
|
||||
this.xrTableCell4.Text = "Ihr(e) Ansprechpartner(in):";
|
||||
this.xrTableCell4.TextAlignment = DevExpress.XtraPrinting.TextAlignment.TopRight;
|
||||
this.xrTableCell4.Weight = 1D;
|
||||
//
|
||||
// xrTableRow5
|
||||
//
|
||||
this.xrTableRow5.Cells.AddRange(new DevExpress.XtraReports.UI.XRTableCell[] {
|
||||
this.xrTableCell13});
|
||||
this.xrTableRow5.Name = "xrTableRow5";
|
||||
this.xrTableRow5.Weight = 0.13245033112582783D;
|
||||
//
|
||||
// xrTableCell13
|
||||
//
|
||||
this.xrTableCell13.CanShrink = true;
|
||||
this.xrTableCell13.Name = "xrTableCell13";
|
||||
this.xrTableCell13.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
|
||||
this.xrTableCell13.ProcessNullValues = DevExpress.XtraReports.UI.ValueSuppressType.SuppressAndShrink;
|
||||
this.xrTableCell13.StylePriority.UseFont = false;
|
||||
this.xrTableCell13.StylePriority.UseTextAlignment = false;
|
||||
this.xrTableCell13.Text = "[SenderFirstName] [SenderLastName]";
|
||||
this.xrTableCell13.TextAlignment = DevExpress.XtraPrinting.TextAlignment.TopRight;
|
||||
this.xrTableCell13.Weight = 1D;
|
||||
//
|
||||
// xrTableRow4
|
||||
//
|
||||
this.xrTableRow4.Cells.AddRange(new DevExpress.XtraReports.UI.XRTableCell[] {
|
||||
this.xrTableCell11});
|
||||
this.xrTableRow4.Name = "xrTableRow4";
|
||||
this.xrTableRow4.Weight = 0.13245033112582783D;
|
||||
//
|
||||
// xrTableCell11
|
||||
//
|
||||
this.xrTableCell11.CanShrink = true;
|
||||
this.xrTableCell11.Name = "xrTableCell11";
|
||||
this.xrTableCell11.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
|
||||
this.xrTableCell11.ProcessNullValues = DevExpress.XtraReports.UI.ValueSuppressType.SuppressAndShrink;
|
||||
this.xrTableCell11.StylePriority.UseFont = false;
|
||||
this.xrTableCell11.StylePriority.UseTextAlignment = false;
|
||||
this.xrTableCell11.Text = "[SenderDivision]";
|
||||
this.xrTableCell11.TextAlignment = DevExpress.XtraPrinting.TextAlignment.TopRight;
|
||||
this.xrTableCell11.Weight = 1D;
|
||||
//
|
||||
// xrTableRow1
|
||||
//
|
||||
this.xrTableRow1.Cells.AddRange(new DevExpress.XtraReports.UI.XRTableCell[] {
|
||||
this.xrTableCell1});
|
||||
this.xrTableRow1.Name = "xrTableRow1";
|
||||
this.xrTableRow1.Weight = 0.13245033112582783D;
|
||||
//
|
||||
// xrTableCell1
|
||||
//
|
||||
this.xrTableCell1.CanShrink = true;
|
||||
this.xrTableCell1.Name = "xrTableCell1";
|
||||
this.xrTableCell1.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
|
||||
this.xrTableCell1.ProcessNullValues = DevExpress.XtraReports.UI.ValueSuppressType.SuppressAndShrink;
|
||||
this.xrTableCell1.StylePriority.UseFont = false;
|
||||
this.xrTableCell1.StylePriority.UseTextAlignment = false;
|
||||
this.xrTableCell1.Text = " [SenderPhone]";
|
||||
this.xrTableCell1.TextAlignment = DevExpress.XtraPrinting.TextAlignment.TopRight;
|
||||
this.xrTableCell1.Weight = 1D;
|
||||
//
|
||||
// xrTableRow6
|
||||
//
|
||||
this.xrTableRow6.Cells.AddRange(new DevExpress.XtraReports.UI.XRTableCell[] {
|
||||
this.xrTableCell2});
|
||||
this.xrTableRow6.Name = "xrTableRow6";
|
||||
this.xrTableRow6.Weight = 0.11258278145695365D;
|
||||
//
|
||||
// xrTableCell2
|
||||
//
|
||||
this.xrTableCell2.CanShrink = true;
|
||||
this.xrTableCell2.Name = "xrTableCell2";
|
||||
this.xrTableCell2.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
|
||||
this.xrTableCell2.ProcessNullValues = DevExpress.XtraReports.UI.ValueSuppressType.SuppressAndShrink;
|
||||
this.xrTableCell2.StylePriority.UseFont = false;
|
||||
this.xrTableCell2.StylePriority.UseTextAlignment = false;
|
||||
this.xrTableCell2.Text = "[SenderFax]";
|
||||
this.xrTableCell2.TextAlignment = DevExpress.XtraPrinting.TextAlignment.TopRight;
|
||||
this.xrTableCell2.Weight = 1D;
|
||||
//
|
||||
// xrTableRow8
|
||||
//
|
||||
this.xrTableRow8.Cells.AddRange(new DevExpress.XtraReports.UI.XRTableCell[] {
|
||||
this.xrTableCell5});
|
||||
this.xrTableRow8.Name = "xrTableRow8";
|
||||
this.xrTableRow8.Weight = 0.11258278145695365D;
|
||||
//
|
||||
// xrTableCell5
|
||||
//
|
||||
this.xrTableCell5.Name = "xrTableCell5";
|
||||
this.xrTableCell5.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
|
||||
this.xrTableCell5.Weight = 1D;
|
||||
//
|
||||
// ruleRateFactorNull
|
||||
//
|
||||
this.ruleRateFactorNull.Condition = "[RateFactorText2] == ?";
|
||||
this.ruleRateFactorNull.Formatting.Visible = DevExpress.Utils.DefaultBoolean.False;
|
||||
this.ruleRateFactorNull.Name = "ruleRateFactorNull";
|
||||
//
|
||||
// ReportFooter
|
||||
//
|
||||
this.ReportFooter.Controls.AddRange(new DevExpress.XtraReports.UI.XRControl[] {
|
||||
this.xrLabel8,
|
||||
this.xrLabel10,
|
||||
this.xrLabel12,
|
||||
this.lblNotice,
|
||||
this.xrTable4});
|
||||
this.ReportFooter.Font = new System.Drawing.Font("Verdana", 10F);
|
||||
this.ReportFooter.HeightF = 247.5417F;
|
||||
this.ReportFooter.KeepTogether = true;
|
||||
this.ReportFooter.Name = "ReportFooter";
|
||||
this.ReportFooter.StylePriority.UseFont = false;
|
||||
//
|
||||
// xrLabel8
|
||||
//
|
||||
this.xrLabel8.CanShrink = true;
|
||||
this.xrLabel8.LocationFloat = new DevExpress.Utils.PointFloat(0F, 75F);
|
||||
this.xrLabel8.Multiline = true;
|
||||
this.xrLabel8.Name = "xrLabel8";
|
||||
this.xrLabel8.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
|
||||
this.xrLabel8.SizeF = new System.Drawing.SizeF(677F, 18.04168F);
|
||||
this.xrLabel8.StylePriority.UseFont = false;
|
||||
this.xrLabel8.Text = "[Notice]";
|
||||
//
|
||||
// xrLabel10
|
||||
//
|
||||
this.xrLabel10.LocationFloat = new DevExpress.Utils.PointFloat(0F, 155.5417F);
|
||||
this.xrLabel10.Name = "xrLabel10";
|
||||
this.xrLabel10.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
|
||||
this.xrLabel10.SizeF = new System.Drawing.SizeF(175F, 17F);
|
||||
this.xrLabel10.StylePriority.UseFont = false;
|
||||
this.xrLabel10.Text = "Mit freundlichen Grüßen";
|
||||
//
|
||||
// xrLabel12
|
||||
//
|
||||
this.xrLabel12.LocationFloat = new DevExpress.Utils.PointFloat(0F, 230.5417F);
|
||||
this.xrLabel12.Name = "xrLabel12";
|
||||
this.xrLabel12.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
|
||||
this.xrLabel12.SizeF = new System.Drawing.SizeF(292F, 17.00002F);
|
||||
this.xrLabel12.StylePriority.UseFont = false;
|
||||
this.xrLabel12.Text = "[CreatorFirstName] [CreatorLastName]";
|
||||
//
|
||||
// lblNotice
|
||||
//
|
||||
this.lblNotice.CanShrink = true;
|
||||
this.lblNotice.Font = new System.Drawing.Font("Verdana", 10F, System.Drawing.FontStyle.Italic);
|
||||
this.lblNotice.LocationFloat = new DevExpress.Utils.PointFloat(0F, 46.54166F);
|
||||
this.lblNotice.Name = "lblNotice";
|
||||
this.lblNotice.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
|
||||
this.lblNotice.SizeF = new System.Drawing.SizeF(250F, 28.45834F);
|
||||
this.lblNotice.StylePriority.UseFont = false;
|
||||
this.lblNotice.Text = "Abschließende Bemerkungen:";
|
||||
//
|
||||
// xrTable4
|
||||
//
|
||||
this.xrTable4.LocationFloat = new DevExpress.Utils.PointFloat(570.5F, 0F);
|
||||
this.xrTable4.Name = "xrTable4";
|
||||
this.xrTable4.Rows.AddRange(new DevExpress.XtraReports.UI.XRTableRow[] {
|
||||
this.xrTableRow11});
|
||||
this.xrTable4.SizeF = new System.Drawing.SizeF(101F, 25F);
|
||||
//
|
||||
// xrTableRow11
|
||||
//
|
||||
this.xrTableRow11.Cells.AddRange(new DevExpress.XtraReports.UI.XRTableCell[] {
|
||||
this.xrTableCell23});
|
||||
this.xrTableRow11.Name = "xrTableRow11";
|
||||
this.xrTableRow11.Weight = 1D;
|
||||
//
|
||||
// xrTableCell23
|
||||
//
|
||||
this.xrTableCell23.Borders = ((DevExpress.XtraPrinting.BorderSide)((((DevExpress.XtraPrinting.BorderSide.Left | DevExpress.XtraPrinting.BorderSide.Top)
|
||||
| DevExpress.XtraPrinting.BorderSide.Right)
|
||||
| DevExpress.XtraPrinting.BorderSide.Bottom)));
|
||||
this.xrTableCell23.BorderWidth = 2F;
|
||||
this.xrTableCell23.Font = new System.Drawing.Font("Verdana", 9.75F, System.Drawing.FontStyle.Bold);
|
||||
this.xrTableCell23.Name = "xrTableCell23";
|
||||
this.xrTableCell23.Padding = new DevExpress.XtraPrinting.PaddingInfo(0, 3, 0, 0, 100F);
|
||||
this.xrTableCell23.StylePriority.UseBorders = false;
|
||||
this.xrTableCell23.StylePriority.UseBorderWidth = false;
|
||||
this.xrTableCell23.StylePriority.UseFont = false;
|
||||
this.xrTableCell23.StylePriority.UsePadding = false;
|
||||
this.xrTableCell23.StylePriority.UseTextAlignment = false;
|
||||
this.xrTableCell23.Text = "[TotalClaim]";
|
||||
this.xrTableCell23.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleRight;
|
||||
this.xrTableCell23.Weight = 3.4827586206896557D;
|
||||
//
|
||||
// topMarginBand1
|
||||
//
|
||||
this.topMarginBand1.HeightF = 100F;
|
||||
this.topMarginBand1.Name = "topMarginBand1";
|
||||
//
|
||||
// bottomMarginBand1
|
||||
//
|
||||
this.bottomMarginBand1.HeightF = 100F;
|
||||
this.bottomMarginBand1.Name = "bottomMarginBand1";
|
||||
//
|
||||
// DetailReport
|
||||
//
|
||||
this.DetailReport.Bands.AddRange(new DevExpress.XtraReports.UI.Band[] {
|
||||
this.Detail1});
|
||||
this.DetailReport.DataMember = "InvoiceItems";
|
||||
this.DetailReport.DataSource = this.bindingSource1;
|
||||
this.DetailReport.Level = 0;
|
||||
this.DetailReport.Name = "DetailReport";
|
||||
//
|
||||
// Detail1
|
||||
//
|
||||
this.Detail1.Controls.AddRange(new DevExpress.XtraReports.UI.XRControl[] {
|
||||
this.xrTable1});
|
||||
this.Detail1.Font = new System.Drawing.Font("Verdana", 9.75F);
|
||||
this.Detail1.HeightF = 25F;
|
||||
this.Detail1.Name = "Detail1";
|
||||
this.Detail1.StylePriority.UseFont = false;
|
||||
//
|
||||
// bindingSource1
|
||||
//
|
||||
this.bindingSource1.DataSource = typeof(BeWo.Report.ReportObjects.InvoiceCustomerRO);
|
||||
//
|
||||
// xrPictureBox1
|
||||
//
|
||||
this.xrPictureBox1.Image = ((System.Drawing.Image)(resources.GetObject("xrPictureBox1.Image")));
|
||||
this.xrPictureBox1.LocationFloat = new DevExpress.Utils.PointFloat(396.9593F, 0F);
|
||||
this.xrPictureBox1.Name = "xrPictureBox1";
|
||||
this.xrPictureBox1.SizeF = new System.Drawing.SizeF(253.0407F, 107.25F);
|
||||
this.xrPictureBox1.Sizing = DevExpress.XtraPrinting.ImageSizeMode.ZoomImage;
|
||||
//
|
||||
// InvoiceCustomerReport
|
||||
//
|
||||
this.Bands.AddRange(new DevExpress.XtraReports.UI.Band[] {
|
||||
this.Detail,
|
||||
this.ReportHeader,
|
||||
this.ReportFooter,
|
||||
this.topMarginBand1,
|
||||
this.bottomMarginBand1,
|
||||
this.DetailReport});
|
||||
this.DataSource = this.bindingSource1;
|
||||
this.ExportOptions.PrintPreview.DefaultFileName = "Spitzabrechnung";
|
||||
this.FormattingRuleSheet.AddRange(new DevExpress.XtraReports.UI.FormattingRule[] {
|
||||
this.ruleRateFactorNull});
|
||||
this.Margins = new System.Drawing.Printing.Margins(75, 75, 100, 100);
|
||||
this.PageHeight = 1169;
|
||||
this.PageWidth = 827;
|
||||
this.PaperKind = System.Drawing.Printing.PaperKind.A4;
|
||||
this.Version = "17.1";
|
||||
((System.ComponentModel.ISupportInitialize)(this.xrTable1)).EndInit();
|
||||
((System.ComponentModel.ISupportInitialize)(this.xrTable3)).EndInit();
|
||||
((System.ComponentModel.ISupportInitialize)(this.xrTable2)).EndInit();
|
||||
((System.ComponentModel.ISupportInitialize)(this.xrTable4)).EndInit();
|
||||
((System.ComponentModel.ISupportInitialize)(this.bindingSource1)).EndInit();
|
||||
((System.ComponentModel.ISupportInitialize)(this)).EndInit();
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
private DevExpress.XtraReports.UI.DetailBand Detail;
|
||||
private System.Windows.Forms.BindingSource bindingSource1;
|
||||
private DevExpress.XtraReports.UI.ReportHeaderBand ReportHeader;
|
||||
private DevExpress.XtraReports.UI.XRLabel xrLabel6;
|
||||
private DevExpress.XtraReports.UI.XRLabel xrLabel5;
|
||||
private DevExpress.XtraReports.UI.XRLabel xrLabel4;
|
||||
private DevExpress.XtraReports.UI.XRLabel xrLabel3;
|
||||
private DevExpress.XtraReports.UI.XRLabel xrLabel2;
|
||||
private DevExpress.XtraReports.UI.XRTable xrTable2;
|
||||
private DevExpress.XtraReports.UI.XRTableRow xrTableRow2;
|
||||
private DevExpress.XtraReports.UI.XRTableCell xrTableCell4;
|
||||
private DevExpress.XtraReports.UI.XRTableRow xrTableRow5;
|
||||
private DevExpress.XtraReports.UI.XRTableCell xrTableCell13;
|
||||
private DevExpress.XtraReports.UI.XRTableRow xrTableRow4;
|
||||
private DevExpress.XtraReports.UI.XRTableCell xrTableCell11;
|
||||
private DevExpress.XtraReports.UI.XRTableRow xrTableRow1;
|
||||
private DevExpress.XtraReports.UI.XRTableCell xrTableCell1;
|
||||
private DevExpress.XtraReports.UI.XRTableRow xrTableRow6;
|
||||
private DevExpress.XtraReports.UI.XRTableCell xrTableCell2;
|
||||
private DevExpress.XtraReports.UI.XRTableRow xrTableRow8;
|
||||
private DevExpress.XtraReports.UI.XRTableCell xrTableCell5;
|
||||
private DevExpress.XtraReports.UI.ReportFooterBand ReportFooter;
|
||||
private DevExpress.XtraReports.UI.XRLabel lblNotice;
|
||||
private DevExpress.XtraReports.UI.XRLabel xrLabel12;
|
||||
private DevExpress.XtraReports.UI.XRLabel xrLabel10;
|
||||
private DevExpress.XtraReports.UI.FormattingRule ruleRateFactorNull;
|
||||
private DevExpress.XtraReports.UI.TopMarginBand topMarginBand1;
|
||||
private DevExpress.XtraReports.UI.BottomMarginBand bottomMarginBand1;
|
||||
private DevExpress.XtraReports.UI.XRTable xrTable1;
|
||||
private DevExpress.XtraReports.UI.XRTableRow xrTableRow9;
|
||||
private DevExpress.XtraReports.UI.XRTableCell xrTableCell6;
|
||||
private DevExpress.XtraReports.UI.XRTableCell xrTableCell7;
|
||||
private DevExpress.XtraReports.UI.XRTableCell xrTableCell9;
|
||||
private DevExpress.XtraReports.UI.XRTableCell xrTableCell10;
|
||||
private DevExpress.XtraReports.UI.XRTableCell xrTableCell12;
|
||||
private DevExpress.XtraReports.UI.XRTableCell xrTableCell14;
|
||||
private DevExpress.XtraReports.UI.XRTable xrTable3;
|
||||
private DevExpress.XtraReports.UI.XRTableRow xrTableRow10;
|
||||
private DevExpress.XtraReports.UI.XRTableCell xrTableCell15;
|
||||
private DevExpress.XtraReports.UI.XRTableCell xrTableCell16;
|
||||
private DevExpress.XtraReports.UI.XRTableCell xrTableCell17;
|
||||
private DevExpress.XtraReports.UI.XRTableCell xrTableCell18;
|
||||
private DevExpress.XtraReports.UI.XRTableCell xrTableCell19;
|
||||
private DevExpress.XtraReports.UI.XRTableCell xrTableCell20;
|
||||
private DevExpress.XtraReports.UI.XRLabel xrLabel8;
|
||||
private DevExpress.XtraReports.UI.XRTable xrTable4;
|
||||
private DevExpress.XtraReports.UI.XRTableRow xrTableRow11;
|
||||
private DevExpress.XtraReports.UI.XRTableCell xrTableCell23;
|
||||
private DevExpress.XtraReports.UI.DetailReportBand DetailReport;
|
||||
private DevExpress.XtraReports.UI.DetailBand Detail1;
|
||||
private DevExpress.XtraReports.UI.XRLabel lblAddress;
|
||||
private DevExpress.XtraReports.UI.XRLabel xrLabel1;
|
||||
private DevExpress.XtraReports.UI.XRPictureBox xrPictureBox1;
|
||||
}
|
||||
}
|
||||
58
ReportImp/AlzeyTeilhabe/InvoiceCustomerReport.cs
Normal file
58
ReportImp/AlzeyTeilhabe/InvoiceCustomerReport.cs
Normal file
@@ -0,0 +1,58 @@
|
||||
using System;
|
||||
using System.Text;
|
||||
using BeWo.Report;
|
||||
using BeWo.Report.ReportObjects;
|
||||
|
||||
namespace AlzeyTeilhabe
|
||||
{
|
||||
public partial class InvoiceCustomerReport : DevExpress.XtraReports.UI.XtraReport, IBeWoReport<InvoiceCustomerRO>
|
||||
{
|
||||
public InvoiceCustomerReport()
|
||||
{
|
||||
InitializeComponent();
|
||||
}
|
||||
|
||||
public void SetReportDataSource(InvoiceCustomerRO pRO)
|
||||
{
|
||||
if (String.IsNullOrEmpty(pRO.Notice))
|
||||
{
|
||||
lblNotice.Visible = false;
|
||||
}
|
||||
|
||||
StringBuilder sb = new StringBuilder();
|
||||
if (!String.IsNullOrEmpty(pRO.RecipientOrganisation) && !String.IsNullOrEmpty(pRO.RecipientOrganisation.Trim()))
|
||||
{
|
||||
sb.AppendLine(pRO.RecipientOrganisation);
|
||||
}
|
||||
if (!String.IsNullOrEmpty(pRO.RecipientDivision) && !String.IsNullOrEmpty(pRO.RecipientDivision.Trim()))
|
||||
{
|
||||
sb.AppendLine(pRO.RecipientDivision);
|
||||
}
|
||||
if ((!String.IsNullOrEmpty(pRO.RecipientFirstName) && !String.IsNullOrEmpty(pRO.RecipientFirstName.Trim()))
|
||||
|| (!String.IsNullOrEmpty(pRO.RecipientLastName) && !String.IsNullOrEmpty(pRO.RecipientLastName.Trim())))
|
||||
{
|
||||
sb.AppendLine(String.Format("{0} {1}", pRO.RecipientFirstName, pRO.RecipientLastName).Trim());
|
||||
}
|
||||
if (!String.IsNullOrEmpty(pRO.RecipientStreet) && !String.IsNullOrEmpty(pRO.RecipientStreet.Trim()))
|
||||
{
|
||||
sb.AppendLine(pRO.RecipientStreet);
|
||||
}
|
||||
if (!String.IsNullOrEmpty(pRO.RecipientPostCode) && !String.IsNullOrEmpty(pRO.RecipientPostCode.Trim()))
|
||||
{
|
||||
sb.Append(pRO.RecipientPostCode);
|
||||
sb.Append(" ");
|
||||
}
|
||||
if (!String.IsNullOrEmpty(pRO.RecipientTown) && !String.IsNullOrEmpty(pRO.RecipientTown.Trim()))
|
||||
{
|
||||
sb.Append(pRO.RecipientTown);
|
||||
}
|
||||
lblAddress.Text = sb.ToString();
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
this.bindingSource1.DataSource = pRO;
|
||||
}
|
||||
}
|
||||
}
|
||||
1140
ReportImp/AlzeyTeilhabe/InvoiceCustomerReport.resx
Normal file
1140
ReportImp/AlzeyTeilhabe/InvoiceCustomerReport.resx
Normal file
File diff suppressed because it is too large
Load Diff
BIN
ReportImp/AlzeyTeilhabe/LogoNeu.jpg
Normal file
BIN
ReportImp/AlzeyTeilhabe/LogoNeu.jpg
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 84 KiB |
20
ReportImp/AlzeyTeilhabe/RechnungPa.Designer.cs
generated
20
ReportImp/AlzeyTeilhabe/RechnungPa.Designer.cs
generated
@@ -65,7 +65,6 @@ namespace AlzeyTeilhabe
|
||||
this.xrLabel5 = new DevExpress.XtraReports.UI.XRLabel();
|
||||
this.xrPictureBox2 = new DevExpress.XtraReports.UI.XRPictureBox();
|
||||
this.xrLabel4 = new DevExpress.XtraReports.UI.XRLabel();
|
||||
this.xrPictureBox1 = new DevExpress.XtraReports.UI.XRPictureBox();
|
||||
this.lblAbrechnungstext = new DevExpress.XtraReports.UI.XRLabel();
|
||||
this.xrLabel3 = new DevExpress.XtraReports.UI.XRLabel();
|
||||
this.xrLabel2 = new DevExpress.XtraReports.UI.XRLabel();
|
||||
@@ -91,6 +90,7 @@ namespace AlzeyTeilhabe
|
||||
this.xrLabel6 = new DevExpress.XtraReports.UI.XRLabel();
|
||||
this.xrLabel1 = new DevExpress.XtraReports.UI.XRLabel();
|
||||
this.bindingSource1 = new System.Windows.Forms.BindingSource(this.components);
|
||||
this.xrPictureBox1 = new DevExpress.XtraReports.UI.XRPictureBox();
|
||||
((System.ComponentModel.ISupportInitialize)(this.xrTable2)).BeginInit();
|
||||
((System.ComponentModel.ISupportInitialize)(this.xrRichText2)).BeginInit();
|
||||
((System.ComponentModel.ISupportInitialize)(this.xrTable1)).BeginInit();
|
||||
@@ -446,14 +446,6 @@ namespace AlzeyTeilhabe
|
||||
this.xrLabel4.StylePriority.UseFont = false;
|
||||
this.xrLabel4.Text = "Verein für Integration und Teilhabe am Leben e.V. • Kästrich 6 • 55232 Alzey";
|
||||
//
|
||||
// xrPictureBox1
|
||||
//
|
||||
this.xrPictureBox1.Image = ((System.Drawing.Image)(resources.GetObject("xrPictureBox1.Image")));
|
||||
this.xrPictureBox1.LocationFloat = new DevExpress.Utils.PointFloat(0.001097379F, 0F);
|
||||
this.xrPictureBox1.Name = "xrPictureBox1";
|
||||
this.xrPictureBox1.SizeF = new System.Drawing.SizeF(626.39F, 107.25F);
|
||||
this.xrPictureBox1.Sizing = DevExpress.XtraPrinting.ImageSizeMode.ZoomImage;
|
||||
//
|
||||
// lblAbrechnungstext
|
||||
//
|
||||
this.lblAbrechnungstext.Font = new System.Drawing.Font("Arial", 10F);
|
||||
@@ -751,6 +743,14 @@ namespace AlzeyTeilhabe
|
||||
//
|
||||
this.bindingSource1.DataSource = typeof(BeWo.Report.ReportObjects.ServiceInvoiceRO);
|
||||
//
|
||||
// xrPictureBox1
|
||||
//
|
||||
this.xrPictureBox1.Image = ((System.Drawing.Image)(resources.GetObject("xrPictureBox1.Image")));
|
||||
this.xrPictureBox1.LocationFloat = new DevExpress.Utils.PointFloat(462.6025F, 0F);
|
||||
this.xrPictureBox1.Name = "xrPictureBox1";
|
||||
this.xrPictureBox1.SizeF = new System.Drawing.SizeF(253.0407F, 107.25F);
|
||||
this.xrPictureBox1.Sizing = DevExpress.XtraPrinting.ImageSizeMode.ZoomImage;
|
||||
//
|
||||
// RechnungPa
|
||||
//
|
||||
this.Bands.AddRange(new DevExpress.XtraReports.UI.Band[] {
|
||||
@@ -812,7 +812,6 @@ namespace AlzeyTeilhabe
|
||||
private DevExpress.XtraReports.UI.XRLabel xrLabel10;
|
||||
private DevExpress.XtraReports.UI.XRLabel xrLabel3;
|
||||
private DevExpress.XtraReports.UI.XRLabel lblAbrechnungstext;
|
||||
private DevExpress.XtraReports.UI.XRPictureBox xrPictureBox1;
|
||||
private DevExpress.XtraReports.UI.XRLabel xrLabel4;
|
||||
private DevExpress.XtraReports.UI.XRTable xrTable1;
|
||||
private DevExpress.XtraReports.UI.XRTableRow xrTableRow1;
|
||||
@@ -842,5 +841,6 @@ namespace AlzeyTeilhabe
|
||||
private DevExpress.XtraReports.UI.XRTableCell xrTableCell14;
|
||||
private DevExpress.XtraReports.UI.XRTableCell xrTableCell15;
|
||||
private DevExpress.XtraReports.UI.XRLabel xrLabel8;
|
||||
private DevExpress.XtraReports.UI.XRPictureBox xrPictureBox1;
|
||||
}
|
||||
}
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
1176
ReportImp/AlzeyTeilhabe/SettlementReport.Designer.cs
generated
Normal file
1176
ReportImp/AlzeyTeilhabe/SettlementReport.Designer.cs
generated
Normal file
File diff suppressed because it is too large
Load Diff
222
ReportImp/AlzeyTeilhabe/SettlementReport.cs
Normal file
222
ReportImp/AlzeyTeilhabe/SettlementReport.cs
Normal file
@@ -0,0 +1,222 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using BeWo.Data.Access;
|
||||
using BeWo.Data.Entities;
|
||||
using BeWo.Report;
|
||||
using BeWo.Report.ReportObjects;
|
||||
using BS.Shared.DataContracts;
|
||||
|
||||
namespace AlzeyTeilhabe.Alt
|
||||
{
|
||||
public partial class Spitzabrechnung : DevExpress.XtraReports.UI.XtraReport, IBeWoReport<SettlementRO>
|
||||
{
|
||||
public Spitzabrechnung()
|
||||
{
|
||||
InitializeComponent();
|
||||
}
|
||||
|
||||
public void SetReportDataSource(SettlementRO pRO)
|
||||
{
|
||||
bool isDefaultSpitzabrechnung = false;
|
||||
|
||||
if (String.IsNullOrEmpty(pRO.Notice))
|
||||
{
|
||||
lblNotice.Visible = false;
|
||||
}
|
||||
|
||||
if (pRO.InvoiceItems != null && pRO.InvoiceItems.Count == 1)
|
||||
{
|
||||
var ii = pRO.InvoiceItems[0];
|
||||
if ((ii.ItemDescription == "Spitzabrechung" || ii.ItemDescription == "Spitzabrechnung") && ii.GrossAmountTotal == null && ii.RateFactor == null)
|
||||
{
|
||||
isDefaultSpitzabrechnung = true;
|
||||
}
|
||||
}
|
||||
if (!isDefaultSpitzabrechnung)
|
||||
{
|
||||
if (pRO.DifferentHourlyRateCount > 0 && pRO.HourlyRateNew.HasValue)
|
||||
{
|
||||
isDefaultSpitzabrechnung = true;
|
||||
}
|
||||
}
|
||||
|
||||
if (isDefaultSpitzabrechnung)
|
||||
{
|
||||
//UpdateAbrechnungsFelder(pRO);
|
||||
|
||||
pRO.InvoiceItems = CreateDefaultSpitzabrechnungInvoiceItems(pRO);
|
||||
}
|
||||
else
|
||||
{
|
||||
var id = GetCustomerId(pRO);
|
||||
if (id == "LWLNEU")
|
||||
{
|
||||
pRO.RateFactorText = null;
|
||||
pRO.RateFactorText2 = null;
|
||||
|
||||
if (pRO.InvoiceItems != null)
|
||||
{
|
||||
foreach (var ii in pRO.InvoiceItems)
|
||||
{
|
||||
ii.ItemDescription = String.Format("{0:dd.MM.yyyy} bis {1:dd.MM.yyyy}: {2:0.##} FLS x {3:c}",
|
||||
ii.ItemPeriodStart, ii.ItemPeriodEnd, ii.UnitCount, ii.AmountPerUnit);
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if (pRO.InvoiceItems != null)
|
||||
{
|
||||
foreach (var ii in pRO.InvoiceItems)
|
||||
{
|
||||
ii.ItemDescription = String.Format("{0:dd.MM.yyyy} bis {1:dd.MM.yyyy}: {2:0.##} FLS {3}x {4:c}",
|
||||
ii.ItemPeriodStart, ii.ItemPeriodEnd,
|
||||
ii.UnitCount, ii.RateFactor == 0 ? "" : "x " + pRO.RateFactorText2 + " ",
|
||||
ii.AmountPerUnit);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
this.bindingSource1.DataSource = pRO;
|
||||
}
|
||||
|
||||
private String GetCustomerId(SettlementRO pRO)
|
||||
{
|
||||
var cb2sc = DAOFactory.GenericDAO.LoadByID<CostBearer2SupportConcept>(pRO.CostBearer2SupportConceptOid);
|
||||
return cb2sc.CostBearer.ID;
|
||||
}
|
||||
|
||||
private IList<InvoiceItemDC> CreateDefaultSpitzabrechnungInvoiceItems(SettlementRO pRO)
|
||||
{
|
||||
IList<InvoiceItemDC> itemList = new List<InvoiceItemDC>();
|
||||
if (pRO.DifferentHourlyRateCount == 3)
|
||||
{
|
||||
itemList.Add(new InvoiceItemDC
|
||||
{
|
||||
ItemDescription = String.Format("{0} bis {1}: {2:0.##} FLS {3}x {4:c}",
|
||||
pRO.AccountingStartDateString, pRO.HourlyRate3EndDateString,
|
||||
pRO.GeleisteteFLSMitStundensatz3, pRO.RateFactor == 1 ? "" : "x " + pRO.RateFactorText2 + " ", pRO.HourlyRate3),
|
||||
|
||||
GrossAmountTotal = pRO.GeleisteteFLSMitStundensatz3 * pRO.RateFactor * pRO.HourlyRate3
|
||||
});
|
||||
|
||||
itemList.Add(new InvoiceItemDC
|
||||
{
|
||||
ItemDescription = String.Format("{0} bis {1}: {2:0.##} FLS {3}x {4:c}",
|
||||
pRO.HourlyRateOldStartDateString, pRO.HourlyRateOldEndDateString,
|
||||
pRO.GeleisteteFLSMitStundensatzAlt, pRO.RateFactor == 1 ? "" : "x " + pRO.RateFactorText2 + " ", pRO.HourlyRateOld),
|
||||
|
||||
GrossAmountTotal = pRO.GeleisteteFLSMitStundensatzAlt * pRO.RateFactor * pRO.HourlyRateOld
|
||||
});
|
||||
|
||||
itemList.Add(new InvoiceItemDC
|
||||
{
|
||||
ItemDescription = String.Format("{0} bis {1}: {2:0.##} FLS {3}x {4:c}",
|
||||
pRO.HourlyRateNewStartDateString, pRO.AccountingEndDateString,
|
||||
pRO.GeleisteteFLSMitStundensatzAktuell, pRO.RateFactor == 1 ? "" : "x " + pRO.RateFactorText2 + " ", pRO.HourlyRateNew),
|
||||
|
||||
GrossAmountTotal = pRO.GeleisteteFLSMitStundensatzAktuell * pRO.RateFactor * pRO.HourlyRateNew
|
||||
});
|
||||
|
||||
}
|
||||
else if (pRO.DifferentHourlyRateCount == 2)
|
||||
{
|
||||
itemList.Add(new InvoiceItemDC
|
||||
{
|
||||
ItemDescription = String.Format("{0} bis {1}: {2:0.##} FLS {3}x {4:c}",
|
||||
pRO.AccountingStartDateString, pRO.HourlyRateOldEndDateString,
|
||||
pRO.GeleisteteFLSMitStundensatzAlt, pRO.RateFactor == 1 ? "" : "x " + pRO.RateFactorText2 + " ", pRO.HourlyRateOld),
|
||||
|
||||
GrossAmountTotal = pRO.GeleisteteFLSMitStundensatzAlt * (decimal)pRO.RateFactor * pRO.HourlyRateOld
|
||||
});
|
||||
|
||||
itemList.Add(new InvoiceItemDC
|
||||
{
|
||||
ItemDescription = String.Format("{0} bis {1}: {2:0.##} FLS {3}x {4:c}",
|
||||
pRO.HourlyRateNewStartDateString, pRO.AccountingEndDateString,
|
||||
pRO.GeleisteteFLSMitStundensatzAktuell, pRO.RateFactor == 1 ? "" : "x " + pRO.RateFactorText2 + " ", pRO.HourlyRateNew),
|
||||
|
||||
GrossAmountTotal = pRO.GeleisteteFLSMitStundensatzAktuell * pRO.RateFactor * pRO.HourlyRateNew
|
||||
});
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
itemList.Add(new InvoiceItemDC
|
||||
{
|
||||
ItemDescription = String.Format("{0} bis {1}: {2:0.##} FLS {3}x {4:c}",
|
||||
pRO.AccountingStartDateString, pRO.AccountingEndDateString,
|
||||
pRO.GeleisteteFLSMitStundensatzAktuell, pRO.RateFactor == 1 ? "" : "x " + pRO.RateFactorText2 + " ", pRO.HourlyRateNew),
|
||||
|
||||
GrossAmountTotal = pRO.GeleisteteFLSMitStundensatzAktuell * pRO.RateFactor * pRO.HourlyRateNew
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
return itemList;
|
||||
}
|
||||
|
||||
private void UpdateAbrechnungsFelder(SettlementRO pRO)
|
||||
{
|
||||
if (pRO.DifferentHourlyRateCount == 3)
|
||||
{
|
||||
//Erbrachte Leistungen (FLS) - bis [HourlyRateOldEndDateString] à [HourlyRateOldString] €
|
||||
|
||||
pRO.Abrechnungstext1 = String.Format("{0} bis {1}",
|
||||
pRO.AccountingStartDateString, pRO.HourlyRate3EndDateString);
|
||||
|
||||
pRO.Abrechnungstext1 += String.Format(": {0:0.##} FLS {1}x {2:c}",
|
||||
pRO.GeleisteteFLSMitStundensatz3, pRO.RateFactor == 1 ? "" : "x " + pRO.RateFactorText2 + " ", pRO.HourlyRate3);
|
||||
|
||||
//[AccountingStartDateString] - [HourlyRate3EndDateString] sind [RecordedFLSWithHourlyRate3String] Std. x [HourlyRate3String] € =";
|
||||
|
||||
pRO.Betrag1 = String.Format("{0:c}", pRO.GeleisteteFLSMitStundensatz3 * (decimal)pRO.RateFactor * pRO.HourlyRate3);
|
||||
|
||||
|
||||
pRO.Abrechnungstext2 = String.Format("{0} bis {1}",
|
||||
pRO.HourlyRateOldStartDateString, pRO.HourlyRateOldEndDateString);
|
||||
pRO.Abrechnungstext2 += String.Format(": {0:0.##} FLS {1}x {2:c}",
|
||||
pRO.GeleisteteFLSMitStundensatzAlt, pRO.RateFactor == 1 ? "" : "x " + pRO.RateFactorText2 + " ", pRO.HourlyRateOld);
|
||||
|
||||
pRO.Betrag2 = String.Format("{0:c}", pRO.GeleisteteFLSMitStundensatzAlt * (decimal)pRO.RateFactor * pRO.HourlyRateOld);
|
||||
|
||||
|
||||
pRO.Abrechnungstext3 = String.Format("{0} bis {1}",
|
||||
pRO.HourlyRateNewStartDateString, pRO.AccountingEndDateString);
|
||||
pRO.Abrechnungstext3 += String.Format(": {0:0.##} FLS {1}x {2:c}",
|
||||
pRO.GeleisteteFLSMitStundensatzAktuell, pRO.RateFactor == 1 ? "" : "x " + pRO.RateFactorText2 + " ", pRO.HourlyRateNew);
|
||||
|
||||
pRO.Betrag3 = String.Format("{0:c}", pRO.GeleisteteFLSMitStundensatzAktuell * (decimal)pRO.RateFactor * pRO.HourlyRateNew);
|
||||
}
|
||||
else if (pRO.DifferentHourlyRateCount == 2)
|
||||
{
|
||||
|
||||
pRO.Abrechnungstext2 = String.Format("{0} bis {1}",
|
||||
pRO.AccountingStartDateString, pRO.HourlyRateOldEndDateString);
|
||||
pRO.Abrechnungstext2 += String.Format(": {0:0.##} FLS {1}x {2:c}",
|
||||
pRO.GeleisteteFLSMitStundensatzAlt, pRO.RateFactor == 1 ? "" : "x " + pRO.RateFactorText2 + " ", pRO.HourlyRateOld);
|
||||
|
||||
pRO.Betrag2 = String.Format("{0:c}", pRO.GeleisteteFLSMitStundensatzAlt * (decimal)pRO.RateFactor * pRO.HourlyRateOld);
|
||||
|
||||
|
||||
pRO.Abrechnungstext3 = String.Format("{0} bis {1}",
|
||||
pRO.HourlyRateNewStartDateString, pRO.AccountingEndDateString);
|
||||
pRO.Abrechnungstext3 += String.Format(": {0:0.##} FLS {1}x {2:c}",
|
||||
pRO.GeleisteteFLSMitStundensatzAktuell, pRO.RateFactor == 1 ? "" : "x " + pRO.RateFactorText2 + " ", pRO.HourlyRateNew);
|
||||
|
||||
pRO.Betrag3 = String.Format("{0:c}", pRO.GeleisteteFLSMitStundensatzAktuell * (decimal)pRO.RateFactor * pRO.HourlyRateNew);
|
||||
}
|
||||
else
|
||||
{
|
||||
pRO.Abrechnungstext3 = String.Format("{0} bis {1}",
|
||||
pRO.AccountingStartDateString, pRO.AccountingEndDateString);
|
||||
pRO.Abrechnungstext3 += String.Format(": {0:0.##} FLS {1}x {2:c}",
|
||||
pRO.GeleisteteFLSMitStundensatzAktuell, pRO.RateFactor == 1 ? "" : "x " + pRO.RateFactorText2 + " ", pRO.HourlyRateNew);
|
||||
|
||||
pRO.Betrag3 = String.Format("{0:c}", pRO.GeleisteteFLSMitStundensatzAktuell * (decimal)pRO.RateFactor * pRO.HourlyRateNew);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
1144
ReportImp/AlzeyTeilhabe/SettlementReport.resx
Normal file
1144
ReportImp/AlzeyTeilhabe/SettlementReport.resx
Normal file
File diff suppressed because it is too large
Load Diff
1171
ReportImp/AlzeyTeilhabe/SettlementReport2.Designer.cs
generated
Normal file
1171
ReportImp/AlzeyTeilhabe/SettlementReport2.Designer.cs
generated
Normal file
File diff suppressed because it is too large
Load Diff
56
ReportImp/AlzeyTeilhabe/SettlementReport2.cs
Normal file
56
ReportImp/AlzeyTeilhabe/SettlementReport2.cs
Normal file
@@ -0,0 +1,56 @@
|
||||
using System;
|
||||
using System.Drawing;
|
||||
using System.Collections;
|
||||
using System.ComponentModel;
|
||||
using DevExpress.XtraReports.UI;
|
||||
using BeWo.Report.ReportObjects;
|
||||
using BeWo.Report;
|
||||
using System.Text.RegularExpressions;
|
||||
using BS.Shared.Extensions;
|
||||
|
||||
namespace AlzeyTeilhabe
|
||||
{
|
||||
public partial class Spitzabrechnung : DevExpress.XtraReports.UI.XtraReport, IBeWoReport<Settlement2RO>
|
||||
{
|
||||
public Spitzabrechnung()
|
||||
{
|
||||
InitializeComponent();
|
||||
}
|
||||
|
||||
public void SetReportDataSource(Settlement2RO pRO)
|
||||
{
|
||||
if (String.IsNullOrEmpty(pRO.Notice))
|
||||
{
|
||||
lblNotice.Visible = false;
|
||||
}
|
||||
|
||||
decimal rateFactor = 1;
|
||||
|
||||
foreach (var ii in pRO.InvoiceItems)
|
||||
{
|
||||
if (ii.RateFactor.HasValue)
|
||||
{
|
||||
rateFactor = (100 + ii.RateFactor.Value) / 100;
|
||||
}
|
||||
|
||||
if (!pRO.FehlkontakteString.IsNullOrEmpty() && ii.RateFactor == 0)
|
||||
{
|
||||
Zwischensumme.Visible = true;
|
||||
//if (!ii.ItemDescription.IsNullOrEmpty())
|
||||
//{
|
||||
//ii.AbrechnungsText = Regex.Replace(ii.DetailDescription, ii.ItemDescription, "Fehlkontakte");
|
||||
//}
|
||||
ii.AbrechnungsText = ii.AbrechnungsText.Replace("FLS", "Std.");
|
||||
ii.ItemDescription = "Fehlkontakte";
|
||||
}
|
||||
else if (ii.ItemDescription.IsNullOrEmpty())
|
||||
{
|
||||
ii.ItemDescription = "Fachleistungsstunden";
|
||||
}
|
||||
}
|
||||
pRO.RateFactor = (double)rateFactor;
|
||||
|
||||
this.bindingSource1.DataSource = pRO;
|
||||
}
|
||||
}
|
||||
}
|
||||
1144
ReportImp/AlzeyTeilhabe/SettlementReport2.resx
Normal file
1144
ReportImp/AlzeyTeilhabe/SettlementReport2.resx
Normal file
File diff suppressed because it is too large
Load Diff
@@ -306,7 +306,6 @@ namespace BeWoDarmstadt
|
||||
{
|
||||
AddValueToCell(zs.MinutenNachtSo21_6, datum, table1.Rows[7], nachtSo2Minuten);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
private void AddValueToTableLeistungen(ServiceRecord sr)
|
||||
@@ -470,6 +469,10 @@ namespace BeWoDarmstadt
|
||||
|
||||
private double CheckUhrzeiten(DateTime start, int startStunde, int endStunde, double minuten)
|
||||
{
|
||||
if (startStunde > 0 && start.Hour == 0 && start.Minute == 0 && start.Second > 0)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
if (startStunde > endStunde) //Nachts
|
||||
{
|
||||
DateTime nachtStartDt = start.Date.AddHours(startStunde);
|
||||
@@ -485,7 +488,7 @@ namespace BeWoDarmstadt
|
||||
return minutes;
|
||||
}
|
||||
else
|
||||
{
|
||||
{
|
||||
DateTime tagsStartDt = start.Date.AddHours(startStunde);
|
||||
DateTime tagsEndDt = start.Date.AddHours(endStunde);
|
||||
DateTime dtEnd = start.AddMinutes(minuten);
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
<DebugType>full</DebugType>
|
||||
<Optimize>false</Optimize>
|
||||
<OutputPath>..\..\Host\bin\</OutputPath>
|
||||
<OutputPath>..\..\CustomerDlls\</OutputPath>
|
||||
<DefineConstants>DEBUG;TRACE</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
@@ -25,7 +25,7 @@
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||
<DebugType>pdbonly</DebugType>
|
||||
<Optimize>true</Optimize>
|
||||
<OutputPath>..\..\Host\bin\</OutputPath>
|
||||
<OutputPath>..\..\CustomerDlls\</OutputPath>
|
||||
<DefineConstants>TRACE</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
37
ReportImp/MobileEV/Invoicing/BetreuungsaufwandHelper.cs
Normal file
37
ReportImp/MobileEV/Invoicing/BetreuungsaufwandHelper.cs
Normal file
@@ -0,0 +1,37 @@
|
||||
using BS.Shared.DataContracts;
|
||||
using BS.Shared.Extensions;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace MobileEV.Invoicing
|
||||
{
|
||||
public class BetreuungsaufwandHelper
|
||||
{
|
||||
public static decimal GetBetreuungsaufwand(ServiceRecordDC sr)
|
||||
{
|
||||
decimal amount = 0;
|
||||
if (sr != null && !sr.Notice3.IsNullOrEmpty())
|
||||
{
|
||||
sr.Notice3 = sr.Notice3.Trim();
|
||||
if (sr.Notice3.Contains("."))
|
||||
sr.Notice3 = sr.Notice3.Replace('.', ',');
|
||||
if (sr.Notice3.Contains("€"))
|
||||
{
|
||||
if (Decimal.TryParse(sr.Notice3.Replace("€", ""), out amount))
|
||||
{
|
||||
return amount;
|
||||
}
|
||||
}
|
||||
else if (Decimal.TryParse(sr.Notice3, out amount))
|
||||
{
|
||||
return amount;
|
||||
}
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -4,6 +4,7 @@ using System.Linq;
|
||||
using System.Text;
|
||||
using BeWo.Data.Access;
|
||||
using BeWo.Data.Entities;
|
||||
using BeWo.Service.DCEntityMapper;
|
||||
using BeWo.Service.Invoicing;
|
||||
using BS.Shared.Core;
|
||||
using BS.Shared.DataContracts;
|
||||
@@ -29,36 +30,20 @@ namespace MobileEV.Invoicing
|
||||
{
|
||||
var invoiceItem = base.CreateInvoiceItem(iServiceRecord, scap, calc);
|
||||
|
||||
var betreuungsaufwand = GetBetreuungsaufwand(invoiceItem);
|
||||
if (betreuungsaufwand != null && betreuungsaufwand != 0)
|
||||
{
|
||||
invoiceItem.AmountTotal += betreuungsaufwand;
|
||||
invoiceItem.GrossAmountTotal += betreuungsaufwand;
|
||||
}
|
||||
invoiceItem.UnitCount = Convert.ToDecimal(Math.Round(Convert.ToDouble(invoiceItem.UnitCount), 2));
|
||||
invoiceItem.AmountTotal = invoiceItem.UnitCount * invoiceItem.AmountPerUnit;
|
||||
invoiceItem.GrossAmountTotal = invoiceItem.AmountTotal;
|
||||
|
||||
if (invoiceItem.ServiceRecord != null)
|
||||
{
|
||||
var betreuungsaufwand = BetreuungsaufwandHelper.GetBetreuungsaufwand(MapperFactory.ServiceRecordDC_ServiceRecord.MapToNewDC(invoiceItem.ServiceRecord));
|
||||
if (betreuungsaufwand != null && betreuungsaufwand != 0)
|
||||
{
|
||||
invoiceItem.AmountTotal += betreuungsaufwand;
|
||||
invoiceItem.GrossAmountTotal += betreuungsaufwand;
|
||||
}
|
||||
}
|
||||
return invoiceItem;
|
||||
}
|
||||
|
||||
private decimal GetBetreuungsaufwand(InvoiceItem ii)
|
||||
{
|
||||
decimal amount = 0;
|
||||
if (ii.ServiceRecord != null && !ii.ServiceRecord.Notice3.IsNullOrEmpty())
|
||||
{
|
||||
ii.ServiceRecord.Notice3 = ii.ServiceRecord.Notice3.Trim();
|
||||
if (ii.ServiceRecord.Notice3.Contains("€"))
|
||||
{
|
||||
if (Decimal.TryParse(ii.ServiceRecord.Notice3.Replace("€", ""), out amount))
|
||||
{
|
||||
return amount;
|
||||
}
|
||||
}
|
||||
else if (Decimal.TryParse(ii.ServiceRecord.Notice3, out amount))
|
||||
{
|
||||
return amount;
|
||||
}
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -49,6 +49,7 @@
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="CustomReportCreator.cs" />
|
||||
<Compile Include="Invoicing\BetreuungsaufwandHelper.cs" />
|
||||
<Compile Include="Invoicing\CustomInvoiceFactory.cs" />
|
||||
<Compile Include="Invoicing\CustomInvoiceCreation.cs" />
|
||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||
|
||||
102
ReportImp/MobileEV/Sammelrechnung.Designer.cs
generated
102
ReportImp/MobileEV/Sammelrechnung.Designer.cs
generated
@@ -40,6 +40,8 @@ namespace MobileEV
|
||||
this.xrTableCell14 = new DevExpress.XtraReports.UI.XRTableCell();
|
||||
this.xrTableRow9 = new DevExpress.XtraReports.UI.XRTableRow();
|
||||
this.xrTableCell7 = new DevExpress.XtraReports.UI.XRTableCell();
|
||||
this.xrTableRow17 = new DevExpress.XtraReports.UI.XRTableRow();
|
||||
this.xrTableCell27 = new DevExpress.XtraReports.UI.XRTableCell();
|
||||
this.xrTableRow2 = new DevExpress.XtraReports.UI.XRTableRow();
|
||||
this.xrTableCell4 = new DevExpress.XtraReports.UI.XRTableCell();
|
||||
this.xrTableRow5 = new DevExpress.XtraReports.UI.XRTableRow();
|
||||
@@ -64,6 +66,7 @@ namespace MobileEV
|
||||
this.ruleRateFactorNull = new DevExpress.XtraReports.UI.FormattingRule();
|
||||
this.topMarginBand1 = new DevExpress.XtraReports.UI.TopMarginBand();
|
||||
this.bottomMarginBand1 = new DevExpress.XtraReports.UI.BottomMarginBand();
|
||||
this.lblPage = new DevExpress.XtraReports.UI.XRLabel();
|
||||
this.xrRichText1 = new DevExpress.XtraReports.UI.XRRichText();
|
||||
this.Page1 = new DevExpress.XtraReports.UI.GroupHeaderBand();
|
||||
this.xrLabel4 = new DevExpress.XtraReports.UI.XRLabel();
|
||||
@@ -133,8 +136,7 @@ namespace MobileEV
|
||||
this.lblSumme4 = new DevExpress.XtraReports.UI.XRTableCell();
|
||||
this.xrLabel5 = new DevExpress.XtraReports.UI.XRLabel();
|
||||
this.bindingSource1 = new System.Windows.Forms.BindingSource(this.components);
|
||||
this.xrTableRow17 = new DevExpress.XtraReports.UI.XRTableRow();
|
||||
this.xrTableCell27 = new DevExpress.XtraReports.UI.XRTableCell();
|
||||
this.Zwischensumme = new DevExpress.XtraReports.UI.FormattingRule();
|
||||
((System.ComponentModel.ISupportInitialize)(this.xrTable2)).BeginInit();
|
||||
((System.ComponentModel.ISupportInitialize)(this.xrRichText1)).BeginInit();
|
||||
((System.ComponentModel.ISupportInitialize)(this.xrTable5)).BeginInit();
|
||||
@@ -253,6 +255,23 @@ namespace MobileEV
|
||||
this.xrTableCell7.TextAlignment = DevExpress.XtraPrinting.TextAlignment.TopLeft;
|
||||
this.xrTableCell7.Weight = 1D;
|
||||
//
|
||||
// xrTableRow17
|
||||
//
|
||||
this.xrTableRow17.Cells.AddRange(new DevExpress.XtraReports.UI.XRTableCell[] {
|
||||
this.xrTableCell27});
|
||||
this.xrTableRow17.Name = "xrTableRow17";
|
||||
this.xrTableRow17.Weight = 0.13245033112582783D;
|
||||
//
|
||||
// xrTableCell27
|
||||
//
|
||||
this.xrTableCell27.Name = "xrTableCell27";
|
||||
this.xrTableCell27.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
|
||||
this.xrTableCell27.StylePriority.UsePadding = false;
|
||||
this.xrTableCell27.StylePriority.UseTextAlignment = false;
|
||||
this.xrTableCell27.Text = "Tel.: 0231 / 98 12 83 53";
|
||||
this.xrTableCell27.TextAlignment = DevExpress.XtraPrinting.TextAlignment.TopLeft;
|
||||
this.xrTableCell27.Weight = 1D;
|
||||
//
|
||||
// xrTableRow2
|
||||
//
|
||||
this.xrTableRow2.Cells.AddRange(new DevExpress.XtraReports.UI.XRTableCell[] {
|
||||
@@ -459,10 +478,26 @@ namespace MobileEV
|
||||
// bottomMarginBand1
|
||||
//
|
||||
this.bottomMarginBand1.Controls.AddRange(new DevExpress.XtraReports.UI.XRControl[] {
|
||||
this.lblPage,
|
||||
this.xrRichText1});
|
||||
this.bottomMarginBand1.HeightF = 95F;
|
||||
this.bottomMarginBand1.Name = "bottomMarginBand1";
|
||||
//
|
||||
// lblPage
|
||||
//
|
||||
this.lblPage.Font = new System.Drawing.Font("Arial", 10F);
|
||||
this.lblPage.LocationFloat = new DevExpress.Utils.PointFloat(602.2362F, 9.999974F);
|
||||
this.lblPage.Name = "lblPage";
|
||||
this.lblPage.Padding = new DevExpress.XtraPrinting.PaddingInfo(3, 2, 0, 0, 100F);
|
||||
this.lblPage.SizeF = new System.Drawing.SizeF(74.76379F, 24.04162F);
|
||||
this.lblPage.StylePriority.UseBackColor = false;
|
||||
this.lblPage.StylePriority.UseBorders = false;
|
||||
this.lblPage.StylePriority.UseFont = false;
|
||||
this.lblPage.StylePriority.UsePadding = false;
|
||||
this.lblPage.StylePriority.UseTextAlignment = false;
|
||||
this.lblPage.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleRight;
|
||||
this.lblPage.PrintOnPage += new DevExpress.XtraReports.UI.PrintOnPageEventHandler(this.lblPage_PrintOnPage);
|
||||
//
|
||||
// xrRichText1
|
||||
//
|
||||
this.xrRichText1.Font = new System.Drawing.Font("Arial", 11F);
|
||||
@@ -659,7 +694,7 @@ namespace MobileEV
|
||||
this.xrTableCell36.StylePriority.UseTextAlignment = false;
|
||||
this.xrTableCell36.Text = "Art";
|
||||
this.xrTableCell36.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleCenter;
|
||||
this.xrTableCell36.Weight = 0.31317867897807589D;
|
||||
this.xrTableCell36.Weight = 0.3520152834238407D;
|
||||
//
|
||||
// xrTableCell38
|
||||
//
|
||||
@@ -679,7 +714,7 @@ namespace MobileEV
|
||||
this.xrTableCell38.StylePriority.UseTextAlignment = false;
|
||||
this.xrTableCell38.Text = "Geleistete\r\nFLS";
|
||||
this.xrTableCell38.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleCenter;
|
||||
this.xrTableCell38.Weight = 0.31317868879546573D;
|
||||
this.xrTableCell38.Weight = 0.27434208434970092D;
|
||||
//
|
||||
// xrTableCell34
|
||||
//
|
||||
@@ -741,6 +776,7 @@ namespace MobileEV
|
||||
// xrTable6
|
||||
//
|
||||
this.xrTable6.Font = new System.Drawing.Font("Verdana", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.xrTable6.FormattingRules.Add(this.Zwischensumme);
|
||||
this.xrTable6.LocationFloat = new DevExpress.Utils.PointFloat(0F, 0F);
|
||||
this.xrTable6.Name = "xrTable6";
|
||||
this.xrTable6.Rows.AddRange(new DevExpress.XtraReports.UI.XRTableRow[] {
|
||||
@@ -769,6 +805,7 @@ namespace MobileEV
|
||||
this.xrTableCell40.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
|
||||
new DevExpress.XtraReports.UI.XRBinding("Text", null, "ServiceInvoicePeriods.ServiceInvoiceItems.AccountingPeriodStart", "{0:dd.MM.yyyy}")});
|
||||
this.xrTableCell40.Font = new System.Drawing.Font("Calibri", 10.5F);
|
||||
this.xrTableCell40.FormattingRules.Add(this.Zwischensumme);
|
||||
this.xrTableCell40.Name = "xrTableCell40";
|
||||
this.xrTableCell40.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 2, 2, 100F);
|
||||
this.xrTableCell40.StylePriority.UseBorderColor = false;
|
||||
@@ -787,6 +824,7 @@ namespace MobileEV
|
||||
new DevExpress.XtraReports.UI.XRBinding("Text", null, "ServiceInvoicePeriods.SupportConceptApprovalPeriod.CostBearer2SupportConcept.Supp" +
|
||||
"ortConcept.StartDate", "{0:dd.MM.yyyy}")});
|
||||
this.xrTableCell16.Font = new System.Drawing.Font("Calibri", 10.5F);
|
||||
this.xrTableCell16.FormattingRules.Add(this.Zwischensumme);
|
||||
this.xrTableCell16.Name = "xrTableCell16";
|
||||
this.xrTableCell16.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 2, 2, 100F);
|
||||
this.xrTableCell16.StylePriority.UseBorderColor = false;
|
||||
@@ -805,6 +843,7 @@ namespace MobileEV
|
||||
new DevExpress.XtraReports.UI.XRBinding("Text", null, "ServiceInvoicePeriods.SupportConceptApprovalPeriod.CostBearer2SupportConcept.Supp" +
|
||||
"ortConcept.EndDate", "{0:dd.MM.yyyy}")});
|
||||
this.xrTableCell17.Font = new System.Drawing.Font("Calibri", 10.5F);
|
||||
this.xrTableCell17.FormattingRules.Add(this.Zwischensumme);
|
||||
this.xrTableCell17.Name = "xrTableCell17";
|
||||
this.xrTableCell17.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 2, 2, 100F);
|
||||
this.xrTableCell17.StylePriority.UseBorderColor = false;
|
||||
@@ -822,6 +861,7 @@ namespace MobileEV
|
||||
this.xrTableCell18.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
|
||||
new DevExpress.XtraReports.UI.XRBinding("Text", null, "ServiceInvoicePeriods.ServiceInvoiceItems.ServiceRecord.Notice3")});
|
||||
this.xrTableCell18.Font = new System.Drawing.Font("Calibri", 10.5F);
|
||||
this.xrTableCell18.FormattingRules.Add(this.Zwischensumme);
|
||||
this.xrTableCell18.Name = "xrTableCell18";
|
||||
this.xrTableCell18.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 2, 2, 100F);
|
||||
this.xrTableCell18.StylePriority.UseBorderColor = false;
|
||||
@@ -840,6 +880,7 @@ namespace MobileEV
|
||||
new DevExpress.XtraReports.UI.XRBinding("Text", null, "ServiceInvoicePeriods.ServiceInvoiceItems.ServiceRecord.ServiceDescription.Catego" +
|
||||
"ryName")});
|
||||
this.xrTableCell19.Font = new System.Drawing.Font("Calibri", 10.5F);
|
||||
this.xrTableCell19.FormattingRules.Add(this.Zwischensumme);
|
||||
this.xrTableCell19.Name = "xrTableCell19";
|
||||
this.xrTableCell19.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 2, 2, 100F);
|
||||
this.xrTableCell19.StylePriority.UseBorderColor = false;
|
||||
@@ -848,7 +889,7 @@ namespace MobileEV
|
||||
this.xrTableCell19.StylePriority.UsePadding = false;
|
||||
this.xrTableCell19.StylePriority.UseTextAlignment = false;
|
||||
this.xrTableCell19.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleCenter;
|
||||
this.xrTableCell19.Weight = 2.9999999999999996D;
|
||||
this.xrTableCell19.Weight = 3.3720192576764627D;
|
||||
//
|
||||
// xrTableCell20
|
||||
//
|
||||
@@ -857,6 +898,7 @@ namespace MobileEV
|
||||
this.xrTableCell20.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
|
||||
new DevExpress.XtraReports.UI.XRBinding("Text", null, "ServiceInvoicePeriods.ServiceInvoiceItems.UnitCount", "{0:0.00}")});
|
||||
this.xrTableCell20.Font = new System.Drawing.Font("Calibri", 10.5F);
|
||||
this.xrTableCell20.FormattingRules.Add(this.Zwischensumme);
|
||||
this.xrTableCell20.Name = "xrTableCell20";
|
||||
this.xrTableCell20.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 2, 2, 100F);
|
||||
this.xrTableCell20.StylePriority.UseBorderColor = false;
|
||||
@@ -865,7 +907,7 @@ namespace MobileEV
|
||||
this.xrTableCell20.StylePriority.UsePadding = false;
|
||||
this.xrTableCell20.StylePriority.UseTextAlignment = false;
|
||||
this.xrTableCell20.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleCenter;
|
||||
this.xrTableCell20.Weight = 2.9999999999999996D;
|
||||
this.xrTableCell20.Weight = 2.6279807423235364D;
|
||||
//
|
||||
// xrTableCell21
|
||||
//
|
||||
@@ -874,6 +916,7 @@ namespace MobileEV
|
||||
this.xrTableCell21.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
|
||||
new DevExpress.XtraReports.UI.XRBinding("Text", null, "ServiceInvoicePeriods.ServiceInvoiceItems.AmountPerUnit", "{0:c}")});
|
||||
this.xrTableCell21.Font = new System.Drawing.Font("Calibri", 10.5F);
|
||||
this.xrTableCell21.FormattingRules.Add(this.Zwischensumme);
|
||||
this.xrTableCell21.Name = "xrTableCell21";
|
||||
this.xrTableCell21.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 2, 2, 100F);
|
||||
this.xrTableCell21.StylePriority.UseBorderColor = false;
|
||||
@@ -892,6 +935,7 @@ namespace MobileEV
|
||||
this.xrTableCell22.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
|
||||
new DevExpress.XtraReports.UI.XRBinding("Text", null, "ServiceInvoicePeriods.ServiceInvoiceItems.GrossAmount")});
|
||||
this.xrTableCell22.Font = new System.Drawing.Font("Calibri", 10.5F);
|
||||
this.xrTableCell22.FormattingRules.Add(this.Zwischensumme);
|
||||
this.xrTableCell22.Name = "xrTableCell22";
|
||||
this.xrTableCell22.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 2, 2, 100F);
|
||||
this.xrTableCell22.StylePriority.UseBorderColor = false;
|
||||
@@ -908,6 +952,7 @@ namespace MobileEV
|
||||
this.xrTable3,
|
||||
this.xrLabel5});
|
||||
this.GroupFooter1.HeightF = 161.7917F;
|
||||
this.GroupFooter1.KeepTogether = true;
|
||||
this.GroupFooter1.Name = "GroupFooter1";
|
||||
//
|
||||
// xrTable3
|
||||
@@ -948,7 +993,7 @@ namespace MobileEV
|
||||
//
|
||||
this.lblKategorie1.BorderColor = System.Drawing.Color.DarkGray;
|
||||
this.lblKategorie1.Borders = ((DevExpress.XtraPrinting.BorderSide)((DevExpress.XtraPrinting.BorderSide.Left | DevExpress.XtraPrinting.BorderSide.Bottom)));
|
||||
this.lblKategorie1.Font = new System.Drawing.Font("Calibri", 10.5F);
|
||||
this.lblKategorie1.Font = new System.Drawing.Font("Calibri", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.lblKategorie1.Name = "lblKategorie1";
|
||||
this.lblKategorie1.Padding = new DevExpress.XtraPrinting.PaddingInfo(4, 0, 2, 0, 100F);
|
||||
this.lblKategorie1.StylePriority.UseBorderColor = false;
|
||||
@@ -1019,7 +1064,7 @@ namespace MobileEV
|
||||
this.wrfwergr.StylePriority.UsePadding = false;
|
||||
this.wrfwergr.StylePriority.UseTextAlignment = false;
|
||||
this.wrfwergr.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleLeft;
|
||||
this.wrfwergr.Weight = 0.076656524108514215D;
|
||||
this.wrfwergr.Weight = 0.086162472856183517D;
|
||||
//
|
||||
// lblSummeGelFLS1
|
||||
//
|
||||
@@ -1034,7 +1079,7 @@ namespace MobileEV
|
||||
this.lblSummeGelFLS1.StylePriority.UsePadding = false;
|
||||
this.lblSummeGelFLS1.StylePriority.UseTextAlignment = false;
|
||||
this.lblSummeGelFLS1.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleCenter;
|
||||
this.lblSummeGelFLS1.Weight = 0.076656524108514215D;
|
||||
this.lblSummeGelFLS1.Weight = 0.067150575360844914D;
|
||||
//
|
||||
// xrTableCell41
|
||||
//
|
||||
@@ -1154,7 +1199,7 @@ namespace MobileEV
|
||||
this.trhtzjt.StylePriority.UsePadding = false;
|
||||
this.trhtzjt.StylePriority.UseTextAlignment = false;
|
||||
this.trhtzjt.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleLeft;
|
||||
this.trhtzjt.Weight = 0.076656524108514271D;
|
||||
this.trhtzjt.Weight = 0.086162472856183572D;
|
||||
//
|
||||
// lblSummeGelFLS2
|
||||
//
|
||||
@@ -1169,7 +1214,7 @@ namespace MobileEV
|
||||
this.lblSummeGelFLS2.StylePriority.UsePadding = false;
|
||||
this.lblSummeGelFLS2.StylePriority.UseTextAlignment = false;
|
||||
this.lblSummeGelFLS2.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleCenter;
|
||||
this.lblSummeGelFLS2.Weight = 0.076656524108514271D;
|
||||
this.lblSummeGelFLS2.Weight = 0.067150575360844969D;
|
||||
//
|
||||
// xrTableCell42
|
||||
//
|
||||
@@ -1220,7 +1265,7 @@ namespace MobileEV
|
||||
//
|
||||
this.lblKategorie3.BorderColor = System.Drawing.Color.DarkGray;
|
||||
this.lblKategorie3.Borders = ((DevExpress.XtraPrinting.BorderSide)((DevExpress.XtraPrinting.BorderSide.Left | DevExpress.XtraPrinting.BorderSide.Bottom)));
|
||||
this.lblKategorie3.Font = new System.Drawing.Font("Arial", 10F);
|
||||
this.lblKategorie3.Font = new System.Drawing.Font("Calibri", 10.5F);
|
||||
this.lblKategorie3.Name = "lblKategorie3";
|
||||
this.lblKategorie3.Padding = new DevExpress.XtraPrinting.PaddingInfo(4, 0, 2, 0, 100F);
|
||||
this.lblKategorie3.StylePriority.UseBorderColor = false;
|
||||
@@ -1289,7 +1334,7 @@ namespace MobileEV
|
||||
this.regtrhzr.StylePriority.UsePadding = false;
|
||||
this.regtrhzr.StylePriority.UseTextAlignment = false;
|
||||
this.regtrhzr.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleLeft;
|
||||
this.regtrhzr.Weight = 0.076656524108514271D;
|
||||
this.regtrhzr.Weight = 0.086162472856183572D;
|
||||
//
|
||||
// lblSummeGelFLS3
|
||||
//
|
||||
@@ -1304,7 +1349,7 @@ namespace MobileEV
|
||||
this.lblSummeGelFLS3.StylePriority.UsePadding = false;
|
||||
this.lblSummeGelFLS3.StylePriority.UseTextAlignment = false;
|
||||
this.lblSummeGelFLS3.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleCenter;
|
||||
this.lblSummeGelFLS3.Weight = 0.076656524108514271D;
|
||||
this.lblSummeGelFLS3.Weight = 0.067150575360844969D;
|
||||
//
|
||||
// xrTableCell43
|
||||
//
|
||||
@@ -1425,7 +1470,7 @@ namespace MobileEV
|
||||
this.xrTableCell39.StylePriority.UsePadding = false;
|
||||
this.xrTableCell39.StylePriority.UseTextAlignment = false;
|
||||
this.xrTableCell39.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleLeft;
|
||||
this.xrTableCell39.Weight = 0.076656524108514271D;
|
||||
this.xrTableCell39.Weight = 0.086162472856183572D;
|
||||
//
|
||||
// lblSummeGelFLS4
|
||||
//
|
||||
@@ -1440,7 +1485,7 @@ namespace MobileEV
|
||||
this.lblSummeGelFLS4.StylePriority.UsePadding = false;
|
||||
this.lblSummeGelFLS4.StylePriority.UseTextAlignment = false;
|
||||
this.lblSummeGelFLS4.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleCenter;
|
||||
this.lblSummeGelFLS4.Weight = 0.076656524108514271D;
|
||||
this.lblSummeGelFLS4.Weight = 0.067150575360844969D;
|
||||
//
|
||||
// xrTableCell48
|
||||
//
|
||||
@@ -1492,22 +1537,12 @@ namespace MobileEV
|
||||
//
|
||||
this.bindingSource1.DataSource = typeof(BeWo.Report.ReportObjects.ServiceInvoiceRO);
|
||||
//
|
||||
// xrTableRow17
|
||||
// Zwischensumme
|
||||
//
|
||||
this.xrTableRow17.Cells.AddRange(new DevExpress.XtraReports.UI.XRTableCell[] {
|
||||
this.xrTableCell27});
|
||||
this.xrTableRow17.Name = "xrTableRow17";
|
||||
this.xrTableRow17.Weight = 0.13245033112582783D;
|
||||
//
|
||||
// xrTableCell27
|
||||
//
|
||||
this.xrTableCell27.Name = "xrTableCell27";
|
||||
this.xrTableCell27.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
|
||||
this.xrTableCell27.StylePriority.UsePadding = false;
|
||||
this.xrTableCell27.StylePriority.UseTextAlignment = false;
|
||||
this.xrTableCell27.Text = "Tel.: 0231 / 98 12 83 53";
|
||||
this.xrTableCell27.TextAlignment = DevExpress.XtraPrinting.TextAlignment.TopLeft;
|
||||
this.xrTableCell27.Weight = 1D;
|
||||
this.Zwischensumme.Condition = "StartsWith([ServiceInvoicePeriods.ServiceInvoiceItems.ServiceRecord.ServiceDescri" +
|
||||
"ption.CategoryName], \'Summe\')";
|
||||
this.Zwischensumme.Formatting.Font = new System.Drawing.Font("Calibri", 10.5F, System.Drawing.FontStyle.Bold);
|
||||
this.Zwischensumme.Name = "Zwischensumme";
|
||||
//
|
||||
// Sammelrechnung
|
||||
//
|
||||
@@ -1522,7 +1557,8 @@ namespace MobileEV
|
||||
this.ExportOptions.PrintPreview.DefaultFileName = "Spitzabrechnung";
|
||||
this.Font = new System.Drawing.Font("Verdana", 10F);
|
||||
this.FormattingRuleSheet.AddRange(new DevExpress.XtraReports.UI.FormattingRule[] {
|
||||
this.ruleRateFactorNull});
|
||||
this.ruleRateFactorNull,
|
||||
this.Zwischensumme});
|
||||
this.Margins = new System.Drawing.Printing.Margins(96, 54, 28, 95);
|
||||
this.PageHeight = 1169;
|
||||
this.PageWidth = 827;
|
||||
@@ -1644,5 +1680,7 @@ namespace MobileEV
|
||||
private DevExpress.XtraReports.UI.XRTableCell lblSumme4;
|
||||
private DevExpress.XtraReports.UI.XRTableRow xrTableRow17;
|
||||
private DevExpress.XtraReports.UI.XRTableCell xrTableCell27;
|
||||
private DevExpress.XtraReports.UI.XRLabel lblPage;
|
||||
private DevExpress.XtraReports.UI.FormattingRule Zwischensumme;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -6,6 +6,8 @@ using BS.Shared.Core;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using BS.Shared.Extensions;
|
||||
using BS.Shared.DataContracts;
|
||||
using MobileEV.Invoicing;
|
||||
|
||||
namespace MobileEV
|
||||
{
|
||||
@@ -21,6 +23,7 @@ namespace MobileEV
|
||||
{
|
||||
DateTime start = pRO.AccountingPeriodStart;
|
||||
DateTime end = pRO.AccountingPeriodEnd;
|
||||
|
||||
//if (start.Month == end.Month && start.Year == end.Year)
|
||||
//{
|
||||
// lblAbrechnungszeitraum.Text = String.Format("hiermit berechnen wir für den Monat {0:MMMM yyyy} folgende erbrachte Tätigkeiten:", start);
|
||||
@@ -37,12 +40,45 @@ namespace MobileEV
|
||||
decimal betrag = 0;
|
||||
decimal bAufwand = 0;
|
||||
|
||||
int zwischensummeIndex = 0;
|
||||
ServiceInvoiceItemRO zwischensummeItem = null;
|
||||
|
||||
foreach (var ip in pRO.ServiceInvoicePeriods)
|
||||
{
|
||||
ip.ServiceInvoiceItems = ip.ServiceInvoiceItems.OrderBy(sii => sii.ServiceRecord.ServiceDescription.CategoryName).ToList();
|
||||
|
||||
string kat = "";
|
||||
decimal stundenZwischensumme = 0;
|
||||
decimal betragZwischensumme = 0;
|
||||
|
||||
foreach (var item in ip.ServiceInvoiceItems)
|
||||
{
|
||||
stundenZwischensumme += item.Hours.Value;
|
||||
betragZwischensumme += betrag != 0 ? GetGrossAmount(item) : 0;
|
||||
|
||||
if (kat != "" && kat != item.ServiceRecord.ServiceDescription.CategoryName)
|
||||
{
|
||||
zwischensummeIndex = ip.ServiceInvoiceItems.IndexOf(item);
|
||||
zwischensummeItem = new ServiceInvoiceItemRO()
|
||||
{
|
||||
GrossAmount = string.Format("{0:c}", betragZwischensumme),
|
||||
Hours = stundenZwischensumme,
|
||||
ServiceRecord = new BS.Shared.DataContracts.ServiceRecordDC()
|
||||
{
|
||||
ServiceDescription = new BS.Shared.DataContracts.ServiceDescriptionDC()
|
||||
{
|
||||
CategoryName = "Summe"
|
||||
}
|
||||
}
|
||||
};
|
||||
kat = item.ServiceRecord.ServiceDescription.CategoryName;
|
||||
}
|
||||
else
|
||||
{
|
||||
kat = item.ServiceRecord.ServiceDescription.CategoryName;
|
||||
}
|
||||
|
||||
|
||||
if (!kategorieZuStunden.ContainsKey(item.ServiceRecord.ServiceDescription.CategoryName))
|
||||
kategorieZuStunden.Add(item.ServiceRecord.ServiceDescription.CategoryName, 0m);
|
||||
if (!kategorieZuKosten.ContainsKey(item.ServiceRecord.ServiceDescription.CategoryName))
|
||||
@@ -52,7 +88,12 @@ namespace MobileEV
|
||||
betrag = GetGrossAmount(item);
|
||||
if (betrag != 0)
|
||||
{
|
||||
kategorieZuKosten[item.ServiceRecord.ServiceDescription.CategoryName] += betrag;
|
||||
var betragOhneBetreuungsAufwand = betrag - BetreuungsaufwandHelper.GetBetreuungsaufwand(item.ServiceRecord);
|
||||
|
||||
item.GrossAmount = string.Format("{0:c}", betragOhneBetreuungsAufwand);
|
||||
kategorieZuKosten[item.ServiceRecord.ServiceDescription.CategoryName] += betragOhneBetreuungsAufwand;
|
||||
|
||||
// In Endsumme muss Betreuungsaufwand rein
|
||||
betragGeamt += betrag;
|
||||
}
|
||||
else
|
||||
@@ -60,32 +101,41 @@ namespace MobileEV
|
||||
kategorieZuKosten[item.ServiceRecord.ServiceDescription.CategoryName] += Math.Round(item.AmountPerUnit.Value * item.UnitCount.Value, 2, MidpointRounding.AwayFromZero);
|
||||
betrag += Math.Round(item.AmountPerUnit.Value * item.UnitCount.Value, 2, MidpointRounding.AwayFromZero);
|
||||
}
|
||||
|
||||
stundenGesamt += item.Hours.Value;
|
||||
bAufwand += GetBetreuungsaufwand(item);
|
||||
bAufwand += BetreuungsaufwandHelper.GetBetreuungsaufwand(item.ServiceRecord);
|
||||
}
|
||||
|
||||
if (zwischensummeItem != null)
|
||||
{
|
||||
ip.ServiceInvoiceItems.Insert(zwischensummeIndex, zwischensummeItem);
|
||||
}
|
||||
}
|
||||
|
||||
lblSumme4.Text = string.Format("{0:c}", betragGeamt);
|
||||
lblSummeGelFLS4.Text = string.Format("{0:0.00}", stundenGesamt);
|
||||
lblSumBAufwand.Text = string.Format("{0:c}", bAufwand);
|
||||
|
||||
lblKategorie1.Text = "Summen";
|
||||
|
||||
if (kategorieZuStunden.Count >= 1)
|
||||
{
|
||||
lblKategorie1.Text = kategorieZuStunden.ElementAt(0).Key;
|
||||
lblSummeGelFLS1.Text = string.Format("{0:0.00}", kategorieZuStunden.ElementAt(0).Value);
|
||||
lblSumme1.Text = string.Format("{0:c}", kategorieZuKosten.ElementAt(0).Value);
|
||||
lblKategorie2.Text = kategorieZuStunden.ElementAt(0).Key;
|
||||
lblSummeGelFLS2.Text = string.Format("{0:0.00}", kategorieZuStunden.ElementAt(0).Value);
|
||||
lblSumme2.Text = string.Format("{0:c}", kategorieZuKosten.ElementAt(0).Value);
|
||||
}
|
||||
if (kategorieZuStunden.Count >= 2)
|
||||
{
|
||||
lblKategorie2.Text = kategorieZuStunden.ElementAt(1).Key;
|
||||
lblSummeGelFLS2.Text = string.Format("{0:0.00}", kategorieZuStunden.ElementAt(1).Value);
|
||||
lblSumme2.Text = string.Format("{0:c}", kategorieZuKosten.ElementAt(1).Value);
|
||||
}
|
||||
if (kategorieZuStunden.Count >= 3)
|
||||
{
|
||||
lblKategorie3.Text = kategorieZuStunden.ElementAt(2).Key;
|
||||
lblSummeGelFLS3.Text = string.Format("{0:0.00}", kategorieZuStunden.ElementAt(2).Value);
|
||||
lblSumme3.Text = string.Format("{0:c}", kategorieZuKosten.ElementAt(2).Value);
|
||||
lblKategorie3.Text = kategorieZuStunden.ElementAt(1).Key;
|
||||
lblSummeGelFLS3.Text = string.Format("{0:0.00}", kategorieZuStunden.ElementAt(1).Value);
|
||||
lblSumme3.Text = string.Format("{0:c}", kategorieZuKosten.ElementAt(1).Value);
|
||||
}
|
||||
//if (kategorieZuStunden.Count >= 3)
|
||||
//{
|
||||
// lblKategorie3.Text = kategorieZuStunden.ElementAt(2).Key;
|
||||
// lblSummeGelFLS3.Text = string.Format("{0:0.00}", kategorieZuStunden.ElementAt(2).Value);
|
||||
// lblSumme3.Text = string.Format("{0:c}", kategorieZuKosten.ElementAt(2).Value);
|
||||
//}
|
||||
|
||||
|
||||
this.bindingSource1.DataSource = pRO;
|
||||
@@ -103,26 +153,10 @@ namespace MobileEV
|
||||
return 0;
|
||||
}
|
||||
|
||||
private decimal GetBetreuungsaufwand(ServiceInvoiceItemRO ii)
|
||||
{
|
||||
decimal amount = 0;
|
||||
if (ii.ServiceRecord != null && !ii.ServiceRecord.Notice3.IsNullOrEmpty())
|
||||
{
|
||||
ii.ServiceRecord.Notice3 = ii.ServiceRecord.Notice3.Trim();
|
||||
if (ii.ServiceRecord.Notice3.Contains("€"))
|
||||
{
|
||||
if (Decimal.TryParse(ii.ServiceRecord.Notice3.Replace("€", ""), out amount))
|
||||
{
|
||||
return amount;
|
||||
}
|
||||
}
|
||||
else if (Decimal.TryParse(ii.ServiceRecord.Notice3, out amount))
|
||||
{
|
||||
return amount;
|
||||
}
|
||||
}
|
||||
|
||||
return 0;
|
||||
private void lblPage_PrintOnPage(object sender, PrintOnPageEventArgs e)
|
||||
{
|
||||
lblPage.Text = String.Format("{0} von {1}", e.PageIndex + 1, e.PageCount);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -17,7 +17,7 @@
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
<DebugType>full</DebugType>
|
||||
<Optimize>false</Optimize>
|
||||
<OutputPath>..\..\Host\bin\</OutputPath>
|
||||
<OutputPath>..\..\CustomerDlls\</OutputPath>
|
||||
<DefineConstants>DEBUG;TRACE</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
@@ -25,7 +25,7 @@
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||
<DebugType>pdbonly</DebugType>
|
||||
<Optimize>true</Optimize>
|
||||
<OutputPath>..\..\Host\bin\</OutputPath>
|
||||
<OutputPath>..\..\CustomerDlls\</OutputPath>
|
||||
<DefineConstants>TRACE</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
|
||||
106
ReportImp/SKFMMonheim/CustomReportCreator.cs
Normal file
106
ReportImp/SKFMMonheim/CustomReportCreator.cs
Normal file
@@ -0,0 +1,106 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using BeWo.Data.Access;
|
||||
using BeWo.Data.Entities;
|
||||
using BeWo.Report;
|
||||
using BeWo.Report.ReportObjects;
|
||||
using BeWo.Service.DCEntityMapper;
|
||||
using BeWo.Service.Plugins;
|
||||
using BS.Shared.Core;
|
||||
using BS.Shared.DataContracts;
|
||||
using DevExpress.XtraReports.Design;
|
||||
using DevExpress.XtraReports.UI;
|
||||
|
||||
namespace SKFMMonheim
|
||||
{
|
||||
public class CustomReportCreator : DefaultReportCreator
|
||||
{
|
||||
public override XtraReport CreateServiceOverviewAllCustomersReport(int month, int year, long orgaOid, long empOid, long? serviceCategoryOid, int startDay, int endDay)
|
||||
{
|
||||
List<ServicesOverviewRO> lROs = ServicesOverviewRO.Create(month, year, orgaOid, empOid, startDay, endDay);
|
||||
|
||||
if (lROs.Count > 0)
|
||||
{
|
||||
|
||||
var rootReport = CreateServicesOverviewReportForRo(lROs[0], serviceCategoryOid);
|
||||
rootReport.CreateDocument();
|
||||
|
||||
for (int i = 1; i < lROs.Count; i++)
|
||||
{
|
||||
var lNext = CreateServicesOverviewReportForRo(lROs[i], serviceCategoryOid);
|
||||
lNext.CreateDocument();
|
||||
rootReport.Pages.AddRange(lNext.Pages);
|
||||
}
|
||||
|
||||
return rootReport;
|
||||
}
|
||||
return new XtraReport();
|
||||
}
|
||||
|
||||
public override XtraReport CreateServiceOverviewSingleCustomerReport(long customerOid, int month, int year, long orgaOid, long empOid, long? serviceCategoryOid, int startDay, int endDay)
|
||||
{
|
||||
var ro = ServicesOverviewRO.Create(customerOid, month, year, false, orgaOid, empOid, startDay, endDay, serviceCategoryOid);
|
||||
return CreateServicesOverviewReportForRo(ro, serviceCategoryOid);
|
||||
}
|
||||
public override XtraReport CreateServiceOverviewReportForCustomers(IList<long> customerOids, int month, int year, long? orgaOid, long? empOid, long? serviceCategoryOid, int startDay, int endDay, bool nurFehlende)
|
||||
{
|
||||
var roList = new List<ServicesOverviewRO>();
|
||||
|
||||
foreach (var coid in customerOids)
|
||||
{
|
||||
var ro = ServicesOverviewRO.Create(coid, month, year, true, orgaOid ?? 0, empOid ?? 0, startDay, endDay, serviceCategoryOid);
|
||||
if (ro != null)
|
||||
{
|
||||
roList.Add(ro);
|
||||
}
|
||||
}
|
||||
|
||||
if (roList.Count > 0)
|
||||
{
|
||||
|
||||
var rootReport = CreateServicesOverviewReportForRo(roList[0], serviceCategoryOid);
|
||||
rootReport.CreateDocument();
|
||||
|
||||
for (int i = 1; i < roList.Count; i++)
|
||||
{
|
||||
var lNext = CreateServicesOverviewReportForRo(roList[i], serviceCategoryOid);
|
||||
lNext.CreateDocument();
|
||||
rootReport.Pages.AddRange(lNext.Pages);
|
||||
}
|
||||
|
||||
return rootReport;
|
||||
}
|
||||
return new XtraReport();
|
||||
|
||||
}
|
||||
|
||||
private XtraReport CreateServicesOverviewReportForRo(ServicesOverviewRO ro, long? serviceCategoryOid)
|
||||
{
|
||||
IBeWoReport<ServicesOverviewRO> report = null;
|
||||
String kt = "";
|
||||
if (!String.IsNullOrWhiteSpace(ro.Costbearer))
|
||||
kt = ro.Costbearer.Trim();
|
||||
|
||||
//String function = "";
|
||||
//if (ro.CostBearer2SupportConceptList != null)
|
||||
//{
|
||||
// foreach (var c2s in ro.CostBearer2SupportConceptList)
|
||||
// {
|
||||
// if (c2s.CostBearer.Organisation.Function != null && !String.IsNullOrWhiteSpace(ro.Costbearer) && c2s.CostBearer.Organisation.Name == ro.Costbearer)
|
||||
// function = c2s.CostBearer.Organisation.Function.Value;
|
||||
// }
|
||||
//}
|
||||
|
||||
if (kt.ToLower().Contains("lvr"))
|
||||
report = new QuittierungsbelegLVR();
|
||||
else
|
||||
report = new BeWo.Report.DefaultReports.Quittierungsbeleg();
|
||||
|
||||
report.SetReportDataSource(ro);
|
||||
|
||||
return report as XtraReport;
|
||||
}
|
||||
}
|
||||
}
|
||||
1473
ReportImp/SKFMMonheim/QuittierungsbelegLVR.Designer.cs
generated
Normal file
1473
ReportImp/SKFMMonheim/QuittierungsbelegLVR.Designer.cs
generated
Normal file
File diff suppressed because it is too large
Load Diff
149
ReportImp/SKFMMonheim/QuittierungsbelegLVR.cs
Normal file
149
ReportImp/SKFMMonheim/QuittierungsbelegLVR.cs
Normal file
@@ -0,0 +1,149 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Drawing;
|
||||
using System.IO;
|
||||
using System.Text.RegularExpressions;
|
||||
using BeWo.Report;
|
||||
using BeWo.Report.ReportObjects;
|
||||
using BS.Shared.Core;
|
||||
using DevExpress.XtraReports.UI;
|
||||
|
||||
namespace SKFMMonheim
|
||||
{
|
||||
public partial class QuittierungsbelegLVR : XtraReport, IBeWoReport<ServicesOverviewRO>
|
||||
{
|
||||
public QuittierungsbelegLVR()
|
||||
{
|
||||
InitializeComponent();
|
||||
}
|
||||
|
||||
public void SetReportDataSource(ServicesOverviewRO pRO)
|
||||
{
|
||||
|
||||
// Get calling method name
|
||||
//StackTrace stackTrace = new StackTrace();
|
||||
//Debug.WriteLine(stackTrace.GetFrame(1).GetMethod().Name);
|
||||
|
||||
bool hatGruppen = false;
|
||||
|
||||
//if (pRO == null)
|
||||
// return;
|
||||
|
||||
if (pRO.Services != null)
|
||||
{
|
||||
List<ServicesOverviewRO.ServiceDetail> servicesBillable = new List<ServicesOverviewRO.ServiceDetail>();
|
||||
|
||||
foreach (var sd in pRO.Services)
|
||||
{
|
||||
if (sd.IsBillable || sd.ServiceDescription.ToLower().Contains("fehlkontakt") || sd.ServiceCategory.ToLower().Contains("fehlkontakt"))
|
||||
{
|
||||
ServicesOverviewRO.CreateSignatureString(sd);
|
||||
sd.Notice5 = "E";
|
||||
if (sd.IsGroup)
|
||||
{
|
||||
//sd.Notice5 = String.Format("{0} Teilnehmer", sd.CustomerCount);
|
||||
sd.Notice5 = "GR";
|
||||
hatGruppen = true;
|
||||
}
|
||||
if (sd.ServiceDescription.ToLower().Contains("fehlkontakt") || sd.ServiceCategory.ToLower().Contains("fehlkontakt"))
|
||||
{
|
||||
sd.Notice5 = "F";
|
||||
}
|
||||
servicesBillable.Add(sd);
|
||||
}
|
||||
|
||||
sd.Minutes *= 1.5;
|
||||
}
|
||||
|
||||
pRO.TotalFLMoFehlkontakte *= 1.5;
|
||||
|
||||
pRO.Services = servicesBillable;
|
||||
}
|
||||
|
||||
if (String.IsNullOrWhiteSpace(pRO.AbsenceTimes))
|
||||
{
|
||||
lblHatAbwesenheiten.Text = "X";
|
||||
}
|
||||
|
||||
if (!hatGruppen)
|
||||
{
|
||||
lblHatGruppen.Text = "X";
|
||||
}
|
||||
|
||||
ErstelleAbwesenheitenTabelle(pRO);
|
||||
|
||||
bindingSource1.DataSource = pRO;
|
||||
}
|
||||
|
||||
private void ErstelleAbwesenheitenTabelle(ServicesOverviewRO pRo)
|
||||
{
|
||||
if (pRo.Abwesenheiten != null)
|
||||
{
|
||||
int newRows = 0;
|
||||
int index = 1;
|
||||
foreach (var at in pRo.Abwesenheiten)
|
||||
{
|
||||
DevExpress.XtraReports.UI.XRTableRow row = null;
|
||||
if (index < xrTableAbwesenheiten.Rows.Count)
|
||||
{
|
||||
row = xrTableAbwesenheiten.Rows[index];
|
||||
}
|
||||
else
|
||||
{
|
||||
row = xrTableAbwesenheiten.InsertRowBelow(xrTableAbwesenheiten.Rows[xrTableAbwesenheiten.Rows.Count - 1]);
|
||||
newRows++;
|
||||
}
|
||||
|
||||
row.Cells[0].Text = String.Format("{0:dd.MM.yyyy}", at.Start);
|
||||
int? days = null;
|
||||
|
||||
if (at.End.HasValue)
|
||||
{
|
||||
row.Cells[1].Text = String.Format("{0:dd.MM.yyyy}", at.End);
|
||||
days = (int)at.End.Value.Subtract(at.Start.Value).TotalDays + 1;
|
||||
}
|
||||
else
|
||||
{
|
||||
row.Cells[1].Text = "unbekannt";
|
||||
}
|
||||
|
||||
row.Cells[2].Text = String.Format("{0:0}", days);
|
||||
|
||||
index++;
|
||||
}
|
||||
|
||||
if (newRows > 0)
|
||||
{
|
||||
lblUnterschriftKlient.Top += newRows * 20;
|
||||
lblUnterschriftMitarbeiter.Top += newRows * 20;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void picSignature_BeforePrint(object sender, System.Drawing.Printing.PrintEventArgs e)
|
||||
{
|
||||
XRPictureBox xrBox = sender as XRPictureBox;
|
||||
//var test = this.GetCurrent
|
||||
string base64String = xrBox.Tag as string;
|
||||
if (!String.IsNullOrWhiteSpace(base64String))
|
||||
{
|
||||
var base64Data = Regex.Match(base64String, @"data:image/(?<type>.+?),(?<data>.+)").Groups["data"].Value;
|
||||
var binData = Convert.FromBase64String(base64Data);
|
||||
Image img = ByteArrayToImage(binData);
|
||||
xrBox.Image = Utils.CropImage(img);
|
||||
}
|
||||
else
|
||||
{
|
||||
xrBox.Image = null;
|
||||
}
|
||||
}
|
||||
|
||||
public Image ByteArrayToImage(byte[] byteArrayIn)
|
||||
{
|
||||
using(var memoryStream = new MemoryStream(byteArrayIn))
|
||||
{
|
||||
return Image.FromStream(memoryStream);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
129
ReportImp/SKFMMonheim/QuittierungsbelegLVR.resx
Normal file
129
ReportImp/SKFMMonheim/QuittierungsbelegLVR.resx
Normal file
@@ -0,0 +1,129 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<root>
|
||||
<!--
|
||||
Microsoft ResX Schema
|
||||
|
||||
Version 2.0
|
||||
|
||||
The primary goals of this format is to allow a simple XML format
|
||||
that is mostly human readable. The generation and parsing of the
|
||||
various data types are done through the TypeConverter classes
|
||||
associated with the data types.
|
||||
|
||||
Example:
|
||||
|
||||
... ado.net/XML headers & schema ...
|
||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||
<resheader name="version">2.0</resheader>
|
||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||
</data>
|
||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||
<comment>This is a comment</comment>
|
||||
</data>
|
||||
|
||||
There are any number of "resheader" rows that contain simple
|
||||
name/value pairs.
|
||||
|
||||
Each data row contains a name, and value. The row also contains a
|
||||
type or mimetype. Type corresponds to a .NET class that support
|
||||
text/value conversion through the TypeConverter architecture.
|
||||
Classes that don't support this are serialized and stored with the
|
||||
mimetype set.
|
||||
|
||||
The mimetype is used for serialized objects, and tells the
|
||||
ResXResourceReader how to depersist the object. This is currently not
|
||||
extensible. For a given mimetype the value must be set accordingly:
|
||||
|
||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||
that the ResXResourceWriter will generate, however the reader can
|
||||
read any of the formats listed below.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.binary.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.soap.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||
value : The object must be serialized into a byte array
|
||||
: using a System.ComponentModel.TypeConverter
|
||||
: and then encoded with base64 encoding.
|
||||
-->
|
||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||
<xsd:element name="root" msdata:IsDataSet="true">
|
||||
<xsd:complexType>
|
||||
<xsd:choice maxOccurs="unbounded">
|
||||
<xsd:element name="metadata">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||
<xsd:attribute name="type" type="xsd:string" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="assembly">
|
||||
<xsd:complexType>
|
||||
<xsd:attribute name="alias" type="xsd:string" />
|
||||
<xsd:attribute name="name" type="xsd:string" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="data">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="resheader">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:choice>
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:schema>
|
||||
<resheader name="resmimetype">
|
||||
<value>text/microsoft-resx</value>
|
||||
</resheader>
|
||||
<resheader name="version">
|
||||
<value>2.0</value>
|
||||
</resheader>
|
||||
<resheader name="reader">
|
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<metadata name="bindingSource1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>21, 17</value>
|
||||
</metadata>
|
||||
<data name="xrRichText2.SerializableRtfString" xml:space="preserve">
|
||||
<value>ewBcAHIAdABmADEAXABkAGUAZgBmADAAewBcAGYAbwBuAHQAdABiAGwAewBcAGYAMAAgAEMAYQBsAGkAYgByAGkAOwB9AHsAXABmADEAIABUAGkAbQBlAHMAIABOAGUAdwAgAFIAbwBtAGEAbgA7AH0AewBcAGYAMgAgAEEAcgBpAGEAbAA7AH0AfQB7AFwAYwBvAGwAbwByAHQAYgBsACAAOwBcAHIAZQBkADAAXABnAHIAZQBlAG4AMABcAGIAbAB1AGUAMAAgADsAXAByAGUAZAAwAFwAZwByAGUAZQBuADAAXABiAGwAdQBlADIANQA1ACAAOwB9AHsAXAAqAFwAZABlAGYAYwBoAHAAIABcAGYAMQBcAGYAcwAyADQAfQB7AFwAcwB0AHkAbABlAHMAaABlAGUAdAAgAHsAXABxAGwAXABmADEAXABmAHMAMgA0ACAATgBvAHIAbQBhAGwAOwB9AHsAXAAqAFwAYwBzADEAXABmADEAXABmAHMAMgA0AFwAYwBmADEAIABEAGUAZgBhAHUAbAB0ACAAUABhAHIAYQBnAHIAYQBwAGgAIABGAG8AbgB0ADsAfQB7AFwAKgBcAGMAcwAyAFwAcwBiAGEAcwBlAGQAbwBuADEAXABmADEAXABmAHMAMgA0AFwAYwBmADEAIABMAGkAbgBlACAATgB1AG0AYgBlAHIAOwB9AHsAXAAqAFwAYwBzADMAXAB1AGwAXABmADEAXABmAHMAMgA0AFwAYwBmADIAIABIAHkAcABlAHIAbABpAG4AawA7AH0AewBcACoAXAB0AHMANABcAHQAcwByAG8AdwBkAFwAZgAxAFwAZgBzADIANABcAHEAbABcAHQAcwBjAGUAbABsAHAAYQBkAGQAZgBsADMAXAB0AHMAYwBlAGwAbABwAGEAZABkAGwAMQAwADgAXAB0AHMAYwBlAGwAbABwAGEAZABkAGYAYgAzAFwAdABzAGMAZQBsAGwAcABhAGQAZABmAHIAMwBcAHQAcwBjAGUAbABsAHAAYQBkAGQAcgAxADAAOABcAHQAcwBjAGUAbABsAHAAYQBkAGQAZgB0ADMAXAB0AHMAdgBlAHIAdABhAGwAdABcAGMAbAB0AHgAbAByAHQAYgAgAE4AbwByAG0AYQBsACAAVABhAGIAbABlADsAfQB7AFwAKgBcAHQAcwA1AFwAdABzAHIAbwB3AGQAXABzAGIAYQBzAGUAZABvAG4ANABcAGYAMQBcAGYAcwAyADQAXABxAGwAXAB0AHIAYgByAGQAcgB0AFwAYgByAGQAcgBzAFwAYgByAGQAcgB3ADEAMABcAHQAcgBiAHIAZAByAGwAXABiAHIAZAByAHMAXABiAHIAZAByAHcAMQAwAFwAdAByAGIAcgBkAHIAYgBcAGIAcgBkAHIAcwBcAGIAcgBkAHIAdwAxADAAXAB0AHIAYgByAGQAcgByAFwAYgByAGQAcgBzAFwAYgByAGQAcgB3ADEAMABcAHQAcgBiAHIAZAByAGgAXABiAHIAZAByAHMAXABiAHIAZAByAHcAMQAwAFwAdAByAGIAcgBkAHIAdgBcAGIAcgBkAHIAcwBcAGIAcgBkAHIAdwAxADAAXAB0AHMAYwBlAGwAbABwAGEAZABkAGYAbAAzAFwAdABzAGMAZQBsAGwAcABhAGQAZABsADEAMAA4AFwAdABzAGMAZQBsAGwAcABhAGQAZABmAHIAMwBcAHQAcwBjAGUAbABsAHAAYQBkAGQAcgAxADAAOABcAHQAcwB2AGUAcgB0AGEAbAB0AFwAYwBsAHQAeABsAHIAdABiACAAVABhAGIAbABlACAAUwBpAG0AcABsAGUAIAAxADsAfQB9AHsAXAAqAFwAbABpAHMAdABvAHYAZQByAHIAaQBkAGUAdABhAGIAbABlAH0AXABuAG8AdQBpAGMAbwBtAHAAYQB0AFwAcwBwAGwAeQB0AHcAbgBpAG4AZQBcAGgAdABtAGEAdQB0AHMAcABcAHAAYQByAGQAXABwAGwAYQBpAG4AXABxAGwAewBcAGYAMgBcAGYAcwAyADAAXABjAGYAMQAgAEsAZQBpAG4AZQAgAH0AewBcAGwAYQBuAGcAMQAwADMAMQBcAGwAYQBuAGcAZgBlADEAMAAzADEAXAB1AGwAXABmADIAXABmAHMAMgAwAFwAYwBmADEAIABLAHIAYQBuAGsAZQBuAGgAYQB1AHMAYQB1AGYAZQBuAHQAaABhAGwAdABlAH0AXABsAGEAbgBnADEAMAAzADEAXABsAGEAbgBnAGYAZQAxADAAMwAxAFwAdQBsAFwAZgAyAFwAZgBzADIAMABcAGMAZgAxAFwAcABhAHIAXABwAGEAcgBkAFwAcABsAGEAaQBuAFwAcQBsAHsAXABsAGEAbgBnADEAMAAzADEAXABsAGEAbgBnAGYAZQAxADAAMwAxAFwAdQBsAFwAZgAyAFwAZgBzADIAMABcAGMAZgAxACAAYgBlAGsAYQBuAG4AdAAgAG8AZABlAHIAIAB9AFwAbABhAG4AZwAxADAAMwAxAFwAbABhAG4AZwBmAGUAMQAwADMAMQBcAHUAbABcAGYAMgBcAGYAcwAyADAAXABjAGYAMQBcAHAAYQByAFwAcABhAHIAZABcAHAAbABhAGkAbgBcAHEAbAB7AFwAbABhAG4AZwAxADAAMwAxAFwAbABhAG4AZwBmAGUAMQAwADMAMQBcAHUAbABcAGYAMgBcAGYAcwAyADAAXABjAGYAMQAgAGEAYgByAGUAYwBoAG4AdQBuAGcAcwByAGUAbABlAHYAYQBuAHQAfQB7AFwAbABhAG4AZwAxADAAMwAxAFwAbABhAG4AZwBmAGUAMQAwADMAMQBcAGYAMgBcAGYAcwAyADAAXABjAGYAMQAgACAAaQBtACAAQQBiAHIAZQBjAGgAbgB1AG4AZwBzAHoAZQBpAHQAcgBhAHUAbQB9AFwAbABhAG4AZwAxADAAMwAxAFwAbABhAG4AZwBmAGUAMQAwADMAMQBcAGYAMQBcAGYAcwAyADQAXABjAGYAMQBcAHAAYQByAH0A</value>
|
||||
</data>
|
||||
<data name="xrRichText1.SerializableRtfString" xml:space="preserve">
|
||||
<value>ewBcAHIAdABmADEAXABkAGUAZgBmADAAewBcAGYAbwBuAHQAdABiAGwAewBcAGYAMAAgAEMAYQBsAGkAYgByAGkAOwB9AHsAXABmADEAIABUAGkAbQBlAHMAIABOAGUAdwAgAFIAbwBtAGEAbgA7AH0AewBcAGYAMgAgAEEAcgBpAGEAbAA7AH0AfQB7AFwAYwBvAGwAbwByAHQAYgBsACAAOwBcAHIAZQBkADAAXABnAHIAZQBlAG4AMABcAGIAbAB1AGUAMAAgADsAXAByAGUAZAAwAFwAZwByAGUAZQBuADAAXABiAGwAdQBlADIANQA1ACAAOwB9AHsAXAAqAFwAZABlAGYAYwBoAHAAIABcAGYAMQBcAGYAcwAyADQAfQB7AFwAcwB0AHkAbABlAHMAaABlAGUAdAAgAHsAXABxAGwAXABmADEAXABmAHMAMgA0ACAATgBvAHIAbQBhAGwAOwB9AHsAXAAqAFwAYwBzADEAXABmADEAXABmAHMAMgA0AFwAYwBmADEAIABEAGUAZgBhAHUAbAB0ACAAUABhAHIAYQBnAHIAYQBwAGgAIABGAG8AbgB0ADsAfQB7AFwAKgBcAGMAcwAyAFwAcwBiAGEAcwBlAGQAbwBuADEAXABmADEAXABmAHMAMgA0AFwAYwBmADEAIABMAGkAbgBlACAATgB1AG0AYgBlAHIAOwB9AHsAXAAqAFwAYwBzADMAXAB1AGwAXABmADEAXABmAHMAMgA0AFwAYwBmADIAIABIAHkAcABlAHIAbABpAG4AawA7AH0AewBcACoAXAB0AHMANABcAHQAcwByAG8AdwBkAFwAZgAxAFwAZgBzADIANABcAHEAbABcAHQAcwBjAGUAbABsAHAAYQBkAGQAZgBsADMAXAB0AHMAYwBlAGwAbABwAGEAZABkAGwAMQAwADgAXAB0AHMAYwBlAGwAbABwAGEAZABkAGYAYgAzAFwAdABzAGMAZQBsAGwAcABhAGQAZABmAHIAMwBcAHQAcwBjAGUAbABsAHAAYQBkAGQAcgAxADAAOABcAHQAcwBjAGUAbABsAHAAYQBkAGQAZgB0ADMAXAB0AHMAdgBlAHIAdABhAGwAdABcAGMAbAB0AHgAbAByAHQAYgAgAE4AbwByAG0AYQBsACAAVABhAGIAbABlADsAfQB7AFwAKgBcAHQAcwA1AFwAdABzAHIAbwB3AGQAXABzAGIAYQBzAGUAZABvAG4ANABcAGYAMQBcAGYAcwAyADQAXABxAGwAXAB0AHIAYgByAGQAcgB0AFwAYgByAGQAcgBzAFwAYgByAGQAcgB3ADEAMABcAHQAcgBiAHIAZAByAGwAXABiAHIAZAByAHMAXABiAHIAZAByAHcAMQAwAFwAdAByAGIAcgBkAHIAYgBcAGIAcgBkAHIAcwBcAGIAcgBkAHIAdwAxADAAXAB0AHIAYgByAGQAcgByAFwAYgByAGQAcgBzAFwAYgByAGQAcgB3ADEAMABcAHQAcgBiAHIAZAByAGgAXABiAHIAZAByAHMAXABiAHIAZAByAHcAMQAwAFwAdAByAGIAcgBkAHIAdgBcAGIAcgBkAHIAcwBcAGIAcgBkAHIAdwAxADAAXAB0AHMAYwBlAGwAbABwAGEAZABkAGYAbAAzAFwAdABzAGMAZQBsAGwAcABhAGQAZABsADEAMAA4AFwAdABzAGMAZQBsAGwAcABhAGQAZABmAHIAMwBcAHQAcwBjAGUAbABsAHAAYQBkAGQAcgAxADAAOABcAHQAcwB2AGUAcgB0AGEAbAB0AFwAYwBsAHQAeABsAHIAdABiACAAVABhAGIAbABlACAAUwBpAG0AcABsAGUAIAAxADsAfQB9AHsAXAAqAFwAbABpAHMAdABvAHYAZQByAHIAaQBkAGUAdABhAGIAbABlAH0AXABuAG8AdQBpAGMAbwBtAHAAYQB0AFwAcwBwAGwAeQB0AHcAbgBpAG4AZQBcAGgAdABtAGEAdQB0AHMAcABcAHAAYQByAGQAXABwAGwAYQBpAG4AXABxAGwAewBcAGYAMgBcAGYAcwAyADAAXABjAGYAMQAgAEsAZQBpAG4AZQAgAH0AewBcAHUAbABcAGYAMgBcAGYAcwAyADAAXABjAGYAMQAgAEcAcgB1AHAAcABlAG4AYQBuAGcAZQBiAG8AdABlAH0AewBcAGYAMgBcAGYAcwAyADAAXABjAGYAMQAgACAAaQBtACAAQQBiAHIAZQBjAGgAbgB1AG4AZwBzAHoAZQBpAHQAcgBhAHUAbQB9AFwAZgAxAFwAZgBzADIANABcAGMAZgAxAFwAcABhAHIAfQA=</value>
|
||||
</data>
|
||||
</root>
|
||||
@@ -48,9 +48,16 @@
|
||||
<Reference Include="System.Xml" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="CustomReportCreator.cs" />
|
||||
<Compile Include="Invoicing\CustomBeWo67InvoiceCreation.cs" />
|
||||
<Compile Include="Invoicing\CustomInvoiceFactory.cs" />
|
||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||
<Compile Include="QuittierungsbelegLVR.cs">
|
||||
<SubType>Component</SubType>
|
||||
</Compile>
|
||||
<Compile Include="QuittierungsbelegLVR.Designer.cs">
|
||||
<DependentUpon>QuittierungsbelegLVR.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="RechnungBeWo67.cs">
|
||||
<SubType>Component</SubType>
|
||||
</Compile>
|
||||
@@ -90,6 +97,10 @@
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<EmbeddedResource Include="Properties\licenses.licx" />
|
||||
<EmbeddedResource Include="QuittierungsbelegLVR.resx">
|
||||
<DependentUpon>QuittierungsbelegLVR.cs</DependentUpon>
|
||||
<SubType>Designer</SubType>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="RechnungBeWo67.resx">
|
||||
<DependentUpon>RechnungBeWo67.cs</DependentUpon>
|
||||
<SubType>Designer</SubType>
|
||||
|
||||
22
ReportImp/VisionReports/CustomCustomerService.cs
Normal file
22
ReportImp/VisionReports/CustomCustomerService.cs
Normal file
@@ -0,0 +1,22 @@
|
||||
using BeWo.Service.Plugins;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace VisionReports
|
||||
{
|
||||
public class CustomCustomerService : CustomerService
|
||||
{
|
||||
protected override string GetBrushForNearlyExpiredSupportConcept()
|
||||
{
|
||||
return "#FFFFFF";
|
||||
}
|
||||
protected override string GetBrushForExpiredSupportConcept()
|
||||
{
|
||||
return "#FAF200";
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
@@ -95,7 +95,9 @@
|
||||
<RequiredTargetFramework>3.5</RequiredTargetFramework>
|
||||
</Reference>
|
||||
<Reference Include="System.Drawing" />
|
||||
<Reference Include="System.Windows" />
|
||||
<Reference Include="System.Windows.Forms" />
|
||||
<Reference Include="System.Windows.Presentation" />
|
||||
<Reference Include="System.Xml.Linq">
|
||||
<RequiredTargetFramework>3.5</RequiredTargetFramework>
|
||||
</Reference>
|
||||
@@ -106,6 +108,7 @@
|
||||
<Reference Include="System.Xml" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="CustomCustomerService.cs" />
|
||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||
<Compile Include="ServicesOverviewReport.cs">
|
||||
<SubType>Component</SubType>
|
||||
@@ -134,6 +137,14 @@
|
||||
<Project>{40D8B312-EA64-49E3-A31A-5E57ED4D5654}</Project>
|
||||
<Name>Report</Name>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="..\..\Service\Service.csproj">
|
||||
<Project>{094331c3-ecee-4c89-bbfd-4c9ded89f0ef}</Project>
|
||||
<Name>Service</Name>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="..\..\Shared\Shared.csproj">
|
||||
<Project>{2f50b83d-a3f0-4ec4-979a-3f9b7e3d8ed4}</Project>
|
||||
<Name>Shared</Name>
|
||||
</ProjectReference>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<BootstrapperPackage Include="Microsoft.Net.Client.3.5">
|
||||
|
||||
@@ -9,7 +9,12 @@ using BS.Shared.DataContracts;
|
||||
using DevExpress.XtraReports.UI;
|
||||
|
||||
namespace Wichernhaus
|
||||
{
|
||||
{
|
||||
// ============================================================================
|
||||
// Wird seit Ende September 2023 nicht mehr erzeugt (nur noch Budgetnachweis2).
|
||||
// Bleibt noch ne Weile im Projekt um alte Spitzabrechungen öffenen zu können.
|
||||
// ============================================================================
|
||||
|
||||
public partial class Budgetnachweis : DevExpress.XtraReports.UI.XtraReport, IBeWoReport<SettlementRO>
|
||||
{
|
||||
public Budgetnachweis()
|
||||
|
||||
1062
ReportImp/Wichernhaus/Budgetnachweis2.Designer.cs
generated
1062
ReportImp/Wichernhaus/Budgetnachweis2.Designer.cs
generated
File diff suppressed because it is too large
Load Diff
@@ -4,8 +4,6 @@ using BeWo.Data.Access;
|
||||
using BeWo.Data.Entities;
|
||||
using BeWo.Report.ReportObjects;
|
||||
using BeWo.Report;
|
||||
using BS.Shared.Core;
|
||||
using BS.Shared.DataContracts;
|
||||
using DevExpress.XtraReports.UI;
|
||||
|
||||
namespace Wichernhaus.Neu
|
||||
@@ -66,20 +64,13 @@ namespace Wichernhaus.Neu
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
ErstelleRechnungspositionen(pRO, terminationDate);
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
bindingSource1.DataSource = pRO;
|
||||
}
|
||||
|
||||
private void ErstelleRechnungspositionen(Settlement2RO pRO, DateTime? terminationDate)
|
||||
{
|
||||
|
||||
if (pRO.InvoiceItems != null && pRO.InvoiceItems.Count > 0)
|
||||
{
|
||||
int rowIndex = 0;
|
||||
@@ -90,9 +81,7 @@ namespace Wichernhaus.Neu
|
||||
AddRechnungsposition(ii, rowIndex++);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
@@ -109,9 +98,11 @@ namespace Wichernhaus.Neu
|
||||
}
|
||||
newRow.Cells[0].Text = String.Format("{0:dd.MM.yyyy}", ii.PeriodStartDate);
|
||||
newRow.Cells[1].Text = String.Format("{0:dd.MM.yyyy}", ii.PeriodEndDate);
|
||||
newRow.Cells[2].Text = String.Format("{0:0.00}", ii.AmountPerUnit);
|
||||
newRow.Cells[3].Text = String.Format("{0:0.00}", ii.UnitCount);
|
||||
newRow.Cells[2].Text = ii.ItemDescription;
|
||||
newRow.Cells[3].Text = String.Format("{0:0.00}", ii.AmountPerUnit);
|
||||
newRow.Cells[4].Text = String.Format("{0:0.00}", ii.UnitCount);
|
||||
}
|
||||
|
||||
private string CorrectPossibleTerminationEndDate(string dateString, DateTime? terminationDate)
|
||||
{
|
||||
if (terminationDate.HasValue)
|
||||
@@ -124,7 +115,6 @@ namespace Wichernhaus.Neu
|
||||
return String.Format("{0:dd.MM.yyyy}", terminationDate);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
return dateString;
|
||||
|
||||
@@ -1,131 +1,131 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<root>
|
||||
<!--
|
||||
Microsoft ResX Schema
|
||||
|
||||
Version 2.0
|
||||
|
||||
The primary goals of this format is to allow a simple XML format
|
||||
that is mostly human readable. The generation and parsing of the
|
||||
various data types are done through the TypeConverter classes
|
||||
associated with the data types.
|
||||
|
||||
Example:
|
||||
|
||||
... ado.net/XML headers & schema ...
|
||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||
<resheader name="version">2.0</resheader>
|
||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||
</data>
|
||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||
<comment>This is a comment</comment>
|
||||
</data>
|
||||
|
||||
There are any number of "resheader" rows that contain simple
|
||||
name/value pairs.
|
||||
|
||||
Each data row contains a name, and value. The row also contains a
|
||||
type or mimetype. Type corresponds to a .NET class that support
|
||||
text/value conversion through the TypeConverter architecture.
|
||||
Classes that don't support this are serialized and stored with the
|
||||
mimetype set.
|
||||
|
||||
The mimetype is used for serialized objects, and tells the
|
||||
ResXResourceReader how to depersist the object. This is currently not
|
||||
extensible. For a given mimetype the value must be set accordingly:
|
||||
|
||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||
that the ResXResourceWriter will generate, however the reader can
|
||||
read any of the formats listed below.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.binary.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.soap.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||
value : The object must be serialized into a byte array
|
||||
: using a System.ComponentModel.TypeConverter
|
||||
: and then encoded with base64 encoding.
|
||||
-->
|
||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||
<xsd:element name="root" msdata:IsDataSet="true">
|
||||
<xsd:complexType>
|
||||
<xsd:choice maxOccurs="unbounded">
|
||||
<xsd:element name="metadata">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||
<xsd:attribute name="type" type="xsd:string" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="assembly">
|
||||
<xsd:complexType>
|
||||
<xsd:attribute name="alias" type="xsd:string" />
|
||||
<xsd:attribute name="name" type="xsd:string" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="data">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="resheader">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:choice>
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:schema>
|
||||
<resheader name="resmimetype">
|
||||
<value>text/microsoft-resx</value>
|
||||
</resheader>
|
||||
<resheader name="version">
|
||||
<value>2.0</value>
|
||||
</resheader>
|
||||
<resheader name="reader">
|
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<data name="xrLabel12.Text" xml:space="preserve">
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<root>
|
||||
<!--
|
||||
Microsoft ResX Schema
|
||||
|
||||
Version 2.0
|
||||
|
||||
The primary goals of this format is to allow a simple XML format
|
||||
that is mostly human readable. The generation and parsing of the
|
||||
various data types are done through the TypeConverter classes
|
||||
associated with the data types.
|
||||
|
||||
Example:
|
||||
|
||||
... ado.net/XML headers & schema ...
|
||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||
<resheader name="version">2.0</resheader>
|
||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||
</data>
|
||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||
<comment>This is a comment</comment>
|
||||
</data>
|
||||
|
||||
There are any number of "resheader" rows that contain simple
|
||||
name/value pairs.
|
||||
|
||||
Each data row contains a name, and value. The row also contains a
|
||||
type or mimetype. Type corresponds to a .NET class that support
|
||||
text/value conversion through the TypeConverter architecture.
|
||||
Classes that don't support this are serialized and stored with the
|
||||
mimetype set.
|
||||
|
||||
The mimetype is used for serialized objects, and tells the
|
||||
ResXResourceReader how to depersist the object. This is currently not
|
||||
extensible. For a given mimetype the value must be set accordingly:
|
||||
|
||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||
that the ResXResourceWriter will generate, however the reader can
|
||||
read any of the formats listed below.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.binary.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.soap.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||
value : The object must be serialized into a byte array
|
||||
: using a System.ComponentModel.TypeConverter
|
||||
: and then encoded with base64 encoding.
|
||||
-->
|
||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||
<xsd:element name="root" msdata:IsDataSet="true">
|
||||
<xsd:complexType>
|
||||
<xsd:choice maxOccurs="unbounded">
|
||||
<xsd:element name="metadata">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||
<xsd:attribute name="type" type="xsd:string" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="assembly">
|
||||
<xsd:complexType>
|
||||
<xsd:attribute name="alias" type="xsd:string" />
|
||||
<xsd:attribute name="name" type="xsd:string" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="data">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="resheader">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:choice>
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:schema>
|
||||
<resheader name="resmimetype">
|
||||
<value>text/microsoft-resx</value>
|
||||
</resheader>
|
||||
<resheader name="version">
|
||||
<value>2.0</value>
|
||||
</resheader>
|
||||
<resheader name="reader">
|
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<data name="xrLabel12.Text" xml:space="preserve">
|
||||
<value>Hiermit wird erklärt, dass die Verpflichtungen aus der Leistungs-, Prüfungs- und Vergütungsvereinbarung nach §§ 75 ff. SGB X II eingehalten wurden und alle hier gemachten Angaben anhand der vorgehaltenen Quittierungsbelege sowie der Betreuungsdokumentation jederzeit nachgewiesen werden können.
|
||||
|
||||
Mit freundlichen Grüßen</value>
|
||||
</data>
|
||||
<data name="xrRichText2.SerializableRtfString" xml:space="preserve">
|
||||
<value>ewBcAHIAdABmADEAXABkAGUAZgBmADAAewBcAGYAbwBuAHQAdABiAGwAewBcAGYAMAAgAEMAYQBsAGkAYgByAGkAOwB9AHsAXABmADEAIABUAGkAbQBlAHMAIABOAGUAdwAgAFIAbwBtAGEAbgA7AH0AfQB7AFwAYwBvAGwAbwByAHQAYgBsACAAOwBcAHIAZQBkADAAXABnAHIAZQBlAG4AMABcAGIAbAB1AGUAMAAgADsAXAByAGUAZAAwAFwAZwByAGUAZQBuADAAXABiAGwAdQBlADIANQA1ACAAOwB9AHsAXAAqAFwAZABlAGYAYwBoAHAAIABcAGYAMQBcAGYAcwAyADQAfQB7AFwAcwB0AHkAbABlAHMAaABlAGUAdAAgAHsAXABxAGwAXABmADEAXABmAHMAMgA0ACAATgBvAHIAbQBhAGwAOwB9AHsAXAAqAFwAYwBzADEAXABmADEAXABmAHMAMgA0AFwAYwBmADEAIABEAGUAZgBhAHUAbAB0ACAAUABhAHIAYQBnAHIAYQBwAGgAIABGAG8AbgB0ADsAfQB7AFwAKgBcAGMAcwAyAFwAcwBiAGEAcwBlAGQAbwBuADEAXABmADEAXABmAHMAMgA0AFwAYwBmADEAIABMAGkAbgBlACAATgB1AG0AYgBlAHIAOwB9AHsAXAAqAFwAYwBzADMAXAB1AGwAXABmADEAXABmAHMAMgA0AFwAYwBmADIAIABIAHkAcABlAHIAbABpAG4AawA7AH0AewBcACoAXAB0AHMANABcAHQAcwByAG8AdwBkAFwAZgAxAFwAZgBzADIANABcAHEAbABcAHQAcwBjAGUAbABsAHAAYQBkAGQAZgBsADMAXAB0AHMAYwBlAGwAbABwAGEAZABkAGwAMQAwADgAXAB0AHMAYwBlAGwAbABwAGEAZABkAGYAYgAzAFwAdABzAGMAZQBsAGwAcABhAGQAZABmAHIAMwBcAHQAcwBjAGUAbABsAHAAYQBkAGQAcgAxADAAOABcAHQAcwBjAGUAbABsAHAAYQBkAGQAZgB0ADMAXAB0AHMAdgBlAHIAdABhAGwAdABcAGMAbAB0AHgAbAByAHQAYgAgAE4AbwByAG0AYQBsACAAVABhAGIAbABlADsAfQB7AFwAKgBcAHQAcwA1AFwAdABzAHIAbwB3AGQAXABzAGIAYQBzAGUAZABvAG4ANABcAGYAMQBcAGYAcwAyADQAXABxAGwAXAB0AHIAYgByAGQAcgB0AFwAYgByAGQAcgBzAFwAYgByAGQAcgB3ADEAMABcAHQAcgBiAHIAZAByAGwAXABiAHIAZAByAHMAXABiAHIAZAByAHcAMQAwAFwAdAByAGIAcgBkAHIAYgBcAGIAcgBkAHIAcwBcAGIAcgBkAHIAdwAxADAAXAB0AHIAYgByAGQAcgByAFwAYgByAGQAcgBzAFwAYgByAGQAcgB3ADEAMABcAHQAcgBiAHIAZAByAGgAXABiAHIAZAByAHMAXABiAHIAZAByAHcAMQAwAFwAdAByAGIAcgBkAHIAdgBcAGIAcgBkAHIAcwBcAGIAcgBkAHIAdwAxADAAXAB0AHMAYwBlAGwAbABwAGEAZABkAGYAbAAzAFwAdABzAGMAZQBsAGwAcABhAGQAZABsADEAMAA4AFwAdABzAGMAZQBsAGwAcABhAGQAZABmAHIAMwBcAHQAcwBjAGUAbABsAHAAYQBkAGQAcgAxADAAOABcAHQAcwB2AGUAcgB0AGEAbAB0AFwAYwBsAHQAeABsAHIAdABiACAAVABhAGIAbABlACAAUwBpAG0AcABsAGUAIAAxADsAfQB9AHsAXAAqAFwAbABpAHMAdABvAHYAZQByAHIAaQBkAGUAdABhAGIAbABlAH0AXABuAG8AdQBpAGMAbwBtAHAAYQB0AFwAcwBwAGwAeQB0AHcAbgBpAG4AZQBcAGgAdABtAGEAdQB0AHMAcABcAHAAYQByAGQAXABwAGwAYQBpAG4AXABxAGwAXABoAHkAcABoAHAAYQByADAAewBcAGIAXABmADEAXABmAHMAMQA4AFwAYwBmADAAIABXAGkAYwBoAGUAcgBuAGgAYQB1AHMAIABnAEcAbQBiAEgAfQBcAGYAMQBcAGYAcwAyADQAXABwAGEAcgBcAHAAYQByAGQAXABwAGwAYQBpAG4AXABxAGwAXABoAHkAcABoAHAAYQByADAAewBcAGIAXABmADEAXABmAHMAMQA4AFwAYwBmADAAIABBAG0AYgB1AGwAYQBuAHQAIABCAGUAdAByAGUAdQB0AGUAcwAgAFcAbwBoAG4AZQBuAH0AXABiAFwAZgAxAFwAZgBzADIANABcAHAAYQByAFwAcABhAHIAZABcAHAAbABhAGkAbgBcAHEAbABcAGgAeQBwAGgAcABhAHIAMABcAGYAMQBcAGYAcwAxADgAXABwAGEAcgBcAHAAYQByAGQAXABwAGwAYQBpAG4AXABxAGwAXABoAHkAcABoAHAAYQByADAAewBcAGYAMQBcAGYAcwAxADgAXABjAGYAMAAgAFcAYQByAGUAbgBkAG8AcgBmAGUAcgAgAFMAdAByAC4AIAAxADQAfQBcAGYAMQBcAGYAcwAxADgAXABwAGEAcgBcAHAAYQByAGQAXABwAGwAYQBpAG4AXABxAGwAXABoAHkAcABoAHAAYQByADAAewBcAGYAMQBcAGYAcwAxADgAXABjAGYAMAAgADQANQA4ADkAMgAgAEcAZQBsAHMAZQBuAGsAaQByAGMAaABlAG4AfQBcAGYAMQBcAGYAcwAxADgAXABwAGEAcgBcAHAAYQByAGQAXABwAGwAYQBpAG4AXABxAGwAXABoAHkAcABoAHAAYQByADAAewBcAGYAMQBcAGYAcwAxADgAXABjAGYAMAAgAFQAZQBsAGUAZgBvAG4AOgAgADAAMgAwADkALwA5ADcANgAxADcAMQA0AH0AXABmADEAXABmAHMAMQA4AFwAcABhAHIAXABwAGEAcgBkAFwAcABsAGEAaQBuAFwAcQBsAFwAaAB5AHAAaABwAGEAcgAwAHsAXABmADEAXABmAHMAMQA4AFwAYwBmADAAIABGAGEAeAA6ACAAMAAyADAAOQAvADkANwA2ADEANwA5ADkAfQBcAGYAMQBcAGYAcwAxADgAXABwAGEAcgBcAHAAYQByAGQAXABwAGwAYQBpAG4AXABxAGwAXABoAHkAcABoAHAAYQByADAAewBcAGYAaQBlAGwAZAB7AFwAKgBcAGYAbABkAGkAbgBzAHQAewBcAGYAMQBcAGYAcwAyADQAXABjAGYAMAAgAEgAWQBQAEUAUgBMAEkATgBLACAAIgBtAGEAaQBsAHQAbwA6AGIAZQB0AHIAZQB1AHQAZQBzAHcAbwBoAG4AZQBuAEAAdwBpAGMAaABlAHIAbgBoAGEAdQBzAC4AYwBvAG0AIgAgAH0AfQB7AFwAZgBsAGQAcgBzAGwAdAB7AFwAdQBsAFwAZgAxAFwAZgBzADEAOABcAGMAZgAyACAAYgBlAHQAcgBlAHUAdABlAHMAdwBvAGgAbgBlAG4AQAB3AGkAYwBoAGUAcgBuAGgAYQB1AHMALgBjAG8AbQB9AH0AfQBcAGYAMQBcAGYAcwAyADQAXABwAGEAcgBcAHAAYQByAGQAXABwAGwAYQBpAG4AXABxAGwAXABzAGwAMgA3ADUAXABzAGwAbQB1AGwAdAAxAFwAcwBhADIAMAAwAHsAXABmADEAXABmAHMAMQA4AFwAYwBmADAAIABBAG4AcwBwAHIAZQBjAGgAcABhAHIAdABuAGUAcgA6ACAARgAuACAAQwBvAGwAbABlAHQAfQBcAGwAYQBuAGcANwBcAGwAYQBuAGcAZgBlADcAXABmAHMAMgAyAFwAcABhAHIAXABwAGEAcgBkAFwAcABsAGEAaQBuAFwAcQBsAFwAbABhAG4AZwAxADAAMwAxAFwAbABhAG4AZwBmAGUAMQAwADMAMQBcAGYAMQBcAGYAcwAyADQAXABjAGYAMQBcAHAAYQByAH0A</value>
|
||||
</data>
|
||||
<metadata name="bindingSource1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>17, 17</value>
|
||||
</metadata>
|
||||
Mit freundlichen Grüßen</value>
|
||||
</data>
|
||||
<data name="xrRichText2.SerializableRtfString" xml:space="preserve">
|
||||
<value>ewBcAHIAdABmADEAXABkAGUAZgBmADAAewBcAGYAbwBuAHQAdABiAGwAewBcAGYAMAAgAEMAYQBsAGkAYgByAGkAOwB9AHsAXABmADEAIABUAGkAbQBlAHMAIABOAGUAdwAgAFIAbwBtAGEAbgA7AH0AfQB7AFwAYwBvAGwAbwByAHQAYgBsACAAOwBcAHIAZQBkADAAXABnAHIAZQBlAG4AMABcAGIAbAB1AGUAMAAgADsAXAByAGUAZAAwAFwAZwByAGUAZQBuADAAXABiAGwAdQBlADIANQA1ACAAOwB9AHsAXAAqAFwAZABlAGYAYwBoAHAAIABcAGYAMQBcAGYAcwAyADQAfQB7AFwAcwB0AHkAbABlAHMAaABlAGUAdAAgAHsAXABxAGwAXABmADEAXABmAHMAMgA0ACAATgBvAHIAbQBhAGwAOwB9AHsAXAAqAFwAYwBzADEAXABmADEAXABmAHMAMgA0AFwAYwBmADEAIABEAGUAZgBhAHUAbAB0ACAAUABhAHIAYQBnAHIAYQBwAGgAIABGAG8AbgB0ADsAfQB7AFwAKgBcAGMAcwAyAFwAcwBiAGEAcwBlAGQAbwBuADEAXABmADEAXABmAHMAMgA0AFwAYwBmADEAIABMAGkAbgBlACAATgB1AG0AYgBlAHIAOwB9AHsAXAAqAFwAYwBzADMAXAB1AGwAXABmADEAXABmAHMAMgA0AFwAYwBmADIAIABIAHkAcABlAHIAbABpAG4AawA7AH0AewBcACoAXAB0AHMANABcAHQAcwByAG8AdwBkAFwAZgAxAFwAZgBzADIANABcAHEAbABcAHQAcwBjAGUAbABsAHAAYQBkAGQAZgBsADMAXAB0AHMAYwBlAGwAbABwAGEAZABkAGwAMQAwADgAXAB0AHMAYwBlAGwAbABwAGEAZABkAGYAYgAzAFwAdABzAGMAZQBsAGwAcABhAGQAZABmAHIAMwBcAHQAcwBjAGUAbABsAHAAYQBkAGQAcgAxADAAOABcAHQAcwBjAGUAbABsAHAAYQBkAGQAZgB0ADMAXAB0AHMAdgBlAHIAdABhAGwAdABcAGMAbAB0AHgAbAByAHQAYgAgAE4AbwByAG0AYQBsACAAVABhAGIAbABlADsAfQB7AFwAKgBcAHQAcwA1AFwAdABzAHIAbwB3AGQAXABzAGIAYQBzAGUAZABvAG4ANABcAGYAMQBcAGYAcwAyADQAXABxAGwAXAB0AHIAYgByAGQAcgB0AFwAYgByAGQAcgBzAFwAYgByAGQAcgB3ADEAMABcAHQAcgBiAHIAZAByAGwAXABiAHIAZAByAHMAXABiAHIAZAByAHcAMQAwAFwAdAByAGIAcgBkAHIAYgBcAGIAcgBkAHIAcwBcAGIAcgBkAHIAdwAxADAAXAB0AHIAYgByAGQAcgByAFwAYgByAGQAcgBzAFwAYgByAGQAcgB3ADEAMABcAHQAcgBiAHIAZAByAGgAXABiAHIAZAByAHMAXABiAHIAZAByAHcAMQAwAFwAdAByAGIAcgBkAHIAdgBcAGIAcgBkAHIAcwBcAGIAcgBkAHIAdwAxADAAXAB0AHMAYwBlAGwAbABwAGEAZABkAGYAbAAzAFwAdABzAGMAZQBsAGwAcABhAGQAZABsADEAMAA4AFwAdABzAGMAZQBsAGwAcABhAGQAZABmAHIAMwBcAHQAcwBjAGUAbABsAHAAYQBkAGQAcgAxADAAOABcAHQAcwB2AGUAcgB0AGEAbAB0AFwAYwBsAHQAeABsAHIAdABiACAAVABhAGIAbABlACAAUwBpAG0AcABsAGUAIAAxADsAfQB9AHsAXAAqAFwAbABpAHMAdABvAHYAZQByAHIAaQBkAGUAdABhAGIAbABlAH0AXABuAG8AdQBpAGMAbwBtAHAAYQB0AFwAcwBwAGwAeQB0AHcAbgBpAG4AZQBcAGgAdABtAGEAdQB0AHMAcABcAHAAYQByAGQAXABwAGwAYQBpAG4AXABxAGwAXABoAHkAcABoAHAAYQByADAAewBcAGIAXABmADEAXABmAHMAMQA4AFwAYwBmADAAIABXAGkAYwBoAGUAcgBuAGgAYQB1AHMAIABnAEcAbQBiAEgAfQBcAGYAMQBcAGYAcwAyADQAXABwAGEAcgBcAHAAYQByAGQAXABwAGwAYQBpAG4AXABxAGwAXABoAHkAcABoAHAAYQByADAAewBcAGIAXABmADEAXABmAHMAMQA4AFwAYwBmADAAIABBAG0AYgB1AGwAYQBuAHQAIABCAGUAdAByAGUAdQB0AGUAcwAgAFcAbwBoAG4AZQBuAH0AXABiAFwAZgAxAFwAZgBzADIANABcAHAAYQByAFwAcABhAHIAZABcAHAAbABhAGkAbgBcAHEAbABcAGgAeQBwAGgAcABhAHIAMABcAGYAMQBcAGYAcwAxADgAXABwAGEAcgBcAHAAYQByAGQAXABwAGwAYQBpAG4AXABxAGwAXABoAHkAcABoAHAAYQByADAAewBcAGYAMQBcAGYAcwAxADgAXABjAGYAMAAgAFcAYQByAGUAbgBkAG8AcgBmAGUAcgAgAFMAdAByAC4AIAAxADQAfQBcAGYAMQBcAGYAcwAxADgAXABwAGEAcgBcAHAAYQByAGQAXABwAGwAYQBpAG4AXABxAGwAXABoAHkAcABoAHAAYQByADAAewBcAGYAMQBcAGYAcwAxADgAXABjAGYAMAAgADQANQA4ADkAMgAgAEcAZQBsAHMAZQBuAGsAaQByAGMAaABlAG4AfQBcAGYAMQBcAGYAcwAxADgAXABwAGEAcgBcAHAAYQByAGQAXABwAGwAYQBpAG4AXABxAGwAXABoAHkAcABoAHAAYQByADAAewBcAGYAMQBcAGYAcwAxADgAXABjAGYAMAAgAFQAZQBsAGUAZgBvAG4AOgAgADAAMgAwADkALwA5ADcANgAxADcAMQA0AH0AXABmADEAXABmAHMAMQA4AFwAcABhAHIAXABwAGEAcgBkAFwAcABsAGEAaQBuAFwAcQBsAFwAaAB5AHAAaABwAGEAcgAwAHsAXABmADEAXABmAHMAMQA4AFwAYwBmADAAIABGAGEAeAA6ACAAMAAyADAAOQAvADkANwA2ADEANwA5ADkAfQBcAGYAMQBcAGYAcwAxADgAXABwAGEAcgBcAHAAYQByAGQAXABwAGwAYQBpAG4AXABxAGwAXABoAHkAcABoAHAAYQByADAAewBcAGYAaQBlAGwAZAB7AFwAKgBcAGYAbABkAGkAbgBzAHQAewBcAGYAMQBcAGYAcwAyADQAXABjAGYAMAAgAEgAWQBQAEUAUgBMAEkATgBLACAAIgBtAGEAaQBsAHQAbwA6AGIAZQB0AHIAZQB1AHQAZQBzAHcAbwBoAG4AZQBuAEAAdwBpAGMAaABlAHIAbgBoAGEAdQBzAC4AYwBvAG0AIgAgAH0AfQB7AFwAZgBsAGQAcgBzAGwAdAB7AFwAdQBsAFwAZgAxAFwAZgBzADEAOABcAGMAZgAyACAAYgBlAHQAcgBlAHUAdABlAHMAdwBvAGgAbgBlAG4AQAB3AGkAYwBoAGUAcgBuAGgAYQB1AHMALgBjAG8AbQB9AH0AfQBcAGYAMQBcAGYAcwAyADQAXABwAGEAcgBcAHAAYQByAGQAXABwAGwAYQBpAG4AXABxAGwAXABzAGwAMgA3ADUAXABzAGwAbQB1AGwAdAAxAFwAcwBhADIAMAAwAHsAXABmADEAXABmAHMAMQA4AFwAYwBmADAAIABBAG4AcwBwAHIAZQBjAGgAcABhAHIAdABuAGUAcgA6ACAARgAuACAAQwBvAGwAbABlAHQAfQBcAGwAYQBuAGcANwBcAGwAYQBuAGcAZgBlADcAXABmAHMAMgAyAFwAcABhAHIAXABwAGEAcgBkAFwAcABsAGEAaQBuAFwAcQBsAFwAbABhAG4AZwAxADAAMwAxAFwAbABhAG4AZwBmAGUAMQAwADMAMQBcAGYAMQBcAGYAcwAyADQAXABjAGYAMQBcAHAAYQByAH0A</value>
|
||||
</data>
|
||||
<metadata name="bindingSource1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>17, 17</value>
|
||||
</metadata>
|
||||
</root>
|
||||
@@ -20,6 +20,11 @@ namespace Wichernhaus.Invoicing
|
||||
public override bool CheckMaxApprovedHours()
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
public override bool CanCreateInvoiceTheOldWay(Settlement2DC si, CostBearer2SupportConcept c2s)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -56,13 +56,7 @@ namespace ReportingService.Plugins
|
||||
private static DefaultReportCreator CreateReportCreator()
|
||||
{
|
||||
var reportCreator = PluginLoader.FindClass<DefaultReportCreator>();
|
||||
reportCreator.Tenant = PluginLoader.Tenant;
|
||||
|
||||
#if DEBUG
|
||||
reportCreator.ReportPath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, @"bin\" + PluginLoader.Tenant + "_reports.dll");
|
||||
#else
|
||||
reportCreator.ReportPath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, @"Customer\" + PluginLoader.Tenant + "_reports.dll");
|
||||
#endif
|
||||
|
||||
return reportCreator;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -175,92 +175,19 @@ namespace ReportingService.ServiceImplementations
|
||||
|
||||
private static AbstractReportCreator GetReportCreator()
|
||||
{
|
||||
var derTenant = MultitenancyOperationContextExt.Current.Tenant;
|
||||
|
||||
AbstractReportCreator creator = null;
|
||||
#if DEBUG
|
||||
//Kundennummern zum Testen nur noch in PluginLoader eintragen:
|
||||
derTenant = PluginLoader.Tenant;
|
||||
|
||||
|
||||
var customerDllPath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, @"bin\" + derTenant + "_reports.dll");
|
||||
#else
|
||||
var customerDllPath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, @"Customer\" + derTenant + "_reports.dll");
|
||||
#endif
|
||||
if (File.Exists(customerDllPath))
|
||||
{
|
||||
var allTypes = Assembly.LoadFrom(customerDllPath).GetTypes();
|
||||
|
||||
var reportCreator = allTypes.FirstOrDefault(i => typeof(AbstractReportCreator).IsAssignableFrom(i));
|
||||
if (reportCreator != null)
|
||||
{
|
||||
creator = Activator.CreateInstance(reportCreator) as AbstractReportCreator;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
if (creator == null)
|
||||
creator = new DefaultReportCreator();
|
||||
|
||||
creator.Tenant = derTenant;
|
||||
creator.ReportPath = customerDllPath;
|
||||
AbstractReportCreator creator = PluginLoader.FindClass<DefaultReportCreator>();
|
||||
|
||||
#if DEBUG
|
||||
creator.TempPath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, @"demo\temp");
|
||||
#else
|
||||
|
||||
creator.TempPath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, derTenant + @"\temp");
|
||||
creator.TempPath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, PluginLoader.Tenant + @"\temp");
|
||||
#endif
|
||||
|
||||
return creator;
|
||||
}
|
||||
|
||||
private static AbstractReportCreator GetReportCreator(string tenant)
|
||||
{
|
||||
AbstractReportCreator creator = null;
|
||||
#if DEBUG
|
||||
//Kundennummern zum Testen nur noch in PluginLoader eintragen:
|
||||
tenant = PluginLoader.Tenant;
|
||||
|
||||
// Ist "C:\Users\lyndo\BeWo\BeWoPlanerMobil\bin\2387527289_reports.dll"
|
||||
// statt "C:\Users\lyndo\BeWo\Host\bin\2387527289_reports.dll"
|
||||
|
||||
var path = @"..\Host\";
|
||||
|
||||
var customerDllPath = Path.Combine(path, @"bin\" + tenant + "_reports.dll");// Path.Combine(AppDomain.CurrentDomain.BaseDirectory, @"bin\" + tenant + "_reports.dll");
|
||||
#else
|
||||
var customerDllPath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, @"Customer\" + tenant + "_reports.dll");
|
||||
#endif
|
||||
if (File.Exists(customerDllPath))
|
||||
{
|
||||
var allTypes = Assembly.LoadFrom(customerDllPath).GetTypes();
|
||||
|
||||
var reportCreator = allTypes.FirstOrDefault(i => typeof(AbstractReportCreator).IsAssignableFrom(i));
|
||||
if (reportCreator != null)
|
||||
{
|
||||
creator = Activator.CreateInstance(reportCreator) as AbstractReportCreator;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
if (creator == null)
|
||||
{
|
||||
creator = new DefaultReportCreator();
|
||||
}
|
||||
|
||||
creator.Tenant = tenant;
|
||||
creator.ReportPath = customerDllPath;
|
||||
|
||||
#if DEBUG
|
||||
creator.TempPath = Path.Combine(path, @"demo\temp");
|
||||
#else
|
||||
|
||||
creator.TempPath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, tenant + @"\temp");
|
||||
#endif
|
||||
|
||||
return creator;
|
||||
}
|
||||
|
||||
private static BeWoEntityBase LoadToBargeldkasseRelatedObject(TableID pObjectTid, long pObjectOid)
|
||||
{
|
||||
switch (pObjectTid)
|
||||
@@ -316,7 +243,7 @@ namespace ReportingService.ServiceImplementations
|
||||
// Zum Test im MoK
|
||||
public MemoryStream CreateKilometerauswertungForAllCustomersForWebVersion(List<long> customerOids, DateTime rangeDate, string tenant)
|
||||
{
|
||||
var reportCreator = GetReportCreator(tenant);
|
||||
var reportCreator = GetReportCreator();
|
||||
|
||||
var report = reportCreator.CreateKilometerauswertungForAllCustomers(customerOids, null, new DateTime(rangeDate.Year, rangeDate.Month, 1), new DateTime(rangeDate.Year, rangeDate.Month, 1).AddMonths(1).AddDays(-1));
|
||||
|
||||
@@ -325,7 +252,7 @@ namespace ReportingService.ServiceImplementations
|
||||
|
||||
public MemoryStream CreateMedikamentenlistenReport(long mvlOid, string tenant)
|
||||
{
|
||||
var reportCreator = GetReportCreator(tenant);
|
||||
var reportCreator = GetReportCreator();
|
||||
|
||||
var report = reportCreator.CreateMediVerordListenReport(mvlOid);
|
||||
|
||||
|
||||
@@ -26,78 +26,6 @@ namespace BeWo.Service.Core
|
||||
return true;
|
||||
}
|
||||
|
||||
//public static ICostBearerCalc GetCalcualtionsObjectForCostBearer(long pCostBearerOid)
|
||||
//{
|
||||
// var cb = DAOFactory.GenericDAO.LoadByID<CostBearer>(pCostBearerOid);
|
||||
|
||||
// if (!string.IsNullOrEmpty(cb.CalculationsDllName))
|
||||
// {
|
||||
// Type[] calcTypes = new Type[0];
|
||||
|
||||
// string customReportDllPath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, @"bin\" + cb.CalculationsDllName);
|
||||
// if (File.Exists(customReportDllPath))
|
||||
// {
|
||||
// calcTypes = Assembly.LoadFrom(customReportDllPath).GetTypes();
|
||||
|
||||
// foreach (var iType in calcTypes)
|
||||
// {
|
||||
// if (typeof(ICostBearerCalc).IsAssignableFrom(iType))
|
||||
// {
|
||||
// return Activator.CreateInstance(iType) as ICostBearerCalc;
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
|
||||
// return new InvoiceCreation();
|
||||
//}
|
||||
|
||||
//public static List<CostRate> GetCostRateListForCostBearer(CostBearer costBearer)
|
||||
//{
|
||||
// List<CostRate> list = new List<CostRate>();
|
||||
|
||||
// if (costBearer != null && costBearer.CostRatePeriods != null)
|
||||
// {
|
||||
// foreach (CostRatePeriod crp in costBearer.CostRatePeriods)
|
||||
// {
|
||||
// CostRate cr = new CostRate();
|
||||
// cr.Amount = crp.CostRateValue;
|
||||
// switch (crp.CostRateType)
|
||||
// {
|
||||
// case CostRatePeriodType.HourlyRate:
|
||||
// cr.CostRateType = CostRateType.HourlyRate;
|
||||
// break;
|
||||
// case CostRatePeriodType.MinutesIntervall:
|
||||
// cr.CostRateType = CostRateType.MinutesIntervall;
|
||||
// break;
|
||||
// case CostRatePeriodType.RateFactor:
|
||||
// cr.CostRateType = CostRateType.RateFactor;
|
||||
// break;
|
||||
// }
|
||||
|
||||
// cr.StartDate = crp.StartDate;
|
||||
// cr.EndDate = crp.EndDate;
|
||||
|
||||
// list.Add(cr);
|
||||
// }
|
||||
// }
|
||||
|
||||
// return list;
|
||||
//}
|
||||
|
||||
|
||||
//public static string GetNextInvoiceNumber(int increment, InvoiceBase invoiceBase)
|
||||
//{
|
||||
// string next = String.Empty;
|
||||
// InvoiceNumberDC invoiceNumber = new AccountingServiceImp().LoadInvoiceNumber();
|
||||
|
||||
// if (invoiceNumber != null && invoiceNumber.Use)
|
||||
// {
|
||||
// next = ApplyPattern(invoiceNumber.Pattern, invoiceNumber.CurrentNumber + increment, invoiceBase);
|
||||
// }
|
||||
// return next;
|
||||
//}
|
||||
|
||||
|
||||
public static void SetActivationType<T>(Dictionary<long, long> pOid2Version, ActivationTypeId activationType)
|
||||
where T : BeWoEntityBase, new()
|
||||
|
||||
@@ -483,6 +483,9 @@ namespace BeWo.Service.Plugins
|
||||
dc.SupportConceptOid = pEntity.Oid.Value;
|
||||
dc.SupportConceptVersion = pEntity.Version.Value;
|
||||
|
||||
dc.NearlyExpiredBrush = GetBrushForNearlyExpiredSupportConcept();
|
||||
dc.ExpiredBrush = GetBrushForExpiredSupportConcept();
|
||||
|
||||
Customer cust = pEntity.Customer;
|
||||
|
||||
var customerDC = new CompactCustomerDC();
|
||||
@@ -560,6 +563,15 @@ namespace BeWo.Service.Plugins
|
||||
return dc;
|
||||
}
|
||||
|
||||
protected virtual string GetBrushForNearlyExpiredSupportConcept()
|
||||
{
|
||||
return System.Windows.Media.Brushes.Yellow.ToString();
|
||||
}
|
||||
protected virtual string GetBrushForExpiredSupportConcept()
|
||||
{
|
||||
return System.Windows.Media.Brushes.Red.ToString();
|
||||
}
|
||||
|
||||
private Dictionary<long, long> CreateTeamOidDict(long employeeOid)
|
||||
{
|
||||
var teamOids = new Dictionary<long, long>();
|
||||
@@ -712,6 +724,8 @@ namespace BeWo.Service.Plugins
|
||||
dc.ConferenceDate = sc.ConferenceDate;
|
||||
dc.IsApproved = cb2sc.Status == CostBearer2SupportConceptStatus.Approved;
|
||||
|
||||
dc.NearlyExpiredBrush = GetBrushForNearlyExpiredSupportConcept();
|
||||
dc.ExpiredBrush = GetBrushForExpiredSupportConcept();
|
||||
|
||||
var costBearer = new CompactCostBearerDC();
|
||||
|
||||
|
||||
@@ -3,6 +3,7 @@ using System.Configuration;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using System.Reflection;
|
||||
using System.Threading;
|
||||
using BeWo.Data;
|
||||
using BS.Shared.Core;
|
||||
|
||||
@@ -10,7 +11,9 @@ namespace BeWo.Service.Plugins
|
||||
{
|
||||
public class PluginLoader
|
||||
{
|
||||
public static String Tenant
|
||||
private static object _Lock = string.Empty;
|
||||
|
||||
public static String Tenant
|
||||
{
|
||||
get
|
||||
{
|
||||
@@ -372,34 +375,112 @@ namespace BeWo.Service.Plugins
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
public static String CustomerPluginPath()
|
||||
{
|
||||
var pluginPath = ConfigurationManager.AppSettings.Get("PluginPath");
|
||||
|
||||
#if DEBUG
|
||||
if(!(pluginPath is null))
|
||||
{
|
||||
var alt = Path.Combine(pluginPath, Tenant + "_Reports.dll");
|
||||
|
||||
pluginPath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, alt);
|
||||
|
||||
return pluginPath;
|
||||
}
|
||||
#endif
|
||||
var pluginPath = ConfigurationManager.AppSettings.Get("PluginPath");
|
||||
|
||||
if (pluginPath != null)
|
||||
{
|
||||
return Path.Combine(pluginPath, Tenant + "_Reports.dll");
|
||||
var dllName = Tenant + "_Reports.dll";
|
||||
|
||||
if (!String.IsNullOrEmpty(pluginPath))
|
||||
{
|
||||
if (pluginPath.StartsWith(".."))
|
||||
{
|
||||
pluginPath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, pluginPath);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
#if DEBUG
|
||||
return Path.Combine(AppDomain.CurrentDomain.BaseDirectory, @"bin\" + Tenant + "_Reports.dll");
|
||||
pluginPath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "bin");
|
||||
#else
|
||||
return Path.Combine(AppDomain.CurrentDomain.BaseDirectory, @"Customer\" + Tenant + "_Reports.dll");
|
||||
pluginPath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "Customer");
|
||||
#endif
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
public static T FindClass<T>() where T : new()
|
||||
return Path.Combine(pluginPath, dllName);
|
||||
}
|
||||
|
||||
private static void CheckAndUpdateCustomerAssembly()
|
||||
{
|
||||
|
||||
var customerdll = CustomerPluginPath();
|
||||
var dllName = Path.GetFileName(customerdll);
|
||||
var pluginBasePath = ConfigurationManager.AppSettings.Get("PluginBasePath");
|
||||
if (!String.IsNullOrEmpty(pluginBasePath))
|
||||
{
|
||||
if (pluginBasePath.StartsWith(".."))
|
||||
{
|
||||
pluginBasePath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, pluginBasePath);
|
||||
}
|
||||
}
|
||||
bool aktualisiereAssembly = false;
|
||||
|
||||
if (!String.IsNullOrEmpty(pluginBasePath))
|
||||
{
|
||||
//Prüfe, ob eine neuere Version der dll im Base Path existiert
|
||||
var baseDll = Path.Combine(pluginBasePath, dllName);
|
||||
|
||||
try
|
||||
{
|
||||
if (File.Exists(baseDll))
|
||||
{
|
||||
if (!File.Exists(customerdll))
|
||||
{
|
||||
aktualisiereAssembly = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
if (File.GetLastWriteTime(baseDll) > File.GetLastWriteTime(customerdll))
|
||||
{
|
||||
aktualisiereAssembly = true;
|
||||
}
|
||||
else if (File.GetLastWriteTime(baseDll) == File.GetLastWriteTime(customerdll))
|
||||
{
|
||||
var fibase = new FileInfo(baseDll);
|
||||
var fiwork = new FileInfo(customerdll);
|
||||
if (fibase.Length != fiwork.Length)
|
||||
{
|
||||
aktualisiereAssembly = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (aktualisiereAssembly)
|
||||
{
|
||||
try
|
||||
{
|
||||
Monitor.Enter(_Lock);
|
||||
|
||||
File.Copy(baseDll, customerdll, true);
|
||||
}
|
||||
catch
|
||||
{
|
||||
|
||||
}
|
||||
finally
|
||||
{
|
||||
Monitor.Exit(_Lock);
|
||||
}
|
||||
}
|
||||
|
||||
if (aktualisiereAssembly || GetAssembliyForDll(dllName) == null)
|
||||
{
|
||||
Assembly.Load(File.ReadAllBytes(customerdll));
|
||||
}
|
||||
}
|
||||
}
|
||||
catch
|
||||
{
|
||||
//do nothing
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public static T FindClass<T>() where T : new()
|
||||
{
|
||||
var t = FindClass<T>(null, null);
|
||||
if (t == null)
|
||||
@@ -422,9 +503,8 @@ namespace BeWo.Service.Plugins
|
||||
|
||||
if (Tenant != null)
|
||||
{
|
||||
if (File.Exists(CustomerPluginPath()))
|
||||
lAllTypes = Assembly.LoadFrom(CustomerPluginPath()).GetTypes();
|
||||
}
|
||||
lAllTypes = PluginLoader.GetAllCustomerTypes();
|
||||
}
|
||||
|
||||
T result = default(T);
|
||||
if (lAllTypes != null)
|
||||
@@ -433,7 +513,40 @@ namespace BeWo.Service.Plugins
|
||||
return result;
|
||||
}
|
||||
|
||||
public static T FindClass<T>(Type[] lAllTypes, string specificId, string typename)
|
||||
public static Type[] GetAllCustomerTypes()
|
||||
{
|
||||
var path = CustomerPluginPath();
|
||||
var dllName = Path.GetFileName(path);
|
||||
CheckAndUpdateCustomerAssembly();
|
||||
|
||||
var a = GetAssembliyForDll(dllName);
|
||||
|
||||
if (a != null)
|
||||
{
|
||||
return a.GetTypes();
|
||||
}
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
private static Assembly GetAssembliyForDll(String dllName)
|
||||
{
|
||||
var assemblies = AppDomain.CurrentDomain.GetAssemblies();
|
||||
|
||||
for (int i = assemblies.Length - 1; i >= 0; i--)
|
||||
{
|
||||
var a = assemblies[i];
|
||||
|
||||
if (a.FullName.StartsWith(dllName.Replace(".dll", "")))
|
||||
{
|
||||
return a;
|
||||
}
|
||||
}
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
public static T FindClass<T>(Type[] lAllTypes, string specificId, string typename)
|
||||
{
|
||||
T result = default(T);
|
||||
|
||||
|
||||
@@ -15,6 +15,149 @@ namespace BeWo.Service.Reporting
|
||||
public class ExportAndPrintHelper
|
||||
{
|
||||
// Hier ist der Code, der die StringArrays für den Excel-Export und die Print-Versionen des Exports erstellt
|
||||
public virtual string[] PrepareHeaderArrayForCustomerExport()
|
||||
{
|
||||
string[] lHeaderCaption = {
|
||||
"Nachname", // 0
|
||||
"Vorname", // 1
|
||||
"Geburtsdatum", // 3
|
||||
"Beruf", // 4
|
||||
"Geschlecht", // 5
|
||||
"Familienstand", // 6
|
||||
"Telefon", // 7
|
||||
"Mobil", // 8
|
||||
"Mail", // 9
|
||||
"Fax", // 10
|
||||
"Strasse", // 11
|
||||
"PLZ", // 12
|
||||
"Ort", // 13
|
||||
"Bemerkung", // 14
|
||||
"Erstbetreuung", // 15
|
||||
"Betreuung begonnen", // 16
|
||||
"Betreuung beendet", // 17
|
||||
"Grund für Beendigung" // 18
|
||||
};
|
||||
|
||||
return lHeaderCaption;
|
||||
}
|
||||
|
||||
public virtual string[][] PrepareContentArrayForCustomerExport(long[] pSortedOids)
|
||||
{
|
||||
var lCustomers = DAOFactory.GenericDAO.LoadByIDs<Customer>(pSortedOids);
|
||||
|
||||
var lHeaderCaption = PrepareHeaderArrayForCustomerExport();
|
||||
|
||||
var lContent = new string[lCustomers.Count][];
|
||||
|
||||
for (int iRowCount = 0; iRowCount < lCustomers.Count; iRowCount++)
|
||||
{
|
||||
lContent[iRowCount] = new string[lHeaderCaption.Count()];
|
||||
|
||||
lContent[iRowCount][0] = lCustomers[iRowCount].Person.LastName;
|
||||
lContent[iRowCount][1] = lCustomers[iRowCount].Person.FirstName;
|
||||
//lContent[iRowCount][2] = lCustomers[iRowCount].ReferenceNumber;
|
||||
|
||||
if (lCustomers[iRowCount].Person.DateOfBirth.HasValue)
|
||||
{
|
||||
lContent[iRowCount][2] = lCustomers[iRowCount].Person.DateOfBirth.Value.ToShortDateString();
|
||||
}
|
||||
|
||||
lContent[iRowCount][3] = lCustomers[iRowCount].Person.Profession;
|
||||
|
||||
lContent[iRowCount][4] = lCustomers[iRowCount].Person.Sex == Sex.Male
|
||||
? "männlich"
|
||||
: "weiblich";
|
||||
|
||||
if (lCustomers[iRowCount].Person.FamilyStatus != null)
|
||||
{
|
||||
switch (lCustomers[iRowCount].Person.FamilyStatus.Value)
|
||||
{
|
||||
case FamilyStatus.Divorced:
|
||||
lContent[iRowCount][5] = "geschieden";
|
||||
break;
|
||||
case FamilyStatus.Married:
|
||||
lContent[iRowCount][5] = "verheiratet";
|
||||
break;
|
||||
case FamilyStatus.Single:
|
||||
lContent[iRowCount][5] = "ledig";
|
||||
break;
|
||||
case FamilyStatus.Widowed:
|
||||
lContent[iRowCount][5] = "verwitwet";
|
||||
break;
|
||||
case FamilyStatus.Partner:
|
||||
lContent[iRowCount][5] = "in Partnerschaft";
|
||||
break;
|
||||
case FamilyStatus.PartnerDivorced:
|
||||
lContent[iRowCount][5] = "getrennt lebend";
|
||||
break;
|
||||
case FamilyStatus.PartnerDead:
|
||||
lContent[iRowCount][5] = "partnerhinterblieben";
|
||||
break;
|
||||
case FamilyStatus.PartnerMarried:
|
||||
lContent[iRowCount][5] = "verpartnert";
|
||||
break;
|
||||
case FamilyStatus.Entpartnert:
|
||||
lContent[iRowCount][5] = "entpartnert";
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
foreach (var iContact in lCustomers[iRowCount].Person.Contacts)
|
||||
{
|
||||
switch (iContact.Type)
|
||||
{
|
||||
case ContactType.business_Phone:
|
||||
lContent[iRowCount][6] = iContact.Value;
|
||||
break;
|
||||
case ContactType.business_MobilePhone:
|
||||
lContent[iRowCount][7] = iContact.Value;
|
||||
break;
|
||||
case ContactType.business_Mail:
|
||||
lContent[iRowCount][8] = iContact.Value;
|
||||
break;
|
||||
case ContactType.business_Fax:
|
||||
lContent[iRowCount][9] = iContact.Value;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if (lCustomers[iRowCount].Person.Address != null)
|
||||
{
|
||||
lContent[iRowCount][10] = lCustomers[iRowCount].Person.Address.Street;
|
||||
lContent[iRowCount][11] = lCustomers[iRowCount].Person.Address.PostalCode;
|
||||
lContent[iRowCount][12] = lCustomers[iRowCount].Person.Address.Town;
|
||||
}
|
||||
|
||||
lContent[iRowCount][13] = lCustomers[iRowCount].Notice;
|
||||
|
||||
if (lCustomers[iRowCount].Employee2CustomerList == null)
|
||||
continue;
|
||||
|
||||
foreach (var e2c in lCustomers[iRowCount].Employee2CustomerList)
|
||||
{
|
||||
foreach (var vle in e2c.ValueList.Select(vle2o => vle2o.Entry).Where(vle => vle.SystemEntryID != null && vle.SystemEntryID.Value == SystemEntryID.EmployeeRoleMainAttendant))
|
||||
{
|
||||
lHeaderCaption[14] = vle.Value;
|
||||
lContent[iRowCount][14] = e2c.Employee.Person.FirstName + " " + e2c.Employee.Person.LastName;
|
||||
}
|
||||
}
|
||||
|
||||
lContent[iRowCount][15] = String.Format("{0:dd.MM.yyyy}", lCustomers[iRowCount].AssistanceBegin);
|
||||
lContent[iRowCount][16] = String.Format("{0:dd.MM.yyyy}", lCustomers[iRowCount].TerminationDate);
|
||||
|
||||
if (lCustomers[iRowCount].TerminationReason != null)
|
||||
{
|
||||
lContent[iRowCount][17] = lCustomers[iRowCount].TerminationReason.Value;
|
||||
}
|
||||
else
|
||||
{
|
||||
lContent[iRowCount][17] = "";
|
||||
}
|
||||
}
|
||||
|
||||
return lContent;
|
||||
}
|
||||
|
||||
public virtual string[] PrepareHeaderArrayForPersonExport()
|
||||
{
|
||||
return new string[] {
|
||||
|
||||
@@ -51,137 +51,142 @@ namespace BeWo.Service.ServiceImplementations
|
||||
{
|
||||
try
|
||||
{
|
||||
var lCustomers = DAOFactory.GenericDAO.LoadByIDs<Customer>(pSortedOids);
|
||||
#region alt
|
||||
// var lCustomers = DAOFactory.GenericDAO.LoadByIDs<Customer>(pSortedOids);
|
||||
|
||||
string[] lHeaderCaption = {
|
||||
"Nachname", // 0
|
||||
"Vorname", // 1
|
||||
"Geburtsdatum", // 3
|
||||
"Beruf", // 4
|
||||
"Geschlecht", // 5
|
||||
"Familienstand", // 6
|
||||
"Telefon", // 7
|
||||
"Mobil", // 8
|
||||
"Mail", // 9
|
||||
"Fax", // 10
|
||||
"Strasse", // 11
|
||||
"PLZ", // 12
|
||||
"Ort", // 13
|
||||
"Bemerkung", // 14
|
||||
"Erstbetreuung", // 15
|
||||
"Betreuung begonnen", // 16
|
||||
"Betreuung beendet", // 17
|
||||
"Grund für Beendigung" // 18
|
||||
};
|
||||
var lContent = new string[lCustomers.Count][];
|
||||
// string[] lHeaderCaption = {
|
||||
// "Nachname", // 0
|
||||
// "Vorname", // 1
|
||||
// "Geburtsdatum", // 3
|
||||
// "Beruf", // 4
|
||||
// "Geschlecht", // 5
|
||||
// "Familienstand", // 6
|
||||
// "Telefon", // 7
|
||||
// "Mobil", // 8
|
||||
// "Mail", // 9
|
||||
// "Fax", // 10
|
||||
// "Strasse", // 11
|
||||
// "PLZ", // 12
|
||||
// "Ort", // 13
|
||||
// "Bemerkung", // 14
|
||||
// "Erstbetreuung", // 15
|
||||
// "Betreuung begonnen", // 16
|
||||
// "Betreuung beendet", // 17
|
||||
// "Grund für Beendigung" // 18
|
||||
// };
|
||||
// var lContent = new string[lCustomers.Count][];
|
||||
|
||||
for (int iRowCount = 0; iRowCount < lCustomers.Count; iRowCount++)
|
||||
{
|
||||
lContent[iRowCount] = new string[lHeaderCaption.Count()];
|
||||
// for (int iRowCount = 0; iRowCount < lCustomers.Count; iRowCount++)
|
||||
// {
|
||||
// lContent[iRowCount] = new string[lHeaderCaption.Count()];
|
||||
|
||||
lContent[iRowCount][0] = lCustomers[iRowCount].Person.LastName;
|
||||
lContent[iRowCount][1] = lCustomers[iRowCount].Person.FirstName;
|
||||
//lContent[iRowCount][2] = lCustomers[iRowCount].ReferenceNumber;
|
||||
// lContent[iRowCount][0] = lCustomers[iRowCount].Person.LastName;
|
||||
// lContent[iRowCount][1] = lCustomers[iRowCount].Person.FirstName;
|
||||
// //lContent[iRowCount][2] = lCustomers[iRowCount].ReferenceNumber;
|
||||
|
||||
if (lCustomers[iRowCount].Person.DateOfBirth.HasValue)
|
||||
{
|
||||
lContent[iRowCount][2] = lCustomers[iRowCount].Person.DateOfBirth.Value.ToShortDateString();
|
||||
}
|
||||
// if (lCustomers[iRowCount].Person.DateOfBirth.HasValue)
|
||||
// {
|
||||
// lContent[iRowCount][2] = lCustomers[iRowCount].Person.DateOfBirth.Value.ToShortDateString();
|
||||
// }
|
||||
|
||||
lContent[iRowCount][3] = lCustomers[iRowCount].Person.Profession;
|
||||
// lContent[iRowCount][3] = lCustomers[iRowCount].Person.Profession;
|
||||
|
||||
lContent[iRowCount][4] = lCustomers[iRowCount].Person.Sex == Sex.Male
|
||||
? "männlich"
|
||||
: "weiblich";
|
||||
// lContent[iRowCount][4] = lCustomers[iRowCount].Person.Sex == Sex.Male
|
||||
// ? "männlich"
|
||||
// : "weiblich";
|
||||
|
||||
if (lCustomers[iRowCount].Person.FamilyStatus != null)
|
||||
{
|
||||
switch (lCustomers[iRowCount].Person.FamilyStatus.Value)
|
||||
{
|
||||
case FamilyStatus.Divorced:
|
||||
lContent[iRowCount][5] = "geschieden";
|
||||
break;
|
||||
case FamilyStatus.Married:
|
||||
lContent[iRowCount][5] = "verheiratet";
|
||||
break;
|
||||
case FamilyStatus.Single:
|
||||
lContent[iRowCount][5] = "ledig";
|
||||
break;
|
||||
case FamilyStatus.Widowed:
|
||||
lContent[iRowCount][5] = "verwitwet";
|
||||
break;
|
||||
case FamilyStatus.Partner:
|
||||
lContent[iRowCount][5] = "in Partnerschaft";
|
||||
break;
|
||||
case FamilyStatus.PartnerDivorced:
|
||||
lContent[iRowCount][5] = "getrennt lebend";
|
||||
break;
|
||||
case FamilyStatus.PartnerDead:
|
||||
lContent[iRowCount][5] = "partnerhinterblieben";
|
||||
break;
|
||||
case FamilyStatus.PartnerMarried:
|
||||
lContent[iRowCount][5] = "verpartnert";
|
||||
break;
|
||||
case FamilyStatus.Entpartnert:
|
||||
lContent[iRowCount][5] = "entpartnert";
|
||||
break;
|
||||
}
|
||||
}
|
||||
// if (lCustomers[iRowCount].Person.FamilyStatus != null)
|
||||
// {
|
||||
// switch (lCustomers[iRowCount].Person.FamilyStatus.Value)
|
||||
// {
|
||||
// case FamilyStatus.Divorced:
|
||||
// lContent[iRowCount][5] = "geschieden";
|
||||
// break;
|
||||
// case FamilyStatus.Married:
|
||||
// lContent[iRowCount][5] = "verheiratet";
|
||||
// break;
|
||||
// case FamilyStatus.Single:
|
||||
// lContent[iRowCount][5] = "ledig";
|
||||
// break;
|
||||
// case FamilyStatus.Widowed:
|
||||
// lContent[iRowCount][5] = "verwitwet";
|
||||
// break;
|
||||
// case FamilyStatus.Partner:
|
||||
// lContent[iRowCount][5] = "in Partnerschaft";
|
||||
// break;
|
||||
// case FamilyStatus.PartnerDivorced:
|
||||
// lContent[iRowCount][5] = "getrennt lebend";
|
||||
// break;
|
||||
// case FamilyStatus.PartnerDead:
|
||||
// lContent[iRowCount][5] = "partnerhinterblieben";
|
||||
// break;
|
||||
//case FamilyStatus.PartnerMarried:
|
||||
// lContent[iRowCount][5] = "verpartnert";
|
||||
// break;
|
||||
//case FamilyStatus.Entpartnert:
|
||||
// lContent[iRowCount][5] = "entpartnert";
|
||||
// break;
|
||||
// }
|
||||
// }
|
||||
|
||||
foreach (var iContact in lCustomers[iRowCount].Person.Contacts)
|
||||
{
|
||||
switch (iContact.Type)
|
||||
{
|
||||
case ContactType.business_Phone:
|
||||
lContent[iRowCount][6] = iContact.Value;
|
||||
break;
|
||||
case ContactType.business_MobilePhone:
|
||||
lContent[iRowCount][7] = iContact.Value;
|
||||
break;
|
||||
case ContactType.business_Mail:
|
||||
lContent[iRowCount][8] = iContact.Value;
|
||||
break;
|
||||
case ContactType.business_Fax:
|
||||
lContent[iRowCount][9] = iContact.Value;
|
||||
break;
|
||||
}
|
||||
}
|
||||
// foreach (var iContact in lCustomers[iRowCount].Person.Contacts)
|
||||
// {
|
||||
// switch (iContact.Type)
|
||||
// {
|
||||
// case ContactType.business_Phone:
|
||||
// lContent[iRowCount][6] = iContact.Value;
|
||||
// break;
|
||||
// case ContactType.business_MobilePhone:
|
||||
// lContent[iRowCount][7] = iContact.Value;
|
||||
// break;
|
||||
// case ContactType.business_Mail:
|
||||
// lContent[iRowCount][8] = iContact.Value;
|
||||
// break;
|
||||
// case ContactType.business_Fax:
|
||||
// lContent[iRowCount][9] = iContact.Value;
|
||||
// break;
|
||||
// }
|
||||
// }
|
||||
|
||||
if (lCustomers[iRowCount].Person.Address != null)
|
||||
{
|
||||
lContent[iRowCount][10] = lCustomers[iRowCount].Person.Address.Street;
|
||||
lContent[iRowCount][11] = lCustomers[iRowCount].Person.Address.PostalCode;
|
||||
lContent[iRowCount][12] = lCustomers[iRowCount].Person.Address.Town;
|
||||
}
|
||||
// if (lCustomers[iRowCount].Person.Address != null)
|
||||
// {
|
||||
// lContent[iRowCount][10] = lCustomers[iRowCount].Person.Address.Street;
|
||||
// lContent[iRowCount][11] = lCustomers[iRowCount].Person.Address.PostalCode;
|
||||
// lContent[iRowCount][12] = lCustomers[iRowCount].Person.Address.Town;
|
||||
// }
|
||||
|
||||
lContent[iRowCount][13] = lCustomers[iRowCount].Notice;
|
||||
// lContent[iRowCount][13] = lCustomers[iRowCount].Notice;
|
||||
|
||||
if (lCustomers[iRowCount].Employee2CustomerList == null)
|
||||
continue;
|
||||
// if (lCustomers[iRowCount].Employee2CustomerList == null)
|
||||
// continue;
|
||||
|
||||
foreach (var e2c in lCustomers[iRowCount].Employee2CustomerList)
|
||||
{
|
||||
foreach (var vle in e2c.ValueList.Select(vle2o => vle2o.Entry).Where(vle => vle.SystemEntryID != null && vle.SystemEntryID.Value == SystemEntryID.EmployeeRoleMainAttendant))
|
||||
{
|
||||
lHeaderCaption[14] = vle.Value;
|
||||
lContent[iRowCount][14] = e2c.Employee.Person.FirstName + " " + e2c.Employee.Person.LastName;
|
||||
}
|
||||
}
|
||||
// foreach (var e2c in lCustomers[iRowCount].Employee2CustomerList)
|
||||
// {
|
||||
// foreach (var vle in e2c.ValueList.Select(vle2o => vle2o.Entry).Where(vle => vle.SystemEntryID != null && vle.SystemEntryID.Value == SystemEntryID.EmployeeRoleMainAttendant))
|
||||
// {
|
||||
// lHeaderCaption[14] = vle.Value;
|
||||
// lContent[iRowCount][14] = e2c.Employee.Person.FirstName + " " + e2c.Employee.Person.LastName;
|
||||
// }
|
||||
// }
|
||||
|
||||
lContent[iRowCount][15] = String.Format("{0:dd.MM.yyyy}", lCustomers[iRowCount].AssistanceBegin);
|
||||
lContent[iRowCount][16] = String.Format("{0:dd.MM.yyyy}", lCustomers[iRowCount].TerminationDate);
|
||||
|
||||
if (lCustomers[iRowCount].TerminationReason != null)
|
||||
{
|
||||
lContent[iRowCount][17] = lCustomers[iRowCount].TerminationReason.Value;
|
||||
}
|
||||
else
|
||||
{
|
||||
lContent[iRowCount][17] = "";
|
||||
}
|
||||
}
|
||||
// lContent[iRowCount][15] = String.Format("{0:dd.MM.yyyy}", lCustomers[iRowCount].AssistanceBegin);
|
||||
// lContent[iRowCount][16] = String.Format("{0:dd.MM.yyyy}", lCustomers[iRowCount].TerminationDate);
|
||||
|
||||
// if (lCustomers[iRowCount].TerminationReason != null)
|
||||
// {
|
||||
// lContent[iRowCount][17] = lCustomers[iRowCount].TerminationReason.Value;
|
||||
// }
|
||||
// else
|
||||
// {
|
||||
// lContent[iRowCount][17] = "";
|
||||
// }
|
||||
// }
|
||||
#endregion
|
||||
//WriteExcelFile(pFileID, lHeaderCaption, lContent, pPath);
|
||||
var helper = PluginLoader.FindClass<ExportAndPrintHelper>();
|
||||
var lHeaderCaption = helper.PrepareHeaderArrayForCustomerExport();
|
||||
var lContent = helper.PrepareContentArrayForCustomerExport(pSortedOids);
|
||||
|
||||
return WriteHtmlFile(lHeaderCaption, lContent);
|
||||
}
|
||||
catch (Exception e)
|
||||
@@ -612,7 +617,7 @@ namespace BeWo.Service.ServiceImplementations
|
||||
{
|
||||
string lPath = BS.Shared.Core.Utils.CreateSavePath(AppDomain.CurrentDomain.BaseDirectory, pFileID + ".tmp");
|
||||
|
||||
var helper = new ExportAndPrintHelper();
|
||||
var helper = PluginLoader.FindClass<ExportAndPrintHelper>();
|
||||
var lHeaderCaption = helper.PrepareHeaderArrayForPersonExport();
|
||||
var lContent = helper.PrepareContentArrayForPersonExport(pSortedOids);
|
||||
|
||||
@@ -796,7 +801,7 @@ namespace BeWo.Service.ServiceImplementations
|
||||
//}
|
||||
#endregion
|
||||
|
||||
var helper = new ExportAndPrintHelper();
|
||||
var helper = PluginLoader.FindClass<ExportAndPrintHelper>();
|
||||
var lHeaderCaption = helper.PrepareHeaderArrayForUserExport();
|
||||
var lContent = helper.PrepareContentArrayForUserExport(pSortedOids);
|
||||
|
||||
@@ -813,7 +818,7 @@ namespace BeWo.Service.ServiceImplementations
|
||||
try
|
||||
{
|
||||
|
||||
var helper = new ExportAndPrintHelper();
|
||||
var helper = PluginLoader.FindClass<ExportAndPrintHelper>();
|
||||
var lHeaderCaption = helper.PrepareHeaderArrayForUserGroupExport();
|
||||
var lContent = helper.PrepareContentArrayForUserGroupExport(pSortedOids);
|
||||
|
||||
|
||||
@@ -199,11 +199,13 @@ namespace BS.Shared.DataContracts.Compact
|
||||
{
|
||||
if (this.IsAboutToExpire)
|
||||
{
|
||||
return Brushes.Red;
|
||||
Color color = (Color)ColorConverter.ConvertFromString(this.ExpiredBrush);
|
||||
return new SolidColorBrush(color);
|
||||
}
|
||||
else if (this.ExpiresIn3MonthOrLess)
|
||||
{
|
||||
return Brushes.Yellow;
|
||||
Color color = (Color)ColorConverter.ConvertFromString(this.NearlyExpiredBrush);
|
||||
return new SolidColorBrush(color);
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
@@ -70,5 +70,11 @@ namespace BS.Shared.DataContracts.Compact
|
||||
|
||||
[DataMember]
|
||||
public long SupportConceptVersion { get; set; }
|
||||
|
||||
[DataMember]
|
||||
public string NearlyExpiredBrush { get; set; }
|
||||
[DataMember]
|
||||
public string ExpiredBrush { get; set; }
|
||||
|
||||
}
|
||||
}
|
||||
@@ -189,8 +189,11 @@ namespace BS.Shared.Services
|
||||
ratefactor = (100 + factor.Value) / 100;
|
||||
}
|
||||
|
||||
|
||||
return (this.GetApprovedAmountTotal(relDC) / this.GetMonthCount(relDC.ApprovedStartDate.Value, relDC.ApprovedEndDate.Value)) / ratefactor;
|
||||
var monate = this.GetMonthCount(relDC.ApprovedStartDate.Value, relDC.ApprovedEndDate.Value);
|
||||
if (monate != 0)
|
||||
{
|
||||
return (this.GetApprovedAmountTotal(relDC) / monate) / ratefactor;
|
||||
}
|
||||
}
|
||||
}
|
||||
return 0;
|
||||
|
||||
Reference in New Issue
Block a user