BEWO Pyramide GmbH hinzugefügt (Kopie von HSH Cologne)

This commit is contained in:
2024-01-26 14:54:36 +01:00
parent 005ce070a9
commit 547da2cb62
15 changed files with 4926 additions and 0 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 38 KiB

View File

@@ -0,0 +1,103 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProjectGuid>{48A31F24-D848-4B63-8751-90AD6C15236F}</ProjectGuid>
<OutputType>Library</OutputType>
<AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>BeWoPyramide</RootNamespace>
<AssemblyName>2804185856_Reports</AssemblyName>
<TargetFrameworkVersion>v4.7.2</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment>
<TargetFrameworkProfile />
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>..\..\CustomerDlls\</OutputPath>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
<Optimize>true</Optimize>
<OutputPath>..\..\CustomerDlls\</OutputPath>
<DefineConstants>TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<ItemGroup>
<Reference Include="DevExpress.Data.v17.1, Version=17.1.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
<Reference Include="DevExpress.Printing.v17.1.Core, Version=17.1.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
<Reference Include="DevExpress.Utils.v17.1, Version=17.1.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
<Reference Include="DevExpress.XtraPrinting.v17.1, Version=17.1.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
<Reference Include="DevExpress.XtraReports.v17.1, Version=17.1.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
<Reference Include="System" />
<Reference Include="System.Core" />
<Reference Include="System.Drawing" />
<Reference Include="System.Windows.Forms" />
<Reference Include="System.Xml.Linq" />
<Reference Include="System.Data.DataSetExtensions" />
<Reference Include="Microsoft.CSharp" />
<Reference Include="System.Data" />
<Reference Include="System.Net.Http" />
<Reference Include="System.Xml" />
</ItemGroup>
<ItemGroup>
<Compile Include="CustomReportCreator.cs" />
<Compile Include="LeistungsnachweisSchulbegleitung.cs">
<SubType>Component</SubType>
</Compile>
<Compile Include="LeistungsnachweisSchulbegleitung.Designer.cs">
<DependentUpon>LeistungsnachweisSchulbegleitung.cs</DependentUpon>
</Compile>
<Compile Include="Properties\AssemblyInfo.cs" />
<Compile Include="LeistungsnachweisFamilienhilfe.cs">
<SubType>Component</SubType>
</Compile>
<Compile Include="LeistungsnachweisFamilienhilfe.Designer.cs">
<DependentUpon>LeistungsnachweisFamilienhilfe.cs</DependentUpon>
</Compile>
<Compile Include="QuittierungsbelegMitDatum.cs">
<SubType>Component</SubType>
</Compile>
<Compile Include="QuittierungsbelegMitDatum.Designer.cs">
<DependentUpon>QuittierungsbelegMitDatum.cs</DependentUpon>
</Compile>
</ItemGroup>
<ItemGroup>
<EmbeddedResource Include="LeistungsnachweisSchulbegleitung.resx">
<DependentUpon>LeistungsnachweisSchulbegleitung.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="Properties\licenses.licx" />
<EmbeddedResource Include="LeistungsnachweisFamilienhilfe.resx">
<DependentUpon>LeistungsnachweisFamilienhilfe.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="QuittierungsbelegMitDatum.resx">
<DependentUpon>QuittierungsbelegMitDatum.cs</DependentUpon>
<SubType>Designer</SubType>
</EmbeddedResource>
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\..\Data\Data.csproj">
<Project>{B0D73E3D-4AE7-4024-93A6-DB1F46D7CCEE}</Project>
<Name>Data</Name>
</ProjectReference>
<ProjectReference Include="..\..\Report\Report.csproj">
<Project>{40D8B312-EA64-49E3-A31A-5E57ED4D5654}</Project>
<Name>Report</Name>
</ProjectReference>
<ProjectReference Include="..\..\Shared\Shared.csproj">
<Project>{2f50b83d-a3f0-4ec4-979a-3f9b7e3d8ed4}</Project>
<Name>Shared</Name>
</ProjectReference>
</ItemGroup>
<ItemGroup>
<None Include="app.config" />
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
</Project>

View File

@@ -0,0 +1,175 @@
using System.Collections.Generic;
using BeWo.Report;
using BeWo.Report.ReportObjects;
using DevExpress.XtraReports.UI;
namespace BeWoPyramide
{
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)
{
XtraReport report = null;
ServicesOverviewRO bewoRo = CopyFromRO(ro);
ServicesOverviewRO spfhRo = CopyFromRO(ro);
ServicesOverviewRO sbdRo = CopyFromRO(ro);
if (ro.Services != null)
{
foreach (ServicesOverviewRO.ServiceDetail s in ro.Services)
{
if (s.ServiceCategory.ToLower().Contains("familien"))
{
spfhRo.Services.Add(s);
}
else if (s.ServiceCategory.ToLower().Contains("schulbegleitung"))
{
sbdRo.Services.Add(s);
}
else
{
bewoRo.Services.Add(s);
}
}
}
report = AddReportToReport(report, new Quittierungsbeleg2(), bewoRo);
report = AddReportToReport(report, new LeistungsnachweisFamilienhilfe(), spfhRo);
report = AddReportToReport(report, new LeistungsnachweisSchulbegleitung(), sbdRo);
if (report == null)
report = new XtraReport();
return report;
}
private XtraReport AddReportToReport(XtraReport masterReport, IBeWoReport<ServicesOverviewRO> newReport, ServicesOverviewRO ro)
{
if (ro.Services.Count > 0)
{
newReport.SetReportDataSource(ro);
((XtraReport)newReport).CreateDocument();
if (masterReport == null)
{
masterReport = newReport as XtraReport;
}
else
{
if (masterReport.Pages.Count == 0)
{
masterReport.CreateDocument();
}
masterReport.Pages.AddRange(((XtraReport)newReport).Pages);
}
}
return masterReport;
}
private ServicesOverviewRO CopyFromRO(ServicesOverviewRO ro)
{
ServicesOverviewRO newRo = new ServicesOverviewRO();
newRo.StartDate = ro.StartDate;
newRo.Abwesenheiten = ro.Abwesenheiten;
newRo.AbsenceTimes = ro.AbsenceTimes;
newRo.ApprovedEndDate = ro.ApprovedEndDate;
newRo.ApprovedFLSPerMonth = ro.ApprovedFLSPerMonth;
newRo.ApprovedFLSPerMonthTotal = ro.ApprovedFLSPerMonthTotal;
newRo.ApprovedFLSPerWeek = ro.ApprovedFLSPerWeek;
newRo.ApprovedFLSPerWeekTotal = ro.ApprovedFLSPerWeekTotal;
newRo.ApprovedFLSTotal = ro.ApprovedFLSTotal;
newRo.ApprovedStartDate = ro.ApprovedStartDate;
newRo.ContactEmployee = ro.ContactEmployee;
newRo.CostBearer2SupportConceptList = ro.CostBearer2SupportConceptList;
newRo.Costbearer = ro.Costbearer;
newRo.CustomerBirthday = ro.CustomerBirthday;
newRo.CustomerLastName = ro.CustomerLastName;
newRo.CustomerCity = ro.CustomerCity;
newRo.CustomerFirstName = ro.CustomerFirstName;
newRo.CustomerName = ro.CustomerName;
newRo.CustomerPostalCode = ro.CustomerPostalCode;
newRo.CustomerStreet = ro.CustomerStreet;
newRo.EndDate = ro.EndDate;
newRo.FreeMinutesThisMonth = ro.FreeMinutesThisMonth;
newRo.Month = ro.Month;
newRo.Year = ro.Year;
newRo.MainAttendant = ro.MainAttendant;
newRo.MainAttendantCommaSeperated = ro.MainAttendantCommaSeperated;
newRo.ReferenceNumber = ro.ReferenceNumber;
newRo.TotalFLMBillable = ro.TotalFLMBillable;
newRo.TotalFLM = ro.TotalFLM;
newRo.TotalFLMQualified = ro.TotalFLMQualified;
newRo.TotalFLMUnqualified = ro.TotalFLMUnqualified;
newRo.TotalFLS = ro.TotalFLS;
newRo.TotalFLSQualified = ro.TotalFLSQualified;
newRo.TotalFLSUnqualified = ro.TotalFLSUnqualified;
newRo.TotalFLSPerCostBearer = ro.TotalFLSPerCostBearer;
newRo.TotalGefahreneKilometer = ro.TotalGefahreneKilometer;
newRo.SupportConceptCostBearer = ro.SupportConceptCostBearer;
newRo.Mandator = ro.Mandator;
newRo.CustomerOid = ro.CustomerOid;
newRo.AllEmployees = ro.AllEmployees;
return newRo;
}
}
}

View File

