Se adapta el programa para que se pueda establecer cada linea de detalle si es valorado o no

git-svn-id: https://192.168.0.254/svn/Proyectos.AlonsoYSal_FactuGES/trunk@18 9a1d36f3-7752-2d40-8ccb-50eb49674c68
This commit is contained in:
roberto 2010-03-14 18:07:47 +00:00
parent c45339871a
commit c9f83b3b4b
40 changed files with 3151 additions and 215 deletions

Binary file not shown.

View File

@ -13,6 +13,9 @@ const
VISIBLE_TRUE = 'S';
VISIBLE_FALSE = 'N';
VALORADO_TRUE = 'S';
VALORADO_FALSE = 'N';
fld_NUMCONCEPTO = 'NUMCONCEPTO';
fld_POSICION = 'POSICION';
fld_TIPODETALLE = 'TIPO';
@ -23,6 +26,7 @@ const
fld_DESCRIPCION = 'DESCRIPCION';
fld_PUNTOS = 'PUNTOS';
fld_IMPORTEPUNTOS = 'IMPORTEPUNTOS';
fld_VALORADO = 'VALORADO';
type
{ IMPORTANTE **********************************************************
@ -53,6 +57,10 @@ type
['{6BA5B3BF-2E92-4465-A328-60F90F7EA3D2}']
end;
IBizValoradoDetalle = interface(IDAStronglyTypedDataTable)
['{4529F4B3-DD56-4CDC-8E40-84F5BA26E886}']
end;
TBizCantidadFieldRules = class(TDAFieldRules)
protected
procedure OnChange(Sender: TDACustomField); override;
@ -83,6 +91,11 @@ type
procedure OnChange(Sender: TDACustomField); override;
end;
TBizValoradoFieldRules = class(TDAFieldRules)
protected
procedure OnChange(Sender: TDACustomField); override;
end;
function DarMaximoNumConcepto(aDataTable : TDADataTable): integer;
function DarMaximaPosicion(aDataTable : TDADataTable): integer;
procedure IntercambiarPosiciones(aDataTable : TDADataTable; Pos1, Pos2 : Integer);
@ -98,6 +111,7 @@ function DarTotalDetalles(aDataTable : TDADataTable; TieneSubtotales : Boolean;
procedure RellenarImportePuntosEnCapitulo(aDataTable : TDADataTable);
procedure RellenarVisibleEnCapitulo(aDataTable : TDADataTable);
procedure RellenarValoradoEnCapitulo(aDataTable : TDADataTable);
procedure RecalcularTodo(aDataTable : TDADataTable);
@ -862,6 +876,84 @@ begin
end;
end;
procedure RellenarValoradoEnCapitulo(aDataTable : TDADataTable);
{ Rellena VALORADO de todos los conceptos de un capítulo. El cursor
está puesto en la fila que es el título. }
var
ABookmark : Pointer;
APosicion : Integer;
MaxPos : Integer;
TipoField : TDAField;
PosicionField : TDAField;
ValoradoField : TDAField;
ACursor: TCursor;
EnEdicion : Boolean;
EsValorado : String;
begin
if not Assigned(aDataTable) then
raise Exception.Create('Tabla no asignada (RellenarVisibleEnCapitulo)');
if aDataTable.RecordCount < 1 then
Exit;
PosicionField := aDataTable.FindField(fld_POSICION);
if not Assigned(PosicionField) then
raise Exception.Create('Campo POSICION no encontrado (RellenarValoradoEnCapitulo)');
TipoField := aDataTable.FindField(fld_TIPODETALLE);
if not Assigned(TipoField) then
raise Exception.Create('Campo TIPO no encontrado (RellenarValoradoEnCapitulo)');
ValoradoField := aDataTable.FindField(fld_VALORADO);
if not Assigned(ValoradoField) then
raise Exception.Create('Campo VALORADO no encontrado (RellenarValoradoEnCapitulo)');
ABookmark := aDataTable.GetBookMark;
ACursor := Screen.Cursor;
Screen.Cursor := crHourGlass;
aDataTable.DisableControls;
EnEdicion := (aDataTable.State in dsEditModes);
if EnEdicion then
aDataTable.Post;
APosicion := PosicionField.Value + 1; // La posición siguiente a la fila de TITULO
EsValorado := ValoradoField.AsString; // Valor de VALORADO de la fila de TITULO
try
MaxPos := DarMaximaPosicion(aDataTable);
while (APosicion <= MaxPos) do
begin
if aDataTable.Locate(fld_POSICION, APosicion, []) then
begin
if (TipoField.AsString = TIPODETALLE_CONCEPTO) then
begin
aDataTable.Edit;
aDataTable.DisableEventHandlers; // Para que no salten otros eventos
try
ValoradoField.AsString := EsValorado;
finally
aDataTable.EnableEventHandlers;
end;
aDataTable.Post;
Inc(APosicion);
end
else
break; // Es una fila de SUBTOTAL o de TITULO
end
else
raise Exception.Create('Hay un hueco en la numeración de posiciones');
end;
finally
aDataTable.GotoBookmark(ABookmark);
aDataTable.EnableControls;
Screen.Cursor := ACursor;
if EnEdicion then
aDataTable.Edit;
end;
end;
{ TBizCantidadFieldRules }
procedure TBizCantidadFieldRules.OnChange(Sender: TDACustomField);
@ -1019,6 +1111,28 @@ begin
end;
end;
{ TBizValoradoFieldRules }
procedure TBizValoradoFieldRules.OnChange(Sender: TDACustomField);
var
aDetalle : IBizValoradoDetalle;
aParche : IParche;
begin
inherited;
{ PARCHE ********************************** }
if Supports(DataTable, IParche, aParche) and
not (aParche.PuedoLanzarEvento) then
Exit;
if Supports(DataTable, IBizValoradoDetalle, aDetalle) then
begin
if Assigned(aDetalle.DataTable.FindField(fld_TIPODETALLE)) then
if (aDetalle.DataTable.FindField(fld_TIPODETALLE).AsString = TIPODETALLE_TITULO) then
RellenarValoradoEnCapitulo(aDetalle.DataTable);
end;
end;
initialization
RegisterFieldRules('Client.Field.Cantidad', TBizCantidadFieldRules);
RegisterFieldRules('Client.Field.ImporteUnidad', TBizImporteUnidadFieldRules);
@ -1028,6 +1142,7 @@ initialization
RegisterFieldRules('Client.Field.Puntos', TBizPuntosFieldRules);
RegisterFieldRules('Client.Field.Visible', TBizVisibleFieldRules);
RegisterFieldRules('Client.Field.Valorado', TBizValoradoFieldRules);
finalization

View File

@ -1,8 +1,6 @@
inherited frViewDetallesFamilias: TfrViewDetallesFamilias
Width = 638
inherited cxGrid: TcxGrid
Top = 22
Width = 638
Height = 248
inherited cxGridView: TcxGridDBTableView
OnEditing = cxGridViewEditing
@ -117,10 +115,34 @@ inherited frViewDetallesFamilias: TfrViewDetallesFamilias
Properties.ValueChecked = 'S'
Properties.ValueUnchecked = 'N'
end
object cxGridViewVALORADO: TcxGridDBColumn
Caption = 'Valorado'
DataBinding.FieldName = 'VALORADO'
PropertiesClassName = 'TcxCheckBoxProperties'
Properties.DisplayChecked = 'S'
Properties.DisplayUnchecked = 'N'
Properties.Glyph.Data = {
76010000424D7601000000000000760000002800000020000000100000000100
0400000000000001000000000000000000001000000000000000000000000000
8000008000000080800080000000800080008080000080808000C0C0C0000000
FF0000FF000000FFFF00FF000000FF00FF00FFFF0000FFFFFF00FFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8888F
FFFFFFFF8888777FFFFF8888FFF88888FF8F888888877777F88FF888FFF88888
FF88F778F8874777FF77FF88FFF88888F888FF77F8850477F877FFF8FFFF88F8
888FFFF7888F4788777FFFFF88FFFFF888FFFFFF7788888777FFFFFFF8888888
8FFFFFFFF77777777FFFFFFFFF88888FFFFFFFFFFF47557FFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF}
Properties.GlyphCount = 2
Properties.ImmediatePost = True
Properties.NullStyle = nssUnchecked
Properties.ValueChecked = 'S'
Properties.ValueUnchecked = 'N'
end
end
end
inherited ToolBar1: TToolBar
Width = 638
Height = 22
ButtonWidth = 105
object ToolButton1: TToolButton

View File

@ -42,6 +42,7 @@ type
ToolButton8: TToolButton;
ToolButton9: TToolButton;
actRecalcular: TAction;
cxGridViewVALORADO: TcxGridDBColumn;
procedure cxGridViewEditing(Sender: TcxCustomGridTableView;
AItem: TcxCustomGridTableItem; var AAllow: Boolean);
procedure cxGridViewTIPOStylesGetContentStyle(
@ -64,7 +65,8 @@ procedure TfrViewDetallesFamilias.cxGridViewEditing(
Sender: TcxCustomGridTableView; AItem: TcxCustomGridTableItem;
var AAllow: Boolean);
var
IndiceCol : Integer;
IndiceCol, IndiceCol2 : Integer;
begin
IndiceCol := (Sender as TcxGridDBTableView).GetColumnByFieldName(fld_DESCRIPCION).Index;
if AItem.Index <= IndiceCol then
@ -77,10 +79,11 @@ begin
if (UpperCase(AItem.GridView.Items[IndiceCol].EditValue) = TIPODETALLE_TITULO) then
begin
IndiceCol := (Sender as TcxGridDBTableView).GetColumnByFieldName(fld_VISIBLE).Index;
if AItem.Index = IndiceCol then
IndiceCol2 := (Sender as TcxGridDBTableView).GetColumnByFieldName(fld_VALORADO).Index;
if ((AItem.Index = IndiceCol) or (AItem.Index = IndiceCol2)) then
AAllow := True
else
AAllow := False
AAllow := False;
end;
end;
end;

Binary file not shown.

View File

@ -85,6 +85,7 @@ begin
FieldByName(fld_DetallesAlbaranClienteIMPORTEPUNTOS).BusinessRulesID := 'Client.Field.ImportePuntos';
FieldByName(fld_DetallesAlbaranClienteVISIBLE).BusinessRulesID := 'Client.Field.Visible';
FieldByName(fld_DetallesAlbaranClienteVALORADO).BusinessRulesID := 'Client.Field.Valorado';
end;
(dtAlbaranes as IBizAlbaranesCliente).Detalles := (dtDetalles as IBizDetallesAlbaranCliente);

View File

@ -35,6 +35,9 @@ inherited frViewDetallesAlbaranCliente: TfrViewDetallesAlbaranCliente
Styles.OnGetContentStyle = cxGridViewVISIBLEStylesGetContentStyle
Width = 76
end
inherited cxGridViewVALORADO: TcxGridDBColumn
Styles.OnGetContentStyle = cxGridViewVALORADOStylesGetContentStyle
end
end
end
inherited cxStyleRepository1: TcxStyleRepository

View File

@ -24,6 +24,9 @@ type
procedure cxGridViewVISIBLEStylesGetContentStyle(
Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord;
AItem: TcxCustomGridTableItem; out AStyle: TcxStyle);
procedure cxGridViewVALORADOStylesGetContentStyle(
Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord;
AItem: TcxCustomGridTableItem; out AStyle: TcxStyle);
end;
@ -91,4 +94,22 @@ begin
end;
end;
procedure TfrViewDetallesAlbaranCliente.cxGridViewVALORADOStylesGetContentStyle(
Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord;
AItem: TcxCustomGridTableItem; out AStyle: TcxStyle);
var
IndiceCol : Integer;
ATipo : String;
begin
if Assigned(ARecord) then
begin
IndiceCol := (Sender as TcxGridDBTableView).GetColumnByFieldName(fld_TIPODETALLE).Index;
ATipo := VarToStr(ARecord.Values[IndiceCol]);
if ATipo = TIPODETALLE_SUBTOTAL then
AStyle := cxStyle_SUBTOTAL;
if ATipo = TIPODETALLE_TITULO then
AStyle := cxStyle_TITULO;
end;
end;
end.

View File

@ -9,15 +9,15 @@ const
{ Data table rules ids
Feel free to change them to something more human readable
but make sure they are unique in the context of your application }
RID_ListaAnosAlbaranes = '{633AA7F3-9231-41FD-9AFA-20F135BF0015}';
RID_DarReferenciaAlbaran = '{2A1DC102-86E4-4ED4-99B3-63A0A8ADF44E}';
RID_AlbaranCliente = '{D7B2EDBF-3686-4A8C-910A-B4CFBE86FA03}';
RID_AlbaranDePresupuesto = '{30A07021-CB00-471E-933D-C775663D9916}';
RID_DetallesAlbaranCliente = '{7462D89E-A291-4EEB-86A1-466E9CA91AB2}';
RID_AlbaranCliente_RefreshDataset = '{937F0EE6-A236-4A40-AC09-EA6C414C708C}';
RID_InformeCabeceraAlbaranPago = '{56F3725F-E457-4DC3-AE69-F6B955C4D525}';
RID_InformeDetallesAlbaranPago = '{1023528D-E1A8-4850-9C26-F0AE36E755D0}';
RID_DarSumaImportes = '{0183F8AD-2381-4ED5-931F-546D5C269857}';
RID_ListaAnosAlbaranes = '{917C4039-2B93-4CA7-A441-D0352569F345}';
RID_DarReferenciaAlbaran = '{C11AC197-E7EE-45B7-9496-D6F569F9A723}';
RID_AlbaranCliente = '{7677D1DA-BBBF-4FE6-99C5-785BFC601814}';
RID_AlbaranDePresupuesto = '{11FBB81A-08F0-454F-9F82-2D38B9283A2C}';
RID_DetallesAlbaranCliente = '{0E82DB60-0D2C-4BD7-B746-A3FA7B226C9C}';
RID_AlbaranCliente_RefreshDataset = '{1CF237D2-D61D-42F7-9977-29C60F03C4A7}';
RID_InformeCabeceraAlbaranPago = '{7C164B21-4993-4739-8B3F-1B5CC997D24A}';
RID_InformeDetallesAlbaranPago = '{A9FA5BBE-85CE-4652-9E5C-5F9BF97A3A55}';
RID_DarSumaImportes = '{1246AA6F-FFBC-422B-90E4-DE85DA400D86}';
{ Data table names }
nme_ListaAnosAlbaranes = 'ListaAnosAlbaranes';
@ -104,6 +104,7 @@ const
fld_DetallesAlbaranClienteVISIBLE = 'VISIBLE';
fld_DetallesAlbaranClientePUNTOS = 'PUNTOS';
fld_DetallesAlbaranClienteIMPORTEPUNTOS = 'IMPORTEPUNTOS';
fld_DetallesAlbaranClienteVALORADO = 'VALORADO';
{ DetallesAlbaranCliente field indexes }
idx_DetallesAlbaranClienteCODIGOALBARAN = 0;
@ -117,6 +118,7 @@ const
idx_DetallesAlbaranClienteVISIBLE = 8;
idx_DetallesAlbaranClientePUNTOS = 9;
idx_DetallesAlbaranClienteIMPORTEPUNTOS = 10;
idx_DetallesAlbaranClienteVALORADO = 11;
{ AlbaranCliente_RefreshDataset fields }
fld_AlbaranCliente_RefreshDatasetCODIGO = 'CODIGO';
@ -197,6 +199,7 @@ const
fld_InformeDetallesAlbaranPagoIMPORTETOTAL = 'IMPORTETOTAL';
fld_InformeDetallesAlbaranPagoTIPO = 'TIPO';
fld_InformeDetallesAlbaranPagoPOSICION = 'POSICION';
fld_InformeDetallesAlbaranPagoVALORADO = 'VALORADO';
{ InformeDetallesAlbaranPago field indexes }
idx_InformeDetallesAlbaranPagoCODIGOALBARAN = 0;
@ -207,6 +210,7 @@ const
idx_InformeDetallesAlbaranPagoIMPORTETOTAL = 5;
idx_InformeDetallesAlbaranPagoTIPO = 6;
idx_InformeDetallesAlbaranPagoPOSICION = 7;
idx_InformeDetallesAlbaranPagoVALORADO = 8;
{ DarSumaImportes fields }
fld_DarSumaImportesBASEIMPONIBLE = 'BASEIMPONIBLE';
@ -221,7 +225,7 @@ const
type
{ IListaAnosAlbaranes }
IListaAnosAlbaranes = interface(IDAStronglyTypedDataTable)
['{D7D4C0A5-1F72-468B-A5FB-C81C33C826F2}']
['{D0E73EE9-26F5-4A80-97A1-D26923F15F21}']
{ Property getters and setters }
function GetANOValue: String;
procedure SetANOValue(const aValue: String);
@ -250,7 +254,7 @@ type
{ IDarReferenciaAlbaran }
IDarReferenciaAlbaran = interface(IDAStronglyTypedDataTable)
['{631B04FF-3196-4DB1-8266-43D0CCA14B6C}']
['{B552B707-0E8A-4134-94E4-1608D2F8AE7E}']
{ Property getters and setters }
function GetREFERENCIAValue: String;
procedure SetREFERENCIAValue(const aValue: String);
@ -279,7 +283,7 @@ type
{ IAlbaranCliente }
IAlbaranCliente = interface(IDAStronglyTypedDataTable)
['{2E3EA9B3-B1D2-432C-A31E-4BBDDD644872}']
['{93E66932-9E6D-463A-B890-D22380A55B15}']
{ Property getters and setters }
function GetCODIGOEMPRESAValue: Integer;
procedure SetCODIGOEMPRESAValue(const aValue: Integer);
@ -422,7 +426,7 @@ type
{ IAlbaranDePresupuesto }
IAlbaranDePresupuesto = interface(IDAStronglyTypedDataTable)
['{8CD58BB1-A4D0-4DF4-8E30-969F1BACC961}']
['{EC189EA9-7AED-4BA8-8453-8BA1C887FA89}']
{ Property getters and setters }
function GetCODIGOValue: Integer;
procedure SetCODIGOValue(const aValue: Integer);
@ -451,7 +455,7 @@ type
{ IDetallesAlbaranCliente }
IDetallesAlbaranCliente = interface(IDAStronglyTypedDataTable)
['{675AE33F-D64C-47AD-A206-64BFAA11FCD7}']
['{A3DBA442-E018-4366-BEA9-CBDCC2638642}']
{ Property getters and setters }
function GetCODIGOALBARANValue: Integer;
procedure SetCODIGOALBARANValue(const aValue: Integer);
@ -475,6 +479,8 @@ type
procedure SetPUNTOSValue(const aValue: Integer);
function GetIMPORTEPUNTOSValue: Currency;
procedure SetIMPORTEPUNTOSValue(const aValue: Currency);
function GetVALORADOValue: String;
procedure SetVALORADOValue(const aValue: String);
{ Properties }
@ -489,6 +495,7 @@ type
property VISIBLE: String read GetVISIBLEValue write SetVISIBLEValue;
property PUNTOS: Integer read GetPUNTOSValue write SetPUNTOSValue;
property IMPORTEPUNTOS: Currency read GetIMPORTEPUNTOSValue write SetIMPORTEPUNTOSValue;
property VALORADO: String read GetVALORADOValue write SetVALORADOValue;
end;
{ TDetallesAlbaranClienteDataTableRules }
@ -518,6 +525,8 @@ type
procedure SetPUNTOSValue(const aValue: Integer); virtual;
function GetIMPORTEPUNTOSValue: Currency; virtual;
procedure SetIMPORTEPUNTOSValue(const aValue: Currency); virtual;
function GetVALORADOValue: String; virtual;
procedure SetVALORADOValue(const aValue: String); virtual;
{ Properties }
property CODIGOALBARAN: Integer read GetCODIGOALBARANValue write SetCODIGOALBARANValue;
@ -531,6 +540,7 @@ type
property VISIBLE: String read GetVISIBLEValue write SetVISIBLEValue;
property PUNTOS: Integer read GetPUNTOSValue write SetPUNTOSValue;
property IMPORTEPUNTOS: Currency read GetIMPORTEPUNTOSValue write SetIMPORTEPUNTOSValue;
property VALORADO: String read GetVALORADOValue write SetVALORADOValue;
public
constructor Create(aDataTable: TDADataTable); override;
@ -540,7 +550,7 @@ type
{ IAlbaranCliente_RefreshDataset }
IAlbaranCliente_RefreshDataset = interface(IDAStronglyTypedDataTable)
['{37351A63-CE65-4762-B897-5DE5998CAB64}']
['{9264A499-6FFC-4612-8A7C-4A718EED39B8}']
{ Property getters and setters }
function GetCODIGOValue: Integer;
procedure SetCODIGOValue(const aValue: Integer);
@ -587,7 +597,7 @@ type
{ IInformeCabeceraAlbaranPago }
IInformeCabeceraAlbaranPago = interface(IDAStronglyTypedDataTable)
['{173C44D2-12F3-4383-86A6-29107BF40AF6}']
['{D89475DD-59B9-4905-A028-189252D573D6}']
{ Property getters and setters }
function GetCODIGOEMPRESAValue: Integer;
procedure SetCODIGOEMPRESAValue(const aValue: Integer);
@ -772,7 +782,7 @@ type
{ IInformeDetallesAlbaranPago }
IInformeDetallesAlbaranPago = interface(IDAStronglyTypedDataTable)
['{92CC3EF0-B88D-4396-8134-AD775CD2E583}']
['{5DDBF241-3C71-4B5A-848C-31D3C1984727}']
{ Property getters and setters }
function GetCODIGOALBARANValue: Integer;
procedure SetCODIGOALBARANValue(const aValue: Integer);
@ -780,8 +790,8 @@ type
procedure SetNUMCONCEPTOValue(const aValue: Integer);
function GetDESCRIPCIONValue: String;
procedure SetDESCRIPCIONValue(const aValue: String);
function GetCANTIDADValue: Float;
procedure SetCANTIDADValue(const aValue: Float);
function GetCANTIDADValue: Integer;
procedure SetCANTIDADValue(const aValue: Integer);
function GetIMPORTEUNIDADValue: Float;
procedure SetIMPORTEUNIDADValue(const aValue: Float);
function GetIMPORTETOTALValue: Float;
@ -790,17 +800,20 @@ type
procedure SetTIPOValue(const aValue: String);
function GetPOSICIONValue: Integer;
procedure SetPOSICIONValue(const aValue: Integer);
function GetVALORADOValue: String;
procedure SetVALORADOValue(const aValue: String);
{ Properties }
property CODIGOALBARAN: Integer read GetCODIGOALBARANValue write SetCODIGOALBARANValue;
property NUMCONCEPTO: Integer read GetNUMCONCEPTOValue write SetNUMCONCEPTOValue;
property DESCRIPCION: String read GetDESCRIPCIONValue write SetDESCRIPCIONValue;
property CANTIDAD: Float read GetCANTIDADValue write SetCANTIDADValue;
property CANTIDAD: Integer read GetCANTIDADValue write SetCANTIDADValue;
property IMPORTEUNIDAD: Float read GetIMPORTEUNIDADValue write SetIMPORTEUNIDADValue;
property IMPORTETOTAL: Float read GetIMPORTETOTALValue write SetIMPORTETOTALValue;
property TIPO: String read GetTIPOValue write SetTIPOValue;
property POSICION: Integer read GetPOSICIONValue write SetPOSICIONValue;
property VALORADO: String read GetVALORADOValue write SetVALORADOValue;
end;
{ TInformeDetallesAlbaranPagoDataTableRules }
@ -814,8 +827,8 @@ type
procedure SetNUMCONCEPTOValue(const aValue: Integer); virtual;
function GetDESCRIPCIONValue: String; virtual;
procedure SetDESCRIPCIONValue(const aValue: String); virtual;
function GetCANTIDADValue: Float; virtual;
procedure SetCANTIDADValue(const aValue: Float); virtual;
function GetCANTIDADValue: Integer; virtual;
procedure SetCANTIDADValue(const aValue: Integer); virtual;
function GetIMPORTEUNIDADValue: Float; virtual;
procedure SetIMPORTEUNIDADValue(const aValue: Float); virtual;
function GetIMPORTETOTALValue: Float; virtual;
@ -824,16 +837,19 @@ type
procedure SetTIPOValue(const aValue: String); virtual;
function GetPOSICIONValue: Integer; virtual;
procedure SetPOSICIONValue(const aValue: Integer); virtual;
function GetVALORADOValue: String; virtual;
procedure SetVALORADOValue(const aValue: String); virtual;
{ Properties }
property CODIGOALBARAN: Integer read GetCODIGOALBARANValue write SetCODIGOALBARANValue;
property NUMCONCEPTO: Integer read GetNUMCONCEPTOValue write SetNUMCONCEPTOValue;
property DESCRIPCION: String read GetDESCRIPCIONValue write SetDESCRIPCIONValue;
property CANTIDAD: Float read GetCANTIDADValue write SetCANTIDADValue;
property CANTIDAD: Integer read GetCANTIDADValue write SetCANTIDADValue;
property IMPORTEUNIDAD: Float read GetIMPORTEUNIDADValue write SetIMPORTEUNIDADValue;
property IMPORTETOTAL: Float read GetIMPORTETOTALValue write SetIMPORTETOTALValue;
property TIPO: String read GetTIPOValue write SetTIPOValue;
property POSICION: Integer read GetPOSICIONValue write SetPOSICIONValue;
property VALORADO: String read GetVALORADOValue write SetVALORADOValue;
public
constructor Create(aDataTable: TDADataTable); override;
@ -846,7 +862,7 @@ type
}
{ IDarSumaImportes }
IDarSumaImportes = interface(IDAStronglyTypedDataTable)
['{0A03D6E5-29C3-4B3C-8004-8D48A433FB36}']
['{5DF4D82E-2806-4F9F-BC96-46922630BD69}']
{ Property getters and setters }
function GetBASEIMPONIBLEValue: Float;
procedure SetBASEIMPONIBLEValue(const aValue: Float);
@ -1290,6 +1306,16 @@ begin
DataTable.Fields[idx_DetallesAlbaranClienteIMPORTEPUNTOS].AsCurrency := aValue;
end;
function TDetallesAlbaranClienteDataTableRules.GetVALORADOValue: String;
begin
result := DataTable.Fields[idx_DetallesAlbaranClienteVALORADO].AsString;
end;
procedure TDetallesAlbaranClienteDataTableRules.SetVALORADOValue(const aValue: String);
begin
DataTable.Fields[idx_DetallesAlbaranClienteVALORADO].AsString := aValue;
end;
{ TAlbaranCliente_RefreshDatasetDataTableRules }
constructor TAlbaranCliente_RefreshDatasetDataTableRules.Create(aDataTable: TDADataTable);
@ -1668,14 +1694,14 @@ begin
DataTable.Fields[idx_InformeDetallesAlbaranPagoDESCRIPCION].AsString := aValue;
end;
function TInformeDetallesAlbaranPagoDataTableRules.GetCANTIDADValue: Float;
function TInformeDetallesAlbaranPagoDataTableRules.GetCANTIDADValue: Integer;
begin
result := DataTable.Fields[idx_InformeDetallesAlbaranPagoCANTIDAD].AsFloat;
result := DataTable.Fields[idx_InformeDetallesAlbaranPagoCANTIDAD].AsInteger;
end;
procedure TInformeDetallesAlbaranPagoDataTableRules.SetCANTIDADValue(const aValue: Float);
procedure TInformeDetallesAlbaranPagoDataTableRules.SetCANTIDADValue(const aValue: Integer);
begin
DataTable.Fields[idx_InformeDetallesAlbaranPagoCANTIDAD].AsFloat := aValue;
DataTable.Fields[idx_InformeDetallesAlbaranPagoCANTIDAD].AsInteger := aValue;
end;
function TInformeDetallesAlbaranPagoDataTableRules.GetIMPORTEUNIDADValue: Float;
@ -1718,6 +1744,16 @@ begin
DataTable.Fields[idx_InformeDetallesAlbaranPagoPOSICION].AsInteger := aValue;
end;
function TInformeDetallesAlbaranPagoDataTableRules.GetVALORADOValue: String;
begin
result := DataTable.Fields[idx_InformeDetallesAlbaranPagoVALORADO].AsString;
end;
procedure TInformeDetallesAlbaranPagoDataTableRules.SetVALORADOValue(const aValue: String);
begin
DataTable.Fields[idx_InformeDetallesAlbaranPagoVALORADO].AsString := aValue;
end;
{ TDarSumaImportesDataTableRules }
constructor TDarSumaImportesDataTableRules.Create(aDataTable: TDADataTable);

View File

@ -9,20 +9,20 @@ const
{ Delta rules ids
Feel free to change them to something more human readable
but make sure they are unique in the context of your application }
RID_ListaAnosAlbaranesDelta = '{5C2DB703-C887-4F77-A9DC-11DA0CF6FE4E}';
RID_DarReferenciaAlbaranDelta = '{D832A4B5-6FDD-49E0-AE5F-306375C415AD}';
RID_AlbaranClienteDelta = '{5DFFE549-E998-435B-BB5C-F859B970C506}';
RID_AlbaranDePresupuestoDelta = '{B5AB03E8-D48D-4BA2-A1E9-9CD0D0907C62}';
RID_DetallesAlbaranClienteDelta = '{1502B47E-54CF-4FCD-8CC2-48C36D9EF53A}';
RID_AlbaranCliente_RefreshDatasetDelta = '{5E7557E0-2251-46D8-83CF-818EC119C817}';
RID_InformeCabeceraAlbaranPagoDelta = '{51A960DD-CBCF-4151-9471-61453103C2EF}';
RID_InformeDetallesAlbaranPagoDelta = '{FA30D0F8-1FFC-4FAD-8C8B-CA8553D877EA}';
RID_DarSumaImportesDelta = '{50AE6D16-89E0-4C6A-9A75-62FE055859AF}';
RID_ListaAnosAlbaranesDelta = '{13092E1E-111E-4EA9-881B-3DB5E8D7DF8B}';
RID_DarReferenciaAlbaranDelta = '{060883BE-0C2D-4803-80D9-9D2E675F0F71}';
RID_AlbaranClienteDelta = '{423E76BF-AECD-4833-9826-939D0CEAA727}';
RID_AlbaranDePresupuestoDelta = '{18FC44A8-B09C-42A8-8364-CBA395F2BF34}';
RID_DetallesAlbaranClienteDelta = '{15388383-8B5E-42C8-B067-6D2BC5B591B9}';
RID_AlbaranCliente_RefreshDatasetDelta = '{C27FA34C-AC2D-4258-982E-2C454BF6F451}';
RID_InformeCabeceraAlbaranPagoDelta = '{C19F60E8-D693-4C0F-9F23-E143B0D63CC3}';
RID_InformeDetallesAlbaranPagoDelta = '{8F113EFE-98EE-495C-BCFF-37E5479F27AB}';
RID_DarSumaImportesDelta = '{ABF43821-73BF-42CB-9086-3677C16A7153}';
type
{ IListaAnosAlbaranesDelta }
IListaAnosAlbaranesDelta = interface(IListaAnosAlbaranes)
['{5C2DB703-C887-4F77-A9DC-11DA0CF6FE4E}']
['{13092E1E-111E-4EA9-881B-3DB5E8D7DF8B}']
{ Property getters and setters }
function GetOldANOValue : String;
@ -51,7 +51,7 @@ type
{ IDarReferenciaAlbaranDelta }
IDarReferenciaAlbaranDelta = interface(IDarReferenciaAlbaran)
['{D832A4B5-6FDD-49E0-AE5F-306375C415AD}']
['{060883BE-0C2D-4803-80D9-9D2E675F0F71}']
{ Property getters and setters }
function GetOldREFERENCIAValue : String;
@ -80,7 +80,7 @@ type
{ IAlbaranClienteDelta }
IAlbaranClienteDelta = interface(IAlbaranCliente)
['{5DFFE549-E998-435B-BB5C-F859B970C506}']
['{423E76BF-AECD-4833-9826-939D0CEAA727}']
{ Property getters and setters }
function GetOldCODIGOEMPRESAValue : Integer;
function GetOldCODIGOValue : Integer;
@ -242,7 +242,7 @@ type
{ IAlbaranDePresupuestoDelta }
IAlbaranDePresupuestoDelta = interface(IAlbaranDePresupuesto)
['{B5AB03E8-D48D-4BA2-A1E9-9CD0D0907C62}']
['{18FC44A8-B09C-42A8-8364-CBA395F2BF34}']
{ Property getters and setters }
function GetOldCODIGOValue : Integer;
@ -271,7 +271,7 @@ type
{ IDetallesAlbaranClienteDelta }
IDetallesAlbaranClienteDelta = interface(IDetallesAlbaranCliente)
['{1502B47E-54CF-4FCD-8CC2-48C36D9EF53A}']
['{15388383-8B5E-42C8-B067-6D2BC5B591B9}']
{ Property getters and setters }
function GetOldCODIGOALBARANValue : Integer;
function GetOldNUMCONCEPTOValue : Integer;
@ -284,6 +284,7 @@ type
function GetOldVISIBLEValue : String;
function GetOldPUNTOSValue : Integer;
function GetOldIMPORTEPUNTOSValue : Currency;
function GetOldVALORADOValue : String;
{ Properties }
property OldCODIGOALBARAN : Integer read GetOldCODIGOALBARANValue;
@ -297,6 +298,7 @@ type
property OldVISIBLE : String read GetOldVISIBLEValue;
property OldPUNTOS : Integer read GetOldPUNTOSValue;
property OldIMPORTEPUNTOS : Currency read GetOldIMPORTEPUNTOSValue;
property OldVALORADO : String read GetOldVALORADOValue;
end;
{ TDetallesAlbaranClienteBusinessProcessorRules }
@ -337,6 +339,9 @@ type
function GetIMPORTEPUNTOSValue: Currency; virtual;
function GetOldIMPORTEPUNTOSValue: Currency; virtual;
procedure SetIMPORTEPUNTOSValue(const aValue: Currency); virtual;
function GetVALORADOValue: String; virtual;
function GetOldVALORADOValue: String; virtual;
procedure SetVALORADOValue(const aValue: String); virtual;
{ Properties }
property CODIGOALBARAN : Integer read GetCODIGOALBARANValue write SetCODIGOALBARANValue;
@ -361,6 +366,8 @@ type
property OldPUNTOS : Integer read GetOldPUNTOSValue;
property IMPORTEPUNTOS : Currency read GetIMPORTEPUNTOSValue write SetIMPORTEPUNTOSValue;
property OldIMPORTEPUNTOS : Currency read GetOldIMPORTEPUNTOSValue;
property VALORADO : String read GetVALORADOValue write SetVALORADOValue;
property OldVALORADO : String read GetOldVALORADOValue;
public
constructor Create(aBusinessProcessor: TDABusinessProcessor); override;
@ -370,7 +377,7 @@ type
{ IAlbaranCliente_RefreshDatasetDelta }
IAlbaranCliente_RefreshDatasetDelta = interface(IAlbaranCliente_RefreshDataset)
['{5E7557E0-2251-46D8-83CF-818EC119C817}']
['{C27FA34C-AC2D-4258-982E-2C454BF6F451}']
{ Property getters and setters }
function GetOldCODIGOValue : Integer;
function GetOldNOMBREValue : String;
@ -420,7 +427,7 @@ type
{ IInformeCabeceraAlbaranPagoDelta }
IInformeCabeceraAlbaranPagoDelta = interface(IInformeCabeceraAlbaranPago)
['{51A960DD-CBCF-4151-9471-61453103C2EF}']
['{C19F60E8-D693-4C0F-9F23-E143B0D63CC3}']
{ Property getters and setters }
function GetOldCODIGOEMPRESAValue : Integer;
function GetOldCODIGOValue : Integer;
@ -631,26 +638,28 @@ type
{ IInformeDetallesAlbaranPagoDelta }
IInformeDetallesAlbaranPagoDelta = interface(IInformeDetallesAlbaranPago)
['{FA30D0F8-1FFC-4FAD-8C8B-CA8553D877EA}']
['{8F113EFE-98EE-495C-BCFF-37E5479F27AB}']
{ Property getters and setters }
function GetOldCODIGOALBARANValue : Integer;
function GetOldNUMCONCEPTOValue : Integer;
function GetOldDESCRIPCIONValue : String;
function GetOldCANTIDADValue : Float;
function GetOldCANTIDADValue : Integer;
function GetOldIMPORTEUNIDADValue : Float;
function GetOldIMPORTETOTALValue : Float;
function GetOldTIPOValue : String;
function GetOldPOSICIONValue : Integer;
function GetOldVALORADOValue : String;
{ Properties }
property OldCODIGOALBARAN : Integer read GetOldCODIGOALBARANValue;
property OldNUMCONCEPTO : Integer read GetOldNUMCONCEPTOValue;
property OldDESCRIPCION : String read GetOldDESCRIPCIONValue;
property OldCANTIDAD : Float read GetOldCANTIDADValue;
property OldCANTIDAD : Integer read GetOldCANTIDADValue;
property OldIMPORTEUNIDAD : Float read GetOldIMPORTEUNIDADValue;
property OldIMPORTETOTAL : Float read GetOldIMPORTETOTALValue;
property OldTIPO : String read GetOldTIPOValue;
property OldPOSICION : Integer read GetOldPOSICIONValue;
property OldVALORADO : String read GetOldVALORADOValue;
end;
{ TInformeDetallesAlbaranPagoBusinessProcessorRules }
@ -667,9 +676,9 @@ type
function GetDESCRIPCIONValue: String; virtual;
function GetOldDESCRIPCIONValue: String; virtual;
procedure SetDESCRIPCIONValue(const aValue: String); virtual;
function GetCANTIDADValue: Float; virtual;
function GetOldCANTIDADValue: Float; virtual;
procedure SetCANTIDADValue(const aValue: Float); virtual;
function GetCANTIDADValue: Integer; virtual;
function GetOldCANTIDADValue: Integer; virtual;
procedure SetCANTIDADValue(const aValue: Integer); virtual;
function GetIMPORTEUNIDADValue: Float; virtual;
function GetOldIMPORTEUNIDADValue: Float; virtual;
procedure SetIMPORTEUNIDADValue(const aValue: Float); virtual;
@ -682,6 +691,9 @@ type
function GetPOSICIONValue: Integer; virtual;
function GetOldPOSICIONValue: Integer; virtual;
procedure SetPOSICIONValue(const aValue: Integer); virtual;
function GetVALORADOValue: String; virtual;
function GetOldVALORADOValue: String; virtual;
procedure SetVALORADOValue(const aValue: String); virtual;
{ Properties }
property CODIGOALBARAN : Integer read GetCODIGOALBARANValue write SetCODIGOALBARANValue;
@ -690,8 +702,8 @@ type
property OldNUMCONCEPTO : Integer read GetOldNUMCONCEPTOValue;
property DESCRIPCION : String read GetDESCRIPCIONValue write SetDESCRIPCIONValue;
property OldDESCRIPCION : String read GetOldDESCRIPCIONValue;
property CANTIDAD : Float read GetCANTIDADValue write SetCANTIDADValue;
property OldCANTIDAD : Float read GetOldCANTIDADValue;
property CANTIDAD : Integer read GetCANTIDADValue write SetCANTIDADValue;
property OldCANTIDAD : Integer read GetOldCANTIDADValue;
property IMPORTEUNIDAD : Float read GetIMPORTEUNIDADValue write SetIMPORTEUNIDADValue;
property OldIMPORTEUNIDAD : Float read GetOldIMPORTEUNIDADValue;
property IMPORTETOTAL : Float read GetIMPORTETOTALValue write SetIMPORTETOTALValue;
@ -700,6 +712,8 @@ type
property OldTIPO : String read GetOldTIPOValue;
property POSICION : Integer read GetPOSICIONValue write SetPOSICIONValue;
property OldPOSICION : Integer read GetOldPOSICIONValue;
property VALORADO : String read GetVALORADOValue write SetVALORADOValue;
property OldVALORADO : String read GetOldVALORADOValue;
public
constructor Create(aBusinessProcessor: TDABusinessProcessor); override;
@ -709,7 +723,7 @@ type
{ IDarSumaImportesDelta }
IDarSumaImportesDelta = interface(IDarSumaImportes)
['{50AE6D16-89E0-4C6A-9A75-62FE055859AF}']
['{ABF43821-73BF-42CB-9086-3677C16A7153}']
{ Property getters and setters }
function GetOldBASEIMPONIBLEValue : Float;
function GetOldIMPORTEIVAValue : Float;
@ -1328,6 +1342,21 @@ begin
BusinessProcessor.CurrentChange.NewValueByName[fld_DetallesAlbaranClienteIMPORTEPUNTOS] := aValue;
end;
function TDetallesAlbaranClienteBusinessProcessorRules.GetVALORADOValue: String;
begin
result := BusinessProcessor.CurrentChange.NewValueByName[fld_DetallesAlbaranClienteVALORADO];
end;
function TDetallesAlbaranClienteBusinessProcessorRules.GetOldVALORADOValue: String;
begin
result := BusinessProcessor.CurrentChange.OldValueByName[fld_DetallesAlbaranClienteVALORADO];
end;
procedure TDetallesAlbaranClienteBusinessProcessorRules.SetVALORADOValue(const aValue: String);
begin
BusinessProcessor.CurrentChange.NewValueByName[fld_DetallesAlbaranClienteVALORADO] := aValue;
end;
{ TAlbaranCliente_RefreshDatasetBusinessProcessorRules }
constructor TAlbaranCliente_RefreshDatasetBusinessProcessorRules.Create(aBusinessProcessor: TDABusinessProcessor);
@ -1878,17 +1907,17 @@ begin
BusinessProcessor.CurrentChange.NewValueByName[fld_InformeDetallesAlbaranPagoDESCRIPCION] := aValue;
end;
function TInformeDetallesAlbaranPagoBusinessProcessorRules.GetCANTIDADValue: Float;
function TInformeDetallesAlbaranPagoBusinessProcessorRules.GetCANTIDADValue: Integer;
begin
result := BusinessProcessor.CurrentChange.NewValueByName[fld_InformeDetallesAlbaranPagoCANTIDAD];
end;
function TInformeDetallesAlbaranPagoBusinessProcessorRules.GetOldCANTIDADValue: Float;
function TInformeDetallesAlbaranPagoBusinessProcessorRules.GetOldCANTIDADValue: Integer;
begin
result := BusinessProcessor.CurrentChange.OldValueByName[fld_InformeDetallesAlbaranPagoCANTIDAD];
end;
procedure TInformeDetallesAlbaranPagoBusinessProcessorRules.SetCANTIDADValue(const aValue: Float);
procedure TInformeDetallesAlbaranPagoBusinessProcessorRules.SetCANTIDADValue(const aValue: Integer);
begin
BusinessProcessor.CurrentChange.NewValueByName[fld_InformeDetallesAlbaranPagoCANTIDAD] := aValue;
end;
@ -1953,6 +1982,21 @@ begin
BusinessProcessor.CurrentChange.NewValueByName[fld_InformeDetallesAlbaranPagoPOSICION] := aValue;
end;
function TInformeDetallesAlbaranPagoBusinessProcessorRules.GetVALORADOValue: String;
begin
result := BusinessProcessor.CurrentChange.NewValueByName[fld_InformeDetallesAlbaranPagoVALORADO];
end;
function TInformeDetallesAlbaranPagoBusinessProcessorRules.GetOldVALORADOValue: String;
begin
result := BusinessProcessor.CurrentChange.OldValueByName[fld_InformeDetallesAlbaranPagoVALORADO];
end;
procedure TInformeDetallesAlbaranPagoBusinessProcessorRules.SetVALORADOValue(const aValue: String);
begin
BusinessProcessor.CurrentChange.NewValueByName[fld_InformeDetallesAlbaranPagoVALORADO] := aValue;
end;
{ TDarSumaImportesBusinessProcessorRules }
constructor TDarSumaImportesBusinessProcessorRules.Create(aBusinessProcessor: TDABusinessProcessor);

View File

@ -42,6 +42,7 @@ type
IBizImportesDetalle,
IBizPuntosDetalle,
IBizVisibleDetalle,
IBizValoradoDetalle,
IParche) // PARCHE ***********************
private
FIsAppend : Boolean;
@ -378,6 +379,7 @@ begin
PUNTOS := ADetallesPresupuesto.PUNTOS;
IMPORTEPUNTOS := ADetallesPresupuesto.IMPORTEPUNTOS;
VISIBLE := ADetallesPresupuesto.VISIBLE;
VALORADO := ADetallesPresupuesto.VALORADO;
finally
DataTable.EnableControls;
DataTable.EnableEventHandlers;
@ -418,6 +420,7 @@ begin
NUMCONCEPTO := -1;
TIPO := TIPODETALLE_CONCEPTO;
VISIBLE := VISIBLE_TRUE;
VALORADO := VALORADO_TRUE;
Self.DataTable.DisableEventHandlers;
try

View File

@ -449,8 +449,8 @@ object srvAlbaranesCliente: TsrvAlbaranesCliente
SQL =
'SELECT'#10' CODIGOALBARAN, NUMCONCEPTO, POSICION, TIPO, DESCRIPCI' +
'ON, CANTIDAD,'#10' IMPORTEUNIDAD, IMPORTETOTAL, VISIBLE, PUNTOS, ' +
'IMPORTEPUNTOS'#10' FROM'#10' DETALLESALBARANPAGO'#10' WHERE CODIGOALBAR' +
'AN = :CODIGOALBARAN'#10' ORDER BY POSICION'
'IMPORTEPUNTOS, VALORADO'#10' FROM'#10' DETALLESALBARANPAGO'#10' WHERE C' +
'ODIGOALBARAN = :CODIGOALBARAN'#10' ORDER BY POSICION'
StatementType = stSQL
ColumnMappings = <
item
@ -496,6 +496,10 @@ object srvAlbaranesCliente: TsrvAlbaranesCliente
item
DatasetField = 'IMPORTEPUNTOS'
TableField = 'IMPORTEPUNTOS'
end
item
DatasetField = 'VALORADO'
TableField = 'VALORADO'
end>
end>
Name = 'DetallesAlbaranCliente'
@ -613,6 +617,18 @@ object srvAlbaranesCliente: TsrvAlbaranesCliente
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'VALORADO'
DataType = datString
Size = 1
BlobType = dabtUnknown
DisplayWidth = 0
Alignment = taLeftJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end>
BusinessRulesClient.ScriptLanguage = rslPascalScript
BusinessRulesServer.ScriptLanguage = rslPascalScript
@ -1174,9 +1190,9 @@ object srvAlbaranesCliente: TsrvAlbaranesCliente
TargetTable = 'ALBARANPAGO'
SQL =
'SELECT CODIGOALBARAN, NUMCONCEPTO, DESCRIPCION, CANTIDAD, IMPORT' +
'EUNIDAD,'#10'IMPORTETOTAL, TIPO, POSICION'#10'FROM DETALLESALBARANPAGO'#10'W' +
'HERE CODIGOALBARAN = :CODIGOALBARAN AND'#10'VISIBLE = '#39'S'#39#10'ORDER BY P' +
'OSICION;'
'EUNIDAD,'#10'IMPORTETOTAL, TIPO, POSICION, VALORADO'#10'FROM DETALLESALB' +
'ARANPAGO'#10'WHERE CODIGOALBARAN = :CODIGOALBARAN AND'#10'VISIBLE = '#39'S'#39#10 +
'ORDER BY POSICION;'
StatementType = stSQL
ColumnMappings = <
item
@ -1210,6 +1226,10 @@ object srvAlbaranesCliente: TsrvAlbaranesCliente
item
DatasetField = 'POSICION'
TableField = 'POSICION'
end
item
DatasetField = 'VALORADO'
TableField = 'VALORADO'
end>
end>
Name = 'InformeDetallesAlbaranPago'
@ -1250,7 +1270,7 @@ object srvAlbaranesCliente: TsrvAlbaranesCliente
end
item
Name = 'CANTIDAD'
DataType = datFloat
DataType = datInteger
BlobType = dabtUnknown
DisplayWidth = 0
Alignment = taLeftJustify
@ -1303,6 +1323,18 @@ object srvAlbaranesCliente: TsrvAlbaranesCliente
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'VALORADO'
DataType = datString
Size = 1
BlobType = dabtUnknown
DisplayWidth = 0
Alignment = taLeftJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end>
BusinessRulesClient.ScriptLanguage = rslPascalScript
BusinessRulesServer.ScriptLanguage = rslPascalScript

View File

@ -84,6 +84,7 @@ begin
FieldByName(fld_DetallesFacturasClienteIMPORTEUNIDAD).BusinessRulesID := 'Client.Field.ImporteUnidad';
FieldByName(fld_DetallesFacturasClienteTIPO).BusinessRulesID := 'Client.Field.TipoDetalle';
FieldByName(fld_DetallesFacturasClienteVISIBLE).BusinessRulesID := 'Client.Field.Visible';
FieldByName(fld_DetallesFacturasClienteVALORADO).BusinessRulesID := 'Client.Field.Valorado';
end;
(dtCabecera as IBizFacturasCliente).Detalles := (dtDetalles as IBizDetallesFacturasCliente);

View File

@ -35,6 +35,9 @@ inherited frViewDetallesAlbaranCliente: TfrViewDetallesAlbaranCliente
Styles.OnGetContentStyle = cxGridViewVISIBLEStylesGetContentStyle
Width = 76
end
inherited cxGridViewVALORADO: TcxGridDBColumn
Styles.OnGetContentStyle = cxGridViewVALORADOStylesGetContentStyle
end
end
end
inherited cxStyleRepository1: TcxStyleRepository

View File

@ -24,6 +24,9 @@ type
procedure cxGridViewVISIBLEStylesGetContentStyle(
Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord;
AItem: TcxCustomGridTableItem; out AStyle: TcxStyle);
procedure cxGridViewVALORADOStylesGetContentStyle(
Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord;
AItem: TcxCustomGridTableItem; out AStyle: TcxStyle);
end;
@ -91,4 +94,22 @@ begin
end;
end;
procedure TfrViewDetallesAlbaranCliente.cxGridViewVALORADOStylesGetContentStyle(
Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord;
AItem: TcxCustomGridTableItem; out AStyle: TcxStyle);
var
IndiceCol : Integer;
ATipo : String;
begin
if Assigned(ARecord) then
begin
IndiceCol := (Sender as TcxGridDBTableView).GetColumnByFieldName(fld_TIPODETALLE).Index;
ATipo := VarToStr(ARecord.Values[IndiceCol]);
if ATipo = TIPODETALLE_SUBTOTAL then
AStyle := cxStyle_SUBTOTAL;
if ATipo = TIPODETALLE_TITULO then
AStyle := cxStyle_TITULO;
end;
end;
end.

View File

@ -37,6 +37,9 @@ inherited frViewDetallesFacturaCliente: TfrViewDetallesFacturaCliente
Styles.OnGetContentStyle = cxGridViewVISIBLEStylesGetContentStyle
Width = 76
end
inherited cxGridViewVALORADO: TcxGridDBColumn
Styles.OnGetContentStyle = cxGridViewVALORADOStylesGetContentStyle
end
end
end
inherited cxStyleRepository1: TcxStyleRepository

View File

@ -24,6 +24,9 @@ type
procedure cxGridViewVISIBLEStylesGetContentStyle(
Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord;
AItem: TcxCustomGridTableItem; out AStyle: TcxStyle);
procedure cxGridViewVALORADOStylesGetContentStyle(
Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord;
AItem: TcxCustomGridTableItem; out AStyle: TcxStyle);
end;
@ -91,4 +94,22 @@ begin
end;
end;
procedure TfrViewDetallesFacturaCliente.cxGridViewVALORADOStylesGetContentStyle(
Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord;
AItem: TcxCustomGridTableItem; out AStyle: TcxStyle);
var
IndiceCol : Integer;
ATipo : String;
begin
if Assigned(ARecord) then
begin
IndiceCol := (Sender as TcxGridDBTableView).GetColumnByFieldName(fld_TIPODETALLE).Index;
ATipo := VarToStr(ARecord.Values[IndiceCol]);
if ATipo = TIPODETALLE_SUBTOTAL then
AStyle := cxStyle_SUBTOTAL;
if ATipo = TIPODETALLE_TITULO then
AStyle := cxStyle_TITULO;
end;
end;
end.

View File

@ -9,12 +9,12 @@ const
{ Data table rules ids
Feel free to change them to something more human readable
but make sure they are unique in the context of your application }
RID_ListaAnosFacturas = '{42919587-DDC2-4D2F-8B79-4C034016B877}';
RID_DarReferenciaFactura = '{75D2C86E-2226-4165-AE57-6FBB114F6C38}';
RID_FacturasCliente = '{46F2D1A1-F069-49C3-8FD7-F73A82EA4B30}';
RID_DetallesFacturasCliente = '{BB44EE25-910C-4356-B962-792C1239F806}';
RID_InformeCabeceraFacturaCliente = '{865C733F-2C85-46C9-A40C-8A022512FC4E}';
RID_InformeDetallesFacturaCliente = '{E219BB9F-D3FD-438D-A03B-0E466305B8A9}';
RID_ListaAnosFacturas = '{F555E879-98E6-4445-B479-6DDEE0F72451}';
RID_DarReferenciaFactura = '{31F913BC-22CC-4CD6-9E3B-CBAFEDCDB516}';
RID_FacturasCliente = '{031548EB-0F39-4A79-BCDA-22C5DB44DE89}';
RID_DetallesFacturasCliente = '{2F90D934-3C17-43E8-81F3-671E2D2E3270}';
RID_InformeCabeceraFacturaCliente = '{7C40DCD0-C61B-49F8-A612-4E812BEFBBBE}';
RID_InformeDetallesFacturaCliente = '{35113953-CFFB-4B9C-BD19-3E378E0A3CD0}';
{ Data table names }
nme_ListaAnosFacturas = 'ListaAnosFacturas';
@ -94,6 +94,7 @@ const
fld_DetallesFacturasClienteIMPORTEUNIDAD = 'IMPORTEUNIDAD';
fld_DetallesFacturasClienteIMPORTETOTAL = 'IMPORTETOTAL';
fld_DetallesFacturasClienteVISIBLE = 'VISIBLE';
fld_DetallesFacturasClienteVALORADO = 'VALORADO';
{ DetallesFacturasCliente field indexes }
idx_DetallesFacturasClienteCODIGOFACTURA = 0;
@ -105,6 +106,7 @@ const
idx_DetallesFacturasClienteIMPORTEUNIDAD = 6;
idx_DetallesFacturasClienteIMPORTETOTAL = 7;
idx_DetallesFacturasClienteVISIBLE = 8;
idx_DetallesFacturasClienteVALORADO = 9;
{ InformeCabeceraFacturaCliente fields }
fld_InformeCabeceraFacturaClienteCODIGOEMPRESA = 'CODIGOEMPRESA';
@ -161,6 +163,7 @@ const
fld_InformeDetallesFacturaClienteIMPORTETOTAL = 'IMPORTETOTAL';
fld_InformeDetallesFacturaClienteTIPO = 'TIPO';
fld_InformeDetallesFacturaClientePOSICION = 'POSICION';
fld_InformeDetallesFacturaClienteVALORADO = 'VALORADO';
{ InformeDetallesFacturaCliente field indexes }
idx_InformeDetallesFacturaClienteCODIGOFACTURA = 0;
@ -171,11 +174,12 @@ const
idx_InformeDetallesFacturaClienteIMPORTETOTAL = 5;
idx_InformeDetallesFacturaClienteTIPO = 6;
idx_InformeDetallesFacturaClientePOSICION = 7;
idx_InformeDetallesFacturaClienteVALORADO = 8;
type
{ IListaAnosFacturas }
IListaAnosFacturas = interface(IDAStronglyTypedDataTable)
['{728E1D30-3B2E-44F0-86B2-D18BDDE2C92C}']
['{C1615D5E-1861-4FC2-8130-504C8985199F}']
{ Property getters and setters }
function GetANOValue: String;
procedure SetANOValue(const aValue: String);
@ -204,7 +208,7 @@ type
{ IDarReferenciaFactura }
IDarReferenciaFactura = interface(IDAStronglyTypedDataTable)
['{E947ABD4-4AD9-41C2-9351-96CBCDFFF938}']
['{833C57EE-185B-4376-BEF6-EADB0B75B43E}']
{ Property getters and setters }
function GetREFERENCIAValue: String;
procedure SetREFERENCIAValue(const aValue: String);
@ -233,7 +237,7 @@ type
{ IFacturasCliente }
IFacturasCliente = interface(IDAStronglyTypedDataTable)
['{1D8ABDA0-4A60-4470-9880-627ED9D48B67}']
['{BF90D431-7F0C-43BF-BFC8-609EBF5957FD}']
{ Property getters and setters }
function GetCODIGOEMPRESAValue: Integer;
procedure SetCODIGOEMPRESAValue(const aValue: Integer);
@ -388,7 +392,7 @@ type
{ IDetallesFacturasCliente }
IDetallesFacturasCliente = interface(IDAStronglyTypedDataTable)
['{5D2C18DA-1596-42C5-B509-360BFB347BDD}']
['{8EFC0465-252D-4ECE-9135-A803FC28C9A2}']
{ Property getters and setters }
function GetCODIGOFACTURAValue: Integer;
procedure SetCODIGOFACTURAValue(const aValue: Integer);
@ -408,6 +412,8 @@ type
procedure SetIMPORTETOTALValue(const aValue: Currency);
function GetVISIBLEValue: String;
procedure SetVISIBLEValue(const aValue: String);
function GetVALORADOValue: String;
procedure SetVALORADOValue(const aValue: String);
{ Properties }
@ -420,6 +426,7 @@ type
property IMPORTEUNIDAD: Currency read GetIMPORTEUNIDADValue write SetIMPORTEUNIDADValue;
property IMPORTETOTAL: Currency read GetIMPORTETOTALValue write SetIMPORTETOTALValue;
property VISIBLE: String read GetVISIBLEValue write SetVISIBLEValue;
property VALORADO: String read GetVALORADOValue write SetVALORADOValue;
end;
{ TDetallesFacturasClienteDataTableRules }
@ -445,6 +452,8 @@ type
procedure SetIMPORTETOTALValue(const aValue: Currency); virtual;
function GetVISIBLEValue: String; virtual;
procedure SetVISIBLEValue(const aValue: String); virtual;
function GetVALORADOValue: String; virtual;
procedure SetVALORADOValue(const aValue: String); virtual;
{ Properties }
property CODIGOFACTURA: Integer read GetCODIGOFACTURAValue write SetCODIGOFACTURAValue;
@ -456,6 +465,7 @@ type
property IMPORTEUNIDAD: Currency read GetIMPORTEUNIDADValue write SetIMPORTEUNIDADValue;
property IMPORTETOTAL: Currency read GetIMPORTETOTALValue write SetIMPORTETOTALValue;
property VISIBLE: String read GetVISIBLEValue write SetVISIBLEValue;
property VALORADO: String read GetVALORADOValue write SetVALORADOValue;
public
constructor Create(aDataTable: TDADataTable); override;
@ -465,7 +475,7 @@ type
{ IInformeCabeceraFacturaCliente }
IInformeCabeceraFacturaCliente = interface(IDAStronglyTypedDataTable)
['{64DCF384-1920-4E15-9B5A-BD3B2673C3C4}']
['{08A69022-7E0C-4344-86F7-453D608F06A6}']
{ Property getters and setters }
function GetCODIGOEMPRESAValue: Integer;
procedure SetCODIGOEMPRESAValue(const aValue: Integer);
@ -614,7 +624,7 @@ type
{ IInformeDetallesFacturaCliente }
IInformeDetallesFacturaCliente = interface(IDAStronglyTypedDataTable)
['{398C14EC-410D-4756-B0B6-97EF74DA85D2}']
['{2FC352CD-EB9C-465E-943D-92589BB3C567}']
{ Property getters and setters }
function GetCODIGOFACTURAValue: Integer;
procedure SetCODIGOFACTURAValue(const aValue: Integer);
@ -632,6 +642,8 @@ type
procedure SetTIPOValue(const aValue: String);
function GetPOSICIONValue: Integer;
procedure SetPOSICIONValue(const aValue: Integer);
function GetVALORADOValue: String;
procedure SetVALORADOValue(const aValue: String);
{ Properties }
@ -643,6 +655,7 @@ type
property IMPORTETOTAL: Currency read GetIMPORTETOTALValue write SetIMPORTETOTALValue;
property TIPO: String read GetTIPOValue write SetTIPOValue;
property POSICION: Integer read GetPOSICIONValue write SetPOSICIONValue;
property VALORADO: String read GetVALORADOValue write SetVALORADOValue;
end;
{ TInformeDetallesFacturaClienteDataTableRules }
@ -666,6 +679,8 @@ type
procedure SetTIPOValue(const aValue: String); virtual;
function GetPOSICIONValue: Integer; virtual;
procedure SetPOSICIONValue(const aValue: Integer); virtual;
function GetVALORADOValue: String; virtual;
procedure SetVALORADOValue(const aValue: String); virtual;
{ Properties }
property CODIGOFACTURA: Integer read GetCODIGOFACTURAValue write SetCODIGOFACTURAValue;
@ -676,6 +691,7 @@ type
property IMPORTETOTAL: Currency read GetIMPORTETOTALValue write SetIMPORTETOTALValue;
property TIPO: String read GetTIPOValue write SetTIPOValue;
property POSICION: Integer read GetPOSICIONValue write SetPOSICIONValue;
property VALORADO: String read GetVALORADOValue write SetVALORADOValue;
public
constructor Create(aDataTable: TDADataTable); override;
@ -1066,6 +1082,16 @@ begin
DataTable.Fields[idx_DetallesFacturasClienteVISIBLE].AsString := aValue;
end;
function TDetallesFacturasClienteDataTableRules.GetVALORADOValue: String;
begin
result := DataTable.Fields[idx_DetallesFacturasClienteVALORADO].AsString;
end;
procedure TDetallesFacturasClienteDataTableRules.SetVALORADOValue(const aValue: String);
begin
DataTable.Fields[idx_DetallesFacturasClienteVALORADO].AsString := aValue;
end;
{ TInformeCabeceraFacturaClienteDataTableRules }
constructor TInformeCabeceraFacturaClienteDataTableRules.Create(aDataTable: TDADataTable);
@ -1382,6 +1408,16 @@ begin
DataTable.Fields[idx_InformeDetallesFacturaClientePOSICION].AsInteger := aValue;
end;
function TInformeDetallesFacturaClienteDataTableRules.GetVALORADOValue: String;
begin
result := DataTable.Fields[idx_InformeDetallesFacturaClienteVALORADO].AsString;
end;
procedure TInformeDetallesFacturaClienteDataTableRules.SetVALORADOValue(const aValue: String);
begin
DataTable.Fields[idx_InformeDetallesFacturaClienteVALORADO].AsString := aValue;
end;
initialization
RegisterDataTableRules(RID_ListaAnosFacturas, TListaAnosFacturasDataTableRules);

View File

@ -9,17 +9,17 @@ const
{ Delta rules ids
Feel free to change them to something more human readable
but make sure they are unique in the context of your application }
RID_ListaAnosFacturasDelta = '{4A3D7BF0-E719-4050-B586-158542987232}';
RID_DarReferenciaFacturaDelta = '{83C26CE1-CD1F-49D4-9120-6EDE7CEEA2EA}';
RID_FacturasClienteDelta = '{68C74297-5D44-444B-8771-A8E6D3D3271B}';
RID_DetallesFacturasClienteDelta = '{BD1FD6EF-39D5-452F-9839-1629116AF11F}';
RID_InformeCabeceraFacturaClienteDelta = '{790B67BB-36BD-484E-8E99-288CC4E12849}';
RID_InformeDetallesFacturaClienteDelta = '{0EC5EBAE-B438-4B46-AC9F-C126476C5876}';
RID_ListaAnosFacturasDelta = '{E5DB6C55-5B68-4B8A-825B-C84D13D9456D}';
RID_DarReferenciaFacturaDelta = '{45121769-EC6F-4045-9D56-FAA87687E68B}';
RID_FacturasClienteDelta = '{04EFDBF9-E923-48FA-B960-078A10F69155}';
RID_DetallesFacturasClienteDelta = '{CDDF089B-A4FE-4ECF-9CA2-C27E6F7947CF}';
RID_InformeCabeceraFacturaClienteDelta = '{E5773B7E-6449-4935-B809-E04C0634015B}';
RID_InformeDetallesFacturaClienteDelta = '{CB8F77F7-5D7D-4BEF-84F0-3A429BBE7FB9}';
type
{ IListaAnosFacturasDelta }
IListaAnosFacturasDelta = interface(IListaAnosFacturas)
['{4A3D7BF0-E719-4050-B586-158542987232}']
['{E5DB6C55-5B68-4B8A-825B-C84D13D9456D}']
{ Property getters and setters }
function GetOldANOValue : String;
@ -48,7 +48,7 @@ type
{ IDarReferenciaFacturaDelta }
IDarReferenciaFacturaDelta = interface(IDarReferenciaFactura)
['{83C26CE1-CD1F-49D4-9120-6EDE7CEEA2EA}']
['{45121769-EC6F-4045-9D56-FAA87687E68B}']
{ Property getters and setters }
function GetOldREFERENCIAValue : String;
@ -77,7 +77,7 @@ type
{ IFacturasClienteDelta }
IFacturasClienteDelta = interface(IFacturasCliente)
['{68C74297-5D44-444B-8771-A8E6D3D3271B}']
['{04EFDBF9-E923-48FA-B960-078A10F69155}']
{ Property getters and setters }
function GetOldCODIGOEMPRESAValue : Integer;
function GetOldCODIGOValue : Integer;
@ -253,7 +253,7 @@ type
{ IDetallesFacturasClienteDelta }
IDetallesFacturasClienteDelta = interface(IDetallesFacturasCliente)
['{BD1FD6EF-39D5-452F-9839-1629116AF11F}']
['{CDDF089B-A4FE-4ECF-9CA2-C27E6F7947CF}']
{ Property getters and setters }
function GetOldCODIGOFACTURAValue : Integer;
function GetOldNUMCONCEPTOValue : Integer;
@ -264,6 +264,7 @@ type
function GetOldIMPORTEUNIDADValue : Currency;
function GetOldIMPORTETOTALValue : Currency;
function GetOldVISIBLEValue : String;
function GetOldVALORADOValue : String;
{ Properties }
property OldCODIGOFACTURA : Integer read GetOldCODIGOFACTURAValue;
@ -275,6 +276,7 @@ type
property OldIMPORTEUNIDAD : Currency read GetOldIMPORTEUNIDADValue;
property OldIMPORTETOTAL : Currency read GetOldIMPORTETOTALValue;
property OldVISIBLE : String read GetOldVISIBLEValue;
property OldVALORADO : String read GetOldVALORADOValue;
end;
{ TDetallesFacturasClienteBusinessProcessorRules }
@ -309,6 +311,9 @@ type
function GetVISIBLEValue: String; virtual;
function GetOldVISIBLEValue: String; virtual;
procedure SetVISIBLEValue(const aValue: String); virtual;
function GetVALORADOValue: String; virtual;
function GetOldVALORADOValue: String; virtual;
procedure SetVALORADOValue(const aValue: String); virtual;
{ Properties }
property CODIGOFACTURA : Integer read GetCODIGOFACTURAValue write SetCODIGOFACTURAValue;
@ -329,6 +334,8 @@ type
property OldIMPORTETOTAL : Currency read GetOldIMPORTETOTALValue;
property VISIBLE : String read GetVISIBLEValue write SetVISIBLEValue;
property OldVISIBLE : String read GetOldVISIBLEValue;
property VALORADO : String read GetVALORADOValue write SetVALORADOValue;
property OldVALORADO : String read GetOldVALORADOValue;
public
constructor Create(aBusinessProcessor: TDABusinessProcessor); override;
@ -338,7 +345,7 @@ type
{ IInformeCabeceraFacturaClienteDelta }
IInformeCabeceraFacturaClienteDelta = interface(IInformeCabeceraFacturaCliente)
['{790B67BB-36BD-484E-8E99-288CC4E12849}']
['{E5773B7E-6449-4935-B809-E04C0634015B}']
{ Property getters and setters }
function GetOldCODIGOEMPRESAValue : Integer;
function GetOldCODIGOValue : Integer;
@ -507,7 +514,7 @@ type
{ IInformeDetallesFacturaClienteDelta }
IInformeDetallesFacturaClienteDelta = interface(IInformeDetallesFacturaCliente)
['{0EC5EBAE-B438-4B46-AC9F-C126476C5876}']
['{CB8F77F7-5D7D-4BEF-84F0-3A429BBE7FB9}']
{ Property getters and setters }
function GetOldCODIGOFACTURAValue : Integer;
function GetOldNUMCONCEPTOValue : Integer;
@ -517,6 +524,7 @@ type
function GetOldIMPORTETOTALValue : Currency;
function GetOldTIPOValue : String;
function GetOldPOSICIONValue : Integer;
function GetOldVALORADOValue : String;
{ Properties }
property OldCODIGOFACTURA : Integer read GetOldCODIGOFACTURAValue;
@ -527,6 +535,7 @@ type
property OldIMPORTETOTAL : Currency read GetOldIMPORTETOTALValue;
property OldTIPO : String read GetOldTIPOValue;
property OldPOSICION : Integer read GetOldPOSICIONValue;
property OldVALORADO : String read GetOldVALORADOValue;
end;
{ TInformeDetallesFacturaClienteBusinessProcessorRules }
@ -558,6 +567,9 @@ type
function GetPOSICIONValue: Integer; virtual;
function GetOldPOSICIONValue: Integer; virtual;
procedure SetPOSICIONValue(const aValue: Integer); virtual;
function GetVALORADOValue: String; virtual;
function GetOldVALORADOValue: String; virtual;
procedure SetVALORADOValue(const aValue: String); virtual;
{ Properties }
property CODIGOFACTURA : Integer read GetCODIGOFACTURAValue write SetCODIGOFACTURAValue;
@ -576,6 +588,8 @@ type
property OldTIPO : String read GetOldTIPOValue;
property POSICION : Integer read GetPOSICIONValue write SetPOSICIONValue;
property OldPOSICION : Integer read GetOldPOSICIONValue;
property VALORADO : String read GetVALORADOValue write SetVALORADOValue;
property OldVALORADO : String read GetOldVALORADOValue;
public
constructor Create(aBusinessProcessor: TDABusinessProcessor); override;
@ -1134,6 +1148,21 @@ begin
BusinessProcessor.CurrentChange.NewValueByName[fld_DetallesFacturasClienteVISIBLE] := aValue;
end;
function TDetallesFacturasClienteBusinessProcessorRules.GetVALORADOValue: String;
begin
result := BusinessProcessor.CurrentChange.NewValueByName[fld_DetallesFacturasClienteVALORADO];
end;
function TDetallesFacturasClienteBusinessProcessorRules.GetOldVALORADOValue: String;
begin
result := BusinessProcessor.CurrentChange.OldValueByName[fld_DetallesFacturasClienteVALORADO];
end;
procedure TDetallesFacturasClienteBusinessProcessorRules.SetVALORADOValue(const aValue: String);
begin
BusinessProcessor.CurrentChange.NewValueByName[fld_DetallesFacturasClienteVALORADO] := aValue;
end;
{ TInformeCabeceraFacturaClienteBusinessProcessorRules }
constructor TInformeCabeceraFacturaClienteBusinessProcessorRules.Create(aBusinessProcessor: TDABusinessProcessor);
@ -1597,6 +1626,21 @@ begin
BusinessProcessor.CurrentChange.NewValueByName[fld_InformeDetallesFacturaClientePOSICION] := aValue;
end;
function TInformeDetallesFacturaClienteBusinessProcessorRules.GetVALORADOValue: String;
begin
result := BusinessProcessor.CurrentChange.NewValueByName[fld_InformeDetallesFacturaClienteVALORADO];
end;
function TInformeDetallesFacturaClienteBusinessProcessorRules.GetOldVALORADOValue: String;
begin
result := BusinessProcessor.CurrentChange.OldValueByName[fld_InformeDetallesFacturaClienteVALORADO];
end;
procedure TInformeDetallesFacturaClienteBusinessProcessorRules.SetVALORADOValue(const aValue: String);
begin
BusinessProcessor.CurrentChange.NewValueByName[fld_InformeDetallesFacturaClienteVALORADO] := aValue;
end;
initialization
RegisterBusinessProcessorRules(RID_ListaAnosFacturasDelta, TListaAnosFacturasBusinessProcessorRules);

View File

@ -50,6 +50,7 @@ type
IBizImportesDetalle,
IBizPuntosDetalle,
IBizVisibleDetalle,
IBizValoradoDetalle,
IParche) // PARCHE ***********************
private
FIsAppend : Boolean;
@ -406,6 +407,7 @@ begin
CANTIDAD := ADetallesAlbaranes.CANTIDAD;
IMPORTEUNIDAD := ADetallesAlbaranes.IMPORTEUNIDAD;
VISIBLE := ADetallesAlbaranes.VISIBLE;
VALORADO := ADetallesAlbaranes.VALORADO;
finally
DataTable.EnableControls;
DataTable.EnableEventHandlers;
@ -491,7 +493,8 @@ begin
POSICION := FPosicionNueva;
NUMCONCEPTO := -1;
TIPO := TIPODETALLE_CONCEPTO;
VISIBLE := VISIBLE_TRUE;
VISIBLE := VISIBLE_TRUE;
VALORADO := VALORADO_TRUE;
end;

