Ultimos informa que faltan

git-svn-id: https://192.168.0.254/svn/Proyectos.AlonsoYSal_FactuGES2/trunk@20 40301925-124e-1c4e-b97d-170ad7a8785b
This commit is contained in:
roberto 2020-03-03 18:07:32 +00:00
parent 157a316315
commit 214b09c7cb
104 changed files with 2894 additions and 2322 deletions

Binary file not shown.

View File

@ -14,8 +14,8 @@
<Notes> <Notes>
<![CDATA[]]> <![CDATA[]]>
</Notes> </Notes>
<LastBuildRun>00:00:00</LastBuildRun> <LastBuildRun>00:00:01</LastBuildRun>
<LastBuildStart>21/01/2020 11:30:34</LastBuildStart> <LastBuildStart>26/02/2020 12:19:19</LastBuildStart>
<LastBuildState>False</LastBuildState> <LastBuildState>True</LastBuildState>
</properties> </properties>
</project> </project>

Binary file not shown.

View File

@ -1089,8 +1089,7 @@ object fEditorLogin: TfEditorLogin
AppStoragePath = '\' AppStoragePath = '\'
Options = [] Options = []
StoredProps.Strings = ( StoredProps.Strings = (
'edtUser.Text' 'edtUser.Text')
'edtPassword.Text')
StoredValues = < StoredValues = <
item item
Name = 'Ruta' Name = 'Ruta'

View File

@ -114,7 +114,7 @@ procedure TfEditorLogin.FormShow(Sender: TObject);
begin begin
ScaleFormFont(Self); ScaleFormFont(Self);
Self.Caption := AppFactuGES.AppFullName; Self.Caption := AppFactuGES.AppFullName;
JvFormStorage1.RestoreFormPlacement; // JvFormStorage1.RestoreFormPlacement;
// Hacer login automática si hay usuario/password y no hay más de una base // Hacer login automática si hay usuario/password y no hay más de una base
// de datos como opción para conectarse. // de datos como opción para conectarse.

View File

@ -14,6 +14,10 @@ function StringsToString(Source:TStrings; Delimiter:char):string;
function EsCadenaVacia(const S: AnsiString): Boolean; overload; function EsCadenaVacia(const S: AnsiString): Boolean; overload;
function EsCadenaVacia(const S: Variant): Boolean; overload; function EsCadenaVacia(const S: Variant): Boolean; overload;
function EsNumerico(Cadena: String) : Boolean; function EsNumerico(Cadena: String) : Boolean;
function calcularLetraNIF(numeroDNI : integer): string;
function comprobarLetraNIF(nif: string): boolean;
function validarCIF(Cif: string) : boolean;
function CadLimpiaCar(NIF: String): String;
implementation implementation
@ -62,5 +66,73 @@ begin
Result := (Codigo = 0) Result := (Codigo = 0)
end; end;
//Obtiene la letra del DNI NIF de un número
function calcularLetraNIF(numeroDNI : integer): string;
begin
Result := copy('TRWAGMYFPDXBNJZSQVHLCKET', 1 + numeroDNI mod 23, 1);
end;
//Comprueba si un NIF DNI es correcto (con letra incluida y extranjero)
function comprobarLetraNIF (nif: string): boolean;
var
numeroDNI : Integer;
begin
Result := false;
if Length(nif) = 9 then
begin
// DNI normal
if TryStrToInt(Copy(nif, 1, Length(nif) - 1), numeroDNI) then
Result := UpperCase(Copy(nif, Length(nif), 1)) = calcularLetraNIF(numeroDNI);
// DNI Extranjero
if UpperCase(Copy(nif, 1, 1)) = 'X' then
if TryStrToInt(Copy(nif, 2, Length(nif) - 2), numeroDNI) then
Result := Uppercase(Copy(nif, Length(nif), 1)) = calcularLetraNIF(numeroDNI);
end;
end;
//Comprueba si un CIF es correcto (se le pasa el CIF completo, incluida la letra)
function validarCIF (Cif : string) : boolean;
var
Suma, Control : integer;
n : byte;
begin
Result:=False;
Cif:=UpperCase(Cif);
{El cif debe ser de 9 cifras}
if Length(Cif)=9 then
begin
Suma:= StrToInt(Cif[3])+
StrToInt(Cif[5])+
StrToInt(Cif[7]);
for n := 1 to 4 do
begin
Suma:=Suma+ ( (2*StrToInt(Cif[2*n])) mod 10 )+
( (2*StrToInt(Cif[2*n])) div 10 );
end;
Control := 10-(Suma mod 10);
if Pos(Cif[1],'XP') <> 0 then
{Control tipo letra}
Result:= ( Cif[9] = Chr(64+ Control))
else
begin
{Control tipo número}
if Control =10 then
Control := 0;
Result:= ( StrToInt(Cif[9]) = Control);
end;
end;
end;
function CadLimpiaCar(NIF: String): String;
begin
Result:= NIF;
while (pos(' ',NIF)>0) do
delete(NIF,pos(' ',NIF),1);
while (pos('-',NIF)>0) do
delete(NIF,pos('-',NIF),1);
while (pos('/',NIF)>0) do
delete(NIF,pos('/',NIF),1);
Result:=NIF;
end;
end. end.

View File

@ -52,9 +52,7 @@
<Borland.Personality>Delphi.Personality</Borland.Personality> <Borland.Personality>Delphi.Personality</Borland.Personality>
<Borland.ProjectType>VCLApplication</Borland.ProjectType> <Borland.ProjectType>VCLApplication</Borland.ProjectType>
<BorlandProject> <BorlandProject>
<BorlandProject><Delphi.Personality><Parameters><Parameters Name="UseLauncher">False</Parameters><Parameters Name="LoadAllSymbols">True</Parameters><Parameters Name="LoadUnspecifiedSymbols">False</Parameters></Parameters><Language><Language Name="RootDir">C:\Archivos de programa\Borland\Delphi7\Bin\</Language></Language><VersionInfo><VersionInfo Name="IncludeVerInfo">True</VersionInfo><VersionInfo Name="AutoIncBuild">False</VersionInfo><VersionInfo Name="MajorVer">1</VersionInfo><VersionInfo Name="MinorVer">0</VersionInfo><VersionInfo Name="Release">0</VersionInfo><VersionInfo Name="Build">0</VersionInfo><VersionInfo Name="Debug">False</VersionInfo><VersionInfo Name="PreRelease">False</VersionInfo><VersionInfo Name="Special">False</VersionInfo><VersionInfo Name="Private">False</VersionInfo><VersionInfo Name="DLL">False</VersionInfo><VersionInfo Name="Locale">3082</VersionInfo><VersionInfo Name="CodePage">1252</VersionInfo></VersionInfo><VersionInfoKeys><VersionInfoKeys Name="CompanyName">Rodax Software S.L.</VersionInfoKeys><VersionInfoKeys Name="FileDescription"></VersionInfoKeys><VersionInfoKeys Name="FileVersion">2.0.0.0</VersionInfoKeys><VersionInfoKeys Name="InternalName">FactuGES v2</VersionInfoKeys><VersionInfoKeys Name="LegalCopyright"></VersionInfoKeys><VersionInfoKeys Name="LegalTrademarks"></VersionInfoKeys><VersionInfoKeys Name="OriginalFilename"></VersionInfoKeys><VersionInfoKeys Name="ProductName">FactuGES v2</VersionInfoKeys><VersionInfoKeys Name="ProductVersion">2.0.0.0</VersionInfoKeys><VersionInfoKeys Name="Comments"></VersionInfoKeys></VersionInfoKeys><Excluded_Packages> <BorlandProject><Delphi.Personality><Parameters><Parameters Name="UseLauncher">False</Parameters><Parameters Name="LoadAllSymbols">True</Parameters><Parameters Name="LoadUnspecifiedSymbols">False</Parameters></Parameters><Language><Language Name="RootDir">C:\Archivos de programa\Borland\Delphi7\Bin\</Language></Language><VersionInfo><VersionInfo Name="IncludeVerInfo">True</VersionInfo><VersionInfo Name="AutoIncBuild">False</VersionInfo><VersionInfo Name="MajorVer">2</VersionInfo><VersionInfo Name="MinorVer">0</VersionInfo><VersionInfo Name="Release">2</VersionInfo><VersionInfo Name="Build">0</VersionInfo><VersionInfo Name="Debug">False</VersionInfo><VersionInfo Name="PreRelease">False</VersionInfo><VersionInfo Name="Special">False</VersionInfo><VersionInfo Name="Private">False</VersionInfo><VersionInfo Name="DLL">False</VersionInfo><VersionInfo Name="Locale">3082</VersionInfo><VersionInfo Name="CodePage">1252</VersionInfo></VersionInfo><VersionInfoKeys><VersionInfoKeys Name="CompanyName">Rodax Software S.L.</VersionInfoKeys><VersionInfoKeys Name="FileDescription"></VersionInfoKeys><VersionInfoKeys Name="FileVersion">2.0.2.0</VersionInfoKeys><VersionInfoKeys Name="InternalName">FactuGES v2</VersionInfoKeys><VersionInfoKeys Name="LegalCopyright"></VersionInfoKeys><VersionInfoKeys Name="LegalTrademarks"></VersionInfoKeys><VersionInfoKeys Name="OriginalFilename"></VersionInfoKeys><VersionInfoKeys Name="ProductName">FactuGES v2</VersionInfoKeys><VersionInfoKeys Name="ProductVersion">2.0.2.0</VersionInfoKeys><VersionInfoKeys Name="Comments"></VersionInfoKeys></VersionInfoKeys><Excluded_Packages>
<Excluded_Packages Name="C:\Documents and Settings\All Users\Documentos\RAD Studio\5.0\Bpl\dxPScxScheduler2LnkD11.bpl">File C:\Documents and Settings\All Users\Documentos\RAD Studio\5.0\Bpl\dxPScxScheduler2LnkD11.bpl not found</Excluded_Packages> <Excluded_Packages Name="C:\Documents and Settings\All Users\Documentos\RAD Studio\5.0\Bpl\dxPScxScheduler2LnkD11.bpl">File C:\Documents and Settings\All Users\Documentos\RAD Studio\5.0\Bpl\dxPScxScheduler2LnkD11.bpl not found</Excluded_Packages>
</Excluded_Packages><Source><Source Name="MainSource">FactuGES.dpr</Source></Source></Delphi.Personality><ModelSupport>False</ModelSupport></BorlandProject></BorlandProject> </Excluded_Packages><Source><Source Name="MainSource">FactuGES.dpr</Source></Source></Delphi.Personality><ModelSupport>False</ModelSupport></BorlandProject></BorlandProject>

Binary file not shown.

View File

@ -705,8 +705,6 @@ object fPantallaPrincipal: TfPantallaPrincipal
object Informes1: TMenuItem object Informes1: TMenuItem
Tag = 7000 Tag = 7000
Action = actMenuInformes Action = actMenuInformes
Enabled = False
Visible = False
end end
end end
object JvXPMenuItemPainter1: TJvXPMenuItemPainter object JvXPMenuItemPainter1: TJvXPMenuItemPainter

View File

@ -58,34 +58,34 @@
<DelphiCompile Include="GUIBase.dpk"> <DelphiCompile Include="GUIBase.dpk">
<MainSource>MainSource</MainSource> <MainSource>MainSource</MainSource>
</DelphiCompile> </DelphiCompile>
<DCCReference Include="..\..\Resources\Base.dcp" /> <DCCReference Include="..\Modulos\Presupuestos de cliente\Base.dcp" />
<DCCReference Include="..\..\Resources\ccpackD11.dcp" /> <DCCReference Include="..\Modulos\Presupuestos de cliente\ccpackD11.dcp" />
<DCCReference Include="..\..\Resources\cxDataD11.dcp" /> <DCCReference Include="..\Modulos\Presupuestos de cliente\cxDataD11.dcp" />
<DCCReference Include="..\..\Resources\cxEditorsD11.dcp" /> <DCCReference Include="..\Modulos\Presupuestos de cliente\cxEditorsD11.dcp" />
<DCCReference Include="..\..\Resources\cxExportD11.dcp" /> <DCCReference Include="..\Modulos\Presupuestos de cliente\cxExportD11.dcp" />
<DCCReference Include="..\..\Resources\cxLibraryD11.dcp" /> <DCCReference Include="..\Modulos\Presupuestos de cliente\cxLibraryD11.dcp" />
<DCCReference Include="..\..\Resources\dbrtl.dcp" /> <DCCReference Include="..\Modulos\Presupuestos de cliente\dbrtl.dcp" />
<DCCReference Include="..\..\Resources\dxGDIPlusD11.dcp" /> <DCCReference Include="..\Modulos\Presupuestos de cliente\dxGDIPlusD11.dcp" />
<DCCReference Include="..\..\Resources\dxLayoutControlD11.dcp" /> <DCCReference Include="..\Modulos\Presupuestos de cliente\dxLayoutControlD11.dcp" />
<DCCReference Include="..\..\Resources\dxPScxCommonD11.dcp" /> <DCCReference Include="..\Modulos\Presupuestos de cliente\dxPScxCommonD11.dcp" />
<DCCReference Include="..\..\Resources\dxPScxGrid6LnkD11.dcp" /> <DCCReference Include="..\Modulos\Presupuestos de cliente\dxPScxGrid6LnkD11.dcp" />
<DCCReference Include="..\..\Resources\dxThemeD11.dcp" /> <DCCReference Include="..\Modulos\Presupuestos de cliente\dxThemeD11.dcp" />
<DCCReference Include="..\..\Resources\frx11.dcp" /> <DCCReference Include="..\Modulos\Presupuestos de cliente\frx11.dcp" />
<DCCReference Include="..\..\Resources\frxe11.dcp" /> <DCCReference Include="..\Modulos\Presupuestos de cliente\frxe11.dcp" />
<DCCReference Include="..\..\Resources\fs11.dcp" /> <DCCReference Include="..\Modulos\Presupuestos de cliente\fs11.dcp" />
<DCCReference Include="..\..\Resources\JvAppFrmD11R.dcp" /> <DCCReference Include="..\Modulos\Presupuestos de cliente\JvAppFrmD11R.dcp" />
<DCCReference Include="..\..\Resources\JvCtrlsD11R.dcp" /> <DCCReference Include="..\Modulos\Presupuestos de cliente\JvCtrlsD11R.dcp" />
<DCCReference Include="..\..\Resources\JvGlobusD11R.dcp" /> <DCCReference Include="..\Modulos\Presupuestos de cliente\JvGlobusD11R.dcp" />
<DCCReference Include="..\..\Resources\PngComponentsD10.dcp" /> <DCCReference Include="..\Modulos\Presupuestos de cliente\PngComponentsD10.dcp" />
<DCCReference Include="..\..\Resources\PNG_D10.dcp" /> <DCCReference Include="..\Modulos\Presupuestos de cliente\PNG_D10.dcp" />
<DCCReference Include="..\..\Resources\rtl.dcp" /> <DCCReference Include="..\Modulos\Presupuestos de cliente\rtl.dcp" />
<DCCReference Include="..\..\Resources\tb2k_d10.dcp" /> <DCCReference Include="..\Modulos\Presupuestos de cliente\tb2k_d10.dcp" />
<DCCReference Include="..\..\Resources\tbx_d10.dcp" /> <DCCReference Include="..\Modulos\Presupuestos de cliente\tbx_d10.dcp" />
<DCCReference Include="..\..\Resources\vcl.dcp" /> <DCCReference Include="..\Modulos\Presupuestos de cliente\vcl.dcp" />
<DCCReference Include="..\..\Resources\vclactnband.dcp" /> <DCCReference Include="..\Modulos\Presupuestos de cliente\vclactnband.dcp" />
<DCCReference Include="..\..\Resources\vcldb.dcp" /> <DCCReference Include="..\Modulos\Presupuestos de cliente\vcldb.dcp" />
<DCCReference Include="..\..\Resources\vcljpg.dcp" /> <DCCReference Include="..\Modulos\Presupuestos de cliente\vcljpg.dcp" />
<DCCReference Include="..\..\Resources\vclx.dcp" /> <DCCReference Include="..\Modulos\Presupuestos de cliente\vclx.dcp" />
<DCCReference Include="uDialogBase.pas"> <DCCReference Include="uDialogBase.pas">
<Form>fDialogBase</Form> <Form>fDialogBase</Form>
</DCCReference> </DCCReference>

Binary file not shown.

View File

@ -1,9 +1,9 @@
inherited frViewFiltroBase: TfrViewFiltroBase inherited frViewFiltroBase: TfrViewFiltroBase
Width = 565 Width = 565
Height = 102 Height = 137
Visible = False Visible = False
ExplicitWidth = 565 ExplicitWidth = 565
ExplicitHeight = 102 ExplicitHeight = 137
object TBXDockablePanel1: TTBXDockablePanel object TBXDockablePanel1: TTBXDockablePanel
Left = 0 Left = 0
Top = 0 Top = 0
@ -23,8 +23,8 @@ inherited frViewFiltroBase: TfrViewFiltroBase
Left = 0 Left = 0
Top = 0 Top = 0
Width = 565 Width = 565
Height = 68 Height = 107
Align = alTop Align = alClient
ParentBackground = True ParentBackground = True
TabOrder = 0 TabOrder = 0
TabStop = False TabStop = False
@ -73,10 +73,10 @@ inherited frViewFiltroBase: TfrViewFiltroBase
StyleHot.LookAndFeel.NativeStyle = True StyleHot.LookAndFeel.NativeStyle = True
StyleHot.LookAndFeel.SkinName = '' StyleHot.LookAndFeel.SkinName = ''
TabOrder = 1 TabOrder = 1
Width = 121 Width = 130
end end
object edtFechaFinFiltro: TcxDateEdit object edtFechaFinFiltro: TcxDateEdit
Left = 350 Left = 234
Top = 37 Top = 37
Properties.OnChange = OnCamposFiltroChange Properties.OnChange = OnCamposFiltroChange
Style.BorderColor = clWindowFrame Style.BorderColor = clWindowFrame
@ -97,7 +97,57 @@ inherited frViewFiltroBase: TfrViewFiltroBase
StyleHot.LookAndFeel.NativeStyle = True StyleHot.LookAndFeel.NativeStyle = True
StyleHot.LookAndFeel.SkinName = '' StyleHot.LookAndFeel.SkinName = ''
TabOrder = 2 TabOrder = 2
Width = 121 Width = 130
end
object edtFecha2FinFiltro: TcxDateEdit
Left = 234
Top = 64
Enabled = False
Properties.OnChange = OnCamposFiltroChange
Style.BorderColor = clWindowFrame
Style.BorderStyle = ebs3D
Style.HotTrack = False
Style.LookAndFeel.Kind = lfStandard
Style.LookAndFeel.NativeStyle = True
Style.LookAndFeel.SkinName = ''
Style.ButtonStyle = bts3D
Style.PopupBorderStyle = epbsFrame3D
StyleDisabled.LookAndFeel.Kind = lfStandard
StyleDisabled.LookAndFeel.NativeStyle = True
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.Kind = lfStandard
StyleFocused.LookAndFeel.NativeStyle = True
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.Kind = lfStandard
StyleHot.LookAndFeel.NativeStyle = True
StyleHot.LookAndFeel.SkinName = ''
TabOrder = 4
Width = 130
end
object edtFecha2IniFiltro: TcxDateEdit
Left = 87
Top = 64
Enabled = False
Properties.OnChange = OnCamposFiltroChange
Style.BorderColor = clWindowFrame
Style.BorderStyle = ebs3D
Style.HotTrack = False
Style.LookAndFeel.Kind = lfStandard
Style.LookAndFeel.NativeStyle = True
Style.LookAndFeel.SkinName = ''
Style.ButtonStyle = bts3D
Style.PopupBorderStyle = epbsFrame3D
StyleDisabled.LookAndFeel.Kind = lfStandard
StyleDisabled.LookAndFeel.NativeStyle = True
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.Kind = lfStandard
StyleFocused.LookAndFeel.NativeStyle = True
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.Kind = lfStandard
StyleHot.LookAndFeel.NativeStyle = True
StyleHot.LookAndFeel.SkinName = ''
TabOrder = 3
Width = 130
end end
object dxLayoutControl1Group_Root: TdxLayoutGroup object dxLayoutControl1Group_Root: TdxLayoutGroup
ShowCaption = False ShowCaption = False
@ -109,34 +159,59 @@ inherited frViewFiltroBase: TfrViewFiltroBase
ControlOptions.ShowBorder = False ControlOptions.ShowBorder = False
end end
object dxLayoutControl1Group1: TdxLayoutGroup object dxLayoutControl1Group1: TdxLayoutGroup
ShowCaption = False
Hidden = True
ShowBorder = False
object dxLayoutControl1Group3: TdxLayoutGroup
AutoAligns = [aaVertical]
ShowCaption = False ShowCaption = False
Hidden = True Hidden = True
LayoutDirection = ldHorizontal LayoutDirection = ldHorizontal
ShowBorder = False ShowBorder = False
object dxLayoutControl1Item2: TdxLayoutItem object dxLayoutControl1Item2: TdxLayoutItem
AutoAligns = [aaVertical] AutoAligns = [aaVertical]
AlignHorz = ahClient
Caption = 'Entre la fecha:' Caption = 'Entre la fecha:'
Control = edtFechaIniFiltro Control = edtFechaIniFiltro
ControlOptions.ShowBorder = False ControlOptions.ShowBorder = False
end end
object dxLayoutControl1Item3: TdxLayoutItem object dxLayoutControl1Item3: TdxLayoutItem
AutoAligns = [aaVertical] AutoAligns = [aaVertical]
AlignHorz = ahClient
Caption = 'y' Caption = 'y'
Control = edtFechaFinFiltro Control = edtFechaFinFiltro
ControlOptions.ShowBorder = False ControlOptions.ShowBorder = False
end end
end end
object dxLayoutControl1Group4: TdxLayoutGroup
AutoAligns = [aaVertical]
Enabled = False
ShowCaption = False
Visible = False
Hidden = True
LayoutDirection = ldHorizontal
ShowBorder = False
object dxLayoutControl1Item5: TdxLayoutItem
AutoAligns = [aaVertical]
Caption = 'Entre fecha 2:'
Control = edtFecha2IniFiltro
ControlOptions.ShowBorder = False
end
object dxLayoutControl1Item4: TdxLayoutItem
AutoAligns = [aaVertical]
Caption = 'y'
Control = edtFecha2FinFiltro
ControlOptions.ShowBorder = False
end
end
end
end end
end end
object TBXAlignmentPanel1: TTBXAlignmentPanel object TBXAlignmentPanel1: TTBXAlignmentPanel
Left = 0 Left = 0
Top = 68 Top = 107
Width = 565 Width = 565
Height = 30 Height = 30
Margins.Left = 10 Margins.Left = 10
Align = alTop Align = alBottom
TabOrder = 1 TabOrder = 1
object tbxBotones: TTBXToolbar object tbxBotones: TTBXToolbar
Left = 10 Left = 10

View File

@ -44,6 +44,12 @@ type
tbxBotones: TTBXToolbar; tbxBotones: TTBXToolbar;
TBXItem2: TTBXItem; TBXItem2: TTBXItem;
TBXAlignmentPanel1: TTBXAlignmentPanel; TBXAlignmentPanel1: TTBXAlignmentPanel;
dxLayoutControl1Item4: TdxLayoutItem;
edtFecha2FinFiltro: TcxDateEdit;
dxLayoutControl1Item5: TdxLayoutItem;
edtFecha2IniFiltro: TcxDateEdit;
dxLayoutControl1Group3: TdxLayoutGroup;
dxLayoutControl1Group4: TdxLayoutGroup;
procedure OnCamposFiltroChange(Sender: TObject); procedure OnCamposFiltroChange(Sender: TObject);
procedure actQuitarFiltroExecute(Sender: TObject); procedure actQuitarFiltroExecute(Sender: TObject);
@ -108,6 +114,8 @@ begin
txtFiltroTodo.Clear; txtFiltroTodo.Clear;
edtFechaIniFiltro.Clear; edtFechaIniFiltro.Clear;
edtFechaFinFiltro.Clear; edtFechaFinFiltro.Clear;
edtFecha2IniFiltro.Clear;
edtFecha2FinFiltro.Clear;
end; end;
procedure TfrViewFiltroBase.OnCamposFiltroChange(Sender: TObject); procedure TfrViewFiltroBase.OnCamposFiltroChange(Sender: TObject);
@ -130,6 +138,16 @@ begin
Result := False; Result := False;
end end
end; end;
if not VarIsNull(edtFecha2IniFiltro.EditValue) and not VarIsNull(edtFecha2FinFiltro.EditValue) then
begin
if (edtFecha2IniFiltro.EditValue > edtFecha2FinFiltro.EditValue) then
begin
ShowWarningMessage('La fecha de inicio debe ser anterior a la fecha final');
edtFechaIniFiltro.SetFocus;
Result := False;
end
end;
end; end;
procedure TfrViewFiltroBase.actQuitarFiltroExecute(Sender: TObject); procedure TfrViewFiltroBase.actQuitarFiltroExecute(Sender: TObject);

View File

@ -48,6 +48,7 @@ inherited frViewGrid: TfrViewGrid
BestFitMaxWidth = 18 BestFitMaxWidth = 18
MinWidth = 18 MinWidth = 18
Options.Sorting = False Options.Sorting = False
VisibleForCustomization = False
Width = 18 Width = 18
OnCustomDrawHeader = cxGridViewICONOCustomDrawHeader OnCustomDrawHeader = cxGridViewICONOCustomDrawHeader
end end
@ -72,29 +73,58 @@ inherited frViewGrid: TfrViewGrid
Visible = False Visible = False
ReadOnly = False ReadOnly = False
ExplicitWidth = 554 ExplicitWidth = 554
ExplicitHeight = 102
inherited TBXDockablePanel1: TTBXDockablePanel inherited TBXDockablePanel1: TTBXDockablePanel
ExplicitWidth = 554 ExplicitWidth = 554
ExplicitHeight = 102 ExplicitHeight = 102
inherited dxLayoutControl1: TdxLayoutControl inherited dxLayoutControl1: TdxLayoutControl
Width = 554 Width = 554
Height = 72
ExplicitWidth = 554 ExplicitWidth = 554
ExplicitHeight = 72
inherited txtFiltroTodo: TcxTextEdit inherited txtFiltroTodo: TcxTextEdit
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
ExplicitWidth = 457 ExplicitWidth = 457
Width = 457 Width = 457
end end
inherited edtFechaIniFiltro: TcxDateEdit inherited edtFechaIniFiltro: TcxDateEdit
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
ExplicitWidth = 240 ExplicitWidth = 240
Width = 240 Width = 240
end end
inherited edtFechaFinFiltro: TcxDateEdit inherited edtFechaFinFiltro: TcxDateEdit
Left = 344 Left = 344
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
ExplicitLeft = 344 ExplicitLeft = 344
ExplicitWidth = 200 ExplicitWidth = 200
Width = 200 Width = 200
end end
inherited edtFecha2FinFiltro: TcxDateEdit
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
end
inherited edtFecha2IniFiltro: TcxDateEdit
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
end
end end
inherited TBXAlignmentPanel1: TTBXAlignmentPanel inherited TBXAlignmentPanel1: TTBXAlignmentPanel
Top = 72
Width = 554 Width = 554
ExplicitTop = 72
ExplicitWidth = 554 ExplicitWidth = 554
inherited tbxBotones: TTBXToolbar inherited tbxBotones: TTBXToolbar
Width = 544 Width = 544
@ -162,7 +192,7 @@ inherited frViewGrid: TfrViewGrid
PrinterPage.ScaleMode = smFit PrinterPage.ScaleMode = smFit
PrinterPage._dxMeasurementUnits_ = 0 PrinterPage._dxMeasurementUnits_ = 0
PrinterPage._dxLastMU_ = 2 PrinterPage._dxLastMU_ = 2
ReportDocument.CreationDate = 42772.762583020830000000 ReportDocument.CreationDate = 43888.650270717590000000
StyleManager = dmBase.dxPrintStyleManager1 StyleManager = dmBase.dxPrintStyleManager1
OptionsCards.Shadow.Depth = 0 OptionsCards.Shadow.Depth = 0
OptionsExpanding.ExpandGroupRows = True OptionsExpanding.ExpandGroupRows = True

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1,8 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<TfrxReport Version="3.23.7" DotMatrixReport="False" IniFile="\Software\Fast Reports" PreviewOptions.Buttons="4095" PreviewOptions.Zoom="1" PrintOptions.Printer="Por defecto" ReportOptions.CreateDate="38330,7129042477" ReportOptions.Description.Text="" ReportOptions.LastChange="39328,8272482639" ScriptLanguage="PascalScript" ScriptText.Text="procedure Memo2OnBeforePrint(Sender: TfrxComponent);&#13;&#10;var&#13;&#10; Cadena: String;&#13;&#10;begin&#13;&#10; Cadena := '';&#13;&#10;&#13;&#10; if (&#60;frxDBCabecera.&#34;NOMBRE&#34;&#62; &#60;&#62; '') then&#13;&#10; Cadena := UPPERCASE(&#60;frxDBCabecera.&#34;NOMBRE&#34;&#62;);&#13;&#10;&#13;&#10; Memo2.Lines.Clear;&#13;&#10; Memo2.Lines.Add(Cadena);&#13;&#10;&#13;&#10; if (&#60;frxDBCabecera.&#34;CALLE&#34;&#62; &#60;&#62; '') then&#13;&#10; Cadena := UPPERCASE(&#60;frxDBCabecera.&#34;CALLE&#34;&#62;);&#13;&#10; Memo2.Lines.Add(Cadena);&#13;&#10;&#13;&#10; Cadena := '';&#13;&#10; if (&#60;frxDBCabecera.&#34;CODIGO_POSTAL&#34;&#62; &#60;&#62; '') then&#13;&#10; Cadena := UPPERCASE(&#60;frxDBCabecera.&#34;CODIGO_POSTAL&#34;&#62;);&#13;&#10;&#13;&#10; if (&#60;frxDBCabecera.&#34;POBLACION&#34;&#62; &#60;&#62; '') then&#13;&#10; if (Cadena &#60;&#62; '') then&#13;&#10; Cadena := Cadena + ' ' + UPPERCASE(&#60;frxDBCabecera.&#34;POBLACION&#34;&#62;);&#13;&#10;&#13;&#10; if (&#60;frxDBCabecera.&#34;PROVINCIA&#34;&#62; &#60;&#62; '')&#13;&#10; and (&#60;frxDBCabecera.&#34;POBLACION&#34;&#62; &#60;&#62; &#60;frxDBCabecera.&#34;PROVINCIA&#34;&#62;) then&#13;&#10; begin&#13;&#10; if (&#60;frxDBCabecera.&#34;POBLACION&#34;&#62; &#60;&#62; '') then&#13;&#10; Cadena := Cadena + ' (' + UPPERCASE(&#60;frxDBCabecera.&#34;PROVINCIA&#34;&#62;) + ')'&#13;&#10; else&#13;&#10; Cadena := Cadena + ' ' + UPPERCASE(&#60;frxDBCabecera.&#34;PROVINCIA&#34;&#62;);&#13;&#10; end;&#13;&#10; Memo2.Lines.Add(Cadena);&#13;&#10;&#13;&#10; Cadena := '';&#13;&#10; Memo2.Lines.Add(Cadena);&#13;&#10; if (&#60;frxDBCabecera.&#34;PERSONA_CONTACTO&#34;&#62; &#60;&#62; '') then&#13;&#10; Cadena := 'ATT. ' + UPPERCASE(&#60;frxDBCabecera.&#34;PERSONA_CONTACTO&#34;&#62;);&#13;&#10; Memo2.Lines.Add(Cadena);&#13;&#10;end;&#13;&#10;&#13;&#10;begin&#13;&#10;&#13;&#10;end." ShowProgress="False" StoreInDFM="False" PropData="044C65667403A90003546F70021008446174617365747301010C3400000020446174615365743D22667278444243616265636572612220446174615365744E616D653D2266727844424361626563657261220000095661726961626C65730100055374796C650100">
<TfrxReportPage Name="Page1" PaperWidth="210" PaperHeight="297" PaperSize="9" LeftMargin="0" RightMargin="0" TopMargin="8" BottomMargin="8" ColumnWidth="0" ColumnPositions.Text="" HGuides.Text="" VGuides.Text="">
<TfrxMasterData Name="MasterData1" Height="126" Left="0" Top="18,89765" Width="793,7013" Columns="2" ColumnWidth="378" ColumnGap="11" DataSet="frxDBCabecera" DataSetName="frxDBCabecera" RowCount="0">
<TfrxMemoView Name="Memo2" Left="25" Top="17,10235" Width="346" Height="114" OnBeforePrint="Memo2OnBeforePrint" StretchMode="smMaxHeight" Font.Charset="1" Font.Color="0" Font.Height="-11" Font.Name="Tahoma" Font.Style="0" HideZeros="True" ParentFont="False" VAlign="vaCenter" Text=" "/>
</TfrxMasterData>
</TfrxReportPage>
</TfrxReport>

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -3,7 +3,7 @@ unit uClientesController;
interface interface
uses uses
uCustomEditor, uCustomEditor, Classes,
uContactosController, uBizContactos, uBizDireccionesContacto, uContactosController, uBizContactos, uBizDireccionesContacto,
uIEditorClientes, uIEditorCliente, uIDataModuleContactos, uIDataModuleClientes, uIEditorClientes, uIEditorCliente, uIDataModuleContactos, uIDataModuleClientes,
uDireccionesContactoController; uDireccionesContactoController;
@ -22,6 +22,7 @@ type
procedure PrintInformeListaDatosContacto(ACliente : IBizCliente; AllItems: Boolean = false); procedure PrintInformeListaDatosContacto(ACliente : IBizCliente; AllItems: Boolean = false);
procedure SetTieneSubcuenta(ACliente: IBizCliente; AValue: Boolean); procedure SetTieneSubcuenta(ACliente: IBizCliente; AValue: Boolean);
procedure SetIgnorarContabilidad(ACliente: IBizCliente; AValue: Boolean); procedure SetIgnorarContabilidad(ACliente: IBizCliente; AValue: Boolean);
function AsignarLOPD(AClientes: IBizCliente): TStringList;
end; end;
TClientesController = class(TContactosController, IClientesController) TClientesController = class(TContactosController, IClientesController)
@ -55,18 +56,44 @@ type
procedure PrintInformeListaDatosContacto(ACliente : IBizCliente; AllItems: Boolean = false); procedure PrintInformeListaDatosContacto(ACliente : IBizCliente; AllItems: Boolean = false);
procedure SetTieneSubcuenta(ACliente: IBizCliente; AValue: Boolean); procedure SetTieneSubcuenta(ACliente: IBizCliente; AValue: Boolean);
procedure SetIgnorarContabilidad(ACliente: IBizCliente; AValue: Boolean); procedure SetIgnorarContabilidad(ACliente: IBizCliente; AValue: Boolean);
function AsignarLOPD(AClientes: IBizCliente): TStringList;
end; end;
implementation implementation
uses uses
Forms, Classes, Windows, SysUtils, Controls, cxControls, uDialogUtils, uDataModuleClientes, uEditorRegistryUtils, Forms, Windows, SysUtils, Controls, cxControls, uDialogUtils, uDataModuleClientes, uEditorRegistryUtils,
uDataTableUtils, uDADataTable, DB, schContactosClient_Intf, uListadosContactosReportController, uDataTableUtils, uDADataTable, DB, schContactosClient_Intf, uListadosContactosReportController,
uIEditorElegirClientes, uEditorGridBase, uDAInterfaces, uFactuGES_App, uIEditorElegirDireccionEntrega, uIEditorElegirClientes, uEditorGridBase, uDAInterfaces, uFactuGES_App, uIEditorElegirDireccionEntrega,
Dialogs, uIntegerListUtils; Dialogs, uIntegerListUtils;
{ TClientesController } { TClientesController }
function TClientesController.AsignarLOPD(AClientes: IBizCliente): TStringList;
//Devolverá la lista de clientes que no han podido ser cambiados a LOPD firmada
begin
Result := TStringList.Create;
if Assigned(AClientes) then
begin
with AClientes.DataTable do
begin
First;
while not EOF do
begin
if (AClientes.LOPD <> 1) then
begin
Edit;
AClientes.LOPD := 1;
Post;
end;
Next;
end;
ApplyUpdates;
end;
end;
end;
function TClientesController.Buscar(const ID: Integer): IBizContacto; function TClientesController.Buscar(const ID: Integer): IBizContacto;
begin begin
Result := (FDataModule as IDataModuleClientes).GetItem(ID); Result := (FDataModule as IDataModuleClientes).GetItem(ID);