@@ -0,0 +1,726 @@
namespace BeWoPyramide
{
partial class LeistungsnachweisFamilienhilfe
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components;
/// <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();
DevExpress.XtraReports.UI.XRSummary xrSummary1 = new DevExpress.XtraReports.UI.XRSummary();
this.Detail = new DevExpress.XtraReports.UI.DetailBand();
this.xrTableServiceRecords1 = new DevExpress.XtraReports.UI.XRTable();
this.xrTableRow2 = new DevExpress.XtraReports.UI.XRTableRow();
this.xrTableCell3 = new DevExpress.XtraReports.UI.XRTableCell();
this.xrTableCell5 = new DevExpress.XtraReports.UI.XRTableCell();
this.xrTableCell1 = new DevExpress.XtraReports.UI.XRTableCell();
this.DetailReport = new DevExpress.XtraReports.UI.DetailReportBand();
this.Detail1 = new DevExpress.XtraReports.UI.DetailBand();
this.xrTable3 = new DevExpress.XtraReports.UI.XRTable();
this.xrTableRow6 = new DevExpress.XtraReports.UI.XRTableRow();
this.xrTableCell13 = new DevExpress.XtraReports.UI.XRTableCell();
this.xrTableCell6 = new DevExpress.XtraReports.UI.XRTableCell();
this.xrTableCell2 = new DevExpress.XtraReports.UI.XRTableCell();
this.formattingRuleStartDate = new DevExpress.XtraReports.UI.FormattingRule();
this.ReportHeader = new DevExpress.XtraReports.UI.ReportHeaderBand();
this.xrTable1 = new DevExpress.XtraReports.UI.XRTable();
this.xrTableRow1 = new DevExpress.XtraReports.UI.XRTableRow();
this.xrTableCell10 = new DevExpress.XtraReports.UI.XRTableCell();
this.xrTableCell11 = new DevExpress.XtraReports.UI.XRTableCell();
this.xrTableRow3 = new DevExpress.XtraReports.UI.XRTableRow();
this.xrTableCell4 = new DevExpress.XtraReports.UI.XRTableCell();
this.xrTableCell7 = new DevExpress.XtraReports.UI.XRTableCell();
this.xrTableRow4 = new DevExpress.XtraReports.UI.XRTableRow();
this.xrTableCell8 = new DevExpress.XtraReports.UI.XRTableCell();
this.xrTableCell14 = new DevExpress.XtraReports.UI.XRTableCell();
this.xrTableRow5 = new DevExpress.XtraReports.UI.XRTableRow();
this.xrTableCell15 = new DevExpress.XtraReports.UI.XRTableCell();
this.xrTableCell18 = new DevExpress.XtraReports.UI.XRTableCell();
this.xrTableRow7 = new DevExpress.XtraReports.UI.XRTableRow();
this.xrTableCell19 = new DevExpress.XtraReports.UI.XRTableCell();
this.cellKinder = new DevExpress.XtraReports.UI.XRTableCell();
this.xrTableRow8 = new DevExpress.XtraReports.UI.XRTableRow();
this.xrTableCell21 = new DevExpress.XtraReports.UI.XRTableCell();
this.cellAsd = new DevExpress.XtraReports.UI.XRTableCell();
this.lblHeader = new DevExpress.XtraReports.UI.XRLabel();
this.formattingRuleServiceDesc = new DevExpress.XtraReports.UI.FormattingRule();
this.formattingRuleCostBearer = new DevExpress.XtraReports.UI.FormattingRule();
this.formattingRuleEmployeeName = new DevExpress.XtraReports.UI.FormattingRule();
this.topMarginBand1 = new DevExpress.XtraReports.UI.TopMarginBand();
this.bottomMarginBand1 = new DevExpress.XtraReports.UI.BottomMarginBand();
this.ReportFooter = new DevExpress.XtraReports.UI.ReportFooterBand();
this.xrTable4 = new DevExpress.XtraReports.UI.XRTable();
this.xrTableRow10 = new DevExpress.XtraReports.UI.XRTableRow();
this.cellDatum = new DevExpress.XtraReports.UI.XRTableCell();
this.xrTableCell24 = new DevExpress.XtraReports.UI.XRTableCell();
this.xrTable2 = new DevExpress.XtraReports.UI.XRTable();
this.xrTableRow9 = new DevExpress.XtraReports.UI.XRTableRow();
this.xrTableCell9 = new DevExpress.XtraReports.UI.XRTableCell();
this.xrTableCell12 = new DevExpress.XtraReports.UI.XRTableCell();
this.xrTableCell16 = new DevExpress.XtraReports.UI.XRTableCell();
this.fieldAbrechenbareStunden = new DevExpress.XtraReports.UI.CalculatedField();
this.fieldTotalFLSBillable = new DevExpress.XtraReports.UI.CalculatedField();
this.fieldTotalFLSBillableXRateFactor = new DevExpress.XtraReports.UI.CalculatedField();
this.customerCountField = new DevExpress.XtraReports.UI.CalculatedField();
this.fieldBillableFLS = new DevExpress.XtraReports.UI.CalculatedField();
this.fieldAbrechenbareFLS = new DevExpress.XtraReports.UI.CalculatedField();
this.GroupHeader1 = new DevExpress.XtraReports.UI.GroupHeaderBand();
this.bindingSource1 = new System.Windows.Forms.BindingSource(this.components);
((System.ComponentModel.ISupportInitialize)(this.xrTableServiceRecords1)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.xrTable3)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.xrTable1)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.xrTable4)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.xrTable2)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.bindingSource1)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this)).BeginInit();
//
// Detail
//
this.Detail.Font = new System.Drawing.Font("Arial", 10F, System.Drawing.FontStyle.Bold);
this.Detail.HeightF = 0F;
this.Detail.Name = "Detail";
this.Detail.Padding = new DevExpress.XtraPrinting.PaddingInfo(0, 0, 0, 0, 100F);
this.Detail.StylePriority.UseFont = false;
this.Detail.TextAlignment = DevExpress.XtraPrinting.TextAlignment.TopLeft;
//
// xrTableServiceRecords1
//
this.xrTableServiceRecords1.Borders = ((DevExpress.XtraPrinting.BorderSide)((((DevExpress.XtraPrinting.BorderSide.Left | DevExpress.XtraPrinting.BorderSide.Top)
| DevExpress.XtraPrinting.BorderSide.Right)
| DevExpress.XtraPrinting.BorderSide.Bottom)));
this.xrTableServiceRecords1.LocationFloat = new DevExpress.Utils.PointFloat(0F, 0F);
this.xrTableServiceRecords1.Name = "xrTableServiceRecords1";
this.xrTableServiceRecords1.Padding = new DevExpress.XtraPrinting.PaddingInfo(0, 0, 0, 0, 100F);
this.xrTableServiceRecords1.Rows.AddRange(new DevExpress.XtraReports.UI.XRTableRow[] {
this.xrTableRow2});
this.xrTableServiceRecords1.SizeF = new System.Drawing.SizeF(680F, 40F);
this.xrTableServiceRecords1.StylePriority.UseBackColor = false;
this.xrTableServiceRecords1.StylePriority.UseFont = false;
this.xrTableServiceRecords1.StylePriority.UseTextAlignment = false;
this.xrTableServiceRecords1.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleCenter;
//
// xrTableRow2
//
this.xrTableRow2.Cells.AddRange(new DevExpress.XtraReports.UI.XRTableCell[] {
this.xrTableCell3,
this.xrTableCell5,
this.xrTableCell1});
this.xrTableRow2.Name = "xrTableRow2";
this.xrTableRow2.Padding = new DevExpress.XtraPrinting.PaddingInfo(0, 0, 0, 0, 100F);
this.xrTableRow2.StylePriority.UseFont = false;
this.xrTableRow2.StylePriority.UseTextAlignment = false;
this.xrTableRow2.Weight = 2.2222184546263724D;
//
// xrTableCell3
//
this.xrTableCell3.Name = "xrTableCell3";
this.xrTableCell3.Padding = new DevExpress.XtraPrinting.PaddingInfo(5, 2, 0, 0, 100F);
this.xrTableCell3.StylePriority.UseFont = false;
this.xrTableCell3.StylePriority.UseTextAlignment = false;
this.xrTableCell3.Text = "Tag/Datum";
this.xrTableCell3.TextAlignment = DevExpress.XtraPrinting.TextAlignment.TopCenter;
this.xrTableCell3.Weight = 0.29263101620867055D;
//
// xrTableCell5
//
this.xrTableCell5.Multiline = true;
this.xrTableCell5.Name = "xrTableCell5";
this.xrTableCell5.StylePriority.UseTextAlignment = false;
this.xrTableCell5.Text = "Geleistete\r\nFLS";
this.xrTableCell5.TextAlignment = DevExpress.XtraPrinting.TextAlignment.TopCenter;
this.xrTableCell5.Weight = 0.29263101384076406D;
//
// xrTableCell1
//
this.xrTableCell1.Name = "xrTableCell1";
this.xrTableCell1.Padding = new DevExpress.XtraPrinting.PaddingInfo(5, 0, 0, 0, 100F);
this.xrTableCell1.StylePriority.UsePadding = false;
this.xrTableCell1.StylePriority.UseTextAlignment = false;
this.xrTableCell1.Text = "Tätigkeitsbeschreibung";
this.xrTableCell1.TextAlignment = DevExpress.XtraPrinting.TextAlignment.TopLeft;
this.xrTableCell1.Weight = 1.0729803996057445D;
//
// DetailReport
//
this.DetailReport.Bands.AddRange(new DevExpress.XtraReports.UI.Band[] {
this.Detail1});
this.DetailReport.DataMember = "Services";
this.DetailReport.DataSource = this.bindingSource1;
this.DetailReport.Level = 0;
this.DetailReport.Name = "DetailReport";
this.DetailReport.Padding = new DevExpress.XtraPrinting.PaddingInfo(0, 0, 0, 0, 100F);
this.DetailReport.TextAlignment = DevExpress.XtraPrinting.TextAlignment.TopLeft;
//
// Detail1
//
this.Detail1.Controls.AddRange(new DevExpress.XtraReports.UI.XRControl[] {
this.xrTable3});
this.Detail1.HeightF = 25F;
this.Detail1.Name = "Detail1";
this.Detail1.Padding = new DevExpress.XtraPrinting.PaddingInfo(0, 0, 0, 0, 100F);
this.Detail1.TextAlignment = DevExpress.XtraPrinting.TextAlignment.TopLeft;
//
// xrTable3
//
this.xrTable3.BorderColor = System.Drawing.Color.Black;
this.xrTable3.Borders = ((DevExpress.XtraPrinting.BorderSide)(((DevExpress.XtraPrinting.BorderSide.Left | DevExpress.XtraPrinting.BorderSide.Right)
| DevExpress.XtraPrinting.BorderSide.Bottom)));
this.xrTable3.LocationFloat = new DevExpress.Utils.PointFloat(0F, 0F);
this.xrTable3.Name = "xrTable3";
this.xrTable3.Padding = new DevExpress.XtraPrinting.PaddingInfo(0, 0, 0, 0, 100F);
this.xrTable3.Rows.AddRange(new DevExpress.XtraReports.UI.XRTableRow[] {
this.xrTableRow6});
this.xrTable3.SizeF = new System.Drawing.SizeF(680F, 25F);
this.xrTable3.StylePriority.UseFont = false;
this.xrTable3.TextAlignment = DevExpress.XtraPrinting.TextAlignment.TopLeft;
//
// xrTableRow6
//
this.xrTableRow6.Cells.AddRange(new DevExpress.XtraReports.UI.XRTableCell[] {
this.xrTableCell13,
this.xrTableCell6,
this.xrTableCell2});
this.xrTableRow6.Name = "xrTableRow6";
this.xrTableRow6.Padding = new DevExpress.XtraPrinting.PaddingInfo(0, 0, 0, 0, 100F);
this.xrTableRow6.TextAlignment = DevExpress.XtraPrinting.TextAlignment.TopLeft;
this.xrTableRow6.Weight = 1.3888888888888888D;
//
// xrTableCell13
//
this.xrTableCell13.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
new DevExpress.XtraReports.UI.XRBinding("Text", null, "Services.TimeRangeString")});
this.xrTableCell13.Name = "xrTableCell13";
this.xrTableCell13.StylePriority.UseFont = false;
this.xrTableCell13.StylePriority.UsePadding = false;
this.xrTableCell13.StylePriority.UseTextAlignment = false;
this.xrTableCell13.TextAlignment = DevExpress.XtraPrinting.TextAlignment.TopCenter;
this.xrTableCell13.Weight = 0.15151511909339357D;
//
// xrTableCell6
//
this.xrTableCell6.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
new DevExpress.XtraReports.UI.XRBinding("Text", null, "Services.fieldAbrechenbareStunden", "{0:0.00}")});
this.xrTableCell6.Name = "xrTableCell6";
this.xrTableCell6.StylePriority.UseTextAlignment = false;
this.xrTableCell6.TextAlignment = DevExpress.XtraPrinting.TextAlignment.TopCenter;
this.xrTableCell6.Weight = 0.1515151175978775D;
//
// xrTableCell2
//
this.xrTableCell2.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
new DevExpress.XtraReports.UI.XRBinding("Text", null, "Services.Notice")});
this.xrTableCell2.Multiline = true;
this.xrTableCell2.Name = "xrTableCell2";
this.xrTableCell2.Padding = new DevExpress.XtraPrinting.PaddingInfo(5, 5, 0, 0, 100F);
this.xrTableCell2.StylePriority.UsePadding = false;
this.xrTableCell2.StylePriority.UseTextAlignment = false;
this.xrTableCell2.Text = "xrTableCell2";
this.xrTableCell2.TextAlignment = DevExpress.XtraPrinting.TextAlignment.TopLeft;
this.xrTableCell2.Weight = 0.55555546239134668D;
//
// formattingRuleStartDate
//
this.formattingRuleStartDate.Condition = "[StartDate2] < [StartDate]";
this.formattingRuleStartDate.DataMember = "ServicesDouble";
this.formattingRuleStartDate.Formatting.Visible = DevExpress.Utils.DefaultBoolean.False;
this.formattingRuleStartDate.Name = "formattingRuleStartDate";
//
// ReportHeader
//
this.ReportHeader.Controls.AddRange(new DevExpress.XtraReports.UI.XRControl[] {
this.xrTable1,
this.lblHeader});
this.ReportHeader.Font = new System.Drawing.Font("Arial", 10F);
this.ReportHeader.HeightF = 260F;
this.ReportHeader.Name = "ReportHeader";
this.ReportHeader.StylePriority.UseFont = false;
//
// xrTable1
//
this.xrTable1.Borders = ((DevExpress.XtraPrinting.BorderSide)((((DevExpress.XtraPrinting.BorderSide.Left | DevExpress.XtraPrinting.BorderSide.Top)
| DevExpress.XtraPrinting.BorderSide.Right)
| DevExpress.XtraPrinting.BorderSide.Bottom)));
this.xrTable1.LocationFloat = new DevExpress.Utils.PointFloat(0F, 60F);
this.xrTable1.Name = "xrTable1";
this.xrTable1.Padding = new DevExpress.XtraPrinting.PaddingInfo(5, 5, 0, 0, 100F);
this.xrTable1.Rows.AddRange(new DevExpress.XtraReports.UI.XRTableRow[] {
this.xrTableRow1,
this.xrTableRow3,
this.xrTableRow4,
this.xrTableRow5,
this.xrTableRow7,
this.xrTableRow8});
this.xrTable1.SizeF = new System.Drawing.SizeF(680F, 180F);
this.xrTable1.StylePriority.UseBackColor = false;
this.xrTable1.StylePriority.UseFont = false;
this.xrTable1.StylePriority.UsePadding = false;
this.xrTable1.StylePriority.UseTextAlignment = false;
this.xrTable1.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleLeft;
//
// xrTableRow1
//
this.xrTableRow1.Cells.AddRange(new DevExpress.XtraReports.UI.XRTableCell[] {
this.xrTableCell10,
this.xrTableCell11});
this.xrTableRow1.Name = "xrTableRow1";
this.xrTableRow1.StylePriority.UseFont = false;
this.xrTableRow1.StylePriority.UsePadding = false;
this.xrTableRow1.StylePriority.UseTextAlignment = false;
this.xrTableRow1.Weight = 1.6666638409697792D;
//
// xrTableCell10
//
this.xrTableCell10.Name = "xrTableCell10";
this.xrTableCell10.StylePriority.UseBackColor = false;
this.xrTableCell10.StylePriority.UseFont = false;
this.xrTableCell10.StylePriority.UsePadding = false;
this.xrTableCell10.StylePriority.UseTextAlignment = false;
this.xrTableCell10.Text = "Monat";
this.xrTableCell10.Weight = 0.82912121714367759D;
//
// xrTableCell11
//
this.xrTableCell11.Name = "xrTableCell11";
this.xrTableCell11.Text = "[Month]/[Year]";
this.xrTableCell11.Weight = 0.82912121691692775D;
//
// xrTableRow3
//
this.xrTableRow3.Cells.AddRange(new DevExpress.XtraReports.UI.XRTableCell[] {
this.xrTableCell4,
this.xrTableCell7});
this.xrTableRow3.Name = "xrTableRow3";
this.xrTableRow3.Weight = 1.6666638409697794D;
//
// xrTableCell4
//
this.xrTableCell4.Name = "xrTableCell4";
this.xrTableCell4.StylePriority.UsePadding = false;
this.xrTableCell4.StylePriority.UseTextAlignment = false;
this.xrTableCell4.Text = "Leistungsempfänger";
this.xrTableCell4.Weight = 0.8291209938839289D;
//
// xrTableCell7
//
this.xrTableCell7.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
new DevExpress.XtraReports.UI.XRBinding("Text", null, "CustomerName")});
this.xrTableCell7.Name = "xrTableCell7";
this.xrTableCell7.Text = "xrTableCell7";
this.xrTableCell7.Weight = 0.82912144017667644D;
//
// xrTableRow4
//
this.xrTableRow4.Cells.AddRange(new DevExpress.XtraReports.UI.XRTableCell[] {
this.xrTableCell8,
this.xrTableCell14});
this.xrTableRow4.Name = "xrTableRow4";
this.xrTableRow4.Weight = 1.6666638409697792D;
//
// xrTableCell8
//
this.xrTableCell8.Name = "xrTableCell8";
this.xrTableCell8.Text = "Aktenzeichen Wirtschaftliche Jugendhilfe";
this.xrTableCell8.Weight = 0.8291209938839289D;
//
// xrTableCell14
//
this.xrTableCell14.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
new DevExpress.XtraReports.UI.XRBinding("Text", null, "ReferenceNumber")});
this.xrTableCell14.Name = "xrTableCell14";
this.xrTableCell14.Text = "xrTableCell14";
this.xrTableCell14.Weight = 0.82912144017667644D;
//
// xrTableRow5
//
this.xrTableRow5.Cells.AddRange(new DevExpress.XtraReports.UI.XRTableCell[] {
this.xrTableCell15,
this.xrTableCell18});
this.xrTableRow5.Name = "xrTableRow5";
this.xrTableRow5.Weight = 1.6666638409697794D;
//
// xrTableCell15
//
this.xrTableCell15.Name = "xrTableCell15";
this.xrTableCell15.Text = "Einsatz durch";
this.xrTableCell15.Weight = 0.8291209938839289D;
//
// xrTableCell18
//
this.xrTableCell18.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
new DevExpress.XtraReports.UI.XRBinding("Text", null, "MainAttendant")});
this.xrTableCell18.Name = "xrTableCell18";
this.xrTableCell18.Text = "xrTableCell18";
this.xrTableCell18.Weight = 0.82912144017667644D;
//
// xrTableRow7
//
this.xrTableRow7.Cells.AddRange(new DevExpress.XtraReports.UI.XRTableCell[] {
this.xrTableCell19,
this.cellKinder});
this.xrTableRow7.Name = "xrTableRow7";
this.xrTableRow7.Weight = 1.6666638409697789D;
//
// xrTableCell19
//
this.xrTableCell19.Name = "xrTableCell19";
this.xrTableCell19.Text = "Namen des Kindes";
this.xrTableCell19.Weight = 0.8291209938839289D;
//
// cellKinder
//
this.cellKinder.Name = "cellKinder";
this.cellKinder.Weight = 0.82912144017667644D;
//
// xrTableRow8
//
this.xrTableRow8.Cells.AddRange(new DevExpress.XtraReports.UI.XRTableCell[] {
this.xrTableCell21,
this.cellAsd});
this.xrTableRow8.Name = "xrTableRow8";
this.xrTableRow8.Weight = 1.6666638409697794D;
//
// xrTableCell21
//
this.xrTableCell21.Name = "xrTableCell21";
this.xrTableCell21.Text = "Fallführende Fachkraft im ASD";
this.xrTableCell21.Weight = 0.8291209938839289D;
//
// cellAsd
//
this.cellAsd.Name = "cellAsd";
this.cellAsd.Weight = 0.82912144017667644D;
//
// lblHeader
//
this.lblHeader.Font = new System.Drawing.Font("Arial", 13.5F, ((System.Drawing.FontStyle)((System.Drawing.FontStyle.Bold | System.Drawing.FontStyle.Underline))));
this.lblHeader.LocationFloat = new DevExpress.Utils.PointFloat(0F, 0F);
this.lblHeader.Multiline = true;
this.lblHeader.Name = "lblHeader";
this.lblHeader.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.lblHeader.SizeF = new System.Drawing.SizeF(674.9998F, 50F);
this.lblHeader.StylePriority.UseFont = false;
this.lblHeader.StylePriority.UseTextAlignment = false;
this.lblHeader.Text = "Leistungsnachweis\r\nfür das Jugendamt Sankt Augustin";
this.lblHeader.TextAlignment = DevExpress.XtraPrinting.TextAlignment.TopCenter;
//
// formattingRuleServiceDesc
//
this.formattingRuleServiceDesc.Condition = "[StartDate2] < [StartDate]";
this.formattingRuleServiceDesc.DataMember = "ServicesDouble";
this.formattingRuleServiceDesc.Formatting.Visible = DevExpress.Utils.DefaultBoolean.False;
this.formattingRuleServiceDesc.Name = "formattingRuleServiceDesc";
//
// formattingRuleCostBearer
//
this.formattingRuleCostBearer.Condition = "[StartDate2] < [StartDate]";
this.formattingRuleCostBearer.DataMember = "ServicesDouble";
this.formattingRuleCostBearer.Formatting.Visible = DevExpress.Utils.DefaultBoolean.False;
this.formattingRuleCostBearer.Name = "formattingRuleCostBearer";
//
// formattingRuleEmployeeName
//
this.formattingRuleEmployeeName.Condition = "[StartDate2] < [StartDate]";
this.formattingRuleEmployeeName.DataMember = "ServicesDouble";
this.formattingRuleEmployeeName.Formatting.Visible = DevExpress.Utils.DefaultBoolean.False;
this.formattingRuleEmployeeName.Name = "formattingRuleEmployeeName";
//
// topMarginBand1
//
this.topMarginBand1.Font = new System.Drawing.Font("Times New Roman", 9.75F);
this.topMarginBand1.HeightF = 99F;
this.topMarginBand1.Name = "topMarginBand1";
this.topMarginBand1.StylePriority.UseFont = false;
//
// bottomMarginBand1
//
this.bottomMarginBand1.HeightF = 36F;
this.bottomMarginBand1.Name = "bottomMarginBand1";
//
// ReportFooter
//
this.ReportFooter.Controls.AddRange(new DevExpress.XtraReports.UI.XRControl[] {
this.xrTable4,
this.xrTable2});
this.ReportFooter.Font = new System.Drawing.Font("Arial", 10F, System.Drawing.FontStyle.Bold);
this.ReportFooter.HeightF = 120F;
this.ReportFooter.Name = "ReportFooter";
this.ReportFooter.StylePriority.UseFont = false;
//
// xrTable4
//
this.xrTable4.Borders = ((DevExpress.XtraPrinting.BorderSide)((((DevExpress.XtraPrinting.BorderSide.Left | DevExpress.XtraPrinting.BorderSide.Top)
| DevExpress.XtraPrinting.BorderSide.Right)
| DevExpress.XtraPrinting.BorderSide.Bottom)));
this.xrTable4.LocationFloat = new DevExpress.Utils.PointFloat(0F, 40F);
this.xrTable4.Name = "xrTable4";
this.xrTable4.Padding = new DevExpress.XtraPrinting.PaddingInfo(0, 0, 0, 0, 100F);
this.xrTable4.Rows.AddRange(new DevExpress.XtraReports.UI.XRTableRow[] {
this.xrTableRow10});
this.xrTable4.SizeF = new System.Drawing.SizeF(680F, 80F);
this.xrTable4.StylePriority.UseBackColor = false;
this.xrTable4.StylePriority.UseFont = false;
this.xrTable4.StylePriority.UseTextAlignment = false;
this.xrTable4.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleCenter;
//
// xrTableRow10
//
this.xrTableRow10.Cells.AddRange(new DevExpress.XtraReports.UI.XRTableCell[] {
this.cellDatum,
this.xrTableCell24});
this.xrTableRow10.Name = "xrTableRow10";
this.xrTableRow10.Padding = new DevExpress.XtraPrinting.PaddingInfo(0, 0, 0, 0, 100F);
this.xrTableRow10.StylePriority.UseFont = false;
this.xrTableRow10.StylePriority.UseTextAlignment = false;
this.xrTableRow10.TextAlignment = DevExpress.XtraPrinting.TextAlignment.TopLeft;
this.xrTableRow10.Weight = 2.2222184546263724D;
//
// cellDatum
//
this.cellDatum.Name = "cellDatum";
this.cellDatum.Padding = new DevExpress.XtraPrinting.PaddingInfo(5, 2, 0, 0, 100F);
this.cellDatum.StylePriority.UseFont = false;
this.cellDatum.StylePriority.UseTextAlignment = false;
this.cellDatum.Text = "Datum";
this.cellDatum.Weight = 0.58526203320664327D;
//
// xrTableCell24
//
this.xrTableCell24.Name = "xrTableCell24";
this.xrTableCell24.Padding = new DevExpress.XtraPrinting.PaddingInfo(5, 0, 0, 0, 100F);
this.xrTableCell24.StylePriority.UsePadding = false;
this.xrTableCell24.StylePriority.UseTextAlignment = false;
this.xrTableCell24.Text = "Unterschrift";
this.xrTableCell24.Weight = 1.0729803964485358D;
//
// xrTable2
//
this.xrTable2.Borders = ((DevExpress.XtraPrinting.BorderSide)((((DevExpress.XtraPrinting.BorderSide.Left | DevExpress.XtraPrinting.BorderSide.Top)
| DevExpress.XtraPrinting.BorderSide.Right)
| DevExpress.XtraPrinting.BorderSide.Bottom)));
this.xrTable2.LocationFloat = new DevExpress.Utils.PointFloat(0F, 0F);
this.xrTable2.Name = "xrTable2";
this.xrTable2.Padding = new DevExpress.XtraPrinting.PaddingInfo(0, 0, 0, 0, 100F);
this.xrTable2.Rows.AddRange(new DevExpress.XtraReports.UI.XRTableRow[] {
this.xrTableRow9});
this.xrTable2.SizeF = new System.Drawing.SizeF(680F, 25F);
this.xrTable2.StylePriority.UseBackColor = false;
this.xrTable2.StylePriority.UseFont = false;
this.xrTable2.StylePriority.UseTextAlignment = false;
this.xrTable2.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleCenter;
//
// xrTableRow9
//
this.xrTableRow9.Cells.AddRange(new DevExpress.XtraReports.UI.XRTableCell[] {
this.xrTableCell9,
this.xrTableCell12,
this.xrTableCell16});
this.xrTableRow9.Name = "xrTableRow9";
this.xrTableRow9.Padding = new DevExpress.XtraPrinting.PaddingInfo(0, 0, 0, 0, 100F);
this.xrTableRow9.StylePriority.UseFont = false;
this.xrTableRow9.StylePriority.UseTextAlignment = false;
this.xrTableRow9.Weight = 1.3888865341414827D;
//
// xrTableCell9
//
this.xrTableCell9.Name = "xrTableCell9";
this.xrTableCell9.Padding = new DevExpress.XtraPrinting.PaddingInfo(5, 2, 0, 0, 100F);
this.xrTableCell9.StylePriority.UseFont = false;
this.xrTableCell9.StylePriority.UseTextAlignment = false;
this.xrTableCell9.Text = "Gesamt";
this.xrTableCell9.Weight = 0.29263101620867055D;
//
// xrTableCell12
//
this.xrTableCell12.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
new DevExpress.XtraReports.UI.XRBinding("Text", null, "Services.fieldAbrechenbareStunden")});
this.xrTableCell12.Name = "xrTableCell12";
xrSummary1.FormatString = "{0:0.00}";
xrSummary1.Running = DevExpress.XtraReports.UI.SummaryRunning.Report;
this.xrTableCell12.Summary = xrSummary1;
this.xrTableCell12.Weight = 0.29263101384076406D;
//
// xrTableCell16
//
this.xrTableCell16.Name = "xrTableCell16";
this.xrTableCell16.Padding = new DevExpress.XtraPrinting.PaddingInfo(5, 0, 0, 0, 100F);
this.xrTableCell16.StylePriority.UsePadding = false;
this.xrTableCell16.StylePriority.UseTextAlignment = false;
this.xrTableCell16.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleLeft;
this.xrTableCell16.Weight = 1.0729803996057445D;
//
// fieldAbrechenbareStunden
//
this.fieldAbrechenbareStunden.DataMember = "Services";
this.fieldAbrechenbareStunden.Expression = "[Minutes] / 60";
this.fieldAbrechenbareStunden.FieldType = DevExpress.XtraReports.UI.FieldType.Decimal;
this.fieldAbrechenbareStunden.Name = "fieldAbrechenbareStunden";
//
// fieldTotalFLSBillable
//
this.fieldTotalFLSBillable.Expression = "[TotalFLMBillable]/60";
this.fieldTotalFLSBillable.FieldType = DevExpress.XtraReports.UI.FieldType.Decimal;
this.fieldTotalFLSBillable.Name = "fieldTotalFLSBillable";
//
// fieldTotalFLSBillableXRateFactor
//
this.fieldTotalFLSBillableXRateFactor.Expression = "([TotalFLMBillable]/60) * 1.2";
this.fieldTotalFLSBillableXRateFactor.FieldType = DevExpress.XtraReports.UI.FieldType.Decimal;
this.fieldTotalFLSBillableXRateFactor.Name = "fieldTotalFLSBillableXRateFactor";
//
// customerCountField
//
this.customerCountField.DataMember = "Services";
this.customerCountField.Expression = "Iif([CustomerCount] < 2, \'\', ToStr([CustomerCount]) + \' Teilnehmer\')";
this.customerCountField.FieldType = DevExpress.XtraReports.UI.FieldType.String;
this.customerCountField.Name = "customerCountField";
//
// fieldBillableFLS
//
this.fieldBillableFLS.Expression = "[TotalFLMBillable]/60";
this.fieldBillableFLS.FieldType = DevExpress.XtraReports.UI.FieldType.Decimal;
this.fieldBillableFLS.Name = "fieldBillableFLS";
//
// fieldAbrechenbareFLS
//
this.fieldAbrechenbareFLS.Expression = "([TotalFLMBillable]/60) * 1.2";
this.fieldAbrechenbareFLS.FieldType = DevExpress.XtraReports.UI.FieldType.Decimal;
this.fieldAbrechenbareFLS.Name = "fieldAbrechenbareFLS";
//
// GroupHeader1
//
this.GroupHeader1.Controls.AddRange(new DevExpress.XtraReports.UI.XRControl[] {
this.xrTableServiceRecords1});
this.GroupHeader1.Font = new System.Drawing.Font("Arial", 10F, System.Drawing.FontStyle.Bold);
this.GroupHeader1.HeightF = 40F;
this.GroupHeader1.Name = "GroupHeader1";
this.GroupHeader1.RepeatEveryPage = true;
this.GroupHeader1.StylePriority.UseFont = false;
//
// bindingSource1
//
this.bindingSource1.DataSource = typeof(BeWo.Report.ReportObjects.ServicesOverviewRO);
//
// LeistungsnachweisFamilienhilfe
//
this.Bands.AddRange(new DevExpress.XtraReports.UI.Band[] {
this.Detail,
this.DetailReport,
this.ReportHeader,
this.topMarginBand1,
this.bottomMarginBand1,
this.ReportFooter,
this.GroupHeader1});
this.CalculatedFields.AddRange(new DevExpress.XtraReports.UI.CalculatedField[] {
this.fieldAbrechenbareStunden,
this.fieldTotalFLSBillable,
this.fieldTotalFLSBillableXRateFactor,
this.customerCountField,
this.fieldBillableFLS,
this.fieldAbrechenbareFLS});
this.DataSource = this.bindingSource1;
this.Font = new System.Drawing.Font("Arial", 10F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.FormattingRuleSheet.AddRange(new DevExpress.XtraReports.UI.FormattingRule[] {
this.formattingRuleStartDate,
this.formattingRuleServiceDesc,
this.formattingRuleCostBearer,
this.formattingRuleEmployeeName});
this.Margins = new System.Drawing.Printing.Margins(75, 70, 99, 36);
this.PageHeight = 1169;
this.PageWidth = 827;
this.PaperKind = System.Drawing.Printing.PaperKind.A4;
this.SnapGridSize = 9F;
this.Version = "17.1";
((System.ComponentModel.ISupportInitialize)(this.xrTableServiceRecords1)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.xrTable3)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.xrTable1)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.xrTable4)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.xrTable2)).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.DetailReportBand DetailReport;
private DevExpress.XtraReports.UI.DetailBand Detail1;
private DevExpress.XtraReports.UI.XRTable xrTable3;
private DevExpress.XtraReports.UI.XRTableRow xrTableRow6;
private DevExpress.XtraReports.UI.ReportHeaderBand ReportHeader;
private DevExpress.XtraReports.UI.XRTable xrTableServiceRecords1;
private DevExpress.XtraReports.UI.XRTableRow xrTableRow2;
private DevExpress.XtraReports.UI.XRTableCell xrTableCell3;
private DevExpress.XtraReports.UI.XRTableCell xrTableCell13;
private DevExpress.XtraReports.UI.FormattingRule formattingRuleStartDate;
private DevExpress.XtraReports.UI.FormattingRule formattingRuleServiceDesc;
private DevExpress.XtraReports.UI.FormattingRule formattingRuleCostBearer;
private DevExpress.XtraReports.UI.FormattingRule formattingRuleEmployeeName;
private DevExpress.XtraReports.UI.TopMarginBand topMarginBand1;
private DevExpress.XtraReports.UI.BottomMarginBand bottomMarginBand1;
private DevExpress.XtraReports.UI.ReportFooterBand ReportFooter;
private DevExpress.XtraReports.UI.CalculatedField fieldAbrechenbareStunden;
private DevExpress.XtraReports.UI.XRTableCell xrTableCell1;
private DevExpress.XtraReports.UI.XRTableCell xrTableCell2;
private DevExpress.XtraReports.UI.CalculatedField fieldTotalFLSBillable;
private DevExpress.XtraReports.UI.CalculatedField fieldTotalFLSBillableXRateFactor;
private DevExpress.XtraReports.UI.XRTableCell xrTableCell5;
private DevExpress.XtraReports.UI.CalculatedField customerCountField;
private DevExpress.XtraReports.UI.XRLabel lblHeader;
private DevExpress.XtraReports.UI.CalculatedField fieldBillableFLS;
private DevExpress.XtraReports.UI.CalculatedField fieldAbrechenbareFLS;
private DevExpress.XtraReports.UI.GroupHeaderBand GroupHeader1;
private DevExpress.XtraReports.UI.XRTable xrTable1;
private DevExpress.XtraReports.UI.XRTableRow xrTableRow1;
private DevExpress.XtraReports.UI.XRTableCell xrTableCell10;
private DevExpress.XtraReports.UI.XRTableCell xrTableCell11;
private DevExpress.XtraReports.UI.XRTableRow xrTableRow3;
private DevExpress.XtraReports.UI.XRTableCell xrTableCell4;
private DevExpress.XtraReports.UI.XRTableCell xrTableCell7;
private DevExpress.XtraReports.UI.XRTableRow xrTableRow4;
private DevExpress.XtraReports.UI.XRTableCell xrTableCell8;
private DevExpress.XtraReports.UI.XRTableCell xrTableCell14;
private DevExpress.XtraReports.UI.XRTableRow xrTableRow5;
private DevExpress.XtraReports.UI.XRTableCell xrTableCell15;
private DevExpress.XtraReports.UI.XRTableCell xrTableCell18;
private DevExpress.XtraReports.UI.XRTableRow xrTableRow7;
private DevExpress.XtraReports.UI.XRTableCell xrTableCell19;
private DevExpress.XtraReports.UI.XRTableCell cellKinder;
private DevExpress.XtraReports.UI.XRTableRow xrTableRow8;
private DevExpress.XtraReports.UI.XRTableCell xrTableCell21;
private DevExpress.XtraReports.UI.XRTableCell cellAsd;
private DevExpress.XtraReports.UI.XRTableCell xrTableCell6;
private DevExpress.XtraReports.UI.XRTable xrTable2;
private DevExpress.XtraReports.UI.XRTableRow xrTableRow9;
private DevExpress.XtraReports.UI.XRTableCell xrTableCell9;
private DevExpress.XtraReports.UI.XRTableCell xrTableCell12;
private DevExpress.XtraReports.UI.XRTableCell xrTableCell16;
private DevExpress.XtraReports.UI.XRTable xrTable4;
private DevExpress.XtraReports.UI.XRTableRow xrTableRow10;
private DevExpress.XtraReports.UI.XRTableCell cellDatum;
private DevExpress.XtraReports.UI.XRTableCell xrTableCell24;
}
}

