Se añaden comisiones de vendedor (primera parte: falta elegir las facturas)

git-svn-id: https://192.168.0.254/svn/Proyectos.Noviseda_FactuGES2/trunk@122 f33bb606-9f5c-448d-9c99-757f00063c96
This commit is contained in:
roberto 2010-05-05 17:10:12 +00:00
parent 8763218d05
commit 1c57cd1a32
35 changed files with 8482 additions and 134 deletions

View File

@ -18,8 +18,10 @@ INSERT INTO REFERENCIAS (ID, ID_EMPRESA, CODIGO, VALOR, DESCRIPCION) VALUES (14,
INSERT INTO REFERENCIAS (ID, ID_EMPRESA, CODIGO, VALOR, DESCRIPCION) VALUES (15, NULL, 'REF_VENDEDORES', '0000001', 'Ref. vendedores');
INSERT INTO REFERENCIAS (ID, ID_EMPRESA, CODIGO, VALOR, DESCRIPCION) VALUES (16, 2, 'REF_FACTURAS_CLIENTE', '10-000001', 'Ref. facturas de cliente');
INSERT INTO REFERENCIAS (ID, ID_EMPRESA, CODIGO, VALOR, DESCRIPCION) VALUES (17, 2, 'REF_REMESAS_CLIENTE', '10-000001', 'Ref. remesas de cliente');
INSERT INTO REFERENCIAS (ID, ID_EMPRESA, CODIGO, VALOR, DESCRIPCION) VALUES (18, 1, 'REF_COMISIONES', '10/001', 'Ref. comisiones de vendedor');
INSERT INTO REFERENCIAS (ID, ID_EMPRESA, CODIGO, VALOR, DESCRIPCION) VALUES (19, 2, 'REF_COMISIONES', '10-001', 'Ref. comisiones de vendedor');
SET GENERATOR GEN_REFERENCIAS_ID TO 18;
SET GENERATOR GEN_REFERENCIAS_ID TO 20;
COMMIT WORK;
INSERT INTO TIPOS_IVA (ID, REFERENCIA, DESCRIPCION, IVA, RE) VALUES (1, 'IVA16', 'IVA16', 16, 4);

View File

@ -13,7 +13,7 @@ const
MODULENAME_ALBARANES_PROVEEDOR = 'AlbaranesProveedor_plugin.bpl';
MODULENAME_FACTURAS_PROVEEDOR = 'FacturasProveedor_plugin.bpl';
MODULENAME_RECIBOS_PROVEEDOR = 'RecibosProveedor_plugin.bpl';
MODULENAME_COMISIONES = 'Comisiones_plugin.bpl';
type
IMCPresupuestosCliente = interface(IInterface)
@ -72,6 +72,10 @@ type
const ANombreProveedor : String = '');
end;
IMCComisiones = interface(IInterface)
['{DE38F25C-4B46-4553-A8C1-B07A58585A1C}']
end;
implementation
end.

View File

@ -1,6 +1,7 @@
program FactuGES;
uses
ExceptionLog,
Forms,
Windows,
SysUtils,

View File

@ -53,6 +53,7 @@ begin
LoadModule('Inventario_plugin.bpl');
LoadModule('HistoricoMovimientos_plugin.bpl');
LoadModule(MODULENAME_COMISIONES);
// LoadModule('GestorInformes_plugin.bpl');
end;
end;

View File

@ -12,9 +12,13 @@
<Projects Include="..\Contactos\Controller\Contactos_controller.dproj" />
<Projects Include="..\Contactos\Data\Contactos_data.dproj" />
<Projects Include="..\Contactos\Model\Contactos_model.dproj" />
<Projects Include="..\Contactos\Plugin\Contactos_plugin.dproj" />
<Projects Include="..\Contactos\Views\Contactos_view.dproj" />
<Projects Include="Controller\Comisiones_controller.dproj" />
<Projects Include="Data\Comisiones_data.dproj" />
<Projects Include="Model\Comisiones_model.dproj" />
<Projects Include="Plugin\Comisiones_plugin.dproj" />
<Projects Include="Views\Comisiones_view.dproj" />
</ItemGroup>
<ProjectExtensions>
<Borland.Personality>Default.Personality</Borland.Personality>
@ -103,6 +107,33 @@
<Target Name="Comisiones_data:Make">
<MSBuild Projects="Data\Comisiones_data.dproj" Targets="Make" />
</Target>
<Target Name="Comisiones_controller">
<MSBuild Projects="Controller\Comisiones_controller.dproj" Targets="" />
</Target>
<Target Name="Comisiones_controller:Clean">
<MSBuild Projects="Controller\Comisiones_controller.dproj" Targets="Clean" />
</Target>
<Target Name="Comisiones_controller:Make">
<MSBuild Projects="Controller\Comisiones_controller.dproj" Targets="Make" />
</Target>
<Target Name="Comisiones_view">
<MSBuild Projects="Views\Comisiones_view.dproj" Targets="" />
</Target>
<Target Name="Comisiones_view:Clean">
<MSBuild Projects="Views\Comisiones_view.dproj" Targets="Clean" />
</Target>
<Target Name="Comisiones_view:Make">
<MSBuild Projects="Views\Comisiones_view.dproj" Targets="Make" />
</Target>
<Target Name="Comisiones_plugin">
<MSBuild Projects="Plugin\Comisiones_plugin.dproj" Targets="" />
</Target>
<Target Name="Comisiones_plugin:Clean">
<MSBuild Projects="Plugin\Comisiones_plugin.dproj" Targets="Clean" />
</Target>
<Target Name="Comisiones_plugin:Make">
<MSBuild Projects="Plugin\Comisiones_plugin.dproj" Targets="Make" />
</Target>
<Target Name="FactuGES">
<MSBuild Projects="..\..\Cliente\FactuGES.dproj" Targets="" />
</Target>
@ -121,14 +152,23 @@
<Target Name="FactuGES_Server:Make">
<MSBuild Projects="..\..\Servidor\FactuGES_Server.dproj" Targets="Make" />
</Target>
<Target Name="Contactos_plugin">
<MSBuild Projects="..\Contactos\Plugin\Contactos_plugin.dproj" Targets="" />
</Target>
<Target Name="Contactos_plugin:Clean">
<MSBuild Projects="..\Contactos\Plugin\Contactos_plugin.dproj" Targets="Clean" />
</Target>
<Target Name="Contactos_plugin:Make">
<MSBuild Projects="..\Contactos\Plugin\Contactos_plugin.dproj" Targets="Make" />
</Target>
<Target Name="Build">
<CallTarget Targets="Base;GUIBase;ApplicationBase;Contactos_model;Contactos_data;Contactos_controller;Contactos_view;Comisiones_model;Comisiones_data;FactuGES;FactuGES_Server" />
<CallTarget Targets="Base;GUIBase;ApplicationBase;Contactos_model;Contactos_data;Contactos_controller;Contactos_view;Comisiones_model;Comisiones_data;Comisiones_controller;Comisiones_view;Comisiones_plugin;FactuGES;FactuGES_Server;Contactos_plugin" />
</Target>
<Target Name="Clean">
<CallTarget Targets="Base:Clean;GUIBase:Clean;ApplicationBase:Clean;Contactos_model:Clean;Contactos_data:Clean;Contactos_controller:Clean;Contactos_view:Clean;Comisiones_model:Clean;Comisiones_data: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;Comisiones_model:Clean;Comisiones_data:Clean;Comisiones_controller:Clean;Comisiones_view:Clean;Comisiones_plugin:Clean;FactuGES:Clean;FactuGES_Server:Clean;Contactos_plugin: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;Comisiones_model:Make;Comisiones_data: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;Comisiones_model:Make;Comisiones_data:Make;Comisiones_controller:Make;Comisiones_view:Make;Comisiones_plugin:Make;FactuGES:Make;FactuGES_Server:Make;Contactos_plugin:Make" />
</Target>
<Import Condition="Exists('$(MSBuildBinPath)\Borland.Group.Targets')" Project="$(MSBuildBinPath)\Borland.Group.Targets" />
</Project>

View File

@ -0,0 +1,545 @@
<?xml version="1.0" encoding="utf-8"?>
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<ProjectGuid>{f8fdcc68-4417-434e-891b-81db965b457a}</ProjectGuid>
<MainSource>Comisiones_controller.dpk</MainSource>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<DCC_DCCCompiler>DCC32</DCC_DCCCompiler>
<DCC_DependencyCheckOutputName>..\..\..\..\Output\Debug\Cliente\Comisiones_controller.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_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><Source><Source Name="MainSource">Comisiones_controller.dpk</Source></Source></Delphi.Personality></BorlandProject></BorlandProject>
</ProjectExtensions>
<Import Project="$(MSBuildBinPath)\Borland.Delphi.Targets" />
<ItemGroup>
<DelphiCompile Include="Comisiones_controller.dpk">
<MainSource>MainSource</MainSource>
</DelphiCompile>
<DCCReference Include="..\..\Lib\adortl.dcp" />
<DCCReference Include="..\..\Lib\ApplicationBase.dcp" />
<DCCReference Include="..\..\Lib\Comisiones_data.dcp" />
<DCCReference Include="..\..\Lib\Comisiones_model.dcp" />
<DCCReference Include="..\..\Lib\Contactos_controller.dcp" />
<DCCReference Include="..\..\Lib\cxLibraryD11.dcp" />
<DCCReference Include="..\..\Lib\DataAbstract_Core_D11.dcp" />
<DCCReference Include="..\..\Lib\dbrtl.dcp" />
<DCCReference Include="..\..\Lib\dsnap.dcp" />
<DCCReference Include="..\..\Lib\dxCoreD11.dcp" />
<DCCReference Include="..\..\Lib\dxGDIPlusD11.dcp" />
<DCCReference Include="..\..\Lib\dxThemeD11.dcp" />
<DCCReference Include="..\..\Lib\RemObjects_Core_D11.dcp" />
<DCCReference Include="..\..\Lib\rtl.dcp" />
<DCCReference Include="..\..\Lib\vcl.dcp" />
<DCCReference Include="..\..\Lib\vcldb.dcp" />
<DCCReference Include="..\..\Lib\vclx.dcp" />
<DCCReference Include="uComisionesController.pas" />
<DCCReference Include="View\uIEditorComision.pas" />
<DCCReference Include="View\uIEditorComisiones.pas" />
</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,23 @@
unit uIEditorComision;
interface
uses
uEditorDBItem, uBizComisiones, uComisionesController;
type
IEditorComision = interface(IEditorDBItem)
['{B7EC6674-46EE-4D01-BB5E-92D8BFA690F4}']
function GetController : IComisionesController;
procedure SetController (const Value : IComisionesController);
property Controller : IComisionesController read GetController
write SetController;
function GetComision: IBizComision;
procedure SetComision(const Value: IBizComision);
property Comision: IBizComision read GetComision write SetComision;
end;
implementation
end.

View File

@ -0,0 +1,23 @@
unit uIEditorComisiones;
interface
uses
uEditorGridBase, uBizComisiones, uComisionesController;
type
IEditorComisiones = interface(IEditorGridBase)
['{E9DBC45C-E4BC-444E-930F-E0C073C4E855}']
function GetComisiones: IBizComision;
procedure SetComisiones(const Value: IBizComision);
property Comisiones: IBizComision read GetComisiones write SetComisiones;
function GetController : IComisionesController;
procedure SetController (const Value : IComisionesController);
property Controller : IComisionesController read GetController write SetController;
end;
implementation
end.

View File

