This commit is contained in:
Christian
2019-09-17 17:44:57 +02:00
parent 1e5579a338
commit a896a7bfec
83 changed files with 10622 additions and 2812 deletions

6
.gitignore vendored
View File

@@ -379,3 +379,9 @@
/ReportImp/KirschbaumManz/obj/Release
/ReportImp/VkmRietberg/obj/Debug
/ReportImp/VkmRietberg/obj/Release
/ReportImp/Bussmannshof/bin/Release
/ReportImp/Bussmannshof/obj/Debug
/ReportImp/Bussmannshof/obj/Release
/ReportImp/KollegiumEv/bin/Debug
/ReportImp/KollegiumEv/obj/Debug
/ReportImp/KollegiumEv/obj/Release

View File

@@ -39,16 +39,16 @@
<UpdatePeriodically>false</UpdatePeriodically>
<UpdateRequired>true</UpdateRequired>
<MapFileExtensions>false</MapFileExtensions>
<InstallUrl>http://app.beyondsoft.de/lha/</InstallUrl>
<InstallUrl>http://app.beyondsoft.de/sbdtest/</InstallUrl>
<TargetCulture>de-DE</TargetCulture>
<ProductName>BeWoPlaner</ProductName>
<PublisherName>beyondSoft GmbH</PublisherName>
<MinimumRequiredVersion>2.0.1.164</MinimumRequiredVersion>
<MinimumRequiredVersion>2.0.1.169</MinimumRequiredVersion>
<CreateWebPageOnPublish>true</CreateWebPageOnPublish>
<WebPage>publish.htm</WebPage>
<OpenBrowserOnPublish>false</OpenBrowserOnPublish>
<TrustUrlParameters>true</TrustUrlParameters>
<ApplicationRevision>165</ApplicationRevision>
<ApplicationRevision>170</ApplicationRevision>
<ApplicationVersion>2.0.1.%2a</ApplicationVersion>
<UseApplicationTrust>false</UseApplicationTrust>
<CreateDesktopShortcut>true</CreateDesktopShortcut>
@@ -120,6 +120,7 @@
<Reference Include="DevExpress.Xpf.Themes.LightGray.v17.1, Version=17.1.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
<Reference Include="DevExpress.Xpf.Themes.Office2007Black.v17.1, Version=17.1.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
<Reference Include="DevExpress.Xpf.Themes.Office2010Black.v17.1, Version=17.1.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
<Reference Include="DevExpress.Xpf.Themes.Office2013.v17.1, Version=17.1.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
<Reference Include="DevExpress.Xpf.Themes.Office2016White.v17.1, Version=17.1.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
<Reference Include="DevExpress.XtraBars.v17.1, Version=17.1.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
<Reference Include="DevExpress.XtraEditors.v17.1, Version=17.1.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
@@ -2489,6 +2490,16 @@
<IncludeHash>True</IncludeHash>
<FileType>Assembly</FileType>
</PublishFile>
<PublishFile Include="DevExpress.Xpf.Themes.Office2013.v17.1">
<Visible>False</Visible>
<Group>
</Group>
<TargetPath>
</TargetPath>
<PublishState>Include</PublishState>
<IncludeHash>True</IncludeHash>
<FileType>Assembly</FileType>
</PublishFile>
<PublishFile Include="DevExpress.Xpf.Themes.Office2016White.v17.1">
<Visible>False</Visible>
<Group>

View File

@@ -2,7 +2,7 @@
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<PublishUrlHistory>D:\Projects\beyondsoft\BeWoPlaner\Publish\|D:\Projects\beyondsoft\BeWoPlaner\PublishTest\|D:\Projects\beyondsoft\BeWoPlaner\PublishDev\|D:\Projects\beyondsoft\BeWoPlaner\Publish45\|C:\Projects\beyondsoft\BeWoPlaner\Publish\</PublishUrlHistory>
<InstallUrlHistory>http://app.beyondsoft.de/sbd/|http://app.beyondsoft.de/lha/|http://fortis-bewoplaner.fortis-ev.org.local/|http://app.beyondsoft.de/|http://app.beyondsoft.de/test/</InstallUrlHistory>
<InstallUrlHistory>http://app.beyondsoft.de/sbdtest/|http://app.beyondsoft.de/sbd/|http://app.beyondsoft.de/lha/|http://fortis-bewoplaner.fortis-ev.org.local/|http://app.beyondsoft.de/</InstallUrlHistory>
<SupportUrlHistory />
<UpdateUrlHistory />
<BootstrapperUrlHistory />

View File

@@ -410,12 +410,15 @@
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<RadioButton Grid.Column="0" Margin="3" VerticalAlignment="Center" HorizontalAlignment="Left"
IsChecked="{Binding Path=IsMale, UpdateSourceTrigger=PropertyChanged}" Content="männlich" />
<RadioButton Grid.Column="1" Margin="3" VerticalAlignment="Center" HorizontalAlignment="Left"
IsChecked="{Binding Path=IsFemale, UpdateSourceTrigger=PropertyChanged}" Content="weiblich" />
<RadioButton Grid.Column="2" Margin="3" VerticalAlignment="Center" HorizontalAlignment="Left"
IsChecked="{Binding Path=IsDivers, UpdateSourceTrigger=PropertyChanged}" Content="divers" />
</Grid>
<Label Grid.Column="0" Grid.Row="5" Content="Staatsangehörigkeit"/>

View File

@@ -198,10 +198,12 @@
<Grid Grid.Column="1" Grid.Row="5">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" SharedSizeGroup="RB1" />
<ColumnDefinition Width="Auto" SharedSizeGroup="RB1" />
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<RadioButton Grid.Column="0" Margin="3" VerticalAlignment="Center" HorizontalAlignment="Left" IsChecked="{Binding Path=IsMale, UpdateSourceTrigger=PropertyChanged}">männlich</RadioButton>
<RadioButton Grid.Column="1" Margin="3" VerticalAlignment="Center" HorizontalAlignment="Left" IsChecked="{Binding Path=IsFemale, UpdateSourceTrigger=PropertyChanged}">weiblich</RadioButton>
<RadioButton Grid.Column="2" Margin="3" VerticalAlignment="Center" HorizontalAlignment="Left" IsChecked="{Binding Path=IsDivers, UpdateSourceTrigger=PropertyChanged}">divers</RadioButton>
</Grid>
<uc:NullItemComboBox Margin="3" Grid.Column="1" Grid.Row="6" Height="23" ItemsSource="{x:Static core:EnumTranslations.FamilyStatusTranslations}" SelectedValue="{Binding Path=FamilyStatus}" DisplayMemberPath="Value" SelectedValuePath="Key" Style="{DynamicResource {x:Type uc:NullItemComboBox}}" />
<uc:NullItemComboBox x:Name="comboBox_Nationalitaet" Grid.Column="1" Grid.Row="7" Margin="3" Height="23" ItemsSource="{Binding Path=Nationalitaeten, UpdateSourceTrigger=PropertyChanged}" SelectedValue="{Binding Path=Nationalitaet, Mode=TwoWay}" MinWidth="189" HorizontalAlignment="Left"/>

View File

@@ -123,12 +123,15 @@
<Grid Grid.Column="1" Grid.Row="4" Height="23" Margin="0,3,0,3">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" SharedSizeGroup="RB1" />
<ColumnDefinition Width="Auto" SharedSizeGroup="RB1" />
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<RadioButton Grid.Column="0" Margin="3" VerticalAlignment="Center" HorizontalAlignment="Left"
IsChecked="{Binding Path=IsMale, UpdateSourceTrigger=PropertyChanged}" Content="männlich" />
<RadioButton Grid.Column="1" Margin="3" VerticalAlignment="Center" HorizontalAlignment="Left"
IsChecked="{Binding Path=IsFemale, UpdateSourceTrigger=PropertyChanged}" Content="weiblich" />
<RadioButton Grid.Column="2" Margin="3" VerticalAlignment="Center" HorizontalAlignment="Left"
IsChecked="{Binding Path=IsDivers, UpdateSourceTrigger=PropertyChanged}" Content="divers" />
</Grid>
<uc:NullItemComboBox Grid.Column="1" Grid.Row="5" Margin="3" Height="23"
ItemsSource="{x:Static core:EnumTranslations.FamilyStatusTranslations}"

View File

@@ -122,37 +122,36 @@ namespace BeWo.View.Detail.Report
etd.TimeSheetStatusItem.MailSubjectTemplate = txtSubject.Text;
etd.TimeSheetStatusItem.MailMessageTemplate = txtContent.Text;
ServiceFacade.DoReportServiceAsync(m => m.SendTimeSheetMail(etd.TimeSheetStatusItem, true),
(result) =>
{
this.Dispatch(delegate
{
if (String.IsNullOrWhiteSpace(result))
{
etd.Status = "Mail erfolgreich versendet.";
etd.IsChecked = false;
MailSendingSuccessful = true;
//CB ### Generated
//ServiceFacade.DoReportServiceAsync(m => m.SendTimeSheetMail(etd.TimeSheetStatusItem, true),
// (result) =>
// {
// this.Dispatch(delegate
// {
// if (String.IsNullOrWhiteSpace(result))
// {
// etd.Status = "Mail erfolgreich versendet.";
// etd.IsChecked = false;
// MailSendingSuccessful = true;
}
else
{
if (result.Contains("Fehler"))
{
etd.Status = result;
}
else
{
etd.Status = "Beim Versenden ist ein Fehler aufgetreten! " + result;
}
}
//GridControlTimesheet.RefreshData();
SendNextMail();
});
// }
// else
// {
// if (result.Contains("Fehler"))
// {
// etd.Status = result;
// }
// else
// {
// etd.Status = "Beim Versenden ist ein Fehler aufgetreten! " + result;
// }
// }
// //GridControlTimesheet.RefreshData();
// SendNextMail();
// });
// });
}
});
}
private void UpdateStatusText()
{

View File

@@ -14,7 +14,7 @@
Height="Auto" Width="Auto" HorizontalAlignment="Stretch"
VerticalAlignment="Stretch" Focusable="True">
<Grid>
<GroupBox Header="Flexibler Bericht" Style="{StaticResource ObjectEditGroupBox}">
<GroupBox Header="Pivot Tabelle" Style="{StaticResource ObjectEditGroupBox}">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*" />

View File

@@ -24,12 +24,13 @@
<GroupBox Grid.ColumnSpan="2" Style="{StaticResource ObjectEditGroupBox}">
<TreeView x:Name="TreeView" Margin="3" Padding="0 5 10 5"
ItemTemplate="{DynamicResource TreeItemTemplate}"
ItemContainerStyle="{DynamicResource TreeViewStyle}"
>
<!--ItemContainerStyle="{DynamicResource TreeViewStyle}"-->
<TreeView.Resources>
<!--<Style x:Key="TreeViewStyle" TargetType="TreeViewItem">
<Style x:Key="TreeViewStyle" TargetType="TreeViewItem">
<Setter Property="IsExpanded" Value="{Binding Path=IsExpanded, Mode=TwoWay}" />
</Style>-->
</Style>
<HierarchicalDataTemplate x:Key="TreeItemTemplate" DataType="{x:Type clientPartials:SupportConceptGoalDC}" ItemsSource="{Binding Path=Children}">
<Grid>
<Grid.ColumnDefinitions>

View File

@@ -27,19 +27,11 @@ namespace BeWo.View.Detail.Report
{
public partial class IcfImportControl
{
#region Constant Fields
#endregion
#region Fields
public event Action ButtonImportClicked;
private SupportConceptGoalDC _TreeViewGoalItem;
#endregion
#region Constructors
public IcfImportControl(List<ValueListEntryDC> icfs)
{
InitializeComponent();
@@ -48,31 +40,12 @@ namespace BeWo.View.Detail.Report
InitTreeView(icfs);
}
#endregion
#region Finalizers
#endregion
#region Delegates
#endregion
#region Events
private void ButtonImport_Click(object sender, RoutedEventArgs e)
{
ButtonImportClicked?.Invoke();
}
#endregion
#region InterfacesImplementations
#endregion
#region Properties
public SupportConceptGoalDC TreeViewGoalItem
{
@@ -83,14 +56,6 @@ namespace BeWo.View.Detail.Report
TreeView.ItemsSource = new List<SupportConceptGoalDC>() { value };
}
}
#endregion
#region Indexers
#endregion
#region Methods
private static SupportConceptGoalDC GetSupportConceptGoal(SupportConceptGoalDC parent, ValueListEntryDC actual, List<ValueListEntryDC> allIcfs)
{
@@ -100,7 +65,10 @@ namespace BeWo.View.Detail.Report
GoalEntryDC = actual,
ParentGoal = parent
};
if (parent == null)
{
goalItem.IsExpanded = true;
}
// Sucht nach Einträgen, wo die ParentID gleich der acutal.Oid ist
var remaining = allIcfs.Where(x =>
x.ParentOid == actual.ValueListEntryOid).ToList();
@@ -120,15 +88,6 @@ namespace BeWo.View.Detail.Report
TreeViewGoalItem = GetSupportConceptGoal(null, icfs.Find(x => x.ParentOid == -1), icfs);
}
#endregion
#region Structs
#endregion
#region Classes
#endregion
}
}

View File

@@ -44,6 +44,7 @@ namespace BeWo.View.Detail.Report
private CompactCustomerDC lastSelectedCustomer;
private CompactSupportConceptDC lastSelectedSupportConcept;
private CompactTeamDC lastSelectedTeam;
private CompactOrganisationDC lastSelectedOrganisation;
private String _UploadFileName;
@@ -380,6 +381,49 @@ namespace BeWo.View.Detail.Report
sp.Children.Add(peTeam);
sp.Children.Add(popupTeam);
break;
case QueryParameterType.Organisation:
var peOrg = new PopUpEdit
{
IsReadOnly = true,
Width = 250,
Margin = new Thickness(3),
DeleteButtonVisibility = Visibility.Visible
};
peOrg.DeleteClick += (s, e) =>
{
peOrg.Text = "";
lastSelectedOrganisation = null;
};
if (lastSelectedOrganisation != null)
{
peOrg.Text = lastSelectedOrganisation.ToString();
}
var popupOrg = new Popup();
popupOrg.StaysOpen = false;
popupOrg.Width = 370;
popupOrg.Height = 250;
popupOrg.Placement = PlacementMode.MousePoint;
var osv = new OrganisationSearchView();
osv.ItemSelected += (s, e) =>
{
popupOrg.IsOpen = false;
peOrg.Focus();
var newOrg = e.Data;
peOrg.Text = newOrg.Name;
lastSelectedOrganisation = newOrg;
};
popupOrg.Child = osv;
parameterUIElements.Add(item.Name + "_" + item.ParamType + "_1", osv);
peOrg.PopUpClick += (s, e) => { popupOrg.IsOpen = true; };
sp.Children.Add(peOrg);
sp.Children.Add(popupOrg);
break;
case QueryParameterType.Month:
ComboBox monthCombo = CreateMonthCombo();
monthCombo.Margin = new Thickness(3);
@@ -515,6 +559,13 @@ namespace BeWo.View.Detail.Report
param.Value = lastSelectedTeam.TeamOid;
}
break;
case QueryParameterType.Organisation:
if (lastSelectedOrganisation != null)
{
param.Value = lastSelectedOrganisation.OrganisationOid;
}
break;
case QueryParameterType.Month:
if (parameterUIElements.ContainsKey(item.Name + "_" + item.ParamType + "_1") &&

View File

@@ -122,25 +122,24 @@ namespace BeWo.View.Detail.Report
private void RefreshTimesheetStatusList(DateTime monat)
{
//CB ### Generated
//ServiceFacade.DoCustomerServiceAsync(
// s => s.GetTimesheetStatusList(monat),
// r =>
// {
// List<TimeSheetStatusItemDC> list = r;
// CreateEmployeeTimesheetDetails(list);
ServiceFacade.DoCustomerServiceAsync(
s => s.GetTimesheetStatusList(monat),
r =>
{
List<TimeSheetStatusItemDC> list = r;
// this.Dispatch(delegate
// {
CreateEmployeeTimesheetDetails(list);
// GridControlTimesheet.RefreshData();
// GridControlTimesheet.RefreshUI();
this.Dispatch(delegate
{
// UpdateStatusText();
// });
// });
GridControlTimesheet.RefreshData();
GridControlTimesheet.RefreshUI();
UpdateStatusText();
});
});
}
private void CreateEmployeeTimesheetDetails(List<TimeSheetStatusItemDC> list)
@@ -252,20 +251,19 @@ namespace BeWo.View.Detail.Report
timeSheetStatusItem.MailSubjectTemplate = subject;
timeSheetStatusItem.MailMessageTemplate = mailbody;
//CB ### Generated
//var result = ServiceFacade.DoReportServiceSync(m => m.SendTimeSheetMail(timeSheetStatusItem, false));
var result = ServiceFacade.DoReportServiceSync(m => m.SendTimeSheetMail(timeSheetStatusItem, false));
//if (result == null || String.IsNullOrWhiteSpace(result))
//{
// window.Close();
// MessageBox.Show("Die E-Mail wurde erfolgreich versendet.", "E-Mail senden", MessageBoxButton.OK,
// MessageBoxImage.Information);
//}
//else
//{
// MessageBox.Show("Die E-Mail konnte leider nicht gesendet werden.\n\n" + result, "E-Mail senden", MessageBoxButton.OK,
// MessageBoxImage.Error);
//}
if (result == null || String.IsNullOrWhiteSpace(result))
{
window.Close();
MessageBox.Show("Die E-Mail wurde erfolgreich versendet.", "E-Mail senden", MessageBoxButton.OK,
MessageBoxImage.Information);
}
else
{
MessageBox.Show("Die E-Mail konnte leider nicht gesendet werden.\n\n" + result, "E-Mail senden", MessageBoxButton.OK,
MessageBoxImage.Error);
}
}
@@ -392,24 +390,22 @@ namespace BeWo.View.Detail.Report
List<long> employeeOids = details.Select(d => d.Employee.EmployeeOid).ToList();
//CB ### Generated
//ServiceFacade.DoOperationsServiceAsync(
// s => s.CreateDefaultServiceRecords(month, employeeOids),
// result =>
// {
// this.Dispatch(delegate
// {
// if (result == null || !result.Contains("Fehler"))
// {
// MessageBox.Show(result, "BeWoPlaner", MessageBoxButton.OK, MessageBoxImage.Information);
// }
// else
// {
// MessageBox.Show(result, "Fehler", MessageBoxButton.OK, MessageBoxImage.Error);
// }
// });
// });
ServiceFacade.DoOperationsServiceAsync(
s => s.CreateDefaultServiceRecords(month, employeeOids),
result =>
{
this.Dispatch(delegate
{
if (result == null || !result.Contains("Fehler"))
{
MessageBox.Show(result, "BeWoPlaner", MessageBoxButton.OK, MessageBoxImage.Information);
}
else
{
MessageBox.Show(result, "Fehler", MessageBoxButton.OK, MessageBoxImage.Error);
}
});
});
}
private IList<EmployeeTimesheetDetails> GetVisibleTimesheetDetails()

View File

@@ -53,35 +53,41 @@
<dxa:AccordionItem Header="{markup:Translate Behinderungskategorien}" Name="TabitemDisablityTypes" Selected="Tabitem_Selected" Foreground="Black"/>
<dxa:AccordionItem Header="{markup:Translate Betreuungsarten}" Name="TabitemCustomerCareTypes" Selected="Tabitem_Selected" Foreground="Black"/>
<dxa:AccordionItem Header="{markup:Translate Gründe für Beendigung der Betreuung}" Name="TabitemTerminationReasons" Selected="Tabitem_Selected" Foreground="Black"/>
<dxa:AccordionItem Header="{markup:Translate Vermittlung}" Name="TabitemPlacementObjectives" Selected="Tabitem_Selected" Foreground="Black"/>
<dxa:AccordionItem Header="{markup:Translate Medikamentenarten}" Name="TabitemMedikamentenarten" Selected="Tabitem_Selected" Foreground="Black"/>
<dxa:AccordionItem Header="{markup:Translate Rollen des Umfeldes}" Name="TabitemEnvironmentRoles" Selected="Tabitem_Selected" Foreground="Black"/>
<dxa:AccordionItem Header="{markup:Translate Vermittlung}" Name="TabitemPlacementObjectives" Selected="Tabitem_Selected" Foreground="Black"/>
</dxa:AccordionItem>
<dxa:AccordionItem Header="{markup:Translate Mitarbeiter}" Foreground="{StaticResource TabItemTextBrush}">
<dxa:AccordionItem Header="{markup:Translate Abschlüsse der Mitarbeiter}" Name="TabitemQualificationTypes" Selected="Tabitem_Selected" Foreground="Black"/>
<dxa:AccordionItem Header="{markup:Translate Schwerpunkte des Personals}" Name="TabitemActivityFocus" Selected="Tabitem_Selected" Foreground="Black"/>
<dxa:AccordionItem Header="{markup:Translate Qualifikationsbedarf}" Name="TabitemQualifikationsbedarf" Selected="Tabitem_Selected" Foreground="Black"/>
<dxa:AccordionItem Header="{markup:Translate Beschäftigungsarten}" Name="TabitemEmploymentTypes" Selected="Tabitem_Selected" Foreground="Black"/>
<dxa:AccordionItem Header="{markup:Translate Qualifikationsbedarf}" Name="TabitemQualifikationsbedarf" Selected="Tabitem_Selected" Foreground="Black"/>
<dxa:AccordionItem Header="{markup:Translate Rollen des Personals}" Name="TabitemRoles" Selected="Tabitem_Selected" Foreground="Black"/>
<dxa:AccordionItem Header="{markup:Translate Schwerpunkte des Personals}" Name="TabitemActivityFocus" Selected="Tabitem_Selected" Foreground="Black"/>
<dxa:AccordionItem Header="{markup:Translate Überstunden Auszahlungsarten}" Name="TabitemAuszahlungsarten" Selected="Tabitem_Selected" Foreground="Black"/>
<dxa:AccordionItem Header="{markup:Translate Vertragsarten}" Name="TabitemContracttypes" Selected="Tabitem_Selected" Foreground="Black"/>
</dxa:AccordionItem>
<dxa:AccordionItem Header="{markup:Translate Personen}" Foreground="{StaticResource TabItemTextBrush}">
<dxa:AccordionItem Header="{markup:Translate Nationalitäten}" Name="TabitemNationality" Selected="Tabitem_Selected" Foreground="Black"/>
<dxa:AccordionItem Header="{markup:Translate Aufenthaltsstatus}" Name="TabitemAufenthaltsstatus" Selected="Tabitem_Selected" Foreground="Black"/>
<dxa:AccordionItem Header="{markup:Translate Titel}" Name="TabitemTitles" Selected="Tabitem_Selected" Foreground="Black"/>
<dxa:AccordionItem Header="{markup:Translate Funktionen}" Name="TabitemFunctions" Selected="Tabitem_Selected" Foreground="Black"/>
<dxa:AccordionItem Header="{markup:Translate Nationalitäten}" Name="TabitemNationality" Selected="Tabitem_Selected" Foreground="Black"/>
<dxa:AccordionItem Header="{markup:Translate Titel}" Name="TabitemTitles" Selected="Tabitem_Selected" Foreground="Black"/>
</dxa:AccordionItem>
<dxa:AccordionItem Header="{markup:Translate Zeiterfassung}" Foreground="{StaticResource TabItemTextBrush}">
<dxa:AccordionItem Header="{markup:Translate Leistungskategorien}" Name="TabitemServiceCategories" Selected="Tabitem_Selected" Foreground="Black"/>
<dxa:AccordionItem Header="{markup:Translate Leistungen}" Name="TabitemServiceDescriptions" Selected="Tabitem_Selected" Foreground="Black"/>
<dxa:AccordionItem Header="{markup:Translate Textbausteine}" Name="TabitemTextbausteine" Selected="Tabitem_Selected" Foreground="Black"/>
<dxa:AccordionItem Header="{markup:Translate Angebote}" Name="TabitemAdditionalServiceRegions" Selected="Tabitem_Selected" Foreground="Black"/>
<dxa:AccordionItem Header="{markup:Translate Bereiche}" Name="TabitemAdditionalServices" Selected="Tabitem_Selected" Foreground="Black"/>
<dxa:AccordionItem Header="{markup:Translate Dokumentationsfelder}" Name="TabitemDokumenttype" Selected="Tabitem_Selected" Foreground="Black"/>
<dxa:AccordionItem Header="{markup:Translate Ziele und Maßnahmen}" Name="TabitemGoalcategories" Selected="Tabitem_Selected" Foreground="Black"/>
<dxa:AccordionItem Header="{markup:Translate Leistungskategorien}" Name="TabitemServiceCategories" Selected="Tabitem_Selected" Foreground="Black"/>
<dxa:AccordionItem Header="{markup:Translate Leistungen}" Name="TabitemServiceDescriptions" Selected="Tabitem_Selected" Foreground="Black"/>
<dxa:AccordionItem Header="{markup:Translate Punktebogen Werte}" Name="TabitemAssessmentSheetValues" Selected="Tabitem_Selected" Foreground="Black"/>
<dxa:AccordionItem Header="{markup:Translate Punktebogen Kategorien}" Name="TabitemAssessmentSheetCategories" Selected="Tabitem_Selected" Foreground="Black"/>
<dxa:AccordionItem Header="{markup:Translate Bereiche}" Name="TabitemAdditionalServices" Selected="Tabitem_Selected" Foreground="Black"/>
<dxa:AccordionItem Header="{markup:Translate Angebote}" Name="TabitemAdditionalServiceRegions" Selected="Tabitem_Selected" Foreground="Black"/>
<dxa:AccordionItem Header="{markup:Translate Textbausteine}" Name="TabitemTextbausteine" Selected="Tabitem_Selected" Foreground="Black"/>
<dxa:AccordionItem Header="{markup:Translate Ziele und Maßnahmen}" Name="TabitemGoalcategories" Selected="Tabitem_Selected" Foreground="Black"/>
</dxa:AccordionItem>
@@ -90,13 +96,13 @@
<dxa:AccordionItem Header="{markup:Translate Ressourcenkategorien}" Name="TabitemResourceCategories" Selected="Tabitem_Selected" Foreground="Black"/>
<dxa:AccordionItem Header="{markup:Translate Ressource}" Name="TabitemResources" Selected="Tabitem_Selected" Foreground="Black"/>
</dxa:AccordionItem>
<dxa:AccordionItem Header="Ungeordnet" Foreground="{StaticResource TabItemTextBrush}">
<dxa:AccordionItem Header="{markup:Translate Notizenkategorie}" Name="TabitemNotizenkategorie" Selected="Tabitem_Selected" Foreground="Black"/>
<dxa:AccordionItem Header="{markup:Translate Abwesenheitskategorien}" Name="TabitemAbsenceCategories" Selected="Tabitem_Selected" Foreground="Black"/>
<dxa:AccordionItem Header="{markup:Translate Finanzkategorien}" Name="TabitemFinazCategories" Selected="Tabitem_Selected" Foreground="Black"/>
<dxa:AccordionItem Header="{markup:Translate Schulbegleitender Dienst}" Name="TabitemSbd" Selected="Tabitem_Selected" Foreground="Black"/>
<dxa:AccordionItem Header="{markup:Translate Vertragsarten}" Name="TabitemContracttypes" Selected="Tabitem_Selected" Foreground="Black"/>
<dxa:AccordionItem Header="{markup:Translate Budgets}" Name="TabitemBudgets" Selected="Tabitem_Selected" Foreground="Black"/>
<dxa:AccordionItem Header="Sonstiges" Foreground="{StaticResource TabItemTextBrush}">
<dxa:AccordionItem Header="{markup:Translate Abwesenheitskategorien}" Name="TabitemAbsenceCategories" Selected="Tabitem_Selected" Foreground="Black"/>
<dxa:AccordionItem Header="{markup:Translate Budgets}" Name="TabitemBudgets" Selected="Tabitem_Selected" Foreground="Black"/>
<dxa:AccordionItem Header="{markup:Translate Finanzkategorien}" Name="TabitemFinazCategories" Selected="Tabitem_Selected" Foreground="Black"/>
<dxa:AccordionItem Header="{markup:Translate Notizenkategorie}" Name="TabitemNotizenkategorie" Selected="Tabitem_Selected" Foreground="Black"/>
<dxa:AccordionItem Header="{markup:Translate Schulbegleitender Dienst}" Name="TabitemSbd" Selected="Tabitem_Selected" Foreground="Black"/>
</dxa:AccordionItem>
</dxa:AccordionControl>
</Border>

View File

@@ -43,7 +43,7 @@
<TabItem Header="{markup:Translate Quittierungsbelege}" Name="tabitem_serviceOverview" Selector.Selected="tabitem_serviceOverview_Selected" />
<TabItem Header="{markup:Translate Stundenzettel}" Name="tabitem_stundenzettelOverview" Selector.Selected="tabitem_stundenzettelOverview_Selected" />
<TabItem Header="{markup:Translate Neuer sehr guter Bericht}" Name="tabitem_flexibleReport" Selector.Selected="tabitem_flexibleReport_Selected" />
<TabItem Header="{markup:Translate Pivot Tabelle}" Name="tabitem_flexibleReport" Selector.Selected="tabitem_flexibleReport_Selected" Visibility="Collapsed"/>
<!--<TabItem Header="Spitzabrechnung" Name="tabitem_settlement" Selector.Selected="tabitem_settlement_Selected"/>-->

View File

@@ -59,6 +59,7 @@ namespace BeWo.ViewModel
public static string PropertyName_IsAttended = "IsAttended";
public static string PropertyName_IsFemale = "IsFemale";
public static string PropertyName_IsMale = "IsMale";
public static string PropertyName_IsDivers = "IsDivers";
public static string PropertyName_LastName = "LastName";
public static string PropertyName_Medication = "Medication";
public static string PropertyName_Environment = "Environment";
@@ -155,7 +156,8 @@ namespace BeWo.ViewModel
private bool _IsAttended;
private bool _IsFemale;
private bool _IsMale;
private CompactOrganisationDC _Jugendamt;
private bool _IsDivers;
private CompactOrganisationDC _Jugendamt;
private string _Kindesmutter;
private string _Kindesvater;
private string _LastName;
@@ -821,12 +823,14 @@ namespace BeWo.ViewModel
{
_IsFemale = value;
_IsMale = !value;
_IsDivers = !value;
StoreDirtyInformation((DataContract.Sex == Sex.Female) != value, "sex");
StoreDirtyInformation((DataContract.Sex == Sex.Female) != value, "sex");
FirePropertyChanged(PropertyName_IsFemale);
FirePropertyChanged(PropertyName_IsMale);
}
FirePropertyChanged(PropertyName_IsDivers);
}
}
}
@@ -840,16 +844,39 @@ namespace BeWo.ViewModel
{
_IsMale = value;
_IsFemale = !value;
_IsDivers = !value;
StoreDirtyInformation((DataContract.Sex == Sex.Male) != value, "sex");
FirePropertyChanged(PropertyName_IsFemale);
FirePropertyChanged(PropertyName_IsMale);
}
FirePropertyChanged(PropertyName_IsDivers);
}
}
}
[Validation(ValidationRule = ValidationRules.NotNullOrStringEmpty)]
public bool IsDivers
{
get { return _IsDivers; }
set
{
if (_IsDivers != value)
{
_IsDivers = value;
_IsMale = !value;
_IsFemale = !value;
StoreDirtyInformation((DataContract.Sex == Sex.Divers) != value, "sex");
FirePropertyChanged(PropertyName_IsFemale);
FirePropertyChanged(PropertyName_IsMale);
FirePropertyChanged(PropertyName_IsDivers);
}
}
}
[Validation(ValidationRule = ValidationRules.NotNullOrStringEmpty)]
public string LastName
{
get { return _LastName; }
@@ -1769,6 +1796,7 @@ namespace BeWo.ViewModel
_IsMigrant = pDataContract.IsMigrant;
_IsMale = pDataContract.Sex == Sex.Male;
_IsFemale = pDataContract.Sex == Sex.Female;
_IsDivers = pDataContract.Sex == Sex.Divers;
_IsAdvised = pDataContract.IsAdvisedOrAttended == null || pDataContract.IsAdvisedOrAttended.Value;
_IsAttended = !IsAdvised;
_DebitorNumber = pDataContract.DebitorNumber;
@@ -1962,7 +1990,12 @@ namespace BeWo.ViewModel
pDataContract.Sex = Sex.Female;
}
pDataContract.RelatedEmployees = _EmployeeRelations.CopyToDCList(doCommit);
if (_IsDivers)
{
pDataContract.Sex = Sex.Divers;
}
pDataContract.RelatedEmployees = _EmployeeRelations.CopyToDCList(doCommit);
pDataContract.RelatedTeams = _TeamRelations.CopyToDCList(doCommit);
pDataContract.EnvironmentPersons = new List<CustomerPersonRelationDC>();

View File

@@ -36,7 +36,8 @@ namespace BeWo.ViewModel
public static string PropertyName_FamilyStatus = "FamilyStatus";
public static string PropertyName_Fax = "Fax";
public static string PropertyName_Female = "IsFemale";
public static string PropertyName_FirstName = "FirstName";
public static string PropertyName_IsDivers = "IsDivers";
public static string PropertyName_FirstName = "FirstName";
public static string PropertyName_Focuses = "Focuses";
public static string PropertyName_Gender = "Gender";
public static string PropertyName_HealthInsurance = "HealthInsurance";
@@ -109,7 +110,8 @@ namespace BeWo.ViewModel
private bool _IsArchived;
private bool _IsFemale;
private bool _IsMale;
private bool _IsQualified = true;
private bool _IsDivers;
private bool _IsQualified = true;
private string _LastName;
private string _MobilePhone;
private string _Notice2;
@@ -639,45 +641,71 @@ namespace BeWo.ViewModel
// HACK: Bug bei den RadioButtons, geben false nicht weiter
// TODO nochmal angucken wenn mehr als zwei Optionen, dann in listbox und an selected item binden
// http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=2146568&SiteID=1
public bool IsFemale
{
get { return _IsFemale; }
public bool IsFemale
{
get { return _IsFemale; }
set
{
if (_IsFemale != value)
{
_IsFemale = value;
_IsMale = !value;
set
{
if (_IsFemale != value)
{
_IsFemale = value;
_IsMale = !value;
_IsDivers = !value;
StoreDirtyInformation((DataContract.Sex == Sex.Female) != value, "sex");
StoreDirtyInformation((DataContract.Sex == Sex.Female) != value, "sex");
FirePropertyChanged(PropertyName_Female);
FirePropertyChanged(PropertyName_Male);
}
}
}
FirePropertyChanged(PropertyName_Female);
FirePropertyChanged(PropertyName_Male);
FirePropertyChanged(PropertyName_IsDivers);
}
}
}
public bool IsMale
{
get { return _IsMale; }
public bool IsMale
{
get { return _IsMale; }
set
{
if (_IsMale != value)
{
_IsMale = value;
_IsFemale = !value;
set
{
if (_IsMale != value)
{
_IsMale = value;
_IsFemale = !value;
_IsDivers = !value;
StoreDirtyInformation((DataContract.Sex == Sex.Male) != value, "sex");
StoreDirtyInformation((DataContract.Sex == Sex.Male) != value, "sex");
FirePropertyChanged(PropertyName_Female);
FirePropertyChanged(PropertyName_Male);
}
}
}
FirePropertyChanged(PropertyName_Female);
FirePropertyChanged(PropertyName_Male);
FirePropertyChanged(PropertyName_IsDivers);
}
}
}
public bool IsQualified
public bool IsDivers
{
get { return _IsDivers; }
set
{
if (_IsDivers != value)
{
_IsDivers = value;
_IsMale = !value;
_IsFemale = !value;
StoreDirtyInformation((DataContract.Sex == Sex.Divers) != value, "sex");
FirePropertyChanged(PropertyName_Female);
FirePropertyChanged(PropertyName_Male);
FirePropertyChanged(PropertyName_IsDivers);
}
}
}
public bool IsQualified
{
get { return _IsQualified; }
@@ -1229,7 +1257,8 @@ namespace BeWo.ViewModel
_IsQualified = pDataContract.IsQualified == null || pDataContract.IsQualified.Value;
_IsMale = pDataContract.Sex == Sex.Male;
_IsFemale = pDataContract.Sex == Sex.Female;
_Text1 = pDataContract.Text1;
_IsDivers = pDataContract.Sex == Sex.Divers;
_Text1 = pDataContract.Text1;
_Text2 = pDataContract.Text2;
_Text3 = pDataContract.Text3;
_Text4 = pDataContract.Text4;
@@ -1386,8 +1415,11 @@ namespace BeWo.ViewModel
pDataContract.Sex = Sex.Male;
if (this._IsFemale)
pDataContract.Sex = Sex.Female;
if (_CustomerRelations != null)
if (_IsDivers)
{
pDataContract.Sex = Sex.Divers;
}
if (_CustomerRelations != null)
{
pDataContract.RelatedCustomers = _CustomerRelations.CopyToDCList(doCommit);
}

View File

@@ -34,6 +34,8 @@ namespace BeWo.ViewModel
public static string PropertyName_IsMale = "IsMale";
public static string PropertyName_IsDivers = "IsDivers";
public static string PropertyName_LastName = "LastName";
public static string PropertyName_NewOrganisationRelation = "NewOrganisationRelation";
@@ -94,6 +96,8 @@ namespace BeWo.ViewModel
private bool _IsMale;
private bool _IsDivers;
private string _LastName;
private PersonOrganisationRelationVM _NewOrganisationRelation;
@@ -299,38 +303,63 @@ namespace BeWo.ViewModel
public bool IsFemale
{
get { return this._IsFemale; }
get { return _IsFemale; }
set
{
if (this._IsFemale != value)
if (_IsFemale != value)
{
this._IsFemale = value;
this._IsMale = !value;
_IsFemale = value;
_IsMale = !value;
_IsDivers = !value;
this.StoreDirtyInformation((this.DataContract.Sex == Sex.Female) != value, "sex");
StoreDirtyInformation((DataContract.Sex == Sex.Female) != value, "sex");
this.FirePropertyChanged(PropertyName_IsFemale);
this.FirePropertyChanged(PropertyName_IsMale);
FirePropertyChanged(PropertyName_IsFemale);
FirePropertyChanged(PropertyName_IsMale);
FirePropertyChanged(PropertyName_IsDivers);
}
}
}
public bool IsMale
{
get { return this._IsMale; }
get { return _IsMale; }
set
{
if (this._IsMale != value)
if (_IsMale != value)
{
this._IsMale = value;
this._IsFemale = !value;
_IsMale = value;
_IsFemale = !value;
_IsDivers = !value;
this.StoreDirtyInformation((this.DataContract.Sex == Sex.Male) != value, "sex");
StoreDirtyInformation((DataContract.Sex == Sex.Male) != value, "sex");
this.FirePropertyChanged(PropertyName_IsFemale);
this.FirePropertyChanged(PropertyName_IsMale);
FirePropertyChanged(PropertyName_IsFemale);
FirePropertyChanged(PropertyName_IsMale);
FirePropertyChanged(PropertyName_IsDivers);
}
}
}
public bool IsDivers
{
get { return _IsDivers; }
set
{
if (_IsDivers != value)
{
_IsDivers = value;
_IsMale = !value;
_IsFemale = !value;
StoreDirtyInformation((DataContract.Sex == Sex.Divers) != value, "sex");
FirePropertyChanged(PropertyName_IsFemale);
FirePropertyChanged(PropertyName_IsMale);
FirePropertyChanged(PropertyName_IsDivers);
}
}
}
@@ -728,6 +757,7 @@ namespace BeWo.ViewModel
this._IsMale = pDataContract.Sex == Sex.Male;
this._IsFemale = pDataContract.Sex == Sex.Female;
_IsDivers = pDataContract.Sex == Sex.Divers;
this._Title = pDataContract.Title;
this._Function = pDataContract.Function;
_IsMigrant = pDataContract.IsMigrant;
@@ -808,15 +838,18 @@ namespace BeWo.ViewModel
pDataContract.Sex = Sex.Male;
if (this._IsFemale)
pDataContract.Sex = Sex.Female;
if (_IsDivers)
{
pDataContract.Sex = Sex.Divers;
}
//List<Organisation2PersonDC> lOrganisationRel = new List<Organisation2PersonDC>();
//foreach (PersonOrganisationRelationVM iRelVM in this._OrganisationRelations)
//{
// lOrganisationRel.Add(iRelVM.CommitToDataContract());
//}
//pDataContract.OrganisationRelations = lOrganisationRel;
//List<Organisation2PersonDC> lOrganisationRel = new List<Organisation2PersonDC>();
//foreach (PersonOrganisationRelationVM iRelVM in this._OrganisationRelations)
//{
// lOrganisationRel.Add(iRelVM.CommitToDataContract());
//}
//pDataContract.OrganisationRelations = lOrganisationRel;
pDataContract.OrganisationRelations = this._OrganisationRelations.CopyToDCList(doCommit);
pDataContract.OrganisationRelations = this._OrganisationRelations.CopyToDCList(doCommit);

View File

@@ -453,8 +453,13 @@ namespace BeWoPlanerMobil.Controllers
return _LeerzeichenFuerGetMethoden;
}
var supportConceptStatistics = OperationsService.CreateSupportConceptStatistics(oid, DateTime.Now);
var supportConceptStatistics = OperationsService.CreateSupportConceptStatistics(oid, DateTime.Now);
if (supportConceptStatistics.PeriodStatistics != null &&
supportConcept Statistics.PeriodStatistics.Count == 1)
{
}
return SerializeObject(supportConceptStatistics);
}
catch (Exception e)

View File

@@ -30,14 +30,14 @@ function statisticDesign(wert1, wert2, string1, string2) {
var data = [
{
value: wert1,
color: "#F7464A",
highlight: "#FF5A5E",
color: "#00FF00",
highlight: "#99FF00",
label: string1
},
{
value: wert2,
color: "#00FF00",
highlight: "#99FF00",
color: "#F7464A",
highlight: "#FF5A5E",
label: string2
}];
@@ -85,7 +85,7 @@ function loadSupportConceptStatistics(oid) {
var provided = supportConceptStatistics.MinutesProvidedThisWeek;
var approved = supportConceptStatistics.MinutesApprovedPerWeek;
var freePerWeek = supportConceptStatistics.MinutesFreePerWeekAverage;
var providedTotal = supportConceptStatistics.MinutesProvidedTotalRounded;
var approvedTotal = supportConceptStatistics.MinutesApprovedTotal;
var freePerWeekTotal = approvedTotal - providedTotal;
@@ -98,7 +98,17 @@ function loadSupportConceptStatistics(oid) {
approvedTotal = (approvedTotal / 60).toFixed(2);
freePerWeekTotal = (freePerWeekTotal / 60).toFixed(2);
statisticDesign(providedTotal, approvedTotal, "Bewilligt gesamt", "Geleistet gesamt");
var prozent = 0;
if (approvedTotal > 0) {
prozent = (providedTotal / approvedTotal) * 100;
}
if (prozent > 100) {
prozent = 100;
}
//statisticDesign(80, 20, "Frei (in %)", "Verbraucht (in %)");
statisticDesign(100 - prozent, prozent, "Frei (in %)", "Verbraucht (in %)");
$("#supportConceptStatisticsProvided").html('Geleistet diese Woche/Gesamt: ' + provided + ' / ' + providedTotal);
$("#supportConceptStatisticsApproved").html('Bewilligt pro Woche/Gesamt: ' + approved + ' / ' + approvedTotal);

View File

@@ -11,7 +11,7 @@
<link rel="stylesheet" href="~/Content/datepicker_jQM.css?v=1.2" />
<link rel="stylesheet" href="~/Content/datepicker.css?v=1.2" />
<link rel="stylesheet" href="~/Content/BeWoMobileStyle.css?v=1.3" />
<link rel="stylesheet" href="~/Content/statisticsStyle.css?v=1.2" />
<link rel="stylesheet" href="~/Content/statisticsStyle.css?v=1.3" />
<link rel="stylesheet" href="~/Content/appointmentStyle.css"/>
<script src="~/Scripts/appointment.js?v=1.2"></script>
@@ -20,7 +20,7 @@
<script src="~/Scripts/datepicker.js?v=1.2"></script>
<script src="~/Scripts/initialization.js?v=1.2"></script>
<script src="~/Scripts/calendar.js?v=1.2"></script>
<script src="~/Scripts/statistics.js"></script>
<script src="~/Scripts/statistics.js?v=1.2"></script>
<script src="~/Scripts/gruppenbuchung.js?v=1.2"></script>
<script src="~/Scripts/dateHelper.js?v=1.2"></script>
<script src="~/Scripts/Chart.min.js?v=1.2"></script>

View File

@@ -6,47 +6,18 @@ namespace BeWo.Data.Entities
{
public class Icf : BeWoEntityBase
{
#region Constant Fields
#endregion
#region Fields
private string _Code;
private string _Bezeichnung;
private string _Beschreibung;
private long? _ParentID;
#endregion
#region Constructors
private long? _ParentOID;
public Icf()
{
_Tid = TableID.Employee;
_Version = 1;
}
#endregion
#region Finalizers
#endregion
#region Delegates
#endregion
#region Events
#endregion
#region InterfacesImplementations
#endregion
#region Properties
public virtual string Code
{
get => _Code;
@@ -83,39 +54,23 @@ namespace BeWo.Data.Entities
}
}
public virtual long? ParentID
public virtual long? ParentOID
{
get => _ParentID;
get => _ParentOID;
set
{
if (AreDifferent(_ParentID, value))
if (AreDifferent(_ParentOID, value))
{
_ParentID = value;
_ParentOID = value;
}
}
}
#endregion
#region Indexers
#endregion
#region Methods
public override string ToString()
{
return "[B]:" + Beschreibung + " [O]:" + Oid + " [P]:" + ParentID;
return "[B]:" + Beschreibung + " [O]:" + Oid + " [P]:" + _ParentOID;
}
#endregion
#region Structs
#endregion
#region Classes
#endregion
}
}

View File

@@ -8,6 +8,6 @@
<property column="Code" type="String" name="Code" length="64" />
<property column="Bezeichnung" type="String" name="Bezeichnung" />
<property column="Beschreibung" type="String" name="Beschreibung" />
<property column="ParentID" type="Int64" name="ParentID" />
<property column="ParentOID" type="Int64" name="ParentOID" />
</class>
</hibernate-mapping>

View File

@@ -0,0 +1,243 @@
using System;
using System.Collections.Generic;
using BeWo.Report.ReportObjects;
using BeWo.Report;
using DevExpress.XtraReports.UI;
using System.Data;
using System.Drawing.Printing;
using BeWo.Data.Access;
using BeWo.Data.Entities;
using BS.Shared.Core;
namespace BeWo.Report.DefaultReports
{
public partial class Abwesenheiten : DevExpress.XtraReports.UI.XtraReport, IBeWoReport<UrlaubskontoRO>
{
public Abwesenheiten()
{
InitializeComponent();
}
public void SetReportDataSource(UrlaubskontoRO pRO)
{
var msb = new UrlaubskontoBerechnung();
msb.CreateReport(pRO);
CreateTable(pRO);
}
private void CreateTable(UrlaubskontoRO ro)
{
CreateColumns(ro);
//foreach (var key in reasonGesamtDict.Keys)
//{
// AddCell(tableRowHeader, key);
// xrTableDetail.InsertColumnToRight(xrTableRowDetail.Cells[xrTableRowDetail.Cells.Count - 1]);
// xrTableSumme.InsertColumnToRight(xrTableRowSumme.Cells[xrTableRowSumme.Cells.Count - 1]);
//}
//foreach (XRTableCell cell in tableRowHeader.Cells)
//{
// cell.Width = tableHeader.Width / tableRowHeader.Cells.Count;
//}
//foreach (XRTableCell cell in xrTableRowDetail.Cells)
//{
// cell.Width = xrTableDetail.Width / xrTableRowDetail.Cells.Count;
//}
//foreach (XRTableCell cell in xrTableRowSumme.Cells)
//{
// cell.Width = xrTableSumme.Width / xrTableRowSumme.Cells.Count;
//}
//for (int i = 1; i < xrTableRowDetail.Cells.Count; i++)
//{
// var cell = xrTableRowDetail.Cells[i];
// cell.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] { new DevExpress.XtraReports.UI.XRBinding("Text", null, String.Format("Rows.Field{0}", i + 1)) });
//}
//Dictionary<int, int> index2Summe = new Dictionary<int, int>();
//foreach (var employee in emps)
//{
// if (emp2ReasonDict.ContainsKey(employee.Oid.Value))
// {
// var empRow = new QueryRO.Row();
// mainRo.Rows.Add(empRow);
// empRow.Field1 = String.Format("{0}, {1}", employee.Person.LastName, employee.Person.FirstName);
// var dict = emp2ReasonDict[employee.Oid.Value];
// for (int i = 1; i < tableRowHeader.Cells.Count; i++)
// {
// var headerCell = tableRowHeader.Cells[i];
// if (dict.ContainsKey(headerCell.Text))
// {
// if (!index2Summe.ContainsKey(i))
// {
// index2Summe.Add(i, 0);
// }
// var tage = dict[headerCell.Text];
// index2Summe[i] += tage;
// SetFieldValue(empRow, i, tage);
// }
// }
// }
//}
//foreach (var i in index2Summe.Keys)
//{
// xrTableRowSumme.Cells[i].Text = String.Format("{0:0}", index2Summe[i]);
//}
}
private void CreateColumns(UrlaubskontoRO ro)
{
int cWidth = 30;
DateTime dt = ro.ReportStartDate;
int column = 1;
while (dt <= ro.ReportEndDate)
{
if (column > 1)
{
var newCell = new XRTableCell();
newCell.Width = cWidth;
tableHeader.Width += cWidth;
tableRowHeader.Cells.Add(newCell);
newCell = new XRTableCell();
newCell.Width = cWidth;
tableHeader2.Width += cWidth;
tableRowHeader2.Cells.Add(newCell);
newCell = new XRTableCell();
newCell.Width = cWidth;
tableDetail.Width += cWidth;
tableRowDetail.Cells.Add(newCell);
}
foreach (XRTableCell xrTableCell in tableRowHeader.Cells)
{
int test = xrTableCell.Width;
}
var cell = tableRowHeader.Cells[tableRowHeader.Cells.Count - 1];
cell.Width = 30;
cell.Text = String.Format("{0:ddd}", dt);
cell = tableRowHeader2.Cells[tableRowHeader2.Cells.Count - 1];
cell.Width = 30;
cell.Text = String.Format("{0:dd}", dt);
cell = tableRowDetail.Cells[tableRowDetail.Cells.Count - 1];
cell.Width = 30;
cell.Text = String.Format("");
dt = dt.AddDays(1);
column++;
}
if ((tableHeader.Width + xrTable1.Width) > (this.PageWidth - 100))
{
this.PageWidth = tableHeader.Width + xrTable1.Width + 100;
}
this.Margins = new Margins(50, 50, 50, 50);
}
private void SetFieldValue(QueryRO.Row row, int i, int tage)
{
if (i == 1)
{
row.Field2 = String.Format("{0:0}", tage);
}
else if (i == 2)
{
row.Field3 = String.Format("{0:0}", tage);
}
else if (i == 3)
{
row.Field4 = String.Format("{0:0}", tage);
}
else if (i == 4)
{
row.Field5 = String.Format("{0:0}", tage);
}
else if (i == 5)
{
row.Field6 = String.Format("{0:0}", tage);
}
else if (i == 6)
{
row.Field7 = String.Format("{0:0}", tage);
}
else if (i == 7)
{
row.Field8 = String.Format("{0:0}", tage);
}
else if (i == 8)
{
row.Field9 = String.Format("{0:0}", tage);
}
else if (i == 9)
{
row.Field10 = String.Format("{0:0}", tage);
}
else if (i == 10)
{
row.Field11 = String.Format("{0:0}", tage);
}
}
private void AddCell(XRTableRow row, string text)
{
var cell = new XRTableCell();
row.Cells.AddRange(new[] { cell });
cell.Text = text;
}
private int GetAnzahlTage(AbsenceTime at, DateTime reportStart, DateTime reportEnde)
{
DateTime start = reportStart;
DateTime ende = reportEnde.AddDays(-1);
if (at.Start.HasValue && at.Start > start)
{
start = at.Start.Value;
}
if (at.End.HasValue && at.End < ende)
{
ende = at.End.Value;
}
int tage = (int)ende.Subtract(start).TotalDays + 1;
if (tage > 0)
{
return tage;
}
return 0;
}
private bool IstInTimeRange(AbsenceTime at, DateTime start, DateTime ende)
{
if ((!at.Start.HasValue || at.Start.Value < ende) && (!at.End.HasValue || at.End.Value >= start))
{
return true;
}
return false;
}
}
}

View File

@@ -0,0 +1,398 @@
using BeWo.Report.ReportObjects;
namespace BeWo.Report.DefaultReports
{
partial class Abwesenheiten
{
/// <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();
this.Detail = new DevExpress.XtraReports.UI.DetailBand();
this.Detail1 = new DevExpress.XtraReports.UI.DetailBand();
this.tableDetail = new DevExpress.XtraReports.UI.XRTable();
this.tableRowDetail = new DevExpress.XtraReports.UI.XRTableRow();
this.cellDetail = new DevExpress.XtraReports.UI.XRTableCell();
this.DetailReport = new DevExpress.XtraReports.UI.DetailReportBand();
this.GroupHeader1 = new DevExpress.XtraReports.UI.GroupHeaderBand();
this.tableHeader = new DevExpress.XtraReports.UI.XRTable();
this.tableRowHeader = new DevExpress.XtraReports.UI.XRTableRow();
this.cellEmployeeHeader = new DevExpress.XtraReports.UI.XRTableCell();
this.ReportHeader = new DevExpress.XtraReports.UI.ReportHeaderBand();
this.xrLabel1 = new DevExpress.XtraReports.UI.XRLabel();
this.lblHeader = new DevExpress.XtraReports.UI.XRLabel();
this.Title = new DevExpress.XtraReports.UI.XRControlStyle();
this.FieldCaption = new DevExpress.XtraReports.UI.XRControlStyle();
this.PageInfo = new DevExpress.XtraReports.UI.XRControlStyle();
this.DataField = new DevExpress.XtraReports.UI.XRControlStyle();
this.fieldFLS = new DevExpress.XtraReports.UI.CalculatedField();
this.topMarginBand1 = new DevExpress.XtraReports.UI.TopMarginBand();
this.bottomMarginBand1 = new DevExpress.XtraReports.UI.BottomMarginBand();
this.xrTable1 = new DevExpress.XtraReports.UI.XRTable();
this.xrTableRow1 = new DevExpress.XtraReports.UI.XRTableRow();
this.xrTableCell1 = new DevExpress.XtraReports.UI.XRTableCell();
this.tableHeader2 = new DevExpress.XtraReports.UI.XRTable();
this.tableRowHeader2 = new DevExpress.XtraReports.UI.XRTableRow();
this.cellEmployeeHeader2 = new DevExpress.XtraReports.UI.XRTableCell();
this.xrTableCell2 = new DevExpress.XtraReports.UI.XRTableCell();
this.bindingSource1 = new System.Windows.Forms.BindingSource(this.components);
((System.ComponentModel.ISupportInitialize)(this.tableDetail)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.tableHeader)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.xrTable1)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.tableHeader2)).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;
//
// Detail1
//
this.Detail1.Controls.AddRange(new DevExpress.XtraReports.UI.XRControl[] {
this.tableDetail});
this.Detail1.Font = new System.Drawing.Font("Arial", 9.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.Detail1.HeightF = 25F;
this.Detail1.Name = "Detail1";
this.Detail1.StylePriority.UseFont = false;
//
// tableDetail
//
this.tableDetail.Borders = ((DevExpress.XtraPrinting.BorderSide)(((DevExpress.XtraPrinting.BorderSide.Left | DevExpress.XtraPrinting.BorderSide.Right)
| DevExpress.XtraPrinting.BorderSide.Bottom)));
this.tableDetail.Font = new System.Drawing.Font("Arial", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.tableDetail.LocationFloat = new DevExpress.Utils.PointFloat(0F, 0F);
this.tableDetail.Name = "tableDetail";
this.tableDetail.Padding = new DevExpress.XtraPrinting.PaddingInfo(5, 0, 0, 0, 100F);
this.tableDetail.Rows.AddRange(new DevExpress.XtraReports.UI.XRTableRow[] {
this.tableRowDetail});
this.tableDetail.SizeF = new System.Drawing.SizeF(230F, 25F);
this.tableDetail.StylePriority.UseBorders = false;
this.tableDetail.StylePriority.UseFont = false;
this.tableDetail.StylePriority.UsePadding = false;
this.tableDetail.StylePriority.UseTextAlignment = false;
this.tableDetail.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleCenter;
//
// tableRowDetail
//
this.tableRowDetail.Cells.AddRange(new DevExpress.XtraReports.UI.XRTableCell[] {
this.cellDetail,
this.xrTableCell2});
this.tableRowDetail.Name = "tableRowDetail";
this.tableRowDetail.Weight = 1D;
//
// cellDetail
//
this.cellDetail.Borders = ((DevExpress.XtraPrinting.BorderSide)((DevExpress.XtraPrinting.BorderSide.Left | DevExpress.XtraPrinting.BorderSide.Bottom)));
this.cellDetail.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
new DevExpress.XtraReports.UI.XRBinding("Text", null, "Rows.Field1")});
this.cellDetail.Name = "cellDetail";
this.cellDetail.StylePriority.UseBorders = false;
this.cellDetail.StylePriority.UseFont = false;
this.cellDetail.StylePriority.UseTextAlignment = false;
this.cellDetail.Text = "cellDetail";
this.cellDetail.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleLeft;
this.cellDetail.Weight = 0.06468490920038994D;
//
// DetailReport
//
this.DetailReport.Bands.AddRange(new DevExpress.XtraReports.UI.Band[] {
this.Detail1,
this.GroupHeader1});
this.DetailReport.DataMember = "Rows";
this.DetailReport.DataSource = this.bindingSource1;
this.DetailReport.Level = 0;
this.DetailReport.Name = "DetailReport";
//
// GroupHeader1
//
this.GroupHeader1.Controls.AddRange(new DevExpress.XtraReports.UI.XRControl[] {
this.tableHeader2,
this.xrTable1,
this.tableHeader});
this.GroupHeader1.HeightF = 40.00003F;
this.GroupHeader1.Name = "GroupHeader1";
this.GroupHeader1.RepeatEveryPage = true;
//
// tableHeader
//
this.tableHeader.Borders = ((DevExpress.XtraPrinting.BorderSide)((((DevExpress.XtraPrinting.BorderSide.Left | DevExpress.XtraPrinting.BorderSide.Top)
| DevExpress.XtraPrinting.BorderSide.Right)
| DevExpress.XtraPrinting.BorderSide.Bottom)));
this.tableHeader.Font = new System.Drawing.Font("Arial", 9F, System.Drawing.FontStyle.Bold);
this.tableHeader.LocationFloat = new DevExpress.Utils.PointFloat(200F, 0F);
this.tableHeader.Name = "tableHeader";
this.tableHeader.Rows.AddRange(new DevExpress.XtraReports.UI.XRTableRow[] {
this.tableRowHeader});
this.tableHeader.SizeF = new System.Drawing.SizeF(30F, 20F);
this.tableHeader.StylePriority.UseBorders = false;
this.tableHeader.StylePriority.UseFont = false;
this.tableHeader.StylePriority.UsePadding = false;
this.tableHeader.StylePriority.UseTextAlignment = false;
this.tableHeader.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleCenter;
//
// tableRowHeader
//
this.tableRowHeader.Cells.AddRange(new DevExpress.XtraReports.UI.XRTableCell[] {
this.cellEmployeeHeader});
this.tableRowHeader.Name = "tableRowHeader";
this.tableRowHeader.Weight = 0.8D;
//
// cellEmployeeHeader
//
this.cellEmployeeHeader.Name = "cellEmployeeHeader";
this.cellEmployeeHeader.StylePriority.UseTextAlignment = false;
this.cellEmployeeHeader.Text = "Mo";
this.cellEmployeeHeader.Weight = 0.009702734839476812D;
//
// ReportHeader
//
this.ReportHeader.Controls.AddRange(new DevExpress.XtraReports.UI.XRControl[] {
this.xrLabel1,
this.lblHeader});
this.ReportHeader.HeightF = 70F;
this.ReportHeader.Name = "ReportHeader";
//
// xrLabel1
//
this.xrLabel1.Font = new System.Drawing.Font("Arial", 14F, System.Drawing.FontStyle.Bold);
this.xrLabel1.LocationFloat = new DevExpress.Utils.PointFloat(0F, 0F);
this.xrLabel1.Multiline = true;
this.xrLabel1.Name = "xrLabel1";
this.xrLabel1.SizeF = new System.Drawing.SizeF(666.9999F, 25F);
this.xrLabel1.StyleName = "Title";
this.xrLabel1.StylePriority.UseFont = false;
this.xrLabel1.Text = "Anzahl Abwesenheitstage";
//
// lblHeader
//
this.lblHeader.Font = new System.Drawing.Font("Arial", 14F);
this.lblHeader.LocationFloat = new DevExpress.Utils.PointFloat(0F, 25F);
this.lblHeader.Multiline = true;
this.lblHeader.Name = "lblHeader";
this.lblHeader.SizeF = new System.Drawing.SizeF(666.9999F, 25F);
this.lblHeader.StyleName = "Title";
this.lblHeader.StylePriority.UseFont = false;
//
// Title
//
this.Title.BackColor = System.Drawing.Color.White;
this.Title.BorderColor = System.Drawing.SystemColors.ControlText;
this.Title.Borders = DevExpress.XtraPrinting.BorderSide.None;
this.Title.BorderWidth = 1F;
this.Title.Font = new System.Drawing.Font("Times New Roman", 24F);
this.Title.ForeColor = System.Drawing.Color.Black;
this.Title.Name = "Title";
//
// FieldCaption
//
this.FieldCaption.BackColor = System.Drawing.Color.White;
this.FieldCaption.BorderColor = System.Drawing.SystemColors.ControlText;
this.FieldCaption.Borders = DevExpress.XtraPrinting.BorderSide.None;
this.FieldCaption.BorderWidth = 1F;
this.FieldCaption.Font = new System.Drawing.Font("Times New Roman", 10F, System.Drawing.FontStyle.Bold);
this.FieldCaption.ForeColor = System.Drawing.Color.Black;
this.FieldCaption.Name = "FieldCaption";
//
// PageInfo
//
this.PageInfo.BackColor = System.Drawing.Color.White;
this.PageInfo.BorderColor = System.Drawing.SystemColors.ControlText;
this.PageInfo.Borders = DevExpress.XtraPrinting.BorderSide.None;
this.PageInfo.BorderWidth = 1F;
this.PageInfo.Font = new System.Drawing.Font("Times New Roman", 8F);
this.PageInfo.ForeColor = System.Drawing.Color.Black;
this.PageInfo.Name = "PageInfo";
//
// DataField
//
this.DataField.BackColor = System.Drawing.Color.White;
this.DataField.BorderColor = System.Drawing.SystemColors.ControlText;
this.DataField.Borders = DevExpress.XtraPrinting.BorderSide.None;
this.DataField.BorderWidth = 1F;
this.DataField.Font = new System.Drawing.Font("Times New Roman", 8F);
this.DataField.ForeColor = System.Drawing.SystemColors.ControlText;
this.DataField.Name = "DataField";
//
// fieldFLS
//
this.fieldFLS.DataMember = "FLSReportGroups";
this.fieldFLS.Expression = "[TotalFLM] / 60";
this.fieldFLS.FieldType = DevExpress.XtraReports.UI.FieldType.Decimal;
this.fieldFLS.Name = "fieldFLS";
//
// topMarginBand1
//
this.topMarginBand1.HeightF = 50F;
this.topMarginBand1.Name = "topMarginBand1";
//
// bottomMarginBand1
//
this.bottomMarginBand1.HeightF = 50F;
this.bottomMarginBand1.Name = "bottomMarginBand1";
//
// 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.Font = new System.Drawing.Font("Arial", 9F, System.Drawing.FontStyle.Bold);
this.xrTable1.LocationFloat = new DevExpress.Utils.PointFloat(7.947286E-06F, 0F);
this.xrTable1.Name = "xrTable1";
this.xrTable1.Padding = new DevExpress.XtraPrinting.PaddingInfo(5, 0, 0, 0, 100F);
this.xrTable1.Rows.AddRange(new DevExpress.XtraReports.UI.XRTableRow[] {
this.xrTableRow1});
this.xrTable1.SizeF = new System.Drawing.SizeF(200F, 40.00003F);
this.xrTable1.StylePriority.UseBorders = false;
this.xrTable1.StylePriority.UseFont = false;
this.xrTable1.StylePriority.UsePadding = false;
this.xrTable1.StylePriority.UseTextAlignment = false;
this.xrTable1.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleCenter;
//
// xrTableRow1
//
this.xrTableRow1.Cells.AddRange(new DevExpress.XtraReports.UI.XRTableCell[] {
this.xrTableCell1});
this.xrTableRow1.Name = "xrTableRow1";
this.xrTableRow1.Weight = 1D;
//
// xrTableCell1
//
this.xrTableCell1.Borders = ((DevExpress.XtraPrinting.BorderSide)(((DevExpress.XtraPrinting.BorderSide.Left | DevExpress.XtraPrinting.BorderSide.Top)
| DevExpress.XtraPrinting.BorderSide.Bottom)));
this.xrTableCell1.Name = "xrTableCell1";
this.xrTableCell1.StylePriority.UseBorders = false;
this.xrTableCell1.StylePriority.UseTextAlignment = false;
this.xrTableCell1.Text = "Mitarbeiter/in";
this.xrTableCell1.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleLeft;
this.xrTableCell1.Weight = 0.064684898929845414D;
//
// tableHeader2
//
this.tableHeader2.Borders = ((DevExpress.XtraPrinting.BorderSide)(((DevExpress.XtraPrinting.BorderSide.Left | DevExpress.XtraPrinting.BorderSide.Right)
| DevExpress.XtraPrinting.BorderSide.Bottom)));
this.tableHeader2.Font = new System.Drawing.Font("Arial", 9F, System.Drawing.FontStyle.Bold);
this.tableHeader2.LocationFloat = new DevExpress.Utils.PointFloat(200F, 20.00001F);
this.tableHeader2.Name = "tableHeader2";
this.tableHeader2.Rows.AddRange(new DevExpress.XtraReports.UI.XRTableRow[] {
this.tableRowHeader2});
this.tableHeader2.SizeF = new System.Drawing.SizeF(30F, 20F);
this.tableHeader2.StylePriority.UseBorders = false;
this.tableHeader2.StylePriority.UseFont = false;
this.tableHeader2.StylePriority.UsePadding = false;
this.tableHeader2.StylePriority.UseTextAlignment = false;
this.tableHeader2.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleCenter;
//
// tableRowHeader2
//
this.tableRowHeader2.Cells.AddRange(new DevExpress.XtraReports.UI.XRTableCell[] {
this.cellEmployeeHeader2});
this.tableRowHeader2.Name = "tableRowHeader2";
this.tableRowHeader2.Weight = 0.8D;
//
// cellEmployeeHeader2
//
this.cellEmployeeHeader2.Name = "cellEmployeeHeader2";
this.cellEmployeeHeader2.StylePriority.UseTextAlignment = false;
this.cellEmployeeHeader2.Text = "1";
this.cellEmployeeHeader2.Weight = 0.009702734839476812D;
//
// xrTableCell2
//
this.xrTableCell2.Name = "xrTableCell2";
this.xrTableCell2.StylePriority.UseTextAlignment = false;
this.xrTableCell2.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleLeft;
this.xrTableCell2.Weight = 0.0097027363800584882D;
//
// bindingSource1
//
this.bindingSource1.DataSource = typeof(BeWo.Report.ReportObjects.QueryRO);
//
// Abwesenheiten
//
this.Bands.AddRange(new DevExpress.XtraReports.UI.Band[] {
this.Detail,
this.DetailReport,
this.ReportHeader,
this.topMarginBand1,
this.bottomMarginBand1});
this.CalculatedFields.AddRange(new DevExpress.XtraReports.UI.CalculatedField[] {
this.fieldFLS});
this.DataSource = this.bindingSource1;
this.Landscape = true;
this.Margins = new System.Drawing.Printing.Margins(50, 50, 50, 50);
this.PageHeight = 827;
this.PageWidth = 1169;
this.PaperKind = System.Drawing.Printing.PaperKind.Custom;
this.StyleSheet.AddRange(new DevExpress.XtraReports.UI.XRControlStyle[] {
this.Title,
this.FieldCaption,
this.PageInfo,
this.DataField});
this.Version = "17.1";
((System.ComponentModel.ISupportInitialize)(this.tableDetail)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.tableHeader)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.xrTable1)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.tableHeader2)).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.DetailBand Detail1;
private DevExpress.XtraReports.UI.DetailReportBand DetailReport;
private DevExpress.XtraReports.UI.ReportHeaderBand ReportHeader;
private DevExpress.XtraReports.UI.XRLabel lblHeader;
private DevExpress.XtraReports.UI.XRControlStyle Title;
private DevExpress.XtraReports.UI.XRControlStyle FieldCaption;
private DevExpress.XtraReports.UI.XRControlStyle PageInfo;
private DevExpress.XtraReports.UI.XRControlStyle DataField;
private DevExpress.XtraReports.UI.XRTable tableHeader;
private DevExpress.XtraReports.UI.XRTableRow tableRowHeader;
private DevExpress.XtraReports.UI.XRTableCell cellEmployeeHeader;
private DevExpress.XtraReports.UI.XRTable tableDetail;
private DevExpress.XtraReports.UI.XRTableRow tableRowDetail;
private DevExpress.XtraReports.UI.XRTableCell cellDetail;
private DevExpress.XtraReports.UI.CalculatedField fieldFLS;
private DevExpress.XtraReports.UI.TopMarginBand topMarginBand1;
private DevExpress.XtraReports.UI.BottomMarginBand bottomMarginBand1;
private DevExpress.XtraReports.UI.GroupHeaderBand GroupHeader1;
private DevExpress.XtraReports.UI.XRLabel xrLabel1;
private DevExpress.XtraReports.UI.XRTable xrTable1;
private DevExpress.XtraReports.UI.XRTableRow xrTableRow1;
private DevExpress.XtraReports.UI.XRTableCell xrTableCell1;
private DevExpress.XtraReports.UI.XRTable tableHeader2;
private DevExpress.XtraReports.UI.XRTableRow tableRowHeader2;
private DevExpress.XtraReports.UI.XRTableCell cellEmployeeHeader2;
private DevExpress.XtraReports.UI.XRTableCell xrTableCell2;
}
}

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>17, 17</value>
</metadata>
</root>

View File

@@ -146,6 +146,12 @@
</Reference>
</ItemGroup>
<ItemGroup>
<Compile Include="DefaultReports\Abwesenheiten.cs">
<SubType>Component</SubType>
</Compile>
<Compile Include="DefaultReports\Abwesenheiten.designer.cs">
<DependentUpon>Abwesenheiten.cs</DependentUpon>
</Compile>
<Compile Include="DefaultReports\AdditionalServiceBookingReport.cs">
<SubType>Component</SubType>
</Compile>
@@ -362,6 +368,8 @@
<Compile Include="ReportObjects\KalenderRO.cs" />
<Compile Include="ReportObjects\FinanceRO.cs" />
<Compile Include="ReportObjects\KassenbelegRO.cs" />
<Compile Include="ReportObjects\UrlaubskontoBerechnung.cs" />
<Compile Include="ReportObjects\UrlaubskontoRO.cs" />
<Compile Include="ReportObjects\NotizenRO.cs" />
<Compile Include="ReportObjects\KassenbuchRO.cs" />
<Compile Include="ReportObjects\JahresReportRO.cs" />
@@ -386,6 +394,9 @@
<Compile Include="ReportObjects\SettlementRO.cs" />
</ItemGroup>
<ItemGroup>
<EmbeddedResource Include="DefaultReports\Abwesenheiten.resx">
<DependentUpon>Abwesenheiten.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="DefaultReports\AdditionalServiceBookingReport.resx">
<DependentUpon>AdditionalServiceBookingReport.cs</DependentUpon>
</EmbeddedResource>

View File

@@ -353,7 +353,12 @@ namespace BeWo.Report.ReportObjects
decimal rechnungsBetrag = 0;
var invoices = DAOFactory.SearchDAO.GetServiceInvoices(c2s.Oid.Value, null, span);
//if (c2s.SupportConcept.Customer.Person.LastName.StartsWith("Art"))
//{
// int test = 0;
//}
var invoices = DAOFactory.SearchDAO.GetServiceInvoices(c2s.Oid.Value, span);
foreach (var i in invoices)
{
foreach (var sip in i.ServiceInvoicePeriodList)

View File

@@ -1232,6 +1232,7 @@ namespace BeWo.Report.ReportObjects
ServicesOverviewRO newRo = new ServicesOverviewRO();
newRo.StartDate = ro.StartDate;
newRo.Abwesenheiten = ro.Abwesenheiten;
newRo.AbsenceTimes = ro.AbsenceTimes;
newRo.ApprovedEndDate = ro.ApprovedEndDate;
newRo.ApprovedFLSPerMonth = ro.ApprovedFLSPerMonth;

View File

@@ -0,0 +1,229 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Windows.Forms;
using BeWo.Report;
using BeWo.Data.Entities;
using BeWo.Data.Access;
using BeWo.Service.Configuration;
using BeWo.Service.ServiceImplementations;
using BS.Shared;
using BS.Shared.Core;
using BS.Shared.Extensions;
using DevExpress.XtraCharts.Native;
namespace BeWo.Report.ReportObjects
{
public class UrlaubskontoBerechnung
{
public UrlaubskontoBerechnung()
{
}
public virtual void CreateReport(UrlaubskontoRO ro)
{
CreateEmployeeDetails(ro);
CreateTeamDetails(ro);
}
public virtual void CreateTeamDetails(UrlaubskontoRO ro)
{
foreach (var teamDetail in ro.TeamDetailList)
{
teamDetail.EmployeeDetailList = FilterEmployeeList(teamDetail.EmployeeDetailList);
}
}
public virtual void CreateEmployeeDetails(UrlaubskontoRO ro)
{
foreach (var empDetail in ro.EmployeeDetailList)
{
empDetail.AllAbsenceTimes = empDetail.Employee.AbsenceTimes;
empDetail.TagZuUrlaub = new Dictionary<String, decimal>();
empDetail.TagZuKrankheit = new Dictionary<String, decimal>();
empDetail.AbsenceTimesInTimeSpan = new List<AbsenceTime>();
DateTime dt = ro.ReportStartDate;
while (dt <= ro.ReportEndDate)
{
String key = String.Format("{0:yyyyMMdd}", dt);
empDetail.TagZuUrlaub[key] = 0;
empDetail.TagZuKrankheit[key] = 0;
}
foreach (var at in empDetail.Employee.AbsenceTimes)
{
if ((!at.Start.HasValue || at.Start.Value <= ro.ReportEndDate) &&
(!at.End.HasValue || at.End.Value >= ro.ReportStartDate))
{
empDetail.AbsenceTimesInTimeSpan.Add(at);
dt = ro.ReportStartDate;
if (at.Start.HasValue && at.Start > dt)
{
dt = at.Start.Value;
}
DateTime end = ro.ReportEndDate;
if (at.End.HasValue && at.End < end)
{
end = at.End.Value;
}
while (dt <= end)
{
String key = String.Format("{0:yyyyMMdd}", dt);
empDetail.TagZuUrlaub[key] = 1;
empDetail.TagZuKrankheit[key] = 1;
dt = dt.AddDays(1);
}
}
}
//DateTime monatsAnfang = ro.ReportStartDate;
//DateTime monatsEnde = monatsAnfang.AddMonths(1);
//DateTime berichtsAnfang = monatsAnfang;
//DateTime berichtsEnde = monatsEnde;
//Employee emp = empDetail.Employee;
// var c = GetContractForDate(emp, ro.ReportStartDate, ro.ReportEndDate);
//if (c != null)
//{
// if (c.EntryDate.HasValue && c.EntryDate > monatsAnfang)
// {
// berichtsAnfang = c.EntryDate.Value;
// }
// if (c.ContractEndDate.HasValue && c.ContractEndDate < monatsEnde)
// {
// berichtsEnde = c.ContractEndDate.Value.Date.AddDays(1);
// }
// empDetail.HasContract = true;
//}
//IList<ServiceRecord> recordsAll = DAOFactory.SearchDAO.FindServiceRecords(emp.Oid, null);
//recordsAll = AnalysisServiceImp.FilterActiveServiceRecords(recordsAll);
////
//IList<ServiceRecord> groupFilteredRecords = new List<ServiceRecord>();
//Dictionary<long, bool> groupBookingDict = new Dictionary<long, bool>();
//foreach (var item in recordsAll)
//{
// if (!item.GroupOid.HasValue || !groupBookingDict.ContainsKey(item.GroupOid.Value))
// {
// groupFilteredRecords.Add(item);
// if (item.GroupOid.HasValue)
// {
// groupBookingDict.Add(item.GroupOid.Value, true);
// }
// }
//}
//while (berichtsAnfang < berichtsEnde)
//{
// berichtsAnfang = berichtsEnde;
// berichtsEnde = monatsEnde;
// c = GetNextValidContractForDate(berichtsAnfang, emp);
// if (c != null)
// {
// if (c.EntryDate.HasValue && c.EntryDate >= berichtsAnfang)
// berichtsAnfang = c.EntryDate.Value;
// if (c.ContractEndDate.HasValue && c.ContractEndDate < monatsEnde)
// {
// berichtsEnde = c.ContractEndDate.Value.Date.AddDays(1);
// }
// }
//}
}
ro.EmployeeDetailList = FilterEmployeeList(ro.EmployeeDetailList);
}
public virtual List<UrlaubskontoRO.EmployeeDetail> FilterEmployeeList(List<UrlaubskontoRO.EmployeeDetail> employeeDetailList)
{
List<UrlaubskontoRO.EmployeeDetail> newEmpList = new List<UrlaubskontoRO.EmployeeDetail>();
foreach (var ed in employeeDetailList)
{
if (ed.Employee.IsActive == ActivationTypeId.Active)
{
newEmpList.Add(ed);
}
}
return newEmpList;
}
public virtual bool IsKrankheitAbsenceTime(AbsenceTime absenceTime)
{
return !String.IsNullOrEmpty(absenceTime.AbsenceReason.Description) &&
(absenceTime.AbsenceReason.Description.ToLower().IndexOf("arbeitsunfähig") >= 0
|| absenceTime.AbsenceReason.Description.ToLower().IndexOf("krank") >= 0);
}
public virtual bool IsUrlaubAbsenceTime(AbsenceTime absenceTime)
{
return !String.IsNullOrEmpty(absenceTime.AbsenceReason.Description) &&
absenceTime.AbsenceReason.Description.ToLower().IndexOf("urlaub") >= 0;
}
public virtual bool AddServiceRecordToDuration(ServiceRecord item)
{
return true;
}
public virtual decimal AddRateFactorToIst()
{
return 1;
}
public Contract GetNextValidContractForDate(DateTime dt, Employee emp)
{
Contract contractNextToStartDate = emp.GetValidContractForDate(dt);
if (contractNextToStartDate == null)
{
foreach (var item in emp.Contracts)
{
if (item.EntryDate.HasValue && item.EntryDate.Value >= dt)
{
if (contractNextToStartDate == null || item.EntryDate.Value < contractNextToStartDate.EntryDate.Value)
{
contractNextToStartDate = item;
}
}
}
}
return contractNextToStartDate;
}
}
}

View File

@@ -0,0 +1,230 @@
using System;
using System.Collections.Generic;
using BeWo.Data.Access;
using BeWo.Data.Entities;
using BS.Shared;
using BS.Shared.Core;
using BS.Shared.Extensions;
namespace BeWo.Report.ReportObjects
{
public class UrlaubskontoRO : AbstractBeWoReportObject<UrlaubskontoRO>
{
List<EmployeeDetail> _EmployeeDetailList = new List<EmployeeDetail>();
List<TeamDetail> _TeamDetailList = new List<TeamDetail>();
public DateTime ReportStartDate { get; set; }
public DateTime ReportEndDate { get; set; }
public List<EmployeeDetail> EmployeeDetailList
{
get { return this._EmployeeDetailList; }
set { this._EmployeeDetailList = value; }
}
public List<TeamDetail> TeamDetailList
{
get { return this._TeamDetailList; }
set { this._TeamDetailList = value; }
}
public static UrlaubskontoRO Create(long? employeeOid, IList<long> teamOids, DateTime startDate, DateTime endDate, IEnumerable<long> employeeOids)
{
Team team = null;
Dictionary<long, bool> empOidDict = new Dictionary<long, bool>();
var ro = new UrlaubskontoRO { ReportStartDate = startDate, ReportEndDate = endDate };
IList<Employee> employees = null;
if (employeeOid.HasValue)
{
var emp = DAOFactory.GenericDAO.GetByID<Employee>(employeeOid.Value);
employees = new List<Employee> { emp };
}
else if (teamOids != null)
{
foreach (var teamOid in teamOids)
{
team = DAOFactory.GenericDAO.GetByID<Team>(teamOid);
if (employees == null)
{
employees = team.MemberList;
}
else
{
employees.AddRange(team.MemberList);
team = null;
}
}
}
else if (employeeOids != null)
{
employees = DAOFactory.GenericDAO.LoadByIDs<Employee>(employeeOids);
}
else
{
employees = DAOFactory.GenericDAO.GetAllActiveAndArchived<Employee>();
}
if (employees == null)
{
employees = new List<Employee>();
}
foreach (var emp in employees)
{
if (!empOidDict.ContainsKey(emp.Oid.Value))
{
var empDetail = new EmployeeDetail();
bool add = true;
if (emp.IsActive == ActivationTypeId.Archived)
{
Contract c = emp.GetValidContractForDate(ro.ReportStartDate);
if (c == null) // Kein Vertrag vom 1. gefunden, gucken, ob es einen gibt, der mitten im Monat beginnt.
{
var c2 = GetNextValidContractForDate(ro.ReportStartDate, emp);
if (c2 != null && c2.EntryDate.HasValue && c2.EntryDate.Value < ro.ReportEndDate)
c = c2;
}
if (c == null)
{
add = false;
}
}
if (add)
{
ro.EmployeeDetailList.Add(empDetail);
empDetail.Teams = team == null
? DAOFactory.SearchDAO.FindTeamsOfEmployee(emp.Oid.Value)
: new List<Team> { team };
empDetail.Employee = emp;
empDetail.LastName = emp.Person.LastName;
empDetail.FirstName = emp.Person.FirstName;
empDetail.FullName = String.Format("{0}, {1}", empDetail.LastName, empDetail.FirstName);
}
if (!empOidDict.ContainsKey(emp.Oid.Value))
{
empOidDict.Add(emp.Oid.Value, true);
}
}
}
var teamOid2Details = new Dictionary<long, TeamDetail>();
foreach (var employee in ro.EmployeeDetailList)
{
if (employee.Teams.Count > 0)
{
foreach (var t in employee.Teams)
{
TeamDetail td;
if (!teamOid2Details.ContainsKey(t.Oid.Value))
{
td = new TeamDetail { TeamName = t.Name, TeamLeader = t.Leader };
ro.TeamDetailList.Add(td);
teamOid2Details.Add(t.Oid.Value, td);
}
else
{
td = teamOid2Details[t.Oid.Value];
}
td.EmployeeDetailList.Add(employee);
}
}
}
ro.TeamDetailList.Sort((t1, t2) => t1.TeamName.CompareTo(t2.TeamName));
foreach (var teamDetail in ro.TeamDetailList)
{
if (teamDetail.EmployeeDetailList != null)
{
teamDetail.EmployeeDetailList.Sort((e1, e2) => e1.FullName.CompareTo(e2.FullName));
}
}
ro.EmployeeDetailList.Sort((e1, e2) => e1.FullName.CompareTo(e2.FullName));
return ro;
}
private static Contract GetNextValidContractForDate(DateTime dt, Employee emp)
{
Contract contractNextToStartDate = emp.GetValidContractForDate(dt);
if (contractNextToStartDate == null)
{
foreach (var item in emp.Contracts)
{
if (item.EntryDate.HasValue && item.EntryDate.Value >= dt)
{
if (contractNextToStartDate == null || item.EntryDate.Value < contractNextToStartDate.EntryDate.Value)
{
contractNextToStartDate = item;
}
}
}
}
return contractNextToStartDate;
}
public class TeamDetail
{
private List<EmployeeDetail> _EmployeeDetailList = new List<EmployeeDetail>();
public string TeamName { get; set; }
public Employee TeamLeader { get; set; }
public List<EmployeeDetail> EmployeeDetailList
{
get
{
return this._EmployeeDetailList;
}
set
{
this._EmployeeDetailList = value;
}
}
}
public class EmployeeDetail
{
public IList<Team> Teams { get; set; }
public Employee Employee { get; set; }
public string FirstName { get; set; }
public string LastName { get; set; }
public string FullName { get; set; }
public bool HasContract { get; set; }
public Dictionary<string, decimal> TagZuUrlaub { get; set; }
public Dictionary<string, decimal> TagZuKrankheit { get; set; }
public List<AbsenceTime> AbsenceTimesInTimeSpan { get; set; }
public IList<AbsenceTime> AllAbsenceTimes { get; set; }
}
}
}

View File

@@ -134,8 +134,8 @@ namespace AlphaEv
{
XtraReport report = null;
ServicesOverviewRO flsRo = ServicesOverviewRO.CopyFromRO(ro);
ServicesOverviewRO assiRo = ServicesOverviewRO.CopyFromRO(ro);
ServicesOverviewRO flsRo = CopyFromRO(ro);
ServicesOverviewRO assiRo = CopyFromRO(ro);
if (ro.Services != null)
{
@@ -171,6 +171,52 @@ namespace AlphaEv
return report;
}
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;
return newRo;
}
private XtraReport AddReportToReport(XtraReport report, ServicesOverviewRO ro, bool isAssi)
{
if (ro.Services.Count > 0)

View File

@@ -30,8 +30,10 @@ namespace AlphaEv
private void InitializeComponent()
{
this.components = new System.ComponentModel.Container();
DevExpress.XtraReports.UI.XRSummary xrSummary1 = new DevExpress.XtraReports.UI.XRSummary();
DevExpress.XtraReports.UI.XRSummary xrSummary2 = new DevExpress.XtraReports.UI.XRSummary();
DevExpress.XtraReports.UI.XRSummary xrSummary3 = new DevExpress.XtraReports.UI.XRSummary();
DevExpress.XtraReports.UI.XRSummary xrSummary4 = new DevExpress.XtraReports.UI.XRSummary();
DevExpress.XtraReports.UI.XRSummary xrSummary1 = new DevExpress.XtraReports.UI.XRSummary();
this.Detail = new DevExpress.XtraReports.UI.DetailBand();
this.Detail1 = new DevExpress.XtraReports.UI.DetailBand();
this.xrTableDetail = new DevExpress.XtraReports.UI.XRTable();
@@ -88,6 +90,11 @@ namespace AlphaEv
this.bottomMarginBand1 = new DevExpress.XtraReports.UI.BottomMarginBand();
this.fieldRelationSollIst = new DevExpress.XtraReports.UI.CalculatedField();
this.ruleNurSichtbarWennGr0Prozent = new DevExpress.XtraReports.UI.FormattingRule();
this.xrTableCell17 = new DevExpress.XtraReports.UI.XRTableCell();
this.xrTableCell18 = new DevExpress.XtraReports.UI.XRTableCell();
this.xrTableCell21 = new DevExpress.XtraReports.UI.XRTableCell();
this.fieldMittelbareZeiten = new DevExpress.XtraReports.UI.CalculatedField();
this.fieldDiffMit25Percent = new DevExpress.XtraReports.UI.CalculatedField();
((System.ComponentModel.ISupportInitialize)(this.xrTableDetail)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.xrTableHeader)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.xrTable1)).BeginInit();
@@ -120,7 +127,7 @@ namespace AlphaEv
this.xrTableDetail.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.xrTableDetail.Rows.AddRange(new DevExpress.XtraReports.UI.XRTableRow[] {
this.xrTableRowDetail});
this.xrTableDetail.SizeF = new System.Drawing.SizeF(1010F, 25F);
this.xrTableDetail.SizeF = new System.Drawing.SizeF(1040F, 25F);
this.xrTableDetail.StylePriority.UseBorders = false;
this.xrTableDetail.StylePriority.UseFont = false;
this.xrTableDetail.StylePriority.UsePadding = false;
@@ -135,6 +142,7 @@ namespace AlphaEv
this.xrTableCell20,
this.xrTableCell28,
this.xrTableCell16,
this.xrTableCell18,
this.xrTableCell27,
this.xrTableCell14,
this.xrTableCell6,
@@ -186,7 +194,7 @@ namespace AlphaEv
new DevExpress.XtraReports.UI.XRBinding("Text", null, "EmployeeDetailList.FlsSoll", "{0:0.00}")});
this.xrTableCell16.Name = "xrTableCell16";
this.xrTableCell16.Text = "xrTableCell16";
this.xrTableCell16.Weight = 0.081154192966636562D;
this.xrTableCell16.Weight = 0.072137060414788054D;
//
// xrTableCell27
//
@@ -194,36 +202,36 @@ namespace AlphaEv
new DevExpress.XtraReports.UI.XRBinding("Text", null, "EmployeeDetailList.FlsIst", "{0:0.00}")});
this.xrTableCell27.Name = "xrTableCell27";
this.xrTableCell27.Text = "xrTableCell27";
this.xrTableCell27.Weight = 0.081154192966636632D;
this.xrTableCell27.Weight = 0.072137060414788123D;
//
// xrTableCell14
//
this.xrTableCell14.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
new DevExpress.XtraReports.UI.XRBinding("Text", null, "EmployeeDetailList.Custom2", "{0:0.00}")});
this.xrTableCell14.Name = "xrTableCell14";
this.xrTableCell14.Weight = 0.081154192966636646D;
this.xrTableCell14.Weight = 0.072137060414788123D;
//
// xrTableCell6
//
this.xrTableCell6.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
new DevExpress.XtraReports.UI.XRBinding("Text", null, "EmployeeDetailList.Custom1", "{0:0.00}")});
this.xrTableCell6.Name = "xrTableCell6";
this.xrTableCell6.Weight = 0.081154192966636618D;
this.xrTableCell6.Weight = 0.072137060414788109D;
//
// xrTableCell23
//
this.xrTableCell23.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
new DevExpress.XtraReports.UI.XRBinding("Text", null, "EmployeeDetailList.fieldRelationSollIst", "{0:0.0}%")});
this.xrTableCell23.Name = "xrTableCell23";
this.xrTableCell23.Weight = 0.081154192966636549D;
this.xrTableCell23.Weight = 0.07213706041478804D;
//
// xrTableCell22
//
this.xrTableCell22.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
new DevExpress.XtraReports.UI.XRBinding("Text", null, "EmployeeDetailList.FlsDiff", "{0:0.00}")});
new DevExpress.XtraReports.UI.XRBinding("Text", null, "EmployeeDetailList.fieldDiffMit25Percent", "{0:0.00}")});
this.xrTableCell22.Name = "xrTableCell22";
this.xrTableCell22.Text = "xrTableCell22";
this.xrTableCell22.Weight = 0.08115419296663666D;
this.xrTableCell22.Weight = 0.081154192966636646D;
//
// DetailReport
//
@@ -255,7 +263,7 @@ namespace AlphaEv
this.xrTableHeader.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.xrTableHeader.Rows.AddRange(new DevExpress.XtraReports.UI.XRTableRow[] {
this.xrTableRowHeader});
this.xrTableHeader.SizeF = new System.Drawing.SizeF(1010F, 40F);
this.xrTableHeader.SizeF = new System.Drawing.SizeF(1040F, 40F);
this.xrTableHeader.StylePriority.UseBorders = false;
this.xrTableHeader.StylePriority.UseFont = false;
this.xrTableHeader.StylePriority.UsePadding = false;
@@ -270,6 +278,7 @@ namespace AlphaEv
this.xrTableCell2,
this.xrTableCell9,
this.xrTableCell8,
this.xrTableCell17,
this.xrTableCell10,
this.xrTableCell13,
this.xrTableCell1,
@@ -311,28 +320,28 @@ namespace AlphaEv
//
this.xrTableCell8.Name = "xrTableCell8";
this.xrTableCell8.Text = "FLS Stunden SOLL";
this.xrTableCell8.Weight = 0.081154192858962415D;
this.xrTableCell8.Weight = 0.072137060142296913D;
//
// xrTableCell10
//
this.xrTableCell10.Name = "xrTableCell10";
this.xrTableCell10.StylePriority.UseBackColor = false;
this.xrTableCell10.Text = "FLS IST";
this.xrTableCell10.Weight = 0.081154199738488586D;
this.xrTableCell10.Weight = 0.072137060047008483D;
//
// xrTableCell13
//
this.xrTableCell13.Multiline = true;
this.xrTableCell13.Name = "xrTableCell13";
this.xrTableCell13.Text = "FLS IST in\r\nBezugsbetr.";
this.xrTableCell13.Weight = 0.08115419948423383D;
this.xrTableCell13.Weight = 0.072137066719924189D;
//
// xrTableCell1
//
this.xrTableCell1.Multiline = true;
this.xrTableCell1.Name = "xrTableCell1";
this.xrTableCell1.Text = "FLS IST in\r\nVertretung";
this.xrTableCell1.Weight = 0.081154199484233844D;
this.xrTableCell1.Weight = 0.0721370667199242D;
//
// xrTableCell11
//
@@ -340,13 +349,13 @@ namespace AlphaEv
this.xrTableCell11.Name = "xrTableCell11";
this.xrTableCell11.StylePriority.UseBackColor = false;
this.xrTableCell11.Text = "FLS/SOLL\r\ntatsächl.";
this.xrTableCell11.Weight = 0.081154192808111425D;
this.xrTableCell11.Weight = 0.0721370600438018D;
//
// xrTableCell7
//
this.xrTableCell7.Name = "xrTableCell7";
this.xrTableCell7.Text = "FLS Plus/Minus lfd. Monat";
this.xrTableCell7.Weight = 0.081154192666195821D;
this.xrTableCell7.Weight = 0.081154206425248482D;
//
// GroupFooter1
//
@@ -365,7 +374,7 @@ namespace AlphaEv
this.xrTable1.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.xrTable1.Rows.AddRange(new DevExpress.XtraReports.UI.XRTableRow[] {
this.xrTableRow1});
this.xrTable1.SizeF = new System.Drawing.SizeF(1010F, 25F);
this.xrTable1.SizeF = new System.Drawing.SizeF(1040F, 25F);
this.xrTable1.StylePriority.UseBorders = false;
this.xrTable1.StylePriority.UseFont = false;
this.xrTable1.StylePriority.UsePadding = false;
@@ -380,6 +389,7 @@ namespace AlphaEv
this.xrTableCell39,
this.cellSollGesamt,
this.cellFLSSollGesamt,
this.xrTableCell21,
this.cellFLSIstGesamt,
this.xrTableCell15,
this.xrTableCell12,
@@ -423,7 +433,7 @@ namespace AlphaEv
new DevExpress.XtraReports.UI.XRBinding("Text", null, "FlsSollGesamt", "{0:0.00}")});
this.cellFLSSollGesamt.Name = "cellFLSSollGesamt";
this.cellFLSSollGesamt.Text = "cellFLSSollGesamt";
this.cellFLSSollGesamt.Weight = 0.081154193105616959D;
this.cellFLSSollGesamt.Weight = 0.072137060802211148D;
//
// cellFLSIstGesamt
//
@@ -431,41 +441,43 @@ namespace AlphaEv
new DevExpress.XtraReports.UI.XRBinding("Text", null, "FlsIstGesamt", "{0:0.00}")});
this.cellFLSIstGesamt.Name = "cellFLSIstGesamt";
this.cellFLSIstGesamt.Text = "cellFLSIstGesamt";
this.cellFLSIstGesamt.Weight = 0.081154193105617D;
this.cellFLSIstGesamt.Weight = 0.072137060759419031D;
//
// xrTableCell15
//
this.xrTableCell15.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
new DevExpress.XtraReports.UI.XRBinding("Text", null, "EmployeeDetailList.Custom2")});
this.xrTableCell15.Name = "xrTableCell15";
xrSummary1.FormatString = "{0:0.00}";
xrSummary1.Running = DevExpress.XtraReports.UI.SummaryRunning.Report;
this.xrTableCell15.Summary = xrSummary1;
this.xrTableCell15.Weight = 0.081154193652928475D;
xrSummary2.FormatString = "{0:0.00}";
xrSummary2.Running = DevExpress.XtraReports.UI.SummaryRunning.Report;
this.xrTableCell15.Summary = xrSummary2;
this.xrTableCell15.Weight = 0.072137061328126584D;
//
// xrTableCell12
//
this.xrTableCell12.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
new DevExpress.XtraReports.UI.XRBinding("Text", null, "EmployeeDetailList.Custom1")});
this.xrTableCell12.Name = "xrTableCell12";
xrSummary2.FormatString = "{0:0.00}";
xrSummary2.Running = DevExpress.XtraReports.UI.SummaryRunning.Report;
this.xrTableCell12.Summary = xrSummary2;
this.xrTableCell12.Weight = 0.081154193652928461D;
xrSummary3.FormatString = "{0:0.00}";
xrSummary3.Running = DevExpress.XtraReports.UI.SummaryRunning.Report;
this.xrTableCell12.Summary = xrSummary3;
this.xrTableCell12.Weight = 0.072137061328126528D;
//
// cellGesamtGesamt
//
this.cellGesamtGesamt.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
new DevExpress.XtraReports.UI.XRBinding("Text", null, "StundenGesamt", "{0:0.0}%")});
this.cellGesamtGesamt.Name = "cellGesamtGesamt";
this.cellGesamtGesamt.Weight = 0.081154193215078926D;
this.cellGesamtGesamt.Weight = 0.072137060890277063D;
//
// cellFLSPlusMinusGesamt
//
this.cellFLSPlusMinusGesamt.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
new DevExpress.XtraReports.UI.XRBinding("Text", null, "FlsDiffGesamt", "{0:0.00}")});
new DevExpress.XtraReports.UI.XRBinding("Text", null, "EmployeeDetailList.fieldDiffMit25Percent")});
this.cellFLSPlusMinusGesamt.Name = "cellFLSPlusMinusGesamt";
this.cellFLSPlusMinusGesamt.Text = "cellFLSPlusMinusGesamt";
xrSummary4.FormatString = "{0:0.00}";
xrSummary4.Running = DevExpress.XtraReports.UI.SummaryRunning.Report;
this.cellFLSPlusMinusGesamt.Summary = xrSummary4;
this.cellFLSPlusMinusGesamt.Weight = 0.081154151937923427D;
//
// bindingSource1
@@ -504,7 +516,7 @@ namespace AlphaEv
//
this.xrPageInfo2.Font = new System.Drawing.Font("Arial", 8F);
this.xrPageInfo2.Format = "Seite {0} von {1}";
this.xrPageInfo2.LocationFloat = new DevExpress.Utils.PointFloat(920.0002F, 25F);
this.xrPageInfo2.LocationFloat = new DevExpress.Utils.PointFloat(950F, 25F);
this.xrPageInfo2.Name = "xrPageInfo2";
this.xrPageInfo2.SizeF = new System.Drawing.SizeF(89.99994F, 23F);
this.xrPageInfo2.StyleName = "PageInfo";
@@ -592,6 +604,44 @@ namespace AlphaEv
this.ruleNurSichtbarWennGr0Prozent.Formatting.Visible = DevExpress.Utils.DefaultBoolean.False;
this.ruleNurSichtbarWennGr0Prozent.Name = "ruleNurSichtbarWennGr0Prozent";
//
// xrTableCell17
//
this.xrTableCell17.Multiline = true;
this.xrTableCell17.Name = "xrTableCell17";
this.xrTableCell17.Text = "Mittelbare\r\nZeiten tats.";
this.xrTableCell17.Weight = 0.072137060047008483D;
//
// xrTableCell18
//
this.xrTableCell18.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
new DevExpress.XtraReports.UI.XRBinding("Text", null, "EmployeeDetailList.fieldMittelbareZeiten", "{0:0.00}")});
this.xrTableCell18.Name = "xrTableCell18";
this.xrTableCell18.Weight = 0.072137060414788109D;
//
// xrTableCell21
//
this.xrTableCell21.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
new DevExpress.XtraReports.UI.XRBinding("Text", null, "EmployeeDetailList.fieldMittelbareZeiten")});
this.xrTableCell21.Name = "xrTableCell21";
xrSummary1.FormatString = "{0:0.00}";
xrSummary1.Running = DevExpress.XtraReports.UI.SummaryRunning.Report;
this.xrTableCell21.Summary = xrSummary1;
this.xrTableCell21.Weight = 0.072137060759419044D;
//
// fieldMittelbareZeiten
//
this.fieldMittelbareZeiten.DataMember = "EmployeeDetailList";
this.fieldMittelbareZeiten.Expression = "[FlsSoll] * 0.25";
this.fieldMittelbareZeiten.FieldType = DevExpress.XtraReports.UI.FieldType.Decimal;
this.fieldMittelbareZeiten.Name = "fieldMittelbareZeiten";
//
// fieldDiffMit25Percent
//
this.fieldDiffMit25Percent.DataMember = "EmployeeDetailList";
this.fieldDiffMit25Percent.Expression = "[FlsDiff] * 1.25";
this.fieldDiffMit25Percent.FieldType = DevExpress.XtraReports.UI.FieldType.Decimal;
this.fieldDiffMit25Percent.Name = "fieldDiffMit25Percent";
//
// Mitarbeiterstundenkonto
//
this.Bands.AddRange(new DevExpress.XtraReports.UI.Band[] {
@@ -603,12 +653,14 @@ namespace AlphaEv
this.bottomMarginBand1});
this.CalculatedFields.AddRange(new DevExpress.XtraReports.UI.CalculatedField[] {
this.fieldFLS,
this.fieldRelationSollIst});
this.fieldRelationSollIst,
this.fieldMittelbareZeiten,
this.fieldDiffMit25Percent});
this.DataSource = this.bindingSource1;
this.FormattingRuleSheet.AddRange(new DevExpress.XtraReports.UI.FormattingRule[] {
this.ruleNurSichtbarWennGr0Prozent});
this.Landscape = true;
this.Margins = new System.Drawing.Printing.Margins(75, 75, 50, 30);
this.Margins = new System.Drawing.Printing.Margins(65, 60, 50, 30);
this.PageHeight = 827;
this.PageWidth = 1169;
this.PaperKind = System.Drawing.Printing.PaperKind.A4;
@@ -684,5 +736,10 @@ namespace AlphaEv
private DevExpress.XtraReports.UI.XRTableCell xrTableCell14;
private DevExpress.XtraReports.UI.XRTableCell xrTableCell13;
private DevExpress.XtraReports.UI.XRTableCell xrTableCell15;
private DevExpress.XtraReports.UI.XRTableCell xrTableCell18;
private DevExpress.XtraReports.UI.XRTableCell xrTableCell17;
private DevExpress.XtraReports.UI.XRTableCell xrTableCell21;
private DevExpress.XtraReports.UI.CalculatedField fieldMittelbareZeiten;
private DevExpress.XtraReports.UI.CalculatedField fieldDiffMit25Percent;
}
}

View File

@@ -48,6 +48,12 @@
<Reference Include="System.Xml" />
</ItemGroup>
<ItemGroup>
<Compile Include="HilfeplanBearbeitungsdauer.cs">
<SubType>Component</SubType>
</Compile>
<Compile Include="HilfeplanBearbeitungsdauer.Designer.cs">
<DependentUpon>HilfeplanBearbeitungsdauer.cs</DependentUpon>
</Compile>
<Compile Include="Export\CustomDataExporter.cs" />
<Compile Include="Export\DiamantExporter.cs" />
<Compile Include="Invoicing\CustomInvoiceFactory.cs" />
@@ -94,6 +100,9 @@
</ProjectReference>
</ItemGroup>
<ItemGroup>
<EmbeddedResource Include="HilfeplanBearbeitungsdauer.resx">
<DependentUpon>HilfeplanBearbeitungsdauer.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="Mitarbeiterstundenkonto.resx">
<DependentUpon>Mitarbeiterstundenkonto.cs</DependentUpon>
<SubType>Designer</SubType>

View File

@@ -69,6 +69,11 @@ namespace AwoDortmund.Export
public static String GetMonatlicheAbrechnungLvrString(DateTime date)
{
int startIdx = 0;
DataTable dtAssi = null;
DataTable dtOffenerTreff = null;
String sql;
if (date < new DateTime(2019, 1, 1))
{
@@ -76,11 +81,26 @@ namespace AwoDortmund.Export
}
else
{
startIdx = 1;
sql = GetMonatlicheAbrechnungLvrSqlNeu(date);
List<long> cats = new List<long>();
cats.Add(33); // Assistenzleistung
var assiSql = GetMonatlicheAbrechnungStringForCatsSql(date, cats, null);
dtAssi = ExecuteQuery(assiSql, date);
cats = new List<long>();
cats.Add(13); // Offener Treff
var otSql = GetMonatlicheAbrechnungStringForCatsSql(date, cats, null);
dtOffenerTreff = ExecuteQuery(otSql, date);
}
var dt = ExecuteQuery(sql, date);
Dictionary<long, decimal> c2sOid2AssiBetrag = CreateDictionary(dtAssi);
Dictionary<long, decimal> c2sOid2OtBetrag = CreateDictionary(dtOffenerTreff);
StringBuilder sb = new StringBuilder();
foreach (DataRow row in dt.Rows)
{
@@ -88,18 +108,19 @@ namespace AwoDortmund.Export
{
sb.AppendLine();
}
for (int i = 0; i < row.ItemArray.Length; i++)
for (int i = startIdx; i < row.ItemArray.Length; i++)
{
if (i > 0)
if (i > startIdx)
{
sb.Append(";");
}
if (i == 32)
if (i == (32 + startIdx))
{
sb.AppendLine();
}
var item = row[i];
bool quote = i == 15 || i == 38;
bool quote = i == (15 + startIdx) || i == (38 + startIdx);
if (quote)
{
@@ -119,7 +140,7 @@ namespace AwoDortmund.Export
}
else
{
ErstelleKostenstellenZeilenNeu(row, sb);
ErstelleKostenstellenZeilenNeu(row, sb, c2sOid2AssiBetrag, c2sOid2OtBetrag);
}
}
//F,0,050,,BEWO,DA,01012016,012016,iBelegNr1,Belegnr1,220001,,,,999.99, "Name AZ Abrechnung 01/2016 LVR",,,EUR,,,,,,,,,,,R,,,
@@ -127,6 +148,27 @@ namespace AwoDortmund.Export
return sb.ToString();
}
private static Dictionary<long, decimal> CreateDictionary(DataTable dt)
{
Dictionary<long, decimal> dict = new Dictionary<long, decimal>();
if (dt != null)
{
foreach (DataRow row in dt.Rows)
{
long? oid = row.ItemArray[0] as long?;
decimal? betrag = row.ItemArray[4] as decimal?;
if (oid.HasValue && betrag.HasValue)
{
dict.Add(oid.Value, betrag.Value);
}
}
}
return dict;
}
private static void ErstelleKostenstellenZeilenAlt(DataRow row, StringBuilder sb)
{
@@ -158,11 +200,13 @@ namespace AwoDortmund.Export
}
}
private static void ErstelleKostenstellenZeilenNeu(DataRow row, StringBuilder sb)
private static void ErstelleKostenstellenZeilenNeu(DataRow row, StringBuilder sb, Dictionary<long, decimal> c2sOid2AssiBetrag, Dictionary<long, decimal> c2sOid2OtBetrag)
{
if (row.ItemArray.Length > 14)
if (row.ItemArray.Length > 15)
{
var betragObj = row[14];
long? oid = row[0] as long?;
var betragObj = row[15];
decimal gesamtbetrag = 0;
if (betragObj != null)
@@ -173,6 +217,19 @@ namespace AwoDortmund.Export
decimal betragGruppen = 0;//Math.Round(gesamtbetrag, 2, MidpointRounding.AwayFromZero);
decimal betragAssistenz = 0;//Math.Round(gesamtbetrag, 2, MidpointRounding.AwayFromZero);
if (oid.HasValue && c2sOid2AssiBetrag.ContainsKey(oid.Value))
{
betragAssistenz = c2sOid2AssiBetrag[oid.Value];
betragAssistenz = Math.Round(betragAssistenz, 2, MidpointRounding.AwayFromZero);
betragBewo -= betragAssistenz;
}
if (oid.HasValue && c2sOid2OtBetrag.ContainsKey(oid.Value))
{
betragGruppen = c2sOid2OtBetrag[oid.Value];
betragGruppen = Math.Round(betragGruppen, 2, MidpointRounding.AwayFromZero);
betragBewo -= betragGruppen;
}
//bewo 610900
//offener Treff 610910 Leistungskategorie Gruppenbuchung
//Assistenzleistungen 610915 Leistungskategorien Assistenz (Kategorie Assistenzleistungen)
@@ -366,6 +423,7 @@ ORDER BY p.`LastName`, p.`FirstName`, cb2sc.`ApprovedStartDate`
String sql = @"
SELECT
cb2sc.Oid,
'F',
'0',
'114',
@@ -558,6 +616,98 @@ ORDER BY p.`LastName`, p.`FirstName`, cb2sc.`ApprovedStartDate`
return sql;
}
private static String GetMonatlicheAbrechnungStringForCatsSql(DateTime date, IList<long> includeCatOids, IList<long> excludeOids)
{
String sql = @"
SELECT distinct
cb2sc.oid,
c.oid,
sc.oid,
c.DebitorNumber,
IF(crpRateFactor.`CostRateValue` is null, ROUND((sr.`GeleisteteFLM` / 60) * crpHourlyRate.`CostRateValue`, 2),ROUND(ROUND((sr.`GeleisteteFLM` / 60), 2) * crpHourlyRate.`CostRateValue` * ((100 + crpRateFactor.`CostRateValue`)/100), 2)) AS 'Forderung',
ROUND(crpHourlyRate.`CostRateValue`,2) as 'Stundensatz', ROUND(crpRateFactor.`CostRateValue`,2) as 'PauschalerFaktor',
sr.`GeleisteteFLM`
FROM `supportconcept` sc
INNER JOIN `costbearer2supportconcept` cb2sc ON sc.`Oid` = cb2sc.`SupportConceptOid`
INNER JOIN `costbearer` cb ON cb2sc.`CostBearerOid` = cb.`Oid`
INNER JOIN
(SELECT crp.`ObjectOid`, crp.costratetype, crp.`CostRateValue`, If(crp.Enddate is null, '9999-01-01', crp.enddate) as aenddatum, crptemp.enddatum FROM `costrateperiod` crp
inner join (SELECT crpi.`ObjectOid`, Min(If(crpi.Enddate is null, '9999-01-01', crpi.enddate)) as enddatum FROM `costrateperiod` crpi
WHERE crpi.`ObjectTid` = 22 AND crpi.`CostRateType` = 0 AND (crpi.`EndDate` is null or crpi.`EndDate` > ':Monat_Start')
group by crpi.objectoid) as crptemp on crptemp.objectoid = crp.objectoid
WHERE crp.`ObjectTid` = 22 and crp.costratetype = 0
having aenddatum = crptemp.enddatum)
AS crpHourlyRate ON crpHourlyRate.`ObjectOid` = cb.`Oid`
LEFT JOIN
(SELECT crp.`ObjectOid`, crp.costratetype, crp.`CostRateValue`, If(crp.Enddate is null, '9999-01-01', crp.enddate) as aenddatum, crptemp.enddatum FROM `costrateperiod` crp
inner join (SELECT crpi.`ObjectOid`, Min(If(crpi.Enddate is null, '9999-01-01', crpi.enddate)) as enddatum FROM `costrateperiod` crpi
WHERE crpi.`ObjectTid` = 22 AND crpi.`CostRateType` = 2 AND (crpi.`EndDate` is null or crpi.`EndDate` > ':Monat_Start')
group by crpi.objectoid) as crptemp on crptemp.objectoid = crp.objectoid
WHERE crp.`ObjectTid` = 22 and crp.costratetype = 2
having aenddatum = crptemp.enddatum)
AS crpRateFactor ON crpRateFactor.`ObjectOid` = cb.`Oid`
INNER JOIN `organisation` org ON org.`CostBearerOid` = cb.`Oid`
INNER JOIN `customer` c ON sc.`CustomerOid` = c.`Oid`
INNER JOIN `person` p on c.`PersonOid` = p.`Oid`
INNER JOIN
(SELECT sr2.`CostBearer2SupportConceptOid`, SUM(sr2.`roundedduration` / IF(sr2.`GroupEmployeeCount` is null, 1, sr2.`GroupEmployeeCount`)) AS GeleisteteFLM FROM `servicerecord` sr2
INNER JOIN `servicedescription` sd ON sr2.`ServiceDescriptionOid` = sd.`Oid`
INNER JOIN `servicecategory` sc ON sd.`ServiceCategoryOid` = sc.`Oid`
WHERE sr2.`StartDate` >= ':Monat_Start' AND sr2.`StartDate` < ':Monat_End' AND sc.`Billable` = 1:IncludeCatOidList:ExcludeCatOidList GROUP BY sr2.`CostBearer2SupportConceptOid`)
AS sr ON sr.`CostBearer2SupportConceptOid` = cb2sc.`Oid`
WHERE c.`IsActive` <> 0 AND sc.`IsActive` <> 0 and (sr.`GeleisteteFLM` is not null)
ORDER BY p.`LastName`
";
String includeString = "";
String excludeString = "";
if (includeCatOids != null && includeCatOids.Count > 0)
{
StringBuilder oidList = new StringBuilder();
foreach (var catOid in includeCatOids)
{
if (oidList.Length > 0)
oidList.Append(",");
oidList.Append(catOid);
}
includeString = String.Format(" AND sc.oid in ({0})", oidList.ToString());
}
if (excludeOids != null && excludeOids.Count > 0)
{
StringBuilder notoidList = new StringBuilder();
foreach (var catOid in excludeOids)
{
if (notoidList.Length > 0)
notoidList.Append(",");
notoidList.Append(catOid);
}
excludeString = String.Format(" AND sc.oid not in ({0})", notoidList.ToString());
}
String gruppenfilter = "";
//if (!holeEinzel || !holeGruppen)
//{
// if (holeGruppen)
// {
// gruppenfilter = "AND sr2.GroupOid is not null";
// }
// else
// {
// gruppenfilter = "AND sr2.GroupOid is null";
// }
//}
sql = sql.Replace(":Gruppenfilter", gruppenfilter);
sql = sql.Replace(":IncludeCatOidList", includeString);
sql = sql.Replace(":ExcludeCatOidList", excludeString);
return sql;
}
public static DataTable ExecuteQuery(String sql, DateTime dt)
{
var newsql = sql;

View File

@@ -0,0 +1,520 @@
using BeWo.Report.ReportObjects;
namespace AwoDortmund
{
partial class HilfeplanBearbeitungsdauer
{
/// <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();
this.Detail = new DevExpress.XtraReports.UI.DetailBand();
this.Detail1 = new DevExpress.XtraReports.UI.DetailBand();
this.xrTableDetail = new DevExpress.XtraReports.UI.XRTable();
this.xrTableRowDetail = new DevExpress.XtraReports.UI.XRTableRow();
this.xrTableCell75 = new DevExpress.XtraReports.UI.XRTableCell();
this.xrTableCell23 = new DevExpress.XtraReports.UI.XRTableCell();
this.xrTableCell77 = new DevExpress.XtraReports.UI.XRTableCell();
this.xrTableCell76 = new DevExpress.XtraReports.UI.XRTableCell();
this.xrTableCell81 = new DevExpress.XtraReports.UI.XRTableCell();
this.xrTableCell82 = new DevExpress.XtraReports.UI.XRTableCell();
this.xrTableCell2 = new DevExpress.XtraReports.UI.XRTableCell();
this.xrTableCell14 = new DevExpress.XtraReports.UI.XRTableCell();
this.xrTableCell17 = new DevExpress.XtraReports.UI.XRTableCell();
this.xrTableCell20 = new DevExpress.XtraReports.UI.XRTableCell();
this.DetailReport = new DevExpress.XtraReports.UI.DetailReportBand();
this.GroupHeader1 = new DevExpress.XtraReports.UI.GroupHeaderBand();
this.xrTable1 = new DevExpress.XtraReports.UI.XRTable();
this.xrTableRow1 = new DevExpress.XtraReports.UI.XRTableRow();
this.xrTableCell3 = new DevExpress.XtraReports.UI.XRTableCell();
this.xrTableCell22 = new DevExpress.XtraReports.UI.XRTableCell();
this.xrTableCell4 = new DevExpress.XtraReports.UI.XRTableCell();
this.xrTableCell5 = new DevExpress.XtraReports.UI.XRTableCell();
this.xrTableCell6 = new DevExpress.XtraReports.UI.XRTableCell();
this.xrTableCell7 = new DevExpress.XtraReports.UI.XRTableCell();
this.xrTableCell1 = new DevExpress.XtraReports.UI.XRTableCell();
this.xrTableCell13 = new DevExpress.XtraReports.UI.XRTableCell();
this.xrTableCell16 = new DevExpress.XtraReports.UI.XRTableCell();
this.xrTableCell19 = new DevExpress.XtraReports.UI.XRTableCell();
this.ReportHeader = new DevExpress.XtraReports.UI.ReportHeaderBand();
this.lblDauer = new DevExpress.XtraReports.UI.XRLabel();
this.bindingSource1 = new System.Windows.Forms.BindingSource(this.components);
this.Title = new DevExpress.XtraReports.UI.XRControlStyle();
this.FieldCaption = new DevExpress.XtraReports.UI.XRControlStyle();
this.PageInfo = new DevExpress.XtraReports.UI.XRControlStyle();
this.DataField = new DevExpress.XtraReports.UI.XRControlStyle();
this.fieldFLS = new DevExpress.XtraReports.UI.CalculatedField();
this.topMarginBand1 = new DevExpress.XtraReports.UI.TopMarginBand();
this.bottomMarginBand1 = new DevExpress.XtraReports.UI.BottomMarginBand();
this.fieldDifferenz = new DevExpress.XtraReports.UI.CalculatedField();
((System.ComponentModel.ISupportInitialize)(this.xrTableDetail)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.xrTable1)).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;
//
// Detail1
//
this.Detail1.Controls.AddRange(new DevExpress.XtraReports.UI.XRControl[] {
this.xrTableDetail});
this.Detail1.Font = new System.Drawing.Font("Arial", 9.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.Detail1.HeightF = 20F;
this.Detail1.Name = "Detail1";
this.Detail1.StylePriority.UseFont = false;
//
// xrTableDetail
//
this.xrTableDetail.Borders = ((DevExpress.XtraPrinting.BorderSide)(((DevExpress.XtraPrinting.BorderSide.Left | DevExpress.XtraPrinting.BorderSide.Right)
| DevExpress.XtraPrinting.BorderSide.Bottom)));
this.xrTableDetail.LocationFloat = new DevExpress.Utils.PointFloat(0F, 0F);
this.xrTableDetail.Name = "xrTableDetail";
this.xrTableDetail.Rows.AddRange(new DevExpress.XtraReports.UI.XRTableRow[] {
this.xrTableRowDetail});
this.xrTableDetail.SizeF = new System.Drawing.SizeF(1140F, 20F);
this.xrTableDetail.StylePriority.UseBorders = false;
this.xrTableDetail.StylePriority.UsePadding = false;
this.xrTableDetail.StylePriority.UseTextAlignment = false;
this.xrTableDetail.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleLeft;
//
// xrTableRowDetail
//
this.xrTableRowDetail.Cells.AddRange(new DevExpress.XtraReports.UI.XRTableCell[] {
this.xrTableCell75,
this.xrTableCell23,
this.xrTableCell77,
this.xrTableCell76,
this.xrTableCell81,
this.xrTableCell82,
this.xrTableCell2,
this.xrTableCell14,
this.xrTableCell17,
this.xrTableCell20});
this.xrTableRowDetail.Name = "xrTableRowDetail";
this.xrTableRowDetail.Padding = new DevExpress.XtraPrinting.PaddingInfo(3, 0, 0, 0, 100F);
this.xrTableRowDetail.StylePriority.UsePadding = false;
this.xrTableRowDetail.Weight = 1D;
//
// xrTableCell75
//
this.xrTableCell75.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
new DevExpress.XtraReports.UI.XRBinding("Text", null, "Rows.Field1")});
this.xrTableCell75.Name = "xrTableCell75";
this.xrTableCell75.StylePriority.UseBackColor = false;
this.xrTableCell75.Weight = 0.14492073661013849D;
//
// xrTableCell23
//
this.xrTableCell23.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
new DevExpress.XtraReports.UI.XRBinding("Text", null, "Rows.Field10")});
this.xrTableCell23.Name = "xrTableCell23";
this.xrTableCell23.StylePriority.UseTextAlignment = false;
this.xrTableCell23.Text = "xrTableCell23";
this.xrTableCell23.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleCenter;
this.xrTableCell23.Weight = 0.090575462762448086D;
//
// xrTableCell77
//
this.xrTableCell77.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
new DevExpress.XtraReports.UI.XRBinding("Text", null, "Rows.Field2", "{0:dd.MM.yyyy}")});
this.xrTableCell77.Name = "xrTableCell77";
this.xrTableCell77.StylePriority.UseBackColor = false;
this.xrTableCell77.StylePriority.UseTextAlignment = false;
this.xrTableCell77.Text = "xrTableCell77";
this.xrTableCell77.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleCenter;
this.xrTableCell77.Weight = 0.090575462762448086D;
//
// xrTableCell76
//
this.xrTableCell76.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
new DevExpress.XtraReports.UI.XRBinding("Text", null, "Rows.Field3", "{0:0.00}")});
this.xrTableCell76.Name = "xrTableCell76";
this.xrTableCell76.StylePriority.UseBackColor = false;
this.xrTableCell76.StylePriority.UseTextAlignment = false;
this.xrTableCell76.Text = "xrTableCell76";
this.xrTableCell76.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleCenter;
this.xrTableCell76.Weight = 0.09057546757796768D;
//
// xrTableCell81
//
this.xrTableCell81.Borders = ((DevExpress.XtraPrinting.BorderSide)(((DevExpress.XtraPrinting.BorderSide.Left | DevExpress.XtraPrinting.BorderSide.Right)
| DevExpress.XtraPrinting.BorderSide.Bottom)));
this.xrTableCell81.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
new DevExpress.XtraReports.UI.XRBinding("Text", null, "Rows.Field4", "{0:0}")});
this.xrTableCell81.Name = "xrTableCell81";
this.xrTableCell81.StylePriority.UseBackColor = false;
this.xrTableCell81.StylePriority.UseBorders = false;
this.xrTableCell81.StylePriority.UseTextAlignment = false;
this.xrTableCell81.Text = "xrTableCell81";
this.xrTableCell81.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleCenter;
this.xrTableCell81.Weight = 0.072460370446724182D;
//
// xrTableCell82
//
this.xrTableCell82.Borders = ((DevExpress.XtraPrinting.BorderSide)(((DevExpress.XtraPrinting.BorderSide.Left | DevExpress.XtraPrinting.BorderSide.Right)
| DevExpress.XtraPrinting.BorderSide.Bottom)));
this.xrTableCell82.BorderWidth = 1F;
this.xrTableCell82.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
new DevExpress.XtraReports.UI.XRBinding("Text", null, "Rows.Field5", "{0:c}")});
this.xrTableCell82.Name = "xrTableCell82";
this.xrTableCell82.StylePriority.UseBackColor = false;
this.xrTableCell82.StylePriority.UseBorders = false;
this.xrTableCell82.StylePriority.UseBorderWidth = false;
this.xrTableCell82.StylePriority.UseTextAlignment = false;
this.xrTableCell82.Text = "xrTableCell82";
this.xrTableCell82.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleCenter;
this.xrTableCell82.Weight = 0.11774810007681832D;
//
// xrTableCell2
//
this.xrTableCell2.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
new DevExpress.XtraReports.UI.XRBinding("Text", null, "Rows.Field6")});
this.xrTableCell2.Name = "xrTableCell2";
this.xrTableCell2.StylePriority.UseTextAlignment = false;
this.xrTableCell2.Text = "xrTableCell2";
this.xrTableCell2.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleCenter;
this.xrTableCell2.Weight = 0.090575461324636258D;
//
// xrTableCell14
//
this.xrTableCell14.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
new DevExpress.XtraReports.UI.XRBinding("Text", null, "Rows.Field7")});
this.xrTableCell14.Name = "xrTableCell14";
this.xrTableCell14.StylePriority.UseTextAlignment = false;
this.xrTableCell14.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleCenter;
this.xrTableCell14.Weight = 0.090575461324636258D;
//
// xrTableCell17
//
this.xrTableCell17.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
new DevExpress.XtraReports.UI.XRBinding("Text", null, "Rows.Field8")});
this.xrTableCell17.Name = "xrTableCell17";
this.xrTableCell17.StylePriority.UseTextAlignment = false;
this.xrTableCell17.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleCenter;
this.xrTableCell17.Weight = 0.090575461324636258D;
//
// xrTableCell20
//
this.xrTableCell20.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
new DevExpress.XtraReports.UI.XRBinding("Text", null, "Rows.Field9")});
this.xrTableCell20.Name = "xrTableCell20";
this.xrTableCell20.StylePriority.UseTextAlignment = false;
this.xrTableCell20.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleCenter;
this.xrTableCell20.Weight = 0.15397828482369286D;
//
// DetailReport
//
this.DetailReport.Bands.AddRange(new DevExpress.XtraReports.UI.Band[] {
this.Detail1,
this.GroupHeader1,
this.ReportHeader});
this.DetailReport.DataMember = "Rows";
this.DetailReport.DataSource = this.bindingSource1;
this.DetailReport.Level = 0;
this.DetailReport.Name = "DetailReport";
//
// GroupHeader1
//
this.GroupHeader1.Controls.AddRange(new DevExpress.XtraReports.UI.XRControl[] {
this.xrTable1});
this.GroupHeader1.Font = new System.Drawing.Font("Arial", 9.75F, System.Drawing.FontStyle.Bold);
this.GroupHeader1.HeightF = 40F;
this.GroupHeader1.Name = "GroupHeader1";
this.GroupHeader1.RepeatEveryPage = true;
this.GroupHeader1.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, 0F);
this.xrTable1.Name = "xrTable1";
this.xrTable1.Rows.AddRange(new DevExpress.XtraReports.UI.XRTableRow[] {
this.xrTableRow1});
this.xrTable1.SizeF = new System.Drawing.SizeF(1140F, 40F);
this.xrTable1.StylePriority.UseBackColor = false;
this.xrTable1.StylePriority.UseBorders = false;
this.xrTable1.StylePriority.UsePadding = false;
this.xrTable1.StylePriority.UseTextAlignment = false;
this.xrTable1.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleCenter;
//
// xrTableRow1
//
this.xrTableRow1.Cells.AddRange(new DevExpress.XtraReports.UI.XRTableCell[] {
this.xrTableCell3,
this.xrTableCell22,
this.xrTableCell4,
this.xrTableCell5,
this.xrTableCell6,
this.xrTableCell7,
this.xrTableCell1,
this.xrTableCell13,
this.xrTableCell16,
this.xrTableCell19});
this.xrTableRow1.Name = "xrTableRow1";
this.xrTableRow1.Weight = 2D;
//
// xrTableCell3
//
this.xrTableCell3.Name = "xrTableCell3";
this.xrTableCell3.StylePriority.UseBackColor = false;
this.xrTableCell3.Text = "Name";
this.xrTableCell3.Weight = 0.14492073661013849D;
//
// xrTableCell22
//
this.xrTableCell22.Name = "xrTableCell22";
this.xrTableCell22.Text = "Kostenträger";
this.xrTableCell22.Weight = 0.090575462762448086D;
//
// xrTableCell4
//
this.xrTableCell4.Multiline = true;
this.xrTableCell4.Name = "xrTableCell4";
this.xrTableCell4.StylePriority.UseBackColor = false;
this.xrTableCell4.Text = "Bewilligung\r\nStart";
this.xrTableCell4.Weight = 0.090575462762448086D;
//
// xrTableCell5
//
this.xrTableCell5.Multiline = true;
this.xrTableCell5.Name = "xrTableCell5";
this.xrTableCell5.StylePriority.UseBackColor = false;
this.xrTableCell5.Text = "Bewilligung\r\nEnde";
this.xrTableCell5.Weight = 0.090575460667608285D;
//
// xrTableCell6
//
this.xrTableCell6.Multiline = true;
this.xrTableCell6.Name = "xrTableCell6";
this.xrTableCell6.StylePriority.UseBackColor = false;
this.xrTableCell6.StylePriority.UseBorders = false;
this.xrTableCell6.Text = "Erstantrag";
this.xrTableCell6.Weight = 0.072460370446724182D;
//
// xrTableCell7
//
this.xrTableCell7.BorderWidth = 1F;
this.xrTableCell7.Multiline = true;
this.xrTableCell7.Name = "xrTableCell7";
this.xrTableCell7.StylePriority.UseBackColor = false;
this.xrTableCell7.StylePriority.UseBorders = false;
this.xrTableCell7.StylePriority.UseBorderWidth = false;
this.xrTableCell7.Text = "Weiterbewilligung\r\nbeantragt";
this.xrTableCell7.Weight = 0.11774810353199802D;
//
// xrTableCell1
//
this.xrTableCell1.Multiline = true;
this.xrTableCell1.Name = "xrTableCell1";
this.xrTableCell1.Text = "Hilfeplan\r\neingereicht";
this.xrTableCell1.Weight = 0.090575464779815956D;
//
// xrTableCell13
//
this.xrTableCell13.Multiline = true;
this.xrTableCell13.Name = "xrTableCell13";
this.xrTableCell13.Text = "Hilfeplan-\r\nkonferenz";
this.xrTableCell13.Weight = 0.090575464779815956D;
//
// xrTableCell16
//
this.xrTableCell16.Multiline = true;
this.xrTableCell16.Name = "xrTableCell16";
this.xrTableCell16.Text = "Bewilligung\r\neingetroffen";
this.xrTableCell16.Weight = 0.090575464779815956D;
//
// xrTableCell19
//
this.xrTableCell19.Name = "xrTableCell19";
this.xrTableCell19.Text = "Wochen vom Einreichen bis Bewilligung";
this.xrTableCell19.Weight = 0.15397828902690114D;
//
// ReportHeader
//
this.ReportHeader.Controls.AddRange(new DevExpress.XtraReports.UI.XRControl[] {
this.lblDauer});
this.ReportHeader.HeightF = 50F;
this.ReportHeader.Name = "ReportHeader";
//
// lblDauer
//
this.lblDauer.Font = new System.Drawing.Font("Arial", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.lblDauer.LocationFloat = new DevExpress.Utils.PointFloat(0F, 10.00001F);
this.lblDauer.Multiline = true;
this.lblDauer.Name = "lblDauer";
this.lblDauer.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.lblDauer.SizeF = new System.Drawing.SizeF(1140F, 25F);
this.lblDauer.StylePriority.UseFont = false;
this.lblDauer.StylePriority.UseTextAlignment = false;
this.lblDauer.Text = "Durchschnittliche Dauer zwischen HPK und Bewilligung:";
this.lblDauer.TextAlignment = DevExpress.XtraPrinting.TextAlignment.TopLeft;
//
// bindingSource1
//
this.bindingSource1.DataSource = typeof(BeWo.Report.ReportObjects.QueryRO);
//
// Title
//
this.Title.BackColor = System.Drawing.Color.White;
this.Title.BorderColor = System.Drawing.SystemColors.ControlText;
this.Title.Borders = DevExpress.XtraPrinting.BorderSide.None;
this.Title.BorderWidth = 1F;
this.Title.Font = new System.Drawing.Font("Times New Roman", 24F);
this.Title.ForeColor = System.Drawing.Color.Black;
this.Title.Name = "Title";
//
// FieldCaption
//
this.FieldCaption.BackColor = System.Drawing.Color.White;
this.FieldCaption.BorderColor = System.Drawing.SystemColors.ControlText;
this.FieldCaption.Borders = DevExpress.XtraPrinting.BorderSide.None;
this.FieldCaption.BorderWidth = 1F;
this.FieldCaption.Font = new System.Drawing.Font("Times New Roman", 10F, System.Drawing.FontStyle.Bold);
this.FieldCaption.ForeColor = System.Drawing.Color.Black;
this.FieldCaption.Name = "FieldCaption";
//
// PageInfo
//
this.PageInfo.BackColor = System.Drawing.Color.White;
this.PageInfo.BorderColor = System.Drawing.SystemColors.ControlText;
this.PageInfo.Borders = DevExpress.XtraPrinting.BorderSide.None;
this.PageInfo.BorderWidth = 1F;
this.PageInfo.Font = new System.Drawing.Font("Times New Roman", 8F);
this.PageInfo.ForeColor = System.Drawing.Color.Black;
this.PageInfo.Name = "PageInfo";
//
// DataField
//
this.DataField.BackColor = System.Drawing.Color.White;
this.DataField.BorderColor = System.Drawing.SystemColors.ControlText;
this.DataField.Borders = DevExpress.XtraPrinting.BorderSide.None;
this.DataField.BorderWidth = 1F;
this.DataField.Font = new System.Drawing.Font("Times New Roman", 8F);
this.DataField.ForeColor = System.Drawing.SystemColors.ControlText;
this.DataField.Name = "DataField";
//
// fieldFLS
//
this.fieldFLS.DataMember = "FLSReportGroups";
this.fieldFLS.Expression = "[TotalFLM] / 60";
this.fieldFLS.FieldType = DevExpress.XtraReports.UI.FieldType.Decimal;
this.fieldFLS.Name = "fieldFLS";
//
// topMarginBand1
//
this.topMarginBand1.HeightF = 50F;
this.topMarginBand1.Name = "topMarginBand1";
//
// bottomMarginBand1
//
this.bottomMarginBand1.HeightF = 51F;
this.bottomMarginBand1.Name = "bottomMarginBand1";
//
// fieldDifferenz
//
this.fieldDifferenz.Expression = "Sum([DetailList.GeleisteteFlsGesamt]) - Sum([DetailList.AbrechnungVereinbarteFls]" +
")";
this.fieldDifferenz.FieldType = DevExpress.XtraReports.UI.FieldType.Decimal;
this.fieldDifferenz.Name = "fieldDifferenz";
//
// HilfeplanBearbeitungsdauer
//
this.Bands.AddRange(new DevExpress.XtraReports.UI.Band[] {
this.Detail,
this.DetailReport,
this.topMarginBand1,
this.bottomMarginBand1});
this.CalculatedFields.AddRange(new DevExpress.XtraReports.UI.CalculatedField[] {
this.fieldFLS,
this.fieldDifferenz});
this.DataSource = this.bindingSource1;
this.Landscape = true;
this.Margins = new System.Drawing.Printing.Margins(30, 30, 50, 51);
this.PageHeight = 827;
this.PageWidth = 1200;
this.PaperKind = System.Drawing.Printing.PaperKind.Custom;
this.StyleSheet.AddRange(new DevExpress.XtraReports.UI.XRControlStyle[] {
this.Title,
this.FieldCaption,
this.PageInfo,
this.DataField});
this.Version = "17.1";
((System.ComponentModel.ISupportInitialize)(this.xrTableDetail)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.xrTable1)).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.DetailBand Detail1;
private DevExpress.XtraReports.UI.DetailReportBand DetailReport;
private DevExpress.XtraReports.UI.XRControlStyle Title;
private DevExpress.XtraReports.UI.XRControlStyle FieldCaption;
private DevExpress.XtraReports.UI.XRControlStyle PageInfo;
private DevExpress.XtraReports.UI.XRControlStyle DataField;
private DevExpress.XtraReports.UI.XRTable xrTableDetail;
private DevExpress.XtraReports.UI.XRTableRow xrTableRowDetail;
private DevExpress.XtraReports.UI.CalculatedField fieldFLS;
private DevExpress.XtraReports.UI.TopMarginBand topMarginBand1;
private DevExpress.XtraReports.UI.BottomMarginBand bottomMarginBand1;
private DevExpress.XtraReports.UI.GroupHeaderBand GroupHeader1;
private DevExpress.XtraReports.UI.XRTableCell xrTableCell75;
private DevExpress.XtraReports.UI.XRTableCell xrTableCell77;
private DevExpress.XtraReports.UI.XRTableCell xrTableCell76;
private DevExpress.XtraReports.UI.XRTableCell xrTableCell81;
private DevExpress.XtraReports.UI.XRTableCell xrTableCell82;
private DevExpress.XtraReports.UI.CalculatedField fieldDifferenz;
private DevExpress.XtraReports.UI.XRTable xrTable1;
private DevExpress.XtraReports.UI.XRTableRow xrTableRow1;
private DevExpress.XtraReports.UI.XRTableCell xrTableCell3;
private DevExpress.XtraReports.UI.XRTableCell xrTableCell4;
private DevExpress.XtraReports.UI.XRTableCell xrTableCell5;
private DevExpress.XtraReports.UI.XRTableCell xrTableCell6;
private DevExpress.XtraReports.UI.XRTableCell xrTableCell7;
private DevExpress.XtraReports.UI.ReportHeaderBand ReportHeader;
private DevExpress.XtraReports.UI.XRLabel lblDauer;
private DevExpress.XtraReports.UI.XRTableCell xrTableCell2;
private DevExpress.XtraReports.UI.XRTableCell xrTableCell1;
private DevExpress.XtraReports.UI.XRTableCell xrTableCell14;
private DevExpress.XtraReports.UI.XRTableCell xrTableCell13;
private DevExpress.XtraReports.UI.XRTableCell xrTableCell16;
private DevExpress.XtraReports.UI.XRTableCell xrTableCell17;
private DevExpress.XtraReports.UI.XRTableCell xrTableCell20;
private DevExpress.XtraReports.UI.XRTableCell xrTableCell19;
private DevExpress.XtraReports.UI.XRTableCell xrTableCell23;
private DevExpress.XtraReports.UI.XRTableCell xrTableCell22;
}
}

View File

@@ -0,0 +1,183 @@
using System;
using BeWo.Report.ReportObjects;
using BeWo.Report;
using DevExpress.XtraReports.UI;
using System.Data;
using BeWo.Data.Access;
using System.Collections.Generic;
using System.Drawing.Imaging;
using System.Linq;
using System.Xml.Schema;
using BeWo.Data.Entities;
using BeWo.Service.DCEntityMapper;
using BeWo.Service.Plugins;
using BeWo.Service.ServiceImplementations;
using BS.Shared;
using BS.Shared.Core;
using BS.Shared.Extensions;
using BS.Shared.Services;
using DevExpress.Xpo.DB;
namespace AwoDortmund
{
[IDSpecificClass(Identifier = "HilfeplanBearbeitungsdauer")]
public partial class HilfeplanBearbeitungsdauer : DevExpress.XtraReports.UI.XtraReport, IBeWoReport<QueryRO>
{
private Dictionary<long, List<CostBearer2SupportConcept>> customer2CostbearerSupportConcepts = new Dictionary<long, List<CostBearer2SupportConcept>>();
public HilfeplanBearbeitungsdauer()
{
InitializeComponent();
}
public void SetReportDataSource(QueryRO queryRo)
{
var ro = CreateRo(queryRo);
this.bindingSource1.DataSource = ro;
}
private QueryRO CreateRo(QueryRO queryRo)
{
QueryRO result = new QueryRO();
long? serviceCategory = null;
DateTime reportStart = DateTime.MinValue;
DateTime reportEnde = DateTime.MaxValue;
var alleHps = DAOFactory.GenericDAO.GetAllActiveAndArchived<SupportConcept>();
foreach (var sc in alleHps)
{
var coid = sc.Customer.Oid.Value;
foreach (var c2s in sc.CostBearer2SupportConceptList)
{
if (!customer2CostbearerSupportConcepts.ContainsKey(coid))
{
customer2CostbearerSupportConcepts.Add(coid, new List<CostBearer2SupportConcept>());
}
customer2CostbearerSupportConcepts[coid].Add(c2s);
}
}
//long orgOid = 0;
DateTime datum = DateTime.Now;
if (queryRo.Rows.Count > 0)
{
if (queryRo.Rows[0].Field1 != null)
{
DateTime.TryParse(queryRo.Rows[0].Field1.ToString(), out datum);
if (datum == DateTime.MinValue)
{
datum = DateTime.Now;
}
}
//if (queryRo.Rows[0].Field2 != null)
//{
// Int64.TryParse(queryRo.Rows[0].Field2.ToString(), out orgOid);
//}
}
datum = new DateTime(datum.Year, datum.Month, 1);
String orgStr = "";
//Organisation org = null;
//if (orgOid > 0)
//{
// org = DAOFactory.GenericDAO.LoadByID<Organisation>(orgOid);
// orgStr = String.Format(" durch {0}", org.Name);
//}
lblDauer.Text = String.Format("Bearbeitungsdauer der Anträge{1}, Stand: {0:dd.MM.yyyy}", datum, orgStr);
int daysTotal = 0;
int count = 0;
decimal betragGesamtGesamt = 0;
foreach (var sc in alleHps)
{
foreach (var c2s in sc.CostBearer2SupportConceptList)
{
if (c2s.StartDate <= datum && c2s.EndDate >= datum) // && (orgOid == 0 || orgOid == c2s.CostBearer.Organisation.Oid))
{
var newrow = new QueryRO.Row();
newrow.Field1 = String.Format("{0}, {1}", sc.Customer.Person.LastName,
sc.Customer.Person.FirstName);
newrow.Field2 = String.Format("{0:dd.MM.yyyy}", c2s.StartDate);
newrow.Field3 = String.Format("{0:dd.MM.yyyy}", c2s.EndDate);
var vc2s = GetVorgaenger(c2s);
newrow.Field4 = vc2s == null ? "Ja" : "Nein";
if (vc2s != null && vc2s.SupportConcept.RenewalSendDate.HasValue)
{
newrow.Field5 = String.Format("{0:dd.MM.yyyy}", vc2s.SupportConcept.RenewalSendDate);
}
newrow.Field6 = String.Format("{0:dd.MM.yyyy}", sc.SupportConceptSendDate);
newrow.Field7 = String.Format("{0:dd.MM.yyyy}", sc.ConferenceDate);
newrow.Field8 = String.Format("{0:dd.MM.yyyy}", sc.ApprovalDate);
if (sc.SupportConceptSendDate.HasValue && sc.ApprovalDate.HasValue)
{
int days = (int)sc.ApprovalDate.Value.Subtract(sc.SupportConceptSendDate.Value).TotalDays + 1;
int weeks = days / 7;
newrow.Field9 = String.Format("{0:0.00}", weeks);
}
newrow.Field10 = c2s.CostBearer.Organisation.Name;
result.Rows.Add(newrow);
}
}
}
result.Rows.Sort((a, b) => a.Field1.ToString().CompareTo(b.Field1));
return result;
}
private CostBearer2SupportConcept GetVorgaenger(CostBearer2SupportConcept c2s)
{
if (customer2CostbearerSupportConcepts.ContainsKey(c2s.SupportConcept.Customer.Oid.Value))
{
var list = customer2CostbearerSupportConcepts[c2s.SupportConcept.Customer.Oid.Value];
if (list.Count > 1)
{
DateTime thisDate = DateTime.Now;
if (c2s.StartDate.HasValue)
{
thisDate = c2s.StartDate.Value;
}
foreach (var c2si in list)
{
if (c2si.Oid != c2s.Oid && c2si.CostBearer.Oid == c2s.CostBearer.Oid)
{
if (c2si.EndDate.HasValue && c2si.EndDate.Value == thisDate.AddDays(-1))
{
return c2si;
}
}
}
}
}
return null;
}
}
}

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>17, 17</value>
</metadata>
</root>

View File

@@ -38,6 +38,7 @@ namespace BetreutesWohnenStLudgerus.Alt
if (isDefaultSpitzabrechnung)
{
//UpdateAbrechnungsFelder(pRO);
SetzeStartDate(pRO);
pRO.InvoiceItems = CreateDefaultSpitzabrechnungInvoiceItems(pRO);
}
@@ -69,7 +70,24 @@ namespace BetreutesWohnenStLudgerus.Alt
this.bindingSource1.DataSource = pRO;
}
private String GetCustomerId(SettlementRO pRO)
private void SetzeStartDate(SettlementRO pRo)
{
if (pRo.CostBearer2SupportConceptOid > 0)
{
var c2s = DAOFactory.GenericDAO.LoadByID<CostBearer2SupportConcept>(pRo.CostBearer2SupportConceptOid);
if (c2s != null)
{
if (c2s.ApprovedStartDate.HasValue)
{
pRo.AccountingStartDate = c2s.ApprovedStartDate.Value;
pRo.AccountingStartDateString = String.Format("{0:dd.MM.yyyy}", pRo.AccountingStartDate);
}
}
}
}
private String GetCustomerId(SettlementRO pRO)
{
var cb2sc = DAOFactory.GenericDAO.LoadByID<CostBearer2SupportConcept>(pRO.CostBearer2SupportConceptOid);
return cb2sc.CostBearer.ID;

View File

@@ -5,6 +5,7 @@ using System.Text;
using BeWo.Data.Access;
using BeWo.Data.Entities;
using BeWo.Report;
using BeWo.Report.DefaultReports;
using BeWo.Report.ReportObjects;
using DevExpress.XtraReports.UI;
@@ -12,7 +13,23 @@ namespace BetreuWoWesel
{
public class BetreuwoReportCreator : DefaultReportCreator
{
public override XtraReport CreateServiceOverviewAllCustomersReport(int month, int year, long orgaOid, long empOid, long? serviceCategoryOid, int startDay, int endDay)
public override XtraReport CreateQueryReport(long queryOid, string queryReportId)
{
if (queryOid == 1400)
{
var report = new Abwesenheiten();
var ro = UrlaubskontoRO.Create(null, null, new DateTime(2019, 8, 1), new DateTime(2019, 9, 30), null);
report.SetReportDataSource(ro);
return report;
}
return base.CreateQueryReport(queryOid, queryReportId);
}
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, serviceCategoryOid);

View File

@@ -0,0 +1,604 @@
namespace Bussmannshof
{
partial class Budgetnachweis
{
/// <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(Spitzabrechnung));
this.Detail = new DevExpress.XtraReports.UI.DetailBand();
this.xrLabel16 = new DevExpress.XtraReports.UI.XRLabel();
this.xrLabel10 = new DevExpress.XtraReports.UI.XRLabel();
this.xrLabel7 = new DevExpress.XtraReports.UI.XRLabel();
this.xrLabel14 = new DevExpress.XtraReports.UI.XRLabel();
this.xrLabel15 = new DevExpress.XtraReports.UI.XRLabel();
this.xrLine2 = new DevExpress.XtraReports.UI.XRLine();
this.xrLine1 = new DevExpress.XtraReports.UI.XRLine();
this.xrLabel35 = new DevExpress.XtraReports.UI.XRLabel();
this.xrLabel12 = new DevExpress.XtraReports.UI.XRLabel();
this.xrCheckBox2 = new DevExpress.XtraReports.UI.XRCheckBox();
this.xrCheckBox1 = new DevExpress.XtraReports.UI.XRCheckBox();
this.tableRechnungspositionen = new DevExpress.XtraReports.UI.XRTable();
this.xrTableRow2 = new DevExpress.XtraReports.UI.XRTableRow();
this.xrTableCell2 = new DevExpress.XtraReports.UI.XRTableCell();
this.xrTableCell4 = new DevExpress.XtraReports.UI.XRTableCell();
this.xrTableCell13 = new DevExpress.XtraReports.UI.XRTableCell();
this.xrTableCell5 = new DevExpress.XtraReports.UI.XRTableCell();
this.xrTableCell14 = new DevExpress.XtraReports.UI.XRTableCell();
this.xrTableRow5 = new DevExpress.XtraReports.UI.XRTableRow();
this.cellStart1 = new DevExpress.XtraReports.UI.XRTableCell();
this.cellEnd1 = new DevExpress.XtraReports.UI.XRTableCell();
this.cellHourlyRate1 = new DevExpress.XtraReports.UI.XRTableCell();
this.cellFLS1 = new DevExpress.XtraReports.UI.XRTableCell();
this.xrTableCell20 = new DevExpress.XtraReports.UI.XRTableCell();
this.xrTableRow6 = new DevExpress.XtraReports.UI.XRTableRow();
this.cellStart2 = new DevExpress.XtraReports.UI.XRTableCell();
this.cellEnd2 = new DevExpress.XtraReports.UI.XRTableCell();
this.cellHourlyRate2 = new DevExpress.XtraReports.UI.XRTableCell();
this.cellFLS2 = new DevExpress.XtraReports.UI.XRTableCell();
this.xrTableCell21 = new DevExpress.XtraReports.UI.XRTableCell();
this.xrTableRow8 = new DevExpress.XtraReports.UI.XRTableRow();
this.cellStart3 = new DevExpress.XtraReports.UI.XRTableCell();
this.cellEnd3 = new DevExpress.XtraReports.UI.XRTableCell();
this.cellHourlyRate3 = new DevExpress.XtraReports.UI.XRTableCell();
this.cellFLS3 = new DevExpress.XtraReports.UI.XRTableCell();
this.xrTableCell29 = new DevExpress.XtraReports.UI.XRTableCell();
this.xrLabel17 = new DevExpress.XtraReports.UI.XRLabel();
this.ruleRateFactorNull = new DevExpress.XtraReports.UI.FormattingRule();
this.topMarginBand1 = new DevExpress.XtraReports.UI.TopMarginBand();
this.bottomMarginBand1 = new DevExpress.XtraReports.UI.BottomMarginBand();
this.GroupHeader1 = new DevExpress.XtraReports.UI.GroupHeaderBand();
this.ortDatum = new DevExpress.XtraReports.UI.XRLabel();
this.xrLabel1 = new DevExpress.XtraReports.UI.XRLabel();
this.xrLabel19 = new DevExpress.XtraReports.UI.XRLabel();
this.xrLabel9 = new DevExpress.XtraReports.UI.XRLabel();
this.bindingSource1 = new System.Windows.Forms.BindingSource(this.components);
this.GroupFooter1 = new DevExpress.XtraReports.UI.GroupFooterBand();
this.GroupFooter2 = new DevExpress.XtraReports.UI.GroupFooterBand();
((System.ComponentModel.ISupportInitialize)(this.tableRechnungspositionen)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.bindingSource1)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this)).BeginInit();
//
// Detail
//
this.Detail.Controls.AddRange(new DevExpress.XtraReports.UI.XRControl[] {
this.xrLabel16,
this.xrLabel10,
this.xrLabel7,
this.xrLabel14,
this.xrLabel15});
this.Detail.Font = new System.Drawing.Font("Arial", 11F);
this.Detail.HeightF = 165F;
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;
//
// xrLabel16
//
this.xrLabel16.BackColor = System.Drawing.Color.Transparent;
this.xrLabel16.CanShrink = true;
this.xrLabel16.Font = new System.Drawing.Font("Arial", 12F, System.Drawing.FontStyle.Bold);
this.xrLabel16.LocationFloat = new DevExpress.Utils.PointFloat(60.0001F, 10.00001F);
this.xrLabel16.Name = "xrLabel16";
this.xrLabel16.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.xrLabel16.SizeF = new System.Drawing.SizeF(435.4167F, 23.24998F);
this.xrLabel16.StylePriority.UseBackColor = false;
this.xrLabel16.StylePriority.UseFont = false;
this.xrLabel16.Text = "Ambulant Betreutes Wohnen - Budgetnachweis";
this.xrLabel16.WordWrap = false;
//
// xrLabel10
//
this.xrLabel10.BackColor = System.Drawing.Color.Transparent;
this.xrLabel10.LocationFloat = new DevExpress.Utils.PointFloat(60.0001F, 131.5828F);
this.xrLabel10.Multiline = true;
this.xrLabel10.Name = "xrLabel10";
this.xrLabel10.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.xrLabel10.SizeF = new System.Drawing.SizeF(642F, 27.08333F);
this.xrLabel10.StylePriority.UseBackColor = false;
this.xrLabel10.StylePriority.UseFont = false;
this.xrLabel10.Text = "Im Bewilligungszeitraum tatsächlich geleistete Fachleistungsstunden (FLS)";
//
// xrLabel7
//
this.xrLabel7.BackColor = System.Drawing.Color.Transparent;
this.xrLabel7.CanShrink = true;
this.xrLabel7.Font = new System.Drawing.Font("Arial", 11F, System.Drawing.FontStyle.Bold);
this.xrLabel7.LocationFloat = new DevExpress.Utils.PointFloat(60.0001F, 87.37488F);
this.xrLabel7.Multiline = true;
this.xrLabel7.Name = "xrLabel7";
this.xrLabel7.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.xrLabel7.SizeF = new System.Drawing.SizeF(650F, 20F);
this.xrLabel7.StylePriority.UseBackColor = false;
this.xrLabel7.StylePriority.UseFont = false;
this.xrLabel7.Text = "Bewilligungszeitraum vom [AccountingPeriod]";
this.xrLabel7.WordWrap = false;
//
// xrLabel14
//
this.xrLabel14.BackColor = System.Drawing.Color.Transparent;
this.xrLabel14.CanShrink = true;
this.xrLabel14.Font = new System.Drawing.Font("Arial", 11F, System.Drawing.FontStyle.Bold);
this.xrLabel14.LocationFloat = new DevExpress.Utils.PointFloat(60.0001F, 67.37493F);
this.xrLabel14.Multiline = true;
this.xrLabel14.Name = "xrLabel14";
this.xrLabel14.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.xrLabel14.SizeF = new System.Drawing.SizeF(650F, 20F);
this.xrLabel14.StylePriority.UseBackColor = false;
this.xrLabel14.StylePriority.UseFont = false;
this.xrLabel14.Text = "Aktenzeichen LWL: [CustomerReferenceNumber]";
this.xrLabel14.WordWrap = false;
//
// xrLabel15
//
this.xrLabel15.BackColor = System.Drawing.Color.Transparent;
this.xrLabel15.CanShrink = true;
this.xrLabel15.Font = new System.Drawing.Font("Arial", 11F, System.Drawing.FontStyle.Bold);
this.xrLabel15.LocationFloat = new DevExpress.Utils.PointFloat(60.0001F, 47.37492F);
this.xrLabel15.Name = "xrLabel15";
this.xrLabel15.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.xrLabel15.SizeF = new System.Drawing.SizeF(650F, 20F);
this.xrLabel15.StylePriority.UseBackColor = false;
this.xrLabel15.StylePriority.UseFont = false;
this.xrLabel15.Text = "für [Salutation2] [CustomerName], geb. [CustomerBirthdayString]";
this.xrLabel15.WordWrap = false;
//
// xrLine2
//
this.xrLine2.LocationFloat = new DevExpress.Utils.PointFloat(65.00015F, 274.3801F);
this.xrLine2.Name = "xrLine2";
this.xrLine2.SizeF = new System.Drawing.SizeF(270F, 9.75F);
//
// xrLine1
//
this.xrLine1.LocationFloat = new DevExpress.Utils.PointFloat(65.00015F, 204.38F);
this.xrLine1.Name = "xrLine1";
this.xrLine1.SizeF = new System.Drawing.SizeF(309.5687F, 9.749969F);
//
// xrLabel35
//
this.xrLabel35.BackColor = System.Drawing.Color.Transparent;
this.xrLabel35.Borders = DevExpress.XtraPrinting.BorderSide.None;
this.xrLabel35.Font = new System.Drawing.Font("Arial", 11F, System.Drawing.FontStyle.Bold);
this.xrLabel35.LocationFloat = new DevExpress.Utils.PointFloat(65.00015F, 214.13F);
this.xrLabel35.Multiline = true;
this.xrLabel35.Name = "xrLabel35";
this.xrLabel35.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.xrLabel35.SizeF = new System.Drawing.SizeF(236.697F, 17F);
this.xrLabel35.StylePriority.UseBackColor = false;
this.xrLabel35.StylePriority.UseBorders = false;
this.xrLabel35.StylePriority.UseFont = false;
this.xrLabel35.Text = "Stempel, Unterschrift";
this.xrLabel35.WordWrap = false;
//
// xrLabel12
//
this.xrLabel12.BackColor = System.Drawing.Color.Transparent;
this.xrLabel12.LocationFloat = new DevExpress.Utils.PointFloat(65.00015F, 67.71317F);
this.xrLabel12.Multiline = true;
this.xrLabel12.Name = "xrLabel12";
this.xrLabel12.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.xrLabel12.SizeF = new System.Drawing.SizeF(646.9999F, 90.33334F);
this.xrLabel12.StylePriority.UseBackColor = false;
this.xrLabel12.StylePriority.UseFont = false;
this.xrLabel12.Text = resources.GetString("xrLabel12.Text");
//
// xrCheckBox2
//
this.xrCheckBox2.LocationFloat = new DevExpress.Utils.PointFloat(424.5832F, 9.999974F);
this.xrCheckBox2.Name = "xrCheckBox2";
this.xrCheckBox2.SizeF = new System.Drawing.SizeF(211.0832F, 21.875F);
this.xrCheckBox2.StylePriority.UseFont = false;
this.xrCheckBox2.Text = " Die Betreuung dauert an.";
//
// xrCheckBox1
//
this.xrCheckBox1.LocationFloat = new DevExpress.Utils.PointFloat(65.00015F, 9.999974F);
this.xrCheckBox1.Name = "xrCheckBox1";
this.xrCheckBox1.SizeF = new System.Drawing.SizeF(359.5833F, 21.875F);
this.xrCheckBox1.StylePriority.UseFont = false;
this.xrCheckBox1.Text = " Die Betreuung wurde am beendet.";
//
// tableRechnungspositionen
//
this.tableRechnungspositionen.Borders = ((DevExpress.XtraPrinting.BorderSide)((((DevExpress.XtraPrinting.BorderSide.Left | DevExpress.XtraPrinting.BorderSide.Top)
| DevExpress.XtraPrinting.BorderSide.Right)
| DevExpress.XtraPrinting.BorderSide.Bottom)));
this.tableRechnungspositionen.LocationFloat = new DevExpress.Utils.PointFloat(60.0001F, 0F);
this.tableRechnungspositionen.Name = "tableRechnungspositionen";
this.tableRechnungspositionen.Padding = new DevExpress.XtraPrinting.PaddingInfo(3, 3, 0, 0, 100F);
this.tableRechnungspositionen.Rows.AddRange(new DevExpress.XtraReports.UI.XRTableRow[] {
this.xrTableRow2,
this.xrTableRow5,
this.xrTableRow6,
this.xrTableRow8});
this.tableRechnungspositionen.SizeF = new System.Drawing.SizeF(641.9999F, 96F);
this.tableRechnungspositionen.StylePriority.UseBorders = false;
this.tableRechnungspositionen.StylePriority.UseFont = false;
this.tableRechnungspositionen.StylePriority.UsePadding = false;
//
// xrTableRow2
//
this.xrTableRow2.Cells.AddRange(new DevExpress.XtraReports.UI.XRTableCell[] {
this.xrTableCell2,
this.xrTableCell4,
this.xrTableCell13,
this.xrTableCell5,
this.xrTableCell14});
this.xrTableRow2.Name = "xrTableRow2";
this.xrTableRow2.Weight = 0.93538531804786507D;
//
// xrTableCell2
//
this.xrTableCell2.Borders = ((DevExpress.XtraPrinting.BorderSide)(((DevExpress.XtraPrinting.BorderSide.Left | DevExpress.XtraPrinting.BorderSide.Top)
| DevExpress.XtraPrinting.BorderSide.Bottom)));
this.xrTableCell2.Multiline = true;
this.xrTableCell2.Name = "xrTableCell2";
this.xrTableCell2.StylePriority.UseBorders = false;
this.xrTableCell2.StylePriority.UseTextAlignment = false;
this.xrTableCell2.Text = "Zeitraum\r\nvon";
this.xrTableCell2.TextAlignment = DevExpress.XtraPrinting.TextAlignment.TopLeft;
this.xrTableCell2.Weight = 0.654205681555982D;
//
// xrTableCell4
//
this.xrTableCell4.Borders = ((DevExpress.XtraPrinting.BorderSide)(((DevExpress.XtraPrinting.BorderSide.Top | DevExpress.XtraPrinting.BorderSide.Right)
| DevExpress.XtraPrinting.BorderSide.Bottom)));
this.xrTableCell4.Name = "xrTableCell4";
this.xrTableCell4.StylePriority.UseBorders = false;
this.xrTableCell4.StylePriority.UseTextAlignment = false;
this.xrTableCell4.Text = "bis";
this.xrTableCell4.TextAlignment = DevExpress.XtraPrinting.TextAlignment.BottomCenter;
this.xrTableCell4.Weight = 0.65420565778839579D;
//
// xrTableCell13
//
this.xrTableCell13.Name = "xrTableCell13";
this.xrTableCell13.StylePriority.UseTextAlignment = false;
this.xrTableCell13.Text = "Vergütung pro Stunde";
this.xrTableCell13.TextAlignment = DevExpress.XtraPrinting.TextAlignment.TopLeft;
this.xrTableCell13.Weight = 0.51401872857292652D;
//
// xrTableCell5
//
this.xrTableCell5.Name = "xrTableCell5";
this.xrTableCell5.StylePriority.UseTextAlignment = false;
this.xrTableCell5.Text = "Anzahl FLS";
this.xrTableCell5.TextAlignment = DevExpress.XtraPrinting.TextAlignment.TopLeft;
this.xrTableCell5.Weight = 0.51401872857292652D;
//
// xrTableCell14
//
this.xrTableCell14.Name = "xrTableCell14";
this.xrTableCell14.Text = "davon gesondert bewilligt¹";
this.xrTableCell14.Weight = 0.663551203509769D;
//
// xrTableRow5
//
this.xrTableRow5.Cells.AddRange(new DevExpress.XtraReports.UI.XRTableCell[] {
this.cellStart1,
this.cellEnd1,
this.cellHourlyRate1,
this.cellFLS1,
this.xrTableCell20});
this.xrTableRow5.Name = "xrTableRow5";
this.xrTableRow5.Weight = 0.44307725591740971D;
//
// cellStart1
//
this.cellStart1.Name = "cellStart1";
this.cellStart1.Weight = 0.654205681555982D;
//
// cellEnd1
//
this.cellEnd1.Name = "cellEnd1";
this.cellEnd1.Weight = 0.65420565778839579D;
//
// cellHourlyRate1
//
this.cellHourlyRate1.Name = "cellHourlyRate1";
this.cellHourlyRate1.Weight = 0.51401872857292652D;
//
// cellFLS1
//
this.cellFLS1.Name = "cellFLS1";
this.cellFLS1.Weight = 0.51401872857292652D;
//
// xrTableCell20
//
this.xrTableCell20.Name = "xrTableCell20";
this.xrTableCell20.Weight = 0.663551203509769D;
//
// xrTableRow6
//
this.xrTableRow6.Cells.AddRange(new DevExpress.XtraReports.UI.XRTableCell[] {
this.cellStart2,
this.cellEnd2,
this.cellHourlyRate2,
this.cellFLS2,
this.xrTableCell21});
this.xrTableRow6.Name = "xrTableRow6";
this.xrTableRow6.Weight = 0.49230806213045525D;
//
// cellStart2
//
this.cellStart2.Name = "cellStart2";
this.cellStart2.Weight = 0.654205681555982D;
//
// cellEnd2
//
this.cellEnd2.Name = "cellEnd2";
this.cellEnd2.Weight = 0.65420565778839579D;
//
// cellHourlyRate2
//
this.cellHourlyRate2.Name = "cellHourlyRate2";
this.cellHourlyRate2.Weight = 0.51401872857292652D;
//
// cellFLS2
//
this.cellFLS2.Name = "cellFLS2";
this.cellFLS2.Weight = 0.51401872857292652D;
//
// xrTableCell21
//
this.xrTableCell21.Name = "xrTableCell21";
this.xrTableCell21.Weight = 0.663551203509769D;
//
// xrTableRow8
//
this.xrTableRow8.Cells.AddRange(new DevExpress.XtraReports.UI.XRTableCell[] {
this.cellStart3,
this.cellEnd3,
this.cellHourlyRate3,
this.cellFLS3,
this.xrTableCell29});
this.xrTableRow8.Name = "xrTableRow8";
this.xrTableRow8.Weight = 0.49230806213045525D;
//
// cellStart3
//
this.cellStart3.Name = "cellStart3";
this.cellStart3.Weight = 0.654205681555982D;
//
// cellEnd3
//
this.cellEnd3.Name = "cellEnd3";
this.cellEnd3.Weight = 0.65420565778839579D;
//
// cellHourlyRate3
//
this.cellHourlyRate3.Name = "cellHourlyRate3";
this.cellHourlyRate3.Weight = 0.51401872857292652D;
//
// cellFLS3
//
this.cellFLS3.Name = "cellFLS3";
this.cellFLS3.Weight = 0.51401872857292652D;
//
// xrTableCell29
//
this.xrTableCell29.Name = "xrTableCell29";
this.xrTableCell29.Weight = 0.663551203509769D;
//
// xrLabel17
//
this.xrLabel17.BackColor = System.Drawing.Color.Transparent;
this.xrLabel17.Font = new System.Drawing.Font("Arial", 10F);
this.xrLabel17.LocationFloat = new DevExpress.Utils.PointFloat(65.00015F, 284.1301F);
this.xrLabel17.Multiline = true;
this.xrLabel17.Name = "xrLabel17";
this.xrLabel17.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.xrLabel17.SizeF = new System.Drawing.SizeF(598.0811F, 27.08325F);
this.xrLabel17.StylePriority.UseBackColor = false;
this.xrLabel17.StylePriority.UseFont = false;
this.xrLabel17.Text = "¹vom LWL gesondert bewilligte Leistungen zur Deckung eines einmaligen Bedarfs";
//
// ruleRateFactorNull
//
this.ruleRateFactorNull.Condition = "[RateFactorText2] == ?";
this.ruleRateFactorNull.Formatting.Visible = DevExpress.Utils.DefaultBoolean.False;
this.ruleRateFactorNull.Name = "ruleRateFactorNull";
//
// topMarginBand1
//
this.topMarginBand1.HeightF = 90F;
this.topMarginBand1.Name = "topMarginBand1";
//
// bottomMarginBand1
//
this.bottomMarginBand1.HeightF = 90.33334F;
this.bottomMarginBand1.Name = "bottomMarginBand1";
//
// GroupHeader1
//
this.GroupHeader1.Controls.AddRange(new DevExpress.XtraReports.UI.XRControl[] {
this.ortDatum,
this.xrLabel1,
this.xrLabel19,
this.xrLabel9});
this.GroupHeader1.Font = new System.Drawing.Font("Arial", 11F);
this.GroupHeader1.HeightF = 347.2498F;
this.GroupHeader1.Name = "GroupHeader1";
this.GroupHeader1.StylePriority.UseFont = false;
//
// ortDatum
//
this.ortDatum.BackColor = System.Drawing.Color.Transparent;
this.ortDatum.LocationFloat = new DevExpress.Utils.PointFloat(389.9999F, 0F);
this.ortDatum.Multiline = true;
this.ortDatum.Name = "ortDatum";
this.ortDatum.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.ortDatum.SizeF = new System.Drawing.SizeF(329.0833F, 17.79282F);
this.ortDatum.StylePriority.UseBackColor = false;
this.ortDatum.StylePriority.UseFont = false;
this.ortDatum.StylePriority.UseTextAlignment = false;
this.ortDatum.TextAlignment = DevExpress.XtraPrinting.TextAlignment.TopRight;
//
// xrLabel1
//
this.xrLabel1.LocationFloat = new DevExpress.Utils.PointFloat(50F, 0F);
this.xrLabel1.Multiline = true;
this.xrLabel1.Name = "xrLabel1";
this.xrLabel1.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.xrLabel1.ProcessNullValues = DevExpress.XtraReports.UI.ValueSuppressType.SuppressAndShrink;
this.xrLabel1.SizeF = new System.Drawing.SizeF(280F, 108.25F);
this.xrLabel1.StylePriority.UseFont = false;
this.xrLabel1.Text = "bussmannshof gemeinnützige GmbH\r\nAmbulant Betreutes Wohnen\r\nErnst-Erwin-Bußmann-P" +
"fad 11\r\n44869 Bochum";
//
// xrLabel19
//
this.xrLabel19.LocationFloat = new DevExpress.Utils.PointFloat(390.0002F, 35.00004F);
this.xrLabel19.Multiline = true;
this.xrLabel19.Name = "xrLabel19";
this.xrLabel19.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.xrLabel19.ProcessNullValues = DevExpress.XtraReports.UI.ValueSuppressType.SuppressAndShrink;
this.xrLabel19.SizeF = new System.Drawing.SizeF(329.0833F, 73.24998F);
this.xrLabel19.StylePriority.UseBorders = false;
this.xrLabel19.StylePriority.UseFont = false;
this.xrLabel19.Text = "Ansprechpartner/in: Uli Pütz\r\nTelefon: 02327/975413\r\nFax: 02327/975425\r\n";
//
// xrLabel9
//
this.xrLabel9.LocationFloat = new DevExpress.Utils.PointFloat(60.0001F, 200.9583F);
this.xrLabel9.Multiline = true;
this.xrLabel9.Name = "xrLabel9";
this.xrLabel9.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.xrLabel9.ProcessNullValues = DevExpress.XtraReports.UI.ValueSuppressType.SuppressAndShrink;
this.xrLabel9.SizeF = new System.Drawing.SizeF(329.9999F, 81.58333F);
this.xrLabel9.StylePriority.UseFont = false;
this.xrLabel9.Text = "Landschaftsverband Westfalen-Lippe\r\nBehindertenhilfe Westfalen\r\n\r\n48133 Münster\r\n" +
"";
//
// bindingSource1
//
this.bindingSource1.DataSource = typeof(BeWo.Report.ReportObjects.SettlementRO);
//
// GroupFooter1
//
this.GroupFooter1.Controls.AddRange(new DevExpress.XtraReports.UI.XRControl[] {
this.tableRechnungspositionen});
this.GroupFooter1.Font = new System.Drawing.Font("Arial", 11F);
this.GroupFooter1.HeightF = 96F;
this.GroupFooter1.Name = "GroupFooter1";
this.GroupFooter1.StylePriority.UseFont = false;
//
// GroupFooter2
//
this.GroupFooter2.Controls.AddRange(new DevExpress.XtraReports.UI.XRControl[] {
this.xrLine2,
this.xrLine1,
this.xrLabel35,
this.xrLabel12,
this.xrCheckBox2,
this.xrLabel17,
this.xrCheckBox1});
this.GroupFooter2.Font = new System.Drawing.Font("Arial", 11F);
this.GroupFooter2.HeightF = 311.2133F;
this.GroupFooter2.Level = 1;
this.GroupFooter2.Name = "GroupFooter2";
this.GroupFooter2.StylePriority.UseFont = false;
//
// Spitzabrechnung
//
this.Bands.AddRange(new DevExpress.XtraReports.UI.Band[] {
this.Detail,
this.topMarginBand1,
this.bottomMarginBand1,
this.GroupHeader1,
this.GroupFooter1,
this.GroupFooter2});
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(30, 30, 90, 90);
this.PageHeight = 1169;
this.PageWidth = 827;
this.PaperKind = System.Drawing.Printing.PaperKind.A4;
this.Version = "17.1";
((System.ComponentModel.ISupportInitialize)(this.tableRechnungspositionen)).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.FormattingRule ruleRateFactorNull;
private DevExpress.XtraReports.UI.TopMarginBand topMarginBand1;
private DevExpress.XtraReports.UI.BottomMarginBand bottomMarginBand1;
private DevExpress.XtraReports.UI.GroupHeaderBand GroupHeader1;
private DevExpress.XtraReports.UI.XRLabel xrLabel9;
private DevExpress.XtraReports.UI.XRLabel xrLabel7;
private DevExpress.XtraReports.UI.XRLabel xrLabel14;
private DevExpress.XtraReports.UI.XRLabel xrLabel10;
private DevExpress.XtraReports.UI.XRLabel xrLabel16;
private DevExpress.XtraReports.UI.XRLabel xrLabel15;
private DevExpress.XtraReports.UI.XRLabel xrLabel12;
private DevExpress.XtraReports.UI.XRLabel xrLabel17;
private DevExpress.XtraReports.UI.XRTable tableRechnungspositionen;
private DevExpress.XtraReports.UI.XRTableRow xrTableRow2;
private DevExpress.XtraReports.UI.XRTableCell xrTableCell2;
private DevExpress.XtraReports.UI.XRTableCell xrTableCell4;
private DevExpress.XtraReports.UI.XRTableCell xrTableCell13;
private DevExpress.XtraReports.UI.XRTableCell xrTableCell5;
private DevExpress.XtraReports.UI.XRTableCell xrTableCell14;
private DevExpress.XtraReports.UI.XRTableRow xrTableRow5;
private DevExpress.XtraReports.UI.XRTableCell cellStart1;
private DevExpress.XtraReports.UI.XRTableCell cellEnd1;
private DevExpress.XtraReports.UI.XRTableCell cellHourlyRate1;
private DevExpress.XtraReports.UI.XRTableCell cellFLS1;
private DevExpress.XtraReports.UI.XRTableCell xrTableCell20;
private DevExpress.XtraReports.UI.XRTableRow xrTableRow6;
private DevExpress.XtraReports.UI.XRTableCell cellStart2;
private DevExpress.XtraReports.UI.XRTableCell cellEnd2;
private DevExpress.XtraReports.UI.XRTableCell cellHourlyRate2;
private DevExpress.XtraReports.UI.XRTableCell cellFLS2;
private DevExpress.XtraReports.UI.XRTableCell xrTableCell21;
private DevExpress.XtraReports.UI.XRTableRow xrTableRow8;
private DevExpress.XtraReports.UI.XRTableCell cellStart3;
private DevExpress.XtraReports.UI.XRTableCell cellEnd3;
private DevExpress.XtraReports.UI.XRTableCell cellHourlyRate3;
private DevExpress.XtraReports.UI.XRTableCell cellFLS3;
private DevExpress.XtraReports.UI.XRTableCell xrTableCell29;
private DevExpress.XtraReports.UI.XRCheckBox xrCheckBox2;
private DevExpress.XtraReports.UI.XRCheckBox xrCheckBox1;
private DevExpress.XtraReports.UI.XRLabel xrLabel35;
private DevExpress.XtraReports.UI.XRLabel xrLabel1;
private DevExpress.XtraReports.UI.XRLabel xrLabel19;
private DevExpress.XtraReports.UI.XRLine xrLine2;
private DevExpress.XtraReports.UI.XRLine xrLine1;
private DevExpress.XtraReports.UI.XRLabel ortDatum;
private DevExpress.XtraReports.UI.GroupFooterBand GroupFooter1;
private DevExpress.XtraReports.UI.GroupFooterBand GroupFooter2;
}
}

View File

@@ -0,0 +1,239 @@
using System;
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 Bussmannshof
{
[IDSpecificClass(Identifier = "LWLNEU")]
public partial class Budgetnachweis : DevExpress.XtraReports.UI.XtraReport, IBeWoReport<SettlementRO>
{
public Budgetnachweis()
{
InitializeComponent();
}
public void SetReportDataSource(SettlementRO pRO)
{
if (!String.IsNullOrEmpty(pRO.SenderContactPersonPhone))
{
pRO.SenderContactPersonPhone = pRO.SenderContactPersonPhone.Replace("Tel.:", "").Trim();
}
if (!String.IsNullOrEmpty(pRO.SenderContactPersonFax))
{
pRO.SenderContactPersonFax = pRO.SenderContactPersonFax.Replace("Fax:", "").Trim();
}
if (!String.IsNullOrEmpty(pRO.SenderContactPersonMail))
{
pRO.SenderContactPersonMail = pRO.SenderContactPersonMail.Replace("E-Mail:", "").Trim();
}
ortDatum.Text = string.Format("Bochum, {0}", DateTime.Now.ToShortDateString());
xrCheckBox2.Checked = true;
DateTime? terminationDate = null;
if (pRO.CostBearer2SupportConceptOid > 0)
{
var c2s = DAOFactory.GenericDAO.LoadByID<CostBearer2SupportConcept>(pRO.CostBearer2SupportConceptOid);
if (c2s.SupportConcept.Customer.TerminationDate.HasValue)
{
terminationDate = c2s.SupportConcept.Customer.TerminationDate;
xrCheckBox1.Text = String.Format(" Die Betreuung wurde am {0:dd.MM.yyyy} beendet.",
c2s.SupportConcept.Customer.TerminationDate);
xrCheckBox2.Checked = false;
xrCheckBox1.Checked = true;
}
}
ErstelleRechnungspositionen(pRO, terminationDate);
bindingSource1.DataSource = pRO;
}
private void ErstelleRechnungspositionen(SettlementRO pRO, DateTime? terminationDate)
{
if (pRO.InvoiceItems != null && pRO.InvoiceItems.Count > 0)
{
int rowIndex = 0;
foreach (var ii in pRO.InvoiceItems)
{
if (ii.UnitCount.HasValue && ii.UnitCount.Value > 0)
{
AddRechnungsposition(ii, rowIndex++);
}
}
//if (pRO.InvoiceItems.Count == 3)
//{
// SetzeRechnungsTexte(pRO.InvoiceItems[0], cellStart1, cellEnd1, cellHourlyRate1, cellFLS1);
// SetzeRechnungsTexte(pRO.InvoiceItems[1], cellStart2, cellEnd2, cellHourlyRate2, cellFLS2);
// SetzeRechnungsTexte(pRO.InvoiceItems[2], cellStart3, cellEnd3, cellHourlyRate3, cellFLS3);
//}
//else if (pRO.InvoiceItems.Count == 2)
//{
// SetzeRechnungsTexte(pRO.InvoiceItems[0], cellStart1, cellEnd1, cellHourlyRate1, cellFLS1);
// SetzeRechnungsTexte(pRO.InvoiceItems[1], cellStart2, cellEnd2, cellHourlyRate2, cellFLS2);
//}
//else
//{
// SetzeRechnungsTexte(pRO.InvoiceItems[0], cellStart1, cellEnd1, cellHourlyRate1, cellFLS1);
//}
}
else
{
ErstelleStandardRechnungspositionen(pRO, terminationDate);
}
}
private void AddRechnungsposition(InvoiceItemDC ii, int rowIndex)
{
XRTableRow newRow = null;
if (rowIndex > 2)
{
newRow = tableRechnungspositionen.InsertRowBelow(tableRechnungspositionen.Rows[tableRechnungspositionen.Rows.Count - 1]);
}
else
{
newRow = tableRechnungspositionen.Rows[rowIndex + 1];
}
newRow.Cells[0].Text = String.Format("{0:dd.MM.yyyy}", ii.ItemPeriodStart);
newRow.Cells[1].Text = String.Format("{0:dd.MM.yyyy}", ii.ItemPeriodEnd);
newRow.Cells[2].Text = String.Format("{0:0.00}", ii.AmountPerUnit);
newRow.Cells[3].Text = String.Format("{0:0.00}", ii.UnitCount);
}
private void SetzeRechnungsTexte(InvoiceItemDC ii, XRTableCell cellStart, XRTableCell cellEnd, XRTableCell cellHourlyRate, XRTableCell cellFLS)
{
cellStart.Text = String.Format("{0:dd.MM.yyyy}", ii.ItemPeriodStart);
cellEnd.Text = String.Format("{0:dd.MM.yyyy}", ii.ItemPeriodEnd);
cellHourlyRate.Text = String.Format("{0:c}", ii.AmountPerUnit);
cellFLS.Text = String.Format("{0:0.00}", ii.UnitCount);
}
private void ErstelleStandardRechnungspositionen(SettlementRO pRO, DateTime? terminationDate)
{
pRO.AccountingEndDateString = CorrectPossibleTerminationEndDate(pRO.AccountingEndDateString, terminationDate);
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);
cellStart1.Text = pRO.AccountingStartDateString;
cellEnd1.Text = pRO.HourlyRate3EndDateString;
cellHourlyRate1.Text = pRO.HourlyRate3String;
cellFLS1.Text = pRO.RecordedFLSWithHourlyRate3String;
cellStart2.Text = pRO.HourlyRateOldStartDateString;
cellEnd2.Text = pRO.HourlyRateOldEndDateString;
cellHourlyRate2.Text = pRO.HourlyRateOldString;
cellFLS2.Text = pRO.RecordedFLSWithOldHourlyRateString;
cellStart3.Text = pRO.HourlyRateNewStartDateString;
cellEnd3.Text = pRO.AccountingEndDateString;
cellHourlyRate3.Text = pRO.HourlyRateNewString;
cellFLS3.Text = pRO.RecordedFLSWithNewHourlyRateString;
}
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);
cellStart1.Text = pRO.AccountingStartDateString;
cellEnd1.Text = pRO.HourlyRateOldEndDateString;
cellHourlyRate1.Text = pRO.HourlyRateOldString;
cellFLS1.Text = pRO.RecordedFLSWithOldHourlyRateString;
cellStart2.Text = pRO.HourlyRateNewStartDateString;
cellEnd2.Text = pRO.AccountingEndDateString;
cellHourlyRate2.Text = pRO.HourlyRateNewString;
cellFLS2.Text = pRO.RecordedFLSWithNewHourlyRateString;
}
else
{
cellStart1.Text = pRO.AccountingStartDateString;
cellEnd1.Text = pRO.AccountingEndDateString;
cellHourlyRate1.Text = pRO.HourlyRateNewString;
cellFLS1.Text = pRO.RecordedFLSWithNewHourlyRateString;
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);
}
}
private string CorrectPossibleTerminationEndDate(string dateString, DateTime? terminationDate)
{
if (terminationDate.HasValue)
{
DateTime dt = DateTime.MinValue;
if (DateTime.TryParse(dateString, out dt))
{
if (terminationDate < dt)
{
return String.Format("{0:dd.MM.yyyy}", terminationDate);
}
}
}
return dateString;
}
}
}

View File

@@ -0,0 +1,126 @@
<?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 XII eingehalten wurden und alle hier gemachten Angaben anhand der vorgehaltenen Quittungsbelege sowie der Betreuungsdokumentation jederzeit nachgewiesen werden können.</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>

View File

@@ -0,0 +1,99 @@
<?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>{D580BC68-F0B0-40C9-96B2-8BE1F216BA21}</ProjectGuid>
<OutputType>Library</OutputType>
<AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>Bussmannshof</RootNamespace>
<AssemblyName>9970072066_Reports</AssemblyName>
<TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment>
<TargetFrameworkProfile />
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>..\..\Host\bin\</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>..\..\Host\bin\</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="Properties\AssemblyInfo.cs" />
<Compile Include="Reporting\ReportCreator.cs" />
<Compile Include="SettlementReport.cs">
<SubType>Component</SubType>
</Compile>
<Compile Include="SettlementReport.Designer.cs">
<DependentUpon>SettlementReport.cs</DependentUpon>
</Compile>
<Compile Include="Budgetnachweis.cs">
<SubType>Component</SubType>
</Compile>
<Compile Include="Budgetnachweis.Designer.cs">
<DependentUpon>Budgetnachweis.cs</DependentUpon>
</Compile>
</ItemGroup>
<ItemGroup>
<EmbeddedResource Include="Properties\licenses.licx" />
<EmbeddedResource Include="SettlementReport.resx">
<DependentUpon>SettlementReport.cs</DependentUpon>
<SubType>Designer</SubType>
</EmbeddedResource>
<EmbeddedResource Include="Budgetnachweis.resx">
<DependentUpon>Budgetnachweis.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="..\..\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>
<Folder Include="Invoiceing\" />
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
</Project>

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("Bussmannshof")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("Bussmannshof")]
[assembly: AssemblyCopyright("Copyright © 2019")]
[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("d580bc68-f0b0-40c9-96b2-8be1f216ba21")]
// 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

View File

@@ -0,0 +1,21 @@
using System;
using System.Collections.Generic;
using System.IO;
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 BS.Shared.Core;
using BS.Shared.DataContracts;
using DevExpress.XtraReports.UI;
namespace Bussmannshof.Reporting
{
public class ReportCreator : DefaultReportCreator
{
}
}

File diff suppressed because it is too large Load Diff

View 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 Bussmannshof
{
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);
}
}
}
}

View File

@@ -0,0 +1,127 @@
<?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="xrLabel6.Text" xml:space="preserve">
<value>anbei sende ich Ihnen die unterschriebenen Nachweise über die im Rahmen des Betreuten Wohnens für [Salutation2] [CustomerName] erbrachten Leistungen zu. Nach unserer Berechnung ergeben sich für den Betreuungszeitraum [AccountingPeriod] hieraus:
</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>

View File

@@ -58,43 +58,6 @@ namespace BeWo.DerKarren
this.cellFactorText = new DevExpress.XtraReports.UI.XRTableCell();
this.cellHoursMinutesFactor = new DevExpress.XtraReports.UI.XRTableCell();
this.cellHoursFactor = new DevExpress.XtraReports.UI.XRTableCell();
this.formattingRuleStartDate = new DevExpress.XtraReports.UI.FormattingRule();
this.ReportHeader = new DevExpress.XtraReports.UI.ReportHeaderBand();
this.xrPictureBox1 = new DevExpress.XtraReports.UI.XRPictureBox();
this.lblTitel = new DevExpress.XtraReports.UI.XRLabel();
this.xrLabel29 = new DevExpress.XtraReports.UI.XRLabel();
this.xrLabel25 = new DevExpress.XtraReports.UI.XRLabel();
this.xrLabel24 = new DevExpress.XtraReports.UI.XRLabel();
this.xrLabel23 = new DevExpress.XtraReports.UI.XRLabel();
this.xrLabel21 = new DevExpress.XtraReports.UI.XRLabel();
this.xrLabel9 = new DevExpress.XtraReports.UI.XRLabel();
this.xrLabel18 = new DevExpress.XtraReports.UI.XRLabel();
this.xrLabel14 = new DevExpress.XtraReports.UI.XRLabel();
this.xrLabel13 = new DevExpress.XtraReports.UI.XRLabel();
this.xrLabel12 = 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.xrLabel2 = new DevExpress.XtraReports.UI.XRLabel();
this.xrPictureBox3 = new DevExpress.XtraReports.UI.XRPictureBox();
this.xrPictureBox2 = new DevExpress.XtraReports.UI.XRPictureBox();
this.ReportFooter = new DevExpress.XtraReports.UI.ReportFooterBand();
this.xrLabel3 = new DevExpress.XtraReports.UI.XRLabel();
this.xrLabel7 = new DevExpress.XtraReports.UI.XRLabel();
this.xrLabel6 = new DevExpress.XtraReports.UI.XRLabel();
this.xrLabel5 = new DevExpress.XtraReports.UI.XRLabel();
this.fieldAbrechenbareMinuten = new DevExpress.XtraReports.UI.CalculatedField();
this.fieldBillableFLS = new DevExpress.XtraReports.UI.CalculatedField();
this.fieldAbrechenbareFLS = new DevExpress.XtraReports.UI.CalculatedField();
this.fieldGruppe = new DevExpress.XtraReports.UI.CalculatedField();
this.GroupHeader1 = new DevExpress.XtraReports.UI.GroupHeaderBand();
this.xrLabel20 = new DevExpress.XtraReports.UI.XRLabel();
this.xrLabel15 = new DevExpress.XtraReports.UI.XRLabel();
this.xrLabel19 = new DevExpress.XtraReports.UI.XRLabel();
this.xrLabel17 = new DevExpress.XtraReports.UI.XRLabel();
this.bindingSource1 = new System.Windows.Forms.BindingSource(this.components);
this.GroupHeader2 = new DevExpress.XtraReports.UI.GroupHeaderBand();
this.GroupFooter2 = new DevExpress.XtraReports.UI.GroupFooterBand();
this.xrLabel1 = new DevExpress.XtraReports.UI.XRLabel();
@@ -123,13 +86,47 @@ namespace BeWo.DerKarren
this.xrTableCell29 = new DevExpress.XtraReports.UI.XRTableCell();
this.xrTableCell30 = new DevExpress.XtraReports.UI.XRTableCell();
this.xrTableCell31 = new DevExpress.XtraReports.UI.XRTableCell();
this.bindingSource1 = new System.Windows.Forms.BindingSource(this.components);
this.formattingRuleStartDate = new DevExpress.XtraReports.UI.FormattingRule();
this.ReportHeader = new DevExpress.XtraReports.UI.ReportHeaderBand();
this.xrPictureBox1 = new DevExpress.XtraReports.UI.XRPictureBox();
this.lblTitel = new DevExpress.XtraReports.UI.XRLabel();
this.xrLabel29 = new DevExpress.XtraReports.UI.XRLabel();
this.xrLabel25 = new DevExpress.XtraReports.UI.XRLabel();
this.xrLabel24 = new DevExpress.XtraReports.UI.XRLabel();
this.xrLabel23 = new DevExpress.XtraReports.UI.XRLabel();
this.xrLabel21 = new DevExpress.XtraReports.UI.XRLabel();
this.xrLabel9 = new DevExpress.XtraReports.UI.XRLabel();
this.xrLabel18 = new DevExpress.XtraReports.UI.XRLabel();
this.xrLabel14 = new DevExpress.XtraReports.UI.XRLabel();
this.xrLabel13 = new DevExpress.XtraReports.UI.XRLabel();
this.xrLabel12 = 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.xrLabel3 = new DevExpress.XtraReports.UI.XRLabel();
this.xrLabel7 = new DevExpress.XtraReports.UI.XRLabel();
this.xrLabel6 = new DevExpress.XtraReports.UI.XRLabel();
this.xrLabel5 = new DevExpress.XtraReports.UI.XRLabel();
this.fieldAbrechenbareMinuten = new DevExpress.XtraReports.UI.CalculatedField();
this.fieldBillableFLS = new DevExpress.XtraReports.UI.CalculatedField();
this.fieldAbrechenbareFLS = new DevExpress.XtraReports.UI.CalculatedField();
this.fieldGruppe = new DevExpress.XtraReports.UI.CalculatedField();
this.GroupHeader1 = new DevExpress.XtraReports.UI.GroupHeaderBand();
this.xrLabel20 = new DevExpress.XtraReports.UI.XRLabel();
this.xrLabel15 = new DevExpress.XtraReports.UI.XRLabel();
this.xrLabel19 = new DevExpress.XtraReports.UI.XRLabel();
this.xrLabel17 = new DevExpress.XtraReports.UI.XRLabel();
((System.ComponentModel.ISupportInitialize)(this.xrTableServiceRecords1)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.xrTable3)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.xrTable1)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.bindingSource1)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.xrRichText1)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.xrRichText2)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.xrTableAbwesenheiten)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.bindingSource1)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this)).BeginInit();
//
// Detail
@@ -445,379 +442,6 @@ namespace BeWo.DerKarren
this.cellHoursFactor.TextAlignment = DevExpress.XtraPrinting.TextAlignment.BottomRight;
this.cellHoursFactor.Weight = 0.27742342461929664D;
//
// 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.xrPictureBox1,
this.lblTitel});
this.ReportHeader.Font = new System.Drawing.Font("Arial", 11F);
this.ReportHeader.HeightF = 144.7917F;
this.ReportHeader.Name = "ReportHeader";
this.ReportHeader.StylePriority.UseFont = false;
//
// xrPictureBox1
//
this.xrPictureBox1.Image = ((System.Drawing.Image)(resources.GetObject("xrPictureBox1.Image")));
this.xrPictureBox1.LocationFloat = new DevExpress.Utils.PointFloat(498.4165F, 0F);
this.xrPictureBox1.Name = "xrPictureBox1";
this.xrPictureBox1.SizeF = new System.Drawing.SizeF(214.0004F, 77.00016F);
this.xrPictureBox1.Sizing = DevExpress.XtraPrinting.ImageSizeMode.AutoSize;
//
// lblTitel
//
this.lblTitel.Font = new System.Drawing.Font("Arial", 12F, System.Drawing.FontStyle.Bold);
this.lblTitel.LocationFloat = new DevExpress.Utils.PointFloat(0F, 109.7917F);
this.lblTitel.Multiline = true;
this.lblTitel.Name = "lblTitel";
this.lblTitel.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.lblTitel.SizeF = new System.Drawing.SizeF(747F, 24.99999F);
this.lblTitel.StylePriority.UseFont = false;
this.lblTitel.StylePriority.UseTextAlignment = false;
this.lblTitel.Text = "Quittierungsbeleg über direkte Leistungen";
this.lblTitel.TextAlignment = DevExpress.XtraPrinting.TextAlignment.TopCenter;
//
// xrLabel29
//
this.xrLabel29.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
new DevExpress.XtraReports.UI.XRBinding("Text", null, "MainAttendant")});
this.xrLabel29.LocationFloat = new DevExpress.Utils.PointFloat(279.7915F, 71.99999F);
this.xrLabel29.Name = "xrLabel29";
this.xrLabel29.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.xrLabel29.SizeF = new System.Drawing.SizeF(363.4166F, 18F);
this.xrLabel29.StylePriority.UseBorders = false;
this.xrLabel29.StylePriority.UseFont = false;
//
// xrLabel25
//
this.xrLabel25.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
new DevExpress.XtraReports.UI.XRBinding("Text", null, "ReferenceNumber")});
this.xrLabel25.LocationFloat = new DevExpress.Utils.PointFloat(279.7915F, 36F);
this.xrLabel25.Name = "xrLabel25";
this.xrLabel25.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.xrLabel25.SizeF = new System.Drawing.SizeF(363.4166F, 18F);
this.xrLabel25.StylePriority.UseBorders = false;
this.xrLabel25.StylePriority.UseFont = false;
//
// xrLabel24
//
this.xrLabel24.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
new DevExpress.XtraReports.UI.XRBinding("Text", null, "CustomerFirstName")});
this.xrLabel24.LocationFloat = new DevExpress.Utils.PointFloat(279.7915F, 18F);
this.xrLabel24.Name = "xrLabel24";
this.xrLabel24.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.xrLabel24.SizeF = new System.Drawing.SizeF(363.4166F, 18F);
this.xrLabel24.StylePriority.UseBorders = false;
this.xrLabel24.StylePriority.UseFont = false;
//
// xrLabel23
//
this.xrLabel23.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
new DevExpress.XtraReports.UI.XRBinding("Text", null, "CustomerLastName")});
this.xrLabel23.LocationFloat = new DevExpress.Utils.PointFloat(279.7915F, 0F);
this.xrLabel23.Name = "xrLabel23";
this.xrLabel23.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.xrLabel23.SizeF = new System.Drawing.SizeF(171.5833F, 17.99999F);
this.xrLabel23.StylePriority.UseBorders = false;
this.xrLabel23.StylePriority.UseFont = false;
//
// xrLabel21
//
this.xrLabel21.Font = new System.Drawing.Font("Arial", 10F, System.Drawing.FontStyle.Bold);
this.xrLabel21.LocationFloat = new DevExpress.Utils.PointFloat(279.7915F, 108F);
this.xrLabel21.Name = "xrLabel21";
this.xrLabel21.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.xrLabel21.SizeF = new System.Drawing.SizeF(97.04164F, 18F);
this.xrLabel21.StylePriority.UseBorders = false;
this.xrLabel21.StylePriority.UseFont = false;
this.xrLabel21.Text = "Jahr:";
//
// xrLabel9
//
this.xrLabel9.Font = new System.Drawing.Font("Arial", 10F, System.Drawing.FontStyle.Bold);
this.xrLabel9.LocationFloat = new DevExpress.Utils.PointFloat(46.79158F, 108F);
this.xrLabel9.Name = "xrLabel9";
this.xrLabel9.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.xrLabel9.SizeF = new System.Drawing.SizeF(120F, 18F);
this.xrLabel9.StylePriority.UseBorders = false;
this.xrLabel9.StylePriority.UseFont = false;
this.xrLabel9.Text = "Monat:";
//
// xrLabel18
//
this.xrLabel18.Font = new System.Drawing.Font("Arial", 10F, System.Drawing.FontStyle.Bold);
this.xrLabel18.LocationFloat = new DevExpress.Utils.PointFloat(46.79158F, 71.99999F);
this.xrLabel18.Name = "xrLabel18";
this.xrLabel18.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.xrLabel18.SizeF = new System.Drawing.SizeF(199.7501F, 18F);
this.xrLabel18.StylePriority.UseFont = false;
this.xrLabel18.StylePriority.UseTextAlignment = false;
this.xrLabel18.Text = "verantw. Mitarbeiter/in:";
this.xrLabel18.TextAlignment = DevExpress.XtraPrinting.TextAlignment.TopRight;
//
// xrLabel14
//
this.xrLabel14.Font = new System.Drawing.Font("Arial", 10F, System.Drawing.FontStyle.Bold);
this.xrLabel14.LocationFloat = new DevExpress.Utils.PointFloat(46.79158F, 36F);
this.xrLabel14.Name = "xrLabel14";
this.xrLabel14.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.xrLabel14.SizeF = new System.Drawing.SizeF(199.7501F, 18F);
this.xrLabel14.StylePriority.UseFont = false;
this.xrLabel14.StylePriority.UseTextAlignment = false;
this.xrLabel14.Text = "Aktenzeichen LVR:";
this.xrLabel14.TextAlignment = DevExpress.XtraPrinting.TextAlignment.TopRight;
//
// xrLabel13
//
this.xrLabel13.Font = new System.Drawing.Font("Arial", 10F, System.Drawing.FontStyle.Bold);
this.xrLabel13.LocationFloat = new DevExpress.Utils.PointFloat(46.79158F, 18F);
this.xrLabel13.Name = "xrLabel13";
this.xrLabel13.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.xrLabel13.SizeF = new System.Drawing.SizeF(199.7501F, 18F);
this.xrLabel13.StylePriority.UseFont = false;
this.xrLabel13.StylePriority.UseTextAlignment = false;
this.xrLabel13.Text = "Vorname:";
this.xrLabel13.TextAlignment = DevExpress.XtraPrinting.TextAlignment.TopRight;
//
// xrLabel12
//
this.xrLabel12.Font = new System.Drawing.Font("Arial", 10F, System.Drawing.FontStyle.Bold);
this.xrLabel12.LocationFloat = new DevExpress.Utils.PointFloat(46.79158F, 0F);
this.xrLabel12.Name = "xrLabel12";
this.xrLabel12.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.xrLabel12.SizeF = new System.Drawing.SizeF(199.7501F, 17.99999F);
this.xrLabel12.StylePriority.UseFont = false;
this.xrLabel12.StylePriority.UseTextAlignment = false;
this.xrLabel12.Text = "Name:";
this.xrLabel12.TextAlignment = DevExpress.XtraPrinting.TextAlignment.TopRight;
//
// 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 = 55F;
this.topMarginBand1.Name = "topMarginBand1";
this.topMarginBand1.StylePriority.UseFont = false;
//
// bottomMarginBand1
//
this.bottomMarginBand1.Controls.AddRange(new DevExpress.XtraReports.UI.XRControl[] {
this.xrLabel2,
this.xrPictureBox3,
this.xrPictureBox2});
this.bottomMarginBand1.HeightF = 140F;
this.bottomMarginBand1.Name = "bottomMarginBand1";
//
// xrLabel2
//
this.xrLabel2.Borders = DevExpress.XtraPrinting.BorderSide.Bottom;
this.xrLabel2.Font = new System.Drawing.Font("Arial", 10F, System.Drawing.FontStyle.Bold);
this.xrLabel2.LocationFloat = new DevExpress.Utils.PointFloat(0F, 0F);
this.xrLabel2.Name = "xrLabel2";
this.xrLabel2.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.xrLabel2.SizeF = new System.Drawing.SizeF(735.9999F, 10F);
this.xrLabel2.StylePriority.UseBorders = false;
this.xrLabel2.StylePriority.UseFont = false;
this.xrLabel2.StylePriority.UseTextAlignment = false;
this.xrLabel2.TextAlignment = DevExpress.XtraPrinting.TextAlignment.TopRight;
//
// xrPictureBox3
//
this.xrPictureBox3.Image = ((System.Drawing.Image)(resources.GetObject("xrPictureBox3.Image")));
this.xrPictureBox3.LocationFloat = new DevExpress.Utils.PointFloat(643.4167F, 9.999974F);
this.xrPictureBox3.Name = "xrPictureBox3";
this.xrPictureBox3.SizeF = new System.Drawing.SizeF(92.58319F, 61.95832F);
this.xrPictureBox3.Sizing = DevExpress.XtraPrinting.ImageSizeMode.ZoomImage;
//
// xrPictureBox2
//
this.xrPictureBox2.Image = ((System.Drawing.Image)(resources.GetObject("xrPictureBox2.Image")));
this.xrPictureBox2.LocationFloat = new DevExpress.Utils.PointFloat(0F, 9.999974F);
this.xrPictureBox2.Name = "xrPictureBox2";
this.xrPictureBox2.SizeF = new System.Drawing.SizeF(574.3749F, 123.4167F);
this.xrPictureBox2.Sizing = DevExpress.XtraPrinting.ImageSizeMode.ZoomImage;
//
// ReportFooter
//
this.ReportFooter.Controls.AddRange(new DevExpress.XtraReports.UI.XRControl[] {
this.xrLabel3,
this.xrLabel7,
this.xrLabel6,
this.xrLabel5});
this.ReportFooter.Font = new System.Drawing.Font("Arial", 10F);
this.ReportFooter.HeightF = 146.9166F;
this.ReportFooter.KeepTogether = true;
this.ReportFooter.Name = "ReportFooter";
this.ReportFooter.StylePriority.UseFont = false;
//
// xrLabel3
//
this.xrLabel3.Borders = DevExpress.XtraPrinting.BorderSide.Top;
this.xrLabel3.LocationFloat = new DevExpress.Utils.PointFloat(513.7499F, 128.9167F);
this.xrLabel3.Name = "xrLabel3";
this.xrLabel3.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.xrLabel3.SizeF = new System.Drawing.SizeF(222.25F, 17.99995F);
this.xrLabel3.StylePriority.UseBorders = false;
this.xrLabel3.StylePriority.UseFont = false;
this.xrLabel3.Text = "ggf. Unterschrift ges.Betreuer/in";
//
// xrLabel7
//
this.xrLabel7.Borders = DevExpress.XtraPrinting.BorderSide.Top;
this.xrLabel7.LocationFloat = new DevExpress.Utils.PointFloat(513.7499F, 51.91663F);
this.xrLabel7.Name = "xrLabel7";
this.xrLabel7.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.xrLabel7.SizeF = new System.Drawing.SizeF(174.25F, 17.99997F);
this.xrLabel7.StylePriority.UseBorders = false;
this.xrLabel7.StylePriority.UseFont = false;
this.xrLabel7.Text = "Unterschrift Klient/in";
//
// xrLabel6
//
this.xrLabel6.Borders = DevExpress.XtraPrinting.BorderSide.Top;
this.xrLabel6.LocationFloat = new DevExpress.Utils.PointFloat(277.9999F, 51.91663F);
this.xrLabel6.Name = "xrLabel6";
this.xrLabel6.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.xrLabel6.SizeF = new System.Drawing.SizeF(171.5833F, 17.99997F);
this.xrLabel6.StylePriority.UseBorders = false;
this.xrLabel6.StylePriority.UseFont = false;
this.xrLabel6.Text = "Unterschrift Mitarbeiter/in";
//
// xrLabel5
//
this.xrLabel5.Borders = DevExpress.XtraPrinting.BorderSide.Top;
this.xrLabel5.LocationFloat = new DevExpress.Utils.PointFloat(44.99995F, 51.91663F);
this.xrLabel5.Name = "xrLabel5";
this.xrLabel5.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.xrLabel5.SizeF = new System.Drawing.SizeF(133F, 17.99997F);
this.xrLabel5.StylePriority.UseBorders = false;
this.xrLabel5.StylePriority.UseFont = false;
this.xrLabel5.Text = "Datum";
//
// fieldAbrechenbareMinuten
//
this.fieldAbrechenbareMinuten.DataMember = "Services";
this.fieldAbrechenbareMinuten.Expression = "Iif([IsBillable], [Minutes], 0)";
this.fieldAbrechenbareMinuten.FieldType = DevExpress.XtraReports.UI.FieldType.Decimal;
this.fieldAbrechenbareMinuten.Name = "fieldAbrechenbareMinuten";
//
// 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";
//
// fieldGruppe
//
this.fieldGruppe.DataMember = "Services";
this.fieldGruppe.Expression = "Iif([CustomerCount] < 2, \'\', ToStr([CustomerCount]) + \' TN\')";
this.fieldGruppe.FieldType = DevExpress.XtraReports.UI.FieldType.String;
this.fieldGruppe.Name = "fieldGruppe";
//
// GroupHeader1
//
this.GroupHeader1.Controls.AddRange(new DevExpress.XtraReports.UI.XRControl[] {
this.xrLabel20,
this.xrLabel15,
this.xrLabel19,
this.xrLabel17,
this.xrLabel12,
this.xrLabel13,
this.xrLabel14,
this.xrLabel18,
this.xrLabel9,
this.xrLabel21,
this.xrLabel23,
this.xrLabel24,
this.xrLabel25,
this.xrLabel29});
this.GroupHeader1.Font = new System.Drawing.Font("Arial", 10F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.GroupHeader1.HeightF = 153.125F;
this.GroupHeader1.Name = "GroupHeader1";
this.GroupHeader1.StylePriority.UseFont = false;
//
// xrLabel20
//
this.xrLabel20.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
new DevExpress.XtraReports.UI.XRBinding("Text", null, "CustomerBirthday", "{0:dd.MM.yyyy}")});
this.xrLabel20.LocationFloat = new DevExpress.Utils.PointFloat(541.7915F, 0F);
this.xrLabel20.Name = "xrLabel20";
this.xrLabel20.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.xrLabel20.SizeF = new System.Drawing.SizeF(100F, 18F);
this.xrLabel20.Text = "xrLabel20";
//
// xrLabel15
//
this.xrLabel15.Font = new System.Drawing.Font("Arial", 10F, System.Drawing.FontStyle.Bold);
this.xrLabel15.LocationFloat = new DevExpress.Utils.PointFloat(451.3748F, 0F);
this.xrLabel15.Name = "xrLabel15";
this.xrLabel15.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.xrLabel15.SizeF = new System.Drawing.SizeF(83.41684F, 17.99999F);
this.xrLabel15.StylePriority.UseFont = false;
this.xrLabel15.StylePriority.UseTextAlignment = false;
this.xrLabel15.Text = "Geb.Dat:";
this.xrLabel15.TextAlignment = DevExpress.XtraPrinting.TextAlignment.TopRight;
//
// xrLabel19
//
this.xrLabel19.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
new DevExpress.XtraReports.UI.XRBinding("Text", null, "Year", "{0}")});
this.xrLabel19.LocationFloat = new DevExpress.Utils.PointFloat(379.7915F, 108F);
this.xrLabel19.Name = "xrLabel19";
this.xrLabel19.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.xrLabel19.SizeF = new System.Drawing.SizeF(225F, 18F);
this.xrLabel19.StylePriority.UseBorders = false;
this.xrLabel19.StylePriority.UseFont = false;
this.xrLabel19.Text = "xrLabel19";
//
// xrLabel17
//
this.xrLabel17.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
new DevExpress.XtraReports.UI.XRBinding("Text", null, "Month", "{0}")});
this.xrLabel17.LocationFloat = new DevExpress.Utils.PointFloat(166.7915F, 108F);
this.xrLabel17.Name = "xrLabel17";
this.xrLabel17.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.xrLabel17.SizeF = new System.Drawing.SizeF(113.0001F, 18F);
this.xrLabel17.StylePriority.UseBorders = false;
this.xrLabel17.StylePriority.UseFont = false;
this.xrLabel17.Text = "xrLabel17";
//
// bindingSource1
//
this.bindingSource1.DataSource = typeof(BeWo.Report.ReportObjects.ServicesOverviewRO);
//
// GroupHeader2
//
this.GroupHeader2.Controls.AddRange(new DevExpress.XtraReports.UI.XRControl[] {
@@ -1122,6 +746,346 @@ namespace BeWo.DerKarren
this.xrTableCell31.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleCenter;
this.xrTableCell31.Weight = 0.075757568269402914D;
//
// bindingSource1
//
this.bindingSource1.DataSource = typeof(BeWo.Report.ReportObjects.ServicesOverviewRO);
//
// 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.xrPictureBox1,
this.lblTitel});
this.ReportHeader.Font = new System.Drawing.Font("Arial", 11F);
this.ReportHeader.HeightF = 144.7917F;
this.ReportHeader.Name = "ReportHeader";
this.ReportHeader.StylePriority.UseFont = false;
//
// xrPictureBox1
//
this.xrPictureBox1.Image = ((System.Drawing.Image)(resources.GetObject("xrPictureBox1.Image")));
this.xrPictureBox1.LocationFloat = new DevExpress.Utils.PointFloat(498.4165F, 0F);
this.xrPictureBox1.Name = "xrPictureBox1";
this.xrPictureBox1.SizeF = new System.Drawing.SizeF(214.0004F, 77.00016F);
this.xrPictureBox1.Sizing = DevExpress.XtraPrinting.ImageSizeMode.AutoSize;
//
// lblTitel
//
this.lblTitel.Font = new System.Drawing.Font("Arial", 12F, System.Drawing.FontStyle.Bold);
this.lblTitel.LocationFloat = new DevExpress.Utils.PointFloat(0F, 109.7917F);
this.lblTitel.Multiline = true;
this.lblTitel.Name = "lblTitel";
this.lblTitel.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.lblTitel.SizeF = new System.Drawing.SizeF(747F, 24.99999F);
this.lblTitel.StylePriority.UseFont = false;
this.lblTitel.StylePriority.UseTextAlignment = false;
this.lblTitel.Text = "Quittierungsbeleg über direkte Leistungen";
this.lblTitel.TextAlignment = DevExpress.XtraPrinting.TextAlignment.TopCenter;
//
// xrLabel29
//
this.xrLabel29.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
new DevExpress.XtraReports.UI.XRBinding("Text", null, "MainAttendant")});
this.xrLabel29.LocationFloat = new DevExpress.Utils.PointFloat(279.7915F, 71.99999F);
this.xrLabel29.Name = "xrLabel29";
this.xrLabel29.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.xrLabel29.SizeF = new System.Drawing.SizeF(363.4166F, 18F);
this.xrLabel29.StylePriority.UseBorders = false;
this.xrLabel29.StylePriority.UseFont = false;
//
// xrLabel25
//
this.xrLabel25.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
new DevExpress.XtraReports.UI.XRBinding("Text", null, "ReferenceNumber")});
this.xrLabel25.LocationFloat = new DevExpress.Utils.PointFloat(279.7915F, 36F);
this.xrLabel25.Name = "xrLabel25";
this.xrLabel25.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.xrLabel25.SizeF = new System.Drawing.SizeF(363.4166F, 18F);
this.xrLabel25.StylePriority.UseBorders = false;
this.xrLabel25.StylePriority.UseFont = false;
//
// xrLabel24
//
this.xrLabel24.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
new DevExpress.XtraReports.UI.XRBinding("Text", null, "CustomerFirstName")});
this.xrLabel24.LocationFloat = new DevExpress.Utils.PointFloat(279.7915F, 18F);
this.xrLabel24.Name = "xrLabel24";
this.xrLabel24.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.xrLabel24.SizeF = new System.Drawing.SizeF(363.4166F, 18F);
this.xrLabel24.StylePriority.UseBorders = false;
this.xrLabel24.StylePriority.UseFont = false;
//
// xrLabel23
//
this.xrLabel23.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
new DevExpress.XtraReports.UI.XRBinding("Text", null, "CustomerLastName")});
this.xrLabel23.LocationFloat = new DevExpress.Utils.PointFloat(279.7915F, 0F);
this.xrLabel23.Name = "xrLabel23";
this.xrLabel23.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.xrLabel23.SizeF = new System.Drawing.SizeF(171.5833F, 17.99999F);
this.xrLabel23.StylePriority.UseBorders = false;
this.xrLabel23.StylePriority.UseFont = false;
//
// xrLabel21
//
this.xrLabel21.Font = new System.Drawing.Font("Arial", 10F, System.Drawing.FontStyle.Bold);
this.xrLabel21.LocationFloat = new DevExpress.Utils.PointFloat(279.7915F, 108F);
this.xrLabel21.Name = "xrLabel21";
this.xrLabel21.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.xrLabel21.SizeF = new System.Drawing.SizeF(97.04164F, 18F);
this.xrLabel21.StylePriority.UseBorders = false;
this.xrLabel21.StylePriority.UseFont = false;
this.xrLabel21.Text = "Jahr:";
//
// xrLabel9
//
this.xrLabel9.Font = new System.Drawing.Font("Arial", 10F, System.Drawing.FontStyle.Bold);
this.xrLabel9.LocationFloat = new DevExpress.Utils.PointFloat(46.79158F, 108F);
this.xrLabel9.Name = "xrLabel9";
this.xrLabel9.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.xrLabel9.SizeF = new System.Drawing.SizeF(120F, 18F);
this.xrLabel9.StylePriority.UseBorders = false;
this.xrLabel9.StylePriority.UseFont = false;
this.xrLabel9.Text = "Monat:";
//
// xrLabel18
//
this.xrLabel18.Font = new System.Drawing.Font("Arial", 10F, System.Drawing.FontStyle.Bold);
this.xrLabel18.LocationFloat = new DevExpress.Utils.PointFloat(46.79158F, 71.99999F);
this.xrLabel18.Name = "xrLabel18";
this.xrLabel18.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.xrLabel18.SizeF = new System.Drawing.SizeF(199.7501F, 18F);
this.xrLabel18.StylePriority.UseFont = false;
this.xrLabel18.StylePriority.UseTextAlignment = false;
this.xrLabel18.Text = "verantw. Mitarbeiter/in:";
this.xrLabel18.TextAlignment = DevExpress.XtraPrinting.TextAlignment.TopRight;
//
// xrLabel14
//
this.xrLabel14.Font = new System.Drawing.Font("Arial", 10F, System.Drawing.FontStyle.Bold);
this.xrLabel14.LocationFloat = new DevExpress.Utils.PointFloat(46.79158F, 36F);
this.xrLabel14.Name = "xrLabel14";
this.xrLabel14.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.xrLabel14.SizeF = new System.Drawing.SizeF(199.7501F, 18F);
this.xrLabel14.StylePriority.UseFont = false;
this.xrLabel14.StylePriority.UseTextAlignment = false;
this.xrLabel14.Text = "Aktenzeichen LVR:";
this.xrLabel14.TextAlignment = DevExpress.XtraPrinting.TextAlignment.TopRight;
//
// xrLabel13
//
this.xrLabel13.Font = new System.Drawing.Font("Arial", 10F, System.Drawing.FontStyle.Bold);
this.xrLabel13.LocationFloat = new DevExpress.Utils.PointFloat(46.79158F, 18F);
this.xrLabel13.Name = "xrLabel13";
this.xrLabel13.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.xrLabel13.SizeF = new System.Drawing.SizeF(199.7501F, 18F);
this.xrLabel13.StylePriority.UseFont = false;
this.xrLabel13.StylePriority.UseTextAlignment = false;
this.xrLabel13.Text = "Vorname:";
this.xrLabel13.TextAlignment = DevExpress.XtraPrinting.TextAlignment.TopRight;
//
// xrLabel12
//
this.xrLabel12.Font = new System.Drawing.Font("Arial", 10F, System.Drawing.FontStyle.Bold);
this.xrLabel12.LocationFloat = new DevExpress.Utils.PointFloat(46.79158F, 0F);
this.xrLabel12.Name = "xrLabel12";
this.xrLabel12.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.xrLabel12.SizeF = new System.Drawing.SizeF(199.7501F, 17.99999F);
this.xrLabel12.StylePriority.UseFont = false;
this.xrLabel12.StylePriority.UseTextAlignment = false;
this.xrLabel12.Text = "Name:";
this.xrLabel12.TextAlignment = DevExpress.XtraPrinting.TextAlignment.TopRight;
//
// 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 = 55F;
this.topMarginBand1.Name = "topMarginBand1";
this.topMarginBand1.StylePriority.UseFont = false;
//
// bottomMarginBand1
//
this.bottomMarginBand1.HeightF = 50F;
this.bottomMarginBand1.Name = "bottomMarginBand1";
//
// ReportFooter
//
this.ReportFooter.Controls.AddRange(new DevExpress.XtraReports.UI.XRControl[] {
this.xrLabel3,
this.xrLabel7,
this.xrLabel6,
this.xrLabel5});
this.ReportFooter.Font = new System.Drawing.Font("Arial", 10F);
this.ReportFooter.HeightF = 146.9166F;
this.ReportFooter.KeepTogether = true;
this.ReportFooter.Name = "ReportFooter";
this.ReportFooter.StylePriority.UseFont = false;
//
// xrLabel3
//
this.xrLabel3.Borders = DevExpress.XtraPrinting.BorderSide.Top;
this.xrLabel3.LocationFloat = new DevExpress.Utils.PointFloat(513.7499F, 128.9167F);
this.xrLabel3.Name = "xrLabel3";
this.xrLabel3.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.xrLabel3.SizeF = new System.Drawing.SizeF(222.25F, 17.99995F);
this.xrLabel3.StylePriority.UseBorders = false;
this.xrLabel3.StylePriority.UseFont = false;
this.xrLabel3.Text = "ggf. Unterschrift ges.Betreuer/in";
//
// xrLabel7
//
this.xrLabel7.Borders = DevExpress.XtraPrinting.BorderSide.Top;
this.xrLabel7.LocationFloat = new DevExpress.Utils.PointFloat(513.7499F, 51.91663F);
this.xrLabel7.Name = "xrLabel7";
this.xrLabel7.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.xrLabel7.SizeF = new System.Drawing.SizeF(174.25F, 17.99997F);
this.xrLabel7.StylePriority.UseBorders = false;
this.xrLabel7.StylePriority.UseFont = false;
this.xrLabel7.Text = "Unterschrift Klient/in";
//
// xrLabel6
//
this.xrLabel6.Borders = DevExpress.XtraPrinting.BorderSide.Top;
this.xrLabel6.LocationFloat = new DevExpress.Utils.PointFloat(277.9999F, 51.91663F);
this.xrLabel6.Name = "xrLabel6";
this.xrLabel6.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.xrLabel6.SizeF = new System.Drawing.SizeF(171.5833F, 17.99997F);
this.xrLabel6.StylePriority.UseBorders = false;
this.xrLabel6.StylePriority.UseFont = false;
this.xrLabel6.Text = "Unterschrift Mitarbeiter/in";
//
// xrLabel5
//
this.xrLabel5.Borders = DevExpress.XtraPrinting.BorderSide.Top;
this.xrLabel5.LocationFloat = new DevExpress.Utils.PointFloat(44.99995F, 51.91663F);
this.xrLabel5.Name = "xrLabel5";
this.xrLabel5.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.xrLabel5.SizeF = new System.Drawing.SizeF(133F, 17.99997F);
this.xrLabel5.StylePriority.UseBorders = false;
this.xrLabel5.StylePriority.UseFont = false;
this.xrLabel5.Text = "Datum";
//
// fieldAbrechenbareMinuten
//
this.fieldAbrechenbareMinuten.DataMember = "Services";
this.fieldAbrechenbareMinuten.Expression = "Iif([IsBillable], [Minutes], 0)";
this.fieldAbrechenbareMinuten.FieldType = DevExpress.XtraReports.UI.FieldType.Decimal;
this.fieldAbrechenbareMinuten.Name = "fieldAbrechenbareMinuten";
//
// 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";
//
// fieldGruppe
//
this.fieldGruppe.DataMember = "Services";
this.fieldGruppe.Expression = "Iif([CustomerCount] < 2, \'\', ToStr([CustomerCount]) + \' TN\')";
this.fieldGruppe.FieldType = DevExpress.XtraReports.UI.FieldType.String;
this.fieldGruppe.Name = "fieldGruppe";
//
// GroupHeader1
//
this.GroupHeader1.Controls.AddRange(new DevExpress.XtraReports.UI.XRControl[] {
this.xrLabel20,
this.xrLabel15,
this.xrLabel19,
this.xrLabel17,
this.xrLabel12,
this.xrLabel13,
this.xrLabel14,
this.xrLabel18,
this.xrLabel9,
this.xrLabel21,
this.xrLabel23,
this.xrLabel24,
this.xrLabel25,
this.xrLabel29});
this.GroupHeader1.Font = new System.Drawing.Font("Arial", 10F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.GroupHeader1.HeightF = 153.125F;
this.GroupHeader1.Name = "GroupHeader1";
this.GroupHeader1.StylePriority.UseFont = false;
//
// xrLabel20
//
this.xrLabel20.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
new DevExpress.XtraReports.UI.XRBinding("Text", null, "CustomerBirthday", "{0:dd.MM.yyyy}")});
this.xrLabel20.LocationFloat = new DevExpress.Utils.PointFloat(541.7915F, 0F);
this.xrLabel20.Name = "xrLabel20";
this.xrLabel20.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.xrLabel20.SizeF = new System.Drawing.SizeF(100F, 18F);
this.xrLabel20.Text = "xrLabel20";
//
// xrLabel15
//
this.xrLabel15.Font = new System.Drawing.Font("Arial", 10F, System.Drawing.FontStyle.Bold);
this.xrLabel15.LocationFloat = new DevExpress.Utils.PointFloat(451.3748F, 0F);
this.xrLabel15.Name = "xrLabel15";
this.xrLabel15.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.xrLabel15.SizeF = new System.Drawing.SizeF(83.41684F, 17.99999F);
this.xrLabel15.StylePriority.UseFont = false;
this.xrLabel15.StylePriority.UseTextAlignment = false;
this.xrLabel15.Text = "Geb.Dat:";
this.xrLabel15.TextAlignment = DevExpress.XtraPrinting.TextAlignment.TopRight;
//
// xrLabel19
//
this.xrLabel19.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
new DevExpress.XtraReports.UI.XRBinding("Text", null, "Year", "{0}")});
this.xrLabel19.LocationFloat = new DevExpress.Utils.PointFloat(379.7915F, 108F);
this.xrLabel19.Name = "xrLabel19";
this.xrLabel19.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.xrLabel19.SizeF = new System.Drawing.SizeF(225F, 18F);
this.xrLabel19.StylePriority.UseBorders = false;
this.xrLabel19.StylePriority.UseFont = false;
this.xrLabel19.Text = "xrLabel19";
//
// xrLabel17
//
this.xrLabel17.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
new DevExpress.XtraReports.UI.XRBinding("Text", null, "Month", "{0}")});
this.xrLabel17.LocationFloat = new DevExpress.Utils.PointFloat(166.7915F, 108F);
this.xrLabel17.Name = "xrLabel17";
this.xrLabel17.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.xrLabel17.SizeF = new System.Drawing.SizeF(113.0001F, 18F);
this.xrLabel17.StylePriority.UseBorders = false;
this.xrLabel17.StylePriority.UseFont = false;
this.xrLabel17.Text = "xrLabel17";
//
// Stundenzettel
//
this.Bands.AddRange(new DevExpress.XtraReports.UI.Band[] {
@@ -1143,7 +1107,7 @@ namespace BeWo.DerKarren
this.formattingRuleServiceDesc,
this.formattingRuleCostBearer,
this.formattingRuleEmployeeName});
this.Margins = new System.Drawing.Printing.Margins(40, 30, 55, 140);
this.Margins = new System.Drawing.Printing.Margins(40, 30, 55, 50);
this.PageHeight = 1169;
this.PageWidth = 827;
this.PaperKind = System.Drawing.Printing.PaperKind.A4;
@@ -1152,10 +1116,10 @@ namespace BeWo.DerKarren
((System.ComponentModel.ISupportInitialize)(this.xrTableServiceRecords1)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.xrTable3)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.xrTable1)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.bindingSource1)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.xrRichText1)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.xrRichText2)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.xrTableAbwesenheiten)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.bindingSource1)).EndInit();
((System.ComponentModel.ISupportInitialize)(this)).EndInit();
}
@@ -1223,9 +1187,6 @@ namespace BeWo.DerKarren
private DevExpress.XtraReports.UI.XRTableCell cellHoursFactor;
private DevExpress.XtraReports.UI.XRLabel xrLabel3;
private DevExpress.XtraReports.UI.XRPictureBox xrPictureBox1;
private DevExpress.XtraReports.UI.XRLabel xrLabel2;
private DevExpress.XtraReports.UI.XRPictureBox xrPictureBox3;
private DevExpress.XtraReports.UI.XRPictureBox xrPictureBox2;
private DevExpress.XtraReports.UI.GroupHeaderBand GroupHeader2;
private DevExpress.XtraReports.UI.GroupFooterBand GroupFooter2;
private DevExpress.XtraReports.UI.XRLabel xrLabel1;

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,343 @@
using System;
using System.Linq;
using BS.Shared;
using BeWo.Report;
using BeWo.Report.ReportObjects;
using BeWo.Data.Entities;
using BeWo.Data.Access;
using System.Collections.Generic;
using System.Text;
using BeWo.Data;
using BS.Shared.Core;
using BS.Shared.Services;
using BS.Shared.DataContracts;
using BeWo.Service.DCEntityMapper;
using BeWo.Service.Invoicing;
using BeWo.Service.Plugins;
using BeWo.Service.ServiceImplementations;
using BS.Shared.DataContracts.Compact;
using DevExpress.Data.Helpers;
namespace Humanitas
{
public partial class Finanzauswertung : DevExpress.XtraReports.UI.XtraReport, IBeWoReport<FinanceRO>
{
private Dictionary<long, List<CostBearer2SupportConcept>> customer2CostbearerSupportConcepts = new Dictionary<long, List<CostBearer2SupportConcept>>();
public Finanzauswertung()
{
InitializeComponent();
}
public void SetReportDataSource(FinanceRO pRO)
{
if (pRO.ReportStartDate.HasValue && pRO.ReportEndDate.HasValue)
{
DateTime start = pRO.ReportStartDate.Value;
DateTime end = pRO.ReportEndDate.Value;
if (start.Year == end.Year && start.Month == end.Month && start.Day == 1 &&
end.Day == DateTime.DaysInMonth(end.Year, end.Month))
{
lblTitel.Text = String.Format("Finanzauswertung {0:MMMM yyyy}", start);
cellBewilligtImZeitraumHeader.Text = String.Format("bewilligte FLS {0:MMMM}", start);
cellGeleistetImZeitraumHeader.Text = String.Format("geleistete Std. {0:MMMM}", start);
}
else
{
lblTitel.Text = String.Format("Finanzauswertung {0:dd.MM.yyyy}-{1:dd.MM.yyyy}", start, end);
cellBewilligtImZeitraumHeader.Text = String.Format("bewilligte FLS {0:dd.MM.yyyy}-{1:dd.MM.yyyy}", start, end);
cellGeleistetImZeitraumHeader.Text = String.Format("geleistete Std. {0:dd.MM.yyyy}-{1:dd.MM.yyyy}", start, end);
}
if (pRO.RateFactor.HasValue)
{
cellRateFactorHeader.Text = String.Format("geleistete Std. x {0:0.##}", pRO.RateFactor);
}
else
{
cellRateFactorHeader.Visible = false;
cellRateFactor.Visible = false;
}
}
else
{
cellBewilligtImZeitraumHeader.Visible = false;
cellBewilligteFLSImBereich.Visible = false;
cellGeleistetImBereich.Visible = false;
cellGeleistetImZeitraumHeader.Visible = false;
cellRateFactorHeader.Visible = false;
cellRateFactor.Visible = false;
}
var srList = DAOFactory.GenericDAO.GetAllActiveAndArchived<SupportConcept>();
foreach (var sc in srList)
{
var coid = sc.Customer.Oid.Value;
foreach (var c2s in sc.CostBearer2SupportConceptList)
{
if (!customer2CostbearerSupportConcepts.ContainsKey(coid))
{
customer2CostbearerSupportConcepts.Add(coid, new List<CostBearer2SupportConcept>());
}
customer2CostbearerSupportConcepts[coid].Add(c2s);
}
}
this.bindingSource1.DataSource = CreateReportObjects(pRO);
}
public CustomFinanzauswertungRO CreateReportObjects(FinanceRO ro)
{
CustomFinanzauswertungRO result = new CustomFinanzauswertungRO();
result.Entries = new List<CustomFinanzauswertungEntry>();
if (ro.SupportConceptFinanceList != null)
{
foreach (var scRo in ro.SupportConceptFinanceList)
{
var entry = CreateEntry(ro, scRo);
result.Entries.Add(entry);
}
}
return result;
}
private CustomFinanzauswertungEntry CreateEntry(FinanceRO fro, FinanceRO.SupportConceptFinanceRO scRo)
{
CustomFinanzauswertungEntry entry = new CustomFinanzauswertungEntry();
entry.SupportConceptFinance = scRo;
if (scRo.Costbearer2Supportconcept != null)
{
var c2s = DAOFactory.GenericDAO.LoadByID<CostBearer2SupportConcept>(entry.SupportConceptFinance.Costbearer2Supportconcept
.CostBearer2SupportConceptOid.Value);
SetzeHilfeplanInfos(entry, c2s);
SetzeCustomerInfos(entry, c2s.SupportConcept.Customer);
CalculateBillableAmountInTimeSpan(scRo, fro.ReportStartDate ?? DateTime.MinValue, fro.ReportEndDate ?? DateTime.MaxValue);
CalculatePaidAmountInReportTimeSpan(entry, c2s, fro.ReportStartDate ?? DateTime.MinValue, fro.ReportEndDate ?? DateTime.MaxValue);
}
return entry;
}
private void SetzeCustomerInfos(CustomFinanzauswertungEntry entry, Customer customer)
{
entry.Kostenstelle = customer.CostCenter;
entry.DebitorNummer = customer.DebitorNumber;
entry.BetreuungStart = customer.AssistanceBegin;
}
private void SetzeHilfeplanInfos(CustomFinanzauswertungEntry entry, CostBearer2SupportConcept c2s)
{
entry.Aktenzeichen = c2s.CustomerReferenceNumber;
entry.Bewilligt = c2s.ApprovedStartDate.HasValue ? "Ja" : "Nein";
entry.AntragEingereicht = c2s.SupportConcept.SupportConceptSendDate;
entry.Folgeantrag = IstErstantrag(c2s) ? "Nein" : "Ja";
entry.BewilligungStart = c2s.StartDate;
entry.BewilligungEnde = c2s.EndDate;
}
private bool IstErstantrag(CostBearer2SupportConcept c2s)
{
if (customer2CostbearerSupportConcepts.ContainsKey(c2s.SupportConcept.Customer.Oid.Value))
{
var list = customer2CostbearerSupportConcepts[c2s.SupportConcept.Customer.Oid.Value];
if (list.Count == 1)
{
return true;
}
DateTime thisDate = DateTime.Now;
if (c2s.StartDate.HasValue)
{
thisDate = c2s.StartDate.Value;
}
foreach (var c2si in list)
{
if (c2si.Oid != c2s.Oid && c2si.CostBearer.Oid == c2s.CostBearer.Oid)
{
if (c2si.EndDate.HasValue && c2si.EndDate.Value == thisDate.AddDays(-1))
{
return false;
}
}
}
}
return true;
}
private void CalculateBillableAmountInTimeSpan(FinanceRO.SupportConceptFinanceRO scRo, DateTime? start, DateTime? end)
{
String tenant = null;
if (MultitenancyOperationContextExt.Current != null)
tenant = MultitenancyOperationContextExt.Current.Tenant;
else
tenant = SessionFacade.Tenant;
var factory = PluginLoader.FindClass<InvoiceFactory>(tenant);
if (factory == null)
{
factory = InvoiceFactory.GetInstance(tenant);
}
Dictionary<CompactSupportConceptDC, List<ServiceRecordDC>> dict = new Dictionary<CompactSupportConceptDC, List<ServiceRecordDC>>();
CompactSupportConceptDC sc = CreateCompactSupportConcept(scRo.Costbearer2Supportconcept);
if (scRo.ServiceRecords != null)
{
foreach (var sr in scRo.ServiceRecords)
{
sr.AlreadyAccounted = false;
}
}
dict.Add(sc, scRo.ServiceRecords);
var creator = factory.CreateInvoiceCreator(null, tenant, dict);
//String text = String.Format("Tenant={0}, Context=Null? {1}, Factory = {2}", tenant,
// MultitenancyOperationContextExt.Current == null, factory);
//Utils.SendErrorMail("CB DEBUG", text);
DateTimeSpan span = null;
if (start.HasValue && end.HasValue)
{
span = new DateTimeSpan();
span.StartDate = start.Value;
span.EndDate = end.Value;
}
var invoices = creator.GenerateServiceInvoices(scRo.Costbearer2Supportconcept.CostBearer.CostBearerOid.Value, span, dict);
if (invoices != null && invoices.Count == 1)
{
scRo.BillableAmountInReportTimeSpan = invoices[0].ClaimSum ?? 0;
}
}
private CompactSupportConceptDC CreateCompactSupportConcept(SupportConceptCostBearerRelDC c2s)
{
var dc = new CompactSupportConceptDC();
dc.SupportConceptOid = c2s.SupportConcept.SupportConceptOid;
dc.CostBearerRelOids = new List<long>();
dc.CostBearerRelOids.Add(c2s.CostBearer2SupportConceptOid.Value);
dc.IsApproved = c2s.ApprovedStartDate.HasValue && c2s.ApprovedEndDate.HasValue;
return dc;
}
private void CalculatePaidAmountInReportTimeSpan(CustomFinanzauswertungEntry entry, CostBearer2SupportConcept c2s, DateTime start, DateTime end)
{
var bookingList = c2s.AccountingTransactions;
bookingList = bookingList.Where(i => i.GueltigkeitsDatum.HasValue && i.GueltigkeitsDatum.Value.Date <= end && i.GueltigkeitsDatum >= start).ToList();
decimal abschlZahlungen = 0;
foreach (var item in bookingList)
{
abschlZahlungen += item.Amount;
}
entry.Abschlagszahlungen = abschlZahlungen;
DateTimeSpan span = new DateTimeSpan();
span.StartDateTime = start;
span.EndDateTime = end.AddDays(1).AddTicks(-1);
StringBuilder betragSb = new StringBuilder();
StringBuilder datumSb = new StringBuilder();
StringBuilder rnrSb = new StringBuilder();
StringBuilder bezahltSb = new StringBuilder();
var invoices = DAOFactory.SearchDAO.GetServiceInvoices(c2s.Oid.Value, span);
foreach (var i in invoices)
{
if (betragSb.Length > 0)
{
betragSb.AppendLine();
}
if (datumSb.Length > 0)
{
datumSb.AppendLine();
}
if (rnrSb.Length > 0)
{
rnrSb.AppendLine();
}
if (bezahltSb.Length > 0)
{
bezahltSb.AppendLine();
}
decimal rechnungsBetrag = 0;
foreach (var sip in i.ServiceInvoicePeriodList)
{
rechnungsBetrag += sip.Claim ?? 0;
}
betragSb.Append(String.Format("{0:c}", rechnungsBetrag));
datumSb.Append(String.Format("{0:dd.MM.yyyy}", i.InvoiceBase.InvoiceDate));
rnrSb.Append(i.InvoiceBase.InvoiceNumber);
bezahltSb.Append(i.InvoiceBase.IsPaid ? "Ja" : "Nein");
}
entry.RechnungsBetrag = betragSb.ToString();
entry.RechnungsDatum = datumSb.ToString();
entry.RechnungsNummer = rnrSb.ToString();
entry.RechnungBezahlt = bezahltSb.ToString();
}
}
public class CustomFinanzauswertungRO
{
public List<CustomFinanzauswertungEntry> Entries { get; set; }
}
public class CustomFinanzauswertungEntry
{
public FinanceRO.SupportConceptFinanceRO SupportConceptFinance { get; set; }
public String Aktenzeichen { get; set; }
public DateTime? BetreuungStart { get; set; }
public DateTime? BewilligungStart { get; set; }
public DateTime? BewilligungEnde { get; set; }
public decimal Abschlagszahlungen { get; set; }
public String RechnungsBetrag { get; set; }
public String RechnungsDatum { get; set; }
public String RechnungsNummer { get; set; }
public String RechnungBezahlt { get; set; }
public string Bewilligt { get; set; }
public DateTime? AntragEingereicht { get; set; }
public string Kostenstelle { get; set; }
public string DebitorNummer { get; set; }
public string Folgeantrag { get; set; }
}
}

File diff suppressed because it is too large Load Diff

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>17, 17</value>
</metadata>
</root>

View File

@@ -51,6 +51,12 @@
<Compile Include="CustomMitarbeiterstundenkontoBerechnung.cs" />
<Compile Include="Export\CustomDataExporter.cs" />
<Compile Include="Export\DatevExporter.cs" />
<Compile Include="Finanzauswertung.cs">
<SubType>Component</SubType>
</Compile>
<Compile Include="Finanzauswertung.designer.cs">
<DependentUpon>Finanzauswertung.cs</DependentUpon>
</Compile>
<Compile Include="Mitarbeiterauslastung.cs">
<SubType>Component</SubType>
</Compile>
@@ -90,6 +96,10 @@
</Compile>
</ItemGroup>
<ItemGroup>
<EmbeddedResource Include="Finanzauswertung.resx">
<DependentUpon>Finanzauswertung.cs</DependentUpon>
<SubType>Designer</SubType>
</EmbeddedResource>
<EmbeddedResource Include="Mitarbeiterauslastung.resx">
<DependentUpon>Mitarbeiterauslastung.cs</DependentUpon>
</EmbeddedResource>

View File

@@ -0,0 +1,38 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using BeWo.Data.Access;
using BeWo.Data.Entities;
using BeWo.Service.Invoicing;
using BS.Shared.Core;
using BS.Shared.DataContracts;
using BS.Shared.Services;
namespace KollegiumEv.Invoicing
{
public class CustomAssistenzInvoiceCreation : InvoiceCreation
{
public override void SetInvoiceId(ServiceInvoice invoice)
{
invoice.InvoiceBase.InvoiceId = "Assistenz";
invoice.InvoiceBase.InvoiceTypeText = "Assistenzleistung";
}
public override InvoiceItem CreateInvoiceItem(ServiceRecordDC iServiceRecord, SupportConceptApprovalPeriod scap, Calculations calc)
{
if (!iServiceRecord.ServiceDescription.CategoryName.Contains("Assistenz"))
{
return null;
}
return base.CreateInvoiceItem(iServiceRecord, scap, calc);
}
//public override IList<InvoiceItem> CreateSummaryInvoiceItems(IList<InvoiceItem> itemList, DateTimeSpan invoicePeriod, SupportConceptApprovalPeriod scap,
// Calculations calc)
//{
// return itemList;
//}
}
}

View File

@@ -0,0 +1,50 @@
using System;
using System.Collections.Generic;
using BeWo.Data.Entities;
using BeWo.Service.Invoicing;
using BS.Shared.DataContracts;
using BS.Shared.DataContracts.Compact;
namespace KollegiumEv.Invoicing
{
public class CustomnvoiceFactory : InvoiceFactory
{
public override InvoiceCreation CreateInvoiceCreator(string specificId, string tenant, Dictionary<CompactSupportConceptDC, List<ServiceRecordDC>> supportConcepts2ServiceRecords)
{
foreach (var list in supportConcepts2ServiceRecords.Values)
{
foreach (var sr in list)
{
var sd = sr.ServiceDescription.Category;
var ic = GetInvoiceCreatorForCategory(sd);
if (ic != null)
return ic;
}
}
return new InvoiceCreation();
}
private InvoiceCreation GetInvoiceCreatorForCategory(ServiceCategoryDC sd)
{
if (sd != null && !String.IsNullOrEmpty(sd.Name))
{
String cat = sd.Name.ToLower().Trim();
if (cat.IndexOf("assistenz") >= 0)
{
return new CustomAssistenzInvoiceCreation();
}
}
return null;
}
public override SettlementInvoiceCreation CreateSettlementInvoiceCreator(string costbearerId, string tenant, CostBearer2SupportConcept lCb2Sc)
{
return new CustomSettlementInvoiceCreation();
}
}
}

View File

@@ -0,0 +1,70 @@
using System;
using System.Collections.Generic;
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;
using BS.Shared.Core;
using BS.Shared.DataContracts;
using BS.Shared.Extensions;
using BS.Shared.Services;
namespace KollegiumEv.Invoicing
{
internal class CustomSettlementInvoiceCreation : SettlementInvoiceCreation
{
public override IList<ServiceRecord> GetBillableServiceRecords(CostBearer2SupportConcept c2s)
{
return c2s.ServiceRecords.Where(IsServiceRecordBillable).ToList();
}
public override bool IsServiceRecordBillable(ServiceRecord iRecord)
{
if (iRecord.ServiceDescription.ServiceCategory.Name.Contains("Assistenz"))
{
return false;
}
return true;
}
public override bool CanCreateInvoiceTheOldWay(Settlement2DC si, CostBearer2SupportConcept c2s)
{
var relDC = c2s.MapToNewDC();
var hourlyRatesInSpanList = relDC.CostBearer.CostRatePeriods.GetSpans(CostRatePeriodType.HourlyRate,
si.AccountingPeriodStart.Value.Date, si.AccountingPeriodEnd.Value.Date).ToList();
if (hourlyRatesInSpanList.Count > 3)
return false;
var factorInSpanList = relDC.CostBearer.CostRatePeriods.GetSpans(CostRatePeriodType.RateFactor,
si.AccountingPeriodStart.Value.Date, si.AccountingPeriodEnd.Value.Date).ToList();
if (factorInSpanList.Count > 1)
return false;
return true;
}
public override void CalculateSettlementInvoiceApprovedAmounts(Settlement2DC si, SupportConceptCostBearerRelDC relDC,
Calculations calc)
{
si.ApprovedFLSWeekly = 0;
si.ApprovedFLS = 0;
foreach (var sp in relDC.ApprovalPeriodList)
{
if (sp.ServiceCategory == null || !sp.ServiceCategory.Name.Contains("Assistenz"))
{
si.ApprovedFLSWeekly += calc.GetApprovedHoursPerWeek(sp, relDC.CostBearer.CostRatePeriods) ?? 0m;
decimal flsTotal = calc.GetApprovedHoursTotal(sp, relDC.CostBearer.CostRatePeriods) ?? 0m;
flsTotal = Math.Round(flsTotal, 2, MidpointRounding.AwayFromZero);
si.ApprovedFLS += flsTotal;
}
}
}
}
}

View File

@@ -0,0 +1,87 @@
<?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>{C1B92243-386E-45DD-8413-37963417E5D3}</ProjectGuid>
<OutputType>Library</OutputType>
<AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>KollegiumEv</RootNamespace>
<AssemblyName>KollegiumEv</AssemblyName>
<TargetFrameworkVersion>v4.6.1</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>bin\Debug\</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>bin\Release\</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="Invoicing\AssistenzInvoiceCreation.cs" />
<Compile Include="Invoicing\CustomInvoiceFactory.cs" />
<Compile Include="Invoicing\CustomSettlementInvoiceCreation.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
<Compile Include="SettlementReport.cs">
<SubType>Component</SubType>
</Compile>
<Compile Include="SettlementReport.Designer.cs">
<DependentUpon>SettlementReport.cs</DependentUpon>
</Compile>
</ItemGroup>
<ItemGroup>
<EmbeddedResource Include="Properties\licenses.licx" />
<EmbeddedResource Include="SettlementReport.resx">
<DependentUpon>SettlementReport.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="..\..\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>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
</Project>

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("KollegiumEv")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("KollegiumEv")]
[assembly: AssemblyCopyright("Copyright © 2019")]
[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("c1b92243-386e-45dd-8413-37963417e5d3")]
// 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,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 KollegiumEv.Invoicing.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);
}
}
}
}

View File

@@ -0,0 +1,127 @@
<?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="xrLabel6.Text" xml:space="preserve">
<value>anbei sende ich Ihnen die unterschriebenen Nachweise über die im Rahmen des Betreuten Wohnens für [Salutation2] [CustomerName] erbrachten Leistungen zu. Nach unserer Berechnung ergeben sich für den Betreuungszeitraum [AccountingPeriod] hieraus:
</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>

View File

@@ -70,10 +70,13 @@ namespace BeWo.LebenshilfeDuisburgReports.Neu
lblFLSTotal.Text = String.Format("{0:0.00}", minTotal / 60);
lblAbrechenbareFLS.Text = String.Format("{0:0.00}", (minTotal / 60) * 1.2);
lblBewilligteStunden.Text = String.Format("{0:0.##} Stunden", pRO.ApprovedFLSPerWeek);
lblMinutenTotal.Text = String.Format("{0:0.##}", minTotal);
lblMinutenMitFaktor.Text = String.Format("{0:0.##}", (minTotal) * 1.2);
lblBewilligteStunden.Text = String.Format("{0:0.##} Stunden", pRO.ApprovedFLSPerWeek);
var stats = GetStatistics(pRO);
if (stats != null)

View File

@@ -100,6 +100,10 @@ namespace BeWo.LebenshilfeDuisburgReports.Neu
this.xrLabel3 = new DevExpress.XtraReports.UI.XRLabel();
this.lblHatGruppen = new DevExpress.XtraReports.UI.XRLabel();
this.lblHatAbwesenheiten = new DevExpress.XtraReports.UI.XRLabel();
this.xrTableCell7 = new DevExpress.XtraReports.UI.XRTableCell();
this.xrTableCell8 = new DevExpress.XtraReports.UI.XRTableCell();
this.lblMinutenMitFaktor = new DevExpress.XtraReports.UI.XRLabel();
this.lblMinutenTotal = new DevExpress.XtraReports.UI.XRLabel();
((System.ComponentModel.ISupportInitialize)(this.xrTableServiceRecords1)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.xrTable3)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.bindingSource1)).BeginInit();
@@ -140,6 +144,7 @@ namespace BeWo.LebenshilfeDuisburgReports.Neu
this.xrTableCell3,
this.xrTableCell11,
this.xrTableCell4,
this.xrTableCell7,
this.xrTableCell1});
this.xrTableRow2.Name = "xrTableRow2";
this.xrTableRow2.Padding = new DevExpress.XtraPrinting.PaddingInfo(0, 0, 0, 0, 100F);
@@ -163,7 +168,7 @@ namespace BeWo.LebenshilfeDuisburgReports.Neu
this.xrTableCell11.StylePriority.UseFont = false;
this.xrTableCell11.StylePriority.UseTextAlignment = false;
this.xrTableCell11.Text = "Uhrzeit\r\nvon - bis";
this.xrTableCell11.Weight = 0.73157753173295936D;
this.xrTableCell11.Weight = 0.53649018842531715D;
//
// xrTableCell4
//
@@ -172,13 +177,13 @@ namespace BeWo.LebenshilfeDuisburgReports.Neu
this.xrTableCell4.Padding = new DevExpress.XtraPrinting.PaddingInfo(5, 2, 0, 0, 100F);
this.xrTableCell4.StylePriority.UsePadding = false;
this.xrTableCell4.Text = "Gruppen-\r\nangebot";
this.xrTableCell4.Weight = 0.24385917346385366D;
this.xrTableCell4.Weight = 0.24385917346385364D;
//
// xrTableCell1
//
this.xrTableCell1.Name = "xrTableCell1";
this.xrTableCell1.Text = "Summe Std.";
this.xrTableCell1.Weight = 0.29263104234319803D;
this.xrTableCell1.Weight = 0.24385921143039907D;
//
// DetailReport
//
@@ -223,6 +228,7 @@ namespace BeWo.LebenshilfeDuisburgReports.Neu
this.xrTableCell13,
this.xrTableCell15,
this.xrTableCell5,
this.xrTableCell8,
this.xrTableCell2});
this.xrTableRow6.FormattingRules.Add(this.ruleRowInisible);
this.xrTableRow6.Name = "xrTableRow6";
@@ -253,7 +259,7 @@ namespace BeWo.LebenshilfeDuisburgReports.Neu
this.xrTableCell15.StylePriority.UsePadding = false;
this.xrTableCell15.StylePriority.UseTextAlignment = false;
this.xrTableCell15.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleCenter;
this.xrTableCell15.Weight = 0.3787877865163754D;
this.xrTableCell15.Weight = 0.27777771055859135D;
//
// xrTableCell5
//
@@ -274,7 +280,7 @@ namespace BeWo.LebenshilfeDuisburgReports.Neu
this.xrTableCell2.StylePriority.UseTextAlignment = false;
this.xrTableCell2.Text = "xrTableCell2";
this.xrTableCell2.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleCenter;
this.xrTableCell2.Weight = 0.15151512036743869D;
this.xrTableCell2.Weight = 0.12626259816261135D;
//
// ruleRowInisible
//
@@ -552,6 +558,8 @@ namespace BeWo.LebenshilfeDuisburgReports.Neu
// GroupFooter1
//
this.GroupFooter1.Controls.AddRange(new DevExpress.XtraReports.UI.XRControl[] {
this.lblMinutenMitFaktor,
this.lblMinutenTotal,
this.xrRichText1,
this.lblAbrechenbareFLS,
this.lblFLSTotal,
@@ -565,10 +573,10 @@ namespace BeWo.LebenshilfeDuisburgReports.Neu
//
this.xrRichText1.Borders = ((DevExpress.XtraPrinting.BorderSide)((DevExpress.XtraPrinting.BorderSide.Left | DevExpress.XtraPrinting.BorderSide.Bottom)));
this.xrRichText1.Font = new System.Drawing.Font("Arial", 11F);
this.xrRichText1.LocationFloat = new DevExpress.Utils.PointFloat(119.0002F, 48.21002F);
this.xrRichText1.LocationFloat = new DevExpress.Utils.PointFloat(119.5002F, 48.21002F);
this.xrRichText1.Name = "xrRichText1";
this.xrRichText1.SerializableRtfString = resources.GetString("xrRichText1.SerializableRtfString");
this.xrRichText1.SizeF = new System.Drawing.SizeF(400.9999F, 60.71F);
this.xrRichText1.SizeF = new System.Drawing.SizeF(320F, 60.71F);
this.xrRichText1.StylePriority.UseBorders = false;
this.xrRichText1.StylePriority.UsePadding = false;
//
@@ -578,10 +586,10 @@ namespace BeWo.LebenshilfeDuisburgReports.Neu
| DevExpress.XtraPrinting.BorderSide.Bottom)));
this.lblAbrechenbareFLS.BorderWidth = 1F;
this.lblAbrechenbareFLS.Font = new System.Drawing.Font("Arial", 11F, System.Drawing.FontStyle.Bold);
this.lblAbrechenbareFLS.LocationFloat = new DevExpress.Utils.PointFloat(520.0007F, 48.21002F);
this.lblAbrechenbareFLS.LocationFloat = new DevExpress.Utils.PointFloat(539.5F, 48.21F);
this.lblAbrechenbareFLS.Name = "lblAbrechenbareFLS";
this.lblAbrechenbareFLS.Padding = new DevExpress.XtraPrinting.PaddingInfo(3, 3, 0, 0, 100F);
this.lblAbrechenbareFLS.SizeF = new System.Drawing.SizeF(119.9997F, 60.70835F);
this.lblAbrechenbareFLS.SizeF = new System.Drawing.SizeF(100.5F, 60.71F);
this.lblAbrechenbareFLS.StylePriority.UseBorders = false;
this.lblAbrechenbareFLS.StylePriority.UseBorderWidth = false;
this.lblAbrechenbareFLS.StylePriority.UseFont = false;
@@ -595,10 +603,10 @@ namespace BeWo.LebenshilfeDuisburgReports.Neu
| DevExpress.XtraPrinting.BorderSide.Bottom)));
this.lblFLSTotal.BorderWidth = 1F;
this.lblFLSTotal.Font = new System.Drawing.Font("Arial", 11F, System.Drawing.FontStyle.Bold);
this.lblFLSTotal.LocationFloat = new DevExpress.Utils.PointFloat(520.0007F, 0F);
this.lblFLSTotal.LocationFloat = new DevExpress.Utils.PointFloat(539.5F, 0F);
this.lblFLSTotal.Name = "lblFLSTotal";
this.lblFLSTotal.Padding = new DevExpress.XtraPrinting.PaddingInfo(3, 3, 0, 0, 100F);
this.lblFLSTotal.SizeF = new System.Drawing.SizeF(119.9997F, 48.20836F);
this.lblFLSTotal.SizeF = new System.Drawing.SizeF(100.5F, 48.21F);
this.lblFLSTotal.StylePriority.UseBorders = false;
this.lblFLSTotal.StylePriority.UseBorderWidth = false;
this.lblFLSTotal.StylePriority.UseFont = false;
@@ -610,10 +618,10 @@ namespace BeWo.LebenshilfeDuisburgReports.Neu
//
this.xrRichText2.Borders = ((DevExpress.XtraPrinting.BorderSide)((DevExpress.XtraPrinting.BorderSide.Left | DevExpress.XtraPrinting.BorderSide.Bottom)));
this.xrRichText2.Font = new System.Drawing.Font("Arial", 11F);
this.xrRichText2.LocationFloat = new DevExpress.Utils.PointFloat(119.0002F, 0F);
this.xrRichText2.LocationFloat = new DevExpress.Utils.PointFloat(119.5002F, 0F);
this.xrRichText2.Name = "xrRichText2";
this.xrRichText2.SerializableRtfString = resources.GetString("xrRichText2.SerializableRtfString");
this.xrRichText2.SizeF = new System.Drawing.SizeF(400.9999F, 48.21F);
this.xrRichText2.SizeF = new System.Drawing.SizeF(320F, 48.21F);
this.xrRichText2.StylePriority.UseBorders = false;
this.xrRichText2.StylePriority.UsePadding = false;
//
@@ -868,6 +876,53 @@ namespace BeWo.LebenshilfeDuisburgReports.Neu
this.lblHatAbwesenheiten.StylePriority.UseTextAlignment = false;
this.lblHatAbwesenheiten.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleCenter;
//
// xrTableCell7
//
this.xrTableCell7.Name = "xrTableCell7";
this.xrTableCell7.Text = "Minuten";
this.xrTableCell7.Weight = 0.24385917422044126D;
//
// xrTableCell8
//
this.xrTableCell8.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
new DevExpress.XtraReports.UI.XRBinding("Text", null, "Services.Minutes", "{0:0.##}")});
this.xrTableCell8.Name = "xrTableCell8";
this.xrTableCell8.StylePriority.UseTextAlignment = false;
this.xrTableCell8.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleCenter;
this.xrTableCell8.Weight = 0.12626259816261137D;
//
// lblMinutenMitFaktor
//
this.lblMinutenMitFaktor.Borders = ((DevExpress.XtraPrinting.BorderSide)((DevExpress.XtraPrinting.BorderSide.Left | DevExpress.XtraPrinting.BorderSide.Bottom)));
this.lblMinutenMitFaktor.BorderWidth = 1F;
this.lblMinutenMitFaktor.Font = new System.Drawing.Font("Arial", 11F, System.Drawing.FontStyle.Bold);
this.lblMinutenMitFaktor.LocationFloat = new DevExpress.Utils.PointFloat(439.5F, 48.21F);
this.lblMinutenMitFaktor.Name = "lblMinutenMitFaktor";
this.lblMinutenMitFaktor.Padding = new DevExpress.XtraPrinting.PaddingInfo(3, 3, 0, 0, 100F);
this.lblMinutenMitFaktor.SizeF = new System.Drawing.SizeF(99.9F, 60.71F);
this.lblMinutenMitFaktor.StylePriority.UseBorders = false;
this.lblMinutenMitFaktor.StylePriority.UseBorderWidth = false;
this.lblMinutenMitFaktor.StylePriority.UseFont = false;
this.lblMinutenMitFaktor.StylePriority.UsePadding = false;
this.lblMinutenMitFaktor.StylePriority.UseTextAlignment = false;
this.lblMinutenMitFaktor.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleCenter;
//
// lblMinutenTotal
//
this.lblMinutenTotal.Borders = ((DevExpress.XtraPrinting.BorderSide)((DevExpress.XtraPrinting.BorderSide.Left | DevExpress.XtraPrinting.BorderSide.Bottom)));
this.lblMinutenTotal.BorderWidth = 1F;
this.lblMinutenTotal.Font = new System.Drawing.Font("Arial", 11F, System.Drawing.FontStyle.Bold);
this.lblMinutenTotal.LocationFloat = new DevExpress.Utils.PointFloat(439.5F, 0F);
this.lblMinutenTotal.Name = "lblMinutenTotal";
this.lblMinutenTotal.Padding = new DevExpress.XtraPrinting.PaddingInfo(3, 3, 0, 0, 100F);
this.lblMinutenTotal.SizeF = new System.Drawing.SizeF(100F, 48.20836F);
this.lblMinutenTotal.StylePriority.UseBorders = false;
this.lblMinutenTotal.StylePriority.UseBorderWidth = false;
this.lblMinutenTotal.StylePriority.UseFont = false;
this.lblMinutenTotal.StylePriority.UsePadding = false;
this.lblMinutenTotal.StylePriority.UseTextAlignment = false;
this.lblMinutenTotal.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleCenter;
//
// Stundenzettel
//
this.Bands.AddRange(new DevExpress.XtraReports.UI.Band[] {
@@ -978,5 +1033,9 @@ namespace BeWo.LebenshilfeDuisburgReports.Neu
private DevExpress.XtraReports.UI.XRLabel xrLabel3;
private DevExpress.XtraReports.UI.XRLabel lblHatGruppen;
private DevExpress.XtraReports.UI.XRLabel lblHatAbwesenheiten;
private DevExpress.XtraReports.UI.XRTableCell xrTableCell7;
private DevExpress.XtraReports.UI.XRTableCell xrTableCell8;
private DevExpress.XtraReports.UI.XRLabel lblMinutenMitFaktor;
private DevExpress.XtraReports.UI.XRLabel lblMinutenTotal;
}
}

View File

@@ -23,8 +23,9 @@ namespace BeWo.LeiendeckerReports
decimal hoursTotal = 0;
decimal einzelbetrag = 0;
decimal gesamt = 0;
decimal rateFactor = 1;
if (pRO.ServiceInvoicePeriods != null)
if (pRO.ServiceInvoicePeriods != null)
{
foreach (var sip in pRO.ServiceInvoicePeriods)
{
@@ -37,9 +38,19 @@ namespace BeWo.LeiendeckerReports
if (sii.HourlyRate.HasValue && einzelbetrag == 0)
einzelbetrag = sii.HourlyRate.Value;
if (sii.NetAmount.HasValue)
gesamt += sii.NetAmount.Value;
if (!String.IsNullOrEmpty(sii.RateFactor))
{
var rfStr = sii.RateFactor.Replace("%", "").Replace(",00", "").Trim();
int rfInt = 0;
Int32.TryParse(rfStr, out rfInt);
rateFactor = (100m + rfInt) / 100m;
}
if (rateFactor > 0)
gesamt += sii.NetAmount.Value * rateFactor;
}
}
}
@@ -47,6 +58,12 @@ namespace BeWo.LeiendeckerReports
cellHours.Text = String.Format("{0:0.##}", hoursTotal);
cellHourlyRate.Text = String.Format("{0:c}", einzelbetrag);
if (rateFactor > 1)
{
cellHourlyRate.Text = String.Format("{0:c} X {1:0.##}", einzelbetrag, rateFactor);
}
cellTotal.Text = String.Format("{0:c}", gesamt);
this.bindingSource1.DataSource = pRO;

View File

@@ -0,0 +1,53 @@
using System;
using System.Drawing;
using System.Collections;
using System.ComponentModel;
using DevExpress.XtraReports.UI;
using BeWo.Report.ReportObjects;
using BeWo.Report;
namespace BeWo.SozialwirkstattSchmitz.Neu
{
public partial class Spitzabrechnung : DevExpress.XtraReports.UI.XtraReport, IBeWoReport<Settlement2RO>
{
public Spitzabrechnung()
{
InitializeComponent();
}
public void SetReportDataSource(Settlement2RO pRO)
{
if (pRO.Claim > 0)
pRO.FinalSentence = "Bitte überweisen Sie unsere Restforderung nach Prüfung der Schlussabrechnung auf das Konto POSTBANK (Hannover), BLZ 250 100 30, Kto-Nr. 258 078 306.\n(IBAN: DE 48 2501 0030 0258 0783 06, BIC: PBNKDEFF)";
bool hasRatefactor = false;
if (!String.IsNullOrWhiteSpace(pRO.RateFactorText2))
{
hasRatefactor = true;
if (pRO.RateFactorText2 == "1,2")
{
pRO.RateFactorText2 = "1,20";
}
cellRateFactorText.Text = "Inkl. pauschaler Faktor";
cellRateFactorAmount.Text = String.Format("{0:c}",
pRO.AmountBillableTotal - (pRO.AmountBillableTotal / (decimal)pRO.RateFactor));
}
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.PeriodStartDate, ii.PeriodEndDate,
ii.UnitCount, !hasRatefactor ? "" : "x " + pRO.RateFactorText2 + " ",
ii.AmountPerUnit);
}
}
this.bindingSource1.DataSource = pRO;
}
}
}

View File

@@ -0,0 +1,912 @@
using BeWo.Report.ReportObjects;
namespace BeWo.SozialwirkstattSchmitz.Neu
{
partial class Spitzabrechnung
{
/// <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(Spitzabrechnung));
this.Detail = new DevExpress.XtraReports.UI.DetailBand();
this.ReportHeader = new DevExpress.XtraReports.UI.ReportHeaderBand();
this.xrLabel8 = new DevExpress.XtraReports.UI.XRLabel();
this.xrRichText1 = new DevExpress.XtraReports.UI.XRRichText();
this.xrTable1 = new DevExpress.XtraReports.UI.XRTable();
this.xrTableRow9 = new DevExpress.XtraReports.UI.XRTableRow();
this.xrTableCell19 = new DevExpress.XtraReports.UI.XRTableCell();
this.xrTableCell6 = new DevExpress.XtraReports.UI.XRTableCell();
this.xrTableRow10 = new DevExpress.XtraReports.UI.XRTableRow();
this.xrTableCell20 = new DevExpress.XtraReports.UI.XRTableCell();
this.ruleRateFactorNull = new DevExpress.XtraReports.UI.FormattingRule();
this.xrTableCell7 = new DevExpress.XtraReports.UI.XRTableCell();
this.xrTableRow11 = new DevExpress.XtraReports.UI.XRTableRow();
this.xrTableCell21 = new DevExpress.XtraReports.UI.XRTableCell();
this.xrTableRow14 = new DevExpress.XtraReports.UI.XRTableRow();
this.xrTableCell22 = new DevExpress.XtraReports.UI.XRTableCell();
this.xrTableCell14 = new DevExpress.XtraReports.UI.XRTableCell();
this.xrTableRow13 = new DevExpress.XtraReports.UI.XRTableRow();
this.xrTableCell23 = new DevExpress.XtraReports.UI.XRTableCell();
this.xrTableRow12 = new DevExpress.XtraReports.UI.XRTableRow();
this.xrTableCell24 = new DevExpress.XtraReports.UI.XRTableCell();
this.xrTableCell10 = new DevExpress.XtraReports.UI.XRTableCell();
this.xrTableRow18 = new DevExpress.XtraReports.UI.XRTableRow();
this.xrTableCell25 = new DevExpress.XtraReports.UI.XRTableCell();
this.xrTableRow15 = new DevExpress.XtraReports.UI.XRTableRow();
this.xrTableCell26 = new DevExpress.XtraReports.UI.XRTableCell();
this.xrTableCell15 = new DevExpress.XtraReports.UI.XRTableCell();
this.xrTableRow19 = new DevExpress.XtraReports.UI.XRTableRow();
this.cellRateFactorText = new DevExpress.XtraReports.UI.XRTableCell();
this.cellRateFactorAmount = new DevExpress.XtraReports.UI.XRTableCell();
this.xrTableRow16 = new DevExpress.XtraReports.UI.XRTableRow();
this.xrTableCell27 = new DevExpress.XtraReports.UI.XRTableCell();
this.xrTableRow17 = new DevExpress.XtraReports.UI.XRTableRow();
this.xrTableCell28 = new DevExpress.XtraReports.UI.XRTableCell();
this.xrTableCell17 = 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.xrTableRow7 = new DevExpress.XtraReports.UI.XRTableRow();
this.xrTableCell3 = new DevExpress.XtraReports.UI.XRTableCell();
this.RecipientPostCodeAndTown = new DevExpress.XtraReports.UI.XRLabel();
this.xrLabel_RecipientStreet = new DevExpress.XtraReports.UI.XRLabel();
this.xrLabel_RecipientDivision = new DevExpress.XtraReports.UI.XRLabel();
this.xrLabel_RecipientContactPerson = new DevExpress.XtraReports.UI.XRLabel();
this.xrLabel1 = new DevExpress.XtraReports.UI.XRLabel();
this.ReportFooter = new DevExpress.XtraReports.UI.ReportFooterBand();
this.xrLabel10 = new DevExpress.XtraReports.UI.XRLabel();
this.xrTable3 = new DevExpress.XtraReports.UI.XRTable();
this.xrTableRow20 = new DevExpress.XtraReports.UI.XRTableRow();
this.xrTableCell16 = new DevExpress.XtraReports.UI.XRTableCell();
this.xrTableRow21 = new DevExpress.XtraReports.UI.XRTableRow();
this.xrTableCell18 = new DevExpress.XtraReports.UI.XRTableCell();
this.xrTableRow22 = new DevExpress.XtraReports.UI.XRTableRow();
this.xrTableCell29 = new DevExpress.XtraReports.UI.XRTableCell();
this.xrTableRow23 = new DevExpress.XtraReports.UI.XRTableRow();
this.xrTableCell30 = new DevExpress.XtraReports.UI.XRTableCell();
this.xrTableRow24 = new DevExpress.XtraReports.UI.XRTableRow();
this.xrTableCell31 = new DevExpress.XtraReports.UI.XRTableCell();
this.xrLabel12 = new DevExpress.XtraReports.UI.XRLabel();
this.xrLabel11 = new DevExpress.XtraReports.UI.XRLabel();
this.xrLabel7 = new DevExpress.XtraReports.UI.XRLabel();
this.topMarginBand1 = new DevExpress.XtraReports.UI.TopMarginBand();
this.bottomMarginBand1 = new DevExpress.XtraReports.UI.BottomMarginBand();
this.bindingSource1 = new System.Windows.Forms.BindingSource(this.components);
((System.ComponentModel.ISupportInitialize)(this.xrRichText1)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.xrTable1)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.xrTable2)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.xrTable3)).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;
//
// ReportHeader
//
this.ReportHeader.Controls.AddRange(new DevExpress.XtraReports.UI.XRControl[] {
this.xrLabel8,
this.xrRichText1,
this.xrTable1,
this.xrLabel6,
this.xrLabel5,
this.xrLabel4,
this.xrLabel3,
this.xrLabel2,
this.xrTable2,
this.RecipientPostCodeAndTown,
this.xrLabel_RecipientStreet,
this.xrLabel_RecipientDivision,
this.xrLabel_RecipientContactPerson,
this.xrLabel1});
this.ReportHeader.Font = new System.Drawing.Font("Arial", 10F);
this.ReportHeader.HeightF = 668.75F;
this.ReportHeader.Name = "ReportHeader";
this.ReportHeader.StylePriority.UseFont = false;
//
// xrLabel8
//
this.xrLabel8.LocationFloat = new DevExpress.Utils.PointFloat(453.2501F, 19.04167F);
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(196.75F, 173.9583F);
this.xrLabel8.StylePriority.UseTextAlignment = false;
this.xrLabel8.Text = "Marie Schmitz-Schulze\r\nOskar-Jäger-Str. 173a\r\n50825 Köln\r\nTel./Fax: 0221-502 99 0" +
"2\r\nmobil: 0162-677 21 28\r\nmarie.schmitz@gmx.net\r\nSteuernummer 217/5264/2241\r\n";
this.xrLabel8.TextAlignment = DevExpress.XtraPrinting.TextAlignment.TopRight;
//
// xrRichText1
//
this.xrRichText1.Font = new System.Drawing.Font("Arial", 11F);
this.xrRichText1.LocationFloat = new DevExpress.Utils.PointFloat(409.5001F, 1.041667F);
this.xrRichText1.Name = "xrRichText1";
this.xrRichText1.SerializableRtfString = resources.GetString("xrRichText1.SerializableRtfString");
this.xrRichText1.SizeF = new System.Drawing.SizeF(243F, 18F);
this.xrRichText1.StylePriority.UseFont = false;
//
// xrTable1
//
this.xrTable1.LocationFloat = new DevExpress.Utils.PointFloat(0F, 468.75F);
this.xrTable1.Name = "xrTable1";
this.xrTable1.Rows.AddRange(new DevExpress.XtraReports.UI.XRTableRow[] {
this.xrTableRow9,
this.xrTableRow10,
this.xrTableRow11,
this.xrTableRow14,
this.xrTableRow13,
this.xrTableRow12,
this.xrTableRow18,
this.xrTableRow15,
this.xrTableRow19,
this.xrTableRow16,
this.xrTableRow17});
this.xrTable1.SizeF = new System.Drawing.SizeF(650F, 200F);
//
// xrTableRow9
//
this.xrTableRow9.Cells.AddRange(new DevExpress.XtraReports.UI.XRTableCell[] {
this.xrTableCell19,
this.xrTableCell6});
this.xrTableRow9.Name = "xrTableRow9";
this.xrTableRow9.Weight = 0.085D;
//
// xrTableCell19
//
this.xrTableCell19.BorderColor = System.Drawing.SystemColors.ControlLight;
this.xrTableCell19.Borders = ((DevExpress.XtraPrinting.BorderSide)(((DevExpress.XtraPrinting.BorderSide.Left | DevExpress.XtraPrinting.BorderSide.Top)
| DevExpress.XtraPrinting.BorderSide.Right)));
this.xrTableCell19.Font = new System.Drawing.Font("Verdana", 10F);
this.xrTableCell19.Name = "xrTableCell19";
this.xrTableCell19.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.xrTableCell19.StylePriority.UseBorderColor = false;
this.xrTableCell19.StylePriority.UseBorders = false;
this.xrTableCell19.StylePriority.UseFont = false;
this.xrTableCell19.Text = "Bewilligte Fachleistungsstunden (FLS) gesamt";
this.xrTableCell19.Weight = 0.66615384615384621D;
//
// xrTableCell6
//
this.xrTableCell6.BorderColor = System.Drawing.SystemColors.ControlLight;
this.xrTableCell6.Borders = ((DevExpress.XtraPrinting.BorderSide)(((DevExpress.XtraPrinting.BorderSide.Left | DevExpress.XtraPrinting.BorderSide.Top)
| DevExpress.XtraPrinting.BorderSide.Right)));
this.xrTableCell6.Font = new System.Drawing.Font("Arial", 10F, System.Drawing.FontStyle.Bold);
this.xrTableCell6.Name = "xrTableCell6";
this.xrTableCell6.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.xrTableCell6.StylePriority.UseBorderColor = false;
this.xrTableCell6.StylePriority.UseBorders = false;
this.xrTableCell6.StylePriority.UseFont = false;
this.xrTableCell6.StylePriority.UseTextAlignment = false;
this.xrTableCell6.Text = "[ApprovedFLS]";
this.xrTableCell6.TextAlignment = DevExpress.XtraPrinting.TextAlignment.TopRight;
this.xrTableCell6.Weight = 0.33384615384615385D;
//
// xrTableRow10
//
this.xrTableRow10.Cells.AddRange(new DevExpress.XtraReports.UI.XRTableCell[] {
this.xrTableCell20,
this.xrTableCell7});
this.xrTableRow10.Name = "xrTableRow10";
this.xrTableRow10.Weight = 0.085D;
//
// xrTableCell20
//
this.xrTableCell20.BorderColor = System.Drawing.SystemColors.ControlLight;
this.xrTableCell20.Borders = ((DevExpress.XtraPrinting.BorderSide)(((DevExpress.XtraPrinting.BorderSide.Left | DevExpress.XtraPrinting.BorderSide.Right)
| DevExpress.XtraPrinting.BorderSide.Bottom)));
this.xrTableCell20.Font = new System.Drawing.Font("Verdana", 10F);
this.xrTableCell20.FormattingRules.Add(this.ruleRateFactorNull);
this.xrTableCell20.Name = "xrTableCell20";
this.xrTableCell20.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.xrTableCell20.StylePriority.UseBorderColor = false;
this.xrTableCell20.StylePriority.UseBorders = false;
this.xrTableCell20.StylePriority.UseFont = false;
this.xrTableCell20.Text = "- zzgl. Faktor [RateFactorText2]";
this.xrTableCell20.Weight = 0.66615384615384621D;
//
// ruleRateFactorNull
//
this.ruleRateFactorNull.Condition = "[RateFactorText2] == ?";
this.ruleRateFactorNull.Formatting.Visible = DevExpress.Utils.DefaultBoolean.False;
this.ruleRateFactorNull.Name = "ruleRateFactorNull";
//
// xrTableCell7
//
this.xrTableCell7.BorderColor = System.Drawing.SystemColors.ControlLight;
this.xrTableCell7.Borders = ((DevExpress.XtraPrinting.BorderSide)(((DevExpress.XtraPrinting.BorderSide.Left | DevExpress.XtraPrinting.BorderSide.Right)
| DevExpress.XtraPrinting.BorderSide.Bottom)));
this.xrTableCell7.Font = new System.Drawing.Font("Arial", 10F, System.Drawing.FontStyle.Bold);
this.xrTableCell7.FormattingRules.Add(this.ruleRateFactorNull);
this.xrTableCell7.Name = "xrTableCell7";
this.xrTableCell7.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.xrTableCell7.StylePriority.UseBorderColor = false;
this.xrTableCell7.StylePriority.UseBorders = false;
this.xrTableCell7.StylePriority.UseFont = false;
this.xrTableCell7.StylePriority.UseTextAlignment = false;
this.xrTableCell7.Text = "[ApprovedFLSWithFactor]";
this.xrTableCell7.TextAlignment = DevExpress.XtraPrinting.TextAlignment.TopRight;
this.xrTableCell7.Weight = 0.33384615384615385D;
//
// xrTableRow11
//
this.xrTableRow11.Cells.AddRange(new DevExpress.XtraReports.UI.XRTableCell[] {
this.xrTableCell21});
this.xrTableRow11.Name = "xrTableRow11";
this.xrTableRow11.Weight = 0.085D;
//
// xrTableCell21
//
this.xrTableCell21.BorderColor = System.Drawing.SystemColors.ControlLight;
this.xrTableCell21.Borders = ((DevExpress.XtraPrinting.BorderSide)((DevExpress.XtraPrinting.BorderSide.Left | DevExpress.XtraPrinting.BorderSide.Right)));
this.xrTableCell21.Name = "xrTableCell21";
this.xrTableCell21.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.xrTableCell21.StylePriority.UseBorderColor = false;
this.xrTableCell21.StylePriority.UseBorders = false;
this.xrTableCell21.Weight = 1D;
//
// xrTableRow14
//
this.xrTableRow14.Cells.AddRange(new DevExpress.XtraReports.UI.XRTableCell[] {
this.xrTableCell22,
this.xrTableCell14});
this.xrTableRow14.Name = "xrTableRow14";
this.xrTableRow14.Weight = 0.085D;
//
// xrTableCell22
//
this.xrTableCell22.BorderColor = System.Drawing.SystemColors.ControlLight;
this.xrTableCell22.Borders = ((DevExpress.XtraPrinting.BorderSide)((((DevExpress.XtraPrinting.BorderSide.Left | DevExpress.XtraPrinting.BorderSide.Top)
| DevExpress.XtraPrinting.BorderSide.Right)
| DevExpress.XtraPrinting.BorderSide.Bottom)));
this.xrTableCell22.Name = "xrTableCell22";
this.xrTableCell22.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.xrTableCell22.StylePriority.UseBorderColor = false;
this.xrTableCell22.StylePriority.UseBorders = false;
this.xrTableCell22.StylePriority.UseFont = false;
this.xrTableCell22.Text = "Erbrachte Leistungen";
this.xrTableCell22.Weight = 0.66615384615384621D;
//
// xrTableCell14
//
this.xrTableCell14.BorderColor = System.Drawing.SystemColors.ControlLight;
this.xrTableCell14.Borders = ((DevExpress.XtraPrinting.BorderSide)((((DevExpress.XtraPrinting.BorderSide.Left | DevExpress.XtraPrinting.BorderSide.Top)
| DevExpress.XtraPrinting.BorderSide.Right)
| DevExpress.XtraPrinting.BorderSide.Bottom)));
this.xrTableCell14.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
new DevExpress.XtraReports.UI.XRBinding("Text", null, "RecordedFLS", "{0:0.00} FLS")});
this.xrTableCell14.Name = "xrTableCell14";
this.xrTableCell14.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.xrTableCell14.StylePriority.UseBorderColor = false;
this.xrTableCell14.StylePriority.UseBorders = false;
this.xrTableCell14.StylePriority.UseFont = false;
this.xrTableCell14.StylePriority.UseTextAlignment = false;
this.xrTableCell14.TextAlignment = DevExpress.XtraPrinting.TextAlignment.TopRight;
this.xrTableCell14.Weight = 0.33384615384615385D;
//
// xrTableRow13
//
this.xrTableRow13.Cells.AddRange(new DevExpress.XtraReports.UI.XRTableCell[] {
this.xrTableCell23});
this.xrTableRow13.Name = "xrTableRow13";
this.xrTableRow13.Weight = 0.085D;
//
// xrTableCell23
//
this.xrTableCell23.BorderColor = System.Drawing.SystemColors.ControlLight;
this.xrTableCell23.Borders = ((DevExpress.XtraPrinting.BorderSide)((DevExpress.XtraPrinting.BorderSide.Left | DevExpress.XtraPrinting.BorderSide.Right)));
this.xrTableCell23.Name = "xrTableCell23";
this.xrTableCell23.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.xrTableCell23.StylePriority.UseBorderColor = false;
this.xrTableCell23.StylePriority.UseBorders = false;
this.xrTableCell23.Weight = 1D;
//
// xrTableRow12
//
this.xrTableRow12.Cells.AddRange(new DevExpress.XtraReports.UI.XRTableCell[] {
this.xrTableCell24,
this.xrTableCell10});
this.xrTableRow12.Name = "xrTableRow12";
this.xrTableRow12.Weight = 0.085D;
//
// xrTableCell24
//
this.xrTableCell24.BorderColor = System.Drawing.SystemColors.ControlLight;
this.xrTableCell24.Borders = ((DevExpress.XtraPrinting.BorderSide)((((DevExpress.XtraPrinting.BorderSide.Left | DevExpress.XtraPrinting.BorderSide.Top)
| DevExpress.XtraPrinting.BorderSide.Right)
| DevExpress.XtraPrinting.BorderSide.Bottom)));
this.xrTableCell24.Name = "xrTableCell24";
this.xrTableCell24.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.xrTableCell24.StylePriority.UseBorderColor = false;
this.xrTableCell24.StylePriority.UseBorders = false;
this.xrTableCell24.StylePriority.UseFont = false;
this.xrTableCell24.Text = "Summe der bereits gezahlten Leistungsvergütungen";
this.xrTableCell24.Weight = 0.66615384615384621D;
//
// xrTableCell10
//
this.xrTableCell10.BorderColor = System.Drawing.SystemColors.ControlLight;
this.xrTableCell10.Borders = ((DevExpress.XtraPrinting.BorderSide)((((DevExpress.XtraPrinting.BorderSide.Left | DevExpress.XtraPrinting.BorderSide.Top)
| DevExpress.XtraPrinting.BorderSide.Right)
| DevExpress.XtraPrinting.BorderSide.Bottom)));
this.xrTableCell10.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
new DevExpress.XtraReports.UI.XRBinding("Text", null, "AmountAdvancedPayments", "{0:c}")});
this.xrTableCell10.Name = "xrTableCell10";
this.xrTableCell10.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.xrTableCell10.StylePriority.UseBorderColor = false;
this.xrTableCell10.StylePriority.UseBorders = false;
this.xrTableCell10.StylePriority.UseFont = false;
this.xrTableCell10.StylePriority.UseTextAlignment = false;
this.xrTableCell10.TextAlignment = DevExpress.XtraPrinting.TextAlignment.TopRight;
this.xrTableCell10.Weight = 0.33384615384615385D;
//
// xrTableRow18
//
this.xrTableRow18.Cells.AddRange(new DevExpress.XtraReports.UI.XRTableCell[] {
this.xrTableCell25});
this.xrTableRow18.Name = "xrTableRow18";
this.xrTableRow18.Weight = 0.085D;
//
// xrTableCell25
//
this.xrTableCell25.BorderColor = System.Drawing.SystemColors.ControlLight;
this.xrTableCell25.Borders = ((DevExpress.XtraPrinting.BorderSide)((DevExpress.XtraPrinting.BorderSide.Left | DevExpress.XtraPrinting.BorderSide.Right)));
this.xrTableCell25.Name = "xrTableCell25";
this.xrTableCell25.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.xrTableCell25.StylePriority.UseBorderColor = false;
this.xrTableCell25.StylePriority.UseBorders = false;
this.xrTableCell25.Weight = 1D;
//
// xrTableRow15
//
this.xrTableRow15.Cells.AddRange(new DevExpress.XtraReports.UI.XRTableCell[] {
this.xrTableCell26,
this.xrTableCell15});
this.xrTableRow15.Name = "xrTableRow15";
this.xrTableRow15.Weight = 0.085D;
//
// xrTableCell26
//
this.xrTableCell26.BorderColor = System.Drawing.SystemColors.ControlLight;
this.xrTableCell26.Borders = ((DevExpress.XtraPrinting.BorderSide)(((DevExpress.XtraPrinting.BorderSide.Left | DevExpress.XtraPrinting.BorderSide.Top)
| DevExpress.XtraPrinting.BorderSide.Right)));
this.xrTableCell26.Name = "xrTableCell26";
this.xrTableCell26.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.xrTableCell26.StylePriority.UseBorderColor = false;
this.xrTableCell26.StylePriority.UseBorders = false;
this.xrTableCell26.StylePriority.UseFont = false;
this.xrTableCell26.Text = "Summe der Vergütung für abrechenbare Leistungen";
this.xrTableCell26.Weight = 0.66615384615384621D;
//
// xrTableCell15
//
this.xrTableCell15.BorderColor = System.Drawing.SystemColors.ControlLight;
this.xrTableCell15.Borders = ((DevExpress.XtraPrinting.BorderSide)((DevExpress.XtraPrinting.BorderSide.Top | DevExpress.XtraPrinting.BorderSide.Right)));
this.xrTableCell15.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
new DevExpress.XtraReports.UI.XRBinding("Text", null, "AmountBillableTotal", "{0:c}")});
this.xrTableCell15.Name = "xrTableCell15";
this.xrTableCell15.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.xrTableCell15.StylePriority.UseBorderColor = false;
this.xrTableCell15.StylePriority.UseBorders = false;
this.xrTableCell15.StylePriority.UseFont = false;
this.xrTableCell15.StylePriority.UseTextAlignment = false;
this.xrTableCell15.TextAlignment = DevExpress.XtraPrinting.TextAlignment.TopRight;
this.xrTableCell15.Weight = 0.33384615384615385D;
//
// xrTableRow19
//
this.xrTableRow19.Cells.AddRange(new DevExpress.XtraReports.UI.XRTableCell[] {
this.cellRateFactorText,
this.cellRateFactorAmount});
this.xrTableRow19.Name = "xrTableRow19";
this.xrTableRow19.Weight = 0.085D;
//
// cellRateFactorText
//
this.cellRateFactorText.BorderColor = System.Drawing.SystemColors.ControlLight;
this.cellRateFactorText.Borders = ((DevExpress.XtraPrinting.BorderSide)(((DevExpress.XtraPrinting.BorderSide.Left | DevExpress.XtraPrinting.BorderSide.Right)
| DevExpress.XtraPrinting.BorderSide.Bottom)));
this.cellRateFactorText.Name = "cellRateFactorText";
this.cellRateFactorText.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.cellRateFactorText.StylePriority.UseBorderColor = false;
this.cellRateFactorText.StylePriority.UseBorders = false;
this.cellRateFactorText.StylePriority.UseFont = false;
this.cellRateFactorText.StylePriority.UsePadding = false;
this.cellRateFactorText.Weight = 0.66615384615384621D;
//
// cellRateFactorAmount
//
this.cellRateFactorAmount.BorderColor = System.Drawing.SystemColors.ControlLight;
this.cellRateFactorAmount.Borders = ((DevExpress.XtraPrinting.BorderSide)((DevExpress.XtraPrinting.BorderSide.Right | DevExpress.XtraPrinting.BorderSide.Bottom)));
this.cellRateFactorAmount.Name = "cellRateFactorAmount";
this.cellRateFactorAmount.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.cellRateFactorAmount.StylePriority.UseBorderColor = false;
this.cellRateFactorAmount.StylePriority.UseBorders = false;
this.cellRateFactorAmount.StylePriority.UseFont = false;
this.cellRateFactorAmount.StylePriority.UsePadding = false;
this.cellRateFactorAmount.StylePriority.UseTextAlignment = false;
this.cellRateFactorAmount.TextAlignment = DevExpress.XtraPrinting.TextAlignment.TopRight;
this.cellRateFactorAmount.Weight = 0.33384615384615385D;
//
// xrTableRow16
//
this.xrTableRow16.Cells.AddRange(new DevExpress.XtraReports.UI.XRTableCell[] {
this.xrTableCell27});
this.xrTableRow16.Name = "xrTableRow16";
this.xrTableRow16.Weight = 0.085D;
//
// xrTableCell27
//
this.xrTableCell27.BorderColor = System.Drawing.SystemColors.ControlLight;
this.xrTableCell27.Borders = ((DevExpress.XtraPrinting.BorderSide)((DevExpress.XtraPrinting.BorderSide.Left | DevExpress.XtraPrinting.BorderSide.Right)));
this.xrTableCell27.Name = "xrTableCell27";
this.xrTableCell27.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.xrTableCell27.StylePriority.UseBorderColor = false;
this.xrTableCell27.StylePriority.UseBorders = false;
this.xrTableCell27.Weight = 1D;
//
// xrTableRow17
//
this.xrTableRow17.Cells.AddRange(new DevExpress.XtraReports.UI.XRTableCell[] {
this.xrTableCell28,
this.xrTableCell17});
this.xrTableRow17.Name = "xrTableRow17";
this.xrTableRow17.Weight = 0.15D;
//
// xrTableCell28
//
this.xrTableCell28.BorderColor = System.Drawing.SystemColors.ControlLight;
this.xrTableCell28.Borders = ((DevExpress.XtraPrinting.BorderSide)((((DevExpress.XtraPrinting.BorderSide.Left | DevExpress.XtraPrinting.BorderSide.Top)
| DevExpress.XtraPrinting.BorderSide.Right)
| DevExpress.XtraPrinting.BorderSide.Bottom)));
this.xrTableCell28.Name = "xrTableCell28";
this.xrTableCell28.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.xrTableCell28.StylePriority.UseBorderColor = false;
this.xrTableCell28.StylePriority.UseBorders = false;
this.xrTableCell28.StylePriority.UseFont = false;
this.xrTableCell28.Text = "Restforderung:";
this.xrTableCell28.Weight = 0.66615384615384621D;
//
// xrTableCell17
//
this.xrTableCell17.BorderColor = System.Drawing.SystemColors.ControlLight;
this.xrTableCell17.Borders = ((DevExpress.XtraPrinting.BorderSide)((((DevExpress.XtraPrinting.BorderSide.Left | DevExpress.XtraPrinting.BorderSide.Top)
| DevExpress.XtraPrinting.BorderSide.Right)
| DevExpress.XtraPrinting.BorderSide.Bottom)));
this.xrTableCell17.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
new DevExpress.XtraReports.UI.XRBinding("Text", null, "Claim", "{0:c}")});
this.xrTableCell17.Font = new System.Drawing.Font("Arial", 10F, System.Drawing.FontStyle.Bold);
this.xrTableCell17.Name = "xrTableCell17";
this.xrTableCell17.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.xrTableCell17.StylePriority.UseBorderColor = false;
this.xrTableCell17.StylePriority.UseBorders = false;
this.xrTableCell17.StylePriority.UseFont = false;
this.xrTableCell17.StylePriority.UseTextAlignment = false;
this.xrTableCell17.TextAlignment = DevExpress.XtraPrinting.TextAlignment.TopRight;
this.xrTableCell17.Weight = 0.33384615384615385D;
//
// xrLabel6
//
this.xrLabel6.LocationFloat = new DevExpress.Utils.PointFloat(0F, 393.75F);
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(642F, 67F);
this.xrLabel6.StylePriority.UseFont = false;
this.xrLabel6.Text = resources.GetString("xrLabel6.Text");
//
// xrLabel5
//
this.xrLabel5.LocationFloat = new DevExpress.Utils.PointFloat(0F, 360.75F);
this.xrLabel5.Name = "xrLabel5";
this.xrLabel5.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.xrLabel5.SizeF = new System.Drawing.SizeF(317F, 17F);
this.xrLabel5.StylePriority.UseFont = false;
this.xrLabel5.Text = "Sehr geehrte Damen und Herren,";
//
// xrLabel4
//
this.xrLabel4.BackColor = System.Drawing.Color.Transparent;
this.xrLabel4.CanShrink = true;
this.xrLabel4.Font = new System.Drawing.Font("Arial", 10F, System.Drawing.FontStyle.Bold);
this.xrLabel4.LocationFloat = new DevExpress.Utils.PointFloat(0F, 310.75F);
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 = "[CustomerReferenceNumberAndDate]";
this.xrLabel4.WordWrap = false;
//
// xrLabel3
//
this.xrLabel3.BackColor = System.Drawing.Color.Transparent;
this.xrLabel3.CanShrink = true;
this.xrLabel3.Font = new System.Drawing.Font("Arial", 10F, System.Drawing.FontStyle.Bold);
this.xrLabel3.LocationFloat = new DevExpress.Utils.PointFloat(0F, 293.75F);
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 Betreuungsleistungen für [Salutation2] [CustomerName]";
this.xrLabel3.WordWrap = false;
//
// xrLabel2
//
this.xrLabel2.BackColor = System.Drawing.Color.Transparent;
this.xrLabel2.CanShrink = true;
this.xrLabel2.Font = new System.Drawing.Font("Arial", 10F, System.Drawing.FontStyle.Bold);
this.xrLabel2.LocationFloat = new DevExpress.Utils.PointFloat(0F, 276.75F);
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, 249.6667F);
this.xrTable2.Name = "xrTable2";
this.xrTable2.Rows.AddRange(new DevExpress.XtraReports.UI.XRTableRow[] {
this.xrTableRow7});
this.xrTable2.SizeF = new System.Drawing.SizeF(283F, 17F);
//
// xrTableRow7
//
this.xrTableRow7.Cells.AddRange(new DevExpress.XtraReports.UI.XRTableCell[] {
this.xrTableCell3});
this.xrTableRow7.Name = "xrTableRow7";
this.xrTableRow7.Weight = 0.11258278145695365D;
//
// xrTableCell3
//
this.xrTableCell3.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
new DevExpress.XtraReports.UI.XRBinding("Text", null, "InvoiceDate", "{0:dd.MM.yyyy}")});
this.xrTableCell3.Name = "xrTableCell3";
this.xrTableCell3.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.xrTableCell3.StylePriority.UseFont = false;
this.xrTableCell3.StylePriority.UseTextAlignment = false;
this.xrTableCell3.TextAlignment = DevExpress.XtraPrinting.TextAlignment.TopRight;
this.xrTableCell3.Weight = 1D;
//
// RecipientPostCodeAndTown
//
this.RecipientPostCodeAndTown.CanShrink = true;
this.RecipientPostCodeAndTown.LocationFloat = new DevExpress.Utils.PointFloat(0F, 176F);
this.RecipientPostCodeAndTown.Name = "RecipientPostCodeAndTown";
this.RecipientPostCodeAndTown.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.RecipientPostCodeAndTown.ProcessNullValues = DevExpress.XtraReports.UI.ValueSuppressType.SuppressAndShrink;
this.RecipientPostCodeAndTown.SizeF = new System.Drawing.SizeF(292F, 17F);
this.RecipientPostCodeAndTown.StylePriority.UseFont = false;
this.RecipientPostCodeAndTown.Text = "[RecipientPostCodeAndTown]";
//
// xrLabel_RecipientStreet
//
this.xrLabel_RecipientStreet.CanShrink = true;
this.xrLabel_RecipientStreet.LocationFloat = new DevExpress.Utils.PointFloat(0F, 159F);
this.xrLabel_RecipientStreet.Name = "xrLabel_RecipientStreet";
this.xrLabel_RecipientStreet.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.xrLabel_RecipientStreet.ProcessNullValues = DevExpress.XtraReports.UI.ValueSuppressType.SuppressAndShrink;
this.xrLabel_RecipientStreet.SizeF = new System.Drawing.SizeF(292F, 17F);
this.xrLabel_RecipientStreet.StylePriority.UseFont = false;
this.xrLabel_RecipientStreet.Text = "[RecipientStreet]";
//
// xrLabel_RecipientDivision
//
this.xrLabel_RecipientDivision.CanShrink = true;
this.xrLabel_RecipientDivision.LocationFloat = new DevExpress.Utils.PointFloat(0F, 142F);
this.xrLabel_RecipientDivision.Name = "xrLabel_RecipientDivision";
this.xrLabel_RecipientDivision.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.xrLabel_RecipientDivision.ProcessNullValues = DevExpress.XtraReports.UI.ValueSuppressType.SuppressAndShrink;
this.xrLabel_RecipientDivision.SizeF = new System.Drawing.SizeF(292F, 17F);
this.xrLabel_RecipientDivision.StylePriority.UseFont = false;
this.xrLabel_RecipientDivision.Text = "[RecipientDivision]";
//
// xrLabel_RecipientContactPerson
//
this.xrLabel_RecipientContactPerson.CanShrink = true;
this.xrLabel_RecipientContactPerson.LocationFloat = new DevExpress.Utils.PointFloat(0F, 125F);
this.xrLabel_RecipientContactPerson.Name = "xrLabel_RecipientContactPerson";
this.xrLabel_RecipientContactPerson.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.xrLabel_RecipientContactPerson.ProcessNullValues = DevExpress.XtraReports.UI.ValueSuppressType.SuppressAndShrink;
this.xrLabel_RecipientContactPerson.SizeF = new System.Drawing.SizeF(292F, 17F);
this.xrLabel_RecipientContactPerson.StylePriority.UseFont = false;
this.xrLabel_RecipientContactPerson.Text = "[RecipientContactPerson]";
//
// xrLabel1
//
this.xrLabel1.CanShrink = true;
this.xrLabel1.LocationFloat = new DevExpress.Utils.PointFloat(0F, 108F);
this.xrLabel1.Name = "xrLabel1";
this.xrLabel1.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.xrLabel1.ProcessNullValues = DevExpress.XtraReports.UI.ValueSuppressType.SuppressAndShrink;
this.xrLabel1.SizeF = new System.Drawing.SizeF(292F, 17F);
this.xrLabel1.StylePriority.UseFont = false;
this.xrLabel1.Text = "[RecipientOrganisation]";
//
// ReportFooter
//
this.ReportFooter.Controls.AddRange(new DevExpress.XtraReports.UI.XRControl[] {
this.xrLabel10,
this.xrTable3,
this.xrLabel12,
this.xrLabel11,
this.xrLabel7});
this.ReportFooter.Font = new System.Drawing.Font("Arial", 10F);
this.ReportFooter.HeightF = 259.7083F;
this.ReportFooter.KeepTogether = true;
this.ReportFooter.Name = "ReportFooter";
this.ReportFooter.StylePriority.UseFont = false;
//
// xrLabel10
//
this.xrLabel10.LocationFloat = new DevExpress.Utils.PointFloat(0F, 156.5833F);
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";
//
// xrTable3
//
this.xrTable3.LocationFloat = new DevExpress.Utils.PointFloat(0F, 33F);
this.xrTable3.Name = "xrTable3";
this.xrTable3.Rows.AddRange(new DevExpress.XtraReports.UI.XRTableRow[] {
this.xrTableRow20,
this.xrTableRow21,
this.xrTableRow22,
this.xrTableRow23,
this.xrTableRow24});
this.xrTable3.SizeF = new System.Drawing.SizeF(650F, 100F);
this.xrTable3.StylePriority.UseFont = false;
//
// xrTableRow20
//
this.xrTableRow20.Cells.AddRange(new DevExpress.XtraReports.UI.XRTableCell[] {
this.xrTableCell16});
this.xrTableRow20.Name = "xrTableRow20";
this.xrTableRow20.Weight = 0.38095238095238093D;
//
// xrTableCell16
//
this.xrTableCell16.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
new DevExpress.XtraReports.UI.XRBinding("Text", null, "Notice")});
this.xrTableCell16.Name = "xrTableCell16";
this.xrTableCell16.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.xrTableCell16.StylePriority.UsePadding = false;
this.xrTableCell16.Text = "xrTableCell1";
this.xrTableCell16.Weight = 3D;
//
// xrTableRow21
//
this.xrTableRow21.Cells.AddRange(new DevExpress.XtraReports.UI.XRTableCell[] {
this.xrTableCell18});
this.xrTableRow21.Name = "xrTableRow21";
this.xrTableRow21.Weight = 0.23809523809523808D;
//
// xrTableCell18
//
this.xrTableCell18.Name = "xrTableCell18";
this.xrTableCell18.Weight = 3D;
//
// xrTableRow22
//
this.xrTableRow22.Cells.AddRange(new DevExpress.XtraReports.UI.XRTableCell[] {
this.xrTableCell29});
this.xrTableRow22.Name = "xrTableRow22";
this.xrTableRow22.Weight = 0.38095238095238088D;
//
// xrTableCell29
//
this.xrTableCell29.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
new DevExpress.XtraReports.UI.XRBinding("Text", null, "AbsenceTimes")});
this.xrTableCell29.Name = "xrTableCell29";
this.xrTableCell29.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.xrTableCell29.StylePriority.UsePadding = false;
this.xrTableCell29.Text = "xrTableCell4";
this.xrTableCell29.Weight = 3D;
//
// xrTableRow23
//
this.xrTableRow23.Cells.AddRange(new DevExpress.XtraReports.UI.XRTableCell[] {
this.xrTableCell30});
this.xrTableRow23.Name = "xrTableRow23";
this.xrTableRow23.Weight = 0.23809523809523803D;
//
// xrTableCell30
//
this.xrTableCell30.Name = "xrTableCell30";
this.xrTableCell30.Weight = 3D;
//
// xrTableRow24
//
this.xrTableRow24.Cells.AddRange(new DevExpress.XtraReports.UI.XRTableCell[] {
this.xrTableCell31});
this.xrTableRow24.Name = "xrTableRow24";
this.xrTableRow24.Weight = 1.1428571428571428D;
//
// xrTableCell31
//
this.xrTableCell31.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
new DevExpress.XtraReports.UI.XRBinding("Text", null, "FinalSentence")});
this.xrTableCell31.Multiline = true;
this.xrTableCell31.Name = "xrTableCell31";
this.xrTableCell31.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.xrTableCell31.StylePriority.UsePadding = false;
this.xrTableCell31.Text = "xrTableCell31";
this.xrTableCell31.Weight = 3D;
//
// xrLabel12
//
this.xrLabel12.LocationFloat = new DevExpress.Utils.PointFloat(0F, 208.7084F);
this.xrLabel12.Name = "xrLabel12";
this.xrLabel12.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.xrLabel12.SizeF = new System.Drawing.SizeF(225F, 17F);
this.xrLabel12.StylePriority.UseFont = false;
this.xrLabel12.Text = "[CreatorName]";
//
// xrLabel11
//
this.xrLabel11.LocationFloat = new DevExpress.Utils.PointFloat(0F, 242.7083F);
this.xrLabel11.Name = "xrLabel11";
this.xrLabel11.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.xrLabel11.SizeF = new System.Drawing.SizeF(67F, 17F);
this.xrLabel11.StylePriority.UseFont = false;
this.xrLabel11.StylePriority.UseTextAlignment = false;
this.xrLabel11.Text = "Anlage";
this.xrLabel11.TextAlignment = DevExpress.XtraPrinting.TextAlignment.TopLeft;
//
// xrLabel7
//
this.xrLabel7.Font = new System.Drawing.Font("Arial", 10F, System.Drawing.FontStyle.Italic);
this.xrLabel7.LocationFloat = new DevExpress.Utils.PointFloat(0F, 8F);
this.xrLabel7.Name = "xrLabel7";
this.xrLabel7.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.xrLabel7.SizeF = new System.Drawing.SizeF(250F, 17F);
this.xrLabel7.StylePriority.UseFont = false;
this.xrLabel7.Text = "Abschließende Bemerkungen:";
//
// topMarginBand1
//
this.topMarginBand1.HeightF = 100F;
this.topMarginBand1.Name = "topMarginBand1";
//
// bottomMarginBand1
//
this.bottomMarginBand1.HeightF = 50.70839F;
this.bottomMarginBand1.Name = "bottomMarginBand1";
//
// bindingSource1
//
this.bindingSource1.DataSource = typeof(BeWo.Report.ReportObjects.Settlement2RO);
//
// Spitzabrechnung
//
this.Bands.AddRange(new DevExpress.XtraReports.UI.Band[] {
this.Detail,
this.ReportHeader,
this.ReportFooter,
this.topMarginBand1,
this.bottomMarginBand1});
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, 51);
this.PageHeight = 1169;
this.PageWidth = 827;
this.PaperKind = System.Drawing.Printing.PaperKind.A4;
this.Version = "17.1";
((System.ComponentModel.ISupportInitialize)(this.xrRichText1)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.xrTable1)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.xrTable2)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.xrTable3)).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 xrTableRow7;
private DevExpress.XtraReports.UI.XRTableCell xrTableCell3;
private DevExpress.XtraReports.UI.XRLabel RecipientPostCodeAndTown;
private DevExpress.XtraReports.UI.XRLabel xrLabel_RecipientStreet;
private DevExpress.XtraReports.UI.XRLabel xrLabel_RecipientDivision;
private DevExpress.XtraReports.UI.XRLabel xrLabel_RecipientContactPerson;
private DevExpress.XtraReports.UI.XRLabel xrLabel1;
private DevExpress.XtraReports.UI.ReportFooterBand ReportFooter;
private DevExpress.XtraReports.UI.XRLabel xrLabel7;
private DevExpress.XtraReports.UI.XRLabel xrLabel12;
private DevExpress.XtraReports.UI.XRLabel xrLabel11;
private DevExpress.XtraReports.UI.XRTable xrTable1;
private DevExpress.XtraReports.UI.XRTableRow xrTableRow9;
private DevExpress.XtraReports.UI.XRTableCell xrTableCell19;
private DevExpress.XtraReports.UI.XRTableRow xrTableRow10;
private DevExpress.XtraReports.UI.XRTableCell xrTableCell20;
private DevExpress.XtraReports.UI.XRTableCell xrTableCell7;
private DevExpress.XtraReports.UI.XRTableRow xrTableRow11;
private DevExpress.XtraReports.UI.XRTableCell xrTableCell21;
private DevExpress.XtraReports.UI.XRTableRow xrTableRow14;
private DevExpress.XtraReports.UI.XRTableCell xrTableCell22;
private DevExpress.XtraReports.UI.XRTableCell xrTableCell14;
private DevExpress.XtraReports.UI.XRTableRow xrTableRow13;
private DevExpress.XtraReports.UI.XRTableCell xrTableCell23;
private DevExpress.XtraReports.UI.XRTableRow xrTableRow12;
private DevExpress.XtraReports.UI.XRTableCell xrTableCell24;
private DevExpress.XtraReports.UI.XRTableCell xrTableCell10;
private DevExpress.XtraReports.UI.XRTableRow xrTableRow18;
private DevExpress.XtraReports.UI.XRTableCell xrTableCell25;
private DevExpress.XtraReports.UI.XRTableRow xrTableRow15;
private DevExpress.XtraReports.UI.XRTableCell xrTableCell26;
private DevExpress.XtraReports.UI.XRTableCell xrTableCell15;
private DevExpress.XtraReports.UI.XRTableRow xrTableRow16;
private DevExpress.XtraReports.UI.XRTableCell xrTableCell27;
private DevExpress.XtraReports.UI.XRTableRow xrTableRow17;
private DevExpress.XtraReports.UI.XRTableCell xrTableCell28;
private DevExpress.XtraReports.UI.XRTableCell xrTableCell17;
private DevExpress.XtraReports.UI.XRTableCell xrTableCell6;
private DevExpress.XtraReports.UI.XRTableRow xrTableRow19;
private DevExpress.XtraReports.UI.XRTableCell cellRateFactorText;
private DevExpress.XtraReports.UI.XRTableCell cellRateFactorAmount;
private DevExpress.XtraReports.UI.XRTable xrTable3;
private DevExpress.XtraReports.UI.XRTableRow xrTableRow20;
private DevExpress.XtraReports.UI.XRTableCell xrTableCell16;
private DevExpress.XtraReports.UI.XRTableRow xrTableRow21;
private DevExpress.XtraReports.UI.XRTableCell xrTableCell18;
private DevExpress.XtraReports.UI.XRTableRow xrTableRow22;
private DevExpress.XtraReports.UI.XRTableCell xrTableCell29;
private DevExpress.XtraReports.UI.XRTableRow xrTableRow23;
private DevExpress.XtraReports.UI.XRTableCell xrTableCell30;
private DevExpress.XtraReports.UI.XRTableRow xrTableRow24;
private DevExpress.XtraReports.UI.XRTableCell xrTableCell31;
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.XRLabel xrLabel8;
private DevExpress.XtraReports.UI.XRRichText xrRichText1;
}
}

View File

@@ -0,0 +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="xrRichText1.SerializableRtfString" xml:space="preserve">
<value>ewBcAHIAdABmADEAXABhAG4AcwBpAFwAYQBuAHMAaQBjAHAAZwAxADIANQAyAFwAZABlAGYAZgAwAHsAXABmAG8AbgB0AHQAYgBsAHsAXABmADAAXABmAG4AaQBsAFwAZgBjAGgAYQByAHMAZQB0ADAAIABBAHIAaQBhAGwAOwB9AH0ADQAKAHsAXABjAG8AbABvAHIAdABiAGwAIAA7AFwAcgBlAGQAMABcAGcAcgBlAGUAbgAwAFwAYgBsAHUAZQAwADsAfQANAAoAXAB2AGkAZQB3AGsAaQBuAGQANABcAHUAYwAxAFwAcABhAHIAZABcAHEAcgBcAGMAZgAxAFwAbABhAG4AZwAxADAAMwAxAFwAYgBcAGYAcwAyADIAIABTAG8AegBpAGEAbABcAGkAIAB3AGkAcgBrAFwAaQAwACAAcwB0AGEAdAB0ACAAUwBjAGgAbQBpAHQAegAgAEsAXAAnAGYANgBsAG4AXABjAGYAMABcAHAAYQByAA0ACgB9AA0ACgA=</value>
</data>
<data name="xrLabel6.Text" xml:space="preserve">
<value>anbei sende ich Ihnen die unterschriebenen Nachweise über die im Rahmen des Betreuten Wohnens für [Salutation2] [CustomerName] erbrachten Leistungen zu. Nach unserer Berechnung ergeben
sich für den Betreuungszeitraum [AccountingPeriod] hieraus:
</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>

View File

@@ -112,6 +112,12 @@
<Compile Include="ServicesOverviewReport.designer.cs">
<DependentUpon>ServicesOverviewReport.cs</DependentUpon>
</Compile>
<Compile Include="SettlementReport2.cs">
<SubType>Component</SubType>
</Compile>
<Compile Include="SettlementReport2.designer.cs">
<DependentUpon>SettlementReport2.cs</DependentUpon>
</Compile>
<Compile Include="SettlementReport.cs">
<SubType>Component</SubType>
</Compile>
@@ -124,6 +130,9 @@
<EmbeddedResource Include="ServicesOverviewReport.resx">
<DependentUpon>ServicesOverviewReport.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="SettlementReport2.resx">
<DependentUpon>SettlementReport2.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="SettlementReport.resx">
<DependentUpon>SettlementReport.cs</DependentUpon>
</EmbeddedResource>

View File

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

View File

@@ -0,0 +1,18 @@
using System.Collections.Generic;
using BeWo.Data;
using BeWo.Data.Entities;
using BeWo.Service.Plugins;
using BS.Shared;
using BS.Shared.DataContracts;
using BS.Shared.DataContracts.Compact;
namespace VkmAachenSbd.Service
{
//public class CustomCustomerService : CustomerService
//{
// public override long InsertNewCustomer(CustomerDC pCustomerDc)
// {
// return base.InsertNewCustomer(pCustomerDc);
// }
//}
}

View File

@@ -33,6 +33,7 @@ namespace VkmAachenSbd
this.Detail = new DevExpress.XtraReports.UI.DetailBand();
this.ruleRateFactorNull = new DevExpress.XtraReports.UI.FormattingRule();
this.topMarginBand1 = new DevExpress.XtraReports.UI.TopMarginBand();
this.xrLabel6 = new DevExpress.XtraReports.UI.XRLabel();
this.bottomMarginBand1 = new DevExpress.XtraReports.UI.BottomMarginBand();
this.xrLabel15 = new DevExpress.XtraReports.UI.XRLabel();
this.xrLabel14 = new DevExpress.XtraReports.UI.XRLabel();
@@ -86,9 +87,26 @@ namespace VkmAachenSbd
//
// topMarginBand1
//
this.topMarginBand1.Controls.AddRange(new DevExpress.XtraReports.UI.XRControl[] {
this.xrLabel6});
this.topMarginBand1.HeightF = 210F;
this.topMarginBand1.Name = "topMarginBand1";
//
// xrLabel6
//
this.xrLabel6.Font = new System.Drawing.Font("Times New Roman", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.xrLabel6.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(69)))), ((int)(((byte)(149)))));
this.xrLabel6.LocationFloat = new DevExpress.Utils.PointFloat(0F, 180F);
this.xrLabel6.Name = "xrLabel6";
this.xrLabel6.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.xrLabel6.SizeF = new System.Drawing.SizeF(348.1878F, 20F);
this.xrLabel6.StylePriority.UseBorders = false;
this.xrLabel6.StylePriority.UseFont = false;
this.xrLabel6.StylePriority.UseForeColor = false;
this.xrLabel6.StylePriority.UseTextAlignment = false;
this.xrLabel6.Text = "VKM Aachen e.V., Frankenberger Str. 30, 52066 Aachen";
this.xrLabel6.TextAlignment = DevExpress.XtraPrinting.TextAlignment.BottomLeft;
//
// bottomMarginBand1
//
this.bottomMarginBand1.HeightF = 125F;
@@ -416,11 +434,11 @@ namespace VkmAachenSbd
// lblAdresse
//
this.lblAdresse.CanGrow = false;
this.lblAdresse.LocationFloat = new DevExpress.Utils.PointFloat(0F, 0F);
this.lblAdresse.LocationFloat = new DevExpress.Utils.PointFloat(0F, 10.00001F);
this.lblAdresse.Multiline = true;
this.lblAdresse.Name = "lblAdresse";
this.lblAdresse.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.lblAdresse.SizeF = new System.Drawing.SizeF(332.9585F, 139.2083F);
this.lblAdresse.SizeF = new System.Drawing.SizeF(332.9585F, 129.2083F);
this.lblAdresse.StylePriority.UseFont = false;
//
// GroupFooter3
@@ -531,5 +549,6 @@ namespace VkmAachenSbd
private DevExpress.XtraReports.UI.DetailReportBand DetailReport;
private DevExpress.XtraReports.UI.DetailBand Detail1;
private DevExpress.XtraReports.UI.GroupFooterBand GroupFooter1;
private DevExpress.XtraReports.UI.XRLabel xrLabel6;
}
}

View File

@@ -118,6 +118,7 @@
<Compile Include="Service\CustomSchulbegleitenderDienstService.cs" />
<Compile Include="Service\CustomTimeSheetReportService.cs" />
<Compile Include="Service\CustomVacationService.cs" />
<Compile Include="Service\CustomCustomerService.cs" />
<Compile Include="Teamstundenkonto.cs">
<SubType>Component</SubType>
</Compile>

View File

@@ -746,5 +746,13 @@ namespace BeWo.Service.Plugins
// }
return dc;
}
public virtual long InsertNewCustomer(CustomerDC pCustomerDc)
{
Customer lCustomer = MapperFactory.CustomerDC_Customer.MapToNewEntity(pCustomerDc);
DAOFactory.GenericDAO.Insert(lCustomer);
return lCustomer.Oid.Value;
}
}
}

View File

@@ -39,7 +39,7 @@ namespace BeWo.Service.Plugins
//t = "1378137009"; // BeWo Direkt
//t = "3010479871"; // Aachener Verein
//t = "3849764093"; // Club 74
t = "5805202339"; // Wegweiser Betreuungsdienst
//t = "5805202339"; // Wegweiser Betreuungsdienst
//t = "2301474784"; // Hauskrankenpflege Leiendecker
//t = "8243565510"; // Der Karren
//t = "7709306800"; // Der Karren SBD
@@ -85,7 +85,7 @@ namespace BeWo.Service.Plugins
//t = "3785623125"; // Betreuwo
//t = "7130228334"; // LH Borken
//t = "4209820830"; // VKM Hamm
//t = "5700328131"; // Betreutes Wohnen St. Ludgerus Essen-Werden
t = "5700328131"; // Betreutes Wohnen St. Ludgerus Essen-Werden
//t = "1907984777"; // Soziale Dienste Katrin Schmidt
//t = "9033246467"; // SKM Menden
//t = "9290510010"; // BeWo Schilling
@@ -97,7 +97,7 @@ namespace BeWo.Service.Plugins
//t = "3830114427"; // FiZ Familie im Zentrum Hof
//t = "7138297573"; // Tagwerk betreutes wohnen
//t = "1008896531"; // BeWo Auxilio
t = "9383760246"; // Die Kette
//t = "9383760246"; // Die Kette
//t = "5915565037"; // LH Remscheid
//t = "3350425974"; // BeWo Rückenwind
//t = "9447917179"; // LH Rodenkirchen
@@ -213,6 +213,8 @@ namespace BeWo.Service.Plugins
//t = "3678599942"; // VKM Rietberg
//t = "4069072369"; // BeWo Dreilich&Pastor (Pastor)
//t = "4160851689"; // BeWo Dreilich&Pastor (Dreilich)
//t = "9970072066"; // Bussmannshof
//t = "2993745954"; // Kollegium für freie Jugendarbeit und Berufsbildung e.V.
return t;
#else

View File

@@ -925,16 +925,15 @@ namespace BeWo.Service.ServiceImplementations
try
{
Customer lCustomer = MapperFactory.CustomerDC_Customer.MapToNewEntity(pCustomerDC);
DAOFactory.GenericDAO.Insert(lCustomer);
var lOriginal = DAOFactory.GenericDAO.LoadByID<Customer>(lCustomer.Oid.Value);
var cs = PluginLoader.FindClass<CustomerService>();
var oid = cs.InsertNewCustomer(pCustomerDC);
var lOriginal = DAOFactory.GenericDAO.LoadByID<Customer>(oid);
object[] Lists = GetFromNHibernateDecoupledCustomerRelatedLists(lOriginal);
MakeCustomerHistoryEntry(lCustomer, lCustomer.Oid.Value, StatementType.Insert, Lists[0] as List<Customer2Person>, Lists[1] as List<Customer2Organisation>, Lists[2] as List<Employee2Customer>);
MakeCustomerHistoryEntry(lOriginal, lOriginal.Oid.Value, StatementType.Insert, Lists[0] as List<Customer2Person>, Lists[1] as List<Customer2Organisation>, Lists[2] as List<Employee2Customer>);
return lCustomer.Oid.Value;
return oid;
}
catch (Exception e)
{

View File

@@ -683,6 +683,8 @@ namespace BeWo.Service.ServiceImplementations
MakeNewEmployeeHistoryEntry(temp, StatementType.Insert);
return id;
}
catch (Exception e)

View File

@@ -1,5 +1,6 @@
using System;
using System.Collections.Generic;
using System.Collections.Specialized;
using System.Configuration;
using System.IO;
using System.Linq;
@@ -5795,17 +5796,51 @@ namespace BeWo.Service.ServiceImplementations
{
try
{
var rawList = DAOFactory.GenericDAO.GetAll<Icf>().ToList();
string key = "2BT%eGprU\"E$!\"5Flq@l^^KZaYa\"u/icq@MMSWsy$XFo@#q3Arbnx@Plzv7s\\+$a";
string url = "https://support.bewoplaner.de/api/geticf.php?k=[TENANT]";
if (MultitenancyOperationContextExt.Current != null)
{
url = url.Replace("[TENANT]", MultitenancyOperationContextExt.Current.Tenant);
}
else
{
url = url.Replace("[TENANT]", SessionFacade.Tenant);
}
String json = "";
using (var client = new WebClient())
{
byte[] response = client.UploadValues(url, "POST", new NameValueCollection()
{
{"API-KEY", key}
});
json = System.Text.Encoding.ASCII.GetString(response);
}
//[{"Oid":"1","Code":"","Bezeichnung":"Kapitel 1: Lernen und Wissensanwendung","Beschreibung":"","ParentOID":""}
//var icfentry = new { Oid = 0, Code = "", Bezeichnung = "", Beschreibung = "", ParentOid = 0 };
var icfList = JsonConvert.DeserializeObject<List<Icf>>(json);
//var rawList = DAOFactory.GenericDAO.GetAll<Icf>().ToList();
var icfs = new List<ValueListEntryDC>
{
new ValueListEntryDC() {ParentOid = -1, TypeDescription = "ICF"}
};
icfs.AddRange(rawList.Select(x => new ValueListEntryDC()
icfs.AddRange(icfList.Select(x => new ValueListEntryDC()
{
ValueListEntryOid = x.Oid,
ParentOid = x.ParentID,
ParentOid = x.ParentOID,
TypeDescription = x.Bezeichnung,
Abbreviation = x.Code,
Notice = x.Beschreibung

View File

@@ -120,6 +120,7 @@ namespace BeWo.Service.ServiceImplementations
case QueryParameterType.Employee:
case QueryParameterType.Customer:
case QueryParameterType.Team:
case QueryParameterType.Organisation:
long oid2 = 0;
if (item.Value != null)

View File

@@ -254,6 +254,7 @@ namespace BS.Shared
CurrentUser,
CurrentEmployee,
ValueListEntryType, //14
Organisation, //15
Custom = 100
}

View File

@@ -122,8 +122,12 @@ namespace BS.Shared.Services
do
{
var hourlyRate = costRatePeriods.GetCostRatePeriodForDate(CostRatePeriodType.HourlyRate, day);
var amountThisDay = approvedHoursPerDay * hourlyRate.CostRateValue;
result += amountThisDay;
if (hourlyRate != null)
{
var amountThisDay = approvedHoursPerDay * hourlyRate.CostRateValue;
result += amountThisDay;
}
}
while ((day = day.AddDays(1)) <= end.Value.Date);
@@ -139,8 +143,12 @@ namespace BS.Shared.Services
}
var hourlyRate = this.GetHourlyRatePeriodForServiceRecord(record);
if (hourlyRate != null && hourlyRate.CostRateValue.HasValue)
{
return (rdMinutes / 60m) * hourlyRate.CostRateValue.Value;
}
return (rdMinutes / 60m) * hourlyRate.CostRateValue.Value;
return null;
}
public override decimal GetDurationInMinutesForBillableAmount(ServiceRecordDC record, decimal amount)