View File

@@ -0,0 +1,82 @@
using System;
using System.Collections.Generic;
using BeWo.Data.Access;
using BeWo.Data.Entities;
using BeWo.Report;
using BeWo.Report.ReportObjects;
namespace BeWoPyramide
{
public partial class LeistungsnachweisFamilienhilfe : DevExpress.XtraReports.UI.XtraReport, IBeWoReport<ServicesOverviewRO>
{
public LeistungsnachweisFamilienhilfe()
{
InitializeComponent();
}
public void SetReportDataSource(ServicesOverviewRO pRO)
{
cellDatum.Text = String.Format("Datum {0:dd.MM.yyyy}", DateTime.Now);
this.lblHeader.Text = "Leistungsnachweis";
if (pRO.CostBearer2SupportConceptList != null && pRO.CostBearer2SupportConceptList.Count > 0)
{
var c2s = pRO.CostBearer2SupportConceptList[0];
var org = c2s.CostBearer.Organisation;
if (org.Name.Contains("Jugendamt"))
{
this.lblHeader.Text = "Leistungsnachweis\r\nfür das ";
this.lblHeader.Text += org.Name;
}
if (c2s.CostBearerContactPerson != null)
{
cellAsd.Text = c2s.CostBearerContactPerson.FirstNameLastName;
}
}
if (pRO.CustomerOid > 0)
{
var c = DAOFactory.GenericDAO.LoadByID<Customer>(pRO.CustomerOid);
cellKinder.Text = c.Childs;
}
Dictionary<String, String> empDict = new Dictionary<string, string>();
String emp = "";
if (pRO.Services != null)
{
foreach (ServicesOverviewRO.ServiceDetail s in pRO.Services)
{
if (!empDict.ContainsKey(s.EmployeeFullname))
{
empDict.Add(s.EmployeeFullname, s.EmployeeFullname);
}
emp = s.EmployeeFullname;
s.TimeRangeString = String.Format("{0:ddd}./{0:dd.MM.}", s.StartDate);
}
}
if (empDict.Count == 1)
{
pRO.MainAttendant = emp;
}
if (!String.IsNullOrEmpty(pRO.MainAttendant))
{
pRO.MainAttendant = "BEWO Pyramide, " + pRO.MainAttendant;
}
else
{
pRO.MainAttendant = "BEWO Pyramide";
}
this.bindingSource1.DataSource = pRO;
}
}
}