View File

@ -430,9 +430,9 @@ object srvFacturasCliente: TsrvFacturasCliente
TargetTable = 'DETALLESFACTURASCLIENTE'
SQL =
'SELECT '#10' CODIGOFACTURA, NUMCONCEPTO, DESCRIPCION, CANTIDAD, '#10 +
' IMPORTEUNIDAD, IMPORTETOTAL, POSICION, TIPO, VISIBLE'#10' FROM'#10 +
' DETALLESFACTURASCLIENTE'#10' WHERE CODIGOFACTURA = :CODIGOFACTU' +
'RA'#10' ORDER BY POSICION;'
' IMPORTEUNIDAD, IMPORTETOTAL, POSICION, TIPO, VISIBLE, VALORA' +
'DO'#10' FROM'#10' DETALLESFACTURASCLIENTE'#10' WHERE CODIGOFACTURA = :C' +
'ODIGOFACTURA'#10' ORDER BY POSICION;'
StatementType = stSQL
ColumnMappings = <
item
@ -470,6 +470,10 @@ object srvFacturasCliente: TsrvFacturasCliente
item
DatasetField = 'VISIBLE'
TableField = 'VISIBLE'
end
item
DatasetField = 'VALORADO'
TableField = 'VALORADO'
end>
end>
Name = 'DetallesFacturasCliente'
@ -567,6 +571,18 @@ object srvFacturasCliente: TsrvFacturasCliente
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'VALORADO'
DataType = datString
Size = 1
BlobType = dabtUnknown
DisplayWidth = 0
Alignment = taLeftJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end>
BusinessRulesClient.ScriptLanguage = rslPascalScript
BusinessRulesServer.ScriptLanguage = rslPascalScript
@ -918,9 +934,9 @@ object srvFacturasCliente: TsrvFacturasCliente
TargetTable = 'DETALLESFACTURASCLIENTE'
SQL =
'SELECT '#10' CODIGOFACTURA, NUMCONCEPTO, DESCRIPCION, CANTIDAD, '#10 +
' IMPORTEUNIDAD, IMPORTETOTAL, POSICION, TIPO'#10'FROM DETALLESFAC' +
'TURASCLIENTE'#10'WHERE CODIGOFACTURA = :CODIGOFACTURA AND'#10'VISIBLE = ' +
#39'S'#39#10'ORDER BY POSICION'
' IMPORTEUNIDAD, IMPORTETOTAL, POSICION, TIPO, VALORADO'#10'FROM D' +
'ETALLESFACTURASCLIENTE'#10'WHERE CODIGOFACTURA = :CODIGOFACTURA AND'#10 +
'VISIBLE = '#39'S'#39#10'ORDER BY POSICION'
StatementType = stSQL
ColumnMappings = <
item
@ -954,6 +970,10 @@ object srvFacturasCliente: TsrvFacturasCliente
item
DatasetField = 'CODIGOFACTURA'
TableField = 'CODIGOFACTURA'
end
item
DatasetField = 'VALORADO'
TableField = 'VALORADO'
end>
end>
Name = 'InformeDetallesFacturaCliente'
@ -1040,6 +1060,18 @@ object srvFacturasCliente: TsrvFacturasCliente
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'VALORADO'
DataType = datString
Size = 1
BlobType = dabtUnknown
DisplayWidth = 0
Alignment = taLeftJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end>
BusinessRulesClient.ScriptLanguage = rslPascalScript
BusinessRulesServer.ScriptLanguage = rslPascalScript