View File

@ -76,7 +76,7 @@ type
implementation implementation
uses uses
Dialogs, uEditorRegistryUtils, cxControls, DB, uDAInterfaces, uDataTableUtils, uStringsUtils, Dialogs, uEditorRegistryUtils, cxControls, DB, uDAInterfaces, uDataTableUtils,
schContactosClient_Intf, uFactuGES_App, Variants, JSDialogs, JSDialog, schContactosClient_Intf, uFactuGES_App, Variants, JSDialogs, JSDialog,
uIEditorElegirPersonaContacto; uIEditorElegirPersonaContacto;
@ -390,6 +390,10 @@ begin
end;} end;}
function TContactosController.ValidarContacto(AContacto: IBizContacto): Boolean; function TContactosController.ValidarContacto(AContacto: IBizContacto): Boolean;
var
NifCifTratado: String;
aaa: integer;
begin begin
if not Assigned(AContacto) then if not Assigned(AContacto) then
raise Exception.Create ('Contacto no asignado'); raise Exception.Create ('Contacto no asignado');
@ -400,9 +404,25 @@ begin
if Length(AContacto.NOMBRE) = 0 then if Length(AContacto.NOMBRE) = 0 then
raise Exception.Create('Debe indicar al menos el nombre de este contacto.'); raise Exception.Create('Debe indicar al menos el nombre de este contacto.');
if Length(AContacto.NIF_CIF) = 0 then
raise Exception.Create('Debe indicar el NIF/CIF del este contacto.')
else
begin
NifCifTratado := uStringsUtils.CadLimpiaCar(AContacto.NIF_CIF);
//Si es DNI/NIF
if TryStrToInt(Copy(NifCifTratado, 1, 1), aaa) then
begin
if not uStringsUtils.comprobarLetraNIF(NifCifTratado) then
raise Exception.Create('El DNI/NIF introducido no es correcto.')
end
else if not uStringsUtils.validarCIF(NifCifTratado) then
raise Exception.Create('El CIF introducido no es correcto.')
end;
// Asegurarse de valores en campos "automáticos" // Asegurarse de valores en campos "automáticos"
AContacto.Edit; AContacto.Edit;
AContacto.USUARIO := AppFactuGES.UsuarioActivo.UserName; AContacto.USUARIO := AppFactuGES.UsuarioActivo.UserName;
AContacto.NIF_CIF := NifCifTratado;
AContacto.Post; AContacto.Post;
Result := True; Result := True;

View File

@ -19,6 +19,13 @@ inherited DataModuleClientes: TDataModuleClientes
inherited ds_PersonalContacto: TDADataSource inherited ds_PersonalContacto: TDADataSource
DataSet = tbl_PersonalContacto.Dataset DataSet = tbl_PersonalContacto.Dataset
end end
inherited tbl_ContactosDirecciones: TDAMemDataTable
Left = 288
Top = 160
end
inherited ds_ContactosDirecciones: TDADataSource
DataSet = tbl_ContactosDirecciones.Dataset
end
object tbl_Clientes: TDAMemDataTable object tbl_Clientes: TDAMemDataTable
RemoteUpdatesOptions = [] RemoteUpdatesOptions = []
Fields = < Fields = <
@ -288,6 +295,10 @@ inherited DataModuleClientes: TDataModuleClientes
Size = 255 Size = 255
DisplayLabel = 'Otros nombres' DisplayLabel = 'Otros nombres'
DictionaryEntry = 'Clientes_LISTA_NOMBRES' DictionaryEntry = 'Clientes_LISTA_NOMBRES'
end
item
Name = 'LOPD'
DataType = datSmallInt
end> end>
Params = <> Params = <>
StreamingOptions = [soDisableEventsWhileStreaming] StreamingOptions = [soDisableEventsWhileStreaming]
@ -295,14 +306,14 @@ inherited DataModuleClientes: TDataModuleClientes
LocalDataStreamer = Bin2DataStreamer LocalDataStreamer = Bin2DataStreamer
LogicalName = 'Clientes' LogicalName = 'Clientes'
IndexDefs = <> IndexDefs = <>
Left = 296 Left = 360
Top = 168 Top = 144
end end
object ds_Clientes: TDADataSource object ds_Clientes: TDADataSource
DataSet = tbl_Clientes.Dataset DataSet = tbl_Clientes.Dataset
DataTable = tbl_Clientes DataTable = tbl_Clientes
Left = 296 Left = 360
Top = 232 Top = 200
end end
object tbl_ClientesDescuentos: TDAMemDataTable object tbl_ClientesDescuentos: TDAMemDataTable
RemoteUpdatesOptions = [] RemoteUpdatesOptions = []

View File

@ -9,22 +9,22 @@ const
{ Data table rules ids { Data table rules ids
Feel free to change them to something more human readable Feel free to change them to something more human readable
but make sure they are unique in the context of your application } but make sure they are unique in the context of your application }
RID_DarEmpresasContacto = '{472CACD6-0E6A-41FE-9ED2-537C64ACA52C}'; RID_DarEmpresasContacto = '{3DF020EA-5271-4506-A1E1-F56352A27564}';
RID_PersonalContacto = '{E4677356-21EF-4ED1-8CB8-6E007EDC4768}'; RID_PersonalContacto = '{B221E6A5-B945-4498-8360-54479172953F}';
RID_DarTiendaDeUsuario = '{F51C8AFF-D2D5-4027-B7F1-4F2F18EE55DA}'; RID_DarTiendaDeUsuario = '{A507F3BA-5BD6-4615-BCD9-0E8FA9B7B28D}';
RID_SubCuentasContacto = '{7386C05F-4BB8-4D5D-9840-421780DC9022}'; RID_SubCuentasContacto = '{2F2E5BA1-C6F2-4DE4-B3B8-FC421C4EC640}';
RID_Contactos = '{904DED01-45A4-45B9-BD55-F4259DD90889}'; RID_Contactos = '{B536C491-082B-47EF-8C8D-A82F6D9D2D7C}';
RID_GruposCliente = '{6A6AF3F2-8FBC-40EE-BF53-F4FD0E8CD717}'; RID_GruposCliente = '{F12B9E93-476B-443E-BA2A-E268B2AAB12A}';
RID_DatosBancarios = '{A5772889-F9BD-4947-8932-6F7537464FCA}'; RID_DatosBancarios = '{8E22C403-5181-4D0E-AC75-62491E2695A5}';
RID_ContactosDirecciones = '{1B5F181A-13BF-46E9-BAAE-0A86D07849F7}'; RID_ContactosDirecciones = '{4953A4FB-07F9-4CE0-AD1C-B8CA384B81C5}';
RID_Clientes = '{517433C7-D932-4116-A80B-5F3FEF6C70AA}'; RID_Clientes = '{3D2718CC-26C4-4683-8E64-50146634CF04}';
RID_Proveedores = '{4A22961C-9423-43DF-A93F-46B2BD116C1B}'; RID_Proveedores = '{05805FA0-E5E3-4EC6-B8E3-DC041BEAC9ED}';
RID_Vendedores = '{1CBABDE6-D012-4FB9-A474-9258FCA38D25}'; RID_Vendedores = '{18390BFA-6F9F-406E-958A-368A48B81814}';
RID_DireccionesContacto = '{1E9A1687-E932-46C5-A964-59E06D2ADC6C}'; RID_DireccionesContacto = '{D2B45D83-5CEB-4853-9DA1-B5DB4D63F6E6}';
RID_ClientesDescuentos = '{596AA9EC-5E5B-4049-BB5C-BA3375D822AB}'; RID_ClientesDescuentos = '{1A4C6382-E235-4EFC-A1D8-3C5EF966789E}';
RID_ProcedenciasCliente = '{BD34109C-D29B-4E5B-8B19-BA583DF88C1A}'; RID_ProcedenciasCliente = '{6722E249-E263-41B7-8CC6-9E0A7DD69150}';
RID_GruposProveedor = '{24E55CF0-80E1-4754-87E4-440DFCDE8732}'; RID_GruposProveedor = '{D49F5735-A212-4160-95AC-404229DB30B3}';
RID_Contactos_Refresh = '{41366B21-52A6-4C32-82C7-A20158D2DDFC}'; RID_Contactos_Refresh = '{39F8AB3C-6980-4652-8789-416699B21C34}';
{ Data table names } { Data table names }
nme_DarEmpresasContacto = 'DarEmpresasContacto'; nme_DarEmpresasContacto = 'DarEmpresasContacto';
@ -253,6 +253,7 @@ const
fld_ClientesVENCIMIENTO_FACTURAS_2 = 'VENCIMIENTO_FACTURAS_2'; fld_ClientesVENCIMIENTO_FACTURAS_2 = 'VENCIMIENTO_FACTURAS_2';
fld_ClientesVENCIMIENTO_FACTURAS_3 = 'VENCIMIENTO_FACTURAS_3'; fld_ClientesVENCIMIENTO_FACTURAS_3 = 'VENCIMIENTO_FACTURAS_3';
fld_ClientesLISTA_NOMBRES = 'LISTA_NOMBRES'; fld_ClientesLISTA_NOMBRES = 'LISTA_NOMBRES';
fld_ClientesLOPD = 'LOPD';
{ Clientes field indexes } { Clientes field indexes }
idx_ClientesID = 0; idx_ClientesID = 0;
@ -297,6 +298,7 @@ const
idx_ClientesVENCIMIENTO_FACTURAS_2 = 39; idx_ClientesVENCIMIENTO_FACTURAS_2 = 39;
idx_ClientesVENCIMIENTO_FACTURAS_3 = 40; idx_ClientesVENCIMIENTO_FACTURAS_3 = 40;
idx_ClientesLISTA_NOMBRES = 41; idx_ClientesLISTA_NOMBRES = 41;
idx_ClientesLOPD = 42;
{ Proveedores fields } { Proveedores fields }
fld_ProveedoresID = 'ID'; fld_ProveedoresID = 'ID';
@ -561,7 +563,7 @@ const
type type
{ IDarEmpresasContacto } { IDarEmpresasContacto }
IDarEmpresasContacto = interface(IDAStronglyTypedDataTable) IDarEmpresasContacto = interface(IDAStronglyTypedDataTable)
['{8BB5E061-F364-4E04-9A15-3AF7CD963D9A}'] ['{2E2E4717-0BCC-461F-839E-80397D21C23A}']
{ Property getters and setters } { Property getters and setters }
function GetID_EMPRESAValue: Integer; function GetID_EMPRESAValue: Integer;
procedure SetID_EMPRESAValue(const aValue: Integer); procedure SetID_EMPRESAValue(const aValue: Integer);
@ -596,7 +598,7 @@ type
{ IPersonalContacto } { IPersonalContacto }
IPersonalContacto = interface(IDAStronglyTypedDataTable) IPersonalContacto = interface(IDAStronglyTypedDataTable)
['{751C15E3-B72F-45A3-ACA6-EE5536294AB2}'] ['{00FE2269-4B38-48BD-9F45-BE565B31B409}']
{ Property getters and setters } { Property getters and setters }
function GetIDValue: Integer; function GetIDValue: Integer;
procedure SetIDValue(const aValue: Integer); procedure SetIDValue(const aValue: Integer);
@ -739,7 +741,7 @@ type
{ IDarTiendaDeUsuario } { IDarTiendaDeUsuario }
IDarTiendaDeUsuario = interface(IDAStronglyTypedDataTable) IDarTiendaDeUsuario = interface(IDAStronglyTypedDataTable)
['{3FA2CF6E-3BD5-4061-8939-28C8FF90948F}'] ['{D726985D-63CF-489E-8A97-B57952508077}']
{ Property getters and setters } { Property getters and setters }
function GetID_TIENDAValue: Integer; function GetID_TIENDAValue: Integer;
procedure SetID_TIENDAValue(const aValue: Integer); procedure SetID_TIENDAValue(const aValue: Integer);
@ -774,7 +776,7 @@ type
{ ISubCuentasContacto } { ISubCuentasContacto }
ISubCuentasContacto = interface(IDAStronglyTypedDataTable) ISubCuentasContacto = interface(IDAStronglyTypedDataTable)
['{9B286C57-728E-4B5D-B2B5-155391D6FFFD}'] ['{C57E3BB1-04B7-4935-A1AB-8A2CE30E9ADD}']
{ Property getters and setters } { Property getters and setters }
function GetIDValue: Integer; function GetIDValue: Integer;
procedure SetIDValue(const aValue: Integer); procedure SetIDValue(const aValue: Integer);
@ -869,7 +871,7 @@ type
{ IContactos } { IContactos }
IContactos = interface(IDAStronglyTypedDataTable) IContactos = interface(IDAStronglyTypedDataTable)
['{069DC5F3-C775-4E5D-8F1B-0AB17E4A0D95}'] ['{1F3CED53-7D09-4F9B-9670-297FEC5EF955}']
{ Property getters and setters } { Property getters and setters }
function GetIDValue: Integer; function GetIDValue: Integer;
procedure SetIDValue(const aValue: Integer); procedure SetIDValue(const aValue: Integer);
@ -1192,7 +1194,7 @@ type
{ IGruposCliente } { IGruposCliente }
IGruposCliente = interface(IDAStronglyTypedDataTable) IGruposCliente = interface(IDAStronglyTypedDataTable)
['{ABBC4C99-5BB7-4AF5-A0E8-AC0330A292DB}'] ['{2CF68BC2-220D-41B1-AF60-0626AF7B96A7}']
{ Property getters and setters } { Property getters and setters }
function GetIDValue: Integer; function GetIDValue: Integer;
procedure SetIDValue(const aValue: Integer); procedure SetIDValue(const aValue: Integer);
@ -1239,7 +1241,7 @@ type
{ IDatosBancarios } { IDatosBancarios }
IDatosBancarios = interface(IDAStronglyTypedDataTable) IDatosBancarios = interface(IDAStronglyTypedDataTable)
['{E86958FB-3553-4826-92AD-E05BB763F327}'] ['{C38C692C-1EF7-4F83-8BA5-0C525A1C11A2}']
{ Property getters and setters } { Property getters and setters }
function GetIDValue: Integer; function GetIDValue: Integer;
procedure SetIDValue(const aValue: Integer); procedure SetIDValue(const aValue: Integer);
@ -1370,7 +1372,7 @@ type
{ IContactosDirecciones } { IContactosDirecciones }
IContactosDirecciones = interface(IDAStronglyTypedDataTable) IContactosDirecciones = interface(IDAStronglyTypedDataTable)
['{7B0624ED-DAFE-4E73-8133-20B2F470DF6D}'] ['{AAB1CE82-6232-4383-B55F-2E8589777974}']
{ Property getters and setters } { Property getters and setters }
function GetID_CONTACTOValue: Integer; function GetID_CONTACTOValue: Integer;
procedure SetID_CONTACTOValue(const aValue: Integer); procedure SetID_CONTACTOValue(const aValue: Integer);
@ -1549,7 +1551,7 @@ type
{ IClientes } { IClientes }
IClientes = interface(IDAStronglyTypedDataTable) IClientes = interface(IDAStronglyTypedDataTable)
['{16982591-D076-457A-A0CF-96642B3A2A21}'] ['{A854EE5D-EBD2-4F66-AAA6-2E9C17111EAB}']
{ Property getters and setters } { Property getters and setters }
function GetIDValue: Integer; function GetIDValue: Integer;
procedure SetIDValue(const aValue: Integer); procedure SetIDValue(const aValue: Integer);
@ -1718,6 +1720,10 @@ type
procedure SetLISTA_NOMBRESValue(const aValue: String); procedure SetLISTA_NOMBRESValue(const aValue: String);
function GetLISTA_NOMBRESIsNull: Boolean; function GetLISTA_NOMBRESIsNull: Boolean;
procedure SetLISTA_NOMBRESIsNull(const aValue: Boolean); procedure SetLISTA_NOMBRESIsNull(const aValue: Boolean);
function GetLOPDValue: SmallInt;
procedure SetLOPDValue(const aValue: SmallInt);
function GetLOPDIsNull: Boolean;
procedure SetLOPDIsNull(const aValue: Boolean);
{ Properties } { Properties }
@ -1805,6 +1811,8 @@ type
property VENCIMIENTO_FACTURAS_3IsNull: Boolean read GetVENCIMIENTO_FACTURAS_3IsNull write SetVENCIMIENTO_FACTURAS_3IsNull; property VENCIMIENTO_FACTURAS_3IsNull: Boolean read GetVENCIMIENTO_FACTURAS_3IsNull write SetVENCIMIENTO_FACTURAS_3IsNull;
property LISTA_NOMBRES: String read GetLISTA_NOMBRESValue write SetLISTA_NOMBRESValue; property LISTA_NOMBRES: String read GetLISTA_NOMBRESValue write SetLISTA_NOMBRESValue;
property LISTA_NOMBRESIsNull: Boolean read GetLISTA_NOMBRESIsNull write SetLISTA_NOMBRESIsNull; property LISTA_NOMBRESIsNull: Boolean read GetLISTA_NOMBRESIsNull write SetLISTA_NOMBRESIsNull;
property LOPD: SmallInt read GetLOPDValue write SetLOPDValue;
property LOPDIsNull: Boolean read GetLOPDIsNull write SetLOPDIsNull;
end; end;
{ TClientesDataTableRules } { TClientesDataTableRules }
@ -1981,6 +1989,10 @@ type
procedure SetLISTA_NOMBRESValue(const aValue: String); virtual; procedure SetLISTA_NOMBRESValue(const aValue: String); virtual;
function GetLISTA_NOMBRESIsNull: Boolean; virtual; function GetLISTA_NOMBRESIsNull: Boolean; virtual;
procedure SetLISTA_NOMBRESIsNull(const aValue: Boolean); virtual; procedure SetLISTA_NOMBRESIsNull(const aValue: Boolean); virtual;
function GetLOPDValue: SmallInt; virtual;
procedure SetLOPDValue(const aValue: SmallInt); virtual;
function GetLOPDIsNull: Boolean; virtual;
procedure SetLOPDIsNull(const aValue: Boolean); virtual;
{ Properties } { Properties }
property ID: Integer read GetIDValue write SetIDValue; property ID: Integer read GetIDValue write SetIDValue;
@ -2067,6 +2079,8 @@ type
property VENCIMIENTO_FACTURAS_3IsNull: Boolean read GetVENCIMIENTO_FACTURAS_3IsNull write SetVENCIMIENTO_FACTURAS_3IsNull; property VENCIMIENTO_FACTURAS_3IsNull: Boolean read GetVENCIMIENTO_FACTURAS_3IsNull write SetVENCIMIENTO_FACTURAS_3IsNull;
property LISTA_NOMBRES: String read GetLISTA_NOMBRESValue write SetLISTA_NOMBRESValue; property LISTA_NOMBRES: String read GetLISTA_NOMBRESValue write SetLISTA_NOMBRESValue;
property LISTA_NOMBRESIsNull: Boolean read GetLISTA_NOMBRESIsNull write SetLISTA_NOMBRESIsNull; property LISTA_NOMBRESIsNull: Boolean read GetLISTA_NOMBRESIsNull write SetLISTA_NOMBRESIsNull;
property LOPD: SmallInt read GetLOPDValue write SetLOPDValue;
property LOPDIsNull: Boolean read GetLOPDIsNull write SetLOPDIsNull;
public public
constructor Create(aDataTable: TDADataTable); override; constructor Create(aDataTable: TDADataTable); override;
@ -2076,7 +2090,7 @@ type
{ IProveedores } { IProveedores }
IProveedores = interface(IDAStronglyTypedDataTable) IProveedores = interface(IDAStronglyTypedDataTable)
['{6F8A315F-FC5F-44A3-AC1E-1179292FD039}'] ['{89BA2688-D5D1-4D42-B4B2-11A450981F9E}']
{ Property getters and setters } { Property getters and setters }
function GetIDValue: Integer; function GetIDValue: Integer;
procedure SetIDValue(const aValue: Integer); procedure SetIDValue(const aValue: Integer);
@ -2603,7 +2617,7 @@ type
{ IVendedores } { IVendedores }
IVendedores = interface(IDAStronglyTypedDataTable) IVendedores = interface(IDAStronglyTypedDataTable)
['{CFAFE9D4-4031-4014-A6A2-8666FD35CBF0}'] ['{E64C6B17-5C91-42EE-AFC3-DB0E5AABA127}']
{ Property getters and setters } { Property getters and setters }
function GetIDValue: Integer; function GetIDValue: Integer;
procedure SetIDValue(const aValue: Integer); procedure SetIDValue(const aValue: Integer);
@ -2950,7 +2964,7 @@ type
{ IDireccionesContacto } { IDireccionesContacto }
IDireccionesContacto = interface(IDAStronglyTypedDataTable) IDireccionesContacto = interface(IDAStronglyTypedDataTable)
['{C823E331-ED12-4669-B813-1C1F53612042}'] ['{34A2A481-6FDF-417E-B69D-DCBC4E92361C}']
{ Property getters and setters } { Property getters and setters }
function GetIDValue: Integer; function GetIDValue: Integer;
procedure SetIDValue(const aValue: Integer); procedure SetIDValue(const aValue: Integer);
@ -3177,7 +3191,7 @@ type
{ IClientesDescuentos } { IClientesDescuentos }
IClientesDescuentos = interface(IDAStronglyTypedDataTable) IClientesDescuentos = interface(IDAStronglyTypedDataTable)
['{55FA6AE2-4570-49F3-8C7C-8AA2FB3E1ABA}'] ['{AEEAE1C7-A76E-4548-BE51-685D0B162D85}']
{ Property getters and setters } { Property getters and setters }
function GetIDValue: Integer; function GetIDValue: Integer;
procedure SetIDValue(const aValue: Integer); procedure SetIDValue(const aValue: Integer);
@ -3260,7 +3274,7 @@ type
{ IProcedenciasCliente } { IProcedenciasCliente }
IProcedenciasCliente = interface(IDAStronglyTypedDataTable) IProcedenciasCliente = interface(IDAStronglyTypedDataTable)
['{45E13CDC-38AE-4866-8BF1-3DEDEC2C0A0A}'] ['{C32557E0-EF58-48C4-9E8D-348E2CDF9459}']
{ Property getters and setters } { Property getters and setters }
function GetIDValue: Integer; function GetIDValue: Integer;
procedure SetIDValue(const aValue: Integer); procedure SetIDValue(const aValue: Integer);
@ -3307,7 +3321,7 @@ type
{ IGruposProveedor } { IGruposProveedor }
IGruposProveedor = interface(IDAStronglyTypedDataTable) IGruposProveedor = interface(IDAStronglyTypedDataTable)
['{931D5150-8A05-4D86-890A-45F275BEE459}'] ['{F4F95064-571E-44D1-A3D7-09DE82F63131}']
{ Property getters and setters } { Property getters and setters }
function GetIDValue: Integer; function GetIDValue: Integer;
procedure SetIDValue(const aValue: Integer); procedure SetIDValue(const aValue: Integer);
@ -3354,7 +3368,7 @@ type
{ IContactos_Refresh } { IContactos_Refresh }
IContactos_Refresh = interface(IDAStronglyTypedDataTable) IContactos_Refresh = interface(IDAStronglyTypedDataTable)
['{47929F64-100A-45C5-A6CD-2A57178A1818}'] ['{7B22CEBA-9A1F-41F0-8C22-E9CE518F9220}']
{ Property getters and setters } { Property getters and setters }
function GetIDValue: Integer; function GetIDValue: Integer;
procedure SetIDValue(const aValue: Integer); procedure SetIDValue(const aValue: Integer);
@ -6041,6 +6055,27 @@ begin
DataTable.Fields[idx_ClientesLISTA_NOMBRES].AsVariant := Null; DataTable.Fields[idx_ClientesLISTA_NOMBRES].AsVariant := Null;
end; end;
function TClientesDataTableRules.GetLOPDValue: SmallInt;
begin
result := DataTable.Fields[idx_ClientesLOPD].AsSmallInt;
end;
procedure TClientesDataTableRules.SetLOPDValue(const aValue: SmallInt);
begin
DataTable.Fields[idx_ClientesLOPD].AsSmallInt := aValue;
end;
function TClientesDataTableRules.GetLOPDIsNull: boolean;
begin
result := DataTable.Fields[idx_ClientesLOPD].IsNull;
end;
procedure TClientesDataTableRules.SetLOPDIsNull(const aValue: Boolean);
begin
if aValue then
DataTable.Fields[idx_ClientesLOPD].AsVariant := Null;
end;
{ TProveedoresDataTableRules } { TProveedoresDataTableRules }
constructor TProveedoresDataTableRules.Create(aDataTable: TDADataTable); constructor TProveedoresDataTableRules.Create(aDataTable: TDADataTable);

View File