View File

@@ -0,0 +1,123 @@
<?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>
</root>

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,127 @@
using System;
using System.Collections.Generic;
using BeWo.Report;
using BeWo.Report.ReportObjects;
using BS.Shared;
namespace BeWoPyramide
{
public partial class LeistungsnachweisSchulbegleitung : DevExpress.XtraReports.UI.XtraReport, IBeWoReport<ServicesOverviewRO>
{
public LeistungsnachweisSchulbegleitung()
{
InitializeComponent();
}
public void SetReportDataSource(ServicesOverviewRO pRO)
{
bool hatGruppen = false;
double summeFls = 0;
double summeAusfall = 0;
double summeWege = 0;
Dictionary<String, String> empDict = new Dictionary<string, string>();
String emp = "";
if (pRO.Services != null)
{
List<ServicesOverviewRO.ServiceDetail> servicesBillable = new List<ServicesOverviewRO.ServiceDetail>();
foreach (ServicesOverviewRO.ServiceDetail s in pRO.Services)
{
if (!empDict.ContainsKey(s.EmployeeFullname))
{
empDict.Add(s.EmployeeFullname, s.EmployeeFullname);
}
emp = s.EmployeeFullname;
//if (s.IsBillable)
//{
s.Notice4 = "";
s.Notice5 = "";
s.TimeRangeString = "";
if (s.ServiceDescription.Contains("Ausfall"))
{
summeAusfall += s.Minutes;
s.Notice4 = String.Format("{0:0.00}", s.Minutes / 60);
}
else if (s.ServiceDescription.Contains("Wege"))
{
summeWege += s.Minutes;
s.Notice5 = String.Format("{0:0.00}", s.Minutes / 60);
}
else
{
summeFls += s.Minutes;
s.TimeRangeString = String.Format("{0:0.00}", s.Minutes / 60);
}
servicesBillable.Add(s);
//}
}
pRO.Services = servicesBillable;
}
if (empDict.Count == 1)
{
pRO.MainAttendant = emp;
}
cellSummeFls.Text = String.Format("{0:0.00}", summeFls / 60);
cellSummeAusfall.Text = String.Format("{0:0.00}", summeAusfall / 60);
cellSummeWegezeit.Text = String.Format("{0:0.00}", summeWege / 60);
cellSummeGesamt.Text = String.Format("Gesamt: {0:0.00}", (summeFls + summeAusfall + summeWege) / 60);
pRO.ApprovedFLSPerMonth = pRO.ApprovedFLSPerWeek * 4.33m;
//cellAsdBezirk.Text = pRO.o
cellAsdSachb.Text = "";
if (pRO.CostBearer2SupportConceptList != null && pRO.CostBearer2SupportConceptList.Count > 0)
{
if (pRO.CostBearer2SupportConceptList[0].CostBearerContactPerson != null)
{
String name = "";
if (pRO.CostBearer2SupportConceptList[0].CostBearerContactPerson.Sex.HasValue)
{
if (pRO.CostBearer2SupportConceptList[0].CostBearerContactPerson.Sex.Value == Sex.Male)
{
name = "Herr ";
}
else
{
name = "Frau ";
}
}
cellAsdSachb.Text = name + pRO.CostBearer2SupportConceptList[0].CostBearerContactPerson.LastName;
}
}
var ad = pRO.BerechneJugendamtSollIst();
var gesamt = (summeFls + summeAusfall + summeWege) / 60;
cellSummeGesamt.Text = String.Format("Summe {0:0.00}", gesamt);
cellRechnung.Text = String.Format("{0:0.00}", gesamt);
cellVerbleiben.Text = String.Format("{0:0.00}", ad.RemainingHoursTotal - (decimal)gesamt);
cellApprovedTotal1.Text = String.Format("{0:0.00}", ad.ApprovedHoursTotal);
cellApprovedTotal2.Text = String.Format("{0:0.00}", ad.ApprovedHoursTotal);
cellBewilligungStart.Text = String.Format("{0:dd.MM.yyyy}", ad.TotalStartDate);
cellBewilligungEnd.Text = String.Format("{0:dd.MM.yyyy}", ad.TotalEndDate);
cellStundenVormonat.Text = String.Format("{0:0.00}", ad.UsedHoursPreviousMonths);
cellRestStunden.Text = String.Format("{0:0.00}", ad.RemainingHoursTotal);
cellStdBewZeitraum.Text = String.Format("{0:0.00}", ad.ApprovedHoursInTimeSpan);
cellStdBewZeitraum2.Text = String.Format("{0:0.00}", ad.ApprovedHoursInTimeSpan);
this.bindingSource1.DataSource = pRO;
}
}
}