View File

@ -20,9 +20,6 @@ type
cxGridViewPOSICION: TcxGridDBColumn;
procedure cxGridViewEditing(Sender: TcxCustomGridTableView;
AItem: TcxCustomGridTableItem; var AAllow: Boolean);
procedure cxGridViewVISIBLEStylesGetContentStyle(
Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord;
AItem: TcxCustomGridTableItem; out AStyle: TcxStyle);
end;
@ -52,22 +49,4 @@ begin
inherited;
end;
procedure TfrViewDetallesPedidosProveedor.cxGridViewVISIBLEStylesGetContentStyle(
Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord;
AItem: TcxCustomGridTableItem; out AStyle: TcxStyle);
var
IndiceCol : Integer;
ATipo : String;
begin
{ if Assigned(ARecord) then
begin
IndiceCol := (Sender as TcxGridDBTableView).GetColumnByFieldName(fld_TIPODETALLE).Index;
ATipo := VarToStr(ARecord.Values[IndiceCol]);
if ATipo = TIPODETALLE_SUBTOTAL then
AStyle := cxStyle_SUBTOTAL;
if ATipo = TIPODETALLE_TITULO then
AStyle := cxStyle_TITULO;
end;}
end;
end.

View File

@ -120,6 +120,7 @@ begin
FieldByName(fld_DetallesPresupuestosIMPORTEPUNTOS).BusinessRulesID := 'Client.Field.ImportePuntos';
FieldByName(fld_DetallesPresupuestosVISIBLE).BusinessRulesID := 'Client.Field.Visible';
FieldByName(fld_DetallesPresupuestosVALORADO).BusinessRulesID := 'Client.Field.Valorado';
end;
(dtPresupuestos as IBizPresupuestos).Detalles := (dtDetalles as IBizDetallesPresupuesto);