@ -9,27 +9,27 @@ const
{ Delta rules ids { Delta rules ids
Feel free to change them to something more human readable Feel free to change them to something more human readable
but make sure they are unique in the context of your application } but make sure they are unique in the context of your application }
RID_DarEmpresasContactoDelta = '{CA69F10E-9B4E-4274-90F7-56E33D84418F}'; RID_DarEmpresasContactoDelta = '{8F89EA13-4300-4EF1-A765-B9F16B4D2F54}';
RID_PersonalContactoDelta = '{A14FBDB3-92F5-40ED-986A-D4461994FB85}'; RID_PersonalContactoDelta = '{8A8E62CB-05B7-468D-A8FA-1E0F7F020323}';
RID_DarTiendaDeUsuarioDelta = '{5481F88A-73AA-4432-89D7-22FC3C3F3AE1}'; RID_DarTiendaDeUsuarioDelta = '{C88504ED-116B-41EA-BFBB-6386B6B97166}';
RID_SubCuentasContactoDelta = '{8DA04B44-EFAA-423F-AA30-ECCCDB94CFD1}'; RID_SubCuentasContactoDelta = '{1E23A929-7818-4A84-9827-F44C026095BE}';
RID_ContactosDelta = '{DC868481-1C6B-408A-B9D9-86DD141BEFD9}'; RID_ContactosDelta = '{0A499049-0836-49EA-A0E8-48EFBC087814}';
RID_GruposClienteDelta = '{47223648-73F6-483B-971C-00C1AC17E65F}'; RID_GruposClienteDelta = '{DDC372FC-D1E5-4560-80DC-371EADCD7154}';
RID_DatosBancariosDelta = '{777B1DE9-1D9B-4127-97C6-D605FDA37D0B}'; RID_DatosBancariosDelta = '{1A23BE03-1CF1-425F-8508-2EA9F5EBFCE2}';
RID_ContactosDireccionesDelta = '{9C86AA9E-70BA-40CE-B5A5-38CF4A3B0735}'; RID_ContactosDireccionesDelta = '{A8A43023-CFC3-44E5-9C0C-0C11E6110F1E}';
RID_ClientesDelta = '{D7F24E5E-CD4A-4BC2-B98C-E0B8AA57835A}'; RID_ClientesDelta = '{3C5E5FFE-B6D2-45C5-AFFA-FB11993BF73A}';
RID_ProveedoresDelta = '{D73D96B2-53E6-477D-82CB-B2A69AEEF86B}'; RID_ProveedoresDelta = '{933D6182-B6DB-40E9-BA65-D4DDA0FF63E4}';
RID_VendedoresDelta = '{C12214F4-2ED0-4099-AECB-945D42A72EDC}'; RID_VendedoresDelta = '{670CF45E-35ED-496D-ACB7-02E24F7EF991}';
RID_DireccionesContactoDelta = '{CFF3C192-A3B8-43FF-9F98-B29B4C4447BC}'; RID_DireccionesContactoDelta = '{110EC6A6-BC18-4C1D-A82C-B08E23345CCB}';
RID_ClientesDescuentosDelta = '{56F5AE71-33E1-4D3B-AE18-8C1F47582366}'; RID_ClientesDescuentosDelta = '{4C4BEB48-604A-437D-9B23-77022C3B6C1F}';
RID_ProcedenciasClienteDelta = '{47DFCD94-B340-485F-90B1-C9E217F3810D}'; RID_ProcedenciasClienteDelta = '{EAF868C1-3667-4C24-A1A5-DE46896D0125}';
RID_GruposProveedorDelta = '{7DBF3455-38E2-45DE-BABC-280D7B6309AF}'; RID_GruposProveedorDelta = '{37A333B0-4BB7-484E-B6AF-4A088F43EBFF}';
RID_Contactos_RefreshDelta = '{7A25AA92-54F4-4D92-AD08-3382DDC351B6}'; RID_Contactos_RefreshDelta = '{214CA371-4CD0-44C9-BFD3-1888CA6C33D1}';
type type
{ IDarEmpresasContactoDelta } { IDarEmpresasContactoDelta }
IDarEmpresasContactoDelta = interface(IDarEmpresasContacto) IDarEmpresasContactoDelta = interface(IDarEmpresasContacto)
['{CA69F10E-9B4E-4274-90F7-56E33D84418F}'] ['{8F89EA13-4300-4EF1-A765-B9F16B4D2F54}']
{ Property getters and setters } { Property getters and setters }
function GetOldID_EMPRESAValue : Integer; function GetOldID_EMPRESAValue : Integer;
@ -63,7 +63,7 @@ type
{ IPersonalContactoDelta } { IPersonalContactoDelta }
IPersonalContactoDelta = interface(IPersonalContacto) IPersonalContactoDelta = interface(IPersonalContacto)
['{A14FBDB3-92F5-40ED-986A-D4461994FB85}'] ['{8A8E62CB-05B7-468D-A8FA-1E0F7F020323}']
{ Property getters and setters } { Property getters and setters }
function GetOldIDValue : Integer; function GetOldIDValue : Integer;
function GetOldID_CONTACTOValue : Integer; function GetOldID_CONTACTOValue : Integer;
@ -205,7 +205,7 @@ type
{ IDarTiendaDeUsuarioDelta } { IDarTiendaDeUsuarioDelta }
IDarTiendaDeUsuarioDelta = interface(IDarTiendaDeUsuario) IDarTiendaDeUsuarioDelta = interface(IDarTiendaDeUsuario)
['{5481F88A-73AA-4432-89D7-22FC3C3F3AE1}'] ['{C88504ED-116B-41EA-BFBB-6386B6B97166}']
{ Property getters and setters } { Property getters and setters }
function GetOldID_TIENDAValue : Integer; function GetOldID_TIENDAValue : Integer;
@ -239,7 +239,7 @@ type
{ ISubCuentasContactoDelta } { ISubCuentasContactoDelta }
ISubCuentasContactoDelta = interface(ISubCuentasContacto) ISubCuentasContactoDelta = interface(ISubCuentasContacto)
['{8DA04B44-EFAA-423F-AA30-ECCCDB94CFD1}'] ['{1E23A929-7818-4A84-9827-F44C026095BE}']
{ Property getters and setters } { Property getters and setters }
function GetOldIDValue : Integer; function GetOldIDValue : Integer;
function GetOldREF_SUBCUENTAValue : String; function GetOldREF_SUBCUENTAValue : String;
@ -333,7 +333,7 @@ type
{ IContactosDelta } { IContactosDelta }
IContactosDelta = interface(IContactos) IContactosDelta = interface(IContactos)
['{DC868481-1C6B-408A-B9D9-86DD141BEFD9}'] ['{0A499049-0836-49EA-A0E8-48EFBC087814}']
{ Property getters and setters } { Property getters and setters }
function GetOldIDValue : Integer; function GetOldIDValue : Integer;
function GetOldID_CATEGORIAValue : Integer; function GetOldID_CATEGORIAValue : Integer;
@ -656,7 +656,7 @@ type
{ IGruposClienteDelta } { IGruposClienteDelta }
IGruposClienteDelta = interface(IGruposCliente) IGruposClienteDelta = interface(IGruposCliente)
['{47223648-73F6-483B-971C-00C1AC17E65F}'] ['{DDC372FC-D1E5-4560-80DC-371EADCD7154}']
{ Property getters and setters } { Property getters and setters }
function GetOldIDValue : Integer; function GetOldIDValue : Integer;
function GetOldDESCRIPCIONValue : String; function GetOldDESCRIPCIONValue : String;
@ -702,7 +702,7 @@ type
{ IDatosBancariosDelta } { IDatosBancariosDelta }
IDatosBancariosDelta = interface(IDatosBancarios) IDatosBancariosDelta = interface(IDatosBancarios)
['{777B1DE9-1D9B-4127-97C6-D605FDA37D0B}'] ['{1A23BE03-1CF1-425F-8508-2EA9F5EBFCE2}']
{ Property getters and setters } { Property getters and setters }
function GetOldIDValue : Integer; function GetOldIDValue : Integer;
function GetOldID_CONTACTOValue : Integer; function GetOldID_CONTACTOValue : Integer;
@ -832,7 +832,7 @@ type
{ IContactosDireccionesDelta } { IContactosDireccionesDelta }
IContactosDireccionesDelta = interface(IContactosDirecciones) IContactosDireccionesDelta = interface(IContactosDirecciones)
['{9C86AA9E-70BA-40CE-B5A5-38CF4A3B0735}'] ['{A8A43023-CFC3-44E5-9C0C-0C11E6110F1E}']
{ Property getters and setters } { Property getters and setters }
function GetOldID_CONTACTOValue : Integer; function GetOldID_CONTACTOValue : Integer;
function GetOldID_DIRECCIONValue : Integer; function GetOldID_DIRECCIONValue : Integer;
@ -1010,7 +1010,7 @@ type
{ IClientesDelta } { IClientesDelta }
IClientesDelta = interface(IClientes) IClientesDelta = interface(IClientes)
['{D7F24E5E-CD4A-4BC2-B98C-E0B8AA57835A}'] ['{3C5E5FFE-B6D2-45C5-AFFA-FB11993BF73A}']
{ Property getters and setters } { Property getters and setters }
function GetOldIDValue : Integer; function GetOldIDValue : Integer;
function GetOldID_CATEGORIAValue : Integer; function GetOldID_CATEGORIAValue : Integer;
@ -1054,6 +1054,7 @@ type
function GetOldVENCIMIENTO_FACTURAS_2Value : Integer; function GetOldVENCIMIENTO_FACTURAS_2Value : Integer;
function GetOldVENCIMIENTO_FACTURAS_3Value : Integer; function GetOldVENCIMIENTO_FACTURAS_3Value : Integer;
function GetOldLISTA_NOMBRESValue : String; function GetOldLISTA_NOMBRESValue : String;
function GetOldLOPDValue : SmallInt;
{ Properties } { Properties }
property OldID : Integer read GetOldIDValue; property OldID : Integer read GetOldIDValue;
@ -1098,6 +1099,7 @@ type
property OldVENCIMIENTO_FACTURAS_2 : Integer read GetOldVENCIMIENTO_FACTURAS_2Value; property OldVENCIMIENTO_FACTURAS_2 : Integer read GetOldVENCIMIENTO_FACTURAS_2Value;
property OldVENCIMIENTO_FACTURAS_3 : Integer read GetOldVENCIMIENTO_FACTURAS_3Value; property OldVENCIMIENTO_FACTURAS_3 : Integer read GetOldVENCIMIENTO_FACTURAS_3Value;
property OldLISTA_NOMBRES : String read GetOldLISTA_NOMBRESValue; property OldLISTA_NOMBRES : String read GetOldLISTA_NOMBRESValue;
property OldLOPD : SmallInt read GetOldLOPDValue;
end; end;
{ TClientesBusinessProcessorRules } { TClientesBusinessProcessorRules }
@ -1358,6 +1360,12 @@ type
function GetOldLISTA_NOMBRESIsNull: Boolean; virtual; function GetOldLISTA_NOMBRESIsNull: Boolean; virtual;
procedure SetLISTA_NOMBRESValue(const aValue: String); virtual; procedure SetLISTA_NOMBRESValue(const aValue: String); virtual;
procedure SetLISTA_NOMBRESIsNull(const aValue: Boolean); virtual; procedure SetLISTA_NOMBRESIsNull(const aValue: Boolean); virtual;
function GetLOPDValue: SmallInt; virtual;
function GetLOPDIsNull: Boolean; virtual;
function GetOldLOPDValue: SmallInt; virtual;
function GetOldLOPDIsNull: Boolean; virtual;
procedure SetLOPDValue(const aValue: SmallInt); virtual;
procedure SetLOPDIsNull(const aValue: Boolean); virtual;
{ Properties } { Properties }
property ID : Integer read GetIDValue write SetIDValue; property ID : Integer read GetIDValue write SetIDValue;
@ -1528,6 +1536,10 @@ type
property LISTA_NOMBRESIsNull : Boolean read GetLISTA_NOMBRESIsNull write SetLISTA_NOMBRESIsNull; property LISTA_NOMBRESIsNull : Boolean read GetLISTA_NOMBRESIsNull write SetLISTA_NOMBRESIsNull;
property OldLISTA_NOMBRES : String read GetOldLISTA_NOMBRESValue; property OldLISTA_NOMBRES : String read GetOldLISTA_NOMBRESValue;
property OldLISTA_NOMBRESIsNull : Boolean read GetOldLISTA_NOMBRESIsNull; property OldLISTA_NOMBRESIsNull : Boolean read GetOldLISTA_NOMBRESIsNull;
property LOPD : SmallInt read GetLOPDValue write SetLOPDValue;
property LOPDIsNull : Boolean read GetLOPDIsNull write SetLOPDIsNull;
property OldLOPD : SmallInt read GetOldLOPDValue;
property OldLOPDIsNull : Boolean read GetOldLOPDIsNull;
public public
constructor Create(aBusinessProcessor: TDABusinessProcessor); override; constructor Create(aBusinessProcessor: TDABusinessProcessor); override;
@ -1537,7 +1549,7 @@ type
{ IProveedoresDelta } { IProveedoresDelta }
IProveedoresDelta = interface(IProveedores) IProveedoresDelta = interface(IProveedores)
['{D73D96B2-53E6-477D-82CB-B2A69AEEF86B}'] ['{933D6182-B6DB-40E9-BA65-D4DDA0FF63E4}']
{ Property getters and setters } { Property getters and setters }
function GetOldIDValue : Integer; function GetOldIDValue : Integer;
function GetOldID_CATEGORIAValue : Integer; function GetOldID_CATEGORIAValue : Integer;
@ -2064,7 +2076,7 @@ type
{ IVendedoresDelta } { IVendedoresDelta }
IVendedoresDelta = interface(IVendedores) IVendedoresDelta = interface(IVendedores)
['{C12214F4-2ED0-4099-AECB-945D42A72EDC}'] ['{670CF45E-35ED-496D-ACB7-02E24F7EF991}']
{ Property getters and setters } { Property getters and setters }
function GetOldIDValue : Integer; function GetOldIDValue : Integer;
function GetOldID_CATEGORIAValue : Integer; function GetOldID_CATEGORIAValue : Integer;
@ -2411,7 +2423,7 @@ type
{ IDireccionesContactoDelta } { IDireccionesContactoDelta }
IDireccionesContactoDelta = interface(IDireccionesContacto) IDireccionesContactoDelta = interface(IDireccionesContacto)
['{CFF3C192-A3B8-43FF-9F98-B29B4C4447BC}'] ['{110EC6A6-BC18-4C1D-A82C-B08E23345CCB}']
{ Property getters and setters } { Property getters and setters }
function GetOldIDValue : Integer; function GetOldIDValue : Integer;
function GetOldID_CONTACTOValue : Integer; function GetOldID_CONTACTOValue : Integer;
@ -2638,7 +2650,7 @@ type
{ IClientesDescuentosDelta } { IClientesDescuentosDelta }
IClientesDescuentosDelta = interface(IClientesDescuentos) IClientesDescuentosDelta = interface(IClientesDescuentos)
['{56F5AE71-33E1-4D3B-AE18-8C1F47582366}'] ['{4C4BEB48-604A-437D-9B23-77022C3B6C1F}']
{ Property getters and setters } { Property getters and setters }
function GetOldIDValue : Integer; function GetOldIDValue : Integer;
function GetOldID_CLIENTEValue : Integer; function GetOldID_CLIENTEValue : Integer;
@ -2720,7 +2732,7 @@ type
{ IProcedenciasClienteDelta } { IProcedenciasClienteDelta }
IProcedenciasClienteDelta = interface(IProcedenciasCliente) IProcedenciasClienteDelta = interface(IProcedenciasCliente)
['{47DFCD94-B340-485F-90B1-C9E217F3810D}'] ['{EAF868C1-3667-4C24-A1A5-DE46896D0125}']
{ Property getters and setters } { Property getters and setters }
function GetOldIDValue : Integer; function GetOldIDValue : Integer;
function GetOldDESCRIPCIONValue : String; function GetOldDESCRIPCIONValue : String;
@ -2766,7 +2778,7 @@ type
{ IGruposProveedorDelta } { IGruposProveedorDelta }
IGruposProveedorDelta = interface(IGruposProveedor) IGruposProveedorDelta = interface(IGruposProveedor)
['{7DBF3455-38E2-45DE-BABC-280D7B6309AF}'] ['{37A333B0-4BB7-484E-B6AF-4A088F43EBFF}']
{ Property getters and setters } { Property getters and setters }
function GetOldIDValue : Integer; function GetOldIDValue : Integer;
function GetOldDESCRIPCIONValue : String; function GetOldDESCRIPCIONValue : String;
@ -2812,7 +2824,7 @@ type
{ IContactos_RefreshDelta } { IContactos_RefreshDelta }
IContactos_RefreshDelta = interface(IContactos_Refresh) IContactos_RefreshDelta = interface(IContactos_Refresh)
['{7A25AA92-54F4-4D92-AD08-3382DDC351B6}'] ['{214CA371-4CD0-44C9-BFD3-1888CA6C33D1}']
{ Property getters and setters } { Property getters and setters }
function GetOldIDValue : Integer; function GetOldIDValue : Integer;
function GetOldNIF_CIFValue : String; function GetOldNIF_CIFValue : String;
@ -6592,6 +6604,37 @@ begin
BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesLISTA_NOMBRES] := Null; BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesLISTA_NOMBRES] := Null;
end; end;
function TClientesBusinessProcessorRules.GetLOPDValue: SmallInt;
begin
result := BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesLOPD];
end;
function TClientesBusinessProcessorRules.GetLOPDIsNull: Boolean;
begin
result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesLOPD]);
end;
function TClientesBusinessProcessorRules.GetOldLOPDValue: SmallInt;
begin
result := BusinessProcessor.CurrentChange.OldValueByName[fld_ClientesLOPD];
end;
function TClientesBusinessProcessorRules.GetOldLOPDIsNull: Boolean;
begin
result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ClientesLOPD]);
end;
procedure TClientesBusinessProcessorRules.SetLOPDValue(const aValue: SmallInt);
begin
BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesLOPD] := aValue;
end;
procedure TClientesBusinessProcessorRules.SetLOPDIsNull(const aValue: Boolean);
begin
if aValue then
BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesLOPD] := Null;
end;
{ TProveedoresBusinessProcessorRules } { TProveedoresBusinessProcessorRules }
constructor TProveedoresBusinessProcessorRules.Create(aBusinessProcessor: TDABusinessProcessor); constructor TProveedoresBusinessProcessorRules.Create(aBusinessProcessor: TDABusinessProcessor);

View File

@ -181,6 +181,8 @@ begin
ParamByName('VENCIMIENTO_FACTURAS_2').Value := aChange.NewValueByName[fld_ProveedoresVENCIMIENTO_FACTURAS_2]; ParamByName('VENCIMIENTO_FACTURAS_2').Value := aChange.NewValueByName[fld_ProveedoresVENCIMIENTO_FACTURAS_2];
ParamByName('VENCIMIENTO_FACTURAS_3').Value := aChange.NewValueByName[fld_ProveedoresVENCIMIENTO_FACTURAS_3]; ParamByName('VENCIMIENTO_FACTURAS_3').Value := aChange.NewValueByName[fld_ProveedoresVENCIMIENTO_FACTURAS_3];
ParamByName('LOPD').Value := aChange.NewValueByName[fld_ClientesLOPD];
Execute; Execute;
end; end;
@ -234,6 +236,8 @@ begin
ParamByName('VENCIMIENTO_FACTURAS_2').Value := aChange.NewValueByName[fld_ProveedoresVENCIMIENTO_FACTURAS_2]; ParamByName('VENCIMIENTO_FACTURAS_2').Value := aChange.NewValueByName[fld_ProveedoresVENCIMIENTO_FACTURAS_2];
ParamByName('VENCIMIENTO_FACTURAS_3').Value := aChange.NewValueByName[fld_ProveedoresVENCIMIENTO_FACTURAS_3]; ParamByName('VENCIMIENTO_FACTURAS_3').Value := aChange.NewValueByName[fld_ProveedoresVENCIMIENTO_FACTURAS_3];
ParamByName('LOPD').Value := aChange.NewValueByName[fld_ClientesLOPD];
Execute; Execute;
end; end;

View File

@ -84,6 +84,9 @@ type
function GetTIENDA_WEBValue: Integer; function GetTIENDA_WEBValue: Integer;
procedure SetTIENDA_WEBValue(const aValue: Integer); procedure SetTIENDA_WEBValue(const aValue: Integer);
function GetLOPDValue: Integer;
procedure SetLOPDValue(const aValue: Integer);
function GetDescuentos: IBizClienteDescuentos; function GetDescuentos: IBizClienteDescuentos;
procedure SetDescuentos(Value: IBizClienteDescuentos); procedure SetDescuentos(Value: IBizClienteDescuentos);
property Descuentos: IBizClienteDescuentos read GetDescuentos write SetDescuentos; property Descuentos: IBizClienteDescuentos read GetDescuentos write SetDescuentos;
@ -101,6 +104,7 @@ type
property ID_TIPO_IVA: Integer read GetID_TIPO_IVAValue write SetID_TIPO_IVAValue; property ID_TIPO_IVA: Integer read GetID_TIPO_IVAValue write SetID_TIPO_IVAValue;
property ID_FORMA_PAGO: Integer read GetID_FORMA_PAGOValue write SetID_FORMA_PAGOValue; property ID_FORMA_PAGO: Integer read GetID_FORMA_PAGOValue write SetID_FORMA_PAGOValue;
property TIENDA_WEB: Integer read GetTIENDA_WEBValue write SetTIENDA_WEBValue; property TIENDA_WEB: Integer read GetTIENDA_WEBValue write SetTIENDA_WEBValue;
property LOPD: Integer read GetLOPDValue write SetLOPDValue;
function GetSubCuentas: IBizSubCuentasContacto; function GetSubCuentas: IBizSubCuentasContacto;
procedure SetSubCuentas(const Value: IBizSubCuentasContacto); procedure SetSubCuentas(const Value: IBizSubCuentasContacto);
@ -306,6 +310,9 @@ type
function GetSubCuentas: IBizSubCuentasContacto; function GetSubCuentas: IBizSubCuentasContacto;
procedure SetSubCuentas(const Value: IBizSubCuentasContacto); procedure SetSubCuentas(const Value: IBizSubCuentasContacto);
function GetLOPDValue: Integer;
procedure SetLOPDValue(const aValue: Integer);
public public
procedure IniciarValoresContactoNuevo; override; procedure IniciarValoresContactoNuevo; override;
constructor Create(aDataTable: TDADataTable); override; constructor Create(aDataTable: TDADataTable); override;
@ -327,6 +334,7 @@ type
property SubCuentas : IBizSubCuentasContacto read GetSubCuentas write SetSubCuentas; property SubCuentas : IBizSubCuentasContacto read GetSubCuentas write SetSubCuentas;
property IGNORAR_CONTABILIDAD: Integer read GetIgnorar_Contabilidad write SetIgnorar_Contabilidad; property IGNORAR_CONTABILIDAD: Integer read GetIgnorar_Contabilidad write SetIgnorar_Contabilidad;
property TIENE_SUBCUENTA: Integer read GetTiene_SubCuenta write SetTiene_Subcuenta; property TIENE_SUBCUENTA: Integer read GetTiene_SubCuenta write SetTiene_Subcuenta;
property LOPD: Integer read GetLOPDValue write SetLOPDValue;
end; end;
@ -593,6 +601,11 @@ begin
result := DataTable.Fields[idx_ClientesIGNORAR_CONTABILIDAD].AsInteger; result := DataTable.Fields[idx_ClientesIGNORAR_CONTABILIDAD].AsInteger;
end; end;
function TBizCliente.GetLOPDValue: Integer;
begin
result := DataTable.Fields[idx_ClientesLOPD].AsInteger;
end;
function TBizCliente.GetMOTIVO_BLOQUEOValue: String; function TBizCliente.GetMOTIVO_BLOQUEOValue: String;
begin begin
result := DataTable.Fields[idx_ClientesMOTIVO_BLOQUEO].AsString; result := DataTable.Fields[idx_ClientesMOTIVO_BLOQUEO].AsString;
@ -639,6 +652,11 @@ begin
DataTable.Fields[idx_ClientesIGNORAR_CONTABILIDAD].AsInteger := Value; DataTable.Fields[idx_ClientesIGNORAR_CONTABILIDAD].AsInteger := Value;
end; end;
procedure TBizCliente.SetLOPDValue(const aValue: Integer);
begin
DataTable.Fields[idx_ClientesLOPD].AsInteger := aValue;
end;
procedure TBizCliente.SetMOTIVO_BLOQUEOValue(const aValue: String); procedure TBizCliente.SetMOTIVO_BLOQUEOValue(const aValue: String);
begin begin
DataTable.Fields[idx_ClientesMOTIVO_BLOQUEO].AsString := aValue; DataTable.Fields[idx_ClientesMOTIVO_BLOQUEO].AsString := aValue;
@ -740,6 +758,7 @@ begin
inherited; inherited;
ID_CATEGORIA := CATEGORIA_CLIENTE; ID_CATEGORIA := CATEGORIA_CLIENTE;
BLOQUEADO := 0; BLOQUEADO := 0;
LOPD := 0;
RECARGO_EQUIVALENCIA := CLIENTE_RECARGO_EQUIVALENCIA; RECARGO_EQUIVALENCIA := CLIENTE_RECARGO_EQUIVALENCIA;
REGIMEN_IVA := AppFactuGES.Configuracion.GetSettingAsString(teXML, 'Clientes.RegimenIVA', CLIENTE_REGIMEN_IVA); REGIMEN_IVA := AppFactuGES.Configuracion.GetSettingAsString(teXML, 'Clientes.RegimenIVA', CLIENTE_REGIMEN_IVA);

View File

@ -975,6 +975,10 @@ object srvContactos: TsrvContactos
item item
DatasetField = 'LISTA_NOMBRES' DatasetField = 'LISTA_NOMBRES'
TableField = 'LISTA_NOMBRES' TableField = 'LISTA_NOMBRES'
end
item
DatasetField = 'LOPD'
TableField = 'LOPD'
end> end>
end> end>
Name = 'Clientes' Name = 'Clientes'
@ -1214,6 +1218,10 @@ object srvContactos: TsrvContactos
DataType = datString DataType = datString
Size = 255 Size = 255
DictionaryEntry = 'Clientes_LISTA_NOMBRES' DictionaryEntry = 'Clientes_LISTA_NOMBRES'
end
item
Name = 'LOPD'
DataType = datSmallInt
end> end>
end end
item item
@ -2982,70 +2990,98 @@ object srvContactos: TsrvContactos
Params = < Params = <
item item
Name = 'ID_CLIENTE' Name = 'ID_CLIENTE'
DataType = datInteger
Value = '' Value = ''
end end
item item
Name = 'GRUPO_CLIENTE' Name = 'GRUPO_CLIENTE'
DataType = datString
Size = 255
Value = '' Value = ''
end end
item item
Name = 'RECARGO_EQUIVALENCIA' Name = 'RECARGO_EQUIVALENCIA'
DataType = datSmallInt
Value = '' Value = ''
end end
item item
Name = 'NOMBRE_COMERCIAL' Name = 'NOMBRE_COMERCIAL'
DataType = datString
Size = 255
Value = '' Value = ''
end end
item item
Name = 'BLOQUEADO' Name = 'BLOQUEADO'
DataType = datSmallInt
Value = '' Value = ''
end end
item item
Name = 'MOTIVO_BLOQUEO' Name = 'MOTIVO_BLOQUEO'
DataType = datString
Size = 255
Value = '' Value = ''
end end
item item
Name = 'REGIMEN_IVA' Name = 'REGIMEN_IVA'
DataType = datString
Size = 255
Value = '' Value = ''
end end
item item
Name = 'ID_TIPO_IVA' Name = 'ID_TIPO_IVA'
DataType = datInteger
Value = '' Value = ''
end end
item item
Name = 'ID_FORMA_PAGO' Name = 'ID_FORMA_PAGO'
DataType = datInteger
Value = '' Value = ''
end end
item item
Name = 'TIENDA_WEB' Name = 'TIENDA_WEB'
DataType = datSmallInt
Value = '' Value = ''
end end
item item
Name = 'CODIGO_ASIGNADO' Name = 'CODIGO_ASIGNADO'
DataType = datString
Size = 255
Value = '' Value = ''
end end
item item
Name = 'IGNORAR_CONTABILIDAD' Name = 'IGNORAR_CONTABILIDAD'
DataType = datInteger
Value = '' Value = ''
end end
item item
Name = 'PROCEDENCIA_CLIENTE' Name = 'PROCEDENCIA_CLIENTE'
DataType = datString
Size = 255
Value = '' Value = ''
end end
item item
Name = 'TIENE_SUBCUENTA' Name = 'TIENE_SUBCUENTA'
DataType = datInteger
Value = '' Value = ''
end end
item item
Name = 'VENCIMIENTO_FACTURAS_1' Name = 'VENCIMIENTO_FACTURAS_1'
DataType = datInteger
Value = '' Value = ''
end end
item item
Name = 'VENCIMIENTO_FACTURAS_2' Name = 'VENCIMIENTO_FACTURAS_2'
DataType = datInteger
Value = '' Value = ''
end end
item item
Name = 'VENCIMIENTO_FACTURAS_3' Name = 'VENCIMIENTO_FACTURAS_3'
DataType = datInteger
Value = ''
end
item
Name = 'LOPD'
DataType = datSmallInt
Value = '' Value = ''
end> end>
Statements = < Statements = <
@ -3058,12 +3094,12 @@ object srvContactos: TsrvContactos
'UEO, REGIMEN_IVA, ID_TIPO_IVA, ID_FORMA_PAGO, TIENDA_WEB,'#10' C' + 'UEO, REGIMEN_IVA, ID_TIPO_IVA, ID_FORMA_PAGO, TIENDA_WEB,'#10' C' +
'ODIGO_ASIGNADO, IGNORAR_CONTABILIDAD, PROCEDENCIA_CLIENTE, TIENE' + 'ODIGO_ASIGNADO, IGNORAR_CONTABILIDAD, PROCEDENCIA_CLIENTE, TIENE' +
'_SUBCUENTA,'#10' VENCIMIENTO_FACTURAS_1, VENCIMIENTO_FACTURAS_2,' + '_SUBCUENTA,'#10' VENCIMIENTO_FACTURAS_1, VENCIMIENTO_FACTURAS_2,' +
' VENCIMIENTO_FACTURAS_3)'#10' VALUES'#10' (:ID_CLIENTE, :GRUPO_CLIEN' + ' VENCIMIENTO_FACTURAS_3, LOPD)'#10' VALUES'#10' (:ID_CLIENTE, :GRUPO' +
'TE, :RECARGO_EQUIVALENCIA, :NOMBRE_COMERCIAL, :BLOQUEADO,'#10' :' + '_CLIENTE, :RECARGO_EQUIVALENCIA, :NOMBRE_COMERCIAL, :BLOQUEADO,'#10 +
'MOTIVO_BLOQUEO, :REGIMEN_IVA, :ID_TIPO_IVA, :ID_FORMA_PAGO, :TIE' + ' :MOTIVO_BLOQUEO, :REGIMEN_IVA, :ID_TIPO_IVA, :ID_FORMA_PAGO' +
'NDA_WEB,'#10' :CODIGO_ASIGNADO, :IGNORAR_CONTABILIDAD, :PROCEDEN' + ', :TIENDA_WEB,'#10' :CODIGO_ASIGNADO, :IGNORAR_CONTABILIDAD, :PR' +
'CIA_CLIENTE, :TIENE_SUBCUENTA,'#10' :VENCIMIENTO_FACTURAS_1, :VE' + 'OCEDENCIA_CLIENTE, :TIENE_SUBCUENTA,'#10' :VENCIMIENTO_FACTURAS_' +
'NCIMIENTO_FACTURAS_2, :VENCIMIENTO_FACTURAS_3)'#10 '1, :VENCIMIENTO_FACTURAS_2, :VENCIMIENTO_FACTURAS_3, :LOPD)'#10
StatementType = stSQL StatementType = stSQL
ColumnMappings = <> ColumnMappings = <>
end> end>
@ -3093,70 +3129,98 @@ object srvContactos: TsrvContactos
Params = < Params = <
item item
Name = 'ID_CLIENTE' Name = 'ID_CLIENTE'
DataType = datInteger
Value = '' Value = ''
end end
item item
Name = 'GRUPO_CLIENTE' Name = 'GRUPO_CLIENTE'
DataType = datString
Size = 255
Value = '' Value = ''
end end
item item
Name = 'MOTIVO_BLOQUEO' Name = 'MOTIVO_BLOQUEO'
DataType = datString
Size = 255
Value = '' Value = ''
end end
item item
Name = 'RECARGO_EQUIVALENCIA' Name = 'RECARGO_EQUIVALENCIA'
DataType = datSmallInt
Value = '' Value = ''
end end
item item
Name = 'NOMBRE_COMERCIAL' Name = 'NOMBRE_COMERCIAL'
DataType = datString
Size = 255
Value = '' Value = ''
end end
item item
Name = 'BLOQUEADO' Name = 'BLOQUEADO'
DataType = datSmallInt
Value = '' Value = ''
end end
item item
Name = 'REGIMEN_IVA' Name = 'REGIMEN_IVA'
DataType = datString
Size = 255
Value = '' Value = ''
end end
item item
Name = 'ID_TIPO_IVA' Name = 'ID_TIPO_IVA'
DataType = datInteger
Value = '' Value = ''
end end
item item
Name = 'ID_FORMA_PAGO' Name = 'ID_FORMA_PAGO'
DataType = datInteger
Value = '' Value = ''
end end
item item
Name = 'TIENDA_WEB' Name = 'TIENDA_WEB'
DataType = datSmallInt
Value = '' Value = ''
end end
item item
Name = 'CODIGO_ASIGNADO' Name = 'CODIGO_ASIGNADO'
DataType = datString
Size = 255
Value = '' Value = ''
end end
item item
Name = 'IGNORAR_CONTABILIDAD' Name = 'IGNORAR_CONTABILIDAD'
DataType = datInteger
Value = '' Value = ''
end end
item item
Name = 'TIENE_SUBCUENTA' Name = 'TIENE_SUBCUENTA'
DataType = datInteger
Value = '' Value = ''
end end
item item
Name = 'PROCEDENCIA_CLIENTE' Name = 'PROCEDENCIA_CLIENTE'
DataType = datString
Size = 255
Value = '' Value = ''
end end
item item
Name = 'VENCIMIENTO_FACTURAS_1' Name = 'VENCIMIENTO_FACTURAS_1'
DataType = datInteger
Value = '' Value = ''
end end
item item
Name = 'VENCIMIENTO_FACTURAS_2' Name = 'VENCIMIENTO_FACTURAS_2'
DataType = datInteger
Value = '' Value = ''
end end
item item
Name = 'VENCIMIENTO_FACTURAS_3' Name = 'VENCIMIENTO_FACTURAS_3'
DataType = datInteger
Value = ''
end
item
Name = 'LOPD'
DataType = datSmallInt
Value = '' Value = ''
end end
item item
@ -3179,7 +3243,8 @@ object srvContactos: TsrvContactos
','#10' PROCEDENCIA_CLIENTE = :PROCEDENCIA_CLIENTE,'#10' VENCIMIENT' + ','#10' PROCEDENCIA_CLIENTE = :PROCEDENCIA_CLIENTE,'#10' VENCIMIENT' +
'O_FACTURAS_1 = :VENCIMIENTO_FACTURAS_1,'#10' VENCIMIENTO_FACTURAS' + 'O_FACTURAS_1 = :VENCIMIENTO_FACTURAS_1,'#10' VENCIMIENTO_FACTURAS' +
'_2 = :VENCIMIENTO_FACTURAS_2,'#10' VENCIMIENTO_FACTURAS_3 = :VENC' + '_2 = :VENCIMIENTO_FACTURAS_2,'#10' VENCIMIENTO_FACTURAS_3 = :VENC' +
'IMIENTO_FACTURAS_3'#10' WHERE'#10' (ID_CLIENTE = :OLD_ID_CLIENTE)'#10 'IMIENTO_FACTURAS_3,'#10' LOPD = :LOPD'#10' WHERE'#10' (ID_CLIENTE = :' +
'OLD_ID_CLIENTE)'#10
StatementType = stSQL StatementType = stSQL
ColumnMappings = <> ColumnMappings = <>
end> end>

