Version 5.2.2

Primera subida de cambios para verifactu, otros cambios menores solicitados
This commit is contained in:
roberto 2025-10-20 12:26:25 +02:00
parent 267014df42
commit 0f872ca3f2
72 changed files with 2022 additions and 652 deletions

View File

@ -44,6 +44,13 @@
<Borland.ProjectType>Package</Borland.ProjectType> <Borland.ProjectType>Package</Borland.ProjectType>
<BorlandProject> <BorlandProject>
<BorlandProject><Delphi.Personality><Parameters><Parameters Name="UseLauncher">False</Parameters><Parameters Name="LoadAllSymbols">True</Parameters><Parameters Name="LoadUnspecifiedSymbols">False</Parameters></Parameters><Package_Options><Package_Options Name="PackageDescription">Libreria base de FactuGES</Package_Options><Package_Options Name="ImplicitBuild">False</Package_Options><Package_Options Name="DesigntimeOnly">False</Package_Options><Package_Options Name="RuntimeOnly">False</Package_Options></Package_Options><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"></VersionInfoKeys><VersionInfoKeys Name="FileDescription"></VersionInfoKeys><VersionInfoKeys Name="FileVersion">1.0.0.0</VersionInfoKeys><VersionInfoKeys Name="InternalName"></VersionInfoKeys><VersionInfoKeys Name="LegalCopyright"></VersionInfoKeys><VersionInfoKeys Name="LegalTrademarks"></VersionInfoKeys><VersionInfoKeys Name="OriginalFilename"></VersionInfoKeys><VersionInfoKeys Name="ProductName"></VersionInfoKeys><VersionInfoKeys Name="ProductVersion">1.0.0.0</VersionInfoKeys></VersionInfoKeys><Excluded_Packages> <BorlandProject><Delphi.Personality><Parameters><Parameters Name="UseLauncher">False</Parameters><Parameters Name="LoadAllSymbols">True</Parameters><Parameters Name="LoadUnspecifiedSymbols">False</Parameters></Parameters><Package_Options><Package_Options Name="PackageDescription">Libreria base de FactuGES</Package_Options><Package_Options Name="ImplicitBuild">False</Package_Options><Package_Options Name="DesigntimeOnly">False</Package_Options><Package_Options Name="RuntimeOnly">False</Package_Options></Package_Options><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"></VersionInfoKeys><VersionInfoKeys Name="FileDescription"></VersionInfoKeys><VersionInfoKeys Name="FileVersion">1.0.0.0</VersionInfoKeys><VersionInfoKeys Name="InternalName"></VersionInfoKeys><VersionInfoKeys Name="LegalCopyright"></VersionInfoKeys><VersionInfoKeys Name="LegalTrademarks"></VersionInfoKeys><VersionInfoKeys Name="OriginalFilename"></VersionInfoKeys><VersionInfoKeys Name="ProductName"></VersionInfoKeys><VersionInfoKeys Name="ProductVersion">1.0.0.0</VersionInfoKeys></VersionInfoKeys><Excluded_Packages>
<Excluded_Packages Name="$(BDS)\Bin\dclintraweb_90_100.bpl">VCL for the Web Design Package for CodeGear RAD Studio</Excluded_Packages> <Excluded_Packages Name="$(BDS)\Bin\dclintraweb_90_100.bpl">VCL for the Web Design Package for CodeGear RAD Studio</Excluded_Packages>
<Excluded_Packages Name="$(BDS)\bin\dclwebsnap100.bpl">CodeGear WebSnap Components</Excluded_Packages> <Excluded_Packages Name="$(BDS)\bin\dclwebsnap100.bpl">CodeGear WebSnap Components</Excluded_Packages>
<Excluded_Packages Name="$(BDS)\bin\dclsoap100.bpl">CodeGear SOAP Components</Excluded_Packages> <Excluded_Packages Name="$(BDS)\bin\dclsoap100.bpl">CodeGear SOAP Components</Excluded_Packages>
@ -58,56 +65,56 @@
<DelphiCompile Include="Base.dpk"> <DelphiCompile Include="Base.dpk">
<MainSource>MainSource</MainSource> <MainSource>MainSource</MainSource>
</DelphiCompile> </DelphiCompile>
<DCCReference Include="$(SystemRoot)\system32\adortl.dcp" />
<DCCReference Include="$(SystemRoot)\system32\cxDataD11.dcp" />
<DCCReference Include="$(SystemRoot)\system32\cxEditorsD11.dcp" />
<DCCReference Include="$(SystemRoot)\system32\cxExtEditorsD11.dcp" />
<DCCReference Include="$(SystemRoot)\system32\cxGridD11.dcp" />
<DCCReference Include="$(SystemRoot)\system32\cxLibraryD11.dcp" />
<DCCReference Include="$(SystemRoot)\system32\cxPageControlD11.dcp" />
<DCCReference Include="$(SystemRoot)\system32\DataAbstract_Core_D11.dcp" />
<DCCReference Include="$(SystemRoot)\system32\dbrtl.dcp" />
<DCCReference Include="$(SystemRoot)\system32\dclIndyCore.dcp" />
<DCCReference Include="$(SystemRoot)\system32\designide.dcp" />
<DCCReference Include="$(SystemRoot)\system32\dsnap.dcp" />
<DCCReference Include="$(SystemRoot)\system32\dxCoreD11.dcp" />
<DCCReference Include="$(SystemRoot)\system32\dxGDIPlusD11.dcp" />
<DCCReference Include="$(SystemRoot)\system32\dxPSCoreD11.dcp" />
<DCCReference Include="$(SystemRoot)\system32\dxThemeD11.dcp" />
<DCCReference Include="$(SystemRoot)\system32\GUISDK_D11R.dcp" />
<DCCReference Include="$(SystemRoot)\system32\IndyCore.dcp" />
<DCCReference Include="$(SystemRoot)\system32\IndyProtocols.dcp" />
<DCCReference Include="$(SystemRoot)\system32\IndySystem.dcp" />
<DCCReference Include="$(SystemRoot)\system32\Jcl.dcp" />
<DCCReference Include="$(SystemRoot)\system32\JclVcl.dcp" />
<DCCReference Include="$(SystemRoot)\system32\JSDialog100.dcp" />
<DCCReference Include="$(SystemRoot)\system32\JvCmpD11R.dcp" />
<DCCReference Include="$(SystemRoot)\system32\JvCoreD11R.dcp" />
<DCCReference Include="$(SystemRoot)\system32\JvCtrlsD11R.dcp" />
<DCCReference Include="$(SystemRoot)\system32\JvDlgsD11R.dcp" />
<DCCReference Include="$(SystemRoot)\system32\JvMMD11R.dcp" />
<DCCReference Include="$(SystemRoot)\system32\JvNetD11R.dcp" />
<DCCReference Include="$(SystemRoot)\system32\JvPageCompsD11R.dcp" />
<DCCReference Include="$(SystemRoot)\system32\JvStdCtrlsD11R.dcp" />
<DCCReference Include="$(SystemRoot)\system32\JvSystemD11R.dcp" />
<DCCReference Include="$(SystemRoot)\system32\pckMD5.dcp" />
<DCCReference Include="$(SystemRoot)\system32\pckUCDataConnector.dcp" />
<DCCReference Include="$(SystemRoot)\system32\pckUserControl_RT.dcp" />
<DCCReference Include="$(SystemRoot)\system32\PluginSDK_D11R.dcp" />
<DCCReference Include="$(SystemRoot)\system32\PngComponentsD10.dcp" />
<DCCReference Include="$(SystemRoot)\system32\PNG_D10.dcp" />
<DCCReference Include="$(SystemRoot)\system32\RemObjects_Core_D11.dcp" />
<DCCReference Include="$(SystemRoot)\system32\rtl.dcp" />
<DCCReference Include="$(SystemRoot)\system32\TB2k_D10.dcp" />
<DCCReference Include="$(SystemRoot)\system32\tbx_d10.dcp" />
<DCCReference Include="$(SystemRoot)\system32\vcl.dcp" />
<DCCReference Include="$(SystemRoot)\system32\vclactnband.dcp" />
<DCCReference Include="$(SystemRoot)\system32\vcldb.dcp" />
<DCCReference Include="$(SystemRoot)\system32\vcljpg.dcp" />
<DCCReference Include="$(SystemRoot)\system32\VclSmp.dcp" />
<DCCReference Include="$(SystemRoot)\system32\vclx.dcp" />
<DCCReference Include="$(SystemRoot)\system32\xmlrtl.dcp" />
<DCCReference Include="..\Servicios\FactuGES_Intf.pas" /> <DCCReference Include="..\Servicios\FactuGES_Intf.pas" />
<DCCReference Include="C:\Documents and Settings\Usuario\adortl.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\cxDataD11.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\cxEditorsD11.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\cxExtEditorsD11.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\cxGridD11.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\cxLibraryD11.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\cxPageControlD11.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\DataAbstract_Core_D11.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\dbrtl.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\dclIndyCore.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\designide.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\dsnap.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\dxCoreD11.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\dxGDIPlusD11.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\dxPSCoreD11.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\dxThemeD11.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\GUISDK_D11R.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\IndyCore.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\IndyProtocols.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\IndySystem.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\Jcl.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\JclVcl.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\JSDialog100.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\JvCmpD11R.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\JvCoreD11R.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\JvCtrlsD11R.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\JvDlgsD11R.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\JvMMD11R.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\JvNetD11R.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\JvPageCompsD11R.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\JvStdCtrlsD11R.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\JvSystemD11R.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\pckMD5.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\pckUCDataConnector.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\pckUserControl_RT.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\PluginSDK_D11R.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\PngComponentsD10.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\PNG_D10.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\RemObjects_Core_D11.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\rtl.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\TB2k_D10.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\tbx_d10.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\vcl.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\vclactnband.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\vcldb.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\vcljpg.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\VclSmp.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\vclx.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\xmlrtl.dcp" />
<DCCReference Include="Conexion\uConfigurarConexion.pas"> <DCCReference Include="Conexion\uConfigurarConexion.pas">
<Form>fConfigurarConexion</Form> <Form>fConfigurarConexion</Form>
<DesignClass>TForm</DesignClass> <DesignClass>TForm</DesignClass>

View File

@ -14,6 +14,8 @@ const
CTE_DESC_SALTO = 'SALTO DE PAGINA >>'; CTE_DESC_SALTO = 'SALTO DE PAGINA >>';
DESGLOSE_IVA = 1.21;
type type
TIntegerArray = array of Integer; TIntegerArray = array of Integer;
@ -32,7 +34,7 @@ type
// procedure Paste; // procedure Paste;
procedure ActualizarTotales(ADataTable: IDAStronglyTypedDataTable); procedure ActualizarTotales(ADataTable: IDAStronglyTypedDataTable);
function DarTotalImporteTotal(ADataTable: IDAStronglyTypedDataTable): Double; function DarTotalImporteTotal(ADataTable: IDAStronglyTypedDataTable; const DesglosarIVA: Boolean = False): Double;
function LocalizarPosicion(ADataTable: IDAStronglyTypedDataTable; const APosicion: Integer): Boolean; function LocalizarPosicion(ADataTable: IDAStronglyTypedDataTable; const APosicion: Integer): Boolean;
function DarListaTiposDetalle: TStringList; function DarListaTiposDetalle: TStringList;
@ -44,7 +46,7 @@ type
fUpdateCount: Integer; fUpdateCount: Integer;
FImporteSubtotal: Double; FImporteSubtotal: Double;
function CalcularTotales(Modificar: boolean; DataTable: TDADataTable): Double; function CalcularTotales(Modificar: boolean; DataTable: TDADataTable; const DesglosarIVA: Boolean = False): Double;
protected protected
procedure Renumerar(DataTable: TDADataTable; LocalizaPosicion: Integer); procedure Renumerar(DataTable: TDADataTable; LocalizaPosicion: Integer);
@ -56,7 +58,7 @@ type
//Si sobreescribimos este método podremos tener en cuenta otras columnas para el calculo del importe total de un concepto //Si sobreescribimos este método podremos tener en cuenta otras columnas para el calculo del importe total de un concepto
function CalcularImporteTotalConcepto(DataTable: TDADataTable): Double; virtual; function CalcularImporteTotalConcepto(DataTable: TDADataTable): Double; virtual;
procedure TratamientoDetalleConcepto(DataTable: TDADataTable); virtual; procedure TratamientoDetalleConcepto(DataTable: TDADataTable; const DesglosarIVA: Boolean = False); virtual;
procedure CalculoDetalleConcepto(DataTable: TDADataTable; var ImporteAcumulado : Double; var ImporteTotal : Double; const Opcional: Boolean); virtual; procedure CalculoDetalleConcepto(DataTable: TDADataTable; var ImporteAcumulado : Double; var ImporteTotal : Double; const Opcional: Boolean); virtual;
procedure TratamientoDetalleSalto(DataTable: TDADataTable); virtual; procedure TratamientoDetalleSalto(DataTable: TDADataTable); virtual;
procedure CalculoDetalleSalto(DataTable: TDADataTable; var ImporteAcumulado : Double; var ImporteTotal : Double); virtual; procedure CalculoDetalleSalto(DataTable: TDADataTable; var ImporteAcumulado : Double; var ImporteTotal : Double); virtual;
@ -88,7 +90,7 @@ type
// procedure Paste; // procedure Paste;
procedure ActualizarTotales(ADataTable: IDAStronglyTypedDataTable); procedure ActualizarTotales(ADataTable: IDAStronglyTypedDataTable);
function DarTotalImporteTotal(ADataTable: IDAStronglyTypedDataTable): Double; function DarTotalImporteTotal(ADataTable: IDAStronglyTypedDataTable; const DesglosarIVA: Boolean = False): Double;
function DarListaTiposDetalle: TStringList; virtual; function DarListaTiposDetalle: TStringList; virtual;
function LocalizarPosicion(ADataTable: IDAStronglyTypedDataTable; const APosicion: Integer): Boolean; function LocalizarPosicion(ADataTable: IDAStronglyTypedDataTable; const APosicion: Integer): Boolean;
@ -153,7 +155,7 @@ begin
Result := FieldByName(CAMPO_CANTIDAD).asFloat * FieldByName(CAMPO_IMPORTE_UNIDAD).AsFloat; Result := FieldByName(CAMPO_CANTIDAD).asFloat * FieldByName(CAMPO_IMPORTE_UNIDAD).AsFloat;
end; end;
function TControllerDetallesBase.CalcularTotales(Modificar: boolean; DataTable: TDADataTable): Double; function TControllerDetallesBase.CalcularTotales(Modificar: boolean; DataTable: TDADataTable; const DesglosarIVA: Boolean = False): Double;
{ {
funcion que recalcula todos los detalles de la tabla pasada por parametro y devuelve funcion que recalcula todos los detalles de la tabla pasada por parametro y devuelve
la cantidad total de los mismos la cantidad total de los mismos
@ -226,7 +228,7 @@ begin
else if (DataTable.FieldByName(CAMPO_TIPO).AsString = TIPO_DETALLE_CONCEPTO) then else if (DataTable.FieldByName(CAMPO_TIPO).AsString = TIPO_DETALLE_CONCEPTO) then
begin begin
if Modificar then if Modificar then
TratamientoDetalleConcepto(DataTable); //Se podrá sobreescribir para que se tengan en cuenta nuevos campos TratamientoDetalleConcepto(DataTable, DesglosarIVA); //Se podrá sobreescribir para que se tengan en cuenta nuevos campos
if DataTable.FieldByName(CAMPO_VISIBLE).AsBoolean then //Se usa para saber si el concepto se sumará o no como un concepto más del presupuesto if DataTable.FieldByName(CAMPO_VISIBLE).AsBoolean then //Se usa para saber si el concepto se sumará o no como un concepto más del presupuesto
CalculoDetalleConcepto(DataTable, AuxImporteAcumulado, AuxImporteTotal, SemaforoOpcional); //Se podrá sobreescribir para posibles nuevos calculos de los hijos CalculoDetalleConcepto(DataTable, AuxImporteAcumulado, AuxImporteTotal, SemaforoOpcional); //Se podrá sobreescribir para posibles nuevos calculos de los hijos
end end
@ -256,7 +258,6 @@ procedure TControllerDetallesBase.CalculoDetalleConcepto(DataTable: TDADataTable
begin begin
with DataTable do with DataTable do
begin begin
ImporteAcumulado := ImporteAcumulado + RoundCurrency(FieldByName(CAMPO_IMPORTE_TOTAL).AsCurrency); ImporteAcumulado := ImporteAcumulado + RoundCurrency(FieldByName(CAMPO_IMPORTE_TOTAL).AsCurrency);
// ImporteAcumulado := ImporteAcumulado + FieldByName(CAMPO_IMPORTE_TOTAL).AsFloat; // ImporteAcumulado := ImporteAcumulado + FieldByName(CAMPO_IMPORTE_TOTAL).AsFloat;
if not Opcional then if not Opcional then
@ -338,9 +339,12 @@ begin
Result.Values[TIPO_DETALLE_SALTO] := TIPO_DETALLE_SALTO; Result.Values[TIPO_DETALLE_SALTO] := TIPO_DETALLE_SALTO;
end; end;
function TControllerDetallesBase.DarTotalImporteTotal(ADataTable: IDAStronglyTypedDataTable): Double; function TControllerDetallesBase.DarTotalImporteTotal(ADataTable: IDAStronglyTypedDataTable; const DesglosarIVA: Boolean = False): Double;
begin begin
Result := CalcularTotales(False, ADataTable.DataTable); if DesglosarIVA then
Result := CalcularTotales(True, ADataTable.DataTable, DesglosarIVA)
else
Result := CalcularTotales(False, ADataTable.DataTable, DesglosarIVA);
end; end;
procedure TControllerDetallesBase.Delete(ADataTable: IDAStronglyTypedDataTable; Posicion: TIntegerArray); procedure TControllerDetallesBase.Delete(ADataTable: IDAStronglyTypedDataTable; Posicion: TIntegerArray);
@ -601,11 +605,16 @@ begin
end; end;
end; end;
procedure TControllerDetallesBase.TratamientoDetalleConcepto(DataTable: TDADataTable); procedure TControllerDetallesBase.TratamientoDetalleConcepto(DataTable: TDADataTable; const DesglosarIVA: Boolean = False);
begin begin
with DataTable do with DataTable do
begin begin
if not Editing then Edit; if not Editing then Edit;
//Si se desglosa IVA hay que quitar el IVA de los Importes Unidad antes de tratar el concepto
if DesglosarIVA then
DataTable.FieldByName(CAMPO_IMPORTE_UNIDAD).AsCurrency := RoundCurrency(DataTable.FieldByName(CAMPO_IMPORTE_UNIDAD).AsCurrency / DESGLOSE_IVA);
//Si alguno de los campos de calculo de total es nulo el total tambien será nulo //Si alguno de los campos de calculo de total es nulo el total tambien será nulo
if (VarIsNull(FieldByName(CAMPO_CANTIDAD).AsVariant) if (VarIsNull(FieldByName(CAMPO_CANTIDAD).AsVariant)
or VarIsNull(FieldByName(CAMPO_IMPORTE_UNIDAD).AsVariant)) or VarIsNull(FieldByName(CAMPO_IMPORTE_UNIDAD).AsVariant))

View File

@ -52,7 +52,8 @@
<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">5</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">5.0.0.0</VersionInfoKeys><VersionInfoKeys Name="InternalName">FactuGES</VersionInfoKeys><VersionInfoKeys Name="LegalCopyright"></VersionInfoKeys><VersionInfoKeys Name="LegalTrademarks"></VersionInfoKeys><VersionInfoKeys Name="OriginalFilename"></VersionInfoKeys><VersionInfoKeys Name="ProductName">FactuGES</VersionInfoKeys><VersionInfoKeys Name="ProductVersion">5.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">5</VersionInfo><VersionInfo Name="MinorVer">2</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">5.2.2.0</VersionInfoKeys><VersionInfoKeys Name="InternalName">FactuGES</VersionInfoKeys><VersionInfoKeys Name="LegalCopyright"></VersionInfoKeys><VersionInfoKeys Name="LegalTrademarks"></VersionInfoKeys><VersionInfoKeys Name="OriginalFilename"></VersionInfoKeys><VersionInfoKeys Name="ProductName">FactuGES</VersionInfoKeys><VersionInfoKeys Name="ProductVersion">5.2.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>

View File

@ -1,7 +1,7 @@
MAINICON ICON "C:\Codigo Acana\Resources\Iconos\Factuges.ico" MAINICON ICON "C:\Codigo Acana\Resources\Iconos\Factuges.ico"
1 VERSIONINFO 1 VERSIONINFO
FILEVERSION 5,0,0,0 FILEVERSION 5,2,2,0
PRODUCTVERSION 5,0,0,0 PRODUCTVERSION 5,2,2,0
FILEFLAGSMASK 0x3FL FILEFLAGSMASK 0x3FL
FILEFLAGS 0x00L FILEFLAGS 0x00L
FILEOS 0x40004L FILEOS 0x40004L
@ -13,10 +13,10 @@ BEGIN
BLOCK "0C0A04E4" BLOCK "0C0A04E4"
BEGIN BEGIN
VALUE "CompanyName", "Rodax Software S.L.\0" VALUE "CompanyName", "Rodax Software S.L.\0"
VALUE "FileVersion", "5.0.0.0\0" VALUE "FileVersion", "5.2.2.0\0"
VALUE "InternalName", "FactuGES\0" VALUE "InternalName", "FactuGES\0"
VALUE "ProductName", "FactuGES\0" VALUE "ProductName", "FactuGES\0"
VALUE "ProductVersion", "5.0.0.0\0" VALUE "ProductVersion", "5.2.2.0\0"
END END
END END
BLOCK "VarFileInfo" BLOCK "VarFileInfo"

Binary file not shown.

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -42,8 +42,8 @@ type
function ExtraerSeleccionados(AAlbaran: IBizAlbaranCliente) : IBizAlbaranCliente; function ExtraerSeleccionados(AAlbaran: IBizAlbaranCliente) : IBizAlbaranCliente;
function ElegirAlbaranes(AAlbaran: IBizAlbaranCliente; AMensaje: String; AMultiSelect: Boolean): IBizAlbaranCliente; function ElegirAlbaranes(AAlbaran: IBizAlbaranCliente; AMensaje: String; AMultiSelect: Boolean): IBizAlbaranCliente;
procedure Preview(AAlbaran : IBizAlbaranCliente; AllItems: Boolean = false; const VerPrecios: Boolean = True; const VerTrabajos: Boolean = True; const VerIncidencias: Boolean = True); procedure Preview(AAlbaran : IBizAlbaranCliente; AllItems: Boolean = false; const VerPrecios: Boolean = True; const VerTrabajos: Boolean = True; const VerIncidencias: Boolean = True; const VerSoloTotales: Boolean = False);
procedure Print(AAlbaran : IBizAlbaranCliente; AllItems: Boolean = false; const VerPrecios: Boolean = True; const VerTrabajos: Boolean = True; const VerIncidencias: Boolean = True); procedure Print(AAlbaran : IBizAlbaranCliente; AllItems: Boolean = false; const VerPrecios: Boolean = True; const VerTrabajos: Boolean = True; const VerIncidencias: Boolean = True; const VerSoloTotales: Boolean = False);
procedure EtiquetasPreview(AAlbaran : IBizAlbaranCliente; Const withRefCliente: Boolean); procedure EtiquetasPreview(AAlbaran : IBizAlbaranCliente; Const withRefCliente: Boolean);
procedure EtiquetasPrint(AAlbaran : IBizAlbaranCliente; Const withRefCliente: Boolean); procedure EtiquetasPrint(AAlbaran : IBizAlbaranCliente; Const withRefCliente: Boolean);
@ -136,8 +136,8 @@ type
DoPost: Boolean = True) : Boolean; DoPost: Boolean = True) : Boolean;
procedure EnviarAlbaranPorEMail(AAlbaran : IBizAlbaranCliente); procedure EnviarAlbaranPorEMail(AAlbaran : IBizAlbaranCliente);
procedure Preview(AAlbaran : IBizAlbaranCliente; AllItems: Boolean = false; const VerPrecios: Boolean = True; const VerTrabajos: Boolean = True; const VerIncidencias: Boolean = True); procedure Preview(AAlbaran : IBizAlbaranCliente; AllItems: Boolean = false; const VerPrecios: Boolean = True; const VerTrabajos: Boolean = True; const VerIncidencias: Boolean = True; const VerSoloTotales: Boolean = False);
procedure Print(AAlbaran : IBizAlbaranCliente; AllItems: Boolean = false; const VerPrecios: Boolean = True; const VerTrabajos: Boolean = True; const VerIncidencias: Boolean = True); procedure Print(AAlbaran : IBizAlbaranCliente; AllItems: Boolean = false; const VerPrecios: Boolean = True; const VerTrabajos: Boolean = True; const VerIncidencias: Boolean = True; const VerSoloTotales: Boolean = False);
procedure EtiquetasPreview(AAlbaran : IBizAlbaranCliente; Const withRefCliente: Boolean); procedure EtiquetasPreview(AAlbaran : IBizAlbaranCliente; Const withRefCliente: Boolean);
procedure EtiquetasPrint(AAlbaran : IBizAlbaranCliente; Const withRefCliente: Boolean); procedure EtiquetasPrint(AAlbaran : IBizAlbaranCliente; Const withRefCliente: Boolean);
@ -1003,7 +1003,7 @@ begin
end; end;
end; end;
procedure TAlbaranesClienteController.Preview(AAlbaran: IBizAlbaranCliente; AllItems: Boolean = false; const VerPrecios: Boolean = True; const VerTrabajos: Boolean = True; const VerIncidencias: Boolean = True); procedure TAlbaranesClienteController.Preview(AAlbaran: IBizAlbaranCliente; AllItems: Boolean = false; const VerPrecios: Boolean = True; const VerTrabajos: Boolean = True; const VerIncidencias: Boolean = True; const VerSoloTotales: Boolean = False);
var var
AReportController : IAlbaranesClienteReportController; AReportController : IAlbaranesClienteReportController;
ID_Albaranes: TIntegerList; ID_Albaranes: TIntegerList;
@ -1031,7 +1031,7 @@ begin
else else
ID_Albaranes.Add(AAlbaran.ID); ID_Albaranes.Add(AAlbaran.ID);
AReportController.Preview(ID_Albaranes, VerPrecios, VerTrabajos, VerIncidencias); AReportController.Preview(ID_Albaranes, VerPrecios, VerTrabajos, VerIncidencias, VerSoloTotales);
finally finally
AReportController := NIL; AReportController := NIL;
@ -1039,7 +1039,7 @@ begin
end; end;
end; end;
procedure TAlbaranesClienteController.Print(AAlbaran: IBizAlbaranCliente; AllItems: Boolean = false; const VerPrecios: Boolean = True; const VerTrabajos: Boolean = True; const VerIncidencias: Boolean = True); procedure TAlbaranesClienteController.Print(AAlbaran: IBizAlbaranCliente; AllItems: Boolean = false; const VerPrecios: Boolean = True; const VerTrabajos: Boolean = True; const VerIncidencias: Boolean = True; const VerSoloTotales: Boolean = False);
var var
AReportController : IAlbaranesClienteReportController; AReportController : IAlbaranesClienteReportController;
ID_Albaranes: TIntegerList; ID_Albaranes: TIntegerList;
@ -1065,7 +1065,7 @@ begin
else else
ID_Albaranes.Add(AAlbaran.ID); ID_Albaranes.Add(AAlbaran.ID);
AReportController.Print(ID_Albaranes, VerPrecios, VerTrabajos, VerIncidencias); AReportController.Print(ID_Albaranes, VerPrecios, VerTrabajos, VerIncidencias, VerSoloTotales);
finally finally
AReportController := NIL; AReportController := NIL;

View File

@ -10,8 +10,8 @@ uses
type type
IAlbaranesClienteReportController = interface(IControllerBase) IAlbaranesClienteReportController = interface(IControllerBase)
['{4BCC7A93-3322-494C-A3FA-118F4B62CB15}'] ['{4BCC7A93-3322-494C-A3FA-118F4B62CB15}']
procedure Preview(const AListaID : TIntegerList; const VerPrecios: Boolean; const VerTrabajos: Boolean = True; const VerIncidencias: Boolean = True); procedure Preview(const AListaID : TIntegerList; const VerPrecios: Boolean; const VerTrabajos: Boolean = True; const VerIncidencias: Boolean = True; const VerSoloTotales: Boolean = False);
procedure Print(const AListaID : TIntegerList; const VerPrecios: Boolean; const VerTrabajos: Boolean = True; const VerIncidencias: Boolean = True); procedure Print(const AListaID : TIntegerList; const VerPrecios: Boolean; const VerTrabajos: Boolean = True; const VerIncidencias: Boolean = True; const VerSoloTotales: Boolean = False);
procedure EtiquetasPreview(const AID : integer; Const withRefCliente: Boolean); procedure EtiquetasPreview(const AID : integer; Const withRefCliente: Boolean);
procedure EtiquetasPrint(const AID : integer; Const withRefCliente: Boolean); procedure EtiquetasPrint(const AID : integer; Const withRefCliente: Boolean);
function ExportToPDF(const AID: Integer; const AFileName : String = ''; const VerPrecios: Boolean = True): Boolean; function ExportToPDF(const AID: Integer; const AFileName : String = ''; const VerPrecios: Boolean = True): Boolean;
@ -26,8 +26,8 @@ type
constructor Create; override; constructor Create; override;
destructor Destroy; override; destructor Destroy; override;
procedure Preview(const AListaID : TIntegerList; const VerPrecios: Boolean; const VerTrabajos: Boolean = True; const VerIncidencias: Boolean = True); procedure Preview(const AListaID : TIntegerList; const VerPrecios: Boolean; const VerTrabajos: Boolean = True; const VerIncidencias: Boolean = True; const VerSoloTotales: Boolean = False);
procedure Print(const AListaID : TIntegerList; const VerPrecios: Boolean; const VerTrabajos: Boolean = True; const VerIncidencias: Boolean = True); procedure Print(const AListaID : TIntegerList; const VerPrecios: Boolean; const VerTrabajos: Boolean = True; const VerIncidencias: Boolean = True; const VerSoloTotales: Boolean = False);
procedure EtiquetasPreview(const AID : integer; Const withRefCliente: Boolean); procedure EtiquetasPreview(const AID : integer; Const withRefCliente: Boolean);
procedure EtiquetasPrint(const AID : integer; Const withRefCliente: Boolean); procedure EtiquetasPrint(const AID : integer; Const withRefCliente: Boolean);
function ExportToPDF(const AID: Integer; const AFileName : String = ''; const VerPrecios: Boolean = True): Boolean; function ExportToPDF(const AID: Integer; const AFileName : String = ''; const VerPrecios: Boolean = True): Boolean;
@ -135,14 +135,14 @@ begin
end; end;
end; end;
procedure TAlbaranesClienteReportController.Preview(const AListaID : TIntegerList; const VerPrecios: Boolean; const VerTrabajos: Boolean = True; const VerIncidencias: Boolean = True); procedure TAlbaranesClienteReportController.Preview(const AListaID : TIntegerList; const VerPrecios: Boolean; const VerTrabajos: Boolean = True; const VerIncidencias: Boolean = True; const VerSoloTotales: Boolean = False);
var var
AStream: Binary; AStream: Binary;
AEditor : IEditorAlbaranesClientePreview; AEditor : IEditorAlbaranesClientePreview;
begin begin
AEditor := NIL; AEditor := NIL;
AStream := FDataModule.GetRptAlbaranes(AListaID, VerPrecios, VerTrabajos, VerIncidencias); AStream := FDataModule.GetRptAlbaranes(AListaID, VerPrecios, VerTrabajos, VerIncidencias, VerSoloTotales);
try try
CreateEditor('EditorAlbaranesClientePreview', IEditorAlbaranesClientePreview, AEditor); CreateEditor('EditorAlbaranesClientePreview', IEditorAlbaranesClientePreview, AEditor);
if Assigned(AEditor) then if Assigned(AEditor) then
@ -163,7 +163,7 @@ begin
end; end;
end; end;
procedure TAlbaranesClienteReportController.Print(const AListaID : TIntegerList; const VerPrecios: Boolean; const VerTrabajos: Boolean = True; const VerIncidencias: Boolean = True); procedure TAlbaranesClienteReportController.Print(const AListaID : TIntegerList; const VerPrecios: Boolean; const VerTrabajos: Boolean = True; const VerIncidencias: Boolean = True; const VerSoloTotales: Boolean = False);
var var
AStream: Binary; AStream: Binary;
AEditor : IEditorAlbaranesClientePreview; AEditor : IEditorAlbaranesClientePreview;
@ -172,7 +172,7 @@ begin
ShowHourglassCursor; ShowHourglassCursor;
try try
AStream := FDataModule.GetRptAlbaranes(AListaID, VerPrecios, VerTrabajos, VerIncidencias); AStream := FDataModule.GetRptAlbaranes(AListaID, VerPrecios, VerTrabajos, VerIncidencias, VerSoloTotales);
try try
CreateEditor('EditorAlbaranesClientePreview', IEditorAlbaranesClientePreview, AEditor); CreateEditor('EditorAlbaranesClientePreview', IEditorAlbaranesClientePreview, AEditor);
if Assigned(AEditor) then if Assigned(AEditor) then

View File

@ -37,9 +37,9 @@ type
function NewItem : IBizAlbaranCliente; function NewItem : IBizAlbaranCliente;
// Report // Report
function GetRptAlbaranes(const ListaID: TIntegerList; const VerPrecios: Boolean = False; const VerTrabajos: Boolean = False; const VerIncidencias: Boolean = False): Binary; function GetRptAlbaranes(const ListaID: TIntegerList; const VerPrecios: Boolean = False; const VerTrabajos: Boolean = False; const VerIncidencias: Boolean = False; const VerSoloTotales: Boolean = False): Binary;
function GetEtiquetas(const AID: Integer; withRefCliente: Boolean): Binary; function GetEtiquetas(const AID: Integer; withRefCliente: Boolean): Binary;
function GetRptPDFAlbaran(const AID: Integer; const VerPrecios: Boolean = False; const VerTrabajos: Boolean = False; const VerIncidencias: Boolean = False): Binary; function GetRptPDFAlbaran(const AID: Integer; const VerPrecios: Boolean = False; const VerTrabajos: Boolean = False; const VerIncidencias: Boolean = False; const VerSoloTotales: Boolean = False): Binary;
end; end;
implementation implementation
@ -63,26 +63,26 @@ begin
RORemoteService.Message := dmConexion.Message; RORemoteService.Message := dmConexion.Message;
end; end;
function TDataModuleAlbaranesCliente.GetRptAlbaranes(const ListaID: TIntegerList; const VerPrecios: Boolean = False; const VerTrabajos: Boolean = False; const VerIncidencias: Boolean = False): Binary; function TDataModuleAlbaranesCliente.GetRptAlbaranes(const ListaID: TIntegerList; const VerPrecios: Boolean = False; const VerTrabajos: Boolean = False; const VerIncidencias: Boolean = False; const VerSoloTotales: Boolean = False): Binary;
var var
AParam : TIntegerArray; AParam : TIntegerArray;
begin begin
AParam := ListaID.ToIntegerArray; AParam := ListaID.ToIntegerArray;
try try
Result := (RORemoteService as IsrvAlbaranesCliente).GenerarInforme(AParam, VerPrecios, VerTrabajos, VerIncidencias); Result := (RORemoteService as IsrvAlbaranesCliente).GenerarInforme(AParam, VerPrecios, VerTrabajos, VerIncidencias, VerSoloTotales);
finally finally
FreeAndNil(AParam); FreeAndNil(AParam);
end; end;
end; end;
function TDataModuleAlbaranesCliente.GetRptPDFAlbaran(const AID: Integer; const VerPrecios, VerTrabajos, VerIncidencias: Boolean): Binary; function TDataModuleAlbaranesCliente.GetRptPDFAlbaran(const AID: Integer; const VerPrecios, VerTrabajos, VerIncidencias: Boolean; const VerSoloTotales: Boolean): Binary;
var var
AParam : TIntegerArray; AParam : TIntegerArray;
begin begin
AParam := TIntegerArray.Create; AParam := TIntegerArray.Create;
try try
AParam.Add(AID); AParam.Add(AID);
Result := (RORemoteService as IsrvAlbaranesCliente).GenerarInforme(AParam, VerPrecios, VerTrabajos, VerIncidencias); Result := (RORemoteService as IsrvAlbaranesCliente).GenerarInforme(AParam, VerPrecios, VerTrabajos, VerIncidencias, VerSoloTotales);
finally finally
FreeAndNil(AParam); FreeAndNil(AParam);
end; end;

View File

@ -8,9 +8,9 @@ uses
type type
IDataModuleAlbaranesClienteReport = interface IDataModuleAlbaranesClienteReport = interface
['{32A52EC9-90F6-4934-9001-015A2579746D}'] ['{32A52EC9-90F6-4934-9001-015A2579746D}']
function GetRptAlbaranes(const ListaID: TIntegerList; const VerPrecios: Boolean = False; const VerTrabajos: Boolean = False; const VerIncidencias: Boolean = False): Binary; function GetRptAlbaranes(const ListaID: TIntegerList; const VerPrecios: Boolean = False; const VerTrabajos: Boolean = False; const VerIncidencias: Boolean = False; const VerSoloTotales: Boolean = False): Binary;
function GetEtiquetas(const AID: Integer; withRefCliente: Boolean): Binary; function GetEtiquetas(const AID: Integer; withRefCliente: Boolean): Binary;
function GetRptPDFAlbaran(const AID: Integer; const VerPrecios: Boolean = False; const VerTrabajos: Boolean = False; const VerIncidencias: Boolean = False): Binary; function GetRptPDFAlbaran(const AID: Integer; const VerPrecios: Boolean = False; const VerTrabajos: Boolean = False; const VerIncidencias: Boolean = False; const VerSoloTotales: Boolean = False): Binary;
end; end;
implementation implementation

View File

@ -39,11 +39,12 @@ type
FVerPrecios: Boolean; FVerPrecios: Boolean;
FVerTrabajos: Boolean; FVerTrabajos: Boolean;
FVerIncidencias: Boolean; FVerIncidencias: Boolean;
FVerSoloTotales: Boolean;
//Genera cada uno de los albaranes a imprimir //Genera cada uno de los albaranes a imprimir
procedure _GenerarAlbaran(const ID: Integer); procedure _GenerarAlbaran(const ID: Integer);
public public
function GenerarAlbaran(const ListaID : TIntegerArray; const VerPrecios: Boolean; const VerTrabajos: Boolean; const VerIncidencias: Boolean): Binary; function GenerarAlbaran(const ListaID : TIntegerArray; const VerPrecios: Boolean; const VerTrabajos: Boolean; const VerIncidencias: Boolean; const VerSoloTotales: Boolean): Binary;
function GenerarAlbaranEnPDF(const ListaID : TIntegerArray; const VerPrecios: Boolean; const VerTrabajos: Boolean; const VerIncidencias: Boolean): Binary; function GenerarAlbaranEnPDF(const ListaID : TIntegerArray; const VerPrecios: Boolean; const VerTrabajos: Boolean; const VerIncidencias: Boolean; const VerSoloTotales: Boolean): Binary;
function GenerarEtiquetas(const AID : Integer; withRefCliente: Boolean): Binary; function GenerarEtiquetas(const AID : Integer; withRefCliente: Boolean): Binary;
end; end;
@ -75,7 +76,7 @@ begin
end; end;
function TRptAlbaranesCliente.GenerarAlbaran(const ListaID : TIntegerArray; const VerPrecios: Boolean; const VerTrabajos: Boolean; const VerIncidencias: Boolean): Binary; function TRptAlbaranesCliente.GenerarAlbaran(const ListaID : TIntegerArray; const VerPrecios: Boolean; const VerTrabajos: Boolean; const VerIncidencias: Boolean; const VerSoloTotales: Boolean): Binary;
var var
i: Integer; i: Integer;
begin begin
@ -84,6 +85,7 @@ begin
FVerPrecios := VerPrecios; FVerPrecios := VerPrecios;
FVerTrabajos := VerTrabajos; FVerTrabajos := VerTrabajos;
FVerIncidencias := VerIncidencias; FVerIncidencias := VerIncidencias;
FVerSoloTotales := VerSoloTotales;
//Vamos generando todos y cada uno de los presupuestos recibidos //Vamos generando todos y cada uno de los presupuestos recibidos
for i := 0 to ListaID.Count - 1 do for i := 0 to ListaID.Count - 1 do
@ -92,7 +94,7 @@ begin
frxReport.PreviewPages.SaveToStream(Result); frxReport.PreviewPages.SaveToStream(Result);
end; end;
function TRptAlbaranesCliente.GenerarAlbaranEnPDF(const ListaID: TIntegerArray; const VerPrecios: Boolean; const VerTrabajos: Boolean; const VerIncidencias: Boolean): Binary; function TRptAlbaranesCliente.GenerarAlbaranEnPDF(const ListaID: TIntegerArray; const VerPrecios: Boolean; const VerTrabajos: Boolean; const VerIncidencias: Boolean; const VerSoloTotales: Boolean): Binary;
var var
i: Integer; i: Integer;
begin begin
@ -101,6 +103,7 @@ begin
FVerPrecios := VerPrecios; FVerPrecios := VerPrecios;
FVerTrabajos := VerTrabajos; FVerTrabajos := VerTrabajos;
FVerIncidencias := VerIncidencias; FVerIncidencias := VerIncidencias;
FVerSoloTotales := VerSoloTotales;
//Vamos generando todos y cada uno de los presupuestos recibidos //Vamos generando todos y cada uno de los presupuestos recibidos
for i := 0 to ListaID.Count - 1 do for i := 0 to ListaID.Count - 1 do
@ -134,6 +137,7 @@ begin
frxReport.Variables.Variables['VerPrecios'] := FVerPrecios; frxReport.Variables.Variables['VerPrecios'] := FVerPrecios;
frxReport.Variables.Variables['VerTrabajos'] := FVerTrabajos; frxReport.Variables.Variables['VerTrabajos'] := FVerTrabajos;
frxReport.Variables.Variables['VerIncidencias'] := FVerIncidencias; frxReport.Variables.Variables['VerIncidencias'] := FVerIncidencias;
frxReport.Variables.Variables['VerSoloTotales'] := FVerSoloTotales;
frxReport.ReportOptions.Name := 'Albarán de cliente ' + tbl_Cabecera.FieldByName('REFERENCIA').AsString; frxReport.ReportOptions.Name := 'Albarán de cliente ' + tbl_Cabecera.FieldByName('REFERENCIA').AsString;
frxReport.PrepareReport(False); frxReport.PrepareReport(False);
finally finally

View File

@ -32,7 +32,7 @@ type
procedure DARemoteServiceCreate(Sender: TObject); procedure DARemoteServiceCreate(Sender: TObject);
protected protected
{ IsrvAlbaranesCliente methods } { IsrvAlbaranesCliente methods }
function GenerarInforme(const ListaID: TIntegerArray; const VerPrecios: Boolean; const VerTrabajos: Boolean; const VerIncidencias: Boolean): Binary; function GenerarInforme(const ListaID: TIntegerArray; const VerPrecios: Boolean; const VerTrabajos: Boolean; const VerIncidencias: Boolean; const VerSoloTotales: Boolean): Binary;
function GenerarInformeEtiquetas(const ID: Integer; const withRefCliente: Boolean): Binary; function GenerarInformeEtiquetas(const ID: Integer; const withRefCliente: Boolean): Binary;
end; end;
@ -81,13 +81,13 @@ begin
ConnectionName := dmServer.ConnectionName; ConnectionName := dmServer.ConnectionName;
end; end;
function TsrvAlbaranesCliente.GenerarInforme(const ListaID: TIntegerArray; const VerPrecios: Boolean; const VerTrabajos: Boolean; const VerIncidencias: Boolean): Binary; function TsrvAlbaranesCliente.GenerarInforme(const ListaID: TIntegerArray; const VerPrecios: Boolean; const VerTrabajos: Boolean; const VerIncidencias: Boolean; const VerSoloTotales: Boolean): Binary;
var var
AReportGenerator : TRptAlbaranesCliente; AReportGenerator : TRptAlbaranesCliente;
begin begin
AReportGenerator := TRptAlbaranesCliente.Create(nil); AReportGenerator := TRptAlbaranesCliente.Create(nil);
try try
Result := AReportGenerator.GenerarAlbaran(ListaID, VerPrecios, VerTrabajos, VerIncidencias); Result := AReportGenerator.GenerarAlbaran(ListaID, VerPrecios, VerTrabajos, VerIncidencias, VerSoloTotales);
finally finally
FreeAndNIL(AReportGenerator); FreeAndNIL(AReportGenerator);
end; end;

View File

@ -3,7 +3,7 @@ inherited fDialogOpcionesImpresionAlbaranesCliente: TfDialogOpcionesImpresionAlb
ClientHeight = 237 ClientHeight = 237
ClientWidth = 393 ClientWidth = 393
ExplicitWidth = 399 ExplicitWidth = 399
ExplicitHeight = 269 ExplicitHeight = 265
PixelsPerInch = 96 PixelsPerInch = 96
TextHeight = 13 TextHeight = 13
inherited Bevel2: TBevel inherited Bevel2: TBevel
@ -47,12 +47,13 @@ inherited fDialogOpcionesImpresionAlbaranesCliente: TfDialogOpcionesImpresionAlb
inherited pnlCuerpo: TPanel inherited pnlCuerpo: TPanel
Width = 393 Width = 393
Height = 127 Height = 127
ExplicitTop = 70
ExplicitWidth = 393 ExplicitWidth = 393
ExplicitHeight = 127 ExplicitHeight = 127
object cbVerPrecios: TCheckBox object cbVerPrecios: TCheckBox
AlignWithMargins = True AlignWithMargins = True
Left = 50 Left = 50
Top = 29 Top = 6
Width = 415 Width = 415
Height = 17 Height = 17
Caption = 'Mostrar los precios' Caption = 'Mostrar los precios'
@ -82,6 +83,15 @@ inherited fDialogOpcionesImpresionAlbaranesCliente: TfDialogOpcionesImpresionAlb
State = cbChecked State = cbChecked
TabOrder = 2 TabOrder = 2
end end
object cbVerSoloTotales: TCheckBox
AlignWithMargins = True
Left = 50
Top = 29
Width = 415
Height = 17
Caption = 'Mostrar solo precios totales'
TabOrder = 3
end
end end
inherited ActionListDialog: TActionList inherited ActionListDialog: TActionList
inherited actAceptar: TAction inherited actAceptar: TAction

View File

@ -11,17 +11,18 @@ type
cbVerPrecios: TCheckBox; cbVerPrecios: TCheckBox;
cbVerIncidencias: TCheckBox; cbVerIncidencias: TCheckBox;
cbVerTrabajos: TCheckBox; cbVerTrabajos: TCheckBox;
cbVerSoloTotales: TCheckBox;
procedure actAceptarExecute(Sender: TObject); procedure actAceptarExecute(Sender: TObject);
procedure actCancelarExecute(Sender: TObject); procedure actCancelarExecute(Sender: TObject);
end; end;
function ElegirOpcionesImpresionAlbaranCliente(var AVerPrecios : Boolean; var AVerTrabajos : Boolean; var AVerIncidencias : Boolean): Boolean; function ElegirOpcionesImpresionAlbaranCliente(var AVerPrecios : Boolean; var AVerTrabajos : Boolean; var AVerIncidencias : Boolean; var AVerSoloTotales: Boolean): Boolean;
implementation implementation
{$R *.dfm} {$R *.dfm}
function ElegirOpcionesImpresionAlbaranCliente(var AVerPrecios : Boolean; var AVerTrabajos : Boolean; var AVerIncidencias : Boolean): Boolean; function ElegirOpcionesImpresionAlbaranCliente(var AVerPrecios : Boolean; var AVerTrabajos : Boolean; var AVerIncidencias : Boolean; var AVerSoloTotales: Boolean): Boolean;
var var
AEditor : TfDialogOpcionesImpresionAlbaranesCliente; AEditor : TfDialogOpcionesImpresionAlbaranesCliente;
begin begin
@ -30,6 +31,7 @@ begin
AEditor.cbVerPrecios.Checked := AVerPrecios; AEditor.cbVerPrecios.Checked := AVerPrecios;
AEditor.cbVerTrabajos.Checked := AVerTrabajos; AEditor.cbVerTrabajos.Checked := AVerTrabajos;
AEditor.cbVerIncidencias.Checked := AVerIncidencias; AEditor.cbVerIncidencias.Checked := AVerIncidencias;
AEditor.cbVerSoloTotales.Checked := AVerSoloTotales;
Result := (AEditor.ShowModal = mrOk); Result := (AEditor.ShowModal = mrOk);
@ -38,6 +40,7 @@ begin
AVerPrecios := AEditor.cbVerPrecios.Checked; AVerPrecios := AEditor.cbVerPrecios.Checked;
AVerTrabajos := AEditor.cbVerTrabajos.Checked; AVerTrabajos := AEditor.cbVerTrabajos.Checked;
AVerIncidencias := AEditor.cbVerIncidencias.Checked; AVerIncidencias := AEditor.cbVerIncidencias.Checked;
AVerSoloTotales := AEditor.cbVerSoloTotales.Checked;
end; end;
finally finally
AEditor.Release; AEditor.Release;

View File

@ -5,14 +5,13 @@ inherited fEditorAlbaranCliente: TfEditorAlbaranCliente
ClientHeight = 585 ClientHeight = 585
ClientWidth = 765 ClientWidth = 765
OnClose = CustomEditorClose OnClose = CustomEditorClose
ExplicitWidth = 773 ExplicitWidth = 781
ExplicitHeight = 619 ExplicitHeight = 623
PixelsPerInch = 96 PixelsPerInch = 96
TextHeight = 13 TextHeight = 13
inherited JvNavPanelHeader: TJvNavPanelHeader inherited JvNavPanelHeader: TJvNavPanelHeader
Width = 765 Width = 765
Caption = 'Nuevo albar'#225'n de cliente' Caption = 'Nuevo albar'#225'n de cliente'
ExplicitTop = 49
ExplicitWidth = 765 ExplicitWidth = 765
inherited Image1: TImage inherited Image1: TImage
Left = 738 Left = 738
@ -125,12 +124,18 @@ inherited fEditorAlbaranCliente: TfEditorAlbaranCliente
0000000049454E44AE426082} 0000000049454E44AE426082}
ExplicitLeft = 735 ExplicitLeft = 735
end end
inherited lblDesbloquear: TcxLabel
Left = 640
ExplicitLeft = 640
AnchorX = 685
AnchorY = 14
end
end end
inherited TBXDock: TTBXDock inherited TBXDock: TTBXDock
Width = 765 Width = 765
ExplicitWidth = 765 ExplicitWidth = 765
inherited tbxMain: TTBXToolbar inherited tbxMain: TTBXToolbar
ExplicitWidth = 488 ExplicitWidth = 518
inherited TBXItem2: TTBXItem inherited TBXItem2: TTBXItem
Visible = False Visible = False
end end
@ -157,29 +162,32 @@ inherited fEditorAlbaranCliente: TfEditorAlbaranCliente
end end
inherited pgPaginas: TPageControl inherited pgPaginas: TPageControl
Width = 759 Width = 759
Height = 376 Height = 374
TabOrder = 1 TabOrder = 1
OnChanging = pgPaginasChanging OnChanging = pgPaginasChanging
ExplicitTop = 111
ExplicitWidth = 759 ExplicitWidth = 759
ExplicitHeight = 376 ExplicitHeight = 374
inherited pagGeneral: TTabSheet inherited pagGeneral: TTabSheet
ExplicitLeft = 4 ExplicitLeft = 4
ExplicitTop = 24 ExplicitTop = 24
ExplicitWidth = 751 ExplicitWidth = 751
ExplicitHeight = 348 ExplicitHeight = 346
inline frViewAlbaranCliente1: TfrViewAlbaranCliente inline frViewAlbaranCliente1: TfrViewAlbaranCliente
Left = 0 Left = 0
Top = 0 Top = 0
Width = 751 Width = 751
Height = 348 Height = 346
Align = alClient Align = alClient
TabOrder = 0 TabOrder = 0
ReadOnly = False ReadOnly = False
ExplicitLeft = -196 ExplicitWidth = 751
ExplicitTop = -296 ExplicitHeight = 346
inherited dxLayoutControl1: TdxLayoutControl inherited dxLayoutControl1: TdxLayoutControl
Width = 751 Width = 751
Height = 348 Height = 346
ExplicitWidth = 751
ExplicitHeight = 346
inherited Label1: TLabel inherited Label1: TLabel
Width = 299 Width = 299
ExplicitWidth = 299 ExplicitWidth = 299
@ -197,14 +205,14 @@ inherited fEditorAlbaranCliente: TfEditorAlbaranCliente
ExplicitWidth = 442 ExplicitWidth = 442
inherited dxLayoutControl1: TdxLayoutControl inherited dxLayoutControl1: TdxLayoutControl
Width = 442 Width = 442
inherited Bevel1: TBevel
Width = 266
ExplicitWidth = 266
end
inherited edtlNombre: TcxDBTextEdit inherited edtlNombre: TcxDBTextEdit
ExplicitWidth = 224 ExplicitWidth = 224
Width = 224 Width = 224
end end
inherited edtNIFCIF: TcxDBTextEdit
ExplicitWidth = 103
Width = 103
end
inherited bVerFichaCliente: TBitBtn inherited bVerFichaCliente: TBitBtn
Left = 82 Left = 82
ExplicitLeft = 82 ExplicitLeft = 82
@ -221,12 +229,6 @@ inherited fEditorAlbaranCliente: TfEditorAlbaranCliente
ExplicitWidth = 193 ExplicitWidth = 193
Width = 193 Width = 193
end end
inherited edtReferencia: TcxDBTextEdit
Left = 204
ExplicitLeft = 204
ExplicitWidth = 103
Width = 103
end
end end
end end
inherited eCalle: TcxDBTextEdit inherited eCalle: TcxDBTextEdit
@ -321,7 +323,7 @@ inherited fEditorAlbaranCliente: TfEditorAlbaranCliente
Left = 0 Left = 0
Top = 0 Top = 0
Width = 751 Width = 751
Height = 348 Height = 346
Align = alClient Align = alClient
BiDiMode = bdLeftToRight BiDiMode = bdLeftToRight
Font.Charset = DEFAULT_CHARSET Font.Charset = DEFAULT_CHARSET
@ -334,22 +336,24 @@ inherited fEditorAlbaranCliente: TfEditorAlbaranCliente
TabOrder = 0 TabOrder = 0
ReadOnly = False ReadOnly = False
ExplicitWidth = 751 ExplicitWidth = 751
ExplicitHeight = 348 ExplicitHeight = 346
inherited ToolBar1: TToolBar inherited ToolBar1: TToolBar
Width = 751 Width = 751
ExplicitWidth = 751 ExplicitWidth = 751
end end
inherited cxGrid: TcxGrid inherited cxGrid: TcxGrid
Width = 751 Width = 751
Height = 276 Height = 274
ExplicitTop = 72
ExplicitWidth = 751 ExplicitWidth = 751
ExplicitHeight = 276 ExplicitHeight = 274
end end
inherited TBXDock1: TTBXDock inherited TBXDock1: TTBXDock
Width = 751 Width = 751
ExplicitTop = 46
ExplicitWidth = 751 ExplicitWidth = 751
inherited TBXToolbar1: TTBXToolbar inherited TBXToolbar1: TTBXToolbar
ExplicitWidth = 548 ExplicitWidth = 597
end end
end end
end end
@ -373,7 +377,7 @@ inherited fEditorAlbaranCliente: TfEditorAlbaranCliente
StyleHot.LookAndFeel.Kind = lfStandard StyleHot.LookAndFeel.Kind = lfStandard
StyleHot.LookAndFeel.NativeStyle = True StyleHot.LookAndFeel.NativeStyle = True
TabOrder = 0 TabOrder = 0
Height = 348 Height = 346
Width = 751 Width = 751
end end
end end
@ -384,7 +388,7 @@ inherited fEditorAlbaranCliente: TfEditorAlbaranCliente
Left = 0 Left = 0
Top = 0 Top = 0
Width = 751 Width = 751
Height = 348 Height = 346
Align = alClient Align = alClient
Font.Charset = DEFAULT_CHARSET Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText Font.Color = clWindowText
@ -395,7 +399,7 @@ inherited fEditorAlbaranCliente: TfEditorAlbaranCliente
TabOrder = 0 TabOrder = 0
ReadOnly = False ReadOnly = False
ExplicitWidth = 751 ExplicitWidth = 751
ExplicitHeight = 348 ExplicitHeight = 346
inherited pnlSup: TPanel inherited pnlSup: TPanel
Width = 751 Width = 751
ExplicitWidth = 751 ExplicitWidth = 751
@ -405,13 +409,13 @@ inherited fEditorAlbaranCliente: TfEditorAlbaranCliente
end end
inherited GroupBox1: TGroupBox inherited GroupBox1: TGroupBox
Width = 751 Width = 751
Height = 320 Height = 318
ExplicitWidth = 751 ExplicitWidth = 751
ExplicitHeight = 320 ExplicitHeight = 318
inherited eIncidencias: TcxDBMemo inherited eIncidencias: TcxDBMemo
ExplicitWidth = 747 ExplicitWidth = 747
ExplicitHeight = 303 ExplicitHeight = 301
Height = 303 Height = 301
Width = 747 Width = 747
end end
end end
@ -614,6 +618,7 @@ inherited fEditorAlbaranCliente: TfEditorAlbaranCliente
end end
inherited PnlComentario: TPanel [5] inherited PnlComentario: TPanel [5]
Width = 765 Width = 765
ExplicitTop = 78
ExplicitWidth = 765 ExplicitWidth = 765
inherited lbComentario: TLabel inherited lbComentario: TLabel
Width = 755 Width = 755

View File

@ -13,7 +13,7 @@ uses
uViewIncidencias, uAlbaranesClienteController, uViewDetallesBase, uViewDetallesAlbaranCliente, uViewIncidencias, uAlbaranesClienteController, uViewDetallesBase, uViewDetallesAlbaranCliente,
dxLayoutLookAndFeels, JvExComCtrls, JvStatusBar, uViewTotales, dxLayoutLookAndFeels, JvExComCtrls, JvStatusBar, uViewTotales,
uIEditorAlbaranCliente, uBizAlbaranesCliente, uViewAlbaranCliente, uIEditorAlbaranCliente, uBizAlbaranesCliente, uViewAlbaranCliente,
uViewDetallesDTO, uViewDetallesArticulos, uDAInterfaces; uViewDetallesDTO, uViewDetallesArticulos, uDAInterfaces, cxLabel;
type type
TfEditorAlbaranCliente = class(TfEditorDBItem, IEditorAlbaranCliente) TfEditorAlbaranCliente = class(TfEditorDBItem, IEditorAlbaranCliente)
@ -231,15 +231,17 @@ var
VerPrecios: Boolean; VerPrecios: Boolean;
VerTrabajos: Boolean; VerTrabajos: Boolean;
VerIncidencias: Boolean; VerIncidencias: Boolean;
VerSoloTotales: Boolean;
begin begin
inherited; inherited;
VerPrecios := True; VerPrecios := True;
VerTrabajos := True; VerTrabajos := True;
VerIncidencias := True; VerIncidencias := True;
VerSoloTotales := False;
if ElegirOpcionesImpresionAlbaranCliente(VerPrecios, VerTrabajos, VerIncidencias) then if ElegirOpcionesImpresionAlbaranCliente(VerPrecios, VerTrabajos, VerIncidencias, VerSoloTotales) then
FController.Print(FAlbaran, False, VerPrecios, VerTrabajos, VerIncidencias); FController.Print(FAlbaran, False, VerPrecios, VerTrabajos, VerIncidencias, VerSoloTotales);
end; end;
procedure TfEditorAlbaranCliente.OnClienteChanged(Sender: TObject); procedure TfEditorAlbaranCliente.OnClienteChanged(Sender: TObject);
@ -325,15 +327,17 @@ var
VerPrecios: Boolean; VerPrecios: Boolean;
VerTrabajos: Boolean; VerTrabajos: Boolean;
VerIncidencias: Boolean; VerIncidencias: Boolean;
VerSoloTotales: Boolean;
begin begin
inherited; inherited;
VerPrecios := True; VerPrecios := True;
VerTrabajos := True; VerTrabajos := True;
VerIncidencias := True; VerIncidencias := True;
VerSoloTotales := False;
if ElegirOpcionesImpresionAlbaranCliente(VerPrecios, VerTrabajos, VerIncidencias) then if ElegirOpcionesImpresionAlbaranCliente(VerPrecios, VerTrabajos, VerIncidencias, VerSoloTotales) then
FController.Preview(FAlbaran, False, VerPrecios, VerTrabajos, VerIncidencias); FController.Preview(FAlbaran, False, VerPrecios, VerTrabajos, VerIncidencias, VerSoloTotales);
end; end;
procedure TfEditorAlbaranCliente.RecalcularPortePorUnidad; procedure TfEditorAlbaranCliente.RecalcularPortePorUnidad;

View File

@ -2,6 +2,7 @@ inherited fEditorAlbaranesCliente: TfEditorAlbaranesCliente
Caption = 'Lista de albaranes de cliente' Caption = 'Lista de albaranes de cliente'
ClientWidth = 583 ClientWidth = 583
ExplicitWidth = 591 ExplicitWidth = 591
ExplicitHeight = 240
PixelsPerInch = 96 PixelsPerInch = 96
TextHeight = 13 TextHeight = 13
inherited JvNavPanelHeader: TJvNavPanelHeader inherited JvNavPanelHeader: TJvNavPanelHeader
@ -129,7 +130,7 @@ inherited fEditorAlbaranesCliente: TfEditorAlbaranesCliente
end end
end end
inherited tbxFiltro: TTBXToolbar inherited tbxFiltro: TTBXToolbar
ExplicitWidth = 356 ExplicitWidth = 362
inherited lblAno: TTBXLabelItem inherited lblAno: TTBXLabelItem
Visible = True Visible = True
end end
@ -144,10 +145,10 @@ inherited fEditorAlbaranesCliente: TfEditorAlbaranesCliente
ExplicitWidth = 583 ExplicitWidth = 583
end end
inherited TBXTMain2: TTBXToolbar inherited TBXTMain2: TTBXToolbar
Left = 356 Left = 362
Visible = True Visible = True
ExplicitLeft = 356 ExplicitLeft = 362
ExplicitWidth = 129 ExplicitWidth = 130
object TBXItem42: TTBXItem object TBXItem42: TTBXItem
Action = actEnviar Action = actEnviar
DisplayMode = nbdmImageAndText DisplayMode = nbdmImageAndText

View File

@ -384,6 +384,7 @@ var
VerPrecios: Boolean; VerPrecios: Boolean;
VerTrabajos: Boolean; VerTrabajos: Boolean;
VerIncidencias: Boolean; VerIncidencias: Boolean;
VersoloTotales: Boolean;
begin begin
AAlbaranes := Nil; AAlbaranes := Nil;
@ -391,6 +392,7 @@ begin
VerPrecios := True; VerPrecios := True;
VerTrabajos := True; VerTrabajos := True;
VerIncidencias := True; VerIncidencias := True;
VerSoloTotales := False;
if MultiSelect and Assigned(ViewGrid) then if MultiSelect and Assigned(ViewGrid) then
AllItems := (ViewGrid.NumSeleccionados > 1); AllItems := (ViewGrid.NumSeleccionados > 1);
@ -417,8 +419,8 @@ begin
AAlbaranes := Albaranes; AAlbaranes := Albaranes;
if Assigned(AAlbaranes) then if Assigned(AAlbaranes) then
if ElegirOpcionesImpresionAlbaranCliente(VerPrecios, VerTrabajos, VerIncidencias) then if ElegirOpcionesImpresionAlbaranCliente(VerPrecios, VerTrabajos, VerIncidencias, VerSoloTotales) then
FController.Print(AAlbaranes, AllItems, VerPrecios, VerTrabajos, VerIncidencias); FController.Print(AAlbaranes, AllItems, VerPrecios, VerTrabajos, VerIncidencias, VerSoloTotales);
end; end;
end; end;
end; end;
@ -487,6 +489,7 @@ var
VerPrecios: Boolean; VerPrecios: Boolean;
VerTrabajos: Boolean; VerTrabajos: Boolean;
VerIncidencias: Boolean; VerIncidencias: Boolean;
VerSoloTotales: Boolean;
begin begin
AAlbaranes := Nil; AAlbaranes := Nil;
@ -494,6 +497,7 @@ begin
VerPrecios := True; VerPrecios := True;
VerTrabajos := True; VerTrabajos := True;
VerIncidencias := True; VerIncidencias := True;
VerSoloTotales := False;
if MultiSelect and Assigned(ViewGrid) then if MultiSelect and Assigned(ViewGrid) then
AllItems := (ViewGrid.NumSeleccionados > 1); AllItems := (ViewGrid.NumSeleccionados > 1);
@ -520,8 +524,8 @@ begin
AAlbaranes := Albaranes; AAlbaranes := Albaranes;
if Assigned(AAlbaranes) then if Assigned(AAlbaranes) then
if ElegirOpcionesImpresionAlbaranCliente(VerPrecios, VerTrabajos, VerIncidencias) then if ElegirOpcionesImpresionAlbaranCliente(VerPrecios, VerTrabajos, VerIncidencias, VerSoloTotales) then
FController.Preview(AAlbaranes, AllItems, VerPrecios, VerTrabajos, VerIncidencias); FController.Preview(AAlbaranes, AllItems, VerPrecios, VerTrabajos, VerIncidencias, VerSoloTotales);
end; end;
end; end;
end; end;

View File

@ -102,14 +102,14 @@ inherited frViewAlbaranCliente: TfrViewAlbaranCliente
Height = 221 Height = 221
ExplicitWidth = 442 ExplicitWidth = 442
ExplicitHeight = 221 ExplicitHeight = 221
inherited Bevel1: TBevel
Width = 266
ExplicitWidth = 266
end
inherited edtlNombre: TcxDBTextEdit inherited edtlNombre: TcxDBTextEdit
ExplicitWidth = 224 ExplicitWidth = 224
Width = 224 Width = 224
end end
inherited edtNIFCIF: TcxDBTextEdit
ExplicitWidth = 103
Width = 103
end
inherited bVerFichaCliente: TBitBtn inherited bVerFichaCliente: TBitBtn
Left = 160 Left = 160
ExplicitLeft = 160 ExplicitLeft = 160
@ -126,12 +126,6 @@ inherited frViewAlbaranCliente: TfrViewAlbaranCliente
ExplicitWidth = 193 ExplicitWidth = 193
Width = 193 Width = 193
end end
inherited edtReferencia: TcxDBTextEdit
Left = 242
ExplicitLeft = 242
ExplicitWidth = 103
Width = 103
end
end end
inherited ActionList1: TActionList inherited ActionList1: TActionList
Left = 306 Left = 306

View File

@ -20,8 +20,15 @@ inherited frViewDatosYSeleccionClienteAlbaran: TfrViewDatosYSeleccionClienteAlba
DesignSize = ( DesignSize = (
579 579
220) 220)
object Bevel1: TBevel
Left = 114
Top = 68
Width = 266
Height = 13
Shape = bsBottomLine
end
object edtlNombre: TcxDBTextEdit object edtlNombre: TcxDBTextEdit
Left = 66 Left = 114
Top = 41 Top = 41
Anchors = [akLeft, akTop, akRight] Anchors = [akLeft, akTop, akRight]
AutoSize = False AutoSize = False
@ -42,28 +49,6 @@ inherited frViewDatosYSeleccionClienteAlbaran: TfrViewDatosYSeleccionClienteAlba
Height = 21 Height = 21
Width = 224 Width = 224
end end
object edtNIFCIF: TcxDBTextEdit
Left = 66
Top = 68
Anchors = [akLeft, akTop, akRight]
AutoSize = False
DataBinding.DataField = 'NIF_CIF'
DataBinding.DataSource = dsCliente
ParentFont = False
Properties.ReadOnly = True
Properties.UseLeftAlignmentOnEditing = False
Style.BorderColor = clWindowFrame
Style.BorderStyle = ebs3D
Style.HotTrack = False
Style.LookAndFeel.NativeStyle = True
StyleDisabled.LookAndFeel.NativeStyle = True
StyleDisabled.TextColor = clWindowText
StyleFocused.LookAndFeel.NativeStyle = True
StyleHot.LookAndFeel.NativeStyle = True
TabOrder = 3
Height = 21
Width = 103
end
object bElegirCliente: TBitBtn object bElegirCliente: TBitBtn
Left = 10 Left = 10
Top = 10 Top = 10
@ -154,12 +139,12 @@ inherited frViewDatosYSeleccionClienteAlbaran: TfrViewDatosYSeleccionClienteAlba
end end
object bVerFichaCliente: TBitBtn object bVerFichaCliente: TBitBtn
Left = 377 Left = 377
Top = 181 Top = 174
Width = 192 Width = 192
Height = 25 Height = 25
Action = actVerContacto Action = actVerContacto
Caption = 'Ver ficha completa del cliente...' Caption = 'Ver ficha completa del cliente...'
TabOrder = 8 TabOrder = 6
Glyph.Data = { Glyph.Data = {
36040000424D3604000000000000360000002800000010000000100000000100 36040000424D3604000000000000360000002800000010000000100000000100
2000000000000004000000000000000000000000000000000000FF00FF00FF00 2000000000000004000000000000000000000000000000000000FF00FF00FF00
@ -197,8 +182,35 @@ inherited frViewDatosYSeleccionClienteAlbaran: TfrViewDatosYSeleccionClienteAlba
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00} FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00}
end end
object edtDireccion: TcxMemo object edtDireccion: TcxMemo
Left = 66 Left = 114
Top = 95 Top = 88
Style.BorderColor = clWindowFrame
Style.BorderStyle = ebs3D
Style.HotTrack = False
Style.LookAndFeel.Kind = lfStandard
Style.LookAndFeel.NativeStyle = True
StyleDisabled.LookAndFeel.Kind = lfStandard
StyleDisabled.LookAndFeel.NativeStyle = True
StyleDisabled.TextColor = clWindowText
StyleFocused.LookAndFeel.Kind = lfStandard
StyleFocused.LookAndFeel.NativeStyle = True
StyleHot.LookAndFeel.Kind = lfStandard
StyleHot.LookAndFeel.NativeStyle = True
TabOrder = 3
Height = 53
Width = 437
end
object bElegirDireccion: TButton
Left = 546
Top = 88
Width = 23
Height = 25
Action = actElegirDireccion
TabOrder = 4
end
object edtTelefonos: TcxTextEdit
Left = 114
Top = 147
Style.BorderColor = clWindowFrame Style.BorderColor = clWindowFrame
Style.BorderStyle = ebs3D Style.BorderStyle = ebs3D
Style.HotTrack = False Style.HotTrack = False
@ -212,57 +224,8 @@ inherited frViewDatosYSeleccionClienteAlbaran: TfrViewDatosYSeleccionClienteAlba
StyleHot.LookAndFeel.Kind = lfStandard StyleHot.LookAndFeel.Kind = lfStandard
StyleHot.LookAndFeel.NativeStyle = True StyleHot.LookAndFeel.NativeStyle = True
TabOrder = 5 TabOrder = 5
Height = 53
Width = 437
end
object bElegirDireccion: TButton
Left = 546
Top = 95
Width = 23
Height = 25
Action = actElegirDireccion
TabOrder = 6
end
object edtTelefonos: TcxTextEdit
Left = 66
Top = 154
Style.BorderColor = clWindowFrame
Style.BorderStyle = ebs3D
Style.HotTrack = False
Style.LookAndFeel.Kind = lfStandard
Style.LookAndFeel.NativeStyle = True
StyleDisabled.LookAndFeel.Kind = lfStandard
StyleDisabled.LookAndFeel.NativeStyle = True
StyleDisabled.TextColor = clWindowText
StyleFocused.LookAndFeel.Kind = lfStandard
StyleFocused.LookAndFeel.NativeStyle = True
StyleHot.LookAndFeel.Kind = lfStandard
StyleHot.LookAndFeel.NativeStyle = True
TabOrder = 7
Width = 302 Width = 302
end end
object edtReferencia: TcxDBTextEdit
Left = 349
Top = 68
Anchors = [akLeft, akTop, akRight]
AutoSize = False
DataBinding.DataField = 'REFERENCIA'
DataBinding.DataSource = dsCliente
ParentFont = False
Properties.ReadOnly = True
Properties.UseLeftAlignmentOnEditing = False
Style.BorderColor = clWindowFrame
Style.BorderStyle = ebs3D
Style.HotTrack = False
Style.LookAndFeel.NativeStyle = True
StyleDisabled.LookAndFeel.NativeStyle = True
StyleDisabled.TextColor = clWindowText
StyleFocused.LookAndFeel.NativeStyle = True
StyleHot.LookAndFeel.NativeStyle = True
TabOrder = 4
Height = 21
Width = 103
end
object dxLayoutControl1Group_Root: TdxLayoutGroup object dxLayoutControl1Group_Root: TdxLayoutGroup
ShowCaption = False ShowCaption = False
Hidden = True Hidden = True
@ -296,26 +259,11 @@ inherited frViewDatosYSeleccionClienteAlbaran: TfrViewDatosYSeleccionClienteAlba
Control = edtlNombre Control = edtlNombre
ControlOptions.ShowBorder = False ControlOptions.ShowBorder = False
end end
object dxLayoutControl1Group3: TdxLayoutGroup
ShowCaption = False
Hidden = True
LayoutDirection = ldHorizontal
ShowBorder = False
object dxLayoutControl1Item2: TdxLayoutItem object dxLayoutControl1Item2: TdxLayoutItem
AutoAligns = [aaVertical] Caption = 'Direcci'#243'n de entrega'
AlignHorz = ahClient Control = Bevel1
Caption = 'NIF/CIF:'
Control = edtNIFCIF
ControlOptions.ShowBorder = False ControlOptions.ShowBorder = False
end end
object dxLayoutControl1Item11: TdxLayoutItem
AutoAligns = [aaVertical]
AlignHorz = ahClient
Caption = 'Referencia:'
Control = edtReferencia
ControlOptions.ShowBorder = False
end
end
object dxLayoutControl1Group2: TdxLayoutGroup object dxLayoutControl1Group2: TdxLayoutGroup
ShowCaption = False ShowCaption = False
Hidden = True Hidden = True

View File

@ -51,8 +51,6 @@ type
dxLayoutControl1: TdxLayoutControl; dxLayoutControl1: TdxLayoutControl;
dxLayoutControl1Item1: TdxLayoutItem; dxLayoutControl1Item1: TdxLayoutItem;
edtlNombre: TcxDBTextEdit; edtlNombre: TcxDBTextEdit;
dxLayoutControl1Item2: TdxLayoutItem;
edtNIFCIF: TcxDBTextEdit;
bElegirCliente: TBitBtn; bElegirCliente: TBitBtn;
dxLayoutControl1Item7: TdxLayoutItem; dxLayoutControl1Item7: TdxLayoutItem;
bNuevoCliente: TBitBtn; bNuevoCliente: TBitBtn;
@ -69,10 +67,9 @@ type
dxLayoutControl1Item5: TdxLayoutItem; dxLayoutControl1Item5: TdxLayoutItem;
dxLayoutControl1Item10: TdxLayoutItem; dxLayoutControl1Item10: TdxLayoutItem;
edtTelefonos: TcxTextEdit; edtTelefonos: TcxTextEdit;
dxLayoutControl1Item11: TdxLayoutItem;
edtReferencia: TcxDBTextEdit;
dxLayoutControl1Group6: TdxLayoutGroup; dxLayoutControl1Group6: TdxLayoutGroup;
dxLayoutControl1Group3: TdxLayoutGroup; dxLayoutControl1Item2: TdxLayoutItem;
Bevel1: TBevel;
procedure actElegirContactoExecute(Sender: TObject); procedure actElegirContactoExecute(Sender: TObject);
procedure actAnadirContactoExecute(Sender: TObject); procedure actAnadirContactoExecute(Sender: TObject);
procedure actVerContactoUpdate(Sender: TObject); procedure actVerContactoUpdate(Sender: TObject);
@ -182,9 +179,9 @@ begin
FDireccionesController := TDireccionesContactoController.Create; FDireccionesController := TDireccionesContactoController.Create;
edtlNombre.Enabled := False; edtlNombre.Enabled := False;
edtNIFCIF.Enabled := False; // edtNIFCIF.Enabled := False;
edtDireccion.Enabled := False; edtDireccion.Enabled := False;
edtReferencia.Enabled := False; // edtReferencia.Enabled := False;
edtTelefonos.Enabled := False; edtTelefonos.Enabled := False;
end; end;
@ -242,7 +239,7 @@ begin
with FAlbaran do with FAlbaran do
begin begin
CALLE := ADireccion.CALLE; CALLE := ADireccion.NOMBRE + #13 + ADireccion.CALLE;
POBLACION := ADireccion.POBLACION; POBLACION := ADireccion.POBLACION;
CODIGO_POSTAL := ADireccion.CODIGO_POSTAL; CODIGO_POSTAL := ADireccion.CODIGO_POSTAL;
PROVINCIA := ADireccion.PROVINCIA; PROVINCIA := ADireccion.PROVINCIA;

View File

@ -1,67 +1,94 @@
inherited frViewDetallesArticulos: TfrViewDetallesArticulos inherited frViewDetallesArticulos: TfrViewDetallesArticulos
Width = 943
Height = 463
ParentBiDiMode = False ParentBiDiMode = False
OnShow = CustomViewShow OnShow = CustomViewShow
inherited ToolBar1: TToolBar inherited ToolBar1: TToolBar
Width = 943
Height = 24
inherited ToolButton4: TToolButton inherited ToolButton4: TToolButton
Wrap = True ExplicitWidth = 57
end end
inherited ToolButton14: TToolButton inherited ToolButton14: TToolButton
Left = 0 Left = 335
Top = 22
Wrap = False Wrap = False
ExplicitLeft = 0 ExplicitLeft = 335
ExplicitTop = 22
end end
inherited FontName: TJvFontComboBox inherited FontName: TJvFontComboBox
Left = 34 Left = 369
ExplicitLeft = 34 Top = 0
ExplicitLeft = 369
ExplicitTop = 0
end end
inherited FontSize: TEdit inherited FontSize: TEdit
Left = 179 Left = 514
Top = 0
Width = 42 Width = 42
ExplicitLeft = 179 ExplicitLeft = 514
ExplicitTop = 0
ExplicitWidth = 42 ExplicitWidth = 42
end end
inherited UpDown1: TUpDown inherited UpDown1: TUpDown
Left = 221 Left = 556
Top = 0
Width = 17 Width = 17
ExplicitLeft = 221 ExplicitLeft = 556
ExplicitTop = 0
ExplicitWidth = 17 ExplicitWidth = 17
end end
inherited ToolButton13: TToolButton inherited ToolButton13: TToolButton
Left = 238 Left = 573
ExplicitLeft = 238 Top = 0
ExplicitLeft = 573
ExplicitTop = 0
end end
inherited ToolButton6: TToolButton inherited ToolButton6: TToolButton
Left = 246 Left = 581
ExplicitLeft = 246 Top = 0
ExplicitLeft = 581
ExplicitTop = 0
end end
inherited ToolButton7: TToolButton inherited ToolButton7: TToolButton
Left = 280 Left = 615
ExplicitLeft = 280 Top = 0
ExplicitLeft = 615
ExplicitTop = 0
end end
inherited ToolButton8: TToolButton inherited ToolButton8: TToolButton
Left = 314 Left = 649
ExplicitLeft = 314 Top = 0
ExplicitLeft = 649
ExplicitTop = 0
end end
inherited ToolButton12: TToolButton inherited ToolButton12: TToolButton
Left = 348 Left = 683
ExplicitLeft = 348 Top = 0
ExplicitLeft = 683
ExplicitTop = 0
end end
inherited ToolButton9: TToolButton inherited ToolButton9: TToolButton
Left = 356 Left = 691
ExplicitLeft = 356 Top = 0
ExplicitLeft = 691
ExplicitTop = 0
end end
inherited ToolButton10: TToolButton inherited ToolButton10: TToolButton
Left = 390 Left = 725
ExplicitLeft = 390 Top = 0
ExplicitLeft = 725
ExplicitTop = 0
end end
inherited ToolButton11: TToolButton inherited ToolButton11: TToolButton
Left = 424 Left = 759
ExplicitLeft = 424 Top = 0
ExplicitLeft = 759
ExplicitTop = 0
end end
end end
inherited cxGrid: TcxGrid inherited cxGrid: TcxGrid
Top = 50
Width = 943
Height = 413
inherited cxGridView: TcxGridDBTableView inherited cxGridView: TcxGridDBTableView
inherited cxGridViewTIPO: TcxGridDBColumn inherited cxGridViewTIPO: TcxGridDBColumn
Visible = False Visible = False
@ -118,12 +145,19 @@ inherited frViewDetallesArticulos: TfrViewDetallesArticulos
end end
end end
inherited TBXDock1: TTBXDock inherited TBXDock1: TTBXDock
Top = 24
Width = 943
inherited TBXToolbar1: TTBXToolbar inherited TBXToolbar1: TTBXToolbar
ExplicitWidth = 451 ExplicitWidth = 597
object TBXItem12: TTBXItem [0] object TBXItem12: TTBXItem [0]
Action = actAnadirArticulos Action = actAnadirArticulos
DisplayMode = nbdmImageAndText DisplayMode = nbdmImageAndText
end end
object TBXSeparatorItem12: TTBXSeparatorItem
end
object TBXItem23: TTBXItem
Action = actDesglosarIVA
end
end end
end end
inherited ActionListContenido: TActionList inherited ActionListContenido: TActionList
@ -134,6 +168,13 @@ inherited frViewDetallesArticulos: TfrViewDetallesArticulos
OnExecute = actAnadirArticulosExecute OnExecute = actAnadirArticulosExecute
OnUpdate = actAnadirArticulosUpdate OnUpdate = actAnadirArticulosUpdate
end end
object actDesglosarIVA: TAction
Caption = 'Desglosar IVA'
Enabled = False
Visible = False
OnExecute = actDesglosarIVAExecute
OnUpdate = actDesglosarIVAUpdate
end
end end
inherited ContenidoImageList: TPngImageList inherited ContenidoImageList: TPngImageList
PngImages = < PngImages = <

View File

@ -24,6 +24,9 @@ type
cxGridViewREFERENCIA_PROVEEDOR: TcxGridDBColumn; cxGridViewREFERENCIA_PROVEEDOR: TcxGridDBColumn;
actAnadirArticulos: TAction; actAnadirArticulos: TAction;
TBXItem12: TTBXItem; TBXItem12: TTBXItem;
actDesglosarIVA: TAction;
TBXItem23: TTBXItem;
TBXSeparatorItem12: TTBXSeparatorItem;
procedure CustomViewCreate(Sender: TObject); procedure CustomViewCreate(Sender: TObject);
procedure CustomViewDestroy(Sender: TObject); procedure CustomViewDestroy(Sender: TObject);
procedure actAnadirArticulosExecute(Sender: TObject); procedure actAnadirArticulosExecute(Sender: TObject);
@ -31,6 +34,8 @@ type
procedure OnValidateReferencia(Sender: TObject; var DisplayValue: Variant; var ErrorText: TCaption; var Error: Boolean); procedure OnValidateReferencia(Sender: TObject; var DisplayValue: Variant; var ErrorText: TCaption; var Error: Boolean);
procedure OnValidateReferenciaProveedor(Sender: TObject; var DisplayValue: Variant; var ErrorText: TCaption; var Error: Boolean); procedure OnValidateReferenciaProveedor(Sender: TObject; var DisplayValue: Variant; var ErrorText: TCaption; var Error: Boolean);
procedure CustomViewShow(Sender: TObject); procedure CustomViewShow(Sender: TObject);
procedure actDesglosarIVAExecute(Sender: TObject);
procedure actDesglosarIVAUpdate(Sender: TObject);
protected protected
procedure AnadirArticulosInterno; virtual; procedure AnadirArticulosInterno; virtual;
@ -133,6 +138,18 @@ begin
(Sender as TAction).Enabled := actAnadir.Enabled; (Sender as TAction).Enabled := actAnadir.Enabled;
end; end;
procedure TfrViewDetallesArticulos.actDesglosarIVAExecute(Sender: TObject);
begin
inherited;
//
end;
procedure TfrViewDetallesArticulos.actDesglosarIVAUpdate(Sender: TObject);
begin
inherited;
//
end;
function TfrViewDetallesArticulos.AnadirArticulo(pReferencia: String; TipoReferencia: TEnumReferencia): Boolean; function TfrViewDetallesArticulos.AnadirArticulo(pReferencia: String; TipoReferencia: TEnumReferencia): Boolean;
begin begin
Result := (Controller as IControllerDetallesArticulos).AnadirArticulo(Detalles, pReferencia, TipoReferencia); Result := (Controller as IControllerDetallesArticulos).AnadirArticulo(Detalles, pReferencia, TipoReferencia);

View File

@ -465,7 +465,7 @@ begin
ID_INSTALADORIsNull := True; ID_INSTALADORIsNull := True;
NOMBRE_INSTALADORIsNull := True; NOMBRE_INSTALADORIsNull := True;
end; end;
Result.AsignarVendedor; Result.AsignarPresupuestador;
Result.Post; Result.Post;
finally finally
HideHourglassCursor; HideHourglassCursor;
@ -616,10 +616,23 @@ procedure TContratosClienteController.VerListadoBeneficios;
var var
AContratosClienteBeneficios: IBizContratosClienteBeneficios; AContratosClienteBeneficios: IBizContratosClienteBeneficios;
AEditor : IEditorContratosClienteBeneficios; AEditor : IEditorContratosClienteBeneficios;
Condicion: TDAWhereExpression;
begin begin
AEditor := NIL; AEditor := NIL;
AContratosClienteBeneficios := FDataModule.GetContratosClienteBeneficios; AContratosClienteBeneficios := FDataModule.GetContratosClienteBeneficios;
// Filtrar los contratos actuales por empresa
with AContratosClienteBeneficios.DataTable.DynamicWhere do
begin
// (ID_EMPRESA >= ID)
Condicion := NewBinaryExpression(NewField('', fld_ContratosClienteID_EMPRESA), NewConstant(AppFactuGES.EmpresaActiva.ID, datInteger), dboEqual);
if IsEmpty then
Expression := Condicion
else
Expression := NewBinaryExpression(Expression, Condicion, dboAnd);
end;
CreateEditor('EditorContratosClienteBeneficios', IEditorContratosClienteBeneficios, AEditor); CreateEditor('EditorContratosClienteBeneficios', IEditorContratosClienteBeneficios, AEditor);
if Assigned(AEditor) then if Assigned(AEditor) then

View File

@ -359,6 +359,27 @@ inherited DataModuleContratosCliente: TDataModuleContratosCliente
Name = 'NOMBRE_INSTALADOR' Name = 'NOMBRE_INSTALADOR'
DataType = datString DataType = datString
Size = 255 Size = 255
ServerAutoRefresh = True
end
item
Name = 'ID_PRESUPUESTADOR'
DataType = datInteger
end
item
Name = 'PRESUPUESTADOR'
DataType = datString
Size = 255
ServerAutoRefresh = True
end
item
Name = 'ID_SEGUIDOR'
DataType = datInteger
end
item
Name = 'SEGUIDOR'
DataType = datString
Size = 255
ServerAutoRefresh = True
end> end>
Params = <> Params = <>
StreamingOptions = [soDisableEventsWhileStreaming] StreamingOptions = [soDisableEventsWhileStreaming]
@ -560,6 +581,10 @@ inherited DataModuleContratosCliente: TDataModuleContratosCliente
Name = 'ID' Name = 'ID'
DataType = datInteger DataType = datInteger
end end
item
Name = 'ID_EMPRESA'
DataType = datInteger
end
item item
Name = 'REFERENCIA' Name = 'REFERENCIA'
DataType = datString DataType = datString

View File

@ -9,14 +9,14 @@ 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_Valores = '{20F4DF5F-38DB-4AA6-B17F-5192ED36BC0D}'; RID_Valores = '{B959D29A-4D0E-4C85-8253-14F1A7A94852}';
RID_Propiedades = '{10A019F3-E795-413B-AE1A-8075665936C4}'; RID_Propiedades = '{598A590B-E236-4C4E-AD40-DFF0477B435F}';
RID_ListaAnosContratos = '{B706B31A-572A-44D7-815A-11028E17F3F0}'; RID_ListaAnosContratos = '{0C28F1E9-E2B3-425A-AFB8-02AA6C05B03E}';
RID_ContratosClienteBeneficios = '{F9036DB4-7264-4B53-B7B7-A33F1FA4F72C}'; RID_ContratosClienteBeneficios = '{6F2C3C2B-114F-4E37-B1EC-52BC64FC0AF2}';
RID_ContratosCliente = '{210D5B45-17D3-4EA9-82CC-FD40936C848C}'; RID_ContratosCliente = '{FE3220CF-C79A-4746-9F30-9F0736188F7C}';
RID_TiposCapitulos = '{6781118D-1743-4A35-AD55-9C426656C662}'; RID_TiposCapitulos = '{C06DCF4D-5ABF-46D4-8633-FD07FE8528B2}';
RID_ContratosCliente_Detalles = '{DC6E8B1B-AEEE-4CBC-A18D-5B7AB6B693FC}'; RID_ContratosCliente_Detalles = '{958C1B7F-44FD-4E70-B5AB-C3839B9AB84F}';
RID_ContratoClienteFacturasProv = '{9F92B050-F8CB-4D0B-8C98-53D93B2F93D3}'; RID_ContratoClienteFacturasProv = '{789FBA41-F5CF-4585-835C-A2E69B81AACC}';
{ Data table names } { Data table names }
nme_Valores = 'Valores'; nme_Valores = 'Valores';
@ -56,6 +56,7 @@ const
{ ContratosClienteBeneficios fields } { ContratosClienteBeneficios fields }
fld_ContratosClienteBeneficiosID = 'ID'; fld_ContratosClienteBeneficiosID = 'ID';
fld_ContratosClienteBeneficiosID_EMPRESA = 'ID_EMPRESA';
fld_ContratosClienteBeneficiosREFERENCIA = 'REFERENCIA'; fld_ContratosClienteBeneficiosREFERENCIA = 'REFERENCIA';
fld_ContratosClienteBeneficiosREFERENCIA_CLIENTE = 'REFERENCIA_CLIENTE'; fld_ContratosClienteBeneficiosREFERENCIA_CLIENTE = 'REFERENCIA_CLIENTE';
fld_ContratosClienteBeneficiosTIPO_CONTRATO = 'TIPO_CONTRATO'; fld_ContratosClienteBeneficiosTIPO_CONTRATO = 'TIPO_CONTRATO';
@ -74,21 +75,22 @@ const
{ ContratosClienteBeneficios field indexes } { ContratosClienteBeneficios field indexes }
idx_ContratosClienteBeneficiosID = 0; idx_ContratosClienteBeneficiosID = 0;
idx_ContratosClienteBeneficiosREFERENCIA = 1; idx_ContratosClienteBeneficiosID_EMPRESA = 1;
idx_ContratosClienteBeneficiosREFERENCIA_CLIENTE = 2; idx_ContratosClienteBeneficiosREFERENCIA = 2;
idx_ContratosClienteBeneficiosTIPO_CONTRATO = 3; idx_ContratosClienteBeneficiosREFERENCIA_CLIENTE = 3;
idx_ContratosClienteBeneficiosFECHA_CONTRATO = 4; idx_ContratosClienteBeneficiosTIPO_CONTRATO = 4;
idx_ContratosClienteBeneficiosNOMBRE = 5; idx_ContratosClienteBeneficiosFECHA_CONTRATO = 5;
idx_ContratosClienteBeneficiosNIF_CIF = 6; idx_ContratosClienteBeneficiosNOMBRE = 6;
idx_ContratosClienteBeneficiosIMPORTE_NETO = 7; idx_ContratosClienteBeneficiosNIF_CIF = 7;
idx_ContratosClienteBeneficiosIMPORTE_DESCUENTO = 8; idx_ContratosClienteBeneficiosIMPORTE_NETO = 8;
idx_ContratosClienteBeneficiosBASE_IMPONIBLE = 9; idx_ContratosClienteBeneficiosIMPORTE_DESCUENTO = 9;
idx_ContratosClienteBeneficiosIMPORTE_FACTURAS_PROVEEDOR = 10; idx_ContratosClienteBeneficiosBASE_IMPONIBLE = 10;
idx_ContratosClienteBeneficiosIMPORTE_BENEFICIO = 11; idx_ContratosClienteBeneficiosIMPORTE_FACTURAS_PROVEEDOR = 11;
idx_ContratosClienteBeneficiosPORCENTAJE_BENEFICIO = 12; idx_ContratosClienteBeneficiosIMPORTE_BENEFICIO = 12;
idx_ContratosClienteBeneficiosSITUACION = 13; idx_ContratosClienteBeneficiosPORCENTAJE_BENEFICIO = 13;
idx_ContratosClienteBeneficiosID_VENDEDOR = 14; idx_ContratosClienteBeneficiosSITUACION = 14;
idx_ContratosClienteBeneficiosVENDEDOR = 15; idx_ContratosClienteBeneficiosID_VENDEDOR = 15;
idx_ContratosClienteBeneficiosVENDEDOR = 16;
{ ContratosCliente fields } { ContratosCliente fields }
fld_ContratosClienteID = 'ID'; fld_ContratosClienteID = 'ID';
@ -143,6 +145,10 @@ const
fld_ContratosClienteFECHA_ULT_PRESENTACION_CLIENTE = 'FECHA_ULT_PRESENTACION_CLIENTE'; fld_ContratosClienteFECHA_ULT_PRESENTACION_CLIENTE = 'FECHA_ULT_PRESENTACION_CLIENTE';
fld_ContratosClienteID_INSTALADOR = 'ID_INSTALADOR'; fld_ContratosClienteID_INSTALADOR = 'ID_INSTALADOR';
fld_ContratosClienteNOMBRE_INSTALADOR = 'NOMBRE_INSTALADOR'; fld_ContratosClienteNOMBRE_INSTALADOR = 'NOMBRE_INSTALADOR';
fld_ContratosClienteID_PRESUPUESTADOR = 'ID_PRESUPUESTADOR';
fld_ContratosClientePRESUPUESTADOR = 'PRESUPUESTADOR';
fld_ContratosClienteID_SEGUIDOR = 'ID_SEGUIDOR';
fld_ContratosClienteSEGUIDOR = 'SEGUIDOR';
{ ContratosCliente field indexes } { ContratosCliente field indexes }
idx_ContratosClienteID = 0; idx_ContratosClienteID = 0;
@ -197,6 +203,10 @@ const
idx_ContratosClienteFECHA_ULT_PRESENTACION_CLIENTE = 49; idx_ContratosClienteFECHA_ULT_PRESENTACION_CLIENTE = 49;
idx_ContratosClienteID_INSTALADOR = 50; idx_ContratosClienteID_INSTALADOR = 50;
idx_ContratosClienteNOMBRE_INSTALADOR = 51; idx_ContratosClienteNOMBRE_INSTALADOR = 51;
idx_ContratosClienteID_PRESUPUESTADOR = 52;
idx_ContratosClientePRESUPUESTADOR = 53;
idx_ContratosClienteID_SEGUIDOR = 54;
idx_ContratosClienteSEGUIDOR = 55;
{ TiposCapitulos fields } { TiposCapitulos fields }
fld_TiposCapitulosID = 'ID'; fld_TiposCapitulosID = 'ID';
@ -273,7 +283,7 @@ const
type type
{ IValores } { IValores }
IValores = interface(IDAStronglyTypedDataTable) IValores = interface(IDAStronglyTypedDataTable)
['{90B6AEAB-CA86-415A-9867-AE6DDF147292}'] ['{1FA49D4B-6562-4B1A-B190-D0AF6129353D}']
{ Property getters and setters } { Property getters and setters }
function GetIDValue: Integer; function GetIDValue: Integer;
procedure SetIDValue(const aValue: Integer); procedure SetIDValue(const aValue: Integer);
@ -332,7 +342,7 @@ type
{ IPropiedades } { IPropiedades }
IPropiedades = interface(IDAStronglyTypedDataTable) IPropiedades = interface(IDAStronglyTypedDataTable)
['{D75A4B85-BBF5-495B-81BD-D8423BEB8878}'] ['{2FB922C0-59ED-4844-861F-84BF71E0442C}']
{ Property getters and setters } { Property getters and setters }
function GetIDValue: Integer; function GetIDValue: Integer;
procedure SetIDValue(const aValue: Integer); procedure SetIDValue(const aValue: Integer);
@ -391,7 +401,7 @@ type
{ IListaAnosContratos } { IListaAnosContratos }
IListaAnosContratos = interface(IDAStronglyTypedDataTable) IListaAnosContratos = interface(IDAStronglyTypedDataTable)
['{A58F3174-AAB8-42A5-9F76-CD538099B39D}'] ['{B84B9D7F-2E8C-4073-89CA-52D6F0F1D5B6}']
{ Property getters and setters } { Property getters and setters }
function GetANOValue: String; function GetANOValue: String;
procedure SetANOValue(const aValue: String); procedure SetANOValue(const aValue: String);
@ -426,12 +436,16 @@ type
{ IContratosClienteBeneficios } { IContratosClienteBeneficios }
IContratosClienteBeneficios = interface(IDAStronglyTypedDataTable) IContratosClienteBeneficios = interface(IDAStronglyTypedDataTable)
['{443426BE-76C1-459F-B040-945933103153}'] ['{7675C9FB-656E-4E2A-9137-FFA4B2069210}']
{ Property getters and setters } { Property getters and setters }
function GetIDValue: Integer; function GetIDValue: Integer;
procedure SetIDValue(const aValue: Integer); procedure SetIDValue(const aValue: Integer);
function GetIDIsNull: Boolean; function GetIDIsNull: Boolean;
procedure SetIDIsNull(const aValue: Boolean); procedure SetIDIsNull(const aValue: Boolean);
function GetID_EMPRESAValue: Integer;
procedure SetID_EMPRESAValue(const aValue: Integer);
function GetID_EMPRESAIsNull: Boolean;
procedure SetID_EMPRESAIsNull(const aValue: Boolean);
function GetREFERENCIAValue: String; function GetREFERENCIAValue: String;
procedure SetREFERENCIAValue(const aValue: String); procedure SetREFERENCIAValue(const aValue: String);
function GetREFERENCIAIsNull: Boolean; function GetREFERENCIAIsNull: Boolean;
@ -497,6 +511,8 @@ type
{ Properties } { Properties }
property ID: Integer read GetIDValue write SetIDValue; property ID: Integer read GetIDValue write SetIDValue;
property IDIsNull: Boolean read GetIDIsNull write SetIDIsNull; property IDIsNull: Boolean read GetIDIsNull write SetIDIsNull;
property ID_EMPRESA: Integer read GetID_EMPRESAValue write SetID_EMPRESAValue;
property ID_EMPRESAIsNull: Boolean read GetID_EMPRESAIsNull write SetID_EMPRESAIsNull;
property REFERENCIA: String read GetREFERENCIAValue write SetREFERENCIAValue; property REFERENCIA: String read GetREFERENCIAValue write SetREFERENCIAValue;
property REFERENCIAIsNull: Boolean read GetREFERENCIAIsNull write SetREFERENCIAIsNull; property REFERENCIAIsNull: Boolean read GetREFERENCIAIsNull write SetREFERENCIAIsNull;
property REFERENCIA_CLIENTE: String read GetREFERENCIA_CLIENTEValue write SetREFERENCIA_CLIENTEValue; property REFERENCIA_CLIENTE: String read GetREFERENCIA_CLIENTEValue write SetREFERENCIA_CLIENTEValue;
@ -538,6 +554,10 @@ type
procedure SetIDValue(const aValue: Integer); virtual; procedure SetIDValue(const aValue: Integer); virtual;
function GetIDIsNull: Boolean; virtual; function GetIDIsNull: Boolean; virtual;
procedure SetIDIsNull(const aValue: Boolean); virtual; procedure SetIDIsNull(const aValue: Boolean); virtual;
function GetID_EMPRESAValue: Integer; virtual;
procedure SetID_EMPRESAValue(const aValue: Integer); virtual;
function GetID_EMPRESAIsNull: Boolean; virtual;
procedure SetID_EMPRESAIsNull(const aValue: Boolean); virtual;
function GetREFERENCIAValue: String; virtual; function GetREFERENCIAValue: String; virtual;
procedure SetREFERENCIAValue(const aValue: String); virtual; procedure SetREFERENCIAValue(const aValue: String); virtual;
function GetREFERENCIAIsNull: Boolean; virtual; function GetREFERENCIAIsNull: Boolean; virtual;
@ -602,6 +622,8 @@ type
{ Properties } { Properties }
property ID: Integer read GetIDValue write SetIDValue; property ID: Integer read GetIDValue write SetIDValue;
property IDIsNull: Boolean read GetIDIsNull write SetIDIsNull; property IDIsNull: Boolean read GetIDIsNull write SetIDIsNull;
property ID_EMPRESA: Integer read GetID_EMPRESAValue write SetID_EMPRESAValue;
property ID_EMPRESAIsNull: Boolean read GetID_EMPRESAIsNull write SetID_EMPRESAIsNull;
property REFERENCIA: String read GetREFERENCIAValue write SetREFERENCIAValue; property REFERENCIA: String read GetREFERENCIAValue write SetREFERENCIAValue;
property REFERENCIAIsNull: Boolean read GetREFERENCIAIsNull write SetREFERENCIAIsNull; property REFERENCIAIsNull: Boolean read GetREFERENCIAIsNull write SetREFERENCIAIsNull;
property REFERENCIA_CLIENTE: String read GetREFERENCIA_CLIENTEValue write SetREFERENCIA_CLIENTEValue; property REFERENCIA_CLIENTE: String read GetREFERENCIA_CLIENTEValue write SetREFERENCIA_CLIENTEValue;
@ -641,7 +663,7 @@ type
{ IContratosCliente } { IContratosCliente }
IContratosCliente = interface(IDAStronglyTypedDataTable) IContratosCliente = interface(IDAStronglyTypedDataTable)
['{E5FEBD8B-4FA0-4E95-B596-969808CA3467}'] ['{E63C592B-6E5F-4B12-A8DF-98AEB887A49F}']
{ Property getters and setters } { Property getters and setters }
function GetIDValue: Integer; function GetIDValue: Integer;
procedure SetIDValue(const aValue: Integer); procedure SetIDValue(const aValue: Integer);
@ -845,6 +867,22 @@ type
procedure SetNOMBRE_INSTALADORValue(const aValue: String); procedure SetNOMBRE_INSTALADORValue(const aValue: String);
function GetNOMBRE_INSTALADORIsNull: Boolean; function GetNOMBRE_INSTALADORIsNull: Boolean;
procedure SetNOMBRE_INSTALADORIsNull(const aValue: Boolean); procedure SetNOMBRE_INSTALADORIsNull(const aValue: Boolean);
function GetID_PRESUPUESTADORValue: Integer;
procedure SetID_PRESUPUESTADORValue(const aValue: Integer);
function GetID_PRESUPUESTADORIsNull: Boolean;
procedure SetID_PRESUPUESTADORIsNull(const aValue: Boolean);
function GetPRESUPUESTADORValue: String;
procedure SetPRESUPUESTADORValue(const aValue: String);
function GetPRESUPUESTADORIsNull: Boolean;
procedure SetPRESUPUESTADORIsNull(const aValue: Boolean);
function GetID_SEGUIDORValue: Integer;
procedure SetID_SEGUIDORValue(const aValue: Integer);
function GetID_SEGUIDORIsNull: Boolean;
procedure SetID_SEGUIDORIsNull(const aValue: Boolean);
function GetSEGUIDORValue: String;
procedure SetSEGUIDORValue(const aValue: String);
function GetSEGUIDORIsNull: Boolean;
procedure SetSEGUIDORIsNull(const aValue: Boolean);
{ Properties } { Properties }
@ -952,6 +990,14 @@ type
property ID_INSTALADORIsNull: Boolean read GetID_INSTALADORIsNull write SetID_INSTALADORIsNull; property ID_INSTALADORIsNull: Boolean read GetID_INSTALADORIsNull write SetID_INSTALADORIsNull;
property NOMBRE_INSTALADOR: String read GetNOMBRE_INSTALADORValue write SetNOMBRE_INSTALADORValue; property NOMBRE_INSTALADOR: String read GetNOMBRE_INSTALADORValue write SetNOMBRE_INSTALADORValue;
property NOMBRE_INSTALADORIsNull: Boolean read GetNOMBRE_INSTALADORIsNull write SetNOMBRE_INSTALADORIsNull; property NOMBRE_INSTALADORIsNull: Boolean read GetNOMBRE_INSTALADORIsNull write SetNOMBRE_INSTALADORIsNull;
property ID_PRESUPUESTADOR: Integer read GetID_PRESUPUESTADORValue write SetID_PRESUPUESTADORValue;
property ID_PRESUPUESTADORIsNull: Boolean read GetID_PRESUPUESTADORIsNull write SetID_PRESUPUESTADORIsNull;
property PRESUPUESTADOR: String read GetPRESUPUESTADORValue write SetPRESUPUESTADORValue;
property PRESUPUESTADORIsNull: Boolean read GetPRESUPUESTADORIsNull write SetPRESUPUESTADORIsNull;
property ID_SEGUIDOR: Integer read GetID_SEGUIDORValue write SetID_SEGUIDORValue;
property ID_SEGUIDORIsNull: Boolean read GetID_SEGUIDORIsNull write SetID_SEGUIDORIsNull;
property SEGUIDOR: String read GetSEGUIDORValue write SetSEGUIDORValue;
property SEGUIDORIsNull: Boolean read GetSEGUIDORIsNull write SetSEGUIDORIsNull;
end; end;
{ TContratosClienteDataTableRules } { TContratosClienteDataTableRules }
@ -1173,6 +1219,22 @@ type
procedure SetNOMBRE_INSTALADORValue(const aValue: String); virtual; procedure SetNOMBRE_INSTALADORValue(const aValue: String); virtual;
function GetNOMBRE_INSTALADORIsNull: Boolean; virtual; function GetNOMBRE_INSTALADORIsNull: Boolean; virtual;
procedure SetNOMBRE_INSTALADORIsNull(const aValue: Boolean); virtual; procedure SetNOMBRE_INSTALADORIsNull(const aValue: Boolean); virtual;
function GetID_PRESUPUESTADORValue: Integer; virtual;
procedure SetID_PRESUPUESTADORValue(const aValue: Integer); virtual;
function GetID_PRESUPUESTADORIsNull: Boolean; virtual;
procedure SetID_PRESUPUESTADORIsNull(const aValue: Boolean); virtual;
function GetPRESUPUESTADORValue: String; virtual;
procedure SetPRESUPUESTADORValue(const aValue: String); virtual;
function GetPRESUPUESTADORIsNull: Boolean; virtual;
procedure SetPRESUPUESTADORIsNull(const aValue: Boolean); virtual;
function GetID_SEGUIDORValue: Integer; virtual;
procedure SetID_SEGUIDORValue(const aValue: Integer); virtual;
function GetID_SEGUIDORIsNull: Boolean; virtual;
procedure SetID_SEGUIDORIsNull(const aValue: Boolean); virtual;
function GetSEGUIDORValue: String; virtual;
procedure SetSEGUIDORValue(const aValue: String); virtual;
function GetSEGUIDORIsNull: Boolean; virtual;
procedure SetSEGUIDORIsNull(const aValue: Boolean); virtual;
{ Properties } { Properties }
property ID: Integer read GetIDValue write SetIDValue; property ID: Integer read GetIDValue write SetIDValue;
@ -1279,6 +1341,14 @@ type
property ID_INSTALADORIsNull: Boolean read GetID_INSTALADORIsNull write SetID_INSTALADORIsNull; property ID_INSTALADORIsNull: Boolean read GetID_INSTALADORIsNull write SetID_INSTALADORIsNull;
property NOMBRE_INSTALADOR: String read GetNOMBRE_INSTALADORValue write SetNOMBRE_INSTALADORValue; property NOMBRE_INSTALADOR: String read GetNOMBRE_INSTALADORValue write SetNOMBRE_INSTALADORValue;
property NOMBRE_INSTALADORIsNull: Boolean read GetNOMBRE_INSTALADORIsNull write SetNOMBRE_INSTALADORIsNull; property NOMBRE_INSTALADORIsNull: Boolean read GetNOMBRE_INSTALADORIsNull write SetNOMBRE_INSTALADORIsNull;
property ID_PRESUPUESTADOR: Integer read GetID_PRESUPUESTADORValue write SetID_PRESUPUESTADORValue;
property ID_PRESUPUESTADORIsNull: Boolean read GetID_PRESUPUESTADORIsNull write SetID_PRESUPUESTADORIsNull;
property PRESUPUESTADOR: String read GetPRESUPUESTADORValue write SetPRESUPUESTADORValue;
property PRESUPUESTADORIsNull: Boolean read GetPRESUPUESTADORIsNull write SetPRESUPUESTADORIsNull;
property ID_SEGUIDOR: Integer read GetID_SEGUIDORValue write SetID_SEGUIDORValue;
property ID_SEGUIDORIsNull: Boolean read GetID_SEGUIDORIsNull write SetID_SEGUIDORIsNull;
property SEGUIDOR: String read GetSEGUIDORValue write SetSEGUIDORValue;
property SEGUIDORIsNull: Boolean read GetSEGUIDORIsNull write SetSEGUIDORIsNull;
public public
constructor Create(aDataTable: TDADataTable); override; constructor Create(aDataTable: TDADataTable); override;
@ -1291,7 +1361,7 @@ type
} }
{ ITiposCapitulos } { ITiposCapitulos }
ITiposCapitulos = interface(IDAStronglyTypedDataTable) ITiposCapitulos = interface(IDAStronglyTypedDataTable)
['{42253827-AA15-492F-AFAC-257EB0C0F6D7}'] ['{073AA046-A990-4F4C-9511-1FCECCAB82F5}']
{ Property getters and setters } { Property getters and setters }
function GetIDValue: Integer; function GetIDValue: Integer;
procedure SetIDValue(const aValue: Integer); procedure SetIDValue(const aValue: Integer);
@ -1386,7 +1456,7 @@ type
{ IContratosCliente_Detalles } { IContratosCliente_Detalles }
IContratosCliente_Detalles = interface(IDAStronglyTypedDataTable) IContratosCliente_Detalles = interface(IDAStronglyTypedDataTable)
['{4654E368-8185-40CF-AAD9-9233379440E5}'] ['{DC068DE8-7645-4606-A495-EA61858FA573}']
{ Property getters and setters } { Property getters and setters }
function GetIDValue: Integer; function GetIDValue: Integer;
procedure SetIDValue(const aValue: Integer); procedure SetIDValue(const aValue: Integer);
@ -1637,7 +1707,7 @@ type
{ IContratoClienteFacturasProv } { IContratoClienteFacturasProv }
IContratoClienteFacturasProv = interface(IDAStronglyTypedDataTable) IContratoClienteFacturasProv = interface(IDAStronglyTypedDataTable)
['{B6845872-92DB-4F81-8768-8FD56B3FD473}'] ['{0FA7F5D0-2691-460F-9169-53D618623C2A}']
{ Property getters and setters } { Property getters and setters }
function GetID_CONTRATOValue: Integer; function GetID_CONTRATOValue: Integer;
procedure SetID_CONTRATOValue(const aValue: Integer); procedure SetID_CONTRATOValue(const aValue: Integer);
@ -1937,6 +2007,27 @@ begin
DataTable.Fields[idx_ContratosClienteBeneficiosID].AsVariant := Null; DataTable.Fields[idx_ContratosClienteBeneficiosID].AsVariant := Null;
end; end;
function TContratosClienteBeneficiosDataTableRules.GetID_EMPRESAValue: Integer;
begin
result := DataTable.Fields[idx_ContratosClienteBeneficiosID_EMPRESA].AsInteger;
end;
procedure TContratosClienteBeneficiosDataTableRules.SetID_EMPRESAValue(const aValue: Integer);
begin
DataTable.Fields[idx_ContratosClienteBeneficiosID_EMPRESA].AsInteger := aValue;
end;
function TContratosClienteBeneficiosDataTableRules.GetID_EMPRESAIsNull: boolean;
begin
result := DataTable.Fields[idx_ContratosClienteBeneficiosID_EMPRESA].IsNull;
end;
procedure TContratosClienteBeneficiosDataTableRules.SetID_EMPRESAIsNull(const aValue: Boolean);
begin
if aValue then
DataTable.Fields[idx_ContratosClienteBeneficiosID_EMPRESA].AsVariant := Null;
end;
function TContratosClienteBeneficiosDataTableRules.GetREFERENCIAValue: String; function TContratosClienteBeneficiosDataTableRules.GetREFERENCIAValue: String;
begin begin
result := DataTable.Fields[idx_ContratosClienteBeneficiosREFERENCIA].AsString; result := DataTable.Fields[idx_ContratosClienteBeneficiosREFERENCIA].AsString;
@ -3388,6 +3479,90 @@ begin
DataTable.Fields[idx_ContratosClienteNOMBRE_INSTALADOR].AsVariant := Null; DataTable.Fields[idx_ContratosClienteNOMBRE_INSTALADOR].AsVariant := Null;
end; end;
function TContratosClienteDataTableRules.GetID_PRESUPUESTADORValue: Integer;
begin
result := DataTable.Fields[idx_ContratosClienteID_PRESUPUESTADOR].AsInteger;
end;
procedure TContratosClienteDataTableRules.SetID_PRESUPUESTADORValue(const aValue: Integer);
begin
DataTable.Fields[idx_ContratosClienteID_PRESUPUESTADOR].AsInteger := aValue;
end;
function TContratosClienteDataTableRules.GetID_PRESUPUESTADORIsNull: boolean;
begin
result := DataTable.Fields[idx_ContratosClienteID_PRESUPUESTADOR].IsNull;
end;
procedure TContratosClienteDataTableRules.SetID_PRESUPUESTADORIsNull(const aValue: Boolean);
begin
if aValue then
DataTable.Fields[idx_ContratosClienteID_PRESUPUESTADOR].AsVariant := Null;
end;
function TContratosClienteDataTableRules.GetPRESUPUESTADORValue: String;
begin
result := DataTable.Fields[idx_ContratosClientePRESUPUESTADOR].AsString;
end;
procedure TContratosClienteDataTableRules.SetPRESUPUESTADORValue(const aValue: String);
begin
DataTable.Fields[idx_ContratosClientePRESUPUESTADOR].AsString := aValue;
end;
function TContratosClienteDataTableRules.GetPRESUPUESTADORIsNull: boolean;
begin
result := DataTable.Fields[idx_ContratosClientePRESUPUESTADOR].IsNull;
end;
procedure TContratosClienteDataTableRules.SetPRESUPUESTADORIsNull(const aValue: Boolean);
begin
if aValue then
DataTable.Fields[idx_ContratosClientePRESUPUESTADOR].AsVariant := Null;
end;
function TContratosClienteDataTableRules.GetID_SEGUIDORValue: Integer;
begin
result := DataTable.Fields[idx_ContratosClienteID_SEGUIDOR].AsInteger;
end;
procedure TContratosClienteDataTableRules.SetID_SEGUIDORValue(const aValue: Integer);
begin
DataTable.Fields[idx_ContratosClienteID_SEGUIDOR].AsInteger := aValue;
end;
function TContratosClienteDataTableRules.GetID_SEGUIDORIsNull: boolean;
begin
result := DataTable.Fields[idx_ContratosClienteID_SEGUIDOR].IsNull;
end;
procedure TContratosClienteDataTableRules.SetID_SEGUIDORIsNull(const aValue: Boolean);
begin
if aValue then
DataTable.Fields[idx_ContratosClienteID_SEGUIDOR].AsVariant := Null;
end;
function TContratosClienteDataTableRules.GetSEGUIDORValue: String;
begin
result := DataTable.Fields[idx_ContratosClienteSEGUIDOR].AsString;
end;
procedure TContratosClienteDataTableRules.SetSEGUIDORValue(const aValue: String);
begin
DataTable.Fields[idx_ContratosClienteSEGUIDOR].AsString := aValue;
end;
function TContratosClienteDataTableRules.GetSEGUIDORIsNull: boolean;
begin
result := DataTable.Fields[idx_ContratosClienteSEGUIDOR].IsNull;
end;
procedure TContratosClienteDataTableRules.SetSEGUIDORIsNull(const aValue: Boolean);
begin
if aValue then
DataTable.Fields[idx_ContratosClienteSEGUIDOR].AsVariant := Null;
end;
{ TTiposCapitulosDataTableRules } { TTiposCapitulosDataTableRules }
constructor TTiposCapitulosDataTableRules.Create(aDataTable: TDADataTable); constructor TTiposCapitulosDataTableRules.Create(aDataTable: TDADataTable);

View File

@ -9,19 +9,19 @@ 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_ValoresDelta = '{3B7D377E-AB81-4975-8494-9821E0FC6AA4}'; RID_ValoresDelta = '{BEF7E846-68E6-4642-A963-8239662BC18F}';
RID_PropiedadesDelta = '{7ECA25E4-73C2-49A4-AD97-52951A70F8BB}'; RID_PropiedadesDelta = '{965C52FF-51FE-49E2-AB0F-CC133550B5F0}';
RID_ListaAnosContratosDelta = '{AD1A22B8-9535-49EE-AB3D-9CCAFA231A5E}'; RID_ListaAnosContratosDelta = '{100E85ED-6E4C-483A-A598-B561F0EEE3AA}';
RID_ContratosClienteBeneficiosDelta = '{703EB6BB-27C5-4E04-AB28-7253E5724A2F}'; RID_ContratosClienteBeneficiosDelta = '{0EA5FDD2-43CA-49C1-BA07-FF120B4344FF}';
RID_ContratosClienteDelta = '{9DE64986-EE28-44BE-BE23-11127CD3AFB0}'; RID_ContratosClienteDelta = '{FBB297BE-9076-4A45-B9FB-7296823BA42C}';
RID_TiposCapitulosDelta = '{7D66353C-5A18-40C0-8523-6DEB3A54899C}'; RID_TiposCapitulosDelta = '{92BA6A50-5D11-4716-A080-9CB5DCEFCAA8}';
RID_ContratosCliente_DetallesDelta = '{3451CA78-2E5A-4DA1-A8D2-50CA06D86BDD}'; RID_ContratosCliente_DetallesDelta = '{225035B8-7694-4159-AB92-AA97C02FB36B}';
RID_ContratoClienteFacturasProvDelta = '{95667A5A-0FA5-4E92-A851-F3D3E7C98260}'; RID_ContratoClienteFacturasProvDelta = '{17B96B7F-8DF6-4136-B8C3-4E32068BE42E}';
type type
{ IValoresDelta } { IValoresDelta }
IValoresDelta = interface(IValores) IValoresDelta = interface(IValores)
['{3B7D377E-AB81-4975-8494-9821E0FC6AA4}'] ['{BEF7E846-68E6-4642-A963-8239662BC18F}']
{ Property getters and setters } { Property getters and setters }
function GetOldIDValue : Integer; function GetOldIDValue : Integer;
function GetOldID_PROPIEDADValue : Integer; function GetOldID_PROPIEDADValue : Integer;
@ -79,7 +79,7 @@ type
{ IPropiedadesDelta } { IPropiedadesDelta }
IPropiedadesDelta = interface(IPropiedades) IPropiedadesDelta = interface(IPropiedades)
['{7ECA25E4-73C2-49A4-AD97-52951A70F8BB}'] ['{965C52FF-51FE-49E2-AB0F-CC133550B5F0}']
{ Property getters and setters } { Property getters and setters }
function GetOldIDValue : Integer; function GetOldIDValue : Integer;
function GetOldDESCRIPCIONValue : String; function GetOldDESCRIPCIONValue : String;
@ -137,7 +137,7 @@ type
{ IListaAnosContratosDelta } { IListaAnosContratosDelta }
IListaAnosContratosDelta = interface(IListaAnosContratos) IListaAnosContratosDelta = interface(IListaAnosContratos)
['{AD1A22B8-9535-49EE-AB3D-9CCAFA231A5E}'] ['{100E85ED-6E4C-483A-A598-B561F0EEE3AA}']
{ Property getters and setters } { Property getters and setters }
function GetOldANOValue : String; function GetOldANOValue : String;
@ -171,9 +171,10 @@ type
{ IContratosClienteBeneficiosDelta } { IContratosClienteBeneficiosDelta }
IContratosClienteBeneficiosDelta = interface(IContratosClienteBeneficios) IContratosClienteBeneficiosDelta = interface(IContratosClienteBeneficios)
['{703EB6BB-27C5-4E04-AB28-7253E5724A2F}'] ['{0EA5FDD2-43CA-49C1-BA07-FF120B4344FF}']
{ Property getters and setters } { Property getters and setters }
function GetOldIDValue : Integer; function GetOldIDValue : Integer;
function GetOldID_EMPRESAValue : Integer;
function GetOldREFERENCIAValue : String; function GetOldREFERENCIAValue : String;
function GetOldREFERENCIA_CLIENTEValue : String; function GetOldREFERENCIA_CLIENTEValue : String;
function GetOldTIPO_CONTRATOValue : String; function GetOldTIPO_CONTRATOValue : String;
@ -192,6 +193,7 @@ type
{ Properties } { Properties }
property OldID : Integer read GetOldIDValue; property OldID : Integer read GetOldIDValue;
property OldID_EMPRESA : Integer read GetOldID_EMPRESAValue;
property OldREFERENCIA : String read GetOldREFERENCIAValue; property OldREFERENCIA : String read GetOldREFERENCIAValue;
property OldREFERENCIA_CLIENTE : String read GetOldREFERENCIA_CLIENTEValue; property OldREFERENCIA_CLIENTE : String read GetOldREFERENCIA_CLIENTEValue;
property OldTIPO_CONTRATO : String read GetOldTIPO_CONTRATOValue; property OldTIPO_CONTRATO : String read GetOldTIPO_CONTRATOValue;
@ -220,6 +222,12 @@ type
function GetOldIDIsNull: Boolean; virtual; function GetOldIDIsNull: Boolean; virtual;
procedure SetIDValue(const aValue: Integer); virtual; procedure SetIDValue(const aValue: Integer); virtual;
procedure SetIDIsNull(const aValue: Boolean); virtual; procedure SetIDIsNull(const aValue: Boolean); virtual;
function GetID_EMPRESAValue: Integer; virtual;
function GetID_EMPRESAIsNull: Boolean; virtual;
function GetOldID_EMPRESAValue: Integer; virtual;
function GetOldID_EMPRESAIsNull: Boolean; virtual;
procedure SetID_EMPRESAValue(const aValue: Integer); virtual;
procedure SetID_EMPRESAIsNull(const aValue: Boolean); virtual;
function GetREFERENCIAValue: String; virtual; function GetREFERENCIAValue: String; virtual;
function GetREFERENCIAIsNull: Boolean; virtual; function GetREFERENCIAIsNull: Boolean; virtual;
function GetOldREFERENCIAValue: String; virtual; function GetOldREFERENCIAValue: String; virtual;
@ -316,6 +324,10 @@ type
property IDIsNull : Boolean read GetIDIsNull write SetIDIsNull; property IDIsNull : Boolean read GetIDIsNull write SetIDIsNull;
property OldID : Integer read GetOldIDValue; property OldID : Integer read GetOldIDValue;
property OldIDIsNull : Boolean read GetOldIDIsNull; property OldIDIsNull : Boolean read GetOldIDIsNull;
property ID_EMPRESA : Integer read GetID_EMPRESAValue write SetID_EMPRESAValue;
property ID_EMPRESAIsNull : Boolean read GetID_EMPRESAIsNull write SetID_EMPRESAIsNull;
property OldID_EMPRESA : Integer read GetOldID_EMPRESAValue;
property OldID_EMPRESAIsNull : Boolean read GetOldID_EMPRESAIsNull;
property REFERENCIA : String read GetREFERENCIAValue write SetREFERENCIAValue; property REFERENCIA : String read GetREFERENCIAValue write SetREFERENCIAValue;
property REFERENCIAIsNull : Boolean read GetREFERENCIAIsNull write SetREFERENCIAIsNull; property REFERENCIAIsNull : Boolean read GetREFERENCIAIsNull write SetREFERENCIAIsNull;
property OldREFERENCIA : String read GetOldREFERENCIAValue; property OldREFERENCIA : String read GetOldREFERENCIAValue;
@ -385,7 +397,7 @@ type
{ IContratosClienteDelta } { IContratosClienteDelta }
IContratosClienteDelta = interface(IContratosCliente) IContratosClienteDelta = interface(IContratosCliente)
['{9DE64986-EE28-44BE-BE23-11127CD3AFB0}'] ['{FBB297BE-9076-4A45-B9FB-7296823BA42C}']
{ Property getters and setters } { Property getters and setters }
function GetOldIDValue : Integer; function GetOldIDValue : Integer;
function GetOldID_EMPRESAValue : Integer; function GetOldID_EMPRESAValue : Integer;
@ -439,6 +451,10 @@ type
function GetOldFECHA_ULT_PRESENTACION_CLIENTEValue : DateTime; function GetOldFECHA_ULT_PRESENTACION_CLIENTEValue : DateTime;
function GetOldID_INSTALADORValue : Integer; function GetOldID_INSTALADORValue : Integer;
function GetOldNOMBRE_INSTALADORValue : String; function GetOldNOMBRE_INSTALADORValue : String;
function GetOldID_PRESUPUESTADORValue : Integer;
function GetOldPRESUPUESTADORValue : String;
function GetOldID_SEGUIDORValue : Integer;
function GetOldSEGUIDORValue : String;
{ Properties } { Properties }
property OldID : Integer read GetOldIDValue; property OldID : Integer read GetOldIDValue;
@ -493,6 +509,10 @@ type
property OldFECHA_ULT_PRESENTACION_CLIENTE : DateTime read GetOldFECHA_ULT_PRESENTACION_CLIENTEValue; property OldFECHA_ULT_PRESENTACION_CLIENTE : DateTime read GetOldFECHA_ULT_PRESENTACION_CLIENTEValue;
property OldID_INSTALADOR : Integer read GetOldID_INSTALADORValue; property OldID_INSTALADOR : Integer read GetOldID_INSTALADORValue;
property OldNOMBRE_INSTALADOR : String read GetOldNOMBRE_INSTALADORValue; property OldNOMBRE_INSTALADOR : String read GetOldNOMBRE_INSTALADORValue;
property OldID_PRESUPUESTADOR : Integer read GetOldID_PRESUPUESTADORValue;
property OldPRESUPUESTADOR : String read GetOldPRESUPUESTADORValue;
property OldID_SEGUIDOR : Integer read GetOldID_SEGUIDORValue;
property OldSEGUIDOR : String read GetOldSEGUIDORValue;
end; end;
{ TContratosClienteBusinessProcessorRules } { TContratosClienteBusinessProcessorRules }
@ -818,6 +838,30 @@ type
function GetOldNOMBRE_INSTALADORIsNull: Boolean; virtual; function GetOldNOMBRE_INSTALADORIsNull: Boolean; virtual;
procedure SetNOMBRE_INSTALADORValue(const aValue: String); virtual; procedure SetNOMBRE_INSTALADORValue(const aValue: String); virtual;
procedure SetNOMBRE_INSTALADORIsNull(const aValue: Boolean); virtual; procedure SetNOMBRE_INSTALADORIsNull(const aValue: Boolean); virtual;
function GetID_PRESUPUESTADORValue: Integer; virtual;
function GetID_PRESUPUESTADORIsNull: Boolean; virtual;
function GetOldID_PRESUPUESTADORValue: Integer; virtual;
function GetOldID_PRESUPUESTADORIsNull: Boolean; virtual;
procedure SetID_PRESUPUESTADORValue(const aValue: Integer); virtual;
procedure SetID_PRESUPUESTADORIsNull(const aValue: Boolean); virtual;
function GetPRESUPUESTADORValue: String; virtual;
function GetPRESUPUESTADORIsNull: Boolean; virtual;
function GetOldPRESUPUESTADORValue: String; virtual;
function GetOldPRESUPUESTADORIsNull: Boolean; virtual;
procedure SetPRESUPUESTADORValue(const aValue: String); virtual;
procedure SetPRESUPUESTADORIsNull(const aValue: Boolean); virtual;
function GetID_SEGUIDORValue: Integer; virtual;
function GetID_SEGUIDORIsNull: Boolean; virtual;
function GetOldID_SEGUIDORValue: Integer; virtual;
function GetOldID_SEGUIDORIsNull: Boolean; virtual;
procedure SetID_SEGUIDORValue(const aValue: Integer); virtual;
procedure SetID_SEGUIDORIsNull(const aValue: Boolean); virtual;
function GetSEGUIDORValue: String; virtual;
function GetSEGUIDORIsNull: Boolean; virtual;
function GetOldSEGUIDORValue: String; virtual;
function GetOldSEGUIDORIsNull: Boolean; virtual;
procedure SetSEGUIDORValue(const aValue: String); virtual;
procedure SetSEGUIDORIsNull(const aValue: Boolean); virtual;
{ Properties } { Properties }
property ID : Integer read GetIDValue write SetIDValue; property ID : Integer read GetIDValue write SetIDValue;
@ -1028,6 +1072,22 @@ type
property NOMBRE_INSTALADORIsNull : Boolean read GetNOMBRE_INSTALADORIsNull write SetNOMBRE_INSTALADORIsNull; property NOMBRE_INSTALADORIsNull : Boolean read GetNOMBRE_INSTALADORIsNull write SetNOMBRE_INSTALADORIsNull;
property OldNOMBRE_INSTALADOR : String read GetOldNOMBRE_INSTALADORValue; property OldNOMBRE_INSTALADOR : String read GetOldNOMBRE_INSTALADORValue;
property OldNOMBRE_INSTALADORIsNull : Boolean read GetOldNOMBRE_INSTALADORIsNull; property OldNOMBRE_INSTALADORIsNull : Boolean read GetOldNOMBRE_INSTALADORIsNull;
property ID_PRESUPUESTADOR : Integer read GetID_PRESUPUESTADORValue write SetID_PRESUPUESTADORValue;
property ID_PRESUPUESTADORIsNull : Boolean read GetID_PRESUPUESTADORIsNull write SetID_PRESUPUESTADORIsNull;
property OldID_PRESUPUESTADOR : Integer read GetOldID_PRESUPUESTADORValue;
property OldID_PRESUPUESTADORIsNull : Boolean read GetOldID_PRESUPUESTADORIsNull;
property PRESUPUESTADOR : String read GetPRESUPUESTADORValue write SetPRESUPUESTADORValue;
property PRESUPUESTADORIsNull : Boolean read GetPRESUPUESTADORIsNull write SetPRESUPUESTADORIsNull;
property OldPRESUPUESTADOR : String read GetOldPRESUPUESTADORValue;
property OldPRESUPUESTADORIsNull : Boolean read GetOldPRESUPUESTADORIsNull;
property ID_SEGUIDOR : Integer read GetID_SEGUIDORValue write SetID_SEGUIDORValue;
property ID_SEGUIDORIsNull : Boolean read GetID_SEGUIDORIsNull write SetID_SEGUIDORIsNull;
property OldID_SEGUIDOR : Integer read GetOldID_SEGUIDORValue;
property OldID_SEGUIDORIsNull : Boolean read GetOldID_SEGUIDORIsNull;
property SEGUIDOR : String read GetSEGUIDORValue write SetSEGUIDORValue;
property SEGUIDORIsNull : Boolean read GetSEGUIDORIsNull write SetSEGUIDORIsNull;
property OldSEGUIDOR : String read GetOldSEGUIDORValue;
property OldSEGUIDORIsNull : Boolean read GetOldSEGUIDORIsNull;
public public
constructor Create(aBusinessProcessor: TDABusinessProcessor); override; constructor Create(aBusinessProcessor: TDABusinessProcessor); override;
@ -1037,7 +1097,7 @@ type
{ ITiposCapitulosDelta } { ITiposCapitulosDelta }
ITiposCapitulosDelta = interface(ITiposCapitulos) ITiposCapitulosDelta = interface(ITiposCapitulos)
['{7D66353C-5A18-40C0-8523-6DEB3A54899C}'] ['{92BA6A50-5D11-4716-A080-9CB5DCEFCAA8}']
{ Property getters and setters } { Property getters and setters }
function GetOldIDValue : Integer; function GetOldIDValue : Integer;
function GetOldPOSICIONValue : Integer; function GetOldPOSICIONValue : Integer;
@ -1131,7 +1191,7 @@ type
{ IContratosCliente_DetallesDelta } { IContratosCliente_DetallesDelta }
IContratosCliente_DetallesDelta = interface(IContratosCliente_Detalles) IContratosCliente_DetallesDelta = interface(IContratosCliente_Detalles)
['{3451CA78-2E5A-4DA1-A8D2-50CA06D86BDD}'] ['{225035B8-7694-4159-AB92-AA97C02FB36B}']
{ Property getters and setters } { Property getters and setters }
function GetOldIDValue : Integer; function GetOldIDValue : Integer;
function GetOldID_CONTRATOValue : Integer; function GetOldID_CONTRATOValue : Integer;
@ -1381,7 +1441,7 @@ type
{ IContratoClienteFacturasProvDelta } { IContratoClienteFacturasProvDelta }
IContratoClienteFacturasProvDelta = interface(IContratoClienteFacturasProv) IContratoClienteFacturasProvDelta = interface(IContratoClienteFacturasProv)
['{95667A5A-0FA5-4E92-A851-F3D3E7C98260}'] ['{17B96B7F-8DF6-4136-B8C3-4E32068BE42E}']
{ Property getters and setters } { Property getters and setters }
function GetOldID_CONTRATOValue : Integer; function GetOldID_CONTRATOValue : Integer;
function GetOldREFERENCIAValue : String; function GetOldREFERENCIAValue : String;
@ -1761,6 +1821,37 @@ begin
BusinessProcessor.CurrentChange.NewValueByName[fld_ContratosClienteBeneficiosID] := Null; BusinessProcessor.CurrentChange.NewValueByName[fld_ContratosClienteBeneficiosID] := Null;
end; end;
function TContratosClienteBeneficiosBusinessProcessorRules.GetID_EMPRESAValue: Integer;
begin
result := BusinessProcessor.CurrentChange.NewValueByName[fld_ContratosClienteBeneficiosID_EMPRESA];
end;
function TContratosClienteBeneficiosBusinessProcessorRules.GetID_EMPRESAIsNull: Boolean;
begin
result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ContratosClienteBeneficiosID_EMPRESA]);
end;
function TContratosClienteBeneficiosBusinessProcessorRules.GetOldID_EMPRESAValue: Integer;
begin
result := BusinessProcessor.CurrentChange.OldValueByName[fld_ContratosClienteBeneficiosID_EMPRESA];
end;
function TContratosClienteBeneficiosBusinessProcessorRules.GetOldID_EMPRESAIsNull: Boolean;
begin
result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ContratosClienteBeneficiosID_EMPRESA]);
end;
procedure TContratosClienteBeneficiosBusinessProcessorRules.SetID_EMPRESAValue(const aValue: Integer);
begin
BusinessProcessor.CurrentChange.NewValueByName[fld_ContratosClienteBeneficiosID_EMPRESA] := aValue;
end;
procedure TContratosClienteBeneficiosBusinessProcessorRules.SetID_EMPRESAIsNull(const aValue: Boolean);
begin
if aValue then
BusinessProcessor.CurrentChange.NewValueByName[fld_ContratosClienteBeneficiosID_EMPRESA] := Null;
end;
function TContratosClienteBeneficiosBusinessProcessorRules.GetREFERENCIAValue: String; function TContratosClienteBeneficiosBusinessProcessorRules.GetREFERENCIAValue: String;
begin begin
result := BusinessProcessor.CurrentChange.NewValueByName[fld_ContratosClienteBeneficiosREFERENCIA]; result := BusinessProcessor.CurrentChange.NewValueByName[fld_ContratosClienteBeneficiosREFERENCIA];
@ -3888,6 +3979,130 @@ begin
BusinessProcessor.CurrentChange.NewValueByName[fld_ContratosClienteNOMBRE_INSTALADOR] := Null; BusinessProcessor.CurrentChange.NewValueByName[fld_ContratosClienteNOMBRE_INSTALADOR] := Null;
end; end;
function TContratosClienteBusinessProcessorRules.GetID_PRESUPUESTADORValue: Integer;
begin
result := BusinessProcessor.CurrentChange.NewValueByName[fld_ContratosClienteID_PRESUPUESTADOR];
end;
function TContratosClienteBusinessProcessorRules.GetID_PRESUPUESTADORIsNull: Boolean;
begin
result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ContratosClienteID_PRESUPUESTADOR]);
end;
function TContratosClienteBusinessProcessorRules.GetOldID_PRESUPUESTADORValue: Integer;
begin
result := BusinessProcessor.CurrentChange.OldValueByName[fld_ContratosClienteID_PRESUPUESTADOR];
end;
function TContratosClienteBusinessProcessorRules.GetOldID_PRESUPUESTADORIsNull: Boolean;
begin
result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ContratosClienteID_PRESUPUESTADOR]);
end;
procedure TContratosClienteBusinessProcessorRules.SetID_PRESUPUESTADORValue(const aValue: Integer);
begin
BusinessProcessor.CurrentChange.NewValueByName[fld_ContratosClienteID_PRESUPUESTADOR] := aValue;
end;
procedure TContratosClienteBusinessProcessorRules.SetID_PRESUPUESTADORIsNull(const aValue: Boolean);
begin
if aValue then
BusinessProcessor.CurrentChange.NewValueByName[fld_ContratosClienteID_PRESUPUESTADOR] := Null;
end;
function TContratosClienteBusinessProcessorRules.GetPRESUPUESTADORValue: String;
begin
result := BusinessProcessor.CurrentChange.NewValueByName[fld_ContratosClientePRESUPUESTADOR];
end;
function TContratosClienteBusinessProcessorRules.GetPRESUPUESTADORIsNull: Boolean;
begin
result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ContratosClientePRESUPUESTADOR]);
end;
function TContratosClienteBusinessProcessorRules.GetOldPRESUPUESTADORValue: String;
begin
result := BusinessProcessor.CurrentChange.OldValueByName[fld_ContratosClientePRESUPUESTADOR];
end;
function TContratosClienteBusinessProcessorRules.GetOldPRESUPUESTADORIsNull: Boolean;
begin
result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ContratosClientePRESUPUESTADOR]);
end;
procedure TContratosClienteBusinessProcessorRules.SetPRESUPUESTADORValue(const aValue: String);
begin
BusinessProcessor.CurrentChange.NewValueByName[fld_ContratosClientePRESUPUESTADOR] := aValue;
end;
procedure TContratosClienteBusinessProcessorRules.SetPRESUPUESTADORIsNull(const aValue: Boolean);
begin
if aValue then
BusinessProcessor.CurrentChange.NewValueByName[fld_ContratosClientePRESUPUESTADOR] := Null;
end;
function TContratosClienteBusinessProcessorRules.GetID_SEGUIDORValue: Integer;
begin
result := BusinessProcessor.CurrentChange.NewValueByName[fld_ContratosClienteID_SEGUIDOR];
end;
function TContratosClienteBusinessProcessorRules.GetID_SEGUIDORIsNull: Boolean;
begin
result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ContratosClienteID_SEGUIDOR]);
end;
function TContratosClienteBusinessProcessorRules.GetOldID_SEGUIDORValue: Integer;
begin
result := BusinessProcessor.CurrentChange.OldValueByName[fld_ContratosClienteID_SEGUIDOR];
end;
function TContratosClienteBusinessProcessorRules.GetOldID_SEGUIDORIsNull: Boolean;
begin
result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ContratosClienteID_SEGUIDOR]);
end;
procedure TContratosClienteBusinessProcessorRules.SetID_SEGUIDORValue(const aValue: Integer);
begin
BusinessProcessor.CurrentChange.NewValueByName[fld_ContratosClienteID_SEGUIDOR] := aValue;
end;
procedure TContratosClienteBusinessProcessorRules.SetID_SEGUIDORIsNull(const aValue: Boolean);
begin
if aValue then
BusinessProcessor.CurrentChange.NewValueByName[fld_ContratosClienteID_SEGUIDOR] := Null;
end;
function TContratosClienteBusinessProcessorRules.GetSEGUIDORValue: String;
begin
result := BusinessProcessor.CurrentChange.NewValueByName[fld_ContratosClienteSEGUIDOR];
end;
function TContratosClienteBusinessProcessorRules.GetSEGUIDORIsNull: Boolean;
begin
result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ContratosClienteSEGUIDOR]);
end;
function TContratosClienteBusinessProcessorRules.GetOldSEGUIDORValue: String;
begin
result := BusinessProcessor.CurrentChange.OldValueByName[fld_ContratosClienteSEGUIDOR];
end;
function TContratosClienteBusinessProcessorRules.GetOldSEGUIDORIsNull: Boolean;
begin
result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ContratosClienteSEGUIDOR]);
end;
procedure TContratosClienteBusinessProcessorRules.SetSEGUIDORValue(const aValue: String);
begin
BusinessProcessor.CurrentChange.NewValueByName[fld_ContratosClienteSEGUIDOR] := aValue;
end;
procedure TContratosClienteBusinessProcessorRules.SetSEGUIDORIsNull(const aValue: Boolean);
begin
if aValue then
BusinessProcessor.CurrentChange.NewValueByName[fld_ContratosClienteSEGUIDOR] := Null;
end;
{ TTiposCapitulosBusinessProcessorRules } { TTiposCapitulosBusinessProcessorRules }
constructor TTiposCapitulosBusinessProcessorRules.Create(aBusinessProcessor: TDABusinessProcessor); constructor TTiposCapitulosBusinessProcessorRules.Create(aBusinessProcessor: TDABusinessProcessor);

View File

@ -35,7 +35,7 @@ type
property Detalles: IBizDetallesContratoCliente read GetDetalles write SetDetalles; property Detalles: IBizDetallesContratoCliente read GetDetalles write SetDetalles;
procedure CalcularImporteTotal; procedure CalcularImporteTotal;
procedure AsignarVendedor; procedure AsignarPresupuestador;
function EsNuevo : Boolean; function EsNuevo : Boolean;
function DarListaSituaciones: TStringList; function DarListaSituaciones: TStringList;
@ -92,7 +92,7 @@ type
function DarListaSituaciones: TStringList; function DarListaSituaciones: TStringList;
function EsNuevo : Boolean; function EsNuevo : Boolean;
procedure CalcularImporteTotal; procedure CalcularImporteTotal;
procedure AsignarVendedor; procedure AsignarPresupuestador;
property Cliente : IBizCliente read GetCliente write SetCliente; property Cliente : IBizCliente read GetCliente write SetCliente;
property _Cliente : IBizCliente read _GetCliente write _SetCliente; property _Cliente : IBizCliente read _GetCliente write _SetCliente;
@ -279,16 +279,16 @@ begin
Self.DataTable.FieldByName(fld_ContratosClienteOBSERVACIONES).AsString := AppFactuGES.ObservacionesDocumentos; Self.DataTable.FieldByName(fld_ContratosClienteOBSERVACIONES).AsString := AppFactuGES.ObservacionesDocumentos;
Self.DataTable.FieldByName(fld_ContratosClienteCONDICIONES).AsString := AppFactuGES.CondicionesDocumentos; Self.DataTable.FieldByName(fld_ContratosClienteCONDICIONES).AsString := AppFactuGES.CondicionesDocumentos;
AsignarVendedor; AsignarPresupuestador;
end; end;
procedure TBizContratoCliente.AsignarVendedor; procedure TBizContratoCliente.AsignarPresupuestador;
var var
AVendedoresController: IVendedoresController; AVendedoresController: IVendedoresController;
begin begin
AVendedoresController := TVendedoresController.Create; AVendedoresController := TVendedoresController.Create;
try try
ID_VENDEDOR := AVendedoresController.DarIDVendedorDeUsuario(AppFactuGES.UsuarioActivo.ID); ID_PRESUPUESTADOR := AVendedoresController.DarIDVendedorDeUsuario(AppFactuGES.UsuarioActivo.ID);
finally finally
AVendedoresController := nil; AVendedoresController := nil;
end; end;

View File

@ -137,11 +137,11 @@ object srvContratosCliente: TsrvContratosCliente
TargetTable = 'V_CONTRATOS_BENEFICIOS' TargetTable = 'V_CONTRATOS_BENEFICIOS'
Name = 'IBX' Name = 'IBX'
SQL = SQL =
'SELECT '#10' ID, REFERENCIA, REFERENCIA_CLIENTE, TIPO_CONTRATO, F' + 'SELECT '#10' ID, ID_EMPRESA, REFERENCIA, REFERENCIA_CLIENTE, TIPO' +
'ECHA_CONTRATO, NOMBRE, NIF_CIF, IMPORTE_NETO,'#10' IMPORTE_DESCUE' + '_CONTRATO, FECHA_CONTRATO, NOMBRE, NIF_CIF, IMPORTE_NETO,'#10' IM' +
'NTO, BASE_IMPONIBLE, IMPORTE_FACTURAS_PROVEEDOR, '#10' IMPORTE_BE' + 'PORTE_DESCUENTO, BASE_IMPONIBLE, IMPORTE_FACTURAS_PROVEEDOR, '#10' ' +
'NEFICIO, PORCENTAJE_BENEFICIO, SITUACION, ID_VENDEDOR, VENDEDOR'#10 + ' IMPORTE_BENEFICIO, PORCENTAJE_BENEFICIO, SITUACION, ID_VENDEDO' +
' FROM'#10' V_CONTRATOS_BENEFICIOS'#10' WHERE {Where}'#10 'R, VENDEDOR'#10' FROM'#10' V_CONTRATOS_BENEFICIOS'#10' WHERE {Where}'#10
StatementType = stSQL StatementType = stSQL
ColumnMappings = < ColumnMappings = <
item item
@ -207,6 +207,10 @@ object srvContratosCliente: TsrvContratosCliente
item item
DatasetField = 'TIPO_CONTRATO' DatasetField = 'TIPO_CONTRATO'
TableField = 'TIPO_CONTRATO' TableField = 'TIPO_CONTRATO'
end
item
DatasetField = 'ID_EMPRESA'
TableField = 'ID_EMPRESA'
end> end>
end> end>
Name = 'ContratosClienteBeneficios' Name = 'ContratosClienteBeneficios'
@ -215,6 +219,10 @@ object srvContratosCliente: TsrvContratosCliente
Name = 'ID' Name = 'ID'
DataType = datInteger DataType = datInteger
end end
item
Name = 'ID_EMPRESA'
DataType = datInteger
end
item item
Name = 'REFERENCIA' Name = 'REFERENCIA'
DataType = datString DataType = datString
@ -499,6 +507,22 @@ object srvContratosCliente: TsrvContratosCliente
item item
DatasetField = 'NOMBRE_INSTALADOR' DatasetField = 'NOMBRE_INSTALADOR'
TableField = 'NOMBRE_INSTALADOR' TableField = 'NOMBRE_INSTALADOR'
end
item
DatasetField = 'PRESUPUESTADOR'
TableField = 'PRESUPUESTADOR'
end
item
DatasetField = 'ID_PRESUPUESTADOR'
TableField = 'ID_PRESUPUESTADOR'
end
item
DatasetField = 'ID_SEGUIDOR'
TableField = 'ID_SEGUIDOR'
end
item
DatasetField = 'SEGUIDOR'
TableField = 'SEGUIDOR'
end> end>
end> end>
Name = 'ContratosCliente' Name = 'ContratosCliente'
@ -786,6 +810,27 @@ object srvContratosCliente: TsrvContratosCliente
Name = 'NOMBRE_INSTALADOR' Name = 'NOMBRE_INSTALADOR'
DataType = datString DataType = datString
Size = 255 Size = 255
ServerAutoRefresh = True
end
item
Name = 'ID_PRESUPUESTADOR'
DataType = datInteger
end
item
Name = 'PRESUPUESTADOR'
DataType = datString
Size = 255
ServerAutoRefresh = True
end
item
Name = 'ID_SEGUIDOR'
DataType = datInteger
end
item
Name = 'SEGUIDOR'
DataType = datString
Size = 255
ServerAutoRefresh = True
end> end>
end end
item item
@ -1349,6 +1394,16 @@ object srvContratosCliente: TsrvContratosCliente
DataType = datString DataType = datString
Size = 255 Size = 255
Value = '' Value = ''
end
item
Name = 'ID_PRESUPUESTADOR'
DataType = datInteger
Value = ''
end
item
Name = 'ID_SEGUIDOR'
DataType = datInteger
Value = ''
end> end>
Statements = < Statements = <
item item
@ -1366,18 +1421,19 @@ object srvContratosCliente: TsrvContratosCliente
' PERSONA_CONTACTO,'#10' RE, IMPORTE_RE, RECARGO_EQUIVALENCIA, TE' + ' PERSONA_CONTACTO,'#10' RE, IMPORTE_RE, RECARGO_EQUIVALENCIA, TE' +
'LEFONO, MOVIL, TIPO_CONTRATO, CONDICIONES,'#10' CALIDADES, REFER' + 'LEFONO, MOVIL, TIPO_CONTRATO, CONDICIONES,'#10' CALIDADES, REFER' +
'ENCIA_CLIENTE, ID_EMPRESA, FECHA_ULT_PRESENTACION_CLIENTE,'#10' ' + 'ENCIA_CLIENTE, ID_EMPRESA, FECHA_ULT_PRESENTACION_CLIENTE,'#10' ' +
'ID_INSTALADOR, NOMBRE_INSTALADOR)'#10' VALUES'#10' (:ID, :ID_CLIENTE' + 'ID_INSTALADOR, NOMBRE_INSTALADOR, ID_PRESUPUESTADOR, ID_SEGUIDOR' +
', :NIF_CIF, :NOMBRE, :ID_DIRECCION, :CALLE, :POBLACION, :PROVINC' + ')'#10' VALUES'#10' (:ID, :ID_CLIENTE, :NIF_CIF, :NOMBRE, :ID_DIRECCI' +
'IA,'#10' :CODIGO_POSTAL, :REFERENCIA, :FECHA_CONTRATO, :SITUACIO' + 'ON, :CALLE, :POBLACION, :PROVINCIA,'#10' :CODIGO_POSTAL, :REFERE' +
'N, :FORMA_PAGO,'#10' :PLAZO_ENTREGA, :OBSERVACIONES, :INCIDENCIA' + 'NCIA, :FECHA_CONTRATO, :SITUACION, :FORMA_PAGO,'#10' :PLAZO_ENTR' +
'S, :INCIDENCIAS_ACTIVAS, CURRENT_TIMESTAMP,'#10' :USUARIO, :IMPO' + 'EGA, :OBSERVACIONES, :INCIDENCIAS, :INCIDENCIAS_ACTIVAS, CURRENT' +
'RTE_NETO, :IMPORTE_PORTE, :DESCUENTO, :IMPORTE_DESCUENTO,'#10' :' + '_TIMESTAMP,'#10' :USUARIO, :IMPORTE_NETO, :IMPORTE_PORTE, :DESCU' +
'BASE_IMPONIBLE, :ID_TIPO_IVA, :IVA, :IMPORTE_IVA, :IMPORTE_TOTAL' + 'ENTO, :IMPORTE_DESCUENTO,'#10' :BASE_IMPONIBLE, :ID_TIPO_IVA, :I' +
', :ID_FORMA_PAGO,'#10' :ID_TIENDA, :ID_VENDEDOR, :PERSONA_CONTAC' + 'VA, :IMPORTE_IVA, :IMPORTE_TOTAL, :ID_FORMA_PAGO,'#10' :ID_TIEND' +
'TO, :RE, :IMPORTE_RE, :RECARGO_EQUIVALENCIA,'#10' :TELEFONO, :MO' + 'A, :ID_VENDEDOR, :PERSONA_CONTACTO, :RE, :IMPORTE_RE, :RECARGO_E' +
'VIL, :TIPO_CONTRATO, :CONDICIONES, :CALIDADES, :REFERENCIA_CLIEN' + 'QUIVALENCIA,'#10' :TELEFONO, :MOVIL, :TIPO_CONTRATO, :CONDICIONE' +
'TE, :ID_EMPRESA, :FECHA_ULT_PRESENTACION_CLIENTE,'#10' :ID_INSTA' + 'S, :CALIDADES, :REFERENCIA_CLIENTE, :ID_EMPRESA, :FECHA_ULT_PRES' +
'LADOR, :NOMBRE_INSTALADOR)'#10#10 'ENTACION_CLIENTE,'#10' :ID_INSTALADOR, :NOMBRE_INSTALADOR, :ID_P' +
'RESUPUESTADOR, :ID_SEGUIDOR)'#10#10
StatementType = stSQL StatementType = stSQL
ColumnMappings = <> ColumnMappings = <>
end> end>
@ -1638,6 +1694,16 @@ object srvContratosCliente: TsrvContratosCliente
Size = 255 Size = 255
Value = '' Value = ''
end end
item
Name = 'ID_PRESUPUESTADOR'
DataType = datInteger
Value = ''
end
item
Name = 'ID_SEGUIDOR'
DataType = datInteger
Value = ''
end
item item
Name = 'OLD_ID' Name = 'OLD_ID'
Value = '' Value = ''
@ -1670,8 +1736,9 @@ object srvContratosCliente: TsrvContratosCliente
'ES,'#10' REFERENCIA_CLIENTE = :REFERENCIA_CLIENTE,'#10' ID_EMPRESA' + 'ES,'#10' REFERENCIA_CLIENTE = :REFERENCIA_CLIENTE,'#10' ID_EMPRESA' +
' = :ID_EMPRESA,'#10' FECHA_ULT_PRESENTACION_CLIENTE = :FECHA_ULT_' + ' = :ID_EMPRESA,'#10' FECHA_ULT_PRESENTACION_CLIENTE = :FECHA_ULT_' +
'PRESENTACION_CLIENTE,'#10' ID_INSTALADOR = :ID_INSTALADOR,'#10' NO' + 'PRESENTACION_CLIENTE,'#10' ID_INSTALADOR = :ID_INSTALADOR,'#10' NO' +
'MBRE_INSTALADOR = :NOMBRE_INSTALADOR'#10' WHERE'#10' (ID = :OLD_ID)'#10 + 'MBRE_INSTALADOR = :NOMBRE_INSTALADOR,'#10' ID_PRESUPUESTADOR = :I' +
#10 'D_PRESUPUESTADOR,'#10' ID_SEGUIDOR = :ID_SEGUIDOR'#10' WHERE'#10' (ID' +
' = :OLD_ID)'#10#10
StatementType = stSQL StatementType = stSQL
ColumnMappings = <> ColumnMappings = <>
end> end>

View File

@ -134,9 +134,6 @@ begin
ViewGrid.RestoreGridStatus; ViewGrid.RestoreGridStatus;
HideHourglassCursor; HideHourglassCursor;
end; end;
end; end;
procedure TfEditorContratosClienteBeneficios.SetContratos(const Value: IBizContratosClienteBeneficios); procedure TfEditorContratosClienteBeneficios.SetContratos(const Value: IBizContratosClienteBeneficios);

View File

@ -59,7 +59,7 @@ inherited frViewContratoCliente: TfrViewContratoCliente
StyleFocused.LookAndFeel.NativeStyle = True StyleFocused.LookAndFeel.NativeStyle = True
StyleHot.LookAndFeel.Kind = lfStandard StyleHot.LookAndFeel.Kind = lfStandard
StyleHot.LookAndFeel.NativeStyle = True StyleHot.LookAndFeel.NativeStyle = True
TabOrder = 14 TabOrder = 16
Height = 139 Height = 139
Width = 404 Width = 404
end end
@ -159,7 +159,7 @@ inherited frViewContratoCliente: TfrViewContratoCliente
end end
object memFormaPago: TcxDBMemo object memFormaPago: TcxDBMemo
Left = 22 Left = 22
Top = 459 Top = 513
Anchors = [akLeft, akTop, akRight, akBottom] Anchors = [akLeft, akTop, akRight, akBottom]
DataBinding.DataField = 'FORMA_PAGO' DataBinding.DataField = 'FORMA_PAGO'
DataBinding.DataSource = DADataSource DataBinding.DataSource = DADataSource
@ -175,13 +175,13 @@ inherited frViewContratoCliente: TfrViewContratoCliente
StyleFocused.LookAndFeel.NativeStyle = True StyleFocused.LookAndFeel.NativeStyle = True
StyleHot.LookAndFeel.Kind = lfStandard StyleHot.LookAndFeel.Kind = lfStandard
StyleHot.LookAndFeel.NativeStyle = True StyleHot.LookAndFeel.NativeStyle = True
TabOrder = 11 TabOrder = 13
Height = 100 Height = 100
Width = 396 Width = 396
end end
object memPlazoEntrega: TcxDBMemo object memPlazoEntrega: TcxDBMemo
Left = 22 Left = 22
Top = 637 Top = 664
Anchors = [akLeft, akTop, akRight, akBottom] Anchors = [akLeft, akTop, akRight, akBottom]
DataBinding.DataField = 'PLAZO_ENTREGA' DataBinding.DataField = 'PLAZO_ENTREGA'
DataBinding.DataSource = DADataSource DataBinding.DataSource = DADataSource
@ -197,7 +197,7 @@ inherited frViewContratoCliente: TfrViewContratoCliente
StyleFocused.LookAndFeel.NativeStyle = True StyleFocused.LookAndFeel.NativeStyle = True
StyleHot.LookAndFeel.Kind = lfStandard StyleHot.LookAndFeel.Kind = lfStandard
StyleHot.LookAndFeel.NativeStyle = True StyleHot.LookAndFeel.NativeStyle = True
TabOrder = 12 TabOrder = 14
Height = 100 Height = 100
Width = 396 Width = 396
end end
@ -284,7 +284,7 @@ inherited frViewContratoCliente: TfrViewContratoCliente
Top = 28 Top = 28
Width = 476 Width = 476
Height = 280 Height = 280
TabOrder = 13 TabOrder = 15
ReadOnly = False ReadOnly = False
ExplicitLeft = 529 ExplicitLeft = 529
ExplicitTop = 28 ExplicitTop = 28
@ -293,7 +293,7 @@ inherited frViewContratoCliente: TfrViewContratoCliente
inherited dxLayoutControl1: TdxLayoutControl inherited dxLayoutControl1: TdxLayoutControl
Width = 476 Width = 476
Height = 280 Height = 280
ExplicitWidth = 478 ExplicitWidth = 476
ExplicitHeight = 280 ExplicitHeight = 280
inherited edtlNombre: TcxDBTextEdit inherited edtlNombre: TcxDBTextEdit
ExplicitWidth = 707 ExplicitWidth = 707
@ -316,12 +316,12 @@ inherited frViewContratoCliente: TfrViewContratoCliente
Width = 707 Width = 707
end end
inherited edtCodigoPostal: TcxDBTextEdit inherited edtCodigoPostal: TcxDBTextEdit
Left = 385 Left = 384
ExplicitLeft = 385 ExplicitLeft = 384
end end
inherited Button3: TBitBtn inherited Button3: TBitBtn
Left = 275 Left = 274
ExplicitLeft = 275 ExplicitLeft = 274
end end
inherited cxDBTextEdit1: TcxDBTextEdit inherited cxDBTextEdit1: TcxDBTextEdit
ExplicitWidth = 283 ExplicitWidth = 283
@ -331,19 +331,19 @@ inherited frViewContratoCliente: TfrViewContratoCliente
end end
inline frViewTienda1: TfrViewTienda inline frViewTienda1: TfrViewTienda
Left = 22 Left = 22
Top = 363 Top = 417
Width = 476 Width = 476
Height = 60 Height = 60
Align = alClient Align = alClient
TabOrder = 10 TabOrder = 12
ReadOnly = False ReadOnly = False
ExplicitLeft = 22 ExplicitLeft = 22
ExplicitTop = 363 ExplicitTop = 417
ExplicitWidth = 476 ExplicitWidth = 476
ExplicitHeight = 60 ExplicitHeight = 60
inherited dxLayoutControl1: TdxLayoutControl inherited dxLayoutControl1: TdxLayoutControl
Width = 476 Width = 476
ExplicitWidth = 475 ExplicitWidth = 476
end end
end end
object edtFechaUltRevision: TcxDBDateEdit object edtFechaUltRevision: TcxDBDateEdit
@ -371,20 +371,20 @@ inherited frViewContratoCliente: TfrViewContratoCliente
end end
inline frViewDatosYSeleccionInstalador1: TfrViewDatosYSeleccionInstalador inline frViewDatosYSeleccionInstalador1: TfrViewDatosYSeleccionInstalador
Left = 10 Left = 10
Top = 229 Top = 283
Width = 488 Width = 488
Height = 110 Height = 110
Align = alClient Align = alClient
TabOrder = 9 TabOrder = 11
ReadOnly = False ReadOnly = False
ExplicitLeft = 10 ExplicitLeft = 10
ExplicitTop = 229 ExplicitTop = 283
ExplicitWidth = 488 ExplicitWidth = 488
ExplicitHeight = 110 ExplicitHeight = 110
inherited dxLayoutControl1: TdxLayoutControl inherited dxLayoutControl1: TdxLayoutControl
Width = 488 Width = 488
Height = 110 Height = 110
ExplicitWidth = 499 ExplicitWidth = 488
ExplicitHeight = 110 ExplicitHeight = 110
inherited edtlNombreInstalador: TcxDBTextEdit inherited edtlNombreInstalador: TcxDBTextEdit
Left = 109 Left = 109
@ -400,10 +400,10 @@ inherited frViewContratoCliente: TfrViewContratoCliente
end end
inherited Button2: TBitBtn inherited Button2: TBitBtn
Left = 191 Left = 191
Width = 190 Width = 200
Caption = 'Dar de alta un alba'#241'il / instalador' Caption = 'Dar de alta un alba'#241'il / instalador'
ExplicitLeft = 191 ExplicitLeft = 191
ExplicitWidth = 190 ExplicitWidth = 200
end end
inherited Button3: TBitBtn inherited Button3: TBitBtn
Left = 231 Left = 231
@ -428,6 +428,66 @@ inherited frViewContratoCliente: TfrViewContratoCliente
Left = 488 Left = 488
end end
end end
object cbPresupuestador: TcxDBLookupComboBox
Left = 131
Top = 217
DataBinding.DataField = 'ID_PRESUPUESTADOR'
DataBinding.DataSource = DADataSource
Properties.KeyFieldNames = 'ID'
Properties.ListColumns = <
item
FieldName = 'NOMBRE'
end>
Properties.ListOptions.GridLines = glNone
Properties.ListOptions.ShowHeader = False
Properties.ListOptions.SyncMode = True
Properties.ListSource = dsVendedor
Style.BorderColor = clWindowFrame
Style.BorderStyle = ebs3D
Style.HotTrack = False
Style.LookAndFeel.Kind = lfStandard
Style.LookAndFeel.NativeStyle = True
Style.ButtonStyle = bts3D
Style.PopupBorderStyle = epbsFrame3D
StyleDisabled.LookAndFeel.Kind = lfStandard
StyleDisabled.LookAndFeel.NativeStyle = True
StyleFocused.LookAndFeel.Kind = lfStandard
StyleFocused.LookAndFeel.NativeStyle = True
StyleHot.LookAndFeel.Kind = lfStandard
StyleHot.LookAndFeel.NativeStyle = True
TabOrder = 9
Width = 368
end
object cbSeguidor: TcxDBLookupComboBox
Left = 131
Top = 244
DataBinding.DataField = 'ID_SEGUIDOR'
DataBinding.DataSource = DADataSource
Properties.KeyFieldNames = 'ID'
Properties.ListColumns = <
item
FieldName = 'NOMBRE'
end>
Properties.ListOptions.GridLines = glNone
Properties.ListOptions.ShowHeader = False
Properties.ListOptions.SyncMode = True
Properties.ListSource = dsSeguidor
Style.BorderColor = clWindowFrame
Style.BorderStyle = ebs3D
Style.HotTrack = False
Style.LookAndFeel.Kind = lfStandard
Style.LookAndFeel.NativeStyle = True
Style.ButtonStyle = bts3D
Style.PopupBorderStyle = epbsFrame3D
StyleDisabled.LookAndFeel.Kind = lfStandard
StyleDisabled.LookAndFeel.NativeStyle = True
StyleFocused.LookAndFeel.Kind = lfStandard
StyleFocused.LookAndFeel.NativeStyle = True
StyleHot.LookAndFeel.Kind = lfStandard
StyleHot.LookAndFeel.NativeStyle = True
TabOrder = 10
Width = 368
end
object dxLayoutControl1Group_Root: TdxLayoutGroup object dxLayoutControl1Group_Root: TdxLayoutGroup
ShowCaption = False ShowCaption = False
Hidden = True Hidden = True
@ -517,6 +577,16 @@ inherited frViewContratoCliente: TfrViewContratoCliente
Control = cbVendedor Control = cbVendedor
ControlOptions.ShowBorder = False ControlOptions.ShowBorder = False
end end
object dxLayoutControl1Item16: TdxLayoutItem
Caption = 'Presupuestador:'
Control = cbPresupuestador
ControlOptions.ShowBorder = False
end
object dxLayoutControl1Item17: TdxLayoutItem
Caption = 'Seg. Instalaci'#243'n:'
Control = cbSeguidor
ControlOptions.ShowBorder = False
end
end end
end end
object dxLayoutControl1Item15: TdxLayoutItem object dxLayoutControl1Item15: TdxLayoutItem
@ -605,4 +675,12 @@ inherited frViewContratoCliente: TfrViewContratoCliente
Left = 40 Left = 40
Top = 40 Top = 40
end end
object dsPresupuestador: TDADataSource
Left = 32
Top = 88
end
object dsSeguidor: TDADataSource
Left = 32
Top = 128
end
end end

View File

@ -75,6 +75,12 @@ type
edtFechaUltRevision: TcxDBDateEdit; edtFechaUltRevision: TcxDBDateEdit;
dxLayoutControl1Item15: TdxLayoutItem; dxLayoutControl1Item15: TdxLayoutItem;
frViewDatosYSeleccionInstalador1: TfrViewDatosYSeleccionInstalador; frViewDatosYSeleccionInstalador1: TfrViewDatosYSeleccionInstalador;
dxLayoutControl1Item16: TdxLayoutItem;
cbPresupuestador: TcxDBLookupComboBox;
dsPresupuestador: TDADataSource;
dxLayoutControl1Item17: TdxLayoutItem;
cbSeguidor: TcxDBLookupComboBox;
dsSeguidor: TDADataSource;
procedure CustomViewCreate(Sender: TObject); procedure CustomViewCreate(Sender: TObject);
procedure CustomViewDestroy(Sender: TObject); procedure CustomViewDestroy(Sender: TObject);
procedure bFormasPagoClick(Sender: TObject); procedure bFormasPagoClick(Sender: TObject);
@ -84,6 +90,8 @@ type
FContrato : IBizContratoCliente; FContrato : IBizContratoCliente;
FFormasPago : IBizFormaPago; FFormasPago : IBizFormaPago;
FVendedor : IBizVendedor; FVendedor : IBizVendedor;
FPresupuestador : IBizVendedor;
FSeguidor : IBizVendedor;
FFormasPagoController : IFormasPagoController; FFormasPagoController : IFormasPagoController;
FVendedoresController : IVendedoresController; FVendedoresController : IVendedoresController;
FController : IContratosClienteController; FController : IContratosClienteController;
@ -123,6 +131,8 @@ begin
inherited; inherited;
FFormasPago := Nil; FFormasPago := Nil;
FVendedor := Nil; FVendedor := Nil;
FPresupuestador := Nil;
FSeguidor := Nil;
FFormasPagoController := TFormasPagoController.Create; FFormasPagoController := TFormasPagoController.Create;
FVendedoresController := TVendedoresController.Create; FVendedoresController := TVendedoresController.Create;
@ -167,6 +177,8 @@ begin
FFormasPagoController := NIL; FFormasPagoController := NIL;
FVendedor := Nil; FVendedor := Nil;
FVendedoresController := NIL; FVendedoresController := NIL;
FPresupuestador := Nil;
FSeguidor := Nil;
inherited; inherited;
end; end;
@ -227,6 +239,14 @@ begin
dsVendedor.DataTable := FVendedor.DataTable; dsVendedor.DataTable := FVendedor.DataTable;
dsVendedor.DataTable.Active := True; dsVendedor.DataTable.Active := True;
FPresupuestador := (FVendedoresController.BuscarTodos as IBizVendedor);
dsPresupuestador.DataTable := FPresupuestador.DataTable;
dsPresupuestador.DataTable.Active := True;
FSeguidor := (FVendedoresController.BuscarTodos as IBizVendedor);
dsSeguidor.DataTable := FSeguidor.DataTable;
dsSeguidor.DataTable.Active := True;
frViewDatosYSeleccionInstalador1.ID_Instalador := FContrato.ID_INSTALADOR; frViewDatosYSeleccionInstalador1.ID_Instalador := FContrato.ID_INSTALADOR;
frViewDatosYSeleccionInstalador1.OnInstaladorChanged := OnInstaladorChanged; frViewDatosYSeleccionInstalador1.OnInstaladorChanged := OnInstaladorChanged;
@ -236,6 +256,8 @@ begin
DADataSource.DataTable := NIL; DADataSource.DataTable := NIL;
dsFormaPago.DataTable := NIL; dsFormaPago.DataTable := NIL;
dsVendedor.DataTable := NIL; dsVendedor.DataTable := NIL;
dsPresupuestador.DataTable := NIL;
dsSeguidor.DataTable := NIL;
frViewClienteContrato1.Cliente := Nil; frViewClienteContrato1.Cliente := Nil;
end; end;
end; end;

View File

@ -193,6 +193,20 @@ inherited frViewContratosCliente: TfrViewContratosCliente
object cxGridViewInstalador: TcxGridDBColumn object cxGridViewInstalador: TcxGridDBColumn
Caption = 'Alba'#241'il / Instalador' Caption = 'Alba'#241'il / Instalador'
DataBinding.FieldName = 'NOMBRE_INSTALADOR' DataBinding.FieldName = 'NOMBRE_INSTALADOR'
PropertiesClassName = 'TcxTextEditProperties'
Properties.Alignment.Horz = taLeftJustify
end
object cxGridViewPresupuestador: TcxGridDBColumn
Caption = 'Presupuestador'
DataBinding.FieldName = 'PRESUPUESTADOR'
PropertiesClassName = 'TcxTextEditProperties'
Properties.Alignment.Horz = taLeftJustify
end
object cxGridViewSeguidor: TcxGridDBColumn
Caption = 'Seg. Instalaci'#243'n'
DataBinding.FieldName = 'SEGUIDOR'
PropertiesClassName = 'TcxTextEditProperties'
Properties.Alignment.Horz = taLeftJustify
end end
end end
inherited cxGridLevel: TcxGridLevel inherited cxGridLevel: TcxGridLevel

View File

@ -58,6 +58,8 @@ type
TBXSeparatorItem3: TTBXSeparatorItem; TBXSeparatorItem3: TTBXSeparatorItem;
TBXItem4: TTBXItem; TBXItem4: TTBXItem;
cxGridViewInstalador: TcxGridDBColumn; cxGridViewInstalador: TcxGridDBColumn;
cxGridViewPresupuestador: TcxGridDBColumn;
cxGridViewSeguidor: TcxGridDBColumn;
procedure cxGridActiveTabChanged(Sender: TcxCustomGrid; ALevel: procedure cxGridActiveTabChanged(Sender: TcxCustomGrid; ALevel:
TcxGridLevel); TcxGridLevel);
procedure cxGridViewStylesGetContentStyle(Sender: TcxCustomGridTableView; procedure cxGridViewStylesGetContentStyle(Sender: TcxCustomGridTableView;

View File

@ -55,6 +55,7 @@ type
function DarListaAnosFacturas: TStringList; function DarListaAnosFacturas: TStringList;
procedure FiltrarAno(AFactura: IBizFacturaCliente; ADynWhereDataTable: WideString; const Ano: String); procedure FiltrarAno(AFactura: IBizFacturaCliente; ADynWhereDataTable: WideString; const Ano: String);
function CambiarSituacion(AFactura : IBizFacturaCliente; AllItems: Boolean = false; ASituacion: String = CTE_PENDIENTE; AListaCausas: TStringList = nil): Boolean; function CambiarSituacion(AFactura : IBizFacturaCliente; AllItems: Boolean = false; ASituacion: String = CTE_PENDIENTE; AListaCausas: TStringList = nil): Boolean;
function enviarVerifactu(AFactura: IBizFacturaCliente; AllItems: Boolean = false; AListaCausas: TStringList = nil): Boolean;
end; end;
TFacturasClienteController = class(TControllerBase, IFacturasClienteController) TFacturasClienteController = class(TControllerBase, IFacturasClienteController)
@ -127,6 +128,7 @@ type
procedure FiltrarAno(AFactura: IBizFacturaCliente; ADynWhereDataTable: WideString; const Ano: String); procedure FiltrarAno(AFactura: IBizFacturaCliente; ADynWhereDataTable: WideString; const Ano: String);
function CambiarSituacion(AFactura : IBizFacturaCliente; AllItems: Boolean = false; ASituacion: String = CTE_PENDIENTE; AListaCausas: TStringList = nil): Boolean; function CambiarSituacion(AFactura : IBizFacturaCliente; AllItems: Boolean = false; ASituacion: String = CTE_PENDIENTE; AListaCausas: TStringList = nil): Boolean;
function enviarVerifactu(AFactura: IBizFacturaCliente; AllItems: Boolean = false; AListaCausas: TStringList = nil): Boolean;
end; end;
implementation implementation
@ -1019,6 +1021,72 @@ begin
end; end;
end; end;
function TFacturasClienteController.enviarVerifactu(AFactura: IBizFacturaCliente; AllItems: Boolean; AListaCausas: TStringList): Boolean;
//Solo devolverá true en el caso de eliminar todos y cada uno de los elementos a eliminar
var
bModificado: Boolean;
ACausa: Variant;
begin
bModificado := True;
if not Assigned(AFactura) then
raise Exception.Create ('Factura no asignada');
ShowHourglassCursor;
try
if not AFactura.DataTable.Active then
AFactura.DataTable.Active := True;
if (AFactura.State in dsEditModes) then
AFactura.Cancel;
//Siempre modificaremos el seleccionado tanto si es una lista de facturas a eliminar como si es la propia lista del editor.
if AFactura.VERIFACTU = 0 then
begin
if not AFactura.DataTable.Editing then
AFactura.DataTable.Edit;
AFactura.VERIFACTU := 1;
AFactura.DataTable.Post;
end;
//En el caso de querer modificar todos los items del objeto AFactura
if AllItems then
begin
with AFactura.DataTable do
begin
First;
while not EOF do
begin
if AFactura.VERIFACTU = 1 then
begin
bModificado := False;
Next;
end
else
begin
if not AFactura.DataTable.Editing then
AFactura.DataTable.Edit;
AFactura.VERIFACTU := 1;
AFactura.DataTable.Post;
end;
end;
end;
end;
try
AFactura.DataTable.ApplyUpdates;
Result := bModificado;
except
Result := False;
end;
finally
HideHourglassCursor;
end;
end;
function TFacturasClienteController.EsEliminable(AFactura: IBizFacturaCliente; var AComentario: Variant): Boolean; function TFacturasClienteController.EsEliminable(AFactura: IBizFacturaCliente; var AComentario: Variant): Boolean;
begin begin
Result := True; Result := True;
@ -1026,7 +1094,12 @@ begin
if not Assigned(AFactura) then if not Assigned(AFactura) then
raise Exception.Create ('Factura no asignado: EsEliminable'); raise Exception.Create ('Factura no asignado: EsEliminable');
if (AFactura.SITUACION <> CTE_PENDIENTE) then if (AFactura.VERIFACTU = 1) then
begin
Result := False;
AComentario := 'La factura se ha mandado a VERIFACTU, por lo que no puede ser eliminada';
end
else 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 eliminada'; AComentario := 'La factura esta parcial o totalmente pagada, por lo que no puede ser eliminada';
@ -1051,7 +1124,12 @@ 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.VERIFACTU = 1) then
begin
Result := False;
AComentario := 'La factura se ha mandado a VERIFACTU, por lo que no puede ser modificada';
end
else if (AFactura.SITUACION <> CTE_PENDIENTE) then
begin begin
if FacturaTieneRecibos(AFactura) > 0 then if FacturaTieneRecibos(AFactura) > 0 then
begin begin

View File

@ -330,6 +330,10 @@ inherited DataModuleFacturasCliente: TDataModuleFacturasCliente
Size = 255 Size = 255
DisplayLabel = 'Otros nombres' DisplayLabel = 'Otros nombres'
DictionaryEntry = 'FacturasCliente_LISTA_NOMBRES' DictionaryEntry = 'FacturasCliente_LISTA_NOMBRES'
end
item
Name = 'VERIFACTU'
DataType = datSmallInt
end> end>
Params = <> Params = <>
StreamingOptions = [soDisableEventsWhileStreaming] StreamingOptions = [soDisableEventsWhileStreaming]

View File

@ -9,9 +9,9 @@ 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_ListaAnosFacturas = '{AA9E9DF8-6E40-4A04-9F56-47B64CB31051}'; RID_ListaAnosFacturas = '{B69B55BD-5E55-4B54-A51B-42A78E3A7CE9}';
RID_FacturasCliente = '{35ABCCE5-A88B-4859-859C-7D64631B8A39}'; RID_FacturasCliente = '{138DC6B2-AE65-442B-A817-DAF8B232F651}';
RID_FacturasCliente_Detalles = '{A1647325-0E90-4395-B301-CA5855F4360C}'; RID_FacturasCliente_Detalles = '{D46B6B5D-729B-483E-BE25-99E1C9A4479B}';
{ Data table names } { Data table names }
nme_ListaAnosFacturas = 'ListaAnosFacturas'; nme_ListaAnosFacturas = 'ListaAnosFacturas';
@ -77,6 +77,7 @@ const
fld_FacturasClienteSIN_COMISION = 'SIN_COMISION'; fld_FacturasClienteSIN_COMISION = 'SIN_COMISION';
fld_FacturasClienteTIPO_FACTURA = 'TIPO_FACTURA'; fld_FacturasClienteTIPO_FACTURA = 'TIPO_FACTURA';
fld_FacturasClienteLISTA_NOMBRES = 'LISTA_NOMBRES'; fld_FacturasClienteLISTA_NOMBRES = 'LISTA_NOMBRES';
fld_FacturasClienteVERIFACTU = 'VERIFACTU';
{ FacturasCliente field indexes } { FacturasCliente field indexes }
idx_FacturasClienteID = 0; idx_FacturasClienteID = 0;
@ -131,6 +132,7 @@ const
idx_FacturasClienteSIN_COMISION = 49; idx_FacturasClienteSIN_COMISION = 49;
idx_FacturasClienteTIPO_FACTURA = 50; idx_FacturasClienteTIPO_FACTURA = 50;
idx_FacturasClienteLISTA_NOMBRES = 51; idx_FacturasClienteLISTA_NOMBRES = 51;
idx_FacturasClienteVERIFACTU = 52;
{ FacturasCliente_Detalles fields } { FacturasCliente_Detalles fields }
fld_FacturasCliente_DetallesID = 'ID'; fld_FacturasCliente_DetallesID = 'ID';
@ -167,7 +169,7 @@ const
type type
{ IListaAnosFacturas } { IListaAnosFacturas }
IListaAnosFacturas = interface(IDAStronglyTypedDataTable) IListaAnosFacturas = interface(IDAStronglyTypedDataTable)
['{6F39FFB6-319E-466C-A13F-451029BC363F}'] ['{0A78F7B9-733E-4E29-A0AD-C80889316AF8}']
{ Property getters and setters } { Property getters and setters }
function GetANOValue: String; function GetANOValue: String;
procedure SetANOValue(const aValue: String); procedure SetANOValue(const aValue: String);
@ -202,7 +204,7 @@ type
{ IFacturasCliente } { IFacturasCliente }
IFacturasCliente = interface(IDAStronglyTypedDataTable) IFacturasCliente = interface(IDAStronglyTypedDataTable)
['{7C87FE37-C098-4355-990B-2693BC995665}'] ['{6D58B4D9-9AA3-4552-99A9-27A1BB728D85}']
{ Property getters and setters } { Property getters and setters }
function GetIDValue: Integer; function GetIDValue: Integer;
procedure SetIDValue(const aValue: Integer); procedure SetIDValue(const aValue: Integer);
@ -411,6 +413,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 GetVERIFACTUValue: SmallInt;
procedure SetVERIFACTUValue(const aValue: SmallInt);
function GetVERIFACTUIsNull: Boolean;
procedure SetVERIFACTUIsNull(const aValue: Boolean);
{ Properties } { Properties }
@ -518,6 +524,8 @@ type
property TIPO_FACTURAIsNull: Boolean read GetTIPO_FACTURAIsNull write SetTIPO_FACTURAIsNull; property TIPO_FACTURAIsNull: Boolean read GetTIPO_FACTURAIsNull write SetTIPO_FACTURAIsNull;
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 VERIFACTU: SmallInt read GetVERIFACTUValue write SetVERIFACTUValue;
property VERIFACTUIsNull: Boolean read GetVERIFACTUIsNull write SetVERIFACTUIsNull;
end; end;
{ TFacturasClienteDataTableRules } { TFacturasClienteDataTableRules }
@ -734,6 +742,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 GetVERIFACTUValue: SmallInt; virtual;
procedure SetVERIFACTUValue(const aValue: SmallInt); virtual;
function GetVERIFACTUIsNull: Boolean; virtual;
procedure SetVERIFACTUIsNull(const aValue: Boolean); virtual;
{ Properties } { Properties }
property ID: Integer read GetIDValue write SetIDValue; property ID: Integer read GetIDValue write SetIDValue;
@ -840,6 +852,8 @@ type
property TIPO_FACTURAIsNull: Boolean read GetTIPO_FACTURAIsNull write SetTIPO_FACTURAIsNull; property TIPO_FACTURAIsNull: Boolean read GetTIPO_FACTURAIsNull write SetTIPO_FACTURAIsNull;
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 VERIFACTU: SmallInt read GetVERIFACTUValue write SetVERIFACTUValue;
property VERIFACTUIsNull: Boolean read GetVERIFACTUIsNull write SetVERIFACTUIsNull;
public public
constructor Create(aDataTable: TDADataTable); override; constructor Create(aDataTable: TDADataTable); override;
@ -849,7 +863,7 @@ type
{ IFacturasCliente_Detalles } { IFacturasCliente_Detalles }
IFacturasCliente_Detalles = interface(IDAStronglyTypedDataTable) IFacturasCliente_Detalles = interface(IDAStronglyTypedDataTable)
['{8FE5D0B5-031E-4B7C-9CEB-B2ED7A7201D5}'] ['{C9F165D5-5856-41F6-A5BF-9139520624DC}']
{ Property getters and setters } { Property getters and setters }
function GetIDValue: Integer; function GetIDValue: Integer;
procedure SetIDValue(const aValue: Integer); procedure SetIDValue(const aValue: Integer);
@ -2185,6 +2199,27 @@ begin
DataTable.Fields[idx_FacturasClienteLISTA_NOMBRES].AsVariant := Null; DataTable.Fields[idx_FacturasClienteLISTA_NOMBRES].AsVariant := Null;
end; end;
function TFacturasClienteDataTableRules.GetVERIFACTUValue: SmallInt;
begin
result := DataTable.Fields[idx_FacturasClienteVERIFACTU].AsSmallInt;
end;
procedure TFacturasClienteDataTableRules.SetVERIFACTUValue(const aValue: SmallInt);
begin
DataTable.Fields[idx_FacturasClienteVERIFACTU].AsSmallInt := aValue;
end;
function TFacturasClienteDataTableRules.GetVERIFACTUIsNull: boolean;
begin
result := DataTable.Fields[idx_FacturasClienteVERIFACTU].IsNull;
end;
procedure TFacturasClienteDataTableRules.SetVERIFACTUIsNull(const aValue: Boolean);
begin
if aValue then
DataTable.Fields[idx_FacturasClienteVERIFACTU].AsVariant := Null;
end;
{ TFacturasCliente_DetallesDataTableRules } { TFacturasCliente_DetallesDataTableRules }
constructor TFacturasCliente_DetallesDataTableRules.Create(aDataTable: TDADataTable); constructor TFacturasCliente_DetallesDataTableRules.Create(aDataTable: TDADataTable);

View File

@ -9,14 +9,14 @@ 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_ListaAnosFacturasDelta = '{625CABDC-50D6-4944-B22B-D3348700AFA2}'; RID_ListaAnosFacturasDelta = '{8684B20C-9A58-4343-ACBF-6E788A6D9342}';
RID_FacturasClienteDelta = '{1B6A177E-8B9C-415E-94B1-5CBD0CF0FF05}'; RID_FacturasClienteDelta = '{F6D07436-A868-46A4-AF86-357F3FB7A074}';
RID_FacturasCliente_DetallesDelta = '{A116A70B-8E0A-4216-9D6E-97820C5EB891}'; RID_FacturasCliente_DetallesDelta = '{904B050A-78E2-4159-AD88-28EB0F6F6F69}';
type type
{ IListaAnosFacturasDelta } { IListaAnosFacturasDelta }
IListaAnosFacturasDelta = interface(IListaAnosFacturas) IListaAnosFacturasDelta = interface(IListaAnosFacturas)
['{625CABDC-50D6-4944-B22B-D3348700AFA2}'] ['{8684B20C-9A58-4343-ACBF-6E788A6D9342}']
{ Property getters and setters } { Property getters and setters }
function GetOldANOValue : String; function GetOldANOValue : String;
@ -50,7 +50,7 @@ type
{ IFacturasClienteDelta } { IFacturasClienteDelta }
IFacturasClienteDelta = interface(IFacturasCliente) IFacturasClienteDelta = interface(IFacturasCliente)
['{1B6A177E-8B9C-415E-94B1-5CBD0CF0FF05}'] ['{F6D07436-A868-46A4-AF86-357F3FB7A074}']
{ Property getters and setters } { Property getters and setters }
function GetOldIDValue : Integer; function GetOldIDValue : Integer;
function GetOldID_EMPRESAValue : Integer; function GetOldID_EMPRESAValue : Integer;
@ -104,6 +104,7 @@ type
function GetOldSIN_COMISIONValue : SmallInt; function GetOldSIN_COMISIONValue : SmallInt;
function GetOldTIPO_FACTURAValue : String; function GetOldTIPO_FACTURAValue : String;
function GetOldLISTA_NOMBRESValue : String; function GetOldLISTA_NOMBRESValue : String;
function GetOldVERIFACTUValue : SmallInt;
{ Properties } { Properties }
property OldID : Integer read GetOldIDValue; property OldID : Integer read GetOldIDValue;
@ -158,6 +159,7 @@ type
property OldSIN_COMISION : SmallInt read GetOldSIN_COMISIONValue; property OldSIN_COMISION : SmallInt read GetOldSIN_COMISIONValue;
property OldTIPO_FACTURA : String read GetOldTIPO_FACTURAValue; property OldTIPO_FACTURA : String read GetOldTIPO_FACTURAValue;
property OldLISTA_NOMBRES : String read GetOldLISTA_NOMBRESValue; property OldLISTA_NOMBRES : String read GetOldLISTA_NOMBRESValue;
property OldVERIFACTU : SmallInt read GetOldVERIFACTUValue;
end; end;
{ TFacturasClienteBusinessProcessorRules } { TFacturasClienteBusinessProcessorRules }
@ -478,6 +480,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 GetVERIFACTUValue: SmallInt; virtual;
function GetVERIFACTUIsNull: Boolean; virtual;
function GetOldVERIFACTUValue: SmallInt; virtual;
function GetOldVERIFACTUIsNull: Boolean; virtual;
procedure SetVERIFACTUValue(const aValue: SmallInt); virtual;
procedure SetVERIFACTUIsNull(const aValue: Boolean); virtual;
{ Properties } { Properties }
property ID : Integer read GetIDValue write SetIDValue; property ID : Integer read GetIDValue write SetIDValue;
@ -688,6 +696,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 VERIFACTU : SmallInt read GetVERIFACTUValue write SetVERIFACTUValue;
property VERIFACTUIsNull : Boolean read GetVERIFACTUIsNull write SetVERIFACTUIsNull;
property OldVERIFACTU : SmallInt read GetOldVERIFACTUValue;
property OldVERIFACTUIsNull : Boolean read GetOldVERIFACTUIsNull;
public public
constructor Create(aBusinessProcessor: TDABusinessProcessor); override; constructor Create(aBusinessProcessor: TDABusinessProcessor); override;
@ -697,7 +709,7 @@ type
{ IFacturasCliente_DetallesDelta } { IFacturasCliente_DetallesDelta }
IFacturasCliente_DetallesDelta = interface(IFacturasCliente_Detalles) IFacturasCliente_DetallesDelta = interface(IFacturasCliente_Detalles)
['{A116A70B-8E0A-4216-9D6E-97820C5EB891}'] ['{904B050A-78E2-4159-AD88-28EB0F6F6F69}']
{ Property getters and setters } { Property getters and setters }
function GetOldIDValue : Integer; function GetOldIDValue : Integer;
function GetOldID_FACTURAValue : Integer; function GetOldID_FACTURAValue : Integer;
@ -2564,6 +2576,37 @@ begin
BusinessProcessor.CurrentChange.NewValueByName[fld_FacturasClienteLISTA_NOMBRES] := Null; BusinessProcessor.CurrentChange.NewValueByName[fld_FacturasClienteLISTA_NOMBRES] := Null;
end; end;
function TFacturasClienteBusinessProcessorRules.GetVERIFACTUValue: SmallInt;
begin
result := BusinessProcessor.CurrentChange.NewValueByName[fld_FacturasClienteVERIFACTU];
end;
function TFacturasClienteBusinessProcessorRules.GetVERIFACTUIsNull: Boolean;
begin
result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_FacturasClienteVERIFACTU]);
end;
function TFacturasClienteBusinessProcessorRules.GetOldVERIFACTUValue: SmallInt;
begin
result := BusinessProcessor.CurrentChange.OldValueByName[fld_FacturasClienteVERIFACTU];
end;
function TFacturasClienteBusinessProcessorRules.GetOldVERIFACTUIsNull: Boolean;
begin
result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_FacturasClienteVERIFACTU]);
end;
procedure TFacturasClienteBusinessProcessorRules.SetVERIFACTUValue(const aValue: SmallInt);
begin
BusinessProcessor.CurrentChange.NewValueByName[fld_FacturasClienteVERIFACTU] := aValue;
end;
procedure TFacturasClienteBusinessProcessorRules.SetVERIFACTUIsNull(const aValue: Boolean);
begin
if aValue then
BusinessProcessor.CurrentChange.NewValueByName[fld_FacturasClienteVERIFACTU] := Null;
end;
{ TFacturasCliente_DetallesBusinessProcessorRules } { TFacturasCliente_DetallesBusinessProcessorRules }
constructor TFacturasCliente_DetallesBusinessProcessorRules.Create(aBusinessProcessor: TDABusinessProcessor); constructor TFacturasCliente_DetallesBusinessProcessorRules.Create(aBusinessProcessor: TDABusinessProcessor);

View File

@ -258,6 +258,7 @@ begin
SITUACION := CTE_PENDIENTE; SITUACION := CTE_PENDIENTE;
ID_CLIENTE := ID_NULO; ID_CLIENTE := ID_NULO;
SIN_COMISION := 0; SIN_COMISION := 0;
VERIFACTU := 0;
ID_FORMA_PAGO := AppFactuGES.EmpresaActiva.ID_FORMA_PAGO; ID_FORMA_PAGO := AppFactuGES.EmpresaActiva.ID_FORMA_PAGO;
ID_TIPO_IVA := AppFactuGES.EmpresaActiva.ID_TIPO_IVA; ID_TIPO_IVA := AppFactuGES.EmpresaActiva.ID_TIPO_IVA;

View File

@ -251,6 +251,14 @@ object srvFacturasCliente: TsrvFacturasCliente
item item
DatasetField = 'VENDEDOR' DatasetField = 'VENDEDOR'
TableField = 'VENDEDOR' TableField = 'VENDEDOR'
end
item
DatasetField = 'LISTA_NOMBRES'
TableField = 'LISTA_NOMBRES'
end
item
DatasetField = 'VERIFACTU'
TableField = 'VERIFACTU'
end> end>
end> end>
Name = 'FacturasCliente' Name = 'FacturasCliente'
@ -525,6 +533,10 @@ object srvFacturasCliente: TsrvFacturasCliente
DataType = datString DataType = datString
Size = 255 Size = 255
DictionaryEntry = 'FacturasCliente_LISTA_NOMBRES' DictionaryEntry = 'FacturasCliente_LISTA_NOMBRES'
end
item
Name = 'VERIFACTU'
DataType = datSmallInt
end> end>
end end
item item
@ -1320,6 +1332,11 @@ object srvFacturasCliente: TsrvFacturasCliente
Size = 255 Size = 255
Value = '' Value = ''
end end
item
Name = 'VERIFACTU'
DataType = datSmallInt
Value = ''
end
item item
Name = 'OLD_ID' Name = 'OLD_ID'
Value = '' Value = ''
@ -1346,7 +1363,7 @@ object srvFacturasCliente: TsrvFacturasCliente
'RAR_CONTABILIDAD = :IGNORAR_CONTABILIDAD,'#10' ID_TIENDA = :ID_TI' + 'RAR_CONTABILIDAD = :IGNORAR_CONTABILIDAD,'#10' ID_TIENDA = :ID_TI' +
'ENDA,'#10' ID_CONTRATO = :ID_CONTRATO,'#10' SIN_COMISION = :SIN_CO' + 'ENDA,'#10' ID_CONTRATO = :ID_CONTRATO,'#10' SIN_COMISION = :SIN_CO' +
'MISION,'#10' TIPO_FACTURA = :TIPO_FACTURA,'#10' SITUACION = :SITUA' + 'MISION,'#10' TIPO_FACTURA = :TIPO_FACTURA,'#10' SITUACION = :SITUA' +
'CION'#10' WHERE'#10' (ID = :OLD_ID);'#10 'CION,'#10' VERIFACTU = :VERIFACTU'#10' WHERE'#10' (ID = :OLD_ID);'#10
StatementType = stSQL StatementType = stSQL
ColumnMappings = <> ColumnMappings = <>
end> end>

View File

@ -2,8 +2,8 @@ inherited fEditorFacturasCliente: TfEditorFacturasCliente
Caption = 'Lista de facturas de cliente' Caption = 'Lista de facturas de cliente'
ClientHeight = 666 ClientHeight = 666
ClientWidth = 640 ClientWidth = 640
ExplicitWidth = 648 ExplicitWidth = 656
ExplicitHeight = 700 ExplicitHeight = 704
PixelsPerInch = 96 PixelsPerInch = 96
TextHeight = 13 TextHeight = 13
inherited JvNavPanelHeader: TJvNavPanelHeader inherited JvNavPanelHeader: TJvNavPanelHeader
@ -69,7 +69,7 @@ inherited fEditorFacturasCliente: TfEditorFacturasCliente
end end
end end
inherited tbxFiltro: TTBXToolbar inherited tbxFiltro: TTBXToolbar
ExplicitWidth = 356 ExplicitWidth = 362
inherited lblAno: TTBXLabelItem inherited lblAno: TTBXLabelItem
Visible = True Visible = True
end end
@ -84,10 +84,10 @@ inherited fEditorFacturasCliente: TfEditorFacturasCliente
ExplicitWidth = 640 ExplicitWidth = 640
end end
inherited TBXTMain2: TTBXToolbar inherited TBXTMain2: TTBXToolbar
Left = 356 Left = 362
Visible = True Visible = True
ExplicitLeft = 356 ExplicitLeft = 362
ExplicitWidth = 211 ExplicitWidth = 278
object TBXItem42: TTBXItem object TBXItem42: TTBXItem
Action = actCambiarSituacion Action = actCambiarSituacion
DisplayMode = nbdmImageAndText DisplayMode = nbdmImageAndText
@ -98,6 +98,10 @@ inherited fEditorFacturasCliente: TfEditorFacturasCliente
Action = actInformes Action = actInformes
DisplayMode = nbdmImageAndText DisplayMode = nbdmImageAndText
end end
object TBXItem45: TTBXItem
Action = actMandarVerifactu
DisplayMode = nbdmImageAndText
end
end end
end end
inherited StatusBar: TJvStatusBar inherited StatusBar: TJvStatusBar
@ -108,9 +112,9 @@ inherited fEditorFacturasCliente: TfEditorFacturasCliente
end end
inline frViewFacturasCliente1: TfrViewFacturasCliente [3] inline frViewFacturasCliente1: TfrViewFacturasCliente [3]
Left = 0 Left = 0
Top = 102 Top = 105
Width = 640 Width = 640
Height = 545 Height = 542
Align = alClient Align = alClient
Font.Charset = DEFAULT_CHARSET Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText Font.Color = clWindowText
@ -120,14 +124,14 @@ inherited fEditorFacturasCliente: TfEditorFacturasCliente
ParentFont = False ParentFont = False
TabOrder = 3 TabOrder = 3
ReadOnly = False ReadOnly = False
ExplicitTop = 102 ExplicitTop = 105
ExplicitWidth = 640 ExplicitWidth = 640
ExplicitHeight = 545 ExplicitHeight = 542
inherited cxGrid: TcxGrid inherited cxGrid: TcxGrid
Width = 640 Width = 640
Height = 417 Height = 414
ExplicitWidth = 640 ExplicitWidth = 640
ExplicitHeight = 417 ExplicitHeight = 414
inherited cxGridView: TcxGridDBTableView inherited cxGridView: TcxGridDBTableView
DataController.Summary.DefaultGroupSummaryItems = < DataController.Summary.DefaultGroupSummaryItems = <
item item
@ -252,8 +256,8 @@ inherited fEditorFacturasCliente: TfEditorFacturasCliente
end end
end end
inherited pnlAgrupaciones: TTBXDockablePanel inherited pnlAgrupaciones: TTBXDockablePanel
Top = 519 Top = 516
ExplicitTop = 519 ExplicitTop = 516
ExplicitWidth = 640 ExplicitWidth = 640
inherited TBXAlignmentPanel1: TTBXAlignmentPanel inherited TBXAlignmentPanel1: TTBXAlignmentPanel
Width = 640 Width = 640
@ -344,6 +348,12 @@ inherited fEditorFacturasCliente: TfEditorFacturasCliente
OnExecute = actGenerarPDFExecute OnExecute = actGenerarPDFExecute
OnUpdate = actGenerarPDFUpdate OnUpdate = actGenerarPDFUpdate
end end
object actMandarVerifactu: TAction
Caption = 'Mandar Verifactu'
ImageIndex = 16
OnExecute = actMandarVerifactuExecute
OnUpdate = actMandarVerifactuUpdate
end
end end
inherited SmallImages: TPngImageList [5] inherited SmallImages: TPngImageList [5]
PngImages = < PngImages = <
@ -3554,39 +3564,40 @@ inherited fEditorFacturasCliente: TfEditorFacturasCliente
000000180806000000E0773DF8000000017352474200AECE1CE9000000046741 000000180806000000E0773DF8000000017352474200AECE1CE9000000046741
4D410000B18F0BFC6105000000206348524D00007A26000080840000FA000000 4D410000B18F0BFC6105000000206348524D00007A26000080840000FA000000
80E8000075300000EA6000003A98000017709CBA513C00000009704859730000 80E8000075300000EA6000003A98000017709CBA513C00000009704859730000
0AE900000AE901FD75CED3000003F049444154484BBD557B6C53651C3D7DAD7B 0AE900000AE901FD75CED30000040449444154484BB5957B6C53551CC7BF7DAD
B0ADADC0363ADDA0834D2DDA6E5904A24C17E64864BAF8484C348E104940FD47 7BD0AD2D8F6D74BA413736B060BB65911165BA304702D3C54762A271844002EA
128D31121213134DD4C4F8644F794C6413188E81A003B3A15B8AC87C4CA39D9A 3F90608C9190989868A226C6277B0A38918DC7700CE431301BBAA5080C6510EC
685013515B36D8B3F7E7F9AEDCDAB9760F62BCC94D9ADEEF3BE7FCCE777EBFCF D444C32301B465833D7B7FFECEEDE96537ED3209F19B9CA4F79EDFEFF33DE7D7
2422F8DF9ED781A56D0EFB730D56945D0EA9BE3F2F676F3D70DF36C01C15FF0A DF391744F4BF0E9D3E07F25AEDD6F7EACD2895AFEE496A7E76E6AE3AE0C52D80
30AF333BB9E9E74ADF68E4A12A19A8F0851BADB869B6242F00292DD9AE6DBD2B 5133F80498D69191D878A5C23B127EA592FACBBDA106331E8BCC4EAD0F80A4E6
BD43273D4E79371D5A1DB05527B807B0BCE7C0FEC1EB20A3373A447B60B5688F 0CE7969E12CFE049B783BEB541A90536AB06CF03A6EFECD83BB00834F2A89D94
544BF0567FA8113393D45970F3C9E265FD7D371448E77C93746442DB6945B322 979792F25A15059EF4051B30B549AD098F9F2C9CD7D7FB482E75CC30507B1A94
D5099ACCD8F8DBD5D0467C90E1EB21178A6D3276979F247748B0A2385C6FC5EA ED66340953D5A0D188B5D7E74319F682861E06DD2EB4D0E8B33E36799A02E585
789550A1EBD02247DD57AB964DF4E4A7C9072E487B06B426139E55A2D51E9DE0 A13A33964A964EBC42E781D9F6DA0B4BE68D77E7A4D03127A82D154AA301EF8A
656051201B030A7C885584BC9073D740C2E55789B6799D0C54964CB1EB0D6065 458B18D5E06360B63F03FD023EC8BB087A4037168042650F92B27E25F55714C5
4F81EBC76FFDD9F2E17CE8E0B465BCC18C4763C544CF603B5074C68D5FFFBC16 94EB0BA0A43BD7F9E7AFBE0CFA7E0654389765ACDE880D324495F61F6C050ACE
C26AE49742C84F4B21677D193252532EC1B5A521E34C76D9CD0FF67B175CFCCC BA70ED9F8740BC1BBA9A0FFA2B0F74D99B4AC3D56514585E1C8C9AECB01AD7F4
931A056F4BC3700370FFBF2B9D94D02660455F2E060DF01F3C90E062C8371E8B 7966DE39E74ED6E0AD2918AA075E526113A4190835028B7BB3301085FFE10605
FC5EE593606569B8353D69F7803F2B12C8B546C10F109CA9B92D9E8D535A6087 E6802EB94D74B3D24B818AE2508B2DE1AB7E5F7AD89F65D6E0FB18CE5DB34262
05EBFADC1835C0BFCE837C7125E44C2EC94A72E4F4E264F928CB2427AE80BCEF 74D219086D336165AF0B2351F8C56CD02F0F80CE66F17351269D9E93483FA41B
841C9C8771567F6FA2B4C5EDB15D366CF8D48D8928B81B722A07D29305E95E80 E8C474D0510768FF348CF1EE5F90E9318A3110DA61C1EA332E8C6B7017E85426
28383D8FD0F387A78B72C2266E4EC29304D5782E71C10F5D4ACB4C7D92904075 A83B1DD435131A9C6B1EE69ABF2AD3E22AAE81505302DE64A83219FC80EC1619
E1DE64040254FE319577C5283F9209A1EF5A1DE34802D39C2BA0A7B6B7D3936A 3EA9263510A7705722FC7E86FFC8F0CE09F043696ADD95DA88812192115F710D
BFBC65B966801FA7E7C7E8F96182D31AD99F06D9930CAD16786A4E04044F6D77 B8A6966F6C0935E79F58A844E1C7197E84E10719CEA5A1BD29A09D89506A80B7
BB0E9CDB52239F143A75E5F1C05B52206FD9216F5A75922DB33A6482671E5B92 645A5CC518303CB9CDE5DC77636335FD94EF9814DE9C04FADA0AFAD2AC9A6C94
73E2E2E335F25DA57F0A382DFB638F1DE70DF09D3648A305B2DD840936DEA669 E931D219303CEDC8DCCC13775EAFA6DF2A7C31702ED9DF3BADB815856FB7801A
634ACFAD47721D1D639BAA24B47EAD742D344D52DE9A82610A287B0D286C34A3 4CA0AD068CF3C15B27313A69065C73F3A12C7BFBE8BA4A0AAE5A4E9DB30C3A78
7B87F56FF05A1384E0C2293AC66F35091BAD25DDF6F460758936B1A1424E79D2 4B12867801A59F01F90D46746D3347E0350610C3896FD1519EAB8ED0EE4A3368
A593AD7FD401E9C880EC4B458436AC3736B770CE10F431FE7741811BEF25128E B659DE1EA82A52C65797D329B78D3AF8001DB683DA53417B9211E632AC8A4472
A17F1E3D4554527E7655FEB8DCE993EF4BDD93C0555AEA4D783E5EF954EC2568 2CDF330CDDC4EF6E0B78744813BE86EE4A35E095945D5E923346CF78E9F76297
2F5F2D8668E455A0CA58AF139C2E5AD82FD5CBE5FC9A0239CE716B2867970A3B 0E2EBAA5CE80F765BC4E0CF330B4878732C168F853A05286440C4E17CCEAA3AA
BB4BA52AD121D2DA24126D25C9704C2543DCB3263A4DBBF39DAD91DBBD12C84B 85746B592E1DE7EB360AE7534A7CB23B4557C9F818716913D868339B0C4DD8C9
9904DE6CC7A0BAA1666A26F59D80C524E88BA924AC26AE5E418305777F5EE414 20E72C13F3AA41578EA325FC9487FCD9493A789315031C9CA792A610030B19DE
5E3AC20E95362A6752D48DB47936E0C69A97003B053DA3CE82E0115A55A613A8 1B35E111E251A21AD49BF0DCCF050EE28F8E38A1D4CA70EE14F1455A2FF3FF93
32391A7ADBD9400AFC9D5426C48CA3AA9BE74260ACA5652BF8BE18B548FDE0F5 3E02ACBCA077788C323CCCA52A550DC436F96AE869E31E17F0DDC9DC21461C16
E662F40E2BE5CC77880B965C0EF8B4F7818A1F6D7982F1DBF85F801B15FC059E A759E6DE93B8648B797C287EAB0642FC797372EB1D142BE7FE0E72C0DCC8CCFD
6028BEE22B69170000000049454E44AE426082} 49331012EDC7657983DB6FAD7C75DF2222FC0B51266D78E692E7220000000049
454E44AE426082}
Instruction.Text = 'Las siguientes facturas no han podido ser eliminadas:' Instruction.Text = 'Las siguientes facturas no han podido ser eliminadas:'
Instruction.Glyph.Data = { Instruction.Glyph.Data = {
0A54504E474F626A65637489504E470D0A1A0A0000000D494844520000001C00 0A54504E474F626A65637489504E470D0A1A0A0000000D494844520000001C00
@ -4182,39 +4193,40 @@ inherited fEditorFacturasCliente: TfEditorFacturasCliente
000000180806000000E0773DF8000000017352474200AECE1CE9000000046741 000000180806000000E0773DF8000000017352474200AECE1CE9000000046741
4D410000B18F0BFC6105000000206348524D00007A26000080840000FA000000 4D410000B18F0BFC6105000000206348524D00007A26000080840000FA000000
80E8000075300000EA6000003A98000017709CBA513C00000009704859730000 80E8000075300000EA6000003A98000017709CBA513C00000009704859730000
0AE900000AE901FD75CED3000003F049444154484BBD557B6C53651C3D7DAD7B 0AE900000AE901FD75CED30000040449444154484BB5957B6C53551CC7BF7DAD
B0ADADC0363ADDA0834D2DDA6E5904A24C17E64864BAF8484C348E104940FD47 7BD0AD2D8F6D74BA413736B060BB65911165BA304702D3C54762A271844002EA
128D31121213134DD4C4F8644F794C6413188E81A003B3A15B8AC87C4CA39D9A 3F90608C9190989868A226C6277B0A38918DC7700CE431301BBAA5080C6510EC
685013515B36D8B3F7E7F9AEDCDAB9760F62BCC94D9ADEEF3BE7FCCE777EBFCF D444C32301B465833D7B7FFECEEDE96537ED3209F19B9CA4F79EDFEFF33DE7D7
2422F8DF9ED781A56D0EFB730D56945D0EA9BE3F2F676F3D70DF36C01C15FF0A DF391744F4BF0E9D3E07F25AEDD6F7EACD2895AFEE496A7E76E6AE3AE0C52D80
30AF333BB9E9E74ADF68E4A12A19A8F0851BADB869B6242F00292DD9AE6DBD2B 5133F80498D69191D878A5C23B127EA592FACBBDA106331E8BCC4EAD0F80A4E6
BD43273D4E79371D5A1DB05527B807B0BCE7C0FEC1EB20A3373A447B60B5688F 0CE7969E12CFE049B783BEB541A90536AB06CF03A6EFECD83BB00834F2A89D94
544BF0567FA8113393D45970F3C9E265FD7D371448E77C93746442DB6945B322 979792F25A15059EF4051B30B549AD098F9F2C9CD7D7FB482E75CC30507B1A94
D5099ACCD8F8DBD5D0467C90E1EB21178A6D3276979F247748B0A2385C6FC5EA ED66340953D5A0D188B5D7E74319F682861E06DD2EB4D0E8B33E36799A02E585
789550A1EBD02247DD57AB964DF4E4A7C9072E487B06B426139E55A2D51E9DE0 A13A33964A964EBC42E781D9F6DA0B4BE68D77E7A4D03127A82D154AA301EF8A
656051201B030A7C885584BC9073D740C2E55789B6799D0C54964CB1EB0D6065 458B18D5E06360B63F03FD023EC8BB087A4037168042650F92B27E25F55714C5
4F81EBC76FFDD9F2E17CE8E0B465BCC18C4763C544CF603B5074C68D5FFFBC16 94EB0BA0A43BD7F9E7AFBE0CFA7E0654389765ACDE880D324495F61F6C050ACE
C26AE49742C84F4B21677D193252532EC1B5A521E34C76D9CD0FF67B175CFCCC BA70ED9F8740BC1BBA9A0FFA2B0F74D99B4AC3D56514585E1C8C9AECB01AD7F4
931A056F4BC3700370FFBF2B9D94D02660455F2E060DF01F3C90E062C8371E8B 7966DE39E74ED6E0AD2918AA075E526113A4190835028B7BB3301085FFE10605
FC5EE593606569B8353D69F7803F2B12C8B546C10F109CA9B92D9E8D535A6087 E6802EB94D74B3D24B818AE2508B2DE1AB7E5F7AD89F65D6E0FB18CE5DB34262
05EBFADC1835C0BFCE837C7125E44C2EC94A72E4F4E264F928CB2427AE80BCEF 74D219086D336165AF0B2351F8C56CD02F0F80CE66F17351269D9E93483FA41B
841C9C8771567F6FA2B4C5EDB15D366CF8D48D8928B81B722A07D29305E95E80 E8C474D0510768FF348CF1EE5F90E9318A3110DA61C1EA332E8C6B7017E85426
28383D8FD0F387A78B72C2266E4EC29304D5782E71C10F5D4ACB4C7D92904075 A83B1DD435131A9C6B1EE69ABF2AD3E22AAE81505302DE64A83219FC80EC1619
E1DE64040254FE319577C5283F9209A1EF5A1DE34802D39C2BA0A7B6B7D3936A 3EA9263510A7705722FC7E86FFC8F0CE09F043696ADD95DA88812192115F710D
BFBC65B966801FA7E7C7E8F96182D31AD99F06D9930CAD16786A4E04044F6D77 B8A6966F6C0935E79F58A844E1C7197E84E10719CEA5A1BD29A09D89506A80B7
BB0E9CDB52239F143A75E5F1C05B52206FD9216F5A75922DB33A6482671E5B92 645A5CC518303CB9CDE5DC77636335FD94EF9814DE9C04FADA0AFAD2AC9A6C94
73E2E2E335F25DA57F0A382DFB638F1DE70DF09D3648A305B2DD840936DEA669 E931D219303CEDC8DCCC13775EAFA6DF2A7C31702ED9DF3BADB815856FB7801A
634ACFAD47721D1D639BAA24B47EAD742D344D52DE9A82610A287B0D286C34A3 4CA0AD068CF3C15B27313A69065C73F3A12C7BFBE8BA4A0AAE5A4E9DB30C3A78
7B87F56FF05A1384E0C2293AC66F35091BAD25DDF6F460758936B1A1424E79D2 4B12867801A59F01F90D46746D3347E0350610C3896FD1519EAB8ED0EE4A3368
A593AD7FD401E9C880EC4B458436AC3736B770CE10F431FE7741811BEF25128E B659DE1EA82A52C65797D329B78D3AF8001DB683DA53417B9211E632AC8A4472
A17F1E3D4554527E7655FEB8DCE993EF4BDD93C0555AEA4D783E5EF954EC2568 2CDF330CDDC4EF6E0B78744813BE86EE4A35E095945D5E923346CF78E9F76297
2F5F2D8668E455A0CA58AF139C2E5AD82FD5CBE5FC9A0239CE716B2867970A3B 0E2EBAA5CE80F765BC4E0CF330B4878732C168F853A05286440C4E17CCEAA3AA
BB4BA52AD121D2DA24126D25C9704C2543DCB3263A4DBBF39DAD91DBBD12C84B 85746B592E1DE7EB360AE7534A7CB23B4557C9F818716913D868339B0C4DD8C9
9904DE6CC7A0BAA1666A26F59D80C524E88BA924AC26AE5E418305777F5EE414 20E72C13F3AA41578EA325FC9487FCD9493A789315031C9CA792A610030B19DE
5E3AC20E95362A6752D48DB47936E0C69A97003B053DA3CE82E0115A55A613A8 1B35E111E251A21AD49BF0DCCF050EE28F8E38A1D4CA70EE14F1455A2FF3FF93
32391A7ADBD9400AFC9D5426C48CA3AA9BE74260ACA5652BF8BE18B548FDE0F5 3E02ACBCA077788C323CCCA52A550DC436F96AE869E31E17F0DDC9DC21461C16
E662F40E2BE5CC77880B965C0EF8B4F7818A1F6D7982F1DBF85F801B15FC059E A759E6DE93B8648B797C287EAB0642FC797372EB1D142BE7FE0E72C0DCC8CCFD
6028BEE22B69170000000049454E44AE426082} 49331012EDC7657983DB6FAD7C75DF2222FC0B51266D78E692E7220000000049
454E44AE426082}
Instruction.Text = 'Las siguientes facturas no han podido ser modificadas:' Instruction.Text = 'Las siguientes facturas no han podido ser modificadas:'
Instruction.Glyph.Data = { Instruction.Glyph.Data = {
0A54504E474F626A65637489504E470D0A1A0A0000000D494844520000001C00 0A54504E474F626A65637489504E470D0A1A0A0000000D494844520000001C00

View File

@ -48,6 +48,8 @@ type
JSDialog1: TJSDialog; JSDialog1: TJSDialog;
actGenerarPDF: TAction; actGenerarPDF: TAction;
TBXItem44: TTBXItem; TBXItem44: TTBXItem;
actMandarVerifactu: TAction;
TBXItem45: 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);
@ -62,6 +64,8 @@ type
procedure actConvertirEnFacturaUpdate(Sender: TObject); procedure actConvertirEnFacturaUpdate(Sender: TObject);
procedure actGenerarPDFExecute(Sender: TObject); procedure actGenerarPDFExecute(Sender: TObject);
procedure actGenerarPDFUpdate(Sender: TObject); procedure actGenerarPDFUpdate(Sender: TObject);
procedure actMandarVerifactuExecute(Sender: TObject);
procedure actMandarVerifactuUpdate(Sender: TObject);
private private
FFacturas: IBizFacturaCliente; FFacturas: IBizFacturaCliente;
@ -287,6 +291,83 @@ begin
end; end;
procedure TfEditorFacturasCliente.actMandarVerifactuExecute(Sender: TObject);
var
AFacturas: IBizFacturaCliente;
AllItems: Boolean;
AListaCausas: TStringList;
begin
AFacturas := Nil;
AllItems := False;
AListaCausas := TStringList.Create;
if MultiSelect and Assigned(ViewGrid) then
AllItems := (ViewGrid.NumSeleccionados > 1);
if AllItems then
begin
if (Application.MessageBox('¿Desea mandar a verifactu los borradores seleccionados?, ya no podrá modificarlos', 'Atención', MB_YESNO) = IDYES) then
begin
SeleccionarFilasDesdeGrid(ViewGrid._FocusedView, (Facturas as ISeleccionable).SelectedRecords);
AFacturas := (Controller as IFacturasClienteController).ExtraerSeleccionados(Facturas) as IBizFacturaCliente;
end
end
else begin
if (Application.MessageBox('¿Desea mandar a verifactu el borrador seleccionado?, ya no podrá modificarlo', 'Atención', MB_YESNO) = IDYES) then
AFacturas := Facturas;
end;
if Assigned(AFacturas) then
begin
FController.enviarVerifactu(AFacturas, AllItems, AListaCausas);
if AllItems then
begin
{ if (AFacturas.DataTable.RecordCount > 0) then
begin
with AFacturas.DataTable do
begin
JsListaFacturasNoEliminadas.Content.Clear;
First;
while not EOF do
begin
JsListaFacturasNoEliminadas.Content.Add('Ref. factura: ' + AFacturas.REFERENCIA + ' ' + AFacturas.NOMBRE);
if Length(AListaCausas.Values[IntToStr(AFacturas.ID)]) > 0 then
JsListaFacturasNoEliminadas.Content.Add(VarToStr(AListaCausas.Values[IntToStr(AFacturas.ID)]))
else
JsListaFacturasNoEliminadas.Content.Add('La factura puede tener algún recibo devuelto y no puede ser eliminada');
JsListaFacturasNoEliminadas.Content.Add('');
Next;
end;
end;
JsListaFacturasNoEliminadas.Execute;
end;
}
actRefrescar.Execute;
end
end;
AListaCausas.Free;
ViewGrid.GotoFirst;
end;
procedure TfEditorFacturasCliente.actMandarVerifactuUpdate(Sender: TObject);
begin
inherited;
(Sender as TAction).Enabled := False;
{Quitar al activar verifactu
if HayDatos and Assigned(ViewGrid) then
(Sender as TAction).Enabled := ViewGrid.EsSeleccionCeldaDatos
and (ViewGrid.NumSeleccionados > 0)
and (FFacturas.VERIFACTU < 1)
else
(Sender as TAction).Enabled := False;
}
end;
procedure TfEditorFacturasCliente.actNuevaFacturaExecute(Sender: TObject); procedure TfEditorFacturasCliente.actNuevaFacturaExecute(Sender: TObject);
begin begin
actNuevo.Execute; actNuevo.Execute;

View File

@ -171,6 +171,24 @@ inherited frViewFacturasCliente: TfrViewFacturasCliente
Caption = 'Otros nombres' Caption = 'Otros nombres'
DataBinding.FieldName = 'LISTA_NOMBRES' DataBinding.FieldName = 'LISTA_NOMBRES'
end end
object cxGridViewVERIFACTU: TcxGridDBColumn
DataBinding.FieldName = 'VERIFACTU'
PropertiesClassName = 'TcxImageComboBoxProperties'
Properties.Images = PngImageList
Properties.Items = <
item
Description = 'Verifactu'
ImageIndex = 0
Value = 1
end
item
Value = 0
end>
FooterAlignmentHorz = taCenter
GroupSummaryAlignment = taCenter
HeaderAlignmentHorz = taCenter
HeaderGlyphAlignmentHorz = taCenter
end
end end
inherited cxGridLevel: TcxGridLevel inherited cxGridLevel: TcxGridLevel
Caption = 'Todas' Caption = 'Todas'
@ -223,14 +241,12 @@ inherited frViewFacturasCliente: TfrViewFacturasCliente
Width = 273 Width = 273
end end
inherited txtFiltroTodo2: TcxTextEdit inherited txtFiltroTodo2: TcxTextEdit
Left = 541 Left = 559
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 = 541 ExplicitLeft = 559
ExplicitWidth = 250
Width = 250
end end
end end
inherited TBXAlignmentPanel1: TTBXAlignmentPanel inherited TBXAlignmentPanel1: TTBXAlignmentPanel

View File

@ -71,6 +71,7 @@ type
TBXSeparatorItem3: TTBXSeparatorItem; TBXSeparatorItem3: TTBXSeparatorItem;
TBXItem4: TTBXItem; TBXItem4: TTBXItem;
cxGridProforma: TcxGridLevel; cxGridProforma: TcxGridLevel;
cxGridViewVERIFACTU: TcxGridDBColumn;
procedure cxGridViewStylesGetContentStyle(Sender: TcxCustomGridTableView; procedure cxGridViewStylesGetContentStyle(Sender: TcxCustomGridTableView;
ARecord: TcxCustomGridRecord; AItem: TcxCustomGridTableItem; ARecord: TcxCustomGridRecord; AItem: TcxCustomGridTableItem;
out AStyle: TcxStyle); out AStyle: TcxStyle);

View File

@ -15,8 +15,6 @@ inherited frViewPedidoProveedor: TfrViewPedidoProveedor
TabOrder = 0 TabOrder = 0
TabStop = False TabStop = False
AutoContentSizes = [acsWidth, acsHeight] AutoContentSizes = [acsWidth, acsHeight]
ExplicitWidth = 934
ExplicitHeight = 594
DesignSize = ( DesignSize = (
1042 1042
619) 619)
@ -39,8 +37,7 @@ inherited frViewPedidoProveedor: TfrViewPedidoProveedor
inherited dxLayoutControl1: TdxLayoutControl inherited dxLayoutControl1: TdxLayoutControl
Height = 225 Height = 225
Align = alClient Align = alClient
ExplicitWidth = 357 ExplicitHeight = 225
ExplicitHeight = 215
inherited edtlNombre: TcxDBTextEdit inherited edtlNombre: TcxDBTextEdit
ExplicitWidth = 283 ExplicitWidth = 283
Width = 283 Width = 283
@ -554,7 +551,7 @@ inherited frViewPedidoProveedor: TfrViewPedidoProveedor
end end
end end
object dxLayoutControl1Item16: TdxLayoutItem object dxLayoutControl1Item16: TdxLayoutItem
Caption = 'Vendedor:' Caption = 'Realizado por:'
Control = cbVendedor Control = cbVendedor
ControlOptions.ShowBorder = False ControlOptions.ShowBorder = False
end end

View File

@ -175,6 +175,10 @@ inherited frViewPedidosProveedor: TfrViewPedidosProveedor
VisibleForCustomization = False VisibleForCustomization = False
Width = 57 Width = 57
end end
object cxGridViewVENDEDOR: TcxGridDBColumn
Caption = 'Realizado por'
DataBinding.FieldName = 'VENDEDOR'
end
end end
object cxGridDBTableView1: TcxGridDBTableView [1] object cxGridDBTableView1: TcxGridDBTableView [1]
NavigatorButtons.ConfirmDelete = False NavigatorButtons.ConfirmDelete = False

View File

@ -66,6 +66,7 @@ type
actTienda: TAction; actTienda: TAction;
TBXItem4: TTBXItem; TBXItem4: TTBXItem;
TBXSeparatorItem3: TTBXSeparatorItem; TBXSeparatorItem3: TTBXSeparatorItem;
cxGridViewVENDEDOR: TcxGridDBColumn;
procedure cxGridActiveTabChanged(Sender: TcxCustomGrid; ALevel: procedure cxGridActiveTabChanged(Sender: TcxCustomGrid; ALevel:
TcxGridLevel); TcxGridLevel);
procedure cxGridViewCODIGOCustomDrawCell(Sender: TcxCustomGridTableView; procedure cxGridViewCODIGOCustomDrawCell(Sender: TcxCustomGridTableView;

View File

@ -25,6 +25,7 @@ type
TDetallesPresupuestoClienteController = class(TControllerDetallesArticulos, IDetallesPresupuestoClienteController) TDetallesPresupuestoClienteController = class(TControllerDetallesArticulos, IDetallesPresupuestoClienteController)
private private
FTipoPresupuesto: Variant;
FDataModule : IDataModulePresupuestosCliente; FDataModule : IDataModulePresupuestosCliente;
function CreateEditor(const AName : String; const IID: TGUID; out Intf): Boolean; function CreateEditor(const AName : String; const IID: TGUID; out Intf): Boolean;

View File

@ -110,7 +110,7 @@ type
procedure QuitarDireccionEnvio(APresupuesto: IBizPresupuestoCliente); procedure QuitarDireccionEnvio(APresupuesto: IBizPresupuestoCliente);
procedure RecalcularImportes(APresupuesto : IBizPresupuestoCliente); procedure RecalcularImportes(APresupuesto : IBizPresupuestoCliente; const DesglosarIVA: Boolean = False);
function EsModificable(APresupuesto : IBizPresupuestoCliente): Boolean; function EsModificable(APresupuesto : IBizPresupuestoCliente): Boolean;
function EsEliminable(APresupuesto : IBizPresupuestoCliente): Boolean; function EsEliminable(APresupuesto : IBizPresupuestoCliente): Boolean;
@ -187,7 +187,7 @@ type
function ExtraerSeleccionados(APresupuesto: IBizPresupuestoCliente) : IBizPresupuestoCliente; function ExtraerSeleccionados(APresupuesto: IBizPresupuestoCliente) : IBizPresupuestoCliente;
function ElegirPresupuestos(APresupuesto: IBizPresupuestoCliente; AMensaje: String; AMultiSelect: Boolean): IBizPresupuestoCliente; function ElegirPresupuestos(APresupuesto: IBizPresupuestoCliente; AMensaje: String; AMultiSelect: Boolean): IBizPresupuestoCliente;
procedure RecalcularImportes(APresupuesto : IBizPresupuestoCliente); procedure RecalcularImportes(APresupuesto : IBizPresupuestoCliente; const DesglosarIVA: Boolean = False);
function EsModificable(APresupuesto : IBizPresupuestoCliente): Boolean; function EsModificable(APresupuesto : IBizPresupuestoCliente): Boolean;
function EsEliminable(APresupuesto : IBizPresupuestoCliente): Boolean; function EsEliminable(APresupuesto : IBizPresupuestoCliente): Boolean;
@ -493,7 +493,7 @@ begin
REFERENCIA := ''; REFERENCIA := '';
SITUACION := SITUACION_PRESUPUESTO_PENDIENTE; SITUACION := SITUACION_PRESUPUESTO_PENDIENTE;
end; end;
Result.AsignarVendedor; Result.AsignarPresupuestador;
Result.Post; Result.Post;
finally finally
HideHourglassCursor; HideHourglassCursor;
@ -569,8 +569,7 @@ begin
SetDataTableReadOnly(APresupuesto.DataTable, True); SetDataTableReadOnly(APresupuesto.DataTable, True);
//En el caso de las plantilla dejamos mover el cursor del grid pero sin poder modificar nada //En el caso de las plantilla dejamos mover el cursor del grid pero sin poder modificar nada
//activamos el grid para que puedan consultar contenido. //activamos el grid para que puedan consultar contenido.
if not (APresupuesto.SITUACION = SITUACION_PRESUPUESTO_PLANTILLA) then //AEditor.ReadOnly := True;
AEditor.ReadOnly := True;
end; end;
AEditor.ShowModal; AEditor.ShowModal;
@ -790,7 +789,10 @@ begin
if not Assigned(APresupuesto) then if not Assigned(APresupuesto) then
raise Exception.Create ('Presupuesto no asignado: EsEliminable'); raise Exception.Create ('Presupuesto no asignado: EsEliminable');
Result := (APresupuesto.SITUACION = SITUACION_PRESUPUESTO_PENDIENTE); Result := (APresupuesto.SITUACION = SITUACION_PRESUPUESTO_PENDIENTE)
or ((AppFactuGES.UsuarioActivo.ID_PERFIL = CTE_PREFIL_GERENCIA_COMUN)
or (AppFactuGES.UsuarioActivo.ID_PERFIL = CTE_PERFIL_ADMINISTRADOR))
end; end;
function TPresupuestosClienteController.EsModificable(APresupuesto: IBizPresupuestoCliente): Boolean; function TPresupuestosClienteController.EsModificable(APresupuesto: IBizPresupuestoCliente): Boolean;
@ -801,8 +803,7 @@ begin
Result := (APresupuesto.SITUACION <> SITUACION_PRESUPUESTO_PLANTILLA); Result := (APresupuesto.SITUACION <> SITUACION_PRESUPUESTO_PLANTILLA);
end; end;
procedure TPresupuestosClienteController.RecalcularImportes( procedure TPresupuestosClienteController.RecalcularImportes(APresupuesto: IBizPresupuestoCliente; const DesglosarIVA: Boolean = False);
APresupuesto: IBizPresupuestoCliente);
var var
bEnEdicion : Boolean; bEnEdicion : Boolean;
ADetallePosAct : Integer; ADetallePosAct : Integer;
@ -826,7 +827,7 @@ begin
ShowHourglassCursor; ShowHourglassCursor;
try try
APresupuesto.IMPORTE_NETO := FDetallesController.DarTotalImporteTotal(APresupuesto.Detalles); APresupuesto.IMPORTE_NETO := FDetallesController.DarTotalImporteTotal(APresupuesto.Detalles, DesglosarIVA);
APresupuesto.IMPORTE_PORTE := FDetallesController.DarTotalPorteTotal(APresupuesto.Detalles); APresupuesto.IMPORTE_PORTE := FDetallesController.DarTotalPorteTotal(APresupuesto.Detalles);
if not bEnEdicion then if not bEnEdicion then

View File

@ -312,6 +312,16 @@ inherited DataModulePresupuestosCliente: TDataModulePresupuestosCliente
item item
Name = 'FECHA_ULT_PRESENTACION_CLIENTE' Name = 'FECHA_ULT_PRESENTACION_CLIENTE'
DataType = datDateTime DataType = datDateTime
end
item
Name = 'ID_PRESUPUESTADOR'
DataType = datInteger
end
item
Name = 'PRESUPUESTADOR'
DataType = datString
Size = 255
ServerAutoRefresh = True
end> end>
Params = <> Params = <>
StreamingOptions = [soDisableEventsWhileStreaming] StreamingOptions = [soDisableEventsWhileStreaming]

View File

@ -9,12 +9,12 @@ 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_Valores = '{1C137EA2-79F9-4B4C-905B-31E2F3118006}'; RID_Valores = '{A50539DF-0F94-4F50-B306-92F2530E0DF5}';
RID_Propiedades = '{A64DFA30-E2C1-4317-B535-D2FEC9DD5FDC}'; RID_Propiedades = '{FC2876CF-73B5-4DBD-A896-9B5580E1182C}';
RID_ListaAnosPresupuestos = '{AFF490F1-4DC0-4717-B4A1-1C66A8BE0B61}'; RID_ListaAnosPresupuestos = '{3480D852-9D3D-450B-8857-745532FCAF51}';
RID_PresupuestosCliente = '{CC490968-9BAD-41E4-81CB-A6EEBFE5F382}'; RID_PresupuestosCliente = '{2C9BBE6F-490F-45DE-942A-9A01CEE80892}';
RID_CapitulosPresupuesto = '{2F44DC36-32F6-45B9-85D6-3D793A9F4AE2}'; RID_CapitulosPresupuesto = '{45D87B74-D253-409A-860C-40D216298F14}';
RID_PresupuestosCliente_Detalles = '{C95D5B67-4EC8-4B81-A498-2104C61C977C}'; RID_PresupuestosCliente_Detalles = '{D5FCA165-32A0-46FB-B9D0-3B1A4A76E5C8}';
{ Data table names } { Data table names }
nme_Valores = 'Valores'; nme_Valores = 'Valores';
@ -102,6 +102,8 @@ const
fld_PresupuestosClienteREFERENCIA_CLIENTE = 'REFERENCIA_CLIENTE'; fld_PresupuestosClienteREFERENCIA_CLIENTE = 'REFERENCIA_CLIENTE';
fld_PresupuestosClienteLISTA_NOMBRES = 'LISTA_NOMBRES'; fld_PresupuestosClienteLISTA_NOMBRES = 'LISTA_NOMBRES';
fld_PresupuestosClienteFECHA_ULT_PRESENTACION_CLIENTE = 'FECHA_ULT_PRESENTACION_CLIENTE'; fld_PresupuestosClienteFECHA_ULT_PRESENTACION_CLIENTE = 'FECHA_ULT_PRESENTACION_CLIENTE';
fld_PresupuestosClienteID_PRESUPUESTADOR = 'ID_PRESUPUESTADOR';
fld_PresupuestosClientePRESUPUESTADOR = 'PRESUPUESTADOR';
{ PresupuestosCliente field indexes } { PresupuestosCliente field indexes }
idx_PresupuestosClienteID = 0; idx_PresupuestosClienteID = 0;
@ -149,6 +151,8 @@ const
idx_PresupuestosClienteREFERENCIA_CLIENTE = 42; idx_PresupuestosClienteREFERENCIA_CLIENTE = 42;
idx_PresupuestosClienteLISTA_NOMBRES = 43; idx_PresupuestosClienteLISTA_NOMBRES = 43;
idx_PresupuestosClienteFECHA_ULT_PRESENTACION_CLIENTE = 44; idx_PresupuestosClienteFECHA_ULT_PRESENTACION_CLIENTE = 44;
idx_PresupuestosClienteID_PRESUPUESTADOR = 45;
idx_PresupuestosClientePRESUPUESTADOR = 46;
{ CapitulosPresupuesto fields } { CapitulosPresupuesto fields }
fld_CapitulosPresupuestoID = 'ID'; fld_CapitulosPresupuestoID = 'ID';
@ -221,7 +225,7 @@ const
type type
{ IValores } { IValores }
IValores = interface(IDAStronglyTypedDataTable) IValores = interface(IDAStronglyTypedDataTable)
['{D66A0BC2-1BB9-4699-8E7A-786E0205A42D}'] ['{6BA9F35E-B31F-42DD-B267-3A6068D97775}']
{ Property getters and setters } { Property getters and setters }
function GetIDValue: Integer; function GetIDValue: Integer;
procedure SetIDValue(const aValue: Integer); procedure SetIDValue(const aValue: Integer);
@ -328,7 +332,7 @@ type
{ IPropiedades } { IPropiedades }
IPropiedades = interface(IDAStronglyTypedDataTable) IPropiedades = interface(IDAStronglyTypedDataTable)
['{5CA94698-11F6-4DAB-82E2-7BC712E7E4D8}'] ['{BD401EFD-6694-4728-9B85-36D9ED3B72F8}']
{ Property getters and setters } { Property getters and setters }
function GetIDValue: Integer; function GetIDValue: Integer;
procedure SetIDValue(const aValue: Integer); procedure SetIDValue(const aValue: Integer);
@ -375,7 +379,7 @@ type
{ IListaAnosPresupuestos } { IListaAnosPresupuestos }
IListaAnosPresupuestos = interface(IDAStronglyTypedDataTable) IListaAnosPresupuestos = interface(IDAStronglyTypedDataTable)
['{B695311B-59BC-4222-B586-5CE4E46426D5}'] ['{187A3EC4-6046-4860-AC38-B25237C36E2D}']
{ Property getters and setters } { Property getters and setters }
function GetANOValue: String; function GetANOValue: String;
procedure SetANOValue(const aValue: String); procedure SetANOValue(const aValue: String);
@ -410,7 +414,7 @@ type
{ IPresupuestosCliente } { IPresupuestosCliente }
IPresupuestosCliente = interface(IDAStronglyTypedDataTable) IPresupuestosCliente = interface(IDAStronglyTypedDataTable)
['{B2C60249-0034-42C6-ACB9-E6AF356420DD}'] ['{9F13C2C0-4480-4495-A41E-0ED3CD8509F4}']
{ Property getters and setters } { Property getters and setters }
function GetIDValue: Integer; function GetIDValue: Integer;
procedure SetIDValue(const aValue: Integer); procedure SetIDValue(const aValue: Integer);
@ -587,6 +591,14 @@ type
procedure SetFECHA_ULT_PRESENTACION_CLIENTEValue(const aValue: DateTime); procedure SetFECHA_ULT_PRESENTACION_CLIENTEValue(const aValue: DateTime);
function GetFECHA_ULT_PRESENTACION_CLIENTEIsNull: Boolean; function GetFECHA_ULT_PRESENTACION_CLIENTEIsNull: Boolean;
procedure SetFECHA_ULT_PRESENTACION_CLIENTEIsNull(const aValue: Boolean); procedure SetFECHA_ULT_PRESENTACION_CLIENTEIsNull(const aValue: Boolean);
function GetID_PRESUPUESTADORValue: Integer;
procedure SetID_PRESUPUESTADORValue(const aValue: Integer);
function GetID_PRESUPUESTADORIsNull: Boolean;
procedure SetID_PRESUPUESTADORIsNull(const aValue: Boolean);
function GetPRESUPUESTADORValue: String;
procedure SetPRESUPUESTADORValue(const aValue: String);
function GetPRESUPUESTADORIsNull: Boolean;
procedure SetPRESUPUESTADORIsNull(const aValue: Boolean);
{ Properties } { Properties }
@ -680,6 +692,10 @@ type
property LISTA_NOMBRESIsNull: Boolean read GetLISTA_NOMBRESIsNull write SetLISTA_NOMBRESIsNull; property LISTA_NOMBRESIsNull: Boolean read GetLISTA_NOMBRESIsNull write SetLISTA_NOMBRESIsNull;
property FECHA_ULT_PRESENTACION_CLIENTE: DateTime read GetFECHA_ULT_PRESENTACION_CLIENTEValue write SetFECHA_ULT_PRESENTACION_CLIENTEValue; property FECHA_ULT_PRESENTACION_CLIENTE: DateTime read GetFECHA_ULT_PRESENTACION_CLIENTEValue write SetFECHA_ULT_PRESENTACION_CLIENTEValue;
property FECHA_ULT_PRESENTACION_CLIENTEIsNull: Boolean read GetFECHA_ULT_PRESENTACION_CLIENTEIsNull write SetFECHA_ULT_PRESENTACION_CLIENTEIsNull; property FECHA_ULT_PRESENTACION_CLIENTEIsNull: Boolean read GetFECHA_ULT_PRESENTACION_CLIENTEIsNull write SetFECHA_ULT_PRESENTACION_CLIENTEIsNull;
property ID_PRESUPUESTADOR: Integer read GetID_PRESUPUESTADORValue write SetID_PRESUPUESTADORValue;
property ID_PRESUPUESTADORIsNull: Boolean read GetID_PRESUPUESTADORIsNull write SetID_PRESUPUESTADORIsNull;
property PRESUPUESTADOR: String read GetPRESUPUESTADORValue write SetPRESUPUESTADORValue;
property PRESUPUESTADORIsNull: Boolean read GetPRESUPUESTADORIsNull write SetPRESUPUESTADORIsNull;
end; end;
{ TPresupuestosClienteDataTableRules } { TPresupuestosClienteDataTableRules }
@ -872,6 +888,14 @@ type
procedure SetFECHA_ULT_PRESENTACION_CLIENTEValue(const aValue: DateTime); virtual; procedure SetFECHA_ULT_PRESENTACION_CLIENTEValue(const aValue: DateTime); virtual;
function GetFECHA_ULT_PRESENTACION_CLIENTEIsNull: Boolean; virtual; function GetFECHA_ULT_PRESENTACION_CLIENTEIsNull: Boolean; virtual;
procedure SetFECHA_ULT_PRESENTACION_CLIENTEIsNull(const aValue: Boolean); virtual; procedure SetFECHA_ULT_PRESENTACION_CLIENTEIsNull(const aValue: Boolean); virtual;
function GetID_PRESUPUESTADORValue: Integer; virtual;
procedure SetID_PRESUPUESTADORValue(const aValue: Integer); virtual;
function GetID_PRESUPUESTADORIsNull: Boolean; virtual;
procedure SetID_PRESUPUESTADORIsNull(const aValue: Boolean); virtual;
function GetPRESUPUESTADORValue: String; virtual;
procedure SetPRESUPUESTADORValue(const aValue: String); virtual;
function GetPRESUPUESTADORIsNull: Boolean; virtual;
procedure SetPRESUPUESTADORIsNull(const aValue: Boolean); virtual;
{ Properties } { Properties }
property ID: Integer read GetIDValue write SetIDValue; property ID: Integer read GetIDValue write SetIDValue;
@ -964,6 +988,10 @@ type
property LISTA_NOMBRESIsNull: Boolean read GetLISTA_NOMBRESIsNull write SetLISTA_NOMBRESIsNull; property LISTA_NOMBRESIsNull: Boolean read GetLISTA_NOMBRESIsNull write SetLISTA_NOMBRESIsNull;
property FECHA_ULT_PRESENTACION_CLIENTE: DateTime read GetFECHA_ULT_PRESENTACION_CLIENTEValue write SetFECHA_ULT_PRESENTACION_CLIENTEValue; property FECHA_ULT_PRESENTACION_CLIENTE: DateTime read GetFECHA_ULT_PRESENTACION_CLIENTEValue write SetFECHA_ULT_PRESENTACION_CLIENTEValue;
property FECHA_ULT_PRESENTACION_CLIENTEIsNull: Boolean read GetFECHA_ULT_PRESENTACION_CLIENTEIsNull write SetFECHA_ULT_PRESENTACION_CLIENTEIsNull; property FECHA_ULT_PRESENTACION_CLIENTEIsNull: Boolean read GetFECHA_ULT_PRESENTACION_CLIENTEIsNull write SetFECHA_ULT_PRESENTACION_CLIENTEIsNull;
property ID_PRESUPUESTADOR: Integer read GetID_PRESUPUESTADORValue write SetID_PRESUPUESTADORValue;
property ID_PRESUPUESTADORIsNull: Boolean read GetID_PRESUPUESTADORIsNull write SetID_PRESUPUESTADORIsNull;
property PRESUPUESTADOR: String read GetPRESUPUESTADORValue write SetPRESUPUESTADORValue;
property PRESUPUESTADORIsNull: Boolean read GetPRESUPUESTADORIsNull write SetPRESUPUESTADORIsNull;
public public
constructor Create(aDataTable: TDADataTable); override; constructor Create(aDataTable: TDADataTable); override;
@ -973,7 +1001,7 @@ type
{ ICapitulosPresupuesto } { ICapitulosPresupuesto }
ICapitulosPresupuesto = interface(IDAStronglyTypedDataTable) ICapitulosPresupuesto = interface(IDAStronglyTypedDataTable)
['{8DDBB981-6B18-428A-9F4E-FF4BE6283AD4}'] ['{254BD61D-0CAA-4514-8E0E-AB64926E6DA5}']
{ Property getters and setters } { Property getters and setters }
function GetIDValue: Integer; function GetIDValue: Integer;
procedure SetIDValue(const aValue: Integer); procedure SetIDValue(const aValue: Integer);
@ -1128,7 +1156,7 @@ type
{ IPresupuestosCliente_Detalles } { IPresupuestosCliente_Detalles }
IPresupuestosCliente_Detalles = interface(IDAStronglyTypedDataTable) IPresupuestosCliente_Detalles = interface(IDAStronglyTypedDataTable)
['{D156932E-C94A-4BD6-A3CF-B3EF3166E76E}'] ['{B99888D1-1407-4023-A400-F1B41ACF9A84}']
{ Property getters and setters } { Property getters and setters }
function GetIDValue: Integer; function GetIDValue: Integer;
procedure SetIDValue(const aValue: Integer); procedure SetIDValue(const aValue: Integer);
@ -2610,6 +2638,48 @@ begin
DataTable.Fields[idx_PresupuestosClienteFECHA_ULT_PRESENTACION_CLIENTE].AsVariant := Null; DataTable.Fields[idx_PresupuestosClienteFECHA_ULT_PRESENTACION_CLIENTE].AsVariant := Null;
end; end;
function TPresupuestosClienteDataTableRules.GetID_PRESUPUESTADORValue: Integer;
begin
result := DataTable.Fields[idx_PresupuestosClienteID_PRESUPUESTADOR].AsInteger;
end;
procedure TPresupuestosClienteDataTableRules.SetID_PRESUPUESTADORValue(const aValue: Integer);
begin
DataTable.Fields[idx_PresupuestosClienteID_PRESUPUESTADOR].AsInteger := aValue;
end;
function TPresupuestosClienteDataTableRules.GetID_PRESUPUESTADORIsNull: boolean;
begin
result := DataTable.Fields[idx_PresupuestosClienteID_PRESUPUESTADOR].IsNull;
end;
procedure TPresupuestosClienteDataTableRules.SetID_PRESUPUESTADORIsNull(const aValue: Boolean);
begin
if aValue then
DataTable.Fields[idx_PresupuestosClienteID_PRESUPUESTADOR].AsVariant := Null;
end;
function TPresupuestosClienteDataTableRules.GetPRESUPUESTADORValue: String;
begin
result := DataTable.Fields[idx_PresupuestosClientePRESUPUESTADOR].AsString;
end;
procedure TPresupuestosClienteDataTableRules.SetPRESUPUESTADORValue(const aValue: String);
begin
DataTable.Fields[idx_PresupuestosClientePRESUPUESTADOR].AsString := aValue;
end;
function TPresupuestosClienteDataTableRules.GetPRESUPUESTADORIsNull: boolean;
begin
result := DataTable.Fields[idx_PresupuestosClientePRESUPUESTADOR].IsNull;
end;
procedure TPresupuestosClienteDataTableRules.SetPRESUPUESTADORIsNull(const aValue: Boolean);
begin
if aValue then
DataTable.Fields[idx_PresupuestosClientePRESUPUESTADOR].AsVariant := Null;
end;
{ TCapitulosPresupuestoDataTableRules } { TCapitulosPresupuestoDataTableRules }
constructor TCapitulosPresupuestoDataTableRules.Create(aDataTable: TDADataTable); constructor TCapitulosPresupuestoDataTableRules.Create(aDataTable: TDADataTable);

View File

@ -9,17 +9,17 @@ 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_ValoresDelta = '{F1287920-FCBE-4504-9B47-E59123D3BDA3}'; RID_ValoresDelta = '{7948E371-CD64-4D0C-9E9C-401A8DC37243}';
RID_PropiedadesDelta = '{EC69B037-7162-4B60-B280-DC0BE4C2C763}'; RID_PropiedadesDelta = '{F3EE64C0-99BF-49EC-BA9B-38B7607C525F}';
RID_ListaAnosPresupuestosDelta = '{1F8FFF3A-9750-4D9F-944E-3B5A4696FD1C}'; RID_ListaAnosPresupuestosDelta = '{F67788DA-A062-498E-9176-93D02C9684CA}';
RID_PresupuestosClienteDelta = '{F7B626AE-70AA-4FEB-8E94-9B5D049DBF5B}'; RID_PresupuestosClienteDelta = '{ED33D82E-0CB2-44D7-8204-9B22F70C9ABC}';
RID_CapitulosPresupuestoDelta = '{CDA86224-B80C-4EE6-BA08-1FBE48C27FE6}'; RID_CapitulosPresupuestoDelta = '{E97D0DFC-1517-475A-AADC-4CE3C091C7A3}';
RID_PresupuestosCliente_DetallesDelta = '{F7A55A7B-967E-410C-AA6D-C1D14E2D57DD}'; RID_PresupuestosCliente_DetallesDelta = '{3BA09AF3-28D1-4918-9F7F-B6324CE29BEF}';
type type
{ IValoresDelta } { IValoresDelta }
IValoresDelta = interface(IValores) IValoresDelta = interface(IValores)
['{F1287920-FCBE-4504-9B47-E59123D3BDA3}'] ['{7948E371-CD64-4D0C-9E9C-401A8DC37243}']
{ Property getters and setters } { Property getters and setters }
function GetOldIDValue : Integer; function GetOldIDValue : Integer;
function GetOldID_EMPRESAValue : Integer; function GetOldID_EMPRESAValue : Integer;
@ -125,7 +125,7 @@ type
{ IPropiedadesDelta } { IPropiedadesDelta }
IPropiedadesDelta = interface(IPropiedades) IPropiedadesDelta = interface(IPropiedades)
['{EC69B037-7162-4B60-B280-DC0BE4C2C763}'] ['{F3EE64C0-99BF-49EC-BA9B-38B7607C525F}']
{ Property getters and setters } { Property getters and setters }
function GetOldIDValue : Integer; function GetOldIDValue : Integer;
function GetOldDESCRIPCIONValue : String; function GetOldDESCRIPCIONValue : String;
@ -171,7 +171,7 @@ type
{ IListaAnosPresupuestosDelta } { IListaAnosPresupuestosDelta }
IListaAnosPresupuestosDelta = interface(IListaAnosPresupuestos) IListaAnosPresupuestosDelta = interface(IListaAnosPresupuestos)
['{1F8FFF3A-9750-4D9F-944E-3B5A4696FD1C}'] ['{F67788DA-A062-498E-9176-93D02C9684CA}']
{ Property getters and setters } { Property getters and setters }
function GetOldANOValue : String; function GetOldANOValue : String;
@ -205,7 +205,7 @@ type
{ IPresupuestosClienteDelta } { IPresupuestosClienteDelta }
IPresupuestosClienteDelta = interface(IPresupuestosCliente) IPresupuestosClienteDelta = interface(IPresupuestosCliente)
['{F7B626AE-70AA-4FEB-8E94-9B5D049DBF5B}'] ['{ED33D82E-0CB2-44D7-8204-9B22F70C9ABC}']
{ Property getters and setters } { Property getters and setters }
function GetOldIDValue : Integer; function GetOldIDValue : Integer;
function GetOldID_EMPRESAValue : Integer; function GetOldID_EMPRESAValue : Integer;
@ -252,6 +252,8 @@ type
function GetOldREFERENCIA_CLIENTEValue : String; function GetOldREFERENCIA_CLIENTEValue : String;
function GetOldLISTA_NOMBRESValue : String; function GetOldLISTA_NOMBRESValue : String;
function GetOldFECHA_ULT_PRESENTACION_CLIENTEValue : DateTime; function GetOldFECHA_ULT_PRESENTACION_CLIENTEValue : DateTime;
function GetOldID_PRESUPUESTADORValue : Integer;
function GetOldPRESUPUESTADORValue : String;
{ Properties } { Properties }
property OldID : Integer read GetOldIDValue; property OldID : Integer read GetOldIDValue;
@ -299,6 +301,8 @@ type
property OldREFERENCIA_CLIENTE : String read GetOldREFERENCIA_CLIENTEValue; property OldREFERENCIA_CLIENTE : String read GetOldREFERENCIA_CLIENTEValue;
property OldLISTA_NOMBRES : String read GetOldLISTA_NOMBRESValue; property OldLISTA_NOMBRES : String read GetOldLISTA_NOMBRESValue;
property OldFECHA_ULT_PRESENTACION_CLIENTE : DateTime read GetOldFECHA_ULT_PRESENTACION_CLIENTEValue; property OldFECHA_ULT_PRESENTACION_CLIENTE : DateTime read GetOldFECHA_ULT_PRESENTACION_CLIENTEValue;
property OldID_PRESUPUESTADOR : Integer read GetOldID_PRESUPUESTADORValue;
property OldPRESUPUESTADOR : String read GetOldPRESUPUESTADORValue;
end; end;
{ TPresupuestosClienteBusinessProcessorRules } { TPresupuestosClienteBusinessProcessorRules }
@ -581,6 +585,18 @@ type
function GetOldFECHA_ULT_PRESENTACION_CLIENTEIsNull: Boolean; virtual; function GetOldFECHA_ULT_PRESENTACION_CLIENTEIsNull: Boolean; virtual;
procedure SetFECHA_ULT_PRESENTACION_CLIENTEValue(const aValue: DateTime); virtual; procedure SetFECHA_ULT_PRESENTACION_CLIENTEValue(const aValue: DateTime); virtual;
procedure SetFECHA_ULT_PRESENTACION_CLIENTEIsNull(const aValue: Boolean); virtual; procedure SetFECHA_ULT_PRESENTACION_CLIENTEIsNull(const aValue: Boolean); virtual;
function GetID_PRESUPUESTADORValue: Integer; virtual;
function GetID_PRESUPUESTADORIsNull: Boolean; virtual;
function GetOldID_PRESUPUESTADORValue: Integer; virtual;
function GetOldID_PRESUPUESTADORIsNull: Boolean; virtual;
procedure SetID_PRESUPUESTADORValue(const aValue: Integer); virtual;
procedure SetID_PRESUPUESTADORIsNull(const aValue: Boolean); virtual;
function GetPRESUPUESTADORValue: String; virtual;
function GetPRESUPUESTADORIsNull: Boolean; virtual;
function GetOldPRESUPUESTADORValue: String; virtual;
function GetOldPRESUPUESTADORIsNull: Boolean; virtual;
procedure SetPRESUPUESTADORValue(const aValue: String); virtual;
procedure SetPRESUPUESTADORIsNull(const aValue: Boolean); virtual;
{ Properties } { Properties }
property ID : Integer read GetIDValue write SetIDValue; property ID : Integer read GetIDValue write SetIDValue;
@ -763,6 +779,14 @@ type
property FECHA_ULT_PRESENTACION_CLIENTEIsNull : Boolean read GetFECHA_ULT_PRESENTACION_CLIENTEIsNull write SetFECHA_ULT_PRESENTACION_CLIENTEIsNull; property FECHA_ULT_PRESENTACION_CLIENTEIsNull : Boolean read GetFECHA_ULT_PRESENTACION_CLIENTEIsNull write SetFECHA_ULT_PRESENTACION_CLIENTEIsNull;
property OldFECHA_ULT_PRESENTACION_CLIENTE : DateTime read GetOldFECHA_ULT_PRESENTACION_CLIENTEValue; property OldFECHA_ULT_PRESENTACION_CLIENTE : DateTime read GetOldFECHA_ULT_PRESENTACION_CLIENTEValue;
property OldFECHA_ULT_PRESENTACION_CLIENTEIsNull : Boolean read GetOldFECHA_ULT_PRESENTACION_CLIENTEIsNull; property OldFECHA_ULT_PRESENTACION_CLIENTEIsNull : Boolean read GetOldFECHA_ULT_PRESENTACION_CLIENTEIsNull;
property ID_PRESUPUESTADOR : Integer read GetID_PRESUPUESTADORValue write SetID_PRESUPUESTADORValue;
property ID_PRESUPUESTADORIsNull : Boolean read GetID_PRESUPUESTADORIsNull write SetID_PRESUPUESTADORIsNull;
property OldID_PRESUPUESTADOR : Integer read GetOldID_PRESUPUESTADORValue;
property OldID_PRESUPUESTADORIsNull : Boolean read GetOldID_PRESUPUESTADORIsNull;
property PRESUPUESTADOR : String read GetPRESUPUESTADORValue write SetPRESUPUESTADORValue;
property PRESUPUESTADORIsNull : Boolean read GetPRESUPUESTADORIsNull write SetPRESUPUESTADORIsNull;
property OldPRESUPUESTADOR : String read GetOldPRESUPUESTADORValue;
property OldPRESUPUESTADORIsNull : Boolean read GetOldPRESUPUESTADORIsNull;
public public
constructor Create(aBusinessProcessor: TDABusinessProcessor); override; constructor Create(aBusinessProcessor: TDABusinessProcessor); override;
@ -772,7 +796,7 @@ type
{ ICapitulosPresupuestoDelta } { ICapitulosPresupuestoDelta }
ICapitulosPresupuestoDelta = interface(ICapitulosPresupuesto) ICapitulosPresupuestoDelta = interface(ICapitulosPresupuesto)
['{CDA86224-B80C-4EE6-BA08-1FBE48C27FE6}'] ['{E97D0DFC-1517-475A-AADC-4CE3C091C7A3}']
{ Property getters and setters } { Property getters and setters }
function GetOldIDValue : Integer; function GetOldIDValue : Integer;
function GetOldPOSICIONValue : Integer; function GetOldPOSICIONValue : Integer;
@ -926,7 +950,7 @@ type
{ IPresupuestosCliente_DetallesDelta } { IPresupuestosCliente_DetallesDelta }
IPresupuestosCliente_DetallesDelta = interface(IPresupuestosCliente_Detalles) IPresupuestosCliente_DetallesDelta = interface(IPresupuestosCliente_Detalles)
['{F7A55A7B-967E-410C-AA6D-C1D14E2D57DD}'] ['{3BA09AF3-28D1-4918-9F7F-B6324CE29BEF}']
{ Property getters and setters } { Property getters and setters }
function GetOldIDValue : Integer; function GetOldIDValue : Integer;
function GetOldID_PRESUPUESTOValue : Integer; function GetOldID_PRESUPUESTOValue : Integer;
@ -2963,6 +2987,68 @@ begin
BusinessProcessor.CurrentChange.NewValueByName[fld_PresupuestosClienteFECHA_ULT_PRESENTACION_CLIENTE] := Null; BusinessProcessor.CurrentChange.NewValueByName[fld_PresupuestosClienteFECHA_ULT_PRESENTACION_CLIENTE] := Null;
end; end;
function TPresupuestosClienteBusinessProcessorRules.GetID_PRESUPUESTADORValue: Integer;
begin
result := BusinessProcessor.CurrentChange.NewValueByName[fld_PresupuestosClienteID_PRESUPUESTADOR];
end;
function TPresupuestosClienteBusinessProcessorRules.GetID_PRESUPUESTADORIsNull: Boolean;
begin
result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_PresupuestosClienteID_PRESUPUESTADOR]);
end;
function TPresupuestosClienteBusinessProcessorRules.GetOldID_PRESUPUESTADORValue: Integer;
begin
result := BusinessProcessor.CurrentChange.OldValueByName[fld_PresupuestosClienteID_PRESUPUESTADOR];
end;
function TPresupuestosClienteBusinessProcessorRules.GetOldID_PRESUPUESTADORIsNull: Boolean;
begin
result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_PresupuestosClienteID_PRESUPUESTADOR]);
end;
procedure TPresupuestosClienteBusinessProcessorRules.SetID_PRESUPUESTADORValue(const aValue: Integer);
begin
BusinessProcessor.CurrentChange.NewValueByName[fld_PresupuestosClienteID_PRESUPUESTADOR] := aValue;
end;
procedure TPresupuestosClienteBusinessProcessorRules.SetID_PRESUPUESTADORIsNull(const aValue: Boolean);
begin
if aValue then
BusinessProcessor.CurrentChange.NewValueByName[fld_PresupuestosClienteID_PRESUPUESTADOR] := Null;
end;
function TPresupuestosClienteBusinessProcessorRules.GetPRESUPUESTADORValue: String;
begin
result := BusinessProcessor.CurrentChange.NewValueByName[fld_PresupuestosClientePRESUPUESTADOR];
end;
function TPresupuestosClienteBusinessProcessorRules.GetPRESUPUESTADORIsNull: Boolean;
begin
result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_PresupuestosClientePRESUPUESTADOR]);
end;
function TPresupuestosClienteBusinessProcessorRules.GetOldPRESUPUESTADORValue: String;
begin
result := BusinessProcessor.CurrentChange.OldValueByName[fld_PresupuestosClientePRESUPUESTADOR];
end;
function TPresupuestosClienteBusinessProcessorRules.GetOldPRESUPUESTADORIsNull: Boolean;
begin
result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_PresupuestosClientePRESUPUESTADOR]);
end;
procedure TPresupuestosClienteBusinessProcessorRules.SetPRESUPUESTADORValue(const aValue: String);
begin
BusinessProcessor.CurrentChange.NewValueByName[fld_PresupuestosClientePRESUPUESTADOR] := aValue;
end;
procedure TPresupuestosClienteBusinessProcessorRules.SetPRESUPUESTADORIsNull(const aValue: Boolean);
begin
if aValue then
BusinessProcessor.CurrentChange.NewValueByName[fld_PresupuestosClientePRESUPUESTADOR] := Null;
end;
{ TCapitulosPresupuestoBusinessProcessorRules } { TCapitulosPresupuestoBusinessProcessorRules }
constructor TCapitulosPresupuestoBusinessProcessorRules.Create(aBusinessProcessor: TDABusinessProcessor); constructor TCapitulosPresupuestoBusinessProcessorRules.Create(aBusinessProcessor: TDABusinessProcessor);

View File

@ -35,7 +35,7 @@ type
property Detalles: IBizDetallesPresupuestoCliente read GetDetalles write SetDetalles; property Detalles: IBizDetallesPresupuestoCliente read GetDetalles write SetDetalles;
procedure CalcularImporteTotal; procedure CalcularImporteTotal;
procedure AsignarVendedor; procedure AsignarPresupuestador;
function EsNuevo : Boolean; function EsNuevo : Boolean;
function DarListaSituaciones: TStringList; function DarListaSituaciones: TStringList;
@ -84,7 +84,7 @@ type
function DarListaSituaciones: TStringList; function DarListaSituaciones: TStringList;
function EsNuevo : Boolean; function EsNuevo : Boolean;
procedure AsignarVendedor; procedure AsignarPresupuestador;
procedure CalcularImporteTotal; procedure CalcularImporteTotal;
property Cliente : IBizCliente read GetCliente write SetCliente; property Cliente : IBizCliente read GetCliente write SetCliente;
property _Cliente : IBizCliente read _GetCliente write _SetCliente; property _Cliente : IBizCliente read _GetCliente write _SetCliente;
@ -222,13 +222,13 @@ begin
inherited; inherited;
end; end;
procedure TBizPresupuestoCliente.AsignarVendedor; procedure TBizPresupuestoCliente.AsignarPresupuestador;
var var
AVendedoresController: IVendedoresController; AVendedoresController: IVendedoresController;
begin begin
AVendedoresController := TVendedoresController.Create; AVendedoresController := TVendedoresController.Create;
try try
ID_VENDEDOR := AVendedoresController.DarIDVendedorDeUsuario(AppFactuGES.UsuarioActivo.ID); ID_PRESUPUESTADOR := AVendedoresController.DarIDVendedorDeUsuario(AppFactuGES.UsuarioActivo.ID);
finally finally
AVendedoresController := nil; AVendedoresController := nil;
end; end;
@ -284,7 +284,7 @@ begin
// Self.DataTable.FieldByName(fld_PresupuestosClienteCALIDADES).AsString := AppFactuGES.CalidadesDocumentos; // Self.DataTable.FieldByName(fld_PresupuestosClienteCALIDADES).AsString := AppFactuGES.CalidadesDocumentos;
AsignarVendedor; AsignarPresupuestador;
end; end;
procedure TBizPresupuestoCliente.IVAOnChange(Sender: TDACustomField); procedure TBizPresupuestoCliente.IVAOnChange(Sender: TDACustomField);

View File

@ -346,6 +346,14 @@ object srvPresupuestosCliente: TsrvPresupuestosCliente
item item
DatasetField = 'FECHA_ULT_PRESENTACION_CLIENTE' DatasetField = 'FECHA_ULT_PRESENTACION_CLIENTE'
TableField = 'FECHA_ULT_PRESENTACION_CLIENTE' TableField = 'FECHA_ULT_PRESENTACION_CLIENTE'
end
item
DatasetField = 'PRESUPUESTADOR'
TableField = 'PRESUPUESTADOR'
end
item
DatasetField = 'ID_PRESUPUESTADOR'
TableField = 'ID_PRESUPUESTADOR'
end> end>
end> end>
Name = 'PresupuestosCliente' Name = 'PresupuestosCliente'
@ -591,6 +599,16 @@ object srvPresupuestosCliente: TsrvPresupuestosCliente
item item
Name = 'FECHA_ULT_PRESENTACION_CLIENTE' Name = 'FECHA_ULT_PRESENTACION_CLIENTE'
DataType = datDateTime DataType = datDateTime
end
item
Name = 'ID_PRESUPUESTADOR'
DataType = datInteger
end
item
Name = 'PRESUPUESTADOR'
DataType = datString
Size = 255
ServerAutoRefresh = True
end> end>
end end
item item
@ -1114,6 +1132,11 @@ object srvPresupuestosCliente: TsrvPresupuestosCliente
Name = 'FECHA_ULT_PRESENTACION_CLIENTE' Name = 'FECHA_ULT_PRESENTACION_CLIENTE'
DataType = datDateTime DataType = datDateTime
Value = '' Value = ''
end
item
Name = 'ID_PRESUPUESTADOR'
DataType = datInteger
Value = ''
end> end>
Statements = < Statements = <
item item
@ -1130,17 +1153,18 @@ object srvPresupuestosCliente: TsrvPresupuestosCliente
'_IVA,'#10' RE, IMPORTE_RE, RECARGO_EQUIVALENCIA, IMPORTE_TOTAL, ' + '_IVA,'#10' RE, IMPORTE_RE, RECARGO_EQUIVALENCIA, IMPORTE_TOTAL, ' +
'ID_FORMA_PAGO, ID_TIENDA, ID_VENDEDOR,'#10' ID_CONTRATO, NO_VALO' + 'ID_FORMA_PAGO, ID_TIENDA, ID_VENDEDOR,'#10' ID_CONTRATO, NO_VALO' +
'RADO, TIPO_PRESUPUESTO, CALIDADES, REFERENCIA_CLIENTE,'#10' ID_E' + 'RADO, TIPO_PRESUPUESTO, CALIDADES, REFERENCIA_CLIENTE,'#10' ID_E' +
'MPRESA, FECHA_ULT_PRESENTACION_CLIENTE)'#10' VALUES'#10' (:ID,'#10' ' + 'MPRESA, FECHA_ULT_PRESENTACION_CLIENTE, ID_PRESUPUESTADOR)'#10' VAL' +
':FECHA_PRESUPUESTO, :FECHA_VIGENCIA, :FECHA_DECISION, :REFERENCI' + 'UES'#10' (:ID,'#10' :FECHA_PRESUPUESTO, :FECHA_VIGENCIA, :FECHA_D' +
'A,'#10' :SITUACION, :ID_CLIENTE, :ID_DIRECCION, :PERSONA_CONTACT' + 'ECISION, :REFERENCIA,'#10' :SITUACION, :ID_CLIENTE, :ID_DIRECCIO' +
'O,'#10' :FORMA_PAGO, :PLAZO_ENTREGA, :OBSERVACIONES, :INCIDENCIA' + 'N, :PERSONA_CONTACTO,'#10' :FORMA_PAGO, :PLAZO_ENTREGA, :OBSERVA' +
'S,'#10' :INCIDENCIAS_ACTIVAS, CURRENT_TIMESTAMP, :USUARIO, :IMPO' + 'CIONES, :INCIDENCIAS,'#10' :INCIDENCIAS_ACTIVAS, CURRENT_TIMESTA' +
'RTE_NETO, :IMPORTE_PORTE,'#10' :DESCUENTO, :IMPORTE_DESCUENTO, :' + 'MP, :USUARIO, :IMPORTE_NETO, :IMPORTE_PORTE,'#10' :DESCUENTO, :I' +
'BASE_IMPONIBLE, :ID_TIPO_IVA, :IVA, :IMPORTE_IVA,'#10' :RE, :IMP' + 'MPORTE_DESCUENTO, :BASE_IMPONIBLE, :ID_TIPO_IVA, :IVA, :IMPORTE_' +
'ORTE_RE, :RECARGO_EQUIVALENCIA, :IMPORTE_TOTAL, :ID_FORMA_PAGO, ' + 'IVA,'#10' :RE, :IMPORTE_RE, :RECARGO_EQUIVALENCIA, :IMPORTE_TOTA' +
':ID_TIENDA, :ID_VENDEDOR,'#10' :ID_CONTRATO, :NO_VALORADO, :TIPO' + 'L, :ID_FORMA_PAGO, :ID_TIENDA, :ID_VENDEDOR,'#10' :ID_CONTRATO, ' +
'_PRESUPUESTO, :CALIDADES, :REFERENCIA_CLIENTE,'#10' :ID_EMPRESA,' + ':NO_VALORADO, :TIPO_PRESUPUESTO, :CALIDADES, :REFERENCIA_CLIENTE' +
' :FECHA_ULT_PRESENTACION_CLIENTE)'#10' '#10#10#10#10#10 ','#10' :ID_EMPRESA, :FECHA_ULT_PRESENTACION_CLIENTE, :ID_PRESUPU' +
'ESTADOR)'#10' '#10#10#10#10#10
StatementType = stSQL StatementType = stSQL
ColumnMappings = <> ColumnMappings = <>
end> end>
@ -1359,6 +1383,11 @@ object srvPresupuestosCliente: TsrvPresupuestosCliente
DataType = datDateTime DataType = datDateTime
Value = '' Value = ''
end end
item
Name = 'ID_PRESUPUESTADOR'
DataType = datInteger
Value = ''
end
item item
Name = 'OLD_ID' Name = 'OLD_ID'
Value = '' Value = ''
@ -1390,7 +1419,8 @@ object srvPresupuestosCliente: TsrvPresupuestosCliente
'TIPO_PRESUPUESTO = :TIPO_PRESUPUESTO,'#10' CALIDADES = :CALIDADES' + 'TIPO_PRESUPUESTO = :TIPO_PRESUPUESTO,'#10' CALIDADES = :CALIDADES' +
','#10' REFERENCIA_CLIENTE = :REFERENCIA_CLIENTE,'#10' ID_EMPRESA =' + ','#10' REFERENCIA_CLIENTE = :REFERENCIA_CLIENTE,'#10' ID_EMPRESA =' +
' :ID_EMPRESA,'#10' FECHA_ULT_PRESENTACION_CLIENTE = :FECHA_ULT_PR' + ' :ID_EMPRESA,'#10' FECHA_ULT_PRESENTACION_CLIENTE = :FECHA_ULT_PR' +
'ESENTACION_CLIENTE'#10' WHERE'#10' (ID = :OLD_ID)'#10#10 'ESENTACION_CLIENTE,'#10' ID_PRESUPUESTADOR = :ID_PRESUPUESTADOR'#10' ' +
' WHERE'#10' (ID = :OLD_ID)'#10#10
StatementType = stSQL StatementType = stSQL
ColumnMappings = <> ColumnMappings = <>
end> end>

View File

@ -185,11 +185,15 @@ inherited fEditorPresupuestoCliente: TfEditorPresupuestoCliente
inherited pgPaginas: TPageControl inherited pgPaginas: TPageControl
Width = 842 Width = 842
Height = 440 Height = 440
ActivePage = pagContenido
TabOrder = 1 TabOrder = 1
OnChanging = pgPaginasChanging OnChanging = pgPaginasChanging
ExplicitTop = 111
ExplicitWidth = 842 ExplicitWidth = 842
ExplicitHeight = 440 ExplicitHeight = 440
inherited pagGeneral: TTabSheet inherited pagGeneral: TTabSheet
ExplicitLeft = 4
ExplicitTop = 24
ExplicitWidth = 834 ExplicitWidth = 834
ExplicitHeight = 412 ExplicitHeight = 412
inline frViewPresupuestoCliente1: TfrViewPresupuestoCliente inline frViewPresupuestoCliente1: TfrViewPresupuestoCliente
@ -291,8 +295,8 @@ inherited fEditorPresupuestoCliente: TfEditorPresupuestoCliente
Width = 475 Width = 475
end end
inherited memPlazoEntrega: TcxDBMemo inherited memPlazoEntrega: TcxDBMemo
Top = 407 Top = 434
ExplicitTop = 407 ExplicitTop = 434
ExplicitWidth = 396 ExplicitWidth = 396
ExplicitHeight = 100 ExplicitHeight = 100
Height = 100 Height = 100
@ -353,89 +357,106 @@ inherited fEditorPresupuestoCliente: TfEditorPresupuestoCliente
ExplicitHeight = 412 ExplicitHeight = 412
inherited ToolBar1: TToolBar inherited ToolBar1: TToolBar
Width = 834 Width = 834
Height = 46
ExplicitWidth = 834 ExplicitWidth = 834
inherited FontName: TJvFontComboBox ExplicitHeight = 46
ExplicitLeft = 368 inherited ToolButton3: TToolButton
Wrap = False
end
inherited ToolButton4: TToolButton
Left = 278
Top = 0
Wrap = True
ExplicitLeft = 278
ExplicitTop = 0 ExplicitTop = 0
end end
inherited ToolButton14: TToolButton
Left = 0
Wrap = False
ExplicitLeft = 0
end
inherited FontName: TJvFontComboBox
Left = 34
Top = 22
ExplicitLeft = 34
ExplicitTop = 22
end
inherited FontSize: TEdit inherited FontSize: TEdit
Left = 513 Left = 179
Top = 0 Top = 22
Width = 58 ExplicitLeft = 179
ExplicitLeft = 513 ExplicitTop = 22
ExplicitTop = 0
ExplicitWidth = 58
end end
inherited UpDown1: TUpDown inherited UpDown1: TUpDown
Left = 571 Left = 301
Top = 0 Top = 22
ExplicitLeft = 571 ExplicitLeft = 301
ExplicitTop = 0 ExplicitTop = 22
end end
inherited ToolButton13: TToolButton inherited ToolButton13: TToolButton
Left = 588 Left = 318
Top = 0 Top = 22
ExplicitLeft = 588 ExplicitLeft = 318
ExplicitTop = 0 ExplicitTop = 22
end end
inherited ToolButton6: TToolButton inherited ToolButton6: TToolButton
Left = 596 Left = 326
Top = 0 Top = 22
ExplicitLeft = 596 ExplicitLeft = 326
ExplicitTop = 0 ExplicitTop = 22
end end
inherited ToolButton7: TToolButton inherited ToolButton7: TToolButton
Left = 630 Left = 360
Top = 0 Top = 22
ExplicitLeft = 630 ExplicitLeft = 360
ExplicitTop = 0 ExplicitTop = 22
end end
inherited ToolButton8: TToolButton inherited ToolButton8: TToolButton
Left = 664 Left = 394
Top = 0 Top = 22
ExplicitLeft = 664 ExplicitLeft = 394
ExplicitTop = 0 ExplicitTop = 22
end end
inherited ToolButton12: TToolButton inherited ToolButton12: TToolButton
Left = 698 Left = 428
Top = 0 Top = 22
ExplicitLeft = 698 ExplicitLeft = 428
ExplicitTop = 0 ExplicitTop = 22
end end
inherited ToolButton9: TToolButton inherited ToolButton9: TToolButton
Left = 706 Left = 436
Top = 0 Top = 22
ExplicitLeft = 706 ExplicitLeft = 436
ExplicitTop = 0 ExplicitTop = 22
end end
inherited ToolButton10: TToolButton inherited ToolButton10: TToolButton
Left = 740 Left = 470
Top = 0 Top = 22
ExplicitLeft = 740 ExplicitLeft = 470
ExplicitTop = 0 ExplicitTop = 22
end end
inherited ToolButton11: TToolButton inherited ToolButton11: TToolButton
Left = 774 Left = 504
Top = 0 Top = 22
ExplicitLeft = 774 ExplicitLeft = 504
ExplicitTop = 0 ExplicitTop = 22
end end
end end
inherited cxGrid: TcxGrid inherited cxGrid: TcxGrid
Top = 50 Top = 72
Width = 834 Width = 834
Height = 362 Height = 340
ExplicitTop = 50 ExplicitTop = 72
ExplicitWidth = 834 ExplicitWidth = 834
ExplicitHeight = 364 ExplicitHeight = 340
end end
inherited TBXDock1: TTBXDock inherited TBXDock1: TTBXDock
Top = 24 Top = 46
Width = 834 Width = 834
ExplicitTop = 24 ExplicitTop = 46
ExplicitWidth = 834 ExplicitWidth = 834
inherited TBXToolbar1: TTBXToolbar inherited TBXToolbar1: TTBXToolbar
ExplicitWidth = 718 ExplicitWidth = 806
end end
end end
inherited cxLookupComboBox1: TcxLookupComboBox inherited cxLookupComboBox1: TcxLookupComboBox
@ -447,6 +468,13 @@ inherited fEditorPresupuestoCliente: TfEditorPresupuestoCliente
inherited cxLookupComboBox2: TcxLookupComboBox inherited cxLookupComboBox2: TcxLookupComboBox
Style.IsFontAssigned = True Style.IsFontAssigned = True
end end
inherited ActionListContenido: TActionList
inherited actDesglosarIVA: TAction
Enabled = True
Visible = True
OnExecute = frViewDetallesPresupuestoCliente1actDesglosarIVAExecute
end
end
end end
end end
object pagCalidades: TTabSheet object pagCalidades: TTabSheet
@ -526,7 +554,7 @@ inherited fEditorPresupuestoCliente: TfEditorPresupuestoCliente
Width = 834 Width = 834
Height = 384 Height = 384
ExplicitWidth = 834 ExplicitWidth = 834
ExplicitHeight = 386 ExplicitHeight = 384
inherited eIncidencias: TcxDBMemo inherited eIncidencias: TcxDBMemo
ExplicitWidth = 830 ExplicitWidth = 830
ExplicitHeight = 367 ExplicitHeight = 367
@ -563,8 +591,9 @@ inherited fEditorPresupuestoCliente: TfEditorPresupuestoCliente
inherited ListView1: TListView inherited ListView1: TListView
Width = 834 Width = 834
Height = 387 Height = 387
ExplicitTop = 25
ExplicitWidth = 834 ExplicitWidth = 834
ExplicitHeight = 391 ExplicitHeight = 387
end end
inherited EditorActionList: TActionList inherited EditorActionList: TActionList
Left = 8 Left = 8
@ -575,6 +604,7 @@ inherited fEditorPresupuestoCliente: TfEditorPresupuestoCliente
end end
inherited PnlComentario: TPanel inherited PnlComentario: TPanel
Width = 848 Width = 848
ExplicitTop = 78
ExplicitWidth = 848 ExplicitWidth = 848
inherited lbComentario: TLabel inherited lbComentario: TLabel
Width = 838 Width = 838

View File

@ -55,11 +55,12 @@ type
procedure actEnviarPorEMailUpdate(Sender: TObject); procedure actEnviarPorEMailUpdate(Sender: TObject);
procedure actEliminarUpdate(Sender: TObject); procedure actEliminarUpdate(Sender: TObject);
procedure frViewTotales1bTiposIVAClick(Sender: TObject); procedure frViewTotales1bTiposIVAClick(Sender: TObject);
procedure frViewTotales1eIVAPropertiesValidate(Sender: TObject; procedure frViewTotales1eIVAPropertiesValidate(Sender: TObject; var DisplayValue: Variant; var ErrorText: TCaption; var Error: Boolean);
var DisplayValue: Variant; var ErrorText: TCaption; var Error: Boolean); procedure OnRecargoEquivalenciaPropertiesValidate(Sender: TObject; var DisplayValue: Variant; var ErrorText: TCaption; var Error: Boolean);
procedure OnRecargoEquivalenciaPropertiesValidate(Sender: TObject; var DisplayValue: Variant; var ErrorText: TCaption; procedure pagDocumentosShow(Sender: TObject);
var Error: Boolean); procedure frViewDetallesPresupuestoCliente1actDesglosarIVAExecute(Sender: TObject);
procedure pagDocumentosShow(Sender: TObject); //Importante en este punto se deben de quitar los eventos que puedan afectar a la tabla una vez se cierre el editor.
//Importante en este punto se deben de quitar los eventos que puedan afectar a la tabla una vez se cierre el editor.
private private
procedure RecalcularPortePorUnidad; procedure RecalcularPortePorUnidad;
@ -109,7 +110,7 @@ type
implementation implementation
uses uses
uViewDatosYSeleccionCliente, uDataModuleUsuarios, uClientesController, Dialogs, cxDataUtils, uViewDatosYSeleccionCliente, uDataModuleUsuarios, uClientesController,
uBizDireccionesContacto, uDialogUtils, uFactuGES_App, uDataTableUtils; uBizDireccionesContacto, uDialogUtils, uFactuGES_App, uDataTableUtils;
{$R *.dfm} {$R *.dfm}
@ -122,8 +123,21 @@ uses
procedure TfEditorPresupuestoCliente.actEliminarUpdate(Sender: TObject); procedure TfEditorPresupuestoCliente.actEliminarUpdate(Sender: TObject);
begin begin
inherited; inherited;
// if (Sender as TAction).Enabled then if (FPresupuesto.SITUACION = SITUACION_PRESUPUESTO_ACEPTADO) then
// (Sender as TAction).Enabled := (FPresupuesto.SITUACION = SITUACION_PRESUPUESTO_PENDIENTE); begin
(Sender as TAction).Enabled := false;
exit;
end;
if ((AppFactuGES.UsuarioActivo.ID_PERFIL = CTE_PREFIL_GERENCIA_COMUN)
or (AppFactuGES.UsuarioActivo.ID_PERFIL = CTE_PERFIL_ADMINISTRADOR))
and (lblDesbloquear.Visible = false) then
begin
(Sender as TAction).Enabled := True;
exit;
end;
if not Controller.EsModificable(Presupuesto) then
(Sender as TAction).Enabled := False; (Sender as TAction).Enabled := False;
end; end;
@ -165,8 +179,7 @@ begin
FTiposIVAController := TTiposIVAController.Create; FTiposIVAController := TTiposIVAController.Create;
end; end;
procedure TfEditorPresupuestoCliente.CustomEditorClose(Sender: TObject; procedure TfEditorPresupuestoCliente.CustomEditorClose(Sender: TObject; var Action: TCloseAction);
var Action: TCloseAction);
begin begin
inherited; inherited;
frViewDetallesPresupuestoCliente1.SaveGridStatus; frViewDetallesPresupuestoCliente1.SaveGridStatus;
@ -184,6 +197,7 @@ end;
destructor TfEditorPresupuestoCliente.Destroy; destructor TfEditorPresupuestoCliente.Destroy;
begin begin
// Utilizar mejor OnClose; // Utilizar mejor OnClose;
frViewDetallesPresupuestoCliente1.cxGridViewIMPORTEUNIDAD.Properties.OnEditValueChanged := Nil;
inherited; inherited;
end; end;
@ -206,6 +220,18 @@ begin
if not Assigned(Presupuesto) then if not Assigned(Presupuesto) then
raise Exception.Create('No hay ningún presupuesto asignado'); raise Exception.Create('No hay ningún presupuesto asignado');
//El usuario GERENCIA)
if (AppFactuGES.UsuarioActivo.ID_PERFIL = CTE_PREFIL_GERENCIA_COMUN)
or (AppFactuGES.UsuarioActivo.ID_PERFIL = CTE_PERFIL_ADMINISTRADOR) then
begin
lblDesbloquear.Visible := True;
if not Controller.EsModificable(Presupuesto) then
lblDesbloquear.Enabled := True
else
lblDesbloquear.Enabled := False;
end;
frViewTotales1.cbRecargoEquivalencia.Properties.OnValidate := OnRecargoEquivalenciaPropertiesValidate; frViewTotales1.cbRecargoEquivalencia.Properties.OnValidate := OnRecargoEquivalenciaPropertiesValidate;
pgPaginas.ActivePage := pagGeneral; pgPaginas.ActivePage := pagGeneral;
@ -213,6 +239,17 @@ begin
frViewDetallesPresupuestoCliente1.RestoreGridStatus; frViewDetallesPresupuestoCliente1.RestoreGridStatus;
end; end;
procedure TfEditorPresupuestoCliente.frViewDetallesPresupuestoCliente1actDesglosarIVAExecute(Sender: TObject);
begin
inherited;
try
ShowHourglassCursor;
Controller.RecalcularImportes(Presupuesto, True);
finally
HideHourglassCursor;
end;
end;
procedure TfEditorPresupuestoCliente.frViewTotales1bTiposIVAClick( procedure TfEditorPresupuestoCliente.frViewTotales1bTiposIVAClick(
Sender: TObject); Sender: TObject);
begin begin
@ -327,7 +364,6 @@ procedure TfEditorPresupuestoCliente.OnRecargoEquivalenciaPropertiesValidate(
Sender: TObject; var DisplayValue: Variant; var ErrorText: TCaption; Sender: TObject; var DisplayValue: Variant; var ErrorText: TCaption;
var Error: Boolean); var Error: Boolean);
begin begin
if frViewTotales1.cbRecargoEquivalencia.Checked then if frViewTotales1.cbRecargoEquivalencia.Checked then
Presupuesto.RECARGO_EQUIVALENCIA := 1 Presupuesto.RECARGO_EQUIVALENCIA := 1
else else

View File

@ -1,5 +1,89 @@
inherited frViewDetallesPresupuestoCliente: TfrViewDetallesPresupuestoCliente inherited frViewDetallesPresupuestoCliente: TfrViewDetallesPresupuestoCliente
Width = 872
Height = 481
inherited ToolBar1: TToolBar
Width = 872
ButtonWidth = 123
ExplicitHeight = 73
inherited ToolButton1: TToolButton
ExplicitWidth = 119
end
inherited ToolButton2: TToolButton
Left = 119
ExplicitLeft = 119
ExplicitWidth = 127
end
inherited ToolButton3: TToolButton
Left = 246
ExplicitLeft = 246
ExplicitWidth = 58
end
inherited ToolButton4: TToolButton
Left = 304
Wrap = False
ExplicitLeft = 304
ExplicitWidth = 57
end
inherited ToolButton14: TToolButton
Left = 361
Top = 0
Wrap = True
ExplicitLeft = 361
ExplicitTop = 0
end
inherited FontName: TJvFontComboBox
Left = 0
ExplicitLeft = 0
end
inherited ToolButton13: TToolButton [6]
Left = 145
ExplicitLeft = 145
end
inherited ToolButton6: TToolButton [7]
Left = 153
ExplicitLeft = 153
end
inherited ToolButton7: TToolButton [8]
Left = 187
ExplicitLeft = 187
end
inherited ToolButton8: TToolButton [9]
Left = 221
ExplicitLeft = 221
end
inherited ToolButton12: TToolButton [10]
Left = 255
ExplicitLeft = 255
end
inherited ToolButton9: TToolButton [11]
Left = 263
ExplicitLeft = 263
end
inherited ToolButton10: TToolButton [12]
Left = 297
ExplicitLeft = 297
end
inherited ToolButton11: TToolButton [13]
Left = 331
ExplicitLeft = 331
end
inherited FontSize: TEdit [14]
Left = 365
Width = 122
ExplicitLeft = 365
ExplicitWidth = 122
end
inherited UpDown1: TUpDown [15]
Left = 487
ExplicitLeft = 487
end
end
inherited cxGrid: TcxGrid inherited cxGrid: TcxGrid
Width = 872
Height = 409
ExplicitTop = 99
ExplicitWidth = 451
ExplicitHeight = 205
inherited cxGridView: TcxGridDBTableView inherited cxGridView: TcxGridDBTableView
inherited cxGridViewTIPO: TcxGridDBColumn inherited cxGridViewTIPO: TcxGridDBColumn
VisibleForCustomization = False VisibleForCustomization = False
@ -72,8 +156,12 @@ inherited frViewDetallesPresupuestoCliente: TfrViewDetallesPresupuestoCliente
end end
end end
inherited TBXDock1: TTBXDock inherited TBXDock1: TTBXDock
Width = 872
ExplicitTop = 73
ExplicitWidth = 451
inherited TBXToolbar1: TTBXToolbar inherited TBXToolbar1: TTBXToolbar
DockPos = 0 DockPos = 0
ExplicitWidth = 806
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
@ -115,11 +203,15 @@ inherited frViewDetallesPresupuestoCliente: TfrViewDetallesPresupuestoCliente
end end
object TBXSeparatorItem6: TTBXSeparatorItem [3] object TBXSeparatorItem6: TTBXSeparatorItem [3]
end end
object TBXSeparatorItem9: TTBXSeparatorItem object TBXSeparatorItem9: TTBXSeparatorItem [20]
end end
object TBXItem18: TTBXItem object TBXItem18: TTBXItem [21]
Action = actAsignarDescuento Action = actAsignarDescuento
end end
inherited TBXItem23: TTBXItem
Action = actDesglosarIVA
DisplayMode = nbdmImageAndText
end
end end
end end
object cxLookupComboBox1: TcxLookupComboBox [3] object cxLookupComboBox1: TcxLookupComboBox [3]
@ -190,7 +282,7 @@ inherited frViewDetallesPresupuestoCliente: TfrViewDetallesPresupuestoCliente
Width = 145 Width = 145
end end
inherited ActionListContenido: TActionList inherited ActionListContenido: TActionList
object actAsignarDescuento: TAction object actAsignarDescuento: TAction [14]
Category = 'Operaciones' Category = 'Operaciones'
Caption = 'Asignar descuento' Caption = 'Asignar descuento'
Enabled = False Enabled = False
@ -198,46 +290,50 @@ inherited frViewDetallesPresupuestoCliente: TfrViewDetallesPresupuestoCliente
OnExecute = actAsignarDescuentoExecute OnExecute = actAsignarDescuentoExecute
OnUpdate = actAsignarDescuentoUpdate OnUpdate = actAsignarDescuentoUpdate
end end
object actCapituloArmarioF: TAction object actCapituloArmarioF: TAction [15]
Category = 'Operaciones' Category = 'Operaciones'
Caption = 'Capitulo frente de armario' Caption = 'Capitulo frente de armario'
OnExecute = actCapituloArmarioFExecute OnExecute = actCapituloArmarioFExecute
end end
object actCapituloArmarioI: TAction object actCapituloArmarioI: TAction [16]
Category = 'Operaciones' Category = 'Operaciones'
Caption = 'Capitulo interior de armario' Caption = 'Capitulo interior de armario'
OnExecute = actCapituloArmarioIExecute OnExecute = actCapituloArmarioIExecute
end end
object actCapituloBano: TAction object actCapituloBano: TAction [17]
Category = 'Operaciones' Category = 'Operaciones'
Caption = 'Capitulo de ba'#241'o' Caption = 'Capitulo de ba'#241'o'
OnExecute = actCapituloBanoExecute OnExecute = actCapituloBanoExecute
end end
object actCapituloCocina: TAction object actCapituloCocina: TAction [18]
Category = 'Operaciones' Category = 'Operaciones'
Caption = 'Cap'#237'tulo de cocina' Caption = 'Cap'#237'tulo de cocina'
OnExecute = actCapituloCocinaExecute OnExecute = actCapituloCocinaExecute
end end
object actCapituloElectrodomesticos: TAction object actCapituloElectrodomesticos: TAction [19]
Category = 'Operaciones' Category = 'Operaciones'
Caption = 'Cap'#237'tulo de Electrodom'#233'sticos' Caption = 'Cap'#237'tulo de Electrodom'#233'sticos'
OnExecute = actCapituloElectrodomesticosExecute OnExecute = actCapituloElectrodomesticosExecute
end end
object actCapituloVarios: TAction object actCapituloVarios: TAction [20]
Category = 'Operaciones' Category = 'Operaciones'
Caption = 'Cap'#237'tulo de varios' Caption = 'Cap'#237'tulo de varios'
OnExecute = actCapituloVariosExecute OnExecute = actCapituloVariosExecute
end end
object actCapituloImportes: TAction object actCapituloImportes: TAction [21]
Category = 'Operaciones' Category = 'Operaciones'
Caption = 'Capitulo de importes' Caption = 'Capitulo de importes'
OnExecute = actCapituloImportesExecute OnExecute = actCapituloImportesExecute
end end
object actCapituloObra: TAction object actCapituloObra: TAction [22]
Category = 'Operaciones' Category = 'Operaciones'
Caption = 'Cap'#237'tulo de obra' Caption = 'Cap'#237'tulo de obra'
OnExecute = actCapituloObraExecute OnExecute = actCapituloObraExecute
end end
inherited actDesglosarIVA: TAction
OnExecute = nil
OnUpdate = nil
end
end end
inherited cxStyleRepository: TcxStyleRepository inherited cxStyleRepository: TcxStyleRepository
inherited cxStyle_IMPORTETOTAL: TcxStyle inherited cxStyle_IMPORTETOTAL: TcxStyle

View File

@ -59,7 +59,7 @@ inherited frViewPresupuestoCliente: TfrViewPresupuestoCliente
StyleFocused.LookAndFeel.NativeStyle = True StyleFocused.LookAndFeel.NativeStyle = True
StyleHot.LookAndFeel.Kind = lfStandard StyleHot.LookAndFeel.Kind = lfStandard
StyleHot.LookAndFeel.NativeStyle = True StyleHot.LookAndFeel.NativeStyle = True
TabOrder = 15 TabOrder = 16
Height = 245 Height = 245
Width = 793 Width = 793
end end
@ -221,7 +221,7 @@ inherited frViewPresupuestoCliente: TfrViewPresupuestoCliente
Font.Name = 'Tahoma' Font.Name = 'Tahoma'
Font.Style = [] Font.Style = []
ParentFont = False ParentFont = False
TabOrder = 14 TabOrder = 15
ReadOnly = False ReadOnly = False
ExplicitLeft = 440 ExplicitLeft = 440
ExplicitTop = 28 ExplicitTop = 28
@ -268,7 +268,7 @@ inherited frViewPresupuestoCliente: TfrViewPresupuestoCliente
end end
object memFormaPago: TcxDBMemo object memFormaPago: TcxDBMemo
Left = 22 Left = 22
Top = 351 Top = 378
Anchors = [akLeft, akTop, akRight, akBottom] Anchors = [akLeft, akTop, akRight, akBottom]
DataBinding.DataField = 'FORMA_PAGO' DataBinding.DataField = 'FORMA_PAGO'
DataBinding.DataSource = DADataSource DataBinding.DataSource = DADataSource
@ -284,13 +284,13 @@ inherited frViewPresupuestoCliente: TfrViewPresupuestoCliente
StyleFocused.LookAndFeel.NativeStyle = True StyleFocused.LookAndFeel.NativeStyle = True
StyleHot.LookAndFeel.Kind = lfStandard StyleHot.LookAndFeel.Kind = lfStandard
StyleHot.LookAndFeel.NativeStyle = True StyleHot.LookAndFeel.NativeStyle = True
TabOrder = 12 TabOrder = 13
Height = 44 Height = 44
Width = 475 Width = 475
end end
object memPlazoEntrega: TcxDBMemo object memPlazoEntrega: TcxDBMemo
Left = 22 Left = 22
Top = 432 Top = 449
Anchors = [akLeft, akTop, akRight, akBottom] Anchors = [akLeft, akTop, akRight, akBottom]
DataBinding.DataField = 'PLAZO_ENTREGA' DataBinding.DataField = 'PLAZO_ENTREGA'
DataBinding.DataSource = DADataSource DataBinding.DataSource = DADataSource
@ -306,7 +306,7 @@ inherited frViewPresupuestoCliente: TfrViewPresupuestoCliente
StyleFocused.LookAndFeel.NativeStyle = True StyleFocused.LookAndFeel.NativeStyle = True
StyleHot.LookAndFeel.Kind = lfStandard StyleHot.LookAndFeel.Kind = lfStandard
StyleHot.LookAndFeel.NativeStyle = True StyleHot.LookAndFeel.NativeStyle = True
TabOrder = 13 TabOrder = 14
Height = 100 Height = 100
Width = 396 Width = 396
end end
@ -384,13 +384,13 @@ inherited frViewPresupuestoCliente: TfrViewPresupuestoCliente
end end
inline frViewTienda1: TfrViewTienda inline frViewTienda1: TfrViewTienda
Left = 22 Left = 22
Top = 274 Top = 301
Width = 451 Width = 451
Height = 41 Height = 41
TabOrder = 11 TabOrder = 12
ReadOnly = False ReadOnly = False
ExplicitLeft = 22 ExplicitLeft = 22
ExplicitTop = 274 ExplicitTop = 301
end end
object edtFechaUltRevision: TcxDBDateEdit object edtFechaUltRevision: TcxDBDateEdit
Left = 131 Left = 131
@ -415,6 +415,36 @@ inherited frViewPresupuestoCliente: TfrViewPresupuestoCliente
TabOrder = 4 TabOrder = 4
Width = 111 Width = 111
end end
object cbPresupuestador: TcxDBLookupComboBox
Left = 131
Top = 244
DataBinding.DataField = 'ID_PRESUPUESTADOR'
DataBinding.DataSource = DADataSource
Properties.KeyFieldNames = 'ID'
Properties.ListColumns = <
item
FieldName = 'NOMBRE'
end>
Properties.ListOptions.GridLines = glNone
Properties.ListOptions.ShowHeader = False
Properties.ListOptions.SyncMode = True
Properties.ListSource = dsPresupuestador
Style.BorderColor = clWindowFrame
Style.BorderStyle = ebs3D
Style.HotTrack = False
Style.LookAndFeel.Kind = lfStandard
Style.LookAndFeel.NativeStyle = True
Style.ButtonStyle = bts3D
Style.PopupBorderStyle = epbsFrame3D
StyleDisabled.LookAndFeel.Kind = lfStandard
StyleDisabled.LookAndFeel.NativeStyle = True
StyleFocused.LookAndFeel.Kind = lfStandard
StyleFocused.LookAndFeel.NativeStyle = True
StyleHot.LookAndFeel.Kind = lfStandard
StyleHot.LookAndFeel.NativeStyle = True
TabOrder = 11
Width = 279
end
object dxLayoutControl1Group_Root: TdxLayoutGroup object dxLayoutControl1Group_Root: TdxLayoutGroup
ShowCaption = False ShowCaption = False
Hidden = True Hidden = True
@ -532,6 +562,11 @@ inherited frViewPresupuestoCliente: TfrViewPresupuestoCliente
Control = cbVendedor Control = cbVendedor
ControlOptions.ShowBorder = False ControlOptions.ShowBorder = False
end end
object dxLayoutControl1Item17: TdxLayoutItem
Caption = 'Presupuestador:'
Control = cbPresupuestador
ControlOptions.ShowBorder = False
end
end end
end end
object dxLayoutControl1Group13: TdxLayoutGroup object dxLayoutControl1Group13: TdxLayoutGroup
@ -615,4 +650,8 @@ inherited frViewPresupuestoCliente: TfrViewPresupuestoCliente
Left = 80 Left = 80
Top = 16 Top = 16
end end
object dsPresupuestador: TDADataSource
Left = 80
Top = 64
end
end end

View File

@ -78,6 +78,9 @@ type
dxLayoutControl1Item16: TdxLayoutItem; dxLayoutControl1Item16: TdxLayoutItem;
edtFechaUltRevision: TcxDBDateEdit; edtFechaUltRevision: TcxDBDateEdit;
dxLayoutControl1Group14: TdxLayoutGroup; dxLayoutControl1Group14: TdxLayoutGroup;
dxLayoutControl1Item17: TdxLayoutItem;
cbPresupuestador: TcxDBLookupComboBox;
dsPresupuestador: TDADataSource;
procedure CustomViewCreate(Sender: TObject); procedure CustomViewCreate(Sender: TObject);
procedure CustomViewDestroy(Sender: TObject); procedure CustomViewDestroy(Sender: TObject);
procedure bFormasPagoClick(Sender: TObject); procedure bFormasPagoClick(Sender: TObject);
@ -87,6 +90,7 @@ type
FPresupuesto : IBizPresupuestoCliente; FPresupuesto : IBizPresupuestoCliente;
FFormasPago : IBizFormaPago; FFormasPago : IBizFormaPago;
FVendedor : IBizVendedor; FVendedor : IBizVendedor;
FPresupuestador : IBizVendedor;
FFormasPagoController : IFormasPagoController; FFormasPagoController : IFormasPagoController;
FVendedoresController : IVendedoresController; FVendedoresController : IVendedoresController;
FViewClientePresupuesto : IViewDatosYSeleccionClientePresupuesto; FViewClientePresupuesto : IViewDatosYSeleccionClientePresupuesto;
@ -121,6 +125,7 @@ begin
inherited; inherited;
FFormasPago := Nil; FFormasPago := Nil;
FVendedor := Nil; FVendedor := Nil;
FPresupuestador := Nil;
FFormasPagoController := TFormasPagoController.Create; FFormasPagoController := TFormasPagoController.Create;
FVendedoresController := TVendedoresController.Create; FVendedoresController := TVendedoresController.Create;
FViewClientePresupuesto := frViewDatosYSeleccionClientePresupuesto1; FViewClientePresupuesto := frViewDatosYSeleccionClientePresupuesto1;
@ -167,6 +172,7 @@ begin
FFormasPago := Nil; FFormasPago := Nil;
FFormasPagoController := NIL; FFormasPagoController := NIL;
FVendedor := Nil; FVendedor := Nil;
FPresupuestador := Nil;
FVendedoresController := NIL; FVendedoresController := NIL;
FViewClientePresupuesto := NIL; FViewClientePresupuesto := NIL;
end; end;
@ -219,12 +225,17 @@ begin
dsVendedor.DataTable := FVendedor.DataTable; dsVendedor.DataTable := FVendedor.DataTable;
dsVendedor.DataTable.Active := True; dsVendedor.DataTable.Active := True;
FPresupuestador := (FVendedoresController.BuscarTodos as IBizVendedor);
dsPresupuestador.DataTable := FPresupuestador.DataTable;
dsPresupuestador.DataTable.Active := True;
FViewClientePresupuesto.Presupuesto := FPresupuesto; FViewClientePresupuesto.Presupuesto := FPresupuesto;
end end
else begin else begin
DADataSource.DataTable := NIL; DADataSource.DataTable := NIL;
dsFormaPago.DataTable := NIL; dsFormaPago.DataTable := NIL;
dsVendedor.DataTable := NIL; dsVendedor.DataTable := NIL;
dsPresupuestador.DataTable := NIL;
FViewClientePresupuesto.Presupuesto := Nil; FViewClientePresupuesto.Presupuesto := Nil;
end; end;
end; end;

View File

@ -182,6 +182,12 @@ inherited frViewPresupuestosCliente: TfrViewPresupuestosCliente
Caption = 'Fecha '#250'lt. actualizaci'#243'n' Caption = 'Fecha '#250'lt. actualizaci'#243'n'
DataBinding.FieldName = 'FECHA_ULT_PRESENTACION_CLIENTE' DataBinding.FieldName = 'FECHA_ULT_PRESENTACION_CLIENTE'
end end
object cxGridViewPRESUPUESTADOR: TcxGridDBColumn
Caption = 'Presupuestador'
DataBinding.FieldName = 'PRESUPUESTADOR'
PropertiesClassName = 'TcxTextEditProperties'
Properties.Alignment.Horz = taLeftJustify
end
end end
inherited cxGridLevel: TcxGridLevel inherited cxGridLevel: TcxGridLevel
Caption = 'Todos' Caption = 'Todos'
@ -593,7 +599,7 @@ inherited frViewPresupuestosCliente: TfrViewPresupuestosCliente
end end
object cxStylePLANTILLA: TcxStyle object cxStylePLANTILLA: TcxStyle
AssignedValues = [svTextColor] AssignedValues = [svTextColor]
TextColor = 33023 TextColor = 121
end end
end end
end end

View File

@ -58,6 +58,7 @@ type
cxGridViewFECHA_ULT_PRESENTACION_CLIENTE: TcxGridDBColumn; cxGridViewFECHA_ULT_PRESENTACION_CLIENTE: TcxGridDBColumn;
cxGridPlantillas: TcxGridLevel; cxGridPlantillas: TcxGridLevel;
cxStylePLANTILLA: TcxStyle; cxStylePLANTILLA: TcxStyle;
cxGridViewPRESUPUESTADOR: TcxGridDBColumn;
procedure cxGridActiveTabChanged(Sender: TcxCustomGrid; ALevel: procedure cxGridActiveTabChanged(Sender: TcxCustomGrid; ALevel:
TcxGridLevel); TcxGridLevel);
procedure cxGridViewStylesGetContentStyle(Sender: TcxCustomGridTableView; procedure cxGridViewStylesGetContentStyle(Sender: TcxCustomGridTableView;

View File

@ -152,6 +152,7 @@ begin
AContrato.IMPORTE_TOTAL := APresupuesto.IMPORTE_TOTAL; AContrato.IMPORTE_TOTAL := APresupuesto.IMPORTE_TOTAL;
AContrato.ID_TIENDA := APresupuesto.ID_TIENDA; AContrato.ID_TIENDA := APresupuesto.ID_TIENDA;
AContrato.TIENDA := APresupuesto.TIENDA; AContrato.TIENDA := APresupuesto.TIENDA;
AContrato.ID_PRESUPUESTADOR := APresupuesto.ID_PRESUPUESTADOR;
// AContrato.ID_VENDEDOR := APresupuesto.ID_VENDEDOR; // AContrato.ID_VENDEDOR := APresupuesto.ID_VENDEDOR;
AContrato.RECARGO_EQUIVALENCIA := APresupuesto.RECARGO_EQUIVALENCIA; AContrato.RECARGO_EQUIVALENCIA := APresupuesto.RECARGO_EQUIVALENCIA;
AContrato.RE := APresupuesto.RE; AContrato.RE := APresupuesto.RE;

View File

@ -400,6 +400,8 @@
</Parameter> </Parameter>
<Parameter Name="VerIncidencias" DataType="Boolean" Flag="In" > <Parameter Name="VerIncidencias" DataType="Boolean" Flag="In" >
</Parameter> </Parameter>
<Parameter Name="VerSoloTotales" DataType="Boolean" Flag="In" >
</Parameter>
</Parameters> </Parameters>
</Operation> </Operation>
<Operation Name="GenerarInformeEtiquetas" UID="{260CD213-F125-422B-9BD1-401729460DF0}"> <Operation Name="GenerarInformeEtiquetas" UID="{260CD213-F125-422B-9BD1-401729460DF0}">
@ -997,7 +999,7 @@
</Array> </Array>
</Arrays> </Arrays>
<Uses> <Uses>
<Use Name="DataAbstract4" UID="{1E2905B4-36C9-4EAA-9BB9-DF3D3C9BBE75}" Rodl="$(Data Abstract for Delphi)\Source\DataAbstract4.RODL" AbsoluteRodl="C:\Archivos de programa\RemObjects Software\Data Abstract for Delphi\Source\DataAbstract4.RODL"> <Use Name="DataAbstract4" UID="{1E2905B4-36C9-4EAA-9BB9-DF3D3C9BBE75}" Rodl="$(Data Abstract for Delphi)\Source\DataAbstract4.RODL" AbsoluteRodl="C:\Program Files\RemObjects Software\Data Abstract for Delphi\Source\DataAbstract4.RODL">
</Use> </Use>
</Uses> </Uses>
</Library> </Library>

View File

@ -598,7 +598,8 @@ type
{ IsrvAlbaranesCliente } { IsrvAlbaranesCliente }
IsrvAlbaranesCliente = interface(IDataAbstractService) IsrvAlbaranesCliente = interface(IDataAbstractService)
['{6E910718-9AB0-47BB-9875-B0DE66A68D7A}'] ['{6E910718-9AB0-47BB-9875-B0DE66A68D7A}']
function GenerarInforme(const ListaID: TIntegerArray; const VerPrecios: Boolean; const VerTrabajos: Boolean; const VerIncidencias: Boolean): Binary; function GenerarInforme(const ListaID: TIntegerArray; const VerPrecios: Boolean; const VerTrabajos: Boolean; const VerIncidencias: Boolean;
const VerSoloTotales: Boolean): Binary;
function GenerarInformeEtiquetas(const ID: Integer; const withRefCliente: Boolean): Binary; function GenerarInformeEtiquetas(const ID: Integer; const withRefCliente: Boolean): Binary;
end; end;
@ -612,7 +613,8 @@ type
protected protected
function __GetInterfaceName:string; override; function __GetInterfaceName:string; override;
function GenerarInforme(const ListaID: TIntegerArray; const VerPrecios: Boolean; const VerTrabajos: Boolean; const VerIncidencias: Boolean): Binary; function GenerarInforme(const ListaID: TIntegerArray; const VerPrecios: Boolean; const VerTrabajos: Boolean; const VerIncidencias: Boolean;
const VerSoloTotales: Boolean): Binary;
function GenerarInformeEtiquetas(const ID: Integer; const withRefCliente: Boolean): Binary; function GenerarInformeEtiquetas(const ID: Integer; const withRefCliente: Boolean): Binary;
end; end;
@ -2000,7 +2002,8 @@ begin
result := 'srvAlbaranesCliente'; result := 'srvAlbaranesCliente';
end; end;
function TsrvAlbaranesCliente_Proxy.GenerarInforme(const ListaID: TIntegerArray; const VerPrecios: Boolean; const VerTrabajos: Boolean; const VerIncidencias: Boolean): Binary; function TsrvAlbaranesCliente_Proxy.GenerarInforme(const ListaID: TIntegerArray; const VerPrecios: Boolean; const VerTrabajos: Boolean; const VerIncidencias: Boolean;
const VerSoloTotales: Boolean): Binary;
begin begin
try try
result := nil; result := nil;
@ -2009,6 +2012,7 @@ begin
__Message.Write('VerPrecios', TypeInfo(Boolean), VerPrecios, []); __Message.Write('VerPrecios', TypeInfo(Boolean), VerPrecios, []);
__Message.Write('VerTrabajos', TypeInfo(Boolean), VerTrabajos, []); __Message.Write('VerTrabajos', TypeInfo(Boolean), VerTrabajos, []);
__Message.Write('VerIncidencias', TypeInfo(Boolean), VerIncidencias, []); __Message.Write('VerIncidencias', TypeInfo(Boolean), VerIncidencias, []);
__Message.Write('VerSoloTotales', TypeInfo(Boolean), VerSoloTotales, []);
__Message.Finalize; __Message.Finalize;
__TransportChannel.Dispatch(__Message); __TransportChannel.Dispatch(__Message);

View File

@ -1177,12 +1177,14 @@ begin
end; end;
procedure TsrvAlbaranesCliente_Invoker.Invoke_GenerarInforme(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions); procedure TsrvAlbaranesCliente_Invoker.Invoke_GenerarInforme(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ function GenerarInforme(const ListaID: TIntegerArray; const VerPrecios: Boolean; const VerTrabajos: Boolean; const VerIncidencias: Boolean): Binary; } { function GenerarInforme(const ListaID: TIntegerArray; const VerPrecios: Boolean; const VerTrabajos: Boolean; const VerIncidencias: Boolean;
const VerSoloTotales: Boolean): Binary; }
var var
ListaID: FactuGES_Intf.TIntegerArray; ListaID: FactuGES_Intf.TIntegerArray;
VerPrecios: Boolean; VerPrecios: Boolean;
VerTrabajos: Boolean; VerTrabajos: Boolean;
VerIncidencias: Boolean; VerIncidencias: Boolean;
VerSoloTotales: Boolean;
lResult: Binary; lResult: Binary;
__lObjectDisposer: TROObjectDisposer; __lObjectDisposer: TROObjectDisposer;
begin begin
@ -1193,8 +1195,9 @@ begin
__Message.Read('VerPrecios', TypeInfo(Boolean), VerPrecios, []); __Message.Read('VerPrecios', TypeInfo(Boolean), VerPrecios, []);
__Message.Read('VerTrabajos', TypeInfo(Boolean), VerTrabajos, []); __Message.Read('VerTrabajos', TypeInfo(Boolean), VerTrabajos, []);
__Message.Read('VerIncidencias', TypeInfo(Boolean), VerIncidencias, []); __Message.Read('VerIncidencias', TypeInfo(Boolean), VerIncidencias, []);
__Message.Read('VerSoloTotales', TypeInfo(Boolean), VerSoloTotales, []);
lResult := (__Instance as IsrvAlbaranesCliente).GenerarInforme(ListaID, VerPrecios, VerTrabajos, VerIncidencias); lResult := (__Instance as IsrvAlbaranesCliente).GenerarInforme(ListaID, VerPrecios, VerTrabajos, VerIncidencias, VerSoloTotales);
__Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvAlbaranesCliente', 'GenerarInformeResponse'); __Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvAlbaranesCliente', 'GenerarInformeResponse');
__Message.Write('Result', TypeInfo(Binary), lResult, []); __Message.Write('Result', TypeInfo(Binary), lResult, []);

Binary file not shown.

View File

@ -131,15 +131,15 @@ uses
schAlbaranesClienteServer_Intf in '..\Modulos\Albaranes de cliente\Model\schAlbaranesClienteServer_Intf.pas', schAlbaranesClienteServer_Intf in '..\Modulos\Albaranes de cliente\Model\schAlbaranesClienteServer_Intf.pas',
schFacturasProveedorClient_Intf in '..\Modulos\Facturas de proveedor\Model\schFacturasProveedorClient_Intf.pas', schFacturasProveedorClient_Intf in '..\Modulos\Facturas de proveedor\Model\schFacturasProveedorClient_Intf.pas',
schFacturasProveedorServer_Intf in '..\Modulos\Facturas de proveedor\Model\schFacturasProveedorServer_Intf.pas', schFacturasProveedorServer_Intf in '..\Modulos\Facturas de proveedor\Model\schFacturasProveedorServer_Intf.pas',
schPresupuestosClienteClient_Intf in '..\Modulos\Presupuestos de cliente\Model\schPresupuestosClienteClient_Intf.pas',
schPresupuestosClienteServer_Intf in '..\Modulos\Presupuestos de cliente\Model\schPresupuestosClienteServer_Intf.pas',
schFacturasClienteClient_Intf in '..\Modulos\Facturas de cliente\Model\schFacturasClienteClient_Intf.pas',
schFacturasClienteServer_Intf in '..\Modulos\Facturas de cliente\Model\schFacturasClienteServer_Intf.pas',
uBizInstaladoresServer in '..\Modulos\Contactos\Model\uBizInstaladoresServer.pas', uBizInstaladoresServer in '..\Modulos\Contactos\Model\uBizInstaladoresServer.pas',
schContactosClient_Intf in '..\Modulos\Contactos\Model\schContactosClient_Intf.pas', schContactosClient_Intf in '..\Modulos\Contactos\Model\schContactosClient_Intf.pas',
schContactosServer_Intf in '..\Modulos\Contactos\Model\schContactosServer_Intf.pas', schContactosServer_Intf in '..\Modulos\Contactos\Model\schContactosServer_Intf.pas',
schPresupuestosClienteClient_Intf in '..\Modulos\Presupuestos de cliente\Model\schPresupuestosClienteClient_Intf.pas',
schPresupuestosClienteServer_Intf in '..\Modulos\Presupuestos de cliente\Model\schPresupuestosClienteServer_Intf.pas',
schContratosClienteClient_Intf in '..\Modulos\Contratos de cliente\Model\schContratosClienteClient_Intf.pas', schContratosClienteClient_Intf in '..\Modulos\Contratos de cliente\Model\schContratosClienteClient_Intf.pas',
schContratosClienteServer_Intf in '..\Modulos\Contratos de cliente\Model\schContratosClienteServer_Intf.pas'; schContratosClienteServer_Intf in '..\Modulos\Contratos de cliente\Model\schContratosClienteServer_Intf.pas',
schFacturasClienteClient_Intf in '..\Modulos\Facturas de cliente\Model\schFacturasClienteClient_Intf.pas',
schFacturasClienteServer_Intf in '..\Modulos\Facturas de cliente\Model\schFacturasClienteServer_Intf.pas';
{$R *.res} {$R *.res}
{$R ..\Servicios\RODLFile.res} {$R ..\Servicios\RODLFile.res}

View File

@ -28,7 +28,7 @@
<Borland.Personality>Delphi.Personality</Borland.Personality> <Borland.Personality>Delphi.Personality</Borland.Personality>
<Borland.ProjectType/> <Borland.ProjectType/>
<BorlandProject> <BorlandProject>
<BorlandProject><Delphi.Personality><Parameters><Parameters Name="UseLauncher">False</Parameters><Parameters Name="LoadAllSymbols">True</Parameters><Parameters Name="LoadUnspecifiedSymbols">False</Parameters></Parameters><VersionInfo><VersionInfo Name="IncludeVerInfo">True</VersionInfo><VersionInfo Name="AutoIncBuild">False</VersionInfo><VersionInfo Name="MajorVer">5</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">5.0.0.0</VersionInfoKeys><VersionInfoKeys Name="InternalName"></VersionInfoKeys><VersionInfoKeys Name="LegalCopyright"></VersionInfoKeys><VersionInfoKeys Name="LegalTrademarks"></VersionInfoKeys><VersionInfoKeys Name="OriginalFilename"></VersionInfoKeys><VersionInfoKeys Name="ProductName">FactuGES (Servidor)</VersionInfoKeys><VersionInfoKeys Name="ProductVersion">5.0.0.0</VersionInfoKeys><VersionInfoKeys Name="Comments"></VersionInfoKeys><VersionInfoKeys Name="CompileDate">martes, 25 de febrero de 2025 17:26</VersionInfoKeys></VersionInfoKeys><Excluded_Packages> <BorlandProject><Delphi.Personality><Parameters><Parameters Name="UseLauncher">False</Parameters><Parameters Name="LoadAllSymbols">True</Parameters><Parameters Name="LoadUnspecifiedSymbols">False</Parameters></Parameters><VersionInfo><VersionInfo Name="IncludeVerInfo">True</VersionInfo><VersionInfo Name="AutoIncBuild">False</VersionInfo><VersionInfo Name="MajorVer">5</VersionInfo><VersionInfo Name="MinorVer">2</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">5.2.2.0</VersionInfoKeys><VersionInfoKeys Name="InternalName"></VersionInfoKeys><VersionInfoKeys Name="LegalCopyright"></VersionInfoKeys><VersionInfoKeys Name="LegalTrademarks"></VersionInfoKeys><VersionInfoKeys Name="OriginalFilename"></VersionInfoKeys><VersionInfoKeys Name="ProductName">FactuGES (Servidor)</VersionInfoKeys><VersionInfoKeys Name="ProductVersion">5.2.2.0</VersionInfoKeys><VersionInfoKeys Name="Comments"></VersionInfoKeys><VersionInfoKeys Name="CompileDate">lunes, 26 de mayo de 2025 10:34</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_Server.dpr</Source></Source></Delphi.Personality></BorlandProject></BorlandProject> </Excluded_Packages><Source><Source Name="MainSource">FactuGES_Server.dpr</Source></Source></Delphi.Personality></BorlandProject></BorlandProject>
</ProjectExtensions> </ProjectExtensions>

View File

@ -1,7 +1,7 @@
MAINICON ICON "C:\Codigo Acana\Resources\Iconos\Servidor.ico" MAINICON ICON "C:\Codigo Acana\Resources\Iconos\Servidor.ico"
1 VERSIONINFO 1 VERSIONINFO
FILEVERSION 5,0,0,0 FILEVERSION 5,2,2,0
PRODUCTVERSION 5,0,0,0 PRODUCTVERSION 5,2,2,0
FILEFLAGSMASK 0x3FL FILEFLAGSMASK 0x3FL
FILEFLAGS 0x00L FILEFLAGS 0x00L
FILEOS 0x40004L FILEOS 0x40004L
@ -13,10 +13,10 @@ BEGIN
BLOCK "0C0A04E4" BLOCK "0C0A04E4"
BEGIN BEGIN
VALUE "CompanyName", "Rodax Software S.L.\0" VALUE "CompanyName", "Rodax Software S.L.\0"
VALUE "FileVersion", "5.0.0.0\0" VALUE "FileVersion", "5.2.2.0\0"
VALUE "ProductName", "FactuGES (Servidor)\0" VALUE "ProductName", "FactuGES (Servidor)\0"
VALUE "ProductVersion", "5.0.0.0\0" VALUE "ProductVersion", "5.2.2.0\0"
VALUE "CompileDate", "martes, 25 de febrero de 2025 18:22\0" VALUE "CompileDate", "lunes, 20 de octubre de 2025 11:20\0"
END END
END END
BLOCK "VarFileInfo" BLOCK "VarFileInfo"

Binary file not shown.