View File

@ -1,7 +1,5 @@
inherited frViewDetallesPresupuesto: TfrViewDetallesPresupuesto
Width = 443
inherited cxGrid: TcxGrid
Width = 443
inherited cxGridView: TcxGridDBTableView
DataController.Summary.FooterSummaryItems = <
item
@ -54,11 +52,11 @@ inherited frViewDetallesPresupuesto: TfrViewDetallesPresupuesto
Styles.OnGetContentStyle = cxGridViewVISIBLEStylesGetContentStyle
Width = 21
end
inherited cxGridViewVALORADO: TcxGridDBColumn
Styles.OnGetContentStyle = cxGridViewVALORADOStylesGetContentStyle
end
end
end
inherited ToolBar1: TToolBar
Width = 443
end
inherited cxStyleRepository1: TcxStyleRepository
object cxStyle_PUNTOS: TcxStyle
AssignedValues = [svColor, svFont, svTextColor]

View File

@ -25,6 +25,9 @@ type
procedure cxGridViewVISIBLEStylesGetContentStyle(
Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord;
AItem: TcxCustomGridTableItem; out AStyle: TcxStyle);
procedure cxGridViewVALORADOStylesGetContentStyle(
Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord;
AItem: TcxCustomGridTableItem; out AStyle: TcxStyle);
private
{ Private declarations }
public
@ -95,4 +98,22 @@ begin
end;
end;
procedure TfrViewDetallesPresupuesto.cxGridViewVALORADOStylesGetContentStyle(
Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord;
AItem: TcxCustomGridTableItem; out AStyle: TcxStyle);
var
IndiceCol : Integer;
ATipo : String;
begin
if Assigned(ARecord) then
begin
IndiceCol := (Sender as TcxGridDBTableView).GetColumnByFieldName(fld_TIPODETALLE).Index;
ATipo := VarToStr(ARecord.Values[IndiceCol]);
if ATipo = TIPODETALLE_SUBTOTAL then
AStyle := cxStyle_SUBTOTAL;
if ATipo = TIPODETALLE_TITULO then
AStyle := cxStyle_TITULO;
end;
end;
end.