View File

@ -57,6 +57,17 @@ inherited fEditorClientes: TfEditorClientes
inherited tbxMenu: TTBXToolbar inherited tbxMenu: TTBXToolbar
ExplicitWidth = 786 ExplicitWidth = 786
end end
inherited TBXTMain2: TTBXToolbar
Left = 275
DockPos = 275
Visible = True
ExplicitLeft = 275
ExplicitWidth = 67
object TBXItem38: TTBXItem
Action = actLOPD
DisplayMode = nbdmImageAndText
end
end
end end
inherited StatusBar: TJvStatusBar inherited StatusBar: TJvStatusBar
Top = 500 Top = 500
@ -120,15 +131,27 @@ inherited fEditorClientes: TfEditorClientes
Width = 240 Width = 240
end end
inherited edtFechaFinFiltro: TcxDateEdit inherited edtFechaFinFiltro: TcxDateEdit
Left = 564 Left = 344
Style.LookAndFeel.SkinName = '' Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = '' StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = '' StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = '' StyleHot.LookAndFeel.SkinName = ''
ExplicitLeft = 564 ExplicitLeft = 344
ExplicitWidth = 121 ExplicitWidth = 121
Width = 121 Width = 121
end end
inherited edtFecha2FinFiltro: TcxDateEdit
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
end
inherited edtFecha2IniFiltro: TcxDateEdit
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
end
end end
inherited TBXAlignmentPanel1: TTBXAlignmentPanel inherited TBXAlignmentPanel1: TTBXAlignmentPanel
Width = 786 Width = 786
@ -180,6 +203,13 @@ inherited fEditorClientes: TfEditorClientes
ImageIndex = 23 ImageIndex = 23
OnExecute = actGruposClienteExecute OnExecute = actGruposClienteExecute
end end
object actLOPD: TAction
Category = 'Acciones'
Caption = 'GDPR'
ImageIndex = 24
OnExecute = actLOPDExecute
OnUpdate = actLOPDUpdate
end
end end
inherited SmallImages: TPngImageList [5] inherited SmallImages: TPngImageList [5]
PngImages = < PngImages = <
@ -723,6 +753,29 @@ inherited fEditorClientes: TfEditorClientes
00000049454E44AE426082} 00000049454E44AE426082}
Name = 'PngImage23' Name = 'PngImage23'
Background = clWindow Background = clWindow
end
item
PngImage.Data = {
89504E470D0A1A0A0000000D49484452000000100000001008060000001FF3FF
61000000097048597300000AEB00000AEB01828B0D5A000001DA4944415478DA
63FCFFFF3F032580912C5DF2F33964B539E3DF7DF8F1956403380CE7C85B5929
CFFAF99ED7FCFCED9BE124192060B7D8D6CE5279E99B876C42674FFC0CFEF9C0
7A27D10628FBAF0FB030915F74E7EA6FE6F387FF87FD7A6AB195E83090F55915
EEE7A23BE7FCD9CFAC170EFF4EFDF6C07A31D18128E1BE3CC8DB597BE1A3BBBF
B98EECFA91FBFDBEF574A0F07FA20C10B09B67EBE366B8E3CDF37F9C47F77CED
FC7CD3AE125D0DC400B3897C9CCCBCEADFD9182F331C4CFC010E6DCB39F29E0E
3A07599939E477AE7FBFFBE3CF4BBE0C77F27F621820EAB848DFDC447931372B
9FE68E5DF7577F3C73368E414588D9C6496BB3AA92B8CBDECD9FDEBC7CF9D3F2
E71DE7BBD85CC928EAB438C4C7556F3A0B1B8BC8B1BD9FFFDE7B753F4C41994B
C3CA48B1E5F09ECFFFEF3F7D19F3FB5AD0725CDE047B41276243A09D85FAAAA7
CFBFB11CDEFBEA8EA79F98E4C3FBBFB8CF9F7BBDE5EB453F3FE440C31E060CF5
4C4ED9F63B6565845D5EBEFEF29F11287AE9C4AF2FAFBF3D32FF753EFE3ABE80
86C7028FF5429B101F83FDCF5F7F66797697E1FFCDDB6FA7FFBAE69F4D289A91
A2B19EC539C7E1C49BC7EC46F71EBDD9FFF9DFD338868B994F4930808181D76E
413EF33F56D90F0F5ED4323C29FE4E4833080000904EC47A3EA3126900000000
49454E44AE426082}
Name = 'PngImage24'
Background = clWindow
end> end>
Bitmap = {} Bitmap = {}
end end

View File

@ -21,7 +21,11 @@ type
actGruposCliente: TAction; actGruposCliente: TAction;
JsListaContactosNoEliminados: TJSDialog; JsListaContactosNoEliminados: TJSDialog;
frViewClientes1: TfrViewClientes; frViewClientes1: TfrViewClientes;
actLOPD: TAction;
TBXItem38: TTBXItem;
procedure actGruposClienteExecute(Sender: TObject); procedure actGruposClienteExecute(Sender: TObject);
procedure actLOPDExecute(Sender: TObject);
procedure actLOPDUpdate(Sender: TObject);
protected protected
procedure ImprimirInterno; override; procedure ImprimirInterno; override;
procedure PrevisualizarInterno; override; procedure PrevisualizarInterno; override;
@ -59,6 +63,42 @@ begin
end; end;
end; end;
procedure TfEditorClientes.actLOPDExecute(Sender: TObject);
var
AClientes: IBizCliente;
AListaClientesNoModificados: TStringList;
i: integer;
begin
inherited;
ViewGrid.SaveGridStatus;
try
SeleccionarFilasDesdeGrid(ViewGrid._FocusedView, (Contactos as ISeleccionable).SelectedRecords);
AClientes := (Controller as IClientesController).ExtraerSeleccionados(Contactos) as IBizCliente;
finally
ViewGrid.RestoreGridStatus;
end;
(Controller as IClientesController).AsignarLOPD(AClientes);
if (AClientes.DataTable.RecordCount > 0) then
RefrescarInterno;
end;
procedure TfEditorClientes.actLOPDUpdate(Sender: TObject);
begin
inherited;
if HayDatos and Assigned(ViewGrid) then
(Sender as TAction).Enabled := not (dsDataTable.DataTable.State in dsEditModes)
and ViewGrid.esSeleccionCeldaDatos
and (ViewGrid.NumSeleccionados > 0)
else
(Sender as TAction).Enabled := False;
end;
constructor TfEditorClientes.Create(AOwner: TComponent); constructor TfEditorClientes.Create(AOwner: TComponent);
begin begin
inherited; inherited;

View File

@ -2,6 +2,8 @@ inherited fEditorContactos: TfEditorContactos
Left = 285 Left = 285
Top = 448 Top = 448
Caption = 'Lista de contactos' Caption = 'Lista de contactos'
ExplicitWidth = 320
ExplicitHeight = 240
PixelsPerInch = 96 PixelsPerInch = 96
TextHeight = 13 TextHeight = 13
inherited JvNavPanelHeader: TJvNavPanelHeader inherited JvNavPanelHeader: TJvNavPanelHeader

View File

@ -15,15 +15,24 @@ inherited frViewClientes: TfrViewClientes
Kind = skCount Kind = skCount
Column = cxGridViewNIF_CIF Column = cxGridViewNIF_CIF
end> end>
object cxGridViewBLOQUEADO: TcxGridDBColumn [1] object cxGridViewLOPD: TcxGridDBColumn [1]
DataBinding.FieldName = 'BLOQUEADO' Caption = 'GDPR'
PropertiesClassName = 'TcxTextEditProperties' DataBinding.FieldName = 'LOPD'
Visible = False PropertiesClassName = 'TcxImageComboBoxProperties'
BestFitMaxWidth = 22 Properties.Images = PngImageList
MinWidth = 22 Properties.Items = <
item
Value = 0
end
item
ImageIndex = 3
Value = 1
end>
BestFitMaxWidth = 40
MinWidth = 40
Options.HorzSizing = False Options.HorzSizing = False
VisibleForCustomization = False VisibleForCustomization = False
Width = 22 Width = 40
end end
object cxGridViewTiendaWeb: TcxGridDBColumn [2] object cxGridViewTiendaWeb: TcxGridDBColumn [2]
Caption = 'Acceso a tienda web' Caption = 'Acceso a tienda web'
@ -104,15 +113,27 @@ inherited frViewClientes: TfrViewClientes
Width = 217 Width = 217
end end
inherited edtFechaFinFiltro: TcxDateEdit inherited edtFechaFinFiltro: TcxDateEdit
Left = 271 Left = 321
Style.LookAndFeel.SkinName = '' Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = '' StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = '' StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = '' StyleHot.LookAndFeel.SkinName = ''
ExplicitLeft = 271 ExplicitLeft = 321
ExplicitWidth = 427 ExplicitWidth = 427
Width = 427 Width = 427
end end
inherited edtFecha2FinFiltro: TcxDateEdit
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
end
inherited edtFecha2IniFiltro: TcxDateEdit
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
end
end end
inherited TBXAlignmentPanel1: TTBXAlignmentPanel inherited TBXAlignmentPanel1: TTBXAlignmentPanel
Width = 633 Width = 633
@ -560,6 +581,29 @@ inherited frViewClientes: TfrViewClientes
97FDD7DBF8AFCF7740E00D20BA266C3A0000000049454E44AE426082} 97FDD7DBF8AFCF7740E00D20BA266C3A0000000049454E44AE426082}
Name = 'PngImage2' Name = 'PngImage2'
Background = clWindow Background = clWindow
end
item
PngImage.Data = {
89504E470D0A1A0A0000000D49484452000000100000001008060000001FF3FF
61000000097048597300000AEB00000AEB01828B0D5A000001DA4944415478DA
63FCFFFF3F032580912C5DF2F33964B539E3DF7DF8F1956403380CE7C85B5929
CFFAF99ED7FCFCED9BE124192060B7D8D6CE5279E99B876C42674FFC0CFEF9C0
7A27D10628FBAF0FB030915F74E7EA6FE6F387FF87FD7A6AB195E83090F55915
EEE7A23BE7FCD9CFAC170EFF4EFDF6C07A31D18128E1BE3CC8DB597BE1A3BBBF
B98EECFA91FBFDBEF574A0F07FA20C10B09B67EBE366B8E3CDF37F9C47F77CED
FC7CD3AE125D0DC400B3897C9CCCBCEADFD9182F331C4CFC010E6DCB39F29E0E
3A07599939E477AE7FBFFBE3CF4BBE0C77F27F621820EAB848DFDC447931372B
9FE68E5DF7577F3C73368E414588D9C6496BB3AA92B8CBDECD9FDEBC7CF9D3F2
E71DE7BBD85CC928EAB438C4C7556F3A0B1B8BC8B1BD9FFFDE7B753F4C41994B
C3CA48B1E5F09ECFFFEF3F7D19F3FB5AD0725CDE047B41276243A09D85FAAAA7
CFBFB11CDEFBEA8EA79F98E4C3FBBFB8CF9F7BBDE5EB453F3FE440C31E060CF5
4C4ED9F63B6565845D5EBEFEF29F11287AE9C4AF2FAFBF3D32FF753EFE3ABE80
86C7028FF5429B101F83FDCF5F7F66797697E1FFCDDB6FA7FFBAE69F4D289A91
A2B19EC539C7E1C49BC7EC46F71EBDD9FFF9DFD338868B994F4930808181D76E
413EF33F56D90F0F5ED4323C29FE4E4833080000904EC47A3EA3126900000000
49454E44AE426082}
Name = 'PngImage3'
Background = clWindow
end> end>
Left = 64 Left = 64
Top = 48 Top = 48

View File

@ -23,7 +23,7 @@ type
TfrViewClientes = class(TfrViewContactos, IViewClientes) TfrViewClientes = class(TfrViewContactos, IViewClientes)
cxGridViewNOMBRE_COMERCIAL: TcxGridDBColumn; cxGridViewNOMBRE_COMERCIAL: TcxGridDBColumn;
cxGridViewBLOQUEADO: TcxGridDBColumn; cxGridViewLOPD: TcxGridDBColumn;
cxGridViewTiendaWeb: TcxGridDBColumn; cxGridViewTiendaWeb: TcxGridDBColumn;
cxGridViewPERSONA_CONTACTO: TcxGridDBColumn; cxGridViewPERSONA_CONTACTO: TcxGridDBColumn;
cxGridViewFECHA_ALTA: TcxGridDBColumn; cxGridViewFECHA_ALTA: TcxGridDBColumn;
@ -52,7 +52,7 @@ begin
R := AViewInfo.ContentBounds; R := AViewInfo.ContentBounds;
ACanvas.FillRect(R); ACanvas.FillRect(R);
if (cxGridView.DataController.DisplayTexts[AViewInfo.GridRecord.RecordIndex, if (cxGridView.DataController.DisplayTexts[AViewInfo.GridRecord.RecordIndex,
cxGridViewBLOQUEADO.Index] = '1') then cxGridViewLOPD.Index] = '1') then
ACanvas.DrawImage(PngImageList, R.Left + 2, R.Top + 2, 2) ACanvas.DrawImage(PngImageList, R.Left + 2, R.Top + 2, 2)
else else
ACanvas.DrawImage(PngImageList, R.Left + 2, R.Top + 2, 1); ACanvas.DrawImage(PngImageList, R.Left + 2, R.Top + 2, 1);

View File

@ -610,7 +610,6 @@ inherited frViewContacto: TfrViewContacto
end end
object dxLayoutControlContactoItem9: TdxLayoutItem object dxLayoutControlContactoItem9: TdxLayoutItem
Caption = 'Tlf.2:' Caption = 'Tlf.2:'
Visible = False
Control = eTlfParticular Control = eTlfParticular
ControlOptions.ShowBorder = False ControlOptions.ShowBorder = False
end end

View File

@ -66,19 +66,20 @@ inherited frViewContactos: TfrViewContactos
Width = 40 Width = 40
end end
object cxGridViewTELEFONO_1: TcxGridDBColumn object cxGridViewTELEFONO_1: TcxGridDBColumn
Caption = 'Tlf. trabajo' Caption = 'Tlf. 1'
DataBinding.FieldName = 'TELEFONO_1' DataBinding.FieldName = 'TELEFONO_1'
BestFitMaxWidth = 70 BestFitMaxWidth = 70
Width = 70 Width = 70
end end
object cxGridViewTELEFONO_2: TcxGridDBColumn object cxGridViewTELEFONO_2: TcxGridDBColumn
Caption = 'Tlf. particular' Caption = 'Tlf. 2'
DataBinding.FieldName = 'TELEFONO_2' DataBinding.FieldName = 'TELEFONO_2'
Visible = False Visible = False
BestFitMaxWidth = 70 BestFitMaxWidth = 70
Width = 70 Width = 70
end end
object cxGridViewMOVIL_1: TcxGridDBColumn object cxGridViewMOVIL_1: TcxGridDBColumn
Caption = 'Tlf. 3'
DataBinding.FieldName = 'MOVIL_1' DataBinding.FieldName = 'MOVIL_1'
BestFitMaxWidth = 70 BestFitMaxWidth = 70
Width = 70 Width = 70

View File

@ -23,6 +23,7 @@
<Projects Include="..\Pedidos a proveedor\Controller\PedidosProveedor_controller.dproj" /> <Projects Include="..\Pedidos a proveedor\Controller\PedidosProveedor_controller.dproj" />
<Projects Include="..\Pedidos a proveedor\Plugin\PedidosProveedor_plugin.dproj" /> <Projects Include="..\Pedidos a proveedor\Plugin\PedidosProveedor_plugin.dproj" />
<Projects Include="..\Pedidos a proveedor\Views\PedidosProveedor_view.dproj" /> <Projects Include="..\Pedidos a proveedor\Views\PedidosProveedor_view.dproj" />
<Projects Include="..\Presupuestos de cliente\Controller\PresupuestosCliente_controller.dproj" />
<Projects Include="..\Presupuestos de cliente\Views\PresupuestosCliente_view.dproj" /> <Projects Include="..\Presupuestos de cliente\Views\PresupuestosCliente_view.dproj" />
<Projects Include="..\Recibos de cliente\Views\RecibosCliente_view.dproj" /> <Projects Include="..\Recibos de cliente\Views\RecibosCliente_view.dproj" />
<Projects Include="..\Relaciones\Contratos de cliente - Albaranes de cliente\ConCli_AlbCli_relation.dproj" /> <Projects Include="..\Relaciones\Contratos de cliente - Albaranes de cliente\ConCli_AlbCli_relation.dproj" />
@ -321,14 +322,23 @@
<Target Name="FacturasCliente_view:Make"> <Target Name="FacturasCliente_view:Make">
<MSBuild Projects="..\Facturas de cliente\Views\FacturasCliente_view.dproj" Targets="Make" /> <MSBuild Projects="..\Facturas de cliente\Views\FacturasCliente_view.dproj" Targets="Make" />
</Target> </Target>
<Target Name="PresupuestosCliente_controller">
<MSBuild Projects="..\Presupuestos de cliente\Controller\PresupuestosCliente_controller.dproj" Targets="" />
</Target>
<Target Name="PresupuestosCliente_controller:Clean">
<MSBuild Projects="..\Presupuestos de cliente\Controller\PresupuestosCliente_controller.dproj" Targets="Clean" />
</Target>
<Target Name="PresupuestosCliente_controller:Make">
<MSBuild Projects="..\Presupuestos de cliente\Controller\PresupuestosCliente_controller.dproj" Targets="Make" />
</Target>
<Target Name="Build"> <Target Name="Build">
<CallTarget Targets="Base;GUIBase;ApplicationBase;Contactos_model;Contactos_data;Contactos_controller;Contactos_view;Articulos_data;Articulos_controller;Articulos_view;ContratosCliente_model;ContratosCliente_data;ContratosCliente_controller;ConCli_AlbCli_relation;ConCli_FacCli_relation;PreCli_ConCli_relation;ConCli_RecCli_relation;ConCli_PedProv_relation;ContratosCliente_view;ContratosCliente_plugin;FactuGES;FactuGES_Server;PresupuestosCliente_view;PedidosProveedor_controller;PedidosProveedor_view;PedidosProveedor_plugin;FacturasProveedor_controller;FacturasProveedor_plugin;RecibosCliente_view;FacturasCliente_controller;FacturasCliente_view" /> <CallTarget Targets="Base;GUIBase;ApplicationBase;Contactos_model;Contactos_data;Contactos_controller;Contactos_view;Articulos_data;Articulos_controller;Articulos_view;ContratosCliente_model;ContratosCliente_data;ContratosCliente_controller;ConCli_AlbCli_relation;ConCli_FacCli_relation;PreCli_ConCli_relation;ConCli_RecCli_relation;ConCli_PedProv_relation;ContratosCliente_view;ContratosCliente_plugin;FactuGES;FactuGES_Server;PresupuestosCliente_view;PedidosProveedor_controller;PedidosProveedor_view;PedidosProveedor_plugin;FacturasProveedor_controller;FacturasProveedor_plugin;RecibosCliente_view;FacturasCliente_controller;FacturasCliente_view;PresupuestosCliente_controller" />
</Target> </Target>
<Target Name="Clean"> <Target Name="Clean">
<CallTarget Targets="Base:Clean;GUIBase:Clean;ApplicationBase:Clean;Contactos_model:Clean;Contactos_data:Clean;Contactos_controller:Clean;Contactos_view:Clean;Articulos_data:Clean;Articulos_controller:Clean;Articulos_view:Clean;ContratosCliente_model:Clean;ContratosCliente_data:Clean;ContratosCliente_controller:Clean;ConCli_AlbCli_relation:Clean;ConCli_FacCli_relation:Clean;PreCli_ConCli_relation:Clean;ConCli_RecCli_relation:Clean;ConCli_PedProv_relation:Clean;ContratosCliente_view:Clean;ContratosCliente_plugin:Clean;FactuGES:Clean;FactuGES_Server:Clean;PresupuestosCliente_view:Clean;PedidosProveedor_controller:Clean;PedidosProveedor_view:Clean;PedidosProveedor_plugin:Clean;FacturasProveedor_controller:Clean;FacturasProveedor_plugin:Clean;RecibosCliente_view:Clean;FacturasCliente_controller:Clean;FacturasCliente_view:Clean" /> <CallTarget Targets="Base:Clean;GUIBase:Clean;ApplicationBase:Clean;Contactos_model:Clean;Contactos_data:Clean;Contactos_controller:Clean;Contactos_view:Clean;Articulos_data:Clean;Articulos_controller:Clean;Articulos_view:Clean;ContratosCliente_model:Clean;ContratosCliente_data:Clean;ContratosCliente_controller:Clean;ConCli_AlbCli_relation:Clean;ConCli_FacCli_relation:Clean;PreCli_ConCli_relation:Clean;ConCli_RecCli_relation:Clean;ConCli_PedProv_relation:Clean;ContratosCliente_view:Clean;ContratosCliente_plugin:Clean;FactuGES:Clean;FactuGES_Server:Clean;PresupuestosCliente_view:Clean;PedidosProveedor_controller:Clean;PedidosProveedor_view:Clean;PedidosProveedor_plugin:Clean;FacturasProveedor_controller:Clean;FacturasProveedor_plugin:Clean;RecibosCliente_view:Clean;FacturasCliente_controller:Clean;FacturasCliente_view:Clean;PresupuestosCliente_controller:Clean" />
</Target> </Target>
<Target Name="Make"> <Target Name="Make">
<CallTarget Targets="Base:Make;GUIBase:Make;ApplicationBase:Make;Contactos_model:Make;Contactos_data:Make;Contactos_controller:Make;Contactos_view:Make;Articulos_data:Make;Articulos_controller:Make;Articulos_view:Make;ContratosCliente_model:Make;ContratosCliente_data:Make;ContratosCliente_controller:Make;ConCli_AlbCli_relation:Make;ConCli_FacCli_relation:Make;PreCli_ConCli_relation:Make;ConCli_RecCli_relation:Make;ConCli_PedProv_relation:Make;ContratosCliente_view:Make;ContratosCliente_plugin:Make;FactuGES:Make;FactuGES_Server:Make;PresupuestosCliente_view:Make;PedidosProveedor_controller:Make;PedidosProveedor_view:Make;PedidosProveedor_plugin:Make;FacturasProveedor_controller:Make;FacturasProveedor_plugin:Make;RecibosCliente_view:Make;FacturasCliente_controller:Make;FacturasCliente_view:Make" /> <CallTarget Targets="Base:Make;GUIBase:Make;ApplicationBase:Make;Contactos_model:Make;Contactos_data:Make;Contactos_controller:Make;Contactos_view:Make;Articulos_data:Make;Articulos_controller:Make;Articulos_view:Make;ContratosCliente_model:Make;ContratosCliente_data:Make;ContratosCliente_controller:Make;ConCli_AlbCli_relation:Make;ConCli_FacCli_relation:Make;PreCli_ConCli_relation:Make;ConCli_RecCli_relation:Make;ConCli_PedProv_relation:Make;ContratosCliente_view:Make;ContratosCliente_plugin:Make;FactuGES:Make;FactuGES_Server:Make;PresupuestosCliente_view:Make;PedidosProveedor_controller:Make;PedidosProveedor_view:Make;PedidosProveedor_plugin:Make;FacturasProveedor_controller:Make;FacturasProveedor_plugin:Make;RecibosCliente_view:Make;FacturasCliente_controller:Make;FacturasCliente_view:Make;PresupuestosCliente_controller:Make" />
</Target> </Target>
<Import Condition="Exists('$(MSBuildBinPath)\Borland.Group.Targets')" Project="$(MSBuildBinPath)\Borland.Group.Targets" /> <Import Condition="Exists('$(MSBuildBinPath)\Borland.Group.Targets')" Project="$(MSBuildBinPath)\Borland.Group.Targets" />
</Project> </Project>

View File

@ -859,9 +859,7 @@ begin
ACadena := AppFactuGES.Configuracion.GetSettingAsString(teBD, CTE_CALIDADES_COCINA); ACadena := AppFactuGES.Configuracion.GetSettingAsString(teBD, CTE_CALIDADES_COCINA);
if (ACadena <> '') then if (ACadena <> '') then
AContrato.CALIDADES.Add(ACadena); AContrato.CALIDADES.Add(ACadena);
(Self.DetallesController as IDetallesContratoClienteController).AnadirCapitulo(TIPO_CAPITULO_C, 'MUEBLES DE COCINA ', False, AContrato.Detalles); (Self.DetallesController as IDetallesContratoClienteController).AnadirCapitulo(TIPO_CAPITULO_C, 'MUEBLES DE COCINA ', true, AContrato.Detalles);
(Self.DetallesController as IDetallesContratoClienteController).AnadirCapitulo(TIPO_CAPITULO_V, 'IMPORTES ', True, AContrato.Detalles);
(Self.DetallesController as IDetallesContratoClienteController).AnadirCapitulo(TIPO_CAPITULO_V, 'AUMENTO POR ', False, AContrato.Detalles);
end; end;
teArmario: teArmario:
begin begin
@ -891,7 +889,6 @@ begin
if (ACadena <> '') then if (ACadena <> '') then
AContrato.CALIDADES.Add(ACadena); AContrato.CALIDADES.Add(ACadena);
(Self.DetallesController as IDetallesContratoClienteController).AnadirCapitulo(TIPO_CAPITULO_B, 'MUEBLE DE BAÑO Nº ', true, AContrato.Detalles); (Self.DetallesController as IDetallesContratoClienteController).AnadirCapitulo(TIPO_CAPITULO_B, 'MUEBLE DE BAÑO Nº ', true, AContrato.Detalles);
(Self.DetallesController as IDetallesContratoClienteController).AnadirCapitulo(TIPO_CAPITULO_V, 'IMPORTES ', True, AContrato.Detalles);
end; end;
teElectrodomestico: teElectrodomestico:
begin begin

View File