View File

@@ -0,0 +1,123 @@
<?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>
</root>

View File

@@ -0,0 +1,36 @@
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
// Allgemeine Informationen über eine Assembly werden über die folgenden
// Attribute gesteuert. Ändern Sie diese Attributwerte, um die Informationen zu ändern,
// die einer Assembly zugeordnet sind.
[assembly: AssemblyTitle("BeWoPyramide")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("BeWoPyramide")]
[assembly: AssemblyCopyright("Copyright © 2024")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
// Durch Festlegen von ComVisible auf FALSE werden die Typen in dieser Assembly
// für COM-Komponenten unsichtbar. Wenn Sie auf einen Typ in dieser Assembly von
// COM aus zugreifen müssen, sollten Sie das ComVisible-Attribut für diesen Typ auf "True" festlegen.
[assembly: ComVisible(false)]
// Die folgende GUID bestimmt die ID der Typbibliothek, wenn dieses Projekt für COM verfügbar gemacht wird
[assembly: Guid("b9962dc8-015c-415a-a079-94bc3279e577")]
// Versionsinformationen für eine Assembly bestehen aus den folgenden vier Werten:
//
// Hauptversion
// Nebenversion
// Buildnummer
// Revision
//
// Sie können alle Werte angeben oder Standardwerte für die Build- und Revisionsnummern verwenden,
// indem Sie "*" wie unten gezeigt eingeben:
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("1.0.0.0")]
[assembly: AssemblyFileVersion("1.0.0.0")]