View File

@ -9,12 +9,12 @@ const
{ Data table rules ids
Feel free to change them to something more human readable
but make sure they are unique in the context of your application }
RID_ListaAnosPresupuestos = '{95031149-82C7-4C73-BC10-9B1285B42FD8}';
RID_DetallesPresupuestos = '{4155E7A3-B36F-440C-9232-FCDA6E0E57D3}';
RID_Presupuestos = '{3C692B06-401D-4BB5-9E59-1029ECE88CCA}';
RID_Presupuestos_RefreshDataset = '{4DDAA5E9-1786-49E9-82E4-92A8E5A30D2E}';
RID_InformeCabeceraPresupuesto = '{3826E313-F328-47E3-AFF6-4C02E162BD3C}';
RID_InformeDetallesPresupuesto = '{363E9ABE-D657-4094-A45A-1F44E3CC35DE}';
RID_ListaAnosPresupuestos = '{5962C413-3DAB-454D-B36A-FD4E24DE730F}';
RID_DetallesPresupuestos = '{25BCA0F2-589D-4000-B0E6-9182C7D37894}';
RID_Presupuestos = '{C41805F4-A7E8-4D44-B1A9-664132994979}';
RID_Presupuestos_RefreshDataset = '{D439CBC6-EB81-49A4-8ECC-CC48D9CECE2A}';
RID_InformeCabeceraPresupuesto = '{CF1F99E6-E1F4-49FA-810B-63F71F884A5F}';
RID_InformeDetallesPresupuesto = '{427D3BE3-C67C-4007-B3D3-2BDB73496BAA}';
{ Data table names }
nme_ListaAnosPresupuestos = 'ListaAnosPresupuestos';
@ -42,6 +42,7 @@ const
fld_DetallesPresupuestosVISIBLE = 'VISIBLE';
fld_DetallesPresupuestosPUNTOS = 'PUNTOS';
fld_DetallesPresupuestosIMPORTEPUNTOS = 'IMPORTEPUNTOS';
fld_DetallesPresupuestosVALORADO = 'VALORADO';
{ DetallesPresupuestos field indexes }
idx_DetallesPresupuestosCODIGOPRESUPUESTO = 0;
@ -55,6 +56,7 @@ const
idx_DetallesPresupuestosVISIBLE = 8;
idx_DetallesPresupuestosPUNTOS = 9;
idx_DetallesPresupuestosIMPORTEPUNTOS = 10;
idx_DetallesPresupuestosVALORADO = 11;
{ Presupuestos fields }
fld_PresupuestosCODIGOEMPRESA = 'CODIGOEMPRESA';
@ -199,6 +201,7 @@ const
fld_InformeDetallesPresupuestoIMPORTETOTAL = 'IMPORTETOTAL';
fld_InformeDetallesPresupuestoTIPO = 'TIPO';
fld_InformeDetallesPresupuestoPOSICION = 'POSICION';
fld_InformeDetallesPresupuestoVALORADO = 'VALORADO';
{ InformeDetallesPresupuesto field indexes }
idx_InformeDetallesPresupuestoCODIGOPRESUPUESTO = 0;
@ -209,11 +212,12 @@ const
idx_InformeDetallesPresupuestoIMPORTETOTAL = 5;
idx_InformeDetallesPresupuestoTIPO = 6;
idx_InformeDetallesPresupuestoPOSICION = 7;
idx_InformeDetallesPresupuestoVALORADO = 8;
type
{ IListaAnosPresupuestos }
IListaAnosPresupuestos = interface(IDAStronglyTypedDataTable)
['{6D5B13E0-C373-43E8-B599-1AD86BD6ABF2}']
['{B7E87944-26FF-4A49-81C3-39AD904ED7D8}']
{ Property getters and setters }
function GetANOValue: String;
procedure SetANOValue(const aValue: String);
@ -242,7 +246,7 @@ type
{ IDetallesPresupuestos }
IDetallesPresupuestos = interface(IDAStronglyTypedDataTable)
['{18414808-5E3F-4017-8DCF-885665361C3C}']
['{58F9406A-6CF9-4DC6-A932-F3965154962E}']
{ Property getters and setters }
function GetCODIGOPRESUPUESTOValue: Integer;
procedure SetCODIGOPRESUPUESTOValue(const aValue: Integer);
@ -266,6 +270,8 @@ type
procedure SetPUNTOSValue(const aValue: Integer);
function GetIMPORTEPUNTOSValue: Currency;
procedure SetIMPORTEPUNTOSValue(const aValue: Currency);
function GetVALORADOValue: String;
procedure SetVALORADOValue(const aValue: String);
{ Properties }
@ -280,6 +286,7 @@ type
property VISIBLE: String read GetVISIBLEValue write SetVISIBLEValue;
property PUNTOS: Integer read GetPUNTOSValue write SetPUNTOSValue;
property IMPORTEPUNTOS: Currency read GetIMPORTEPUNTOSValue write SetIMPORTEPUNTOSValue;
property VALORADO: String read GetVALORADOValue write SetVALORADOValue;
end;
{ TDetallesPresupuestosDataTableRules }
@ -309,6 +316,8 @@ type
procedure SetPUNTOSValue(const aValue: Integer); virtual;
function GetIMPORTEPUNTOSValue: Currency; virtual;
procedure SetIMPORTEPUNTOSValue(const aValue: Currency); virtual;
function GetVALORADOValue: String; virtual;
procedure SetVALORADOValue(const aValue: String); virtual;
{ Properties }
property CODIGOPRESUPUESTO: Integer read GetCODIGOPRESUPUESTOValue write SetCODIGOPRESUPUESTOValue;
@ -322,6 +331,7 @@ type
property VISIBLE: String read GetVISIBLEValue write SetVISIBLEValue;
property PUNTOS: Integer read GetPUNTOSValue write SetPUNTOSValue;
property IMPORTEPUNTOS: Currency read GetIMPORTEPUNTOSValue write SetIMPORTEPUNTOSValue;
property VALORADO: String read GetVALORADOValue write SetVALORADOValue;
public
constructor Create(aDataTable: TDADataTable); override;
@ -331,7 +341,7 @@ type
{ IPresupuestos }
IPresupuestos = interface(IDAStronglyTypedDataTable)
['{3B57E67A-BCF1-4A9C-8DE3-680F3FC7E851}']
['{5659F9B7-0F5E-44BF-952F-BE0220081554}']
{ Property getters and setters }
function GetCODIGOEMPRESAValue: Integer;
procedure SetCODIGOEMPRESAValue(const aValue: Integer);
@ -498,7 +508,7 @@ type
{ IPresupuestos_RefreshDataset }
IPresupuestos_RefreshDataset = interface(IDAStronglyTypedDataTable)
['{5097F042-BB92-4714-98E3-38D672728B8B}']
['{0A043DC9-EC36-49B8-B7E6-1A2CE247027F}']
{ Property getters and setters }
function GetCODIGOValue: Integer;
procedure SetCODIGOValue(const aValue: Integer);
@ -551,7 +561,7 @@ type
{ IInformeCabeceraPresupuesto }
IInformeCabeceraPresupuesto = interface(IDAStronglyTypedDataTable)
['{68F7F7E4-616C-464B-A795-E4ACAFC2D708}']
['{7012F18F-7444-4649-9305-16548ABC900B}']
{ Property getters and setters }
function GetCODIGOEMPRESAValue: Integer;
procedure SetCODIGOEMPRESAValue(const aValue: Integer);
@ -766,7 +776,7 @@ type
{ IInformeDetallesPresupuesto }
IInformeDetallesPresupuesto = interface(IDAStronglyTypedDataTable)
['{25CACDCE-E4DB-42FC-B0B8-78493C06240D}']
['{29DE425C-3C96-4736-9574-FFA7D8A279AB}']
{ Property getters and setters }
function GetCODIGOPRESUPUESTOValue: Integer;
procedure SetCODIGOPRESUPUESTOValue(const aValue: Integer);
@ -784,6 +794,8 @@ type
procedure SetTIPOValue(const aValue: String);
function GetPOSICIONValue: Integer;
procedure SetPOSICIONValue(const aValue: Integer);
function GetVALORADOValue: String;
procedure SetVALORADOValue(const aValue: String);
{ Properties }
@ -795,6 +807,7 @@ type
property IMPORTETOTAL: Currency read GetIMPORTETOTALValue write SetIMPORTETOTALValue;
property TIPO: String read GetTIPOValue write SetTIPOValue;
property POSICION: Integer read GetPOSICIONValue write SetPOSICIONValue;
property VALORADO: String read GetVALORADOValue write SetVALORADOValue;
end;
{ TInformeDetallesPresupuestoDataTableRules }
@ -818,6 +831,8 @@ type
procedure SetTIPOValue(const aValue: String); virtual;
function GetPOSICIONValue: Integer; virtual;
procedure SetPOSICIONValue(const aValue: Integer); virtual;
function GetVALORADOValue: String; virtual;
procedure SetVALORADOValue(const aValue: String); virtual;
{ Properties }
property CODIGOPRESUPUESTO: Integer read GetCODIGOPRESUPUESTOValue write SetCODIGOPRESUPUESTOValue;
@ -828,6 +843,7 @@ type
property IMPORTETOTAL: Currency read GetIMPORTETOTALValue write SetIMPORTETOTALValue;
property TIPO: String read GetTIPOValue write SetTIPOValue;
property POSICION: Integer read GetPOSICIONValue write SetPOSICIONValue;
property VALORADO: String read GetVALORADOValue write SetVALORADOValue;
public
constructor Create(aDataTable: TDADataTable); override;
@ -982,6 +998,16 @@ begin
DataTable.Fields[idx_DetallesPresupuestosIMPORTEPUNTOS].AsCurrency := aValue;
end;
function TDetallesPresupuestosDataTableRules.GetVALORADOValue: String;
begin
result := DataTable.Fields[idx_DetallesPresupuestosVALORADO].AsString;
end;
procedure TDetallesPresupuestosDataTableRules.SetVALORADOValue(const aValue: String);
begin
DataTable.Fields[idx_DetallesPresupuestosVALORADO].AsString := aValue;
end;
{ TPresupuestosDataTableRules }
constructor TPresupuestosDataTableRules.Create(aDataTable: TDADataTable);
@ -1726,6 +1752,16 @@ begin
DataTable.Fields[idx_InformeDetallesPresupuestoPOSICION].AsInteger := aValue;
end;
function TInformeDetallesPresupuestoDataTableRules.GetVALORADOValue: String;
begin
result := DataTable.Fields[idx_InformeDetallesPresupuestoVALORADO].AsString;
end;
procedure TInformeDetallesPresupuestoDataTableRules.SetVALORADOValue(const aValue: String);
begin
DataTable.Fields[idx_InformeDetallesPresupuestoVALORADO].AsString := aValue;
end;
initialization
RegisterDataTableRules(RID_ListaAnosPresupuestos, TListaAnosPresupuestosDataTableRules);