@ -3,7 +3,7 @@ unit schContratosClienteClient_Intf;
interface interface
uses uses
Classes, DB, SysUtils, uROClasses, uDAInterfaces, uDADataTable, FmtBCD, uROXMLIntf; Classes, DB, schBase_Intf, SysUtils, uROClasses, uDAInterfaces, uDADataTable, FmtBCD, uROXMLIntf;
const const
{ Data table rules ids { Data table rules ids
@ -279,7 +279,7 @@ type
end; end;
{ TValoresDataTableRules } { TValoresDataTableRules }
TValoresDataTableRules = class(TDADataTableRules, IValores) TValoresDataTableRules = class(TIntfObjectDADataTableRules, IValores)
private private
protected protected
{ Property getters and setters } { Property getters and setters }
@ -338,7 +338,7 @@ type
end; end;
{ TPropiedadesDataTableRules } { TPropiedadesDataTableRules }
TPropiedadesDataTableRules = class(TDADataTableRules, IPropiedades) TPropiedadesDataTableRules = class(TIntfObjectDADataTableRules, IPropiedades)
private private
protected protected
{ Property getters and setters } { Property getters and setters }
@ -385,7 +385,7 @@ type
end; end;
{ TListaAnosContratosDataTableRules } { TListaAnosContratosDataTableRules }
TListaAnosContratosDataTableRules = class(TDADataTableRules, IListaAnosContratos) TListaAnosContratosDataTableRules = class(TIntfObjectDADataTableRules, IListaAnosContratos)
private private
protected protected
{ Property getters and setters } { Property getters and setters }
@ -504,7 +504,7 @@ type
end; end;
{ TContratosClienteBeneficiosDataTableRules } { TContratosClienteBeneficiosDataTableRules }
TContratosClienteBeneficiosDataTableRules = class(TDADataTableRules, IContratosClienteBeneficios) TContratosClienteBeneficiosDataTableRules = class(TIntfObjectDADataTableRules, IContratosClienteBeneficios)
private private
protected protected
{ Property getters and setters } { Property getters and setters }
@ -929,7 +929,7 @@ type
end; end;
{ TContratosClienteDataTableRules } { TContratosClienteDataTableRules }
TContratosClienteDataTableRules = class(TDADataTableRules, IContratosCliente) TContratosClienteDataTableRules = class(TIntfObjectDADataTableRules, IContratosCliente)
private private
f_FORMA_PAGO: IROStrings; f_FORMA_PAGO: IROStrings;
f_PLAZO_ENTREGA: IROStrings; f_PLAZO_ENTREGA: IROStrings;
@ -1315,7 +1315,7 @@ type
end; end;
{ TTiposCapitulosDataTableRules } { TTiposCapitulosDataTableRules }
TTiposCapitulosDataTableRules = class(TDADataTableRules, ITiposCapitulos) TTiposCapitulosDataTableRules = class(TIntfObjectDADataTableRules, ITiposCapitulos)
private private
protected protected
{ Property getters and setters } { Property getters and setters }
@ -1476,7 +1476,7 @@ type
end; end;
{ TContratosCliente_DetallesDataTableRules } { TContratosCliente_DetallesDataTableRules }
TContratosCliente_DetallesDataTableRules = class(TDADataTableRules, IContratosCliente_Detalles) TContratosCliente_DetallesDataTableRules = class(TIntfObjectDADataTableRules, IContratosCliente_Detalles)
private private
protected protected
{ Property getters and setters } { Property getters and setters }

View File

@ -40,6 +40,7 @@ end;
procedure TBizDetallesContratoCliente.OnNewRecord(Sender: TDADataTable); procedure TBizDetallesContratoCliente.OnNewRecord(Sender: TDADataTable);
begin begin
inherited; inherited;
CANTIDAD := 1;
VISIBLE := 1; VISIBLE := 1;
VISIBLE2 := 1; VISIBLE2 := 1;
end; end;

View File

@ -204,8 +204,9 @@ object RptContratosCliente: TRptContratosCliente
'IENTE.MOVIL,'#10' V_CONTRATOS_CLIENTE.IMPORTE_IVA, V_CONTRATOS_CL' + 'IENTE.MOVIL,'#10' V_CONTRATOS_CLIENTE.IMPORTE_IVA, V_CONTRATOS_CL' +
'IENTE.IMPORTE_TOTAL,'#10' V_CONTRATOS_CLIENTE.PERSONA_CONTACTO,'#10' ' + 'IENTE.IMPORTE_TOTAL,'#10' V_CONTRATOS_CLIENTE.PERSONA_CONTACTO,'#10' ' +
' V_CONTRATOS_CLIENTE.VENDEDOR,'#10' V_CONTRATOS_CLIENTE.TIPO_CO' + ' V_CONTRATOS_CLIENTE.VENDEDOR,'#10' V_CONTRATOS_CLIENTE.TIPO_CO' +
'NTRATO,'#10' V_CONTRATOS_CLIENTE.CONDICIONES'#10'FROM'#10' V_CONTRATOS' + 'NTRATO,'#10' V_CONTRATOS_CLIENTE.CONDICIONES,'#10' V_CONTRATOS_CLI' +
'_CLIENTE'#10'WHERE'#10' V_CONTRATOS_CLIENTE.ID = :ID'#10 'ENTE.LOPD'#10'FROM'#10' V_CONTRATOS_CLIENTE'#10'WHERE'#10' V_CONTRATOS_CLI' +
'ENTE.ID = :ID'#10
StatementType = stSQL StatementType = stSQL
ColumnMappings = < ColumnMappings = <
item item
@ -335,14 +336,14 @@ object RptContratosCliente: TRptContratosCliente
item item
DatasetField = 'CALIDADES' DatasetField = 'CALIDADES'
TableField = 'CALIDADES' TableField = 'CALIDADES'
end
item
DatasetField = 'LOPD'
TableField = 'LOPD'
end> end>
end> end>
Name = 'Informe_Cabecera' Name = 'Informe_Cabecera'
Fields = < Fields = <
item
Name = 'CALIDADES'
DataType = datMemo
end
item item
Name = 'ID' Name = 'ID'
DataType = datInteger DataType = datInteger
@ -372,6 +373,10 @@ object RptContratosCliente: TRptContratosCliente
Name = 'OBSERVACIONES' Name = 'OBSERVACIONES'
DataType = datMemo DataType = datMemo
end end
item
Name = 'CALIDADES'
DataType = datMemo
end
item item
Name = 'IMPORTE_NETO' Name = 'IMPORTE_NETO'
DataType = datCurrency DataType = datCurrency
@ -479,6 +484,10 @@ object RptContratosCliente: TRptContratosCliente
item item
Name = 'CONDICIONES' Name = 'CONDICIONES'
DataType = datMemo DataType = datMemo
end
item
Name = 'LOPD'
DataType = datSmallInt
end> end>
ReadOnly = True ReadOnly = True
end end
@ -1082,6 +1091,10 @@ object RptContratosCliente: TRptContratosCliente
Name = 'OBSERVACIONES' Name = 'OBSERVACIONES'
DataType = datMemo DataType = datMemo
end end
item
Name = 'CALIDADES'
DataType = datMemo
end
item item
Name = 'IMPORTE_NETO' Name = 'IMPORTE_NETO'
DataType = datCurrency DataType = datCurrency
@ -1189,6 +1202,10 @@ object RptContratosCliente: TRptContratosCliente
item item
Name = 'CONDICIONES' Name = 'CONDICIONES'
DataType = datMemo DataType = datMemo
end
item
Name = 'LOPD'
DataType = datSmallInt
end> end>
Params = < Params = <
item item

View File

@ -2583,12 +2583,12 @@ inherited fEditorContratosCliente: TfEditorContratosCliente
Instruction.Icon = tdiCustom Instruction.Icon = tdiCustom
CustomButtons = < CustomButtons = <
item item
Caption = 'Previsualizar el contrato/s seleccionado/s' Caption = 'Previsualizar el presupuesto/s seleccionado/s'
Value = 100 Value = 100
Default = True Default = True
end end
item item
Caption = 'Previsualizar la lista de contratos actual' Caption = 'Previsualizar la lista de presupuestos actual'
Value = 200 Value = 200
end> end>
ButtonBar.Buttons = [cbCancel] ButtonBar.Buttons = [cbCancel]
@ -2894,12 +2894,12 @@ inherited fEditorContratosCliente: TfEditorContratosCliente
Instruction.Icon = tdiCustom Instruction.Icon = tdiCustom
CustomButtons = < CustomButtons = <
item item
Caption = 'Imprimir el contrato/s seleccionado/s' Caption = 'Imprimir el presupuesto/s seleccionado/s'
Value = 100 Value = 100
Default = True Default = True
end end
item item
Caption = 'Imprimir la lista de contratos actual' Caption = 'Imprimir la lista de presupuestos actual'
Value = 200 Value = 200
end> end>
ButtonBar.Buttons = [cbCancel] ButtonBar.Buttons = [cbCancel]

View File

@ -4,8 +4,9 @@ inherited frViewContratosCliente: TfrViewContratosCliente
ExplicitWidth = 903 ExplicitWidth = 903
ExplicitHeight = 525 ExplicitHeight = 525
inherited cxGrid: TcxGrid inherited cxGrid: TcxGrid
Top = 130
Width = 903 Width = 903
Height = 397 Height = 369
RootLevelOptions.DetailTabsPosition = dtpTop RootLevelOptions.DetailTabsPosition = dtpTop
OnActiveTabChanged = cxGridActiveTabChanged OnActiveTabChanged = cxGridActiveTabChanged
ExplicitWidth = 903 ExplicitWidth = 903
@ -172,40 +173,71 @@ inherited frViewContratosCliente: TfrViewContratosCliente
end end
inherited frViewFiltroBase1: TfrViewFiltroBase inherited frViewFiltroBase1: TfrViewFiltroBase
Width = 903 Width = 903
Height = 130
ExplicitWidth = 903 ExplicitWidth = 903
ExplicitHeight = 130
inherited TBXDockablePanel1: TTBXDockablePanel inherited TBXDockablePanel1: TTBXDockablePanel
ExplicitWidth = 903 ExplicitWidth = 903
inherited dxLayoutControl1: TdxLayoutControl inherited dxLayoutControl1: TdxLayoutControl
Width = 903 Width = 903
Height = 100
ExplicitWidth = 903 ExplicitWidth = 903
inherited txtFiltroTodo: TcxTextEdit inherited txtFiltroTodo: TcxTextEdit
Style.LookAndFeel.SkinName = '' Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = '' StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = '' StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = '' StyleHot.LookAndFeel.SkinName = ''
ExplicitWidth = 806
Width = 806
end end
inherited edtFechaIniFiltro: TcxDateEdit inherited edtFechaIniFiltro: TcxDateEdit
Style.LookAndFeel.SkinName = '' Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = '' StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = '' StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = '' StyleHot.LookAndFeel.SkinName = ''
ExplicitWidth = 285 ExplicitWidth = 200
Width = 285 Width = 200
end end
inherited edtFechaFinFiltro: TcxDateEdit inherited edtFechaFinFiltro: TcxDateEdit
Left = 389 Left = 333
Style.LookAndFeel.SkinName = '' Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = '' StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = '' StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = '' StyleHot.LookAndFeel.SkinName = ''
ExplicitLeft = 389 ExplicitLeft = 333
ExplicitWidth = 504 end
Width = 504 inherited edtFecha2FinFiltro: TcxDateEdit
Left = 333
Enabled = True
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
ExplicitLeft = 333
ExplicitWidth = 200
Width = 200
end
inherited edtFecha2IniFiltro: TcxDateEdit
Enabled = True
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
ExplicitWidth = 200
Width = 200
end
inherited dxLayoutControl1Group_Root: TdxLayoutGroup
inherited dxLayoutControl1Group1: TdxLayoutGroup
inherited dxLayoutControl1Group4: TdxLayoutGroup
Enabled = True
Visible = True
inherited dxLayoutControl1Item5: TdxLayoutItem
Caption = 'Entre fecha decisi'#243'n:'
end
end
end
end end
end end
inherited TBXAlignmentPanel1: TTBXAlignmentPanel inherited TBXAlignmentPanel1: TTBXAlignmentPanel
Top = 100
Width = 903 Width = 903
ExplicitWidth = 903 ExplicitWidth = 903
inherited tbxBotones: TTBXToolbar inherited tbxBotones: TTBXToolbar
@ -214,14 +246,6 @@ inherited frViewContratosCliente: TfrViewContratosCliente
end end
end end
end end
inherited dxLayoutLookAndFeelList1: TdxLayoutLookAndFeelList
Left = 56
end
inherited ActionList1: TActionList
inherited actQuitarFiltro: TAction
OnExecute = frViewFiltroBase1actQuitarFiltroExecute
end
end
end end
inherited pnlAgrupaciones: TTBXDockablePanel inherited pnlAgrupaciones: TTBXDockablePanel
Top = 499 Top = 499

View File

@ -120,10 +120,13 @@ procedure TfrViewContratosCliente.AnadirFiltroFechas;
var var
Columna: TcxGridDBColumn; Columna: TcxGridDBColumn;
Fecha1, Fecha2: Variant; Fecha1, Fecha2: Variant;
FechaDecision1, FechaDecision2: Variant;
FFiltro : TcxFilterCriteriaItemList; FFiltro : TcxFilterCriteriaItemList;
begin begin
Fecha1 := frViewFiltroBase1.edtFechaIniFiltro.EditValue; Fecha1 := frViewFiltroBase1.edtFechaIniFiltro.EditValue;
Fecha2 := frViewFiltroBase1.edtFechaFinFiltro.EditValue; Fecha2 := frViewFiltroBase1.edtFechaFinFiltro.EditValue;
FechaDecision1 := frViewFiltroBase1.edtFecha2IniFiltro.EditValue;
FechaDecision2 := frViewFiltroBase1.edtFecha2FinFiltro.EditValue;
if not VarIsNull(Fecha1) if not VarIsNull(Fecha1)
and not VarIsNull(Fecha2) then and not VarIsNull(Fecha2) then
@ -134,6 +137,17 @@ begin
Columna := (cxGridView as TcxGridDBTableView).GetColumnByFieldName('FECHA_CONTRATO'); Columna := (cxGridView as TcxGridDBTableView).GetColumnByFieldName('FECHA_CONTRATO');
FFiltro.AddItem(Columna, foBetween, varArrayOf([Fecha1, Fecha2]), VarToStr(Fecha1) + ' and ' + VarToStr(Fecha2)); FFiltro.AddItem(Columna, foBetween, varArrayOf([Fecha1, Fecha2]), VarToStr(Fecha1) + ' and ' + VarToStr(Fecha2));
end; end;
if not VarIsNull(FechaDecision1)
and not VarIsNull(FechaDecision2) then
begin
cxGridView.DataController.Filter.Options := [fcoCaseInsensitive, fcoSoftCompare];
FFiltro := AddFilterGrid(fboAnd);
Columna := (cxGridView as TcxGridDBTableView).GetColumnByFieldName('FECHA_DECISION');
FFiltro.AddItem(Columna, foBetween, varArrayOf([FechaDecision1, FechaDecision2]), VarToStr(FechaDecision1) + ' and ' + VarToStr(FechaDecision2));
end;
end; end;
procedure TfrViewContratosCliente.AnadirFiltroSituaciones; procedure TfrViewContratosCliente.AnadirFiltroSituaciones;

View File

@ -61,6 +61,7 @@ inherited frViewDetallesContratoCliente: TfrViewDetallesContratoCliente
end end
inherited TBXDock1: TTBXDock inherited TBXDock1: TTBXDock
inherited TBXToolbar1: TTBXToolbar inherited TBXToolbar1: TTBXToolbar
DockPos = 0
object TBXSubmenuItem1: TTBXSubmenuItem [0] object TBXSubmenuItem1: TTBXSubmenuItem [0]
Caption = 'A'#241'adir cap'#237'tulo' Caption = 'A'#241'adir cap'#237'tulo'
DisplayMode = nbdmImageAndText DisplayMode = nbdmImageAndText
@ -74,6 +75,9 @@ inherited frViewDetallesContratoCliente: TfrViewDetallesContratoCliente
end end
object TBXSeparatorItem10: TTBXSeparatorItem object TBXSeparatorItem10: TTBXSeparatorItem
end end
object TBXItem23: TTBXItem
Action = actCapituloEncimeras
end
object TBXItem19: TTBXItem object TBXItem19: TTBXItem
Action = actCapituloElectrodomesticos Action = actCapituloElectrodomesticos
Caption = 'Cap'#237'tulo de electrodom'#233'sticos' Caption = 'Cap'#237'tulo de electrodom'#233'sticos'
@ -232,6 +236,11 @@ inherited frViewDetallesContratoCliente: TfrViewDetallesContratoCliente
Caption = 'Cap'#237'tulo de obra' Caption = 'Cap'#237'tulo de obra'
OnExecute = actCapituloObraExecute OnExecute = actCapituloObraExecute
end end
object actCapituloEncimeras: TAction
Category = 'Operaciones'
Caption = 'Cap'#237'tulo de encimeras'
OnExecute = actCapituloEncimerasExecute
end
end end
inherited cxStyleRepository: TcxStyleRepository inherited cxStyleRepository: TcxStyleRepository
inherited cxStyle_IMPORTETOTAL: TcxStyle inherited cxStyle_IMPORTETOTAL: TcxStyle

View File

@ -58,6 +58,8 @@ type
actCapituloObra: TAction; actCapituloObra: TAction;
TBXItem22: TTBXItem; TBXItem22: TTBXItem;
cxLookupComboBox2: TcxLookupComboBox; cxLookupComboBox2: TcxLookupComboBox;
actCapituloEncimeras: TAction;
TBXItem23: TTBXItem;
procedure actAsignarDescuentoExecute(Sender: TObject); procedure actAsignarDescuentoExecute(Sender: TObject);
procedure actAsignarDescuentoUpdate(Sender: TObject); procedure actAsignarDescuentoUpdate(Sender: TObject);
procedure CustomViewShow(Sender: TObject); procedure CustomViewShow(Sender: TObject);
@ -77,6 +79,7 @@ type
procedure CustomViewDestroy(Sender: TObject); procedure CustomViewDestroy(Sender: TObject);
procedure actCapituloObraExecute(Sender: TObject); procedure actCapituloObraExecute(Sender: TObject);
procedure cxLookupComboBox1PropertiesEditValueChanged(Sender: TObject); procedure cxLookupComboBox1PropertiesEditValueChanged(Sender: TObject);
procedure actCapituloEncimerasExecute(Sender: TObject);
private private
procedure AnadirCapitulo(const Tipo: String;const Descripcion: String; const Descuento:Boolean = false); procedure AnadirCapitulo(const Tipo: String;const Descripcion: String; const Descuento:Boolean = false);
@ -183,9 +186,7 @@ end;
procedure TfrViewDetallesContratoCliente.actCapituloCocinaExecute(Sender: TObject); procedure TfrViewDetallesContratoCliente.actCapituloCocinaExecute(Sender: TObject);
begin begin
AnadirCapitulo(TIPO_CAPITULO_C, 'MUEBLES DE COCINA '); AnadirCapitulo(TIPO_CAPITULO_C, 'MUEBLES DE COCINA ', true);
AnadirCapitulo(TIPO_CAPITULO_V, 'IMPORTES ', True);
AnadirCapitulo(TIPO_CAPITULO_V, 'AUMENTO POR ');
end; end;
procedure TfrViewDetallesContratoCliente.actCapituloElectrodomesticosExecute(Sender: TObject); procedure TfrViewDetallesContratoCliente.actCapituloElectrodomesticosExecute(Sender: TObject);
@ -193,6 +194,13 @@ begin
AnadirCapitulo(TIPO_CAPITULO_E, 'ELECTRODOMÉSTICOS ', true); AnadirCapitulo(TIPO_CAPITULO_E, 'ELECTRODOMÉSTICOS ', true);
end; end;
procedure TfrViewDetallesContratoCliente.actCapituloEncimerasExecute(
Sender: TObject);
begin
inherited;
AnadirCapitulo(TIPO_CAPITULO_V, 'ENCIMERAS ', true);
end;
procedure TfrViewDetallesContratoCliente.actCapituloImportesExecute(Sender: TObject); procedure TfrViewDetallesContratoCliente.actCapituloImportesExecute(Sender: TObject);
begin begin
AnadirCapitulo(TIPO_CAPITULO_V, 'IMPORTES ', true); AnadirCapitulo(TIPO_CAPITULO_V, 'IMPORTES ', true);

View File

@ -1051,12 +1051,15 @@ begin
if not Assigned(AFactura) then if not Assigned(AFactura) then
raise Exception.Create ('Factura no asignado: EsModificable'); raise Exception.Create ('Factura no asignado: EsModificable');
{
if (AFactura.SITUACION <> CTE_PENDIENTE) then if (AFactura.SITUACION <> CTE_PENDIENTE) then
begin begin
Result := False; Result := False;
AComentario := 'La factura esta parcial o totalmente pagada, por lo que no puede ser modificada'; AComentario := 'La factura esta parcial o totalmente pagada, por lo que no puede ser modificada';
end end
else if (AFactura.ESTADO_EJERCICIO = CTE_CERRADO) then else
}
if (AFactura.ESTADO_EJERCICIO = CTE_CERRADO) then
begin begin
Result := False; Result := False;
AComentario := 'La factura tiene un asiento asociado en la parte contable cuyo ejercicio esta cerrado, por lo que no puede ser modificada'; AComentario := 'La factura tiene un asiento asociado en la parte contable cuyo ejercicio esta cerrado, por lo que no puede ser modificada';

View File

@ -139,32 +139,44 @@ inherited fEditorFacturaCliente: TfEditorFacturaCliente
end end
inherited edtlNombre: TcxDBTextEdit inherited edtlNombre: TcxDBTextEdit
DataBinding.DataSource = dsDataTable DataBinding.DataSource = dsDataTable
Enabled = True
Properties.ReadOnly = False
ExplicitWidth = 276 ExplicitWidth = 276
Width = 276 Width = 276
end end
inherited edtNIFCIF: TcxDBTextEdit inherited edtNIFCIF: TcxDBTextEdit
DataBinding.DataSource = dsDataTable DataBinding.DataSource = dsDataTable
Enabled = True
Properties.ReadOnly = False
ExplicitWidth = 276 ExplicitWidth = 276
Width = 276 Width = 276
end end
inherited edtCalle: TcxDBTextEdit inherited edtCalle: TcxDBTextEdit
DataBinding.DataSource = dsDataTable DataBinding.DataSource = dsDataTable
Enabled = True
Properties.ReadOnly = False
ExplicitWidth = 276 ExplicitWidth = 276
Width = 276 Width = 276
end end
inherited edtPoblacion: TcxDBTextEdit inherited edtPoblacion: TcxDBTextEdit
DataBinding.DataSource = dsDataTable DataBinding.DataSource = dsDataTable
Enabled = True
Properties.ReadOnly = False
ExplicitWidth = 158 ExplicitWidth = 158
Width = 158 Width = 158
end end
inherited edtProvincia: TcxDBTextEdit inherited edtProvincia: TcxDBTextEdit
DataBinding.DataSource = dsDataTable DataBinding.DataSource = dsDataTable
Enabled = True
Properties.ReadOnly = False
ExplicitWidth = 276 ExplicitWidth = 276
Width = 276 Width = 276
end end
inherited edtCodigoPostal: TcxDBTextEdit inherited edtCodigoPostal: TcxDBTextEdit
Left = 244 Left = 244
DataBinding.DataSource = dsDataTable DataBinding.DataSource = dsDataTable
Enabled = True
Properties.ReadOnly = False
ExplicitLeft = 244 ExplicitLeft = 244
end end
inherited Button3: TBitBtn inherited Button3: TBitBtn

View File

@ -104,7 +104,8 @@ begin
inherited; inherited;
if (Sender as TAction).Enabled then if (Sender as TAction).Enabled then
(Sender as TAction).Enabled := (FFactura.SITUACION = 'PENDIENTE') and (Sender as TAction).Enabled := (FFactura.SITUACION = 'PENDIENTE') and
(AppFactuGES.UsuarioActivo.ID_PERFIL = CTE_PERFIL_ADMINISTRADOR); ((AppFactuGES.UsuarioActivo.ID_PERFIL = CTE_PERFIL_ADMINISTRADOR)
or (AppFactuGES.UsuarioActivo.ID_PERFIL = CTE_PREFIL_GERENCIA))
end; end;
constructor TfEditorFacturaCliente.Create(AOwner: TComponent); constructor TfEditorFacturaCliente.Create(AOwner: TComponent);

View File

@ -80,11 +80,15 @@ inherited fEditorFacturasCliente: TfEditorFacturasCliente
Left = 431 Left = 431
Visible = True Visible = True
ExplicitLeft = 431 ExplicitLeft = 431
ExplicitWidth = 83 ExplicitWidth = 195
object TBXItem42: TTBXItem object TBXItem42: TTBXItem
Action = actCambiarSituacion Action = actCambiarSituacion
DisplayMode = nbdmImageAndText DisplayMode = nbdmImageAndText
end end
object TBXItem43: TTBXItem
Action = actVerPresupuesto
DisplayMode = nbdmImageAndText
end
object TBXSeparatorItem17: TTBXSeparatorItem object TBXSeparatorItem17: TTBXSeparatorItem
end end
object TBXItem40: TTBXItem object TBXItem40: TTBXItem
@ -217,19 +221,27 @@ inherited fEditorFacturasCliente: TfEditorFacturasCliente
StyleDisabled.LookAndFeel.SkinName = '' StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = '' StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = '' StyleHot.LookAndFeel.SkinName = ''
ExplicitWidth = 144
Width = 144
end end
inherited edtFechaFinFiltro: TcxDateEdit inherited edtFechaFinFiltro: TcxDateEdit
Left = 301
Style.LookAndFeel.SkinName = '' Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = '' StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = '' StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = '' StyleHot.LookAndFeel.SkinName = ''
ExplicitLeft = 301
ExplicitWidth = 263 ExplicitWidth = 263
Width = 263 Width = 263
end end
inherited edtFecha2FinFiltro: TcxDateEdit
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
end
inherited edtFecha2IniFiltro: TcxDateEdit
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
end
end end
inherited TBXAlignmentPanel1: TTBXAlignmentPanel inherited TBXAlignmentPanel1: TTBXAlignmentPanel
Width = 640 Width = 640
@ -318,6 +330,13 @@ inherited fEditorFacturasCliente: TfEditorFacturasCliente
Visible = False Visible = False
OnExecute = actCambiarSituacionExecute OnExecute = actCambiarSituacionExecute
end end
object actVerPresupuesto: TAction
Category = 'Archivo'
Caption = 'Ver presupuesto'
ImageIndex = 27
OnExecute = actVerPresupuestoExecute
OnUpdate = actVerPresupuestoUpdate
end
end end
inherited SmallImages: TPngImageList [5] inherited SmallImages: TPngImageList [5]
PngImages = < PngImages = <
@ -1084,6 +1103,26 @@ inherited fEditorFacturasCliente: TfEditorFacturasCliente
AE426082} AE426082}
Name = 'PngImage26' Name = 'PngImage26'
Background = clWindow Background = clWindow
end
item
PngImage.Data = {
89504E470D0A1A0A0000000D49484452000000100000001008060000001FF3FF
610000000970485973000017120000171201679FD252000001774944415478DA
63FCFFFF3FC384055BFF3390010A12BC1919610600394469FAF3F71FC3EF3F7F
192CBCB3192EEE99856A80C35E4B14C5079C8F836964F1ED368718662EDFC530
7FC9464C03F0815FBFFF826D06D10BD7EDC36E00BA0BB0815586BB18966D3A84
DB0098B341E01F50EECF9F7F709B034F3B312CD3DDC1B06ADB11FC06C05CB2CB
EE0883DB211BB8CD61E7DD18166A6E6558BFEB387E03D06DFEFDE70F981F75D9
8361AEEA2686CDFB4EE136609FD33106A77D56605BD79BEE033B1B044036C75F
F76698AEB88161E7A133B80D00391BDDE69FBFFE30FC028AA5DFF567E8975CCD
70F0D4454C0372623D195C0E58A384F862ED6D0CB157BDC0EC2972EB18721E05
317489AE643876EE32A601E9916E605BFEFCFE07B639E2A23BC37CF52D60B1DF
BF21B8F0792843ABE03286D397AE611A9018EA0CD70CF202CC6674D0C0BB98E1
C2B59B9806C40638C23583FC8D6CF36F688C80F0BF7FFF192EDDB8856940848F
2DC38A2D8789CE89180680044805200300115980F04CC063740000000049454E
44AE426082}
Name = 'PngImage27'
Background = clWindow
end> end>
Left = 395 Left = 395
Bitmap = {} Bitmap = {}
@ -1914,10 +1953,7 @@ inherited fEditorFacturasCliente: TfEditorFacturasCliente
Caption = '-' Caption = '-'
end end
object Cambiarlasituacin1: TMenuItem [9] object Cambiarlasituacin1: TMenuItem [9]
Caption = 'Cambiar la situaci'#243'n' Action = actCambiarSituacion
Hint =
'Cambiar la situaci'#243'n de la factura seleccionada (Pendiente/Pagad' +
'a)'
end end
end end
object JsNuevaFacturaDialog: TJSDialog object JsNuevaFacturaDialog: TJSDialog

View File

@ -41,6 +41,8 @@ type
TBXItem42: TTBXItem; TBXItem42: TTBXItem;
TBXSeparatorItem17: TTBXSeparatorItem; TBXSeparatorItem17: TTBXSeparatorItem;
JsListaFacturasNoModificadas: TJSDialog; JsListaFacturasNoModificadas: TJSDialog;
actVerPresupuesto: TAction;
TBXItem43: TTBXItem;
procedure FormShow(Sender: TObject); procedure FormShow(Sender: TObject);
procedure actEliminarUpdate(Sender: TObject); procedure actEliminarUpdate(Sender: TObject);
procedure actNuevaFacturaExecute(Sender: TObject); procedure actNuevaFacturaExecute(Sender: TObject);
@ -50,6 +52,8 @@ type
procedure actEnviarMailUpdate(Sender: TObject); procedure actEnviarMailUpdate(Sender: TObject);
procedure actEnviarMailExecute(Sender: TObject); procedure actEnviarMailExecute(Sender: TObject);
procedure actCambiarSituacionExecute(Sender: TObject); procedure actCambiarSituacionExecute(Sender: TObject);
procedure actVerPresupuestoExecute(Sender: TObject);
procedure actVerPresupuestoUpdate(Sender: TObject);
private private
FFacturas: IBizFacturaCliente; FFacturas: IBizFacturaCliente;
@ -157,7 +161,8 @@ begin
inherited; inherited;
if (Sender as TAction).Enabled then if (Sender as TAction).Enabled then
(Sender as TAction).Enabled := (FFacturas.SITUACION = 'PENDIENTE') and (Sender as TAction).Enabled := (FFacturas.SITUACION = 'PENDIENTE') and
(AppFactuGES.UsuarioActivo.ID_PERFIL = CTE_PERFIL_ADMINISTRADOR); ((AppFactuGES.UsuarioActivo.ID_PERFIL = CTE_PERFIL_ADMINISTRADOR)
or (AppFactuGES.UsuarioActivo.ID_PERFIL = CTE_PREFIL_GERENCIA))
end; end;
procedure TfEditorFacturasCliente.actEnviarMailExecute(Sender: TObject); procedure TfEditorFacturasCliente.actEnviarMailExecute(Sender: TObject);
@ -244,6 +249,18 @@ begin
end; end;
end; end;
procedure TfEditorFacturasCliente.actVerPresupuestoExecute(Sender: TObject);
begin
inherited;
//
end;
procedure TfEditorFacturasCliente.actVerPresupuestoUpdate(Sender: TObject);
begin
inherited;
//
end;
constructor TfEditorFacturasCliente.Create(AOwner: TComponent); constructor TfEditorFacturasCliente.Create(AOwner: TComponent);
begin begin
inherited; inherited;

View File