View File

@@ -0,0 +1 @@
DevExpress.XtraReports.UI.XtraReport, DevExpress.XtraReports.v17.1, Version=17.1.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,119 @@
using System;
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 BeWoPyramide
{
public partial class Quittierungsbeleg2 : DevExpress.XtraReports.UI.XtraReport, IBeWoReport<ServicesOverviewRO>
{
public Quittierungsbeleg2()
{
InitializeComponent();
}
public void SetReportDataSource(ServicesOverviewRO pRO)
{
bool hatGruppen = false;
if (pRO.Services != null)
{
foreach (var sd in pRO.Services)
{
if (sd.IsGroup)
{
//sd.Notice5 = String.Format("{0} Teilnehmer", sd.CustomerCount);
hatGruppen = true;
}
}
}
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)
{
if (at.AbsenceReason.BillableMinutes.HasValue && at.AbsenceReason.BillableMinutes.Value > 0)
{
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++;
}
}
}
}
private void picSignature_BeforePrint(object sender, System.Drawing.Printing.PrintEventArgs e)
{
XRPictureBox xrBox = sender as XRPictureBox;
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)
{
Image returnImage = null;
MemoryStream ms = new System.IO.MemoryStream(byteArrayIn);
returnImage = Image.FromStream(ms);
return returnImage;
}
}
}