@ -0,0 +1,940 @@
unit uComisionesController;
interface
uses
Classes, SysUtils, uDADataTable, uControllerBase, uIDataModuleComisiones,
//uDetallesFacturaClienteController,
uBizComisiones;
type
IComisionesController = interface(IControllerBase)
['{A6452334-2891-4CF4-A018-E7E8BE3B11E7}']
function Buscar(const ID: Integer): IBizComision;
function BuscarTodos: IBizComision; overload;
// function BuscarTodos(const AID_Cliente: Integer): IBizComision; overload;
procedure Ver(AComision : IBizComision);
procedure VerTodos(AComisiones: IBizComision;
const AVerModal : Boolean = False; const AWindowCaption: String = '';
const AHeaderText: String = '');
function Nuevo (withInsert: Boolean = True) : IBizComision;
function Anadir(AComision : IBizComision) : Boolean; overload;
function Eliminar(const ID : Integer): Boolean; overload;
function Eliminar(AComision : IBizComision; AllItems: Boolean = false): Boolean; overload;
function Guardar(AComision : IBizComision): Boolean;
procedure DescartarCambios(AComision : IBizComision);
function Existe(const ID: Integer) : Boolean;
procedure Preview(AComision : IBizComision; AllItems: Boolean = false);
procedure Print(AComision : IBizComision; AllItems: Boolean = false);
procedure RecalcularImportes(AComision: IBizComision);
function EsModificable(AComision: IBizComision): Boolean;
function EsEliminable(AComision: IBizComision): Boolean;
// function ElegirComisiones(AComisiones : IBizComision; AMensaje: String; AMultiSelect: Boolean): IBizComision;
function ExtraerSeleccionados(AComisiones: IBizComision) : IBizComision;
function DarListaAnosComisiones: TStringList;
procedure FiltrarAno(AComision: IBizComision; ADynWhereDataTable: WideString; const Ano: String);
end;
TComisionesController = class(TControllerBase, IComisionesController)
private
FDataModule : IDataModuleComisiones;
function CreateEditor(const AName : String; const IID: TGUID; out Intf): Boolean;
function _Vacio : IBizComision;
procedure FiltrarEmpresa(AComision: IBizComision);
function ValidarComision(AComision: IBizComision): Boolean;
protected
procedure RecibirAviso(ASujeto: ISujeto; ADataTable: IDAStronglyTypedDataTable); override;
public
constructor Create; override;
destructor Destroy; override;
function Eliminar(const ID : Integer): Boolean; overload;
function Eliminar(AComision : IBizComision; AllItems: Boolean = false): Boolean; overload;
function Guardar(AComision : IBizComision): Boolean;
procedure DescartarCambios(AComision : IBizComision); virtual;
function Existe(const ID: Integer) : Boolean; virtual;
function Anadir(AComision : IBizComision): Boolean; overload;
// function Anadir(AComisions : IBizComision; AListaAlbaranes : IBizAlbaranCliente): Boolean; overload;
// function Anadir(AComision : IBizComision; const IDPedido : Integer): Boolean; overload;
function Buscar(const ID: Integer): IBizComision;
function BuscarTodos: IBizComision; overload;
// function BuscarTodos(const AID_Cliente: Integer): IBizComision; overload;
// function BuscarTodasPendientesComision(IdAgente: Integer; IdComision: Integer; IdFacturasAsociadas: String): IBizComision;
function Nuevo (withInsert: Boolean = True) : IBizComision;
procedure Ver(AComision : IBizComision);
procedure VerTodos(AComisiones: IBizComision;
const AVerModal : Boolean = False; const AWindowCaption: String = '';
const AHeaderText: String = '');
procedure Preview(AComision : IBizComision; AllItems: Boolean = false);
procedure Print(AComision : IBizComision; AllItems: Boolean = false);
procedure RecalcularImportes(AComision: IBizComision);
function EsModificable(AComision: IBizComision): Boolean;
function EsEliminable(AComision: IBizComision): Boolean;
// function ElegirFacturas(AComisions : IBizComision; AMensaje: String; AMultiSelect: Boolean): IBizComision;
function ExtraerSeleccionados(AComisiones: IBizComision) : IBizComision;
function DarListaAnosComisiones: TStringList;
procedure FiltrarAno(AComision: IBizComision; ADynWhereDataTable: WideString; const Ano: String);
end;
implementation
uses
Windows, Controls, cxControls, DB, uEditorRegistryUtils, schComisionesClient_Intf,
uBizContactos, uIEditorComisiones, uIEditorComision, uFactuGES_App,
uDataModuleComisiones, uDataModuleUsuarios, uDAInterfaces, uDataTableUtils, uDateUtils, uNumUtils,
uROTypes, DateUtils, Forms, uIntegerListUtils, uSistemaFunc, uDialogElegirEMail, uEMailUtils, Dialogs, uStringsUtils,
uROXMLIntf;
{procedure CopiarArticulosPedido(AOrigen: IBizDetallesPedidoCliente;
ADestino : IBizDetallesFacturaCliente);
var
i : integer;
ADetallesController : IDetallesFacturaClienteController;
begin
if not Assigned(AOrigen) then
raise Exception.Create ('Origen no asignado (CopiarArticulosPedido)');
if not Assigned(ADestino) then
raise Exception.Create ('Destino no asignado (CopiarArticulosPedido)');
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;}
{ TComisionesController }
function TComisionesController.Anadir(AComision: IBizComision) : Boolean;
begin
if not Assigned(AComision) then
raise Exception.Create ('Comision no asignada (Anadir)');
AComision.Insert;
Result := True;
end;
{
function TComisionesController.Anadir(AComisions: IBizComision;
AListaAlbaranes: IBizAlbaranCliente): Boolean;
var
AComisionActual : IBizComision;
AAlbaranesController : IAlbaranesClienteController;
I: Integer;
bEnEdicion : Boolean;
begin
// ATENCIÓN!!! AComisions tiene que estar vacio para no pisar facturas
// ya generadas.
if not Assigned(AComisions) then
raise Exception.Create ('Factura no asignada (Anadir)');
if not Assigned(AListaAlbaranes) then
raise Exception.Create ('Albaranes no asignados (Anadir)');
if not AComisions.DataTable.Active then
AComisions.DataTable.Active := True;
if not AListaAlbaranes.DataTable.Active then
AListaAlbaranes.DataTable.Active := True;
ShowHourglassCursor;
Application.ProcessMessages;
AAlbaranesController := TAlbaranesClienteController.Create;
try
// Ordenar por fecha de albaran
AListaAlbaranes.DataTable.Sort([fld_AlbaranesClienteFECHA_ALBARAN], [uDADataTable.sdAscending]);
AListaAlbaranes.First;
for I := 0 to AListaAlbaranes.DataTable.RecordCount - 1 do
begin
AListaAlbaranes._Cliente := NIL;
AComisionActual := NIL;
// Busco si hay alguna factura ya hecha de ese cliente
AComisions.DataTable.First;
if AComisions.DataTable.Locate(fld_ComisionesID_CLIENTE, AListaAlbaranes.ID_CLIENTE, []) then
begin
AComisionActual := AComisions;
RecuperarCliente(AComisionActual);
AComisionActual.Cliente.DataTable.Active := True;
end
else begin
// No hay factura de ese cliente. Creo una nueva
Anadir(AComisions);
AAlbaranesController.RecuperarCliente(AListaAlbaranes);
AListaAlbaranes.Cliente.DataTable.Active := True;
AComisions.Cliente := AListaAlbaranes.Cliente;
//Si el albaran es de tipo devolución hacemos la factura de tipo abono
if (AListaAlbaranes.TIPO = CTE_TIPO_ALBARAN_DEV) then
begin
bEnEdicion := (AComisions.DataTable.State in dsEditModes);
if not bEnEdicion then
AComisions.Edit;
AComisions.TIPO := CTE_TIPO_ABONO;
AComisions.Post;
if bEnEdicion then
AComisions.Edit;
end;
AComisionActual := AComisions;
end;
// Ya tengo la factura. Le añado los conceptos del albarán
AComisionActual.Detalles.DataTable.Last;
// Añado el título
Self.DetallesController.Add(AComisionActual.Detalles, TIPO_DETALLE_TITULO);
with AComisionActual.Detalles do
begin
Edit;
CONCEPTO := 'Albarán ' + AListaAlbaranes.REFERENCIA + ' del ' + DateToStr(AListaAlbaranes.FECHA_ALBARAN);
Post;
end;
// Añado el contenido del albarán
CopiarArticulosAlbaran(AListaAlbaranes.Detalles, AComisionActual.Detalles);
Self.DetallesController.Add(AComisionActual.Detalles, TIPO_DETALLE_CONCEPTO);
with AComisionActual.Detalles do
begin
Edit;
CONCEPTO := 'Porte del albarán';
CANTIDAD := 1;
IMPORTE_UNIDAD := AListaAlbaranes.IMPORTE_PORTE;
Post;
end;
// Añado el resumen
Self.DetallesController.Add(AComisionActual.Detalles, TIPO_DETALLE_SUBTOTAL);
with AComisionActual.Detalles do
begin
Edit;
CONCEPTO := 'Total del albarán ' + AListaAlbaranes.REFERENCIA;
Post;
end;
// Añado una línea en blanco
Self.DetallesController.Add(AComisionActual.Detalles, TIPO_DETALLE_CONCEPTO);
with AComisionActual.Detalles do
begin
Edit;
CONCEPTO := '';
Post;
end;
// Guardo la factura que acabo de generar o editar
AComisionActual.CalcularImporteTotal;
Self.Guardar(AComisionActual);
// Asocio la factura con el albarán
AListaAlbaranes.Edit;
AListaAlbaranes.ID_FACTURA := AComisionActual.ID;
AListaAlbaranes.Post;
AAlbaranesController.Guardar(AListaAlbaranes);
AListaAlbaranes.Next;
end;
Result := True;
finally
AAlbaranesController := NIL;
HideHourglassCursor
end;
end;
}
{function TComisionesController.Anadir(AComision: IBizComision;
const IDPedido: Integer): Boolean;
var
APedidosController : IPedidosClienteController;
APedido : IBizPedidoCliente;
begin
Result := False;
if not Assigned(AComision) then
raise Exception.Create ('Factura no asignada (Anadir)');
if (IDPedido < 0) or (IDPedido = 0) then
raise Exception.Create (Format('ID de pedido (%d) incorrecto (Anadir)', [IDPedido]));
if not AComision.DataTable.Active then
AComision.DataTable.Active := True;
ShowHourglassCursor;
Application.ProcessMessages;
APedido := NIL;
APedidosController := TPedidosClienteController.Create;
try
APedido := APedidosController.Buscar(IDPedido);
if not Assigned(APedido) then
raise Exception.Create (Format('No se ha encontrado un pedido de cliente con ID %d (Anadir)', [IDPedido]));
APedido.DataTable.Active := True;
APedidosController.RecuperarCliente(APedido);
Self.Anadir(AComision);
AComision.Cliente := APedido.Cliente;
CopiarArticulosPedido(APedido.Detalles, AComision.Detalles);
// Guardo la factura que acabo de generar
AComision.CalcularImporteTotal;
Self.Guardar(AComision);
Result := True;
finally
APedido := NIL;
APedidosController := NIL;
HideHourglassCursor;
Application.ProcessMessages;
end;
end;}
function TComisionesController.Buscar(const ID: Integer): IBizComision;
begin
Result := (FDataModule as IDataModuleComisiones).GetItem(ID);
FiltrarEmpresa(Result);
end;
{
function TComisionesController.BuscarTodasPendientesComision(IdAgente:Integer; IdComision: Integer; IdFacturasAsociadas: String): IBizComision;
var
Condicion: TDAWhereExpression;
begin
ShowHourglassCursor;
try
Result := BuscarTodos;
with Result.DataTable.DynamicWhere do
begin
//Todas las facturas de un agente determinado
Condicion := NewBinaryExpression(NewField('', fld_ComisionesID_AGENTE), NewConstant(IdAgente, datInteger), dboEqual);
if IsEmpty then
Expression := Condicion
else
Expression := NewBinaryExpression(Expression, Condicion, dboAnd);
end;
with Result.DataTable.DynamicWhere do
begin
//Todas aquellas que no esten asociadas a ninguna comisión o asociadas a la comisión,
//pero no asociadas en el editor de la comision, esto es porque se puede agregar y quitar
//facturas y todos los cambios estan el cache y por lo tanto al pedir las facturas a seleccionar
//debemos tener en cuenta dichso cambios en cache
Condicion := NewBinaryExpression(NewField('', fld_ComisionesID_COMISION_LIQUIDADA), NewNull(), dboEqual);
if IsEmpty then
Expression := Condicion
else
Expression := NewBinaryExpression(Expression, Condicion, dboAnd);
end;
{REPASARRRRRRR
//Quitamos aquellas que ya están asociadas
if length(IdFacturasAsociadas) > 0 then
with Result.DataTable.DynamicWhere do
begin
Condicion := NewBinaryExpression(NewField('', fld_ComisionesID), ' not in (' + IdFacturasAsociadas + ')');, dboEqual);
if IsEmpty then
Expression := Condicion
else
Expression := NewBinaryExpression(Expression, Condicion, dboAnd);
end;
with Result.DataTable.Where do
begin
CLOSEBraket;
AddOperator(opOR);
OpenBraket;
//En caso de ser facturas ya asociadas lo limitamos a la comision actual
//ya que no debemos poder elegir facturas asociadas a otras comisiones
OpenBraket;
AddText(fld_ComisionesID_COMISION_LIQUIDADA + ' = ' + IntToStr(IdComision));
CloseBraket;
//En el caso de que halla facturas asociadas
if length(IdFacturasAsociadas) > 0 then
begin
AddOperator(opAND);
OpenBraket;
AddText(fld_ComisionesID + ' not in (' + IdFacturasAsociadas + ')');
CloseBraket;
end;
CloseBraket;
CloseBraket;
end;
finally
HideHourglassCursor;
end;
end;
}
{
function TComisionesController.BuscarTodos(
const AID_Cliente: Integer): IBizComision;
var
Condicion: TDAWhereExpression;
begin
ShowHourglassCursor;
try
Result := BuscarTodos;
with Result.DataTable.DynamicWhere do
begin
// ID_CLIENTE
Condicion := NewBinaryExpression(NewField('', fld_ComisionesID_CLIENTE), NewConstant(AID_Cliente, datInteger), dboEqual);
if IsEmpty then
Expression := Condicion
else
Expression := NewBinaryExpression(Expression, Condicion, dboAnd);
end;
finally
HideHourglassCursor;
end;
end;
}
function TComisionesController.BuscarTodos: IBizComision;
begin
Result := FDataModule.GetItems;
FiltrarEmpresa(Result);
end;
constructor TComisionesController.Create;
begin
inherited;
FDataModule := TDataModuleComisiones.Create(Nil);
// FDetallesController := TDetallesFacturaClienteController.Create;
// FDetallesController.addObservador(Self);
end;
function TComisionesController.CreateEditor(const AName: String;
const IID: TGUID; out Intf): Boolean;
begin
Result := Supports(EditorRegistry.CreateEditor(AName), IID, Intf);
end;
function TComisionesController.DarListaAnosComisiones: TStringList;
begin
Result := FDataModule.GetAnosItems;
end;
procedure TComisionesController.DescartarCambios(AComision: IBizComision);
begin
if not Assigned(AComision) then
raise Exception.Create ('Comision no asignada');
ShowHourglassCursor;
try
if (AComision.State in dsEditModes) then
AComision.Cancel;
AComision.DataTable.CancelUpdates;
finally
HideHourglassCursor;
end;
end;
destructor TComisionesController.Destroy;
begin
FDataModule := Nil;
// FDetallesController := Nil;
inherited;
end;
function TComisionesController.ValidarComision(AComision: IBizComision): Boolean;
begin
if not Assigned(AComision) then
raise Exception.Create ('Comision no asignada');
if (AComision.DataTable.State in dsEditModes) then
AComision.DataTable.Post;
//Tambien hacemos post de sus tablas hija
// if (AComision.FacturasComision.DataTable.State in dsEditModes) then
// AComision.FacturasComision.DataTable.Post;
if (AComision.ID_AGENTE < 0) or (AComision.ID_AGENTE = 0) then
// No comprobar el objeto Cliente por que puede fallar la validación
// cuando se generan facturas automáticamente.
{ (not Assigned(AComision.Cliente)) or
(AComision.Cliente.IsEmpty) then}
raise Exception.Create('Debe indicar el vendedor de esta comision');
if (EsFechaVacia(AComision.FECHA)) then
raise Exception.Create('Debe indicar la fecha de esta comision');
// if (AComision.FacturasComision.DataTable.RecordCount = 0) then
// raise Exception.Create('La comisión debe tener al menos una factura en su contenido');
{ Asegurarse de valores en campos "automáticos" tanto
en MODIFICACIÓN como en INSERCIÓN. }
AComision.Edit;
try
AComision.USUARIO := AppFactuGES.UsuarioActivo.UserName;
Result := True;
finally
AComision.Post;
end;
end;
procedure TComisionesController.Ver(AComision: IBizComision);
var
AEditor : IEditorComision;
begin
AEditor := NIL;
CreateEditor('EditorComision', IEditorComision, AEditor);
if Assigned(AEditor) then
try
AEditor.Controller := Self; //OJO ORDEN MUY IMPORTANTE
AEditor.Comision := AComision;
//MODO CONSULTAR
if not EsModificable(AComision) then
begin
SetDataTableReadOnly(AComision.DataTable, True);
AEditor.ReadOnly := True;
end;
AEditor.ShowModal;
//MODO CONSULTAR (Se deja la tabla como estaba)
if AEditor.ReadOnly then
SetDataTableReadOnly(AComision.DataTable, False);
finally
AEditor.Release;
AEditor := NIL;
end;
end;
procedure TComisionesController.VerTodos(AComisiones: IBizComision;
const AVerModal : Boolean = False; const AWindowCaption: String = '';
const AHeaderText: String = '');
var
AEditor : IEditorComisiones;
begin
AEditor := NIL;
CreateEditor('EditorComisiones', IEditorComisiones, AEditor);
if Assigned(AEditor) then
try
if not EsCadenaVacia(AWindowCaption) then
AEditor.WindowCaption := AWindowCaption;
if not EsCadenaVacia(AHeaderText) then
AEditor.HeaderText := AHeaderText;
AEditor.Controller := Self; //OJO ORDEN MUY IMPORTANTE
AEditor.Comisiones := AComisiones;
AEditor.MultiSelect := True;
if AVerModal then
AEditor.ShowModal
else
AEditor.ShowEmbedded;
finally
if AVerModal then
AEditor.Release;
AEditor := Nil;
end;
end;
function TComisionesController._Vacio: IBizComision;
begin
Result := Buscar(ID_NULO);
end;
function TComisionesController.Eliminar(const ID: Integer): Boolean;
var
AComision : IBizComision;
begin
AComision := Buscar(ID);
if not Assigned(AComision) then
raise Exception.Create(Format('No se ha encontrado la comision con ID = %d', [ID]));
Result := Eliminar(AComision);
AComision := NIL;
end;
{
function TComisionesController.ElegirComisiones(AComisions: IBizComision; AMensaje: String;
AMultiSelect: Boolean): IBizComision;
var
AEditor : IEditorElegirComisiones;
begin
Result := NIL;
CreateEditor('EditorElegirComisiones', IEditorElegirComisiones, AEditor);
if Assigned(AEditor) then
try
AEditor.Controller := Self;
AEditor.Facturas := AComisions;
AEditor.MultiSelect := AMultiSelect;
AEditor.Mensaje := AMensaje;
if IsPositiveResult(AEditor.ShowModal) then
Result := AEditor.ComisionesSeleccionados;
finally
AEditor.Release;
AEditor := NIL;
end;
end;
}
function TComisionesController.Eliminar(AComision: IBizComision; AllItems: Boolean = false): Boolean;
//En el caso de eliminar almenos un elemento del conjunto se devuelve true
var
bEliminado: Boolean;
begin
bEliminado := False;
if not Assigned(AComision) then
raise Exception.Create ('Comision no asignada');
ShowHourglassCursor;
try
if not AComision.DataTable.Active then
AComision.DataTable.Active := True;
if (AComision.State in dsEditModes) then
AComision.Cancel;
//Siempre eliminaremos el seleccionado
if EsEliminable(AComision) then
begin
AComision.Delete;
bEliminado := True;
end;
//En el caso de querer eliminar todos los items del objeto AAlbaran
if AllItems then
begin
with AComision.DataTable do
begin
First;
while not EOF do
begin
if EsEliminable(AComision) then
begin
AComision.Delete;
bEliminado := True
end
else Next;
end;
end;
end;
if bEliminado then
begin
try
AComision.DataTable.ApplyUpdates;
Result := True
except
//En el caso de una factura que tiene recibos con devoluciones hechas no se puede borrar aunque la factura este en situacion de pendiente
AComision.DataTable.CancelUpdates;
Result := False;
end;
end
else
Result := False;
finally
HideHourglassCursor;
end;
end;
function TComisionesController.EsEliminable(AComision: IBizComision): Boolean;
begin
Result := EsModificable(AComision);
end;
function TComisionesController.EsModificable(AComision: IBizComision): Boolean;
begin
Result := True;
end;
procedure TComisionesController.RecalcularImportes(
AComision: IBizComision);
var
bEnEdicion : Boolean;
ADetallePosAct : Integer;
begin
{
if not Assigned(AComision) then
raise Exception.Create ('Factura no asignado (RecalcularImportes)');
if AComision.DataTable.Active then
AComision.DataTable.Active := True;
{ Hay que guardar la posición en la que estamos en los detalles por que
la asignación de valores a los campos IMPORTE_NETO e IMPORTE_PORTE
(ver más adelante) colocan el puntero en la tabla detalle al principio.
No he encontrado la razón por la que mueve el puntero. }
{
ADetallePosAct := AComision.Detalles.POSICION;
bEnEdicion := (AComision.DataTable.State in dsEditModes);
if not bEnEdicion then
AComision.Edit;
ShowHourglassCursor;
try
AComision.IMPORTE_NETO := FDetallesController.DarTotalImporteTotal(AComision.Detalles);
AComision.IMPORTE_PORTE := FDetallesController.DarTotalPorteTotal(AComision.Detalles);
if not bEnEdicion then
AComision.Post;
finally
HideHourglassCursor;
// Restaurar la posición que teníamos en los detalles.
FDetallesController.LocalizarPosicion(AComision.Detalles, ADetallePosAct);
end;
}
end;
procedure TComisionesController.RecibirAviso(ASujeto: ISujeto; ADataTable: IDAStronglyTypedDataTable);
var
AComision : IBizComision;
AFacturasComision : IBizFacturasComision;
begin
inherited;
if Supports(ADataTable, IBizFacturasComision, AFacturasComision) and
Supports(AFacturasComision.DataTable.MasterSource.DataTable, IBizComision, AComision) then
begin
RecalcularImportes(AComision);
end;
end;
function TComisionesController.Existe(const ID: Integer): Boolean;
var
AComision : IBizComision;
begin
try
AComision := Buscar(ID);
Result := Assigned(AComision) and (AComision.ID = ID);
finally
AComision := NIL;
end;
end;
function TComisionesController.ExtraerSeleccionados(AComisiones: IBizComision): IBizComision;
var
ASeleccionados : IBizComision;
begin
ASeleccionados := (Self.Buscar(ID_NULO) as IBizComision);
CopyDataTableDA5(AComisiones.DataTable, ASeleccionados.DataTable, True);
Result := ASeleccionados;
end;
procedure TComisionesController.FiltrarAno(AComision: IBizComision; ADynWhereDataTable: WideString; const Ano: String);
var
Condicion: TDAWhereExpression;
FechaIni: String;
FechaFin: String;
begin
AComision.DataTable.DynamicWhere.Clear;
AComision.DataTable.DynamicWhere.Xml := ADynWhereDataTable;
if (Ano <> 'Todos') then
begin
// Filtrar las facturas actuales por empresa
FechaIni := '01/01/' + Ano;
FechaFin := '31/12/' + Ano;
with AComision.DataTable.DynamicWhere do
begin
// (FECHA_INICIO between FECHA_FIN)
Condicion := NewBinaryExpression(NewField('', fld_ComisionesFECHA), NewConstant(FechaIni, datString), dboGreaterOrEqual);
Condicion := NewBinaryExpression(NewBinaryExpression(NewField('', fld_ComisionesFECHA), NewConstant(FechaFin, datString), dboLessOrEqual), Condicion, dboAnd);
if IsEmpty then
Expression := Condicion
else
Expression := NewBinaryExpression(Condicion, Expression, dboAnd);
end;
end;
end;
procedure TComisionesController.FiltrarEmpresa(AComision: IBizComision);
var
Condicion: TDAWhereExpression;
begin
if AComision.DataTable.Active then
AComision.DataTable.Active := False;
// Filtrar las comisiones actuales por empresa
with AComision.DataTable.DynamicWhere do
begin
// (ID_EMPRESA >= ID)
Condicion := NewBinaryExpression(NewField('', fld_ComisionesID_EMPRESA), NewConstant(AppFactuGES.EmpresaActiva.ID, datInteger), dboEqual);
if IsEmpty then
Expression := Condicion
else
Expression := NewBinaryExpression(Expression, Condicion, dboAnd);
end;
end;
function TComisionesController.Guardar(AComision: IBizComision): Boolean;
begin
Result := False;
if not Assigned(AComision) then
raise Exception.Create ('Comision no asignada');
if ValidarComision(AComision) then
begin
ShowHourglassCursor;
// Asegurarnos de que todos los importes están bien.
RecalcularImportes(AComision);
try
AComision.DataTable.ApplyUpdates;
Result := True;
finally
HideHourglassCursor;
end;
end;
end;
function TComisionesController.Nuevo(withInsert: Boolean = True): IBizComision;
var
AComision : IBizComision;
begin
AComision := FDataModule.NewItem;
FiltrarEmpresa(AComision);
AComision.DataTable.Active := True;
if WithInsert then
AComision.Insert;
Result := AComision;
end;
procedure TComisionesController.Preview(AComision: IBizComision; AllItems: Boolean = false);
{var
AReportController : IComisionesReportController;
ID_Facturas: TIntegerList;
}
begin
{ AReportController := TComisionesReportController.Create;
ID_Facturas := TIntegerList.Create;
try
//Si deseamos previsualizar todos los items del objeto albaran
if AllItems then
begin
with AComision.DataTable do
begin
First;
while not EOF do
begin
ID_Facturas.Add(AComision.ID);
Next;
end;
end;
end
//Solo previsualizamos el item seleccionado
else
ID_Facturas.Add(AComision.ID);
AReportController.Preview(ID_Facturas, AOriginal, ACopia, AContabilidad);
finally
AReportController := NIL;
FreeANDNIL(ID_Facturas);
end;
}
end;
procedure TComisionesController.Print(AComision: IBizComision; AllItems: Boolean = false);
{var
AReportController : IComisionesReportController;
ID_Facturas: TIntegerList;
}
begin
{ AReportController := TComisionesReportController.Create;
ID_Facturas := TIntegerList.Create;
try
//Si deseamos previsualizar todos los items del objeto albaran
if AllItems then
begin
with AComision.DataTable do
begin
First;
while not EOF do
begin
ID_Facturas.Add(AComision.ID);
Next;
end;
end;
end
//Solo previsualizamos el item seleccionado
else
ID_Facturas.Add(AComision.ID);
AReportController.Print(ID_Facturas, AOriginal, ACopia, AContabilidad);
finally
AReportController := NIL;
FreeANDNIL(ID_Facturas);
end;
}
end;
end.

View File

@ -28,44 +28,62 @@ inherited DataModuleComisiones: TDataModuleComisiones
Fields = <
item
Name = 'ID'
DataType = datInteger
DataType = datAutoInc
GeneratorName = 'GEN_COMISIONES_LIQUID_ID'
DictionaryEntry = 'Comisiones_ID'
InPrimaryKey = True
end
item
Name = 'ID_EMPRESA'
DataType = datInteger
DisplayLabel = 'Comisiones_ID_EMPRESA'
DictionaryEntry = 'Comisiones_ID_EMPRESA'
end
item
Name = 'REFERENCIA'
DataType = datString
Size = 255
DisplayLabel = 'Comisiones_REFERENCIA'
DictionaryEntry = 'Comisiones_REFERENCIA'
end
item
Name = 'ID_AGENTE'
DataType = datInteger
DisplayLabel = 'Comisiones_ID_AGENTE'
DictionaryEntry = 'Comisiones_ID_AGENTE'
end
item
Name = 'AGENTE'
DataType = datString
Size = 255
DisplayLabel = 'Comisiones_AGENTE'
DictionaryEntry = 'Comisiones_AGENTE'
end
item
Name = 'DESCRIPCION'
DataType = datString
Size = 255
DisplayLabel = 'Comisiones_DESCRIPCION'
DictionaryEntry = 'Comisiones_DESCRIPCION'
end
item
Name = 'FECHA'
DataType = datDateTime
DisplayLabel = 'Comisiones_FECHA'
DictionaryEntry = 'Comisiones_FECHA'
end
item
Name = 'IMPORTE_TOTAL'
DataType = datCurrency
DisplayLabel = 'Comisiones_IMPORTE_TOTAL'
DictionaryEntry = 'Comisiones_IMPORTE_TOTAL'
end
item
Name = 'USUARIO'
DataType = datString
Size = 30
end
item
Name = 'NOMBRE'
DataType = datString
Size = 255
DisplayLabel = 'Comisiones_USUARIO'
DictionaryEntry = 'Comisiones_USUARIO'
end>
Params = <>
StreamingOptions = [soDisableEventsWhileStreaming, soDisableFiltering]

View File

@ -152,7 +152,7 @@ begin
with TBizComision(AComision.BusinessEventsObj) do
begin
FacturasComision := _GetFacturasComision;
// FacturasComision := _GetFacturasComision;
end;
Result := (AComision as IBizComision);

View File

@ -10,9 +10,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_ListaAnosComisiones = '{36B55BAB-0D52-40C8-A4E5-3D76C5740A22}';
RID_FacturasComision = '{2DF3EB7B-CEE1-4E31-9DC1-DC439FBC6B81}';
RID_Comisiones = '{B3E36561-2AC0-4DCB-9EF2-74B111E3DD43}';
RID_ListaAnosComisiones = '{78483533-9B74-4043-A46A-11B7E74BE132}';
RID_FacturasComision = '{8544F07A-17AF-4577-85FC-9EF71E768D98}';
RID_Comisiones = '{AD2CE43E-76BF-46DE-8F1A-35EE59D709C2}';
{ Data table names }
nme_ListaAnosComisiones = 'ListaAnosComisiones';
@ -56,27 +56,27 @@ const
fld_ComisionesID_EMPRESA = 'ID_EMPRESA';
fld_ComisionesREFERENCIA = 'REFERENCIA';
fld_ComisionesID_AGENTE = 'ID_AGENTE';
fld_ComisionesAGENTE = 'AGENTE';
fld_ComisionesDESCRIPCION = 'DESCRIPCION';
fld_ComisionesFECHA = 'FECHA';
fld_ComisionesIMPORTE_TOTAL = 'IMPORTE_TOTAL';
fld_ComisionesUSUARIO = 'USUARIO';
fld_ComisionesNOMBRE = 'NOMBRE';
{ Comisiones field indexes }
idx_ComisionesID = 0;
idx_ComisionesID_EMPRESA = 1;
idx_ComisionesREFERENCIA = 2;
idx_ComisionesID_AGENTE = 3;
idx_ComisionesDESCRIPCION = 4;
idx_ComisionesFECHA = 5;
idx_ComisionesIMPORTE_TOTAL = 6;
idx_ComisionesUSUARIO = 7;
idx_ComisionesNOMBRE = 8;
idx_ComisionesAGENTE = 4;
idx_ComisionesDESCRIPCION = 5;
idx_ComisionesFECHA = 6;
idx_ComisionesIMPORTE_TOTAL = 7;
idx_ComisionesUSUARIO = 8;
type
{ IListaAnosComisiones }
IListaAnosComisiones = interface(IDAStronglyTypedDataTable)
['{A9B950E0-243A-4140-BCAE-792DCD6C7253}']
['{F701F56E-8083-4DE8-9063-C28DB8F75246}']
{ Property getters and setters }
function GetANOValue: String;
procedure SetANOValue(const aValue: String);
@ -111,7 +111,7 @@ type
{ IFacturasComision }
IFacturasComision = interface(IDAStronglyTypedDataTable)
['{B5C6086F-24B6-4F12-A909-551F57DDC893}']
['{C31FD4C8-31FB-4324-90F4-890CFBB72AB9}']
{ Property getters and setters }
function GetIDValue: Integer;
procedure SetIDValue(const aValue: Integer);
@ -266,7 +266,7 @@ type
{ IComisiones }
IComisiones = interface(IDAStronglyTypedDataTable)
['{E1D40C9F-BB33-4236-B551-232CCD3EBD9E}']
['{A44ADB7B-CA5F-48C5-A770-B2A415A581F0}']
{ Property getters and setters }
function GetIDValue: Integer;
procedure SetIDValue(const aValue: Integer);
@ -284,6 +284,10 @@ type
procedure SetID_AGENTEValue(const aValue: Integer);
function GetID_AGENTEIsNull: Boolean;
procedure SetID_AGENTEIsNull(const aValue: Boolean);
function GetAGENTEValue: String;
procedure SetAGENTEValue(const aValue: String);
function GetAGENTEIsNull: Boolean;
procedure SetAGENTEIsNull(const aValue: Boolean);
function GetDESCRIPCIONValue: String;
procedure SetDESCRIPCIONValue(const aValue: String);
function GetDESCRIPCIONIsNull: Boolean;
@ -300,10 +304,6 @@ type
procedure SetUSUARIOValue(const aValue: String);
function GetUSUARIOIsNull: Boolean;
procedure SetUSUARIOIsNull(const aValue: Boolean);
function GetNOMBREValue: String;
procedure SetNOMBREValue(const aValue: String);
function GetNOMBREIsNull: Boolean;
procedure SetNOMBREIsNull(const aValue: Boolean);
{ Properties }
@ -315,6 +315,8 @@ type
property REFERENCIAIsNull: Boolean read GetREFERENCIAIsNull write SetREFERENCIAIsNull;
property ID_AGENTE: Integer read GetID_AGENTEValue write SetID_AGENTEValue;
property ID_AGENTEIsNull: Boolean read GetID_AGENTEIsNull write SetID_AGENTEIsNull;
property AGENTE: String read GetAGENTEValue write SetAGENTEValue;
property AGENTEIsNull: Boolean read GetAGENTEIsNull write SetAGENTEIsNull;
property DESCRIPCION: String read GetDESCRIPCIONValue write SetDESCRIPCIONValue;
property DESCRIPCIONIsNull: Boolean read GetDESCRIPCIONIsNull write SetDESCRIPCIONIsNull;
property FECHA: DateTime read GetFECHAValue write SetFECHAValue;
@ -323,8 +325,6 @@ type
property IMPORTE_TOTALIsNull: Boolean read GetIMPORTE_TOTALIsNull write SetIMPORTE_TOTALIsNull;
property USUARIO: String read GetUSUARIOValue write SetUSUARIOValue;
property USUARIOIsNull: Boolean read GetUSUARIOIsNull write SetUSUARIOIsNull;
property NOMBRE: String read GetNOMBREValue write SetNOMBREValue;
property NOMBREIsNull: Boolean read GetNOMBREIsNull write SetNOMBREIsNull;
end;
{ TComisionesDataTableRules }
@ -348,6 +348,10 @@ type
procedure SetID_AGENTEValue(const aValue: Integer); virtual;
function GetID_AGENTEIsNull: Boolean; virtual;
procedure SetID_AGENTEIsNull(const aValue: Boolean); virtual;
function GetAGENTEValue: String; virtual;
procedure SetAGENTEValue(const aValue: String); virtual;
function GetAGENTEIsNull: Boolean; virtual;
procedure SetAGENTEIsNull(const aValue: Boolean); virtual;
function GetDESCRIPCIONValue: String; virtual;
procedure SetDESCRIPCIONValue(const aValue: String); virtual;
function GetDESCRIPCIONIsNull: Boolean; virtual;
@ -364,10 +368,6 @@ type
procedure SetUSUARIOValue(const aValue: String); virtual;
function GetUSUARIOIsNull: Boolean; virtual;
procedure SetUSUARIOIsNull(const aValue: Boolean); virtual;
function GetNOMBREValue: String; virtual;
procedure SetNOMBREValue(const aValue: String); virtual;
function GetNOMBREIsNull: Boolean; virtual;
procedure SetNOMBREIsNull(const aValue: Boolean); virtual;
{ Properties }
property ID: Integer read GetIDValue write SetIDValue;
@ -378,6 +378,8 @@ type
property REFERENCIAIsNull: Boolean read GetREFERENCIAIsNull write SetREFERENCIAIsNull;
property ID_AGENTE: Integer read GetID_AGENTEValue write SetID_AGENTEValue;
property ID_AGENTEIsNull: Boolean read GetID_AGENTEIsNull write SetID_AGENTEIsNull;
property AGENTE: String read GetAGENTEValue write SetAGENTEValue;
property AGENTEIsNull: Boolean read GetAGENTEIsNull write SetAGENTEIsNull;
property DESCRIPCION: String read GetDESCRIPCIONValue write SetDESCRIPCIONValue;
property DESCRIPCIONIsNull: Boolean read GetDESCRIPCIONIsNull write SetDESCRIPCIONIsNull;
property FECHA: DateTime read GetFECHAValue write SetFECHAValue;
@ -386,8 +388,6 @@ type
property IMPORTE_TOTALIsNull: Boolean read GetIMPORTE_TOTALIsNull write SetIMPORTE_TOTALIsNull;
property USUARIO: String read GetUSUARIOValue write SetUSUARIOValue;
property USUARIOIsNull: Boolean read GetUSUARIOIsNull write SetUSUARIOIsNull;
property NOMBRE: String read GetNOMBREValue write SetNOMBREValue;
property NOMBREIsNull: Boolean read GetNOMBREIsNull write SetNOMBREIsNull;
public
constructor Create(aDataTable: TDADataTable); override;
@ -770,6 +770,27 @@ begin
DataTable.Fields[idx_ComisionesID_AGENTE].AsVariant := Null;
end;
function TComisionesDataTableRules.GetAGENTEValue: String;
begin
result := DataTable.Fields[idx_ComisionesAGENTE].AsString;
end;
procedure TComisionesDataTableRules.SetAGENTEValue(const aValue: String);
begin
DataTable.Fields[idx_ComisionesAGENTE].AsString := aValue;
end;
function TComisionesDataTableRules.GetAGENTEIsNull: boolean;
begin
result := DataTable.Fields[idx_ComisionesAGENTE].IsNull;
end;
procedure TComisionesDataTableRules.SetAGENTEIsNull(const aValue: Boolean);
begin
if aValue then
DataTable.Fields[idx_ComisionesAGENTE].AsVariant := Null;
end;
function TComisionesDataTableRules.GetDESCRIPCIONValue: String;
begin
result := DataTable.Fields[idx_ComisionesDESCRIPCION].AsString;
@ -854,27 +875,6 @@ begin
DataTable.Fields[idx_ComisionesUSUARIO].AsVariant := Null;
end;
function TComisionesDataTableRules.GetNOMBREValue: String;
begin
result := DataTable.Fields[idx_ComisionesNOMBRE].AsString;
end;
procedure TComisionesDataTableRules.SetNOMBREValue(const aValue: String);
begin
DataTable.Fields[idx_ComisionesNOMBRE].AsString := aValue;
end;
function TComisionesDataTableRules.GetNOMBREIsNull: boolean;
begin
result := DataTable.Fields[idx_ComisionesNOMBRE].IsNull;
end;
procedure TComisionesDataTableRules.SetNOMBREIsNull(const aValue: Boolean);
begin
if aValue then
DataTable.Fields[idx_ComisionesNOMBRE].AsVariant := Null;
end;
initialization
RegisterDataTableRules(RID_ListaAnosComisiones, TListaAnosComisionesDataTableRules);

View File

@ -10,14 +10,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_ListaAnosComisionesDelta = '{CE13EF26-8BE9-4AE5-B359-29664CBAD961}';
RID_FacturasComisionDelta = '{DB808A33-1CFD-48C0-AA7F-2939B4282080}';
RID_ComisionesDelta = '{4CFC6E2C-3E40-472D-B31B-C722026DAFB7}';
RID_ListaAnosComisionesDelta = '{79B71E23-258B-40BD-AD93-17666764D2AD}';
RID_FacturasComisionDelta = '{12320421-D568-4DBA-B71D-D3A6D62F1A5A}';
RID_ComisionesDelta = '{B5ECE706-1035-4530-8692-D316693F021B}';
type
{ IListaAnosComisionesDelta }
IListaAnosComisionesDelta = interface(IListaAnosComisiones)
['{CE13EF26-8BE9-4AE5-B359-29664CBAD961}']
['{79B71E23-258B-40BD-AD93-17666764D2AD}']
{ Property getters and setters }
function GetOldANOValue : String;
@ -51,7 +51,7 @@ type
{ IFacturasComisionDelta }
IFacturasComisionDelta = interface(IFacturasComision)
['{DB808A33-1CFD-48C0-AA7F-2939B4282080}']
['{12320421-D568-4DBA-B71D-D3A6D62F1A5A}']
{ Property getters and setters }
function GetOldIDValue : Integer;
function GetOldID_EMPRESAValue : Integer;
@ -205,28 +205,28 @@ type
{ IComisionesDelta }
IComisionesDelta = interface(IComisiones)
['{4CFC6E2C-3E40-472D-B31B-C722026DAFB7}']
['{B5ECE706-1035-4530-8692-D316693F021B}']
{ Property getters and setters }
function GetOldIDValue : Integer;
function GetOldID_EMPRESAValue : Integer;
function GetOldREFERENCIAValue : String;
function GetOldID_AGENTEValue : Integer;
function GetOldAGENTEValue : String;
function GetOldDESCRIPCIONValue : String;
function GetOldFECHAValue : DateTime;
function GetOldIMPORTE_TOTALValue : Currency;
function GetOldUSUARIOValue : String;
function GetOldNOMBREValue : String;
{ Properties }
property OldID : Integer read GetOldIDValue;
property OldID_EMPRESA : Integer read GetOldID_EMPRESAValue;
property OldREFERENCIA : String read GetOldREFERENCIAValue;
property OldID_AGENTE : Integer read GetOldID_AGENTEValue;
property OldAGENTE : String read GetOldAGENTEValue;
property OldDESCRIPCION : String read GetOldDESCRIPCIONValue;
property OldFECHA : DateTime read GetOldFECHAValue;
property OldIMPORTE_TOTAL : Currency read GetOldIMPORTE_TOTALValue;
property OldUSUARIO : String read GetOldUSUARIOValue;
property OldNOMBRE : String read GetOldNOMBREValue;
end;
{ TComisionesBusinessProcessorRules }
@ -258,6 +258,12 @@ type
function GetOldID_AGENTEIsNull: Boolean; virtual;
procedure SetID_AGENTEValue(const aValue: Integer); virtual;
procedure SetID_AGENTEIsNull(const aValue: Boolean); virtual;
function GetAGENTEValue: String; virtual;
function GetAGENTEIsNull: Boolean; virtual;
function GetOldAGENTEValue: String; virtual;
function GetOldAGENTEIsNull: Boolean; virtual;
procedure SetAGENTEValue(const aValue: String); virtual;
procedure SetAGENTEIsNull(const aValue: Boolean); virtual;
function GetDESCRIPCIONValue: String; virtual;
function GetDESCRIPCIONIsNull: Boolean; virtual;
function GetOldDESCRIPCIONValue: String; virtual;
@ -282,12 +288,6 @@ type
function GetOldUSUARIOIsNull: Boolean; virtual;
procedure SetUSUARIOValue(const aValue: String); virtual;
procedure SetUSUARIOIsNull(const aValue: Boolean); virtual;
function GetNOMBREValue: String; virtual;
function GetNOMBREIsNull: Boolean; virtual;
function GetOldNOMBREValue: String; virtual;
function GetOldNOMBREIsNull: Boolean; virtual;
procedure SetNOMBREValue(const aValue: String); virtual;
procedure SetNOMBREIsNull(const aValue: Boolean); virtual;
{ Properties }
property ID : Integer read GetIDValue write SetIDValue;
@ -306,6 +306,10 @@ type
property ID_AGENTEIsNull : Boolean read GetID_AGENTEIsNull write SetID_AGENTEIsNull;
property OldID_AGENTE : Integer read GetOldID_AGENTEValue;
property OldID_AGENTEIsNull : Boolean read GetOldID_AGENTEIsNull;
property AGENTE : String read GetAGENTEValue write SetAGENTEValue;
property AGENTEIsNull : Boolean read GetAGENTEIsNull write SetAGENTEIsNull;
property OldAGENTE : String read GetOldAGENTEValue;
property OldAGENTEIsNull : Boolean read GetOldAGENTEIsNull;
property DESCRIPCION : String read GetDESCRIPCIONValue write SetDESCRIPCIONValue;
property DESCRIPCIONIsNull : Boolean read GetDESCRIPCIONIsNull write SetDESCRIPCIONIsNull;
property OldDESCRIPCION : String read GetOldDESCRIPCIONValue;
@ -322,10 +326,6 @@ type
property USUARIOIsNull : Boolean read GetUSUARIOIsNull write SetUSUARIOIsNull;
property OldUSUARIO : String read GetOldUSUARIOValue;
property OldUSUARIOIsNull : Boolean read GetOldUSUARIOIsNull;
property NOMBRE : String read GetNOMBREValue write SetNOMBREValue;
property NOMBREIsNull : Boolean read GetNOMBREIsNull write SetNOMBREIsNull;
property OldNOMBRE : String read GetOldNOMBREValue;
property OldNOMBREIsNull : Boolean read GetOldNOMBREIsNull;
public
constructor Create(aBusinessProcessor: TDABusinessProcessor); override;
@ -933,6 +933,41 @@ begin
BusinessProcessor.CurrentChange.NewValueByName[fld_ComisionesID_AGENTE] := Null;
end;
function TComisionesBusinessProcessorRules.GetAGENTEValue: String;
begin
result := BusinessProcessor.CurrentChange.NewValueByName[fld_ComisionesAGENTE];
end;
function TComisionesBusinessProcessorRules.GetAGENTEIsNull: Boolean;
var v: variant;
begin
v := BusinessProcessor.CurrentChange.NewValueByName[fld_ComisionesAGENTE];
result := VarIsNull(v) or VarIsClear(v);
end;
function TComisionesBusinessProcessorRules.GetOldAGENTEValue: String;
begin
result := BusinessProcessor.CurrentChange.OldValueByName[fld_ComisionesAGENTE];
end;
function TComisionesBusinessProcessorRules.GetOldAGENTEIsNull: Boolean;
var v: variant;
begin
v := BusinessProcessor.CurrentChange.OldValueByName[fld_ComisionesAGENTE];
result := VarIsNull(v) or VarIsClear(v);
end;
procedure TComisionesBusinessProcessorRules.SetAGENTEValue(const aValue: String);
begin
BusinessProcessor.CurrentChange.NewValueByName[fld_ComisionesAGENTE] := aValue;
end;
procedure TComisionesBusinessProcessorRules.SetAGENTEIsNull(const aValue: Boolean);
begin
if aValue then
BusinessProcessor.CurrentChange.NewValueByName[fld_ComisionesAGENTE] := Null;
end;
function TComisionesBusinessProcessorRules.GetDESCRIPCIONValue: String;
begin
result := BusinessProcessor.CurrentChange.NewValueByName[fld_ComisionesDESCRIPCION];
@ -1073,41 +1108,6 @@ begin
BusinessProcessor.CurrentChange.NewValueByName[fld_ComisionesUSUARIO] := Null;
end;
function TComisionesBusinessProcessorRules.GetNOMBREValue: String;
begin
result := BusinessProcessor.CurrentChange.NewValueByName[fld_ComisionesNOMBRE];
end;
function TComisionesBusinessProcessorRules.GetNOMBREIsNull: Boolean;
var v: variant;
begin
v := BusinessProcessor.CurrentChange.NewValueByName[fld_ComisionesNOMBRE];
result := VarIsNull(v) or VarIsClear(v);
end;
function TComisionesBusinessProcessorRules.GetOldNOMBREValue: String;
begin
result := BusinessProcessor.CurrentChange.OldValueByName[fld_ComisionesNOMBRE];
end;
function TComisionesBusinessProcessorRules.GetOldNOMBREIsNull: Boolean;
var v: variant;
begin
v := BusinessProcessor.CurrentChange.OldValueByName[fld_ComisionesNOMBRE];
result := VarIsNull(v) or VarIsClear(v);
end;
procedure TComisionesBusinessProcessorRules.SetNOMBREValue(const aValue: String);
begin
BusinessProcessor.CurrentChange.NewValueByName[fld_ComisionesNOMBRE] := aValue;
end;
procedure TComisionesBusinessProcessorRules.SetNOMBREIsNull(const aValue: Boolean);
begin
if aValue then
BusinessProcessor.CurrentChange.NewValueByName[fld_ComisionesNOMBRE] := Null;
end;
initialization
RegisterBusinessProcessorRules(RID_ListaAnosComisionesDelta, TListaAnosComisionesBusinessProcessorRules);

View File

@ -22,6 +22,7 @@ type
procedure SetFacturasComision(Value: IBizFacturasComision);
property FacturasComision: IBizFacturasComision read GetFacturasComision write SetFacturasComision;
function EsNuevo : Boolean;
procedure CalcularImporteTotal;
end;
@ -41,8 +42,11 @@ type
procedure SetFacturasComision(Value: IBizFacturasComision);
procedure COMISIONOnChange(Sender: TDACustomField);
procedure OnNewRecord(Sender: TDADataTable); override;
public
function EsNuevo : Boolean;
procedure IniciarValoresComisionNueva;
procedure CalcularImporteTotal;
property FacturasComision: IBizFacturasComision read GetFacturasComision write SetFacturasComision;
@ -103,14 +107,7 @@ begin
{
with DataTable do
begin
FieldByName(fld_FacturasClienteID_TIPO_IVA).OnChange := ID_TIPO_IVAOnChange;
FieldByName(fld_FacturasClienteRECARGO_EQUIVALENCIA).OnChange := RECARGO_EQUIVALENCIAOnChange;
FieldByName(fld_FacturasClienteIMPORTE_NETO).OnChange := IMPORTE_NETOOnChange;
FieldByName(fld_FacturasClienteIMPORTE_PORTE).OnChange := IMPORTE_PORTEOnChange;
FieldByName(fld_FacturasClienteDESCUENTO).OnChange := DESCUENTOOnChange;
FieldByName(fld_FacturasClienteDESCUENTO2).OnChange := DESCUENTO2OnChange;
FieldByName(fld_FacturasClienteCOMISION).OnChange := COMISIONOnChange;
FieldByName(fld_ID).OnChange := COMISIONOnChange;
FieldByName(fld_FacturasClienteIVA).OnChange := IVAOnChange;
FieldByName(fld_FacturasClienteRE).OnChange := REOnChange;
end;
@ -129,11 +126,29 @@ begin
inherited;
end;
function TBizComision.EsNuevo: Boolean;
begin
Result := (ID < 0);
end;
function TBizComision.GetFacturasComision: IBizFacturasComision;
begin
Result := FFacturasComision;
end;
procedure TBizComision.IniciarValoresComisionNueva;
begin
ID_EMPRESA := AppFactuGES.EmpresaActiva.ID;
USUARIO := AppFactuGES.UsuarioActivo.UserName;
FECHA := DateOf(Now);
end;
procedure TBizComision.OnNewRecord(Sender: TDADataTable);
begin
inherited;
IniciarValoresComisionNueva;
end;
procedure TBizComision.SetFacturasComision(Value: IBizFacturasComision);
begin
FFacturasComision := Value;

Binary file not shown.

View File

@ -0,0 +1,542 @@
<?xml version="1.0" encoding="utf-8"?>
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<ProjectGuid>{88ee61c0-20ab-40b0-96d6-2904393ad926}</ProjectGuid>
<MainSource>Comisiones_plugin.dpk</MainSource>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<DCC_DCCCompiler>DCC32</DCC_DCCCompiler>
<DCC_DependencyCheckOutputName>..\..\..\..\Output\Debug\Cliente\Comisiones_plugin.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_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\D11</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><Source><Source Name="MainSource">Comisiones_plugin.dpk</Source></Source></Delphi.Personality></BorlandProject></BorlandProject>
</ProjectExtensions>
<Import Project="$(MSBuildBinPath)\Borland.Delphi.Targets" />
<ItemGroup>
<DelphiCompile Include="Comisiones_plugin.dpk">
<MainSource>MainSource</MainSource>
</DelphiCompile>
<DCCReference Include="..\..\Lib\ApplicationBase.dcp" />
<DCCReference Include="..\..\Lib\Comisiones_controller.dcp" />
<DCCReference Include="..\..\Lib\Comisiones_view.dcp" />
<DCCReference Include="..\..\Lib\cxLibraryD11.dcp" />
<DCCReference Include="..\..\Lib\dxCoreD11.dcp" />
<DCCReference Include="..\..\Lib\dxGDIPlusD11.dcp" />
<DCCReference Include="..\..\Lib\dxThemeD11.dcp" />
<DCCReference Include="..\..\Lib\PluginSDK_D11R.dcp" />
<DCCReference Include="..\..\Lib\PngComponentsD10.dcp" />
<DCCReference Include="..\..\Lib\PNG_D10.dcp" />
<DCCReference Include="..\..\Lib\rtl.dcp" />
<DCCReference Include="..\..\Lib\vcl.dcp" />
<DCCReference Include="..\..\Lib\vclactnband.dcp" />
<DCCReference Include="..\..\Lib\vclx.dcp" />
<DCCReference Include="uPluginComisiones.pas">
<Form>PluginComisiones</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 -->

Binary file not shown.

View File

@ -0,0 +1,131 @@
object PluginComisiones: TPluginComisiones
OldCreateOrder = True
DefaultAction = actComisiones
Description = 'Ventas'
ModuleMenu = MainMenu
ModuleName = 'Comisiones'
SmallImages = SmallImages
LargeImages = LargeImages
Author = 'Rodax Software'
Version = '1.0.0'
Height = 252
Width = 401
object LargeImages: TPngImageList
Height = 24
Width = 24
PngImages = <
item
PngImage.Data = {
89504E470D0A1A0A0000000D4948445200000018000000180806000000E0773D
F80000000970485973000017120000171201679FD252000001BE4944415478DA
63FCFFFF3F032D0123B2054BB79CA49A6DD13EE68C582D004A906CD8DFBFFF80
F83F980601EBC07C86733BA6E1B6C0B6683F8A0187FB1C711A8EAC765BB315C3
C275FB19E62DDD84DF02525CEE507A9081455D89E1C08C1D0CEF0FC6312CD978
90B005D87C802E06027B3BEC189C2B0E311CD97F0BCC7FB32F8661F996C394F9
E0FF3F605803F11FA0EB41EC3FFFFE41E3E01F98BD7ADB51D27D400C00F9E2F1
8E70860DBB4E106701CCDBA480075B431936EF3D459C05F8520E3600D2B3A850
8F61EB81D3C45B802BA86096C3E4616AE7E7EB32EC387486763E989DA3CDB0E7
E839DAF96046A626C3FE131768E783A969EA0C874E5FC26F4184A729387792E3
838929AA0CC7CE5EC16F41A89B09387792E3839E042586D317AFE3B720C8D988
C1ADFA08591674C62A309CBB7213BF057E8E060C5EB5C7F01A06B27CC1913F70
7E820D0BD882B62839868BD76FE3B7C0DB4E0F5EAEC0CA1850D9032BF393275F
C1881F18BF394296E1CACD3BF82DF0B0D6C16938884E9B760D6BF0116D818BA5
164EC3411667CDB88133E888B2C0DE541D6CD8BFBF88621966E1BFFFFFB1061F
322068818D912AB844A404E0B5A077CA428A0C8701980500619929EF09CFCE42
0000000049454E44AE426082}
Name = 'PngImage0'
Background = clWindow
end>
Left = 232
Top = 16
Bitmap = {}
end
object ModuleActionList: TActionList
Images = LargeImages
Left = 40
Top = 72
object actComisiones: TAction
Category = 'Ventas'
Caption = 'Comisiones'
ImageIndex = 0
OnExecute = actComisionesExecute
end
end
object MainMenu: TMainMenu
Images = LargeImages
Left = 40
Top = 16
object Ventas1: TMenuItem
Tag = 400
Caption = '&Ventas'
GroupIndex = 1
ImageIndex = 0
object Comisiones1: TMenuItem
Tag = 700
Action = actComisiones
end
end
end
object SmallImages: TPngImageList
PngImages = <
item
PngImage.Data = {
89504E470D0A1A0A0000000D49484452000000100000001008060000001FF3FF
610000000970485973000017120000171201679FD252000001684944415478DA
63FCFFFF3FC394C53BFE33900172623D1819610600394469FAF3F71FC3EF3F7F
19ACFDF319CEED98866A806DD17E14C587FB1CC134B2F8AE761B86B9ABF632CC
5BBA09D3007CE0D7EFBF609B4178C98683D80D40770136B0AED69461E59623B8
0D80391B04FE01E5FEFCF907B7D9B7FE04C3AA4A6386B53B8EE13700E692BD9D
760CCEE587E03607359F66585A6AC0B069CF49FC06A0DB0CC2207E58FB598685
85BA0CDB0E9CC16DC0C15E0706FBE203605B37375A809D0D02209BA3BB2F30CC
C9D566D87DE41C6E0340CE46B7F9E7AF3F6076D2C42B0C53D2D4180E9FBE8C69
4046941B8363E94194105F5E6EC810D9791ECC9E99A5C9903EED3A437F920AC3
89F357310D480E7386DB08A2435ACF302C2ED687B8049A067266DD62E88A5364
387BF906A60171410E280107B3191DB446C9315CBA7E1BD380283F3B147F23DB
FC1BC9E07FFFFE335CB97907D380502F6B86D5DB8E129D13310C0009900A4006
00004B6D80F047EC10D30000000049454E44AE426082}
Name = 'PngImage0'
Background = clWindow
end>
PngOptions = [pngBlendOnDisabled, pngGrayscaleOnDisabled]
Left = 308
Top = 16
Bitmap = {}
end
object ExtraImages: TPngImageList
Height = 28
Width = 28
PngImages = <
item
PngImage.Data = {
89504E470D0A1A0A0000000D494844520000001C0000001C0806000000720DDF
940000000970485973000017120000171201679FD252000002834944415478DA
BDD6ED4F52511800F087ECDFA8B5D6CB2A8550FC525862BC28B56966F9B2D658
5B7373D69ABDACF5A12FADD6875EB6968DD922299C1481888680C0E555485494
20B2FADCFAD6565FE53EDD7B0B86099C6BD7F970D9E53CDC7B7EE73907388810
11363344C5A023F0916BB0B9FC73559B7970C7DFD7DCFBDC8150B5A5AA24705A
23159505C7A90CB62A0EFCF7E869A62F9A46C8E568C8D134C8DB2EC382EB6979
D0EE4F635B5335340C506B3A0B3F549485FEBDDE7DF730182C7E308C38F881EB
0D1654CBF680FFD70A04F42EF819D181D14691C131DF073C79ACA66C85A5F2C1
078D70F44A0022D4E742EE47E81C98EC413268F3A6B05D29E65D19BB4EB91C72
E7E2B56373E6C93019B47A97F0945252B212BEC156FADDDB031667940738CD80
AA3F60F114AD37BE79BAC1EA9A21836F3D8BD8A13EC881953E959582BD77F4BA
14ECD3713268712791F9A20A064D572530E19B25836FDC0B7846535B002BAD65
7E40C5D7E4EF310E88C14925C8E06BD73C7636D709AEF0F9A56AF084E7798053
0CD8221C1CEADF0FBE68920C9AA7E6B0AB4526784AF57DFB808A2D92C1516702
BBB5F5822B1CECDD0BA1D9140FF05D023BB532EEA74A08F8F8C26E88CEA5C9E0
C8E47B660DEB41712D28684A1F9DDF05F164861FD8A1AE03E58DB0A00AEFEB76
4262294B064D13716C57D582E666541078EFEC0E486696C9E02B470C5B9BA470
FC568C57E7ECA086232B85B64EBE9503EFF46C8754F60B3FF044A3A4F49643AF
FEFBD03B985DB3CEF9F6EDAE6D905EFE4A065F8ECFA0F6888488B103EAD37F2A
39EDEB028DF62836378889187BBE38547EFBE20D0E8F4550231713B172B9E2E0
05BEB0855175A886DBCB362288A0C11AC227CFCC1B82E5A322B819F11BFB7D9A
E74CD9D0710000000049454E44AE426082}
Name = 'PngImage0'
Background = clWindow
end>
Left = 232
Top = 80
Bitmap = {}
end
end

View File

@ -0,0 +1,72 @@
unit uPluginComisiones;
interface
uses
uModuleController, uInterfaces, uHostManager, Menus, Classes, ActnList,
ImgList, Controls, PngImageList, uPlugins_Intf;
type
TPluginComisiones = class(TModuleController, IMCComisiones)
actComisiones: TAction;
ExtraImages: TPngImageList;
LargeImages: TPngImageList;
MainMenu: TMainMenu;
ModuleActionList: TActionList;
SmallImages: TPngImageList;
Ventas1: TMenuItem;
Comisiones1: TMenuItem;
procedure actComisionesExecute(Sender: TObject);
public
constructor Create(AOwner: TComponent); override;
destructor Destroy; override;
end;
implementation
{$R *.dfm}
uses
Forms, Dialogs, SysUtils, cxControls,
uComisionesController, uBizComisiones, uComisionesViewRegister;
function GetModule : TModuleController;
begin
Result := TPluginComisiones.Create(NIL);
end;
exports
GetModule name GET_MODULE_FUNC;
procedure TPluginComisiones.actComisionesExecute(Sender: TObject);
var
AComisionesController : IComisionesController;
AComisiones : IBizComision;
begin
AComisionesController := TComisionesController.Create;
AComisiones := (AComisionesController.BuscarTodos as IBizComision);
AComisionesController.VerTodos(AComisiones);
end;
constructor TPluginComisiones.Create(AOwner: TComponent);
begin
inherited;
ModuleName := MODULENAME_COMISIONES;
uComisionesViewRegister.RegisterViews;
end;
destructor TPluginComisiones.Destroy;
begin
uComisionesViewRegister.UnregisterViews;
inherited;
end;
initialization
RegisterModuleClass(TPluginComisiones);
finalization
UnRegisterModuleClass(TPluginComisiones);
end.

View File

@ -163,11 +163,11 @@ object srvComisiones: TsrvComisiones
SQL =
'SELECT'#10' COMISIONES_LIQUIDADAS.ID, COMISIONES_LIQUIDADAS.ID_EM' +
'PRESA,'#10' COMISIONES_LIQUIDADAS.REFERENCIA, COMISIONES_LIQUIDAD' +
'AS.ID_AGENTE,'#10' COMISIONES_LIQUIDADAS.DESCRIPCION, COMISIONES_' +
'LIQUIDADAS.FECHA,'#10' COMISIONES_LIQUIDADAS.IMPORTE_TOTAL, COMIS' +
'IONES_LIQUIDADAS.USUARIO,'#10' CONTACTOS.NOMBRE'#10'FROM COMISIONES_L' +
'IQUIDADAS'#10'LEFT JOIN CONTACTOS ON (CONTACTOS.ID = COMISIONES_LIQU' +
'IDADAS.ID_AGENTE)'#10
'AS.ID_AGENTE,'#10' CONTACTOS.NOMBRE as AGENTE,'#10' COMISIONES_LIQ' +
'UIDADAS.DESCRIPCION, COMISIONES_LIQUIDADAS.FECHA,'#10' COMISIONES' +
'_LIQUIDADAS.IMPORTE_TOTAL, COMISIONES_LIQUIDADAS.USUARIO'#10'FROM CO' +
'MISIONES_LIQUIDADAS'#10'LEFT JOIN CONTACTOS ON (CONTACTOS.ID = COMIS' +
'IONES_LIQUIDADAS.ID_AGENTE)'#10'WHERE {Where}'#10
StatementType = stSQL
ColumnMappings = <
item
@ -203,53 +203,63 @@ object srvComisiones: TsrvComisiones
TableField = 'USUARIO'
end
item
DatasetField = 'NOMBRE'
DatasetField = 'AGENTE'
TableField = '<unknown>'
SQLOrigin = 'NOMBRE'
SQLOrigin = 'AGENTE'
end>
end>
Name = 'Comisiones'
Fields = <
item
Name = 'ID'
DataType = datInteger
DataType = datAutoInc
GeneratorName = 'GEN_COMISIONES_LIQUID_ID'
DictionaryEntry = 'Comisiones_ID'
InPrimaryKey = True
end
item
Name = 'ID_EMPRESA'
DataType = datInteger
DictionaryEntry = 'Comisiones_ID_EMPRESA'
end
item
Name = 'REFERENCIA'
DataType = datString
Size = 255
DictionaryEntry = 'Comisiones_REFERENCIA'
end
item
Name = 'ID_AGENTE'
DataType = datInteger
DictionaryEntry = 'Comisiones_ID_AGENTE'
end
item
Name = 'AGENTE'
DataType = datString
Size = 255
DictionaryEntry = 'Comisiones_AGENTE'
end
item
Name = 'DESCRIPCION'
DataType = datString
Size = 255
DictionaryEntry = 'Comisiones_DESCRIPCION'
end
item
Name = 'FECHA'
DataType = datDateTime
DictionaryEntry = 'Comisiones_FECHA'
end
item
Name = 'IMPORTE_TOTAL'
DataType = datCurrency
DictionaryEntry = 'Comisiones_IMPORTE_TOTAL'
end
item
Name = 'USUARIO'
DataType = datString
Size = 30
end
item
Name = 'NOMBRE'
DataType = datString
Size = 255
DictionaryEntry = 'Comisiones_USUARIO'
end>
end>
JoinDataTables = <>
@ -279,7 +289,8 @@ object srvComisiones: TsrvComisiones
Params = <
item
Name = 'ID'
DataType = datInteger
DataType = datAutoInc
GeneratorName = 'GEN_COMISIONES_LIQUID_ID'
Value = ''
end
item
@ -891,6 +902,48 @@ object srvComisiones: TsrvComisiones
DecimalPrecision = 11
DecimalScale = 2
DisplayLabel = 'IMPORTE_COMISION'
end
item
Name = 'Comisiones_ID'
DataType = datAutoInc
GeneratorName = 'GEN_COMISIONES_LIQUID_ID'
DisplayLabel = 'ID'
end
item
Name = 'Comisiones_ID_EMPRESA'
DataType = datInteger
end
item
Name = 'Comisiones_REFERENCIA'
DataType = datString
Size = 255
end
item
Name = 'Comisiones_ID_AGENTE'
DataType = datInteger
end
item
Name = 'Comisiones_AGENTE'
DataType = datString
Size = 255
end
item
Name = 'Comisiones_DESCRIPCION'
DataType = datString
Size = 255
end
item
Name = 'Comisiones_FECHA'
DataType = datDateTime
end
item
Name = 'Comisiones_IMPORTE_TOTAL'
DataType = datCurrency
end
item
Name = 'Comisiones_USUARIO'
DataType = datString
Size = 30
end>
Left = 150
Top = 22
@ -905,7 +958,7 @@ object srvComisiones: TsrvComisiones
DeleteCommandName = 'Delete_Comisiones'
UpdateCommandName = 'Update_Comisiones'
ReferencedDataset = 'Comisiones'
ProcessorOptions = [poAutoGenerateRefreshDataset, poPrepareCommands]
ProcessorOptions = [poPrepareCommands]
UpdateMode = updWhereKeyOnly
Left = 248
Top = 24

View File

@ -24,9 +24,9 @@ type
Diagrams: TDADiagrams;
Bin2DataStreamer: TDABin2DataStreamer;
bpComisiones: TDABusinessProcessor;
bpFacturasComision: TDABusinessProcessor;
schComisiones: TDASchema;
DataDictionary: TDADataDictionary;
bpFacturasComision: TDABusinessProcessor;
procedure DARemoteServiceBeforeGetDatasetData(const Dataset: IDADataset;
const IncludeSchema: Boolean; const MaxRecords: Integer);
procedure DARemoteServiceCreate(Sender: TObject);

View File

@ -0,0 +1,81 @@
package Comisiones_view;
{$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
Base,
GUIBase,
ApplicationBase,
Contactos_view,
rtl,
vcl,
dbrtl,
cxLibraryD11,
dxThemeD11,
dxGDIPlusD11,
dxCoreD11,
vclx,
cxEditorsD11,
cxDataD11,
vcljpg,
vcldb,
DataAbstract_Core_D11,
dsnap,
adortl,
RemObjects_Core_D11,
dxLayoutControlD11,
dxComnD11,
Comisiones_model,
Comisiones_controller,
GUISDK_D11R,
designide,
xmlrtl,
vclactnband,
cxPageControlD11,
cxExtEditorsD11,
JvStdCtrlsD11R,
JclVcl,
Jcl,
vclimg,
JvCoreD11R,
JvSystemD11R,
JvAppFrmD11R,
JvCtrlsD11R,
JvCmpD11R,
JvPageCompsD11R,
PNG_D10,
PngComponentsD10,
SpTBXLib_d11,
TntUnicodeVcl,
tb2k_d11;
contains
uComisionesViewRegister in 'uComisionesViewRegister.pas',
uViewComisiones in 'uViewComisiones.pas' {frViewComisiones: TFrame},
uEditorComisiones in 'uEditorComisiones.pas' {fEditorComisiones: TfEditorComisiones},
uViewComision in 'uViewComision.pas' {frViewComision: TFrame},
uEditorComision in 'uEditorComision.pas' {fEditorComision: TfEditorComision};
end.

View File

@ -0,0 +1,587 @@
<?xml version="1.0" encoding="utf-8"?>
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<ProjectGuid>{b0823ef3-91d7-4034-9cd0-9cd911a22bd4}</ProjectGuid>
<MainSource>Comisiones_view.dpk</MainSource>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<DCC_DCCCompiler>DCC32</DCC_DCCCompiler>
<DCC_DependencyCheckOutputName>..\..\..\..\Output\Debug\Cliente\Comisiones_view.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_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><Source><Source Name="MainSource">Comisiones_view.dpk</Source></Source></Delphi.Personality></BorlandProject></BorlandProject>
</ProjectExtensions>
<Import Project="$(MSBuildBinPath)\Borland.Delphi.Targets" />
<ItemGroup>
<DelphiCompile Include="Comisiones_view.dpk">
<MainSource>MainSource</MainSource>
</DelphiCompile>
<DCCReference Include="adortl.dcp" />
<DCCReference Include="ApplicationBase.dcp" />
<DCCReference Include="Base.dcp" />
<DCCReference Include="Comisiones_controller.dcp" />
<DCCReference Include="Comisiones_model.dcp" />
<DCCReference Include="Contactos_view.dcp" />
<DCCReference Include="cxDataD11.dcp" />
<DCCReference Include="cxEditorsD11.dcp" />
<DCCReference Include="cxExtEditorsD11.dcp" />
<DCCReference Include="cxLibraryD11.dcp" />
<DCCReference Include="cxPageControlD11.dcp" />
<DCCReference Include="DataAbstract_Core_D11.dcp" />
<DCCReference Include="dbrtl.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="dxThemeD11.dcp" />
<DCCReference Include="GUIBase.dcp" />
<DCCReference Include="GUISDK_D11R.dcp" />
<DCCReference Include="Jcl.dcp" />
<DCCReference Include="JclVcl.dcp" />
<DCCReference Include="JvAppFrmD11R.dcp" />
<DCCReference Include="JvCmpD11R.dcp" />
<DCCReference Include="JvCoreD11R.dcp" />
<DCCReference Include="JvCtrlsD11R.dcp" />
<DCCReference Include="JvPageCompsD11R.dcp" />
<DCCReference Include="JvStdCtrlsD11R.dcp" />
<DCCReference Include="JvSystemD11R.dcp" />
<DCCReference Include="PngComponentsD10.dcp" />
<DCCReference Include="PNG_D10.dcp" />
<DCCReference Include="RemObjects_Core_D11.dcp" />
<DCCReference Include="rtl.dcp" />
<DCCReference Include="SpTBXLib_d11.dcp" />
<DCCReference Include="tb2k_d11.dcp" />
<DCCReference Include="TntUnicodeVcl.dcp" />
<DCCReference Include="uComisionesViewRegister.pas" />
<DCCReference Include="uEditorComision.pas">
<Form>fEditorComisions</Form>
<DesignClass>TfEditorFacturasCliente</DesignClass>
</DCCReference>
<DCCReference Include="uEditorComisiones.pas">
<Form>fEditorComisiones</Form>
<DesignClass>TfEditorFacturasCliente</DesignClass>
</DCCReference>
<DCCReference Include="uViewComision.pas">
<Form>frViewComision</Form>
<DesignClass>TFrame</DesignClass>
</DCCReference>
<DCCReference Include="uViewComisiones.pas">
<Form>frViewComisiones</Form>
<DesignClass>TFrame</DesignClass>
</DCCReference>
<DCCReference Include="vcl.dcp" />
<DCCReference Include="vclactnband.dcp" />
<DCCReference Include="vcldb.dcp" />
<DCCReference Include="vclimg.dcp" />
<DCCReference Include="vcljpg.dcp" />
<DCCReference Include="vclx.dcp" />
<DCCReference Include="xmlrtl.dcp" />
</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 -->

Binary file not shown.

View File

@ -0,0 +1,32 @@
unit uComisionesViewRegister;
interface
procedure RegisterViews;
procedure UnregisterViews;
implementation
uses
uEditorRegistryUtils, uEditorComisiones, uEditorComision;
// , uEditorFacturasClienteReport, uEditorElegirArticulosFacturaCliente, uEditorElegirFacturasCliente;
procedure RegisterViews;
begin
EditorRegistry.RegisterClass(TfEditorComisiones, 'EditorComisiones');
EditorRegistry.RegisterClass(TfEditorComision, 'EditorComision');
// EditorRegistry.RegisterClass(TfEditorElegirArticulosFacturaCliente, 'EditorElegirArticulosFacturaCliente');
// EditorRegistry.RegisterClass(TfEditorElegirFacturasCliente, 'EditorElegirFacturasCliente');
// EditorRegistry.RegisterClass(TfEditorFacturasClientePreview, 'EditorFacturasClientePreview');
end;
procedure UnregisterViews;
begin
EditorRegistry.UnRegisterClass(TfEditorComisiones);
EditorRegistry.UnRegisterClass(TfEditorComision);
// EditorRegistry.UnRegisterClass(TfEditorElegirArticulosFacturaCliente);
// EditorRegistry.UnRegisterClass(TfEditorElegirFacturasCliente);
// EditorRegistry.UnRegisterClass(TfEditorFacturasClientePreview);
end;
end.

View File

@ -0,0 +1,134 @@
inherited fEditorComision: TfEditorComision
Left = 374
Top = 273
HorzScrollBar.Visible = False
VertScrollBar.Visible = False
Caption = 'Ficha de almac'#233'n'
ClientWidth = 632
Scaled = False
OnClose = CustomEditorClose
ExplicitWidth = 640
PixelsPerInch = 96
TextHeight = 13
inherited JvNavPanelHeader: TJvNavPanelHeader
Width = 632
Caption = 'Almac'#233'n'
ExplicitWidth = 632
inherited Image1: TImage
Left = 499
Picture.Data = {
0A54504E474F626A65637489504E470D0A1A0A0000000D494844520000001C00
00001C0806000000720DDF940000000970485973000017120000171201679FD2
520000000467414D410000B18E7CFB51930000020F4944415478DAE5D4DB2B04
511800F06FB659D7CD2D892816B984258992242129E5924BDEE49147FF81571E
9495072F44BB1EF69127CAA5DC436E895C4A92AC6CC48E9961EC3963C7EEEC65
CEAC6D5F7CF575E69C33F3FD3AA773861204014219D4FF02298AF2FAD2709B5E
B8BEBF0E18195B17A4C28A20C2FA8D16E059065EACF7F0FE6203FBAB986B9619
D0EB93A169D0E8757E7A6C089ED2BBC1643291814E4C2CF0EC13F3368FB0AE8E
5618DF0E27038381A1200283851181C1C414C191F6CC3F611DED2DA0D150E4E0
402515F0A56CACAF83C8A808A069DA0DF50B8EF65242437D1F11C0B13C701C87
DBA58555282E2B045A4B83D691AE685040578C6339585DDC8082923C0CC9D13F
83728CE378D858D981DC826C8CC9D189DD88C0C10F86151119BAB77D08593919
222843270F74EAC1AFCF2FBC126F181A3FDA3F85F4CC34097245A74EE2D4814A
18EA9F1D5F404A6A1284858779A0B3E789E42009869E2FCF6F203129016FA11C
9DBB4A26034931D691B73777101B1F8341396AB94D53064930C6FE21818F0F56
88D6454907C589CE5BB3C16C36BBFF3EE5605D6DAF072616E781E7C53196FD5D
1DEADB9E6D18D06A7F4FE73263C018AAEB17ACAAEC715FCD4F515F186ADFDFDE
1C975C23615B9A720953042BCA3A556168FB19C68EBF47E8A1AEDA0D53044B0D
ADAA30144EF038A6C60353048BF29B55614ED017A6086E32DD1048F8C2FC82A1
889083DF93D867F65E51168D0000000049454E44AE426082}
ExplicitLeft = 607
end
inherited lblDesbloquear: TcxLabel
Left = 534
ExplicitLeft = 534
AnchorX = 579
AnchorY = 14
end
end
inherited TBXDock: TSpTBXDock
Width = 632
ExplicitWidth = 632
inherited tbxMain: TSpTBXToolbar
ExplicitWidth = 330
inherited TBXItem2: TSpTBXItem
Visible = False
end
inherited TBXItem5: TSpTBXItem
Visible = False
end
inherited TBXItem23: TSpTBXItem
Visible = False
end
inherited TBXItem3: TSpTBXItem
Visible = False
end
end
inherited tbxMenu: TSpTBXToolbar
DockPos = 0
ExplicitWidth = 632
inherited TBXSubmenuItem4: TSpTBXSubmenuItem
inherited TBXItem8: TSpTBXItem
Visible = False
end
inherited TBXSeparatorItem5: TSpTBXSeparatorItem
Visible = False
end
inherited TBXItem10: TSpTBXItem
Visible = False
end
inherited TBXItem21: TSpTBXItem
Visible = False
end
inherited TBXItem22: TSpTBXItem
Visible = False
end
inherited TBXItem9: TSpTBXItem
Visible = False
end
end
inherited TBXSubmenuItem1: TSpTBXSubmenuItem
inherited TBXItem32: TSpTBXItem
Visible = False
end
inherited TBXItem31: TSpTBXItem
Visible = False
end
inherited TBXSeparatorItem13: TSpTBXSeparatorItem
Visible = False
end
end
end
end
inherited pgPaginas: TPageControl
Width = 626
ExplicitWidth = 626
inherited pagGeneral: TTabSheet
ExplicitLeft = 4
ExplicitTop = 24
ExplicitWidth = 618
ExplicitHeight = 332
end
end
inherited StatusBar: TJvStatusBar
Width = 632
Panels = <
item
Width = 200
end>
ExplicitWidth = 632
end
inherited EditorActionList: TActionList
Top = 128
end
inherited dsDataTable: TDADataSource [6]
Left = 168
Top = 120
end
inherited LargeImages: TPngImageList
Top = 112
end
inherited SmallImages: TPngImageList [9]
Top = 112
end
end

View File

@ -0,0 +1,204 @@
unit uEditorComision;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, uEditorDBItem, ToolWin, ComCtrls, JvExControls, JvComponent,
uViewComision, uBizComisiones, JvNavigationPane, ActnList,
uEditorBase, StdActns, TB2Dock, TB2Toolbar, SpTBXItem, ImgList, PngImageList,
TB2Item, uEditorItem, DB, uDADataTable, uEditorDBBase, JvFormAutoSize,
uDAScriptingProvider, uDACDSDataTable, StdCtrls, pngimage, ExtCtrls,
SpTBXDkPanels, JvButton, AppEvnts, uCustomView, uViewBase, uDMBase,
JvAppStorage, JvAppRegistryStorage, JvFormPlacement, JvComponentBase,
uIEditorComision, uComisionesController, JvExComCtrls,
JvStatusBar, dxLayoutLookAndFeels, uDAInterfaces, cxGraphics, cxControls,
cxLookAndFeels, cxLookAndFeelPainters, cxContainer, cxEdit, cxLabel,
JvEnterTab;
type
TfEditorComision = class(TfEditorDBItem, IEditorComision)
procedure FormShow(Sender: TObject);
procedure dsDataTableDataChange(Sender: TObject; Field: TField);
procedure CustomEditorClose(Sender: TObject; var Action: TCloseAction);
protected
FController : IComisionesController;
FComision: IBizComision;
FViewComision : IViewComision;
function GetController : IComisionesController;
procedure SetController (const Value : IComisionesController); virtual;
function GetComision: IBizComision; virtual;
procedure SetComision(const Value: IBizComision); virtual;
function GetViewComision: IViewComision;
procedure SetViewComision(const Value: IViewComision);
property ViewComision: IViewComision read GetViewComision write SetViewComision;
procedure GuardarInterno; override;
procedure EliminarInterno; override;
procedure PonerTitulos(const ATitulo: string = ''); override;
//Si queremos crear otra vista para el editor heredado solo tendriamos que
//sobreescribir este metodo
procedure AsignarVista; virtual;
public
property Comision: IBizComision read GetComision write SetComision;
constructor Create(AOwner: TComponent); override;
destructor Destroy; override;
end;
implementation
{$R *.dfm}
uses
uCustomEditor, uDataModuleComisiones, uDataModuleBase;
function ShowEditorComision (ABizObject : TDADataTableRules): TModalResult;
var
AEditor: TfEditorComision;
begin
AEditor := TfEditorComision.Create(Application);
try
AEditor.Comision := (ABizObject as IBizComision);
Result := AEditor.ShowModal;
finally
AEditor.Release;
end;
end;
{
******************************* TfEditorComision *******************************
}
function TfEditorComision.GetComision: IBizComision;
begin
Result := FComision;
end;
function TfEditorComision.GetController: IComisionesController;
begin
Result := FController;
end;
function TfEditorComision.GetViewComision: IViewComision;
begin
Result := FViewComision;
end;
procedure TfEditorComision.GuardarInterno;
begin
inherited;
FController.Guardar(FComision);
Modified := False;
end;
procedure TfEditorComision.PonerTitulos(const ATitulo: string);
var
FTitulo : String;
begin
if Assigned(Comision) then
begin
if Comision.EsNuevo then
FTitulo := 'Nueva comisión'
else
FTitulo := 'Comisión' + ' - ' + Comision.Descripcion;
end;
inherited PonerTitulos(FTitulo);
end;
procedure TfEditorComision.SetComision(const Value: IBizComision);
begin
FComision := Value;
dsDataTable.DataTable := FComision.DataTable;
if Assigned(FViewComision) and Assigned(Comision) then
FViewComision.Comision := Comision;
end;
procedure TfEditorComision.SetController(const Value: IComisionesController);
begin
FController := Value;
end;
procedure TfEditorComision.SetViewComision(const Value: IViewComision);
begin
FViewComision := Value;
if Assigned(FViewComision) and Assigned(Comision) then
FViewComision.Comision := Comision;
end;
procedure TfEditorComision.FormShow(Sender: TObject);
begin
inherited;
if not Assigned(FViewComision) then
raise Exception.Create('No hay ninguna vista asignada');
if not Assigned(Comision) then
raise Exception.Create('No hay ningún almacén asignado');
Comision.DataTable.Active := True;
end;
destructor TfEditorComision.Destroy;
begin
// Utilizar mejor OnClose;
inherited;
end;
procedure TfEditorComision.AsignarVista;
var
AViewComision: TfrViewComision;
begin
AViewComision := TfrViewComision.create(Self);
with AViewComision do
begin
Parent := pagGeneral;
Align := alClient;
// dxLayoutControlComision.LookAndFeel := dmBase.dxLayoutSkinLookAndFeel;
end;
ViewComision := AViewComision;
end;
constructor TfEditorComision.Create(AOwner: TComponent);
begin
inherited;
pgPaginas.ActivePageIndex := 0;
AsignarVista;
end;
procedure TfEditorComision.CustomEditorClose(Sender: TObject;
var Action: TCloseAction);
begin
inherited;
dsDataTable.DataTable := NIL;
FViewComision := NIL;
FComision := NIL;
end;
procedure TfEditorComision.dsDataTableDataChange(Sender: TObject;
Field: TField);
begin
inherited;
if Assigned(FComision) and (not (FComision.DataTable.Fetching) or
not (FComision.DataTable.Opening) or not (FComision.DataTable.Closing)) then
PonerTitulos;
end;
procedure TfEditorComision.EliminarInterno;
begin
if (Application.MessageBox('¿Desea borrar esta comision?', 'Atención', MB_YESNO) = IDYES) then
begin
inherited;
if not FController.Eliminar(FComision) then
actRefrescar.Execute;
end;
end;
end.

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,355 @@
unit uEditorComisiones;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Menus, DB, uDADataTable, JvAppStorage,
JvAppRegistryStorage, JvComponent, JvFormPlacement, ImgList,
PngImageList, StdActns, ActnList, ComCtrls, TB2ExtItems,
SpTBXItem, TB2Item, TB2Dock, TB2Toolbar, ExtCtrls, JvExControls,
JvNavigationPane, uViewGrid, pngimage, JvComponentBase,
uEditorGridBase,
uBizComisiones, uIEditorComisiones, uComisionesController,
uCustomView, uViewBase, uViewBarraSeleccion, uViewGridBase,
uViewComisiones, JvExComCtrls, JvStatusBar, JSDialog, uDAInterfaces,
cxStyles, cxCustomData,
cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, cxGridLevel,
cxClasses, cxControls, cxGridCustomView, cxGridCustomTableView,
cxGridTableView, cxGridDBTableView, cxGrid, StdCtrls, cxContainer, cxTextEdit,
cxMaskEdit, cxDropDownEdit, cxLookupEdit, cxDBLookupEdit, cxDBLookupComboBox,
TntStdCtrls, SpTBXEditors;
type
TfEditorComisiones = class(TfEditorGridBase, IEditorComisiones)
JsNuevaComisionDialog: TJSDialog;
JsListaComisionesGeneradas: TJSDialog;
JsPrevisualizarDialog: TJSDialog;
JsImprimirDialog: TJSDialog;
JsListaComisionesNoEliminadas: TJSDialog;
actEnviarEMail: TAction;
TBXItem40: TSpTBXItem;
Enviarporemail1: TMenuItem;
TBXItem41: TSpTBXItem;
JSInformesDialog: TJSDialog;
frViewComisiones1: TfrViewComisiones;
procedure FormShow(Sender: TObject);
procedure actEnviarEMailUpdate(Sender: TObject);
procedure actEnviarEMailExecute(Sender: TObject);
procedure OnListaAnosChange(Sender: TObject);
private
FComisiones: IBizComision;
FController : IComisionesController;
protected
function GetComisiones: IBizComision;
procedure SetComisiones(const Value: IBizComision);
function GetController : IComisionesController; virtual;
procedure SetController (const Value : IComisionesController); virtual;
procedure NuevoInterno; override;
procedure EliminarInterno; override;
procedure ModificarInterno; override;
procedure ImprimirInterno; override;
procedure PrevisualizarInterno; override;
procedure RefrescarInterno; override;
public
property Comisiones: IBizComision read GetComisiones write SetComisiones;
property Controller : IComisionesController read GetController write SetController;
constructor Create(AOwner: TComponent); override;
destructor Destroy; override;
procedure PonerTitulos(const ATitulo: string = ''); override;
end;
implementation
uses
uDataModuleComisiones, uDataModuleUsuarios, uFactuGES_App,
uEditorBase, uGridStatusUtils, uDBSelectionListUtils, udialogUtils;
{$R *.dfm}
{
*************************** TfEditorComisionesCliente ***************************
}
procedure TfEditorComisiones.actEnviarEMailExecute(Sender: TObject);
begin
inherited;
// FController.EnviarComisionPorEMail(FComisiones);
end;
procedure TfEditorComisiones.actEnviarEMailUpdate(Sender: TObject);
begin
inherited;
if HayDatos and Assigned(ViewGrid) then
(Sender as TAction).Enabled := ViewGrid.esSeleccionCeldaDatos
and (ViewGrid.NumSeleccionados > 0)
else
(Sender as TAction).Enabled := False;
end;
constructor TfEditorComisiones.Create(AOwner: TComponent);
begin
inherited;
FHeaderText := 'Lista de comisiones';
FWindowCaption := FHeaderText;
ViewGrid := frViewComisiones1;
end;
destructor TfEditorComisiones.Destroy;
begin
FComisiones := NIL;
inherited;
end;
procedure TfEditorComisiones.EliminarInterno;
var
ACadena : String;
AComisiones: IBizComision;
AllItems: Boolean;
begin
AComisiones := Nil;
AllItems := False;
if MultiSelect and Assigned(ViewGrid) then
AllItems := (ViewGrid.NumSeleccionados > 1);
if AllItems then
begin
if (Application.MessageBox('¿Desea borrar las comisiones de cliente seleccionadas?', 'Atención', MB_YESNO) = IDYES) then
begin
SeleccionarFilasDesdeGrid(ViewGrid._FocusedView, (Comisiones as ISeleccionable).SelectedRecords);
AComisiones := (Controller as IComisionesController).ExtraerSeleccionados(Comisiones) as IBizComision;
end
end
else begin
if (Application.MessageBox(PChar(ACadena), 'Atención', MB_YESNO) = IDYES) then
AComisiones := Comisiones;
end;
if Assigned(AComisiones) then
begin
if (not FController.Eliminar(AComisiones, AllItems))
and (not AllItems) then //Es el caso de querer borrar una factura pendiente cuyos recibos tienen devoluciones
begin
JsListaComisionesNoEliminadas.Content.Clear;
JsListaComisionesNoEliminadas.Content.Add('Ref. comisión: ' + AComisiones.REFERENCIA + ' ' + AComisiones.DESCRIPCION);
JsListaComisionesNoEliminadas.Execute;
end;
if AllItems then
begin
if (AComisiones.DataTable.RecordCount > 0) then
begin
with AComisiones.DataTable do
begin
JsListaComisionesNoEliminadas.Content.Clear;
First;
while not EOF do
begin
JsListaComisionesNoEliminadas.Content.Add('Ref. comisión: ' + AComisiones.REFERENCIA + ' ' + AComisiones.DESCRIPCION);
Next;
end;
end;
JsListaComisionesNoEliminadas.Execute;
end;
actRefrescar.Execute;
end
end;
ViewGrid.GotoFirst;
end;
procedure TfEditorComisiones.FormShow(Sender: TObject);
begin
cbxListaAnos.OnChange := OnListaAnosChange; //OJO SIEMPRE ANTES DEL INHERITED
inherited;
if not Assigned(ViewGrid) then
raise Exception.Create('No hay ninguna vista asignada');
if not Assigned(Comisiones) then
raise Exception.Create('No hay ninguna factura asignada');
Comisiones.DataTable.Active := True;
ViewGrid.GotoFirst;
end;
function TfEditorComisiones.GetController: IComisionesController;
begin
Result := FController;
end;
function TfEditorComisiones.GetComisiones: IBizComision;
begin
Result := FComisiones;
end;
procedure TfEditorComisiones.ImprimirInterno;
var
Respuesta : Integer;
AComisiones: IBizComision;
AllItems: Boolean;
AOriginal: Integer;
ACopia: Integer;
AContabilidad: Integer;
begin
{
AComisiones := Nil;
AllItems := False;
if MultiSelect and Assigned(ViewGrid) then
AllItems := (ViewGrid.NumSeleccionados > 1);
//Si esta agrupado solo podré imprimir la lista de elementos visibles
if not ViewGrid.esSeleccionCeldaDatos then
inherited
else
begin
Respuesta := JsImprimirDialog.Execute;
if Respuesta <> IDCANCEL then
begin
case JsImprimirDialog.CustomButtonResult of
200 : begin // Lista de elementos visibles
inherited;
end;
100 : begin // Elemento Seleccionado
if AllItems then
begin
SeleccionarFilasDesdeGrid(ViewGrid._FocusedView, (Comisiones as ISeleccionable).SelectedRecords);
AComisiones := (Controller as IComisionesClienteController).ExtraerSeleccionados(Comisiones) as IBizComision;
end
else
AComisiones := Comisiones;
//Preguntamos si desea que en las facturas se vea el Sello
if ElegirOpcionesImpresionFacturaCliente(AOriginal, ACopia, AContabilidad) then
if Assigned(AComisiones) then
FController.Print(AComisiones, AOriginal, ACopia, AContabilidad, AllItems);
end;
end;
end;
end;
}
end;
procedure TfEditorComisiones.ModificarInterno;
begin
inherited;
FController.Ver(Comisiones);
end;
procedure TfEditorComisiones.NuevoInterno;
begin
inherited;
FController.Anadir(Comisiones);
FController.Ver(Comisiones);
end;
procedure TfEditorComisiones.OnListaAnosChange(Sender: TObject);
begin
Controller.FiltrarAno(Comisiones, DynWhereDataTable, cbxListaAnos.Text);
if Comisiones.DataTable.Active then
RefrescarInterno;
end;
procedure TfEditorComisiones.PonerTitulos(const ATitulo: string);
var
FTitulo : String;
begin
FTitulo := FWindowCaption + ' - ' + AppFactuGES.EmpresaActiva.NOMBRE;
inherited PonerTitulos(FTitulo);
end;
procedure TfEditorComisiones.PrevisualizarInterno;
var
Respuesta : Integer;
AComisiones: IBizComision;
AllItems: Boolean;
AOriginal: Integer;
ACopia: Integer;
AContabilidad: Integer;
begin
{
AComisiones := Nil;
AllItems := False;
if MultiSelect and Assigned(ViewGrid) then
AllItems := (ViewGrid.NumSeleccionados > 1);
//Si esta agrupado solo podré imprimir la lista de elementos visibles
if not ViewGrid.esSeleccionCeldaDatos then
inherited
else
begin
Respuesta := JsPrevisualizarDialog.Execute;
if Respuesta <> IDCANCEL then
begin
case JsPrevisualizarDialog.CustomButtonResult of
200 : begin // Lista de elementos visibles
inherited;
end;
100 : begin // Elemento Seleccionado
if AllItems then
begin
SeleccionarFilasDesdeGrid(ViewGrid._FocusedView, (Comisiones as ISeleccionable).SelectedRecords);
AComisiones := (Controller as IComisionesClienteController).ExtraerSeleccionados(Comisiones) as IBizComision;
end
else
AComisiones := Comisiones;
//Preguntamos si desea que en las facturas se vea el Sello
if ElegirOpcionesImpresionFacturaCliente(AOriginal, ACopia, AContabilidad) then
if Assigned(AComisiones) then
FController.Preview(AComisiones, AOriginal, ACopia, AContabilidad, AllItems);
end;
end;
end;
end;
}
end;
procedure TfEditorComisiones.RefrescarInterno;
begin
//Volvemos a cargar los años de las comisiones
if Assigned(FController) then
ListaAnos := FController.DarListaAnosComisiones;
inherited;
end;
procedure TfEditorComisiones.SetController(const Value: IComisionesController);
begin
FController := Value;
if Assigned(FController) then
ListaAnos := FController.DarListaAnosComisiones;
end;
procedure TfEditorComisiones.SetComisiones(const Value: IBizComision);
begin
FComisiones := Value;
if Assigned(FComisiones) then
begin
//Se guarda el where de la sentencia origen, por si el editor tiene filtros que
//afecten a este where y en un futuro se desea volver al where origen (filtro de año))
DynWhereDataTable := FComisiones.DataTable.DynamicWhere.Xml;
dsDataTable.DataTable := FComisiones.DataTable;
if Assigned(ViewGrid) then
(ViewGrid as IViewComisiones).Comisiones := Comisiones;
end;
end;
end.

View File

@ -0,0 +1,170 @@
inherited frViewComision: TfrViewComision
Width = 451
Height = 304
Align = alClient
OnCreate = CustomViewCreate
OnDestroy = CustomViewDestroy
OnShow = CustomViewShow
ExplicitWidth = 451
ExplicitHeight = 304
object dxLayoutControl1: TdxLayoutControl
Left = 0
Top = 0
Width = 451
Height = 304
Align = alClient
ParentBackground = True
TabOrder = 0
TabStop = False
LayoutLookAndFeel = dmBase.dxLayoutSkinLookAndFeel
DesignSize = (
451
304)
object eReferencia: TcxDBTextEdit
Left = 85
Top = 28
Anchors = [akLeft, akTop, akRight]
DataBinding.DataField = 'REFERENCIA'
DataBinding.DataSource = DADataSource
Enabled = False
Properties.ReadOnly = False
Style.Color = clInfoBk
Style.HotTrack = False
Style.LookAndFeel.NativeStyle = True
Style.LookAndFeel.SkinName = ''
StyleDisabled.Color = clMenuBar
StyleDisabled.LookAndFeel.NativeStyle = True
StyleDisabled.LookAndFeel.SkinName = ''
StyleDisabled.TextColor = clWindowText
StyleFocused.LookAndFeel.NativeStyle = True
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.NativeStyle = True
StyleHot.LookAndFeel.SkinName = ''
TabOrder = 0
Width = 200
end
object edtFecha: TcxDBDateEdit
Left = 329
Top = 28
Anchors = [akLeft, akTop, akRight]
DataBinding.DataField = 'FECHA'
DataBinding.DataSource = DADataSource
Style.Color = clInfoBk
Style.HotTrack = False
Style.LookAndFeel.NativeStyle = True
Style.LookAndFeel.SkinName = ''
Style.Shadow = False
Style.ButtonTransparency = ebtNone
StyleDisabled.LookAndFeel.NativeStyle = True
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.NativeStyle = True
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.NativeStyle = True
StyleHot.LookAndFeel.SkinName = ''
TabOrder = 1
Width = 293
end
object eVendedor: TcxDBLookupComboBox
Left = 85
Top = 55
DataBinding.DataField = 'ID_AGENTE'
DataBinding.DataSource = DADataSource
Properties.ImmediatePost = True
Properties.KeyFieldNames = 'ID'
Properties.ListColumns = <
item
FieldName = 'NOMBRE'
end>
Properties.ListOptions.GridLines = glNone
Properties.ListOptions.ShowHeader = False
Properties.ListOptions.SyncMode = True
Properties.ListSource = dsVendedores
Style.HotTrack = False
Style.LookAndFeel.Kind = lfStandard
Style.LookAndFeel.NativeStyle = True
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.Kind = lfStandard
StyleDisabled.LookAndFeel.NativeStyle = True
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.Kind = lfStandard
StyleFocused.LookAndFeel.NativeStyle = True
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.Kind = lfStandard
StyleHot.LookAndFeel.NativeStyle = True
StyleHot.LookAndFeel.SkinName = ''
TabOrder = 2
Width = 381
end
object eDescripcion: TcxDBTextEdit
Left = 85
Top = 82
DataBinding.DataField = 'DESCRIPCION'
DataBinding.DataSource = DADataSource
Style.HotTrack = False
Style.LookAndFeel.Kind = lfStandard
Style.LookAndFeel.NativeStyle = True
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.Kind = lfStandard
StyleDisabled.LookAndFeel.NativeStyle = True
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.Kind = lfStandard
StyleFocused.LookAndFeel.NativeStyle = True
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.Kind = lfStandard
StyleHot.LookAndFeel.NativeStyle = True
StyleHot.LookAndFeel.SkinName = ''
TabOrder = 3
Width = 270
end
object dxLayoutControl1Group_Root: TdxLayoutGroup
AlignHorz = ahParentManaged
AlignVert = avParentManaged
CaptionOptions.Visible = False
ButtonOptions.Buttons = <>
Hidden = True
ShowBorder = False
object dxLayoutControl1Group1: TdxLayoutGroup
AlignHorz = ahClient
CaptionOptions.Text = 'Datos de la liquidaci'#243'n'
ButtonOptions.Buttons = <>
object dxLayoutControl1Group2: TdxLayoutGroup
ButtonOptions.Buttons = <>
Hidden = True
LayoutDirection = ldHorizontal
ShowBorder = False
object dxLayoutControl1Item1: TdxLayoutItem
AlignHorz = ahLeft
CaptionOptions.Text = 'Referencia:'
Enabled = False
Control = eReferencia
ControlOptions.ShowBorder = False
end
object dxLayoutControl1Item2: TdxLayoutItem
AlignHorz = ahClient
CaptionOptions.Text = 'Fecha:'
Control = edtFecha
ControlOptions.ShowBorder = False
end
end
object dxLayoutControl1Item6: TdxLayoutItem
CaptionOptions.Text = 'Vendedor:'
Control = eVendedor
ControlOptions.ShowBorder = False
end
object dxLayoutControl1Item3: TdxLayoutItem
CaptionOptions.Text = 'Descripci'#243'n:'
Control = eDescripcion
ControlOptions.ShowBorder = False
end
end
end
end
object DADataSource: TDADataSource
Left = 16
Top = 32
end
object dsVendedores: TDADataSource
Left = 16
Top = 64
end
end

View File

@ -0,0 +1,135 @@
unit uViewComision;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, uViewBase, DB, uDADataTable, uCustomView, uDMBase,
uBizComisiones,
cxControls, cxContainer, cxEdit, cxTextEdit, cxDBEdit, dxLayoutControl,
cxMemo, cxMaskEdit, cxDropDownEdit, cxCalendar, cxSpinEdit, StdCtrls, Mask,
DBCtrls, cxGraphics, dxLayoutLookAndFeels, cxLookupEdit, cxDBLookupEdit,
cxDBLookupComboBox, uFormasPagoController, uDAInterfaces, uBizFormasPago,
ActnList, uComisionesController, uBizContactos, uVendedoresController,
cxLookAndFeels, cxLookAndFeelPainters, dxLayoutcxEditAdapters;
type
IViewComision = interface(IViewBase)
['{2813FE84-ADCC-4635-A0A8-975D7BB4D915}']
function GetComision: IBizComision;
procedure SetComision(const Value: IBizComision);
property Comision: IBizComision read GetComision write SetComision;
function GetController : IComisionesController;
procedure SetController (const Value : IComisionesController);
property Controller : IComisionesController read GetController write SetController;
end;
TfrViewComision = class(TfrViewBase, IViewComision)
DADataSource: TDADataSource;
dxLayoutControl1Group_Root: TdxLayoutGroup;
dxLayoutControl1: TdxLayoutControl;
dxLayoutControl1Item1: TdxLayoutItem;
eReferencia: TcxDBTextEdit;
dxLayoutControl1Item2: TdxLayoutItem;
edtFecha: TcxDBDateEdit;
dxLayoutControl1Group1: TdxLayoutGroup;
dsVendedores: TDADataSource;
dxLayoutControl1Group2: TdxLayoutGroup;
dxLayoutControl1Item6: TdxLayoutItem;
eVendedor: TcxDBLookupComboBox;
dxLayoutControl1Item3: TdxLayoutItem;
eDescripcion: TcxDBTextEdit;
procedure CustomViewDestroy(Sender: TObject);
procedure CustomViewCreate(Sender: TObject);
procedure OnVendedorEditValueChanged(Sender: TObject);
procedure CustomViewShow(Sender: TObject);
protected
FComision : IBizComision;
FController : IComisionesController;
FVendedores : IBizContacto;
FVendedoresController : IVendedoresController;
function GetComision: IBizComision;
procedure SetComision(const Value: IBizComision);
function GetController : IComisionesController;
procedure SetController (const Value : IComisionesController);
public
property Comision: IBizComision read GetComision write SetComision;
property Controller : IComisionesController read GetController write SetController;
end;
implementation
uses
uDataModuleContactos, schComisionesClient_Intf, uFactuGES_App,
uEmpresasController;
{$R *.dfm}
{ TfrViewComision }
procedure TfrViewComision.CustomViewCreate(Sender: TObject);
begin
inherited;
FVendedores := Nil;
FVendedoresController := TVendedoresController.Create;
end;
procedure TfrViewComision.CustomViewDestroy(Sender: TObject);
begin
eVendedor.Properties.OnEditValueChanged := Nil;
FVendedores := Nil;
FVendedoresController := NIL;
inherited;
end;
procedure TfrViewComision.CustomViewShow(Sender: TObject);
begin
inherited;
eVendedor.Properties.OnEditValueChanged := OnVendedorEditValueChanged;
end;
procedure TfrViewComision.OnVendedorEditValueChanged(Sender: TObject);
begin
inherited;
Comision.Edit;
Comision.AGENTE := eVendedor.Text;
end;
function TfrViewComision.GetController: IComisionesController;
begin
Result := FController;
end;
function TfrViewComision.GetComision: IBizComision;
begin
Result := FComision;
end;
procedure TfrViewComision.SetController(const Value: IComisionesController);
begin
FController := Value;
end;
procedure TfrViewComision.SetComision(const Value: IBizComision);
var
ACadena : String;
begin
FComision := Value;
if Assigned(FComision) then
begin
DADataSource.DataTable := FComision.DataTable;
FVendedores := FVendedoresController.BuscarTodos;
dsVendedores.DataTable := FVendedores.DataTable;
dsVendedores.DataTable.Active := True;
end
else begin
DADataSource.DataTable := NIL;
dsVendedores.DataTable := NIL;
end;
end;
end.

View File

@ -0,0 +1,450 @@
inherited frViewComisiones: TfrViewComisiones
Width = 665
Height = 418
ExplicitWidth = 665
ExplicitHeight = 418
inherited cxGrid: TcxGrid
Width = 665
Height = 290
ExplicitWidth = 665
ExplicitHeight = 290
inherited cxGridView: TcxGridDBTableView
DataController.KeyFieldNames = 'ID'
DataController.Options = [dcoAnsiSort, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoGroupsAlwaysExpanded]
DataController.Summary.FooterSummaryItems = <
item
Format = '0 comisiones'
Kind = skCount
Column = cxGridViewREFERENCIA
end>
DataController.OnCompare = cxGridViewDataControllerCompare
OptionsCustomize.ColumnHidingOnGrouping = False
OptionsView.GroupFooters = gfAlwaysVisible
object cxGridViewREFERENCIA: TcxGridDBColumn
Caption = 'Referencia'
DataBinding.FieldName = 'REFERENCIA'
PropertiesClassName = 'TcxTextEditProperties'
SortIndex = 0
SortOrder = soDescending
Width = 69
end
object cxGridViewFECHA: TcxGridDBColumn
Caption = 'Fecha'
DataBinding.FieldName = 'FECHA'
PropertiesClassName = 'TcxDateEditProperties'
Width = 28
end
object cxGridViewID_AGENTE: TcxGridDBColumn
DataBinding.FieldName = 'ID_AGENTE'
Visible = False
VisibleForCustomization = False
end
object cxGridViewAGENTE: TcxGridDBColumn
Caption = 'Vendedor'
DataBinding.FieldName = 'AGENTE'
end
object cxGridViewDESCRIPCION: TcxGridDBColumn
Caption = 'Descripci'#243'n'
DataBinding.FieldName = 'DESCRIPCION'
Width = 181
end
object cxGridViewIMPORTE_TOTAL: TcxGridDBColumn
Caption = 'Importe total'
DataBinding.FieldName = 'IMPORTE_TOTAL'
PropertiesClassName = 'TcxCurrencyEditProperties'
Properties.Alignment.Horz = taRightJustify
FooterAlignmentHorz = taRightJustify
HeaderAlignmentHorz = taRightJustify
Width = 128
end
end
inherited cxGridLevel: TcxGridLevel
Caption = 'Todas'
end
end
inherited frViewFiltroBase1: TfrViewFiltroBase
Width = 665
ExplicitWidth = 665
inherited TBXDockablePanel1: TSpTBXDockablePanel
Width = 665
ExplicitWidth = 665
inherited dxLayoutControl1: TdxLayoutControl
Width = 665
ExplicitWidth = 665
inherited txtFiltroTodo: TcxTextEdit
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
ExplicitWidth = 568
Width = 568
end
inherited edtFechaIniFiltro: TcxDateEdit
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
ExplicitWidth = 144
Width = 144
end
inherited edtFechaFinFiltro: TcxDateEdit
Left = 248
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
ExplicitLeft = 248
ExplicitWidth = 273
Width = 273
end
inherited eLista: TcxComboBox
Left = 558
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
ExplicitLeft = 558
ExplicitWidth = 97
Width = 97
end
end
inherited TBXAlignmentPanel1: TSpTBXDockablePanel
Width = 655
ExplicitWidth = 655
inherited tbxBotones: TSpTBXToolbar
Width = 655
ExplicitWidth = 655
end
end
end
end
inherited pnlAgrupaciones: TSpTBXDockablePanel
Top = 392
Width = 665
Visible = True
ExplicitTop = 392
ExplicitWidth = 665
inherited TBXAlignmentPanel1: TSpTBXDockablePanel
Width = 665
ExplicitWidth = 665
inherited TBXToolbar1: TSpTBXToolbar
Width = 665
Visible = False
ExplicitWidth = 665
object TBXSeparatorItem2: TSpTBXSeparatorItem
end
object TBXItem3: TSpTBXItem
Action = actCliente
end
object TBXSeparatorItem1: TSpTBXSeparatorItem
end
object TBXItem2: TSpTBXItem
Action = actProvincia
end
end
end
end
inherited dxComponentPrinter: TdxComponentPrinter
inherited dxComponentPrinterLink: TdxGridReportLink
ReportDocument.CreationDate = 38673.741107951390000000
BuiltInReportLink = True
end
end
inherited dxPSEngineController1: TdxPSEngineController
Active = True
end
inherited cxStyleRepository1: TcxStyleRepository
object cxStylePagada: TcxStyle
AssignedValues = [svTextColor]
TextColor = clBlack
end
object cxStyleAbono: TcxStyle
AssignedValues = [svTextColor]
TextColor = clRed
end
object cxStylePendientes: TcxStyle
AssignedValues = [svTextColor]
TextColor = clGreen
end
object cxStyleParciales: TcxStyle
AssignedValues = [svTextColor]
TextColor = clBlue
end
end
inherited ActionList1: TActionList
object actCliente: TAction
Caption = 'Cliente'
OnExecute = actClienteExecute
OnUpdate = actClienteUpdate
end
object actProvincia: TAction
Caption = 'Provincia'
OnExecute = actProvinciaExecute
OnUpdate = actProvinciaUpdate
end
end
object PngImageList: TPngImageList
PngImages = <
item
PngImage.Data = {
89504E470D0A1A0A0000000D49484452000000100000001008060000001FF3FF
61000000097048597300000AEB00000AEB01828B0D5A000001DA4944415478DA
63FCFFFF3F032580912C5DF2F33964B539E3DF7DF8F1956403380CE7C85B5929
CFFAF99ED7FCFCED9BE124192060B7D8D6CE5279E99B876C42674FFC0CFEF9C0
7A27D10628FBAF0FB030915F74E7EA6FE6F387FF87FD7A6AB195E83090F55915
EEE7A23BE7FCD9CFAC170EFF4EFDF6C07A31D18128E1BE3CC8DB597BE1A3BBBF
B98EECFA91FBFDBEF574A0F07FA20C10B09B67EBE366B8E3CDF37F9C47F77CED
FC7CD3AE125D0DC400B3897C9CCCBCEADFD9182F331C4CFC010E6DCB39F29E0E
3A07599939E477AE7FBFFBE3CF4BBE0C77F27F621820EAB848DFDC447931372B
9FE68E5DF7577F3C73368E414588D9C6496BB3AA92B8CBDECD9FDEBC7CF9D3F2
E71DE7BBD85CC928EAB438C4C7556F3A0B1B8BC8B1BD9FFFDE7B753F4C41994B
C3CA48B1E5F09ECFFFEF3F7D19F3FB5AD0725CDE047B41276243A09D85FAAAA7
CFBFB11CDEFBEA8EA79F98E4C3FBBFB8CF9F7BBDE5EB453F3FE440C31E060CF5
4C4ED9F63B6565845D5EBEFEF29F11287AE9C4AF2FAFBF3D32FF753EFE3ABE80
86C7028FF5429B101F83FDCF5F7F66797697E1FFCDDB6FA7FFBAE69F4D289A91
A2B19EC539C7E1C49BC7EC46F71EBDD9FFF9DFD338868B994F4930808181D76E
413EF33F56D90F0F5ED4323C29FE4E4833080000904EC47A3EA3126900000000
49454E44AE426082}
Name = 'PngImage0'
Background = clWindow
end
item
PngImage.Data = {
89504E470D0A1A0A0000000D49484452000000100000001008060000001FF3FF
61000000097048597300000AEB00000AEB01828B0D5A0000029B4944415478DA
A5936B48536118C7FFE79CB5CD332F639B9A379C683051B232CDEA835D14BB40
A444501FACCC254811F529858811519411917D705A5041D04D30A34F82214118
D8B0455E2A755E6665BA9DCDED6C3BDBDE76365C9A981F7AE0BDF0C2FFF7FE9F
E7E1A10821F89FA0C27B7E8B8ED526D731085A9DAFAA6EFC4B1053FAA844AA8A
377053B64ED27BAC99C2E6FB4574667A4F5676B23C5ECE9091FE2F97B98ECA4B
CB9405B794AAEC9CAB5E307A97C3ED8383AB26BD35CF29EC7ED68AA4A45A0483
4852B1484D64C9A8E9EB15AEB3F2E282962D7BBC5FA651B73A5C424AC0E59E05
673B88BEBAB762FA14726EC7639DB60BB1B145083DC4C824D0A62790E901CB75
FB4B53A362EF060351B08D6E978706CF4F807356C0A41F10C1118018BA3B6A68
33DE8065F345080D82B4940432373933E863A43AC1E3A5E0E68730E72883F9D4
E482B33F003136B6A52251DD831879B60811530A2FF1CEF31670F3DB60AAB52E
2ECB528018EB8D5948D6F442264D8C8A03018299D94321DBED7FD775194051FE
E49C54A36CB2715E3AEA423CBD9E09CCD977C05C3FB222407DA0FD4A467E6643
FF472B450221A15F2010FCF39048E222109F052E5B294CA72DCB008A8AA7E775
25B94DC343D394D3EE167F2670380CA1DCDBC02A8CA194F685213EE11B387E17
3ED78D4701CCF687E559C579AF79DE2B991AFB19B1EC703EC0BBEAE351AF85F7
4E42B6E626683A0182300CDFFC4E98CE58C300CDD1EEC9B8B5AAB4B1C13184AD
BBDD668CFB8A6139E15952B1BCBB19A10E192161F6840A3B04DE594ACC677F50
CAC35D2F78BFBFCAEBE211A20BB0FFDA8A0FF57D2B0E4381510F09DD0412EC20
7DFA6A0A9B8C25502ABBC1307270DC35BCAF69587504739B3341532CF9543F10
E94261CB16486417F07DF4082C06CFAA80455DF80DE5433FF01720E9DB000000
0049454E44AE426082}
Name = 'PngImage1'
Background = clWindow
end
item
PngImage.Data = {
89504E470D0A1A0A0000000D49484452000000100000001008060000001FF3FF
610000000970485973000017120000171201679FD25200000A4D694343505068
6F746F73686F70204943432070726F66696C65000078DA9D53775893F7163EDF
F7650F5642D8F0B1976C81002223AC08C81059A21092006184101240C585880A
561415119C4855C482D50A489D88E2A028B867418A885A8B555C38EE1FDCA7B5
7D7AEFEDEDFBD7FBBCE79CE7FCCE79CF0F8011122691E6A26A003952853C3AD8
1F8F4F48C4C9BD80021548E0042010E6CBC26705C50000F00379787E74B03FFC
01AF6F00020070D52E2412C7E1FF83BA50265700209100E02212E70B01905200
C82E54C81400C81800B053B3640A009400006C797C422200AA0D00ECF4493E05
00D8A993DC1700D8A21CA908008D0100992847240240BB00605581522C02C0C2
00A0AC40222E04C0AE018059B632470280BD0500768E58900F4060008099422C
CC0020380200431E13CD03204C03A030D2BFE0A95F7085B8480100C0CB95CD97
4BD23314B895D01A77F2F0E0E221E2C26CB142611729106609E4229C979B2313
48E7034CCE0C00001AF9D1C1FE383F90E7E6E4E1E666E76CEFF4C5A2FE6BF06F
223E21F1DFFEBC8C020400104ECFEFDA5FE5E5D60370C701B075BF6BA95B00DA
560068DFF95D33DB09A05A0AD07AF98B7938FC401E9EA150C83C1D1C0A0B0BED
2562A1BD30E38B3EFF33E16FE08B7EF6FC401EFEDB7AF000719A4099ADC0A383
FD71616E76AE528EE7CB0442316EF7E723FEC7857FFD8E29D1E234B15C2C158A
F15889B850224DC779B952914421C995E212E97F32F11F96FD0993770D00AC86
4FC04EB607B5CB6CC07EEE01028B0E58D27600407EF32D8C1A0B910010673432
79F7000093BFF98F402B0100CD97A4E30000BCE8185CA894174CC608000044A0
812AB041070CC114ACC00E9CC11DBCC01702610644400C24C03C104206E4801C
0AA11896411954C03AD804B5B0031AA0119AE110B4C131380DE7E0125C81EB70
170660189EC218BC86090441C8081361213A8811628ED822CE0817998E042261
48349280A420E988145122C5C872A402A9426A915D4823F22D7214398D5C40FA
90DBC820328AFC8ABC47319481B25103D4027540B9A81F1A8AC6A073D174340F
5D8096A26BD11AB41E3D80B6A2A7D14BE87574007D8A8E6380D1310E668CD961
5C8C87456089581A26C71663E55835568F35631D583776151BC09E61EF082402
8B8013EC085E8410C26C82909047584C5843A825EC23B412BA085709838431C2
272293A84FB4257A12F9C478623AB1905846AC26EE211E219E255E270E135F93
48240EC992E44E0A21259032490B496B48DB482DA453A43ED210699C4C26EB90
6DC9DEE408B280AC209791B7900F904F92FBC9C3E4B7143AC588E24C09A22452
A494124A35653FE504A59F324299A0AA51CDA99ED408AA883A9F5A496DA07650
2F5387A91334759A25CD9B1643CBA42DA3D5D09A696769F7682FE974BA09DD83
1E4597D097D26BE807E9E7E983F4770C0D860D83C7486228196B197B19A718B7
192F994CA605D39799C85430D7321B9967980F986F55582AF62A7C1591CA1295
3A9556957E95E7AA545573553FD579AA0B54AB550FAB5E567DA64655B350E3A9
09D416ABD5A91D55BBA936AECE5277528F50CF515FA3BE5FFD82FA630DB28685
46A08648A35463B7C6198D2116C63265F15842D6725603EB2C6B984D625BB2F9
EC4C7605FB1B762F7B4C534373AA66AC6691669DE671CD010EC6B1E0F039D99C
4ACE21CE0DCE7B2D032D3F2DB1D66AAD66AD7EAD37DA7ADABEDA62ED72ED16ED
EBDAEF75709D409D2C9DF53A6D3AF77509BA36BA51BA85BADB75CFEA3ED363EB
79E909F5CAF50EE9DDD147F56DF4A3F517EAEFD6EFD11F373034083690196C31
3863F0CC9063E86B9869B8D1F084E1A811CB68BA91C468A3D149A327B826EE87
67E33578173E66AC6F1C62AC34DE65DC6B3C61626932DBA4C4A4C5E4BE29CD94
6B9A66BAD1B4D374CCCCC82CDCACD8ACC9EC8E39D59C6B9E61BED9BCDBFC8D85
A5459CC54A8B368BC796DA967CCB05964D96F7AC98563E567956F556D7AC49D6
5CEB2CEB6DD6576C501B579B0C9B3A9BCBB6A8AD9BADC4769B6DDF14E2148F29
D229F5536EDA31ECFCEC0AEC9AEC06ED39F661F625F66DF6CF1DCC1C121DD63B
743B7C727475CC766C70BCEBA4E134C3A9C4A9C3E957671B67A1739DF33517A6
4B90CB1297769717536DA78AA76E9F7ACB95E51AEEBAD2B5D3F5A39BBB9BDCAD
D96DD4DDCC3DC57DABFB4D2E9B1BC95DC33DEF41F4F0F758E271CCE39DA79BA7
C2F390E72F5E765E595EFBBD1E4FB39C269ED6306DC8DBC45BE0BDCB7B603A3E
3D65FACEE9033EC63E029F7A9F87BEA6BE22DF3DBE237ED67E997E07FC9EFB3B
FACBFD8FF8BFE179F216F14E056001C101E501BD811A81B3036B031F049904A5
0735058D05BB062F0C3E15420C090D591F72936FC017F21BF96333DC672C9AD1
15CA089D155A1BFA30CC264C1ED6118E86CF08DF107E6FA6F94CE9CCB60888E0
476C88B81F69199917F97D14292A32AA2EEA51B453747174F72CD6ACE459FB67
BD8EF18FA98CB93BDB6AB6727667AC6A6C526C63EC9BB880B8AAB8817887F845
F1971274132409ED89E4C4D8C43D89E37302E76C9A339CE49A54967463AEE5DC
A2B917E6E9CECB9E773C593559907C3885981297B23FE5832042502F184FE5A7
6E4D1D13F2849B854F45BEA28DA251B1B7B84A3C92E69D5695F638DD3B7D43FA
68864F4675C633094F522B79911992B923F34D5644D6DEACCFD971D92D39949C
949CA3520D6996B42BD730B728B74F662B2B930DE479E66DCA1B9387CAF7E423
F973F3DB156C854CD1A3B452AE500E164C2FA82B785B185B78B848BD485AD433
DF66FEEAF9230B82167CBD90B050B8B0B3D8B87859F1E022BF45BB16238B5317
772E315D52BA647869F0D27DCB68CBB296FD50E2585255F26A79DCF28E5283D2
A5A5432B82573495A994C9CB6EAEF45AB9631561956455EF6A97D55B567F2A17
955FAC70ACA8AEF8B046B8E6E2574E5FD57CF5796DDADADE4AB7CAEDEB48EBA4
EB6EACF759BFAF4ABD6A41D5D086F00DAD1BF18DE51B5F6D4ADE74A17A6AF58E
CDB4CDCACD03356135ED5BCCB6ACDBF2A136A3F67A9D7F5DCB56FDADABB7BED9
26DAD6BFDD777BF30E831D153BDEEF94ECBCB52B78576BBD457DF56ED2EE82DD
8F1A621BBABFE67EDDB847774FC59E8F7BA57B07F645EFEB6A746F6CDCAFBFBF
B2096D52368D1E483A70E59B806FDA9BED9A77B5705A2A0EC241E5C127DFA67C
7BE350E8A1CEC3DCC3CDDF997FB7F508EB48792BD23ABF75AC2DA36DA03DA1BD
EFE88CA39D1D5E1D47BEB7FF7EEF31E36375C7358F579EA09D283DF1F9E48293
E3A764A79E9D4E3F3DD499DC79F74CFC996B5D515DBD6743CF9E3F1774EE4CB7
5FF7C9F3DEE78F5DF0BC70F422F762DB25B74BAD3DAE3D477E70FDE148AF5B6F
EB65F7CBED573CAE74F44DEB3BD1EFD37FFA6AC0D573D7F8D72E5D9F79BDEFC6
EC1BB76E26DD1CB825BAF5F876F6ED17770AEE4CDC5D7A8F78AFFCBEDAFDEA07
FA0FEA7FB4FEB165C06DE0F860C060CFC3590FEF0E09879EFE94FFD387E1D247
CC47D52346238D8F9D1F1F1B0D1ABDF264CE93E1A7B2A713CFCA7E56FF79EB73
ABE7DFFDE2FB4BCF58FCD8F00BF98BCFBFAE79A9F372EFABA9AF3AC723C71FBC
CE793DF1A6FCADCEDB7DEFB8EFBADFC7BD1F9928FC40FE50F3D1FA63C7A7D04F
F73EE77CFEFC2FF784F3FB25D29F33000001A14944415478DA639CBC68FB7F06
2241EE3E4F38FBFFFCFF8C209A1164404EAC075E8D7FFEFE63F8FDE72F035706
1BC38C19090C19190B300DB02DDA0FD770B8CF11857FE4BD139C0D330006F0BA
E0D7EFBF609B79B2D8C11A41E0F5E7CF0CAF3E7D02E395134F6277013A407641
6EAD2BC3E4E6DD982E001900723A08FCFBFF9FE1FB8FDF60DB7DEB4F30ACAA34
6658BBE31838107D320C18B6CCB8803D0C607EDFDB69C7E05C7E88615DAD2943
50F36986A5A5060C9BF69CC41F0B300360B67FFBF18BE1CF9F7F0C61ED671916
16EA326C3B708661DED24D0CE7764C6344F61E8A01077B1D18EC8B0F306C6EB4
003B1D647374F7058639B9DA0CBB8F9C236C00C8E9207F836CFFFAED17989D34
F10AC394343586C3A72FE3362023CA8DC1B1F4205C7079B9214364E779869959
9A0CE9D3AE33F427A9309C387F15B701C961CE60DB407EF66F3CC9B0B8589FE1
DB77880B7266DD62E88A5364387BF9066E03E2821CC09A411A425ACF60A483D6
2839864BD76FE33620CA0FE277982B40B67F83A60310FEF7EF3FC3959B77701B
10EA65CDB07ADB51064200A70120096201BA01006B4F3A16F9FB392100000000
49454E44AE426082}
Name = 'PngImage4'
Background = clWindow
end
item
PngImage.Data = {
89504E470D0A1A0A0000000D49484452000000100000001008060000001FF3FF
610000000970485973000017120000171201679FD25200000A4D694343505068
6F746F73686F70204943432070726F66696C65000078DA9D53775893F7163EDF
F7650F5642D8F0B1976C81002223AC08C81059A21092006184101240C585880A
561415119C4855C482D50A489D88E2A028B867418A885A8B555C38EE1FDCA7B5
7D7AEFEDEDFBD7FBBCE79CE7FCCE79CF0F8011122691E6A26A003952853C3AD8
1F8F4F48C4C9BD80021548E0042010E6CBC26705C50000F00379787E74B03FFC
01AF6F00020070D52E2412C7E1FF83BA50265700209100E02212E70B01905200
C82E54C81400C81800B053B3640A009400006C797C422200AA0D00ECF4493E05
00D8A993DC1700D8A21CA908008D0100992847240240BB00605581522C02C0C2
00A0AC40222E04C0AE018059B632470280BD0500768E58900F4060008099422C
CC0020380200431E13CD03204C03A030D2BFE0A95F7085B8480100C0CB95CD97
4BD23314B895D01A77F2F0E0E221E2C26CB142611729106609E4229C979B2313
48E7034CCE0C00001AF9D1C1FE383F90E7E6E4E1E666E76CEFF4C5A2FE6BF06F
223E21F1DFFEBC8C020400104ECFEFDA5FE5E5D60370C701B075BF6BA95B00DA
560068DFF95D33DB09A05A0AD07AF98B7938FC401E9EA150C83C1D1C0A0B0BED
2562A1BD30E38B3EFF33E16FE08B7EF6FC401EFEDB7AF000719A4099ADC0A383
FD71616E76AE528EE7CB0442316EF7E723FEC7857FFD8E29D1E234B15C2C158A
F15889B850224DC779B952914421C995E212E97F32F11F96FD0993770D00AC86
4FC04EB607B5CB6CC07EEE01028B0E58D27600407EF32D8C1A0B910010673432
79F7000093BFF98F402B0100CD97A4E30000BCE8185CA894174CC608000044A0
812AB041070CC114ACC00E9CC11DBCC01702610644400C24C03C104206E4801C
0AA11896411954C03AD804B5B0031AA0119AE110B4C131380DE7E0125C81EB70
170660189EC218BC86090441C8081361213A8811628ED822CE0817998E042261
48349280A420E988145122C5C872A402A9426A915D4823F22D7214398D5C40FA
90DBC820328AFC8ABC47319481B25103D4027540B9A81F1A8AC6A073D174340F
5D8096A26BD11AB41E3D80B6A2A7D14BE87574007D8A8E6380D1310E668CD961
5C8C87456089581A26C71663E55835568F35631D583776151BC09E61EF082402
8B8013EC085E8410C26C82909047584C5843A825EC23B412BA085709838431C2
272293A84FB4257A12F9C478623AB1905846AC26EE211E219E255E270E135F93
48240EC992E44E0A21259032490B496B48DB482DA453A43ED210699C4C26EB90
6DC9DEE408B280AC209791B7900F904F92FBC9C3E4B7143AC588E24C09A22452
A494124A35653FE504A59F324299A0AA51CDA99ED408AA883A9F5A496DA07650
2F5387A91334759A25CD9B1643CBA42DA3D5D09A696769F7682FE974BA09DD83
1E4597D097D26BE807E9E7E983F4770C0D860D83C7486228196B197B19A718B7
192F994CA605D39799C85430D7321B9967980F986F55582AF62A7C1591CA1295
3A9556957E95E7AA545573553FD579AA0B54AB550FAB5E567DA64655B350E3A9
09D416ABD5A91D55BBA936AECE5277528F50CF515FA3BE5FFD82FA630DB28685
46A08648A35463B7C6198D2116C63265F15842D6725603EB2C6B984D625BB2F9
EC4C7605FB1B762F7B4C534373AA66AC6691669DE671CD010EC6B1E0F039D99C
4ACE21CE0DCE7B2D032D3F2DB1D66AAD66AD7EAD37DA7ADABEDA62ED72ED16ED
EBDAEF75709D409D2C9DF53A6D3AF77509BA36BA51BA85BADB75CFEA3ED363EB
79E909F5CAF50EE9DDD147F56DF4A3F517EAEFD6EFD11F373034083690196C31
3863F0CC9063E86B9869B8D1F084E1A811CB68BA91C468A3D149A327B826EE87
67E33578173E66AC6F1C62AC34DE65DC6B3C61626932DBA4C4A4C5E4BE29CD94
6B9A66BAD1B4D374CCCCC82CDCACD8ACC9EC8E39D59C6B9E61BED9BCDBFC8D85
A5459CC54A8B368BC796DA967CCB05964D96F7AC98563E567956F556D7AC49D6
5CEB2CEB6DD6576C501B579B0C9B3A9BCBB6A8AD9BADC4769B6DDF14E2148F29
D229F5536EDA31ECFCEC0AEC9AEC06ED39F661F625F66DF6CF1DCC1C121DD63B
743B7C727475CC766C70BCEBA4E134C3A9C4A9C3E957671B67A1739DF33517A6
4B90CB1297769717536DA78AA76E9F7ACB95E51AEEBAD2B5D3F5A39BBB9BDCAD
D96DD4DDCC3DC57DABFB4D2E9B1BC95DC33DEF41F4F0F758E271CCE39DA79BA7
C2F390E72F5E765E595EFBBD1E4FB39C269ED6306DC8DBC45BE0BDCB7B603A3E
3D65FACEE9033EC63E029F7A9F87BEA6BE22DF3DBE237ED67E997E07FC9EFB3B
FACBFD8FF8BFE179F216F14E056001C101E501BD811A81B3036B031F049904A5
0735058D05BB062F0C3E15420C090D591F72936FC017F21BF96333DC672C9AD1
15CA089D155A1BFA30CC264C1ED6118E86CF08DF107E6FA6F94CE9CCB60888E0
476C88B81F69199917F97D14292A32AA2EEA51B453747174F72CD6ACE459FB67
BD8EF18FA98CB93BDB6AB6727667AC6A6C526C63EC9BB880B8AAB8817887F845
F1971274132409ED89E4C4D8C43D89E37302E76C9A339CE49A54967463AEE5DC
A2B917E6E9CECB9E773C593559907C3885981297B23FE5832042502F184FE5A7
6E4D1D13F2849B854F45BEA28DA251B1B7B84A3C92E69D5695F638DD3B7D43FA
68864F4675C633094F522B79911992B923F34D5644D6DEACCFD971D92D39949C
949CA3520D6996B42BD730B728B74F662B2B930DE479E66DCA1B9387CAF7E423
F973F3DB156C854CD1A3B452AE500E164C2FA82B785B185B78B848BD485AD433
DF66FEEAF9230B82167CBD90B050B8B0B3D8B87859F1E022BF45BB16238B5317
772E315D52BA647869F0D27DCB68CBB296FD50E2585255F26A79DCF28E5283D2
A5A5432B82573495A994C9CB6EAEF45AB9631561956455EF6A97D55B567F2A17
955FAC70ACA8AEF8B046B8E6E2574E5FD57CF5796DDADADE4AB7CAEDEB48EBA4
EB6EACF759BFAF4ABD6A41D5D086F00DAD1BF18DE51B5F6D4ADE74A17A6AF58E
CDB4CDCACD03356135ED5BCCB6ACDBF2A136A3F67A9D7F5DCB56FDADABB7BED9
26DAD6BFDD777BF30E831D153BDEEF94ECBCB52B78576BBD457DF56ED2EE82DD
8F1A621BBABFE67EDDB847774FC59E8F7BA57B07F645EFEB6A746F6CDCAFBFBF
B2096D52368D1E483A70E59B806FDA9BED9A77B5705A2A0EC241E5C127DFA67C
7BE350E8A1CEC3DCC3CDDF997FB7F508EB48792BD23ABF75AC2DA36DA03DA1BD
EFE88CA39D1D5E1D47BEB7FF7EEF31E36375C7358F579EA09D283DF1F9E48293
E3A764A79E9D4E3F3DD499DC79F74CFC996B5D515DBD6743CF9E3F1774EE4CB7
5FF7C9F3DEE78F5DF0BC70F422F762DB25B74BAD3DAE3D477E70FDE148AF5B6F
EB65F7CBED573CAE74F44DEB3BD1EFD37FFA6AC0D573D7F8D72E5D9F79BDEFC6
EC1BB76E26DD1CB825BAF5F876F6ED17770AEE4CDC5D7A8F78AFFCBEDAFDEA07
FA0FEA7FB4FEB165C06DE0F860C060CFC3590FEF0E09879EFE94FFD387E1D247
CC47D52346238D8F9D1F1F1B0D1ABDF264CE93E1A7B2A713CFCA7E56FF79EB73
ABE7DFFDE2FB4BCF58FCD8F00BF98BCFBFAE79A9F372EFABA9AF3AC723C71FBC
CE793DF1A6FCADCEDB7DEFB8EFBADFC7BD1F9928FC40FE50F3D1FA63C7A7D04F
F73EE77CFEFC2FF784F3FB25D29F33000001794944415478DA639CBC68FB7F06
12404EAC0723329F1164005010AFA63F7FFF31FCFEF397C1DA3F9FE1DC8E69D8
0DB02DDA0F173CDCE788C257E977C269385E17FCFAFD176C730E173BC38C8404
B0D8E7CF9F193E7DFA04C6134F9EC4EE027440940B4006809C0E02FFFEFF67F8
FEE337D876DFFA130CAB2A8D19D6EE38C6306FE926FC6100F3FBDE4E3B06E7F2
430CEB6A4D19829A4F332C2D3560D8B4E7247106C06CFFF6E317C39F3FFF18C2
DACF322C2CD465D876E00C61030EF63A30D8171F60D8DC6801763AC8E6E8EE0B
0C7372B519761F3947D80090D341FE06D9FEF5DB2F303B69E2158629696A0C87
4F5FC66D4046941B8363E941B8E0F2724386C8CEF30C33B33419D2A75D67E84F
52613871FE2A6E0392C39CC1B681FCECDF78926171B13EC3B7EF1017E4CCBAC5
D015A7C870F6F20DDC06C405398035833484B49EC188EBD62839864BD76FE336
20CA0FE277982B40B67F83A60310FEF7EF3FC3959B77701B10EA65CDB07ADB51
064200A70120096201BA0100A6C62916A56F74520000000049454E44AE426082}
Name = 'PngImage3'
Background = clWindow
end>
Left = 56
Top = 48
Bitmap = {}
end
end

View File

@ -0,0 +1,181 @@
unit uViewComisiones;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, uViewGrid, uViewPreview, cxStyles, cxCustomData, cxGraphics,
cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, dxPSGlbl, dxPSUtl,
dxPSEngn, dxPrnPg, dxBkgnd, dxWrap, dxPrnDev, dxPSCompsProvider,
dxPSFillPatterns, dxPSEdgePatterns, cxImageComboBox, cxTextEdit, ImgList,
PngImageList, cxGridCustomTableView, cxGridTableView, cxGridDBTableView,
dxPSCore, dxPScxCommon, dxPScxGrid6Lnk, ActnList, uDADataTable,
cxGridLevel, cxClasses, cxControls, cxGridCustomView, cxGrid,
cxImage, Grids, DBGrids, uBizComisiones, cxGridCustomPopupMenu,
cxGridPopupMenu, cxCalendar, cxCurrencyEdit, uViewFiltroBase, TB2Item, SpTBXItem,
TB2Toolbar, SpTBXDkPanels, TB2Dock, dxPgsDlg, uDAInterfaces, uCustomView,
uViewBase, cxLookAndFeels, cxLookAndFeelPainters, dxPSPDFExportCore,
dxPSPDFExport, cxDrawTextUtils, dxPSPrVwStd, dxPSPrVwAdv,
dxPScxEditorProducers, dxPScxExtEditorProducers, dxPScxPageControlProducer;
type
IViewComisiones = interface(IViewGrid)
['{65A80949-4DE4-4620-8218-87439AAFABE1}']
function GetComisiones: IBizComision;
procedure SetComisiones(const Value: IBizComision);
property Comisiones: IBizComision read GetComisiones write SetComisiones;
end;
TfrViewComisiones = class(TfrViewGrid, IViewComisiones)
PngImageList: TPngImageList;
cxGridViewDESCRIPCION: TcxGridDBColumn;
cxGridViewREFERENCIA: TcxGridDBColumn;
cxGridViewFECHA: TcxGridDBColumn;
cxGridViewIMPORTE_TOTAL: TcxGridDBColumn;
cxGridViewID_AGENTE: TcxGridDBColumn;
cxStylePagada: TcxStyle;
cxStyleAbono: TcxStyle;
cxStylePendientes: TcxStyle;
cxStyleParciales: TcxStyle;
actCliente: TAction;
actProvincia: TAction;
TBXItem2: TSpTBXItem;
TBXSeparatorItem1: TSpTBXSeparatorItem;
TBXItem3: TSpTBXItem;
TBXSeparatorItem2: TSpTBXSeparatorItem;
cxGridViewAGENTE: TcxGridDBColumn;
procedure actClienteExecute(Sender: TObject);
procedure actProvinciaExecute(Sender: TObject);
procedure actProvinciaUpdate(Sender: TObject);
procedure actClienteUpdate(Sender: TObject);
procedure cxGridViewDataControllerCompare(
ADataController: TcxCustomDataController; ARecordIndex1, ARecordIndex2,
AItemIndex: Integer; const V1, V2: Variant; var Compare: Integer);
private
//Filtros relativos a la vista
procedure AnadirFiltroFechas;
protected
FComisiones: IBizComision;
function GetComisiones: IBizComision;
procedure SetComisiones(const Value: IBizComision);
public
procedure AnadirOtrosFiltros; override;
property Comisiones: IBizComision read GetComisiones write SetComisiones;
end;
implementation
uses
uDataModuleComisiones, DateUtils, uViewGridBase, uReferenciasUtils,
cxVariants;
{$R *.dfm}
{ TfrViewComisiones }
procedure TfrViewComisiones.actClienteExecute(Sender: TObject);
begin
{
if (cxGridViewNOMBRE.GroupIndex < 0) then
begin
cxGridViewNOMBRE.GroupIndex := cxGridView.GroupedColumnCount;
cxGridViewNOMBRE.Visible := False;
end
else
begin
cxGridViewNOMBRE.GroupIndex := -1;
cxGridViewNOMBRE.Visible := True;
end;
}
end;
procedure TfrViewComisiones.actClienteUpdate(Sender: TObject);
begin
inherited;
// (Sender as TAction).Checked := not (cxGridViewNOMBRE.GroupIndex < 0);
end;
procedure TfrViewComisiones.actProvinciaExecute(Sender: TObject);
begin
{
if (cxGridViewPROVINCIA.GroupIndex < 0) then
begin
cxGridViewPROVINCIA.GroupIndex := cxGridView.GroupedColumnCount;
cxGridViewPROVINCIA.Visible := False;
end
else
begin
cxGridViewPROVINCIA.GroupIndex := -1;
cxGridViewPROVINCIA.Visible := True;
end;
}
end;
procedure TfrViewComisiones.actProvinciaUpdate(Sender: TObject);
begin
inherited;
// (Sender as TAction).Checked := not (cxGridViewPROVINCIA.GroupIndex < 0);
end;
procedure TfrViewComisiones.AnadirFiltroFechas;
var
Columna: TcxGridDBColumn;
Fecha1, Fecha2: Variant;
FFiltro : TcxFilterCriteriaItemList;
begin
Fecha1 := frViewFiltroBase1.edtFechaIniFiltro.EditValue;
Fecha2 := frViewFiltroBase1.edtFechaFinFiltro.EditValue;
if not VarIsNull(Fecha1)
and not VarIsNull(Fecha2) then
begin
cxGridView.DataController.Filter.Options := [fcoCaseInsensitive, fcoSoftCompare];
FFiltro := AddFilterGrid(fboAnd);
Columna := (cxGridView as TcxGridDBTableView).GetColumnByFieldName('FECHA');
FFiltro.AddItem(Columna, foBetween, varArrayOf([Fecha1, Fecha2]), VarToStr(Fecha1) + ' and ' + VarToStr(Fecha2));
end;
end;
procedure TfrViewComisiones.AnadirOtrosFiltros;
begin
inherited;
AnadirFiltroFechas;
//Finalmente activamos el filtro si tenemos algo
if cxGridView.DataController.Filter.IsEmpty
then cxGridView.DataController.Filter.Active := False
else cxGridView.DataController.Filter.Active := True;
cxGrid.ActiveLevel.GridView := cxGridView;
end;
procedure TfrViewComisiones.cxGridViewDataControllerCompare(
ADataController: TcxCustomDataController; ARecordIndex1, ARecordIndex2,
AItemIndex: Integer; const V1, V2: Variant; var Compare: Integer);
begin
inherited;
if (AItemIndex = cxGridViewREFERENCIA.Index) and
(VarType(V1) = VarType(V2)) and (VarType(V1) = varString) then
Compare := CompararReferencias(V1, V2)
else
Compare := VarCompare(V1, V2);
end;
function TfrViewComisiones.GetComisiones: IBizComision;
begin
Result := FComisiones;
end;
procedure TfrViewComisiones.SetComisiones(const Value: IBizComision);
begin
FComisiones := Value;
if Assigned(FComisiones) then
dsDataSource.DataTable := FComisiones.DataTable;
end;
end.