View File

@ -9,17 +9,17 @@ const
{ Delta rules ids
Feel free to change them to something more human readable
but make sure they are unique in the context of your application }
RID_ListaAnosPresupuestosDelta = '{CBA70605-3C3B-48A1-A28C-B1E97902006E}';
RID_DetallesPresupuestosDelta = '{A06F07C8-8609-4E0C-A202-CDFD98C02B75}';
RID_PresupuestosDelta = '{475CF11F-7C34-4390-B427-291574D72D01}';
RID_Presupuestos_RefreshDatasetDelta = '{7B057008-D651-4A1C-B4B7-08C7C4A566F9}';
RID_InformeCabeceraPresupuestoDelta = '{749B0EED-D424-4553-BE62-F24B9EE4B0DE}';
RID_InformeDetallesPresupuestoDelta = '{322F58BC-E445-4DF9-9BFB-86086B38356B}';
RID_ListaAnosPresupuestosDelta = '{8D976F59-15D9-43F4-80BA-D2521FD3E7B3}';
RID_DetallesPresupuestosDelta = '{4D049889-6828-4AC0-A146-65C6C3CABA37}';
RID_PresupuestosDelta = '{28799865-76E0-4A02-BBA9-47E008A6CB54}';
RID_Presupuestos_RefreshDatasetDelta = '{529CF287-BF4A-4985-B6C6-483744890AF4}';
RID_InformeCabeceraPresupuestoDelta = '{75FB8BC9-9CEB-4C14-AB18-B0439CB4609C}';
RID_InformeDetallesPresupuestoDelta = '{71D7C955-A039-4F4B-BBC9-E805CB0DE329}';
type
{ IListaAnosPresupuestosDelta }
IListaAnosPresupuestosDelta = interface(IListaAnosPresupuestos)
['{CBA70605-3C3B-48A1-A28C-B1E97902006E}']
['{8D976F59-15D9-43F4-80BA-D2521FD3E7B3}']
{ Property getters and setters }
function GetOldANOValue : String;
@ -48,7 +48,7 @@ type
{ IDetallesPresupuestosDelta }
IDetallesPresupuestosDelta = interface(IDetallesPresupuestos)
['{A06F07C8-8609-4E0C-A202-CDFD98C02B75}']
['{4D049889-6828-4AC0-A146-65C6C3CABA37}']
{ Property getters and setters }
function GetOldCODIGOPRESUPUESTOValue : Integer;
function GetOldNUMCONCEPTOValue : Integer;
@ -61,6 +61,7 @@ type
function GetOldVISIBLEValue : String;
function GetOldPUNTOSValue : Integer;
function GetOldIMPORTEPUNTOSValue : Currency;
function GetOldVALORADOValue : String;
{ Properties }
property OldCODIGOPRESUPUESTO : Integer read GetOldCODIGOPRESUPUESTOValue;
@ -74,6 +75,7 @@ type
property OldVISIBLE : String read GetOldVISIBLEValue;
property OldPUNTOS : Integer read GetOldPUNTOSValue;
property OldIMPORTEPUNTOS : Currency read GetOldIMPORTEPUNTOSValue;
property OldVALORADO : String read GetOldVALORADOValue;
end;
{ TDetallesPresupuestosBusinessProcessorRules }
@ -114,6 +116,9 @@ type
function GetIMPORTEPUNTOSValue: Currency; virtual;
function GetOldIMPORTEPUNTOSValue: Currency; virtual;
procedure SetIMPORTEPUNTOSValue(const aValue: Currency); virtual;
function GetVALORADOValue: String; virtual;
function GetOldVALORADOValue: String; virtual;
procedure SetVALORADOValue(const aValue: String); virtual;
{ Properties }
property CODIGOPRESUPUESTO : Integer read GetCODIGOPRESUPUESTOValue write SetCODIGOPRESUPUESTOValue;
@ -138,6 +143,8 @@ type
property OldPUNTOS : Integer read GetOldPUNTOSValue;
property IMPORTEPUNTOS : Currency read GetIMPORTEPUNTOSValue write SetIMPORTEPUNTOSValue;
property OldIMPORTEPUNTOS : Currency read GetOldIMPORTEPUNTOSValue;
property VALORADO : String read GetVALORADOValue write SetVALORADOValue;
property OldVALORADO : String read GetOldVALORADOValue;
public
constructor Create(aBusinessProcessor: TDABusinessProcessor); override;
@ -147,7 +154,7 @@ type
{ IPresupuestosDelta }
IPresupuestosDelta = interface(IPresupuestos)
['{475CF11F-7C34-4390-B427-291574D72D01}']
['{28799865-76E0-4A02-BBA9-47E008A6CB54}']
{ Property getters and setters }
function GetOldCODIGOEMPRESAValue : Integer;
function GetOldCODIGOValue : Integer;
@ -337,7 +344,7 @@ type
{ IPresupuestos_RefreshDatasetDelta }
IPresupuestos_RefreshDatasetDelta = interface(IPresupuestos_RefreshDataset)
['{7B057008-D651-4A1C-B4B7-08C7C4A566F9}']
['{529CF287-BF4A-4985-B6C6-483744890AF4}']
{ Property getters and setters }
function GetOldCODIGOValue : Integer;
function GetOldNOMBREValue : String;
@ -394,7 +401,7 @@ type
{ IInformeCabeceraPresupuestoDelta }
IInformeCabeceraPresupuestoDelta = interface(IInformeCabeceraPresupuesto)
['{749B0EED-D424-4553-BE62-F24B9EE4B0DE}']
['{75FB8BC9-9CEB-4C14-AB18-B0439CB4609C}']
{ Property getters and setters }
function GetOldCODIGOEMPRESAValue : Integer;
function GetOldCODIGOValue : Integer;
@ -640,7 +647,7 @@ type
{ IInformeDetallesPresupuestoDelta }
IInformeDetallesPresupuestoDelta = interface(IInformeDetallesPresupuesto)
['{322F58BC-E445-4DF9-9BFB-86086B38356B}']
['{71D7C955-A039-4F4B-BBC9-E805CB0DE329}']
{ Property getters and setters }
function GetOldCODIGOPRESUPUESTOValue : Integer;
function GetOldNUMCONCEPTOValue : Integer;
@ -650,6 +657,7 @@ type
function GetOldIMPORTETOTALValue : Currency;
function GetOldTIPOValue : String;
function GetOldPOSICIONValue : Integer;
function GetOldVALORADOValue : String;
{ Properties }
property OldCODIGOPRESUPUESTO : Integer read GetOldCODIGOPRESUPUESTOValue;
@ -660,6 +668,7 @@ type
property OldIMPORTETOTAL : Currency read GetOldIMPORTETOTALValue;
property OldTIPO : String read GetOldTIPOValue;
property OldPOSICION : Integer read GetOldPOSICIONValue;
property OldVALORADO : String read GetOldVALORADOValue;
end;
{ TInformeDetallesPresupuestoBusinessProcessorRules }
@ -691,6 +700,9 @@ type
function GetPOSICIONValue: Integer; virtual;
function GetOldPOSICIONValue: Integer; virtual;
procedure SetPOSICIONValue(const aValue: Integer); virtual;
function GetVALORADOValue: String; virtual;
function GetOldVALORADOValue: String; virtual;
procedure SetVALORADOValue(const aValue: String); virtual;
{ Properties }
property CODIGOPRESUPUESTO : Integer read GetCODIGOPRESUPUESTOValue write SetCODIGOPRESUPUESTOValue;
@ -709,6 +721,8 @@ type
property OldTIPO : String read GetOldTIPOValue;
property POSICION : Integer read GetPOSICIONValue write SetPOSICIONValue;
property OldPOSICION : Integer read GetOldPOSICIONValue;
property VALORADO : String read GetVALORADOValue write SetVALORADOValue;
property OldVALORADO : String read GetOldVALORADOValue;
public
constructor Create(aBusinessProcessor: TDABusinessProcessor); override;
@ -924,6 +938,21 @@ begin
BusinessProcessor.CurrentChange.NewValueByName[fld_DetallesPresupuestosIMPORTEPUNTOS] := aValue;
end;
function TDetallesPresupuestosBusinessProcessorRules.GetVALORADOValue: String;
begin
result := BusinessProcessor.CurrentChange.NewValueByName[fld_DetallesPresupuestosVALORADO];
end;
function TDetallesPresupuestosBusinessProcessorRules.GetOldVALORADOValue: String;
begin
result := BusinessProcessor.CurrentChange.OldValueByName[fld_DetallesPresupuestosVALORADO];
end;
procedure TDetallesPresupuestosBusinessProcessorRules.SetVALORADOValue(const aValue: String);
begin
BusinessProcessor.CurrentChange.NewValueByName[fld_DetallesPresupuestosVALORADO] := aValue;
end;
{ TPresupuestosBusinessProcessorRules }
constructor TPresupuestosBusinessProcessorRules.Create(aBusinessProcessor: TDABusinessProcessor);
@ -2019,6 +2048,21 @@ begin
BusinessProcessor.CurrentChange.NewValueByName[fld_InformeDetallesPresupuestoPOSICION] := aValue;
end;
function TInformeDetallesPresupuestoBusinessProcessorRules.GetVALORADOValue: String;
begin
result := BusinessProcessor.CurrentChange.NewValueByName[fld_InformeDetallesPresupuestoVALORADO];
end;
function TInformeDetallesPresupuestoBusinessProcessorRules.GetOldVALORADOValue: String;
begin
result := BusinessProcessor.CurrentChange.OldValueByName[fld_InformeDetallesPresupuestoVALORADO];
end;
procedure TInformeDetallesPresupuestoBusinessProcessorRules.SetVALORADOValue(const aValue: String);
begin
BusinessProcessor.CurrentChange.NewValueByName[fld_InformeDetallesPresupuestoVALORADO] := aValue;
end;
initialization
RegisterBusinessProcessorRules(RID_ListaAnosPresupuestosDelta, TListaAnosPresupuestosBusinessProcessorRules);

