diff --git a/Build/Build.fbl6 b/Build/Build.fbl6
index 5cb61da..be189be 100644
Binary files a/Build/Build.fbl6 and b/Build/Build.fbl6 differ
diff --git a/Build/Build.fbpInf b/Build/Build.fbpInf
index b3bbb00..7024765 100644
--- a/Build/Build.fbpInf
+++ b/Build/Build.fbpInf
@@ -14,8 +14,8 @@
- 00:03:11
- 14/02/2020 13:22:06
+ 00:03:15
+ 28/12/2020 17:37:37
True
diff --git a/Build/Build.fbz6 b/Build/Build.fbz6
index 8dfe661..1a5f385 100644
Binary files a/Build/Build.fbz6 and b/Build/Build.fbz6 differ
diff --git a/Source/Base/Base.dproj b/Source/Base/Base.dproj
index adae6f9..6f57818 100644
--- a/Source/Base/Base.dproj
+++ b/Source/Base/Base.dproj
@@ -65,55 +65,55 @@
MainSource
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
TForm
diff --git a/Source/Cliente/FactuGES.dproj b/Source/Cliente/FactuGES.dproj
index e12df29..b669c97 100644
--- a/Source/Cliente/FactuGES.dproj
+++ b/Source/Cliente/FactuGES.dproj
@@ -51,7 +51,7 @@
Delphi.Personality
VCLApplication
-FalseTrueFalseC:\Archivos de programa\Borland\Delphi7\Bin\TrueFalse2900FalseFalseFalseFalseFalse30821252Rodax Software S.L.2.9.0.0FactuGESFactuGES2.9.0.0
+FalseTrueFalseC:\Archivos de programa\Borland\Delphi7\Bin\TrueFalse2920FalseFalseFalseFalseFalse30821252Rodax Software S.L.2.9.2.0FactuGESFactuGES2.9.2.0
File C:\Documents and Settings\All Users\Documentos\RAD Studio\5.0\Bpl\dxPScxScheduler2LnkD11.bpl not found
FactuGES.dprFalse
diff --git a/Source/Cliente/FactuGES.res b/Source/Cliente/FactuGES.res
index 3cf2b51..d231729 100644
Binary files a/Source/Cliente/FactuGES.res and b/Source/Cliente/FactuGES.res differ
diff --git a/Source/Cliente/uPantallaPrincipal.dfm b/Source/Cliente/uPantallaPrincipal.dfm
index bf958ac..c6248ed 100644
--- a/Source/Cliente/uPantallaPrincipal.dfm
+++ b/Source/Cliente/uPantallaPrincipal.dfm
@@ -273,8 +273,6 @@ object fPantallaPrincipal: TfPantallaPrincipal
object actMenuLogistica: TAction
Category = 'Menus'
Caption = 'Log'#237'stica'
- Enabled = False
- Visible = False
OnExecute = actMenuLogisticaExecute
OnUpdate = actMenuComprasUpdate
end
diff --git a/Source/FactuGES.inc b/Source/FactuGES.inc
index bf43491..f533eae 100644
--- a/Source/FactuGES.inc
+++ b/Source/FactuGES.inc
@@ -1,4 +1,4 @@
{$DEFINE MULTIEMPRESA}
{$DEFINE ALMACEN}
-{DEFINE PEDIDOSPROVEEDOR}
+{$DEFINE PEDIDOSPROVEEDOR}
{$DEFINE CONTABILIDAD}
\ No newline at end of file
diff --git a/Source/GUIBase/GUIBase.dproj b/Source/GUIBase/GUIBase.dproj
index f44e3be..f4f4046 100644
--- a/Source/GUIBase/GUIBase.dproj
+++ b/Source/GUIBase/GUIBase.dproj
@@ -58,34 +58,34 @@
MainSource
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Source/GUIBase/GUIBase.res b/Source/GUIBase/GUIBase.res
index 8b251f3..1641339 100644
Binary files a/Source/GUIBase/GUIBase.res and b/Source/GUIBase/GUIBase.res differ
diff --git a/Source/Informes/1/InfAlbaranCliente.fr3 b/Source/Informes/1/InfAlbaranCliente.fr3
index c091a7d..11cbe91 100644
--- a/Source/Informes/1/InfAlbaranCliente.fr3
+++ b/Source/Informes/1/InfAlbaranCliente.fr3
@@ -1,17 +1,19 @@
-
+
-
-
-
-
-
+
+
+
+
-
-
+
+
+
+
+
-
+
@@ -19,7 +21,7 @@
-
+
@@ -30,14 +32,14 @@
-
-
+
+
-
+
diff --git a/Source/Informes/1/InfContratoCliente.fr3 b/Source/Informes/1/InfContratoCliente.fr3
index 58d7b7d..e312bba 100644
--- a/Source/Informes/1/InfContratoCliente.fr3
+++ b/Source/Informes/1/InfContratoCliente.fr3
@@ -1,20 +1,22 @@
-
+
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
-
+
-
+
@@ -22,7 +24,7 @@
-
+
@@ -30,7 +32,7 @@
-
+
@@ -40,7 +42,7 @@
-
+
@@ -62,13 +64,13 @@
-
-
+
+
-
+
diff --git a/Source/Modulos/Albaranes de cliente/Data/uDataModuleAlbaranesCliente.dfm b/Source/Modulos/Albaranes de cliente/Data/uDataModuleAlbaranesCliente.dfm
index 76df42f..50bb558 100644
--- a/Source/Modulos/Albaranes de cliente/Data/uDataModuleAlbaranesCliente.dfm
+++ b/Source/Modulos/Albaranes de cliente/Data/uDataModuleAlbaranesCliente.dfm
@@ -316,6 +316,11 @@ inherited DataModuleAlbaranesCliente: TDataModuleAlbaranesCliente
DisplayLabel = 'AlbaranesCliente_TIENDA'
ServerAutoRefresh = True
DictionaryEntry = 'AlbaranesCliente_TIENDA'
+ end
+ item
+ Name = 'NOTAS_ENVIO'
+ DataType = datString
+ Size = 255
end>
Params = <>
StreamingOptions = [soDisableEventsWhileStreaming]
diff --git a/Source/Modulos/Albaranes de cliente/Model/schAlbaranesClienteClient_Intf.pas b/Source/Modulos/Albaranes de cliente/Model/schAlbaranesClienteClient_Intf.pas
index fcb1745..73ec3dd 100644
--- a/Source/Modulos/Albaranes de cliente/Model/schAlbaranesClienteClient_Intf.pas
+++ b/Source/Modulos/Albaranes de cliente/Model/schAlbaranesClienteClient_Intf.pas
@@ -9,9 +9,9 @@ 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 = '{5392573B-B6A0-49DE-ACCD-1B04E1684DCC}';
- RID_AlbaranesCliente = '{2B6F227E-8173-4A9A-A666-BAA270EAEA1A}';
- RID_AlbaranesCliente_Detalles = '{FE404448-507F-47B3-ADD1-1D5821AF7506}';
+ RID_ListaAnosAlbaranes = '{B517DFB7-B260-4DD7-B59F-D0C79D930D9A}';
+ RID_AlbaranesCliente = '{FCE2B205-1ADB-4A2F-A57A-BB4978B0C22D}';
+ RID_AlbaranesCliente_Detalles = '{E456B282-7E51-41D3-9214-4A96CEF784F8}';
{ Data table names }
nme_ListaAnosAlbaranes = 'ListaAnosAlbaranes';
@@ -70,6 +70,7 @@ const
fld_AlbaranesClienteFECHA_RECEPCION = 'FECHA_RECEPCION';
fld_AlbaranesClienteID_TIENDA = 'ID_TIENDA';
fld_AlbaranesClienteTIENDA = 'TIENDA';
+ fld_AlbaranesClienteNOTAS_ENVIO = 'NOTAS_ENVIO';
{ AlbaranesCliente field indexes }
idx_AlbaranesClienteID = 0;
@@ -117,6 +118,7 @@ const
idx_AlbaranesClienteFECHA_RECEPCION = 42;
idx_AlbaranesClienteID_TIENDA = 43;
idx_AlbaranesClienteTIENDA = 44;
+ idx_AlbaranesClienteNOTAS_ENVIO = 45;
{ AlbaranesCliente_Detalles fields }
fld_AlbaranesCliente_DetallesID = 'ID';
@@ -155,7 +157,7 @@ const
type
{ IListaAnosAlbaranes }
IListaAnosAlbaranes = interface(IDAStronglyTypedDataTable)
- ['{9E537DDB-8E64-4969-8E68-8892E1235B3B}']
+ ['{3DFD3F5E-DB3F-4FB7-9F95-80091A69254A}']
{ Property getters and setters }
function GetANOValue: String;
procedure SetANOValue(const aValue: String);
@@ -190,7 +192,7 @@ type
{ IAlbaranesCliente }
IAlbaranesCliente = interface(IDAStronglyTypedDataTable)
- ['{657314CF-9B6C-48E9-9BA7-B2475D33165E}']
+ ['{C45B8E2D-036A-48F5-BE78-0E9922D58F85}']
{ Property getters and setters }
function GetIDValue: Integer;
procedure SetIDValue(const aValue: Integer);
@@ -370,6 +372,10 @@ type
procedure SetTIENDAValue(const aValue: String);
function GetTIENDAIsNull: Boolean;
procedure SetTIENDAIsNull(const aValue: Boolean);
+ function GetNOTAS_ENVIOValue: String;
+ procedure SetNOTAS_ENVIOValue(const aValue: String);
+ function GetNOTAS_ENVIOIsNull: Boolean;
+ procedure SetNOTAS_ENVIOIsNull(const aValue: Boolean);
{ Properties }
@@ -463,6 +469,8 @@ type
property ID_TIENDAIsNull: Boolean read GetID_TIENDAIsNull write SetID_TIENDAIsNull;
property TIENDA: String read GetTIENDAValue write SetTIENDAValue;
property TIENDAIsNull: Boolean read GetTIENDAIsNull write SetTIENDAIsNull;
+ property NOTAS_ENVIO: String read GetNOTAS_ENVIOValue write SetNOTAS_ENVIOValue;
+ property NOTAS_ENVIOIsNull: Boolean read GetNOTAS_ENVIOIsNull write SetNOTAS_ENVIOIsNull;
end;
{ TAlbaranesClienteDataTableRules }
@@ -652,6 +660,10 @@ type
procedure SetTIENDAValue(const aValue: String); virtual;
function GetTIENDAIsNull: Boolean; virtual;
procedure SetTIENDAIsNull(const aValue: Boolean); virtual;
+ function GetNOTAS_ENVIOValue: String; virtual;
+ procedure SetNOTAS_ENVIOValue(const aValue: String); virtual;
+ function GetNOTAS_ENVIOIsNull: Boolean; virtual;
+ procedure SetNOTAS_ENVIOIsNull(const aValue: Boolean); virtual;
{ Properties }
property ID: Integer read GetIDValue write SetIDValue;
@@ -744,6 +756,8 @@ type
property ID_TIENDAIsNull: Boolean read GetID_TIENDAIsNull write SetID_TIENDAIsNull;
property TIENDA: String read GetTIENDAValue write SetTIENDAValue;
property TIENDAIsNull: Boolean read GetTIENDAIsNull write SetTIENDAIsNull;
+ property NOTAS_ENVIO: String read GetNOTAS_ENVIOValue write SetNOTAS_ENVIOValue;
+ property NOTAS_ENVIOIsNull: Boolean read GetNOTAS_ENVIOIsNull write SetNOTAS_ENVIOIsNull;
public
constructor Create(aDataTable: TDADataTable); override;
@@ -753,7 +767,7 @@ type
{ IAlbaranesCliente_Detalles }
IAlbaranesCliente_Detalles = interface(IDAStronglyTypedDataTable)
- ['{E97BA8BC-8EC8-441E-8A6F-E53552B75E94}']
+ ['{40165756-12BF-4C0D-8107-BEE438314BC2}']
{ Property getters and setters }
function GetIDValue: Integer;
procedure SetIDValue(const aValue: Integer);
@@ -1959,6 +1973,27 @@ begin
DataTable.Fields[idx_AlbaranesClienteTIENDA].AsVariant := Null;
end;
+function TAlbaranesClienteDataTableRules.GetNOTAS_ENVIOValue: String;
+begin
+ result := DataTable.Fields[idx_AlbaranesClienteNOTAS_ENVIO].AsString;
+end;
+
+procedure TAlbaranesClienteDataTableRules.SetNOTAS_ENVIOValue(const aValue: String);
+begin
+ DataTable.Fields[idx_AlbaranesClienteNOTAS_ENVIO].AsString := aValue;
+end;
+
+function TAlbaranesClienteDataTableRules.GetNOTAS_ENVIOIsNull: boolean;
+begin
+ result := DataTable.Fields[idx_AlbaranesClienteNOTAS_ENVIO].IsNull;
+end;
+
+procedure TAlbaranesClienteDataTableRules.SetNOTAS_ENVIOIsNull(const aValue: Boolean);
+begin
+ if aValue then
+ DataTable.Fields[idx_AlbaranesClienteNOTAS_ENVIO].AsVariant := Null;
+end;
+
{ TAlbaranesCliente_DetallesDataTableRules }
constructor TAlbaranesCliente_DetallesDataTableRules.Create(aDataTable: TDADataTable);
diff --git a/Source/Modulos/Albaranes de cliente/Model/schAlbaranesClienteServer_Intf.pas b/Source/Modulos/Albaranes de cliente/Model/schAlbaranesClienteServer_Intf.pas
index 9a03383..5699052 100644
--- a/Source/Modulos/Albaranes de cliente/Model/schAlbaranesClienteServer_Intf.pas
+++ b/Source/Modulos/Albaranes de cliente/Model/schAlbaranesClienteServer_Intf.pas
@@ -9,14 +9,14 @@ 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 = '{42769BFF-45B2-4BC5-8B65-09F00716E000}';
- RID_AlbaranesClienteDelta = '{A1937C90-7059-43D4-BE8C-C471DD3F2D7C}';
- RID_AlbaranesCliente_DetallesDelta = '{0D156B8D-7951-4154-A33A-0A13B7228A09}';
+ RID_ListaAnosAlbaranesDelta = '{0B01B3F1-FD0A-41E2-9AC8-DF2FE6427AC9}';
+ RID_AlbaranesClienteDelta = '{15937719-1382-4F28-B013-5ED650D7FD2B}';
+ RID_AlbaranesCliente_DetallesDelta = '{6E38A603-223E-4266-AB5E-8ECFB13DFFC3}';
type
{ IListaAnosAlbaranesDelta }
IListaAnosAlbaranesDelta = interface(IListaAnosAlbaranes)
- ['{42769BFF-45B2-4BC5-8B65-09F00716E000}']
+ ['{0B01B3F1-FD0A-41E2-9AC8-DF2FE6427AC9}']
{ Property getters and setters }
function GetOldANOValue : String;
@@ -50,7 +50,7 @@ type
{ IAlbaranesClienteDelta }
IAlbaranesClienteDelta = interface(IAlbaranesCliente)
- ['{A1937C90-7059-43D4-BE8C-C471DD3F2D7C}']
+ ['{15937719-1382-4F28-B013-5ED650D7FD2B}']
{ Property getters and setters }
function GetOldIDValue : Integer;
function GetOldID_EMPRESAValue : Integer;
@@ -97,6 +97,7 @@ type
function GetOldFECHA_RECEPCIONValue : DateTime;
function GetOldID_TIENDAValue : Integer;
function GetOldTIENDAValue : String;
+ function GetOldNOTAS_ENVIOValue : String;
{ Properties }
property OldID : Integer read GetOldIDValue;
@@ -144,6 +145,7 @@ type
property OldFECHA_RECEPCION : DateTime read GetOldFECHA_RECEPCIONValue;
property OldID_TIENDA : Integer read GetOldID_TIENDAValue;
property OldTIENDA : String read GetOldTIENDAValue;
+ property OldNOTAS_ENVIO : String read GetOldNOTAS_ENVIOValue;
end;
{ TAlbaranesClienteBusinessProcessorRules }
@@ -423,6 +425,12 @@ type
function GetOldTIENDAIsNull: Boolean; virtual;
procedure SetTIENDAValue(const aValue: String); virtual;
procedure SetTIENDAIsNull(const aValue: Boolean); virtual;
+ function GetNOTAS_ENVIOValue: String; virtual;
+ function GetNOTAS_ENVIOIsNull: Boolean; virtual;
+ function GetOldNOTAS_ENVIOValue: String; virtual;
+ function GetOldNOTAS_ENVIOIsNull: Boolean; virtual;
+ procedure SetNOTAS_ENVIOValue(const aValue: String); virtual;
+ procedure SetNOTAS_ENVIOIsNull(const aValue: Boolean); virtual;
{ Properties }
property ID : Integer read GetIDValue write SetIDValue;
@@ -605,6 +613,10 @@ type
property TIENDAIsNull : Boolean read GetTIENDAIsNull write SetTIENDAIsNull;
property OldTIENDA : String read GetOldTIENDAValue;
property OldTIENDAIsNull : Boolean read GetOldTIENDAIsNull;
+ property NOTAS_ENVIO : String read GetNOTAS_ENVIOValue write SetNOTAS_ENVIOValue;
+ property NOTAS_ENVIOIsNull : Boolean read GetNOTAS_ENVIOIsNull write SetNOTAS_ENVIOIsNull;
+ property OldNOTAS_ENVIO : String read GetOldNOTAS_ENVIOValue;
+ property OldNOTAS_ENVIOIsNull : Boolean read GetOldNOTAS_ENVIOIsNull;
public
constructor Create(aBusinessProcessor: TDABusinessProcessor); override;
@@ -614,7 +626,7 @@ type
{ IAlbaranesCliente_DetallesDelta }
IAlbaranesCliente_DetallesDelta = interface(IAlbaranesCliente_Detalles)
- ['{0D156B8D-7951-4154-A33A-0A13B7228A09}']
+ ['{6E38A603-223E-4266-AB5E-8ECFB13DFFC3}']
{ Property getters and setters }
function GetOldIDValue : Integer;
function GetOldID_ALBARANValue : Integer;
@@ -2282,6 +2294,37 @@ begin
BusinessProcessor.CurrentChange.NewValueByName[fld_AlbaranesClienteTIENDA] := Null;
end;
+function TAlbaranesClienteBusinessProcessorRules.GetNOTAS_ENVIOValue: String;
+begin
+ result := BusinessProcessor.CurrentChange.NewValueByName[fld_AlbaranesClienteNOTAS_ENVIO];
+end;
+
+function TAlbaranesClienteBusinessProcessorRules.GetNOTAS_ENVIOIsNull: Boolean;
+begin
+ result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_AlbaranesClienteNOTAS_ENVIO]);
+end;
+
+function TAlbaranesClienteBusinessProcessorRules.GetOldNOTAS_ENVIOValue: String;
+begin
+ result := BusinessProcessor.CurrentChange.OldValueByName[fld_AlbaranesClienteNOTAS_ENVIO];
+end;
+
+function TAlbaranesClienteBusinessProcessorRules.GetOldNOTAS_ENVIOIsNull: Boolean;
+begin
+ result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_AlbaranesClienteNOTAS_ENVIO]);
+end;
+
+procedure TAlbaranesClienteBusinessProcessorRules.SetNOTAS_ENVIOValue(const aValue: String);
+begin
+ BusinessProcessor.CurrentChange.NewValueByName[fld_AlbaranesClienteNOTAS_ENVIO] := aValue;
+end;
+
+procedure TAlbaranesClienteBusinessProcessorRules.SetNOTAS_ENVIOIsNull(const aValue: Boolean);
+begin
+ if aValue then
+ BusinessProcessor.CurrentChange.NewValueByName[fld_AlbaranesClienteNOTAS_ENVIO] := Null;
+end;
+
{ TAlbaranesCliente_DetallesBusinessProcessorRules }
constructor TAlbaranesCliente_DetallesBusinessProcessorRules.Create(aBusinessProcessor: TDABusinessProcessor);
diff --git a/Source/Modulos/Albaranes de cliente/Reports/uRptAlbaranesCliente_Server.dfm b/Source/Modulos/Albaranes de cliente/Reports/uRptAlbaranesCliente_Server.dfm
index 64250d0..4982911 100644
--- a/Source/Modulos/Albaranes de cliente/Reports/uRptAlbaranesCliente_Server.dfm
+++ b/Source/Modulos/Albaranes de cliente/Reports/uRptAlbaranesCliente_Server.dfm
@@ -63,6 +63,36 @@ object RptAlbaranesCliente: TRptAlbaranesCliente
DataType = datString
Size = 255
end
+ item
+ Name = 'CALLE_FISCAL'
+ DataType = datString
+ Size = 255
+ end
+ item
+ Name = 'POBLACION_FISCAL'
+ DataType = datString
+ Size = 255
+ end
+ item
+ Name = 'PROVINCIA_FISCAL'
+ DataType = datString
+ Size = 255
+ end
+ item
+ Name = 'CODIGO_POSTAL_FISCAL'
+ DataType = datString
+ Size = 10
+ end
+ item
+ Name = 'TELEFONO_POSTAL_FISCAL'
+ DataType = datString
+ Size = 25
+ end
+ item
+ Name = 'MOVIL_FISCAL'
+ DataType = datString
+ Size = 25
+ end
item
Name = 'CALLE'
DataType = datString
@@ -98,6 +128,11 @@ object RptAlbaranesCliente: TRptAlbaranesCliente
DataType = datString
Size = 255
end
+ item
+ Name = 'NOTAS_ENVIO'
+ DataType = datString
+ Size = 255
+ end
item
Name = 'OBSERVACIONES'
DataType = datMemo
@@ -340,34 +375,35 @@ object RptAlbaranesCliente: TRptAlbaranesCliente
' ALBARANES_CLIENTE.ID_TIENDA,'#10' ALBARANES_CLIENTE.ID_CLIENTE,'#10' ' +
'CONTACTOS.NOMBRE,'#10' CONTACTOS.REFERENCIA as REF_CLIENTE,'#10' ALBAR' +
'ANES_CLIENTE.REFERENCIA_CLIENTE,'#10' CONTACTOS.NIF_CIF,'#10' ALBARANE' +
- 'S_CLIENTE.FECHA_ALBARAN,'#10' ALBARANES_CLIENTE.REFERENCIA,'#10' COALE' +
- 'SCE(CONTACTOS_DIRECCIONES.CALLE, CONTACTOS.CALLE) AS CALLE,'#10' CO' +
- 'ALESCE(CONTACTOS_DIRECCIONES.POBLACION, CONTACTOS.POBLACION) AS ' +
- 'POBLACION,'#10' COALESCE(CONTACTOS_DIRECCIONES.PROVINCIA, CONTACTOS' +
- '.PROVINCIA) AS PROVINCIA,'#10' COALESCE(CONTACTOS_DIRECCIONES.CODIG' +
- 'O_POSTAL, CONTACTOS.CODIGO_POSTAL) AS CODIGO_POSTAL,'#10' COALESCE(' +
- 'CONTACTOS_DIRECCIONES.TELEFONO, CONTACTOS.TELEFONO_1) AS TELEFON' +
- 'O,'#10' COALESCE(CONTACTOS_DIRECCIONES.MOVIL, CONTACTOS.MOVIL_1) AS' +
- ' MOVIL,'#10' ALBARANES_CLIENTE.PERSONA_CONTACTO,'#10' ALBARANES_CLIENT' +
- 'E.OBSERVACIONES,'#10' ALBARANES_CLIENTE.IMPORTE_NETO,'#10' ALBARANES_C' +
- 'LIENTE.DESCUENTO,'#10' ALBARANES_CLIENTE.IMPORTE_DESCUENTO,'#10' ALBAR' +
- 'ANES_CLIENTE.BASE_IMPONIBLE,'#10' ALBARANES_CLIENTE.IMPORTE_TOTAL,'#10 +
- ' ALBARANES_CLIENTE.FECHA_PREVISTA_ENVIO,'#10' CONTRATOS_CLIENTE.RE' +
- 'FERENCIA AS REF_CONTRATO,'#10' CONTRATOS_CLIENTE.FECHA_CONTRATO,'#10' ' +
- 'EMPRESAS.NIF_CIF AS NIF_CIF_EMPRESA,'#10' EMPRESAS.NOMBRE AS NOMBRE' +
- '_EMPRESA,'#10' EMPRESAS.RAZON_SOCIAL AS RAZON_SOCIAL_EMPRESA,'#10' EMP' +
- 'RESAS.CALLE AS CALLE_EMPRESA,'#10' EMPRESAS.CODIGO_POSTAL AS CODIGO' +
- '_POSTAL_EMPRESA,'#10' EMPRESAS.POBLACION AS POBLACION_EMPRESA,'#10' EM' +
- 'PRESAS.PROVINCIA AS PROVINCIA_EMPRESA,'#10' EMPRESAS.TELEFONO_1 AS ' +
- 'TELEFONO_1_EMPRESA,'#10' EMPRESAS.FAX AS FAX_EMPRESA,'#10' EMPRESAS.MO' +
- 'VIL_1 AS MOVIL_1_EMPRESA,'#10' EMPRESAS.EMAIL_1 AS EMAIL_1_EMPRESA,' +
- #10' EMPRESAS.PAGINA_WEB AS PAGINA_WEB_EMPRESA'#10'FROM'#10' ALBARANES_CL' +
- 'IENTE'#10' INNER JOIN EMPRESAS ON (EMPRESAS.ID = ALBARANES_CLIENTE.' +
- 'ID_EMPRESA)'#10' INNER JOIN CONTACTOS ON (CONTACTOS.ID = ALBARANES_' +
- 'CLIENTE.ID_CLIENTE)'#10' LEFT OUTER JOIN CONTRATOS_CLIENTE ON (CONT' +
- 'RATOS_CLIENTE.ID = ALBARANES_CLIENTE.ID_PEDIDO)'#10' LEFT OUTER JOI' +
- 'N CONTACTOS_DIRECCIONES ON (CONTACTOS_DIRECCIONES.ID = ALBARANES' +
- '_CLIENTE.ID_DIRECCION)'#10'WHERE ALBARANES_CLIENTE.ID = :ID'#10
+ 'S_CLIENTE.FECHA_ALBARAN,'#10' ALBARANES_CLIENTE.REFERENCIA,'#10' CONTA' +
+ 'CTOS.CALLE AS CALLE_FISCAL,'#10' CONTACTOS.POBLACION AS POBLACION_F' +
+ 'ISCAL,'#10' CONTACTOS.PROVINCIA AS PROVINCIA_FISCAL,'#10' CONTACTOS.CO' +
+ 'DIGO_POSTAL AS CODIGO_POSTAL_FISCAL,'#10' CONTACTOS.TELEFONO_1 AS T' +
+ 'ELEFONO_POSTAL_FISCAL,'#10' CONTACTOS.MOVIL_1 AS MOVIL_FISCAL,'#10' AL' +
+ 'BARANES_CLIENTE.CALLE,'#10' ALBARANES_CLIENTE.POBLACION,'#10' ALBARANE' +
+ 'S_CLIENTE.PROVINCIA,'#10' ALBARANES_CLIENTE.CODIGO_POSTAL,'#10' ALBARA' +
+ 'NES_CLIENTE.TELEFONO,'#10' ALBARANES_CLIENTE.MOVIL,'#10' ALBARANES_CLI' +
+ 'ENTE.PERSONA_CONTACTO,'#10' ALBARANES_CLIENTE.NOTAS_ENVIO,'#10' ALBARA' +
+ 'NES_CLIENTE.OBSERVACIONES,'#10' ALBARANES_CLIENTE.IMPORTE_NETO,'#10' A' +
+ 'LBARANES_CLIENTE.DESCUENTO,'#10' ALBARANES_CLIENTE.IMPORTE_DESCUENT' +
+ 'O,'#10' ALBARANES_CLIENTE.BASE_IMPONIBLE,'#10' ALBARANES_CLIENTE.IMPOR' +
+ 'TE_TOTAL,'#10' ALBARANES_CLIENTE.FECHA_PREVISTA_ENVIO,'#10' CONTRATOS_' +
+ 'CLIENTE.REFERENCIA AS REF_CONTRATO,'#10' CONTRATOS_CLIENTE.FECHA_CO' +
+ 'NTRATO,'#10' EMPRESAS.NIF_CIF AS NIF_CIF_EMPRESA,'#10' EMPRESAS.NOMBRE' +
+ ' AS NOMBRE_EMPRESA,'#10' EMPRESAS.RAZON_SOCIAL AS RAZON_SOCIAL_EMPR' +
+ 'ESA,'#10' EMPRESAS.CALLE AS CALLE_EMPRESA,'#10' EMPRESAS.CODIGO_POSTAL' +
+ ' AS CODIGO_POSTAL_EMPRESA,'#10' EMPRESAS.POBLACION AS POBLACION_EMP' +
+ 'RESA,'#10' EMPRESAS.PROVINCIA AS PROVINCIA_EMPRESA,'#10' EMPRESAS.TELE' +
+ 'FONO_1 AS TELEFONO_1_EMPRESA,'#10' EMPRESAS.FAX AS FAX_EMPRESA,'#10' E' +
+ 'MPRESAS.MOVIL_1 AS MOVIL_1_EMPRESA,'#10' EMPRESAS.EMAIL_1 AS EMAIL_' +
+ '1_EMPRESA,'#10' EMPRESAS.PAGINA_WEB AS PAGINA_WEB_EMPRESA'#10'FROM'#10' AL' +
+ 'BARANES_CLIENTE'#10' INNER JOIN EMPRESAS ON (EMPRESAS.ID = ALBARANE' +
+ 'S_CLIENTE.ID_EMPRESA)'#10' INNER JOIN CONTACTOS ON (CONTACTOS.ID = ' +
+ 'ALBARANES_CLIENTE.ID_CLIENTE)'#10' LEFT OUTER JOIN CONTRATOS_CLIENT' +
+ 'E ON (CONTRATOS_CLIENTE.ID = ALBARANES_CLIENTE.ID_PEDIDO)'#10'/* LE' +
+ 'FT OUTER JOIN CONTACTOS_DIRECCIONES ON (CONTACTOS_DIRECCIONES.ID' +
+ ' = ALBARANES_CLIENTE.ID_DIRECCION)*/'#10'WHERE ALBARANES_CLIENTE.ID ' +
+ '= :ID'#10
StatementType = stSQL
ColumnMappings = <
item
@@ -526,6 +562,40 @@ object RptAlbaranesCliente: TRptAlbaranesCliente
DatasetField = 'FECHA_CONTRATO'
TableField = ''
SQLOrigin = 'FECHA_CONTRATO'
+ end
+ item
+ DatasetField = 'CALLE_FISCAL'
+ TableField = ''
+ SQLOrigin = 'CALLE_FISCAL'
+ end
+ item
+ DatasetField = 'POBLACION_FISCAL'
+ TableField = ''
+ SQLOrigin = 'POBLACION_FISCAL'
+ end
+ item
+ DatasetField = 'PROVINCIA_FISCAL'
+ TableField = ''
+ SQLOrigin = 'PROVINCIA_FISCAL'
+ end
+ item
+ DatasetField = 'CODIGO_POSTAL_FISCAL'
+ TableField = ''
+ SQLOrigin = 'CODIGO_POSTAL_FISCAL'
+ end
+ item
+ DatasetField = 'TELEFONO_POSTAL_FISCAL'
+ TableField = ''
+ SQLOrigin = 'TELEFONO_POSTAL_FISCAL'
+ end
+ item
+ DatasetField = 'MOVIL_FISCAL'
+ TableField = ''
+ SQLOrigin = 'MOVIL_FISCAL'
+ end
+ item
+ DatasetField = 'NOTAS_ENVIO'
+ TableField = 'NOTAS_ENVIO'
end>
end>
Name = 'Informe_Cabecera'
@@ -575,6 +645,36 @@ object RptAlbaranesCliente: TRptAlbaranesCliente
DataType = datString
Size = 255
end
+ item
+ Name = 'CALLE_FISCAL'
+ DataType = datString
+ Size = 255
+ end
+ item
+ Name = 'POBLACION_FISCAL'
+ DataType = datString
+ Size = 255
+ end
+ item
+ Name = 'PROVINCIA_FISCAL'
+ DataType = datString
+ Size = 255
+ end
+ item
+ Name = 'CODIGO_POSTAL_FISCAL'
+ DataType = datString
+ Size = 10
+ end
+ item
+ Name = 'TELEFONO_POSTAL_FISCAL'
+ DataType = datString
+ Size = 25
+ end
+ item
+ Name = 'MOVIL_FISCAL'
+ DataType = datString
+ Size = 25
+ end
item
Name = 'CALLE'
DataType = datString
@@ -610,6 +710,11 @@ object RptAlbaranesCliente: TRptAlbaranesCliente
DataType = datString
Size = 255
end
+ item
+ Name = 'NOTAS_ENVIO'
+ DataType = datString
+ Size = 255
+ end
item
Name = 'OBSERVACIONES'
DataType = datMemo
@@ -1173,16 +1278,11 @@ object RptAlbaranesCliente: TRptAlbaranesCliente
EngineOptions.DoublePass = True
IniFile = '\Software\Fast Reports'
PreviewOptions.Buttons = [pbPrint, pbLoad, pbSave, pbExport, pbZoom, pbFind, pbOutline, pbPageSetup, pbTools, pbEdit, pbNavigator, pbExportQuick]
- PreviewOptions.OutlineWidth = 180
PreviewOptions.Zoom = 1.000000000000000000
- PrintOptions.Printer = 'Default'
+ PrintOptions.Printer = 'Por defecto'
PrintOptions.PrintOnSheet = 0
- ReportOptions.CreateDate = 37871.995398692100000000
- ReportOptions.LastChange = 41544.473509386570000000
- ReportOptions.VersionBuild = '1'
- ReportOptions.VersionMajor = '12'
- ReportOptions.VersionMinor = '13'
- ReportOptions.VersionRelease = '1'
+ ReportOptions.CreateDate = 39065.872423495400000000
+ ReportOptions.LastChange = 44183.517020532410000000
ScriptLanguage = 'PascalScript'
ShowProgress = False
StoreInDFM = False
diff --git a/Source/Modulos/Albaranes de cliente/Servidor/srvAlbaranesCliente_Impl.dfm b/Source/Modulos/Albaranes de cliente/Servidor/srvAlbaranesCliente_Impl.dfm
index 64e8ff6..fb9c6ae 100644
--- a/Source/Modulos/Albaranes de cliente/Servidor/srvAlbaranesCliente_Impl.dfm
+++ b/Source/Modulos/Albaranes de cliente/Servidor/srvAlbaranesCliente_Impl.dfm
@@ -227,6 +227,10 @@ object srvAlbaranesCliente: TsrvAlbaranesCliente
item
DatasetField = 'FECHA_CONTRATO'
TableField = 'FECHA_CONTRATO'
+ end
+ item
+ DatasetField = 'NOTAS_ENVIO'
+ TableField = 'NOTAS_ENVIO'
end>
end>
Name = 'AlbaranesCliente'
@@ -481,6 +485,11 @@ object srvAlbaranesCliente: TsrvAlbaranesCliente
Size = 255
ServerAutoRefresh = True
DictionaryEntry = 'AlbaranesCliente_TIENDA'
+ end
+ item
+ Name = 'NOTAS_ENVIO'
+ DataType = datString
+ Size = 255
end>
end
item
@@ -847,6 +856,12 @@ object srvAlbaranesCliente: TsrvAlbaranesCliente
Name = 'ID_TIENDA'
DataType = datInteger
Value = ''
+ end
+ item
+ Name = 'NOTAS_ENVIO'
+ DataType = datString
+ Size = 255
+ Value = ''
end>
Statements = <
item
@@ -862,16 +877,17 @@ object srvAlbaranesCliente: TsrvAlbaranesCliente
' BASE_IMPONIBLE, IVA, IMPORTE_IVA, IMPORTE_TOTAL, OBSERVACIO' +
'NES, '#10' INCIDENCIAS, INCIDENCIAS_ACTIVAS, FECHA_ALTA, FECHA_M' +
'ODIFICACION, '#10' USUARIO, ID_FORMA_PAGO, FECHA_PREVISTA_ENVIO,' +
- ' FECHA_ENVIO, '#10' FECHA_RECEPCION, ID_TIENDA)'#10' VALUES'#10' (:I' +
- 'D, :ID_EMPRESA, :ID_CLIENTE, :FECHA_ALBARAN, :TIPO, :REFERENCIA,' +
- #10' :REFERENCIA_CLIENTE, :ID_ALMACEN, :ID_PEDIDO, :ID_FACTURA,' +
- ' :ID_DIRECCION,'#10' :CALLE, :CODIGO_POSTAL, :POBLACION, :PROVIN' +
- 'CIA, :PERSONA_CONTACTO,'#10' :TELEFONO, :MOVIL, :IMPORTE_NETO, :' +
- 'IMPORTE_PORTE, :DESCUENTO, :IMPORTE_DESCUENTO,'#10' :BASE_IMPONI' +
- 'BLE, :IVA, :IMPORTE_IVA, :IMPORTE_TOTAL, :OBSERVACIONES,'#10' :I' +
- 'NCIDENCIAS, :INCIDENCIAS_ACTIVAS, CURRENT_TIMESTAMP, :FECHA_MODI' +
- 'FICACION,'#10' :USUARIO, :ID_FORMA_PAGO, :FECHA_PREVISTA_ENVIO, ' +
- ':FECHA_ENVIO, :FECHA_RECEPCION,'#10' :ID_TIENDA)'#10' '#10' '#10#10
+ ' FECHA_ENVIO, '#10' FECHA_RECEPCION, ID_TIENDA, NOTAS_ENVIO)'#10' V' +
+ 'ALUES'#10' (:ID, :ID_EMPRESA, :ID_CLIENTE, :FECHA_ALBARAN, :TIPO,' +
+ ' :REFERENCIA,'#10' :REFERENCIA_CLIENTE, :ID_ALMACEN, :ID_PEDIDO,' +
+ ' :ID_FACTURA, :ID_DIRECCION,'#10' :CALLE, :CODIGO_POSTAL, :POBLA' +
+ 'CION, :PROVINCIA, :PERSONA_CONTACTO,'#10' :TELEFONO, :MOVIL, :IM' +
+ 'PORTE_NETO, :IMPORTE_PORTE, :DESCUENTO, :IMPORTE_DESCUENTO,'#10' ' +
+ ' :BASE_IMPONIBLE, :IVA, :IMPORTE_IVA, :IMPORTE_TOTAL, :OBSERVACI' +
+ 'ONES,'#10' :INCIDENCIAS, :INCIDENCIAS_ACTIVAS, CURRENT_TIMESTAMP' +
+ ', :FECHA_MODIFICACION,'#10' :USUARIO, :ID_FORMA_PAGO, :FECHA_PRE' +
+ 'VISTA_ENVIO, :FECHA_ENVIO, :FECHA_RECEPCION,'#10' :ID_TIENDA, :N' +
+ 'OTAS_ENVIO)'#10' '#10' '#10#10
StatementType = stSQL
ColumnMappings = <>
end>
@@ -1077,6 +1093,12 @@ object srvAlbaranesCliente: TsrvAlbaranesCliente
DataType = datInteger
Value = ''
end
+ item
+ Name = 'NOTAS_ENVIO'
+ DataType = datString
+ Size = 255
+ Value = ''
+ end
item
Name = 'OLD_ID'
Value = ''
@@ -1105,8 +1127,8 @@ object srvAlbaranesCliente: TsrvAlbaranesCliente
'ACION = CURRENT_TIMESTAMP,'#10' USUARIO = :USUARIO, '#10' ID_FORMA' +
'_PAGO = :ID_FORMA_PAGO, '#10' FECHA_PREVISTA_ENVIO = :FECHA_PREVI' +
'STA_ENVIO, '#10' FECHA_ENVIO = :FECHA_ENVIO, '#10' FECHA_RECEPCION' +
- ' = :FECHA_RECEPCION,'#10' ID_TIENDA = :ID_TIENDA'#10' WHERE'#10' (ID ' +
- '= :OLD_ID)'#10
+ ' = :FECHA_RECEPCION,'#10' ID_TIENDA = :ID_TIENDA,'#10' NOTAS_ENVIO' +
+ ' = :NOTAS_ENVIO'#10' WHERE'#10' (ID = :OLD_ID)'#10
StatementType = stSQL
ColumnMappings = <>
end>
diff --git a/Source/Modulos/Albaranes de cliente/Views/uViewAlbaranCliente.dfm b/Source/Modulos/Albaranes de cliente/Views/uViewAlbaranCliente.dfm
index 052fea9..8bb44cc 100644
--- a/Source/Modulos/Albaranes de cliente/Views/uViewAlbaranCliente.dfm
+++ b/Source/Modulos/Albaranes de cliente/Views/uViewAlbaranCliente.dfm
@@ -19,8 +19,8 @@ inherited frViewAlbaranCliente: TfrViewAlbaranCliente
1057
671)
object Label1: TLabel
- Left = 437
- Top = 622
+ Left = 412
+ Top = 678
Width = 299
Height = 26
Caption =
@@ -81,7 +81,7 @@ inherited frViewAlbaranCliente: TfrViewAlbaranCliente
Width = 284
end
inline frViewClienteAlbaran: TfrViewDatosYSeleccionClienteAlbaran
- Left = 437
+ Left = 412
Top = 28
Width = 442
Height = 221
@@ -93,7 +93,7 @@ inherited frViewAlbaranCliente: TfrViewAlbaranCliente
ParentFont = False
TabOrder = 10
ReadOnly = False
- ExplicitLeft = 437
+ ExplicitLeft = 412
ExplicitTop = 28
ExplicitWidth = 442
ExplicitHeight = 221
@@ -102,10 +102,36 @@ inherited frViewAlbaranCliente: TfrViewAlbaranCliente
Height = 221
ExplicitWidth = 442
ExplicitHeight = 221
+ inherited edtlNombre: TcxDBTextEdit
+ ExplicitWidth = 224
+ Width = 224
+ end
+ inherited edtNIFCIF: TcxDBTextEdit
+ ExplicitWidth = 103
+ Width = 103
+ end
+ inherited bVerFichaCliente: TBitBtn
+ Left = 402
+ ExplicitLeft = 402
+ end
+ inherited edtDireccion: TcxMemo
+ ExplicitWidth = 437
+ Width = 437
+ end
+ inherited bElegirDireccion: TButton
+ Left = 571
+ ExplicitLeft = 571
+ end
inherited edtTelefonos: TcxTextEdit
ExplicitWidth = 193
Width = 193
end
+ inherited edtReferencia: TcxDBTextEdit
+ Left = 362
+ ExplicitLeft = 362
+ ExplicitWidth = 103
+ Width = 103
+ end
end
inherited ActionList1: TActionList
Left = 306
@@ -114,28 +140,9 @@ inherited frViewAlbaranCliente: TfrViewAlbaranCliente
Left = 280
end
end
- object eCalle: TcxDBTextEdit
- Left = 531
- Top = 396
- DataBinding.DataField = 'CALLE'
- DataBinding.DataSource = DADataSource
- 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
- StyleFocused.LookAndFeel.Kind = lfStandard
- StyleFocused.LookAndFeel.NativeStyle = True
- StyleHot.LookAndFeel.Kind = lfStandard
- StyleHot.LookAndFeel.NativeStyle = True
- TabOrder = 14
- Width = 284
- end
object ePoblacion: TcxDBTextEdit
- Left = 531
- Top = 423
+ Left = 506
+ Top = 452
DataBinding.DataField = 'POBLACION'
DataBinding.DataSource = DADataSource
Style.BorderColor = clWindowFrame
@@ -154,7 +161,7 @@ inherited frViewAlbaranCliente: TfrViewAlbaranCliente
end
object eCodigoPostal: TcxDBTextEdit
Left = 951
- Top = 423
+ Top = 452
DataBinding.DataField = 'CODIGO_POSTAL'
DataBinding.DataSource = DADataSource
Style.BorderColor = clWindowFrame
@@ -172,8 +179,8 @@ inherited frViewAlbaranCliente: TfrViewAlbaranCliente
Width = 65
end
object eProvincia: TcxDBTextEdit
- Left = 531
- Top = 450
+ Left = 506
+ Top = 479
DataBinding.DataField = 'PROVINCIA'
DataBinding.DataSource = DADataSource
Style.BorderColor = clWindowFrame
@@ -191,8 +198,8 @@ inherited frViewAlbaranCliente: TfrViewAlbaranCliente
Width = 406
end
object ePersonaContacto: TcxDBTextEdit
- Left = 531
- Top = 477
+ Left = 506
+ Top = 506
DataBinding.DataField = 'PERSONA_CONTACTO'
DataBinding.DataSource = DADataSource
Style.BorderColor = clWindowFrame
@@ -211,8 +218,8 @@ inherited frViewAlbaranCliente: TfrViewAlbaranCliente
Width = 284
end
object eTlfTrabajo: TcxDBTextEdit
- Left = 531
- Top = 504
+ Left = 506
+ Top = 533
DataBinding.DataField = 'TELEFONO'
DataBinding.DataSource = DADataSource
Style.BorderColor = clWindowFrame
@@ -229,17 +236,8 @@ inherited frViewAlbaranCliente: TfrViewAlbaranCliente
TabOrder = 19
Width = 284
end
- object bElegirDireccion: TBitBtn
- Left = 844
- Top = 531
- Width = 172
- Height = 23
- Action = actModificarDireccion
- Caption = 'Modificar la direcci'#243'n'
- TabOrder = 20
- end
object Button1: TButton
- Left = 275
+ Left = 250
Top = 138
Width = 132
Height = 23
@@ -301,7 +299,7 @@ inherited frViewAlbaranCliente: TfrViewAlbaranCliente
Width = 146
end
object bFormasPago: TButton
- Left = 275
+ Left = 250
Top = 109
Width = 132
Height = 23
@@ -310,7 +308,7 @@ inherited frViewAlbaranCliente: TfrViewAlbaranCliente
OnClick = bFormasPagoClick
end
object eFechaRecepcion: TcxDBDateEdit
- Left = 571
+ Left = 546
Top = 339
Anchors = [akLeft, akTop, akRight]
DataBinding.DataField = 'FECHA_RECEPCION'
@@ -335,8 +333,8 @@ inherited frViewAlbaranCliente: TfrViewAlbaranCliente
Width = 239
end
object cbConAlmacen: TCheckBox
- Left = 447
- Top = 590
+ Left = 422
+ Top = 646
Width = 179
Height = 21
Caption = 'Asociar este albar'#225'n al almac'#233'n:'
@@ -344,8 +342,8 @@ inherited frViewAlbaranCliente: TfrViewAlbaranCliente
OnClick = cbConAlmacenClick
end
object cbAlmacen: TcxDBLookupComboBox
- Left = 632
- Top = 590
+ Left = 607
+ Top = 646
DataBinding.DataField = 'ID_ALMACEN'
DataBinding.DataSource = DADataSource
Properties.KeyFieldNames = 'ID'
@@ -400,7 +398,7 @@ inherited frViewAlbaranCliente: TfrViewAlbaranCliente
Width = 284
end
object eFechaPrevista: TcxDBDateEdit
- Left = 571
+ Left = 546
Top = 285
Anchors = [akLeft, akTop, akRight]
DataBinding.DataField = 'FECHA_PREVISTA_ENVIO'
@@ -451,7 +449,7 @@ inherited frViewAlbaranCliente: TfrViewAlbaranCliente
Width = 284
end
object eFechaEnvio: TcxDBDateEdit
- Left = 571
+ Left = 546
Top = 312
Anchors = [akLeft, akTop, akRight]
DataBinding.DataField = 'FECHA_ENVIO'
@@ -524,6 +522,50 @@ inherited frViewAlbaranCliente: TfrViewAlbaranCliente
Height = 228
end
end
+ object eCalle: TcxDBMemo
+ Left = 506
+ Top = 396
+ Anchors = [akLeft, akTop, akRight, akBottom]
+ DataBinding.DataField = 'CALLE'
+ DataBinding.DataSource = DADataSource
+ Properties.ScrollBars = ssVertical
+ 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
+ StyleFocused.LookAndFeel.Kind = lfStandard
+ StyleFocused.LookAndFeel.NativeStyle = True
+ StyleHot.LookAndFeel.Kind = lfStandard
+ StyleHot.LookAndFeel.NativeStyle = True
+ TabOrder = 14
+ Height = 50
+ Width = 772
+ end
+ object eNotasEnvio: TcxDBMemo
+ Left = 506
+ Top = 560
+ Anchors = [akLeft, akTop, akRight, akBottom]
+ DataBinding.DataField = 'NOTAS_ENVIO'
+ DataBinding.DataSource = DADataSource
+ Properties.ScrollBars = ssVertical
+ 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
+ StyleFocused.LookAndFeel.Kind = lfStandard
+ StyleFocused.LookAndFeel.NativeStyle = True
+ StyleHot.LookAndFeel.Kind = lfStandard
+ StyleHot.LookAndFeel.NativeStyle = True
+ TabOrder = 20
+ Height = 50
+ Width = 510
+ end
object dxLayoutControl1Group_Root: TdxLayoutGroup
ShowCaption = False
Hidden = True
@@ -683,8 +725,8 @@ inherited frViewAlbaranCliente: TfrViewAlbaranCliente
object dxLayoutControl1Group8: TdxLayoutGroup
AutoAligns = []
AlignHorz = ahClient
- Caption = 'Direcci'#243'n de entrega / obra'
- object dxLayoutControl1Item8: TdxLayoutItem
+ Caption = 'Direcci'#243'n de entrega'
+ object dxLayoutControl1Item14: TdxLayoutItem
Caption = 'Calle:'
Control = eCalle
ControlOptions.ShowBorder = False
@@ -728,11 +770,9 @@ inherited frViewAlbaranCliente: TfrViewAlbaranCliente
Control = eTlfTrabajo
ControlOptions.ShowBorder = False
end
- object dxLayoutControl1Item14: TdxLayoutItem
- AutoAligns = [aaVertical]
- AlignHorz = ahRight
- ShowCaption = False
- Control = bElegirDireccion
+ object dxLayoutControl1Item8: TdxLayoutItem
+ Caption = 'Notas env'#237'o:'
+ Control = eNotasEnvio
ControlOptions.ShowBorder = False
end
end
@@ -785,6 +825,8 @@ inherited frViewAlbaranCliente: TfrViewAlbaranCliente
end
object actVerPedidoCli: TAction
Caption = 'Ver el pedido de cliente...'
+ Enabled = False
+ Visible = False
OnExecute = actVerPedidoCliExecute
OnUpdate = actVerPedidoCliUpdate
end
diff --git a/Source/Modulos/Albaranes de cliente/Views/uViewAlbaranCliente.pas b/Source/Modulos/Albaranes de cliente/Views/uViewAlbaranCliente.pas
index 617f591..1061048 100644
--- a/Source/Modulos/Albaranes de cliente/Views/uViewAlbaranCliente.pas
+++ b/Source/Modulos/Albaranes de cliente/Views/uViewAlbaranCliente.pas
@@ -45,8 +45,6 @@ type
dxLayoutControl1Group3: TdxLayoutGroup;
dxLayoutControl1Item1: TdxLayoutItem;
frViewClienteAlbaran: TfrViewDatosYSeleccionClienteAlbaran;
- dxLayoutControl1Item8: TdxLayoutItem;
- eCalle: TcxDBTextEdit;
dxLayoutControl1Item9: TdxLayoutItem;
ePoblacion: TcxDBTextEdit;
dxLayoutControl1Item10: TdxLayoutItem;
@@ -59,8 +57,6 @@ type
eTlfTrabajo: TcxDBTextEdit;
dxLayoutControl1Group4: TdxLayoutGroup;
dxLayoutControl1Group9: TdxLayoutGroup;
- dxLayoutControl1Item14: TdxLayoutItem;
- bElegirDireccion: TBitBtn;
ActionList1: TActionList;
actModificarDireccion: TAction;
Button1: TButton;
@@ -102,6 +98,10 @@ type
dxLayoutControl1Item17: TdxLayoutItem;
frViewObservaciones1: TfrViewObservaciones;
dxLayoutControl1Item6: TdxLayoutItem;
+ dxLayoutControl1Item14: TdxLayoutItem;
+ eCalle: TcxDBMemo;
+ dxLayoutControl1Item8: TdxLayoutItem;
+ eNotasEnvio: TcxDBMemo;
procedure CustomViewCreate(Sender: TObject);
procedure CustomViewDestroy(Sender: TObject);
procedure actVerPedidoCliExecute(Sender: TObject);
diff --git a/Source/Modulos/Albaranes de cliente/Views/uViewDatosYSeleccionClienteAlbaran.dfm b/Source/Modulos/Albaranes de cliente/Views/uViewDatosYSeleccionClienteAlbaran.dfm
index addff5d..28ef04b 100644
--- a/Source/Modulos/Albaranes de cliente/Views/uViewDatosYSeleccionClienteAlbaran.dfm
+++ b/Source/Modulos/Albaranes de cliente/Views/uViewDatosYSeleccionClienteAlbaran.dfm
@@ -1,13 +1,13 @@
inherited frViewDatosYSeleccionClienteAlbaran: TfrViewDatosYSeleccionClienteAlbaran
- Width = 579
- Height = 220
- ExplicitWidth = 579
- ExplicitHeight = 220
+ Width = 598
+ Height = 299
+ ExplicitWidth = 598
+ ExplicitHeight = 299
object dxLayoutControl1: TdxLayoutControl
Left = 0
Top = 0
- Width = 579
- Height = 220
+ Width = 598
+ Height = 299
Margins.Left = 0
Margins.Top = 0
Margins.Right = 0
@@ -17,11 +17,11 @@ inherited frViewDatosYSeleccionClienteAlbaran: TfrViewDatosYSeleccionClienteAlba
TabOrder = 0
TabStop = False
AutoContentSizes = [acsWidth, acsHeight]
- ExplicitWidth = 447
- ExplicitHeight = 224
+ ExplicitWidth = 579
+ ExplicitHeight = 220
DesignSize = (
- 579
- 220)
+ 598
+ 299)
object edtlNombre: TcxDBTextEdit
Left = 66
Top = 41
@@ -155,7 +155,7 @@ inherited frViewDatosYSeleccionClienteAlbaran: TfrViewDatosYSeleccionClienteAlba
FF00FF00FF00006000000060000000600000FF00FF00FF00FF00}
end
object bVerFichaCliente: TBitBtn
- Left = 377
+ Left = 396
Top = 181
Width = 192
Height = 25
@@ -218,7 +218,7 @@ inherited frViewDatosYSeleccionClienteAlbaran: TfrViewDatosYSeleccionClienteAlba
Width = 437
end
object bElegirDireccion: TButton
- Left = 546
+ Left = 565
Top = 95
Width = 23
Height = 25
@@ -244,7 +244,7 @@ inherited frViewDatosYSeleccionClienteAlbaran: TfrViewDatosYSeleccionClienteAlba
Width = 302
end
object edtReferencia: TcxDBTextEdit
- Left = 349
+ Left = 359
Top = 68
Anchors = [akLeft, akTop, akRight]
AutoSize = False
diff --git a/Source/Modulos/Albaranes de cliente/Views/uViewDatosYSeleccionClienteAlbaran.pas b/Source/Modulos/Albaranes de cliente/Views/uViewDatosYSeleccionClienteAlbaran.pas
index 5ab1a45..3bffc26 100644
--- a/Source/Modulos/Albaranes de cliente/Views/uViewDatosYSeleccionClienteAlbaran.pas
+++ b/Source/Modulos/Albaranes de cliente/Views/uViewDatosYSeleccionClienteAlbaran.pas
@@ -265,8 +265,7 @@ begin
if Assigned(FAlbaran) then
ACadena := Format('%s %s %s %s',
- [FAlbaran.CALLE, FAlbaran.POBLACION,
- FAlbaran.CODIGO_POSTAL, FAlbaran.PROVINCIA]);
+ [FAlbaran.CLIENTE.CALLE, FAlbaran.CLIENTE.POBLACION, FAlbaran.CLIENTE.CODIGO_POSTAL, FAlbaran.CLIENTE.PROVINCIA]);
edtDireccion.Text := ACadena;
end;
@@ -337,14 +336,14 @@ var
begin
ACadena := '';
- if not FAlbaran.TELEFONOIsNull then
- ACadena := FAlbaran.TELEFONO;
+ if not FAlbaran.Cliente.TELEFONO_1IsNull then
+ ACadena := FAlbaran.Cliente.TELEFONO_1;
- if not FAlbaran.MOVILIsNull then
+ if not FAlbaran.Cliente.MOVIL_1IsNull then
begin
if ACadena <> '' then
ACadena := ACadena + ' / ';
- ACadena := ACadena + FAlbaran.MOVIL;
+ ACadena := ACadena + FAlbaran.Cliente.MOVIL_1;
end;
edtTelefonos.Text := ACadena;
diff --git a/Source/Modulos/Albaranes de cliente/Views/uViewDireccionEntregaAlbaranCliente.dfm b/Source/Modulos/Albaranes de cliente/Views/uViewDireccionEntregaAlbaranCliente.dfm
index 849fe98..8db9dfa 100644
--- a/Source/Modulos/Albaranes de cliente/Views/uViewDireccionEntregaAlbaranCliente.dfm
+++ b/Source/Modulos/Albaranes de cliente/Views/uViewDireccionEntregaAlbaranCliente.dfm
@@ -1,42 +1,25 @@
inherited frViewDireccionEntregaAlbaranCliente: TfrViewDireccionEntregaAlbaranCliente
- Width = 420
- Height = 156
- ExplicitWidth = 420
- ExplicitHeight = 156
+ Width = 846
+ Height = 157
+ ExplicitWidth = 846
+ ExplicitHeight = 157
object dxLayoutControl1: TdxLayoutControl
Left = 0
Top = 0
- Width = 420
- Height = 156
+ Width = 846
+ Height = 157
Align = alClient
ParentBackground = True
TabOrder = 0
TabStop = False
AutoContentSizes = [acsWidth, acsHeight]
- ExplicitWidth = 337
- ExplicitHeight = 129
- object eCalle: TcxDBTextEdit
- Left = 64
- Top = 10
- DataBinding.DataField = 'CALLE'
- DataBinding.DataSource = dsAlbaran
- 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
- StyleFocused.LookAndFeel.Kind = lfStandard
- StyleFocused.LookAndFeel.NativeStyle = True
- StyleHot.LookAndFeel.Kind = lfStandard
- StyleHot.LookAndFeel.NativeStyle = True
- TabOrder = 0
- Width = 281
- end
+ ExplicitHeight = 266
+ DesignSize = (
+ 846
+ 157)
object ePoblacion: TcxDBTextEdit
Left = 64
- Top = 37
+ Top = 66
DataBinding.DataField = 'POBLACION'
DataBinding.DataSource = dsAlbaran
Style.BorderColor = clWindowFrame
@@ -55,7 +38,7 @@ inherited frViewDireccionEntregaAlbaranCliente: TfrViewDireccionEntregaAlbaranCl
end
object eProvincia: TcxDBTextEdit
Left = 64
- Top = 64
+ Top = 93
DataBinding.DataField = 'PROVINCIA'
DataBinding.DataSource = dsAlbaran
Style.BorderColor = clWindowFrame
@@ -73,8 +56,8 @@ inherited frViewDireccionEntregaAlbaranCliente: TfrViewDireccionEntregaAlbaranCl
Width = 281
end
object eCodigoPostal: TcxDBTextEdit
- Left = 345
- Top = 37
+ Left = 771
+ Top = 66
DataBinding.DataField = 'CODIGO_POSTAL'
DataBinding.DataSource = dsAlbaran
Style.BorderColor = clWindowFrame
@@ -92,8 +75,8 @@ inherited frViewDireccionEntregaAlbaranCliente: TfrViewDireccionEntregaAlbaranCl
Width = 65
end
object eTlfTrabajo: TcxDBTextEdit
- Left = 288
- Top = 91
+ Left = 714
+ Top = 120
DataBinding.DataField = 'TELEFONO'
DataBinding.DataSource = dsAlbaran
Style.BorderColor = clWindowFrame
@@ -112,7 +95,7 @@ inherited frViewDireccionEntregaAlbaranCliente: TfrViewDireccionEntregaAlbaranCl
end
object ePersonaContacto: TcxDBTextEdit
Left = 64
- Top = 91
+ Top = 120
DataBinding.DataField = 'PERSONA_CONTACTO'
DataBinding.DataSource = dsAlbaran
Style.BorderColor = clWindowFrame
@@ -130,11 +113,33 @@ inherited frViewDireccionEntregaAlbaranCliente: TfrViewDireccionEntregaAlbaranCl
TabOrder = 4
Width = 281
end
+ object eCalle: TcxDBMemo
+ Left = 64
+ Top = 10
+ Anchors = [akLeft, akTop, akRight, akBottom]
+ DataBinding.DataField = 'CALLE'
+ DataBinding.DataSource = dsAlbaran
+ Properties.ScrollBars = ssVertical
+ 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
+ StyleFocused.LookAndFeel.Kind = lfStandard
+ StyleFocused.LookAndFeel.NativeStyle = True
+ StyleHot.LookAndFeel.Kind = lfStandard
+ StyleHot.LookAndFeel.NativeStyle = True
+ TabOrder = 0
+ Height = 50
+ Width = 886
+ end
object dxLayoutGroup1: TdxLayoutGroup
ShowCaption = False
Hidden = True
ShowBorder = False
- object dxLayoutControl1Item1: TdxLayoutItem
+ object dxLayoutControl1Item7: TdxLayoutItem
Caption = 'Calle:'
Control = eCalle
ControlOptions.ShowBorder = False
@@ -197,11 +202,9 @@ inherited frViewDireccionEntregaAlbaranCliente: TfrViewDireccionEntregaAlbaranCl
end
end
object dsAlbaran: TDADataSource
- Left = 8
- Top = 8
+ Left = 96
end
object dsAlmacenes: TDADataSource
- Left = 8
- Top = 40
+ Left = 168
end
end
diff --git a/Source/Modulos/Albaranes de cliente/Views/uViewDireccionEntregaAlbaranCliente.pas b/Source/Modulos/Albaranes de cliente/Views/uViewDireccionEntregaAlbaranCliente.pas
index 9e9611e..29e12b3 100644
--- a/Source/Modulos/Albaranes de cliente/Views/uViewDireccionEntregaAlbaranCliente.pas
+++ b/Source/Modulos/Albaranes de cliente/Views/uViewDireccionEntregaAlbaranCliente.pas
@@ -23,8 +23,6 @@ type
dxLayoutGroup1: TdxLayoutGroup;
dsAlbaran: TDADataSource;
dsAlmacenes: TDADataSource;
- dxLayoutControl1Item1: TdxLayoutItem;
- eCalle: TcxDBTextEdit;
dxLayoutControl1Item2: TdxLayoutItem;
ePoblacion: TcxDBTextEdit;
dxLayoutControl1Item3: TdxLayoutItem;
@@ -39,6 +37,8 @@ type
dxLayoutControl1Group1: TdxLayoutGroup;
dxLayoutControl1Group5: TdxLayoutGroup;
dxLayoutControl1Group4: TdxLayoutGroup;
+ dxLayoutControl1Item7: TdxLayoutItem;
+ eCalle: TcxDBMemo;
protected
FAlbaran : IBizAlbaranCliente;
FController : IAlbaranesClienteController;
diff --git a/Source/Modulos/Albaranes de proveedor/Views/uViewAlbaranesProveedor.dfm b/Source/Modulos/Albaranes de proveedor/Views/uViewAlbaranesProveedor.dfm
index 18572cc..e8c046e 100644
--- a/Source/Modulos/Albaranes de proveedor/Views/uViewAlbaranesProveedor.dfm
+++ b/Source/Modulos/Albaranes de proveedor/Views/uViewAlbaranesProveedor.dfm
@@ -149,15 +149,27 @@ inherited frViewAlbaranesProveedor: TfrViewAlbaranesProveedor
Width = 596
ExplicitWidth = 596
inherited txtFiltroTodo: TcxTextEdit
+ Style.LookAndFeel.SkinName = ''
+ StyleDisabled.LookAndFeel.SkinName = ''
+ StyleFocused.LookAndFeel.SkinName = ''
+ StyleHot.LookAndFeel.SkinName = ''
ExplicitWidth = 273
Width = 273
end
inherited edtFechaIniFiltro: TcxDateEdit
+ Style.LookAndFeel.SkinName = ''
+ StyleDisabled.LookAndFeel.SkinName = ''
+ StyleFocused.LookAndFeel.SkinName = ''
+ StyleHot.LookAndFeel.SkinName = ''
ExplicitWidth = 121
Width = 121
end
inherited edtFechaFinFiltro: TcxDateEdit
Left = 292
+ Style.LookAndFeel.SkinName = ''
+ StyleDisabled.LookAndFeel.SkinName = ''
+ StyleFocused.LookAndFeel.SkinName = ''
+ StyleHot.LookAndFeel.SkinName = ''
ExplicitLeft = 292
ExplicitWidth = 217
Width = 217
@@ -203,9 +215,6 @@ inherited frViewAlbaranesProveedor: TfrViewAlbaranesProveedor
BuiltInReportLink = True
end
end
- inherited cxStyleRepository1: TcxStyleRepository
- Left = 248
- end
inherited ActionList1: TActionList
Left = 392
Top = 448
@@ -220,10 +229,13 @@ inherited frViewAlbaranesProveedor: TfrViewAlbaranesProveedor
OnUpdate = actAlmacenUpdate
end
end
- inherited PngImageList10: TPngImageList
+ inherited GridPNGImageList: TPngImageList
Left = 352
Top = 448
end
+ inherited cxStyleRepository1: TcxStyleRepository
+ Left = 248
+ end
object PngImageList: TPngImageList
PngImages = <
item
diff --git a/Source/Modulos/Albaranes de proveedor/Views/uViewAlbaranesProveedor.pas b/Source/Modulos/Albaranes de proveedor/Views/uViewAlbaranesProveedor.pas
index 2e45c17..ea2fca1 100644
--- a/Source/Modulos/Albaranes de proveedor/Views/uViewAlbaranesProveedor.pas
+++ b/Source/Modulos/Albaranes de proveedor/Views/uViewAlbaranesProveedor.pas
@@ -12,7 +12,7 @@ uses
uDADataTable, cxGridLevel, cxClasses, cxControls, cxGridCustomView, Classes,
cxGrid, uBizAlbaranesProveedor, cxCurrencyEdit, Forms, uViewFiltroBase,
ActnList, TB2Item, TBX, TB2Toolbar, TBXDkPanels, TB2Dock, dxPgsDlg, cxTextEdit,
- uDAInterfaces;
+ uDAInterfaces, uCustomView, uViewBase;
type
IViewAlbaranesProveedor = interface(IViewGrid)
diff --git a/Source/Modulos/Articulos/Controller/uArticulosController.pas b/Source/Modulos/Articulos/Controller/uArticulosController.pas
index 6743ede..5d488dd 100644
--- a/Source/Modulos/Articulos/Controller/uArticulosController.pas
+++ b/Source/Modulos/Articulos/Controller/uArticulosController.pas
@@ -329,7 +329,7 @@ end;
function TArticulosController.BuscarTodos: IBizArticulo;
begin
- Result := FDataModule.GetItems;
+ Result := FDataModule.GetItems(txArticulo);
//LOS ARTICULOS PASAN A SER COMUNES PARA LAS EMPRESAS
// FiltrarEmpresa(Result);
@@ -431,6 +431,10 @@ begin
if (AArticulo.DataTable.State in dsEditModes) then
AArticulo.DataTable.Post;
+ //Tambien hacemos post de sus tablas hija
+ if (AArticulo.Proveedores.DataTable.State in dsEditModes) then
+ AArticulo.Proveedores.DataTable.Post;
+
if Length(AArticulo.DESCRIPCION) = 0 then
raise Exception.Create('Debe indicar al menos la descripción de este artículo.');
@@ -649,8 +653,6 @@ begin
end;
function TArticulosController.Guardar(AArticulo: IBizArticulo): Boolean;
-var
- NuevoID: Integer;
begin
Result := False;
@@ -658,10 +660,22 @@ begin
begin
ShowHourglassCursor;
try
+ //Para que no salten los eventos de calculo de PVP que daría un pete importante
+ AArticulo.DataTable.DisableControls;
+ AArticulo.Proveedores.DataTable.DisableControls;
+ AArticulo.DataTable.DisableEventHandlers;
+ AArticulo.Proveedores.DataTable.DisableEventHandlers;
+
AArticulo.DataTable.ApplyUpdates;
-
- Result := True;
+
+ Result := True;
finally
+ //Para que no salten los eventos de calculo de PVP que daría un pete importante
+ AArticulo.DataTable.EnableControls;
+ AArticulo.DataTable.EnableEventHandlers;
+ AArticulo.Proveedores.Datatable.EnableControls;
+ AArticulo.Proveedores.Datatable.EnableEventHandlers;
+
HideHourglassCursor;
end;
end;
diff --git a/Source/Modulos/Articulos/Data/uDataModuleArticulos.dfm b/Source/Modulos/Articulos/Data/uDataModuleArticulos.dfm
index 52357a4..3c6d21b 100644
--- a/Source/Modulos/Articulos/Data/uDataModuleArticulos.dfm
+++ b/Source/Modulos/Articulos/Data/uDataModuleArticulos.dfm
@@ -1,7 +1,7 @@
inherited DataModuleArticulos: TDataModuleArticulos
OnCreate = DAClientDataModuleCreate
- Height = 219
- Width = 518
+ Height = 365
+ Width = 547
object RORemoteService: TRORemoteService
Message = dmConexion.ROMessage
Channel = dmConexion.ROChannel
@@ -274,4 +274,75 @@ inherited DataModuleArticulos: TDataModuleArticulos
Left = 400
Top = 32
end
+ object tbl_Articulos_Proveedores: TDAMemDataTable
+ RemoteUpdatesOptions = []
+ Fields = <
+ item
+ Name = 'ID'
+ DataType = datAutoInc
+ GeneratorName = 'GEN_ARTICULOS_PROVEEDORES_ID'
+ Required = True
+ ServerAutoRefresh = True
+ InPrimaryKey = True
+ end
+ item
+ Name = 'ID_ARTICULO'
+ DataType = datInteger
+ end
+ item
+ Name = 'ID_PROVEEDOR'
+ DataType = datInteger
+ end
+ item
+ Name = 'REFERENCIA_PROV'
+ DataType = datString
+ Size = 255
+ end
+ item
+ Name = 'PRECIO_COSTE'
+ DataType = datCurrency
+ end
+ item
+ Name = 'DESCUENTO'
+ DataType = datFloat
+ end
+ item
+ Name = 'PRECIO_NETO'
+ DataType = datCurrency
+ end
+ item
+ Name = 'PRECIO_PORTE'
+ DataType = datCurrency
+ end
+ item
+ Name = 'PRECIO_PVP_VENTA'
+ DataType = datCurrency
+ end
+ item
+ Name = 'PRECIO_PVP_TOTAL'
+ DataType = datCurrency
+ end
+ item
+ Name = 'FECHA_ACTUALIZACION'
+ DataType = datDateTime
+ end>
+ Params = <>
+ MasterMappingMode = mmWhere
+ StreamingOptions = [soDisableEventsWhileStreaming]
+ RemoteDataAdapter = rda_Articulos
+ MasterSource = ds_Articulos
+ MasterFields = 'ID'
+ DetailFields = 'ID_ARTICULO'
+ DetailOptions = [dtCascadeOpenClose, dtCascadeApplyUpdates, dtAutoFetch]
+ LogicalName = 'Articulos_Proveedores'
+ IndexDefs = <>
+ Left = 232
+ Top = 240
+ end
+ object ds_Articulos_Proveedores: TDADataSource
+ DataSet = tbl_Articulos_Proveedores.Dataset
+ DataTable = tbl_Articulos_Proveedores
+ Left = 232
+ Top = 176
+ end
end
diff --git a/Source/Modulos/Articulos/Data/uDataModuleArticulos.pas b/Source/Modulos/Articulos/Data/uDataModuleArticulos.pas
index b7ac930..bfcad23 100644
--- a/Source/Modulos/Articulos/Data/uDataModuleArticulos.pas
+++ b/Source/Modulos/Articulos/Data/uDataModuleArticulos.pas
@@ -8,7 +8,8 @@ uses
uRORemoteService, uROClient, uROBinMessage,
uDADesigntimeCall,
uIDataModuleArticulos, uBizArticulos, uDataModuleBase, uDARemoteDataAdapter,
- uDADataStreamer, uDABin2DataStreamer, uDAInterfaces, uDAMemDataTable;
+ uDADataStreamer, uDABin2DataStreamer, uDAInterfaces, uDAMemDataTable,
+ uBizArticulosProveedores;
type
TDataModuleArticulos = class(TDataModuleBase, IDataModuleArticulos)
@@ -19,13 +20,17 @@ type
ds_Articulos: TDADataSource;
tbl_ArticulosParaCliente: TDAMemDataTable;
ds_ArticulosParaCliente: TDADataSource;
+ tbl_Articulos_Proveedores: TDAMemDataTable;
+ ds_Articulos_Proveedores: TDADataSource;
procedure DAClientDataModuleCreate(Sender: TObject);
+ private
+ function _GetProveedores : IBizArticulosProveedores;
protected
procedure AsignarClaseNegocio(AArticulo: TDADataTable); virtual;
public
- function GetItems : IBizArticulo; overload;
+ function GetItems (const Tipo: TEnumArticulos): IBizArticulo; overload;
function GetItems (IDCliente: Integer) : IBizArticulo; overload;
function GetItem(const ID : Integer; AClienteID: Integer = -1) : IBizArticulo;
function NewItem : IBizArticulo;
@@ -57,6 +62,24 @@ begin
Result := GetItem(ID_NULO)
end;
+function TDataModuleArticulos._GetProveedores: IBizArticulosProveedores;
+var
+ AProveedores : TDAMemDataTable;
+begin
+ ShowHourglassCursor;
+ try
+ AProveedores := CloneDataTable(tbl_Articulos_Proveedores);
+ with AProveedores do
+ begin
+ BusinessRulesID := BIZ_CLIENT_ARTICULOS_PROVEEDORES;
+ DetailOptions := DetailOptions - [dtDisableLogOfCascadeDeletes, dtDisableLogOfCascadeUpdates];
+ end;
+ Result := (AProveedores as IBizArticulosProveedores);
+ finally
+ HideHourglassCursor;
+ end;
+end;
+
function TDataModuleArticulos.GetItem(const ID: Integer; AClienteID: Integer = -1): IBizArticulo;
var
Condicion: TDAWhereExpression;
@@ -64,7 +87,7 @@ begin
ShowHourglassCursor;
try
if (AClienteID = -1) then
- Result := Self.GetItems
+ Result := Self.GetItems(txArticulo)
else
Result := Self.GetItems(AClienteID);
@@ -104,21 +127,31 @@ begin
end;
-function TDataModuleArticulos.GetItems: IBizArticulo;
+function TDataModuleArticulos.GetItems (const Tipo: TEnumArticulos): IBizArticulo;
var
AArticulo : TDAMemDataTable;
begin
ShowHourglassCursor;
try
- AArticulo := CloneDataTable(tbl_Articulos);
+ case Tipo of
+ txArticulo: AArticulo := CloneDataTable(tbl_Articulos);
+// txProveedor: AArticulo := CloneDataTable(tbl_ArticulosParaCompra); En el caso de tener varios proveedores para un mismo artículo
+ txProveedor: AArticulo := CloneDataTable(tbl_Articulos);
+ end;
AsignarClaseNegocio(AArticulo);
+ case Tipo of
+ txArticulo: TBizArticulo(AArticulo.BusinessEventsObj).Proveedores := _GetProveedores;
+ end;
+
Result := (AArticulo as IBizArticulo);
finally
HideHourglassCursor;
end;
+
+
end;
diff --git a/Source/Modulos/Articulos/Model/Articulos_model.dpk b/Source/Modulos/Articulos/Model/Articulos_model.dpk
index d01960c..0041dd5 100644
Binary files a/Source/Modulos/Articulos/Model/Articulos_model.dpk and b/Source/Modulos/Articulos/Model/Articulos_model.dpk differ
diff --git a/Source/Modulos/Articulos/Model/Articulos_model.dproj b/Source/Modulos/Articulos/Model/Articulos_model.dproj
index a28e679..5616aac 100644
--- a/Source/Modulos/Articulos/Model/Articulos_model.dproj
+++ b/Source/Modulos/Articulos/Model/Articulos_model.dproj
@@ -1,4 +1,5 @@
-
+
+
{e4f81792-84cf-4900-a6ab-18f6dd2c7ada}
Articulos_model.dpk
@@ -54,12 +55,21 @@
MainSource
+
+
+
+
+
+
+
+
+