Subida final de facturas proforma

git-svn-id: https://192.168.0.254/svn/Proyectos.LuisLeon_FactuGES2/trunk@201 b2cfbe5a-eba1-4a0c-8b32-7feea0a119f2
This commit is contained in:
roberto 2013-12-12 17:42:50 +00:00
parent 46b4c141ca
commit 1d0daa7f84
82 changed files with 4701 additions and 4499 deletions

Binary file not shown.

View File

@ -1,6 +1,6 @@
<project ServerProjectName="">
<watches/>
<collapsedNodes>{0F75D8EA-B6C2-4ECA-9E1E-45E235135301},{10527A84-0FB7-4007-9B23-9E5826133948},{154CD4CE-0F61-40F6-8CE6-CF525D3CFDCA},{331AC851-CE2F-4986-9381-A257AB26B1AD},{3F8BEF26-5F4F-4B97-B1BC-118F36CBDD68},{4968AB21-B759-4F4A-9214-8792F67DA1E2},{4B038673-47F7-4436-BD07-D557FA62337E},{68D393D0-7234-4D5A-9D3A-A3FDC1593E55},{6C425F09-E04B-49EC-89E2-8C93D60E9055},{7251A871-CE6C-41D1-A404-735619825EAE},{789902B1-5E64-4FD9-80BF-6113B13BFE12},{856B4CEA-BF27-4696-8FFC-4507B6E29943},{A181C54F-9BE8-4404-9AB9-FEE8A9C3443D},{AD23CE23-8728-48FA-84FD-264E27BA8F46},{B70F0EA3-7874-42B0-BFB8-430D43AC2D61},{C662116C-EB3F-4161-A768-49D13B08EFE5},{CE990EA4-7660-4997-8CBF-6C6AA978753A},{E8E8671F-894B-4049-B4A6-905B57207637},{F2541E28-3C45-4A17-BEC5-185CBF9D2A90}</collapsedNodes>
<collapsedNodes>{0F75D8EA-B6C2-4ECA-9E1E-45E235135301},{10527A84-0FB7-4007-9B23-9E5826133948},{154CD4CE-0F61-40F6-8CE6-CF525D3CFDCA},{331AC851-CE2F-4986-9381-A257AB26B1AD},{3F8BEF26-5F4F-4B97-B1BC-118F36CBDD68},{4968AB21-B759-4F4A-9214-8792F67DA1E2},{4B038673-47F7-4436-BD07-D557FA62337E},{6C425F09-E04B-49EC-89E2-8C93D60E9055},{7251A871-CE6C-41D1-A404-735619825EAE},{789902B1-5E64-4FD9-80BF-6113B13BFE12},{856B4CEA-BF27-4696-8FFC-4507B6E29943},{A181C54F-9BE8-4404-9AB9-FEE8A9C3443D},{AD23CE23-8728-48FA-84FD-264E27BA8F46},{B70F0EA3-7874-42B0-BFB8-430D43AC2D61},{C662116C-EB3F-4161-A768-49D13B08EFE5},{CE990EA4-7660-4997-8CBF-6C6AA978753A},{E8E8671F-894B-4049-B4A6-905B57207637},{F2541E28-3C45-4A17-BEC5-185CBF9D2A90}</collapsedNodes>
<breakpoints></breakpoints>
<actions/>
<propertysets/>
@ -14,8 +14,8 @@
<Notes>
<![CDATA[]]>
</Notes>
<LastBuildRun>00:04:03</LastBuildRun>
<LastBuildStart>02/12/2013 13:45:23</LastBuildStart>
<LastBuildState>True</LastBuildState>
<LastBuildRun>00:00:13</LastBuildRun>
<LastBuildStart>12/12/2013 10:39:51</LastBuildStart>
<LastBuildState>False</LastBuildState>
</properties>
</project>

Binary file not shown.

View File

@ -45,8 +45,6 @@
<Borland.ProjectType>Package</Borland.ProjectType>
<BorlandProject>
<BorlandProject><Delphi.Personality><Parameters><Parameters Name="UseLauncher">False</Parameters><Parameters Name="LoadAllSymbols">True</Parameters><Parameters Name="LoadUnspecifiedSymbols">False</Parameters></Parameters><Package_Options><Package_Options Name="PackageDescription">Libreria base de FactuGES</Package_Options><Package_Options Name="ImplicitBuild">False</Package_Options><Package_Options Name="DesigntimeOnly">False</Package_Options><Package_Options Name="RuntimeOnly">False</Package_Options></Package_Options><VersionInfo><VersionInfo Name="IncludeVerInfo">True</VersionInfo><VersionInfo Name="AutoIncBuild">False</VersionInfo><VersionInfo Name="MajorVer">1</VersionInfo><VersionInfo Name="MinorVer">0</VersionInfo><VersionInfo Name="Release">0</VersionInfo><VersionInfo Name="Build">0</VersionInfo><VersionInfo Name="Debug">False</VersionInfo><VersionInfo Name="PreRelease">False</VersionInfo><VersionInfo Name="Special">False</VersionInfo><VersionInfo Name="Private">False</VersionInfo><VersionInfo Name="DLL">False</VersionInfo><VersionInfo Name="Locale">3082</VersionInfo><VersionInfo Name="CodePage">1252</VersionInfo></VersionInfo><VersionInfoKeys><VersionInfoKeys Name="CompanyName"></VersionInfoKeys><VersionInfoKeys Name="FileDescription"></VersionInfoKeys><VersionInfoKeys Name="FileVersion">1.0.0.0</VersionInfoKeys><VersionInfoKeys Name="InternalName"></VersionInfoKeys><VersionInfoKeys Name="LegalCopyright"></VersionInfoKeys><VersionInfoKeys Name="LegalTrademarks"></VersionInfoKeys><VersionInfoKeys Name="OriginalFilename"></VersionInfoKeys><VersionInfoKeys Name="ProductName"></VersionInfoKeys><VersionInfoKeys Name="ProductVersion">1.0.0.0</VersionInfoKeys></VersionInfoKeys><Excluded_Packages>
<Excluded_Packages Name="$(BDS)\bin\dcloffice2k100.bpl">Microsoft Office 2000 Sample Automation Server Wrapper Components</Excluded_Packages>
<Excluded_Packages Name="$(BDS)\bin\dclofficexp100.bpl">Microsoft Office XP Sample Automation Server Wrapper Components</Excluded_Packages>
</Excluded_Packages><Source><Source Name="MainSource">Base.dpk</Source></Source></Delphi.Personality></BorlandProject></BorlandProject>
@ -56,58 +54,6 @@
<DelphiCompile Include="Base.dpk">
<MainSource>MainSource</MainSource>
</DelphiCompile>
<DCCReference Include="..\Modulos\Contactos\Views\adortl.dcp" />
<DCCReference Include="..\Modulos\Contactos\Views\cxDataD11.dcp" />
<DCCReference Include="..\Modulos\Contactos\Views\cxEditorsD11.dcp" />
<DCCReference Include="..\Modulos\Contactos\Views\cxExportD11.dcp" />
<DCCReference Include="..\Modulos\Contactos\Views\cxExtEditorsD11.dcp" />
<DCCReference Include="..\Modulos\Contactos\Views\cxGridD11.dcp" />
<DCCReference Include="..\Modulos\Contactos\Views\cxIntl6D11.dcp" />
<DCCReference Include="..\Modulos\Contactos\Views\cxIntlPrintSys3D11.dcp" />
<DCCReference Include="..\Modulos\Contactos\Views\cxLibraryD11.dcp" />
<DCCReference Include="..\Modulos\Contactos\Views\cxPageControlD11.dcp" />
<DCCReference Include="..\Modulos\Contactos\Views\DataAbstract_Core_D11.dcp" />
<DCCReference Include="..\Modulos\Contactos\Views\dbrtl.dcp" />
<DCCReference Include="..\Modulos\Contactos\Views\dclIndyCore.dcp" />
<DCCReference Include="..\Modulos\Contactos\Views\designide.dcp" />
<DCCReference Include="..\Modulos\Contactos\Views\dsnap.dcp" />
<DCCReference Include="..\Modulos\Contactos\Views\dxCoreD11.dcp" />
<DCCReference Include="..\Modulos\Contactos\Views\dxGDIPlusD11.dcp" />
<DCCReference Include="..\Modulos\Contactos\Views\dxPSCoreD11.dcp" />
<DCCReference Include="..\Modulos\Contactos\Views\dxThemeD11.dcp" />
<DCCReference Include="..\Modulos\Contactos\Views\GUISDK_D11R.dcp" />
<DCCReference Include="..\Modulos\Contactos\Views\IndyCore.dcp" />
<DCCReference Include="..\Modulos\Contactos\Views\IndyProtocols.dcp" />
<DCCReference Include="..\Modulos\Contactos\Views\IndySystem.dcp" />
<DCCReference Include="..\Modulos\Contactos\Views\Jcl.dcp" />
<DCCReference Include="..\Modulos\Contactos\Views\JclVcl.dcp" />
<DCCReference Include="..\Modulos\Contactos\Views\JSDialog100.dcp" />
<DCCReference Include="..\Modulos\Contactos\Views\JvCmpD11R.dcp" />
<DCCReference Include="..\Modulos\Contactos\Views\JvCoreD11R.dcp" />
<DCCReference Include="..\Modulos\Contactos\Views\JvCtrlsD11R.dcp" />
<DCCReference Include="..\Modulos\Contactos\Views\JvDlgsD11R.dcp" />
<DCCReference Include="..\Modulos\Contactos\Views\JvMMD11R.dcp" />
<DCCReference Include="..\Modulos\Contactos\Views\JvNetD11R.dcp" />
<DCCReference Include="..\Modulos\Contactos\Views\JvPageCompsD11R.dcp" />
<DCCReference Include="..\Modulos\Contactos\Views\JvStdCtrlsD11R.dcp" />
<DCCReference Include="..\Modulos\Contactos\Views\JvSystemD11R.dcp" />
<DCCReference Include="..\Modulos\Contactos\Views\pckMD5.dcp" />
<DCCReference Include="..\Modulos\Contactos\Views\pckUCDataConnector.dcp" />
<DCCReference Include="..\Modulos\Contactos\Views\pckUserControl_RT.dcp" />
<DCCReference Include="..\Modulos\Contactos\Views\PngComponentsD10.dcp" />
<DCCReference Include="..\Modulos\Contactos\Views\PNG_D10.dcp" />
<DCCReference Include="..\Modulos\Contactos\Views\RemObjects_Core_D11.dcp" />
<DCCReference Include="..\Modulos\Contactos\Views\RemObjects_Indy_D11.dcp" />
<DCCReference Include="..\Modulos\Contactos\Views\rtl.dcp" />
<DCCReference Include="..\Modulos\Contactos\Views\TB2k_D10.dcp" />
<DCCReference Include="..\Modulos\Contactos\Views\tbx_d10.dcp" />
<DCCReference Include="..\Modulos\Contactos\Views\vcl.dcp" />
<DCCReference Include="..\Modulos\Contactos\Views\vclactnband.dcp" />
<DCCReference Include="..\Modulos\Contactos\Views\vcldb.dcp" />
<DCCReference Include="..\Modulos\Contactos\Views\vcljpg.dcp" />
<DCCReference Include="..\Modulos\Contactos\Views\VclSmp.dcp" />
<DCCReference Include="..\Modulos\Contactos\Views\vclx.dcp" />
<DCCReference Include="..\Modulos\Contactos\Views\xmlrtl.dcp" />
<DCCReference Include="..\Modulos\Impresiones\Data\uDataModuleImpresiones.pas">
<Form>DataModuleImpresiones</Form>
<DesignClass>TDataModule</DesignClass>
@ -116,6 +62,58 @@
<Form>DataModuleRegistroCorreos</Form>
<DesignClass>TDataModule</DesignClass>
</DCCReference>
<DCCReference Include="..\Modulos\Relaciones\Pedidos de proveedor - Facturas de proveedor\adortl.dcp" />
<DCCReference Include="..\Modulos\Relaciones\Pedidos de proveedor - Facturas de proveedor\cxDataD11.dcp" />
<DCCReference Include="..\Modulos\Relaciones\Pedidos de proveedor - Facturas de proveedor\cxEditorsD11.dcp" />
<DCCReference Include="..\Modulos\Relaciones\Pedidos de proveedor - Facturas de proveedor\cxExportD11.dcp" />
<DCCReference Include="..\Modulos\Relaciones\Pedidos de proveedor - Facturas de proveedor\cxExtEditorsD11.dcp" />
<DCCReference Include="..\Modulos\Relaciones\Pedidos de proveedor - Facturas de proveedor\cxGridD11.dcp" />
<DCCReference Include="..\Modulos\Relaciones\Pedidos de proveedor - Facturas de proveedor\cxIntl6D11.dcp" />
<DCCReference Include="..\Modulos\Relaciones\Pedidos de proveedor - Facturas de proveedor\cxIntlPrintSys3D11.dcp" />
<DCCReference Include="..\Modulos\Relaciones\Pedidos de proveedor - Facturas de proveedor\cxLibraryD11.dcp" />
<DCCReference Include="..\Modulos\Relaciones\Pedidos de proveedor - Facturas de proveedor\cxPageControlD11.dcp" />
<DCCReference Include="..\Modulos\Relaciones\Pedidos de proveedor - Facturas de proveedor\DataAbstract_Core_D11.dcp" />
<DCCReference Include="..\Modulos\Relaciones\Pedidos de proveedor - Facturas de proveedor\dbrtl.dcp" />
<DCCReference Include="..\Modulos\Relaciones\Pedidos de proveedor - Facturas de proveedor\dclIndyCore.dcp" />
<DCCReference Include="..\Modulos\Relaciones\Pedidos de proveedor - Facturas de proveedor\designide.dcp" />
<DCCReference Include="..\Modulos\Relaciones\Pedidos de proveedor - Facturas de proveedor\dsnap.dcp" />
<DCCReference Include="..\Modulos\Relaciones\Pedidos de proveedor - Facturas de proveedor\dxCoreD11.dcp" />
<DCCReference Include="..\Modulos\Relaciones\Pedidos de proveedor - Facturas de proveedor\dxGDIPlusD11.dcp" />
<DCCReference Include="..\Modulos\Relaciones\Pedidos de proveedor - Facturas de proveedor\dxPSCoreD11.dcp" />
<DCCReference Include="..\Modulos\Relaciones\Pedidos de proveedor - Facturas de proveedor\dxThemeD11.dcp" />
<DCCReference Include="..\Modulos\Relaciones\Pedidos de proveedor - Facturas de proveedor\GUISDK_D11R.dcp" />
<DCCReference Include="..\Modulos\Relaciones\Pedidos de proveedor - Facturas de proveedor\IndyCore.dcp" />
<DCCReference Include="..\Modulos\Relaciones\Pedidos de proveedor - Facturas de proveedor\IndyProtocols.dcp" />
<DCCReference Include="..\Modulos\Relaciones\Pedidos de proveedor - Facturas de proveedor\IndySystem.dcp" />
<DCCReference Include="..\Modulos\Relaciones\Pedidos de proveedor - Facturas de proveedor\Jcl.dcp" />
<DCCReference Include="..\Modulos\Relaciones\Pedidos de proveedor - Facturas de proveedor\JclVcl.dcp" />
<DCCReference Include="..\Modulos\Relaciones\Pedidos de proveedor - Facturas de proveedor\JSDialog100.dcp" />
<DCCReference Include="..\Modulos\Relaciones\Pedidos de proveedor - Facturas de proveedor\JvCmpD11R.dcp" />
<DCCReference Include="..\Modulos\Relaciones\Pedidos de proveedor - Facturas de proveedor\JvCoreD11R.dcp" />
<DCCReference Include="..\Modulos\Relaciones\Pedidos de proveedor - Facturas de proveedor\JvCtrlsD11R.dcp" />
<DCCReference Include="..\Modulos\Relaciones\Pedidos de proveedor - Facturas de proveedor\JvDlgsD11R.dcp" />
<DCCReference Include="..\Modulos\Relaciones\Pedidos de proveedor - Facturas de proveedor\JvMMD11R.dcp" />
<DCCReference Include="..\Modulos\Relaciones\Pedidos de proveedor - Facturas de proveedor\JvNetD11R.dcp" />
<DCCReference Include="..\Modulos\Relaciones\Pedidos de proveedor - Facturas de proveedor\JvPageCompsD11R.dcp" />
<DCCReference Include="..\Modulos\Relaciones\Pedidos de proveedor - Facturas de proveedor\JvStdCtrlsD11R.dcp" />
<DCCReference Include="..\Modulos\Relaciones\Pedidos de proveedor - Facturas de proveedor\JvSystemD11R.dcp" />
<DCCReference Include="..\Modulos\Relaciones\Pedidos de proveedor - Facturas de proveedor\pckMD5.dcp" />
<DCCReference Include="..\Modulos\Relaciones\Pedidos de proveedor - Facturas de proveedor\pckUCDataConnector.dcp" />
<DCCReference Include="..\Modulos\Relaciones\Pedidos de proveedor - Facturas de proveedor\pckUserControl_RT.dcp" />
<DCCReference Include="..\Modulos\Relaciones\Pedidos de proveedor - Facturas de proveedor\PngComponentsD10.dcp" />
<DCCReference Include="..\Modulos\Relaciones\Pedidos de proveedor - Facturas de proveedor\PNG_D10.dcp" />
<DCCReference Include="..\Modulos\Relaciones\Pedidos de proveedor - Facturas de proveedor\RemObjects_Core_D11.dcp" />
<DCCReference Include="..\Modulos\Relaciones\Pedidos de proveedor - Facturas de proveedor\RemObjects_Indy_D11.dcp" />
<DCCReference Include="..\Modulos\Relaciones\Pedidos de proveedor - Facturas de proveedor\rtl.dcp" />
<DCCReference Include="..\Modulos\Relaciones\Pedidos de proveedor - Facturas de proveedor\TB2k_D10.dcp" />
<DCCReference Include="..\Modulos\Relaciones\Pedidos de proveedor - Facturas de proveedor\tbx_d10.dcp" />
<DCCReference Include="..\Modulos\Relaciones\Pedidos de proveedor - Facturas de proveedor\vcl.dcp" />
<DCCReference Include="..\Modulos\Relaciones\Pedidos de proveedor - Facturas de proveedor\vclactnband.dcp" />
<DCCReference Include="..\Modulos\Relaciones\Pedidos de proveedor - Facturas de proveedor\vcldb.dcp" />
<DCCReference Include="..\Modulos\Relaciones\Pedidos de proveedor - Facturas de proveedor\vcljpg.dcp" />
<DCCReference Include="..\Modulos\Relaciones\Pedidos de proveedor - Facturas de proveedor\VclSmp.dcp" />
<DCCReference Include="..\Modulos\Relaciones\Pedidos de proveedor - Facturas de proveedor\vclx.dcp" />
<DCCReference Include="..\Modulos\Relaciones\Pedidos de proveedor - Facturas de proveedor\xmlrtl.dcp" />
<DCCReference Include="..\Servicios\FactuGES_Intf.pas" />
<DCCReference Include="Conexion\uConfigurarConexion.pas">
<Form>fConfigurarConexion</Form>

View File

@ -39,7 +39,7 @@ begin
LoadModule('RecibosCliente_plugin.bpl');
LoadModule(MODULENAME_FACTURAS_CLIENTE);
// LoadModule(MODULENAME_FACTURAS_PROFORMA);
LoadModule(MODULENAME_FACTURAS_PROFORMA);
LoadModule(MODULENAME_PEDIDOS_PROVEEDOR);
LoadModule(MODULENAME_ALBARANES_PROVEEDOR);

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -249,22 +249,32 @@ inherited DataModuleFacturasProforma: TDataModuleFacturasProforma
DisplayLabel = 'FacturasProforma_DATOS_BANCARIOS'
DictionaryEntry = 'FacturasProforma_DATOS_BANCARIOS'
end
item
Name = 'REFERENCIA_CLIENTE'
DataType = datString
Size = 255
end
item
Name = 'ID_PEDIDO'
DataType = datInteger
DisplayLabel = 'FacturasProforma_ID_PEDIDO'
DictionaryEntry = 'FacturasProforma_ID_PEDIDO'
end
item
Name = 'REFERENCIA_PEDIDO_CLIENTE'
DataType = datString
Size = 255
end
item
Name = 'REFERENCIA_DEL_CLIENTE'
DataType = datString
Size = 255
end
item
Name = 'ID_FACTURA_FINAL'
DataType = datInteger
DisplayLabel = 'FacturasProforma_ID_FACTURA_FINAL'
DictionaryEntry = 'FacturasProforma_ID_FACTURA_FINAL'
end
item
Name = 'REFERENCIA_FACTURA_FINAL'
DataType = datString
Size = 255
end>
Params = <>
StreamingOptions = [soDisableEventsWhileStreaming]

View File