View File

@ -51,6 +51,7 @@ type
IBizImportesDetalle,
IBizPuntosDetalle,
IBizVisibleDetalle,
IBizValoradoDetalle,
IParche) // PARCHE ***********************
private
FIsAppend : Boolean;
@ -396,6 +397,7 @@ begin
PUNTOS := ADetallesPresupuesto.PUNTOS;
IMPORTEPUNTOS := ADetallesPresupuesto.IMPORTEPUNTOS;
VISIBLE := ADetallesPresupuesto.VISIBLE;
VALORADO := ADetallesPresupuesto.VALORADO;
finally
DataTable.EnableEventHandlers;
end;
@ -435,7 +437,7 @@ begin
NUMCONCEPTO := -1;
TIPO := TIPODETALLE_CONCEPTO;
VISIBLE := VISIBLE_TRUE;
VALORADO := VALORADO_TRUE;
Self.DataTable.DisableEventHandlers;
try

View File

@ -64,8 +64,9 @@ object srvPresupuestos: TsrvPresupuestos
SQL =
'SELECT '#10' CODIGOPRESUPUESTO, NUMCONCEPTO, DESCRIPCION, CANTIDA' +
'D, '#10' IMPORTEUNIDAD, IMPORTETOTAL, TIPO, POSICION, VISIBLE,'#10' ' +
' PUNTOS, IMPORTEPUNTOS'#10' FROM'#10' DETALLESPRESUPUESTOS'#10' WHERE ' +
'CODIGOPRESUPUESTO = :CODIGOPRESUPUESTO'#10' ORDER BY POSICION'
' PUNTOS, IMPORTEPUNTOS, VALORADO'#10' FROM'#10' DETALLESPRESUPUESTO' +
'S'#10' WHERE CODIGOPRESUPUESTO = :CODIGOPRESUPUESTO'#10' ORDER BY POSI' +
'CION'
StatementType = stSQL
ColumnMappings = <
item
@ -111,6 +112,10 @@ object srvPresupuestos: TsrvPresupuestos
item
DatasetField = 'IMPORTEPUNTOS'
TableField = 'IMPORTEPUNTOS'
end
item
DatasetField = 'VALORADO'
TableField = 'VALORADO'
end>
end>
Name = 'DetallesPresupuestos'
@ -228,6 +233,17 @@ object srvPresupuestos: TsrvPresupuestos
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'VALORADO'
DataType = datString
Size = 1
BlobType = dabtUnknown
DictionaryEntry = 'DetallesPresupuestos_VALORADO'
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end>
BusinessRulesClient.ScriptLanguage = rslPascalScript
BusinessRulesServer.ScriptLanguage = rslPascalScript
@ -1249,9 +1265,9 @@ object srvPresupuestos: TsrvPresupuestos
TargetTable = 'DETALLESPRESUPUESTOS'
SQL =
'SELECT '#10' CODIGOPRESUPUESTO, NUMCONCEPTO, DESCRIPCION, CANTIDA' +
'D, '#10' IMPORTEUNIDAD, IMPORTETOTAL, TIPO, POSICION'#10' FROM'#10' D' +
'ETALLESPRESUPUESTOS'#10' WHERE CODIGOPRESUPUESTO = :CODIGOPRESUPUES' +
'TO'#10' AND VISIBLE = '#39'S'#39#10' ORDER BY POSICION'
'D, '#10' IMPORTEUNIDAD, IMPORTETOTAL, TIPO, POSICION, VALORADO'#10' ' +
'FROM'#10' DETALLESPRESUPUESTOS'#10' WHERE CODIGOPRESUPUESTO = :CODIG' +
'OPRESUPUESTO'#10' AND VISIBLE = '#39'S'#39#10' ORDER BY POSICION'
StatementType = stSQL
ColumnMappings = <
item
@ -1285,6 +1301,10 @@ object srvPresupuestos: TsrvPresupuestos
item
DatasetField = 'POSICION'
TableField = 'POSICION'
end
item
DatasetField = 'VALORADO'
TableField = 'VALORADO'
end>
end>
Name = 'InformeDetallesPresupuesto'
@ -1371,6 +1391,18 @@ object srvPresupuestos: TsrvPresupuestos
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'VALORADO'
DataType = datString
Size = 1
BlobType = dabtUnknown
DisplayWidth = 0
Alignment = taLeftJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end>
BusinessRulesClient.ScriptLanguage = rslPascalScript
BusinessRulesServer.ScriptLanguage = rslPascalScript
@ -1821,14 +1853,26 @@ object srvPresupuestos: TsrvPresupuestos
ReportOptions.CreateDate = 37871.995398692100000000
ReportOptions.Description.Strings = (
'Demonstrates how to create simple list report.')
ReportOptions.LastChange = 39153.814578263890000000
ReportOptions.LastChange = 40251.793684884260000000
ReportOptions.VersionBuild = '1'
ReportOptions.VersionMajor = '12'
ReportOptions.VersionMinor = '13'
ReportOptions.VersionRelease = '1'
ScriptLanguage = 'PascalScript'
ScriptText.Strings = (
'procedure Band4OnBeforePrint(Sender: TfrxComponent);'
'procedure DatosClienteOnBeforePrint(Sender: TfrxComponent);'
'begin'
' DatosCliente.Lines.Clear;'
' DatosCliente.Lines.Add(<frxDBCabecera."CALLE">);'
''
' if (<frxDBCabecera."CODIGOPOSTAL"> <> '#39#39')'
' or (<frxDBCabecera."POBLACION"> <> '#39#39') then'
' DatosCliente.Lines.Add(<frxDBCabecera."CODIGOPOSTAL"> + <fr' +
'xDBCabecera."POBLACION">);'
'end;'
''
'procedure BandaDetallesOnBeforePrint(Sender: TfrxComponent);'
'begin'
' case <frxDBDetalles."TIPO"> of'
' '#39'C'#39': begin'
@ -1850,67 +1894,66 @@ object srvPresupuestos: TsrvPresupuestos
' MemoCampo4.Style := '#39'Concepto titulo'#39';'
' end;'
' end;'
''
' MemoCampo12.Height := 0;'
' MemoCampo2.Height := 0;'
' MemoCampo3.Height := 0;'
' MemoCampo4.Height := 0;'
'end;'
''
'procedure ReportSummary1OnBeforePrint(Sender: TfrxComponent);'
'begin'
' Engine.CurY := Engine.CurY + Engine.FreeSpace - ReportSum' +
'mary1.Height - 1;'
'// Engine.CurY := Engine.CurY + Engine.FreeSpace - ReportS' +
'ummary1.Height + 20;'
'end;'
''
'procedure DatosClienteOnBeforePrint(Sender: TfrxComponent);'
'var'
' cadenaAux: String;'
'procedure Band3OnBeforePrint(Sender: TfrxComponent);'
'begin'
' DatosCliente.Lines.Clear;'
' DatosCliente.Lines.Add(<frxDBCabecera."CALLE">);'
''
' if (<frxDBCabecera."CODIGOPOSTAL"> <> '#39#39')'
' or (<frxDBCabecera."POBLACION"> <> '#39#39') then'
' DatosCliente.Lines.Add(<frxDBCabecera."CODIGOPOSTAL"> + <fr' +
'xDBCabecera."POBLACION">);'
''
' CadenaAux := '#39#39';'
' if <frxDBCabecera."TELEFONO1"> <> '#39#39' then'
' if CadenaAux = '#39#39' then'
' CadenaAux := CadenaAux + '#39'Telf:'#39' + <frxDBCabecera."TELEF' +
'ONO1">'
' else'
' CadenaAux := CadenaAux + '#39' / '#39' + <frxDBCabecera."TELEFON' +
'O1">;'
''
' if <frxDBCabecera."TELEFONO2"> <> '#39#39' then'
' if CadenaAux = '#39#39' then'
' CadenaAux := CadenaAux + '#39'Telf:'#39' + <frxDBCabecera."TELEF' +
'ONO2">'
' else'
' CadenaAux := CadenaAux + '#39' / '#39' + <frxDBCabecera."TELEFON' +
'O2">;'
''
' if <frxDBCabecera."MOVIL"> <> '#39#39' then'
' if CadenaAux = '#39#39' then'
' CadenaAux := CadenaAux + '#39'Telf:'#39' + <frxDBCabecera."MOVIL' +
'">'
' else'
' CadenaAux := CadenaAux + '#39' / '#39' + <frxDBCabecera."MOVIL">' +
';'
''
' DatosCliente.Lines.Add(CadenaAux);'
' if (<Page#> = <TotalPages#>) then'
' begin'
' shape6.Visible := True;'
' memo14.Visible := True;'
' memo35.Visible := True;'
' memo36.Visible := True;'
' memo37.Visible := True;'
' memo38.Visible := True;'
' memo39.Visible := True;'
' memo40.Visible := True;'
' memo41.Visible := True;'
' memo42.Visible := True;'
' memo43.Visible := True;'
' memo44.Visible := True;'
' memo45.Visible := True;'
' end'
' else'
' begin'
' shape6.Visible := False;'
' shape6.Visible := False;'
' memo14.Visible := False;'
' memo35.Visible := False;'
' memo36.Visible := False;'
' memo37.Visible := False;'
' memo38.Visible := False;'
' memo39.Visible := False;'
' memo40.Visible := False;'
' memo41.Visible := False;'
' memo42.Visible := False;'
' memo43.Visible := False;'
' memo44.Visible := False;'
' memo45.Visible := False;'
' end;'
'end;'
''
'procedure MemoCampo3OnBeforePrint(Sender: TfrxComponent);'
'begin'
' case <frxDBDetalles."VALORADO"> of'
' '#39'S'#39': begin'
' MemoCampo3.Visible := True;'
' MemoCampo4.Visible := True;'
' end;'
' '#39'N'#39': begin'
' MemoCampo3.Visible := False;'
' MemoCampo4.Visible := False;'
' end;'
' end;'
'end;'
''
'begin'
''

View File

@ -30,8 +30,8 @@ type
tbl_Presupuesto: TDACDSDataTable;
tbl_DetallesPresupuesto: TDACDSDataTable;
DABINAdapter: TDABINAdapter;
frxReport1: TfrxReport;
schPresupuestos: TDASchema;
frxReport1: TfrxReport;
procedure DARemoteServiceActivate(const aClientID: TGUID;
aSession: TROSession; const aMessage: IROMessage);
private

View File

@ -83,6 +83,7 @@ begin
FieldByName(fld_DetallesPresupuestosIMPORTEPUNTOS).BusinessRulesID := 'Client.Field.ImportePuntos';
FieldByName(fld_DetallesPresupuestosVISIBLE).BusinessRulesID := 'Client.Field.Visible';
FieldByName(fld_DetallesPresupuestosVALORADO).BusinessRulesID := 'Client.Field.Valorado';
end;
(dtPresupuestos as IBizPresupuestos).Detalles := (dtDetalles as IBizDetallesPresupuesto);

View File

@ -36,6 +36,9 @@ inherited frViewDetallesPresupuesto: TfrViewDetallesPresupuesto
Styles.OnGetContentStyle = cxGridViewVISIBLEStylesGetContentStyle
Width = 21
end
inherited cxGridViewVALORADO: TcxGridDBColumn
Styles.OnGetContentStyle = cxGridViewVALORADOStylesGetContentStyle
end
end
end
inherited cxStyleRepository1: TcxStyleRepository

View File

@ -25,6 +25,9 @@ type
procedure cxGridViewVISIBLEStylesGetContentStyle(
Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord;
AItem: TcxCustomGridTableItem; out AStyle: TcxStyle);
procedure cxGridViewVALORADOStylesGetContentStyle(
Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord;
AItem: TcxCustomGridTableItem; out AStyle: TcxStyle);
private
{ Private declarations }
public
@ -95,4 +98,22 @@ begin
end;
end;
procedure TfrViewDetallesPresupuesto.cxGridViewVALORADOStylesGetContentStyle(
Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord;
AItem: TcxCustomGridTableItem; out AStyle: TcxStyle);
var
IndiceCol : Integer;
ATipo : String;
begin
if Assigned(ARecord) then
begin
IndiceCol := (Sender as TcxGridDBTableView).GetColumnByFieldName(fld_TIPODETALLE).Index;
ATipo := VarToStr(ARecord.Values[IndiceCol]);
if ATipo = TIPODETALLE_SUBTOTAL then
AStyle := cxStyle_SUBTOTAL;
if ATipo = TIPODETALLE_TITULO then
AStyle := cxStyle_TITULO;
end;
end;
end.

View File

@ -46,6 +46,7 @@ type
IBizImportesDetalle,
IBizPuntosDetalle,
IBizVisibleDetalle,
IBizValoradoDetalle,
IParche) // PARCHE ***********************
private
FIsAppend : Boolean;
@ -390,6 +391,7 @@ begin
PUNTOS := ADetallesPresupuesto.PUNTOS;
IMPORTEPUNTOS := ADetallesPresupuesto.IMPORTEPUNTOS;
VISIBLE := ADetallesPresupuesto.VISIBLE;
VALORADO := ADetallesPresupuesto.VALORADO;
finally
DataTable.EnableEventHandlers;
end;
@ -429,7 +431,7 @@ begin
NUMCONCEPTO := -1;
TIPO := TIPODETALLE_CONCEPTO;
VISIBLE := VISIBLE_TRUE;
VALORADO := VALORADO_TRUE;
Self.DataTable.DisableEventHandlers;
try

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,23 @@
ALTER TABLE DETALLESPRESUPUESTOS
ADD VALORADO CHAR(1) CHARACTER SET ISO8859_1
NOT NULL
COLLATE ISO8859_1;
UPDATE DETALLESPRESUPUESTOS
SET VALORADO = 'S';
ALTER TABLE DETALLESALBARANPAGO
ADD VALORADO CHAR(1) CHARACTER SET ISO8859_1
NOT NULL
COLLATE ISO8859_1;
UPDATE DETALLESALBARANPAGO
SET VALORADO = 'S';
ALTER TABLE DETALLESFACTURASCLIENTE
ADD VALORADO CHAR(1) CHARACTER SET ISO8859_1
NOT NULL
COLLATE ISO8859_1;
UPDATE DETALLESFACTURASCLIENTE
SET VALORADO = 'S';

File diff suppressed because it is too large Load Diff

View File

@ -772,6 +772,14 @@ object dmServer: TdmServer
DisplayWidth = 0
DisplayLabel = 'VISIBLE'
Alignment = taLeftJustify
end
item
Name = 'DetallesPresupuestos_VALORADO'
DataType = datString
Size = 1
BlobType = dabtUnknown
DisplayWidth = 0
Alignment = taLeftJustify
end>
Left = 40
Top = 144