@ -110,9 +110,9 @@ inherited fEditorFacturasProveedor: TfEditorFacturasProveedor
ExplicitHeight = 545 ExplicitHeight = 545
inherited cxGrid: TcxGrid inherited cxGrid: TcxGrid
Width = 640 Width = 640
Height = 417 Height = 389
ExplicitWidth = 640 ExplicitWidth = 640
ExplicitHeight = 417 ExplicitHeight = 389
inherited cxGridView: TcxGridDBTableView inherited cxGridView: TcxGridDBTableView
DataController.Summary.DefaultGroupSummaryItems = < DataController.Summary.DefaultGroupSummaryItems = <
item item
@ -180,26 +180,32 @@ inherited fEditorFacturasProveedor: TfEditorFacturasProveedor
StyleDisabled.LookAndFeel.SkinName = '' StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = '' StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = '' StyleHot.LookAndFeel.SkinName = ''
ExplicitWidth = 543 ExplicitWidth = 457
Width = 543 Width = 457
end end
inherited edtFechaIniFiltro: TcxDateEdit inherited edtFechaIniFiltro: TcxDateEdit
Style.LookAndFeel.SkinName = '' Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = '' StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = '' StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = '' StyleHot.LookAndFeel.SkinName = ''
ExplicitWidth = 263
Width = 263
end end
inherited edtFechaFinFiltro: TcxDateEdit inherited edtFechaFinFiltro: TcxDateEdit
Left = 367
Style.LookAndFeel.SkinName = '' Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = '' StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = '' StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = '' StyleHot.LookAndFeel.SkinName = ''
ExplicitLeft = 367 end
ExplicitWidth = 263 inherited edtFecha2FinFiltro: TcxDateEdit
Width = 263 Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
end
inherited edtFecha2IniFiltro: TcxDateEdit
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
end end
end end
inherited TBXAlignmentPanel1: TTBXAlignmentPanel inherited TBXAlignmentPanel1: TTBXAlignmentPanel
@ -1844,15 +1850,6 @@ inherited fEditorFacturasProveedor: TfEditorFacturasProveedor
inherited N2: TMenuItem inherited N2: TMenuItem
Visible = False Visible = False
end end
object N4: TMenuItem [8]
Caption = '-'
end
object Cambiarlasituacin1: TMenuItem [9]
Caption = 'Cambiar la situaci'#243'n'
Hint =
'Cambiar la situaci'#243'n de la factura seleccionada (Pendiente/Pagad' +
'a)'
end
end end
object JsNuevaFacturaDialog: TJSDialog object JsNuevaFacturaDialog: TJSDialog
Content.Strings = ( Content.Strings = (

View File

@ -17,8 +17,6 @@ uses
type type
TfEditorFacturasProveedor = class(TfEditorGridBase, IEditorFacturasProveedor) TfEditorFacturasProveedor = class(TfEditorGridBase, IEditorFacturasProveedor)
Cambiarlasituacin1: TMenuItem;
N4: TMenuItem;
JsNuevaFacturaDialog: TJSDialog; JsNuevaFacturaDialog: TJSDialog;
JsListaFacturasGeneradas: TJSDialog; JsListaFacturasGeneradas: TJSDialog;
frViewFacturasProveedor1: TfrViewFacturasProveedor; frViewFacturasProveedor1: TfrViewFacturasProveedor;

View File

@ -1,15 +1,17 @@
inherited frViewFacturasProveedor: TfrViewFacturasProveedor inherited frViewFacturasProveedor: TfrViewFacturasProveedor
Width = 531 Width = 955
Height = 432 Height = 604
ExplicitWidth = 531 ExplicitWidth = 955
ExplicitHeight = 432 ExplicitHeight = 604
inherited cxGrid: TcxGrid inherited cxGrid: TcxGrid
Width = 531 Top = 130
Height = 304 Width = 955
Height = 448
RootLevelOptions.DetailTabsPosition = dtpTop RootLevelOptions.DetailTabsPosition = dtpTop
OnActiveTabChanged = cxGridActiveTabChanged OnActiveTabChanged = cxGridActiveTabChanged
ExplicitWidth = 531 ExplicitTop = 130
ExplicitHeight = 304 ExplicitWidth = 955
ExplicitHeight = 448
inherited cxGridView: TcxGridDBTableView inherited cxGridView: TcxGridDBTableView
DataController.KeyFieldNames = 'ID' DataController.KeyFieldNames = 'ID'
DataController.Options = [dcoAnsiSort, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoGroupsAlwaysExpanded] DataController.Options = [dcoAnsiSort, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoGroupsAlwaysExpanded]
@ -191,61 +193,95 @@ inherited frViewFacturasProveedor: TfrViewFacturasProveedor
end end
end end
inherited frViewFiltroBase1: TfrViewFiltroBase inherited frViewFiltroBase1: TfrViewFiltroBase
Width = 531 Width = 955
ExplicitWidth = 531 Height = 130
ExplicitWidth = 955
ExplicitHeight = 130
inherited TBXDockablePanel1: TTBXDockablePanel inherited TBXDockablePanel1: TTBXDockablePanel
ExplicitWidth = 531 ExplicitWidth = 955
ExplicitHeight = 130
inherited dxLayoutControl1: TdxLayoutControl inherited dxLayoutControl1: TdxLayoutControl
Width = 531 Width = 955
ExplicitWidth = 531 Height = 100
ExplicitWidth = 955
ExplicitHeight = 100
inherited txtFiltroTodo: TcxTextEdit inherited txtFiltroTodo: TcxTextEdit
Style.LookAndFeel.SkinName = '' Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = '' StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = '' StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = '' StyleHot.LookAndFeel.SkinName = ''
ExplicitWidth = 434
Width = 434
end end
inherited edtFechaIniFiltro: TcxDateEdit inherited edtFechaIniFiltro: TcxDateEdit
Style.LookAndFeel.SkinName = '' Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = '' StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = '' StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = '' StyleHot.LookAndFeel.SkinName = ''
ExplicitWidth = 130 ExplicitWidth = 200
Width = 130 Width = 200
end end
inherited edtFechaFinFiltro: TcxDateEdit inherited edtFechaFinFiltro: TcxDateEdit
Left = 234 Left = 311
Style.LookAndFeel.SkinName = '' Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = '' StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = '' StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = '' StyleHot.LookAndFeel.SkinName = ''
ExplicitLeft = 234 ExplicitLeft = 311
ExplicitWidth = 287 end
Width = 287 inherited edtFecha2FinFiltro: TcxDateEdit
Left = 311
Enabled = True
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
ExplicitLeft = 311
ExplicitWidth = 200
Width = 200
end
inherited edtFecha2IniFiltro: TcxDateEdit
Enabled = True
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
ExplicitWidth = 200
Width = 200
end
inherited dxLayoutControl1Group_Root: TdxLayoutGroup
inherited dxLayoutControl1Group1: TdxLayoutGroup
inherited dxLayoutControl1Group4: TdxLayoutGroup
Enabled = True
Visible = True
inherited dxLayoutControl1Item5: TdxLayoutItem
Caption = 'Entre fecha vto:'
end
end
end
end end
end end
inherited TBXAlignmentPanel1: TTBXAlignmentPanel inherited TBXAlignmentPanel1: TTBXAlignmentPanel
Width = 531 Top = 100
ExplicitWidth = 531 Width = 955
ExplicitTop = 100
ExplicitWidth = 955
inherited tbxBotones: TTBXToolbar inherited tbxBotones: TTBXToolbar
Width = 521 Width = 945
ExplicitWidth = 521 ExplicitWidth = 945
end end
end end
end end
end end
inherited pnlAgrupaciones: TTBXDockablePanel inherited pnlAgrupaciones: TTBXDockablePanel
Top = 406 Top = 578
Visible = True Visible = True
ExplicitTop = 406 ExplicitTop = 578
ExplicitWidth = 531 ExplicitWidth = 955
inherited TBXAlignmentPanel1: TTBXAlignmentPanel inherited TBXAlignmentPanel1: TTBXAlignmentPanel
Width = 531 Width = 955
ExplicitWidth = 531 ExplicitWidth = 955
inherited TBXToolbar1: TTBXToolbar inherited TBXToolbar1: TTBXToolbar
Width = 521 Width = 945
ExplicitWidth = 521 ExplicitWidth = 945
object TBXSeparatorItem2: TTBXSeparatorItem object TBXSeparatorItem2: TTBXSeparatorItem
end end
object TBXItem3: TTBXItem object TBXItem3: TTBXItem
@ -674,7 +710,7 @@ inherited frViewFacturasProveedor: TfrViewFacturasProveedor
Background = clWindow Background = clWindow
end> end>
Left = 56 Left = 56
Top = 48 Top = 16
Bitmap = {} Bitmap = {}
end end
end end

View File

@ -137,20 +137,35 @@ procedure TfrViewFacturasProveedor.AnadirFiltroFechas;
var var
Columna: TcxGridDBColumn; Columna: TcxGridDBColumn;
Fecha1, Fecha2: Variant; Fecha1, Fecha2: Variant;
FechaVto1, FechaVto2: Variant;
FFiltro : TcxFilterCriteriaItemList; FFiltro : TcxFilterCriteriaItemList;
begin begin
Fecha1 := frViewFiltroBase1.edtFechaIniFiltro.EditValue; Fecha1 := frViewFiltroBase1.edtFechaIniFiltro.EditValue;
Fecha2 := frViewFiltroBase1.edtFechaFinFiltro.EditValue; Fecha2 := frViewFiltroBase1.edtFechaFinFiltro.EditValue;
FechaVto1 := frViewFiltroBase1.edtFecha2IniFiltro.EditValue;
FechaVto2 := frViewFiltroBase1.edtFecha2FinFiltro.EditValue;
if not VarIsNull(Fecha1) if not VarIsNull(Fecha1)
and not VarIsNull(Fecha2) then and not VarIsNull(Fecha2) then
begin begin
cxGridView.DataController.Filter.Options := [fcoCaseInsensitive, fcoSoftCompare]; cxGridView.DataController.Filter.Options := [fcoCaseInsensitive, fcoSoftCompare];
FFiltro := AddFilterGrid(fboAnd); FFiltro := AddFilterGrid(fboAnd);
Columna := (cxGridView as TcxGridDBTableView).GetColumnByFieldName('FECHA_VENCIMIENTO'); Columna := (cxGridView as TcxGridDBTableView).GetColumnByFieldName('FECHA_FACTURA');
FFiltro.AddItem(Columna, foBetween, varArrayOf([Fecha1, Fecha2]), VarToStr(Fecha1) + ' and ' + VarToStr(Fecha2)); FFiltro.AddItem(Columna, foBetween, varArrayOf([Fecha1, Fecha2]), VarToStr(Fecha1) + ' and ' + VarToStr(Fecha2));
end; end;
if not VarIsNull(FechaVto1)
and not VarIsNull(FechaVto2) then
begin
cxGridView.DataController.Filter.Options := [fcoCaseInsensitive, fcoSoftCompare];
FFiltro := AddFilterGrid(fboAnd);
Columna := (cxGridView as TcxGridDBTableView).GetColumnByFieldName('FECHA_VENCIMIENTO');
FFiltro.AddItem(Columna, foBetween, varArrayOf([FechaVto1, FechaVto2]), VarToStr(FechaVto1) + ' and ' + VarToStr(FechaVto2));
end;
end; end;
procedure TfrViewFacturasProveedor.AnadirFiltroSituaciones; procedure TfrViewFacturasProveedor.AnadirFiltroSituaciones;

View File

@ -38,13 +38,13 @@
<DelphiCompile Include="GestorInformes_view.dpk"> <DelphiCompile Include="GestorInformes_view.dpk">
<MainSource>MainSource</MainSource> <MainSource>MainSource</MainSource>
</DelphiCompile> </DelphiCompile>
<DCCReference Include="..\..\Facturas de cliente\ApplicationBase.dcp" /> <DCCReference Include="ApplicationBase.dcp" />
<DCCReference Include="..\..\Facturas de cliente\Base.dcp" /> <DCCReference Include="Base.dcp" />
<DCCReference Include="..\..\Facturas de cliente\Contactos_controller.dcp" /> <DCCReference Include="Contactos_controller.dcp" />
<DCCReference Include="..\..\Facturas de cliente\Contactos_model.dcp" /> <DCCReference Include="Contactos_model.dcp" />
<DCCReference Include="..\..\Facturas de cliente\Contactos_view.dcp" /> <DCCReference Include="Contactos_view.dcp" />
<DCCReference Include="..\..\Facturas de cliente\GestorInformes_controller.dcp" /> <DCCReference Include="GestorInformes_controller.dcp" />
<DCCReference Include="..\..\Facturas de cliente\GUIBase.dcp" /> <DCCReference Include="GUIBase.dcp" />
<DCCReference Include="uEditorInformeBase.pas"> <DCCReference Include="uEditorInformeBase.pas">
<Form>fEditorInformeBase</Form> <Form>fEditorInformeBase</Form>
<DesignClass>TForm</DesignClass> <DesignClass>TForm</DesignClass>

View File

@ -30,16 +30,18 @@ inherited fEditorInformeBase: TfEditorInformeBase
end end
object TBXMultiDockIzquierdo: TTBXMultiDock [3] object TBXMultiDockIzquierdo: TTBXMultiDock [3]
Left = 0 Left = 0
Top = 116 Top = 102
Width = 7 Width = 7
Height = 506 Height = 520
Position = dpLeft Position = dpLeft
ExplicitTop = 116
ExplicitHeight = 506
end end
object TBXMultiDockDerecho: TTBXMultiDock [4] object TBXMultiDockDerecho: TTBXMultiDock [4]
Left = 447 Left = 447
Top = 116 Top = 102
Width = 340 Width = 340
Height = 506 Height = 520
Position = dpRight Position = dpRight
object pnlParametros: TTBXDockablePanel object pnlParametros: TTBXDockablePanel
Left = 0 Left = 0
@ -60,16 +62,16 @@ inherited fEditorInformeBase: TfEditorInformeBase
Left = 0 Left = 0
Top = 0 Top = 0
Width = 336 Width = 336
Height = 467 Height = 482
Align = alClient Align = alClient
TabOrder = 0 TabOrder = 0
TabStop = False TabStop = False
AutoContentSizes = [acsWidth, acsHeight] AutoContentSizes = [acsWidth, acsHeight]
LookAndFeel = dxLayoutOfficeLookAndFeel1 LookAndFeel = dxLayoutOfficeLookAndFeel1
ExplicitHeight = 105 ExplicitHeight = 106
object TBXButton1: TTBXButton object TBXButton1: TTBXButton
Left = 11 Left = 11
Top = 432 Top = 447
Width = 121 Width = 121
Height = 24 Height = 24
Action = actRefrescar Action = actRefrescar

View File

@ -8,6 +8,7 @@ inherited fEditorInformeFacturasClientePendientesReport: TfEditorInformeFacturas
TextHeight = 13 TextHeight = 13
inherited JvNavPanelHeader: TJvNavPanelHeader inherited JvNavPanelHeader: TJvNavPanelHeader
Width = 895 Width = 895
ExplicitTop = 75
ExplicitWidth = 895 ExplicitWidth = 895
inherited Image1: TImage inherited Image1: TImage
Left = 868 Left = 868
@ -21,7 +22,7 @@ inherited fEditorInformeFacturasClientePendientesReport: TfEditorInformeFacturas
ExplicitWidth = 895 ExplicitWidth = 895
end end
inherited TBXToolbar1: TTBXToolbar inherited TBXToolbar1: TTBXToolbar
ExplicitWidth = 678 ExplicitWidth = 591
object TBXItem58: TTBXItem [0] object TBXItem58: TTBXItem [0]
Action = actRefrescar Action = actRefrescar
DisplayMode = nbdmImageAndText DisplayMode = nbdmImageAndText
@ -36,28 +37,29 @@ inherited fEditorInformeFacturasClientePendientesReport: TfEditorInformeFacturas
ExplicitWidth = 895 ExplicitWidth = 895
end end
inherited TBXMultiDockIzquierdo: TTBXMultiDock inherited TBXMultiDockIzquierdo: TTBXMultiDock
Height = 709 Height = 723
ExplicitHeight = 709 ExplicitTop = 102
ExplicitHeight = 723
end end
inherited TBXMultiDockDerecho: TTBXMultiDock inherited TBXMultiDockDerecho: TTBXMultiDock
Left = 535 Left = 535
Width = 360 Width = 360
Height = 709 Height = 723
ExplicitLeft = 535 ExplicitLeft = 535
ExplicitWidth = 360 ExplicitWidth = 360
ExplicitHeight = 709 ExplicitHeight = 723
inherited pnlParametros: TTBXDockablePanel inherited pnlParametros: TTBXDockablePanel
DockedWidth = 356 DockedWidth = 356
ExplicitWidth = 360 ExplicitWidth = 360
ExplicitHeight = 693 ExplicitHeight = 707
inherited dxLayoutControl1: TdxLayoutControl inherited dxLayoutControl1: TdxLayoutControl
Width = 356 Width = 356
Height = 670 Height = 685
ExplicitWidth = 356 ExplicitWidth = 356
ExplicitHeight = 670 ExplicitHeight = 685
inline frViewFiltroClientes1: TfrViewFiltroClientes [0] inline frViewFiltroClientes1: TfrViewFiltroClientes [0]
Left = 11 Left = 11
Top = 282 Top = 288
Width = 335 Width = 335
Height = 180 Height = 180
HelpContext = 160 HelpContext = 160
@ -74,7 +76,7 @@ inherited fEditorInformeFacturasClientePendientesReport: TfEditorInformeFacturas
TabOrder = 2 TabOrder = 2
ReadOnly = False ReadOnly = False
ExplicitLeft = 11 ExplicitLeft = 11
ExplicitTop = 282 ExplicitTop = 288
ExplicitWidth = 335 ExplicitWidth = 335
ExplicitHeight = 180 ExplicitHeight = 180
inherited dxLayoutControl1: TdxLayoutControl inherited dxLayoutControl1: TdxLayoutControl
@ -109,9 +111,11 @@ inherited fEditorInformeFacturasClientePendientesReport: TfEditorInformeFacturas
end end
inherited TBXButton1: TTBXButton [1] inherited TBXButton1: TTBXButton [1]
Left = 22 Left = 22
Top = 630 Top = 645
Width = 121
ExplicitLeft = 22 ExplicitLeft = 22
ExplicitTop = 630 ExplicitTop = 645
ExplicitWidth = 121
end end
inline frViewPeriodoFechas1: TfrViewPeriodoFechas inline frViewPeriodoFechas1: TfrViewPeriodoFechas
Left = 11 Left = 11
@ -152,22 +156,33 @@ inherited fEditorInformeFacturasClientePendientesReport: TfEditorInformeFacturas
Width = 429 Width = 429
end end
inherited edtFechaVenIni: TcxDateEdit inherited edtFechaVenIni: TcxDateEdit
Enabled = False
ExplicitWidth = 529 ExplicitWidth = 529
Width = 529 Width = 529
end end
inherited edtFechaVenFin: TcxDateEdit inherited edtFechaVenFin: TcxDateEdit
Enabled = False
ExplicitWidth = 531 ExplicitWidth = 531
Width = 531 Width = 531
end end
inherited cbPeriodo2: TcxComboBox inherited cbPeriodo2: TcxComboBox
Enabled = False
ExplicitWidth = 598 ExplicitWidth = 598
Width = 598 Width = 598
end end
inherited dxLayoutControl1Group_Root: TdxLayoutGroup
inherited dxLayoutControl1Group3: TdxLayoutGroup
inherited dxLayoutControl1Group2: TdxLayoutGroup
Enabled = False
Visible = False
end
end
end
end end
end end
inline frViewFiltroImportes1: TfrViewFiltroImportes inline frViewFiltroImportes1: TfrViewFiltroImportes
Left = 11 Left = 11
Top = 478 Top = 489
Width = 335 Width = 335
Height = 120 Height = 120
Align = alClient Align = alClient
@ -183,7 +198,7 @@ inherited fEditorInformeFacturasClientePendientesReport: TfEditorInformeFacturas
TabOrder = 3 TabOrder = 3
ReadOnly = False ReadOnly = False
ExplicitLeft = 11 ExplicitLeft = 11
ExplicitTop = 478 ExplicitTop = 489
ExplicitWidth = 335 ExplicitWidth = 335
ExplicitHeight = 120 ExplicitHeight = 120
inherited dxLayoutControl1: TdxLayoutControl inherited dxLayoutControl1: TdxLayoutControl

View File

@ -8,6 +8,7 @@ inherited fEditorInformeFacturasClienteReport: TfEditorInformeFacturasClienteRep
TextHeight = 13 TextHeight = 13
inherited JvNavPanelHeader: TJvNavPanelHeader inherited JvNavPanelHeader: TJvNavPanelHeader
Width = 895 Width = 895
ExplicitTop = 75
ExplicitWidth = 895 ExplicitWidth = 895
inherited Image1: TImage inherited Image1: TImage
Left = 868 Left = 868
@ -21,7 +22,7 @@ inherited fEditorInformeFacturasClienteReport: TfEditorInformeFacturasClienteRep
ExplicitWidth = 895 ExplicitWidth = 895
end end
inherited TBXToolbar1: TTBXToolbar inherited TBXToolbar1: TTBXToolbar
ExplicitWidth = 678 ExplicitWidth = 591
object TBXItem58: TTBXItem [0] object TBXItem58: TTBXItem [0]
Action = actRefrescar Action = actRefrescar
DisplayMode = nbdmImageAndText DisplayMode = nbdmImageAndText
@ -36,28 +37,31 @@ inherited fEditorInformeFacturasClienteReport: TfEditorInformeFacturasClienteRep
ExplicitWidth = 895 ExplicitWidth = 895
end end
inherited TBXMultiDockIzquierdo: TTBXMultiDock inherited TBXMultiDockIzquierdo: TTBXMultiDock
Height = 691 Height = 705
ExplicitHeight = 691 ExplicitTop = 102
ExplicitHeight = 705
end end
inherited TBXMultiDockDerecho: TTBXMultiDock inherited TBXMultiDockDerecho: TTBXMultiDock
Left = 535 Left = 535
Width = 360 Width = 360
Height = 691 Height = 705
ExplicitLeft = 535 ExplicitLeft = 535
ExplicitWidth = 360 ExplicitWidth = 360
ExplicitHeight = 691 ExplicitHeight = 705
inherited pnlParametros: TTBXDockablePanel inherited pnlParametros: TTBXDockablePanel
DockedWidth = 356 DockedWidth = 356
ExplicitWidth = 360 ExplicitWidth = 360
ExplicitHeight = 675 ExplicitHeight = 689
inherited dxLayoutControl1: TdxLayoutControl inherited dxLayoutControl1: TdxLayoutControl
Width = 356 Width = 356
Height = 652 Height = 667
ExplicitWidth = 356 ExplicitWidth = 356
ExplicitHeight = 652 ExplicitHeight = 667
inherited TBXButton1: TTBXButton inherited TBXButton1: TTBXButton
Top = 617 Top = 632
ExplicitTop = 617 Width = 121
ExplicitTop = 632
ExplicitWidth = 121
end end
inline frViewPeriodoFechas1: TfrViewPeriodoFechas [1] inline frViewPeriodoFechas1: TfrViewPeriodoFechas [1]
Left = 11 Left = 11
@ -100,17 +104,28 @@ inherited fEditorInformeFacturasClienteReport: TfEditorInformeFacturasClienteRep
Width = 429 Width = 429
end end
inherited edtFechaVenIni: TcxDateEdit inherited edtFechaVenIni: TcxDateEdit
Enabled = False
ExplicitWidth = 529 ExplicitWidth = 529
Width = 529 Width = 529
end end
inherited edtFechaVenFin: TcxDateEdit inherited edtFechaVenFin: TcxDateEdit
Enabled = False
ExplicitWidth = 531 ExplicitWidth = 531
Width = 531 Width = 531
end end
inherited cbPeriodo2: TcxComboBox inherited cbPeriodo2: TcxComboBox
Enabled = False
ExplicitWidth = 598 ExplicitWidth = 598
Width = 598 Width = 598
end end
inherited dxLayoutControl1Group_Root: TdxLayoutGroup
inherited dxLayoutControl1Group3: TdxLayoutGroup
inherited dxLayoutControl1Group2: TdxLayoutGroup
Enabled = False
Visible = False
end
end
end
end end
end end
inline frViewFiltroImportes1: TfrViewFiltroImportes inline frViewFiltroImportes1: TfrViewFiltroImportes

View File

@ -8,6 +8,7 @@ inherited fEditorInformeIVAClientesReport: TfEditorInformeIVAClientesReport
TextHeight = 13 TextHeight = 13
inherited JvNavPanelHeader: TJvNavPanelHeader inherited JvNavPanelHeader: TJvNavPanelHeader
Width = 950 Width = 950
ExplicitTop = 75
ExplicitWidth = 950 ExplicitWidth = 950
inherited Image1: TImage inherited Image1: TImage
Left = 923 Left = 923
@ -21,7 +22,7 @@ inherited fEditorInformeIVAClientesReport: TfEditorInformeIVAClientesReport
ExplicitWidth = 950 ExplicitWidth = 950
end end
inherited TBXToolbar1: TTBXToolbar inherited TBXToolbar1: TTBXToolbar
ExplicitWidth = 678 ExplicitWidth = 591
object TBXItem58: TTBXItem [0] object TBXItem58: TTBXItem [0]
Action = actRefrescar Action = actRefrescar
DisplayMode = nbdmImageAndText DisplayMode = nbdmImageAndText
@ -36,29 +37,30 @@ inherited fEditorInformeIVAClientesReport: TfEditorInformeIVAClientesReport
ExplicitWidth = 950 ExplicitWidth = 950
end end
inherited TBXMultiDockIzquierdo: TTBXMultiDock inherited TBXMultiDockIzquierdo: TTBXMultiDock
Height = 661 Height = 675
ExplicitHeight = 661 ExplicitTop = 102
ExplicitHeight = 675
end end
inherited TBXMultiDockDerecho: TTBXMultiDock inherited TBXMultiDockDerecho: TTBXMultiDock
Left = 590 Left = 590
Width = 360 Width = 360
Height = 661 Height = 675
ExplicitLeft = 590 ExplicitLeft = 590
ExplicitWidth = 360 ExplicitWidth = 360
ExplicitHeight = 661 ExplicitHeight = 675
inherited pnlParametros: TTBXDockablePanel inherited pnlParametros: TTBXDockablePanel
DockedWidth = 356 DockedWidth = 356
ExplicitWidth = 360 ExplicitWidth = 360
ExplicitHeight = 645 ExplicitHeight = 659
inherited dxLayoutControl1: TdxLayoutControl inherited dxLayoutControl1: TdxLayoutControl
Width = 356 Width = 356
Height = 622 Height = 637
ExplicitWidth = 356 ExplicitWidth = 356
ExplicitHeight = 622 ExplicitHeight = 637
inherited TBXButton1: TTBXButton inherited TBXButton1: TTBXButton
Top = 589 Top = 602
Width = 121 Width = 121
ExplicitTop = 589 ExplicitTop = 602
ExplicitWidth = 121 ExplicitWidth = 121
end end
inline frViewFiltroClientes1: TfrViewFiltroClientes [1] inline frViewFiltroClientes1: TfrViewFiltroClientes [1]
@ -136,8 +138,8 @@ inherited fEditorInformeIVAClientesReport: TfEditorInformeIVAClientesReport
inherited dxLayoutControl1: TdxLayoutControl inherited dxLayoutControl1: TdxLayoutControl
Width = 334 Width = 334
Height = 265 Height = 265
ExplicitWidth = 291 ExplicitWidth = 334
ExplicitHeight = 260 ExplicitHeight = 265
inherited edtFechaIni: TcxDateEdit inherited edtFechaIni: TcxDateEdit
ExplicitWidth = 360 ExplicitWidth = 360
Width = 360 Width = 360
@ -151,17 +153,28 @@ inherited fEditorInformeIVAClientesReport: TfEditorInformeIVAClientesReport
Width = 429 Width = 429
end end
inherited edtFechaVenIni: TcxDateEdit inherited edtFechaVenIni: TcxDateEdit
Enabled = False
ExplicitWidth = 529 ExplicitWidth = 529
Width = 529 Width = 529
end end
inherited edtFechaVenFin: TcxDateEdit inherited edtFechaVenFin: TcxDateEdit
Enabled = False
ExplicitWidth = 531 ExplicitWidth = 531
Width = 531 Width = 531
end end
inherited cbPeriodo2: TcxComboBox inherited cbPeriodo2: TcxComboBox
Enabled = False
ExplicitWidth = 598 ExplicitWidth = 598
Width = 598 Width = 598
end end
inherited dxLayoutControl1Group_Root: TdxLayoutGroup
inherited dxLayoutControl1Group3: TdxLayoutGroup
inherited dxLayoutControl1Group2: TdxLayoutGroup
Enabled = False
Visible = False
end
end
end
end end
end end
inline frViewFiltroImportes1: TfrViewFiltroImportes inline frViewFiltroImportes1: TfrViewFiltroImportes

View File

@ -8,6 +8,7 @@ inherited fEditorInformeIVAProveedoresReport: TfEditorInformeIVAProveedoresRepor
TextHeight = 13 TextHeight = 13
inherited JvNavPanelHeader: TJvNavPanelHeader inherited JvNavPanelHeader: TJvNavPanelHeader
Width = 895 Width = 895
ExplicitTop = 75
ExplicitWidth = 895 ExplicitWidth = 895
inherited Image1: TImage inherited Image1: TImage
Left = 868 Left = 868
@ -21,7 +22,7 @@ inherited fEditorInformeIVAProveedoresReport: TfEditorInformeIVAProveedoresRepor
ExplicitWidth = 895 ExplicitWidth = 895
end end
inherited TBXToolbar1: TTBXToolbar inherited TBXToolbar1: TTBXToolbar
ExplicitWidth = 678 ExplicitWidth = 591
object TBXItem58: TTBXItem [0] object TBXItem58: TTBXItem [0]
Action = actRefrescar Action = actRefrescar
DisplayMode = nbdmImageAndText DisplayMode = nbdmImageAndText
@ -36,35 +37,37 @@ inherited fEditorInformeIVAProveedoresReport: TfEditorInformeIVAProveedoresRepor
ExplicitWidth = 895 ExplicitWidth = 895
end end
inherited TBXMultiDockIzquierdo: TTBXMultiDock inherited TBXMultiDockIzquierdo: TTBXMultiDock
Height = 520 Height = 534
ExplicitHeight = 520 ExplicitTop = 102
ExplicitHeight = 534
end end
inherited TBXMultiDockDerecho: TTBXMultiDock inherited TBXMultiDockDerecho: TTBXMultiDock
Left = 675 Left = 535
Width = 360 Width = 360
Height = 708 Height = 534
ExplicitLeft = 675 ExplicitLeft = 535
ExplicitTop = 102
ExplicitWidth = 360 ExplicitWidth = 360
ExplicitHeight = 708 ExplicitHeight = 534
inherited pnlParametros: TTBXDockablePanel inherited pnlParametros: TTBXDockablePanel
DockedWidth = 356 DockedWidth = 356
ExplicitWidth = 360 ExplicitWidth = 360
ExplicitHeight = 692 ExplicitHeight = 518
inherited dxLayoutControl1: TdxLayoutControl inherited dxLayoutControl1: TdxLayoutControl
Width = 356 Width = 356
Height = 669 Height = 496
ExplicitWidth = 356 ExplicitWidth = 356
ExplicitHeight = 669 ExplicitHeight = 496
inline frViewFiltroProveedores1: TfrViewFiltroProveedores [0] inline frViewFiltroProveedores1: TfrViewFiltroProveedores [0]
Left = 11 Left = 11
Top = 284 Top = 205
Width = 451 Width = 451
Height = 173 Height = 173
Align = alTop Align = alTop
TabOrder = 2 TabOrder = 2
ReadOnly = False ReadOnly = False
ExplicitLeft = 11 ExplicitLeft = 11
ExplicitTop = 284 ExplicitTop = 205
inherited dxLayoutControl1: TdxLayoutControl inherited dxLayoutControl1: TdxLayoutControl
inherited rbTodosProveedores: TRadioButton inherited rbTodosProveedores: TRadioButton
Width = 195 Width = 195
@ -93,9 +96,11 @@ inherited fEditorInformeIVAProveedoresReport: TfEditorInformeIVAProveedoresRepor
end end
inherited TBXButton1: TTBXButton [1] inherited TBXButton1: TTBXButton [1]
Left = 22 Left = 22
Top = 629 Top = 456
Width = 121
ExplicitLeft = 22 ExplicitLeft = 22
ExplicitTop = 629 ExplicitTop = 456
ExplicitWidth = 121
end end
inline frViewPeriodoFechas1: TfrViewPeriodoFechas inline frViewPeriodoFechas1: TfrViewPeriodoFechas
Left = 11 Left = 11
@ -136,22 +141,33 @@ inherited fEditorInformeIVAProveedoresReport: TfEditorInformeIVAProveedoresRepor
Width = 429 Width = 429
end end
inherited edtFechaVenIni: TcxDateEdit inherited edtFechaVenIni: TcxDateEdit
Enabled = False
ExplicitWidth = 529 ExplicitWidth = 529
Width = 529 Width = 529
end end
inherited edtFechaVenFin: TcxDateEdit inherited edtFechaVenFin: TcxDateEdit
Enabled = False
ExplicitWidth = 531 ExplicitWidth = 531
Width = 531 Width = 531
end end
inherited cbPeriodo2: TcxComboBox inherited cbPeriodo2: TcxComboBox
Enabled = False
ExplicitWidth = 598 ExplicitWidth = 598
Width = 598 Width = 598
end end
inherited dxLayoutControl1Group_Root: TdxLayoutGroup
inherited dxLayoutControl1Group3: TdxLayoutGroup
inherited dxLayoutControl1Group2: TdxLayoutGroup
Enabled = False
Visible = False
end
end
end
end end
end end
inline frViewFiltroImportes1: TfrViewFiltroImportes inline frViewFiltroImportes1: TfrViewFiltroImportes
Left = 11 Left = 11
Top = 475 Top = 341
Width = 335 Width = 335
Height = 120 Height = 120
Align = alClient Align = alClient
@ -167,7 +183,7 @@ inherited fEditorInformeIVAProveedoresReport: TfEditorInformeIVAProveedoresRepor
TabOrder = 3 TabOrder = 3
ReadOnly = False ReadOnly = False
ExplicitLeft = 11 ExplicitLeft = 11
ExplicitTop = 475 ExplicitTop = 341
ExplicitWidth = 335 ExplicitWidth = 335
ExplicitHeight = 120 ExplicitHeight = 120
inherited dxLayoutControl1: TdxLayoutControl inherited dxLayoutControl1: TdxLayoutControl

View File

@ -8,6 +8,7 @@ inherited fEditorInformeRecibosProvPendientesReport: TfEditorInformeRecibosProvP
TextHeight = 13 TextHeight = 13
inherited JvNavPanelHeader: TJvNavPanelHeader inherited JvNavPanelHeader: TJvNavPanelHeader
Width = 895 Width = 895
ExplicitTop = 75
ExplicitWidth = 895 ExplicitWidth = 895
inherited Image1: TImage inherited Image1: TImage
Left = 868 Left = 868
@ -21,7 +22,7 @@ inherited fEditorInformeRecibosProvPendientesReport: TfEditorInformeRecibosProvP
ExplicitWidth = 895 ExplicitWidth = 895
end end
inherited TBXToolbar1: TTBXToolbar inherited TBXToolbar1: TTBXToolbar
ExplicitWidth = 678 ExplicitWidth = 591
object TBXItem58: TTBXItem [0] object TBXItem58: TTBXItem [0]
Action = actRefrescar Action = actRefrescar
DisplayMode = nbdmImageAndText DisplayMode = nbdmImageAndText
@ -36,35 +37,36 @@ inherited fEditorInformeRecibosProvPendientesReport: TfEditorInformeRecibosProvP
ExplicitWidth = 895 ExplicitWidth = 895
end end
inherited TBXMultiDockIzquierdo: TTBXMultiDock inherited TBXMultiDockIzquierdo: TTBXMultiDock
Height = 520 Height = 534
ExplicitHeight = 520 ExplicitTop = 102
ExplicitHeight = 534
end end
inherited TBXMultiDockDerecho: TTBXMultiDock inherited TBXMultiDockDerecho: TTBXMultiDock
Left = 675 Left = 535
Width = 360 Width = 360
Height = 708 Height = 534
ExplicitLeft = 675 ExplicitLeft = 535
ExplicitWidth = 360 ExplicitWidth = 360
ExplicitHeight = 708 ExplicitHeight = 534
inherited pnlParametros: TTBXDockablePanel inherited pnlParametros: TTBXDockablePanel
DockedWidth = 356 DockedWidth = 356
ExplicitWidth = 360 ExplicitWidth = 360
ExplicitHeight = 692 ExplicitHeight = 518
inherited dxLayoutControl1: TdxLayoutControl inherited dxLayoutControl1: TdxLayoutControl
Width = 356 Width = 356
Height = 669 Height = 496
ExplicitWidth = 356 ExplicitWidth = 356
ExplicitHeight = 669 ExplicitHeight = 496
inline frViewFiltroProveedores1: TfrViewFiltroProveedores [0] inline frViewFiltroProveedores1: TfrViewFiltroProveedores [0]
Left = 11 Left = 11
Top = 284 Top = 262
Width = 451 Width = 451
Height = 173 Height = 173
Align = alTop Align = alTop
TabOrder = 2 TabOrder = 2
ReadOnly = False ReadOnly = False
ExplicitLeft = 11 ExplicitLeft = 11
ExplicitTop = 284 ExplicitTop = 262
inherited dxLayoutControl1: TdxLayoutControl inherited dxLayoutControl1: TdxLayoutControl
inherited rbTodosProveedores: TRadioButton inherited rbTodosProveedores: TRadioButton
Width = 195 Width = 195
@ -93,9 +95,9 @@ inherited fEditorInformeRecibosProvPendientesReport: TfEditorInformeRecibosProvP
end end
inherited TBXButton1: TTBXButton [1] inherited TBXButton1: TTBXButton [1]
Left = 22 Left = 22
Top = 629 Top = 456
ExplicitLeft = 22 ExplicitLeft = 22
ExplicitTop = 629 ExplicitTop = 456
end end
inline frViewPeriodoFechas1: TfrViewPeriodoFechas inline frViewPeriodoFechas1: TfrViewPeriodoFechas
Left = 11 Left = 11
@ -149,43 +151,6 @@ inherited fEditorInformeRecibosProvPendientesReport: TfEditorInformeRecibosProvP
end end
end end
end end
inline frViewFiltroImportes1: TfrViewFiltroImportes
Left = 11
Top = 475
Width = 335
Height = 120
Align = alClient
Color = clBtnFace
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'Tahoma'
Font.Style = []
ParentBackground = False
ParentColor = False
ParentFont = False
TabOrder = 3
ReadOnly = False
ExplicitLeft = 11
ExplicitTop = 475
ExplicitWidth = 335
ExplicitHeight = 120
inherited dxLayoutControl1: TdxLayoutControl
Width = 335
Height = 120
ExplicitWidth = 335
ExplicitHeight = 120
inherited cbxDesglosado: TCheckBox
Width = 298
ParentColor = False
ExplicitWidth = 298
end
inherited eImporte: TcxSpinEdit
ExplicitWidth = 142
Width = 142
end
end
end
inherited dxLayoutControl1Group_Root: TdxLayoutGroup inherited dxLayoutControl1Group_Root: TdxLayoutGroup
inherited dxLayoutControlGroupRefrescar: TdxLayoutGroup inherited dxLayoutControlGroupRefrescar: TdxLayoutGroup
ShowCaption = True ShowCaption = True
@ -210,14 +175,6 @@ inherited fEditorInformeRecibosProvPendientesReport: TfEditorInformeRecibosProvP
Control = frViewFiltroProveedores1 Control = frViewFiltroProveedores1
ControlOptions.ShowBorder = False ControlOptions.ShowBorder = False
end end
object dxLayoutControl1Item1: TdxLayoutItem
AutoAligns = [aaHorizontal]
AlignVert = avClient
Caption = 'Importes:'
ShowCaption = False
Control = frViewFiltroImportes1
ControlOptions.ShowBorder = False
end
end end
end end
end end

View File

@ -21,7 +21,6 @@ type
TfEditorInformeRecibosProvPendientesReport = class(TfEditorInformeBase, IEditorInformeRecibosProvPendientesReport) TfEditorInformeRecibosProvPendientesReport = class(TfEditorInformeBase, IEditorInformeRecibosProvPendientesReport)
TBXItem58: TTBXItem; TBXItem58: TTBXItem;
frViewPeriodoFechas1: TfrViewPeriodoFechas; frViewPeriodoFechas1: TfrViewPeriodoFechas;
frViewFiltroImportes1: TfrViewFiltroImportes;
frViewFiltroProveedores1: TfrViewFiltroProveedores; frViewFiltroProveedores1: TfrViewFiltroProveedores;
procedure actRefrescarExecute(Sender: TObject); procedure actRefrescarExecute(Sender: TObject);
private private
@ -78,7 +77,7 @@ end;
function TfEditorInformeRecibosProvPendientesReport.GetDesglosadoProveedor: Boolean; function TfEditorInformeRecibosProvPendientesReport.GetDesglosadoProveedor: Boolean;
begin begin
if frViewFiltroImportes1.cbxDesglosado.Enabled then if frViewFiltroProveedores1.cbxDesglosado.Enabled then
Result := frViewFiltroProveedores1.cbxDesglosado.Checked Result := frViewFiltroProveedores1.cbxDesglosado.Checked
else else
Result := False; Result := False;
@ -114,9 +113,10 @@ end;
function TfEditorInformeRecibosProvPendientesReport.GetImporteMinimo: Currency; function TfEditorInformeRecibosProvPendientesReport.GetImporteMinimo: Currency;
begin begin
if frViewFiltroImportes1.eImporte.Enabled then { if frViewFiltroImportes1.eImporte.Enabled then
Result := frViewFiltroImportes1.eImporte.Value Result := frViewFiltroImportes1.eImporte.Value
else else
}
Result := 0; Result := 0;
end; end;

View File

@ -8,6 +8,7 @@ inherited fEditorInformeRecibosProveedorReport: TfEditorInformeRecibosProveedorR
TextHeight = 13 TextHeight = 13
inherited JvNavPanelHeader: TJvNavPanelHeader inherited JvNavPanelHeader: TJvNavPanelHeader
Width = 895 Width = 895
ExplicitTop = 75
ExplicitWidth = 895 ExplicitWidth = 895
inherited Image1: TImage inherited Image1: TImage
Left = 868 Left = 868
@ -21,7 +22,7 @@ inherited fEditorInformeRecibosProveedorReport: TfEditorInformeRecibosProveedorR
ExplicitWidth = 895 ExplicitWidth = 895
end end
inherited TBXToolbar1: TTBXToolbar inherited TBXToolbar1: TTBXToolbar
ExplicitWidth = 678 ExplicitWidth = 591
object TBXItem58: TTBXItem [0] object TBXItem58: TTBXItem [0]
Action = actRefrescar Action = actRefrescar
DisplayMode = nbdmImageAndText DisplayMode = nbdmImageAndText
@ -36,36 +37,39 @@ inherited fEditorInformeRecibosProveedorReport: TfEditorInformeRecibosProveedorR
ExplicitWidth = 895 ExplicitWidth = 895
end end
inherited TBXMultiDockIzquierdo: TTBXMultiDock inherited TBXMultiDockIzquierdo: TTBXMultiDock
Height = 520 Height = 534
ExplicitHeight = 520 ExplicitTop = 102
ExplicitHeight = 534
end end
inherited TBXMultiDockDerecho: TTBXMultiDock inherited TBXMultiDockDerecho: TTBXMultiDock
Left = 675 Left = 535
Width = 360 Width = 360
Height = 708 Height = 534
ExplicitLeft = 675 ExplicitLeft = 535
ExplicitWidth = 360 ExplicitWidth = 360
ExplicitHeight = 708 ExplicitHeight = 534
inherited pnlParametros: TTBXDockablePanel inherited pnlParametros: TTBXDockablePanel
DockedWidth = 356 DockedWidth = 356
ExplicitWidth = 360 ExplicitWidth = 360
ExplicitHeight = 692 ExplicitHeight = 518
inherited dxLayoutControl1: TdxLayoutControl inherited dxLayoutControl1: TdxLayoutControl
Width = 356 Width = 356
Height = 669 Height = 496
ExplicitWidth = 356 ExplicitWidth = 356
ExplicitHeight = 669 ExplicitHeight = 496
inline frViewFiltroProveedores1: TfrViewFiltroProveedores [0] inline frViewFiltroProveedores1: TfrViewFiltroProveedores [0]
Left = 11 Left = 11
Top = 284 Top = 262
Width = 451 Width = 451
Height = 173 Height = 173
Align = alTop Align = alTop
TabOrder = 2 TabOrder = 2
ReadOnly = False ReadOnly = False
ExplicitLeft = 11 ExplicitLeft = 11
ExplicitTop = 284 ExplicitTop = 262
inherited dxLayoutControl1: TdxLayoutControl inherited dxLayoutControl1: TdxLayoutControl
ExplicitWidth = 334
ExplicitHeight = 169
inherited rbTodosProveedores: TRadioButton inherited rbTodosProveedores: TRadioButton
Width = 195 Width = 195
ParentColor = False ParentColor = False
@ -93,9 +97,9 @@ inherited fEditorInformeRecibosProveedorReport: TfEditorInformeRecibosProveedorR
end end
inherited TBXButton1: TTBXButton [1] inherited TBXButton1: TTBXButton [1]
Left = 22 Left = 22
Top = 629 Top = 456
ExplicitLeft = 22 ExplicitLeft = 22
ExplicitTop = 629 ExplicitTop = 456
end end
inline frViewPeriodoFechas1: TfrViewPeriodoFechas inline frViewPeriodoFechas1: TfrViewPeriodoFechas
Left = 11 Left = 11
@ -121,8 +125,8 @@ inherited fEditorInformeRecibosProveedorReport: TfEditorInformeRecibosProveedorR
inherited dxLayoutControl1: TdxLayoutControl inherited dxLayoutControl1: TdxLayoutControl
Width = 335 Width = 335
Height = 250 Height = 250
ExplicitWidth = 335 ExplicitWidth = 334
ExplicitHeight = 250 ExplicitHeight = 245
inherited edtFechaIni: TcxDateEdit inherited edtFechaIni: TcxDateEdit
ExplicitWidth = 360 ExplicitWidth = 360
Width = 360 Width = 360
@ -149,43 +153,6 @@ inherited fEditorInformeRecibosProveedorReport: TfEditorInformeRecibosProveedorR
end end
end end
end end
inline frViewFiltroImportes1: TfrViewFiltroImportes
Left = 11
Top = 475
Width = 335
Height = 120
Align = alClient
Color = clBtnFace
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'Tahoma'
Font.Style = []
ParentBackground = False
ParentColor = False
ParentFont = False
TabOrder = 3
ReadOnly = False
ExplicitLeft = 11
ExplicitTop = 475
ExplicitWidth = 335
ExplicitHeight = 120
inherited dxLayoutControl1: TdxLayoutControl
Width = 335
Height = 120
ExplicitWidth = 335
ExplicitHeight = 120
inherited cbxDesglosado: TCheckBox
Width = 298
ParentColor = False
ExplicitWidth = 298
end
inherited eImporte: TcxSpinEdit
ExplicitWidth = 142
Width = 142
end
end
end
inherited dxLayoutControl1Group_Root: TdxLayoutGroup inherited dxLayoutControl1Group_Root: TdxLayoutGroup
inherited dxLayoutControlGroupRefrescar: TdxLayoutGroup inherited dxLayoutControlGroupRefrescar: TdxLayoutGroup
ShowCaption = True ShowCaption = True
@ -210,14 +177,6 @@ inherited fEditorInformeRecibosProveedorReport: TfEditorInformeRecibosProveedorR
Control = frViewFiltroProveedores1 Control = frViewFiltroProveedores1
ControlOptions.ShowBorder = False ControlOptions.ShowBorder = False
end end
object dxLayoutControl1Item1: TdxLayoutItem
AutoAligns = [aaHorizontal]
AlignVert = avClient
Caption = 'Importes:'
ShowCaption = False
Control = frViewFiltroImportes1
ControlOptions.ShowBorder = False
end
end end
end end
end end

View File

@ -21,7 +21,6 @@ type
TfEditorInformeRecibosProveedorReport = class(TfEditorInformeBase, IEditorInformeRecibosProveedorReport) TfEditorInformeRecibosProveedorReport = class(TfEditorInformeBase, IEditorInformeRecibosProveedorReport)
TBXItem58: TTBXItem; TBXItem58: TTBXItem;
frViewPeriodoFechas1: TfrViewPeriodoFechas; frViewPeriodoFechas1: TfrViewPeriodoFechas;
frViewFiltroImportes1: TfrViewFiltroImportes;
frViewFiltroProveedores1: TfrViewFiltroProveedores; frViewFiltroProveedores1: TfrViewFiltroProveedores;
procedure actRefrescarExecute(Sender: TObject); procedure actRefrescarExecute(Sender: TObject);
private private
@ -78,7 +77,7 @@ end;
function TfEditorInformeRecibosProveedorReport.GetDesglosadoProveedor: Boolean; function TfEditorInformeRecibosProveedorReport.GetDesglosadoProveedor: Boolean;
begin begin
if frViewFiltroImportes1.cbxDesglosado.Enabled then if frViewFiltroProveedores1.cbxDesglosado.Enabled then
Result := frViewFiltroProveedores1.cbxDesglosado.Checked Result := frViewFiltroProveedores1.cbxDesglosado.Checked
else else
Result := False; Result := False;
@ -114,9 +113,11 @@ end;
function TfEditorInformeRecibosProveedorReport.GetImporteMinimo: Currency; function TfEditorInformeRecibosProveedorReport.GetImporteMinimo: Currency;
begin begin
{
if frViewFiltroImportes1.eImporte.Enabled then if frViewFiltroImportes1.eImporte.Enabled then
Result := frViewFiltroImportes1.eImporte.Value Result := frViewFiltroImportes1.eImporte.Value
else else
}
Result := 0; Result := 0;
end; end;

View File

@ -12,6 +12,7 @@ inherited fEditorPresupuestoCliente: TfEditorPresupuestoCliente
inherited JvNavPanelHeader: TJvNavPanelHeader inherited JvNavPanelHeader: TJvNavPanelHeader
Width = 848 Width = 848
Caption = 'Nuevo presupuesto de cliente' Caption = 'Nuevo presupuesto de cliente'
ExplicitTop = 49
ExplicitWidth = 848 ExplicitWidth = 848
inherited Image1: TImage inherited Image1: TImage
Left = 821 Left = 821
@ -129,7 +130,7 @@ inherited fEditorPresupuestoCliente: TfEditorPresupuestoCliente
Width = 848 Width = 848
ExplicitWidth = 848 ExplicitWidth = 848
inherited tbxMain: TTBXToolbar inherited tbxMain: TTBXToolbar
ExplicitWidth = 634 ExplicitWidth = 488
inherited TBXItem2: TTBXItem inherited TBXItem2: TTBXItem
Visible = False Visible = False
end end
@ -176,17 +177,18 @@ inherited fEditorPresupuestoCliente: TfEditorPresupuestoCliente
end end
inherited pgPaginas: TPageControl inherited pgPaginas: TPageControl
Width = 842 Width = 842
Height = 433 Height = 442
ActivePage = pagDocumentos ActivePage = pagDocumentos
TabOrder = 1 TabOrder = 1
OnChanging = pgPaginasChanging OnChanging = pgPaginasChanging
ExplicitTop = 109
ExplicitWidth = 842 ExplicitWidth = 842
ExplicitHeight = 433 ExplicitHeight = 442
inherited pagGeneral: TTabSheet inherited pagGeneral: TTabSheet
ExplicitLeft = 4 ExplicitLeft = 4
ExplicitTop = 24 ExplicitTop = 24
ExplicitWidth = 834 ExplicitWidth = 834
ExplicitHeight = 289 ExplicitHeight = 414
end end
object pagContenido: TTabSheet object pagContenido: TTabSheet
Caption = 'Contenido' Caption = 'Contenido'
@ -195,7 +197,7 @@ inherited fEditorPresupuestoCliente: TfEditorPresupuestoCliente
Left = 0 Left = 0
Top = 0 Top = 0
Width = 834 Width = 834
Height = 405 Height = 414
Align = alClient Align = alClient
BiDiMode = bdLeftToRight BiDiMode = bdLeftToRight
Font.Charset = DEFAULT_CHARSET Font.Charset = DEFAULT_CHARSET
@ -208,7 +210,7 @@ inherited fEditorPresupuestoCliente: TfEditorPresupuestoCliente
TabOrder = 0 TabOrder = 0
ReadOnly = False ReadOnly = False
ExplicitWidth = 834 ExplicitWidth = 834
ExplicitHeight = 405 ExplicitHeight = 414
inherited ToolBar1: TToolBar inherited ToolBar1: TToolBar
Width = 834 Width = 834
Height = 24 Height = 24
@ -238,67 +240,67 @@ inherited fEditorPresupuestoCliente: TfEditorPresupuestoCliente
ExplicitWidth = 58 ExplicitWidth = 58
end end
inherited UpDown1: TUpDown inherited UpDown1: TUpDown
Left = 571 Left = 587
Top = 0 Top = 0
ExplicitLeft = 571 ExplicitLeft = 587
ExplicitTop = 0 ExplicitTop = 0
end end
inherited ToolButton13: TToolButton inherited ToolButton13: TToolButton
Left = 588 Left = 604
Top = 0 Top = 0
ExplicitLeft = 588 ExplicitLeft = 604
ExplicitTop = 0 ExplicitTop = 0
end end
inherited ToolButton6: TToolButton inherited ToolButton6: TToolButton
Left = 596 Left = 612
Top = 0 Top = 0
ExplicitLeft = 596 ExplicitLeft = 612
ExplicitTop = 0 ExplicitTop = 0
end end
inherited ToolButton7: TToolButton inherited ToolButton7: TToolButton
Left = 630 Left = 646
Top = 0 Top = 0
ExplicitLeft = 630 ExplicitLeft = 646
ExplicitTop = 0 ExplicitTop = 0
end end
inherited ToolButton8: TToolButton inherited ToolButton8: TToolButton
Left = 664 Left = 680
Top = 0 Top = 0
ExplicitLeft = 664 ExplicitLeft = 680
ExplicitTop = 0 ExplicitTop = 0
end end
inherited ToolButton12: TToolButton inherited ToolButton12: TToolButton
Left = 698 Left = 714
Top = 0 Top = 0
ExplicitLeft = 698 ExplicitLeft = 714
ExplicitTop = 0 ExplicitTop = 0
end end
inherited ToolButton9: TToolButton inherited ToolButton9: TToolButton
Left = 706 Left = 722
Top = 0 Top = 0
ExplicitLeft = 706 ExplicitLeft = 722
ExplicitTop = 0 ExplicitTop = 0
end end
inherited ToolButton10: TToolButton inherited ToolButton10: TToolButton
Left = 740 Left = 756
Top = 0 Top = 0
ExplicitLeft = 740 ExplicitLeft = 756
ExplicitTop = 0 ExplicitTop = 0
end end
inherited ToolButton11: TToolButton inherited ToolButton11: TToolButton
Left = 774 Left = 790
Top = 0 Top = 0
ExplicitLeft = 774 ExplicitLeft = 790
ExplicitTop = 0 ExplicitTop = 0
end end
end end
inherited cxGrid: TcxGrid inherited cxGrid: TcxGrid
Top = 53 Top = 50
Width = 834 Width = 834
Height = 352 Height = 364
ExplicitTop = 53 ExplicitTop = 50
ExplicitWidth = 834 ExplicitWidth = 834
ExplicitHeight = 352 ExplicitHeight = 364
end end
inherited TBXDock1: TTBXDock inherited TBXDock1: TTBXDock
Top = 24 Top = 24
@ -306,7 +308,7 @@ inherited fEditorPresupuestoCliente: TfEditorPresupuestoCliente
ExplicitTop = 24 ExplicitTop = 24
ExplicitWidth = 834 ExplicitWidth = 834
inherited TBXToolbar1: TTBXToolbar inherited TBXToolbar1: TTBXToolbar
ExplicitWidth = 834 ExplicitWidth = 665
end end
end end
inherited cxLookupComboBox1: TcxLookupComboBox inherited cxLookupComboBox1: TcxLookupComboBox
@ -327,7 +329,7 @@ inherited fEditorPresupuestoCliente: TfEditorPresupuestoCliente
Left = 0 Left = 0
Top = 0 Top = 0
Width = 834 Width = 834
Height = 405 Height = 414
Align = alClient Align = alClient
TabOrder = 0 TabOrder = 0
TabStop = False TabStop = False
@ -374,7 +376,7 @@ inherited fEditorPresupuestoCliente: TfEditorPresupuestoCliente
Left = 0 Left = 0
Top = 0 Top = 0
Width = 834 Width = 834
Height = 405 Height = 414
Align = alClient Align = alClient
Font.Charset = DEFAULT_CHARSET Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText Font.Color = clWindowText
@ -385,7 +387,7 @@ inherited fEditorPresupuestoCliente: TfEditorPresupuestoCliente
TabOrder = 0 TabOrder = 0
ReadOnly = False ReadOnly = False
ExplicitWidth = 834 ExplicitWidth = 834
ExplicitHeight = 405 ExplicitHeight = 414
inherited pnlSup: TPanel inherited pnlSup: TPanel
Width = 834 Width = 834
ExplicitWidth = 834 ExplicitWidth = 834
@ -395,13 +397,13 @@ inherited fEditorPresupuestoCliente: TfEditorPresupuestoCliente
end end
inherited GroupBox1: TGroupBox inherited GroupBox1: TGroupBox
Width = 834 Width = 834
Height = 377 Height = 386
ExplicitWidth = 834 ExplicitWidth = 834
ExplicitHeight = 377 ExplicitHeight = 386
inherited eIncidencias: TcxDBMemo inherited eIncidencias: TcxDBMemo
ExplicitWidth = 830 ExplicitWidth = 830
ExplicitHeight = 360 ExplicitHeight = 369
Height = 360 Height = 369
Width = 830 Width = 830
end end
end end
@ -415,7 +417,7 @@ inherited fEditorPresupuestoCliente: TfEditorPresupuestoCliente
Left = 0 Left = 0
Top = 0 Top = 0
Width = 834 Width = 834
Height = 405 Height = 414
Align = alClient Align = alClient
Font.Charset = DEFAULT_CHARSET Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText Font.Color = clWindowText
@ -426,17 +428,16 @@ inherited fEditorPresupuestoCliente: TfEditorPresupuestoCliente
TabOrder = 0 TabOrder = 0
ReadOnly = False ReadOnly = False
ExplicitWidth = 834 ExplicitWidth = 834
ExplicitHeight = 405 ExplicitHeight = 414
inherited TBXDock: TTBXDock inherited TBXDock: TTBXDock
Width = 834 Width = 834
ExplicitWidth = 834 ExplicitWidth = 834
end end
inherited ListView1: TListView inherited ListView1: TListView
Width = 834 Width = 834
Height = 376 Height = 391
ExplicitTop = 29
ExplicitWidth = 834 ExplicitWidth = 834
ExplicitHeight = 376 ExplicitHeight = 391
end end
inherited EditorActionList: TActionList inherited EditorActionList: TActionList
Left = 8 Left = 8
@ -447,6 +448,7 @@ inherited fEditorPresupuestoCliente: TfEditorPresupuestoCliente
end end
inherited PnlComentario: TPanel inherited PnlComentario: TPanel
Width = 848 Width = 848
ExplicitTop = 76
ExplicitWidth = 848 ExplicitWidth = 848
inherited lbComentario: TLabel inherited lbComentario: TLabel
Width = 838 Width = 838
@ -475,18 +477,16 @@ inherited fEditorPresupuestoCliente: TfEditorPresupuestoCliente
LookAndFeel = dxLayoutOfficeLookAndFeel1 LookAndFeel = dxLayoutOfficeLookAndFeel1
ExplicitWidth = 848 ExplicitWidth = 848
inherited Bevel3: TBevel inherited Bevel3: TBevel
Left = 352 Left = 310
Top = 57 Top = 57
Height = 122 ExplicitLeft = 310
ExplicitLeft = 352
ExplicitTop = 57 ExplicitTop = 57
ExplicitHeight = 122
end end
inherited Bevel4: TBevel inherited Bevel4: TBevel
Left = 464 Left = 422
Top = 88 Top = 88
Width = 342 Width = 342
ExplicitLeft = 464 ExplicitLeft = 422
ExplicitTop = 88 ExplicitTop = 88
ExplicitWidth = 342 ExplicitWidth = 342
end end
@ -494,26 +494,20 @@ inherited fEditorPresupuestoCliente: TfEditorPresupuestoCliente
Top = 84 Top = 84
Style.IsFontAssigned = True Style.IsFontAssigned = True
ExplicitTop = 84 ExplicitTop = 84
ExplicitWidth = 93
Width = 93
end end
inherited ImporteIVA: TcxDBCurrencyEdit inherited ImporteIVA: TcxDBCurrencyEdit
Left = 535 Left = 493
Top = 108 Top = 108
Style.IsFontAssigned = True Style.IsFontAssigned = True
ExplicitLeft = 535 ExplicitLeft = 493
ExplicitTop = 108 ExplicitTop = 108
ExplicitWidth = 137
Width = 137
end end
inherited ImporteTotal: TcxDBCurrencyEdit inherited ImporteTotal: TcxDBCurrencyEdit
Left = 465 Left = 423
Top = 162 Top = 162
Style.IsFontAssigned = True Style.IsFontAssigned = True
ExplicitLeft = 465 ExplicitLeft = 423
ExplicitTop = 162 ExplicitTop = 162
ExplicitWidth = 137
Width = 137
end end
inherited edtDescuento: TcxDBSpinEdit inherited edtDescuento: TcxDBSpinEdit
Top = 84 Top = 84
@ -521,69 +515,57 @@ inherited fEditorPresupuestoCliente: TfEditorPresupuestoCliente
ExplicitTop = 84 ExplicitTop = 84
end end
inherited edtIVA: TcxDBSpinEdit inherited edtIVA: TcxDBSpinEdit
Left = 464 Left = 422
Top = 108 Top = 108
Style.IsFontAssigned = True Style.IsFontAssigned = True
ExplicitLeft = 464 ExplicitLeft = 422
ExplicitTop = 108 ExplicitTop = 108
end end
inherited ImporteBase: TcxDBCurrencyEdit inherited ImporteBase: TcxDBCurrencyEdit
Left = 464 Left = 422
Top = 57 Top = 57
Style.IsFontAssigned = True Style.IsFontAssigned = True
ExplicitLeft = 464 ExplicitLeft = 422
ExplicitTop = 57 ExplicitTop = 57
ExplicitWidth = 92
Width = 92
end end
inherited edtRE: TcxDBSpinEdit inherited edtRE: TcxDBSpinEdit
Left = 464 Left = 422
Top = 135 Top = 135
Style.IsFontAssigned = True Style.IsFontAssigned = True
ExplicitLeft = 464 ExplicitLeft = 422
ExplicitTop = 135 ExplicitTop = 135
end end
inherited ImporteRE: TcxDBCurrencyEdit inherited ImporteRE: TcxDBCurrencyEdit
Left = 535 Left = 493
Top = 135 Top = 135
Style.IsFontAssigned = True Style.IsFontAssigned = True
ExplicitLeft = 535 ExplicitLeft = 493
ExplicitTop = 135 ExplicitTop = 135
ExplicitWidth = 56
Width = 56
end end
inherited eImporteNeto: TcxDBCurrencyEdit inherited eImporteNeto: TcxDBCurrencyEdit
Top = 57 Top = 57
Style.IsFontAssigned = True Style.IsFontAssigned = True
ExplicitTop = 57 ExplicitTop = 57
ExplicitWidth = 147
Width = 147
end end
inherited ePorte: TcxDBCurrencyEdit inherited ePorte: TcxDBCurrencyEdit
Top = 111 Top = 111
Style.IsFontAssigned = True Style.IsFontAssigned = True
ExplicitTop = 111 ExplicitTop = 111
ExplicitWidth = 147
Width = 147
end end
inherited eIVA: TcxDBLookupComboBox inherited eIVA: TcxDBLookupComboBox
Top = 138 Top = 138
ExplicitTop = 138 ExplicitTop = 138
ExplicitWidth = 81
Width = 81
end end
inherited bTiposIVA: TButton inherited bTiposIVA: TButton
Left = 204 Left = 162
Top = 138 Top = 138
OnClick = frViewTotales1bTiposIVAClick OnClick = frViewTotales1bTiposIVAClick
ExplicitLeft = 204 ExplicitLeft = 162
ExplicitTop = 138 ExplicitTop = 138
end end
inherited cbRecargoEquivalencia: TcxDBCheckBox inherited cbRecargoEquivalencia: TcxDBCheckBox
Top = 165 Top = 165
ExplicitTop = 165 ExplicitTop = 165
ExplicitWidth = 219
Width = 219
end end
inherited cbValorado: TcxDBCheckBox inherited cbValorado: TcxDBCheckBox
Left = 11 Left = 11

View File

@ -6,8 +6,9 @@ inherited frViewPresupuestosCliente: TfrViewPresupuestosCliente
ExplicitWidth = 903 ExplicitWidth = 903
ExplicitHeight = 525 ExplicitHeight = 525
inherited cxGrid: TcxGrid inherited cxGrid: TcxGrid
Top = 130
Width = 903 Width = 903
Height = 397 Height = 369
RootLevelOptions.DetailTabsPosition = dtpTop RootLevelOptions.DetailTabsPosition = dtpTop
OnActiveTabChanged = cxGridActiveTabChanged OnActiveTabChanged = cxGridActiveTabChanged
ExplicitWidth = 903 ExplicitWidth = 903
@ -146,28 +147,71 @@ inherited frViewPresupuestosCliente: TfrViewPresupuestosCliente
end end
inherited frViewFiltroBase1: TfrViewFiltroBase inherited frViewFiltroBase1: TfrViewFiltroBase
Width = 903 Width = 903
Height = 130
ExplicitWidth = 903 ExplicitWidth = 903
ExplicitHeight = 130
inherited TBXDockablePanel1: TTBXDockablePanel inherited TBXDockablePanel1: TTBXDockablePanel
ExplicitWidth = 903 ExplicitWidth = 903
inherited dxLayoutControl1: TdxLayoutControl inherited dxLayoutControl1: TdxLayoutControl
Width = 903 Width = 903
Height = 100
ExplicitWidth = 903 ExplicitWidth = 903
inherited txtFiltroTodo: TcxTextEdit inherited txtFiltroTodo: TcxTextEdit
ExplicitWidth = 806 Style.LookAndFeel.SkinName = ''
Width = 806 StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
end end
inherited edtFechaIniFiltro: TcxDateEdit inherited edtFechaIniFiltro: TcxDateEdit
ExplicitWidth = 285 Style.LookAndFeel.SkinName = ''
Width = 285 StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
ExplicitWidth = 200
Width = 200
end end
inherited edtFechaFinFiltro: TcxDateEdit inherited edtFechaFinFiltro: TcxDateEdit
Left = 389 Left = 333
ExplicitLeft = 389 Style.LookAndFeel.SkinName = ''
ExplicitWidth = 504 StyleDisabled.LookAndFeel.SkinName = ''
Width = 504 StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
ExplicitLeft = 333
end
inherited edtFecha2FinFiltro: TcxDateEdit
Left = 333
Enabled = True
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
ExplicitLeft = 333
ExplicitWidth = 200
Width = 200
end
inherited edtFecha2IniFiltro: TcxDateEdit
Enabled = True
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
ExplicitWidth = 200
Width = 200
end
inherited dxLayoutControl1Group_Root: TdxLayoutGroup
inherited dxLayoutControl1Group1: TdxLayoutGroup
inherited dxLayoutControl1Group4: TdxLayoutGroup
Enabled = True
Visible = True
inherited dxLayoutControl1Item5: TdxLayoutItem
Caption = 'Entre fecha decisi'#243'n:'
end
end
end
end end
end end
inherited TBXAlignmentPanel1: TTBXAlignmentPanel inherited TBXAlignmentPanel1: TTBXAlignmentPanel
Top = 100
Width = 903 Width = 903
ExplicitWidth = 903 ExplicitWidth = 903
inherited tbxBotones: TTBXToolbar inherited tbxBotones: TTBXToolbar
@ -176,14 +220,6 @@ inherited frViewPresupuestosCliente: TfrViewPresupuestosCliente
end end
end end
end end
inherited dxLayoutLookAndFeelList1: TdxLayoutLookAndFeelList
Left = 56
end
inherited ActionList1: TActionList
inherited actQuitarFiltro: TAction
OnExecute = frViewFiltroBase1actQuitarFiltroExecute
end
end
end end
inherited pnlAgrupaciones: TTBXDockablePanel inherited pnlAgrupaciones: TTBXDockablePanel
Top = 499 Top = 499

View File

@ -147,11 +147,15 @@ procedure TfrViewPresupuestosCliente.AnadirFiltroFechas;
var var
Columna: TcxGridDBColumn; Columna: TcxGridDBColumn;
Fecha1, Fecha2: Variant; Fecha1, Fecha2: Variant;
FechaDecision1, FechaDecision2: Variant;
FFiltro : TcxFilterCriteriaItemList; FFiltro : TcxFilterCriteriaItemList;
begin begin
Fecha1 := frViewFiltroBase1.edtFechaIniFiltro.EditValue; Fecha1 := frViewFiltroBase1.edtFechaIniFiltro.EditValue;
Fecha2 := frViewFiltroBase1.edtFechaFinFiltro.EditValue; Fecha2 := frViewFiltroBase1.edtFechaFinFiltro.EditValue;
FechaDecision1 := frViewFiltroBase1.edtFecha2IniFiltro.EditValue;
FechaDecision2 := frViewFiltroBase1.edtFecha2FinFiltro.EditValue;
if not VarIsNull(Fecha1) if not VarIsNull(Fecha1)
and not VarIsNull(Fecha2) then and not VarIsNull(Fecha2) then
begin begin

View File

@ -35,8 +35,19 @@ type
procedure DataModuleCreate(Sender: TObject); procedure DataModuleCreate(Sender: TObject);
private private
FConnection: IDAConnection; FConnection: IDAConnection;
FIdEmpresa: Integer;
FFechaInicio: Variant;
FFechaFin: Variant;
FFechaVenInicio: Variant;
FFechaVenFin: Variant;
FListaIDProveedores: TIntegerArray;
FListaNombresProveedores: TStringList;
FImporteMinimo: Currency;
FDesglosado : Boolean;
procedure _GenerarRecibo(const ID : Integer); procedure _GenerarRecibo(const ID : Integer);
function _GenerarInforme(const TipoInforme: String; const IdEmpresa: Integer; const FechaInicio, FechaFin: Variant; const FechaVenInicio: Variant; FechaVenFin: Variant; const ListaIDClientes: TIntegerArray; const ImporteMinimo: Currency): Binary; function _GenerarInforme(const TipoInforme: String; const IdEmpresa: Integer; const FechaInicio, FechaFin: Variant; const FechaVenInicio: Variant; FechaVenFin: Variant; const ListaIDClientes: TIntegerArray; const ImporteMinimo: Currency): Binary;
procedure IniciarParametrosInforme;
public public
function GenerarRecibo(const ListaID : TIntegerArray): Binary; function GenerarRecibo(const ListaID : TIntegerArray): Binary;
@ -77,6 +88,19 @@ function TRptRecibosCliente.GenerarInformeListadoRecibos(
var var
ATipoInforme: String; ATipoInforme: String;
begin begin
//Inicializamos parametros
FIdEmpresa := IdEmpresa;
FFechaInicio := FechaInicio;
FFechaFin := FechaFin;
FFechaVenInicio := FechaVenInicio;
FFechaVenFin := FechaVenFin;
FImporteMinimo := ImporteMinimo;
FDesglosado := Desglosado;
if Assigned(FListaIDProveedores) then
FListaIDProveedores.Free;
FListaIDProveedores := ListaIDClientes;
//DESGLOSADO POR CLIENTE EN ESTE INFORME NO SE DESGLOSARÁ POR CLIENTE //DESGLOSADO POR CLIENTE EN ESTE INFORME NO SE DESGLOSARÁ POR CLIENTE
if Desglosado then if Desglosado then
@ -97,6 +121,20 @@ var
ATipoInforme: String; ATipoInforme: String;
begin begin
//Inicializamos parametros
FIdEmpresa := IdEmpresa;
FFechaInicio := FechaInicio;
FFechaFin := FechaFin;
FFechaVenInicio := FechaVenInicio;
FFechaVenFin := FechaVenFin;
FImporteMinimo := ImporteMinimo;
FDesglosado := Desglosado;
if Assigned(FListaIDProveedores) then
FListaIDProveedores.Free;
FListaIDProveedores := ListaIDClientes;
if tbl_InformeListadoRecibos.Active then if tbl_InformeListadoRecibos.Active then
tbl_InformeListadoRecibos.Active := False; tbl_InformeListadoRecibos.Active := False;
@ -136,6 +174,57 @@ begin
end; end;
end; end;
procedure TRptRecibosCliente.IniciarParametrosInforme;
var
ATextos : TStringList;
ACadena : String;
begin
ATextos := TStringList.Create;
try
{
if (not VarIsNull(FFechaInicio)) and (not VarIsNull(FFechaFin)) then
ACadena := Format('Fechas de factura desde el %s hasta el %s', [VarToStr(FFechaInicio), VarToStr(FFechaFin)])
else
ACadena := 'Sin rango de fechas';
ATextos.Add(ACadena);
ACadena := '';
// Filtrar el informe por fechas de vencimiento
if (not VarIsNull(FFechaVenInicio)) and (not VarIsNull(FFechaVenFin)) then
begin
ACadena := Format('Vencimientos desde el %s hasta el %s', [VarToStr(FFechaVenInicio), VarToStr(FFechaVenFin)]);
ATextos.Add(ACadena);
ACadena := '';
end;
if (FImporteMinimo > 0) then
begin
ACadena := Format('Facturas con importe superior a %m', [FImporteMinimo]);
ATextos.Add(ACadena);
ACadena := '';
end;
if Assigned(FListaIDProveedores) and (FListaIDProveedores.Count > 0) then
begin
RecuperarNombresProveedores;
ACadena := FListaNombresProveedores.Text;
end
else begin
ACadena := 'Todos los proveedores';
if FDesglosado then
ACadena := ACadena + ' (desglosados)'
end;
}
ATextos.Add(ACadena);
ACadena := '';
frxReport.Variables.Variables['TextoParametros'] := ATextos.Text;
finally
FreeAndNil(ATextos);
end;
end;
function TRptRecibosCliente._GenerarInforme(const TipoInforme: String; function TRptRecibosCliente._GenerarInforme(const TipoInforme: String;
const IdEmpresa: Integer; const FechaInicio, FechaFin: Variant; const IdEmpresa: Integer; const FechaInicio, FechaFin: Variant;
const FechaVenInicio: Variant; FechaVenFin: Variant; const FechaVenInicio: Variant; FechaVenFin: Variant;
@ -150,7 +239,6 @@ begin
FConnection.BeginTransaction; //<--- Creo que no va a hacer falta. "PUES SI ES NECESARIO" FConnection.BeginTransaction; //<--- Creo que no va a hacer falta. "PUES SI ES NECESARIO"
try try
if tbl_InformeListadoRecibos.Active then if tbl_InformeListadoRecibos.Active then
tbl_InformeListadoRecibos.Active := False; tbl_InformeListadoRecibos.Active := False;

View File

@ -194,7 +194,7 @@ object RptRecibosProveedor: TRptRecibosProveedor
Top = 158 Top = 158
end end
object frxReport: TfrxReport object frxReport: TfrxReport
Version = '4.3' Version = '4.8.11'
DotMatrixReport = False DotMatrixReport = False
EngineOptions.DoublePass = True EngineOptions.DoublePass = True
IniFile = '\Software\Fast Reports' IniFile = '\Software\Fast Reports'
@ -212,39 +212,6 @@ object RptRecibosProveedor: TRptRecibosProveedor
ReportOptions.VersionMinor = '13' ReportOptions.VersionMinor = '13'
ReportOptions.VersionRelease = '1' ReportOptions.VersionRelease = '1'
ScriptLanguage = 'PascalScript' ScriptLanguage = 'PascalScript'
ScriptText.Strings = (
'procedure DatosEmpresaOnBeforePrint(Sender: TfrxComponent);'
'var'
' Cadena: String;'
'begin'
' DatosEmpresa.Lines.Clear;'
' DatosEmpresa.Lines.Add(<frxDBCabecera."RAZON_SOCIAL">);'
' DatosEmpresa.Lines.Add(<frxDBCabecera."CALLE_EMPRESA">);'
''
' Cadena := '#39#39';'
' if (<frxDBCabecera."TELEFONO_1"> <> '#39#39') then'
' Cadena := '#39'TLF: '#39' + <frxDBCabecera."TELEFONO_1">;'
' if (<frxDBCabecera."FAX"> <> '#39#39') then'
' Cadena := Cadena + '#39' FAX: '#39' + <frxDBCabecera."FAX">;'
' DatosEmpresa.Lines.Add(Cadena);'
''
' Cadena := '#39#39';'
' if (<frxDBCabecera."CODIGO_POSTAL_EMPRESA"> <> '#39#39') then'
' Cadena := <frxDBCabecera."CODIGO_POSTAL_EMPRESA">;'
' if (<frxDBCabecera."POBLACION_EMPRESA"> <> '#39#39') then'
' Cadena := Cadena + '#39' '#39' + <frxDBCabecera."POBLACION_EMPRES' +
'A">;'
' if (<frxDBCabecera."PROVINCIA_EMPRESA"> <> '#39#39') then'
' Cadena := Cadena + '#39' - '#39' + <frxDBCabecera."PROVINCIA_EMPR' +
'ESA">;'
' DatosEmpresa.Lines.Add(Cadena);'
'end;'
''
'begin'
''
'end.')
ShowProgress = False ShowProgress = False
StoreInDFM = False StoreInDFM = False
Left = 169 Left = 169
@ -308,8 +275,6 @@ object RptRecibosProveedor: TRptRecibosProveedor
RemoteFetchEnabled = False RemoteFetchEnabled = False
LocalSchema = schReport LocalSchema = schReport
LocalDataStreamer = Bin2DataStreamer LocalDataStreamer = Bin2DataStreamer
DetailOptions = [dtCascadeOpenClose, dtCascadeApplyUpdates, dtAutoFetch, dtCascadeDelete, dtCascadeUpdate, dtDisableLogOfCascadeDeletes, dtDisableLogOfCascadeUpdates, dtIncludeInAllInOneFetch]
MasterOptions = [moCascadeOpenClose, moCascadeApplyUpdates, moCascadeDelete, moCascadeUpdate, moDisableLogOfCascadeDeletes, moDisableLogOfCascadeUpdates]
LogicalName = 'InformeListadoRecibos' LogicalName = 'InformeListadoRecibos'
IndexDefs = <> IndexDefs = <>
Left = 360 Left = 360
@ -325,6 +290,7 @@ object RptRecibosProveedor: TRptRecibosProveedor
UserName = 'frxDBInformeListadoRecibos' UserName = 'frxDBInformeListadoRecibos'
CloseDataSource = True CloseDataSource = True
DataSource = DADSInformeListadoRecibos DataSource = DADSInformeListadoRecibos
BCDToCurrency = False
Left = 360 Left = 360
Top = 16 Top = 16
end end

View File

@ -29,7 +29,21 @@ type
procedure DataModuleCreate(Sender: TObject); procedure DataModuleCreate(Sender: TObject);
private private
FConnection: IDAConnection; FConnection: IDAConnection;
function _GenerarInforme(const TipoInforme: String; const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const FechaVenInicio: Variant; const FechaVenFin: Variant; const ListaIDProveedores: TIntegerArray; const ImporteMinimo: Currency): Binary; FIdEmpresa: Integer;
FFechaInicio: Variant;
FFechaFin: Variant;
FFechaVenInicio: Variant;
FFechaVenFin: Variant;
FListaIDProveedores: TIntegerArray;
FListaNombresProveedores: TStringList;
FSoloPendientes: Boolean;
FDesglosado : Boolean;
procedure PrepararTablaInforme(ATabla: TDAMemDataTable);
procedure IniciarParametrosInforme;
procedure RecuperarNombresProveedores;
function _GenerarInforme(const TipoInforme: String): Binary;
public public
function GenerarInformeListadoRecibos(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const FechaVenInicio: Variant; const FechaVenFin: Variant; const ListaIDProveedores: TIntegerArray; const Desglosado: Boolean; const ImporteMinimo: Currency): Binary; function GenerarInformeListadoRecibos(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const FechaVenInicio: Variant; const FechaVenFin: Variant; const ListaIDProveedores: TIntegerArray; const Desglosado: Boolean; const ImporteMinimo: Currency): Binary;
function GenerarInformeListadoRecibosPendientes(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const FechaVenInicio: Variant; const FechaVenFin: Variant; const ListaIDProveedores: TIntegerArray; const Desglosado: Boolean; const ImporteMinimo: Currency): Binary; function GenerarInformeListadoRecibosPendientes(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const FechaVenInicio: Variant; const FechaVenFin: Variant; const ListaIDProveedores: TIntegerArray; const Desglosado: Boolean; const ImporteMinimo: Currency): Binary;
@ -40,7 +54,8 @@ implementation
{$R *.dfm} {$R *.dfm}
uses uses
uSistemaFunc, uDataModuleServer, schRecibosProveedorClient_Intf; uROServer, uSistemaFunc, uDataModuleServer, DataAbstract4_Intf, schRecibosProveedorClient_Intf;
const const
rptInformeListadoRecibosProveedorDesglosado = 'InformeListadoRecibosProveedorDesglosado.fr3'; rptInformeListadoRecibosProveedorDesglosado = 'InformeListadoRecibosProveedorDesglosado.fr3';
@ -67,7 +82,31 @@ function TRptRecibosProveedor.GenerarInformeListadoRecibos(
const ImporteMinimo: Currency): Binary; const ImporteMinimo: Currency): Binary;
var var
ATipoInforme: String; ATipoInforme: String;
AStream: TMemoryStream;
dsMaster: IDADataset;
begin begin
FConnection.BeginTransaction; //<--- Creo que no va a hacer falta. "PUES SI ES NECESARIO"
AStream := TMemoryStream.Create;
try
//Inicializamos parametros
FIdEmpresa := IdEmpresa;
FFechaInicio := FechaInicio;
FFechaFin := FechaFin;
FFechaVenInicio := FechaVenInicio;
FFechaVenFin := FechaVenFin;
FSoloPendientes:= false;
FDesglosado := Desglosado;
if Assigned(FListaIDProveedores) then
FListaIDProveedores.Free;
FListaIDProveedores := ListaIDProveedores;
if tbl_InformeListadoRecibos.Active then
tbl_InformeListadoRecibos.Active := False;
PrepararTablaInforme(tbl_InformeListadoRecibos);
//DESGLOSADO POR PROVEEDOR EN ESTE INFORME NO SE DESGLOSARÁ POR PROVEEDOR //DESGLOSADO POR PROVEEDOR EN ESTE INFORME NO SE DESGLOSARÁ POR PROVEEDOR
if Desglosado then if Desglosado then
@ -75,7 +114,15 @@ begin
else else
ATipoInforme := rptInformeListadoRecibosProveedor; ATipoInforme := rptInformeListadoRecibosProveedor;
Result := _GenerarInforme(ATipoInforme, IdEmpresa, FechaInicio, FechaFin, FechaVenInicio, FechaVenFin, ListaIDProveedores, ImporteMinimo); //Finalmente se abren las tablas del informe
tbl_InformeListadoRecibos.Active := True;
Result := _GenerarInforme(ATipoInforme);
finally
AStream.Free;
dsMaster := Nil;
FConnection.RollbackTransaction; //<--- Creo que no va a hacer falta. "PUES SI ES NECESARIO"
end;
end; end;
function TRptRecibosProveedor.GenerarInformeListadoRecibosPendientes( function TRptRecibosProveedor.GenerarInformeListadoRecibosPendientes(
@ -84,24 +131,32 @@ function TRptRecibosProveedor.GenerarInformeListadoRecibosPendientes(
const ListaIDProveedores: TIntegerArray; const Desglosado: Boolean; const ListaIDProveedores: TIntegerArray; const Desglosado: Boolean;
const ImporteMinimo: Currency): Binary; const ImporteMinimo: Currency): Binary;
var var
Condicion: TDAWhereExpression;
ATipoInforme: String; ATipoInforme: String;
AStream: TMemoryStream;
begin begin
FConnection.BeginTransaction; //<--- Creo que no va a hacer falta. "PUES SI ES NECESARIO"
AStream := TMemoryStream.Create;
//Inicializamos parametros
FIdEmpresa := IdEmpresa;
FFechaInicio := FechaInicio;
FFechaFin := FechaFin;
FFechaVenInicio := FechaVenInicio;
FFechaVenFin := FechaVenFin;
FSoloPendientes:= True;
FDesglosado := Desglosado;
if Assigned(FListaIDProveedores) then
FListaIDProveedores.Free;
FListaIDProveedores := ListaIDProveedores;
if tbl_InformeListadoRecibos.Active then if tbl_InformeListadoRecibos.Active then
tbl_InformeListadoRecibos.Active := False; tbl_InformeListadoRecibos.Active := False;
// Filtrar el informe por situacion PrepararTablaInforme(tbl_InformeListadoRecibos);
with tbl_InformeListadoRecibos.DynamicWhere do
begin
// (ID_EMPRESA >= ID)
Condicion := NewBinaryExpression(NewField('', fld_RecibosProveedorSITUACION), NewConstant('PAGADO', datString), dboNotEqual);
if IsEmpty then
Expression := Condicion
else
Expression := NewBinaryExpression(Expression, Condicion, dboAnd);
end;
//DESGLOSADO POR PROVEEDOR EN ESTE INFORME NO SE DESGLOSARÁ POR PROVEEDOR //DESGLOSADO POR PROVEEDOR EN ESTE INFORME NO SE DESGLOSARÁ POR PROVEEDOR
if Desglosado then if Desglosado then
@ -109,33 +164,66 @@ begin
else else
ATipoInforme := rptInformeListadoRecibosProvPendientes; ATipoInforme := rptInformeListadoRecibosProvPendientes;
Result := _GenerarInforme(ATipoInforme, IdEmpresa, FechaInicio, FechaFin, FechaVenInicio, FechaVenFin, ListaIDProveedores, ImporteMinimo); //Finalmente se abren las tablas del informe
tbl_InformeListadoRecibos.Active := True;
Result := _GenerarInforme(ATipoInforme);
end; end;
function TRptRecibosProveedor._GenerarInforme(const TipoInforme: String; procedure TRptRecibosProveedor.IniciarParametrosInforme;
const IdEmpresa: Integer; const FechaInicio, FechaFin: Variant; var
const FechaVenInicio, FechaVenFin: Variant; ATextos : TStringList;
const ListaIDProveedores: TIntegerArray; ACadena : String;
const ImporteMinimo: Currency): Binary; begin
ATextos := TStringList.Create;
try
if (not VarIsNull(FFechaInicio)) and (not VarIsNull(FFechaFin)) then
ACadena := Format('Fechas de emision desde el %s hasta el %s', [VarToStr(FFechaInicio), VarToStr(FFechaFin)])
else
ACadena := 'Sin rango de fechas';
ATextos.Add(ACadena);
ACadena := '';
// Filtrar el informe por fechas de vencimiento
if (not VarIsNull(FFechaVenInicio)) and (not VarIsNull(FFechaVenFin)) then
begin
ACadena := Format('Vencimientos desde el %s hasta el %s', [VarToStr(FFechaVenInicio), VarToStr(FFechaVenFin)]);
ATextos.Add(ACadena);
ACadena := '';
end;
if Assigned(FListaIDProveedores) and (FListaIDProveedores.Count > 0) then
begin
RecuperarNombresProveedores;
ACadena := FListaNombresProveedores.Text;
end
else begin
ACadena := 'Todos los proveedores';
if FDesglosado then
ACadena := ACadena + ' (desglosados)'
end;
ATextos.Add(ACadena);
ACadena := '';
frxReport.Variables.Variables['TextoParametros'] := ATextos.Text;
finally
FreeAndNil(ATextos);
end;
end;
procedure TRptRecibosProveedor.PrepararTablaInforme(ATabla: TDAMemDataTable);
var var
Condicion: TDAWhereExpression; Condicion: TDAWhereExpression;
i: Integer; i: Integer;
AInforme: Variant;
begin begin
Result := Binary.Create;
FConnection.BeginTransaction; //<--- Creo que no va a hacer falta. "PUES SI ES NECESARIO"
try
if tbl_InformeListadoRecibos.Active then
tbl_InformeListadoRecibos.Active := False;
// Filtrar el informe por empresa // Filtrar el informe por empresa
with tbl_InformeListadoRecibos.DynamicWhere do with ATabla.DynamicWhere do
begin begin
// (ID_EMPRESA >= ID) // (ID_EMPRESA >= ID)
Condicion := NewBinaryExpression(NewField('', fld_RecibosProveedorID_EMPRESA), NewConstant(IdEmpresa, datInteger), dboEqual); Condicion := NewBinaryExpression(NewField('', fld_RecibosProveedorID_EMPRESA), NewConstant(FIdEmpresa, datInteger), dboEqual);
if IsEmpty then if IsEmpty then
Expression := Condicion Expression := Condicion
else else
@ -143,14 +231,14 @@ begin
end; end;
// Filtrar el informe por fechas // Filtrar el informe por fechas
if not VarIsNull(FechaInicio) if not VarIsNull(FFechaInicio)
and not VarIsNull(FechaFin) then and not VarIsNull(FFechaFin) then
begin begin
with tbl_InformeListadoRecibos.DynamicWhere do with ATabla.DynamicWhere do
begin begin
// (FECHA_INICIO between FECHA_FIN) // (FECHA_INICIO between FECHA_FIN)
Condicion := NewBinaryExpression(NewField('', fld_RecibosProveedorFECHA_EMISION), NewConstant(FechaInicio, datDateTime), dboGreaterOrEqual); Condicion := NewBinaryExpression(NewField('', fld_RecibosProveedorFECHA_EMISION), NewConstant(FFechaInicio, datDateTime), dboGreaterOrEqual);
Condicion := NewBinaryExpression(NewBinaryExpression(NewField('', fld_RecibosProveedorFECHA_EMISION), NewConstant(FechaFin, datDateTime), dboLessOrEqual), Condicion, dboAnd); Condicion := NewBinaryExpression(NewBinaryExpression(NewField('', fld_RecibosProveedorFECHA_EMISION), NewConstant(FFechaFin, datDateTime), dboLessOrEqual), Condicion, dboAnd);
if IsEmpty then if IsEmpty then
Expression := Condicion Expression := Condicion
else else
@ -159,14 +247,14 @@ begin
end; end;
// Filtrar el informe por fechas de vencimiento // Filtrar el informe por fechas de vencimiento
if not VarIsNull(FechaVenInicio) if not VarIsNull(FFechaVenInicio)
and not VarIsNull(FechaVenFin) then and not VarIsNull(FFechaVenFin) then
begin begin
with tbl_InformeListadoRecibos.DynamicWhere do with ATabla.DynamicWhere do
begin begin
// (FECHA_VENCIMIENTO_INICIO between FECHA_VENCIMIENTO_FIN) // (FECHA_VENCIMIENTO_INICIO between FECHA_VENCIMIENTO_FIN)
Condicion := NewBinaryExpression(NewField('', fld_RecibosProveedorFECHA_VENCIMIENTO), NewConstant(FechaVenInicio, datDateTime), dboGreaterOrEqual); Condicion := NewBinaryExpression(NewField('', fld_RecibosProveedorFECHA_VENCIMIENTO), NewConstant(FFechaVenInicio, datDateTime), dboGreaterOrEqual);
Condicion := NewBinaryExpression(NewBinaryExpression(NewField('', fld_RecibosProveedorFECHA_VENCIMIENTO), NewConstant(FechaVenFin, datDateTime), dboLessOrEqual), Condicion, dboAnd); Condicion := NewBinaryExpression(NewBinaryExpression(NewField('', fld_RecibosProveedorFECHA_VENCIMIENTO), NewConstant(FFechaVenFin, datDateTime), dboLessOrEqual), Condicion, dboAnd);
if IsEmpty then if IsEmpty then
Expression := Condicion Expression := Condicion
else else
@ -175,15 +263,15 @@ begin
end; end;
// Filtrar el informe por proveedor // Filtrar el informe por proveedor
if Assigned(ListaIDProveedores) then if Assigned(FListaIDProveedores) then
begin begin
with tbl_InformeListadoRecibos.DynamicWhere do with ATabla.DynamicWhere do
begin begin
for i := 0 to ListaIDProveedores.Count - 1 do for i := 0 to FListaIDProveedores.Count - 1 do
begin begin
// (ID_PROVEEDOR = ID) // (ID_PROVEEDOR = ID)
Condicion := NewBinaryExpression(NewField('', fld_RecibosProveedorID_PROVEEDOR), NewConstant(ListaIDProveedores.Items[i], datInteger), dboEqual); Condicion := NewBinaryExpression(NewField('', fld_RecibosProveedorID_PROVEEDOR), NewConstant(FListaIDProveedores.Items[i], datInteger), dboEqual);
if IsEmpty then if IsEmpty then
Expression := Condicion Expression := Condicion
else else
@ -192,36 +280,127 @@ begin
end; end;
end; end;
// Filtrar el informe por importe minimo // Filtrar el informe por solo recibos pendientes
if (ImporteMinimo > 0) then if FSoloPendientes then
begin begin
with tbl_InformeListadoRecibos.DynamicWhere do // Filtrar el informe por situacion
with ATabla.DynamicWhere do
begin begin
// (IMPORTE_TOTAL > ImporteMinimo) // (ID_EMPRESA >= ID)
Condicion := NewBinaryExpression(NewField('', fld_RecibosProveedorIMPORTE_TOTAL), NewConstant(ImporteMinimo, datCurrency), dboGreaterOrEqual); Condicion := NewBinaryExpression(NewField('', fld_RecibosProveedorSITUACION), NewConstant('PAGADO', datString), dboNotEqual);
if IsEmpty then if IsEmpty then
Expression := Condicion Expression := Condicion
else else
Expression := NewBinaryExpression(Expression, Condicion, dboAnd); Expression := NewBinaryExpression(Expression, Condicion, dboAnd);
end; end;
end; end;
end;
tbl_InformeListadoRecibos.Active := True; procedure TRptRecibosProveedor.RecuperarNombresProveedores;
var
AContactosService : IsrvContactos;
Intf : IInterface;
AClientID : TGUID;
AInforme := DarRutaFichero(DarRutaInformes, TipoInforme, IntToStr(IdEmpresa)); ATableNameArray: StringArray;
ATableRequestInfoArray: TableRequestInfoArray;
ATableRequestInfo: TableRequestInfoV5;
AStream: TMemoryStream;
ADataTable: TDAMemDataTable;
i: Integer;
AWhereBuilder : TDAWhereBuilder;
ACondicion : TDAWhereExpression;
begin
CreateGUID(AClientID);
GetClassFactory('srvContactos').CreateInstance(AClientID, Intf);
if Assigned(Intf) then
begin
AContactosService := Intf as IsrvContactos;
ATableNameArray := StringArray.Create;
ATableRequestInfoArray := TableRequestInfoArray.Create;
AWhereBuilder := TDAWhereBuilder.Create;
try
ATableNameArray.Add('Proveedores');
ATableRequestInfo := TableRequestInfoV5.Create;
with ATableRequestInfo do
begin
IncludeSchema := True;
MaxRecords := -1;
UserFilter := '';
AWhereBuilder.Clear;
with AWhereBuilder do
for i := 0 to FListaIDProveedores.Count - 1 do
begin
ACondicion := NewBinaryExpression(
NewBinaryExpression(NewField('', 'ID'), NewConstant(FListaIDProveedores[i], datInteger), dboEqual),
NewBinaryExpression(NewField('', 'ID_EMPRESA'), NewConstant(FIdEmpresa, datInteger), dboEqual),
dboAnd);
if not AWhereBuilder.IsEmpty then
Expression := NewBinaryExpression(Expression, ACondicion, dboOr)
else
Expression := ACondicion;
end;
WhereClause := AWhereBuilder.ExpressionToXmlNode(AWhereBuilder.Expression);
end;
try
ATableRequestInfoArray.Add(ATableRequestInfo);
AStream := AContactosService.GetData(ATableNameArray, ATableRequestInfoArray);
if Assigned(AStream) then
begin
ADataTable := TDAMemDataTable.Create(nil);
try
ADataTable.Name := 'Proveedores';
ADataTable.LocalDataStreamer := Bin2DataStreamer;
ADataTable.RemoteFetchEnabled := False;
Bin2DataStreamer.ReadDataset(AStream, ADataTable, True);
ADataTable.Open;
FListaNombresProveedores.Clear;
for i := 0 to ADataTable.RecordCount - 1 do
begin
FListaNombresProveedores.Add(ADataTable.FieldByName('NOMBRE').AsString);
ADataTable.Next;
end;
finally
FreeANDNil(ADataTable);
end;
end;
except
on e: Exception do
dmServer.EscribirLog(e.Message);
end;
finally
FreeANDNIL(ATableRequestInfoArray);
FreeANDNIL(ATableNameArray);
FreeANDNIL(AWhereBuilder);
end;
end;
end;
function TRptRecibosProveedor._GenerarInforme(const TipoInforme: String): Binary;
var
AInforme: Variant;
begin
Result := Binary.Create;
AInforme := DarRutaFichero(DarRutaInformes, TipoInforme, IntTostr(FIdEmpresa));
if VarIsNull(AInforme) then if VarIsNull(AInforme) then
raise Exception.Create (('Error Servidor: _GenerarInforme, no encuentra informe ' + TipoInforme)); raise Exception.Create (('Error Servidor: _GenerarInforme, no encuentra informe ' + TipoInforme));
frxReport.LoadFromFile(AInforme, True); frxReport.LoadFromFile(AInforme, True);
frxReport.Variables.Variables['FechaInicio'] := FechaInicio; IniciarParametrosInforme;
frxReport.Variables.Variables['FechaFin'] := FechaFin;
frxReport.PrepareReport(False); frxReport.PrepareReport(False);
frxReport.PreviewPages.SaveToStream(Result); frxReport.PreviewPages.SaveToStream(Result);
finally
FConnection.RollbackTransaction; //<--- Creo que no va a hacer falta. "PUES SI ES NECESARIO"
end;
end; end;
end. end.

Some files were not shown because too many files have changed in this diff Show More