@ -57,29 +57,25 @@ function TDataModuleFacturasProforma.GetRptFacturas(const AListaID: TIntegerList
var
AParam : TIntegerArray;
begin
{
AParam := AListaID.ToIntegerArray;
try
Result := (RORemoteService as IsrvFacturasCliente).GenerarInforme(AParam, VerSello, VerCopia);
Result := (RORemoteService as IsrvFacturasProforma).GenerarInforme(AParam);
finally
FreeANDNIL(AParam);
end;
}
end;
function TDataModuleFacturasProforma.GetRptPDFFactura(const AID: Integer): Binary;
var
AParam : TIntegerArray;
begin
{
AParam := TIntegerArray.Create;
try
AParam.Add(AID);
Result := (RORemoteService as IsrvFacturasCliente).GenerarInformeEnPDF(AParam, VerSello);
Result := (RORemoteService as IsrvFacturasProforma).GenerarInformeEnPDF(AParam);
finally
FreeANDNIL(AParam);
end;
}
end;
function TDataModuleFacturasProforma.NewItem: IBizFacturaProforma;

View File

@ -17,6 +17,9 @@
<Projects Include="..\Contactos\Data\Contactos_data.dproj" />
<Projects Include="..\Contactos\Model\Contactos_model.dproj" />
<Projects Include="..\Contactos\Views\Contactos_view.dproj" />
<Projects Include="..\Facturas de cliente\Controller\FacturasCliente_controller.dproj" />
<Projects Include="..\Pedidos de cliente\Views\PedidosCliente_view.dproj" />
<Projects Include="..\Relaciones\Facturas proforma - Facturas de cliente\FacProforma_FacCli_relation.dproj" />
<Projects Include="Controller\FacturasProforma_controller.dproj" />
<Projects Include="Data\FacturasProforma_data.dproj" />
<Projects Include="Model\FacturasProforma_model.dproj" />
@ -155,6 +158,15 @@
<Target Name="FacturasProforma_controller:Make">
<MSBuild Projects="Controller\FacturasProforma_controller.dproj" Targets="Make" />
</Target>
<Target Name="FacProforma_FacCli_relation">
<MSBuild Projects="..\Relaciones\Facturas proforma - Facturas de cliente\FacProforma_FacCli_relation.dproj" Targets="" />
</Target>
<Target Name="FacProforma_FacCli_relation:Clean">
<MSBuild Projects="..\Relaciones\Facturas proforma - Facturas de cliente\FacProforma_FacCli_relation.dproj" Targets="Clean" />
</Target>
<Target Name="FacProforma_FacCli_relation:Make">
<MSBuild Projects="..\Relaciones\Facturas proforma - Facturas de cliente\FacProforma_FacCli_relation.dproj" Targets="Make" />
</Target>
<Target Name="FacturasProforma_view">
<MSBuild Projects="Views\FacturasProforma_view.dproj" Targets="" />
</Target>
@ -191,14 +203,32 @@
<Target Name="FactuGES_Server:Make">
<MSBuild Projects="..\..\Servidor\FactuGES_Server.dproj" Targets="Make" />
</Target>
<Target Name="FacturasCliente_controller">
<MSBuild Projects="..\Facturas de cliente\Controller\FacturasCliente_controller.dproj" Targets="" />
</Target>
<Target Name="FacturasCliente_controller:Clean">
<MSBuild Projects="..\Facturas de cliente\Controller\FacturasCliente_controller.dproj" Targets="Clean" />
</Target>
<Target Name="FacturasCliente_controller:Make">
<MSBuild Projects="..\Facturas de cliente\Controller\FacturasCliente_controller.dproj" Targets="Make" />
</Target>
<Target Name="PedidosCliente_view">
<MSBuild Projects="..\Pedidos de cliente\Views\PedidosCliente_view.dproj" Targets="" />
</Target>
<Target Name="PedidosCliente_view:Clean">
<MSBuild Projects="..\Pedidos de cliente\Views\PedidosCliente_view.dproj" Targets="Clean" />
</Target>
<Target Name="PedidosCliente_view:Make">
<MSBuild Projects="..\Pedidos de cliente\Views\PedidosCliente_view.dproj" Targets="Make" />
</Target>
<Target Name="Build">
<CallTarget Targets="Base;GUIBase;ApplicationBase;Contactos_model;Contactos_data;Contactos_controller;Contactos_view;Articulos_model;Articulos_data;Articulos_controller;Articulos_view;FacturasProforma_model;FacturasProforma_data;FacturasProforma_controller;FacturasProforma_view;FacturasProforma_plugin;FactuGES;FactuGES_Server" />
<CallTarget Targets="Base;GUIBase;ApplicationBase;Contactos_model;Contactos_data;Contactos_controller;Contactos_view;Articulos_model;Articulos_data;Articulos_controller;Articulos_view;FacturasProforma_model;FacturasProforma_data;FacturasProforma_controller;FacProforma_FacCli_relation;FacturasProforma_view;FacturasProforma_plugin;FactuGES;FactuGES_Server;FacturasCliente_controller;PedidosCliente_view" />
</Target>
<Target Name="Clean">
<CallTarget Targets="Base:Clean;GUIBase:Clean;ApplicationBase:Clean;Contactos_model:Clean;Contactos_data:Clean;Contactos_controller:Clean;Contactos_view:Clean;Articulos_model:Clean;Articulos_data:Clean;Articulos_controller:Clean;Articulos_view:Clean;FacturasProforma_model:Clean;FacturasProforma_data:Clean;FacturasProforma_controller:Clean;FacturasProforma_view:Clean;FacturasProforma_plugin:Clean;FactuGES:Clean;FactuGES_Server:Clean" />
<CallTarget Targets="Base:Clean;GUIBase:Clean;ApplicationBase:Clean;Contactos_model:Clean;Contactos_data:Clean;Contactos_controller:Clean;Contactos_view:Clean;Articulos_model:Clean;Articulos_data:Clean;Articulos_controller:Clean;Articulos_view:Clean;FacturasProforma_model:Clean;FacturasProforma_data:Clean;FacturasProforma_controller:Clean;FacProforma_FacCli_relation:Clean;FacturasProforma_view:Clean;FacturasProforma_plugin:Clean;FactuGES:Clean;FactuGES_Server:Clean;FacturasCliente_controller:Clean;PedidosCliente_view:Clean" />
</Target>
<Target Name="Make">
<CallTarget Targets="Base:Make;GUIBase:Make;ApplicationBase:Make;Contactos_model:Make;Contactos_data:Make;Contactos_controller:Make;Contactos_view:Make;Articulos_model:Make;Articulos_data:Make;Articulos_controller:Make;Articulos_view:Make;FacturasProforma_model:Make;FacturasProforma_data:Make;FacturasProforma_controller:Make;FacturasProforma_view:Make;FacturasProforma_plugin:Make;FactuGES:Make;FactuGES_Server:Make" />
<CallTarget Targets="Base:Make;GUIBase:Make;ApplicationBase:Make;Contactos_model:Make;Contactos_data:Make;Contactos_controller:Make;Contactos_view:Make;Articulos_model:Make;Articulos_data:Make;Articulos_controller:Make;Articulos_view:Make;FacturasProforma_model:Make;FacturasProforma_data:Make;FacturasProforma_controller:Make;FacProforma_FacCli_relation:Make;FacturasProforma_view:Make;FacturasProforma_plugin:Make;FactuGES:Make;FactuGES_Server:Make;FacturasCliente_controller:Make;PedidosCliente_view:Make" />
</Target>
<Import Condition="Exists('$(MSBuildBinPath)\Borland.Group.Targets')" Project="$(MSBuildBinPath)\Borland.Group.Targets" />
</Project>

View File

@ -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_ListaAnosFacturas = '{FEEF09C4-67C8-4306-BC5D-E9B624ED4218}';
RID_FacturasProforma = '{E96B0663-EB3C-45D1-8A6E-3A0178CC014A}';
RID_FacturasProforma_Detalles = '{318BEE60-3B5B-4A8C-9A41-DFD51E23B35C}';
RID_ListaAnosFacturas = '{6ABA008D-4E27-4110-A22A-B4BDFF577548}';
RID_FacturasProforma = '{2F1B80A0-CF55-49A8-8B2B-9801332B05EC}';
RID_FacturasProforma_Detalles = '{23C2166C-8FBB-4EEC-A206-FEB0089D74DC}';
{ Data table names }
nme_ListaAnosFacturas = 'ListaAnosFacturas';
@ -60,9 +60,11 @@ const
fld_FacturasProformaNUM_COPIAS = 'NUM_COPIAS';
fld_FacturasProformaNUM_CORREOS = 'NUM_CORREOS';
fld_FacturasProformaDATOS_BANCARIOS = 'DATOS_BANCARIOS';
fld_FacturasProformaREFERENCIA_CLIENTE = 'REFERENCIA_CLIENTE';
fld_FacturasProformaID_PEDIDO = 'ID_PEDIDO';
fld_FacturasProformaREFERENCIA_PEDIDO_CLIENTE = 'REFERENCIA_PEDIDO_CLIENTE';
fld_FacturasProformaREFERENCIA_DEL_CLIENTE = 'REFERENCIA_DEL_CLIENTE';
fld_FacturasProformaID_FACTURA_FINAL = 'ID_FACTURA_FINAL';
fld_FacturasProformaREFERENCIA_FACTURA_FINAL = 'REFERENCIA_FACTURA_FINAL';
{ FacturasProforma field indexes }
idx_FacturasProformaID = 0;
@ -100,9 +102,11 @@ const
idx_FacturasProformaNUM_COPIAS = 32;
idx_FacturasProformaNUM_CORREOS = 33;
idx_FacturasProformaDATOS_BANCARIOS = 34;
idx_FacturasProformaREFERENCIA_CLIENTE = 35;
idx_FacturasProformaID_PEDIDO = 36;
idx_FacturasProformaID_FACTURA_FINAL = 37;
idx_FacturasProformaID_PEDIDO = 35;
idx_FacturasProformaREFERENCIA_PEDIDO_CLIENTE = 36;
idx_FacturasProformaREFERENCIA_DEL_CLIENTE = 37;
idx_FacturasProformaID_FACTURA_FINAL = 38;
idx_FacturasProformaREFERENCIA_FACTURA_FINAL = 39;
{ FacturasProforma_Detalles fields }
fld_FacturasProforma_DetallesID = 'ID';
@ -141,7 +145,7 @@ const
type
{ IListaAnosFacturas }
IListaAnosFacturas = interface(IDAStronglyTypedDataTable)
['{CBCFE754-67D7-40A8-B21A-4450E8EC413F}']
['{5D8535C3-D8CF-446F-B6DF-02127DD9F379}']
{ Property getters and setters }
function GetANOValue: String;
procedure SetANOValue(const aValue: String);
@ -176,7 +180,7 @@ type
{ IFacturasProforma }
IFacturasProforma = interface(IDAStronglyTypedDataTable)
['{F8DFF550-5A11-49CC-976D-93AEECB72322}']
['{77B940CF-32F0-43A2-A22E-A3611F90EE9C}']
{ Property getters and setters }
function GetIDValue: Integer;
procedure SetIDValue(const aValue: Integer);
@ -317,18 +321,26 @@ type
procedure SetDATOS_BANCARIOSValue(const aValue: String);
function GetDATOS_BANCARIOSIsNull: Boolean;
procedure SetDATOS_BANCARIOSIsNull(const aValue: Boolean);
function GetREFERENCIA_CLIENTEValue: String;
procedure SetREFERENCIA_CLIENTEValue(const aValue: String);
function GetREFERENCIA_CLIENTEIsNull: Boolean;
procedure SetREFERENCIA_CLIENTEIsNull(const aValue: Boolean);
function GetID_PEDIDOValue: Integer;
procedure SetID_PEDIDOValue(const aValue: Integer);
function GetID_PEDIDOIsNull: Boolean;
procedure SetID_PEDIDOIsNull(const aValue: Boolean);
function GetREFERENCIA_PEDIDO_CLIENTEValue: String;
procedure SetREFERENCIA_PEDIDO_CLIENTEValue(const aValue: String);
function GetREFERENCIA_PEDIDO_CLIENTEIsNull: Boolean;
procedure SetREFERENCIA_PEDIDO_CLIENTEIsNull(const aValue: Boolean);
function GetREFERENCIA_DEL_CLIENTEValue: String;
procedure SetREFERENCIA_DEL_CLIENTEValue(const aValue: String);
function GetREFERENCIA_DEL_CLIENTEIsNull: Boolean;
procedure SetREFERENCIA_DEL_CLIENTEIsNull(const aValue: Boolean);
function GetID_FACTURA_FINALValue: Integer;
procedure SetID_FACTURA_FINALValue(const aValue: Integer);
function GetID_FACTURA_FINALIsNull: Boolean;
procedure SetID_FACTURA_FINALIsNull(const aValue: Boolean);
function GetREFERENCIA_FACTURA_FINALValue: String;
procedure SetREFERENCIA_FACTURA_FINALValue(const aValue: String);
function GetREFERENCIA_FACTURA_FINALIsNull: Boolean;
procedure SetREFERENCIA_FACTURA_FINALIsNull(const aValue: Boolean);
{ Properties }
@ -402,12 +414,16 @@ type
property NUM_CORREOSIsNull: Boolean read GetNUM_CORREOSIsNull write SetNUM_CORREOSIsNull;
property DATOS_BANCARIOS: String read GetDATOS_BANCARIOSValue write SetDATOS_BANCARIOSValue;
property DATOS_BANCARIOSIsNull: Boolean read GetDATOS_BANCARIOSIsNull write SetDATOS_BANCARIOSIsNull;
property REFERENCIA_CLIENTE: String read GetREFERENCIA_CLIENTEValue write SetREFERENCIA_CLIENTEValue;
property REFERENCIA_CLIENTEIsNull: Boolean read GetREFERENCIA_CLIENTEIsNull write SetREFERENCIA_CLIENTEIsNull;
property ID_PEDIDO: Integer read GetID_PEDIDOValue write SetID_PEDIDOValue;
property ID_PEDIDOIsNull: Boolean read GetID_PEDIDOIsNull write SetID_PEDIDOIsNull;
property REFERENCIA_PEDIDO_CLIENTE: String read GetREFERENCIA_PEDIDO_CLIENTEValue write SetREFERENCIA_PEDIDO_CLIENTEValue;
property REFERENCIA_PEDIDO_CLIENTEIsNull: Boolean read GetREFERENCIA_PEDIDO_CLIENTEIsNull write SetREFERENCIA_PEDIDO_CLIENTEIsNull;
property REFERENCIA_DEL_CLIENTE: String read GetREFERENCIA_DEL_CLIENTEValue write SetREFERENCIA_DEL_CLIENTEValue;
property REFERENCIA_DEL_CLIENTEIsNull: Boolean read GetREFERENCIA_DEL_CLIENTEIsNull write SetREFERENCIA_DEL_CLIENTEIsNull;
property ID_FACTURA_FINAL: Integer read GetID_FACTURA_FINALValue write SetID_FACTURA_FINALValue;
property ID_FACTURA_FINALIsNull: Boolean read GetID_FACTURA_FINALIsNull write SetID_FACTURA_FINALIsNull;
property REFERENCIA_FACTURA_FINAL: String read GetREFERENCIA_FACTURA_FINALValue write SetREFERENCIA_FACTURA_FINALValue;
property REFERENCIA_FACTURA_FINALIsNull: Boolean read GetREFERENCIA_FACTURA_FINALIsNull write SetREFERENCIA_FACTURA_FINALIsNull;
end;
{ TFacturasProformaDataTableRules }
@ -556,18 +572,26 @@ type
procedure SetDATOS_BANCARIOSValue(const aValue: String); virtual;
function GetDATOS_BANCARIOSIsNull: Boolean; virtual;
procedure SetDATOS_BANCARIOSIsNull(const aValue: Boolean); virtual;
function GetREFERENCIA_CLIENTEValue: String; virtual;
procedure SetREFERENCIA_CLIENTEValue(const aValue: String); virtual;
function GetREFERENCIA_CLIENTEIsNull: Boolean; virtual;
procedure SetREFERENCIA_CLIENTEIsNull(const aValue: Boolean); virtual;
function GetID_PEDIDOValue: Integer; virtual;
procedure SetID_PEDIDOValue(const aValue: Integer); virtual;
function GetID_PEDIDOIsNull: Boolean; virtual;
procedure SetID_PEDIDOIsNull(const aValue: Boolean); virtual;
function GetREFERENCIA_PEDIDO_CLIENTEValue: String; virtual;
procedure SetREFERENCIA_PEDIDO_CLIENTEValue(const aValue: String); virtual;
function GetREFERENCIA_PEDIDO_CLIENTEIsNull: Boolean; virtual;
procedure SetREFERENCIA_PEDIDO_CLIENTEIsNull(const aValue: Boolean); virtual;
function GetREFERENCIA_DEL_CLIENTEValue: String; virtual;
procedure SetREFERENCIA_DEL_CLIENTEValue(const aValue: String); virtual;
function GetREFERENCIA_DEL_CLIENTEIsNull: Boolean; virtual;
procedure SetREFERENCIA_DEL_CLIENTEIsNull(const aValue: Boolean); virtual;
function GetID_FACTURA_FINALValue: Integer; virtual;
procedure SetID_FACTURA_FINALValue(const aValue: Integer); virtual;
function GetID_FACTURA_FINALIsNull: Boolean; virtual;
procedure SetID_FACTURA_FINALIsNull(const aValue: Boolean); virtual;
function GetREFERENCIA_FACTURA_FINALValue: String; virtual;
procedure SetREFERENCIA_FACTURA_FINALValue(const aValue: String); virtual;
function GetREFERENCIA_FACTURA_FINALIsNull: Boolean; virtual;
procedure SetREFERENCIA_FACTURA_FINALIsNull(const aValue: Boolean); virtual;
{ Properties }
property ID: Integer read GetIDValue write SetIDValue;
@ -640,12 +664,16 @@ type
property NUM_CORREOSIsNull: Boolean read GetNUM_CORREOSIsNull write SetNUM_CORREOSIsNull;
property DATOS_BANCARIOS: String read GetDATOS_BANCARIOSValue write SetDATOS_BANCARIOSValue;
property DATOS_BANCARIOSIsNull: Boolean read GetDATOS_BANCARIOSIsNull write SetDATOS_BANCARIOSIsNull;
property REFERENCIA_CLIENTE: String read GetREFERENCIA_CLIENTEValue write SetREFERENCIA_CLIENTEValue;
property REFERENCIA_CLIENTEIsNull: Boolean read GetREFERENCIA_CLIENTEIsNull write SetREFERENCIA_CLIENTEIsNull;
property ID_PEDIDO: Integer read GetID_PEDIDOValue write SetID_PEDIDOValue;
property ID_PEDIDOIsNull: Boolean read GetID_PEDIDOIsNull write SetID_PEDIDOIsNull;
property REFERENCIA_PEDIDO_CLIENTE: String read GetREFERENCIA_PEDIDO_CLIENTEValue write SetREFERENCIA_PEDIDO_CLIENTEValue;
property REFERENCIA_PEDIDO_CLIENTEIsNull: Boolean read GetREFERENCIA_PEDIDO_CLIENTEIsNull write SetREFERENCIA_PEDIDO_CLIENTEIsNull;
property REFERENCIA_DEL_CLIENTE: String read GetREFERENCIA_DEL_CLIENTEValue write SetREFERENCIA_DEL_CLIENTEValue;
property REFERENCIA_DEL_CLIENTEIsNull: Boolean read GetREFERENCIA_DEL_CLIENTEIsNull write SetREFERENCIA_DEL_CLIENTEIsNull;
property ID_FACTURA_FINAL: Integer read GetID_FACTURA_FINALValue write SetID_FACTURA_FINALValue;
property ID_FACTURA_FINALIsNull: Boolean read GetID_FACTURA_FINALIsNull write SetID_FACTURA_FINALIsNull;
property REFERENCIA_FACTURA_FINAL: String read GetREFERENCIA_FACTURA_FINALValue write SetREFERENCIA_FACTURA_FINALValue;
property REFERENCIA_FACTURA_FINALIsNull: Boolean read GetREFERENCIA_FACTURA_FINALIsNull write SetREFERENCIA_FACTURA_FINALIsNull;
public
constructor Create(aDataTable: TDADataTable); override;
@ -655,7 +683,7 @@ type
{ IFacturasProforma_Detalles }
IFacturasProforma_Detalles = interface(IDAStronglyTypedDataTable)
['{B411FAE4-15F3-4FFB-B84A-6E0BFDF91CE9}']
['{3A9B54FE-6094-4A20-A8CC-C3E186530F62}']
{ Property getters and setters }
function GetIDValue: Integer;
procedure SetIDValue(const aValue: Integer);
@ -1646,27 +1674,6 @@ begin
DataTable.Fields[idx_FacturasProformaDATOS_BANCARIOS].AsVariant := Null;
end;
function TFacturasProformaDataTableRules.GetREFERENCIA_CLIENTEValue: String;
begin
result := DataTable.Fields[idx_FacturasProformaREFERENCIA_CLIENTE].AsString;
end;
procedure TFacturasProformaDataTableRules.SetREFERENCIA_CLIENTEValue(const aValue: String);
begin
DataTable.Fields[idx_FacturasProformaREFERENCIA_CLIENTE].AsString := aValue;
end;
function TFacturasProformaDataTableRules.GetREFERENCIA_CLIENTEIsNull: boolean;
begin
result := DataTable.Fields[idx_FacturasProformaREFERENCIA_CLIENTE].IsNull;
end;
procedure TFacturasProformaDataTableRules.SetREFERENCIA_CLIENTEIsNull(const aValue: Boolean);
begin
if aValue then
DataTable.Fields[idx_FacturasProformaREFERENCIA_CLIENTE].AsVariant := Null;
end;
function TFacturasProformaDataTableRules.GetID_PEDIDOValue: Integer;
begin
result := DataTable.Fields[idx_FacturasProformaID_PEDIDO].AsInteger;
@ -1688,6 +1695,48 @@ begin
DataTable.Fields[idx_FacturasProformaID_PEDIDO].AsVariant := Null;
end;
function TFacturasProformaDataTableRules.GetREFERENCIA_PEDIDO_CLIENTEValue: String;
begin
result := DataTable.Fields[idx_FacturasProformaREFERENCIA_PEDIDO_CLIENTE].AsString;
end;
procedure TFacturasProformaDataTableRules.SetREFERENCIA_PEDIDO_CLIENTEValue(const aValue: String);
begin
DataTable.Fields[idx_FacturasProformaREFERENCIA_PEDIDO_CLIENTE].AsString := aValue;
end;
function TFacturasProformaDataTableRules.GetREFERENCIA_PEDIDO_CLIENTEIsNull: boolean;
begin
result := DataTable.Fields[idx_FacturasProformaREFERENCIA_PEDIDO_CLIENTE].IsNull;
end;
procedure TFacturasProformaDataTableRules.SetREFERENCIA_PEDIDO_CLIENTEIsNull(const aValue: Boolean);
begin
if aValue then
DataTable.Fields[idx_FacturasProformaREFERENCIA_PEDIDO_CLIENTE].AsVariant := Null;
end;
function TFacturasProformaDataTableRules.GetREFERENCIA_DEL_CLIENTEValue: String;
begin
result := DataTable.Fields[idx_FacturasProformaREFERENCIA_DEL_CLIENTE].AsString;
end;
procedure TFacturasProformaDataTableRules.SetREFERENCIA_DEL_CLIENTEValue(const aValue: String);
begin
DataTable.Fields[idx_FacturasProformaREFERENCIA_DEL_CLIENTE].AsString := aValue;
end;
function TFacturasProformaDataTableRules.GetREFERENCIA_DEL_CLIENTEIsNull: boolean;
begin
result := DataTable.Fields[idx_FacturasProformaREFERENCIA_DEL_CLIENTE].IsNull;
end;
procedure TFacturasProformaDataTableRules.SetREFERENCIA_DEL_CLIENTEIsNull(const aValue: Boolean);
begin
if aValue then
DataTable.Fields[idx_FacturasProformaREFERENCIA_DEL_CLIENTE].AsVariant := Null;
end;
function TFacturasProformaDataTableRules.GetID_FACTURA_FINALValue: Integer;
begin
result := DataTable.Fields[idx_FacturasProformaID_FACTURA_FINAL].AsInteger;
@ -1709,6 +1758,27 @@ begin
DataTable.Fields[idx_FacturasProformaID_FACTURA_FINAL].AsVariant := Null;
end;
function TFacturasProformaDataTableRules.GetREFERENCIA_FACTURA_FINALValue: String;
begin
result := DataTable.Fields[idx_FacturasProformaREFERENCIA_FACTURA_FINAL].AsString;
end;
procedure TFacturasProformaDataTableRules.SetREFERENCIA_FACTURA_FINALValue(const aValue: String);
begin
DataTable.Fields[idx_FacturasProformaREFERENCIA_FACTURA_FINAL].AsString := aValue;
end;
function TFacturasProformaDataTableRules.GetREFERENCIA_FACTURA_FINALIsNull: boolean;
begin
result := DataTable.Fields[idx_FacturasProformaREFERENCIA_FACTURA_FINAL].IsNull;
end;
procedure TFacturasProformaDataTableRules.SetREFERENCIA_FACTURA_FINALIsNull(const aValue: Boolean);
begin
if aValue then
DataTable.Fields[idx_FacturasProformaREFERENCIA_FACTURA_FINAL].AsVariant := Null;
end;
{ TFacturasProforma_DetallesDataTableRules }
constructor TFacturasProforma_DetallesDataTableRules.Create(aDataTable: TDADataTable);

View File

@ -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_ListaAnosFacturasDelta = '{1E0FB8B9-0971-4C08-9852-81F821095795}';
RID_FacturasProformaDelta = '{8CCB35B8-FB46-40BB-8D1C-F22A11E81325}';
RID_FacturasProforma_DetallesDelta = '{9C6DD5EA-A831-40AF-AAF2-792029C0567D}';
RID_ListaAnosFacturasDelta = '{B56B2864-B139-4368-9643-757950948319}';
RID_FacturasProformaDelta = '{6517D416-A2B8-40EF-BE1A-056BBC8D08BE}';
RID_FacturasProforma_DetallesDelta = '{88B55B8E-BF8A-49C0-B26F-6BDDDFD872DD}';
type
{ IListaAnosFacturasDelta }
IListaAnosFacturasDelta = interface(IListaAnosFacturas)
['{1E0FB8B9-0971-4C08-9852-81F821095795}']
['{B56B2864-B139-4368-9643-757950948319}']
{ Property getters and setters }
function GetOldANOValue : String;
@ -50,7 +50,7 @@ type
{ IFacturasProformaDelta }
IFacturasProformaDelta = interface(IFacturasProforma)
['{8CCB35B8-FB46-40BB-8D1C-F22A11E81325}']
['{6517D416-A2B8-40EF-BE1A-056BBC8D08BE}']
{ Property getters and setters }
function GetOldIDValue : Integer;
function GetOldID_EMPRESAValue : Integer;
@ -87,9 +87,11 @@ type
function GetOldNUM_COPIASValue : SmallInt;
function GetOldNUM_CORREOSValue : SmallInt;
function GetOldDATOS_BANCARIOSValue : String;
function GetOldREFERENCIA_CLIENTEValue : String;
function GetOldID_PEDIDOValue : Integer;
function GetOldREFERENCIA_PEDIDO_CLIENTEValue : String;
function GetOldREFERENCIA_DEL_CLIENTEValue : String;
function GetOldID_FACTURA_FINALValue : Integer;
function GetOldREFERENCIA_FACTURA_FINALValue : String;
{ Properties }
property OldID : Integer read GetOldIDValue;
@ -127,9 +129,11 @@ type
property OldNUM_COPIAS : SmallInt read GetOldNUM_COPIASValue;
property OldNUM_CORREOS : SmallInt read GetOldNUM_CORREOSValue;
property OldDATOS_BANCARIOS : String read GetOldDATOS_BANCARIOSValue;
property OldREFERENCIA_CLIENTE : String read GetOldREFERENCIA_CLIENTEValue;
property OldID_PEDIDO : Integer read GetOldID_PEDIDOValue;
property OldREFERENCIA_PEDIDO_CLIENTE : String read GetOldREFERENCIA_PEDIDO_CLIENTEValue;
property OldREFERENCIA_DEL_CLIENTE : String read GetOldREFERENCIA_DEL_CLIENTEValue;
property OldID_FACTURA_FINAL : Integer read GetOldID_FACTURA_FINALValue;
property OldREFERENCIA_FACTURA_FINAL : String read GetOldREFERENCIA_FACTURA_FINALValue;
end;
{ TFacturasProformaBusinessProcessorRules }
@ -348,24 +352,36 @@ type
function GetOldDATOS_BANCARIOSIsNull: Boolean; virtual;
procedure SetDATOS_BANCARIOSValue(const aValue: String); virtual;
procedure SetDATOS_BANCARIOSIsNull(const aValue: Boolean); virtual;
function GetREFERENCIA_CLIENTEValue: String; virtual;
function GetREFERENCIA_CLIENTEIsNull: Boolean; virtual;
function GetOldREFERENCIA_CLIENTEValue: String; virtual;
function GetOldREFERENCIA_CLIENTEIsNull: Boolean; virtual;
procedure SetREFERENCIA_CLIENTEValue(const aValue: String); virtual;
procedure SetREFERENCIA_CLIENTEIsNull(const aValue: Boolean); virtual;
function GetID_PEDIDOValue: Integer; virtual;
function GetID_PEDIDOIsNull: Boolean; virtual;
function GetOldID_PEDIDOValue: Integer; virtual;
function GetOldID_PEDIDOIsNull: Boolean; virtual;
procedure SetID_PEDIDOValue(const aValue: Integer); virtual;
procedure SetID_PEDIDOIsNull(const aValue: Boolean); virtual;
function GetREFERENCIA_PEDIDO_CLIENTEValue: String; virtual;
function GetREFERENCIA_PEDIDO_CLIENTEIsNull: Boolean; virtual;
function GetOldREFERENCIA_PEDIDO_CLIENTEValue: String; virtual;
function GetOldREFERENCIA_PEDIDO_CLIENTEIsNull: Boolean; virtual;
procedure SetREFERENCIA_PEDIDO_CLIENTEValue(const aValue: String); virtual;
procedure SetREFERENCIA_PEDIDO_CLIENTEIsNull(const aValue: Boolean); virtual;
function GetREFERENCIA_DEL_CLIENTEValue: String; virtual;
function GetREFERENCIA_DEL_CLIENTEIsNull: Boolean; virtual;
function GetOldREFERENCIA_DEL_CLIENTEValue: String; virtual;
function GetOldREFERENCIA_DEL_CLIENTEIsNull: Boolean; virtual;
procedure SetREFERENCIA_DEL_CLIENTEValue(const aValue: String); virtual;
procedure SetREFERENCIA_DEL_CLIENTEIsNull(const aValue: Boolean); virtual;
function GetID_FACTURA_FINALValue: Integer; virtual;
function GetID_FACTURA_FINALIsNull: Boolean; virtual;
function GetOldID_FACTURA_FINALValue: Integer; virtual;
function GetOldID_FACTURA_FINALIsNull: Boolean; virtual;
procedure SetID_FACTURA_FINALValue(const aValue: Integer); virtual;
procedure SetID_FACTURA_FINALIsNull(const aValue: Boolean); virtual;
function GetREFERENCIA_FACTURA_FINALValue: String; virtual;
function GetREFERENCIA_FACTURA_FINALIsNull: Boolean; virtual;
function GetOldREFERENCIA_FACTURA_FINALValue: String; virtual;
function GetOldREFERENCIA_FACTURA_FINALIsNull: Boolean; virtual;
procedure SetREFERENCIA_FACTURA_FINALValue(const aValue: String); virtual;
procedure SetREFERENCIA_FACTURA_FINALIsNull(const aValue: Boolean); virtual;
{ Properties }
property ID : Integer read GetIDValue write SetIDValue;
@ -508,18 +524,26 @@ type
property DATOS_BANCARIOSIsNull : Boolean read GetDATOS_BANCARIOSIsNull write SetDATOS_BANCARIOSIsNull;
property OldDATOS_BANCARIOS : String read GetOldDATOS_BANCARIOSValue;
property OldDATOS_BANCARIOSIsNull : Boolean read GetOldDATOS_BANCARIOSIsNull;
property REFERENCIA_CLIENTE : String read GetREFERENCIA_CLIENTEValue write SetREFERENCIA_CLIENTEValue;
property REFERENCIA_CLIENTEIsNull : Boolean read GetREFERENCIA_CLIENTEIsNull write SetREFERENCIA_CLIENTEIsNull;
property OldREFERENCIA_CLIENTE : String read GetOldREFERENCIA_CLIENTEValue;
property OldREFERENCIA_CLIENTEIsNull : Boolean read GetOldREFERENCIA_CLIENTEIsNull;
property ID_PEDIDO : Integer read GetID_PEDIDOValue write SetID_PEDIDOValue;
property ID_PEDIDOIsNull : Boolean read GetID_PEDIDOIsNull write SetID_PEDIDOIsNull;
property OldID_PEDIDO : Integer read GetOldID_PEDIDOValue;
property OldID_PEDIDOIsNull : Boolean read GetOldID_PEDIDOIsNull;
property REFERENCIA_PEDIDO_CLIENTE : String read GetREFERENCIA_PEDIDO_CLIENTEValue write SetREFERENCIA_PEDIDO_CLIENTEValue;
property REFERENCIA_PEDIDO_CLIENTEIsNull : Boolean read GetREFERENCIA_PEDIDO_CLIENTEIsNull write SetREFERENCIA_PEDIDO_CLIENTEIsNull;
property OldREFERENCIA_PEDIDO_CLIENTE : String read GetOldREFERENCIA_PEDIDO_CLIENTEValue;
property OldREFERENCIA_PEDIDO_CLIENTEIsNull : Boolean read GetOldREFERENCIA_PEDIDO_CLIENTEIsNull;
property REFERENCIA_DEL_CLIENTE : String read GetREFERENCIA_DEL_CLIENTEValue write SetREFERENCIA_DEL_CLIENTEValue;
property REFERENCIA_DEL_CLIENTEIsNull : Boolean read GetREFERENCIA_DEL_CLIENTEIsNull write SetREFERENCIA_DEL_CLIENTEIsNull;
property OldREFERENCIA_DEL_CLIENTE : String read GetOldREFERENCIA_DEL_CLIENTEValue;
property OldREFERENCIA_DEL_CLIENTEIsNull : Boolean read GetOldREFERENCIA_DEL_CLIENTEIsNull;
property ID_FACTURA_FINAL : Integer read GetID_FACTURA_FINALValue write SetID_FACTURA_FINALValue;
property ID_FACTURA_FINALIsNull : Boolean read GetID_FACTURA_FINALIsNull write SetID_FACTURA_FINALIsNull;
property OldID_FACTURA_FINAL : Integer read GetOldID_FACTURA_FINALValue;
property OldID_FACTURA_FINALIsNull : Boolean read GetOldID_FACTURA_FINALIsNull;
property REFERENCIA_FACTURA_FINAL : String read GetREFERENCIA_FACTURA_FINALValue write SetREFERENCIA_FACTURA_FINALValue;
property REFERENCIA_FACTURA_FINALIsNull : Boolean read GetREFERENCIA_FACTURA_FINALIsNull write SetREFERENCIA_FACTURA_FINALIsNull;
property OldREFERENCIA_FACTURA_FINAL : String read GetOldREFERENCIA_FACTURA_FINALValue;
property OldREFERENCIA_FACTURA_FINALIsNull : Boolean read GetOldREFERENCIA_FACTURA_FINALIsNull;
public
constructor Create(aBusinessProcessor: TDABusinessProcessor); override;
@ -529,7 +553,7 @@ type
{ IFacturasProforma_DetallesDelta }
IFacturasProforma_DetallesDelta = interface(IFacturasProforma_Detalles)
['{9C6DD5EA-A831-40AF-AAF2-792029C0567D}']
['{88B55B8E-BF8A-49C0-B26F-6BDDDFD872DD}']
{ Property getters and setters }
function GetOldIDValue : Integer;
function GetOldID_FACTURAValue : Integer;
@ -1881,37 +1905,6 @@ begin
BusinessProcessor.CurrentChange.NewValueByName[fld_FacturasProformaDATOS_BANCARIOS] := Null;
end;
function TFacturasProformaBusinessProcessorRules.GetREFERENCIA_CLIENTEValue: String;
begin
result := BusinessProcessor.CurrentChange.NewValueByName[fld_FacturasProformaREFERENCIA_CLIENTE];
end;
function TFacturasProformaBusinessProcessorRules.GetREFERENCIA_CLIENTEIsNull: Boolean;
begin
result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_FacturasProformaREFERENCIA_CLIENTE]);
end;
function TFacturasProformaBusinessProcessorRules.GetOldREFERENCIA_CLIENTEValue: String;
begin
result := BusinessProcessor.CurrentChange.OldValueByName[fld_FacturasProformaREFERENCIA_CLIENTE];
end;
function TFacturasProformaBusinessProcessorRules.GetOldREFERENCIA_CLIENTEIsNull: Boolean;
begin
result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_FacturasProformaREFERENCIA_CLIENTE]);
end;
procedure TFacturasProformaBusinessProcessorRules.SetREFERENCIA_CLIENTEValue(const aValue: String);
begin
BusinessProcessor.CurrentChange.NewValueByName[fld_FacturasProformaREFERENCIA_CLIENTE] := aValue;
end;
procedure TFacturasProformaBusinessProcessorRules.SetREFERENCIA_CLIENTEIsNull(const aValue: Boolean);
begin
if aValue then
BusinessProcessor.CurrentChange.NewValueByName[fld_FacturasProformaREFERENCIA_CLIENTE] := Null;
end;
function TFacturasProformaBusinessProcessorRules.GetID_PEDIDOValue: Integer;
begin
result := BusinessProcessor.CurrentChange.NewValueByName[fld_FacturasProformaID_PEDIDO];
@ -1943,6 +1936,68 @@ begin
BusinessProcessor.CurrentChange.NewValueByName[fld_FacturasProformaID_PEDIDO] := Null;
end;
function TFacturasProformaBusinessProcessorRules.GetREFERENCIA_PEDIDO_CLIENTEValue: String;
begin
result := BusinessProcessor.CurrentChange.NewValueByName[fld_FacturasProformaREFERENCIA_PEDIDO_CLIENTE];
end;
function TFacturasProformaBusinessProcessorRules.GetREFERENCIA_PEDIDO_CLIENTEIsNull: Boolean;
begin
result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_FacturasProformaREFERENCIA_PEDIDO_CLIENTE]);
end;
function TFacturasProformaBusinessProcessorRules.GetOldREFERENCIA_PEDIDO_CLIENTEValue: String;
begin
result := BusinessProcessor.CurrentChange.OldValueByName[fld_FacturasProformaREFERENCIA_PEDIDO_CLIENTE];
end;
function TFacturasProformaBusinessProcessorRules.GetOldREFERENCIA_PEDIDO_CLIENTEIsNull: Boolean;
begin
result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_FacturasProformaREFERENCIA_PEDIDO_CLIENTE]);
end;
procedure TFacturasProformaBusinessProcessorRules.SetREFERENCIA_PEDIDO_CLIENTEValue(const aValue: String);
begin
BusinessProcessor.CurrentChange.NewValueByName[fld_FacturasProformaREFERENCIA_PEDIDO_CLIENTE] := aValue;
end;
procedure TFacturasProformaBusinessProcessorRules.SetREFERENCIA_PEDIDO_CLIENTEIsNull(const aValue: Boolean);
begin
if aValue then
BusinessProcessor.CurrentChange.NewValueByName[fld_FacturasProformaREFERENCIA_PEDIDO_CLIENTE] := Null;
end;
function TFacturasProformaBusinessProcessorRules.GetREFERENCIA_DEL_CLIENTEValue: String;
begin
result := BusinessProcessor.CurrentChange.NewValueByName[fld_FacturasProformaREFERENCIA_DEL_CLIENTE];
end;
function TFacturasProformaBusinessProcessorRules.GetREFERENCIA_DEL_CLIENTEIsNull: Boolean;
begin
result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_FacturasProformaREFERENCIA_DEL_CLIENTE]);
end;
function TFacturasProformaBusinessProcessorRules.GetOldREFERENCIA_DEL_CLIENTEValue: String;
begin
result := BusinessProcessor.CurrentChange.OldValueByName[fld_FacturasProformaREFERENCIA_DEL_CLIENTE];
end;
function TFacturasProformaBusinessProcessorRules.GetOldREFERENCIA_DEL_CLIENTEIsNull: Boolean;
begin
result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_FacturasProformaREFERENCIA_DEL_CLIENTE]);
end;
procedure TFacturasProformaBusinessProcessorRules.SetREFERENCIA_DEL_CLIENTEValue(const aValue: String);
begin
BusinessProcessor.CurrentChange.NewValueByName[fld_FacturasProformaREFERENCIA_DEL_CLIENTE] := aValue;
end;
procedure TFacturasProformaBusinessProcessorRules.SetREFERENCIA_DEL_CLIENTEIsNull(const aValue: Boolean);
begin
if aValue then
BusinessProcessor.CurrentChange.NewValueByName[fld_FacturasProformaREFERENCIA_DEL_CLIENTE] := Null;
end;
function TFacturasProformaBusinessProcessorRules.GetID_FACTURA_FINALValue: Integer;
begin
result := BusinessProcessor.CurrentChange.NewValueByName[fld_FacturasProformaID_FACTURA_FINAL];
@ -1974,6 +2029,37 @@ begin
BusinessProcessor.CurrentChange.NewValueByName[fld_FacturasProformaID_FACTURA_FINAL] := Null;
end;
function TFacturasProformaBusinessProcessorRules.GetREFERENCIA_FACTURA_FINALValue: String;
begin
result := BusinessProcessor.CurrentChange.NewValueByName[fld_FacturasProformaREFERENCIA_FACTURA_FINAL];
end;
function TFacturasProformaBusinessProcessorRules.GetREFERENCIA_FACTURA_FINALIsNull: Boolean;
begin
result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_FacturasProformaREFERENCIA_FACTURA_FINAL]);
end;
function TFacturasProformaBusinessProcessorRules.GetOldREFERENCIA_FACTURA_FINALValue: String;
begin
result := BusinessProcessor.CurrentChange.OldValueByName[fld_FacturasProformaREFERENCIA_FACTURA_FINAL];
end;
function TFacturasProformaBusinessProcessorRules.GetOldREFERENCIA_FACTURA_FINALIsNull: Boolean;
begin
result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_FacturasProformaREFERENCIA_FACTURA_FINAL]);
end;
procedure TFacturasProformaBusinessProcessorRules.SetREFERENCIA_FACTURA_FINALValue(const aValue: String);
begin
BusinessProcessor.CurrentChange.NewValueByName[fld_FacturasProformaREFERENCIA_FACTURA_FINAL] := aValue;
end;
procedure TFacturasProformaBusinessProcessorRules.SetREFERENCIA_FACTURA_FINALIsNull(const aValue: Boolean);
begin
if aValue then
BusinessProcessor.CurrentChange.NewValueByName[fld_FacturasProformaREFERENCIA_FACTURA_FINAL] := Null;
end;
{ TFacturasProforma_DetallesBusinessProcessorRules }
constructor TFacturasProforma_DetallesBusinessProcessorRules.Create(aBusinessProcessor: TDABusinessProcessor);

View File

@ -14,4 +14,4 @@ END
/* C:\Codigo\Source\Modulos\Facturas proforma\Plugin\uPluginFacturasProforma.dfm */
/* C:\Codigo\Source\Modulos\Facturas proforma\Plugin\FacturasProforma_plugin.res */
/* C:\Codigo\Source\Modulos\Facturas proforma\Plugin\FacturasProforma_plugin.drf */
/* c:\temp\dtf3E0.tmp */

View File