View File

@@ -0,0 +1,754 @@
<?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="xrRichText2.SerializableRtfString" xml:space="preserve">
<value>ewBcAHIAdABmADEAXABkAGUAZgBmADAAewBcAGYAbwBuAHQAdABiAGwAewBcAGYAMAAgAEMAYQBsAGkAYgByAGkAOwB9AHsAXABmADEAIABUAGkAbQBlAHMAIABOAGUAdwAgAFIAbwBtAGEAbgA7AH0AewBcAGYAMgAgAEEAcgBpAGEAbAA7AH0AfQB7AFwAYwBvAGwAbwByAHQAYgBsACAAOwBcAHIAZQBkADAAXABnAHIAZQBlAG4AMABcAGIAbAB1AGUAMAAgADsAXAByAGUAZAAwAFwAZwByAGUAZQBuADAAXABiAGwAdQBlADIANQA1ACAAOwB9AHsAXAAqAFwAZABlAGYAYwBoAHAAIABcAGYAMQBcAGYAcwAyADQAfQB7AFwAcwB0AHkAbABlAHMAaABlAGUAdAAgAHsAXABxAGwAXABmADEAXABmAHMAMgA0ACAATgBvAHIAbQBhAGwAOwB9AHsAXAAqAFwAYwBzADEAXABmADEAXABmAHMAMgA0AFwAYwBmADEAIABEAGUAZgBhAHUAbAB0ACAAUABhAHIAYQBnAHIAYQBwAGgAIABGAG8AbgB0ADsAfQB7AFwAKgBcAGMAcwAyAFwAcwBiAGEAcwBlAGQAbwBuADEAXABmADEAXABmAHMAMgA0AFwAYwBmADEAIABMAGkAbgBlACAATgB1AG0AYgBlAHIAOwB9AHsAXAAqAFwAYwBzADMAXAB1AGwAXABmADEAXABmAHMAMgA0AFwAYwBmADIAIABIAHkAcABlAHIAbABpAG4AawA7AH0AewBcACoAXAB0AHMANABcAHQAcwByAG8AdwBkAFwAZgAxAFwAZgBzADIANABcAHEAbABcAHQAcwBjAGUAbABsAHAAYQBkAGQAZgBsADMAXAB0AHMAYwBlAGwAbABwAGEAZABkAGwAMQAwADgAXAB0AHMAYwBlAGwAbABwAGEAZABkAGYAYgAzAFwAdABzAGMAZQBsAGwAcABhAGQAZABmAHIAMwBcAHQAcwBjAGUAbABsAHAAYQBkAGQAcgAxADAAOABcAHQAcwBjAGUAbABsAHAAYQBkAGQAZgB0ADMAXAB0AHMAdgBlAHIAdABhAGwAdABcAGMAbAB0AHgAbAByAHQAYgAgAE4AbwByAG0AYQBsACAAVABhAGIAbABlADsAfQB7AFwAKgBcAHQAcwA1AFwAdABzAHIAbwB3AGQAXABzAGIAYQBzAGUAZABvAG4ANABcAGYAMQBcAGYAcwAyADQAXABxAGwAXAB0AHIAYgByAGQAcgB0AFwAYgByAGQAcgBzAFwAYgByAGQAcgB3ADEAMABcAHQAcgBiAHIAZAByAGwAXABiAHIAZAByAHMAXABiAHIAZAByAHcAMQAwAFwAdAByAGIAcgBkAHIAYgBcAGIAcgBkAHIAcwBcAGIAcgBkAHIAdwAxADAAXAB0AHIAYgByAGQAcgByAFwAYgByAGQAcgBzAFwAYgByAGQAcgB3ADEAMABcAHQAcgBiAHIAZAByAGgAXABiAHIAZAByAHMAXABiAHIAZAByAHcAMQAwAFwAdAByAGIAcgBkAHIAdgBcAGIAcgBkAHIAcwBcAGIAcgBkAHIAdwAxADAAXAB0AHMAYwBlAGwAbABwAGEAZABkAGYAbAAzAFwAdABzAGMAZQBsAGwAcABhAGQAZABsADEAMAA4AFwAdABzAGMAZQBsAGwAcABhAGQAZABmAHIAMwBcAHQAcwBjAGUAbABsAHAAYQBkAGQAcgAxADAAOABcAHQAcwB2AGUAcgB0AGEAbAB0AFwAYwBsAHQAeABsAHIAdABiACAAVABhAGIAbABlACAAUwBpAG0AcABsAGUAIAAxADsAfQB9AHsAXAAqAFwAbABpAHMAdABvAHYAZQByAHIAaQBkAGUAdABhAGIAbABlAH0AXABuAG8AdQBpAGMAbwBtAHAAYQB0AFwAcwBwAGwAeQB0AHcAbgBpAG4AZQBcAGgAdABtAGEAdQB0AHMAcABcAHAAYQByAGQAXABwAGwAYQBpAG4AXABxAGwAewBcAGYAMgBcAGYAcwAyADAAXABjAGYAMQAgAEsAZQBpAG4AZQAgAH0AewBcAGwAYQBuAGcAMQAwADMAMQBcAGwAYQBuAGcAZgBlADEAMAAzADEAXAB1AGwAXABmADIAXABmAHMAMgAwAFwAYwBmADEAIABLAHIAYQBuAGsAZQBuAGgAYQB1AHMAYQB1AGYAZQBuAHQAaABhAGwAdABlAH0AXABsAGEAbgBnADEAMAAzADEAXABsAGEAbgBnAGYAZQAxADAAMwAxAFwAdQBsAFwAZgAyAFwAZgBzADIAMABcAGMAZgAxAFwAcABhAHIAXABwAGEAcgBkAFwAcABsAGEAaQBuAFwAcQBsAHsAXABsAGEAbgBnADEAMAAzADEAXABsAGEAbgBnAGYAZQAxADAAMwAxAFwAdQBsAFwAZgAyAFwAZgBzADIAMABcAGMAZgAxACAAYgBlAGsAYQBuAG4AdAAgAG8AZABlAHIAIAB9AFwAbABhAG4AZwAxADAAMwAxAFwAbABhAG4AZwBmAGUAMQAwADMAMQBcAHUAbABcAGYAMgBcAGYAcwAyADAAXABjAGYAMQBcAHAAYQByAFwAcABhAHIAZABcAHAAbABhAGkAbgBcAHEAbAB7AFwAbABhAG4AZwAxADAAMwAxAFwAbABhAG4AZwBmAGUAMQAwADMAMQBcAHUAbABcAGYAMgBcAGYAcwAyADAAXABjAGYAMQAgAGEAYgByAGUAYwBoAG4AdQBuAGcAcwByAGUAbABlAHYAYQBuAHQAfQB7AFwAbABhAG4AZwAxADAAMwAxAFwAbABhAG4AZwBmAGUAMQAwADMAMQBcAGYAMgBcAGYAcwAyADAAXABjAGYAMQAgACAAaQBtACAAQQBiAHIAZQBjAGgAbgB1AG4AZwBzAHoAZQBpAHQAcgBhAHUAbQB9AFwAbABhAG4AZwAxADAAMwAxAFwAbABhAG4AZwBmAGUAMQAwADMAMQBcAGYAMQBcAGYAcwAyADQAXABjAGYAMQBcAHAAYQByAH0A</value>
</data>
<data name="xrRichText1.SerializableRtfString" xml:space="preserve">
<value>ewBcAHIAdABmADEAXABkAGUAZgBmADAAewBcAGYAbwBuAHQAdABiAGwAewBcAGYAMAAgAEMAYQBsAGkAYgByAGkAOwB9AHsAXABmADEAIABUAGkAbQBlAHMAIABOAGUAdwAgAFIAbwBtAGEAbgA7AH0AewBcAGYAMgAgAEEAcgBpAGEAbAA7AH0AfQB7AFwAYwBvAGwAbwByAHQAYgBsACAAOwBcAHIAZQBkADAAXABnAHIAZQBlAG4AMABcAGIAbAB1AGUAMAAgADsAXAByAGUAZAAwAFwAZwByAGUAZQBuADAAXABiAGwAdQBlADIANQA1ACAAOwB9AHsAXAAqAFwAZABlAGYAYwBoAHAAIABcAGYAMQBcAGYAcwAyADQAfQB7AFwAcwB0AHkAbABlAHMAaABlAGUAdAAgAHsAXABxAGwAXABmADEAXABmAHMAMgA0ACAATgBvAHIAbQBhAGwAOwB9AHsAXAAqAFwAYwBzADEAXABmADEAXABmAHMAMgA0AFwAYwBmADEAIABEAGUAZgBhAHUAbAB0ACAAUABhAHIAYQBnAHIAYQBwAGgAIABGAG8AbgB0ADsAfQB7AFwAKgBcAGMAcwAyAFwAcwBiAGEAcwBlAGQAbwBuADEAXABmADEAXABmAHMAMgA0AFwAYwBmADEAIABMAGkAbgBlACAATgB1AG0AYgBlAHIAOwB9AHsAXAAqAFwAYwBzADMAXAB1AGwAXABmADEAXABmAHMAMgA0AFwAYwBmADIAIABIAHkAcABlAHIAbABpAG4AawA7AH0AewBcACoAXAB0AHMANABcAHQAcwByAG8AdwBkAFwAZgAxAFwAZgBzADIANABcAHEAbABcAHQAcwBjAGUAbABsAHAAYQBkAGQAZgBsADMAXAB0AHMAYwBlAGwAbABwAGEAZABkAGwAMQAwADgAXAB0AHMAYwBlAGwAbABwAGEAZABkAGYAYgAzAFwAdABzAGMAZQBsAGwAcABhAGQAZABmAHIAMwBcAHQAcwBjAGUAbABsAHAAYQBkAGQAcgAxADAAOABcAHQAcwBjAGUAbABsAHAAYQBkAGQAZgB0ADMAXAB0AHMAdgBlAHIAdABhAGwAdABcAGMAbAB0AHgAbAByAHQAYgAgAE4AbwByAG0AYQBsACAAVABhAGIAbABlADsAfQB7AFwAKgBcAHQAcwA1AFwAdABzAHIAbwB3AGQAXABzAGIAYQBzAGUAZABvAG4ANABcAGYAMQBcAGYAcwAyADQAXABxAGwAXAB0AHIAYgByAGQAcgB0AFwAYgByAGQAcgBzAFwAYgByAGQAcgB3ADEAMABcAHQAcgBiAHIAZAByAGwAXABiAHIAZAByAHMAXABiAHIAZAByAHcAMQAwAFwAdAByAGIAcgBkAHIAYgBcAGIAcgBkAHIAcwBcAGIAcgBkAHIAdwAxADAAXAB0AHIAYgByAGQAcgByAFwAYgByAGQAcgBzAFwAYgByAGQAcgB3ADEAMABcAHQAcgBiAHIAZAByAGgAXABiAHIAZAByAHMAXABiAHIAZAByAHcAMQAwAFwAdAByAGIAcgBkAHIAdgBcAGIAcgBkAHIAcwBcAGIAcgBkAHIAdwAxADAAXAB0AHMAYwBlAGwAbABwAGEAZABkAGYAbAAzAFwAdABzAGMAZQBsAGwAcABhAGQAZABsADEAMAA4AFwAdABzAGMAZQBsAGwAcABhAGQAZABmAHIAMwBcAHQAcwBjAGUAbABsAHAAYQBkAGQAcgAxADAAOABcAHQAcwB2AGUAcgB0AGEAbAB0AFwAYwBsAHQAeABsAHIAdABiACAAVABhAGIAbABlACAAUwBpAG0AcABsAGUAIAAxADsAfQB9AHsAXAAqAFwAbABpAHMAdABvAHYAZQByAHIAaQBkAGUAdABhAGIAbABlAH0AXABuAG8AdQBpAGMAbwBtAHAAYQB0AFwAcwBwAGwAeQB0AHcAbgBpAG4AZQBcAGgAdABtAGEAdQB0AHMAcABcAHAAYQByAGQAXABwAGwAYQBpAG4AXABxAGwAewBcAGYAMgBcAGYAcwAyADAAXABjAGYAMQAgAEsAZQBpAG4AZQAgAH0AewBcAHUAbABcAGYAMgBcAGYAcwAyADAAXABjAGYAMQAgAEcAcgB1AHAAcABlAG4AYQBuAGcAZQBiAG8AdABlAH0AewBcAGYAMgBcAGYAcwAyADAAXABjAGYAMQAgACAAaQBtACAAQQBiAHIAZQBjAGgAbgB1AG4AZwBzAHoAZQBpAHQAcgBhAHUAbQB9AFwAZgAxAFwAZgBzADIANABcAGMAZgAxAFwAcABhAHIAfQA=</value>
</data>
<metadata name="bindingSource1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>21, 17</value>
</metadata>
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="xrPictureBox1.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
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
l/fw/wc7p1ZKZGQQMgAAAABJRU5ErkJggg==
</value>
</data>
</root>

View File

@@ -0,0 +1,15 @@
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="Castle.Core" publicKeyToken="407dd0808d44fbdc" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-2.5.1.0" newVersion="2.5.1.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Buffers" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.0.2.0" newVersion="4.0.2.0" />
</dependentAssembly>
</assemblyBinding>
</runtime>
</configuration>