@ -70,9 +70,6 @@ type
detallesIMPORTE_TOTAL: TIBBCDField;
detallesVISIBLE: TSmallintField;
detallesREFERENCIA: TIBStringField;
frxDBVencimientos: TfrxDBDataset;
DADSVencimientos: TDADataSource;
tbl_Vencimientos: TDAMemDataTable;
vencimientos: TIBQuery;
DataSource3: TDataSource;
cabeceraDATOS_BANCARIOS: TIBStringField;
@ -80,11 +77,6 @@ type
vencimientosIMPORTE_TOTAL: TIBBCDField;
frxPDFExport1: TfrxPDFExport;
Bin2DataStreamer: TDABin2DataStreamer;
DADSInformeObjetivos: TDADataSource;
frxDBInformeObjetivos: TfrxDBDataset;
tbl_InformeObjetivosMensual: TDAMemDataTable;
tbl_InformeObjetivosTrimestral: TDAMemDataTable;
tbl_InformeObjetivosSemestral: TDAMemDataTable;
schReport: TDASchema;
procedure DataModuleCreate(Sender: TObject);
procedure DataModuleDestroy(Sender: TObject);
@ -107,29 +99,14 @@ type
FImporteMinimo: Currency;
FDesglosado : Boolean;
FShowLogotipo: Boolean;
FTopN: Integer;
FTopN: Integer;
//Genera cada una de las facturas a imprimir
procedure _GenerarFactura(const ID: Integer; const VerSello: Boolean = True; const VerCopia: Boolean = True);
procedure PrepararTablaInforme(ATabla: TDAMemDataTable);
procedure PrepararTablaResumenInforme(ATabla: IDADataset);
procedure PrepararTablaInformeGrafComp(ATabla: TDAMemDataTable);
procedure PrepararTablaResumenInformeGrafComp(ATabla: TDAMemDataTable);
procedure PrepararTablaInformeObjetivos(ATabla: TDAMemDataTable);
function _GenerarInforme(const TipoInforme: String): Binary;
procedure IniciarParametrosInforme;
procedure RecuperarNombresClientes;
procedure RecuperarNombresAgentes;
public
function GenerarFactura(const ListaID : TIntegerArray; const VerSello: Boolean = True; const VerCopia: Boolean = True): Binary;
function GenerarFacturaEnPDF(const ListaID : TIntegerArray; const VerSello: Boolean = True): Binary;
function GenerarInformeIVA(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const ListaIDClientes: TIntegerArray; const Desglosado: Boolean; const ImporteMinimo: Currency): Binary;
function GenerarInformeListadoFacturas(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const FechaVenInicio: Variant; const FechaVenFin: Variant; const ListaIDClientes: TIntegerArray; const Desglosado: Boolean; const ImporteMinimo: Currency): Binary;
function GenerarInformeListadoFacturasPendientes(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const FechaVenInicio: Variant; const FechaVenFin: Variant; const ListaIDClientes: TIntegerArray; const Desglosado: Boolean; const ImporteMinimo: Currency): Binary;
function GenerarInformeFacturasGrafComp(const IdEmpresa: Integer; const Intervalo: Variant; const Ano1: Variant; const Ano2: Variant; const ListaIDClientes: TIntegerArray; const TopN: Integer): Binary;
function GenerarInformeBeneficiosGrafComp(const IdEmpresa: Integer; const Intervalo: Variant; const Ano1: Variant; const Ano2: Variant; const Serie: Variant): Binary;
function GenerarInformeObjetivosAgentesFacturas(const IdEmpresa: Integer; const Intervalo: Variant; const Ano1: Variant; const Ano2: Variant; const AgentesActivos: Boolean; const ListaIDAgentes: TIntegerArray; const TopN: Integer): Binary;
end;
implementation
@ -141,19 +118,7 @@ uses
uROServer, DataAbstract4_Intf, srvGestorInformes_Impl;
const
rptFacturaCliente = 'InfFacturaCliente.fr3';
rptInformeIVA = 'InformeIVAClientes.fr3';
rptInformeIVADesglosado = 'InformeIVAClientesDesglosado.fr3';
rptInformeListadoFacturasCliente = 'InformeListadoFacturasCliente.fr3';
rptInformeListadoFacturasClienteDesglosado = 'InformeListadoFacturasClienteDesglosado.fr3';
rptInformeListadoFactuasClientePendiente = 'InformeListadoFacturasClientePendientes.fr3';
rptInformeListadoFactuasClientePendienteDesglosado = 'InformeListadoFacturasClientePendientesDesglosado.fr3';
rptInformeListadoFacturasClienteGrafComp = 'InformeListadoFacturasClienteGrafComp.fr3';
rptInformeListadoBeneficiosGrafComp = 'InformeListadoBeneficiosGrafComp.fr3';
rptInformeObjetivosAgentesFacturas = 'InformeObjetivosAgentesFacturas.fr3';
{ Dataset names for schReport }
ds_InformeListadoFacturasResumen = 'InformeListadoFacturasResumen';
rptFacturaProforma = 'InfFacturaProforma.fr3';
{ TRptFacturasCliente }
@ -168,23 +133,19 @@ begin
frxReport.EngineOptions.NewSilentMode := simReThrow;
FListaNombresClientes := TStringList.Create;
FListaNombresAgentes := TStringList.Create;
FListaNombresAgentes := TStringList.Create;
frxDBCabecera.DataSource := DADSCabecera;
frxDBCabecera.CloseDataSource := False;
frxDBDetalles.DataSource := DADSDetalles;
frxDBDetalles.CloseDataSource := False;
frxDBVencimientos.DataSource := DADSVencimientos;
frxDBVencimientos.CloseDataSource := False;
end;
procedure TRptFacturasProforma.DataModuleDestroy(Sender: TObject);
begin
tbl_Cabecera.Active := False;
tbl_Detalles.Active := False;
tbl_Vencimientos.Active := False;
FreeANDNIL(FListaNombresClientes);
FreeANDNIL(FListaNombresAgentes);
@ -230,796 +191,6 @@ begin
end;
end;
function TRptFacturasProforma.GenerarInformeBeneficiosGrafComp(
const IdEmpresa: Integer; const Intervalo, Ano1, Ano2,
Serie: Variant): Binary;
var
AStream: TMemoryStream;
AInforme: Variant;
begin
FConnection.BeginTransaction; //<--- Creo que no va a hacer falta. "PUES SI ES NECESARIO"
AStream := TMemoryStream.Create;
try
//Inicializamos parametros
FIdEmpresa := IdEmpresa;
FAno1 := Ano1;
FAno2 := Ano2;
FIntervalo := Intervalo;
//Preparamos la tabla correspondiente y la abrimos para el informe
if (FIntervalo = CTE_MENSUAL) then
PrepararTablaInformeGrafComp(tbl_InformeListadoBeneficiosGrafCompMensual)
else if (FIntervalo = CTE_TRIMESTRAL) then
PrepararTablaInformeGrafComp(tbl_InformeListadoBeneficiosGrafCompTrimestral)
else
PrepararTablaInformeGrafComp(tbl_InformeListadoBeneficiosGrafCompSemestral);
Result := Binary.Create;
AInforme := DarRutaFichero(DarRutaInformes, rptInformeListadoBeneficiosGrafComp, IntTostr(FIdEmpresa));
if VarIsNull(AInforme) then
raise Exception.Create (('Error Servidor: GenerarInformeBeneficiosGrafComp, no encuentra informe ' + rptInformeListadoBeneficiosGrafComp));
frxReport.LoadFromFile(AInforme, True);
// IniciarParametrosInforme;
frxReport.Variables.Variables['Ano1']:= Ano1;
frxReport.Variables.Variables['Ano2']:= Ano2;
frxReport.Variables.Variables['Serie']:= Serie;
frxReport.PrepareReport(False);
frxReport.PreviewPages.SaveToStream(Result);
finally
AStream.Free;
FConnection.RollbackTransaction; //<--- Creo que no va a hacer falta. "PUES SI ES NECESARIO"
end;
end;
function TRptFacturasProforma.GenerarInformeFacturasGrafComp(
const IdEmpresa: Integer; const Intervalo, Ano1, Ano2: Variant;
const ListaIDClientes: TIntegerArray; const TopN: Integer): Binary;
var
AStream: TMemoryStream;
AInforme: Variant;
begin
FConnection.BeginTransaction; //<--- Creo que no va a hacer falta. "PUES SI ES NECESARIO"
AStream := TMemoryStream.Create;
try
//Inicializamos parametros
FIdEmpresa := IdEmpresa;
FAno1 := Ano1;
FAno2 := Ano2;
FIntervalo := Intervalo;
FTopN := TopN;
if Assigned(FListaIDClientes) then
FListaIDClientes.Free;
FListaIDClientes := ListaIDClientes;
//Preparamos la tabla correspondiente y la abrimos para el informe
if (FIntervalo = CTE_MENSUAL) then
PrepararTablaInformeGrafComp(tbl_InformeListadoFacturasGrafCompMensual)
else if (FIntervalo = CTE_TRIMESTRAL) then
PrepararTablaInformeGrafComp(tbl_InformeListadoFacturasGrafCompTrimestral)
else
PrepararTablaInformeGrafComp(tbl_InformeListadoFacturasGrafCompSemestral);
//Se preparan las tablas del listado resumen del informe
PrepararTablaResumenInformeGrafComp(tbl_InformeListadoClientesMayorFacturacionResumen);
PrepararTablaResumenInformeGrafComp(tbl_InformeListadoClientesMayorDescuentoResumen);
PrepararTablaResumenInformeGrafComp(tbl_InformeListadoAgentesMayorFacturacionResumen);
Result := Binary.Create;
AInforme := DarRutaFichero(DarRutaInformes, rptInformeListadoFacturasClienteGrafComp, IntTostr(FIdEmpresa));
if VarIsNull(AInforme) then
raise Exception.Create (('Error Servidor: GenerarInformeFacturasGrafComp, no encuentra informe ' + rptInformeListadoFacturasClienteGrafComp));
frxReport.LoadFromFile(AInforme, True);
// IniciarParametrosInforme;
frxReport.Variables.Variables['Ano1']:= Ano1;
frxReport.Variables.Variables['Ano2']:= Ano2;
frxReport.PrepareReport(False);
frxReport.PreviewPages.SaveToStream(Result);
finally
AStream.Free;
FConnection.RollbackTransaction; //<--- Creo que no va a hacer falta. "PUES SI ES NECESARIO"
end;
end;
function TRptFacturasProforma.GenerarInformeIVA(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const ListaIDClientes: TIntegerArray; const Desglosado: Boolean; const ImporteMinimo: Currency): Binary;
var
ATipoInforme: String;
AStream: TMemoryStream;
dsMaster: IDADataset;
begin
FConnection.BeginTransaction; //<--- Creo que no va a hacer falta. "PUES SI ES NECESARIO"
AStream := TMemoryStream.Create;
try
//Inicializamos parametros
FIdEmpresa := IdEmpresa;
FFechaInicio := FechaInicio;
FFechaFin := FechaFin;
FFechaVenInicio := Null;
FFechaVenFin := Null;
FImporteMinimo := ImporteMinimo;
if Assigned(FListaIDClientes) then
FListaIDClientes.Free;
FListaIDClientes := ListaIDClientes;
//Se van a prepara las tablas del informe
if tbl_InformeListadoFacturas.Active then
tbl_InformeListadoFacturas.Active := False;
PrepararTablaInforme(tbl_InformeListadoFacturas);
//Se prepara la tabla del listado resumen del informe
if tbl_InformeListadoFacturasResumen.Active then
tbl_InformeListadoFacturasResumen.Active := False;
dsMaster := schReport.NewDataset(FConnection, ds_InformeListadoFacturasResumen, [], [], False);
PrepararTablaResumenInforme(dsMaster);
//Esto se hace para rellenar la tabla del datamodule que usa el informe.
dsMaster.Open;
AStream.Clear;
Bin2DataStreamer.WriteDataset(AStream, dsMaster, [woRows, woSchema], -1);
Bin2DataStreamer.ReadDataset(AStream, tbl_InformeListadoFacturasResumen, TRUE, '', TRUE, TRUE);
//DESGLOSADO POR CLIENTE EN ESTE INFORME NO SE DESGLOSARÁ POR CLIENTE
if Desglosado then
ATipoInforme := rptInformeIVADesglosado
else
ATipoInforme := rptInformeIVA;
//Finalmente se abren las tablas del informe
tbl_InformeListadoFacturas.Active := True;
tbl_InformeListadoFacturasResumen.Active := True;
Result := _GenerarInforme(ATipoInforme);
finally
AStream.Free;
dsMaster := Nil;
FConnection.RollbackTransaction; //<--- Creo que no va a hacer falta. "PUES SI ES NECESARIO"
end;
end;
function TRptFacturasProforma.GenerarInformeListadoFacturas(const IdEmpresa: Integer;
const FechaInicio, FechaFin: Variant; const FechaVenInicio: Variant; const FechaVenFin: Variant;
const ListaIDClientes: TIntegerArray; const Desglosado: Boolean; const ImporteMinimo: Currency): Binary;
var
ATipoInforme: String;
AStream: TMemoryStream;
dsMaster: IDADataset;
begin
FConnection.BeginTransaction; //<--- Creo que no va a hacer falta. "PUES SI ES NECESARIO"
AStream := TMemoryStream.Create;
try
//Inicializamos parametros
FIdEmpresa := IdEmpresa;
FFechaInicio := FechaInicio;
FFechaFin := FechaFin;
FFechaVenInicio := FechaVenInicio;
FFechaVenFin := FechaVenFin;
FImporteMinimo := ImporteMinimo;
if Assigned(FListaIDClientes) then
FListaIDClientes.Free;
FListaIDClientes := ListaIDClientes;
//Se prepara la tabla del listado general del informe
if tbl_InformeListadoFacturas.Active then
tbl_InformeListadoFacturas.Active := False;
PrepararTablaInforme(tbl_InformeListadoFacturas);
//Se prepara la tabla del listado resumen del informe
if tbl_InformeListadoFacturasResumen.Active then
tbl_InformeListadoFacturasResumen.Active := False;
dsMaster := schReport.NewDataset(FConnection, ds_InformeListadoFacturasResumen, [], [], False);
PrepararTablaResumenInforme(dsMaster);
//Esto se hace para rellenar la tabla del datamodule que usa el informe.
dsMaster.Open;
AStream.Clear;
Bin2DataStreamer.WriteDataset(AStream, dsMaster, [woRows, woSchema], -1);
Bin2DataStreamer.ReadDataset(AStream, tbl_InformeListadoFacturasResumen, TRUE, '', TRUE, TRUE);
//DESGLOSADO POR CLIENTE EN ESTE INFORME NO SE DESGLOSARÁ POR CLIENTE
FDesglosado := Desglosado;
if FDesglosado then
ATipoInforme := rptInformeListadoFacturasClienteDesglosado
else
ATipoInforme := rptInformeListadoFacturasCliente;
//Finalmente se abren las tablas del informe
tbl_InformeListadoFacturas.Active := True;
tbl_InformeListadoFacturasResumen.Active := True;
Result := _GenerarInforme(ATipoInforme);
finally
AStream.Free;
dsMaster := Nil;
FConnection.RollbackTransaction; //<--- Creo que no va a hacer falta. "PUES SI ES NECESARIO"
end;
end;
function TRptFacturasProforma.GenerarInformeListadoFacturasPendientes(
const IdEmpresa: Integer; const FechaInicio, FechaFin: Variant;
const FechaVenInicio: Variant; const FechaVenFin: Variant;
const ListaIDClientes: TIntegerArray; const Desglosado: Boolean;
const ImporteMinimo: Currency): Binary;
var
Condicion: TDAWhereExpression;
ATipoInforme: String;
AStream: TMemoryStream;
dsMaster: IDADataset;
begin
FConnection.BeginTransaction; //<--- Creo que no va a hacer falta. "PUES SI ES NECESARIO"
AStream := TMemoryStream.Create;
try
//Inicializamos parametros
FIdEmpresa := IdEmpresa;
FFechaInicio := FechaInicio;
FFechaFin := FechaFin;
FFechaVenInicio := FechaVenInicio;
FFechaVenFin := FechaVenFin;
FImporteMinimo := ImporteMinimo;
FListaIDClientes := ListaIDClientes;
//Se prepara la tabla del listado general del informe
if tbl_InformeListadoFacturasPendientes.Active then
tbl_InformeListadoFacturasPendientes.Active := False;
PrepararTablaInforme(tbl_InformeListadoFacturasPendientes);
// Filtrar el informe por situacion
with tbl_InformeListadoFacturasPendientes.DynamicWhere do
begin
// (ID_EMPRESA >= ID)
Condicion := NewBinaryExpression(NewField('', fld_FacturasClienteSITUACION), NewConstant('PAGADA', datString), dboNotEqual);
if IsEmpty then
Expression := Condicion
else
Expression := NewBinaryExpression(Expression, Condicion, dboAnd);
end;
//DESGLOSADO POR CLIENTE EN ESTE INFORME NO SE DESGLOSARÁ POR CLIENTE
FDesglosado := Desglosado;
if FDesglosado then
ATipoInforme := rptInformeListadoFactuasClientePendienteDesglosado
else
ATipoInforme := rptInformeListadoFactuasClientePendiente;
//Finalmente se abren las tablas del informe
tbl_InformeListadoFacturasPendientes.Active := True;
Result := _GenerarInforme(ATipoInforme);
finally
AStream.Free;
dsMaster := Nil;
FConnection.RollbackTransaction; //<--- Creo que no va a hacer falta. "PUES SI ES NECESARIO"
end;
end;
function TRptFacturasProforma.GenerarInformeObjetivosAgentesFacturas(
const IdEmpresa: Integer; const Intervalo, Ano1, Ano2: Variant;
const AgentesActivos: Boolean; const ListaIDAgentes: TIntegerArray; const TopN: Integer): Binary;
var
AStream: TMemoryStream;
AInforme: Variant;
begin
FConnection.BeginTransaction; //<--- Creo que no va a hacer falta. "PUES SI ES NECESARIO"
AStream := TMemoryStream.Create;
try
//Inicializamos parametros
FIdEmpresa := IdEmpresa;
FAno1 := Ano1;
FIntervalo := Intervalo;
FAgentesActivos := AgentesActivos;
FFechaVenInicio := Null;
FFechaVenFin := Null;
if Assigned(FListaIDAgentes) then
FListaIDClientes.Free;
FListaIDAgentes := ListaIDAgentes;
//Preparamos la tabla correspondiente y la abrimos para el informe
if (FIntervalo = CTE_MENSUAL) then
PrepararTablaInformeObjetivos(tbl_InformeObjetivosMensual)
else if (FIntervalo = CTE_TRIMESTRAL) then
PrepararTablaInformeObjetivos(tbl_InformeObjetivosTrimestral)
else
PrepararTablaInformeObjetivos(tbl_InformeObjetivosSemestral);
Result := Binary.Create;
AInforme := DarRutaFichero(DarRutaInformes, rptInformeObjetivosAgentesFacturas, IntTostr(FIdEmpresa));
if VarIsNull(AInforme) then
raise Exception.Create (('Error Servidor: GenerarInformeObjetivosAgentesFacturas, no encuentra informe ' + rptInformeObjetivosAgentesFacturas));
frxReport.LoadFromFile(AInforme, True);
IniciarParametrosInforme;
frxReport.PrepareReport(False);
frxReport.PreviewPages.SaveToStream(Result);
finally
AStream.Free;
FConnection.RollbackTransaction; //<--- Creo que no va a hacer falta. "PUES SI ES NECESARIO"
end;
end;
procedure TRptFacturasProforma.IniciarParametrosInforme;
var
ATextos : TStringList;
ACadena : String;
begin
ATextos := TStringList.Create;
try
if (not VarIsNull(FFechaInicio)) and (not VarIsNull(FFechaFin)) then
ACadena := Format('Fechas de factura desde el %s hasta el %s', [VarToStr(FFechaInicio), VarToStr(FFechaFin)])
else
ACadena := 'Sin rango de fechas';
ATextos.Add(ACadena);
ACadena := '';
// Filtrar el informe por fechas de vencimiento
if (not VarIsNull(FFechaVenInicio)) and (not VarIsNull(FFechaVenFin)) then
begin
ACadena := Format('Vencimientos desde el %s hasta el %s', [VarToStr(FFechaVenInicio), VarToStr(FFechaVenFin)]);
ATextos.Add(ACadena);
ACadena := '';
end;
if (FImporteMinimo > 0) then
begin
ACadena := Format('Facturas con importe superior a %m', [FImporteMinimo]);
ATextos.Add(ACadena);
ACadena := '';
end;
if Assigned(FListaIDClientes) and (FListaIDClientes.Count > 0) then
begin
RecuperarNombresClientes;
ACadena := FListaNombresClientes.Text;
end
else begin
ACadena := 'Todos los clientes';
if FDesglosado then
ACadena := ACadena + ' (desglosados)'
end;
if not VarIsNull(FAno1) then
begin
ACadena := 'Año: ' + FAno1;
ATextos.Add(ACadena);
end;
if Assigned(FListaIDAgentes) and (FListaIDAgentes.Count > 0) then
begin
ACadena := 'Agente: ';
RecuperarNombresAgentes;
ACadena := ACadena + FListaNombresAgentes.Text;
end
else begin
ACadena := 'Todos los agentes';
// if FDesglosado then
ACadena := ACadena + ' (desglosados)'
end;
ATextos.Add(ACadena);
ACadena := '';
ATextos.Add(ACadena);
ACadena := '';
frxReport.Variables.Variables['TextoParametros'] := ATextos.Text;
finally
FreeAndNil(ATextos);
end;
end;
procedure TRptFacturasProforma.PrepararTablaInforme(ATabla: TDAMemDataTable);
var
Condicion: TDAWhereExpression;
i: Integer;
begin
// Filtrar el informe por empresa
with ATabla.DynamicWhere do
begin
// (ID_EMPRESA >= ID)
Condicion := NewBinaryExpression(NewField('', fld_FacturasClienteID_EMPRESA), NewConstant(FIdEmpresa, datInteger), dboEqual);
if IsEmpty then
Expression := Condicion
else
Expression := NewBinaryExpression(Expression, Condicion, dboAnd);
end;
// Filtrar el informe por fechas
if not VarIsNull(FFechaInicio)
and not VarIsNull(FFechaFin) then
begin
with ATabla.DynamicWhere do
begin
// (FECHA_INICIO between FECHA_FIN)
Condicion := NewBinaryExpression(NewField('', fld_FacturasClienteFECHA_FACTURA), NewConstant(FFechaInicio, datDateTime), dboGreaterOrEqual);
Condicion := NewBinaryExpression(NewBinaryExpression(NewField('', fld_FacturasClienteFECHA_FACTURA), NewConstant(FFechaFin, datDateTime), dboLessOrEqual), Condicion, dboAnd);
if IsEmpty then
Expression := Condicion
else
Expression := NewBinaryExpression(Expression, Condicion, dboAnd);
end;
end;
// Filtrar el informe por fechas de vencimiento
if not VarIsNull(FFechaVenInicio)
and not VarIsNull(FFechaVenFin) then
begin
with ATabla.DynamicWhere do
begin
// (FECHA_VENCIMIENTO_INICIO between FECHA_VENCIMIENTO_FIN)
Condicion := NewBinaryExpression(NewField('', fld_FacturasClienteFECHA_VENCIMIENTO), NewConstant(FFechaVenInicio, datDateTime), dboGreaterOrEqual);
Condicion := NewBinaryExpression(NewBinaryExpression(NewField('', fld_FacturasClienteFECHA_VENCIMIENTO), NewConstant(FFechaVenFin, datDateTime), dboLessOrEqual), Condicion, dboAnd);
if IsEmpty then
Expression := Condicion
else
Expression := NewBinaryExpression(Expression, Condicion, dboAnd);
end;
end;
// Filtrar el informe por proveedor
if Assigned(FListaIDClientes) then
begin
with ATabla.DynamicWhere do
begin
for i := 0 to FListaIDClientes.Count - 1 do
begin
// (ID_CLIENTE = ID)
Condicion := NewBinaryExpression(NewField('', fld_FacturasClienteID_CLIENTE), NewConstant(FListaIDClientes.Items[i], datInteger), dboEqual);
if IsEmpty then
Expression := Condicion
else
Expression := NewBinaryExpression(Expression, Condicion, dboAnd);
end;
end;
end;
// Filtrar el informe por importe minimo
if (FImporteMinimo > 0) then
begin
with ATabla.DynamicWhere do
begin
// (IMPORTE_TOTAL > ImporteMinimo)
Condicion := NewBinaryExpression(NewField('', fld_FacturasCLienteIMPORTE_TOTAL), NewConstant(FImporteMinimo, datCurrency), dboGreaterOrEqual);
if IsEmpty then
Expression := Condicion
else
Expression := NewBinaryExpression(Expression, Condicion, dboAnd);
end;
end;
end;
procedure TRptFacturasProforma.PrepararTablaInformeGrafComp(
ATabla: TDAMemDataTable);
begin
if ATabla.Active then
ATabla.Active := False;
DASInformeListadoFacturasGrafComp.DataTable := ATabla;
ATabla.ParamByName('ID_EMPRESA1').AsInteger := FIdEmpresa;
ATabla.ParamByName('ID_EMPRESA2').AsInteger := FIdEmpresa;
ATabla.ParamByName('ANO1').AsVariant := FAno1;
ATabla.ParamByName('ANO2').AsVariant := FAno2;
ATabla.Active := True;
end;
procedure TRptFacturasProforma.PrepararTablaInformeObjetivos(
ATabla: TDAMemDataTable);
var
Condicion: TDAWhereExpression;
i: Integer;
begin
if ATabla.Active then
ATabla.Active := False;
{
if (FAgentesActivos) then
begin
with ATabla.DynamicWhere do
begin
// (SOLO AGENTES ACTIVOS)
Condicion := NewBinaryExpression(NewField('AD', 'FECHA_BAJA'), NewNull(), dboEqual);
if IsEmpty then
Expression := Condicion
else
Expression := NewBinaryExpression(Expression, Condicion, dboAnd);
end;
end;
}
// Filtrar el informe por agente
if Assigned(FListaIDAgentes) then
begin
with ATabla.DynamicWhere do
begin
for i := 0 to FListaIDAgentes.Count - 1 do
begin
// (ID_AGENTE = ID)
Condicion := NewBinaryExpression(NewField('SEN', 'ID_AGENTE'), NewConstant(FListaIDAgentes.Items[i], datInteger), dboEqual);
if IsEmpty then
Expression := Condicion
else
Expression := NewBinaryExpression(Expression, Condicion, dboAnd);
end;
end;
end;
DADSInformeObjetivos.DataTable := ATabla;
ATabla.ParamByName('ID_EMPRESA').AsInteger := FIdEmpresa;
ATabla.ParamByName('ANO1').AsVariant := FAno1;
ATabla.Active := True;
end;
procedure TRptFacturasProforma.PrepararTablaResumenInforme(ATabla: IDADataset);
var
i: Integer;
AWhereStr : String;
begin
// Filtrar el informe por empresa
AWhereStr := ' (' + fld_FacturasCLienteID_EMPRESA + ' = ' + IntToStr(FIdEmpresa) + ') ';
// Filtrar el informe por fechas
if not VarIsNull(FFechaInicio)
and not VarIsNull(FFechaFin) then
begin
if Length(AWhereStr) > 0 then
AWhereStr := AWhereStr + 'AND';
AWhereStr := AWhereStr + ' (' + fld_FacturasCLienteFECHA_FACTURA + ' between ''' + ReplaceStr(VarToStr(FFechaInicio),'/','.') + ''' and ''' + ReplaceStr(VarToStr(FFechaFin),'/','.') + ''') ';
end;
// Filtrar el informe por fechas de vencimiento
if not VarIsNull(FFechaVenInicio)
and not VarIsNull(FFechaVenFin) then
begin
if Length(AWhereStr) > 0 then
AWhereStr := AWhereStr + 'AND';
AWhereStr := AWhereStr + ' (' + fld_FacturasCLienteFECHA_VENCIMIENTO + ' between ''' + ReplaceStr(VarToStr(FFechaVenInicio),'/','.') + ''' and ''' + ReplaceStr(VarToStr(FFechaVenFin),'/','.') + ''') ';
end;
// Filtrar el informe por proveedor
if Assigned(FListaIDClientes) then
begin
for i := 0 to FListaIDClientes.Count - 1 do
begin
if Length(AWhereStr) > 0 then
AWhereStr := AWhereStr + 'AND';
AWhereStr := AWhereStr + ' (' + fld_FacturasCLienteID_CLIENTE + ' = ' + IntToStr(FListaIDClientes.Items[i]) + ') ';
end;
end;
// Filtrar el informe por importe minimo
if (FImporteMinimo > 0) then
begin
if Length(AWhereStr) > 0 then
AWhereStr := AWhereStr + 'AND';
AWhereStr := AWhereStr + ' (' + fld_FacturasCLienteIMPORTE_TOTAL + ' >= ' + CurrToStr(FImporteMinimo) + ') ';
end;
ATabla.Where.AddText(AWhereStr);
end;
procedure TRptFacturasProforma.PrepararTablaResumenInformeGrafComp(
ATabla: TDAMemDataTable);
begin
if ATabla.Active then
ATabla.Active := False;
ATabla.ParamByName('ID_EMPRESA').AsInteger := FIdEmpresa;
ATabla.ParamByName('ANO').AsVariant := FAno1;
ATabla.ParamByName('ANO2').AsVariant := FAno2;
ATabla.ParamByName('NTOP').AsInteger := FTopN;
ATabla.Active := True;
end;
procedure TRptFacturasProforma.RecuperarNombresAgentes;
var
AContactosService : IsrvContactos;
Intf : IInterface;
AClientID : TGUID;
ATableNameArray: StringArray;
ATableRequestInfoArray: TableRequestInfoArray;
ATableRequestInfo: TableRequestInfoV5;
AStream: TMemoryStream;
ADataTable: TDAMemDataTable;
i: Integer;
AWhereBuilder : TDAWhereBuilder;
ACondicion : TDAWhereExpression;
begin
CreateGUID(AClientID);
GetClassFactory('srvContactos').CreateInstance(AClientID, Intf);
if Assigned(Intf) then
begin
AContactosService := Intf as IsrvContactos;
ATableNameArray := StringArray.Create;
ATableRequestInfoArray := TableRequestInfoArray.Create;
AWhereBuilder := TDAWhereBuilder.Create;
try
ATableNameArray.Add('Agentes');
ATableRequestInfo := TableRequestInfoV5.Create;
with ATableRequestInfo do
begin
IncludeSchema := True;
MaxRecords := -1;
UserFilter := '';
AWhereBuilder.Clear;
with AWhereBuilder do
for i := 0 to FListaIDAgentes.Count - 1 do
begin
ACondicion := NewBinaryExpression(
NewBinaryExpression(NewField('', 'ID'), NewConstant(FListaIDAgentes[i], datInteger), dboEqual),
NewBinaryExpression(NewField('', 'ID_EMPRESA'), NewConstant(FIdEmpresa, datInteger), dboEqual),
dboAnd);
if not AWhereBuilder.IsEmpty then
Expression := NewBinaryExpression(Expression, ACondicion, dboOr)
else
Expression := ACondicion;
end;
WhereClause := AWhereBuilder.ExpressionToXmlNode(AWhereBuilder.Expression);
end;
try
ATableRequestInfoArray.Add(ATableRequestInfo);
AStream := AContactosService.GetData(ATableNameArray, ATableRequestInfoArray);
if Assigned(AStream) then
begin
ADataTable := TDAMemDataTable.Create(nil);
try
ADataTable.Name := 'Agentes';
ADataTable.LocalDataStreamer := Bin2DataStreamer;
ADataTable.RemoteFetchEnabled := False;
Bin2DataStreamer.ReadDataset(AStream, ADataTable, True);
ADataTable.Open;
FListaNombresAgentes.Clear;
for i := 0 to ADataTable.RecordCount - 1 do
begin
FListaNombresAgentes.Add(ADataTable.FieldByName('NOMBRE').AsString);
ADataTable.Next;
end;
finally
FreeANDNil(ADataTable);
end;
end;
except
on e: Exception do
dmServer.EscribirLog(e.Message);
end;
finally
FreeANDNIL(ATableRequestInfoArray);
FreeANDNIL(ATableNameArray);
FreeANDNIL(AWhereBuilder);
end;
end;
end;
procedure TRptFacturasProforma.RecuperarNombresClientes;
var
AContactosService : IsrvContactos;
Intf : IInterface;
AClientID : TGUID;
ATableNameArray: StringArray;
ATableRequestInfoArray: TableRequestInfoArray;
ATableRequestInfo: TableRequestInfoV5;
AStream: TMemoryStream;
ADataTable: TDAMemDataTable;
i: Integer;
AWhereBuilder : TDAWhereBuilder;
ACondicion : TDAWhereExpression;
begin
CreateGUID(AClientID);
GetClassFactory('srvContactos').CreateInstance(AClientID, Intf);
if Assigned(Intf) then
begin
AContactosService := Intf as IsrvContactos;
ATableNameArray := StringArray.Create;
ATableRequestInfoArray := TableRequestInfoArray.Create;
AWhereBuilder := TDAWhereBuilder.Create;
try
ATableNameArray.Add('Clientes');
ATableRequestInfo := TableRequestInfoV5.Create;
with ATableRequestInfo do
begin
IncludeSchema := True;
MaxRecords := -1;
UserFilter := '';
AWhereBuilder.Clear;
with AWhereBuilder do
for i := 0 to FListaIDClientes.Count - 1 do
begin
ACondicion := NewBinaryExpression(
NewBinaryExpression(NewField('', 'ID'), NewConstant(FListaIDClientes[i], datInteger), dboEqual),
NewBinaryExpression(NewField('', 'ID_EMPRESA'), NewConstant(FIdEmpresa, datInteger), dboEqual),
dboAnd);
if not AWhereBuilder.IsEmpty then
Expression := NewBinaryExpression(Expression, ACondicion, dboOr)
else
Expression := ACondicion;
end;
WhereClause := AWhereBuilder.ExpressionToXmlNode(AWhereBuilder.Expression);
end;
try
ATableRequestInfoArray.Add(ATableRequestInfo);
AStream := AContactosService.GetData(ATableNameArray, ATableRequestInfoArray);
if Assigned(AStream) then
begin
ADataTable := TDAMemDataTable.Create(nil);
try
ADataTable.Name := 'Clientes';
ADataTable.LocalDataStreamer := Bin2DataStreamer;
ADataTable.RemoteFetchEnabled := False;
Bin2DataStreamer.ReadDataset(AStream, ADataTable, True);
ADataTable.Open;
FListaNombresClientes.Clear;
for i := 0 to ADataTable.RecordCount - 1 do
begin
FListaNombresClientes.Add(ADataTable.FieldByName('NOMBRE').AsString);
ADataTable.Next;
end;
finally
FreeANDNil(ADataTable);
end;
end;
except
on e: Exception do
dmServer.EscribirLog(e.Message);
end;
finally
FreeANDNIL(ATableRequestInfoArray);
FreeANDNIL(ATableNameArray);
FreeANDNIL(AWhereBuilder);
end;
end;
end;
procedure TRptFacturasProforma._GenerarFactura(const ID: Integer; const VerSello: Boolean = True; const VerCopia: Boolean = True);
var
AInforme: Variant;
@ -1029,58 +200,22 @@ begin
try
tbl_Cabecera.Active := False;
tbl_Detalles.Active := False;
tbl_Vencimientos.Active := False;
tbl_Cabecera.ParamByName('ID').AsInteger := ID;
tbl_Detalles.ParamByName('ID_FACTURA').AsInteger := ID;
tbl_Vencimientos.ParamByName('ID_FACTURA').AsInteger := ID;
tbl_Cabecera.Active := True;
tbl_Detalles.Active := True;
tbl_Vencimientos.Active := True;
AInforme := DarRutaFichero(DarRutaInformes, rptFacturaCliente, tbl_Cabecera.FieldByName('ID_EMPRESA').AsString);
AInforme := DarRutaFichero(DarRutaInformes, rptFacturaProforma, tbl_Cabecera.FieldByName('ID_EMPRESA').AsString);
if VarIsNull(AInforme) then
raise Exception.Create (('Error Servidor: _GenerarFactura, no encuentra informe ' + rptFacturaCliente));
raise Exception.Create (('Error Servidor: _GenerarFactura, no encuentra informe ' + rptFacturaProforma));
frxReport.LoadFromFile(AInforme, True);
// if VerSello then
// frxReport.Variables.Variables['ShowLogotipo'] := VerSello;
// else
// frxReport.Variables.Variables['ShowLogotipo'] := 0;
//La primera impresion siempre es sin la etiqueta copia
// frxReport.Variables.Variables['VerCopia'] := 0;
frxReport.PrepareReport(False);
// frxReport.PreviewPages.Print;
{
if VerCopia then
begin
frxReport.Variables.Variables['VerCopia'] := 1;
frxReport.Variables.Variables['VerSello'] := 0; //El sello nunca saldrá en la copia
frxReport.PrepareReport(False);
end;
}
finally
FConnection.RollbackTransaction; //<--- Creo que no va a hacer falta. "PUES SI ES NECESARIO"
end;
end;
function TRptFacturasProforma._GenerarInforme(const TipoInforme: String): Binary;
var
AInforme: Variant;
begin
Result := Binary.Create;
AInforme := DarRutaFichero(DarRutaInformes, TipoInforme, IntToStr(FIdEmpresa));
if VarIsNull(AInforme) then
raise Exception.Create (('Error Servidor: _GenerarInforme, no encuentra informe ' + TipoInforme));
frxReport.LoadFromFile(AInforme, True);
IniciarParametrosInforme;
frxReport.PrepareReport(False);
frxReport.PreviewPages.SaveToStream(Result);
end;
end.

View File

@ -197,8 +197,16 @@ object srvFacturasProforma: TsrvFacturasProforma
TableField = 'ID_FACTURA_FINAL'
end
item
DatasetField = 'REFERENCIA_CLIENTE'
TableField = 'REFERENCIA_CLIENTE'
DatasetField = 'REFERENCIA_PEDIDO_CLIENTE'
TableField = 'REFERENCIA_PEDIDO_CLIENTE'
end
item
DatasetField = 'REFERENCIA_FACTURA_FINAL'
TableField = 'REFERENCIA_FACTURA_FINAL'
end
item
DatasetField = 'REFERENCIA_DEL_CLIENTE'
TableField = 'REFERENCIA_DEL_CLIENTE'
end>
end>
Name = 'FacturasProforma'
@ -392,20 +400,30 @@ object srvFacturasProforma: TsrvFacturasProforma
Size = 255
DictionaryEntry = 'FacturasProforma_DATOS_BANCARIOS'
end
item
Name = 'REFERENCIA_CLIENTE'
DataType = datString
Size = 255
end
item
Name = 'ID_PEDIDO'
DataType = datInteger
DictionaryEntry = 'FacturasProforma_ID_PEDIDO'
end
item
Name = 'REFERENCIA_PEDIDO_CLIENTE'
DataType = datString
Size = 255
end
item
Name = 'REFERENCIA_DEL_CLIENTE'
DataType = datString
Size = 255
end
item
Name = 'ID_FACTURA_FINAL'
DataType = datInteger
DictionaryEntry = 'FacturasProforma_ID_FACTURA_FINAL'
end
item
Name = 'REFERENCIA_FACTURA_FINAL'
DataType = datString
Size = 255
end>
end
item
@ -971,12 +989,6 @@ object srvFacturasProforma: TsrvFacturasProforma
Size = 255
Value = ''
end
item
Name = 'REFERENCIA_CLIENTE'
DataType = datString
Size = 255
Value = ''
end
item
Name = 'ID_PEDIDO'
DataType = datInteger
@ -1002,18 +1014,18 @@ object srvFacturasProforma: TsrvFacturasProforma
'N,'#10' PROVINCIA,'#10' CODIGO_POSTAL,'#10' FECHA_ALTA,'#10' FECHA_M' +
'ODIFICACION,'#10' USUARIO,'#10' ID_FORMA_PAGO,'#10' RECARGO_EQUIVAL' +
'ENCIA,'#10' ID_TIPO_IVA,'#10' IMPORTE_NETO,'#10' IMPORTE_PORTE,'#10' ' +
' DATOS_BANCARIOS,'#10' REFERENCIA_CLIENTE,'#10' ID_PEDIDO,'#10' ID_' +
'FACTURA_FINAL'#10' )'#10' VALUES ('#10' :ID,'#10' :ID_EMPRESA,'#10' :RE' +
'FERENCIA,'#10' :FECHA_FACTURA,'#10' :FECHA_VENCIMIENTO,'#10' :SITUA' +
'CION,'#10' :BASE_IMPONIBLE,'#10' :DESCUENTO,'#10' :IMPORTE_DESCUENT' +
'O,'#10' :DESCRIPCION_DESCUENTO,'#10' :IVA,'#10' :IMPORTE_IVA,'#10' :' +
'RE,'#10' :IMPORTE_RE,'#10' :IMPORTE_TOTAL,'#10' :OBSERVACIONES,'#10' ' +
' :ID_CLIENTE,'#10' :NIF_CIF,'#10' :NOMBRE,'#10' :ID_DIRECCION,'#10' ' +
':CALLE,'#10' :POBLACION,'#10' :PROVINCIA,'#10' :CODIGO_POSTAL,'#10' ' +
':FECHA_ALTA,'#10' :FECHA_MODIFICACION,'#10' :USUARIO,'#10' :ID_FORM' +
'A_PAGO,'#10' :RECARGO_EQUIVALENCIA,'#10' :ID_TIPO_IVA,'#10' :IMPORT' +
'E_NETO,'#10' :IMPORTE_PORTE,'#10' :DATOS_BANCARIOS,'#10' :REFERENCI' +
'A_CLIENTE,'#10' :ID_PEDIDO,'#10' :ID_FACTURA_FINAL);'#10
' DATOS_BANCARIOS,'#10' ID_PEDIDO,'#10' ID_FACTURA_FINAL'#10' )'#10' VA' +
'LUES ('#10' :ID,'#10' :ID_EMPRESA,'#10' :REFERENCIA,'#10' :FECHA_FAC' +
'TURA,'#10' :FECHA_VENCIMIENTO,'#10' :SITUACION,'#10' :BASE_IMPONIBL' +
'E,'#10' :DESCUENTO,'#10' :IMPORTE_DESCUENTO,'#10' :DESCRIPCION_DESC' +
'UENTO,'#10' :IVA,'#10' :IMPORTE_IVA,'#10' :RE,'#10' :IMPORTE_RE,'#10' ' +
' :IMPORTE_TOTAL,'#10' :OBSERVACIONES,'#10' :ID_CLIENTE,'#10' :NIF_C' +
'IF,'#10' :NOMBRE,'#10' :ID_DIRECCION,'#10' :CALLE,'#10' :POBLACION,'#10 +
' :PROVINCIA,'#10' :CODIGO_POSTAL,'#10' :FECHA_ALTA,'#10' :FECHA_' +
'MODIFICACION,'#10' :USUARIO,'#10' :ID_FORMA_PAGO,'#10' :RECARGO_EQU' +
'IVALENCIA,'#10' :ID_TIPO_IVA,'#10' :IMPORTE_NETO,'#10' :IMPORTE_POR' +
'TE,'#10' :DATOS_BANCARIOS,'#10' :ID_PEDIDO,'#10' :ID_FACTURA_FINAL)' +
';'#10
StatementType = stSQL
ColumnMappings = <>
end>
@ -1192,12 +1204,6 @@ object srvFacturasProforma: TsrvFacturasProforma
Size = 255
Value = ''
end
item
Name = 'REFERENCIA_CLIENTE'
DataType = datString
Size = 255
Value = ''
end
item
Name = 'ID_PEDIDO'
DataType = datInteger
@ -1233,9 +1239,9 @@ object srvFacturasProforma: TsrvFacturasProforma
'IO = :USUARIO,'#10' ID_FORMA_PAGO = :ID_FORMA_PAGO,'#10' RECARGO_E' +
'QUIVALENCIA = :RECARGO_EQUIVALENCIA,'#10' ID_TIPO_IVA = :ID_TIPO_' +
'IVA,'#10' IMPORTE_NETO = :IMPORTE_NETO,'#10' IMPORTE_PORTE = :IMPO' +
'RTE_PORTE,'#10' DATOS_BANCARIOS = :DATOS_BANCARIOS,'#10' REFERENCI' +
'A_CLIENTE = :REFERENCIA_CLIENTE,'#10' ID_PEDIDO = :ID_PEDIDO,'#10' ' +
' ID_FACTURA_FINAL = :ID_FACTURA_FINAL'#10' WHERE'#10' (ID = :OLD_ID);'#10
'RTE_PORTE,'#10' DATOS_BANCARIOS = :DATOS_BANCARIOS,'#10' ID_PEDIDO' +
' = :ID_PEDIDO,'#10' ID_FACTURA_FINAL = :ID_FACTURA_FINAL'#10' WHERE'#10 +
' (ID = :OLD_ID);'#10
StatementType = stSQL
ColumnMappings = <>
end>

View File

@ -46,8 +46,7 @@ implementation
uses
{Generated:} FactuGES_Invk, Dialogs, uSistemaFunc, uROClasses,
uDataModuleServer, uDatabaseUtils, uUsersManager, schFacturasProformaClient_Intf,
uRestriccionesUsuarioUtils,
uBizFacturasProformaServer; //, uRptFacturasProforma_Server;
uRestriccionesUsuarioUtils, uBizFacturasProformaServer, uRptFacturasProforma_Server;
procedure Create_srvFacturasProforma(out anInstance : IUnknown);
begin
@ -87,31 +86,27 @@ begin
end;
function TsrvFacturasProforma.GenerarInformeEnPDF(const ListaID: TIntegerArray): Binary;
//var
// AReportGenerator : TRptFacturasProforma;
var
AReportGenerator : TRptFacturasProforma;
begin
{
AReportGenerator := TRptFacturasProforma.Create(nil);
try
Result := AReportGenerator.GenerarFacturaEnPDF(ListaID);
finally
FreeAndNIL(AReportGenerator);
end;
}
end;
function TsrvFacturasProforma.GenerarInforme(const ListaID: TIntegerArray): Binary;
//var
// AReportGenerator : TRptFacturasProforma;
var
AReportGenerator : TRptFacturasProforma;
begin
{
AReportGenerator := TRptFacturasProforma.Create(nil);
try
Result := AReportGenerator.GenerarFactura(ListaID);
finally
FreeAndNIL(AReportGenerator);
end;
}
end;
initialization

View File

@ -66,7 +66,8 @@ requires
JvCoreD11R,
JvSystemD11R,
JvPageCompsD11R,
Articulos_view;
Articulos_view,
FacProforma_FacCli_relation;
contains
uFacturasProformaViewRegister in 'uFacturasProformaViewRegister.pas',

View File

@ -68,6 +68,7 @@
<DCCReference Include="..\..\Lib\dxCoreD11.dcp" />
<DCCReference Include="..\..\Lib\dxGDIPlusD11.dcp" />
<DCCReference Include="..\..\Lib\dxThemeD11.dcp" />
<DCCReference Include="..\..\Lib\FacProforma_FacCli_relation.dcp" />
<DCCReference Include="..\..\Lib\FacturasProforma_controller.dcp" />
<DCCReference Include="..\..\Lib\FacturasProforma_model.dcp" />
<DCCReference Include="..\..\Lib\GUIBase.dcp" />

View File

@ -240,28 +240,28 @@ inherited fEditorFacturaProforma: TfEditorFacturaProforma
ExplicitHeight = 290
inherited ToolBar1: TToolBar
Width = 809
Height = 51
Height = 46
ExplicitWidth = 809
ExplicitHeight = 51
ExplicitHeight = 46
inherited ToolButton3: TToolButton
Wrap = False
end
inherited ToolButton4: TToolButton
Left = 278
Top = 0
Wrap = True
ExplicitLeft = 278
ExplicitTop = 0
end
inherited FontName: TJvFontComboBox
Left = 334
Top = 0
ExplicitLeft = 334
ExplicitTop = 0
end
inherited ToolButton14: TToolButton
Left = 479
Top = 0
ExplicitLeft = 479
Left = 0
Wrap = False
ExplicitLeft = 0
end
inherited FontName: TJvFontComboBox
Left = 65
Top = 22
ExplicitLeft = 399
ExplicitTop = 0
end
inherited FontSize: TEdit
@ -286,49 +286,46 @@ inherited fEditorFacturaProforma: TfEditorFacturaProforma
ExplicitTop = 0
ExplicitHeight = 27
end
inherited ToolButton11: TToolButton
inherited ToolButton6: TToolButton
Left = 0
Top = 27
ExplicitLeft = 0
ExplicitTop = 27
end
inherited ToolButton12: TToolButton
Left = 141
Top = 27
Wrap = False
ExplicitLeft = 141
ExplicitTop = 27
ExplicitHeight = 22
end
inherited ToolButton9: TToolButton
Left = 149
Top = 27
ExplicitLeft = 149
ExplicitTop = 27
end
inherited ToolButton10: TToolButton
Left = 294
Top = 27
ExplicitLeft = 294
ExplicitTop = 27
end
inherited ToolButton6: TToolButton
Left = 419
Top = 27
ExplicitLeft = 419
ExplicitTop = 27
end
inherited ToolButton7: TToolButton
Left = 485
Left = 66
Top = 27
Wrap = False
ExplicitLeft = 485
ExplicitLeft = 66
ExplicitTop = 27
end
inherited ToolButton8: TToolButton
Left = 552
Left = 133
Top = 27
ExplicitLeft = 552
ExplicitLeft = 133
ExplicitTop = 27
end
inherited ToolButton12: TToolButton
Left = 216
Top = 27
ExplicitLeft = 216
ExplicitTop = 27
end
inherited ToolButton9: TToolButton
Left = 224
Top = 27
ExplicitLeft = 224
ExplicitTop = 27
end
inherited ToolButton10: TToolButton
Left = 369
Top = 27
ExplicitLeft = 369
ExplicitTop = 27
end
inherited ToolButton11: TToolButton
Left = 494
Top = 27
ExplicitLeft = 494
ExplicitTop = 27
end
end

View File

@ -328,7 +328,7 @@ begin
AVerCopia := True;
//Preguntamos si desea que en las facturas se vea el Sello
if ElegirOpcionesImpresionFacturaProforma(AVerSello, AVerCopia) then
// if ElegirOpcionesImpresionFacturaProforma(AVerSello, AVerCopia) then
FController.Print(FFactura, AllItems, AVerSello, AVerCopia);
end;
@ -406,7 +406,7 @@ begin
AVerCopia := True;
//Preguntamos si desea que en las facturas se vea el Sello
if ElegirOpcionesImpresionFacturaProforma(AVerSello, AVerCopia) then
// if ElegirOpcionesImpresionFacturaProforma(AVerSello, AVerCopia) then
FController.Preview(FFactura, AllItems, AVerSello, AVerCopia);
end;

View File

@ -41,6 +41,7 @@ inherited fEditorFacturasProforma: TfEditorFacturasProforma
ExplicitWidth = 842
inherited TBXItem2: TTBXItem
Action = actNuevaFactura
ImageIndex = 22
end
object TBXItem40: TTBXItem [13]
Action = actEnviarEMail
@ -64,7 +65,13 @@ inherited fEditorFacturasProforma: TfEditorFacturasProforma
end
inherited TBXTMain2: TTBXToolbar
Left = 427
Visible = True
ExplicitLeft = 427
ExplicitWidth = 117
object TBXItem38: TTBXItem
Action = actGenerarFactura
DisplayMode = nbdmImageAndText
end
end
end
inherited StatusBar: TJvStatusBar
@ -213,6 +220,13 @@ inherited fEditorFacturasProforma: TfEditorFacturasProforma
OnExecute = actEnviarEMailExecute
OnUpdate = actEnviarEMailUpdate
end
object actGenerarFactura: TAction
Category = 'Archivo'
Caption = 'Generar factura'
ImageIndex = 25
OnExecute = actGenerarFacturaExecute
OnUpdate = actGenerarFacturaUpdate
end
end
inherited SmallImages: TPngImageList [5]
PngImages = <
@ -937,6 +951,25 @@ inherited fEditorFacturasProforma: TfEditorFacturasProforma
064200A70120096201BA0100A6C62916A56F74520000000049454E44AE426082}
Name = 'PngImage24'
Background = clWindow
end
item
PngImage.Data = {
89504E470D0A1A0A0000000D49484452000000100000001008060000001FF3FF
61000000097048597300000B3A00000B3A01647F570D0000015D4944415478DA
63FCFFFF3F030830323232C0C0CEB58DCA2F6E6CBDF3FEF129B818C30F061490
3FFF3F58032336032E9C58FD9F8B47904155DB192EF6FFD72B867F9F2F31FCB9
E3CA3063061E0380B6DBB373F01CB076CD66606165C7AAB96001923E6403809A
9979F925FEC8299B32482B18E2D40C16C7614032D08039164EA97017810CF875
5E1CAC196F18EC5AD7C40F74FA073DB36006411179B8E6FF3F5F32FCBEA687A2
196B18000D681797D6AAD06008852B64D5BA0434E4251833000DFBFBA2087718
2CEF76FFFFE1E119865F5FDF81F9B993706BC61906D0589056D7D07F2223CE8D
53332103DAC5C4A52B749438706AC6170BECACAC6C3FF4547918F8397FE3D48C
3F1A79F9E7982A7F66F8FBBA16A7669C061CDB35E1BF9CAA1D83C84B23BC9AB1
1A008C466BA0F38F5888D632CC9AF907AF66AC065C383AF73FC7B7150C3B97ED
21A819AB0137CE2CFBBF776E2643CE8C4F0435231B00004A4C11F0D3652A8300
00000049454E44AE426082}
Name = 'PngImage25'
Background = clWindow
end>
Left = 395
Bitmap = {}

View File

@ -36,12 +36,16 @@ type
Enviarporemail1: TMenuItem;
JSInformesDialog: TJSDialog;
frViewFacturasProforma1: TfrViewFacturasProforma;
actGenerarFactura: TAction;
TBXItem38: TTBXItem;
procedure FormShow(Sender: TObject);
procedure actEliminarUpdate(Sender: TObject);
procedure actNuevaFacturaExecute(Sender: TObject);
procedure actEnviarEMailUpdate(Sender: TObject);
procedure actEnviarEMailExecute(Sender: TObject);
procedure OnListaAnosChange(Sender: TObject; const Text: string);
procedure actGenerarFacturaExecute(Sender: TObject);
procedure actGenerarFacturaUpdate(Sender: TObject);
private
FFacturas: IBizFacturaProforma;
@ -75,10 +79,10 @@ implementation
uses
uDataModuleFacturasProforma, uDataModuleUsuarios, uFactuGES_App,
// uAlbaranesClienteController, uGenerarFacturasCliAlbCliUtils, //uGenerarFacturasCliPreCliUtils,
// uAlbaranesClienteController, //uGenerarFacturasCliPreCliUtils,
// uBizAlbaranesCliente, uGestorInformesController,
uDialogOpcionesImpresionFacturasProforma, uEditorBase, uGridStatusUtils,
uDBSelectionListUtils, udialogUtils;
uDBSelectionListUtils, udialogUtils, uGenerarFacturasCliFacProformaUtils;
{$R *.dfm}
@ -127,6 +131,22 @@ begin
(Sender as TAction).Enabled := False;
end;
procedure TfEditorFacturasProforma.actGenerarFacturaExecute(Sender: TObject);
begin
GenerarFacturaCliFacProforma(Facturas.ID);
actRefrescar.Execute;
end;
procedure TfEditorFacturasProforma.actGenerarFacturaUpdate(Sender: TObject);
begin
inherited;
(Sender as TAction).Enabled := HayDatos and
not (ViewGrid.NumSeleccionados > 1) and
ViewGrid.esSeleccionCeldaDatos and
((FFacturas.ID_FACTURA_FINAL = 0));
end;
procedure TfEditorFacturasProforma.actNuevaFacturaExecute(Sender: TObject);
begin
actNuevo.Execute;

View File

@ -21,7 +21,7 @@ begin
EditorRegistry.RegisterClass(TfEditorElegirFacturasProforma, 'EditorElegirFacturasProforma');
EditorRegistry.RegisterClass(TfEditorFacturasProformaPreview, 'EditorFacturasProformaPreview');
EditorRegistry.RegisterClass(TfDialogOpcionesImpresionFacturasProforma, 'DialogOpcionesImpresionFacturasProforma');
EditorRegistry.RegisterClass(TfDialogListaFacturasProformaEnvioEMail, 'DialogListaFacturasEnvioEMail');
EditorRegistry.RegisterClass(TfDialogListaFacturasProformaEnvioEMail, 'DialogListaFacturasProformaEnvioEMail');
end;
procedure UnregisterViews;

View File

@ -1,6 +1,6 @@
inherited frViewFacturaProforma: TfrViewFacturaProforma
Width = 992
Height = 644
Width = 451
Height = 304
Align = alClient
OnCreate = CustomViewCreate
OnDestroy = CustomViewDestroy
@ -9,19 +9,17 @@ inherited frViewFacturaProforma: TfrViewFacturaProforma
object dxLayoutControl1: TdxLayoutControl
Left = 0
Top = 0
Width = 992
Height = 644
Width = 451
Height = 304
Align = alClient
ParentBackground = True
TabOrder = 0
TabStop = False
AutoContentSizes = [acsWidth, acsHeight]
LookAndFeel = dxLayoutOfficeLookAndFeel1
ExplicitWidth = 451
ExplicitHeight = 304
DesignSize = (
992
644)
451
304)
object eReferencia: TcxDBTextEdit
Left = 124
Top = 30
@ -132,7 +130,7 @@ inherited frViewFacturaProforma: TfrViewFacturaProforma
Width = 269
end
object bFormasPago: TButton
Left = 416
Left = 172
Top = 103
Width = 132
Height = 23
@ -189,7 +187,7 @@ inherited frViewFacturaProforma: TfrViewFacturaProforma
Width = 275
end
inline frViewDatosYSeleccionClienteFacturaProforma1: TfrViewDatosYSeleccionClienteFacturaProforma
Left = 587
Left = 343
Top = 36
Width = 387
Height = 180
@ -201,14 +199,15 @@ inherited frViewFacturaProforma: TfrViewFacturaProforma
ParentFont = False
TabOrder = 6
ReadOnly = False
ExplicitLeft = 587
ExplicitLeft = 343
ExplicitTop = 36
ExplicitWidth = 387
ExplicitHeight = 180
inherited dxLayoutControl1: TdxLayoutControl
Width = 387
Height = 180
ExplicitWidth = 101
ExplicitWidth = 387
ExplicitHeight = 180
DesignSize = (
387
180)
@ -221,20 +220,20 @@ inherited frViewFacturaProforma: TfrViewFacturaProforma
Width = 224
end
inherited edtNIFCIF: TcxDBTextEdit
Left = 270
Left = 171
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
ExplicitLeft = 270
ExplicitLeft = 171
end
inherited Button3: TBitBtn
Left = 181
ExplicitLeft = 181
Left = 82
ExplicitLeft = 82
end
inherited Button4: TButton
Left = 350
ExplicitLeft = 350
Left = 251
ExplicitLeft = 251
end
inherited edtDireccion: TcxMemo
Style.LookAndFeel.SkinName = ''
@ -307,7 +306,6 @@ inherited frViewFacturaProforma: TfrViewFacturaProforma
end
object dxLayoutControl1Item3: TdxLayoutItem
Caption = 'Cuenta bancaria:'
Visible = False
Control = cbCuentaBancaria
ControlOptions.ShowBorder = False
end

View File

@ -166,6 +166,27 @@ inherited frViewFacturasProforma: TfrViewFacturasProforma
HeaderAlignmentHorz = taRightJustify
Width = 128
end
object cxGridViewREFERENCIA_PEDIDO_CLIENTE: TcxGridDBColumn
Caption = 'Ref. Pedido Cliente'
DataBinding.FieldName = 'REFERENCIA_PEDIDO_CLIENTE'
PropertiesClassName = 'TcxTextEditProperties'
Properties.Alignment.Horz = taRightJustify
HeaderAlignmentHorz = taRightJustify
end
object cxGridViewREFERENCIA_DEL_CLIENTE: TcxGridDBColumn
Caption = 'Ref. ped. del cliente'
DataBinding.FieldName = 'REFERENCIA_DEL_CLIENTE'
PropertiesClassName = 'TcxTextEditProperties'
Properties.Alignment.Horz = taRightJustify
HeaderAlignmentHorz = taRightJustify
end
object cxGridViewREFERENCIA_FACTURA_FINAL: TcxGridDBColumn
Caption = 'Ref. factura cliente'
DataBinding.FieldName = 'REFERENCIA_FACTURA_FINAL'
PropertiesClassName = 'TcxTextEditProperties'
Properties.Alignment.Horz = taRightJustify
HeaderAlignmentHorz = taRightJustify
end
end
inherited cxGridLevel: TcxGridLevel
Caption = 'Todas'

View File

@ -56,6 +56,9 @@ type
cxGridViewFECHA_VENCIMIENTO: TcxGridDBColumn;
cxGridViewRE: TcxGridDBColumn;
cxGridViewIMPORTE_RE: TcxGridDBColumn;
cxGridViewREFERENCIA_PEDIDO_CLIENTE: TcxGridDBColumn;
cxGridViewREFERENCIA_FACTURA_FINAL: TcxGridDBColumn;
cxGridViewREFERENCIA_DEL_CLIENTE: TcxGridDBColumn;
procedure cxGridViewStylesGetContentStyle(Sender: TcxCustomGridTableView;
ARecord: TcxCustomGridRecord; AItem: TcxCustomGridTableItem;
out AStyle: TcxStyle);

View File

@ -14,4 +14,4 @@ END
/* C:\Codigo\Source\Modulos\Informe margen por articulo\Data\uDataModuleInfMargenArticulo.dfm */
/* C:\Codigo\Source\Modulos\Informe margen por articulo\Data\InfMargenArticulo_data.res */
/* c:\temp\dtf2FC.tmp */
/* c:\temp\dtf338.tmp */

View File

@ -13,4 +13,4 @@ BEGIN
END
/* C:\Codigo\Source\Modulos\Informe margen por articulo\Model\InfMargenArticulo_model.res */
/* c:\temp\dtf2FA.tmp */
/* c:\temp\dtf336.tmp */

View File

@ -16,4 +16,4 @@ END
/* C:\Codigo\Source\Modulos\Informe margen por articulo\Views\uViewInfMargenArticulo.dfm */
/* C:\Codigo\Source\Modulos\Informe margen por articulo\Views\uEditorInfMargenArticulo.dfm */
/* C:\Codigo\Source\Modulos\Informe margen por articulo\Views\InfMargenArticulo_view.res */
/* c:\temp\dtf300.tmp */
/* c:\temp\dtf33C.tmp */

View File

@ -14,4 +14,4 @@ END
/* C:\Codigo\Source\Modulos\Informe ventas por articulo\Data\uDataModuleInfVentasArticulo.dfm */
/* C:\Codigo\Source\Modulos\Informe ventas por articulo\Data\InfVentasArticulo_data.res */
/* c:\temp\dtf2F2.tmp */
/* c:\temp\dtf32E.tmp */

View File

@ -13,4 +13,4 @@ BEGIN
END
/* C:\Codigo\Source\Modulos\Informe ventas por articulo\Model\InfVentasArticulo_model.res */
/* c:\temp\dtf2F0.tmp */
/* c:\temp\dtf32C.tmp */

View File

@ -19,4 +19,4 @@ END
/* C:\Codigo\Source\Modulos\Informe ventas por articulo\Views\uViewInfVentasAlbArticulo.dfm */
/* C:\Codigo\Source\Modulos\Informe ventas por articulo\Views\uEditorInfVentasAlbArticulo.dfm */
/* C:\Codigo\Source\Modulos\Informe ventas por articulo\Views\InfVentasArticulo_view.res */
/* c:\temp\dtf2F6.tmp */
/* c:\temp\dtf332.tmp */

View File

@ -13,4 +13,4 @@ BEGIN
END
/* C:\Codigo\Source\Modulos\Informes base\Controller\InformesBase_controller.res */
/* c:\temp\dtf2E6.tmp */
/* c:\temp\dtf322.tmp */

View File

@ -14,4 +14,4 @@ END
/* C:\Codigo\Source\Modulos\Informes base\Data\uDataModuleInformes.dfm */
/* C:\Codigo\Source\Modulos\Informes base\Data\Informes_data.res */
/* c:\temp\dtf2E0.tmp */
/* c:\temp\dtf31E.tmp */

View File

@ -13,4 +13,4 @@ BEGIN
END
/* C:\Codigo\Source\Modulos\Informes base\Model\Informes_model.res */
/* c:\temp\dtf2DE.tmp */
/* c:\temp\dtf31C.tmp */

View File

@ -15,4 +15,4 @@ END
/* C:\Codigo\Source\Modulos\Informes base\Views\uViewInformes.dfm */
/* C:\Codigo\Source\Modulos\Informes base\Views\uEditorInformes.dfm */
/* C:\Codigo\Source\Modulos\Informes base\Views\Informes_view.res */
/* c:\temp\dtf2EA.tmp */
/* c:\temp\dtf326.tmp */

View File

@ -13,4 +13,4 @@ BEGIN
END
/* C:\Codigo\Source\Modulos\Pedidos de cliente\Controller\PedidosCliente_controller.RES */
/* c:\temp\dtf37A.tmp */
/* c:\temp\dtf3B6.tmp */

View File

@ -14,4 +14,4 @@ END
/* C:\Codigo\Source\Modulos\Pedidos de cliente\Data\uDataModulePedidosCliente.dfm */
/* C:\Codigo\Source\Modulos\Pedidos de cliente\Data\PedidosCliente_data.RES */
/* c:\temp\dtf324.tmp */
/* c:\temp\dtf360.tmp */

View File

@ -13,4 +13,4 @@ BEGIN
END
/* C:\Codigo\Source\Modulos\Pedidos de cliente\Model\PedidosCliente_model.RES */
/* c:\temp\dtf322.tmp */
/* c:\temp\dtf35E.tmp */

View File

@ -23,6 +23,7 @@
<Projects Include="..\Contactos\Views\Contactos_view.dproj" />
<Projects Include="..\Facturas de cliente\Views\FacturasCliente_view.dproj" />
<Projects Include="..\Facturas de proveedor\Controller\FacturasProveedor_controller.dproj" />
<Projects Include="..\Facturas proforma\Data\FacturasProforma_data.dproj" />
<Projects Include="..\Inventario\Controller\Inventario_controller.dproj" />
<Projects Include="..\Inventario\Data\Inventario_data.dproj" />
<Projects Include="..\Inventario\Views\Inventario_view.dproj" />
@ -34,6 +35,7 @@
<Projects Include="..\ProcesoPresupuestoCliente\Plugin\ProcesoPresupuestosCliente_plugin.dproj" />
<Projects Include="..\ProcesoPresupuestoCliente\Views\ProcesoPresupuestosCliente_view.dproj" />
<Projects Include="..\Relaciones\Pedidos de cliente - Albaranes de cliente\PedCli_AlbCli_relation.dproj" />
<Projects Include="..\Relaciones\Pedidos de cliente - Facturas proforma\PedCli_FacProforma_relation.dproj" />
<Projects Include="..\Relaciones\Pedidos de cliente - Pedidos a proveedor\PedCli_PedProv_relation.dproj" />
<Projects Include="..\Relaciones\Pedidos de proveedor - Albaranes de proveedor\PedProv_AlbProv_relation.dproj" />
<Projects Include="Controller\PedidosCliente_controller.dproj" />
@ -381,14 +383,32 @@
<Target Name="ProcesoPresupuestosCliente_plugin:Make">
<MSBuild Projects="..\ProcesoPresupuestoCliente\Plugin\ProcesoPresupuestosCliente_plugin.dproj" Targets="Make" />
</Target>
<Target Name="PedCli_FacProforma_relation">
<MSBuild Projects="..\Relaciones\Pedidos de cliente - Facturas proforma\PedCli_FacProforma_relation.dproj" Targets="" />
</Target>
<Target Name="PedCli_FacProforma_relation:Clean">
<MSBuild Projects="..\Relaciones\Pedidos de cliente - Facturas proforma\PedCli_FacProforma_relation.dproj" Targets="Clean" />
</Target>
<Target Name="PedCli_FacProforma_relation:Make">
<MSBuild Projects="..\Relaciones\Pedidos de cliente - Facturas proforma\PedCli_FacProforma_relation.dproj" Targets="Make" />
</Target>
<Target Name="FacturasProforma_data">
<MSBuild Projects="..\Facturas proforma\Data\FacturasProforma_data.dproj" Targets="" />
</Target>
<Target Name="FacturasProforma_data:Clean">
<MSBuild Projects="..\Facturas proforma\Data\FacturasProforma_data.dproj" Targets="Clean" />
</Target>
<Target Name="FacturasProforma_data:Make">
<MSBuild Projects="..\Facturas proforma\Data\FacturasProforma_data.dproj" Targets="Make" />
</Target>
<Target Name="Build">
<CallTarget Targets="Base;ApplicationBase;GUIBase;Contactos_model;Contactos_data;Contactos_controller;Contactos_view;Articulos_model;Articulos_data;Articulos_controller;Articulos_view;PedidosCliente_model;PedidosCliente_data;PedidosCliente_controller;AlbaranesProveedor_controller;Inventario_controller;PedProv_AlbProv_relation;PedCli_AlbCli_relation;PedCli_PedProv_relation;FacturasProveedor_controller;PedidosCliente_view;PedidosCliente_plugin;AlbaranesProveedor_data;AlbaranesCliente_data;FactuGES;FactuGES_Server;Inventario_data;Inventario_view;AlbaranesProveedor_view;FacturasCliente_view;PedidosProveedor_model;PedidosProveedor_data;PedidosProveedor_controller;PedidosProveedor_plugin;ProcesoPresupuestosCliente_controller;ProcesoPresupuestosCliente_view;ProcesoPresupuestosCliente_plugin" />
<CallTarget Targets="Base;ApplicationBase;GUIBase;Contactos_model;Contactos_data;Contactos_controller;Contactos_view;Articulos_model;Articulos_data;Articulos_controller;Articulos_view;PedidosCliente_model;PedidosCliente_data;PedidosCliente_controller;AlbaranesProveedor_controller;Inventario_controller;PedProv_AlbProv_relation;PedCli_AlbCli_relation;PedCli_PedProv_relation;FacturasProveedor_controller;PedidosCliente_view;PedidosCliente_plugin;AlbaranesProveedor_data;AlbaranesCliente_data;FactuGES;FactuGES_Server;Inventario_data;Inventario_view;AlbaranesProveedor_view;FacturasCliente_view;PedidosProveedor_model;PedidosProveedor_data;PedidosProveedor_controller;PedidosProveedor_plugin;ProcesoPresupuestosCliente_controller;ProcesoPresupuestosCliente_view;ProcesoPresupuestosCliente_plugin;PedCli_FacProforma_relation;FacturasProforma_data" />
</Target>
<Target Name="Clean">
<CallTarget Targets="Base:Clean;ApplicationBase:Clean;GUIBase:Clean;Contactos_model:Clean;Contactos_data:Clean;Contactos_controller:Clean;Contactos_view:Clean;Articulos_model:Clean;Articulos_data:Clean;Articulos_controller:Clean;Articulos_view:Clean;PedidosCliente_model:Clean;PedidosCliente_data:Clean;PedidosCliente_controller:Clean;AlbaranesProveedor_controller:Clean;Inventario_controller:Clean;PedProv_AlbProv_relation:Clean;PedCli_AlbCli_relation:Clean;PedCli_PedProv_relation:Clean;FacturasProveedor_controller:Clean;PedidosCliente_view:Clean;PedidosCliente_plugin:Clean;AlbaranesProveedor_data:Clean;AlbaranesCliente_data:Clean;FactuGES:Clean;FactuGES_Server:Clean;Inventario_data:Clean;Inventario_view:Clean;AlbaranesProveedor_view:Clean;FacturasCliente_view:Clean;PedidosProveedor_model:Clean;PedidosProveedor_data:Clean;PedidosProveedor_controller:Clean;PedidosProveedor_plugin:Clean;ProcesoPresupuestosCliente_controller:Clean;ProcesoPresupuestosCliente_view:Clean;ProcesoPresupuestosCliente_plugin:Clean" />
<CallTarget Targets="Base:Clean;ApplicationBase:Clean;GUIBase:Clean;Contactos_model:Clean;Contactos_data:Clean;Contactos_controller:Clean;Contactos_view:Clean;Articulos_model:Clean;Articulos_data:Clean;Articulos_controller:Clean;Articulos_view:Clean;PedidosCliente_model:Clean;PedidosCliente_data:Clean;PedidosCliente_controller:Clean;AlbaranesProveedor_controller:Clean;Inventario_controller:Clean;PedProv_AlbProv_relation:Clean;PedCli_AlbCli_relation:Clean;PedCli_PedProv_relation:Clean;FacturasProveedor_controller:Clean;PedidosCliente_view:Clean;PedidosCliente_plugin:Clean;AlbaranesProveedor_data:Clean;AlbaranesCliente_data:Clean;FactuGES:Clean;FactuGES_Server:Clean;Inventario_data:Clean;Inventario_view:Clean;AlbaranesProveedor_view:Clean;FacturasCliente_view:Clean;PedidosProveedor_model:Clean;PedidosProveedor_data:Clean;PedidosProveedor_controller:Clean;PedidosProveedor_plugin:Clean;ProcesoPresupuestosCliente_controller:Clean;ProcesoPresupuestosCliente_view:Clean;ProcesoPresupuestosCliente_plugin:Clean;PedCli_FacProforma_relation:Clean;FacturasProforma_data:Clean" />
</Target>
<Target Name="Make">
<CallTarget Targets="Base:Make;ApplicationBase:Make;GUIBase:Make;Contactos_model:Make;Contactos_data:Make;Contactos_controller:Make;Contactos_view:Make;Articulos_model:Make;Articulos_data:Make;Articulos_controller:Make;Articulos_view:Make;PedidosCliente_model:Make;PedidosCliente_data:Make;PedidosCliente_controller:Make;AlbaranesProveedor_controller:Make;Inventario_controller:Make;PedProv_AlbProv_relation:Make;PedCli_AlbCli_relation:Make;PedCli_PedProv_relation:Make;FacturasProveedor_controller:Make;PedidosCliente_view:Make;PedidosCliente_plugin:Make;AlbaranesProveedor_data:Make;AlbaranesCliente_data:Make;FactuGES:Make;FactuGES_Server:Make;Inventario_data:Make;Inventario_view:Make;AlbaranesProveedor_view:Make;FacturasCliente_view:Make;PedidosProveedor_model:Make;PedidosProveedor_data:Make;PedidosProveedor_controller:Make;PedidosProveedor_plugin:Make;ProcesoPresupuestosCliente_controller:Make;ProcesoPresupuestosCliente_view:Make;ProcesoPresupuestosCliente_plugin:Make" />
<CallTarget Targets="Base:Make;ApplicationBase:Make;GUIBase:Make;Contactos_model:Make;Contactos_data:Make;Contactos_controller:Make;Contactos_view:Make;Articulos_model:Make;Articulos_data:Make;Articulos_controller:Make;Articulos_view:Make;PedidosCliente_model:Make;PedidosCliente_data:Make;PedidosCliente_controller:Make;AlbaranesProveedor_controller:Make;Inventario_controller:Make;PedProv_AlbProv_relation:Make;PedCli_AlbCli_relation:Make;PedCli_PedProv_relation:Make;FacturasProveedor_controller:Make;PedidosCliente_view:Make;PedidosCliente_plugin:Make;AlbaranesProveedor_data:Make;AlbaranesCliente_data:Make;FactuGES:Make;FactuGES_Server:Make;Inventario_data:Make;Inventario_view:Make;AlbaranesProveedor_view:Make;FacturasCliente_view:Make;PedidosProveedor_model:Make;PedidosProveedor_data:Make;PedidosProveedor_controller:Make;PedidosProveedor_plugin:Make;ProcesoPresupuestosCliente_controller:Make;ProcesoPresupuestosCliente_view:Make;ProcesoPresupuestosCliente_plugin:Make;PedCli_FacProforma_relation:Make;FacturasProforma_data:Make" />
</Target>
<Import Condition="Exists('$(MSBuildBinPath)\Borland.Group.Targets')" Project="$(MSBuildBinPath)\Borland.Group.Targets" />
</Project>

View File

@ -14,4 +14,4 @@ END
/* C:\Codigo\Source\Modulos\Pedidos de cliente\Plugin\uPluginPedidosCliente.dfm */
/* C:\Codigo\Source\Modulos\Pedidos de cliente\Plugin\PedidosCliente_plugin.RES */
/* c:\temp\dtf394.tmp */
/* c:\temp\dtf3D4.tmp */

View File

@ -85,7 +85,8 @@ requires
Almacenes_model,
Almacenes_controller,
PedCli_PedProv_relation,
PedidosProveedor_model;
PedidosProveedor_model,
PedCli_FacProforma_relation;
contains
uPedidosClienteViewRegister in 'uPedidosClienteViewRegister.pas',

View File

@ -49,67 +49,68 @@
<DelphiCompile Include="PedidosCliente_view.dpk">
<MainSource>MainSource</MainSource>
</DelphiCompile>
<DCCReference Include="..\..\Lib\adortl.dcp" />
<DCCReference Include="..\..\Lib\Almacenes_controller.dcp" />
<DCCReference Include="..\..\Lib\Almacenes_model.dcp" />
<DCCReference Include="..\..\Lib\Articulos_view.dcp" />
<DCCReference Include="..\..\Lib\bdertl.dcp" />
<DCCReference Include="..\..\Lib\Contactos_controller.dcp" />
<DCCReference Include="..\..\Lib\Contactos_model.dcp" />
<DCCReference Include="..\..\Lib\Contactos_view.dcp" />
<DCCReference Include="..\..\Lib\cxDataD11.dcp" />
<DCCReference Include="..\..\Lib\cxEditorsD11.dcp" />
<DCCReference Include="..\..\Lib\cxExportD11.dcp" />
<DCCReference Include="..\..\Lib\cxExtEditorsD11.dcp" />
<DCCReference Include="..\..\Lib\cxGridD11.dcp" />
<DCCReference Include="..\..\Lib\cxLibraryD11.dcp" />
<DCCReference Include="..\..\Lib\cxPageControlD11.dcp" />
<DCCReference Include="..\..\Lib\DataAbstract_Core_D11.dcp" />
<DCCReference Include="..\..\Lib\dbrtl.dcp" />
<DCCReference Include="..\..\Lib\dclcxLibraryD11.dcp" />
<DCCReference Include="..\..\Lib\designide.dcp" />
<DCCReference Include="..\..\Lib\dsnap.dcp" />
<DCCReference Include="..\..\Lib\dxComnD11.dcp" />
<DCCReference Include="..\..\Lib\dxCoreD11.dcp" />
<DCCReference Include="..\..\Lib\dxGDIPlusD11.dcp" />
<DCCReference Include="..\..\Lib\dxLayoutControlD11.dcp" />
<DCCReference Include="..\..\Lib\dxPSCoreD11.dcp" />
<DCCReference Include="..\..\Lib\dxPScxCommonD11.dcp" />
<DCCReference Include="..\..\Lib\dxPScxGrid6LnkD11.dcp" />
<DCCReference Include="..\..\Lib\dxPSLnksD11.dcp" />
<DCCReference Include="..\..\Lib\dxThemeD11.dcp" />
<DCCReference Include="..\..\Lib\fqb110.dcp" />
<DCCReference Include="..\..\Lib\frx11.dcp" />
<DCCReference Include="..\..\Lib\frxe11.dcp" />
<DCCReference Include="..\..\Lib\fs11.dcp" />
<DCCReference Include="..\..\Lib\GestorInformes_controller.dcp" />
<DCCReference Include="..\..\Lib\GUIBase.dcp" />
<DCCReference Include="..\..\Lib\GUISDK_D11R.dcp" />
<DCCReference Include="..\..\Lib\Jcl.dcp" />
<DCCReference Include="..\..\Lib\JclVcl.dcp" />
<DCCReference Include="..\..\Lib\JvCoreD11R.dcp" />
<DCCReference Include="..\..\Lib\JvCtrlsD11R.dcp" />
<DCCReference Include="..\..\Lib\JvPageCompsD11R.dcp" />
<DCCReference Include="..\..\Lib\JvStdCtrlsD11R.dcp" />
<DCCReference Include="..\..\Lib\JvSystemD11R.dcp" />
<DCCReference Include="..\..\Lib\PedCli_AlbCli_relation.dcp" />
<DCCReference Include="..\..\Lib\PedCli_PedProv_relation.dcp" />
<DCCReference Include="..\..\Lib\PedidosCliente_controller.dcp" />
<DCCReference Include="..\..\Lib\PedidosCliente_model.dcp" />
<DCCReference Include="..\..\Lib\PedidosProveedor_model.dcp" />
<DCCReference Include="..\..\Lib\PngComponentsD10.dcp" />
<DCCReference Include="..\..\Lib\PNG_D10.dcp" />
<DCCReference Include="..\..\Lib\RemObjects_Core_D11.dcp" />
<DCCReference Include="..\..\Lib\rtl.dcp" />
<DCCReference Include="..\..\Lib\tb2k_d10.dcp" />
<DCCReference Include="..\..\Lib\tbx_d10.dcp" />
<DCCReference Include="..\..\Lib\vcl.dcp" />
<DCCReference Include="..\..\Lib\vclactnband.dcp" />
<DCCReference Include="..\..\Lib\vcldb.dcp" />
<DCCReference Include="..\..\Lib\vcljpg.dcp" />
<DCCReference Include="..\..\Lib\vclshlctrls.dcp" />
<DCCReference Include="..\..\Lib\vclx.dcp" />
<DCCReference Include="..\..\Lib\xmlrtl.dcp" />
<DCCReference Include="..\adortl.dcp" />
<DCCReference Include="..\Almacenes_controller.dcp" />
<DCCReference Include="..\Almacenes_model.dcp" />
<DCCReference Include="..\Articulos_view.dcp" />
<DCCReference Include="..\bdertl.dcp" />
<DCCReference Include="..\Contactos_controller.dcp" />
<DCCReference Include="..\Contactos_model.dcp" />
<DCCReference Include="..\Contactos_view.dcp" />
<DCCReference Include="..\cxDataD11.dcp" />
<DCCReference Include="..\cxEditorsD11.dcp" />
<DCCReference Include="..\cxExportD11.dcp" />
<DCCReference Include="..\cxExtEditorsD11.dcp" />
<DCCReference Include="..\cxGridD11.dcp" />
<DCCReference Include="..\cxLibraryD11.dcp" />
<DCCReference Include="..\cxPageControlD11.dcp" />
<DCCReference Include="..\DataAbstract_Core_D11.dcp" />
<DCCReference Include="..\dbrtl.dcp" />
<DCCReference Include="..\dclcxLibraryD11.dcp" />
<DCCReference Include="..\designide.dcp" />
<DCCReference Include="..\dsnap.dcp" />
<DCCReference Include="..\dxComnD11.dcp" />
<DCCReference Include="..\dxCoreD11.dcp" />
<DCCReference Include="..\dxGDIPlusD11.dcp" />
<DCCReference Include="..\dxLayoutControlD11.dcp" />
<DCCReference Include="..\dxPSCoreD11.dcp" />
<DCCReference Include="..\dxPScxCommonD11.dcp" />
<DCCReference Include="..\dxPScxGrid6LnkD11.dcp" />
<DCCReference Include="..\dxPSLnksD11.dcp" />
<DCCReference Include="..\dxThemeD11.dcp" />
<DCCReference Include="..\fqb110.dcp" />
<DCCReference Include="..\frx11.dcp" />
<DCCReference Include="..\frxe11.dcp" />
<DCCReference Include="..\fs11.dcp" />
<DCCReference Include="..\GestorInformes_controller.dcp" />
<DCCReference Include="..\GUIBase.dcp" />
<DCCReference Include="..\GUISDK_D11R.dcp" />
<DCCReference Include="..\Jcl.dcp" />
<DCCReference Include="..\JclVcl.dcp" />
<DCCReference Include="..\JvCoreD11R.dcp" />
<DCCReference Include="..\JvCtrlsD11R.dcp" />
<DCCReference Include="..\JvPageCompsD11R.dcp" />
<DCCReference Include="..\JvStdCtrlsD11R.dcp" />
<DCCReference Include="..\JvSystemD11R.dcp" />
<DCCReference Include="..\PedCli_AlbCli_relation.dcp" />
<DCCReference Include="..\PedCli_FacProforma_relation.dcp" />
<DCCReference Include="..\PedCli_PedProv_relation.dcp" />
<DCCReference Include="..\PedidosCliente_controller.dcp" />
<DCCReference Include="..\PedidosCliente_model.dcp" />
<DCCReference Include="..\PedidosProveedor_model.dcp" />
<DCCReference Include="..\PngComponentsD10.dcp" />
<DCCReference Include="..\PNG_D10.dcp" />
<DCCReference Include="..\RemObjects_Core_D11.dcp" />
<DCCReference Include="..\rtl.dcp" />
<DCCReference Include="..\tb2k_d10.dcp" />
<DCCReference Include="..\tbx_d10.dcp" />
<DCCReference Include="..\vcl.dcp" />
<DCCReference Include="..\vclactnband.dcp" />
<DCCReference Include="..\vcldb.dcp" />
<DCCReference Include="..\vcljpg.dcp" />
<DCCReference Include="..\vclshlctrls.dcp" />
<DCCReference Include="..\vclx.dcp" />
<DCCReference Include="..\xmlrtl.dcp" />
<DCCReference Include="uDialogListaPedidosClienteEnvioEMail.pas">
<Form>frDialogListaPedidosClienteEnvioEMail</Form>
<DesignClass>T</DesignClass>
@ -118,10 +119,6 @@
<Form>fDialogOpcionesImpresionPedidosCliente</Form>
<DesignClass>TfEditorPedidosProveedor</DesignClass>
</DCCReference>
<DCCReference Include="uDialogOpcionesProcesoPedidoCliente.pas">
<DesignClass>TfEditorPedidosProveedor</DesignClass>
<Form>fDialogOpcionesProcesoPedidoCliente</Form>
</DCCReference>
<DCCReference Include="uEditorDireccionEntregaPedidoCliente.pas">
<Form>frEditorDireccionEntregaPedidoCliente</Form>
<DesignClass>TForm</DesignClass>

View File

@ -26,4 +26,4 @@ END
/* C:\Codigo\Source\Modulos\Pedidos de cliente\Views\uEditorElegirArticulosPedidoCliente.dfm */
/* C:\Codigo\Source\Modulos\Pedidos de cliente\Views\uEditorDireccionEntregaPedidoCliente.dfm */
/* C:\Codigo\Source\Modulos\Pedidos de cliente\Views\PedidosCliente_view.RES */
/* c:\temp\dtf392.tmp */
/* c:\temp\dtf3D2.tmp */

View File

@ -2,17 +2,17 @@ inherited fEditorPedidosCliente: TfEditorPedidosCliente
Left = 411
Top = 346
Caption = 'Lista de pedidos de cliente'
ClientWidth = 700
ClientWidth = 956
Position = poDesigned
ExplicitWidth = 708
ExplicitWidth = 964
PixelsPerInch = 96
TextHeight = 13
inherited JvNavPanelHeader: TJvNavPanelHeader
Width = 700
Width = 956
Caption = 'Lista de pedidos de cliente'
ExplicitWidth = 700
inherited Image1: TImage
Left = 673
Left = 929
Picture.Data = {
0A54504E474F626A65637489504E470D0A1A0A0000000D494844520000001800
0000180806000000E0773DF80000000970485973000017120000171201679FD2
@ -41,10 +41,10 @@ inherited fEditorPedidosCliente: TfEditorPedidosCliente
end
end
inherited TBXDock: TTBXDock
Width = 700
Width = 956
ExplicitWidth = 700
inherited tbxMain: TTBXToolbar
ExplicitWidth = 700
ExplicitWidth = 877
object TBXItem40: TTBXItem [13]
Action = actEnviarEMail
end
@ -62,21 +62,35 @@ inherited fEditorPedidosCliente: TfEditorPedidosCliente
end
end
inherited tbxMenu: TTBXToolbar
ExplicitWidth = 700
ExplicitWidth = 956
end
inherited TBXTMain2: TTBXToolbar
Left = 427
Visible = True
ExplicitLeft = 427
ExplicitWidth = 209
object TBXItem39: TTBXItem
Action = actGenerar
ExplicitWidth = 529
object TBXItem43: TTBXItem
Action = actGenerarPedidoProv
DisplayMode = nbdmImageAndText
Images = SmallImages
end
object TBXItem44: TTBXItem
Action = actGenerarAlbaranCli
DisplayMode = nbdmImageAndText
Images = SmallImages
end
object TBXItem45: TTBXItem
Action = actGenerarFacturaProforma
DisplayMode = nbdmImageAndText
end
object TBXItem42: TTBXItem
Action = actVerProcesoCompleto
DisplayMode = nbdmImageAndText
end
object TBXItem39: TTBXItem
Action = actGenerar
DisplayMode = nbdmImageAndText
end
object TBXItem38: TTBXItem
Action = actFacturarPedido
DisplayMode = nbdmImageAndText
@ -87,13 +101,13 @@ inherited fEditorPedidosCliente: TfEditorPedidosCliente
end
end
inherited StatusBar: TJvStatusBar
Width = 700
Width = 956
ExplicitWidth = 700
end
inline frViewPedidosCliente1: TfrViewPedidosCliente [3]
Left = 0
Top = 102
Width = 700
Width = 956
Height = 383
Align = alClient
Font.Charset = DEFAULT_CHARSET
@ -108,7 +122,7 @@ inherited fEditorPedidosCliente: TfEditorPedidosCliente
ExplicitWidth = 700
ExplicitHeight = 383
inherited cxGrid: TcxGrid
Width = 700
Width = 956
Height = 255
ExplicitWidth = 700
ExplicitHeight = 255
@ -140,12 +154,12 @@ inherited fEditorPedidosCliente: TfEditorPedidosCliente
end
end
inherited frViewFiltroBase1: TfrViewFiltroBase
Width = 700
Width = 956
ExplicitWidth = 700
inherited TBXDockablePanel1: TTBXDockablePanel
ExplicitWidth = 700
inherited dxLayoutControl1: TdxLayoutControl
Width = 700
Width = 956
ExplicitWidth = 700
inherited txtFiltroTodo: TcxTextEdit
Style.LookAndFeel.SkinName = ''
@ -164,31 +178,31 @@ inherited fEditorPedidosCliente: TfEditorPedidosCliente
Width = 243
end
inherited edtFechaFinFiltro: TcxDateEdit
Left = 244
Left = 327
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
ExplicitLeft = 244
ExplicitLeft = 327
ExplicitWidth = 482
Width = 482
end
inherited eLista: TcxComboBox
Left = 605
Left = 816
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
ExplicitLeft = 605
ExplicitLeft = 816
ExplicitWidth = 140
Width = 140
end
end
inherited TBXAlignmentPanel1: TTBXAlignmentPanel
Width = 700
Width = 956
ExplicitWidth = 700
inherited tbxBotones: TTBXToolbar
Width = 690
Width = 946
ExplicitWidth = 690
end
end
@ -199,10 +213,10 @@ inherited fEditorPedidosCliente: TfEditorPedidosCliente
ExplicitTop = 357
ExplicitWidth = 700
inherited TBXAlignmentPanel1: TTBXAlignmentPanel
Width = 700
Width = 956
ExplicitWidth = 700
inherited TBXToolbar1: TTBXToolbar
Width = 690
Width = 946
ExplicitWidth = 690
end
end
@ -266,18 +280,23 @@ inherited fEditorPedidosCliente: TfEditorPedidosCliente
Category = 'Acciones'
Caption = 'Generar'
ImageIndex = 23
Visible = False
OnExecute = actGenerarExecute
OnUpdate = actGenerarUpdate
end
object actGenerarAlbaranCli: TAction
Category = 'Acciones'
Caption = 'Generar albar'#225'n de cliente'
ImageIndex = 23
OnExecute = actGenerarAlbaranCliExecute
OnUpdate = actGenerarAlbaranCliUpdate
end
object actGenerarPedidoProv: TAction
Category = 'Acciones'
Caption = 'Generar pedido a proveedor'
ImageIndex = 23
OnExecute = actGenerarPedidoProvExecute
OnUpdate = actGenerarPedidoProvUpdate
end
object actVerProcesoCompleto: TAction
Category = 'Acciones'
@ -285,6 +304,12 @@ inherited fEditorPedidosCliente: TfEditorPedidosCliente
ImageIndex = 2
OnExecute = actVerProcesoCompletoExecute
end
object actGenerarFacturaProforma: TAction
Category = 'Acciones'
Caption = 'Generar factura proforma'
ImageIndex = 23
OnExecute = actGenerarFacturaProformaExecute
end
end
inherited SmallImages: TPngImageList [5]
PngImages = <

View File

@ -38,6 +38,10 @@ type
actGenerarPedidoProv: TAction;
actVerProcesoCompleto: TAction;
TBXItem42: TTBXItem;
TBXItem43: TTBXItem;
TBXItem44: TTBXItem;
actGenerarFacturaProforma: TAction;
TBXItem45: TTBXItem;
procedure FormShow(Sender: TObject);
procedure actCambiarSituacionExecute(Sender: TObject);
procedure actRecibirPedidoUpdate(Sender: TObject);
@ -54,6 +58,9 @@ type
procedure actGenerarAlbaranCliExecute(Sender: TObject);
procedure actGenerarPedidoProvExecute(Sender: TObject);
procedure actVerProcesoCompletoExecute(Sender: TObject);
procedure actGenerarAlbaranCliUpdate(Sender: TObject);
procedure actGenerarPedidoProvUpdate(Sender: TObject);
procedure actGenerarFacturaProformaExecute(Sender: TObject);
protected
FPedidos: IBizPedidoCliente;
@ -86,7 +93,7 @@ implementation
uses
uDataModulePedidosCliente, uDataModuleUsuarios, uFactuGES_App, uEditorDBBase,
// uGenerarFacturasProvPedUtils,
uGenerarFacturasProformaUtils,
// uInventarioController, uBizInventario,
uDialogUtils, uGridStatusUtils, uDBSelectionListUtils, cxControls,
uDialogOpcionesImpresionPedidosCliente,
@ -178,6 +185,15 @@ begin
GenerarAlbaranCli(FPedidos.ID, IDAlbaranAux);
end;
procedure TfEditorPedidosCliente.actGenerarAlbaranCliUpdate(Sender: TObject);
begin
inherited;
(Sender as TAction).Enabled := HayDatos and
not (ViewGrid.NumSeleccionados > 1) and
ViewGrid.esSeleccionCeldaDatos and
((FPedidos.SITUACION <> SITUACION_PEDIDO_SERVIDO) and (FPedidos.SITUACION <> SITUACION_PEDIDO_ALBARANADO));
end;
procedure TfEditorPedidosCliente.actGenerarExecute(Sender: TObject);
var
Respuesta : Integer;
@ -202,12 +218,27 @@ begin
end;
procedure TfEditorPedidosCliente.actGenerarFacturaProformaExecute(Sender: TObject);
begin
inherited;
GenerarFacturaProforma(FPedidos.ID);
end;
procedure TfEditorPedidosCliente.actGenerarPedidoProvExecute(Sender: TObject);
begin
inherited;
GenerarPedidosProv(FPedidos);
end;
procedure TfEditorPedidosCliente.actGenerarPedidoProvUpdate(Sender: TObject);
begin
inherited;
(Sender as TAction).Enabled := HayDatos and
not (ViewGrid.NumSeleccionados > 1) and
ViewGrid.esSeleccionCeldaDatos and
((FPedidos.SITUACION <> SITUACION_PEDIDO_SERVIDO) and (FPedidos.SITUACION <> SITUACION_PEDIDO_ALBARANADO));
end;
procedure TfEditorPedidosCliente.actGenerarUpdate(Sender: TObject);
begin
inherited;

View File

@ -57,6 +57,8 @@
<DCCReference Include="..\..\Lib\designide.dcp" />
<DCCReference Include="..\..\Lib\FacturasCliente_controller.dcp" />
<DCCReference Include="..\..\Lib\FacturasCliente_model.dcp" />
<DCCReference Include="..\..\Lib\FacturasProforma_controller.dcp" />
<DCCReference Include="..\..\Lib\FacturasProforma_model.dcp" />
<DCCReference Include="..\..\Lib\FacturasProveedor_controller.dcp" />
<DCCReference Include="..\..\Lib\FacturasProveedor_model.dcp" />
<DCCReference Include="..\..\Lib\GUISDK_D11R.dcp" />

View File

@ -12,5 +12,5 @@ STRINGTABLE
BEGIN
END
/* C:\Codigo\Source\Modulos\ProcesoPresupuestoCliente\Controller\ProcesoPresupuestosCliente_controller.RES */
/* c:\temp\dtf3C8.tmp */
/* C:\Codigo\Source\Modulos\ProcesoPresupuestoCliente\Controller\ProcesoPresupuestosCliente_controller.res */
/* C:\Codigo\Source\Modulos\ProcesoPresupuestoCliente\Controller\ProcesoPresupuestosCliente_controller.drf */

View File

@ -4,7 +4,7 @@ interface
uses
uEditorDBItem, uBizPedidosCliente, uBizPedidosProveedor, uBizAlbaranesProveedor,
uBizFacturasProveedor, uBizAlbaranesCliente, uBizFacturasCliente;
uBizFacturasProveedor, uBizAlbaranesCliente, uBizFacturasCliente, uBizFacturasProforma;
type
IEditorProcesoPresupuestosCliente = interface(IEditorDBItem)
@ -34,6 +34,10 @@ type
procedure SetFacturasCliente(const Value: IBizFacturaCliente);
property FacturasCliente: IBizFacturaCliente read GetFacturasCliente write SetFacturasCliente;
function GetFacturasProforma: IBizFacturaProforma;
procedure SetFacturasProforma(const Value: IBizFacturaProforma);
property FacturasProforma: IBizFacturaProforma read GetFacturasProforma write SetFacturasProforma;
end;
implementation

View File

@ -11,7 +11,8 @@ uses
uBizAlbaranesProveedor, uAlbaranesProveedorController,
uBizFacturasProveedor, uFacturasProveedorController,
uBizAlbaranesCliente, uAlbaranesClienteController,
uBizFacturasCliente, uFacturasClienteController;
uBizFacturasCliente, uFacturasClienteController,
uBizFacturasProforma, uFacturasProformaController;
type
IProcesoPresupuestosClienteController = interface(IControllerBase)
@ -27,6 +28,7 @@ type
FFacturasProveedorController : IFacturasProveedorController;
FAlbaranesClienteController : IAlbaranesClienteController;
FFacturasClienteController : IFacturasClienteController;
FFacturasProformaController : IFacturasProformaController;
public
constructor Create; override;
@ -38,6 +40,7 @@ type
function BuscarFacturasProveedor(AAlbaranesProveedor: IBizAlbaranProveedor): IBizFacturaProveedor;
function BuscarAlbaranesCliente(APedidosCliente: IBizPedidoCliente): IBizAlbaranCliente;
function BuscarFacturasCliente(AAlbaranesCliente: IBizAlbaranCliente): IBizFacturaCliente;
function BuscarFacturasProforma(APedidosCliente: IBizPedidoCliente): IBizFacturaProforma;
procedure VerProceso(const ListaIDPresupuestosCliente: TIntegerArray);
end;
@ -61,6 +64,7 @@ begin
FFacturasProveedorController := TFacturasProveedorController.Create;
FAlbaranesClienteController := TAlbaranesClienteController.Create;
FFacturasClienteController := TFacturasClienteController.Create;
FFacturasProformaController := TFacturasProformaController.Create;
end;
destructor TProcesoPresupuestosClienteController.Destroy;
@ -71,6 +75,7 @@ begin
FFacturasProveedorController := Nil;
FAlbaranesClienteController := Nil;
FFacturasClienteController := Nil;
FFacturasProformaController := Nil;
inherited;
end;
@ -205,6 +210,46 @@ begin
end;
end;
function TProcesoPresupuestosClienteController.BuscarFacturasProforma(APedidosCliente: IBizPedidoCliente): IBizFacturaProforma;
var
Condicion: TDAWhereExpression;
AArrayIdPedidosCli : Array of TDAWhereExpression;
i: Integer;
begin
Result := FFacturasProformaController.BuscarTodos;
//Quitamos el filtro por empresa ya que no es necesario y complicaría where que hacemos a continuación, además de que puede darse el caso de haber dado de alta un pedido de proveedor con otra empresa?
Result.DataTable.DynamicWhere.Clear;
if Assigned(Result) then
begin
//Vamos generando todos los where necesarios para cada uno de los ID de Pedido de proveedor que buscamos
// Filtrar los Presupuestos pendientes de recepcion
with Result.DataTable.DynamicWhere do
begin
APedidosCliente.Open;
SetLength(AArrayIdPedidosCli, APedidosCliente.RecordCount);
APedidosCliente.First;
i:=0;
while not APedidosCliente.EOF do
begin
AArrayIdPedidosCli[i] := NewConstant(APedidosCliente.ID, datInteger);
Inc(i);
APedidosCliente.Next;
end;
// (ID_PEDIDO in lista IDs) (SIEMPRE HAY AL MENOS UNO)
Condicion := NewBinaryExpression(NewField('', 'ID_PEDIDO'), NewList(AArrayIdPedidosCli), dboIn);
if IsEmpty then
Expression := Condicion
else
Expression := NewBinaryExpression(Expression, Condicion, dboAnd);
APedidosCliente.Close;
end;
end;
end;
function TProcesoPresupuestosClienteController.BuscarFacturasProveedor(AAlbaranesProveedor: IBizAlbaranProveedor): IBizFacturaProveedor;
var
Condicion: TDAWhereExpression;
@ -324,6 +369,7 @@ var
AFacturasProveedor: IBizFacturaProveedor;
AAlbaranesCliente: IBizAlbaranCliente;
AFacturasCliente: IBizFacturaCliente;
AFacturasProforma: IBizFacturaProforma;
begin
AEditor := NIL;
@ -334,6 +380,7 @@ begin
AFacturasProveedor := BuscarFacturasProveedor(AAlbaranesProveedor);
AAlbaranesCliente := BuscarAlbaranesCliente(APedidosCliente);
AFacturasCliente := BuscarFacturasCliente(AAlbaranesCliente);
AFacturasProforma := BuscarFacturasProforma(APedidosCliente);
CreateEditor('EditorProcesoPresupuestosCLiente', IEditorProcesoPresupuestosCliente, AEditor);
if Assigned(AEditor) then
@ -345,6 +392,7 @@ begin
AEditor.FacturasProveedor := AFacturasProveedor;
AEditor.AlbaranesCliente := AAlbaranesCliente;
AEditor.FacturasCliente := AFacturasCliente;
AEditor.FacturasProforma := AFacturasProforma;
AEditor.ShowModal;
finally
AEditor.Release;

View File

@ -13,5 +13,5 @@ BEGIN
END
/* C:\Codigo\Source\Modulos\ProcesoPresupuestoCliente\Plugin\uPluginProcesoPresupuestosCliente.dfm */
/* C:\Codigo\Source\Modulos\ProcesoPresupuestoCliente\Plugin\ProcesoPresupuestosCliente_plugin.RES */
/* c:\temp\dtf3CC.tmp */
/* C:\Codigo\Source\Modulos\ProcesoPresupuestoCliente\Plugin\ProcesoPresupuestosCliente_plugin.res */
/* C:\Codigo\Source\Modulos\ProcesoPresupuestoCliente\Plugin\ProcesoPresupuestosCliente_plugin.drf */

View File

@ -32,7 +32,8 @@ requires
AlbaranesProveedor_model,
AlbaranesCliente_model,
FacturasCliente_model,
FacturasProveedor_model;
FacturasProveedor_model,
FacturasProforma_model;
contains
uProcesoPresupuestosClienteViewRegister in 'uProcesoPresupuestosClienteViewRegister.pas',

View File

@ -49,14 +49,15 @@
<DelphiCompile Include="ProcesoPresupuestosCliente_view.dpk">
<MainSource>MainSource</MainSource>
</DelphiCompile>
<DCCReference Include="C:\Documents and Settings\Usuario\AlbaranesCliente_model.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\AlbaranesProveedor_model.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\ApplicationBase.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\FacturasCliente_model.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\FacturasProveedor_model.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\PedidosCliente_model.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\PedidosProveedor_model.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\ProcesoPresupuestosCliente_controller.dcp" />
<DCCReference Include="..\..\Lib\AlbaranesCliente_model.dcp" />
<DCCReference Include="..\..\Lib\AlbaranesProveedor_model.dcp" />
<DCCReference Include="..\..\Lib\ApplicationBase.dcp" />
<DCCReference Include="..\..\Lib\FacturasCliente_model.dcp" />
<DCCReference Include="..\..\Lib\FacturasProforma_model.dcp" />
<DCCReference Include="..\..\Lib\FacturasProveedor_model.dcp" />
<DCCReference Include="..\..\Lib\PedidosCliente_model.dcp" />
<DCCReference Include="..\..\Lib\PedidosProveedor_model.dcp" />
<DCCReference Include="..\..\Lib\ProcesoPresupuestosCliente_controller.dcp" />
<DCCReference Include="uEditorProcesoPresupuestosCliente.pas">
<Form>fEditorProcesoPresupuestosCliente</Form>
<DesignClass>TfEditorPedidosProveedor</DesignClass>

View File

@ -14,5 +14,5 @@ END
/* C:\Codigo\Source\Modulos\ProcesoPresupuestoCliente\Views\uViewProcesoPresupuestosCliente.dfm */
/* C:\Codigo\Source\Modulos\ProcesoPresupuestoCliente\Views\uEditorProcesoPresupuestosCliente.dfm */
/* C:\Codigo\Source\Modulos\ProcesoPresupuestoCliente\Views\ProcesoPresupuestosCliente_view.RES */
/* c:\temp\dtf3CA.tmp */
/* C:\Codigo\Source\Modulos\ProcesoPresupuestoCliente\Views\ProcesoPresupuestosCliente_view.res */
/* C:\Codigo\Source\Modulos\ProcesoPresupuestoCliente\Views\ProcesoPresupuestosCliente_view.drf */

View File

@ -11,7 +11,8 @@ uses
JvExControls, JvNavigationPane, uIEditorProcesoPresupuestosCLiente,
uCustomView, uViewBase, uViewGridBase, uViewGrid,
uViewProcesoPresupuestosCliente, uBizPedidosCliente, uBizPedidosProveedor,
uBizAlbaranesProveedor, uBizFacturasProveedor, uBizAlbaranesCliente, uBizFacturasCliente;
uBizAlbaranesProveedor, uBizFacturasProveedor, uBizAlbaranesCliente, uBizFacturasCliente,
uBizFacturasProforma, Grids, DBGrids;
type
TfEditorProcesoPresupuestosCliente = class(TfEditorGridBase, IEditorProcesoPresupuestosCliente)
@ -24,6 +25,7 @@ type
FAlbaranesProveedor: IBizAlbaranProveedor;
FFacturasProveedor: IBizFacturaProveedor;
FAlbaranesCliente: IBizAlbaranCliente;
FFacturasProforma: IBizFacturaProforma;
FFacturasCliente: IBizFacturaCliente;
function GetPedidosCliente: IBizPedidoCliente;
@ -36,6 +38,8 @@ type
procedure SetFacturasProveedor(const Value: IBizFacturaProveedor);
function GetAlbaranesCliente: IBizAlbaranCliente;
procedure SetAlbaranesCliente(const Value: IBizAlbaranCliente);
function GetFacturasProforma: IBizFacturaProforma;
procedure SetFacturasProforma(const Value: IBizFacturaProforma);
function GetFacturasCliente: IBizFacturaCliente;
procedure SetFacturasCliente(const Value: IBizFacturaCliente);
@ -45,6 +49,7 @@ type
property AlbaranesProveedor: IBizAlbaranProveedor read GetAlbaranesProveedor write SetAlbaranesProveedor;
property FacturasProveedor: IBizFacturaProveedor read GetFacturasProveedor write SetFacturasProveedor;
property AlbaranesCliente: IBizAlbaranCliente read GetAlbaranesCliente write SetAlbaranesCliente;
property FacturasProforma: IBizFacturaProforma read GetFacturasProforma write SetFacturasProforma;
property FacturasCliente: IBizFacturaCliente read GetFacturasCliente write SetFacturasCliente;
constructor Create(AOwner: TComponent); override;
@ -71,6 +76,7 @@ begin
FAlbaranesProveedor := Nil;
FFacturasProveedor := Nil;
FAlbaranesCliente := Nil;
FFacturasProforma := Nil;
FFacturasCliente := Nil;
inherited;
end;
@ -106,6 +112,10 @@ begin
raise Exception.Create('No hay ninguna factura de cliente asignado');
FacturasCliente.DataTable.Active := True;
if not Assigned(FacturasProforma) then
raise Exception.Create('No hay ninguna factura proforma asignada');
FacturasProforma.DataTable.Active := True;
ViewGrid.GotoFirst;
ViewGrid.ContraerTodo;
end;
@ -125,6 +135,11 @@ begin
Result := FFacturasCliente;
end;
function TfEditorProcesoPresupuestosCliente.GetFacturasProforma: IBizFacturaProforma;
begin
Result := FFacturasProforma;
end;
function TfEditorProcesoPresupuestosCliente.GetFacturasProveedor: IBizFacturaProveedor;
begin
Result := FFacturasProveedor;
@ -170,6 +185,16 @@ begin
end;
end;
procedure TfEditorProcesoPresupuestosCliente.SetFacturasProforma(const Value: IBizFacturaProforma);
begin
FFacturasProforma := Value;
if Assigned(FFacturasProforma) then
begin
if Assigned(ViewGrid) then
(ViewGrid as IViewListadoProcesoPedidoCliente).FacturasProforma := FacturasProforma;
end;
end;
procedure TfEditorProcesoPresupuestosCliente.SetFacturasProveedor(const Value: IBizFacturaProveedor);
begin
FFacturasProveedor := Value;

View File

@ -238,6 +238,46 @@ inherited frViewProcesoPresupuestosCliente: TfrViewProcesoPresupuestosCliente
DataBinding.FieldName = 'FECHA_FACTURA'
end
end
object cxGridViewFacturasProforma: TcxGridDBTableView [6]
NavigatorButtons.ConfirmDelete = False
DataController.DataSource = dsFacturasProforma
DataController.DetailKeyFieldNames = 'ID_PEDIDO'
DataController.KeyFieldNames = 'ID'
DataController.MasterKeyFieldNames = 'ID'
DataController.Options = [dcoAnsiSort, dcoCaseInsensitive, dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoSortByDisplayText]
DataController.Summary.DefaultGroupSummaryItems = <>
DataController.Summary.FooterSummaryItems = <>
DataController.Summary.SummaryGroups = <>
OptionsBehavior.CellHints = True
OptionsCustomize.ColumnFiltering = False
OptionsData.Deleting = False
OptionsData.DeletingConfirmation = False
OptionsData.Editing = False
OptionsData.Inserting = False
OptionsSelection.CellSelect = False
OptionsSelection.UnselectFocusedRecordOnExit = False
OptionsView.CellEndEllipsis = True
OptionsView.NoDataToDisplayInfoText = '<No hay datos a visualizar>'
OptionsView.CellAutoHeight = True
OptionsView.ColumnAutoWidth = True
OptionsView.GridLineColor = cl3DLight
OptionsView.GridLines = glHorizontal
OptionsView.GroupByBox = False
OptionsView.GroupRowStyle = grsOffice11
OptionsView.HeaderEndEllipsis = True
object cxGridViewFacturasProformaREFERENCIA: TcxGridDBColumn
Caption = 'Referencia'
DataBinding.FieldName = 'REFERENCIA'
end
object cxGridViewFacturasProformaSITUACION: TcxGridDBColumn
Caption = 'Situaci'#243'n'
DataBinding.FieldName = 'SITUACION'
end
object cxGridViewFacturasProformaFECHA_FACTURA: TcxGridDBColumn
Caption = 'Fecha'
DataBinding.FieldName = 'FECHA_FACTURA'
end
end
inherited cxGridLevel: TcxGridLevel
Options.DetailFrameColor = cl3DLight
Options.DetailTabsPosition = dtpTop
@ -258,6 +298,10 @@ inherited frViewProcesoPresupuestosCliente: TfrViewProcesoPresupuestosCliente
GridView = cxGridViewFacturasCliente
end
end
object cxGridLevel1: TcxGridLevel
Caption = 'Facturas Proforma'
GridView = cxGridViewFacturasProforma
end
end
end
inherited frViewFiltroBase1: TfrViewFiltroBase
@ -322,4 +366,8 @@ inherited frViewProcesoPresupuestosCliente: TfrViewProcesoPresupuestosCliente
Left = 8
Top = 240
end
object dsFacturasProforma: TDADataSource
Left = 8
Top = 288
end
end

View File

@ -13,7 +13,8 @@ uses
uViewBase, uViewFiltroBase, cxGridLevel, cxGridCustomTableView,
cxGridTableView, cxGridDBTableView, cxClasses, cxControls, cxGridCustomView,
cxGrid, uBizPedidosCliente, uBizPedidosProveedor, uBizAlbaranesProveedor,
uBizFacturasProveedor, uBizAlbaranesCliente, uBizFacturasCliente, Grids, DBGrids;
uBizFacturasProveedor, uBizAlbaranesCliente, uBizFacturasCliente, uBizFacturasProforma,
Grids, DBGrids;
type
IViewListadoProcesoPedidoCliente = interface(IViewGrid)
@ -38,6 +39,10 @@ type
procedure SetAlbaranesCliente(const Value: IBizAlbaranCliente);
property AlbaranesCliente: IBizAlbaranCliente read GetAlbaranesCliente write SetAlbaranesCliente;
function GetFacturasProforma: IBizFacturaProforma;
procedure SetFacturasProforma(const Value: IBizFacturaProforma);
property FacturasProforma: IBizFacturaProforma read GetFacturasProforma write SetFacturasProforma;
function GetFacturasCliente: IBizFacturaCliente;
procedure SetFacturasCliente(const Value: IBizFacturaCliente);
property FacturasCliente: IBizFacturaCliente read GetFacturasCliente write SetFacturasCliente;
@ -51,26 +56,21 @@ type
dsPedidosProveedor: TDADataSource;
cxGridViewPedidosProveedor: TcxGridDBTableView;
cxGridViewPedidosProveedorREFERENCIA: TcxGridDBColumn;
cxGridLevelPedidosProveedor: TcxGridLevel;
cxGridViewPedidosProveedorNOMBRE: TcxGridDBColumn;
cxGridViewFECHA_PEDIDO: TcxGridDBColumn;
cxGridViewPedidosProveedorFECHA_PEDIDO: TcxGridDBColumn;
cxGridViewPedidosProveedorSITUACION: TcxGridDBColumn;
dsAlbaranesProveedor: TDADataSource;
cxGridLevelAlbaranesProveedor: TcxGridLevel;
cxGridViewAlbaranesProveedor: TcxGridDBTableView;
cxGridViewAlbaranesProveedorREFERENCIA: TcxGridDBColumn;
cxGridViewAlbaranesProveedorSITUACION: TcxGridDBColumn;
cxGridViewAlbaranesProveedorFECHA_ALBARAN: TcxGridDBColumn;
dsFacturasProveedor: TDADataSource;
cxGridLevelFacturasProveedor: TcxGridLevel;
cxGridViewFacturasProveedor: TcxGridDBTableView;
cxGridViewFacturasProveedorREFERENCIA: TcxGridDBColumn;
cxGridViewFacturasProveedorREFERENCIA_PROVEEDOR: TcxGridDBColumn;
cxGridViewFacturasProveedorSITUACION: TcxGridDBColumn;
cxGridViewFacturasProveedorFECHA_FACTURA: TcxGridDBColumn;
cxGridAlbaranesCliente: TcxGridLevel;
cxGridFacturasCliente: TcxGridLevel;
cxGridViewAlbaranesCliente: TcxGridDBTableView;
cxGridViewFacturasCliente: TcxGridDBTableView;
cxGridViewFacturasClienteREFERENCIA: TcxGridDBColumn;
@ -81,6 +81,13 @@ type
cxGridViewAlbaranesClienteFECHA_ALBARAN: TcxGridDBColumn;
cxGridViewFacturasClienteSITUACION: TcxGridDBColumn;
cxGridViewFacturasClienteFECHA_FACTURA: TcxGridDBColumn;
cxGridFacturasCliente: TcxGridLevel;
dsFacturasProforma: TDADataSource;
cxGridViewFacturasProforma: TcxGridDBTableView;
cxGridViewFacturasProformaREFERENCIA: TcxGridDBColumn;
cxGridLevel1: TcxGridLevel;
cxGridViewFacturasProformaSITUACION: TcxGridDBColumn;
cxGridViewFacturasProformaFECHA_FACTURA: TcxGridDBColumn;
procedure CustomViewShow(Sender: TObject);
protected
@ -89,6 +96,7 @@ type
FAlbaranesProveedor: IBizAlbaranProveedor;
FFacturasProveedor: IBizFacturaProveedor;
FAlbaranesCliente: IBizAlbaranCliente;
FFacturasProforma: IBizFacturaProforma;
FFacturasCliente: IBizFacturaCliente;
function GetPedidosCliente: IBizPedidoCliente;
@ -109,6 +117,9 @@ type
function GetFacturasCliente: IBizFacturaCliente;
procedure SetFacturasCliente(const Value: IBizFacturaCliente);
function GetFacturasProforma: IBizFacturaProforma;
procedure SetFacturasProforma(const Value: IBizFacturaProforma);
public
property PedidosCliente: IBizPedidoCliente read GetPedidosCliente write SetPedidosCliente;
property PedidosProveedor: IBizPedidoProveedor read GetPedidosProveedor write SetPedidosProveedor;
@ -116,6 +127,7 @@ type
property FacturasProveedor: IBizFacturaProveedor read GetFacturasProveedor write SetFacturasProveedor;
property AlbaranesCliente: IBizAlbaranCliente read GetAlbaranesCliente write SetAlbaranesCliente;
property FacturasCliente: IBizFacturaCliente read GetFacturasCliente write SetFacturasCliente;
property FacturasProforma: IBizFacturaProforma read GetFacturasProforma write SetFacturasProforma;
destructor Destroy; override;
end;
@ -141,6 +153,7 @@ begin
FAlbaranesProveedor:= Nil;
FFacturasProveedor:= Nil;
FAlbaranesCliente:= Nil;
FFacturasProforma:= Nil;
FFacturasCliente:= Nil;
inherited;
end;
@ -160,6 +173,11 @@ begin
Result := FFacturasCliente;
end;
function TfrViewProcesoPresupuestosCliente.GetFacturasProforma: IBizFacturaProforma;
begin
Result := FFacturasProforma;
end;
function TfrViewProcesoPresupuestosCliente.GetFacturasProveedor: IBizFacturaProveedor;
begin
Result := FFacturasProveedor;
@ -202,6 +220,16 @@ begin
dsFacturasCliente.DataTable := Nil;
end;
procedure TfrViewProcesoPresupuestosCliente.SetFacturasProforma(
const Value: IBizFacturaProforma);
begin
FFacturasProforma := Value;
if Assigned(FFacturasProforma) then
dsFacturasProforma.DataTable := FFacturasProforma.DataTable
else
dsFacturasProforma.DataTable := Nil;
end;
procedure TfrViewProcesoPresupuestosCliente.SetFacturasProveedor(const Value: IBizFacturaProveedor);
begin
FFacturasProveedor := Value;

View File

@ -0,0 +1,49 @@
package FacProforma_FacCli_relation;
{$R *.res}
{$ALIGN 8}
{$ASSERTIONS ON}
{$BOOLEVAL OFF}
{$DEBUGINFO ON}
{$EXTENDEDSYNTAX ON}
{$IMPORTEDDATA ON}
{$IOCHECKS ON}
{$LOCALSYMBOLS ON}
{$LONGSTRINGS ON}
{$OPENSTRINGS ON}
{$OPTIMIZATION ON}
{$OVERFLOWCHECKS OFF}
{$RANGECHECKS OFF}
{$REFERENCEINFO ON}
{$SAFEDIVIDE OFF}
{$STACKFRAMES OFF}
{$TYPEDADDRESS OFF}
{$VARSTRINGCHECKS ON}
{$WRITEABLECONST OFF}
{$MINENUMSIZE 1}
{$IMAGEBASE $400000}
{$IMPLICITBUILD OFF}
requires
FacturasCliente_model,
FacturasCliente_controller,
rtl,
vcl,
cxLibraryD11,
dxThemeD11,
dxGDIPlusD11,
dxCoreD11,
vclx,
cxEditorsD11,
cxDataD11,
dbrtl,
vcljpg,
vcldb,
FacturasProforma_model,
FacturasProforma_controller;
contains
uGenerarFacturasCliFacProformaUtils in 'uGenerarFacturasCliFacProformaUtils.pas' {dmGenerarFacturasCliFacProforma},
uEditorFechaFacturaFinal in 'uEditorFechaFacturaFinal.pas' {fEditorFechaFacturaFinal: F};
end.

View File

@ -0,0 +1,22 @@
1 VERSIONINFO
FILEVERSION 1,0,0,0
PRODUCTVERSION 1,0,0,0
FILEFLAGSMASK 0x3FL
FILEFLAGS 0x00L
FILEOS 0x40004L
FILETYPE 0x1L
FILESUBTYPE 0x0L
BEGIN
BLOCK "StringFileInfo"
BEGIN
BLOCK "0C0A04E4"
BEGIN
VALUE "FileVersion", "1.0.0.0\0"
VALUE "ProductVersion", "1.0.0.0\0"
END
END
BLOCK "VarFileInfo"
BEGIN
VALUE "Translation", 0x0C0A, 1252
END
END

View File

@ -0,0 +1,60 @@
object fEditorFechaFacturaFinal: TfEditorFechaFacturaFinal
Left = 0
Top = 0
BorderStyle = bsToolWindow
Caption = 'Fecha de la factura'
ClientHeight = 148
ClientWidth = 371
Color = clBtnFace
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'Tahoma'
Font.Style = []
OldCreateOrder = False
Position = poScreenCenter
OnShow = FormShow
PixelsPerInch = 96
TextHeight = 13
object Label1: TLabel
Left = 16
Top = 16
Width = 320
Height = 13
Caption =
'Introduzca la fecha que desea para la factura que se va a genera' +
'r'
WordWrap = True
end
object Label2: TLabel
Left = 24
Top = 59
Width = 86
Height = 13
Caption = 'Fecha de factura:'
WordWrap = True
end
object eFechaFactura: TcxDateEdit
Left = 127
Top = 56
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 = 162
end
object Button1: TButton
Left = 286
Top = 110
Width = 75
Height = 25
Caption = 'Continuar'
ModalResult = 1
TabOrder = 1
end
end

View File

@ -0,0 +1,35 @@
unit uEditorFechaFacturaFinal;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, cxControls, cxContainer, cxEdit, cxTextEdit, cxMaskEdit,
cxDropDownEdit, cxCalendar;
type
TfEditorFechaFacturaFinal = class(TForm)
Label1: TLabel;
eFechaFactura: TcxDateEdit;
Button1: TButton;
Label2: TLabel;
procedure FormShow(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
fEditorFechaFacturaFinal: TfEditorFechaFacturaFinal;
implementation
{$R *.dfm}
procedure TfEditorFechaFacturaFinal.FormShow(Sender: TObject);
begin
eFechaFactura.Date := Date;
end;
end.

View File

@ -0,0 +1,5 @@
object dmGenerarAlbaranesCli: TdmGenerarAlbaranesCli
OldCreateOrder = False
Height = 176
Width = 254
end

View File

@ -0,0 +1,95 @@
unit uGenerarFacProformaFacCliUtils;
interface
uses
Windows, SysUtils, Classes, uBizFacturasCliente, pngimage, JSDialog;
type
TdmGenerarAlbaranesCli = class(TDataModule)
end;
function GenerarAlbaranCli(AFactura : IBizFacturaCliente) : Boolean; overload;
implementation
{$R *.dfm}
uses
uDialogUtils, uDataTableUtils,
uBizAlbaranesCliente,
uAlbaranesClienteController,
uFacturasClienteController;
var
dmGenerarAlbaranesCli: TdmGenerarAlbaranesCli;
AFacturasClienteController : IFacturasClienteController;
AAlbaranesClienteController : IAlbaranesClienteController;
procedure Inicializar;
begin
dmGenerarAlbaranesCli := TdmGenerarAlbaranesCli.Create(nil);
AFacturasClienteController := TFacturasClienteController.Create;
AAlbaranesClienteController := TAlbaranesClienteController.Create;
end;
procedure Finalizar;
begin
FreeAndNIL(dmGenerarAlbaranesCli);
AFacturasClienteController := nil;
AAlbaranesClienteController := nil;
end;
function GenerarAlbaranCli(AFactura : IBizFacturaCliente) : Boolean; overload;
var
AAlbaranNuevo : IBizAlbaranCliente;
begin
Result := False;
if not Assigned(AAlbaranesClienteController) then
Inicializar;
if not Assigned(AFactura) then
raise Exception.Create('Factura de cliente no asignada (GenerarAlbaranCli)');
if not AFactura.DataTable.Active then
AFactura.DataTable.Active := True;
try
AAlbaranNuevo := AAlbaranesClienteController.Nuevo;
with AAlbaranNuevo do
begin
TIPO := CTE_TIPO_ALBARAN_DEV;
ID_CLIENTE := AFactura.ID_CLIENTE;
CALLE := AFactura.CALLE;
CODIGO_POSTAL := AFactura.CODIGO_POSTAL;
POBLACION := AFactura.POBLACION;
PROVINCIA := AFactura.PROVINCIA;
// AAlbaran.PERSONA_CONTACTO := AFactura.PERSONA_CONTACTO;
// AAlbaran.TELEFONO := AFactura.TELEFONO;
IMPORTE_NETO := AFactura.IMPORTE_NETO;
IMPORTE_PORTE := AFactura.IMPORTE_PORTE;
DESCUENTO := AFactura.DESCUENTO;
IMPORTE_DESCUENTO := AFactura.IMPORTE_DESCUENTO;
BASE_IMPONIBLE := AFactura.BASE_IMPONIBLE;
IVA := AFactura.IVA;
IMPORTE_IVA := AFactura.IMPORTE_IVA;
IMPORTE_TOTAL := AFactura.IMPORTE_TOTAL;
// AAlbaran.DataTable.FieldByName(fld_AlbaranesProveedorOBSERVACIONES).AsVariant := AFactura.DataTable.FieldByName(fld_PedidosProveedorOBSERVACIONES).AsVariant;
ID_FORMA_PAGO := AFactura.ID_FORMA_PAGO;
ID_FACTURA := AFactura.ID;
end;
DuplicarRegistros(AFactura.Detalles.DataTable, AAlbaranNuevo.Detalles.DataTable, mdrTodos);
//Sustituir por if de guardar
if AAlbaranesClienteController.Guardar(AAlbaranNuevo) then
ShowInfoMessage('La orden de devolución se ha dado de alta con el código ' + AAlbaranNuevo.REFERENCIA);
finally
AAlbaranNuevo := Nil;
end;
end;
end.

View File

@ -0,0 +1,311 @@
object dmGenerarFacturasCliFacProforma: TdmGenerarFacturasCliFacProforma
OldCreateOrder = False
Height = 176
Width = 254
object JsListaFacturasGeneradas: TJSDialog
Glyph.Data = {
0A54504E474F626A65637489504E470D0A1A0A0000000D494844520000001C00
00001C0806000000720DDF940000000970485973000017120000171201679FD2
520000000467414D410000B18E7CFB5193000003104944415478DAAD96FB4B14
5114C7CFE463DC1E606444BFF54424D3DC55CA52B1CCD7165A219905054182FD
1452FD5810FD100406610A669A998FC4F5BDB6266265DAB60F5DD15E58FE03B2
3F99D29ABBA7B9779C71C61D9D6177CFCE70CFDCB97B3EF7DCF3BD33C38082FD
B502B2B300CC656020048688A24F036233A0671F40D43160BA87BF62AEEE1010
60D7AE293AD8B835815E9B625C80DC8F1E88D4A7C1E8C1FB8F9FD6C3C44035B3
21500A65F6D700FE2EA580A5EC551F4A50359316B31D76EFDC0EE5F72A645045
A067AE0623074B8140891108F1057064CC0D556053DF173812B707E6DCF332A8
225080D201DB4AF99BF335B4D502F371415BCC364833C4C29F458F0C2A031281
081734AB0B3C88403C1E6E3E2E7960F6A8FFD27A7D3EF07A11DA2C76C84A8D87
A57FCB32E8B8A54A4C8C21B59365C9015996EF2240B6634DF435B51460A46D1F
70C093AA46BF09C980C12CA914E6F371ADD707EF1DB3B0B0B8006EB79B8EA96B
EA5106121851245129118FD8BFA2DC5C53C6BAF5EBBBBA97C2D64EC064195B1F
286C76E956A0EA5C51AEB4764A9929F5750D5A9581D2274B9B651C0BA2F514A8
6F28E36B70AD9A4253EF97A9AA55B0CEBA87D03B645B3F43C1DE589C58186D10
81150FCAC57B11E161B04517099BB953C78643141B01BA28EEE4DAB0B04DE2B8
CA460B9C399902E661BB3AB0F5AD038BF30CD4D7E7DD14815A61023027DD00EF
469C1A80FD1C307F1578FD4A81E665945AD68924181A9D5007B6F4DBF1527E32
F5C9D3632351F8F549AEE916B14EAA039BCD362C31A6040D23E7887D4A03B0CF
86C5C6641A24BB7646D3F2D51A77F8C1BCDCFFC79CD3EAC0D7BD56AE86294165
4660CB5C6B737DD3062CCA31D00069E76E05241862CF1EDD05E7D40F756063CF
673C7F5A4F679A59541EF03E4C8C3B0893DF67D481AFBAC7B0F05412CD30EBE2
ED80F7617CEC0198FEF94B1BF06C6622AD4B4EC99D80F7A1666043D7281A3312
FD84C20B8417C3AA789405239826E0CBCE4F98979E10344C33B0BE630473D312
82866906D6993E62F6F1C3F45D160A5305BE68FF8095CF5B4302134CFE1185EA
1FB8A1B4FF4FE32FF6FADB8B5E0000000049454E44AE426082}
Instruction.Text = 'Se han generado las facturas...'
Instruction.Glyph.Data = {
0A54504E474F626A65637489504E470D0A1A0A0000000D494844520000001C00
00001C0806000000720DDF940000000970485973000017120000171201679FD2
520000000467414D410000B18E7CFB5193000003104944415478DAAD96FB4B14
5114C7CFE463DC1E606444BFF54424D3DC55CA52B1CCD7165A219905054182FD
1452FD5810FD100406610A669A998FC4F5BDB6266265DAB60F5DD15E58FE03B2
3F99D29ABBA7B9779C71C61D9D6177CFCE70CFDCB97B3EF7DCF3BD33C38082FD
B502B2B300CC656020048688A24F036233A0671F40D43160BA87BF62AEEE1010
60D7AE293AD8B835815E9B625C80DC8F1E88D4A7C1E8C1FB8F9FD6C3C44035B3
21500A65F6D700FE2EA580A5EC551F4A50359316B31D76EFDC0EE5F72A645045
A067AE0623074B8140891108F1057064CC0D556053DF173812B707E6DCF332A8
225080D201DB4AF99BF335B4D502F371415BCC364833C4C29F458F0C2A031281
081734AB0B3C88403C1E6E3E2E7960F6A8FFD27A7D3EF07A11DA2C76C84A8D87
A57FCB32E8B8A54A4C8C21B59365C9015996EF2240B6634DF435B51460A46D1F
70C093AA46BF09C980C12CA914E6F371ADD707EF1DB3B0B0B8006EB79B8EA96B
EA5106121851245129118FD8BFA2DC5C53C6BAF5EBBBBA97C2D64EC064195B1F
286C76E956A0EA5C51AEB4764A9929F5750D5A9581D2274B9B651C0BA2F514A8
6F28E36B70AD9A4253EF97A9AA55B0CEBA87D03B645B3F43C1DE589C58186D10
81150FCAC57B11E161B04517099BB953C78643141B01BA28EEE4DAB0B04DE2B8
CA460B9C399902E661BB3AB0F5AD038BF30CD4D7E7DD14815A61023027DD00EF
469C1A80FD1C307F1578FD4A81E665945AD68924181A9D5007B6F4DBF1527E32
F5C9D3632351F8F549AEE916B14EAA039BCD362C31A6040D23E7887D4A03B0CF
86C5C6641A24BB7646D3F2D51A77F8C1BCDCFFC79CD3EAC0D7BD56AE86294165
4660CB5C6B737DD3062CCA31D00069E76E05241862CF1EDD05E7D40F756063CF
673C7F5A4F679A59541EF03E4C8C3B0893DF67D481AFBAC7B0F05412CD30EBE2
ED80F7617CEC0198FEF94B1BF06C6622AD4B4EC99D80F7A1666043D7281A3312
FD84C20B8417C3AA789405239826E0CBCE4F98979E10344C33B0BE630473D312
82866906D6993E62F6F1C3F45D160A5305BE68FF8095CF5B4302134CFE1185EA
1FB8A1B4FF4FE32FF6FADB8B5E0000000049454E44AE426082}
Instruction.Icon = tdiCustom
CustomButtons = <
item
Caption = 'Continuar'
Value = 200
Cancel = True
end>
ButtonBar.Buttons = []
ButtonBar.Cancel = cbOK
ButtonBar.UseCancel = False
MainIcon = tdiCustom
Title = 'FactuGES'
Position = dpMainFormCenter
Icon.Data = {
0000010003002020100001000400E8020000360000002020000001000800A808
00001E0300002020000001002000A8100000C60B000028000000200000004000
0000010004000000000000020000000000000000000000000000000000000000
000000008000008000000080800080000000800080008080000080808000C0C0
C0000000FF0000FF000000FFFF00FF000000FF00FF00FFFF0000FFFFFF000000
0000000000000000000000000000000008777777777777777777777700000000
0877767777677776777767760000000008F88888888888888888888700000000
08F8FF8F8F888888888888860000000008FF8F8F88F8F8888888888C00000000
08F88888F8888888888888860000000008F8688878E8888E88E8788700000000
08F8688888F8F8FFFFFF88760000000008FF4888888F8FFFFFFF788700000000
08F8676767677677677658E50000000008FF8888888887878787888700000000
08FF8887887E8888888888860000000008FFE8E8E788C8E8FF8F8F8600000000
08FFF8F8F8F8FF8F88F8F8870000000008FFFFFF8FF8F8F8F88F888600000000
0FF8477878787878788788860000000008FF68888888F8FF8F8F788700000000
08B7588888FF8FFFFFFF78860000083008BB47887776777777776F86000000B7
8B9B73BB88788787E87878870000008BB8B9BB78888888EFF8F8FF8600000087
B8BB8B888E8E8E88FFF8F886000000088BBB888FFFFFFFFFF8F877770000B9BB
B8FFBB9B9BFFFFFFF87466460000BBB9BB8FBBBBB8FFFFFFF88F888700000008
B8BB88888FFFFFFFF88F8F7700000008BBBBBB8FFFFFFFFFFF8887700000007B
B7B98BB8FFFFFFFFF8887700000000B78B9B87B888F88F88F8877000000007B0
08BB883B78888788787700000000000000B9000000000000000000000000FFFF
FFFFF800000FF800000FF800000FF800000FF800000FF800000FF800000FF800
000FF800000FF800000FF800000FF800000FF800000FF800000FF800000FF800
000FF800000FF800000F9800000FC000000FC000000FC000000FE000000F0000
000F0000000FE000000FE000001FC000003FC000007F980000FFFCFFFFFF2800
0000200000004000000001000800000000000004000000000000000000000001
00000001000000000000694731007C5D49007E604C0081635000826451008567
540085685500886B5900896D5B008A6E5D008B705F008E715F008B7260008C72
61008E74640084766C00957A6900977D6D00887B72009A8171009D8272009C84
76009D8778009F897B00A28A7900A08B7D00A18C7E00E1B06E00E1B67D003E7A
970073A0A5007AA2B70074AFBD007BB2BB003CAACE0028A5DB0020ADDF000D9A
E500209EE3000DA6E2001AA4EF0000A6FF000CABFE0009ACFE0010A4F10015AC
FA0000B5FB0000B0FD000CB6FC0000BFF90000BAFD0004BAFD0009BBFB0013B6
F40015BFFA001CBDFB0026B7FD00589EC50040A4CD0040ABCC0050A2C7005DAE
C00060A3C20062A4C60060B7CB006AB0CD007BB6C80077BAC80061BADD0044AD
E50000C3F80007C6FB0000CAF80000CFFB0000D4F90026C8FA0026CDF8002BCC
F90039C4FB0039C2FC0039CAFA003FCFFB0024D6F80030D2F80039D5F80000F8
F8001FF8F8002CF6F8003EF4F8005AC6DC0070CDDF0052C0E40054C9E3004DCE
FA005FC7FF004FD2FB004DD9F8005FD9FB006ED3E70063CDFE0060D1FB0060D8
F90060DDF80046F8F90056F0F8005FFAFA0073E3F80073E4F90073EEF80060F1
F800958A84009A918C0081999500A68F8200AD968500A3968C00AE988900AD9A
8D00B19A8B00AF9C9000B09E9200B59F9200B7A29300B2A19600B5A19400B7A4
9700BDA79700B4A39800B1A59D00B4A79F00BAA69800BCA79900B4A89F00BCA8
9900BAA89C00BDAA9D00BEAC9E0083ADBD00B5A9A100BDABA000BEADA100BFAF
A500A0BABE00C0AB9E00C1AC9E00C6AE9F00E2B98100E4BA8300E4BB8400E5BC
8500E1BD8E00E3BF9000C0ADA000C2B0A300C2B1A500C4B2A600C1B2A800C3B5
AB00C8B4A800CCB9AD00CEBCB100D0BEB200D1BFB400E4C19300E5C29400E6C4
9600E8C69900D0C9A300CFC1B800D2C1B600D3C3B800D5C4B900D6C6BC00D8C6
BC00D6C8BE00DAC9BF00ECD3B000EDD4B200EFD6B500E7D1B800E7D3BD00F0D8
B6008CB7C40080BEC70097C3C70099C3C900ABD7CF00AFD9DD0086E3F90086E7
F90086ECF8009EE5FB0090E8F900ACEDFC00BCEAFD00BCF1FB00BFF1FD00D7C9
C000D9CAC100DCCBC200DACCC200DDCCC300DACCC400DDCEC400DED0C600DED1
C900DED3CC00DFD4CD00E1D1C900E2D5CD00F0DCC200E3D8D200E5D9D200E2DA
D500E6DBD400E5DCD500E8DDD600E6DDD800E9DFD900E6E0DB00EAE0DA00EAE2
DD00ECE3DE00EBE4DE00ECE4DE00F3E7D900C6E1EF00C9EFFD00D7F6FD00DFF3
FF00DFFEFE00EBE7E300EDE6E100EFE7E400EEE8E400F0EAE600F2EDE900F2EE
EC00F4EFEC00F5F0EE00F9F4ED00E7FAFD00EBF8FF00F6F2F000F7F4F100F8F4
F200F9F7F500FAF8F600FBF9F900FCFBFA00FCFCFB00FEFEFE00000000000000
0000000000000000000000000000000000000000000000000000000000000000
00000000000000000000007D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D
0D0D0000000000000000009C9C19191919191919191919191919191919191919
1903000000000000000000ABDECBCBC7C7AFABABABABAAA3A2A2A0A0A0A0A0A0
8607000000000000000000ABECEAE9DEDEDEDED7D5D2D2D2CBCBCBCBB0CBB0CB
9007000000000000000000ABEDECEAE9DEDEDBD7D7D5D2D2D2CDCDCBB0B0B0B0
9007000000000000000000AFEDE9A9CFD2CFD2CDCBCBCBB0B0ABACA3A3A3A3B0
9007000000000000000000AFF0D5017783838386868686869099909999907BB0
9007000000000000000000B0F4D501A0B0CBD2D5DEECEDF7FAFAFAFAFAF77BAA
9007000000000000000000CBF4DC01A0B0B0B0D2D5DBEAEDF7FAFAFAFAF47BB0
9007000000000000000000CBF8DC010404070604090909090D0D110D110D02A3
9007000000000000000000CBFAED9E9E9E9C999E8C8C8C868683837E7D7D7ACB
9007000000000000000000CBFAF1A7A7A6A6A6A69898989898B5DBDBD5D5D2D2
9907000000000000000000CDFAF796969696961D961D931D1DB4DEDBD7D5D5D2
9C07000000000000000000CFFAFAFAFAF8F7F0F0EDEDEDECE9E9DEDEDED7D5D5
9907000000000000000000CDFAFAEAF0EDEDECEAEAE9DEDEDBDCD5D5D5D5D2D5
9C07000000000000000000D2FAEC01737D7D7B7D7D7B7D7B7D7B7B7B7D7B7DD2
9907000000000000000000CFFAEC019EABB0CBD2D5DCDEECEDF4F4F4F4EA7BD2
9C07000000000000000000B9524601A0B0B0CBB5D5DEEAEDF7FAFAFAFAF47DD5
9C070000000000213F0000B83226010C3F5C1F111214141616191B1B1B1807D2
9C07000000000000253D8A5B322D711E2860BA7E7E7A7E797A797979767676D5
9E0700000000000041375E662F2B65314EBBB6B6B6B6B4B4B1E2F4EDEDEDECEA
9C070000000000008F5D66663232394EC1A81C1C1C1C1C1C1CD3F7F4EDDED7D5
9C0700000000000000B7BE6E5758BEBDE4E6E6F3FAFAFAFAFAFAF7F4D5928675
7304000000002A2A2A2A4A6AFAE7562F2A2A2A5FFAFAFAFAFAFAF8D577010101
0101000000004747472F4A59C5E7564A32474766FAFAFAFAFAFAFADCA0D2CFB0
A20C00000000000000436C6958686D6BC2C5C5E7FAFAFAFAFAFAFADEAADEDBCB
1470000000000000004551534A4A5250C0E7FAFAFAFAFAFAFAFAFADEAAD7B514
700000000000000042384C54472B613550C3FAFAFAFAFAFAFAFAFADEA1B0196F
000000000000000024234463322EBC5A3664E3ECE9E9E9E9E9E9E9CF90731300
000000000000003A3C00002232298B8B3E3B207E8B7E8B7E827E817E74100000
0000000000000000000000003227000000000000000000000000000000000000
000000000000FFFFFFFFF800000FF800000FF800000FF800000FF800000FF800
000FF800000FF800000FF800000FF800000FF800000FF800000FF800000FF800
000FF800000FF800000FF800000FF800000F9800000FC000000FC000000FC000
000FE000000F0000000F0000000FE000000FE000001FC000003FC000007F9800
00FFFCFFFFFF2800000020000000400000000100200000000000801000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000007067
5F70AA9382E570513CE3735540E3735540E3735540E3735540E3735540E37355
40E3735540E3735540E3735540E3735540E3735540E3735540E3735540E37355
40E3735540E3735540E3735540E3735540E3735540E3735540E372533EE5BAAB
A070000000000000000000000000000000000000000000000000000000005E54
4C7FCAB7ABFFC5B5AAFFA18877FFA28A78FFA28A79FFA28A79FFA28A79FFA28A
79FFA28A79FFA28A79FFA28A79FFA28A79FFA28A79FFA28A79FFA28A79FFA28A
79FFA28A79FFA28A79FFA28A79FFA28A79FFA28A79FFA58D7CFF7A5B46FFB2A1
967F000000000000000000000000000000000000000000000000000000006055
4D7ED7C6BBFFEDE4E0FFD9CCC4FFD9CCC4FFD9CBC3FFD8CAC1FFD7C9BFFFD6C7
BDFFD5C6BBFFD4C4BAFFD3C3B8FFD2C1B7FFD1C0B5FFD0BEB3FFCFBDB2FFCEBC
B0FFCEBBAFFFCEBBAFFFCEBBAFFFCEBBAFFFCEBCB0FFBEAA9CFF82644FFFB2A1
967E000000000000000000000000000000000000000000000000000000006056
4D7ED7C8BCFFF2EBE8FFEFE9E5FFEEE7E2FFECE5E0FFEBE2DEFFEAE0DBFFE9DE
D8FFE7DBD4FFE5D9D1FFE3D7CFFFE2D4CCFFE1D2C9FFDFD0C7FFDDCDC4FFDCCB
C2FFDBC9BFFFDBC9BFFFDBC9BFFFDBC9BFFFDCCAC1FFC1AC9FFF81634FFFB2A1
967E000000000000000000000000000000000000000000000000000000006155
4E7ED8C9BDFFF3EDE9FFF1EAE6FFF0E9E6FFEEE6E1FFECE4DFFFEBE2DDFFEAE0
DAFFE9DED7FFE7DBD4FFE5D9D1FFE3D7CFFFE2D4CCFFE1D2C9FFDFD0C7FFDDCD
C4FFDCCBC2FFDBC9BFFFDBC9BFFFDBC9BFFFDCCAC0FFC1AC9FFF81634FFFB2A1
967E000000000000000000000000000000000000000000000000000000006157
4E7ED9C9BFFFF4EFEDFFEFE8E3FFD0C2B9FFDFD5CEFFE0D5CEFFE0D4CCFFDED3
CBFFDDD1C8FFDCCFC6FFDACCC4FFD9CBC1FFD8C9BFFFD7C7BDFFD6C5BBFFD5C4
B9FFD3C2B7FFD2C0B5FFD2BFB4FFD2BFB4FFDAC8BEFFC1AC9FFF81634FFFB2A1
967E000000000000000000000000000000000000000000000000000000006256
4F7EDACCC0FFF5F2EFFFE5DDD9FF5C3821FFB0998AFFB8A394FFB8A394FFB9A3
94FFB8A495FFB9A597FFB9A698FFBAA698FFBBA799FFBBA89AFFBBA89BFFBCA8
9BFFBCA89BFFBCA89BFFBBA89AFFB49E8FFFD8C6BBFFC1AC9FFF81634FFFB2A1
967E000000000000000000000000000000000000000000000000000000006256
4F7EDBCBC1FFF8F4F3FFE7E0DBFF5F3C24FFD0BDB2FFDCCBC1FFDDCCC3FFE2D2
CBFFE7DBD4FFEDE2DEFFF0E8E6FFF5F0EDFFF9F7F4FFFDFDFDFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFAF8F7FFB39D8DFFD8C6BBFFC1AC9FFF81634FFFB2A1
967E000000000000000000000000000000000000000000000000000000006256
4F7EDCCEC3FFFAF6F5FFE9E2DDFF5F3C24FFD2BFB5FFDFCDC4FFDECCC3FFE0CE
C6FFE4D4CDFFE9DDD6FFEFE4E0FFF1EAE8FFF7F1EFFFFBF8F6FFFFFEFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFCFBFAFFB5A090FFD9C7BEFFC1AD9FFF81634FFFB2A1
967E000000000000000000000000000000000000000000000000000000006257
4F7EDDCFC4FFFCF9F9FFE9E4E0FF5F3A23FF7C5D49FF7F5F4CFF7E5F4CFF7E60
4DFF7F614DFF816350FF826552FF836654FF846856FF856A57FF866B59FF876C
5BFF876D5BFF876D5BFF866B59FF72523DFFD5C3B9FFC1AFA1FF81634FFFB2A1
967E000000000000000000000000000000000000000000000000000000006357
507EDECFC6FFFCFCFBFFF4F1F0FFC3B6AEFFC3B5ADFFC1B4ACFFC0B3AAFFBFB1
A9FFBEB0A6FFBDAEA5FFBDACA3FFBCABA2FFBBAAA0FFBAA99FFFB8A69AFFB8A4
98FFB6A396FFB5A194FFB49F93FFB39D90FFDCCDC4FFC2AEA1FF81634FFFB2A1
967E000000000000000000000000000000000000000000000000000000006357
507EDFD2C7FFFEFEFDFFF9F5EFFFE8C696FFE9C799FFE8C697FFE7C596FFE7C4
95FFE6C394FFE5C293FFE4C091FFE4C090FFE3BF8FFFE2BD8CFFE9D5BFFFEBE1
DCFFEADFD8FFE7DCD5FFE5DAD3FFE4D8D0FFE3D4CCFFC2AFA2FF81634FFFB2A1
967E000000000000000000000000000000000000000000000000000000006458
517EE0D3C8FFFFFFFFFFFAF5EFFFE3B77CFFE4B97FFFE2B87EFFE3B77DFFE2B7
7CFFE2B67BFFE1B57AFFE1B479FFE0B478FFE0B377FFDFB174FFE6D0B7FFEBE1
DCFFE8DFD9FFE8DDD6FFE6D9D2FFE3D8D1FFE4D7CFFFC3AFA2FF81634FFFB2A1
967E000000000000000000000000000000000000000000000000000000006458
517EE1D2C9FFFFFFFFFFFEFEFDFFFEFFFFFFFCFDFEFFFBFBFBFFF9F7F8FFF8F5
F6FFF7F3F2FFF5F1F0FFF4EFEEFFF1EDEBFFF0EBE9FFEEE9E6FFEDE6E2FFECE3
DEFFEBE1DBFFE9DFD9FFE8DDD6FFE6DAD3FFE5D9D2FFC3B0A3FF81634FFFB2A1
967E000000000000000000000000000000000000000000000000000000006459
517EE1D4CAFFFFFFFFFFFDFDFCFFEEEBE8FFF5F2F0FFF4F0EFFFF3EFECFFF2ED
EAFFF1EBE8FFEEE9E5FFEFE7E3FFECE5E1FFEAE4DEFFEAE1DCFFE8E0DAFFE7DE
D8FFE6DDD6FFE5DBD4FFE4D8D1FFE2D6CEFFE6DBD4FFC3B1A4FF81634EFFB2A1
967E000000000000000000000000000000000000000000000000000000006559
527EE2D4CAFFFFFFFFFFF0ECEAFF5B361EFFAB9383FFB39D8EFFB39D8DFFB39D
8DFFB29D8DFFB29C8DFFB29C8CFFB29C8CFFB29C8CFFB29C8CFFB29C8CFFB29C
8CFFB29C8CFFB29C8CFFB29C8DFFB39D8EFFE3D8D0FFC4B1A4FF81634EFFB2A1
967E000000000000000000000000000000000000000000000000000000006559
527EE5D4CAFFFFFFFFFFF7F0EBFF5F3B24FFCCB8ADFFD7C5BAFFD9C7BDFFDCCC
C3FFE1D4CCFFE5DAD4FFE8E0DBFFEDE5E1FFF1EBE9FFF5F2EFFFF7F5F3FFF8F6
F4FFF8F5F4FFF8F6F4FFF1EEEAFFB29C8DFFE6DAD3FFC4B2A5FF81634EFFB2A1
967E00000000000000000000000000000000000000000000000000000000685A
527E9AC6C9FF35CFFEFF3DAEEBFF663E24FFD2BFB4FFE0CBBFFFE0C9BDFFE1CD
C4FFE4D5CDFFE9DED7FFEEE5E0FFF2EBE8FFF6F2F0FFFCF8F8FFFFFFFEFFFFFF
FFFFFFFFFFFFFFFFFFFFFCFAF9FFB49E8FFFE7DED7FFC5B3A6FF81634EFFB2A1
967E00000000000000000000000000000000007792910072A7A3001E33366957
4C7C86C1C8FF00BFFBFF079AEBFF6A3E23FF926D57FF5FA3C8FF4AC1E8FF6C9C
A2FF917260FF927767FF947A69FF957C6CFF977E6FFF998171FF9A8374FF9B85
76FF9C8678FF9C8678FF998274FF7D5E49FFE3D9D4FFC5B3A7FF81634EFFB2A1
967E00000000000000000000000000000000005A6F7000A9E5E40075AEAE5C90
A5BD75D0E0FF00BFFAFF0CA3F4FF8A9A91FF3C7492FF03A4E4FF4AD5FFFF98C4
CBFFB3A196FFB1A197FFB0A096FFB09F95FFAF9D92FFAF9C91FFAD9A8EFFAC99
8CFFAB988AFFAB9789FFAA9688FFA99386FFE8E0DAFFC5B4A7FF81634EFFB2A1
967E00000000000000000000000000000000000000002DA5BFC110C2FFFF4DD0
FDFF64DBF9FF00B3FAFF09A8FEFF68D7FFFF04B5FFFF24CCFBFFAFD8CEFFF7DA
B8FFF3DBBBFFF3DBBAFFF2D9B9FFF1D8B7FFF0D7B4FFEED5B2FFF6EADDFFF9F6
F4FFF7F3F1FFF5F1EEFFF5EFECFFF4EDEAFFF1EBE7FFC6B4A8FF81634EFFB2A1
967E00000000000000000000000000000000000000005F8A909142C7E4E960DE
F8FF64D7FAFF00B6FDFF00B8FDFF21B2FDFF1ECCF7FF93EBFCFFD2C69BFFE1AB
63FFDFAC66FFDFAC66FFDFAC66FFDFAC66FFDFAC66FFDEA961FFEFDBC0FFF8F6
F5FFF6F2F0FFF3EDEBFFECE2DCFFE9DFD9FFE5DBD6FFC2B1A4FF81634FFFB2A1
967E000000000000000000000000000E171A000E171A00040B145994A4A990EB
FCFF61F1F7FF13FAF7FF23F9F7FF93EDF7FF8CE5F8FFD5F2FDFFE9F8FFFFE7F8
FFFFF0FCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFFFDFEFFFFFAFAF9FFF9F7
F5FFF7F2F0FFE8DFD8FFC7AE9FFFBEA998FFAF9888FFB09A8AFF7F604DFFB2A1
967E00000000000000000000000000AAFFFF00AAFFFF00AAFFFF00A4FFFF00CD
FAFF5DFCF9FFFFFFFFFFEEFEFEFF00FBF7FF00AAFEFF00A1FFFF00A1FFFF00A0
FFFF56C3FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCFDFBFFFCFBFAFFFBFA
F8FFE6DDD6FFAA9180FF5D3922FF603D26FF613E27FF613E28FF634029FFB4A3
987E00000000000000000000000000CAFFFF00CAFFFF00CBFFFF00B0FFFF00CD
FBFF38F5F7FFC3EFFAFFF0FFFEFF00FAF7FF00C8F7FF00C2F7FF00C2F7FF00C1
F7FF57D7FAFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFDFDFCFFFCFC
FBFFE7DED8FFCCB9ACFFE6DBD5FFE2D7D0FFDCCFC5FFD7C5BBFF8E705DFFB4A2
9680000000000000000000000000002E383C002E383C00252F364C99B0B57DE8
FBFF59F1F7FF25F7F7FF41FAF8FF7CEEF7FF77E4F7FFB5EFFCFFC6F2FDFFC3F2
FDFFD9F6FCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFEFEFFFEFE
FEFFE9E1DAFFCEBCAFFFF1E9E3FFEADFD8FFE4D5CCFF9D816FFF3A291F868985
831C00000000000000000000000000000000000000004E7073774AB0DADC37C9
FBFF22D5F7FF00D3F9FF02C3FBFF37D5F7FF34BEFCFFA2E6FAFFECFBFDFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFF
FFFFEAE2DCFFCDBBADFFEADFD8FFE3D5CBFF9F8271FF3E2D2386050100200000
000000000000000000000000000000000000000000003E9CC4C219C0FFFF23C9
FCFF30D3F8FF00BEF8FF06A8FEFF4FDCF8FF00B8FCFF32C2FBFFC0EBFCFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFEAE3DEFFCDB9ABFFDDCEC4FFA58979FF3E2C1F8F0905041B000000000000
000000000000000000000000000000000000003451510099DDDB0091C0C35DAD
BCCF76D7E9FF00BEF9FF10A9FBFFBDDEDEFF5AC8DDFF0AB5F7FF62CEFFFFCBE4
F1FFF1E7E0FFEFE7E1FFEEE6E1FFEEE6E1FFEEE6E0FFEDE6E0FFEDE5E0FFEEE6
E1FFE1D4CCFFC5AE9FFFA68D7FF53E2718A10402000E00000000000000000000
0000000000000000000000000000000000000075B7AF0099C7C500323E425442
3B5C6BA8B1DA00C1FCFF0EA1F3F8A98E80C0AB9081C12698B1C10088C4C14C85
A3C1A18D80C19E8D81C19E8B81C19D8C80C19B8C7FC19B8A7FC19C897FC19A89
7EC19B8B7EC1897769C2432B1BAC000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
00000045565A00C5FFFF0094E6E2000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000FFFFFFFFF0000007F0000007F0000007F000
0007F0000007F0000007F0000007F0000007F0000007F0000007F0000007F000
0007F0000007F0000007F0000007F0000007F0000007F0000007800000078000
0007C0000007C000000700000007000000070000000700000007C000000FC000
001F8000003F800000FFF8FFFFFF}
Width = 450
Left = 72
Top = 16
end
end

View File

@ -0,0 +1,317 @@
unit uGenerarFacturasCliFacProformaUtils;
interface
uses
Windows, SysUtils, Classes, uBizFacturasProforma, uBizFacturasCliente, pngimage, JSDialog;
type
TdmGenerarFacturasCliFacProforma = class(TDataModule)
JsListaFacturasGeneradas: TJSDialog;
end;
function GenerarFacturaCliFacProforma(const IDFacturaProforma : Integer; const CopiarDetalles: Boolean = True) : Boolean; overload;
function GenerarFacturaCliFacProforma(AFacturaProforma : IBizFacturaProforma; FechaFacturaNueva:TDateTime; const CopiarDetalles: Boolean = True) : Boolean; overload;
function GenerarFacturaCliFacProforma : Boolean; overload;
//Siempre se hará una relación 1 a 1 entre facturas proforma y facturas
function GenerarFacturas(AFacturas : IBizFacturaCliente; AFacturaProforma : IBizFacturaProforma; FechaFacturaNueva:TDateTime; const CopiarDetalles: Boolean = True): Boolean;
implementation
{$R *.dfm}
uses
DB, uDialogUtils, uDADataTable, uControllerDetallesBase, uEditorFechaFacturaFinal,
uBizDetallesFacturaCliente, uBizDetallesFacturaProforma,
uFacturasProformaController, uDetallesFacturaClienteController,
uFacturasClienteController, schFacturasClienteClient_Intf, schFacturasProformaClient_Intf;
var
dmGenerarFacturasCliFacProforma: TdmGenerarFacturasCliFacProforma;
AFacturasClienteController : IFacturasClienteController;
AFacturasProformaController : IFacturasProformaController;
ADetallesAlbaranesClienteController : IDetallesFacturaClienteController;
procedure CopiarArticulosFacturaProforma(AOrigen: IBizDetallesFacturaProforma;
ADestino : IBizDetallesFacturaCliente);
var
i : integer;
ADetallesController : IDetallesFacturaClienteController;
begin
if not Assigned(AOrigen) then
raise Exception.Create ('Origen no asignado (CopiarArticulosFacturaProforma)');
if not Assigned(ADestino) then
raise Exception.Create ('Destino no asignado (CopiarArticulosFacturaProforma)');
if not AOrigen.DataTable.Active then
AOrigen.DataTable.Active := True;
if not ADestino.DataTable.Active then
ADestino.DataTable.Active := True;
ADetallesController := TDetallesFacturaClienteController.Create;
try
//OJO IMPORTANTE
//Siempre que vayamos a trabajar con los detalles debemos hacer un beginupdate de los mismos y un endupdate para
//obligarle siempre a recalcular los detalles una sola vez
ADetallesController.BeginUpdate(ADestino);
AOrigen.DataTable.First;
for i := 0 to AOrigen.DataTable.RecordCount - 1 do
begin
ADetallesController.Add(ADestino, TIPO_DETALLE_CONCEPTO);
ADestino.Edit;
// ADestino.REFERENCIA := AOrigen.REFERENCIA;
if AOrigen.ID_ARTICULO > 0 then
ADestino.ID_ARTICULO := AOrigen.ID_ARTICULO;
ADestino.CONCEPTO := AOrigen.CONCEPTO;
ADestino.CANTIDAD := AOrigen.CANTIDAD;
ADestino.IMPORTE_UNIDAD := AOrigen.IMPORTE_UNIDAD;
ADestino.IMPORTE_TOTAL := AOrigen.IMPORTE_TOTAL;
ADestino.DESCUENTO := AOrigen.DESCUENTO;
ADestino.IMPORTE_PORTE := AOrigen.IMPORTE_PORTE;
ADestino.VISIBLE := AOrigen.VISIBLE;
// ADestino.REFERENCIA_PROVEEDOR := AOrigen.REFERENCIA_PROVEEDOR;
ADestino.Post;
AOrigen.Next;
end;
finally
ADetallesController.EndUpdate(ADestino);
ADetallesController := NIL;
end;
end;
procedure Inicializar;
begin
dmGenerarFacturasCliFacProforma := TdmGenerarFacturasCliFacProforma.Create(nil);
AFacturasClienteController := TFacturasClienteController.Create;
AFacturasProformaController := TFacturasProformaController.Create;
// ADetallesAlbaranesClienteController := TDetallesFacturaClienteController.Create;
end;
procedure Finalizar;
begin
FreeAndNIL(dmGenerarFacturasCliFacProforma);
AFacturasClienteController := nil;
AFacturasProformaController := nil;
// ADetallesAlbaranesClienteController := nil;
end;
function GenerarFacturaCliFacProforma(const IDFacturaProforma : Integer; const CopiarDetalles: Boolean = True) : Boolean; overload;
var
AFacturaProforma : IBizFacturaProforma;
AFechaFactura: TDateTime;
begin
Result := False;
try
if not Assigned(AFacturasProformaController) then
Inicializar;
AFacturaProforma := AFacturasProformaController.Buscar(IDFacturaProforma);
if Assigned(AFacturaProforma) then
begin
//Preguntamos la fecha que deseamos tengan la factura a generar
with TfEditorFechaFacturaFinal.Create(Nil) do
begin
ShowModal;
AFechaFactura := eFechaFactura.Date;
Free;
end;
Result := GenerarFacturaCliFacProforma(AFacturaProforma, AFechaFactura);
end;
if Assigned(AFacturasProformaController) then
Finalizar;
finally
AFacturaProforma := NIL;
end;
end;
function GenerarFacturaCliFacProforma(AFacturaProforma : IBizFacturaProforma; FechaFacturaNueva:TDateTime; const CopiarDetalles: Boolean = True) : Boolean; overload;
var
AFacturasNuevas : IBizFacturaCliente;
i: Integer;
begin
Result := False;
if not Assigned(AFacturaProforma) then
raise Exception.Create('Factura proforma no asignada (GenerarFacturaCliFacProforma)');
if not AFacturaProforma.DataTable.Active then
AFacturaProforma.DataTable.Active := True;
if not Assigned(AFacturasProformaController) then
Inicializar;
try
AFacturasNuevas := AFacturasClienteController.Nuevo(False);
if GenerarFacturas(AFacturasNuevas, AFacturaProforma, FechaFacturaNueva, CopiarDetalles) then
begin
if AFacturasNuevas.DataTable.RecordCount = 1 then
ShowInfoMessage('La factura se ha dado de alta con el código ' + AFacturasNuevas.REFERENCIA)
else begin
with dmGenerarFacturasCliFacProforma.JsListaFacturasGeneradas.Content do
begin
Clear;
AFacturasNuevas.DataTable.Last;
for i := 0 to AFacturasNuevas.DataTable.RecordCount - 1 do
begin
if Length(AFacturasNuevas.REFERENCIA) > 0 then
Add(AFacturasNuevas.REFERENCIA + ': ' + AFacturasNuevas.NOMBRE);
AFacturasNuevas.DataTable.Prior;
end;
end;
dmGenerarFacturasCliFacProforma.JsListaFacturasGeneradas.Execute;
end;
Result := True;
end;
finally
AFacturasNuevas := NIL;
if Assigned(AFacturasProformaController) then
Finalizar;
end;
end;
function GenerarFacturaCliFacProforma : Boolean; overload;
var
AFacturasProforma : IBizFacturaProforma;
AFechaFactura: TDateTime;
begin
Result := False;
try
if not Assigned(AFacturasProformaController) then
Inicializar;
// AFacturasProforma := AFacturasProformaController.ElegirFacturasProforma(AFacturasProformaController.BuscarSinFacturar,
// 'Elija la factura proforma que desea utilizar para dar de alta la factura.' , True);
if Assigned(AFacturasProforma) then
begin
//Preguntamos la fecha que deseamos tengan las facturas a generar
with TfEditorFechaFacturaFinal.Create(Nil) do
begin
ShowModal;
AFechaFactura := eFechaFactura.Date;
Free;
end;
Result := GenerarFacturaCliFacProforma(AFacturasProforma, AFechaFactura);
end;
if Assigned(AFacturasProformaController) then
Finalizar;
finally
AFacturasProforma := Nil;
end;
end;
function GenerarFacturas(AFacturas : IBizFacturaCliente; AFacturaProforma : IBizFacturaProforma; FechaFacturaNueva:TDateTime; const CopiarDetalles: Boolean = True): Boolean;
var
AFacturaActual : IBizFacturaCliente;
AFacturasProformaController : IFacturasProformaController;
I: Integer;
bEnEdicion : Boolean;
begin
// ATENCIÓN!!! AFacturas tiene que estar vacio para no pisar facturas
// ya generadas.
if not Assigned(AFacturas) then
raise Exception.Create ('Factura no asignada (Anadir)');
if not Assigned(AFacturaProforma) then
raise Exception.Create ('FacturaProforma no asignada (Anadir)');
if not AFacturas.DataTable.Active then
AFacturas.DataTable.Active := True;
if not AFacturaProforma.DataTable.Active then
AFacturaProforma.DataTable.Active := True;
AFacturasProformaController := TFacturasProformaController.Create;
try
// Ordenar por fecha de albaran
AFacturaProforma.DataTable.Sort([fld_FacturasProformaFECHA_FACTURA], [uDADataTable.sdAscending]);
AFacturaProforma.First;
for I := 0 to AFacturaProforma.DataTable.RecordCount - 1 do
begin
AFacturaProforma._Cliente := NIL;
AFacturaActual := NIL;
// Creo una factura nueva
AFacturasClienteController.Anadir(AFacturas);
//Asignamos a la factura la fecha pasada por parametro
AFacturas.FECHA_FACTURA := FechaFacturaNueva;
AFacturas.BASE_IMPONIBLE := AFacturaProforma.BASE_IMPONIBLE;
AFacturas.DESCUENTO := AFacturaProforma.DESCUENTO;
AFacturas.IMPORTE_DESCUENTO := AFacturaProforma.IMPORTE_DESCUENTO;
AFacturas.IVA := AFacturaProforma.IVA;
AFacturas.IMPORTE_IVA := AFacturaProforma.IMPORTE_IVA;
AFacturas.RE := AFacturaProforma.RE;
AFacturas.IMPORTE_RE := AFacturaProforma.IMPORTE_RE;
AFacturas.IMPORTE_TOTAL := AFacturaProforma.IMPORTE_TOTAL;
// AFacturas.OBSERVACIONES := AFacturaProforma.OBSERVACIONES;
AFacturas.ID_CLIENTE := AFacturaProforma.ID_CLIENTE;
AFacturas.NIF_CIF := AFacturaProforma.NIF_CIF;
AFacturas.NOMBRE := AFacturaProforma.NOMBRE;
AFacturas.ID_DIRECCION := AFacturaProforma.ID_DIRECCION;
AFacturas.CALLE := AFacturaProforma.CALLE;
AFacturas.POBLACION := AFacturaProforma.POBLACION;
AFacturas.CODIGO_POSTAL := AFacturaProforma.CODIGO_POSTAL;
AFacturas.ID_FORMA_PAGO := AFacturaProforma.ID_FORMA_PAGO;
AFacturas.IMPORTE_NETO := AFacturaProforma.IMPORTE_NETO;
AFacturas.IMPORTE_PORTE := AFacturaProforma.IMPORTE_PORTE;
AFacturas.ID_TIPO_IVA := AFacturaProforma.ID_TIPO_IVA;
AFacturas.RECARGO_EQUIVALENCIA := AFacturaProforma.RECARGO_EQUIVALENCIA;
AFacturaActual := AFacturas;
//Importante recuperamos el objeto cliente para que no nos falle el procesamiento de la factura
AFacturasClienteController.RecuperarCliente(AFacturaActual);
AFacturaActual.Cliente.DataTable.Active := True;
// Ya tengo la factura. Le añado los conceptos de la factura proforma
AFacturaActual.Detalles.DataTable.Last;
//Se pone la referencia de la factura proforma y el total y nos olvidamos de los detalles
if not CopiarDetalles then
begin
AFacturasClienteController.DetallesController.Add(AFacturaActual.Detalles, TIPO_DETALLE_CONCEPTO);
with AFacturaActual.Detalles do
begin
Edit;
CONCEPTO := 'Factura proforma ' + AFacturaProforma.REFERENCIA + ' - ' + DateToStr(AFacturaProforma.FECHA_FACTURA);
CANTIDAD := 1;
IMPORTE_UNIDAD := AFacturaProforma.IMPORTE_TOTAL;
Post;
end;
end
//Se copian los detalles de la factura proforma a la factura
else
// Añado el contenido de la factura proforma
CopiarArticulosFacturaProforma(AFacturaProforma.Detalles, AFacturaActual.Detalles);
// Guardo la factura que acabo de generar o editar
AFacturaActual.CalcularImporteTotal;
AFacturasClienteController.Guardar(AFacturaActual);
// Asocio la factura con la factura proforma
AFacturaProforma.Edit;
AFacturaProforma.ID_FACTURA_FINAL := AFacturaActual.ID;
AFacturaProforma.Post;
AFacturasProformaController.Guardar(AFacturaProforma);
AFacturaProforma.Next;
end;
Result := True;
finally
AFacturasProformaController := NIL;
// HideHourglassCursor
end;
end;
end.

View File

@ -0,0 +1,40 @@
package PedCli_FacProforma_relation;
{$R *.res}
{$ALIGN 8}
{$ASSERTIONS ON}
{$BOOLEVAL OFF}
{$DEBUGINFO ON}
{$EXTENDEDSYNTAX ON}
{$IMPORTEDDATA ON}
{$IOCHECKS ON}
{$LOCALSYMBOLS ON}
{$LONGSTRINGS ON}
{$OPENSTRINGS ON}
{$OPTIMIZATION ON}
{$OVERFLOWCHECKS OFF}
{$RANGECHECKS OFF}
{$REFERENCEINFO ON}
{$SAFEDIVIDE OFF}
{$STACKFRAMES OFF}
{$TYPEDADDRESS OFF}
{$VARSTRINGCHECKS ON}
{$WRITEABLECONST OFF}
{$MINENUMSIZE 1}
{$IMAGEBASE $400000}
{$IMPLICITBUILD OFF}
requires
rtl,
Contactos_model,
Contactos_controller,
PedidosCliente_model,
PedidosCliente_controller,
Base,
FacturasProforma_model,
FacturasProforma_controller;
contains
uGenerarFacturasProformaUtils in 'uGenerarFacturasProformaUtils.pas' {dmGenerarFacturasProforma};
end.

View File

@ -0,0 +1,654 @@
<?xml version="1.0" encoding="utf-8"?>
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<ProjectGuid>{69494a8c-0a35-41ea-b8ec-ea790bfc0662}</ProjectGuid>
<MainSource>PedCli_FacProforma_relation.dpk</MainSource>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<DCC_DCCCompiler>DCC32</DCC_DCCCompiler>
<DCC_DependencyCheckOutputName>..\..\..\..\Output\Debug\Cliente\PedCli_FacProforma_relation.bpl</DCC_DependencyCheckOutputName>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<Version>7.0</Version>
<DCC_DebugInformation>False</DCC_DebugInformation>
<DCC_LocalDebugSymbols>False</DCC_LocalDebugSymbols>
<DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo>
<DCC_DcuOutput>.\</DCC_DcuOutput>
<DCC_ObjOutput>.\</DCC_ObjOutput>
<DCC_HppOutput>.\</DCC_HppOutput>
<DCC_BplOutput>..\..\..\..\Output\Debug\Cliente</DCC_BplOutput>
<DCC_DcpOutput>..\..\Lib</DCC_DcpOutput>
<DCC_UnitSearchPath>..\..\..\Lib;..\..\Lib</DCC_UnitSearchPath>
<DCC_ResourcePath>..\..\..\Lib;..\..\Lib</DCC_ResourcePath>
<DCC_ObjPath>..\..\..\Lib;..\..\Lib</DCC_ObjPath>
<DCC_IncludePath>..\..\..\Lib;..\..\Lib</DCC_IncludePath>
<DCC_Define>RELEASE</DCC_Define>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<Version>7.0</Version>
<DCC_DcuOutput>.\</DCC_DcuOutput>
<DCC_ObjOutput>.\</DCC_ObjOutput>
<DCC_HppOutput>.\</DCC_HppOutput>
<DCC_BplOutput>..\..\..\..\Output\Debug\Cliente</DCC_BplOutput>
<DCC_DcpOutput>..\..\Lib</DCC_DcpOutput>
<DCC_UnitSearchPath>..\..\..\Lib;..\..\Lib</DCC_UnitSearchPath>
<DCC_ResourcePath>..\..\..\Lib;..\..\Lib</DCC_ResourcePath>
<DCC_ObjPath>..\..\..\Lib;..\..\Lib</DCC_ObjPath>
<DCC_IncludePath>..\..\..\Lib;..\..\Lib</DCC_IncludePath>
</PropertyGroup>
<ProjectExtensions>
<Borland.Personality>Delphi.Personality</Borland.Personality>
<Borland.ProjectType>Package</Borland.ProjectType>
<BorlandProject>
<BorlandProject><Delphi.Personality><Parameters><Parameters Name="UseLauncher">False</Parameters><Parameters Name="LoadAllSymbols">True</Parameters><Parameters Name="LoadUnspecifiedSymbols">False</Parameters></Parameters><Package_Options><Package_Options Name="ImplicitBuild">False</Package_Options><Package_Options Name="DesigntimeOnly">False</Package_Options><Package_Options Name="RuntimeOnly">False</Package_Options></Package_Options><VersionInfo><VersionInfo Name="IncludeVerInfo">True</VersionInfo><VersionInfo Name="AutoIncBuild">False</VersionInfo><VersionInfo Name="MajorVer">1</VersionInfo><VersionInfo Name="MinorVer">0</VersionInfo><VersionInfo Name="Release">0</VersionInfo><VersionInfo Name="Build">0</VersionInfo><VersionInfo Name="Debug">False</VersionInfo><VersionInfo Name="PreRelease">False</VersionInfo><VersionInfo Name="Special">False</VersionInfo><VersionInfo Name="Private">False</VersionInfo><VersionInfo Name="DLL">False</VersionInfo><VersionInfo Name="Locale">3082</VersionInfo><VersionInfo Name="CodePage">1252</VersionInfo></VersionInfo><VersionInfoKeys><VersionInfoKeys Name="CompanyName"></VersionInfoKeys><VersionInfoKeys Name="FileDescription"></VersionInfoKeys><VersionInfoKeys Name="FileVersion">1.0.0.0</VersionInfoKeys><VersionInfoKeys Name="InternalName"></VersionInfoKeys><VersionInfoKeys Name="LegalCopyright"></VersionInfoKeys><VersionInfoKeys Name="LegalTrademarks"></VersionInfoKeys><VersionInfoKeys Name="OriginalFilename"></VersionInfoKeys><VersionInfoKeys Name="ProductName"></VersionInfoKeys><VersionInfoKeys Name="ProductVersion">1.0.0.0</VersionInfoKeys><VersionInfoKeys Name="Comments"></VersionInfoKeys></VersionInfoKeys><Excluded_Packages>
<Excluded_Packages Name="c:\archivos de programa\borland\delphi10\Bin\dclsmp100.bpl">Borland Sample Components</Excluded_Packages>
<Excluded_Packages Name="c:\archivos de programa\borland\delphi10\Bin\dcl31w100.bpl">Delphi 1.0 Compatibility Components</Excluded_Packages>
<Excluded_Packages Name="c:\archivos de programa\borland\delphi10\Bin\dclmid100.bpl">Borland MyBase DataAccess Components</Excluded_Packages>
<Excluded_Packages Name="c:\archivos de programa\borland\delphi10\Bin\dcltee100.bpl">TeeChart Components</Excluded_Packages>
<Excluded_Packages Name="c:\archivos de programa\borland\delphi10\Bin\dcldbxcds100.bpl">Borland SimpleDataset Component (DBX)</Excluded_Packages>
<Excluded_Packages Name="T:\Bpl_D10\dcldxBarExtItemsD10.bpl">ExpressBars extended items by Developer Express Inc.</Excluded_Packages>
<Excluded_Packages Name="T:\BPL_D10\dcldxBarD10.bpl">ExpressBars by Developer Express Inc.</Excluded_Packages>
<Excluded_Packages Name="T:\Bpl_D10\dclcxSchedulerD10.bpl">ExpressScheduler 2 by Developer Express Inc.</Excluded_Packages>
<Excluded_Packages Name="T:\Bpl_D10\dclcxVerticalGridD10.bpl">ExpressVerticalGrid by Developer Express Inc.</Excluded_Packages>
<Excluded_Packages Name="T:\Bpl_D10\dcldxBarDBNavD10.bpl">ExpressBars DBNavigator by Developer Express Inc.</Excluded_Packages>
<Excluded_Packages Name="T:\Bpl_D10\dcldxBarExtDBItemsD10.bpl">ExpressBars extended DB items by Developer Express Inc.</Excluded_Packages>
<Excluded_Packages Name="T:\Bpl_D10\dcldxsbD10.bpl">ExpressSideBar by Developer Express Inc.</Excluded_Packages>
<Excluded_Packages Name="T:\Bpl_D10\JvBandsD10D.bpl">JVCL Band Objects</Excluded_Packages>
<Excluded_Packages Name="T:\Bpl_D10\JvCmpD10D.bpl">JVCL Non-Visual Components</Excluded_Packages>
<Excluded_Packages Name="T:\Bpl_D10\JvCryptD10D.bpl">JVCL Encryption and Compression Components</Excluded_Packages>
<Excluded_Packages Name="T:\Bpl_D10\JvDlgsD10D.bpl">JVCL Dialog Components</Excluded_Packages>
<Excluded_Packages Name="T:\Bpl_D10\JvDockingD10D.bpl">JVCL Docking Components</Excluded_Packages>
<Excluded_Packages Name="T:\Bpl_D10\JvDotNetCtrlsD10D.bpl">JVCL DotNet Controls</Excluded_Packages>
<Excluded_Packages Name="T:\Bpl_D10\JvEDID10D.bpl">JVCL EDI Components Designtime Package</Excluded_Packages>
<Excluded_Packages Name="T:\Bpl_D10\JvHMID10D.bpl">JVCL HMI Controls design time unit</Excluded_Packages>
<Excluded_Packages Name="T:\Bpl_D10\JvInterpreterD10D.bpl">JVCL Interpreter Components</Excluded_Packages>
<Excluded_Packages Name="T:\Bpl_D10\JvJansD10D.bpl">JVCL Jans Components</Excluded_Packages>
<Excluded_Packages Name="T:\Bpl_D10\JvManagedThreadsD10D.bpl">JVCL Managed Threads</Excluded_Packages>
<Excluded_Packages Name="T:\Bpl_D10\JvMMD10D.bpl">JVCL Multimedia and Image Components</Excluded_Packages>
<Excluded_Packages Name="T:\Bpl_D10\JvNetD10D.bpl">JVCL Network Components</Excluded_Packages>
<Excluded_Packages Name="T:\Bpl_D10\JvPageCompsD10D.bpl">JVCL Page Style Components</Excluded_Packages>
<Excluded_Packages Name="T:\Bpl_D10\JvPluginD10D.bpl">JVCL Plugin Components</Excluded_Packages>
<Excluded_Packages Name="T:\Bpl_D10\JvPrintPreviewD10D.bpl">JVCL Print Preview Components</Excluded_Packages>
<Excluded_Packages Name="T:\Bpl_D10\JvRuntimeDesignD10D.bpl">JVCL Runtime Design Components</Excluded_Packages>
<Excluded_Packages Name="T:\Bpl_D10\JvTimeFrameworkD10D.bpl">JVCL Time Framework</Excluded_Packages>
<Excluded_Packages Name="T:\Bpl_D10\JvUIBD10D.bpl">JVCL Unified Interbase Components</Excluded_Packages>
<Excluded_Packages Name="T:\Bpl_D10\JvValidatorsD10D.bpl">JVCL Validators and Error Provider Components</Excluded_Packages>
<Excluded_Packages Name="T:\Bpl_D10\SMImportD2006.bpl">SMImport suite: data importing into dataset. Scalabium/Mike Shkolnik, 2000-2005</Excluded_Packages>
<Excluded_Packages Name="T:\Bpl_D10\SMExportD2006.bpl">SMExport suite: data export from dataset. Written by Mike Shkolnik/Scalabium, 1998-2004.</Excluded_Packages>
<Excluded_Packages Name="c:\archivos de programa\borland\delphi10\Bin\dclIntraweb_80_100.bpl">Intraweb 8.0 Design Package for Borland Development Studio 2006</Excluded_Packages>
<Excluded_Packages Name="c:\archivos de programa\borland\delphi10\Bin\dclie100.bpl">Internet Explorer Components</Excluded_Packages>
</Excluded_Packages><Source><Source Name="MainSource">PedCli_FacProforma_relation.dpk</Source></Source></Delphi.Personality></BorlandProject></BorlandProject>
</ProjectExtensions>
<Import Project="$(MSBuildBinPath)\Borland.Delphi.Targets" />
<ItemGroup>
<DelphiCompile Include="PedCli_FacProforma_relation.dpk">
<MainSource>MainSource</MainSource>
</DelphiCompile>
<DCCReference Include="Base.dcp" />
<DCCReference Include="Contactos_controller.dcp" />
<DCCReference Include="Contactos_model.dcp" />
<DCCReference Include="FacturasProforma_controller.dcp" />
<DCCReference Include="FacturasProforma_model.dcp" />
<DCCReference Include="PedidosCliente_controller.dcp" />
<DCCReference Include="PedidosCliente_model.dcp" />
<DCCReference Include="rtl.dcp" />
<DCCReference Include="uGenerarFacturasProformaUtils.pas">
<Form>dmGenerarFacturasProforma</Form>
</DCCReference>
</ItemGroup>
</Project>
<!-- EurekaLog First Line
[Exception Log]
EurekaLog Version=6011
Activate=0
Activate Handle=1
Save Log File=1
Foreground Tab=0
Freeze Activate=0
Freeze Timeout=60
SMTP From=eurekalog@email.com
SMTP Host=
SMTP Port=25
SMTP UserID=
SMTP Password=
Append to Log=0
TerminateBtn Operation=2
Errors Number=32
Errors Terminate=3
Email Address=
Email Object=
Email Send Options=0
Output Path=
Encrypt Password=
AutoCloseDialogSecs=0
WebSendMode=0
SupportULR=
HTMLLayout Count=15
HTMLLine0="%3Chtml%3E"
HTMLLine1=" %3Chead%3E"
HTMLLine2=" %3C/head%3E"
HTMLLine3=" %3Cbody TopMargin=10 LeftMargin=10%3E"
HTMLLine4=" %3Ctable width="100%%" border="0"%3E"
HTMLLine5=" %3Ctr%3E"
HTMLLine6=" %3Ctd nowrap%3E"
HTMLLine7=" %3Cfont face="Lucida Console, Courier" size="2"%3E"
HTMLLine8=" %3C%%HTML_TAG%%%3E"
HTMLLine9=" %3C/font%3E"
HTMLLine10=" %3C/td%3E"
HTMLLine11=" %3C/tr%3E"
HTMLLine12=" %3C/table%3E"
HTMLLine13=" %3C/body%3E"
HTMLLine14="%3C/html%3E"
AutoCrashOperation=2
AutoCrashNumber=10
AutoCrashMinutes=1
WebURL=
WebUserID=
WebPassword=
WebPort=0
AttachedFiles=
ProxyURL=
ProxyUser=
ProxyPassword=
ProxyPort=8080
TrakerUser=
TrakerPassword=
TrakerAssignTo=
TrakerProject=
TrakerCategory=
TrakerTrialID=
ZipPassword=
PreBuildEvent=
PostSuccessfulBuildEvent=
PostFailureBuildEvent=
ExceptionDialogType=2
Count=0
EMail Message Line Count=0
loNoDuplicateErrors=0
loAppendReproduceText=0
loDeleteLogAtVersionChange=0
loAddComputerNameInLogFileName=0
loSaveModulesAndProcessesSections=1
loSaveAssemblerAndCPUSections=1
soAppStartDate=1
soAppName=1
soAppVersionNumber=1
soAppParameters=1
soAppCompilationDate=1
soAppUpTime=1
soExcDate=1
soExcAddress=1
soExcModuleName=1
soExcModuleVersion=1
soExcType=1
soExcMessage=1
soExcID=1
soExcCount=1
soExcStatus=1
soExcNote=1
soUserID=1
soUserName=1
soUserEmail=1
soUserPrivileges=1
soUserCompany=1
soActCtlsFormClass=1
soActCtlsFormText=1
soActCtlsControlClass=1
soActCtlsControlText=1
soCmpName=1
soCmpTotalMemory=1
soCmpFreeMemory=1
soCmpTotalDisk=1
soCmpFreeDisk=1
soCmpSysUpTime=1
soCmpProcessor=1
soCmpDisplayMode=1
soCmpDisplayDPI=1
soCmpVideoCard=1
soCmpPrinter=1
soOSType=1
soOSBuildN=1
soOSUpdate=1
soOSLanguage=1
soOSCharset=1
soNetIP=1
soNetSubmask=1
soNetGateway=1
soNetDNS1=1
soNetDNS2=1
soNetDHCP=1
soCustomData=1
sndShowSendDialog=1
sndShowSuccessFailureMsg=0
sndSendEntireLog=0
sndSendXMLLogCopy=0
sndSendScreenshot=1
sndUseOnlyActiveWindow=0
sndSendLastHTMLPage=1
sndSendInSeparatedThread=0
sndAddDateInFileName=0
sndAddComputerNameInFileName=0
edoSendErrorReportChecked=1
edoAttachScreenshotChecked=1
edoShowCopyToClipOption=1
edoShowDetailsButton=1
edoShowInDetailedMode=0
edoShowInTopMostMode=0
edoUseEurekaLogLookAndFeel=0
edoShowSendErrorReportOption=1
edoShowAttachScreenshotOption=1
edoShowCustomButton=0
csoShowDLLs=1
csoShowBPLs=1
csoShowBorlandThreads=1
csoShowWindowsThreads=1
csoDoNotStoreProcNames=0
boPauseBorlandThreads=0
boDoNotPauseMainThread=0
boPauseWindowsThreads=0
boUseMainModuleOptions=1
boCopyLogInCaseOfError=1
boSaveCompressedCopyInCaseOfError=0
boHandleSafeCallExceptions=1
boCallRTLExceptionEvent=0
boCatchHandledExceptions=0
loCatchLeaks=0
loGroupsSonLeaks=1
loHideBorlandLeaks=1
loFreeAllLeaks=1
loCatchLeaksExceptions=1
cfoReduceFileSize=1
cfoCheckFileCorruption=0
Count mtInformationMsgCaption=1
mtInformationMsgCaption0="Information."
Count mtQuestionMsgCaption=1
mtQuestionMsgCaption0="Question."
Count mtErrorMsgCaption=1
mtErrorMsgCaption0="Error."
Count mtDialog_Caption=1
mtDialog_Caption0="Error occurred"
Count mtDialog_ErrorMsgCaption=2
mtDialog_ErrorMsgCaption0="An error has occurred during program execution."
mtDialog_ErrorMsgCaption1="Please read the following information for further details."
Count mtDialog_GeneralCaption=1
mtDialog_GeneralCaption0="General"
Count mtDialog_GeneralHeader=1
mtDialog_GeneralHeader0="General Information"
Count mtDialog_CallStackCaption=1
mtDialog_CallStackCaption0="Call Stack"
Count mtDialog_CallStackHeader=1
mtDialog_CallStackHeader0="Call Stack Information"
Count mtDialog_ModulesCaption=1
mtDialog_ModulesCaption0="Modules"
Count mtDialog_ModulesHeader=1
mtDialog_ModulesHeader0="Modules Information"
Count mtDialog_ProcessesCaption=1
mtDialog_ProcessesCaption0="Processes"
Count mtDialog_ProcessesHeader=1
mtDialog_ProcessesHeader0="Processes Information"
Count mtDialog_AsmCaption=1
mtDialog_AsmCaption0="Assembler"
Count mtDialog_AsmHeader=1
mtDialog_AsmHeader0="Assembler Information"
Count mtDialog_CPUCaption=1
mtDialog_CPUCaption0="CPU"
Count mtDialog_CPUHeader=1
mtDialog_CPUHeader0="CPU Information"
Count mtDialog_OKButtonCaption=1
mtDialog_OKButtonCaption0="%26OK"
Count mtDialog_TerminateButtonCaption=1
mtDialog_TerminateButtonCaption0="%26Terminate"
Count mtDialog_RestartButtonCaption=1
mtDialog_RestartButtonCaption0="%26Restart"
Count mtDialog_DetailsButtonCaption=1
mtDialog_DetailsButtonCaption0="%26Details"
Count mtDialog_CustomButtonCaption=1
mtDialog_CustomButtonCaption0="%26Help"
Count mtDialog_SendMessage=1
mtDialog_SendMessage0="%26Send this error via Internet"
Count mtDialog_ScreenshotMessage=1
mtDialog_ScreenshotMessage0="%26Attach a Screenshot image"
Count mtDialog_CopyMessage=1
mtDialog_CopyMessage0="%26Copy to Clipboard"
Count mtDialog_SupportMessage=1
mtDialog_SupportMessage0="Go to the Support Page"
Count mtMSDialog_ErrorMsgCaption=1
mtMSDialog_ErrorMsgCaption0="The application has encountered a problem. We are sorry for the inconvenience."
Count mtMSDialog_RestartCaption=1
mtMSDialog_RestartCaption0="Restart application."
Count mtMSDialog_TerminateCaption=1
mtMSDialog_TerminateCaption0="Terminate application."
Count mtMSDialog_PleaseCaption=1
mtMSDialog_PleaseCaption0="Please tell us about this problem."
Count mtMSDialog_DescriptionCaption=1
mtMSDialog_DescriptionCaption0="We have created an error report that you can send to us. We will treat this report as confidential and anonymous."
Count mtMSDialog_SeeDetailsCaption=1
mtMSDialog_SeeDetailsCaption0="To see what data the error report contains,"
Count mtMSDialog_SeeClickCaption=1
mtMSDialog_SeeClickCaption0="click here."
Count mtMSDialog_HowToReproduceCaption=1
mtMSDialog_HowToReproduceCaption0="What were you doing when the problem happened (optional)?"
Count mtMSDialog_EmailCaption=1
mtMSDialog_EmailCaption0="Email address (optional):"
Count mtMSDialog_SendButtonCaption=1
mtMSDialog_SendButtonCaption0="%26Send Error Report"
Count mtMSDialog_NoSendButtonCaption=1
mtMSDialog_NoSendButtonCaption0="%26Don't Send"
Count mtLog_AppHeader=1
mtLog_AppHeader0="Application"
Count mtLog_AppStartDate=1
mtLog_AppStartDate0="Start Date"
Count mtLog_AppName=1
mtLog_AppName0="Name/Description"
Count mtLog_AppVersionNumber=1
mtLog_AppVersionNumber0="Version Number"
Count mtLog_AppParameters=1
mtLog_AppParameters0="Parameters"
Count mtLog_AppCompilationDate=1
mtLog_AppCompilationDate0="Compilation Date"
Count mtLog_AppUpTime=1
mtLog_AppUpTime0="Up Time"
Count mtLog_ExcHeader=1
mtLog_ExcHeader0="Exception"
Count mtLog_ExcDate=1
mtLog_ExcDate0="Date"
Count mtLog_ExcAddress=1
mtLog_ExcAddress0="Address"
Count mtLog_ExcModuleName=1
mtLog_ExcModuleName0="Module Name"
Count mtLog_ExcModuleVersion=1
mtLog_ExcModuleVersion0="Module Version"
Count mtLog_ExcType=1
mtLog_ExcType0="Type"
Count mtLog_ExcMessage=1
mtLog_ExcMessage0="Message"
Count mtLog_ExcID=1
mtLog_ExcID0="ID"
Count mtLog_ExcCount=1
mtLog_ExcCount0="Count"
Count mtLog_ExcStatus=1
mtLog_ExcStatus0="Status"
Count mtLog_ExcNote=1
mtLog_ExcNote0="Note"
Count mtLog_UserHeader=1
mtLog_UserHeader0="User"
Count mtLog_UserID=1
mtLog_UserID0="ID"
Count mtLog_UserName=1
mtLog_UserName0="Name"
Count mtLog_UserEmail=1
mtLog_UserEmail0="Email"
Count mtLog_UserCompany=1
mtLog_UserCompany0="Company"
Count mtLog_UserPrivileges=1
mtLog_UserPrivileges0="Privileges"
Count mtLog_ActCtrlsHeader=1
mtLog_ActCtrlsHeader0="Active Controls"
Count mtLog_ActCtrlsFormClass=1
mtLog_ActCtrlsFormClass0="Form Class"
Count mtLog_ActCtrlsFormText=1
mtLog_ActCtrlsFormText0="Form Text"
Count mtLog_ActCtrlsControlClass=1
mtLog_ActCtrlsControlClass0="Control Class"
Count mtLog_ActCtrlsControlText=1
mtLog_ActCtrlsControlText0="Control Text"
Count mtLog_CmpHeader=1
mtLog_CmpHeader0="Computer"
Count mtLog_CmpName=1
mtLog_CmpName0="Name"
Count mtLog_CmpTotalMemory=1
mtLog_CmpTotalMemory0="Total Memory"
Count mtLog_CmpFreeMemory=1
mtLog_CmpFreeMemory0="Free Memory"
Count mtLog_CmpTotalDisk=1
mtLog_CmpTotalDisk0="Total Disk"
Count mtLog_CmpFreeDisk=1
mtLog_CmpFreeDisk0="Free Disk"
Count mtLog_CmpSystemUpTime=1
mtLog_CmpSystemUpTime0="System Up Time"
Count mtLog_CmpProcessor=1
mtLog_CmpProcessor0="Processor"
Count mtLog_CmpDisplayMode=1
mtLog_CmpDisplayMode0="Display Mode"
Count mtLog_CmpDisplayDPI=1
mtLog_CmpDisplayDPI0="Display DPI"
Count mtLog_CmpVideoCard=1
mtLog_CmpVideoCard0="Video Card"
Count mtLog_CmpPrinter=1
mtLog_CmpPrinter0="Printer"
Count mtLog_OSHeader=1
mtLog_OSHeader0="Operating System"
Count mtLog_OSType=1
mtLog_OSType0="Type"
Count mtLog_OSBuildN=1
mtLog_OSBuildN0="Build #"
Count mtLog_OSUpdate=1
mtLog_OSUpdate0="Update"
Count mtLog_OSLanguage=1
mtLog_OSLanguage0="Language"
Count mtLog_OSCharset=1
mtLog_OSCharset0="Charset"
Count mtLog_NetHeader=1
mtLog_NetHeader0="Network"
Count mtLog_NetIP=1
mtLog_NetIP0="IP Address"
Count mtLog_NetSubmask=1
mtLog_NetSubmask0="Submask"
Count mtLog_NetGateway=1
mtLog_NetGateway0="Gateway"
Count mtLog_NetDNS1=1
mtLog_NetDNS10="DNS 1"
Count mtLog_NetDNS2=1
mtLog_NetDNS20="DNS 2"
Count mtLog_NetDHCP=1
mtLog_NetDHCP0="DHCP"
Count mtLog_CustInfoHeader=1
mtLog_CustInfoHeader0="Custom Information"
Count mtCallStack_Address=1
mtCallStack_Address0="Address"
Count mtCallStack_Name=1
mtCallStack_Name0="Module"
Count mtCallStack_Unit=1
mtCallStack_Unit0="Unit"
Count mtCallStack_Class=1
mtCallStack_Class0="Class"
Count mtCallStack_Procedure=1
mtCallStack_Procedure0="Procedure/Method"
Count mtCallStack_Line=1
mtCallStack_Line0="Line"
Count mtCallStack_MainThread=1
mtCallStack_MainThread0="Main"
Count mtCallStack_ExceptionThread=1
mtCallStack_ExceptionThread0="Exception Thread"
Count mtCallStack_RunningThread=1
mtCallStack_RunningThread0="Running Thread"
Count mtCallStack_CallingThread=1
mtCallStack_CallingThread0="Calling Thread"
Count mtCallStack_ThreadID=1
mtCallStack_ThreadID0="ID"
Count mtCallStack_ThreadPriority=1
mtCallStack_ThreadPriority0="Priority"
Count mtCallStack_ThreadClass=1
mtCallStack_ThreadClass0="Class"
Count mtCallStack_LeakCaption=1
mtCallStack_LeakCaption0="Memory Leak"
Count mtCallStack_LeakData=1
mtCallStack_LeakData0="Data"
Count mtCallStack_LeakType=1
mtCallStack_LeakType0="Type"
Count mtCallStack_LeakSize=1
mtCallStack_LeakSize0="Total size"
Count mtCallStack_LeakCount=1
mtCallStack_LeakCount0="Count"
Count mtSendDialog_Caption=1
mtSendDialog_Caption0="Send."
Count mtSendDialog_Message=1
mtSendDialog_Message0="Message"
Count mtSendDialog_Resolving=1
mtSendDialog_Resolving0="Resolving DNS..."
Count mtSendDialog_Login=1
mtSendDialog_Login0="Login..."
Count mtSendDialog_Connecting=1
mtSendDialog_Connecting0="Connecting with server..."
Count mtSendDialog_Connected=1
mtSendDialog_Connected0="Connected with server."
Count mtSendDialog_Sending=1
mtSendDialog_Sending0="Sending message..."
Count mtSendDialog_Sent=1
mtSendDialog_Sent0="Message sent."
Count mtSendDialog_SelectProject=1
mtSendDialog_SelectProject0="Select project..."
Count mtSendDialog_Searching=1
mtSendDialog_Searching0="Searching..."
Count mtSendDialog_Modifying=1
mtSendDialog_Modifying0="Modifying..."
Count mtSendDialog_Disconnecting=1
mtSendDialog_Disconnecting0="Disconnecting..."
Count mtSendDialog_Disconnected=1
mtSendDialog_Disconnected0="Disconnected."
Count mtReproduceDialog_Caption=1
mtReproduceDialog_Caption0="Request"
Count mtReproduceDialog_Request=1
mtReproduceDialog_Request0="Please describe the steps to reproduce the error:"
Count mtReproduceDialog_OKButtonCaption=1
mtReproduceDialog_OKButtonCaption0="%26OK"
Count mtModules_Handle=1
mtModules_Handle0="Handle"
Count mtModules_Name=1
mtModules_Name0="Name"
Count mtModules_Description=1
mtModules_Description0="Description"
Count mtModules_Version=1
mtModules_Version0="Version"
Count mtModules_Size=1
mtModules_Size0="Size"
Count mtModules_LastModified=1
mtModules_LastModified0="Modified"
Count mtModules_Path=1
mtModules_Path0="Path"
Count mtProcesses_ID=1
mtProcesses_ID0="ID"
Count mtProcesses_Name=1
mtProcesses_Name0="Name"
Count mtProcesses_Description=1
mtProcesses_Description0="Description"
Count mtProcesses_Version=1
mtProcesses_Version0="Version"
Count mtProcesses_Memory=1
mtProcesses_Memory0="Memory"
Count mtProcesses_Priority=1
mtProcesses_Priority0="Priority"
Count mtProcesses_Threads=1
mtProcesses_Threads0="Threads"
Count mtProcesses_Path=1
mtProcesses_Path0="Path"
Count mtCPU_Registers=1
mtCPU_Registers0="Registers"
Count mtCPU_Stack=1
mtCPU_Stack0="Stack"
Count mtCPU_MemoryDump=1
mtCPU_MemoryDump0="Memory Dump"
Count mtSend_SuccessMsg=1
mtSend_SuccessMsg0="The message was sent successfully."
Count mtSend_FailureMsg=1
mtSend_FailureMsg0="Sorry, sending the message didn't work."
Count mtSend_BugClosedMsg=2
mtSend_BugClosedMsg0="These BUG is just closed."
mtSend_BugClosedMsg1="Contact the program support to obtain an update."
Count mtSend_UnknownErrorMsg=1
mtSend_UnknownErrorMsg0="Unknown error."
Count mtSend_InvalidLoginMsg=1
mtSend_InvalidLoginMsg0="Invalid login request."
Count mtSend_InvalidSearchMsg=1
mtSend_InvalidSearchMsg0="Invalid search request."
Count mtSend_InvalidSelectionMsg=1
mtSend_InvalidSelectionMsg0="Invalid selection request."
Count mtSend_InvalidInsertMsg=1
mtSend_InvalidInsertMsg0="Invalid insert request."
Count mtSend_InvalidModifyMsg=1
mtSend_InvalidModifyMsg0="Invalid modify request."
Count mtFileCrackedMsg=2
mtFileCrackedMsg0="This file is cracked."
mtFileCrackedMsg1="The application will be closed."
Count mtException_LeakMultiFree=1
mtException_LeakMultiFree0="Multi Free memory leak."
Count mtException_LeakMemoryOverrun=1
mtException_LeakMemoryOverrun0="Memory Overrun leak."
Count mtException_AntiFreeze=1
mtException_AntiFreeze0="The application seems to be frozen."
Count mtInvalidEmailMsg=1
mtInvalidEmailMsg0="Invalid email."
TextsCollection=English
EurekaLog Last Line -->

View File

@ -0,0 +1,22 @@
1 VERSIONINFO
FILEVERSION 1,0,0,0
PRODUCTVERSION 1,0,0,0
FILEFLAGSMASK 0x3FL
FILEFLAGS 0x00L
FILEOS 0x40004L
FILETYPE 0x1L
FILESUBTYPE 0x0L
BEGIN
BLOCK "StringFileInfo"
BEGIN
BLOCK "0C0A04E4"
BEGIN
VALUE "FileVersion", "1.0.0.0\0"
VALUE "ProductVersion", "1.0.0.0\0"
END
END
BLOCK "VarFileInfo"
BEGIN
VALUE "Translation", 0x0C0A, 1252
END
END

View File

@ -0,0 +1,313 @@
object dmGenerarFacturasProforma: TdmGenerarFacturasProforma
OldCreateOrder = False
Height = 176
Width = 254
object JsListaFacturasProformaGeneradas: TJSDialog
DialogOptions = [doCommandLinks, doModal]
Glyph.Data = {
0A54504E474F626A65637489504E470D0A1A0A0000000D494844520000001C00
00001C0806000000720DDF940000000970485973000017120000171201679FD2
520000000467414D410000B18E7CFB5193000003104944415478DAAD96FB4B14
5114C7CFE463DC1E606444BFF54424D3DC55CA52B1CCD7165A219905054182FD
1452FD5810FD100406610A669A998FC4F5BDB6266265DAB60F5DD15E58FE03B2
3F99D29ABBA7B9779C71C61D9D6177CFCE70CFDCB97B3EF7DCF3BD33C38082FD
B502B2B300CC656020048688A24F036233A0671F40D43160BA87BF62AEEE1010
60D7AE293AD8B835815E9B625C80DC8F1E88D4A7C1E8C1FB8F9FD6C3C44035B3
21500A65F6D700FE2EA580A5EC551F4A50359316B31D76EFDC0EE5F72A645045
A067AE0623074B8140891108F1057064CC0D556053DF173812B707E6DCF332A8
225080D201DB4AF99BF335B4D502F371415BCC364833C4C29F458F0C2A031281
081734AB0B3C88403C1E6E3E2E7960F6A8FFD27A7D3EF07A11DA2C76C84A8D87
A57FCB32E8B8A54A4C8C21B59365C9015996EF2240B6634DF435B51460A46D1F
70C093AA46BF09C980C12CA914E6F371ADD707EF1DB3B0B0B8006EB79B8EA96B
EA5106121851245129118FD8BFA2DC5C53C6BAF5EBBBBA97C2D64EC064195B1F
286C76E956A0EA5C51AEB4764A9929F5750D5A9581D2274B9B651C0BA2F514A8
6F28E36B70AD9A4253EF97A9AA55B0CEBA87D03B645B3F43C1DE589C58186D10
81150FCAC57B11E161B04517099BB953C78643141B01BA28EEE4DAB0B04DE2B8
CA460B9C399902E661BB3AB0F5AD038BF30CD4D7E7DD14815A61023027DD00EF
469C1A80FD1C307F1578FD4A81E665945AD68924181A9D5007B6F4DBF1527E32
F5C9D3632351F8F549AEE916B14EAA039BCD362C31A6040D23E7887D4A03B0CF
86C5C6641A24BB7646D3F2D51A77F8C1BCDCFFC79CD3EAC0D7BD56AE86294165
4660CB5C6B737DD3062CCA31D00069E76E05241862CF1EDD05E7D40F756063CF
673C7F5A4F679A59541EF03E4C8C3B0893DF67D481AFBAC7B0F05412CD30EBE2
ED80F7617CEC0198FEF94B1BF06C6622AD4B4EC99D80F7A1666043D7281A3312
FD84C20B8417C3AA789405239826E0CBCE4F98979E10344C33B0BE630473D312
82866906D6993E62F6F1C3F45D160A5305BE68FF8095CF5B4302134CFE1185EA
1FB8A1B4FF4FE32FF6FADB8B5E0000000049454E44AE426082}
Instruction.Text = 'Se ha generado el albar'#225'n de cliente'
Instruction.Glyph.Data = {
0A54504E474F626A65637489504E470D0A1A0A0000000D494844520000001C00
00001C0806000000720DDF940000000970485973000017120000171201679FD2
520000000467414D410000B18E7CFB5193000003104944415478DAAD96FB4B14
5114C7CFE463DC1E606444BFF54424D3DC55CA52B1CCD7165A219905054182FD
1452FD5810FD100406610A669A998FC4F5BDB6266265DAB60F5DD15E58FE03B2
3F99D29ABBA7B9779C71C61D9D6177CFCE70CFDCB97B3EF7DCF3BD33C38082FD
B502B2B300CC656020048688A24F036233A0671F40D43160BA87BF62AEEE1010
60D7AE293AD8B835815E9B625C80DC8F1E88D4A7C1E8C1FB8F9FD6C3C44035B3
21500A65F6D700FE2EA580A5EC551F4A50359316B31D76EFDC0EE5F72A645045
A067AE0623074B8140891108F1057064CC0D556053DF173812B707E6DCF332A8
225080D201DB4AF99BF335B4D502F371415BCC364833C4C29F458F0C2A031281
081734AB0B3C88403C1E6E3E2E7960F6A8FFD27A7D3EF07A11DA2C76C84A8D87
A57FCB32E8B8A54A4C8C21B59365C9015996EF2240B6634DF435B51460A46D1F
70C093AA46BF09C980C12CA914E6F371ADD707EF1DB3B0B0B8006EB79B8EA96B
EA5106121851245129118FD8BFA2DC5C53C6BAF5EBBBBA97C2D64EC064195B1F
286C76E956A0EA5C51AEB4764A9929F5750D5A9581D2274B9B651C0BA2F514A8
6F28E36B70AD9A4253EF97A9AA55B0CEBA87D03B645B3F43C1DE589C58186D10
81150FCAC57B11E161B04517099BB953C78643141B01BA28EEE4DAB0B04DE2B8
CA460B9C399902E661BB3AB0F5AD038BF30CD4D7E7DD14815A61023027DD00EF
469C1A80FD1C307F1578FD4A81E665945AD68924181A9D5007B6F4DBF1527E32
F5C9D3632351F8F549AEE916B14EAA039BCD362C31A6040D23E7887D4A03B0CF
86C5C6641A24BB7646D3F2D51A77F8C1BCDCFFC79CD3EAC0D7BD56AE86294165
4660CB5C6B737DD3062CCA31D00069E76E05241862CF1EDD05E7D40F756063CF
673C7F5A4F679A59541EF03E4C8C3B0893DF67D481AFBAC7B0F05412CD30EBE2
ED80F7617CEC0198FEF94B1BF06C6622AD4B4EC99D80F7A1666043D7281A3312
FD84C20B8417C3AA789405239826E0CBCE4F98979E10344C33B0BE630473D312
82866906D6993E62F6F1C3F45D160A5305BE68FF8095CF5B4302134CFE1185EA
1FB8A1B4FF4FE32FF6FADB8B5E0000000049454E44AE426082}
Instruction.Icon = tdiCustom
CustomButtons = <
item
Caption = 'Ver la factura proforma'
Value = 100
Info.Strings = (
'Mostrar la factura proforma que se ha creado')
end>
ButtonBar.Buttons = [cbOK]
ButtonBar.Cancel = cbOK
ButtonBar.UseCancel = False
MainIcon = tdiCustom
Title = 'FactuGES'
Position = dpMainFormCenter
Icon.Data = {
0000010003002020100001000400E8020000360000002020000001000800A808
00001E0300002020000001002000A8100000C60B000028000000200000004000
0000010004000000000000020000000000000000000000000000000000000000
000000008000008000000080800080000000800080008080000080808000C0C0
C0000000FF0000FF000000FFFF00FF000000FF00FF00FFFF0000FFFFFF000000
0000000000000000000000000000000008777777777777777777777700000000
0877767777677776777767760000000008F88888888888888888888700000000
08F8FF8F8F888888888888860000000008FF8F8F88F8F8888888888C00000000
08F88888F8888888888888860000000008F8688878E8888E88E8788700000000
08F8688888F8F8FFFFFF88760000000008FF4888888F8FFFFFFF788700000000
08F8676767677677677658E50000000008FF8888888887878787888700000000
08FF8887887E8888888888860000000008FFE8E8E788C8E8FF8F8F8600000000
08FFF8F8F8F8FF8F88F8F8870000000008FFFFFF8FF8F8F8F88F888600000000
0FF8477878787878788788860000000008FF68888888F8FF8F8F788700000000
08B7588888FF8FFFFFFF78860000083008BB47887776777777776F86000000B7
8B9B73BB88788787E87878870000008BB8B9BB78888888EFF8F8FF8600000087
B8BB8B888E8E8E88FFF8F886000000088BBB888FFFFFFFFFF8F877770000B9BB
B8FFBB9B9BFFFFFFF87466460000BBB9BB8FBBBBB8FFFFFFF88F888700000008
B8BB88888FFFFFFFF88F8F7700000008BBBBBB8FFFFFFFFFFF8887700000007B
B7B98BB8FFFFFFFFF8887700000000B78B9B87B888F88F88F8877000000007B0
08BB883B78888788787700000000000000B9000000000000000000000000FFFF
FFFFF800000FF800000FF800000FF800000FF800000FF800000FF800000FF800
000FF800000FF800000FF800000FF800000FF800000FF800000FF800000FF800
000FF800000FF800000F9800000FC000000FC000000FC000000FE000000F0000
000F0000000FE000000FE000001FC000003FC000007F980000FFFCFFFFFF2800
0000200000004000000001000800000000000004000000000000000000000001
00000001000000000000694731007C5D49007E604C0081635000826451008567
540085685500886B5900896D5B008A6E5D008B705F008E715F008B7260008C72
61008E74640084766C00957A6900977D6D00887B72009A8171009D8272009C84
76009D8778009F897B00A28A7900A08B7D00A18C7E00E1B06E00E1B67D003E7A
970073A0A5007AA2B70074AFBD007BB2BB003CAACE0028A5DB0020ADDF000D9A
E500209EE3000DA6E2001AA4EF0000A6FF000CABFE0009ACFE0010A4F10015AC
FA0000B5FB0000B0FD000CB6FC0000BFF90000BAFD0004BAFD0009BBFB0013B6
F40015BFFA001CBDFB0026B7FD00589EC50040A4CD0040ABCC0050A2C7005DAE
C00060A3C20062A4C60060B7CB006AB0CD007BB6C80077BAC80061BADD0044AD
E50000C3F80007C6FB0000CAF80000CFFB0000D4F90026C8FA0026CDF8002BCC
F90039C4FB0039C2FC0039CAFA003FCFFB0024D6F80030D2F80039D5F80000F8
F8001FF8F8002CF6F8003EF4F8005AC6DC0070CDDF0052C0E40054C9E3004DCE
FA005FC7FF004FD2FB004DD9F8005FD9FB006ED3E70063CDFE0060D1FB0060D8
F90060DDF80046F8F90056F0F8005FFAFA0073E3F80073E4F90073EEF80060F1
F800958A84009A918C0081999500A68F8200AD968500A3968C00AE988900AD9A
8D00B19A8B00AF9C9000B09E9200B59F9200B7A29300B2A19600B5A19400B7A4
9700BDA79700B4A39800B1A59D00B4A79F00BAA69800BCA79900B4A89F00BCA8
9900BAA89C00BDAA9D00BEAC9E0083ADBD00B5A9A100BDABA000BEADA100BFAF
A500A0BABE00C0AB9E00C1AC9E00C6AE9F00E2B98100E4BA8300E4BB8400E5BC
8500E1BD8E00E3BF9000C0ADA000C2B0A300C2B1A500C4B2A600C1B2A800C3B5
AB00C8B4A800CCB9AD00CEBCB100D0BEB200D1BFB400E4C19300E5C29400E6C4
9600E8C69900D0C9A300CFC1B800D2C1B600D3C3B800D5C4B900D6C6BC00D8C6
BC00D6C8BE00DAC9BF00ECD3B000EDD4B200EFD6B500E7D1B800E7D3BD00F0D8
B6008CB7C40080BEC70097C3C70099C3C900ABD7CF00AFD9DD0086E3F90086E7
F90086ECF8009EE5FB0090E8F900ACEDFC00BCEAFD00BCF1FB00BFF1FD00D7C9
C000D9CAC100DCCBC200DACCC200DDCCC300DACCC400DDCEC400DED0C600DED1
C900DED3CC00DFD4CD00E1D1C900E2D5CD00F0DCC200E3D8D200E5D9D200E2DA
D500E6DBD400E5DCD500E8DDD600E6DDD800E9DFD900E6E0DB00EAE0DA00EAE2
DD00ECE3DE00EBE4DE00ECE4DE00F3E7D900C6E1EF00C9EFFD00D7F6FD00DFF3
FF00DFFEFE00EBE7E300EDE6E100EFE7E400EEE8E400F0EAE600F2EDE900F2EE
EC00F4EFEC00F5F0EE00F9F4ED00E7FAFD00EBF8FF00F6F2F000F7F4F100F8F4
F200F9F7F500FAF8F600FBF9F900FCFBFA00FCFCFB00FEFEFE00000000000000
0000000000000000000000000000000000000000000000000000000000000000
00000000000000000000007D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D
0D0D0000000000000000009C9C19191919191919191919191919191919191919
1903000000000000000000ABDECBCBC7C7AFABABABABAAA3A2A2A0A0A0A0A0A0
8607000000000000000000ABECEAE9DEDEDEDED7D5D2D2D2CBCBCBCBB0CBB0CB
9007000000000000000000ABEDECEAE9DEDEDBD7D7D5D2D2D2CDCDCBB0B0B0B0
9007000000000000000000AFEDE9A9CFD2CFD2CDCBCBCBB0B0ABACA3A3A3A3B0
9007000000000000000000AFF0D5017783838386868686869099909999907BB0
9007000000000000000000B0F4D501A0B0CBD2D5DEECEDF7FAFAFAFAFAF77BAA
9007000000000000000000CBF4DC01A0B0B0B0D2D5DBEAEDF7FAFAFAFAF47BB0
9007000000000000000000CBF8DC010404070604090909090D0D110D110D02A3
9007000000000000000000CBFAED9E9E9E9C999E8C8C8C868683837E7D7D7ACB
9007000000000000000000CBFAF1A7A7A6A6A6A69898989898B5DBDBD5D5D2D2
9907000000000000000000CDFAF796969696961D961D931D1DB4DEDBD7D5D5D2
9C07000000000000000000CFFAFAFAFAF8F7F0F0EDEDEDECE9E9DEDEDED7D5D5
9907000000000000000000CDFAFAEAF0EDEDECEAEAE9DEDEDBDCD5D5D5D5D2D5
9C07000000000000000000D2FAEC01737D7D7B7D7D7B7D7B7D7B7B7B7D7B7DD2
9907000000000000000000CFFAEC019EABB0CBD2D5DCDEECEDF4F4F4F4EA7BD2
9C07000000000000000000B9524601A0B0B0CBB5D5DEEAEDF7FAFAFAFAF47DD5
9C070000000000213F0000B83226010C3F5C1F111214141616191B1B1B1807D2
9C07000000000000253D8A5B322D711E2860BA7E7E7A7E797A797979767676D5
9E0700000000000041375E662F2B65314EBBB6B6B6B6B4B4B1E2F4EDEDEDECEA
9C070000000000008F5D66663232394EC1A81C1C1C1C1C1C1CD3F7F4EDDED7D5
9C0700000000000000B7BE6E5758BEBDE4E6E6F3FAFAFAFAFAFAF7F4D5928675
7304000000002A2A2A2A4A6AFAE7562F2A2A2A5FFAFAFAFAFAFAF8D577010101
0101000000004747472F4A59C5E7564A32474766FAFAFAFAFAFAFADCA0D2CFB0
A20C00000000000000436C6958686D6BC2C5C5E7FAFAFAFAFAFAFADEAADEDBCB
1470000000000000004551534A4A5250C0E7FAFAFAFAFAFAFAFAFADEAAD7B514
700000000000000042384C54472B613550C3FAFAFAFAFAFAFAFAFADEA1B0196F
000000000000000024234463322EBC5A3664E3ECE9E9E9E9E9E9E9CF90731300
000000000000003A3C00002232298B8B3E3B207E8B7E8B7E827E817E74100000
0000000000000000000000003227000000000000000000000000000000000000
000000000000FFFFFFFFF800000FF800000FF800000FF800000FF800000FF800
000FF800000FF800000FF800000FF800000FF800000FF800000FF800000FF800
000FF800000FF800000FF800000FF800000F9800000FC000000FC000000FC000
000FE000000F0000000F0000000FE000000FE000001FC000003FC000007F9800
00FFFCFFFFFF2800000020000000400000000100200000000000801000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000007067
5F70AA9382E570513CE3735540E3735540E3735540E3735540E3735540E37355
40E3735540E3735540E3735540E3735540E3735540E3735540E3735540E37355
40E3735540E3735540E3735540E3735540E3735540E3735540E372533EE5BAAB
A070000000000000000000000000000000000000000000000000000000005E54
4C7FCAB7ABFFC5B5AAFFA18877FFA28A78FFA28A79FFA28A79FFA28A79FFA28A
79FFA28A79FFA28A79FFA28A79FFA28A79FFA28A79FFA28A79FFA28A79FFA28A
79FFA28A79FFA28A79FFA28A79FFA28A79FFA28A79FFA58D7CFF7A5B46FFB2A1
967F000000000000000000000000000000000000000000000000000000006055
4D7ED7C6BBFFEDE4E0FFD9CCC4FFD9CCC4FFD9CBC3FFD8CAC1FFD7C9BFFFD6C7
BDFFD5C6BBFFD4C4BAFFD3C3B8FFD2C1B7FFD1C0B5FFD0BEB3FFCFBDB2FFCEBC
B0FFCEBBAFFFCEBBAFFFCEBBAFFFCEBBAFFFCEBCB0FFBEAA9CFF82644FFFB2A1
967E000000000000000000000000000000000000000000000000000000006056
4D7ED7C8BCFFF2EBE8FFEFE9E5FFEEE7E2FFECE5E0FFEBE2DEFFEAE0DBFFE9DE
D8FFE7DBD4FFE5D9D1FFE3D7CFFFE2D4CCFFE1D2C9FFDFD0C7FFDDCDC4FFDCCB
C2FFDBC9BFFFDBC9BFFFDBC9BFFFDBC9BFFFDCCAC1FFC1AC9FFF81634FFFB2A1
967E000000000000000000000000000000000000000000000000000000006155
4E7ED8C9BDFFF3EDE9FFF1EAE6FFF0E9E6FFEEE6E1FFECE4DFFFEBE2DDFFEAE0
DAFFE9DED7FFE7DBD4FFE5D9D1FFE3D7CFFFE2D4CCFFE1D2C9FFDFD0C7FFDDCD
C4FFDCCBC2FFDBC9BFFFDBC9BFFFDBC9BFFFDCCAC0FFC1AC9FFF81634FFFB2A1
967E000000000000000000000000000000000000000000000000000000006157
4E7ED9C9BFFFF4EFEDFFEFE8E3FFD0C2B9FFDFD5CEFFE0D5CEFFE0D4CCFFDED3
CBFFDDD1C8FFDCCFC6FFDACCC4FFD9CBC1FFD8C9BFFFD7C7BDFFD6C5BBFFD5C4
B9FFD3C2B7FFD2C0B5FFD2BFB4FFD2BFB4FFDAC8BEFFC1AC9FFF81634FFFB2A1
967E000000000000000000000000000000000000000000000000000000006256
4F7EDACCC0FFF5F2EFFFE5DDD9FF5C3821FFB0998AFFB8A394FFB8A394FFB9A3
94FFB8A495FFB9A597FFB9A698FFBAA698FFBBA799FFBBA89AFFBBA89BFFBCA8
9BFFBCA89BFFBCA89BFFBBA89AFFB49E8FFFD8C6BBFFC1AC9FFF81634FFFB2A1
967E000000000000000000000000000000000000000000000000000000006256
4F7EDBCBC1FFF8F4F3FFE7E0DBFF5F3C24FFD0BDB2FFDCCBC1FFDDCCC3FFE2D2
CBFFE7DBD4FFEDE2DEFFF0E8E6FFF5F0EDFFF9F7F4FFFDFDFDFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFAF8F7FFB39D8DFFD8C6BBFFC1AC9FFF81634FFFB2A1
967E000000000000000000000000000000000000000000000000000000006256
4F7EDCCEC3FFFAF6F5FFE9E2DDFF5F3C24FFD2BFB5FFDFCDC4FFDECCC3FFE0CE
C6FFE4D4CDFFE9DDD6FFEFE4E0FFF1EAE8FFF7F1EFFFFBF8F6FFFFFEFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFCFBFAFFB5A090FFD9C7BEFFC1AD9FFF81634FFFB2A1
967E000000000000000000000000000000000000000000000000000000006257
4F7EDDCFC4FFFCF9F9FFE9E4E0FF5F3A23FF7C5D49FF7F5F4CFF7E5F4CFF7E60
4DFF7F614DFF816350FF826552FF836654FF846856FF856A57FF866B59FF876C
5BFF876D5BFF876D5BFF866B59FF72523DFFD5C3B9FFC1AFA1FF81634FFFB2A1
967E000000000000000000000000000000000000000000000000000000006357
507EDECFC6FFFCFCFBFFF4F1F0FFC3B6AEFFC3B5ADFFC1B4ACFFC0B3AAFFBFB1
A9FFBEB0A6FFBDAEA5FFBDACA3FFBCABA2FFBBAAA0FFBAA99FFFB8A69AFFB8A4
98FFB6A396FFB5A194FFB49F93FFB39D90FFDCCDC4FFC2AEA1FF81634FFFB2A1
967E000000000000000000000000000000000000000000000000000000006357
507EDFD2C7FFFEFEFDFFF9F5EFFFE8C696FFE9C799FFE8C697FFE7C596FFE7C4
95FFE6C394FFE5C293FFE4C091FFE4C090FFE3BF8FFFE2BD8CFFE9D5BFFFEBE1
DCFFEADFD8FFE7DCD5FFE5DAD3FFE4D8D0FFE3D4CCFFC2AFA2FF81634FFFB2A1
967E000000000000000000000000000000000000000000000000000000006458
517EE0D3C8FFFFFFFFFFFAF5EFFFE3B77CFFE4B97FFFE2B87EFFE3B77DFFE2B7
7CFFE2B67BFFE1B57AFFE1B479FFE0B478FFE0B377FFDFB174FFE6D0B7FFEBE1
DCFFE8DFD9FFE8DDD6FFE6D9D2FFE3D8D1FFE4D7CFFFC3AFA2FF81634FFFB2A1
967E000000000000000000000000000000000000000000000000000000006458
517EE1D2C9FFFFFFFFFFFEFEFDFFFEFFFFFFFCFDFEFFFBFBFBFFF9F7F8FFF8F5
F6FFF7F3F2FFF5F1F0FFF4EFEEFFF1EDEBFFF0EBE9FFEEE9E6FFEDE6E2FFECE3
DEFFEBE1DBFFE9DFD9FFE8DDD6FFE6DAD3FFE5D9D2FFC3B0A3FF81634FFFB2A1
967E000000000000000000000000000000000000000000000000000000006459
517EE1D4CAFFFFFFFFFFFDFDFCFFEEEBE8FFF5F2F0FFF4F0EFFFF3EFECFFF2ED
EAFFF1EBE8FFEEE9E5FFEFE7E3FFECE5E1FFEAE4DEFFEAE1DCFFE8E0DAFFE7DE
D8FFE6DDD6FFE5DBD4FFE4D8D1FFE2D6CEFFE6DBD4FFC3B1A4FF81634EFFB2A1
967E000000000000000000000000000000000000000000000000000000006559
527EE2D4CAFFFFFFFFFFF0ECEAFF5B361EFFAB9383FFB39D8EFFB39D8DFFB39D
8DFFB29D8DFFB29C8DFFB29C8CFFB29C8CFFB29C8CFFB29C8CFFB29C8CFFB29C
8CFFB29C8CFFB29C8CFFB29C8DFFB39D8EFFE3D8D0FFC4B1A4FF81634EFFB2A1
967E000000000000000000000000000000000000000000000000000000006559
527EE5D4CAFFFFFFFFFFF7F0EBFF5F3B24FFCCB8ADFFD7C5BAFFD9C7BDFFDCCC
C3FFE1D4CCFFE5DAD4FFE8E0DBFFEDE5E1FFF1EBE9FFF5F2EFFFF7F5F3FFF8F6
F4FFF8F5F4FFF8F6F4FFF1EEEAFFB29C8DFFE6DAD3FFC4B2A5FF81634EFFB2A1
967E00000000000000000000000000000000000000000000000000000000685A
527E9AC6C9FF35CFFEFF3DAEEBFF663E24FFD2BFB4FFE0CBBFFFE0C9BDFFE1CD
C4FFE4D5CDFFE9DED7FFEEE5E0FFF2EBE8FFF6F2F0FFFCF8F8FFFFFFFEFFFFFF
FFFFFFFFFFFFFFFFFFFFFCFAF9FFB49E8FFFE7DED7FFC5B3A6FF81634EFFB2A1
967E00000000000000000000000000000000007792910072A7A3001E33366957
4C7C86C1C8FF00BFFBFF079AEBFF6A3E23FF926D57FF5FA3C8FF4AC1E8FF6C9C
A2FF917260FF927767FF947A69FF957C6CFF977E6FFF998171FF9A8374FF9B85
76FF9C8678FF9C8678FF998274FF7D5E49FFE3D9D4FFC5B3A7FF81634EFFB2A1
967E00000000000000000000000000000000005A6F7000A9E5E40075AEAE5C90
A5BD75D0E0FF00BFFAFF0CA3F4FF8A9A91FF3C7492FF03A4E4FF4AD5FFFF98C4
CBFFB3A196FFB1A197FFB0A096FFB09F95FFAF9D92FFAF9C91FFAD9A8EFFAC99
8CFFAB988AFFAB9789FFAA9688FFA99386FFE8E0DAFFC5B4A7FF81634EFFB2A1
967E00000000000000000000000000000000000000002DA5BFC110C2FFFF4DD0
FDFF64DBF9FF00B3FAFF09A8FEFF68D7FFFF04B5FFFF24CCFBFFAFD8CEFFF7DA
B8FFF3DBBBFFF3DBBAFFF2D9B9FFF1D8B7FFF0D7B4FFEED5B2FFF6EADDFFF9F6
F4FFF7F3F1FFF5F1EEFFF5EFECFFF4EDEAFFF1EBE7FFC6B4A8FF81634EFFB2A1
967E00000000000000000000000000000000000000005F8A909142C7E4E960DE
F8FF64D7FAFF00B6FDFF00B8FDFF21B2FDFF1ECCF7FF93EBFCFFD2C69BFFE1AB
63FFDFAC66FFDFAC66FFDFAC66FFDFAC66FFDFAC66FFDEA961FFEFDBC0FFF8F6
F5FFF6F2F0FFF3EDEBFFECE2DCFFE9DFD9FFE5DBD6FFC2B1A4FF81634FFFB2A1
967E000000000000000000000000000E171A000E171A00040B145994A4A990EB
FCFF61F1F7FF13FAF7FF23F9F7FF93EDF7FF8CE5F8FFD5F2FDFFE9F8FFFFE7F8
FFFFF0FCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFFFDFEFFFFFAFAF9FFF9F7
F5FFF7F2F0FFE8DFD8FFC7AE9FFFBEA998FFAF9888FFB09A8AFF7F604DFFB2A1
967E00000000000000000000000000AAFFFF00AAFFFF00AAFFFF00A4FFFF00CD
FAFF5DFCF9FFFFFFFFFFEEFEFEFF00FBF7FF00AAFEFF00A1FFFF00A1FFFF00A0
FFFF56C3FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCFDFBFFFCFBFAFFFBFA
F8FFE6DDD6FFAA9180FF5D3922FF603D26FF613E27FF613E28FF634029FFB4A3
987E00000000000000000000000000CAFFFF00CAFFFF00CBFFFF00B0FFFF00CD
FBFF38F5F7FFC3EFFAFFF0FFFEFF00FAF7FF00C8F7FF00C2F7FF00C2F7FF00C1
F7FF57D7FAFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFDFDFCFFFCFC
FBFFE7DED8FFCCB9ACFFE6DBD5FFE2D7D0FFDCCFC5FFD7C5BBFF8E705DFFB4A2
9680000000000000000000000000002E383C002E383C00252F364C99B0B57DE8
FBFF59F1F7FF25F7F7FF41FAF8FF7CEEF7FF77E4F7FFB5EFFCFFC6F2FDFFC3F2
FDFFD9F6FCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFEFEFFFEFE
FEFFE9E1DAFFCEBCAFFFF1E9E3FFEADFD8FFE4D5CCFF9D816FFF3A291F868985
831C00000000000000000000000000000000000000004E7073774AB0DADC37C9
FBFF22D5F7FF00D3F9FF02C3FBFF37D5F7FF34BEFCFFA2E6FAFFECFBFDFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFF
FFFFEAE2DCFFCDBBADFFEADFD8FFE3D5CBFF9F8271FF3E2D2386050100200000
000000000000000000000000000000000000000000003E9CC4C219C0FFFF23C9
FCFF30D3F8FF00BEF8FF06A8FEFF4FDCF8FF00B8FCFF32C2FBFFC0EBFCFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFEAE3DEFFCDB9ABFFDDCEC4FFA58979FF3E2C1F8F0905041B000000000000
000000000000000000000000000000000000003451510099DDDB0091C0C35DAD
BCCF76D7E9FF00BEF9FF10A9FBFFBDDEDEFF5AC8DDFF0AB5F7FF62CEFFFFCBE4
F1FFF1E7E0FFEFE7E1FFEEE6E1FFEEE6E1FFEEE6E0FFEDE6E0FFEDE5E0FFEEE6
E1FFE1D4CCFFC5AE9FFFA68D7FF53E2718A10402000E00000000000000000000
0000000000000000000000000000000000000075B7AF0099C7C500323E425442
3B5C6BA8B1DA00C1FCFF0EA1F3F8A98E80C0AB9081C12698B1C10088C4C14C85
A3C1A18D80C19E8D81C19E8B81C19D8C80C19B8C7FC19B8A7FC19C897FC19A89
7EC19B8B7EC1897769C2432B1BAC000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
00000045565A00C5FFFF0094E6E2000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000FFFFFFFFF0000007F0000007F0000007F000
0007F0000007F0000007F0000007F0000007F0000007F0000007F0000007F000
0007F0000007F0000007F0000007F0000007F0000007F0000007800000078000
0007C0000007C000000700000007000000070000000700000007C000000FC000
001F8000003F800000FFF8FFFFFF}
Width = 450
Left = 104
Top = 24
end
end

View File

@ -0,0 +1,261 @@
unit uGenerarFacturasProformaUtils;
interface
uses
Windows, SysUtils, Classes, pngimage, JSDialog,
uBizPedidosCliente, uBizFacturasProforma;
type
TdmGenerarFacturasProforma = class(TDataModule)
JsListaFacturasProformaGeneradas: TJSDialog;
end;
function GenerarFacturaProforma(const IDPedido : Integer) : Boolean; overload;
function GenerarFacturaProforma(APedido : IBizPedidoCliente; var AFactura: IBizFacturaProforma) : Boolean; overload;
// function ElegirPedidoYGenerarAlbaranCli(var IDAlbaran: Integer) : Boolean;
implementation
{$R *.dfm}
uses
uDialogUtils, uBizDetallesPedidoCliente, uBizDetallesFacturaProforma,
uPedidosClienteController, uFacturasProformaController, uClientesController,
uDetallesFacturaProformaController, uControllerDetallesBase,
uBizContactos, schPedidosClienteClient_Intf,
schFacturasProformaClient_Intf, uDataTableUtils;
var
dmGenerarFacturasProforma: TdmGenerarFacturasProforma;
APedidosClienteController : IPedidosClienteController;
AFacturasProformaController : IFacturasProformaController;
ADetallesFacturaProformaController : IDetallesFacturaProformaController;
AClientesController : IClientesController;
{ Métodos auxiliares }
procedure CopiarPedidoAFactura(APedido: IBizPedidoCliente; AFactura : IBizFacturaProforma);
begin
if not Assigned(AFactura) then
raise Exception.Create ('Factura no asignada (CopiarPedidoAFactura)');
if not Assigned(APedido) then
raise Exception.Create ('Pedido no asignado (CopiarPedidoAFactura)');
if not APedido.DataTable.Active then
APedido.DataTable.Active := True;
APedidosClienteController.RecuperarCliente(APedido);
APedido.Cliente.DataTable.Active := True;
AFactura.Cliente := APedido.Cliente;
AFactura.ID_PEDIDO := APedido.ID;
AFactura.IMPORTE_NETO := APedido.IMPORTE_NETO;
AFactura.IMPORTE_PORTE := APedido.IMPORTE_PORTE;
AFactura.DESCUENTO := APedido.DESCUENTO;
AFactura.IMPORTE_DESCUENTO := APedido.IMPORTE_DESCUENTO;
AFactura.BASE_IMPONIBLE := APedido.BASE_IMPONIBLE;
AFactura.IMPORTE_PORTE := APedido.IMPORTE_PORTE;
AFactura.IMPORTE_TOTAL := APedido.IMPORTE_TOTAL;
AFactura.ID_FORMA_PAGO := APedido.ID_FORMA_PAGO;
end;
procedure CopiarDetallesAFactura(APedido: IBizPedidoCliente; AFactura: IBizFacturaProforma;
AArticulos: IBizDetallesPedidoCliente);
var
i : integer;
ADetalles : IBizDetallesFacturaProforma;
ADetallesController : IDetallesFacturaProformaController;
begin
if not Assigned(AFactura) then
raise Exception.Create ('Factura no asignada(CopiarDetallesAFactura)');
if not Assigned(APedido) then
raise Exception.Create ('Pedido no asignado (CopiarDetallesAFactura)');
if not Assigned(AArticulos) then
raise Exception.Create ('Artículos no asignado (CopiarDetallesAFactura)');
if not AArticulos.DataTable.Active then
AArticulos.DataTable.Active := True;
// La factura tiene que venir ya abierto y posicionado donde hay que copiar
ADetalles := AFactura.Detalles;
ADetallesController := TDetallesFacturaProformaController.Create;
try
//OJO IMPORTANTE
//Siempre que vayamos a trabajar con los detalles debemos hacer un beginupdate de los mismos y un endupdate para
//obligarle siempre a recalcular los detalles una sola vez
ADetallesController.BeginUpdate(ADetalles);
AArticulos.DataTable.First;
for i := 0 to AArticulos.DataTable.RecordCount - 1 do
begin
ADetallesController.Add(ADetalles, AArticulos.TIPO_DETALLE);
ADetalles.Edit;
ADetalles.REFERENCIA := AArticulos.REFERENCIA;
ADetalles.ID_ARTICULO := AArticulos.ID_ARTICULO;
ADetalles.CONCEPTO := AArticulos.CONCEPTO;
if not AArticulos.CANTIDADIsNull then
ADetalles.CANTIDAD := AArticulos.CANTIDAD;
if not AArticulos.IMPORTE_UNIDADIsNull then
ADetalles.IMPORTE_UNIDAD := AArticulos.IMPORTE_UNIDAD;
if not AArticulos.IMPORTE_TOTALIsNull then
ADetalles.IMPORTE_TOTAL := AArticulos.IMPORTE_TOTAL;
if not AArticulos.DESCUENTOIsNull then
ADetalles.DESCUENTO := AArticulos.DESCUENTO;
if not AArticulos.IMPORTE_PORTEIsNull then
ADetalles.IMPORTE_PORTE := AArticulos.IMPORTE_PORTE;
ADetalles.VISIBLE := AArticulos.VISIBLE;
ADetalles.REFERENCIA_PROVEEDOR := AArticulos.REFERENCIA_PROVEEDOR;
ADetalles.Post;
AArticulos.Next;
end;
//Añadimos el importe de porte solo en el caso de que el pedido tenga.
if (APedido.IMPORTE_PORTE > 0) then
begin
AFacturasProformaController.DetallesController.Add(AFactura.Detalles, TIPO_DETALLE_CONCEPTO);
with AFactura.Detalles do
begin
Edit;
CONCEPTO := 'Porte del pedido ';
CANTIDAD := 1;
IMPORTE_UNIDAD := APedido.IMPORTE_PORTE;
Post;
end;
end;
finally
ADetallesController.EndUpdate(ADetalles);
ADetallesController := NIL;
end;
end;
procedure Inicializar;
begin
dmGenerarFacturasProforma := TdmGenerarFacturasProforma.Create(nil);
APedidosClienteController := TPedidosClienteController.Create;
AFacturasProformaController := TFacturasProformaController.Create;
// ADetallesAlbaranesCliController := TDetallesAlbaranClienteController.Create;
AClientesController := TClientesController.Create;
end;
procedure Finalizar;
begin
FreeAndNIL(dmGenerarFacturasProforma);
APedidosClienteController := nil;
AFacturasProformaController := nil;
// ADetallesFacturasProformaController := nil;
AClientesController := nil;
end;
function GenerarFacturaProforma(const IDPedido : Integer) : Boolean; overload;
var
APedido : IBizPedidoCliente;
AFactura : IBizFacturaProforma;
begin
Result := False;
try
if not Assigned(APedidosClienteController) then
Inicializar;
APedido := APedidosClienteController.Buscar(IDPedido);
if Assigned(APedido) then
Result := GenerarFacturaProforma(APedido, AFactura);
finally
if Assigned(APedidosClienteController) then
Finalizar;
end;
end;
function GenerarFacturaProforma(APedido : IBizPedidoCliente; var AFactura: IBizFacturaProforma) : Boolean; overload;
var
ARespuesta : Integer;
AuxFactura : IBizFacturaProforma;
begin
Result := False;
AFactura := NIL;
if not Assigned(APedido) then
raise Exception.Create('Pedido de cliente no asignado (GenerarFacturaProforma)');
if not APedido.DataTable.Active then
APedido.DataTable.Active := True;
if not Assigned(APedidosClienteController) then
Inicializar;
try
AuxFactura := AFacturasProformaController.Nuevo;
CopiarPedidoAFactura(APedido, AuxFactura);
CopiarDetallesAFactura(APedido, AuxFactura, APedido.Detalles);
//Sustituir por if de guardar
if AFacturasProformaController.Guardar(AuxFactura) then
begin
AFactura := AuxFactura;
with dmGenerarFacturasProforma.JsListaFacturasProformaGeneradas do
begin
Instruction.Text := 'Se ha generado la factura proforma';
Content.Clear;
Content.Add(Format('Se ha generado correctamente la factura proforma %s a partir del pedido de cliente' + #10#13, [AuxFactura.REFERENCIA]));
Execute;
ARespuesta := CustomButtonResult;
case ARespuesta of
100 : begin
// Ver la factura proforma
AFacturasProformaController.Ver(AuxFactura);
end;
200 : // Continuar;
end;
end;
end;
Result := True;
finally
// AArticulosPendientes := NIL;
if Assigned(APedidosClienteController) then
Finalizar;
end;
end;
{
function ElegirPedidoYGenerarAlbaranCli(var IDAlbaran: Integer) : Boolean; overload;
var
APedido : IBizPedidoCliente;
AAlbaran : IBizAlbaranCliente;
begin
Result := False;
IDAlbaran := -1;
AAlbaran := NIL;
try
if not Assigned(APedidosClienteController) then
Inicializar;
APedido := APedidosClienteController.ElegirPedidos(APedidosClienteController.BuscarPendientes,
'Elija el pedido de cliente que desea utilizar para dar de alta el albarán de cliente.'
, False);
if Assigned(APedido) then
begin
Result := GenerarAlbaranCli(APedido, AAlbaran);
if Result then
IDAlbaran := AAlbaran.ID;
end;
finally
if Assigned(APedidosClienteController) then
Finalizar;
end;
end;
}
end.

View File

@ -14,4 +14,4 @@ END
/* C:\Codigo\Source\Modulos\Tienda web\Data\uDataModuleTiendaWeb.dfm */
/* C:\Codigo\Source\Modulos\Tienda web\Data\TiendaWeb_data.res */
/* c:\temp\dtf340.tmp */
/* c:\temp\dtf37C.tmp */

Binary file not shown.

View File

@ -164,10 +164,11 @@ uses
schEmpresasServer_Intf in '..\ApplicationBase\Empresas\Model\schEmpresasServer_Intf.pas',
srvFacturasProforma_Impl in '..\Modulos\Facturas proforma\Servidor\srvFacturasProforma_Impl.pas' {srvFacturasProforma: TDataAbstractService},
uBizFacturasProformaServer in '..\Modulos\Facturas proforma\Model\uBizFacturasProformaServer.pas',
schFacturasProformaClient_Intf in '..\Modulos\Facturas proforma\Model\schFacturasProformaClient_Intf.pas',
schFacturasProformaServer_Intf in '..\Modulos\Facturas proforma\Model\schFacturasProformaServer_Intf.pas',
schContactosClient_Intf in '..\Modulos\Contactos\Model\schContactosClient_Intf.pas',
schContactosServer_Intf in '..\Modulos\Contactos\Model\schContactosServer_Intf.pas';
schContactosServer_Intf in '..\Modulos\Contactos\Model\schContactosServer_Intf.pas',
uRptFacturasProforma_Server in '..\Modulos\Facturas proforma\Reports\uRptFacturasProforma_Server.pas' {RptFacturasProforma: TDataModule},
schFacturasProformaClient_Intf in '..\Modulos\Facturas proforma\Model\schFacturasProformaClient_Intf.pas',
schFacturasProformaServer_Intf in '..\Modulos\Facturas proforma\Model\schFacturasProformaServer_Intf.pas';
{$R *.res}
{$R ..\Servicios\RODLFile.res}

View File

@ -172,6 +172,10 @@
<DCCReference Include="..\Modulos\Facturas proforma\Model\schFacturasProformaClient_Intf.pas"/>
<DCCReference Include="..\Modulos\Facturas proforma\Model\schFacturasProformaServer_Intf.pas"/>
<DCCReference Include="..\Modulos\Facturas proforma\Model\uBizFacturasProformaServer.pas"/>
<DCCReference Include="..\Modulos\Facturas proforma\Reports\uRptFacturasProforma_Server.pas">
<Form>RptFacturasProforma</Form>
<DesignClass>TDataModule</DesignClass>
</DCCReference>
<DCCReference Include="..\Modulos\Facturas proforma\Servidor\srvFacturasProforma_Impl.pas">
<Form>srvFacturasProforma</Form>
<DesignClass>TDataAbstractService</DesignClass>

View File

@ -14,7 +14,7 @@ BEGIN
BEGIN
VALUE "FileVersion", "4.3.4.0\0"
VALUE "ProductVersion", "4.3.4.0\0"
VALUE "CompileDate", "jueves, 05 de diciembre de 2013 12:20\0"
VALUE "CompileDate", "jueves, 12 de diciembre de 2013 16:36\0"
END
END
BLOCK "VarFileInfo"