Subida version Se adapta toda la aplicación para separar la información por años
git-svn-id: https://192.168.0.254/svn/Proyectos.AlonsoYSal_FactuGES/trunk@12 9a1d36f3-7752-2d40-8ccb-50eb49674c68
This commit is contained in:
parent
c5ecc492dc
commit
422cad76fe
BIN
BD/BASEDATOS.FDB
BIN
BD/BASEDATOS.FDB
Binary file not shown.
@ -1,93 +0,0 @@
|
||||
[07/04/2007 15:26:32]
|
||||
[Application: ]
|
||||
: [Connect]
|
||||
|
||||
>
|
||||
[07/04/2007 15:26:32]
|
||||
[Application: ]
|
||||
: [Prepare] SELECT
|
||||
ID
|
||||
FROM
|
||||
USUARIOS
|
||||
WHERE USUARIO = :USUARIO AND
|
||||
PASS = :PASS AND
|
||||
ACTIVO = 1
|
||||
|
||||
Plan: PLAN (USUARIOS NATURAL)
|
||||
|
||||
>
|
||||
[07/04/2007 15:26:32]
|
||||
[Application: ]
|
||||
: [Start transaction]
|
||||
|
||||
>
|
||||
[07/04/2007 15:26:32]
|
||||
[Application: ]
|
||||
: [Prepare] Select F.RDB$COMPUTED_BLR, F.RDB$DEFAULT_VALUE, R.RDB$DEFAULT_VALUE, R.RDB$FIELD_NAME from RDB$RELATION_FIELDS R, RDB$FIELDS F where R.RDB$RELATION_NAME = :RELATION and R.RDB$FIELD_SOURCE = F.RDB$FIELD_NAME and ((not F.RDB$COMPUTED_BLR is NULL) or (not (F.RDB$DEFAULT_VALUE is NULL and R.RDB$DEFAULT_VALUE is NULL)))
|
||||
|
||||
Plan: PLAN JOIN (R INDEX (RDB$INDEX_4), F INDEX (RDB$INDEX_2))
|
||||
|
||||
>
|
||||
[07/04/2007 15:26:32]
|
||||
[Application: ]
|
||||
: [Execute] Select F.RDB$COMPUTED_BLR, F.RDB$DEFAULT_VALUE, R.RDB$DEFAULT_VALUE, R.RDB$FIELD_NAME from RDB$RELATION_FIELDS R, RDB$FIELDS F where R.RDB$RELATION_NAME = :RELATION and R.RDB$FIELD_SOURCE = F.RDB$FIELD_NAME and ((not F.RDB$COMPUTED_BLR is NULL) or (not (F.RDB$DEFAULT_VALUE is NULL and R.RDB$DEFAULT_VALUE is NULL)))
|
||||
|
||||
RELATION = USUARIOS
|
||||
|
||||
>
|
||||
[07/04/2007 15:26:32]
|
||||
[Application: ]
|
||||
: [Prepare] SELECT RDB$FIELD_NAME, RDB$FIELD_POSITION FROM RDB$RELATION_CONSTRAINTS RR JOIN RDB$INDEX_SEGMENTS RI ON RR.RDB$INDEX_NAME = RI.RDB$INDEX_NAME WHERE RDB$RELATION_NAME = :relation_name AND RDB$CONSTRAINT_TYPE = 'PRIMARY KEY ' ORDER BY RDB$FIELD_POSITION
|
||||
|
||||
Plan: PLAN SORT (JOIN (RR INDEX (RDB$INDEX_42), RI INDEX (RDB$INDEX_6)))
|
||||
|
||||
>
|
||||
[07/04/2007 15:26:32]
|
||||
[Application: ]
|
||||
: [Execute] SELECT RDB$FIELD_NAME, RDB$FIELD_POSITION FROM RDB$RELATION_CONSTRAINTS RR JOIN RDB$INDEX_SEGMENTS RI ON RR.RDB$INDEX_NAME = RI.RDB$INDEX_NAME WHERE RDB$RELATION_NAME = :relation_name AND RDB$CONSTRAINT_TYPE = 'PRIMARY KEY ' ORDER BY RDB$FIELD_POSITION
|
||||
|
||||
RELATION_NAME = USUARIOS
|
||||
|
||||
>
|
||||
[07/04/2007 15:26:32]
|
||||
[Application: ]
|
||||
: [Commit (Hard commit)]
|
||||
|
||||
>
|
||||
[07/04/2007 15:26:32]
|
||||
[Application: ]
|
||||
: [Execute] SELECT
|
||||
ID
|
||||
FROM
|
||||
USUARIOS
|
||||
WHERE USUARIO = :USUARIO AND
|
||||
PASS = :PASS AND
|
||||
ACTIVO = 1
|
||||
|
||||
USUARIO = admin
|
||||
PASS = 1
|
||||
|
||||
>
|
||||
[07/04/2007 15:26:57]
|
||||
[Application: ]
|
||||
: [Connect]
|
||||
|
||||
>
|
||||
[07/04/2007 15:26:57]
|
||||
[Application: ]
|
||||
[Error] -206 335544569 Dynamic SQL Error
|
||||
SQL error code = -206
|
||||
Column unknown
|
||||
USUARIO
|
||||
At line 5, column 9
|
||||
|
||||
>
|
||||
[07/04/2007 15:27:04]
|
||||
[Application: ]
|
||||
[Error] -206 335544569 Dynamic SQL Error
|
||||
SQL error code = -206
|
||||
Column unknown
|
||||
USUARIO
|
||||
At line 5, column 9
|
||||
|
||||
>
|
||||
BIN
Base/BaseD7.dcp
BIN
Base/BaseD7.dcp
Binary file not shown.
325
Base/BaseD7.dof
325
Base/BaseD7.dof
@ -168,8 +168,8 @@ Count=1
|
||||
Item0=WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE;
|
||||
[HistoryLists\hlSearchPath]
|
||||
Count=16
|
||||
Item0=$(DELPHI)\Lib\Debug;D:\PROYEC~1\COMPON~1\jcl\lib\D7\debug;..\Base;..\Configuracion;..\Usuarios;..\Modulos\Intervalos;..\Modulos\Documentos asociados;..\Modulos\Contactos\Cliente;..\Modulos\Contactos\Reglas;..\Modulos\Presupuestos\Cliente;..\Modulos\Presupuestos\Reglas;..\Modulos\Albaranes de cliente\Cliente;..\Modulos\Albaranes de cliente\Reglas;..\Modulos\Facturas de cliente\Cliente;..\Modulos\Facturas de cliente\Reglas;..\Modulos\Pedidos a proveedor\Cliente;..\Modulos\Pedidos a proveedor\Reglas;..\Modulos\Facturas de proveedor\Cliente;..\Modulos\Facturas de proveedor\Reglas;..\Modulos\Montajes\Reglas;..\Modulos\Montajes\Cliente;..\Modulos\Articulos\Cliente;..\Modulos\Articulos\Reglas;..\Modulos\Almacenes\Reglas;..\Modulos\Almacenes\Cliente;..\Modulos\Pagos\Reglas;..\Modulos\Pagos\Cliente;..\Modulos\Cuentas\Reglas;..\Modulos\Cuentas\Cliente;..\Modulos\Asientos\Reglas;..\Modulos\Asientos\Cliente;..\Modulos\Calendarios\Cliente;..\Modulos\Calendarios\Reglas
|
||||
Item1=..\Modulos\Presupuestos\Reglas;..\Modulos\Contactos\Reglas;..\Base;..\Configuracion;..\Usuarios;..\Modulos\Albaranes de cliente\Reglas
|
||||
Item0=..\Modulos\Presupuestos\Reglas;..\Modulos\Contactos\Reglas;..\Base;..\Configuracion;..\Usuarios;..\Modulos\Albaranes de cliente\Reglas
|
||||
Item1=$(DELPHI)\Lib\Debug;D:\PROYEC~1\COMPON~1\jcl\lib\D7\debug;..\Base;..\Configuracion;..\Usuarios;..\Modulos\Intervalos;..\Modulos\Documentos asociados;..\Modulos\Contactos\Cliente;..\Modulos\Contactos\Reglas;..\Modulos\Presupuestos\Cliente;..\Modulos\Presupuestos\Reglas;..\Modulos\Albaranes de cliente\Cliente;..\Modulos\Albaranes de cliente\Reglas;..\Modulos\Facturas de cliente\Cliente;..\Modulos\Facturas de cliente\Reglas;..\Modulos\Pedidos a proveedor\Cliente;..\Modulos\Pedidos a proveedor\Reglas;..\Modulos\Facturas de proveedor\Cliente;..\Modulos\Facturas de proveedor\Reglas;..\Modulos\Montajes\Reglas;..\Modulos\Montajes\Cliente;..\Modulos\Articulos\Cliente;..\Modulos\Articulos\Reglas;..\Modulos\Almacenes\Reglas;..\Modulos\Almacenes\Cliente;..\Modulos\Pagos\Reglas;..\Modulos\Pagos\Cliente;..\Modulos\Cuentas\Reglas;..\Modulos\Cuentas\Cliente;..\Modulos\Asientos\Reglas;..\Modulos\Asientos\Cliente;..\Modulos\Calendarios\Cliente;..\Modulos\Calendarios\Reglas
|
||||
Item2=$(DELPHI)\Lib\Debug;D:\PROYEC~1\COMPON~1\jcl\lib\D7\debug;..\..\..\Base;..\..\..\Servidor;..\..\Contactos\Cliente;..\..\Presupuestos\Cliente;..\..\..\Usuarios;..\..\Albaranes de cliente\Cliente;..\..\Documentos asociados;..\..\Pagos\Cliente;..\..\Intervalos\Cliente;..\..\Asientos\Cliente;..\..\Cuentas\Cliente
|
||||
Item3=$(DELPHI)\Lib\Debug;D:\PROYEC~1\COMPON~1\jcl\lib\D7\debug;..\..\..\Base;..\..\..\Servidor;..\..\Contactos\Cliente;..\..\Presupuestos\Cliente;..\..\..\Usuarios;..\..\Albaranes de cliente\Cliente;..\..\Documentos asociados;..\..\Pagos\Cliente;..\..\Intervalos\Cliente;..\..\Asientos\Cliente
|
||||
Item4=$(DELPHI)\Lib\Debug;D:\PROYEC~1\COMPON~1\jcl\lib\D7\debug;..\..\..\Base;..\..\..\Servidor;..\..\Contactos\Cliente;..\..\Presupuestos\Cliente;..\..\..\Usuarios;..\..\Albaranes de cliente\Cliente;..\..\Documentos asociados;..\..\Pagos\Cliente;..\..\Intervalos\Cliente
|
||||
@ -189,8 +189,8 @@ Count=1
|
||||
Item0=.\
|
||||
[HistoryLists\hlOutputDirectorry]
|
||||
Count=2
|
||||
Item0=..\Output\Cliente
|
||||
Item1=..\Output\Servidor
|
||||
Item0=..\Output\Servidor
|
||||
Item1=..\Output\Cliente
|
||||
[HistoryLists\hlBPLOutput]
|
||||
Count=3
|
||||
Item0=..\..\..\Output\Cliente
|
||||
@ -199,320 +199,3 @@ Item2=..\..\Output\Cliente
|
||||
[HistoryLists\hlDCPOutput]
|
||||
Count=1
|
||||
Item0=.\
|
||||
[Exception Log]
|
||||
EurekaLog Version=519
|
||||
Activate=1
|
||||
Activate Handle=1
|
||||
Save Log File=1
|
||||
Foreground Tab=0
|
||||
Freeze Activate=0
|
||||
Freeze Timeout=0
|
||||
Freeze Message=The application seems to be frozen.
|
||||
SMTP From=eurekalog@email.com
|
||||
SMTP Host=
|
||||
SMTP Port=25
|
||||
SMTP UserID=
|
||||
SMTP Password=
|
||||
Append to Log=0
|
||||
Show TerminateBtn=1
|
||||
TerminateBtn Operation=1
|
||||
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=1
|
||||
AutoCrashNumber=10
|
||||
AutoCrashMinutes=1
|
||||
WebURL=
|
||||
WebUserID=
|
||||
WebPassword=
|
||||
WebPort=0
|
||||
AttachedFiles=
|
||||
Count=0
|
||||
EMail Message Line Count=0
|
||||
loNoDuplicateErrors=0
|
||||
loAppendReproduceText=0
|
||||
loDeleteLogAtVersionChange=0
|
||||
loAddComputerNameInLogFileName=0
|
||||
loSaveModulesSection=1
|
||||
loSaveCPUSection=1
|
||||
soAppStartDate=1
|
||||
soAppName=1
|
||||
soAppVersionNumber=1
|
||||
soAppParameters=1
|
||||
soAppCompilationDate=1
|
||||
soExcDate=1
|
||||
soExcAddress=1
|
||||
soExcModule=1
|
||||
soExcType=1
|
||||
soExcMessage=1
|
||||
soActCtlsFormClass=1
|
||||
soActCtlsFormText=1
|
||||
soActCtlsControlClass=1
|
||||
soActCtlsControlText=1
|
||||
soCmpName=1
|
||||
soCmpUser=1
|
||||
soCmpTotalMemory=1
|
||||
soCmpFreeMemory=1
|
||||
soCmpTotalDisk=1
|
||||
soCmpFreeDisk=1
|
||||
soCmpSysUpTime=1
|
||||
soCmpProcessor=1
|
||||
soCmpDisplayMode=1
|
||||
soOSType=1
|
||||
soOSBuildN=1
|
||||
soOSUpdate=1
|
||||
soOSLanguage=1
|
||||
soNetIP=1
|
||||
soNetSubmask=1
|
||||
soNetGateway=1
|
||||
soNetDNS1=1
|
||||
soNetDNS2=1
|
||||
soNetDHCP=1
|
||||
sndShowSendDialog=1
|
||||
sndShowSuccessFailureMsg=0
|
||||
sndSendEntireLog=0
|
||||
sndSendXMLLogCopy=0
|
||||
sndSendScreenshot=0
|
||||
sndUseOnlyActiveWindow=0
|
||||
sndSendLastHTMLPage=1
|
||||
sndSendInSeparatedThread=0
|
||||
sndAddDateInFileName=0
|
||||
sndCompressAllFiles=0
|
||||
edoShowExceptionDialog=1
|
||||
edoSendEmailChecked=1
|
||||
edoAttachScreenshotChecked=1
|
||||
edoShowCopyToClipOption=1
|
||||
edoShowDetailsButton=1
|
||||
edoShowInDetailedMode=0
|
||||
edoShowInTopMostMode=0
|
||||
edoUseEurekaLogLookAndFeel=1
|
||||
csoShowDLLs=1
|
||||
csoShowBPLs=1
|
||||
csoShowBorlandThreads=1
|
||||
csoShowWindowsThreads=1
|
||||
csoShowProcedureOffset=0
|
||||
boActivateCrashDetection=0
|
||||
boPauseBorlandThreads=0
|
||||
boDoNotPauseMainThread=0
|
||||
boPauseWindowsThreads=0
|
||||
boUseMainModuleOptions=1
|
||||
boCopyLogInCaseOfError=1
|
||||
boSaveCompressedCopyInCaseOfError=0
|
||||
Count mtInformationMsgCaption=1
|
||||
mtInformationMsgCaption0="Information."
|
||||
Count mtQuestionMsgCaption=1
|
||||
mtQuestionMsgCaption0="Question."
|
||||
Count mtDialog_Caption=1
|
||||
mtDialog_Caption0="Error."
|
||||
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_CPUCaption=1
|
||||
mtDialog_CPUCaption0="CPU"
|
||||
Count mtDialog_CPUHeader=1
|
||||
mtDialog_CPUHeader0="CPU Information"
|
||||
Count mtDialog_CustomDataCaption=1
|
||||
mtDialog_CustomDataCaption0="Other"
|
||||
Count mtDialog_CustomDataHeader=1
|
||||
mtDialog_CustomDataHeader0="Other 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_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 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_ExcHeader=1
|
||||
mtLog_ExcHeader0="Exception"
|
||||
Count mtLog_ExcDate=1
|
||||
mtLog_ExcDate0="Date"
|
||||
Count mtLog_ExcAddress=1
|
||||
mtLog_ExcAddress0="Address"
|
||||
Count mtLog_ExcModule=1
|
||||
mtLog_ExcModule0="Module"
|
||||
Count mtLog_ExcType=1
|
||||
mtLog_ExcType0="Type"
|
||||
Count mtLog_ExcMessage=1
|
||||
mtLog_ExcMessage0="Message"
|
||||
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_CmpUser=1
|
||||
mtLog_CmpUser0="User"
|
||||
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_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_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 mtSendDialog_Caption=1
|
||||
mtSendDialog_Caption0="Send."
|
||||
Count mtSendDialog_Message=1
|
||||
mtSendDialog_Message0="Message"
|
||||
Count mtSendDialog_Resolving=1
|
||||
mtSendDialog_Resolving0="Resolving DNS..."
|
||||
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 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 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."
|
||||
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@ object dmBase: TdmBase
|
||||
OldCreateOrder = True
|
||||
OnCreate = DAClientDataModuleCreate
|
||||
Left = 616
|
||||
Top = 230
|
||||
Top = 176
|
||||
Height = 368
|
||||
Width = 494
|
||||
object SmallImages: TPngImageList
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
object fEditorBase: TfEditorBase
|
||||
Left = 482
|
||||
Top = 318
|
||||
Top = 242
|
||||
Width = 670
|
||||
Height = 512
|
||||
Caption = 'EditorBase'
|
||||
|
||||
@ -57,24 +57,31 @@ begin
|
||||
inherited;
|
||||
if Assigned(dsDataTable.DataTable) then
|
||||
begin
|
||||
if (dsDataTable.DataTable.IsEmpty) or (not ModifiedQuery) then
|
||||
Exit; // No continuar con el refresco
|
||||
|
||||
ABookmark := dsDataTable.DataTable.GetBookMark;
|
||||
// dsDataTable.DataTable.DisableControls; <- No descomentar
|
||||
if (not ModifiedQuery) then
|
||||
Exit; // No continuar con el refresco
|
||||
|
||||
ACursor := Screen.Cursor;
|
||||
Screen.Cursor := crHourGlass;
|
||||
try
|
||||
dsDataTable.DataTable.Refresh;
|
||||
|
||||
if dsDataTable.DataTable.Dataset.BookmarkValid(ABookmark) then
|
||||
dsDataTable.DataTable.GotoBookmark(ABookmark);
|
||||
if dsDataTable.DataTable.IsEmpty then
|
||||
begin
|
||||
dsDataTable.DataTable.Refresh;
|
||||
end
|
||||
else
|
||||
begin
|
||||
ABookmark := dsDataTable.DataTable.GetBookMark;
|
||||
// dsDataTable.DataTable.DisableControls; <- No descomentar
|
||||
dsDataTable.DataTable.Refresh;
|
||||
if dsDataTable.DataTable.Dataset.BookmarkValid(ABookmark) then
|
||||
dsDataTable.DataTable.GotoBookmark(ABookmark);
|
||||
dsDataTable.DataTable.FreeBookmark(ABookmark);
|
||||
// dsDataTable.DataTable.EnableControls; <- No descomentar
|
||||
end;
|
||||
finally
|
||||
dsDataTable.DataTable.FreeBookmark(ABookmark);
|
||||
// dsDataTable.DataTable.EnableControls; <- No descomentar
|
||||
Screen.Cursor := ACursor;
|
||||
end;
|
||||
|
||||
|
||||
end;
|
||||
end;
|
||||
|
||||
|
||||
@ -1,19 +1,20 @@
|
||||
inherited fEditorGrid: TfEditorGrid
|
||||
Left = 208
|
||||
Top = 182
|
||||
Width = 893
|
||||
Left = 747
|
||||
Top = 158
|
||||
Width = 714
|
||||
Height = 485
|
||||
Caption = 'fEditorGrid'
|
||||
PixelsPerInch = 96
|
||||
TextHeight = 13
|
||||
inherited JvNavPanelHeader: TJvNavPanelHeader
|
||||
Width = 885
|
||||
Width = 706
|
||||
inherited Image1: TImage
|
||||
Left = 858
|
||||
Left = 679
|
||||
end
|
||||
end
|
||||
inherited TBXDock: TTBXDock
|
||||
Width = 885
|
||||
Width = 706
|
||||
Height = 75
|
||||
inherited tbxMain: TTBXToolbar
|
||||
DefaultDock = TBXDock
|
||||
inherited TBXItem29: TTBXItem
|
||||
@ -52,21 +53,27 @@ inherited fEditorGrid: TfEditorGrid
|
||||
end
|
||||
end
|
||||
object tbxFiltro: TTBXToolbar
|
||||
Left = 465
|
||||
Top = 23
|
||||
Left = 0
|
||||
Top = 49
|
||||
Align = alRight
|
||||
CloseButton = False
|
||||
DefaultDock = TBXDock
|
||||
DockMode = dmCannotFloatOrChangeDocks
|
||||
DockPos = 392
|
||||
DockRow = 1
|
||||
DragHandleStyle = dhNone
|
||||
DockPos = -12
|
||||
DockRow = 2
|
||||
Images = SmallImages
|
||||
ParentShowHint = False
|
||||
Resizable = False
|
||||
ShowHint = True
|
||||
ShrinkMode = tbsmNone
|
||||
TabOrder = 2
|
||||
object lblAno: TTBXLabelItem
|
||||
Caption = 'A'#241'o:'
|
||||
Visible = False
|
||||
end
|
||||
object cbxListaAnos: TTBXComboBoxItem
|
||||
Visible = False
|
||||
end
|
||||
object sepAno: TTBXSeparatorItem
|
||||
Visible = False
|
||||
end
|
||||
object TBXLabelItem1: TTBXLabelItem
|
||||
Caption = 'Filtrar:'
|
||||
end
|
||||
@ -91,7 +98,7 @@ inherited fEditorGrid: TfEditorGrid
|
||||
end
|
||||
inherited StatusBar: TStatusBar
|
||||
Top = 432
|
||||
Width = 885
|
||||
Width = 706
|
||||
end
|
||||
inherited EditorActionList: TActionList
|
||||
Left = 72
|
||||
@ -652,6 +659,8 @@ inherited fEditorGrid: TfEditorGrid
|
||||
Name = 'PngImage21'
|
||||
Background = clWindow
|
||||
end>
|
||||
Left = 323
|
||||
Top = 120
|
||||
Bitmap = {}
|
||||
end
|
||||
inherited LargeImages: TPngImageList
|
||||
@ -1422,6 +1431,8 @@ inherited fEditorGrid: TfEditorGrid
|
||||
Name = 'PngImage20'
|
||||
Background = clWindow
|
||||
end>
|
||||
Left = 443
|
||||
Top = 128
|
||||
Bitmap = {}
|
||||
end
|
||||
inherited JvFormStorage: TJvFormStorage
|
||||
|
||||
@ -41,6 +41,9 @@ type
|
||||
TBXItem35: TTBXItem;
|
||||
actFiltrar: TAction;
|
||||
TBXItem37: TTBXItem;
|
||||
lblAno: TTBXLabelItem;
|
||||
cbxListaAnos: TTBXComboBoxItem;
|
||||
sepAno: TTBXSeparatorItem;
|
||||
procedure tbxEditFiltroChange(Sender: TObject; const Text: String);
|
||||
procedure FormShow(Sender: TObject);
|
||||
procedure actPrevisualizarExecute(Sender: TObject);
|
||||
@ -58,15 +61,27 @@ type
|
||||
procedure actFiltrarExecute(Sender: TObject);
|
||||
procedure actFiltrarUpdate(Sender: TObject);
|
||||
private
|
||||
FListaAnos: TStringList;
|
||||
FViewGrid : IViewGrid;
|
||||
FWhereDataTable: WideString;
|
||||
|
||||
function GetListaAnos: TStringList;
|
||||
procedure SetListaAnos(const Value: TStringList);
|
||||
|
||||
function GetWhereDataTable: String;
|
||||
procedure SetWhereDataTable(const Value: String);
|
||||
|
||||
protected
|
||||
procedure SetViewGrid(const Value : IViewGrid); virtual;
|
||||
function GetViewGrid: IViewGrid;
|
||||
|
||||
public
|
||||
property ListaAnos: TStringList read GetListaAnos write SetListaAnos;
|
||||
property WhereDataTable: String read GetWhereDataTable write SetWhereDataTable;
|
||||
property ViewGrid: IViewGrid read GetViewGrid write SetViewGrid;
|
||||
constructor Create(AOwner : TComponent); override;
|
||||
|
||||
destructor Destroy; override;
|
||||
|
||||
end;
|
||||
|
||||
implementation
|
||||
@ -81,7 +96,11 @@ uses
|
||||
}
|
||||
destructor TfEditorGrid.Destroy;
|
||||
begin
|
||||
FWhereDataTable := '';
|
||||
FViewGrid := NIL;
|
||||
if Assigned(FListaAnos) then
|
||||
FlistaAnos.Free;
|
||||
|
||||
inherited;
|
||||
end;
|
||||
|
||||
@ -109,6 +128,8 @@ end;
|
||||
procedure TfEditorGrid.FormShow(Sender: TObject);
|
||||
begin
|
||||
inherited;
|
||||
cbxListaAnos.ItemIndex := 0; //OJO EL ORDEN PORQUE EL ShowEmbedded hace el open de la tabla
|
||||
|
||||
if Assigned(ViewGrid) then
|
||||
ViewGrid.ShowEmbedded(Self);
|
||||
end;
|
||||
@ -239,6 +260,57 @@ begin
|
||||
(Sender as TAction).Checked := ViewGrid.EstanFiltrosVisible
|
||||
end;
|
||||
|
||||
function TfEditorGrid.GetListaAnos: TStringList;
|
||||
begin
|
||||
Result := FListaAnos;
|
||||
end;
|
||||
|
||||
function TfEditorGrid.GetWhereDataTable: String;
|
||||
begin
|
||||
Result := FWhereDataTable;
|
||||
end;
|
||||
|
||||
procedure TfEditorGrid.SetListaAnos(const Value: TStringList);
|
||||
var
|
||||
i: Integer;
|
||||
AStringAnterior: String;
|
||||
|
||||
begin
|
||||
AStringAnterior := '';
|
||||
if Assigned(FListaAnos) then
|
||||
begin
|
||||
AStringAnterior := FListaAnos.ValueFromIndex[cbxListaAnos.ItemIndex];
|
||||
FListaAnos.Free;
|
||||
end;
|
||||
|
||||
//Se asigna el nuevo TStringList
|
||||
FListaAnos := Value;
|
||||
|
||||
if Assigned(FListaAnos) then
|
||||
begin
|
||||
cbxListaAnos.Strings.BeginUpdate;
|
||||
cbxListaAnos.Strings.Clear;
|
||||
for i := 0 to FListaAnos.Count - 1 do
|
||||
cbxListaAnos.Strings.Append(FListaAnos.Names[i]);
|
||||
|
||||
//Se posiciona en el elemento que habia anteriormente
|
||||
if Length(AStringAnterior) > 0 then
|
||||
begin
|
||||
if FListaAnos.IndexOfName(AStringAnterior) <> -1 then
|
||||
cbxListaAnos.ItemIndex := FListaAnos.IndexOfName(AStringAnterior)
|
||||
else
|
||||
cbxListaAnos.ItemIndex := 0;
|
||||
end;
|
||||
|
||||
cbxListaAnos.Strings.EndUpdate;
|
||||
end;
|
||||
end;
|
||||
|
||||
procedure TfEditorGrid.SetWhereDataTable(const Value: String);
|
||||
begin
|
||||
FWhereDataTable := Value;
|
||||
end;
|
||||
|
||||
initialization
|
||||
RegisterClass(TfEditorGrid);
|
||||
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
inherited frViewBarraSeleccion: TfrViewBarraSeleccion
|
||||
Width = 439
|
||||
Width = 443
|
||||
Height = 19
|
||||
Align = alBottom
|
||||
AutoScroll = False
|
||||
@ -7,14 +7,14 @@ inherited frViewBarraSeleccion: TfrViewBarraSeleccion
|
||||
object pnlSeleccion: TPanel
|
||||
Left = 0
|
||||
Top = -18
|
||||
Width = 439
|
||||
Width = 443
|
||||
Height = 37
|
||||
Align = alBottom
|
||||
BevelOuter = bvNone
|
||||
ParentBackground = True
|
||||
TabOrder = 0
|
||||
DesignSize = (
|
||||
439
|
||||
443
|
||||
37)
|
||||
object bSeleccionar: TButton
|
||||
Left = 264
|
||||
|
||||
@ -114,7 +114,7 @@ IncludeVerInfo=1
|
||||
AutoIncBuild=0
|
||||
MajorVer=1
|
||||
MinorVer=5
|
||||
Release=0
|
||||
Release=1
|
||||
Build=0
|
||||
Debug=0
|
||||
PreRelease=0
|
||||
@ -126,28 +126,28 @@ CodePage=1252
|
||||
[Version Info Keys]
|
||||
CompanyName=Rodax Software S.L.
|
||||
FileDescription=
|
||||
FileVersion=1.5.0.0
|
||||
FileVersion=1.5.1.0
|
||||
InternalName=FactuGES
|
||||
LegalCopyright=
|
||||
LegalTrademarks=
|
||||
OriginalFilename=
|
||||
ProductName=FactuGES
|
||||
ProductVersion=1.0.0.0
|
||||
ProductVersion=1.5.1.0
|
||||
Comments=
|
||||
[Excluded Packages]
|
||||
C:\Archivos de programa\Borland\Delphi7\Projects\Bpl\cxTreeListVCLD7.bpl=ExpressQuantumTreeList 4 (VCL Edition) by Developer Express Inc.
|
||||
C:\Archivos de programa\Borland\Delphi7\Projects\Bpl\dxThemeD7.bpl=Express XP Theme Manager by Developer Express Inc.
|
||||
C:\Archivos de programa\Borland\Delphi7\Projects\Bpl\cxLibraryVCLD7.bpl=Express Cross Platform Library (VCL Edition) by Developer Express Inc.
|
||||
C:\Archivos de programa\Borland\Delphi7\Projects\Bpl\cxExportVCLD7.bpl=Express Cross Platform Export Library (VCL Edition) by Developer Express Inc.
|
||||
C:\Archivos de programa\Borland\Delphi7\Projects\Bpl\dxThemeD7.bpl=Express XP Theme Manager by Developer Express Inc.
|
||||
C:\Archivos de programa\Borland\Delphi7\Projects\Bpl\cxEditorsVCLD7.bpl=ExpressEditors Library 5 (VCL Edition) by Developer Express Inc.
|
||||
C:\Archivos de programa\Borland\Delphi7\Projects\Bpl\cxDataD7.bpl=ExpressDataController by Developer Express Inc.
|
||||
C:\Archivos de programa\Borland\Delphi7\Projects\Bpl\cxExtEditorsVCLD7.bpl=ExpressExtendedEditors Library 5 (VCL Edition) by Developer Express Inc.
|
||||
C:\Archivos de programa\Borland\Delphi7\Projects\Bpl\cxGridVCLD7.bpl=ExpressQuantumGrid 5 (VCL Edition) by Developer Express Inc.
|
||||
C:\Archivos de programa\Borland\Delphi7\Projects\Bpl\cxPageControlVCLD7.bpl=Express Cross Platform PageControl (VCL Edition) by Developer Express Inc.
|
||||
C:\Archivos de programa\Borland\Delphi7\Projects\Bpl\cxExportVCLD7.bpl=Express Cross Platform Export Library (VCL Edition) by Developer Express Inc.
|
||||
C:\Archivos de programa\Borland\Delphi7\Projects\Bpl\cxSchedulerVCLD7.bpl=ExpressScheduler 2 (VCL Edition) by Developer Express Inc.
|
||||
C:\Archivos de programa\Borland\Delphi7\Projects\Bpl\dxsbD7.bpl=ExpressSideBar by Developer Express Inc.
|
||||
C:\Archivos de programa\Borland\Delphi7\Projects\Bpl\dxComnD7.bpl=ExpressCommonLibrary by Developer Express Inc.
|
||||
C:\Archivos de programa\Borland\Delphi7\Projects\Bpl\cxTreeListVCLD7.bpl=ExpressQuantumTreeList 4 (VCL Edition) by Developer Express Inc.
|
||||
C:\Archivos de programa\Borland\Delphi7\Projects\Bpl\cxVerticalGridVCLD7.bpl=ExpressVerticalGrid (VCL Edition) by Developer Express Inc.
|
||||
C:\Archivos de programa\Borland\Delphi7\Projects\Bpl\dxBarD7.bpl=ExpressBars by Developer Express Inc.
|
||||
C:\Archivos de programa\Borland\Delphi7\Projects\Bpl\dxComnD7.bpl=ExpressCommonLibrary by Developer Express Inc.
|
||||
C:\Archivos de programa\Borland\Delphi7\Projects\Bpl\dxBarDBNavD7.bpl=ExpressBars DBNavigator by Developer Express Inc.
|
||||
C:\Archivos de programa\Borland\Delphi7\Projects\Bpl\dxBarExtDBItemsD7.bpl=ExpressBars extended DB items by Developer Express Inc.
|
||||
C:\Archivos de programa\Borland\Delphi7\Projects\Bpl\dxBarExtItemsD7.bpl=ExpressBars extended items by Developer Express Inc.
|
||||
@ -156,14 +156,25 @@ C:\Archivos de programa\Borland\Delphi7\Projects\Bpl\dxLayoutControlD7.bpl=Expre
|
||||
C:\Archivos de programa\Borland\Delphi7\Projects\Bpl\dxNavBarD7.bpl=ExpressNavBar by Developer Express Inc.
|
||||
C:\Archivos de programa\Borland\Delphi7\Projects\Bpl\dxGDIPlusD7.bpl=ExpressGDI+ Library by Developer Express Inc.
|
||||
C:\Archivos de programa\Borland\Delphi7\Projects\Bpl\dxPSCoreD7.bpl=ExpressPrinting System by Developer Express Inc.
|
||||
C:\Archivos de programa\Borland\Delphi7\Projects\Bpl\cxVerticalGridVCLD7.bpl=ExpressVerticalGrid (VCL Edition) by Developer Express Inc.
|
||||
C:\Archivos de programa\Clever Components\Database Comparer\Delphi 7\Lib\ComparerD7.bpl=Database Comparer VCL
|
||||
C:\Archivos de programa\Clever Components\Database Comparer\Delphi 7\Lib\ComparerBdeD7.bpl=Database Comparer VCL BDE
|
||||
C:\Archivos de programa\Clever Components\Database Comparer\Delphi 7\Lib\ComparerDBXD7.bpl=Database Comparer VCL DBX
|
||||
C:\Archivos de programa\Clever Components\Database Comparer\Delphi 7\Lib\ComparerIbxD7.bpl=Database Comparer VCL IBX
|
||||
C:\Archivos de programa\Clever Components\Database Comparer\Delphi 7\Lib\ComparerAdoD7.bpl=Database Comparer VCL ADO
|
||||
C:\WINDOWS\system32\dclShX_Namespace_V3D7.bpl=(untitled)
|
||||
C:\WINDOWS\system32\vclShX_Namespace_v3D7.bpl=(untitled)
|
||||
C:\Archivos de programa\Borland\Delphi7\Projects\Bpl\dxsbD7.bpl=ExpressSideBar by Developer Express Inc.
|
||||
C:\Archivos de programa\Borland\Delphi7\Projects\Bpl\VirtualTreesD7.bpl=Virtual Treeview runtime package
|
||||
C:\Archivos de programa\Borland\Delphi7\Projects\Bpl\EPCOTAUtils70.bpl=EPC Open Tools API utilities
|
||||
C:\Archivos de programa\Borland\Delphi7\Projects\Bpl\Jcl70.bpl=JEDI Code Library RTL package
|
||||
C:\Archivos de programa\Borland\Delphi7\Projects\Bpl\JclVcl70.bpl=JEDI Code Library VCL package
|
||||
C:\Archivos de programa\Borland\Delphi7\Projects\Bpl\PluginSDK_D7R.bpl=(untitled)
|
||||
C:\Componentes\FastReport 3\LibD7\frxADO7.bpl=(untitled)
|
||||
C:\Componentes\FastReport 3\LibD7\fsADO7.bpl=(untitled)
|
||||
C:\Componentes\FastReport 3\LibD7\fsDB7.bpl=(untitled)
|
||||
C:\Componentes\FastReport 3\LibD7\fs7.bpl=(untitled)
|
||||
C:\Componentes\FastReport 3\LibD7\frxDB7.bpl=(untitled)
|
||||
C:\Componentes\FastReport 3\LibD7\frx7.bpl=(untitled)
|
||||
C:\Componentes\FastReport 3\LibD7\frxBDE7.bpl=(untitled)
|
||||
C:\Componentes\FastReport 3\LibD7\fsBDE7.bpl=(untitled)
|
||||
C:\Componentes\FastReport 3\LibD7\frxDBX7.bpl=(untitled)
|
||||
C:\Componentes\FastReport 3\LibD7\frxe7.bpl=(untitled)
|
||||
C:\Componentes\FastReport 3\LibD7\frxIBX7.bpl=(untitled)
|
||||
C:\Componentes\FastReport 3\LibD7\fsIBX7.bpl=(untitled)
|
||||
C:\Componentes\FastReport 3\LibD7\frxTee7.bpl=(untitled)
|
||||
[HistoryLists\hlDebugSourcePath]
|
||||
Count=1
|
||||
Item0=D:\Proyectos\Componentes\GUISDK\Sources\;D:\Proyectos\Componentes\PluginSDK\Source\;D:\Proyectos\FactuGES (Estudio)\Codigo\Modulos\Contactos\Cliente;D:\Proyectos\FactuGES (Estudio)\Codigo\Modulos\Contactos\Reglas
|
||||
@ -172,8 +183,8 @@ Count=1
|
||||
Item0=WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE;
|
||||
[HistoryLists\hlSearchPath]
|
||||
Count=16
|
||||
Item0=$(DELPHI)\Lib\Debug;D:\PROYEC~1\COMPON~1\jcl\lib\D7\debug;..\Base;..\Configuracion;..\Usuarios;..\Modulos\Intervalos;..\Modulos\Documentos asociados;..\Modulos\Contactos\Cliente;..\Modulos\Contactos\Reglas;..\Modulos\Presupuestos\Cliente;..\Modulos\Presupuestos\Reglas;..\Modulos\Albaranes de cliente\Cliente;..\Modulos\Albaranes de cliente\Reglas;..\Modulos\Facturas de cliente\Cliente;..\Modulos\Facturas de cliente\Reglas;..\Modulos\Pedidos a proveedor\Cliente;..\Modulos\Pedidos a proveedor\Reglas;..\Modulos\Facturas de proveedor\Cliente;..\Modulos\Facturas de proveedor\Reglas;..\Modulos\Montajes\Reglas;..\Modulos\Montajes\Cliente;..\Modulos\Articulos\Cliente;..\Modulos\Articulos\Reglas;..\Modulos\Almacenes\Reglas;..\Modulos\Almacenes\Cliente;..\Modulos\Pagos\Reglas;..\Modulos\Pagos\Cliente;..\Modulos\Cuentas\Reglas;..\Modulos\Cuentas\Cliente;..\Modulos\Asientos\Reglas;..\Modulos\Asientos\Cliente;..\Modulos\Calendarios\Cliente;..\Modulos\Calendarios\Reglas
|
||||
Item1=..\Modulos\Presupuestos\Reglas;..\Modulos\Contactos\Reglas;..\Base;..\Configuracion;..\Usuarios;..\Modulos\Albaranes de cliente\Reglas
|
||||
Item0=..\Modulos\Presupuestos\Reglas;..\Modulos\Contactos\Reglas;..\Base;..\Configuracion;..\Usuarios;..\Modulos\Albaranes de cliente\Reglas
|
||||
Item1=$(DELPHI)\Lib\Debug;D:\PROYEC~1\COMPON~1\jcl\lib\D7\debug;..\Base;..\Configuracion;..\Usuarios;..\Modulos\Intervalos;..\Modulos\Documentos asociados;..\Modulos\Contactos\Cliente;..\Modulos\Contactos\Reglas;..\Modulos\Presupuestos\Cliente;..\Modulos\Presupuestos\Reglas;..\Modulos\Albaranes de cliente\Cliente;..\Modulos\Albaranes de cliente\Reglas;..\Modulos\Facturas de cliente\Cliente;..\Modulos\Facturas de cliente\Reglas;..\Modulos\Pedidos a proveedor\Cliente;..\Modulos\Pedidos a proveedor\Reglas;..\Modulos\Facturas de proveedor\Cliente;..\Modulos\Facturas de proveedor\Reglas;..\Modulos\Montajes\Reglas;..\Modulos\Montajes\Cliente;..\Modulos\Articulos\Cliente;..\Modulos\Articulos\Reglas;..\Modulos\Almacenes\Reglas;..\Modulos\Almacenes\Cliente;..\Modulos\Pagos\Reglas;..\Modulos\Pagos\Cliente;..\Modulos\Cuentas\Reglas;..\Modulos\Cuentas\Cliente;..\Modulos\Asientos\Reglas;..\Modulos\Asientos\Cliente;..\Modulos\Calendarios\Cliente;..\Modulos\Calendarios\Reglas
|
||||
Item2=$(DELPHI)\Lib\Debug;D:\PROYEC~1\COMPON~1\jcl\lib\D7\debug;..\..\..\Base;..\..\..\Servidor;..\..\Contactos\Cliente;..\..\Presupuestos\Cliente;..\..\..\Usuarios;..\..\Albaranes de cliente\Cliente;..\..\Documentos asociados;..\..\Pagos\Cliente;..\..\Intervalos\Cliente;..\..\Asientos\Cliente;..\..\Cuentas\Cliente
|
||||
Item3=$(DELPHI)\Lib\Debug;D:\PROYEC~1\COMPON~1\jcl\lib\D7\debug;..\..\..\Base;..\..\..\Servidor;..\..\Contactos\Cliente;..\..\Presupuestos\Cliente;..\..\..\Usuarios;..\..\Albaranes de cliente\Cliente;..\..\Documentos asociados;..\..\Pagos\Cliente;..\..\Intervalos\Cliente;..\..\Asientos\Cliente
|
||||
Item4=$(DELPHI)\Lib\Debug;D:\PROYEC~1\COMPON~1\jcl\lib\D7\debug;..\..\..\Base;..\..\..\Servidor;..\..\Contactos\Cliente;..\..\Presupuestos\Cliente;..\..\..\Usuarios;..\..\Albaranes de cliente\Cliente;..\..\Documentos asociados;..\..\Pagos\Cliente;..\..\Intervalos\Cliente
|
||||
@ -193,8 +204,8 @@ Count=1
|
||||
Item0=.\
|
||||
[HistoryLists\hlOutputDirectorry]
|
||||
Count=2
|
||||
Item0=..\Output\Cliente
|
||||
Item1=..\Output\Servidor
|
||||
Item0=..\Output\Servidor
|
||||
Item1=..\Output\Cliente
|
||||
[HistoryLists\hlBPLOutput]
|
||||
Count=3
|
||||
Item0=..\..\..\Output\Cliente
|
||||
@ -203,320 +214,3 @@ Item2=..\..\Output\Cliente
|
||||
[HistoryLists\hlDCPOutput]
|
||||
Count=1
|
||||
Item0=.\
|
||||
[Exception Log]
|
||||
EurekaLog Version=519
|
||||
Activate=0
|
||||
Activate Handle=1
|
||||
Save Log File=1
|
||||
Foreground Tab=0
|
||||
Freeze Activate=0
|
||||
Freeze Timeout=0
|
||||
Freeze Message=The application seems to be frozen.
|
||||
SMTP From=eurekalog@email.com
|
||||
SMTP Host=
|
||||
SMTP Port=25
|
||||
SMTP UserID=
|
||||
SMTP Password=
|
||||
Append to Log=0
|
||||
Show TerminateBtn=1
|
||||
TerminateBtn Operation=1
|
||||
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=1
|
||||
AutoCrashNumber=10
|
||||
AutoCrashMinutes=1
|
||||
WebURL=
|
||||
WebUserID=
|
||||
WebPassword=
|
||||
WebPort=0
|
||||
AttachedFiles=
|
||||
Count=0
|
||||
EMail Message Line Count=0
|
||||
loNoDuplicateErrors=0
|
||||
loAppendReproduceText=0
|
||||
loDeleteLogAtVersionChange=0
|
||||
loAddComputerNameInLogFileName=0
|
||||
loSaveModulesSection=1
|
||||
loSaveCPUSection=1
|
||||
soAppStartDate=1
|
||||
soAppName=1
|
||||
soAppVersionNumber=1
|
||||
soAppParameters=1
|
||||
soAppCompilationDate=1
|
||||
soExcDate=1
|
||||
soExcAddress=1
|
||||
soExcModule=1
|
||||
soExcType=1
|
||||
soExcMessage=1
|
||||
soActCtlsFormClass=1
|
||||
soActCtlsFormText=1
|
||||
soActCtlsControlClass=1
|
||||
soActCtlsControlText=1
|
||||
soCmpName=1
|
||||
soCmpUser=1
|
||||
soCmpTotalMemory=1
|
||||
soCmpFreeMemory=1
|
||||
soCmpTotalDisk=1
|
||||
soCmpFreeDisk=1
|
||||
soCmpSysUpTime=1
|
||||
soCmpProcessor=1
|
||||
soCmpDisplayMode=1
|
||||
soOSType=1
|
||||
soOSBuildN=1
|
||||
soOSUpdate=1
|
||||
soOSLanguage=1
|
||||
soNetIP=1
|
||||
soNetSubmask=1
|
||||
soNetGateway=1
|
||||
soNetDNS1=1
|
||||
soNetDNS2=1
|
||||
soNetDHCP=1
|
||||
sndShowSendDialog=1
|
||||
sndShowSuccessFailureMsg=0
|
||||
sndSendEntireLog=0
|
||||
sndSendXMLLogCopy=0
|
||||
sndSendScreenshot=0
|
||||
sndUseOnlyActiveWindow=0
|
||||
sndSendLastHTMLPage=1
|
||||
sndSendInSeparatedThread=0
|
||||
sndAddDateInFileName=0
|
||||
sndCompressAllFiles=0
|
||||
edoShowExceptionDialog=1
|
||||
edoSendEmailChecked=1
|
||||
edoAttachScreenshotChecked=1
|
||||
edoShowCopyToClipOption=1
|
||||
edoShowDetailsButton=1
|
||||
edoShowInDetailedMode=0
|
||||
edoShowInTopMostMode=0
|
||||
edoUseEurekaLogLookAndFeel=1
|
||||
csoShowDLLs=1
|
||||
csoShowBPLs=1
|
||||
csoShowBorlandThreads=1
|
||||
csoShowWindowsThreads=1
|
||||
csoShowProcedureOffset=0
|
||||
boActivateCrashDetection=0
|
||||
boPauseBorlandThreads=0
|
||||
boDoNotPauseMainThread=0
|
||||
boPauseWindowsThreads=0
|
||||
boUseMainModuleOptions=1
|
||||
boCopyLogInCaseOfError=1
|
||||
boSaveCompressedCopyInCaseOfError=0
|
||||
Count mtInformationMsgCaption=1
|
||||
mtInformationMsgCaption0="Information."
|
||||
Count mtQuestionMsgCaption=1
|
||||
mtQuestionMsgCaption0="Question."
|
||||
Count mtDialog_Caption=1
|
||||
mtDialog_Caption0="Error."
|
||||
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_CPUCaption=1
|
||||
mtDialog_CPUCaption0="CPU"
|
||||
Count mtDialog_CPUHeader=1
|
||||
mtDialog_CPUHeader0="CPU Information"
|
||||
Count mtDialog_CustomDataCaption=1
|
||||
mtDialog_CustomDataCaption0="Other"
|
||||
Count mtDialog_CustomDataHeader=1
|
||||
mtDialog_CustomDataHeader0="Other 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_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 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_ExcHeader=1
|
||||
mtLog_ExcHeader0="Exception"
|
||||
Count mtLog_ExcDate=1
|
||||
mtLog_ExcDate0="Date"
|
||||
Count mtLog_ExcAddress=1
|
||||
mtLog_ExcAddress0="Address"
|
||||
Count mtLog_ExcModule=1
|
||||
mtLog_ExcModule0="Module"
|
||||
Count mtLog_ExcType=1
|
||||
mtLog_ExcType0="Type"
|
||||
Count mtLog_ExcMessage=1
|
||||
mtLog_ExcMessage0="Message"
|
||||
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_CmpUser=1
|
||||
mtLog_CmpUser0="User"
|
||||
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_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_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 mtSendDialog_Caption=1
|
||||
mtSendDialog_Caption0="Send."
|
||||
Count mtSendDialog_Message=1
|
||||
mtSendDialog_Message0="Message"
|
||||
Count mtSendDialog_Resolving=1
|
||||
mtSendDialog_Resolving0="Resolving DNS..."
|
||||
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 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 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."
|
||||
|
||||
|
||||
|
||||
Binary file not shown.
Binary file not shown.
@ -11,10 +11,10 @@ BRCC = $(ROOT)\bin\brcc32.exe $**
|
||||
#------------------------------------------------------------------------------
|
||||
PROJECTS = DataAbstract_D7.bpl BaseD7.bpl Usuarios.bpl Configuracion.bpl \
|
||||
Contactos.bpl Intervalos.bpl DocumentosAsociados.bpl Cuentas.bpl Almacenes.bpl \
|
||||
Presupuestos_Intf.bpl Montajes_Intf.bpl Presupuestos.bpl AlbaranesCliente.bpl \
|
||||
PedidosProveedor.bpl PedidosMontaje.bpl Articulos.bpl ArticulosMontaje.bpl \
|
||||
Montajes_Impl.bpl FacturasCliente.bpl FacturasProveedor.bpl Asientos.bpl \
|
||||
Pagos.bpl Calendarios.bpl FactuGES.exe FactuGES_Server.exe
|
||||
Presupuestos_Intf.bpl Montajes_Intf.bpl Presupuestos.bpl Asientos.bpl Pagos.bpl \
|
||||
AlbaranesCliente.bpl PedidosProveedor.bpl PedidosMontaje.bpl Articulos.bpl \
|
||||
ArticulosMontaje.bpl Montajes_Impl.bpl FacturasCliente.bpl \
|
||||
FacturasProveedor.bpl Calendarios.bpl FactuGES.exe FactuGES_Server.exe
|
||||
#------------------------------------------------------------------------------
|
||||
default: $(PROJECTS)
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
Binary file not shown.
@ -683,4 +683,113 @@ object dmAlbaranesCliente: TdmAlbaranesCliente
|
||||
Left = 48
|
||||
Top = 152
|
||||
end
|
||||
object tbl_ListaAnosAlbaranes: TDACDSDataTable
|
||||
RemoteUpdatesOptions = []
|
||||
Fields = <
|
||||
item
|
||||
Name = 'ANO'
|
||||
DataType = datString
|
||||
Size = 254
|
||||
BlobType = dabtUnknown
|
||||
DisplayWidth = 0
|
||||
Alignment = taLeftJustify
|
||||
InPrimaryKey = False
|
||||
Calculated = False
|
||||
Lookup = False
|
||||
LookupCache = False
|
||||
end>
|
||||
Params = <>
|
||||
MasterMappingMode = mmDataRequest
|
||||
StreamingOptions = [soDisableEventsWhileStreaming]
|
||||
SchemaCall.MethodName = 'GetDatasetSchema'
|
||||
SchemaCall.Params = <
|
||||
item
|
||||
Name = 'Result'
|
||||
ParamType = fResult
|
||||
DataType = rtBinary
|
||||
end
|
||||
item
|
||||
Name = 'aDatasetName'
|
||||
ParamType = fIn
|
||||
DataType = rtString
|
||||
Value = 'ListaAnosAlbaranes'
|
||||
end>
|
||||
DataRequestCall.MethodName = 'GetDatasetDataEx'
|
||||
DataRequestCall.Params = <
|
||||
item
|
||||
Name = 'Result'
|
||||
ParamType = fResult
|
||||
DataType = rtBinary
|
||||
end
|
||||
item
|
||||
Name = 'DatasetName'
|
||||
ParamType = fIn
|
||||
DataType = rtString
|
||||
Value = 'ListaAnosAlbaranes'
|
||||
end
|
||||
item
|
||||
Name = 'Params'
|
||||
ParamType = fIn
|
||||
DataType = rtUserDefined
|
||||
UserClassName = 'TDADatasetParamArray'
|
||||
end
|
||||
item
|
||||
Name = 'UserFilter'
|
||||
ParamType = fIn
|
||||
DataType = rtString
|
||||
Value = ''
|
||||
end
|
||||
item
|
||||
Name = 'IncludeSchema'
|
||||
ParamType = fIn
|
||||
DataType = rtBoolean
|
||||
Value = False
|
||||
end
|
||||
item
|
||||
Name = 'MaxRecords'
|
||||
ParamType = fIn
|
||||
DataType = rtInteger
|
||||
Value = -1
|
||||
end>
|
||||
DataUpdateCall.MethodName = 'UpdateData'
|
||||
DataUpdateCall.Params = <
|
||||
item
|
||||
Name = 'Result'
|
||||
ParamType = fResult
|
||||
DataType = rtBinary
|
||||
end
|
||||
item
|
||||
Name = 'Delta'
|
||||
ParamType = fIn
|
||||
DataType = rtBinary
|
||||
end>
|
||||
ScriptCall.MethodName = 'GetDatasetScripts'
|
||||
ScriptCall.Params = <
|
||||
item
|
||||
Name = 'Result'
|
||||
ParamType = fResult
|
||||
DataType = rtString
|
||||
Value = ''
|
||||
end
|
||||
item
|
||||
Name = 'DatasetNames'
|
||||
ParamType = fIn
|
||||
DataType = rtString
|
||||
Value = 'ListaAnosAlbaranes'
|
||||
end>
|
||||
ReadOnly = False
|
||||
RemoteService = RORemoteService
|
||||
Adapter = dmBase.DABINAdapter
|
||||
DetailOptions = [dtCascadeOpenClose, dtCascadeApplyUpdates, dtAutoFetch, dtCascadeDelete, dtCascadeUpdate, dtDisableLogOfCascadeDeletes, dtDisableLogOfCascadeUpdates, dtIncludeInAllInOneFetch]
|
||||
MasterOptions = [moCascadeOpenClose, moCascadeApplyUpdates, moCascadeDelete, moCascadeUpdate, moDisableLogOfCascadeDeletes, moDisableLogOfCascadeUpdates]
|
||||
LogicalName = 'ListaAnosAlbaranes'
|
||||
IndexDefs = <>
|
||||
Left = 184
|
||||
Top = 200
|
||||
end
|
||||
object ds_ListaAnosAlbaranes: TDADataSource
|
||||
DataTable = tbl_ListaAnosAlbaranes
|
||||
Left = 184
|
||||
Top = 152
|
||||
end
|
||||
end
|
||||
|
||||
@ -17,6 +17,8 @@ type
|
||||
ds_DetallesAlbaranCliente: TDADataSource;
|
||||
DADesigntimeCall1: TDADesigntimeCall;
|
||||
RORemoteService2: TRORemoteService;
|
||||
tbl_ListaAnosAlbaranes: TDACDSDataTable;
|
||||
ds_ListaAnosAlbaranes: TDADataSource;
|
||||
procedure DAClientDataModuleCreate(Sender: TObject);
|
||||
private
|
||||
{ Private declarations }
|
||||
@ -31,6 +33,9 @@ type
|
||||
function PuedoEliminarAlbaran (CodigoAlbaran : Integer) : Boolean;
|
||||
function GetItemsSeleccionados(ASource : IBizAlbaranesCliente): IBizAlbaranesCliente;
|
||||
procedure CambiarSituacion(AAlbaran: IBizAlbaranesCliente);
|
||||
|
||||
function DarListaAnosAlbaranes: TStringList;
|
||||
procedure FiltrarAno(AAlbaranes: IBizAlbaranesCliente; AWhereDataTable: String; const Ano: String);
|
||||
end;
|
||||
|
||||
var
|
||||
@ -41,7 +46,7 @@ implementation
|
||||
{$R *.DFM}
|
||||
|
||||
uses
|
||||
Forms, Controls, uDataTableUtils, uBizContacto, uDataModulePagos,
|
||||
Forms, Controls, cxControls, uDataTableUtils, uBizContacto, uDataModulePagos,
|
||||
uDataModuleContactos, uDataModuleBase, schAlbaranesClienteClient_Intf,
|
||||
uEditorPreview, uROTypes, uDBSelectionList, uDAInterfaces;
|
||||
|
||||
@ -246,6 +251,55 @@ begin
|
||||
end;
|
||||
end;
|
||||
|
||||
function TdmAlbaranesCliente.DarListaAnosAlbaranes: TStringList;
|
||||
var
|
||||
AListaAnos: TStringList;
|
||||
begin
|
||||
AListaAnos := TStringList.Create;
|
||||
ShowHourglassCursor;
|
||||
try
|
||||
with tbl_ListaAnosAlbaranes do
|
||||
begin
|
||||
Open;
|
||||
First;
|
||||
while not eof do
|
||||
begin
|
||||
AListaAnos.Add(Format('%s=%s', [Fields[0].AsString, Fields[0].AsString]));
|
||||
Next;
|
||||
end;
|
||||
Close;
|
||||
end;
|
||||
Result := AListaAnos;
|
||||
finally
|
||||
HideHourglassCursor;
|
||||
end;
|
||||
end;
|
||||
|
||||
procedure TdmAlbaranesCliente.FiltrarAno(AAlbaranes: IBizAlbaranesCliente; AWhereDataTable: String; const Ano: String);
|
||||
var
|
||||
FechaIni: String;
|
||||
FechaFin: String;
|
||||
|
||||
begin
|
||||
AAlbaranes.DataTable.Where.Clear;
|
||||
AAlbaranes.DataTable.Where.AddText(AWhereDataTable);
|
||||
|
||||
if (Ano <> 'Todos') then
|
||||
begin
|
||||
// Filtrar los presupuestos actuales por años
|
||||
FechaIni := '01.01.' + Ano;
|
||||
FechaFin := '31.12.' + Ano;
|
||||
with AAlbaranes.DataTable.Where do
|
||||
begin
|
||||
if NotEmpty then
|
||||
AddOperator(opAND);
|
||||
AddCondition(fld_AlbaranClienteFECHAALBARAN, cMajorOrEqual, FechaIni);
|
||||
AddOperator(opAND);
|
||||
AddCondition(fld_AlbaranClienteFECHAALBARAN, cLessOrEqual, FechaFin);
|
||||
end;
|
||||
end;
|
||||
end;
|
||||
|
||||
initialization
|
||||
dmAlbaranesCliente := TdmAlbaranesCliente.Create(nil);
|
||||
|
||||
|
||||
@ -48,7 +48,15 @@ inherited fEditorAlbaranesCliente: TfEditorAlbaranesCliente
|
||||
end
|
||||
end
|
||||
inherited tbxFiltro: TTBXToolbar
|
||||
Left = 505
|
||||
inherited lblAno: TTBXLabelItem
|
||||
Visible = True
|
||||
end
|
||||
inherited cbxListaAnos: TTBXComboBoxItem
|
||||
Visible = True
|
||||
end
|
||||
inherited sepAno: TTBXSeparatorItem
|
||||
Visible = True
|
||||
end
|
||||
end
|
||||
end
|
||||
inherited StatusBar: TStatusBar
|
||||
|
||||
@ -34,14 +34,19 @@ type
|
||||
procedure frViewBarraSeleccionactCancelarExecute(Sender: TObject);
|
||||
procedure actPagarExecute(Sender: TObject);
|
||||
procedure edtFechaFiltro1PropertiesEditValueChanged(Sender: TObject);
|
||||
procedure OnListaAnosChange(Sender: TObject; const Text: string);
|
||||
procedure FormShow(Sender: TObject);
|
||||
|
||||
private
|
||||
FAlbaranesCliente: IBizAlbaranesCliente;
|
||||
|
||||
protected
|
||||
function GetAlbaranesCliente: IBizAlbaranesCliente;
|
||||
procedure SetAlbaranesCliente(const Value: IBizAlbaranesCliente);
|
||||
procedure SetViewGrid(const Value: IViewGrid); override;
|
||||
function GetSelectionBarVisible: Boolean;
|
||||
procedure SetSelectionBarVisible(const Value: Boolean);
|
||||
|
||||
public
|
||||
constructor Create(AOwner: TComponent); override;
|
||||
destructor Destroy; override;
|
||||
@ -130,13 +135,20 @@ begin
|
||||
Result := FAlbaranesCliente;
|
||||
end;
|
||||
|
||||
procedure TfEditorAlbaranesCliente.SetAlbaranesCliente(const Value:
|
||||
IBizAlbaranesCliente);
|
||||
procedure TfEditorAlbaranesCliente.SetAlbaranesCliente(const Value: IBizAlbaranesCliente);
|
||||
begin
|
||||
FAlbaranesCliente := Value;
|
||||
dsDataTable.DataTable := FAlbaranesCliente.DataTable;
|
||||
if Assigned(ViewGrid) then
|
||||
(ViewGrid as IViewAlbaranesCliente).AlbaranesCliente := AlbaranesCliente;
|
||||
|
||||
if Assigned(FAlbaranesCliente) 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))
|
||||
WhereDataTable := FAlbaranesCliente.DataTable.Where.Clause;
|
||||
|
||||
dsDataTable.DataTable := FAlbaranesCliente.DataTable;
|
||||
if Assigned(ViewGrid) then
|
||||
(ViewGrid as IViewAlbaranesCliente).AlbaranesCliente := AlbaranesCliente;
|
||||
end;
|
||||
end;
|
||||
|
||||
procedure TfEditorAlbaranesCliente.SetViewGrid(const Value: IViewGrid);
|
||||
@ -201,6 +213,21 @@ begin
|
||||
}
|
||||
end;
|
||||
|
||||
procedure TfEditorAlbaranesCliente.FormShow(Sender: TObject);
|
||||
begin
|
||||
ListaAnos := dmAlbaranesCliente.DarListaAnosAlbaranes;
|
||||
cbxListaAnos.OnChange := OnListaAnosChange; //OJO SIEMPRE ANTES DEL INHERITED
|
||||
|
||||
inherited;
|
||||
end;
|
||||
|
||||
procedure TfEditorAlbaranesCliente.OnListaAnosChange(Sender: TObject; const Text: string);
|
||||
begin
|
||||
dmAlbaranesCliente.FiltrarAno(AlbaranesCliente, WhereDataTable, Text);
|
||||
if AlbaranesCliente.DataTable.Active then
|
||||
actRefrescar.Execute;
|
||||
end;
|
||||
|
||||
initialization
|
||||
RegisterEditor(IBizAlbaranesCliente, ShowEditorAlbaranesCliente, etItems);
|
||||
RegisterEditor(IBizAlbaranesCliente, ShowSelectEditorAlbaranesCliente, etSelectItems);
|
||||
|
||||
@ -9,16 +9,18 @@ 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_DarReferenciaAlbaran = '{35F98298-F696-46BE-9D56-50D87C52A2C1}';
|
||||
RID_AlbaranCliente = '{14578616-F521-4BA3-A7E9-BB99BA3FA09C}';
|
||||
RID_AlbaranDePresupuesto = '{116AED58-1A39-4230-8961-B965FB7B0697}';
|
||||
RID_DetallesAlbaranCliente = '{9C31D267-5CA0-4776-9B6A-32E4633153D9}';
|
||||
RID_AlbaranCliente_RefreshDataset = '{22F08733-B02A-4130-84ED-B1E32F9F18DF}';
|
||||
RID_InformeCabeceraAlbaranPago = '{D018D751-1373-4A7C-9E2F-BFD097EC6967}';
|
||||
RID_InformeDetallesAlbaranPago = '{61D6092F-B71A-40E6-9601-980B85F71C86}';
|
||||
RID_DarSumaImportes = '{6AD3F242-7984-41B6-8F0F-CEAEF113373A}';
|
||||
RID_ListaAnosAlbaranes = '{633AA7F3-9231-41FD-9AFA-20F135BF0015}';
|
||||
RID_DarReferenciaAlbaran = '{2A1DC102-86E4-4ED4-99B3-63A0A8ADF44E}';
|
||||
RID_AlbaranCliente = '{D7B2EDBF-3686-4A8C-910A-B4CFBE86FA03}';
|
||||
RID_AlbaranDePresupuesto = '{30A07021-CB00-471E-933D-C775663D9916}';
|
||||
RID_DetallesAlbaranCliente = '{7462D89E-A291-4EEB-86A1-466E9CA91AB2}';
|
||||
RID_AlbaranCliente_RefreshDataset = '{937F0EE6-A236-4A40-AC09-EA6C414C708C}';
|
||||
RID_InformeCabeceraAlbaranPago = '{56F3725F-E457-4DC3-AE69-F6B955C4D525}';
|
||||
RID_InformeDetallesAlbaranPago = '{1023528D-E1A8-4850-9C26-F0AE36E755D0}';
|
||||
RID_DarSumaImportes = '{0183F8AD-2381-4ED5-931F-546D5C269857}';
|
||||
|
||||
{ Data table names }
|
||||
nme_ListaAnosAlbaranes = 'ListaAnosAlbaranes';
|
||||
nme_DarReferenciaAlbaran = 'DarReferenciaAlbaran';
|
||||
nme_AlbaranCliente = 'AlbaranCliente';
|
||||
nme_AlbaranDePresupuesto = 'AlbaranDePresupuesto';
|
||||
@ -28,6 +30,12 @@ const
|
||||
nme_InformeDetallesAlbaranPago = 'InformeDetallesAlbaranPago';
|
||||
nme_DarSumaImportes = 'DarSumaImportes';
|
||||
|
||||
{ ListaAnosAlbaranes fields }
|
||||
fld_ListaAnosAlbaranesANO = 'ANO';
|
||||
|
||||
{ ListaAnosAlbaranes field indexes }
|
||||
idx_ListaAnosAlbaranesANO = 0;
|
||||
|
||||
{ DarReferenciaAlbaran fields }
|
||||
fld_DarReferenciaAlbaranREFERENCIA = 'REFERENCIA';
|
||||
|
||||
@ -211,9 +219,38 @@ const
|
||||
idx_DarSumaImportesIMPORTETOTAL = 2;
|
||||
|
||||
type
|
||||
{ IListaAnosAlbaranes }
|
||||
IListaAnosAlbaranes = interface(IDAStronglyTypedDataTable)
|
||||
['{D7D4C0A5-1F72-468B-A5FB-C81C33C826F2}']
|
||||
{ Property getters and setters }
|
||||
function GetANOValue: String;
|
||||
procedure SetANOValue(const aValue: String);
|
||||
|
||||
|
||||
{ Properties }
|
||||
property ANO: String read GetANOValue write SetANOValue;
|
||||
end;
|
||||
|
||||
{ TListaAnosAlbaranesDataTableRules }
|
||||
TListaAnosAlbaranesDataTableRules = class(TDADataTableRules, IListaAnosAlbaranes)
|
||||
private
|
||||
protected
|
||||
{ Property getters and setters }
|
||||
function GetANOValue: String; virtual;
|
||||
procedure SetANOValue(const aValue: String); virtual;
|
||||
|
||||
{ Properties }
|
||||
property ANO: String read GetANOValue write SetANOValue;
|
||||
|
||||
public
|
||||
constructor Create(aDataTable: TDADataTable); override;
|
||||
destructor Destroy; override;
|
||||
|
||||
end;
|
||||
|
||||
{ IDarReferenciaAlbaran }
|
||||
IDarReferenciaAlbaran = interface(IDAStronglyTypedDataTable)
|
||||
['{C6FEC801-58D9-4332-B152-41E118F9B63A}']
|
||||
['{631B04FF-3196-4DB1-8266-43D0CCA14B6C}']
|
||||
{ Property getters and setters }
|
||||
function GetREFERENCIAValue: String;
|
||||
procedure SetREFERENCIAValue(const aValue: String);
|
||||
@ -242,7 +279,7 @@ type
|
||||
|
||||
{ IAlbaranCliente }
|
||||
IAlbaranCliente = interface(IDAStronglyTypedDataTable)
|
||||
['{642833FA-4649-486C-89C8-B9728500F01D}']
|
||||
['{2E3EA9B3-B1D2-432C-A31E-4BBDDD644872}']
|
||||
{ Property getters and setters }
|
||||
function GetCODIGOEMPRESAValue: Integer;
|
||||
procedure SetCODIGOEMPRESAValue(const aValue: Integer);
|
||||
@ -385,7 +422,7 @@ type
|
||||
|
||||
{ IAlbaranDePresupuesto }
|
||||
IAlbaranDePresupuesto = interface(IDAStronglyTypedDataTable)
|
||||
['{78FBFEFF-5738-4B40-819A-3F70EED86124}']
|
||||
['{8CD58BB1-A4D0-4DF4-8E30-969F1BACC961}']
|
||||
{ Property getters and setters }
|
||||
function GetCODIGOValue: Integer;
|
||||
procedure SetCODIGOValue(const aValue: Integer);
|
||||
@ -414,7 +451,7 @@ type
|
||||
|
||||
{ IDetallesAlbaranCliente }
|
||||
IDetallesAlbaranCliente = interface(IDAStronglyTypedDataTable)
|
||||
['{D9E720C6-134F-4020-975B-7EF111D57933}']
|
||||
['{675AE33F-D64C-47AD-A206-64BFAA11FCD7}']
|
||||
{ Property getters and setters }
|
||||
function GetCODIGOALBARANValue: Integer;
|
||||
procedure SetCODIGOALBARANValue(const aValue: Integer);
|
||||
@ -503,7 +540,7 @@ type
|
||||
|
||||
{ IAlbaranCliente_RefreshDataset }
|
||||
IAlbaranCliente_RefreshDataset = interface(IDAStronglyTypedDataTable)
|
||||
['{3832562D-0F4D-4243-A963-3B59CB9D2B05}']
|
||||
['{37351A63-CE65-4762-B897-5DE5998CAB64}']
|
||||
{ Property getters and setters }
|
||||
function GetCODIGOValue: Integer;
|
||||
procedure SetCODIGOValue(const aValue: Integer);
|
||||
@ -550,7 +587,7 @@ type
|
||||
|
||||
{ IInformeCabeceraAlbaranPago }
|
||||
IInformeCabeceraAlbaranPago = interface(IDAStronglyTypedDataTable)
|
||||
['{7CEBCE95-FD7B-46D1-844E-70F47FC60D0E}']
|
||||
['{173C44D2-12F3-4383-86A6-29107BF40AF6}']
|
||||
{ Property getters and setters }
|
||||
function GetCODIGOEMPRESAValue: Integer;
|
||||
procedure SetCODIGOEMPRESAValue(const aValue: Integer);
|
||||
@ -735,7 +772,7 @@ type
|
||||
|
||||
{ IInformeDetallesAlbaranPago }
|
||||
IInformeDetallesAlbaranPago = interface(IDAStronglyTypedDataTable)
|
||||
['{2C1837CB-F884-46C6-BD8E-59A6AD8670A8}']
|
||||
['{92CC3EF0-B88D-4396-8134-AD775CD2E583}']
|
||||
{ Property getters and setters }
|
||||
function GetCODIGOALBARANValue: Integer;
|
||||
procedure SetCODIGOALBARANValue(const aValue: Integer);
|
||||
@ -809,7 +846,7 @@ type
|
||||
}
|
||||
{ IDarSumaImportes }
|
||||
IDarSumaImportes = interface(IDAStronglyTypedDataTable)
|
||||
['{C49AE35E-D0D0-4D17-80C9-9E996E212A8D}']
|
||||
['{0A03D6E5-29C3-4B3C-8004-8D48A433FB36}']
|
||||
{ Property getters and setters }
|
||||
function GetBASEIMPONIBLEValue: Float;
|
||||
procedure SetBASEIMPONIBLEValue(const aValue: Float);
|
||||
@ -852,6 +889,28 @@ implementation
|
||||
|
||||
uses Variants;
|
||||
|
||||
{ TListaAnosAlbaranesDataTableRules }
|
||||
constructor TListaAnosAlbaranesDataTableRules.Create(aDataTable: TDADataTable);
|
||||
begin
|
||||
inherited;
|
||||
end;
|
||||
|
||||
destructor TListaAnosAlbaranesDataTableRules.Destroy;
|
||||
begin
|
||||
inherited;
|
||||
end;
|
||||
|
||||
function TListaAnosAlbaranesDataTableRules.GetANOValue: String;
|
||||
begin
|
||||
result := DataTable.Fields[idx_ListaAnosAlbaranesANO].AsString;
|
||||
end;
|
||||
|
||||
procedure TListaAnosAlbaranesDataTableRules.SetANOValue(const aValue: String);
|
||||
begin
|
||||
DataTable.Fields[idx_ListaAnosAlbaranesANO].AsString := aValue;
|
||||
end;
|
||||
|
||||
|
||||
{ TDarReferenciaAlbaranDataTableRules }
|
||||
constructor TDarReferenciaAlbaranDataTableRules.Create(aDataTable: TDADataTable);
|
||||
begin
|
||||
@ -1703,6 +1762,7 @@ end;
|
||||
|
||||
|
||||
initialization
|
||||
RegisterDataTableRules(RID_ListaAnosAlbaranes, TListaAnosAlbaranesDataTableRules);
|
||||
RegisterDataTableRules(RID_DarReferenciaAlbaran, TDarReferenciaAlbaranDataTableRules);
|
||||
RegisterDataTableRules(RID_AlbaranCliente, TAlbaranClienteDataTableRules);
|
||||
RegisterDataTableRules(RID_AlbaranDePresupuesto, TAlbaranDePresupuestoDataTableRules);
|
||||
|
||||
@ -9,19 +9,49 @@ 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_DarReferenciaAlbaranDelta = '{D9EAC03F-B4A2-41B9-A2B2-7CF11F780D28}';
|
||||
RID_AlbaranClienteDelta = '{8E3B55C2-3828-41E4-8AEA-F0D487EDD873}';
|
||||
RID_AlbaranDePresupuestoDelta = '{1D24D93A-7A20-4DC4-ACE3-F9E644618634}';
|
||||
RID_DetallesAlbaranClienteDelta = '{91443B47-343B-46EC-85F0-19C431B1F56B}';
|
||||
RID_AlbaranCliente_RefreshDatasetDelta = '{7857A2CE-B06F-491A-BB36-844139B9125E}';
|
||||
RID_InformeCabeceraAlbaranPagoDelta = '{B87026ED-31B8-4320-8908-DE7DED600AC9}';
|
||||
RID_InformeDetallesAlbaranPagoDelta = '{0698DC8F-4317-451B-8770-F18535997036}';
|
||||
RID_DarSumaImportesDelta = '{DFDB0CB4-85D3-449B-B350-EC3758E21B72}';
|
||||
RID_ListaAnosAlbaranesDelta = '{5C2DB703-C887-4F77-A9DC-11DA0CF6FE4E}';
|
||||
RID_DarReferenciaAlbaranDelta = '{D832A4B5-6FDD-49E0-AE5F-306375C415AD}';
|
||||
RID_AlbaranClienteDelta = '{5DFFE549-E998-435B-BB5C-F859B970C506}';
|
||||
RID_AlbaranDePresupuestoDelta = '{B5AB03E8-D48D-4BA2-A1E9-9CD0D0907C62}';
|
||||
RID_DetallesAlbaranClienteDelta = '{1502B47E-54CF-4FCD-8CC2-48C36D9EF53A}';
|
||||
RID_AlbaranCliente_RefreshDatasetDelta = '{5E7557E0-2251-46D8-83CF-818EC119C817}';
|
||||
RID_InformeCabeceraAlbaranPagoDelta = '{51A960DD-CBCF-4151-9471-61453103C2EF}';
|
||||
RID_InformeDetallesAlbaranPagoDelta = '{FA30D0F8-1FFC-4FAD-8C8B-CA8553D877EA}';
|
||||
RID_DarSumaImportesDelta = '{50AE6D16-89E0-4C6A-9A75-62FE055859AF}';
|
||||
|
||||
type
|
||||
{ IListaAnosAlbaranesDelta }
|
||||
IListaAnosAlbaranesDelta = interface(IListaAnosAlbaranes)
|
||||
['{5C2DB703-C887-4F77-A9DC-11DA0CF6FE4E}']
|
||||
{ Property getters and setters }
|
||||
function GetOldANOValue : String;
|
||||
|
||||
{ Properties }
|
||||
property OldANO : String read GetOldANOValue;
|
||||
end;
|
||||
|
||||
{ TListaAnosAlbaranesBusinessProcessorRules }
|
||||
TListaAnosAlbaranesBusinessProcessorRules = class(TDABusinessProcessorRules, IListaAnosAlbaranes, IListaAnosAlbaranesDelta)
|
||||
private
|
||||
protected
|
||||
{ Property getters and setters }
|
||||
function GetANOValue: String; virtual;
|
||||
function GetOldANOValue: String; virtual;
|
||||
procedure SetANOValue(const aValue: String); virtual;
|
||||
|
||||
{ Properties }
|
||||
property ANO : String read GetANOValue write SetANOValue;
|
||||
property OldANO : String read GetOldANOValue;
|
||||
|
||||
public
|
||||
constructor Create(aBusinessProcessor: TDABusinessProcessor); override;
|
||||
destructor Destroy; override;
|
||||
|
||||
end;
|
||||
|
||||
{ IDarReferenciaAlbaranDelta }
|
||||
IDarReferenciaAlbaranDelta = interface(IDarReferenciaAlbaran)
|
||||
['{D9EAC03F-B4A2-41B9-A2B2-7CF11F780D28}']
|
||||
['{D832A4B5-6FDD-49E0-AE5F-306375C415AD}']
|
||||
{ Property getters and setters }
|
||||
function GetOldREFERENCIAValue : String;
|
||||
|
||||
@ -50,7 +80,7 @@ type
|
||||
|
||||
{ IAlbaranClienteDelta }
|
||||
IAlbaranClienteDelta = interface(IAlbaranCliente)
|
||||
['{8E3B55C2-3828-41E4-8AEA-F0D487EDD873}']
|
||||
['{5DFFE549-E998-435B-BB5C-F859B970C506}']
|
||||
{ Property getters and setters }
|
||||
function GetOldCODIGOEMPRESAValue : Integer;
|
||||
function GetOldCODIGOValue : Integer;
|
||||
@ -212,7 +242,7 @@ type
|
||||
|
||||
{ IAlbaranDePresupuestoDelta }
|
||||
IAlbaranDePresupuestoDelta = interface(IAlbaranDePresupuesto)
|
||||
['{1D24D93A-7A20-4DC4-ACE3-F9E644618634}']
|
||||
['{B5AB03E8-D48D-4BA2-A1E9-9CD0D0907C62}']
|
||||
{ Property getters and setters }
|
||||
function GetOldCODIGOValue : Integer;
|
||||
|
||||
@ -241,7 +271,7 @@ type
|
||||
|
||||
{ IDetallesAlbaranClienteDelta }
|
||||
IDetallesAlbaranClienteDelta = interface(IDetallesAlbaranCliente)
|
||||
['{91443B47-343B-46EC-85F0-19C431B1F56B}']
|
||||
['{1502B47E-54CF-4FCD-8CC2-48C36D9EF53A}']
|
||||
{ Property getters and setters }
|
||||
function GetOldCODIGOALBARANValue : Integer;
|
||||
function GetOldNUMCONCEPTOValue : Integer;
|
||||
@ -340,7 +370,7 @@ type
|
||||
|
||||
{ IAlbaranCliente_RefreshDatasetDelta }
|
||||
IAlbaranCliente_RefreshDatasetDelta = interface(IAlbaranCliente_RefreshDataset)
|
||||
['{7857A2CE-B06F-491A-BB36-844139B9125E}']
|
||||
['{5E7557E0-2251-46D8-83CF-818EC119C817}']
|
||||
{ Property getters and setters }
|
||||
function GetOldCODIGOValue : Integer;
|
||||
function GetOldNOMBREValue : String;
|
||||
@ -390,7 +420,7 @@ type
|
||||
|
||||
{ IInformeCabeceraAlbaranPagoDelta }
|
||||
IInformeCabeceraAlbaranPagoDelta = interface(IInformeCabeceraAlbaranPago)
|
||||
['{B87026ED-31B8-4320-8908-DE7DED600AC9}']
|
||||
['{51A960DD-CBCF-4151-9471-61453103C2EF}']
|
||||
{ Property getters and setters }
|
||||
function GetOldCODIGOEMPRESAValue : Integer;
|
||||
function GetOldCODIGOValue : Integer;
|
||||
@ -601,7 +631,7 @@ type
|
||||
|
||||
{ IInformeDetallesAlbaranPagoDelta }
|
||||
IInformeDetallesAlbaranPagoDelta = interface(IInformeDetallesAlbaranPago)
|
||||
['{0698DC8F-4317-451B-8770-F18535997036}']
|
||||
['{FA30D0F8-1FFC-4FAD-8C8B-CA8553D877EA}']
|
||||
{ Property getters and setters }
|
||||
function GetOldCODIGOALBARANValue : Integer;
|
||||
function GetOldNUMCONCEPTOValue : Integer;
|
||||
@ -679,7 +709,7 @@ type
|
||||
|
||||
{ IDarSumaImportesDelta }
|
||||
IDarSumaImportesDelta = interface(IDarSumaImportes)
|
||||
['{DFDB0CB4-85D3-449B-B350-EC3758E21B72}']
|
||||
['{50AE6D16-89E0-4C6A-9A75-62FE055859AF}']
|
||||
{ Property getters and setters }
|
||||
function GetOldBASEIMPONIBLEValue : Float;
|
||||
function GetOldIMPORTEIVAValue : Float;
|
||||
@ -725,6 +755,33 @@ implementation
|
||||
uses
|
||||
Variants, uROBinaryHelpers;
|
||||
|
||||
{ TListaAnosAlbaranesBusinessProcessorRules }
|
||||
constructor TListaAnosAlbaranesBusinessProcessorRules.Create(aBusinessProcessor: TDABusinessProcessor);
|
||||
begin
|
||||
inherited;
|
||||
end;
|
||||
|
||||
destructor TListaAnosAlbaranesBusinessProcessorRules.Destroy;
|
||||
begin
|
||||
inherited;
|
||||
end;
|
||||
|
||||
function TListaAnosAlbaranesBusinessProcessorRules.GetANOValue: String;
|
||||
begin
|
||||
result := BusinessProcessor.CurrentChange.NewValueByName[fld_ListaAnosAlbaranesANO];
|
||||
end;
|
||||
|
||||
function TListaAnosAlbaranesBusinessProcessorRules.GetOldANOValue: String;
|
||||
begin
|
||||
result := BusinessProcessor.CurrentChange.OldValueByName[fld_ListaAnosAlbaranesANO];
|
||||
end;
|
||||
|
||||
procedure TListaAnosAlbaranesBusinessProcessorRules.SetANOValue(const aValue: String);
|
||||
begin
|
||||
BusinessProcessor.CurrentChange.NewValueByName[fld_ListaAnosAlbaranesANO] := aValue;
|
||||
end;
|
||||
|
||||
|
||||
{ TDarReferenciaAlbaranBusinessProcessorRules }
|
||||
constructor TDarReferenciaAlbaranBusinessProcessorRules.Create(aBusinessProcessor: TDABusinessProcessor);
|
||||
begin
|
||||
@ -1955,6 +2012,7 @@ end;
|
||||
|
||||
|
||||
initialization
|
||||
RegisterBusinessProcessorRules(RID_ListaAnosAlbaranesDelta, TListaAnosAlbaranesBusinessProcessorRules);
|
||||
RegisterBusinessProcessorRules(RID_DarReferenciaAlbaranDelta, TDarReferenciaAlbaranBusinessProcessorRules);
|
||||
RegisterBusinessProcessorRules(RID_AlbaranClienteDelta, TAlbaranClienteBusinessProcessorRules);
|
||||
RegisterBusinessProcessorRules(RID_AlbaranDePresupuestoDelta, TAlbaranDePresupuestoBusinessProcessorRules);
|
||||
|
||||
@ -7,7 +7,7 @@ object srvAlbaranesCliente: TsrvAlbaranesCliente
|
||||
ServiceSchema = schAlbaranesCliente
|
||||
ServiceAdapter = DABINAdapter
|
||||
Left = 413
|
||||
Top = 252
|
||||
Top = 220
|
||||
Height = 463
|
||||
Width = 347
|
||||
object schAlbaranesCliente: TDASchema
|
||||
@ -15,6 +15,39 @@ object srvAlbaranesCliente: TsrvAlbaranesCliente
|
||||
DataDictionary = dmServer.DataDictionary
|
||||
Diagrams = dmServer.DADiagrams
|
||||
Datasets = <
|
||||
item
|
||||
Params = <>
|
||||
Statements = <
|
||||
item
|
||||
Connection = 'IBX'
|
||||
SQL =
|
||||
'select ANO from'#10'(select distinct(substr(FECHAALBARAN, 1,4)) as A' +
|
||||
'NO'#10'from albaranpago'#10'order by 1 desc)'#10#10'UNION ALL'#10#10'select distinct' +
|
||||
' '#39'Todos'#39' as ANO'#10'from empresas'
|
||||
StatementType = stSQL
|
||||
ColumnMappings = <
|
||||
item
|
||||
DatasetField = 'ANO'
|
||||
TableField = 'ANO'
|
||||
end>
|
||||
end>
|
||||
Name = 'ListaAnosAlbaranes'
|
||||
Fields = <
|
||||
item
|
||||
Name = 'ANO'
|
||||
DataType = datString
|
||||
Size = 254
|
||||
BlobType = dabtUnknown
|
||||
DisplayWidth = 0
|
||||
Alignment = taLeftJustify
|
||||
InPrimaryKey = False
|
||||
Calculated = False
|
||||
Lookup = False
|
||||
LookupCache = False
|
||||
end>
|
||||
BusinessRulesClient.ScriptLanguage = rslPascalScript
|
||||
BusinessRulesServer.ScriptLanguage = rslPascalScript
|
||||
end
|
||||
item
|
||||
Params = <>
|
||||
Statements = <
|
||||
|
||||
@ -29,8 +29,8 @@ type
|
||||
tbl_AlbaranPago: TDACDSDataTable;
|
||||
tbl_DetallesAlbaranPago: TDACDSDataTable;
|
||||
DABINAdapter: TDABINAdapter;
|
||||
schAlbaranesCliente: TDASchema;
|
||||
frxReport1: TfrxReport;
|
||||
schAlbaranesCliente: TDASchema;
|
||||
private
|
||||
protected
|
||||
function GetNextAutoinc: Integer;
|
||||
|
||||
Binary file not shown.
@ -7,7 +7,7 @@ object srvAlmacenes: TsrvAlmacenes
|
||||
ServiceSchema = schAlmacenes
|
||||
ServiceAdapter = DABINAdapter
|
||||
Left = 200
|
||||
Top = 200
|
||||
Top = 175
|
||||
Height = 300
|
||||
Width = 300
|
||||
object schAlmacenes: TDASchema
|
||||
|
||||
Binary file not shown.
@ -142,12 +142,12 @@ Count=1
|
||||
Item0=WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE;
|
||||
[HistoryLists\hlSearchPath]
|
||||
Count=16
|
||||
Item0=$(DELPHI)\Lib\Debug;D:\PROYEC~1\COMPON~1\jcl\lib\D7\debug;..\..\..\Base;..\..\..\Servidor;..\..\Contactos\Cliente;..\..\Presupuestos\Cliente;..\..\..\Usuarios;..\..\Albaranes de cliente\Cliente;..\..\Documentos asociados;..\..\Pagos\Cliente;..\..\Intervalos\Cliente;..\..\Asientos\Cliente;..\..\Cuentas\Cliente
|
||||
Item1=$(DELPHI)\Lib\Debug;D:\PROYEC~1\COMPON~1\jcl\lib\D7\debug;..\..\..\Base;..\..\..\Servidor;..\..\Contactos\Cliente;..\..\Presupuestos\Cliente;..\..\..\Usuarios;..\..\Albaranes de cliente\Cliente;..\..\Documentos asociados;..\..\Pagos\Cliente;..\..\Intervalos\Cliente;..\..\Asientos\Cliente
|
||||
Item2=$(DELPHI)\Lib\Debug;D:\PROYEC~1\COMPON~1\jcl\lib\D7\debug;..\..\..\Base;..\..\..\Servidor;..\..\Contactos\Cliente;..\..\Presupuestos\Cliente;..\..\..\Usuarios;..\..\Albaranes de cliente\Cliente;..\..\Documentos asociados;..\..\Pagos\Cliente;..\..\Intervalos\Cliente
|
||||
Item3=$(DELPHI)\Lib\Debug;D:\PROYEC~1\COMPON~1\jcl\lib\D7\debug;..\..\..\Base;..\..\..\Servidor;..\..\Contactos\Cliente;..\..\Presupuestos\Cliente;..\..\..\Usuarios;..\..\Albaranes de cliente\Cliente;..\..\Documentos asociados;..\..\Pagos\Cliente
|
||||
Item4=..\Modulos\Presupuestos\Reglas;..\Modulos\Contactos\Reglas;..\Base;..\Configuracion;..\Usuarios;..\Modulos\Albaranes de cliente\Reglas
|
||||
Item5=$(DELPHI)\Lib\Debug;D:\PROYEC~1\COMPON~1\jcl\lib\D7\debug;..\Base;..\Configuracion;..\Usuarios;..\Modulos\Intervalos;..\Modulos\Documentos asociados;..\Modulos\Contactos\Cliente;..\Modulos\Contactos\Reglas;..\Modulos\Presupuestos\Cliente;..\Modulos\Presupuestos\Reglas;..\Modulos\Albaranes de cliente\Cliente;..\Modulos\Albaranes de cliente\Reglas;..\Modulos\Facturas de cliente\Cliente;..\Modulos\Facturas de cliente\Reglas;..\Modulos\Pedidos a proveedor\Cliente;..\Modulos\Pedidos a proveedor\Reglas;..\Modulos\Facturas de proveedor\Cliente;..\Modulos\Facturas de proveedor\Reglas;..\Modulos\Montajes\Reglas;..\Modulos\Montajes\Cliente;..\Modulos\Articulos\Cliente;..\Modulos\Articulos\Reglas;..\Modulos\Almacenes\Reglas;..\Modulos\Almacenes\Cliente;..\Modulos\Pagos\Reglas;..\Modulos\Pagos\Cliente;..\Modulos\Cuentas\Reglas;..\Modulos\Cuentas\Cliente;..\Modulos\Asientos\Reglas;..\Modulos\Asientos\Cliente;..\Modulos\Calendarios\Cliente;..\Modulos\Calendarios\Reglas
|
||||
Item0=..\Modulos\Presupuestos\Reglas;..\Modulos\Contactos\Reglas;..\Base;..\Configuracion;..\Usuarios;..\Modulos\Albaranes de cliente\Reglas
|
||||
Item1=$(DELPHI)\Lib\Debug;D:\PROYEC~1\COMPON~1\jcl\lib\D7\debug;..\Base;..\Configuracion;..\Usuarios;..\Modulos\Intervalos;..\Modulos\Documentos asociados;..\Modulos\Contactos\Cliente;..\Modulos\Contactos\Reglas;..\Modulos\Presupuestos\Cliente;..\Modulos\Presupuestos\Reglas;..\Modulos\Albaranes de cliente\Cliente;..\Modulos\Albaranes de cliente\Reglas;..\Modulos\Facturas de cliente\Cliente;..\Modulos\Facturas de cliente\Reglas;..\Modulos\Pedidos a proveedor\Cliente;..\Modulos\Pedidos a proveedor\Reglas;..\Modulos\Facturas de proveedor\Cliente;..\Modulos\Facturas de proveedor\Reglas;..\Modulos\Montajes\Reglas;..\Modulos\Montajes\Cliente;..\Modulos\Articulos\Cliente;..\Modulos\Articulos\Reglas;..\Modulos\Almacenes\Reglas;..\Modulos\Almacenes\Cliente;..\Modulos\Pagos\Reglas;..\Modulos\Pagos\Cliente;..\Modulos\Cuentas\Reglas;..\Modulos\Cuentas\Cliente;..\Modulos\Asientos\Reglas;..\Modulos\Asientos\Cliente;..\Modulos\Calendarios\Cliente;..\Modulos\Calendarios\Reglas
|
||||
Item2=$(DELPHI)\Lib\Debug;D:\PROYEC~1\COMPON~1\jcl\lib\D7\debug;..\..\..\Base;..\..\..\Servidor;..\..\Contactos\Cliente;..\..\Presupuestos\Cliente;..\..\..\Usuarios;..\..\Albaranes de cliente\Cliente;..\..\Documentos asociados;..\..\Pagos\Cliente;..\..\Intervalos\Cliente;..\..\Asientos\Cliente;..\..\Cuentas\Cliente
|
||||
Item3=$(DELPHI)\Lib\Debug;D:\PROYEC~1\COMPON~1\jcl\lib\D7\debug;..\..\..\Base;..\..\..\Servidor;..\..\Contactos\Cliente;..\..\Presupuestos\Cliente;..\..\..\Usuarios;..\..\Albaranes de cliente\Cliente;..\..\Documentos asociados;..\..\Pagos\Cliente;..\..\Intervalos\Cliente;..\..\Asientos\Cliente
|
||||
Item4=$(DELPHI)\Lib\Debug;D:\PROYEC~1\COMPON~1\jcl\lib\D7\debug;..\..\..\Base;..\..\..\Servidor;..\..\Contactos\Cliente;..\..\Presupuestos\Cliente;..\..\..\Usuarios;..\..\Albaranes de cliente\Cliente;..\..\Documentos asociados;..\..\Pagos\Cliente;..\..\Intervalos\Cliente
|
||||
Item5=$(DELPHI)\Lib\Debug;D:\PROYEC~1\COMPON~1\jcl\lib\D7\debug;..\..\..\Base;..\..\..\Servidor;..\..\Contactos\Cliente;..\..\Presupuestos\Cliente;..\..\..\Usuarios;..\..\Albaranes de cliente\Cliente;..\..\Documentos asociados;..\..\Pagos\Cliente
|
||||
Item6=$(DELPHI)\Lib\Debug;D:\PROYEC~1\COMPON~1\jcl\lib\D7\debug;..\..\..\Base;..\..\..\Servidor;..\..\..\Usuarios;..\..\Montajes\Cliente;..\..\Documentos asociados;..\..\Contactos\Cliente;..\..\Almacenes\Cliente
|
||||
Item7=$(DELPHI)\Lib\Debug;D:\PROYEC~1\COMPON~1\jcl\lib\D7\debug;..\..\..\Base;..\..\..\Servidor;..\..\Contactos\Cliente;..\..\..\Usuarios;..\..\Documentos asociados
|
||||
Item8=$(DELPHI)\Lib\Debug;D:\PROYEC~1\COMPON~1\jcl\lib\D7\debug;..\..\..\Base;..\..\..\Servidor;..\..\..\Usuarios;..\..\Montajes\Cliente;..\..\Documentos asociados;..\..\Contactos\Cliente
|
||||
|
||||
@ -11,7 +11,7 @@ object dmArticulos: TdmArticulos
|
||||
DataType = rtString
|
||||
end>
|
||||
Left = 328
|
||||
Top = 337
|
||||
Top = 294
|
||||
Height = 197
|
||||
Width = 369
|
||||
object RORemoteService: TRORemoteService
|
||||
|
||||
@ -100,8 +100,7 @@ begin
|
||||
begin
|
||||
Clear;
|
||||
OpenBraket;
|
||||
AddText('MONTAJES.SITUACION not in (''' + SITUACION_PENDIENTEPAGO + ''', ''' + SITUACION_PAGADO + ''')', False);
|
||||
// AddText('MONTAJES.FECHAFIN is null', False);
|
||||
AddText('(MONTAJES.SITUACION is null) OR (MONTAJES.SITUACION not in (''' + SITUACION_PENDIENTEPAGO + ''', ''' + SITUACION_PAGADO + '''))', False);
|
||||
CloseBraket;
|
||||
end;
|
||||
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
inherited fEditorArticulosAlmacen: TfEditorArticulosAlmacen
|
||||
Left = 162
|
||||
Top = 243
|
||||
Top = 212
|
||||
Caption = 'Inventario de art'#237'culos en almacenes'
|
||||
PixelsPerInch = 96
|
||||
TextHeight = 13
|
||||
|
||||
@ -7,8 +7,8 @@ object ModuleArticulos: TModuleArticulos
|
||||
LargeImages = LargeImages
|
||||
Author = 'Rodax Software'
|
||||
Version = '1.0.0'
|
||||
Left = 691
|
||||
Top = 507
|
||||
Left = 690
|
||||
Top = 441
|
||||
Height = 252
|
||||
Width = 401
|
||||
object LargeImages: TPngImageList
|
||||
|
||||
@ -6,7 +6,7 @@ object srvArticulos: TsrvArticulos
|
||||
ServiceSchema = schArticulos
|
||||
ServiceAdapter = DABINAdapter
|
||||
Left = 449
|
||||
Top = 259
|
||||
Top = 197
|
||||
Height = 300
|
||||
Width = 300
|
||||
object schArticulos: TDASchema
|
||||
|
||||
Binary file not shown.
@ -7,7 +7,7 @@ object srvAsientos: TsrvAsientos
|
||||
ServiceSchema = schAsientos
|
||||
ServiceAdapter = DABINAdapter
|
||||
Left = 512
|
||||
Top = 168
|
||||
Top = 147
|
||||
Height = 300
|
||||
Width = 300
|
||||
object schAsientos: TDASchema
|
||||
|
||||
Binary file not shown.
@ -7,7 +7,7 @@ object srvCitas: TsrvCitas
|
||||
ServiceSchema = schCitas
|
||||
ServiceAdapter = DABINAdapter
|
||||
Left = 502
|
||||
Top = 206
|
||||
Top = 180
|
||||
Height = 184
|
||||
Width = 245
|
||||
object schCitas: TDASchema
|
||||
|
||||
Binary file not shown.
@ -9,7 +9,7 @@ object srvContactos: TsrvContactos
|
||||
ServiceSchema = schContactos
|
||||
ServiceAdapter = DABINAdapter
|
||||
Left = 617
|
||||
Top = 313
|
||||
Top = 273
|
||||
Height = 354
|
||||
Width = 450
|
||||
object schContactos: TDASchema
|
||||
@ -501,7 +501,7 @@ object srvContactos: TsrvContactos
|
||||
Top = 16
|
||||
end
|
||||
object frxReport1: TfrxReport
|
||||
Version = '3.15'
|
||||
Version = '3.23.7'
|
||||
DotMatrixReport = False
|
||||
EngineOptions.DoublePass = True
|
||||
IniFile = '\Software\Fast Reports'
|
||||
@ -545,7 +545,7 @@ object srvContactos: TsrvContactos
|
||||
Height = 18.897650000000000000
|
||||
DataSet = frxDBDataset1
|
||||
DataSetName = 'frxDBDataset1'
|
||||
Memo.Strings = (
|
||||
Memo.UTF8 = (
|
||||
'[frxDBDataset1."nombre"]')
|
||||
end
|
||||
end
|
||||
|
||||
Binary file not shown.
@ -7,7 +7,7 @@ object srvCuentas: TsrvCuentas
|
||||
ServiceSchema = schCuentas
|
||||
ServiceAdapter = DABINAdapter
|
||||
Left = 555
|
||||
Top = 179
|
||||
Top = 156
|
||||
Height = 300
|
||||
Width = 300
|
||||
object schCuentas: TDASchema
|
||||
|
||||
Binary file not shown.
Binary file not shown.
@ -680,4 +680,113 @@ object dmFacturasCliente: TdmFacturasCliente
|
||||
Left = 48
|
||||
Top = 152
|
||||
end
|
||||
object tbl_ListaAnosFacturas: TDACDSDataTable
|
||||
RemoteUpdatesOptions = []
|
||||
Fields = <
|
||||
item
|
||||
Name = 'ANO'
|
||||
DataType = datString
|
||||
Size = 254
|
||||
BlobType = dabtUnknown
|
||||
DisplayWidth = 0
|
||||
Alignment = taLeftJustify
|
||||
InPrimaryKey = False
|
||||
Calculated = False
|
||||
Lookup = False
|
||||
LookupCache = False
|
||||
end>
|
||||
Params = <>
|
||||
MasterMappingMode = mmDataRequest
|
||||
StreamingOptions = [soDisableEventsWhileStreaming]
|
||||
SchemaCall.MethodName = 'GetDatasetSchema'
|
||||
SchemaCall.Params = <
|
||||
item
|
||||
Name = 'Result'
|
||||
ParamType = fResult
|
||||
DataType = rtBinary
|
||||
end
|
||||
item
|
||||
Name = 'aDatasetName'
|
||||
ParamType = fIn
|
||||
DataType = rtString
|
||||
Value = 'ListaAnosFacturas'
|
||||
end>
|
||||
DataRequestCall.MethodName = 'GetDatasetDataEx'
|
||||
DataRequestCall.Params = <
|
||||
item
|
||||
Name = 'Result'
|
||||
ParamType = fResult
|
||||
DataType = rtBinary
|
||||
end
|
||||
item
|
||||
Name = 'DatasetName'
|
||||
ParamType = fIn
|
||||
DataType = rtString
|
||||
Value = 'ListaAnosFacturas'
|
||||
end
|
||||
item
|
||||
Name = 'Params'
|
||||
ParamType = fIn
|
||||
DataType = rtUserDefined
|
||||
UserClassName = 'TDADatasetParamArray'
|
||||
end
|
||||
item
|
||||
Name = 'UserFilter'
|
||||
ParamType = fIn
|
||||
DataType = rtString
|
||||
Value = ''
|
||||
end
|
||||
item
|
||||
Name = 'IncludeSchema'
|
||||
ParamType = fIn
|
||||
DataType = rtBoolean
|
||||
Value = False
|
||||
end
|
||||
item
|
||||
Name = 'MaxRecords'
|
||||
ParamType = fIn
|
||||
DataType = rtInteger
|
||||
Value = -1
|
||||
end>
|
||||
DataUpdateCall.MethodName = 'UpdateData'
|
||||
DataUpdateCall.Params = <
|
||||
item
|
||||
Name = 'Result'
|
||||
ParamType = fResult
|
||||
DataType = rtBinary
|
||||
end
|
||||
item
|
||||
Name = 'Delta'
|
||||
ParamType = fIn
|
||||
DataType = rtBinary
|
||||
end>
|
||||
ScriptCall.MethodName = 'GetDatasetScripts'
|
||||
ScriptCall.Params = <
|
||||
item
|
||||
Name = 'Result'
|
||||
ParamType = fResult
|
||||
DataType = rtString
|
||||
Value = ''
|
||||
end
|
||||
item
|
||||
Name = 'DatasetNames'
|
||||
ParamType = fIn
|
||||
DataType = rtString
|
||||
Value = 'ListaAnosFacturas'
|
||||
end>
|
||||
ReadOnly = False
|
||||
RemoteService = RORemoteService
|
||||
Adapter = dmBase.DABINAdapter
|
||||
DetailOptions = [dtCascadeOpenClose, dtCascadeApplyUpdates, dtAutoFetch, dtCascadeDelete, dtCascadeUpdate, dtDisableLogOfCascadeDeletes, dtDisableLogOfCascadeUpdates, dtIncludeInAllInOneFetch]
|
||||
MasterOptions = [moCascadeOpenClose, moCascadeApplyUpdates, moCascadeDelete, moCascadeUpdate, moDisableLogOfCascadeDeletes, moDisableLogOfCascadeUpdates]
|
||||
LogicalName = 'ListaAnosFacturas'
|
||||
IndexDefs = <>
|
||||
Left = 168
|
||||
Top = 216
|
||||
end
|
||||
object ds_ListaAnosFacturas: TDADataSource
|
||||
DataTable = tbl_ListaAnosFacturas
|
||||
Left = 168
|
||||
Top = 160
|
||||
end
|
||||
end
|
||||
|
||||
@ -21,6 +21,8 @@ type
|
||||
ds_DetallesFacturasCliente: TDADataSource;
|
||||
DADesigntimeCall1: TDADesigntimeCall;
|
||||
RORemoteService2: TRORemoteService;
|
||||
tbl_ListaAnosFacturas: TDACDSDataTable;
|
||||
ds_ListaAnosFacturas: TDADataSource;
|
||||
procedure DAClientDataModuleCreate(Sender: TObject);
|
||||
private
|
||||
{ Private declarations }
|
||||
@ -32,7 +34,10 @@ type
|
||||
procedure Preview(Const Codigo: Integer);
|
||||
function DarNuevaReferencia : String;
|
||||
function PuedoEliminarFactura (CodigoFactura : Integer) : Boolean;
|
||||
procedure Refrescar(lReport: TfrxReport; Const Codigo: Integer; const TamLetra: Integer);
|
||||
procedure Refrescar(lReport: TfrxReport; Const Codigo: Integer; const TamLetra: Integer);
|
||||
|
||||
function DarListaAnosFacturas: TStringList;
|
||||
procedure FiltrarAno(AFacturas: IBizFacturasCliente; AWhereDataTable: String; const Ano: String);
|
||||
end;
|
||||
|
||||
var
|
||||
@ -43,8 +48,8 @@ implementation
|
||||
{$R *.DFM}
|
||||
|
||||
uses
|
||||
Forms, Controls, uDataTableUtils, uBizContacto,
|
||||
uDataModuleContactos, uDataModuleBase,
|
||||
Forms, Controls, cxControls, uDataTableUtils, uBizContacto,
|
||||
uDataModuleContactos, uDataModuleBase, uDAInterfaces,
|
||||
FactuGES_Intf, uEditorPreviewFacturaCliente, uEditorPreview,
|
||||
uROTypes, schFacturasClienteClient_Intf;
|
||||
|
||||
@ -194,6 +199,55 @@ begin
|
||||
lReport.ShowPreparedReport;
|
||||
end;
|
||||
|
||||
function TdmFacturasCliente.DarListaAnosFacturas: TStringList;
|
||||
var
|
||||
AListaAnos: TStringList;
|
||||
begin
|
||||
AListaAnos := TStringList.Create;
|
||||
ShowHourglassCursor;
|
||||
try
|
||||
with tbl_ListaAnosFacturas do
|
||||
begin
|
||||
Open;
|
||||
First;
|
||||
while not eof do
|
||||
begin
|
||||
AListaAnos.Add(Format('%s=%s', [Fields[0].AsString, Fields[0].AsString]));
|
||||
Next;
|
||||
end;
|
||||
Close;
|
||||
end;
|
||||
Result := AListaAnos;
|
||||
finally
|
||||
HideHourglassCursor;
|
||||
end;
|
||||
end;
|
||||
|
||||
procedure TdmFacturasCliente.FiltrarAno(AFacturas: IBizFacturasCliente; AWhereDataTable: String; const Ano: String);
|
||||
var
|
||||
FechaIni: String;
|
||||
FechaFin: String;
|
||||
|
||||
begin
|
||||
AFacturas.DataTable.Where.Clear;
|
||||
AFacturas.DataTable.Where.AddText(AWhereDataTable);
|
||||
|
||||
if (Ano <> 'Todos') then
|
||||
begin
|
||||
// Filtrar los presupuestos actuales por años
|
||||
FechaIni := '01.01.' + Ano;
|
||||
FechaFin := '31.12.' + Ano;
|
||||
with AFacturas.DataTable.Where do
|
||||
begin
|
||||
if NotEmpty then
|
||||
AddOperator(opAND);
|
||||
AddCondition(fld_FacturasClienteFECHAFACTURA, cMajorOrEqual, FechaIni);
|
||||
AddOperator(opAND);
|
||||
AddCondition(fld_FacturasClienteFECHAFACTURA, cLessOrEqual, FechaFin);
|
||||
end;
|
||||
end;
|
||||
end;
|
||||
|
||||
initialization
|
||||
dmFacturasCliente := TdmFacturasCliente.Create(nil);
|
||||
|
||||
|
||||
@ -42,7 +42,15 @@ inherited fEditorFacturasCliente: TfEditorFacturasCliente
|
||||
end
|
||||
end
|
||||
inherited tbxFiltro: TTBXToolbar
|
||||
Left = 395
|
||||
inherited lblAno: TTBXLabelItem
|
||||
Visible = True
|
||||
end
|
||||
inherited cbxListaAnos: TTBXComboBoxItem
|
||||
Visible = True
|
||||
end
|
||||
inherited sepAno: TTBXSeparatorItem
|
||||
Visible = True
|
||||
end
|
||||
end
|
||||
end
|
||||
inherited StatusBar: TStatusBar
|
||||
|
||||
@ -26,12 +26,17 @@ type
|
||||
procedure actEliminarExecute(Sender: TObject);
|
||||
procedure actModificarExecute(Sender: TObject);
|
||||
procedure actNuevoExecute(Sender: TObject);
|
||||
procedure OnListaAnosChange(Sender: TObject; const Text: string);
|
||||
procedure FormShow(Sender: TObject);
|
||||
|
||||
private
|
||||
FFacturasCliente: IBizFacturasCliente;
|
||||
|
||||
protected
|
||||
function GetFacturasCliente: IBizFacturasCliente;
|
||||
procedure SetFacturasCliente(const Value: IBizFacturasCliente);
|
||||
procedure SetViewGrid(const Value: IViewGrid); override;
|
||||
|
||||
public
|
||||
constructor Create(AOwner: TComponent); override;
|
||||
destructor Destroy; override;
|
||||
@ -122,13 +127,20 @@ begin
|
||||
Result := FFacturasCliente;
|
||||
end;
|
||||
|
||||
procedure TfEditorFacturasCliente.SetFacturasCliente(const Value:
|
||||
IBizFacturasCliente);
|
||||
procedure TfEditorFacturasCliente.SetFacturasCliente(const Value: IBizFacturasCliente);
|
||||
begin
|
||||
FFacturasCliente := Value;
|
||||
dsDataTable.DataTable := FFacturasCliente.DataTable;
|
||||
if Assigned(ViewGrid) then
|
||||
(ViewGrid as IViewFacturasCliente).FacturasCliente := FacturasCliente;
|
||||
|
||||
if Assigned(FFacturasCliente) 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))
|
||||
WhereDataTable := FFacturasCliente.DataTable.Where.Clause;
|
||||
|
||||
dsDataTable.DataTable := FFacturasCliente.DataTable;
|
||||
if Assigned(ViewGrid) then
|
||||
(ViewGrid as IViewFacturasCliente).FacturasCliente := FacturasCliente;
|
||||
end;
|
||||
end;
|
||||
|
||||
procedure TfEditorFacturasCliente.SetViewGrid(const Value: IViewGrid);
|
||||
@ -138,6 +150,21 @@ begin
|
||||
(ViewGrid as IViewFacturasCliente).FacturasCliente := FFacturasCliente;
|
||||
end;
|
||||
|
||||
procedure TfEditorFacturasCliente.FormShow(Sender: TObject);
|
||||
begin
|
||||
ListaAnos := dmFacturasCliente.DarListaAnosFacturas;
|
||||
cbxListaAnos.OnChange := OnListaAnosChange; //OJO SIEMPRE ANTES DEL INHERITED
|
||||
|
||||
inherited;
|
||||
end;
|
||||
|
||||
procedure TfEditorFacturasCliente.OnListaAnosChange(Sender: TObject; const Text: string);
|
||||
begin
|
||||
dmFacturasCliente.FiltrarAno(FacturasCliente, WhereDataTable, Text);
|
||||
if FacturasCliente.DataTable.Active then
|
||||
actRefrescar.Execute;
|
||||
end;
|
||||
|
||||
initialization
|
||||
RegisterEditor(IBizFacturasCliente, ShowEditorFacturasCliente, etItems);
|
||||
RegisterEditor(IBizFacturasCliente, ShowSelectEditorFacturasCliente, etSelectItems);
|
||||
|
||||
@ -9,19 +9,27 @@ 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_DarReferenciaFactura = '{0A0311FE-E619-4E86-8FB5-DF8D223B48EA}';
|
||||
RID_FacturasCliente = '{896C2481-665F-4006-88F1-3C08F7AE938C}';
|
||||
RID_DetallesFacturasCliente = '{A966AEEF-FB48-42DA-A290-C9AD58B38E48}';
|
||||
RID_InformeCabeceraFacturaCliente = '{6652332A-E17A-44E7-9833-7CD70E9458C1}';
|
||||
RID_InformeDetallesFacturaCliente = '{D240F619-DD60-4E7F-AB3F-E2B401E3236D}';
|
||||
RID_ListaAnosFacturas = '{42919587-DDC2-4D2F-8B79-4C034016B877}';
|
||||
RID_DarReferenciaFactura = '{75D2C86E-2226-4165-AE57-6FBB114F6C38}';
|
||||
RID_FacturasCliente = '{46F2D1A1-F069-49C3-8FD7-F73A82EA4B30}';
|
||||
RID_DetallesFacturasCliente = '{BB44EE25-910C-4356-B962-792C1239F806}';
|
||||
RID_InformeCabeceraFacturaCliente = '{865C733F-2C85-46C9-A40C-8A022512FC4E}';
|
||||
RID_InformeDetallesFacturaCliente = '{E219BB9F-D3FD-438D-A03B-0E466305B8A9}';
|
||||
|
||||
{ Data table names }
|
||||
nme_ListaAnosFacturas = 'ListaAnosFacturas';
|
||||
nme_DarReferenciaFactura = 'DarReferenciaFactura';
|
||||
nme_FacturasCliente = 'FacturasCliente';
|
||||
nme_DetallesFacturasCliente = 'DetallesFacturasCliente';
|
||||
nme_InformeCabeceraFacturaCliente = 'InformeCabeceraFacturaCliente';
|
||||
nme_InformeDetallesFacturaCliente = 'InformeDetallesFacturaCliente';
|
||||
|
||||
{ ListaAnosFacturas fields }
|
||||
fld_ListaAnosFacturasANO = 'ANO';
|
||||
|
||||
{ ListaAnosFacturas field indexes }
|
||||
idx_ListaAnosFacturasANO = 0;
|
||||
|
||||
{ DarReferenciaFactura fields }
|
||||
fld_DarReferenciaFacturaREFERENCIA = 'REFERENCIA';
|
||||
|
||||
@ -165,9 +173,38 @@ const
|
||||
idx_InformeDetallesFacturaClientePOSICION = 7;
|
||||
|
||||
type
|
||||
{ IListaAnosFacturas }
|
||||
IListaAnosFacturas = interface(IDAStronglyTypedDataTable)
|
||||
['{728E1D30-3B2E-44F0-86B2-D18BDDE2C92C}']
|
||||
{ Property getters and setters }
|
||||
function GetANOValue: String;
|
||||
procedure SetANOValue(const aValue: String);
|
||||
|
||||
|
||||
{ Properties }
|
||||
property ANO: String read GetANOValue write SetANOValue;
|
||||
end;
|
||||
|
||||
{ TListaAnosFacturasDataTableRules }
|
||||
TListaAnosFacturasDataTableRules = class(TDADataTableRules, IListaAnosFacturas)
|
||||
private
|
||||
protected
|
||||
{ Property getters and setters }
|
||||
function GetANOValue: String; virtual;
|
||||
procedure SetANOValue(const aValue: String); virtual;
|
||||
|
||||
{ Properties }
|
||||
property ANO: String read GetANOValue write SetANOValue;
|
||||
|
||||
public
|
||||
constructor Create(aDataTable: TDADataTable); override;
|
||||
destructor Destroy; override;
|
||||
|
||||
end;
|
||||
|
||||
{ IDarReferenciaFactura }
|
||||
IDarReferenciaFactura = interface(IDAStronglyTypedDataTable)
|
||||
['{3780860F-0689-4DB4-87ED-879E5E0974B9}']
|
||||
['{E947ABD4-4AD9-41C2-9351-96CBCDFFF938}']
|
||||
{ Property getters and setters }
|
||||
function GetREFERENCIAValue: String;
|
||||
procedure SetREFERENCIAValue(const aValue: String);
|
||||
@ -196,7 +233,7 @@ type
|
||||
|
||||
{ IFacturasCliente }
|
||||
IFacturasCliente = interface(IDAStronglyTypedDataTable)
|
||||
['{9AB55416-5EBD-4913-9D16-DFB75478A091}']
|
||||
['{1D8ABDA0-4A60-4470-9880-627ED9D48B67}']
|
||||
{ Property getters and setters }
|
||||
function GetCODIGOEMPRESAValue: Integer;
|
||||
procedure SetCODIGOEMPRESAValue(const aValue: Integer);
|
||||
@ -351,7 +388,7 @@ type
|
||||
|
||||
{ IDetallesFacturasCliente }
|
||||
IDetallesFacturasCliente = interface(IDAStronglyTypedDataTable)
|
||||
['{BF49E552-D331-4DD7-A1E9-6C246BE51E99}']
|
||||
['{5D2C18DA-1596-42C5-B509-360BFB347BDD}']
|
||||
{ Property getters and setters }
|
||||
function GetCODIGOFACTURAValue: Integer;
|
||||
procedure SetCODIGOFACTURAValue(const aValue: Integer);
|
||||
@ -428,7 +465,7 @@ type
|
||||
|
||||
{ IInformeCabeceraFacturaCliente }
|
||||
IInformeCabeceraFacturaCliente = interface(IDAStronglyTypedDataTable)
|
||||
['{3C1DD3E9-BFEC-479A-91BE-9703C511AA3B}']
|
||||
['{64DCF384-1920-4E15-9B5A-BD3B2673C3C4}']
|
||||
{ Property getters and setters }
|
||||
function GetCODIGOEMPRESAValue: Integer;
|
||||
procedure SetCODIGOEMPRESAValue(const aValue: Integer);
|
||||
@ -577,7 +614,7 @@ type
|
||||
|
||||
{ IInformeDetallesFacturaCliente }
|
||||
IInformeDetallesFacturaCliente = interface(IDAStronglyTypedDataTable)
|
||||
['{8A9BE448-C659-4CA5-8C7C-B916FBF7E9C1}']
|
||||
['{398C14EC-410D-4756-B0B6-97EF74DA85D2}']
|
||||
{ Property getters and setters }
|
||||
function GetCODIGOFACTURAValue: Integer;
|
||||
procedure SetCODIGOFACTURAValue(const aValue: Integer);
|
||||
@ -650,6 +687,28 @@ implementation
|
||||
|
||||
uses Variants;
|
||||
|
||||
{ TListaAnosFacturasDataTableRules }
|
||||
constructor TListaAnosFacturasDataTableRules.Create(aDataTable: TDADataTable);
|
||||
begin
|
||||
inherited;
|
||||
end;
|
||||
|
||||
destructor TListaAnosFacturasDataTableRules.Destroy;
|
||||
begin
|
||||
inherited;
|
||||
end;
|
||||
|
||||
function TListaAnosFacturasDataTableRules.GetANOValue: String;
|
||||
begin
|
||||
result := DataTable.Fields[idx_ListaAnosFacturasANO].AsString;
|
||||
end;
|
||||
|
||||
procedure TListaAnosFacturasDataTableRules.SetANOValue(const aValue: String);
|
||||
begin
|
||||
DataTable.Fields[idx_ListaAnosFacturasANO].AsString := aValue;
|
||||
end;
|
||||
|
||||
|
||||
{ TDarReferenciaFacturaDataTableRules }
|
||||
constructor TDarReferenciaFacturaDataTableRules.Create(aDataTable: TDADataTable);
|
||||
begin
|
||||
@ -1325,6 +1384,7 @@ end;
|
||||
|
||||
|
||||
initialization
|
||||
RegisterDataTableRules(RID_ListaAnosFacturas, TListaAnosFacturasDataTableRules);
|
||||
RegisterDataTableRules(RID_DarReferenciaFactura, TDarReferenciaFacturaDataTableRules);
|
||||
RegisterDataTableRules(RID_FacturasCliente, TFacturasClienteDataTableRules);
|
||||
RegisterDataTableRules(RID_DetallesFacturasCliente, TDetallesFacturasClienteDataTableRules);
|
||||
|
||||
@ -9,16 +9,46 @@ 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_DarReferenciaFacturaDelta = '{F2A5D10C-55BF-43D0-BEE6-3712ED9D6EF7}';
|
||||
RID_FacturasClienteDelta = '{E5E319FF-A856-43F4-A936-9BEA61505D26}';
|
||||
RID_DetallesFacturasClienteDelta = '{7BDC4CEC-780B-4254-8D31-10F7DBDC2641}';
|
||||
RID_InformeCabeceraFacturaClienteDelta = '{4EB09950-01DA-4E9E-A3A2-DECCB3A7812F}';
|
||||
RID_InformeDetallesFacturaClienteDelta = '{6666A20D-5DCA-4D7C-9AAE-46BE7FEF57F6}';
|
||||
RID_ListaAnosFacturasDelta = '{4A3D7BF0-E719-4050-B586-158542987232}';
|
||||
RID_DarReferenciaFacturaDelta = '{83C26CE1-CD1F-49D4-9120-6EDE7CEEA2EA}';
|
||||
RID_FacturasClienteDelta = '{68C74297-5D44-444B-8771-A8E6D3D3271B}';
|
||||
RID_DetallesFacturasClienteDelta = '{BD1FD6EF-39D5-452F-9839-1629116AF11F}';
|
||||
RID_InformeCabeceraFacturaClienteDelta = '{790B67BB-36BD-484E-8E99-288CC4E12849}';
|
||||
RID_InformeDetallesFacturaClienteDelta = '{0EC5EBAE-B438-4B46-AC9F-C126476C5876}';
|
||||
|
||||
type
|
||||
{ IListaAnosFacturasDelta }
|
||||
IListaAnosFacturasDelta = interface(IListaAnosFacturas)
|
||||
['{4A3D7BF0-E719-4050-B586-158542987232}']
|
||||
{ Property getters and setters }
|
||||
function GetOldANOValue : String;
|
||||
|
||||
{ Properties }
|
||||
property OldANO : String read GetOldANOValue;
|
||||
end;
|
||||
|
||||
{ TListaAnosFacturasBusinessProcessorRules }
|
||||
TListaAnosFacturasBusinessProcessorRules = class(TDABusinessProcessorRules, IListaAnosFacturas, IListaAnosFacturasDelta)
|
||||
private
|
||||
protected
|
||||
{ Property getters and setters }
|
||||
function GetANOValue: String; virtual;
|
||||
function GetOldANOValue: String; virtual;
|
||||
procedure SetANOValue(const aValue: String); virtual;
|
||||
|
||||
{ Properties }
|
||||
property ANO : String read GetANOValue write SetANOValue;
|
||||
property OldANO : String read GetOldANOValue;
|
||||
|
||||
public
|
||||
constructor Create(aBusinessProcessor: TDABusinessProcessor); override;
|
||||
destructor Destroy; override;
|
||||
|
||||
end;
|
||||
|
||||
{ IDarReferenciaFacturaDelta }
|
||||
IDarReferenciaFacturaDelta = interface(IDarReferenciaFactura)
|
||||
['{F2A5D10C-55BF-43D0-BEE6-3712ED9D6EF7}']
|
||||
['{83C26CE1-CD1F-49D4-9120-6EDE7CEEA2EA}']
|
||||
{ Property getters and setters }
|
||||
function GetOldREFERENCIAValue : String;
|
||||
|
||||
@ -47,7 +77,7 @@ type
|
||||
|
||||
{ IFacturasClienteDelta }
|
||||
IFacturasClienteDelta = interface(IFacturasCliente)
|
||||
['{E5E319FF-A856-43F4-A936-9BEA61505D26}']
|
||||
['{68C74297-5D44-444B-8771-A8E6D3D3271B}']
|
||||
{ Property getters and setters }
|
||||
function GetOldCODIGOEMPRESAValue : Integer;
|
||||
function GetOldCODIGOValue : Integer;
|
||||
@ -223,7 +253,7 @@ type
|
||||
|
||||
{ IDetallesFacturasClienteDelta }
|
||||
IDetallesFacturasClienteDelta = interface(IDetallesFacturasCliente)
|
||||
['{7BDC4CEC-780B-4254-8D31-10F7DBDC2641}']
|
||||
['{BD1FD6EF-39D5-452F-9839-1629116AF11F}']
|
||||
{ Property getters and setters }
|
||||
function GetOldCODIGOFACTURAValue : Integer;
|
||||
function GetOldNUMCONCEPTOValue : Integer;
|
||||
@ -308,7 +338,7 @@ type
|
||||
|
||||
{ IInformeCabeceraFacturaClienteDelta }
|
||||
IInformeCabeceraFacturaClienteDelta = interface(IInformeCabeceraFacturaCliente)
|
||||
['{4EB09950-01DA-4E9E-A3A2-DECCB3A7812F}']
|
||||
['{790B67BB-36BD-484E-8E99-288CC4E12849}']
|
||||
{ Property getters and setters }
|
||||
function GetOldCODIGOEMPRESAValue : Integer;
|
||||
function GetOldCODIGOValue : Integer;
|
||||
@ -477,7 +507,7 @@ type
|
||||
|
||||
{ IInformeDetallesFacturaClienteDelta }
|
||||
IInformeDetallesFacturaClienteDelta = interface(IInformeDetallesFacturaCliente)
|
||||
['{6666A20D-5DCA-4D7C-9AAE-46BE7FEF57F6}']
|
||||
['{0EC5EBAE-B438-4B46-AC9F-C126476C5876}']
|
||||
{ Property getters and setters }
|
||||
function GetOldCODIGOFACTURAValue : Integer;
|
||||
function GetOldNUMCONCEPTOValue : Integer;
|
||||
@ -558,6 +588,33 @@ implementation
|
||||
uses
|
||||
Variants, uROBinaryHelpers;
|
||||
|
||||
{ TListaAnosFacturasBusinessProcessorRules }
|
||||
constructor TListaAnosFacturasBusinessProcessorRules.Create(aBusinessProcessor: TDABusinessProcessor);
|
||||
begin
|
||||
inherited;
|
||||
end;
|
||||
|
||||
destructor TListaAnosFacturasBusinessProcessorRules.Destroy;
|
||||
begin
|
||||
inherited;
|
||||
end;
|
||||
|
||||
function TListaAnosFacturasBusinessProcessorRules.GetANOValue: String;
|
||||
begin
|
||||
result := BusinessProcessor.CurrentChange.NewValueByName[fld_ListaAnosFacturasANO];
|
||||
end;
|
||||
|
||||
function TListaAnosFacturasBusinessProcessorRules.GetOldANOValue: String;
|
||||
begin
|
||||
result := BusinessProcessor.CurrentChange.OldValueByName[fld_ListaAnosFacturasANO];
|
||||
end;
|
||||
|
||||
procedure TListaAnosFacturasBusinessProcessorRules.SetANOValue(const aValue: String);
|
||||
begin
|
||||
BusinessProcessor.CurrentChange.NewValueByName[fld_ListaAnosFacturasANO] := aValue;
|
||||
end;
|
||||
|
||||
|
||||
{ TDarReferenciaFacturaBusinessProcessorRules }
|
||||
constructor TDarReferenciaFacturaBusinessProcessorRules.Create(aBusinessProcessor: TDABusinessProcessor);
|
||||
begin
|
||||
@ -1542,6 +1599,7 @@ end;
|
||||
|
||||
|
||||
initialization
|
||||
RegisterBusinessProcessorRules(RID_ListaAnosFacturasDelta, TListaAnosFacturasBusinessProcessorRules);
|
||||
RegisterBusinessProcessorRules(RID_DarReferenciaFacturaDelta, TDarReferenciaFacturaBusinessProcessorRules);
|
||||
RegisterBusinessProcessorRules(RID_FacturasClienteDelta, TFacturasClienteBusinessProcessorRules);
|
||||
RegisterBusinessProcessorRules(RID_DetallesFacturasClienteDelta, TDetallesFacturasClienteBusinessProcessorRules);
|
||||
|
||||
@ -6,8 +6,8 @@ object srvFacturasCliente: TsrvFacturasCliente
|
||||
ConnectionName = 'IBX'
|
||||
ServiceSchema = schFacturasCliente
|
||||
ServiceAdapter = DABINAdapter
|
||||
Left = 711
|
||||
Top = 310
|
||||
Left = 710
|
||||
Top = 270
|
||||
Height = 490
|
||||
Width = 347
|
||||
object schFacturasCliente: TDASchema
|
||||
@ -15,6 +15,39 @@ object srvFacturasCliente: TsrvFacturasCliente
|
||||
DataDictionary = dmServer.DataDictionary
|
||||
Diagrams = dmServer.DADiagrams
|
||||
Datasets = <
|
||||
item
|
||||
Params = <>
|
||||
Statements = <
|
||||
item
|
||||
Connection = 'IBX'
|
||||
SQL =
|
||||
'select ANO from'#10'(select distinct(substr(FECHAfactura, 1,4)) as A' +
|
||||
'NO'#10'from facturascliente'#10'order by 1 desc)'#10#10'UNION ALL'#10#10'select dist' +
|
||||
'inct '#39'Todos'#39' as ANO'#10'from empresas'
|
||||
StatementType = stSQL
|
||||
ColumnMappings = <
|
||||
item
|
||||
DatasetField = 'ANO'
|
||||
TableField = 'ANO'
|
||||
end>
|
||||
end>
|
||||
Name = 'ListaAnosFacturas'
|
||||
Fields = <
|
||||
item
|
||||
Name = 'ANO'
|
||||
DataType = datString
|
||||
Size = 254
|
||||
BlobType = dabtUnknown
|
||||
DisplayWidth = 0
|
||||
Alignment = taLeftJustify
|
||||
InPrimaryKey = False
|
||||
Calculated = False
|
||||
Lookup = False
|
||||
LookupCache = False
|
||||
end>
|
||||
BusinessRulesClient.ScriptLanguage = rslPascalScript
|
||||
BusinessRulesServer.ScriptLanguage = rslPascalScript
|
||||
end
|
||||
item
|
||||
Params = <>
|
||||
Statements = <
|
||||
|
||||
@ -38,8 +38,8 @@ type
|
||||
frxDotMatrixExport1: TfrxDotMatrixExport;
|
||||
frxDialogControls1: TfrxDialogControls;
|
||||
DABINAdapter: TDABINAdapter;
|
||||
schFacturasCliente: TDASchema;
|
||||
frxReport1: TfrxReport;
|
||||
schFacturasCliente: TDASchema;
|
||||
private
|
||||
protected
|
||||
{ IsrvFacturasCliente methods }
|
||||
|
||||
Binary file not shown.
@ -448,4 +448,113 @@ object dmFacturasProveedor: TdmFacturasProveedor
|
||||
Left = 48
|
||||
Top = 88
|
||||
end
|
||||
object tbl_ListaAnosFacturas: TDACDSDataTable
|
||||
RemoteUpdatesOptions = []
|
||||
Fields = <
|
||||
item
|
||||
Name = 'ANO'
|
||||
DataType = datString
|
||||
Size = 254
|
||||
BlobType = dabtUnknown
|
||||
DisplayWidth = 0
|
||||
Alignment = taLeftJustify
|
||||
InPrimaryKey = False
|
||||
Calculated = False
|
||||
Lookup = False
|
||||
LookupCache = False
|
||||
end>
|
||||
Params = <>
|
||||
MasterMappingMode = mmDataRequest
|
||||
StreamingOptions = [soDisableEventsWhileStreaming]
|
||||
SchemaCall.MethodName = 'GetDatasetSchema'
|
||||
SchemaCall.Params = <
|
||||
item
|
||||
Name = 'Result'
|
||||
ParamType = fResult
|
||||
DataType = rtBinary
|
||||
end
|
||||
item
|
||||
Name = 'aDatasetName'
|
||||
ParamType = fIn
|
||||
DataType = rtString
|
||||
Value = 'ListaAnosFacturas'
|
||||
end>
|
||||
DataRequestCall.MethodName = 'GetDatasetDataEx'
|
||||
DataRequestCall.Params = <
|
||||
item
|
||||
Name = 'Result'
|
||||
ParamType = fResult
|
||||
DataType = rtBinary
|
||||
end
|
||||
item
|
||||
Name = 'DatasetName'
|
||||
ParamType = fIn
|
||||
DataType = rtString
|
||||
Value = 'ListaAnosFacturas'
|
||||
end
|
||||
item
|
||||
Name = 'Params'
|
||||
ParamType = fIn
|
||||
DataType = rtUserDefined
|
||||
UserClassName = 'TDADatasetParamArray'
|
||||
end
|
||||
item
|
||||
Name = 'UserFilter'
|
||||
ParamType = fIn
|
||||
DataType = rtString
|
||||
Value = ''
|
||||
end
|
||||
item
|
||||
Name = 'IncludeSchema'
|
||||
ParamType = fIn
|
||||
DataType = rtBoolean
|
||||
Value = False
|
||||
end
|
||||
item
|
||||
Name = 'MaxRecords'
|
||||
ParamType = fIn
|
||||
DataType = rtInteger
|
||||
Value = -1
|
||||
end>
|
||||
DataUpdateCall.MethodName = 'UpdateData'
|
||||
DataUpdateCall.Params = <
|
||||
item
|
||||
Name = 'Result'
|
||||
ParamType = fResult
|
||||
DataType = rtBinary
|
||||
end
|
||||
item
|
||||
Name = 'Delta'
|
||||
ParamType = fIn
|
||||
DataType = rtBinary
|
||||
end>
|
||||
ScriptCall.MethodName = 'GetDatasetScripts'
|
||||
ScriptCall.Params = <
|
||||
item
|
||||
Name = 'Result'
|
||||
ParamType = fResult
|
||||
DataType = rtString
|
||||
Value = ''
|
||||
end
|
||||
item
|
||||
Name = 'DatasetNames'
|
||||
ParamType = fIn
|
||||
DataType = rtString
|
||||
Value = 'ListaAnosFacturas'
|
||||
end>
|
||||
ReadOnly = False
|
||||
RemoteService = RORemoteService
|
||||
Adapter = dmBase.DABINAdapter
|
||||
DetailOptions = [dtCascadeOpenClose, dtCascadeApplyUpdates, dtAutoFetch, dtCascadeDelete, dtCascadeUpdate, dtDisableLogOfCascadeDeletes, dtDisableLogOfCascadeUpdates, dtIncludeInAllInOneFetch]
|
||||
MasterOptions = [moCascadeOpenClose, moCascadeApplyUpdates, moCascadeDelete, moCascadeUpdate, moDisableLogOfCascadeDeletes, moDisableLogOfCascadeUpdates]
|
||||
LogicalName = 'ListaAnosFacturas'
|
||||
IndexDefs = <>
|
||||
Left = 152
|
||||
Top = 144
|
||||
end
|
||||
object ds_ListaAnosFacturas: TDADataSource
|
||||
DataTable = tbl_ListaAnosFacturas
|
||||
Left = 152
|
||||
Top = 96
|
||||
end
|
||||
end
|
||||
|
||||
@ -14,6 +14,8 @@ type
|
||||
tbl_FacturasProveedor: TDACDSDataTable;
|
||||
ds_FacturasProveedor: TDADataSource;
|
||||
DADesigntimeCall1: TDADesigntimeCall;
|
||||
tbl_ListaAnosFacturas: TDACDSDataTable;
|
||||
ds_ListaAnosFacturas: TDADataSource;
|
||||
procedure DAClientDataModuleCreate(Sender: TObject);
|
||||
private
|
||||
{ Private declarations }
|
||||
@ -22,6 +24,9 @@ type
|
||||
function GetItem: IBizFacturasProveedor;
|
||||
function GetItems: IBizFacturasProveedor;
|
||||
function PuedoEliminarFactura (CodigoFactura : Integer) : Boolean;
|
||||
|
||||
function DarListaAnosFacturas: TStringList;
|
||||
procedure FiltrarAno(AFacturas: IBizFacturasProveedor; AWhereDataTable: String; const Ano: String);
|
||||
end;
|
||||
|
||||
var
|
||||
@ -32,8 +37,8 @@ implementation
|
||||
{$R *.DFM}
|
||||
|
||||
uses
|
||||
Forms, Controls, uDataTableUtils, uBizContacto,
|
||||
uDataModuleContactos, uDataModuleBase,
|
||||
Forms, Controls, cxControls, uDataTableUtils, uBizContacto,
|
||||
uDataModuleContactos, uDataModuleBase, uDAInterfaces,
|
||||
FactuGES_Intf, uEditorPreview, uROTypes, schFacturasProveedorClient_Intf;
|
||||
|
||||
{ TDAClientDataModule1 }
|
||||
@ -121,6 +126,55 @@ begin
|
||||
Result := (RORemoteService as IsrvFacturasProveedor).PuedoEliminarFactura(CodigoFactura);
|
||||
end;
|
||||
|
||||
function TdmFacturasProveedor.DarListaAnosFacturas: TStringList;
|
||||
var
|
||||
AListaAnos: TStringList;
|
||||
begin
|
||||
AListaAnos := TStringList.Create;
|
||||
ShowHourglassCursor;
|
||||
try
|
||||
with tbl_ListaAnosFacturas do
|
||||
begin
|
||||
Open;
|
||||
First;
|
||||
while not eof do
|
||||
begin
|
||||
AListaAnos.Add(Format('%s=%s', [Fields[0].AsString, Fields[0].AsString]));
|
||||
Next;
|
||||
end;
|
||||
Close;
|
||||
end;
|
||||
Result := AListaAnos;
|
||||
finally
|
||||
HideHourglassCursor;
|
||||
end;
|
||||
end;
|
||||
|
||||
procedure TdmFacturasProveedor.FiltrarAno(AFacturas: IBizFacturasProveedor; AWhereDataTable: String; const Ano: String);
|
||||
var
|
||||
FechaIni: String;
|
||||
FechaFin: String;
|
||||
|
||||
begin
|
||||
AFacturas.DataTable.Where.Clear;
|
||||
AFacturas.DataTable.Where.AddText(AWhereDataTable);
|
||||
|
||||
if (Ano <> 'Todos') then
|
||||
begin
|
||||
// Filtrar los presupuestos actuales por años
|
||||
FechaIni := '01.01.' + Ano;
|
||||
FechaFin := '31.12.' + Ano;
|
||||
with AFacturas.DataTable.Where do
|
||||
begin
|
||||
if NotEmpty then
|
||||
AddOperator(opAND);
|
||||
AddCondition(fld_FacturasProveedorFECHAFACTURA, cMajorOrEqual, FechaIni);
|
||||
AddOperator(opAND);
|
||||
AddCondition(fld_FacturasProveedorFECHAFACTURA, cLessOrEqual, FechaFin);
|
||||
end;
|
||||
end;
|
||||
end;
|
||||
|
||||
initialization
|
||||
dmFacturasProveedor := TdmFacturasProveedor.Create(nil);
|
||||
|
||||
|
||||
@ -36,7 +36,15 @@ inherited fEditorFacturasProveedor: TfEditorFacturasProveedor
|
||||
end
|
||||
end
|
||||
inherited tbxFiltro: TTBXToolbar
|
||||
Left = 411
|
||||
inherited lblAno: TTBXLabelItem
|
||||
Visible = True
|
||||
end
|
||||
inherited cbxListaAnos: TTBXComboBoxItem
|
||||
Visible = True
|
||||
end
|
||||
inherited sepAno: TTBXSeparatorItem
|
||||
Visible = True
|
||||
end
|
||||
end
|
||||
end
|
||||
inherited EditorActionList: TActionList
|
||||
|
||||
@ -24,6 +24,9 @@ type
|
||||
procedure actEliminarExecute(Sender: TObject);
|
||||
procedure actModificarExecute(Sender: TObject);
|
||||
procedure actNuevoExecute(Sender: TObject);
|
||||
procedure FormShow(Sender: TObject);
|
||||
procedure OnListaAnosChange(Sender: TObject; const Text: string);
|
||||
|
||||
private
|
||||
FFacturasProveedor: IBizFacturasProveedor;
|
||||
protected
|
||||
@ -137,6 +140,21 @@ begin
|
||||
(ViewGrid as IViewFacturasProveedor).FacturasProveedor := FFacturasProveedor;
|
||||
end;
|
||||
|
||||
procedure TfEditorFacturasProveedor.FormShow(Sender: TObject);
|
||||
begin
|
||||
ListaAnos := dmFacturasProveedor.DarListaAnosFacturas;
|
||||
cbxListaAnos.OnChange := OnListaAnosChange; //OJO SIEMPRE ANTES DEL INHERITED
|
||||
|
||||
inherited;
|
||||
end;
|
||||
|
||||
procedure TfEditorFacturasProveedor.OnListaAnosChange(Sender: TObject; const Text: string);
|
||||
begin
|
||||
dmFacturasProveedor.FiltrarAno(FacturasProveedor, WhereDataTable, Text);
|
||||
if FacturasProveedor.DataTable.Active then
|
||||
actRefrescar.Execute;
|
||||
end;
|
||||
|
||||
initialization
|
||||
RegisterEditor(IBizFacturasProveedor, ShowEditorFacturasProveedor, etItems);
|
||||
RegisterEditor(IBizFacturasProveedor, ShowSelectEditorFacturasProveedor, etSelectItems);
|
||||
|
||||
@ -9,11 +9,19 @@ 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_FacturasProveedor = '{3F8DC163-805B-44BC-9D8A-90A0A6527F1B}';
|
||||
RID_ListaAnosFacturas = '{A357058B-4217-48F4-A5D2-9C243409ABAE}';
|
||||
RID_FacturasProveedor = '{DF327921-CD7F-42FB-A1F9-0F1642C8826E}';
|
||||
|
||||
{ Data table names }
|
||||
nme_ListaAnosFacturas = 'ListaAnosFacturas';
|
||||
nme_FacturasProveedor = 'FacturasProveedor';
|
||||
|
||||
{ ListaAnosFacturas fields }
|
||||
fld_ListaAnosFacturasANO = 'ANO';
|
||||
|
||||
{ ListaAnosFacturas field indexes }
|
||||
idx_ListaAnosFacturasANO = 0;
|
||||
|
||||
{ FacturasProveedor fields }
|
||||
fld_FacturasProveedorCODIGOEMPRESA = 'CODIGOEMPRESA';
|
||||
fld_FacturasProveedorCODIGO = 'CODIGO';
|
||||
@ -63,9 +71,38 @@ const
|
||||
idx_FacturasProveedorPOBLACION = 21;
|
||||
|
||||
type
|
||||
{ IListaAnosFacturas }
|
||||
IListaAnosFacturas = interface(IDAStronglyTypedDataTable)
|
||||
['{BB47DCBF-79F2-4F47-B2FB-78344C6265D9}']
|
||||
{ Property getters and setters }
|
||||
function GetANOValue: String;
|
||||
procedure SetANOValue(const aValue: String);
|
||||
|
||||
|
||||
{ Properties }
|
||||
property ANO: String read GetANOValue write SetANOValue;
|
||||
end;
|
||||
|
||||
{ TListaAnosFacturasDataTableRules }
|
||||
TListaAnosFacturasDataTableRules = class(TDADataTableRules, IListaAnosFacturas)
|
||||
private
|
||||
protected
|
||||
{ Property getters and setters }
|
||||
function GetANOValue: String; virtual;
|
||||
procedure SetANOValue(const aValue: String); virtual;
|
||||
|
||||
{ Properties }
|
||||
property ANO: String read GetANOValue write SetANOValue;
|
||||
|
||||
public
|
||||
constructor Create(aDataTable: TDADataTable); override;
|
||||
destructor Destroy; override;
|
||||
|
||||
end;
|
||||
|
||||
{ IFacturasProveedor }
|
||||
IFacturasProveedor = interface(IDAStronglyTypedDataTable)
|
||||
['{B8F57619-27F5-4D11-A277-5F3873F0A4E8}']
|
||||
['{03DE23C9-A1E1-41CB-B3AB-4E923905D12C}']
|
||||
{ Property getters and setters }
|
||||
function GetCODIGOEMPRESAValue: Integer;
|
||||
procedure SetCODIGOEMPRESAValue(const aValue: Integer);
|
||||
@ -222,6 +259,28 @@ implementation
|
||||
|
||||
uses Variants;
|
||||
|
||||
{ TListaAnosFacturasDataTableRules }
|
||||
constructor TListaAnosFacturasDataTableRules.Create(aDataTable: TDADataTable);
|
||||
begin
|
||||
inherited;
|
||||
end;
|
||||
|
||||
destructor TListaAnosFacturasDataTableRules.Destroy;
|
||||
begin
|
||||
inherited;
|
||||
end;
|
||||
|
||||
function TListaAnosFacturasDataTableRules.GetANOValue: String;
|
||||
begin
|
||||
result := DataTable.Fields[idx_ListaAnosFacturasANO].AsString;
|
||||
end;
|
||||
|
||||
procedure TListaAnosFacturasDataTableRules.SetANOValue(const aValue: String);
|
||||
begin
|
||||
DataTable.Fields[idx_ListaAnosFacturasANO].AsString := aValue;
|
||||
end;
|
||||
|
||||
|
||||
{ TFacturasProveedorDataTableRules }
|
||||
constructor TFacturasProveedorDataTableRules.Create(aDataTable: TDADataTable);
|
||||
begin
|
||||
@ -457,6 +516,7 @@ end;
|
||||
|
||||
|
||||
initialization
|
||||
RegisterDataTableRules(RID_ListaAnosFacturas, TListaAnosFacturasDataTableRules);
|
||||
RegisterDataTableRules(RID_FacturasProveedor, TFacturasProveedorDataTableRules);
|
||||
|
||||
end.
|
||||
|
||||
@ -9,12 +9,42 @@ 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_FacturasProveedorDelta = '{F350F1F7-81A3-49B7-BD15-015F6A05A808}';
|
||||
RID_ListaAnosFacturasDelta = '{8208DBF7-1A9B-4F24-B4E8-18CF5DC51A1E}';
|
||||
RID_FacturasProveedorDelta = '{48F74298-152B-4B34-88EB-AF07A72D390A}';
|
||||
|
||||
type
|
||||
{ IListaAnosFacturasDelta }
|
||||
IListaAnosFacturasDelta = interface(IListaAnosFacturas)
|
||||
['{8208DBF7-1A9B-4F24-B4E8-18CF5DC51A1E}']
|
||||
{ Property getters and setters }
|
||||
function GetOldANOValue : String;
|
||||
|
||||
{ Properties }
|
||||
property OldANO : String read GetOldANOValue;
|
||||
end;
|
||||
|
||||
{ TListaAnosFacturasBusinessProcessorRules }
|
||||
TListaAnosFacturasBusinessProcessorRules = class(TDABusinessProcessorRules, IListaAnosFacturas, IListaAnosFacturasDelta)
|
||||
private
|
||||
protected
|
||||
{ Property getters and setters }
|
||||
function GetANOValue: String; virtual;
|
||||
function GetOldANOValue: String; virtual;
|
||||
procedure SetANOValue(const aValue: String); virtual;
|
||||
|
||||
{ Properties }
|
||||
property ANO : String read GetANOValue write SetANOValue;
|
||||
property OldANO : String read GetOldANOValue;
|
||||
|
||||
public
|
||||
constructor Create(aBusinessProcessor: TDABusinessProcessor); override;
|
||||
destructor Destroy; override;
|
||||
|
||||
end;
|
||||
|
||||
{ IFacturasProveedorDelta }
|
||||
IFacturasProveedorDelta = interface(IFacturasProveedor)
|
||||
['{F350F1F7-81A3-49B7-BD15-015F6A05A808}']
|
||||
['{48F74298-152B-4B34-88EB-AF07A72D390A}']
|
||||
{ Property getters and setters }
|
||||
function GetOldCODIGOEMPRESAValue : Integer;
|
||||
function GetOldCODIGOValue : Integer;
|
||||
@ -193,6 +223,33 @@ implementation
|
||||
uses
|
||||
Variants, uROBinaryHelpers;
|
||||
|
||||
{ TListaAnosFacturasBusinessProcessorRules }
|
||||
constructor TListaAnosFacturasBusinessProcessorRules.Create(aBusinessProcessor: TDABusinessProcessor);
|
||||
begin
|
||||
inherited;
|
||||
end;
|
||||
|
||||
destructor TListaAnosFacturasBusinessProcessorRules.Destroy;
|
||||
begin
|
||||
inherited;
|
||||
end;
|
||||
|
||||
function TListaAnosFacturasBusinessProcessorRules.GetANOValue: String;
|
||||
begin
|
||||
result := BusinessProcessor.CurrentChange.NewValueByName[fld_ListaAnosFacturasANO];
|
||||
end;
|
||||
|
||||
function TListaAnosFacturasBusinessProcessorRules.GetOldANOValue: String;
|
||||
begin
|
||||
result := BusinessProcessor.CurrentChange.OldValueByName[fld_ListaAnosFacturasANO];
|
||||
end;
|
||||
|
||||
procedure TListaAnosFacturasBusinessProcessorRules.SetANOValue(const aValue: String);
|
||||
begin
|
||||
BusinessProcessor.CurrentChange.NewValueByName[fld_ListaAnosFacturasANO] := aValue;
|
||||
end;
|
||||
|
||||
|
||||
{ TFacturasProveedorBusinessProcessorRules }
|
||||
constructor TFacturasProveedorBusinessProcessorRules.Create(aBusinessProcessor: TDABusinessProcessor);
|
||||
begin
|
||||
@ -540,6 +597,7 @@ end;
|
||||
|
||||
|
||||
initialization
|
||||
RegisterBusinessProcessorRules(RID_ListaAnosFacturasDelta, TListaAnosFacturasBusinessProcessorRules);
|
||||
RegisterBusinessProcessorRules(RID_FacturasProveedorDelta, TFacturasProveedorBusinessProcessorRules);
|
||||
|
||||
end.
|
||||
|
||||
@ -7,7 +7,7 @@ object srvFacturasProveedor: TsrvFacturasProveedor
|
||||
ServiceSchema = schFacturasProveedor
|
||||
ServiceAdapter = DABINAdapter
|
||||
Left = 477
|
||||
Top = 382
|
||||
Top = 333
|
||||
Height = 392
|
||||
Width = 369
|
||||
object schFacturasProveedor: TDASchema
|
||||
@ -15,6 +15,39 @@ object srvFacturasProveedor: TsrvFacturasProveedor
|
||||
DataDictionary = dmServer.DataDictionary
|
||||
Diagrams = dmServer.DADiagrams
|
||||
Datasets = <
|
||||
item
|
||||
Params = <>
|
||||
Statements = <
|
||||
item
|
||||
Connection = 'IBX'
|
||||
SQL =
|
||||
'select ANO from'#10'(select distinct(substr(FECHAFACTURA, 1,4)) as A' +
|
||||
'NO'#10'from facturasproveedor'#10'order by 1 desc)'#10#10'UNION ALL'#10#10'select di' +
|
||||
'stinct '#39'Todos'#39' as ANO'#10'from empresas'
|
||||
StatementType = stSQL
|
||||
ColumnMappings = <
|
||||
item
|
||||
DatasetField = 'ANO'
|
||||
TableField = 'ANO'
|
||||
end>
|
||||
end>
|
||||
Name = 'ListaAnosFacturas'
|
||||
Fields = <
|
||||
item
|
||||
Name = 'ANO'
|
||||
DataType = datString
|
||||
Size = 254
|
||||
BlobType = dabtUnknown
|
||||
DisplayWidth = 0
|
||||
Alignment = taLeftJustify
|
||||
InPrimaryKey = False
|
||||
Calculated = False
|
||||
Lookup = False
|
||||
LookupCache = False
|
||||
end>
|
||||
BusinessRulesClient.ScriptLanguage = rslPascalScript
|
||||
BusinessRulesServer.ScriptLanguage = rslPascalScript
|
||||
end
|
||||
item
|
||||
Params = <>
|
||||
Statements = <
|
||||
|
||||
@ -20,8 +20,8 @@ uses
|
||||
type
|
||||
{ TsrvFacturasProveedor }
|
||||
TsrvFacturasProveedor = class(TDARemoteService, IsrvFacturasProveedor)
|
||||
schFacturasProveedor: TDASchema;
|
||||
DABINAdapter: TDABINAdapter;
|
||||
schFacturasProveedor: TDASchema;
|
||||
private
|
||||
protected
|
||||
{ IsrvFacturasProveedor methods }
|
||||
|
||||
Binary file not shown.
@ -7,7 +7,7 @@ object srvIntervalos: TsrvIntervalos
|
||||
ServiceSchema = schIntervalos
|
||||
ServiceAdapter = DABINAdapter
|
||||
Left = 444
|
||||
Top = 205
|
||||
Top = 179
|
||||
Height = 300
|
||||
Width = 300
|
||||
object schIntervalos: TDASchema
|
||||
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -13,7 +13,7 @@ object dmMontajes: TdmMontajes
|
||||
Left = 564
|
||||
Top = 347
|
||||
Height = 335
|
||||
Width = 343
|
||||
Width = 536
|
||||
object RORemoteService: TRORemoteService
|
||||
ServiceName = 'srvMontajes'
|
||||
Message = dmBase.ROMessage
|
||||
@ -616,4 +616,113 @@ object dmMontajes: TdmMontajes
|
||||
Left = 240
|
||||
Top = 200
|
||||
end
|
||||
object tbl_ListaAnosMontajes: TDACDSDataTable
|
||||
RemoteUpdatesOptions = []
|
||||
Fields = <
|
||||
item
|
||||
Name = 'ANO'
|
||||
DataType = datString
|
||||
Size = 254
|
||||
BlobType = dabtUnknown
|
||||
DisplayWidth = 0
|
||||
Alignment = taLeftJustify
|
||||
InPrimaryKey = False
|
||||
Calculated = False
|
||||
Lookup = False
|
||||
LookupCache = False
|
||||
end>
|
||||
Params = <>
|
||||
MasterMappingMode = mmDataRequest
|
||||
StreamingOptions = [soDisableEventsWhileStreaming]
|
||||
SchemaCall.MethodName = 'GetDatasetSchema'
|
||||
SchemaCall.Params = <
|
||||
item
|
||||
Name = 'Result'
|
||||
ParamType = fResult
|
||||
DataType = rtBinary
|
||||
end
|
||||
item
|
||||
Name = 'aDatasetName'
|
||||
ParamType = fIn
|
||||
DataType = rtString
|
||||
Value = 'ListaAnosMontajes'
|
||||
end>
|
||||
DataRequestCall.MethodName = 'GetDatasetDataEx'
|
||||
DataRequestCall.Params = <
|
||||
item
|
||||
Name = 'Result'
|
||||
ParamType = fResult
|
||||
DataType = rtBinary
|
||||
end
|
||||
item
|
||||
Name = 'DatasetName'
|
||||
ParamType = fIn
|
||||
DataType = rtString
|
||||
Value = 'ListaAnosMontajes'
|
||||
end
|
||||
item
|
||||
Name = 'Params'
|
||||
ParamType = fIn
|
||||
DataType = rtUserDefined
|
||||
UserClassName = 'TDADatasetParamArray'
|
||||
end
|
||||
item
|
||||
Name = 'UserFilter'
|
||||
ParamType = fIn
|
||||
DataType = rtString
|
||||
Value = ''
|
||||
end
|
||||
item
|
||||
Name = 'IncludeSchema'
|
||||
ParamType = fIn
|
||||
DataType = rtBoolean
|
||||
Value = False
|
||||
end
|
||||
item
|
||||
Name = 'MaxRecords'
|
||||
ParamType = fIn
|
||||
DataType = rtInteger
|
||||
Value = -1
|
||||
end>
|
||||
DataUpdateCall.MethodName = 'UpdateData'
|
||||
DataUpdateCall.Params = <
|
||||
item
|
||||
Name = 'Result'
|
||||
ParamType = fResult
|
||||
DataType = rtBinary
|
||||
end
|
||||
item
|
||||
Name = 'Delta'
|
||||
ParamType = fIn
|
||||
DataType = rtBinary
|
||||
end>
|
||||
ScriptCall.MethodName = 'GetDatasetScripts'
|
||||
ScriptCall.Params = <
|
||||
item
|
||||
Name = 'Result'
|
||||
ParamType = fResult
|
||||
DataType = rtString
|
||||
Value = ''
|
||||
end
|
||||
item
|
||||
Name = 'DatasetNames'
|
||||
ParamType = fIn
|
||||
DataType = rtString
|
||||
Value = 'ListaAnosMontajes'
|
||||
end>
|
||||
ReadOnly = False
|
||||
RemoteService = RORemoteService
|
||||
Adapter = DABINAdapter
|
||||
DetailOptions = [dtCascadeOpenClose, dtCascadeApplyUpdates, dtAutoFetch, dtCascadeDelete, dtCascadeUpdate, dtDisableLogOfCascadeDeletes, dtDisableLogOfCascadeUpdates, dtIncludeInAllInOneFetch]
|
||||
MasterOptions = [moCascadeOpenClose, moCascadeApplyUpdates, moCascadeDelete, moCascadeUpdate, moDisableLogOfCascadeDeletes, moDisableLogOfCascadeUpdates]
|
||||
LogicalName = 'ListaAnosMontajes'
|
||||
IndexDefs = <>
|
||||
Left = 344
|
||||
Top = 88
|
||||
end
|
||||
object ds_ListaAnosMontajes: TDADataSource
|
||||
DataTable = tbl_ListaAnosMontajes
|
||||
Left = 344
|
||||
Top = 24
|
||||
end
|
||||
end
|
||||
|
||||
@ -18,6 +18,8 @@ type
|
||||
ds_FichaBeneficios: TDADataSource;
|
||||
tbl_FichaBeneficios_Aux: TDACDSDataTable;
|
||||
ds_FichaBeneficios_Aux: TDADataSource;
|
||||
tbl_ListaAnosMontajes: TDACDSDataTable;
|
||||
ds_ListaAnosMontajes: TDADataSource;
|
||||
procedure DAClientDataModuleCreate(Sender: TObject);
|
||||
public
|
||||
function GetItems: IBizMontaje; overload;
|
||||
@ -34,7 +36,10 @@ type
|
||||
function darFichaBeneficiosAux: IFichaBeneficios_Aux;
|
||||
procedure NuevoMontaje(AMontaje: IBizMontaje; APresupuesto: IBizPresupuestos);
|
||||
function CambiarSituacion(CodigoPresupuesto: Integer; Situacion: TEnumSituacion): String;
|
||||
function DarNuevaReferencia (TipoMontaje : String) : String;
|
||||
function DarNuevaReferencia (TipoMontaje : String) : String;
|
||||
|
||||
function DarListaAnosMontajes: TStringList;
|
||||
procedure FiltrarAno(AMontajes: IBizMontaje; AWhereDataTable: String; const Ano: String);
|
||||
end;
|
||||
|
||||
var
|
||||
@ -45,7 +50,7 @@ implementation
|
||||
{$R *.DFM}
|
||||
|
||||
uses
|
||||
Controls, Forms, uDAInterfaces, DataAbstract_Intf, FactuGES_Intf,
|
||||
Controls, cxControls, Forms, uDAInterfaces, DataAbstract_Intf, FactuGES_Intf,
|
||||
uDataTableUtils, uROTypes, uEditorPreview,
|
||||
Dialogs, uDataModuleBase, uDBSelectionList,
|
||||
uDataModuleContactos, uDataModulePresupuestos;
|
||||
@ -364,6 +369,55 @@ begin
|
||||
Result := (RORemoteService as IsrvMontajes).DarNuevaReferencia(TipoMontaje);
|
||||
end;
|
||||
|
||||
function TdmMontajes.DarListaAnosMontajes: TStringList;
|
||||
var
|
||||
AListaAnos: TStringList;
|
||||
begin
|
||||
AListaAnos := TStringList.Create;
|
||||
ShowHourglassCursor;
|
||||
try
|
||||
with tbl_ListaAnosMontajes do
|
||||
begin
|
||||
Open;
|
||||
First;
|
||||
while not eof do
|
||||
begin
|
||||
AListaAnos.Add(Format('%s=%s', [Fields[0].AsString, Fields[0].AsString]));
|
||||
Next;
|
||||
end;
|
||||
Close;
|
||||
end;
|
||||
Result := AListaAnos;
|
||||
finally
|
||||
HideHourglassCursor;
|
||||
end;
|
||||
end;
|
||||
|
||||
procedure TdmMontajes.FiltrarAno(AMontajes: IBizMontaje; AWhereDataTable: String; const Ano: String);
|
||||
var
|
||||
FechaIni: String;
|
||||
FechaFin: String;
|
||||
|
||||
begin
|
||||
AMontajes.DataTable.Where.Clear;
|
||||
AMontajes.DataTable.Where.AddText(AWhereDataTable);
|
||||
|
||||
if (Ano <> 'Todos') then
|
||||
begin
|
||||
// Filtrar los presupuestos actuales por años
|
||||
FechaIni := '01.01.' + Ano;
|
||||
FechaFin := '31.12.' + Ano;
|
||||
with AMontajes.DataTable.Where do
|
||||
begin
|
||||
if NotEmpty then
|
||||
AddOperator(opAND);
|
||||
AddCondition(fld_MontajesFECHAINICIO, cMajorOrEqual, FechaIni);
|
||||
AddOperator(opAND);
|
||||
AddCondition(fld_MontajesFECHAINICIO, cLessOrEqual, FechaFin);
|
||||
end;
|
||||
end;
|
||||
end;
|
||||
|
||||
initialization
|
||||
dmMontajes := TdmMontajes.Create(nil);
|
||||
|
||||
|
||||
@ -41,7 +41,15 @@ inherited fEditorMontajes: TfEditorMontajes
|
||||
inherited TBXDock: TTBXDock
|
||||
Width = 742
|
||||
inherited tbxFiltro: TTBXToolbar
|
||||
Left = 411
|
||||
inherited lblAno: TTBXLabelItem
|
||||
Visible = True
|
||||
end
|
||||
inherited cbxListaAnos: TTBXComboBoxItem
|
||||
Visible = True
|
||||
end
|
||||
inherited sepAno: TTBXSeparatorItem
|
||||
Visible = True
|
||||
end
|
||||
inherited tbxEditFiltro: TTBXEditItem
|
||||
EditOptions = [tboUseEditWhenVertical]
|
||||
end
|
||||
|
||||
@ -32,14 +32,18 @@ type
|
||||
procedure actModificarExecute(Sender: TObject);
|
||||
procedure actEliminarExecute(Sender: TObject);
|
||||
procedure frViewBarraSeleccionactSeleccionarExecute(Sender: TObject);
|
||||
procedure OnListaAnosChange(Sender: TObject; const Text: string);
|
||||
|
||||
private
|
||||
FMontajes: IBizMontaje;
|
||||
|
||||
protected
|
||||
function GetMontajes: IBizMontaje; virtual;
|
||||
procedure SetMontajes(const Value: IBizMontaje); virtual;
|
||||
procedure SetViewGrid(const Value: IViewGrid); override;
|
||||
function GetSelectionBarVisible: Boolean; virtual;
|
||||
procedure SetSelectionBarVisible(const Value: Boolean); virtual;
|
||||
|
||||
public
|
||||
property SelectionBarVisible : Boolean read GetSelectionBarVisible write
|
||||
SetSelectionBarVisible;
|
||||
@ -90,6 +94,9 @@ end;
|
||||
}
|
||||
procedure TfEditorMontajes.FormShow(Sender: TObject);
|
||||
begin
|
||||
ListaAnos := dmMontajes.DarListaAnosMontajes;
|
||||
cbxListaAnos.OnChange := OnListaAnosChange; //OJO SIEMPRE ANTES DEL INHERITED
|
||||
|
||||
inherited;
|
||||
|
||||
if not Assigned(ViewGrid) then
|
||||
@ -191,6 +198,13 @@ begin
|
||||
end;
|
||||
end;
|
||||
|
||||
procedure TfEditorMontajes.OnListaAnosChange(Sender: TObject; const Text: string);
|
||||
begin
|
||||
dmMontajes.FiltrarAno(Montajes, WhereDataTable, Text);
|
||||
if Montajes.DataTable.Active then
|
||||
actRefrescar.Execute;
|
||||
end;
|
||||
|
||||
initialization
|
||||
RegisterEditor(IBizMontaje, ShowEditorMontajes, etItems);
|
||||
RegisterEditor(IBizMontaje, ShowSelectEditorMontajes, etSelectItems);
|
||||
|
||||
@ -9,15 +9,17 @@ 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_darNuevaReferencia = '{6547ACA4-805B-4EE7-9499-2D0196BEFC6F}';
|
||||
RID_InformeCabeceraFicha = '{F09A7509-40A9-480E-8E43-F05EF537125E}';
|
||||
RID_Montajes = '{C70762DB-3285-4C26-888D-63B20160927C}';
|
||||
RID_Refresh_Montajes = '{40108B41-7E49-4883-9528-3FBD57B56703}';
|
||||
RID_FichaBeneficios = '{573182C2-5168-428D-99A9-5BFBA9E74705}';
|
||||
RID_InformeDetallesFicha = '{BA1E0ABA-559C-4A1A-B028-32382BB3111A}';
|
||||
RID_FichaBeneficios_Aux = '{706C0AC4-9532-4640-AAF4-BFA1DCD52D26}';
|
||||
RID_ListaAnosMontajes = '{8A77AA23-1850-4C51-9890-61883469A21D}';
|
||||
RID_darNuevaReferencia = '{98BF35DF-261B-4AF5-B3EC-024D293CB3BF}';
|
||||
RID_InformeCabeceraFicha = '{9FCA86CA-5B72-45D8-8B2E-623344608585}';
|
||||
RID_Montajes = '{EA56C374-7E7B-4FC5-8C42-1D65BA1BD7EF}';
|
||||
RID_Refresh_Montajes = '{A948AC0C-F4EF-465D-B2DD-FA4301D3B029}';
|
||||
RID_FichaBeneficios = '{8572BE0C-91B5-4D2C-B729-BB13BAEBC13D}';
|
||||
RID_InformeDetallesFicha = '{D3E3E171-62A4-465E-A954-3EDF6EB38F6F}';
|
||||
RID_FichaBeneficios_Aux = '{5D3EC453-7D49-4AB0-98C0-7F0807279919}';
|
||||
|
||||
{ Data table names }
|
||||
nme_ListaAnosMontajes = 'ListaAnosMontajes';
|
||||
nme_darNuevaReferencia = 'darNuevaReferencia';
|
||||
nme_InformeCabeceraFicha = 'InformeCabeceraFicha';
|
||||
nme_Montajes = 'Montajes';
|
||||
@ -26,6 +28,12 @@ const
|
||||
nme_InformeDetallesFicha = 'InformeDetallesFicha';
|
||||
nme_FichaBeneficios_Aux = 'FichaBeneficios_Aux';
|
||||
|
||||
{ ListaAnosMontajes fields }
|
||||
fld_ListaAnosMontajesANO = 'ANO';
|
||||
|
||||
{ ListaAnosMontajes field indexes }
|
||||
idx_ListaAnosMontajesANO = 0;
|
||||
|
||||
{ darNuevaReferencia fields }
|
||||
fld_darNuevaReferenciaREFERENCIA = 'REFERENCIA';
|
||||
|
||||
@ -167,9 +175,38 @@ const
|
||||
idx_FichaBeneficios_AuxDESCRIPCION = 1;
|
||||
|
||||
type
|
||||
{ IListaAnosMontajes }
|
||||
IListaAnosMontajes = interface(IDAStronglyTypedDataTable)
|
||||
['{6FCA63AA-AE36-4EF9-BFCB-91693E467AE1}']
|
||||
{ Property getters and setters }
|
||||
function GetANOValue: String;
|
||||
procedure SetANOValue(const aValue: String);
|
||||
|
||||
|
||||
{ Properties }
|
||||
property ANO: String read GetANOValue write SetANOValue;
|
||||
end;
|
||||
|
||||
{ TListaAnosMontajesDataTableRules }
|
||||
TListaAnosMontajesDataTableRules = class(TDADataTableRules, IListaAnosMontajes)
|
||||
private
|
||||
protected
|
||||
{ Property getters and setters }
|
||||
function GetANOValue: String; virtual;
|
||||
procedure SetANOValue(const aValue: String); virtual;
|
||||
|
||||
{ Properties }
|
||||
property ANO: String read GetANOValue write SetANOValue;
|
||||
|
||||
public
|
||||
constructor Create(aDataTable: TDADataTable); override;
|
||||
destructor Destroy; override;
|
||||
|
||||
end;
|
||||
|
||||
{ IdarNuevaReferencia }
|
||||
IdarNuevaReferencia = interface(IDAStronglyTypedDataTable)
|
||||
['{1D96C64B-6FB2-4AAF-8444-A92600498486}']
|
||||
['{A6774E16-4A24-4A3D-A8D6-93ADD76C90AF}']
|
||||
{ Property getters and setters }
|
||||
function GetREFERENCIAValue: String;
|
||||
procedure SetREFERENCIAValue(const aValue: String);
|
||||
@ -198,7 +235,7 @@ type
|
||||
|
||||
{ IInformeCabeceraFicha }
|
||||
IInformeCabeceraFicha = interface(IDAStronglyTypedDataTable)
|
||||
['{72D2A87F-6179-41A5-84D9-22060DEE9727}']
|
||||
['{232A3364-2478-4717-BD42-3DBAE60B11CC}']
|
||||
{ Property getters and setters }
|
||||
function GetREFERENCIAValue: String;
|
||||
procedure SetREFERENCIAValue(const aValue: String);
|
||||
@ -311,7 +348,7 @@ type
|
||||
|
||||
{ IMontajes }
|
||||
IMontajes = interface(IDAStronglyTypedDataTable)
|
||||
['{ECCCC9FA-E3EF-4F98-9B46-795A66D964DB}']
|
||||
['{E50B9717-4671-4DC6-896B-F2C3EC14C399}']
|
||||
{ Property getters and setters }
|
||||
function GetCODIGOEMPRESAValue: Integer;
|
||||
procedure SetCODIGOEMPRESAValue(const aValue: Integer);
|
||||
@ -412,7 +449,7 @@ type
|
||||
|
||||
{ IRefresh_Montajes }
|
||||
IRefresh_Montajes = interface(IDAStronglyTypedDataTable)
|
||||
['{FAB2B839-6970-4AB2-A8BC-088A8B74FDCC}']
|
||||
['{B31A8001-6DF2-4389-9347-423642175B74}']
|
||||
{ Property getters and setters }
|
||||
function GetCODIGOEMPRESAValue: Integer;
|
||||
procedure SetCODIGOEMPRESAValue(const aValue: Integer);
|
||||
@ -513,7 +550,7 @@ type
|
||||
|
||||
{ IFichaBeneficios }
|
||||
IFichaBeneficios = interface(IDAStronglyTypedDataTable)
|
||||
['{7C92B973-791A-477D-8DE0-BF61AF95236A}']
|
||||
['{CBD6AD21-2417-45BD-B514-D9D3ACA64E4F}']
|
||||
{ Property getters and setters }
|
||||
function GetCODIGOMONTAJEValue: Integer;
|
||||
procedure SetCODIGOMONTAJEValue(const aValue: Integer);
|
||||
@ -578,7 +615,7 @@ type
|
||||
|
||||
{ IInformeDetallesFicha }
|
||||
IInformeDetallesFicha = interface(IDAStronglyTypedDataTable)
|
||||
['{16284B23-DBDE-405F-9307-CAFDDB913576}']
|
||||
['{CDD0B24E-43DC-4BE9-9451-49126D130C35}']
|
||||
{ Property getters and setters }
|
||||
function GetDESCRIPCIONValue: String;
|
||||
procedure SetDESCRIPCIONValue(const aValue: String);
|
||||
@ -631,7 +668,7 @@ type
|
||||
|
||||
{ IFichaBeneficios_Aux }
|
||||
IFichaBeneficios_Aux = interface(IDAStronglyTypedDataTable)
|
||||
['{C14BE74A-4651-4387-A6E3-048197F0CAC9}']
|
||||
['{AE5C37AD-B172-4181-8726-C94153D32E9B}']
|
||||
{ Property getters and setters }
|
||||
function GetNUMCONCEPTOValue: Integer;
|
||||
procedure SetNUMCONCEPTOValue(const aValue: Integer);
|
||||
@ -668,6 +705,28 @@ implementation
|
||||
|
||||
uses Variants;
|
||||
|
||||
{ TListaAnosMontajesDataTableRules }
|
||||
constructor TListaAnosMontajesDataTableRules.Create(aDataTable: TDADataTable);
|
||||
begin
|
||||
inherited;
|
||||
end;
|
||||
|
||||
destructor TListaAnosMontajesDataTableRules.Destroy;
|
||||
begin
|
||||
inherited;
|
||||
end;
|
||||
|
||||
function TListaAnosMontajesDataTableRules.GetANOValue: String;
|
||||
begin
|
||||
result := DataTable.Fields[idx_ListaAnosMontajesANO].AsString;
|
||||
end;
|
||||
|
||||
procedure TListaAnosMontajesDataTableRules.SetANOValue(const aValue: String);
|
||||
begin
|
||||
DataTable.Fields[idx_ListaAnosMontajesANO].AsString := aValue;
|
||||
end;
|
||||
|
||||
|
||||
{ TdarNuevaReferenciaDataTableRules }
|
||||
constructor TdarNuevaReferenciaDataTableRules.Create(aDataTable: TDADataTable);
|
||||
begin
|
||||
@ -1316,6 +1375,7 @@ end;
|
||||
|
||||
|
||||
initialization
|
||||
RegisterDataTableRules(RID_ListaAnosMontajes, TListaAnosMontajesDataTableRules);
|
||||
RegisterDataTableRules(RID_darNuevaReferencia, TdarNuevaReferenciaDataTableRules);
|
||||
RegisterDataTableRules(RID_InformeCabeceraFicha, TInformeCabeceraFichaDataTableRules);
|
||||
RegisterDataTableRules(RID_Montajes, TMontajesDataTableRules);
|
||||
|
||||
@ -9,18 +9,48 @@ 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_darNuevaReferenciaDelta = '{5C9B1530-2031-47B8-A401-B55FE08E3EB7}';
|
||||
RID_InformeCabeceraFichaDelta = '{F5A62AC1-DF4E-4510-942E-3595C5BC5137}';
|
||||
RID_MontajesDelta = '{939D89F0-AEBE-4E5F-9F1C-05829C1C9AD4}';
|
||||
RID_Refresh_MontajesDelta = '{A7E3BF24-EC68-403B-9732-11DA2807356E}';
|
||||
RID_FichaBeneficiosDelta = '{E6D1DA2C-DE89-4F62-B1C1-8DE78BBF1F76}';
|
||||
RID_InformeDetallesFichaDelta = '{FAC578F4-482B-4E46-8C07-D7C521604FCA}';
|
||||
RID_FichaBeneficios_AuxDelta = '{3E015966-D349-4153-B8F8-4F083CD724F5}';
|
||||
RID_ListaAnosMontajesDelta = '{A1079675-6804-43A1-8113-4C69034E612B}';
|
||||
RID_darNuevaReferenciaDelta = '{B926E1E9-D5FE-4AD9-81B6-6DB568BAF1AC}';
|
||||
RID_InformeCabeceraFichaDelta = '{295D1406-43D2-4AB6-90C5-3C77F026EEF1}';
|
||||
RID_MontajesDelta = '{2E686B2F-A149-44D8-B8A0-978EF00888B3}';
|
||||
RID_Refresh_MontajesDelta = '{A0465C98-DB95-4236-B3CE-5D2580AED7A0}';
|
||||
RID_FichaBeneficiosDelta = '{E75F17B7-C959-49D7-84B3-55AA239759FC}';
|
||||
RID_InformeDetallesFichaDelta = '{E97CAB1B-CCB0-4710-95F3-9AD8D1C9305F}';
|
||||
RID_FichaBeneficios_AuxDelta = '{BB83B8A0-16FB-43C4-8776-0A2DDCE8A85B}';
|
||||
|
||||
type
|
||||
{ IListaAnosMontajesDelta }
|
||||
IListaAnosMontajesDelta = interface(IListaAnosMontajes)
|
||||
['{A1079675-6804-43A1-8113-4C69034E612B}']
|
||||
{ Property getters and setters }
|
||||
function GetOldANOValue : String;
|
||||
|
||||
{ Properties }
|
||||
property OldANO : String read GetOldANOValue;
|
||||
end;
|
||||
|
||||
{ TListaAnosMontajesBusinessProcessorRules }
|
||||
TListaAnosMontajesBusinessProcessorRules = class(TDABusinessProcessorRules, IListaAnosMontajes, IListaAnosMontajesDelta)
|
||||
private
|
||||
protected
|
||||
{ Property getters and setters }
|
||||
function GetANOValue: String; virtual;
|
||||
function GetOldANOValue: String; virtual;
|
||||
procedure SetANOValue(const aValue: String); virtual;
|
||||
|
||||
{ Properties }
|
||||
property ANO : String read GetANOValue write SetANOValue;
|
||||
property OldANO : String read GetOldANOValue;
|
||||
|
||||
public
|
||||
constructor Create(aBusinessProcessor: TDABusinessProcessor); override;
|
||||
destructor Destroy; override;
|
||||
|
||||
end;
|
||||
|
||||
{ IdarNuevaReferenciaDelta }
|
||||
IdarNuevaReferenciaDelta = interface(IdarNuevaReferencia)
|
||||
['{5C9B1530-2031-47B8-A401-B55FE08E3EB7}']
|
||||
['{B926E1E9-D5FE-4AD9-81B6-6DB568BAF1AC}']
|
||||
{ Property getters and setters }
|
||||
function GetOldREFERENCIAValue : String;
|
||||
|
||||
@ -49,7 +79,7 @@ type
|
||||
|
||||
{ IInformeCabeceraFichaDelta }
|
||||
IInformeCabeceraFichaDelta = interface(IInformeCabeceraFicha)
|
||||
['{F5A62AC1-DF4E-4510-942E-3595C5BC5137}']
|
||||
['{295D1406-43D2-4AB6-90C5-3C77F026EEF1}']
|
||||
{ Property getters and setters }
|
||||
function GetOldREFERENCIAValue : String;
|
||||
function GetOldFECHAINICIOValue : DateTime;
|
||||
@ -176,7 +206,7 @@ type
|
||||
|
||||
{ IMontajesDelta }
|
||||
IMontajesDelta = interface(IMontajes)
|
||||
['{939D89F0-AEBE-4E5F-9F1C-05829C1C9AD4}']
|
||||
['{2E686B2F-A149-44D8-B8A0-978EF00888B3}']
|
||||
{ Property getters and setters }
|
||||
function GetOldCODIGOEMPRESAValue : Integer;
|
||||
function GetOldCODIGOValue : Integer;
|
||||
@ -289,7 +319,7 @@ type
|
||||
|
||||
{ IRefresh_MontajesDelta }
|
||||
IRefresh_MontajesDelta = interface(IRefresh_Montajes)
|
||||
['{A7E3BF24-EC68-403B-9732-11DA2807356E}']
|
||||
['{A0465C98-DB95-4236-B3CE-5D2580AED7A0}']
|
||||
{ Property getters and setters }
|
||||
function GetOldCODIGOEMPRESAValue : Integer;
|
||||
function GetOldCODIGOValue : Integer;
|
||||
@ -402,7 +432,7 @@ type
|
||||
|
||||
{ IFichaBeneficiosDelta }
|
||||
IFichaBeneficiosDelta = interface(IFichaBeneficios)
|
||||
['{E6D1DA2C-DE89-4F62-B1C1-8DE78BBF1F76}']
|
||||
['{E75F17B7-C959-49D7-84B3-55AA239759FC}']
|
||||
{ Property getters and setters }
|
||||
function GetOldCODIGOMONTAJEValue : Integer;
|
||||
function GetOldNUMCONCEPTOValue : Integer;
|
||||
@ -473,7 +503,7 @@ type
|
||||
|
||||
{ IInformeDetallesFichaDelta }
|
||||
IInformeDetallesFichaDelta = interface(IInformeDetallesFicha)
|
||||
['{FAC578F4-482B-4E46-8C07-D7C521604FCA}']
|
||||
['{E97CAB1B-CCB0-4710-95F3-9AD8D1C9305F}']
|
||||
{ Property getters and setters }
|
||||
function GetOldDESCRIPCIONValue : String;
|
||||
function GetOldMODELOValue : String;
|
||||
@ -530,7 +560,7 @@ type
|
||||
|
||||
{ IFichaBeneficios_AuxDelta }
|
||||
IFichaBeneficios_AuxDelta = interface(IFichaBeneficios_Aux)
|
||||
['{3E015966-D349-4153-B8F8-4F083CD724F5}']
|
||||
['{BB83B8A0-16FB-43C4-8776-0A2DDCE8A85B}']
|
||||
{ Property getters and setters }
|
||||
function GetOldNUMCONCEPTOValue : Integer;
|
||||
function GetOldDESCRIPCIONValue : String;
|
||||
@ -569,6 +599,33 @@ implementation
|
||||
uses
|
||||
Variants, uROBinaryHelpers;
|
||||
|
||||
{ TListaAnosMontajesBusinessProcessorRules }
|
||||
constructor TListaAnosMontajesBusinessProcessorRules.Create(aBusinessProcessor: TDABusinessProcessor);
|
||||
begin
|
||||
inherited;
|
||||
end;
|
||||
|
||||
destructor TListaAnosMontajesBusinessProcessorRules.Destroy;
|
||||
begin
|
||||
inherited;
|
||||
end;
|
||||
|
||||
function TListaAnosMontajesBusinessProcessorRules.GetANOValue: String;
|
||||
begin
|
||||
result := BusinessProcessor.CurrentChange.NewValueByName[fld_ListaAnosMontajesANO];
|
||||
end;
|
||||
|
||||
function TListaAnosMontajesBusinessProcessorRules.GetOldANOValue: String;
|
||||
begin
|
||||
result := BusinessProcessor.CurrentChange.OldValueByName[fld_ListaAnosMontajesANO];
|
||||
end;
|
||||
|
||||
procedure TListaAnosMontajesBusinessProcessorRules.SetANOValue(const aValue: String);
|
||||
begin
|
||||
BusinessProcessor.CurrentChange.NewValueByName[fld_ListaAnosMontajesANO] := aValue;
|
||||
end;
|
||||
|
||||
|
||||
{ TdarNuevaReferenciaBusinessProcessorRules }
|
||||
constructor TdarNuevaReferenciaBusinessProcessorRules.Create(aBusinessProcessor: TDABusinessProcessor);
|
||||
begin
|
||||
@ -1500,6 +1557,7 @@ end;
|
||||
|
||||
|
||||
initialization
|
||||
RegisterBusinessProcessorRules(RID_ListaAnosMontajesDelta, TListaAnosMontajesBusinessProcessorRules);
|
||||
RegisterBusinessProcessorRules(RID_darNuevaReferenciaDelta, TdarNuevaReferenciaBusinessProcessorRules);
|
||||
RegisterBusinessProcessorRules(RID_InformeCabeceraFichaDelta, TInformeCabeceraFichaBusinessProcessorRules);
|
||||
RegisterBusinessProcessorRules(RID_MontajesDelta, TMontajesBusinessProcessorRules);
|
||||
|
||||
@ -5,8 +5,8 @@ object srvMontajes: TsrvMontajes
|
||||
ConnectionName = 'IBX'
|
||||
ServiceSchema = schMontajes
|
||||
ServiceAdapter = DABINAdapter
|
||||
Left = 648
|
||||
Top = 207
|
||||
Left = 647
|
||||
Top = 181
|
||||
Height = 356
|
||||
Width = 300
|
||||
object bpMontajes: TDABusinessProcessor
|
||||
@ -26,6 +26,39 @@ object srvMontajes: TsrvMontajes
|
||||
DataDictionary = dmServer.DataDictionary
|
||||
Diagrams = dmServer.DADiagrams
|
||||
Datasets = <
|
||||
item
|
||||
Params = <>
|
||||
Statements = <
|
||||
item
|
||||
Connection = 'IBX'
|
||||
SQL =
|
||||
'select ANO from'#10'(select distinct(substr(FECHAINICIO, 1,4)) as AN' +
|
||||
'O'#10'from montajes'#10'order by 1 desc)'#10#10'UNION ALL'#10#10'select distinct '#39'To' +
|
||||
'dos'#39' as ANO'#10'from empresas'
|
||||
StatementType = stSQL
|
||||
ColumnMappings = <
|
||||
item
|
||||
DatasetField = 'ANO'
|
||||
TableField = 'ANO'
|
||||
end>
|
||||
end>
|
||||
Name = 'ListaAnosMontajes'
|
||||
Fields = <
|
||||
item
|
||||
Name = 'ANO'
|
||||
DataType = datString
|
||||
Size = 254
|
||||
BlobType = dabtUnknown
|
||||
DisplayWidth = 0
|
||||
Alignment = taLeftJustify
|
||||
InPrimaryKey = False
|
||||
Calculated = False
|
||||
Lookup = False
|
||||
LookupCache = False
|
||||
end>
|
||||
BusinessRulesClient.ScriptLanguage = rslPascalScript
|
||||
BusinessRulesServer.ScriptLanguage = rslPascalScript
|
||||
end
|
||||
item
|
||||
Params = <
|
||||
item
|
||||
|
||||
Binary file not shown.
@ -305,4 +305,113 @@ object dmPagos: TdmPagos
|
||||
Left = 232
|
||||
Top = 24
|
||||
end
|
||||
object tbl_ListaAnosPagos: TDACDSDataTable
|
||||
RemoteUpdatesOptions = []
|
||||
Fields = <
|
||||
item
|
||||
Name = 'ANO'
|
||||
DataType = datString
|
||||
Size = 254
|
||||
BlobType = dabtUnknown
|
||||
DisplayWidth = 0
|
||||
Alignment = taLeftJustify
|
||||
InPrimaryKey = False
|
||||
Calculated = False
|
||||
Lookup = False
|
||||
LookupCache = False
|
||||
end>
|
||||
Params = <>
|
||||
MasterMappingMode = mmDataRequest
|
||||
StreamingOptions = [soDisableEventsWhileStreaming]
|
||||
SchemaCall.MethodName = 'GetDatasetSchema'
|
||||
SchemaCall.Params = <
|
||||
item
|
||||
Name = 'Result'
|
||||
ParamType = fResult
|
||||
DataType = rtBinary
|
||||
end
|
||||
item
|
||||
Name = 'aDatasetName'
|
||||
ParamType = fIn
|
||||
DataType = rtString
|
||||
Value = 'ListaAnosPagos'
|
||||
end>
|
||||
DataRequestCall.MethodName = 'GetDatasetDataEx'
|
||||
DataRequestCall.Params = <
|
||||
item
|
||||
Name = 'Result'
|
||||
ParamType = fResult
|
||||
DataType = rtBinary
|
||||
end
|
||||
item
|
||||
Name = 'DatasetName'
|
||||
ParamType = fIn
|
||||
DataType = rtString
|
||||
Value = 'ListaAnosPagos'
|
||||
end
|
||||
item
|
||||
Name = 'Params'
|
||||
ParamType = fIn
|
||||
DataType = rtUserDefined
|
||||
UserClassName = 'TDADatasetParamArray'
|
||||
end
|
||||
item
|
||||
Name = 'UserFilter'
|
||||
ParamType = fIn
|
||||
DataType = rtString
|
||||
Value = ''
|
||||
end
|
||||
item
|
||||
Name = 'IncludeSchema'
|
||||
ParamType = fIn
|
||||
DataType = rtBoolean
|
||||
Value = False
|
||||
end
|
||||
item
|
||||
Name = 'MaxRecords'
|
||||
ParamType = fIn
|
||||
DataType = rtInteger
|
||||
Value = -1
|
||||
end>
|
||||
DataUpdateCall.MethodName = 'UpdateData'
|
||||
DataUpdateCall.Params = <
|
||||
item
|
||||
Name = 'Result'
|
||||
ParamType = fResult
|
||||
DataType = rtBinary
|
||||
end
|
||||
item
|
||||
Name = 'Delta'
|
||||
ParamType = fIn
|
||||
DataType = rtBinary
|
||||
end>
|
||||
ScriptCall.MethodName = 'GetDatasetScripts'
|
||||
ScriptCall.Params = <
|
||||
item
|
||||
Name = 'Result'
|
||||
ParamType = fResult
|
||||
DataType = rtString
|
||||
Value = ''
|
||||
end
|
||||
item
|
||||
Name = 'DatasetNames'
|
||||
ParamType = fIn
|
||||
DataType = rtString
|
||||
Value = 'ListaAnosPagos'
|
||||
end>
|
||||
ReadOnly = False
|
||||
RemoteService = RORemoteService
|
||||
Adapter = DABINAdapter
|
||||
DetailOptions = [dtCascadeOpenClose, dtCascadeApplyUpdates, dtAutoFetch, dtCascadeDelete, dtCascadeUpdate, dtDisableLogOfCascadeDeletes, dtDisableLogOfCascadeUpdates, dtIncludeInAllInOneFetch]
|
||||
MasterOptions = [moCascadeOpenClose, moCascadeApplyUpdates, moCascadeDelete, moCascadeUpdate, moDisableLogOfCascadeDeletes, moDisableLogOfCascadeUpdates]
|
||||
LogicalName = 'ListaAnosPagos'
|
||||
IndexDefs = <>
|
||||
Left = 128
|
||||
Top = 120
|
||||
end
|
||||
object ds_ListaAnosPagos: TDADataSource
|
||||
DataTable = tbl_ListaAnosPagos
|
||||
Left = 128
|
||||
Top = 64
|
||||
end
|
||||
end
|
||||
|
||||
@ -14,6 +14,8 @@ type
|
||||
RORemoteService: TRORemoteService;
|
||||
tbl_Pagos: TDACDSDataTable;
|
||||
ds_Pagos: TDADataSource;
|
||||
tbl_ListaAnosPagos: TDACDSDataTable;
|
||||
ds_ListaAnosPagos: TDADataSource;
|
||||
procedure DAClientDataModuleCreate(Sender: TObject);
|
||||
private
|
||||
function GetPagos(CodigoCategoria : Integer): IBizPagos;
|
||||
@ -31,6 +33,9 @@ type
|
||||
function PuedoEliminarAlmacen(Codigo : Integer) : Boolean;
|
||||
function AnadirPagoCliente(Cliente: IBizCliente; CodigoPresupuesto: Integer;
|
||||
Descripcion: Variant; Importe: Currency; var FechaPago: TDateTime): Boolean;
|
||||
|
||||
function DarListaAnosPagos: TStringList;
|
||||
procedure FiltrarAno(APagos: IBizPagos; AWhereDataTable: String; const Ano: String);
|
||||
end;
|
||||
|
||||
var
|
||||
@ -41,7 +46,7 @@ implementation
|
||||
{$R *.DFM}
|
||||
|
||||
uses
|
||||
Controls, Forms, uDAInterfaces, DataAbstract_Intf, FactuGES_Intf,
|
||||
Controls, cxControls, Forms, uDAInterfaces, DataAbstract_Intf, FactuGES_Intf,
|
||||
uDataTableUtils, uROTypes, uEditorPreview, Dialogs, uDataModuleBase,
|
||||
schPagosClient_Intf, uDataModuleMontajes, uBizMontajes;
|
||||
|
||||
@ -82,6 +87,55 @@ begin
|
||||
RORemoteService.Message := dmBase.Message;
|
||||
end;
|
||||
|
||||
function TdmPagos.DarListaAnosPagos: TStringList;
|
||||
var
|
||||
AListaAnos: TStringList;
|
||||
begin
|
||||
AListaAnos := TStringList.Create;
|
||||
ShowHourglassCursor;
|
||||
try
|
||||
with tbl_ListaAnosPagos do
|
||||
begin
|
||||
Open;
|
||||
First;
|
||||
while not eof do
|
||||
begin
|
||||
AListaAnos.Add(Format('%s=%s', [Fields[0].AsString, Fields[0].AsString]));
|
||||
Next;
|
||||
end;
|
||||
Close;
|
||||
end;
|
||||
Result := AListaAnos;
|
||||
finally
|
||||
HideHourglassCursor;
|
||||
end;
|
||||
end;
|
||||
|
||||
procedure TdmPagos.FiltrarAno(APagos: IBizPagos; AWhereDataTable: String; const Ano: String);
|
||||
var
|
||||
FechaIni: String;
|
||||
FechaFin: String;
|
||||
|
||||
begin
|
||||
APagos.DataTable.Where.Clear;
|
||||
APagos.DataTable.Where.AddText(AWhereDataTable);
|
||||
|
||||
if (Ano <> 'Todos') then
|
||||
begin
|
||||
// Filtrar los presupuestos actuales por años
|
||||
FechaIni := '01.01.' + Ano;
|
||||
FechaFin := '31.12.' + Ano;
|
||||
with APagos.DataTable.Where do
|
||||
begin
|
||||
if NotEmpty then
|
||||
AddOperator(opAND);
|
||||
AddCondition(fld_PagosFECHAPAGO, cMajorOrEqual, FechaIni);
|
||||
AddOperator(opAND);
|
||||
AddCondition(fld_PagosFECHAPAGO, cLessOrEqual, FechaFin);
|
||||
end;
|
||||
end;
|
||||
end;
|
||||
|
||||
function TdmPagos.GetItems: IBizPagos;
|
||||
var
|
||||
dtPagos: TDACDSDataTable;
|
||||
|
||||
@ -9,7 +9,15 @@ inherited fEditorPagos: TfEditorPagos
|
||||
end
|
||||
inherited TBXDock: TTBXDock
|
||||
inherited tbxFiltro: TTBXToolbar
|
||||
Left = 411
|
||||
inherited lblAno: TTBXLabelItem
|
||||
Visible = True
|
||||
end
|
||||
inherited cbxListaAnos: TTBXComboBoxItem
|
||||
Visible = True
|
||||
end
|
||||
inherited sepAno: TTBXSeparatorItem
|
||||
Visible = True
|
||||
end
|
||||
inherited tbxEditFiltro: TTBXEditItem
|
||||
EditOptions = [tboUseEditWhenVertical]
|
||||
end
|
||||
|
||||
@ -21,15 +21,19 @@ type
|
||||
end;
|
||||
|
||||
TfEditorPagos = class(TfEditorGrid, IEditorPagos)
|
||||
procedure FormShow(Sender: TObject);
|
||||
procedure actNuevoExecute(Sender: TObject);
|
||||
procedure actModificarExecute(Sender: TObject);
|
||||
procedure FormShow(Sender: TObject);
|
||||
procedure OnListaAnosChange(Sender: TObject; const Text: string);
|
||||
|
||||
private
|
||||
FPagos: IBizPagos;
|
||||
|
||||
protected
|
||||
function GetPagos: IBizPagos; virtual;
|
||||
procedure SetPagos(const Value: IBizPagos); virtual;
|
||||
procedure SetViewGrid(const Value: IViewGrid); override;
|
||||
|
||||
public
|
||||
property Pagos: IBizPagos read GetPagos write SetPagos;
|
||||
destructor Destroy; override;
|
||||
@ -50,6 +54,9 @@ uses
|
||||
}
|
||||
procedure TfEditorPagos.FormShow(Sender: TObject);
|
||||
begin
|
||||
ListaAnos := dmPagos.DarListaAnosPagos;
|
||||
cbxListaAnos.OnChange := OnListaAnosChange; //OJO SIEMPRE ANTES DEL INHERITED
|
||||
|
||||
inherited;
|
||||
|
||||
if not Assigned(ViewGrid) then
|
||||
@ -58,7 +65,7 @@ begin
|
||||
if not Assigned(Pagos) then
|
||||
raise Exception.Create('No hay ningún Pago asignado');
|
||||
|
||||
Pagos.DataTable.Active := True;
|
||||
// Pagos.DataTable.Active := True;
|
||||
end;
|
||||
|
||||
function TfEditorPagos.GetPagos: IBizPagos;
|
||||
@ -69,9 +76,17 @@ end;
|
||||
procedure TfEditorPagos.SetPagos(const Value: IBizPagos);
|
||||
begin
|
||||
FPagos := Value;
|
||||
dsDataTable.DataTable := FPagos.DataTable;
|
||||
if Assigned(ViewGrid) then
|
||||
(ViewGrid as IViewPagos).Pagos := Pagos;
|
||||
|
||||
if Assigned(FPagos) 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))
|
||||
WhereDataTable := FPagos.DataTable.Where.Clause;
|
||||
|
||||
dsDataTable.DataTable := FPagos.DataTable;
|
||||
if Assigned(ViewGrid) then
|
||||
(ViewGrid as IViewPagos).Pagos := Pagos;
|
||||
end;
|
||||
end;
|
||||
|
||||
procedure TfEditorPagos.actNuevoExecute(Sender: TObject);
|
||||
@ -104,5 +119,12 @@ begin
|
||||
inherited;
|
||||
end;
|
||||
|
||||
procedure TfEditorPagos.OnListaAnosChange(Sender: TObject; const Text: string);
|
||||
begin
|
||||
dmPagos.FiltrarAno(Pagos, WhereDataTable, Text);
|
||||
if Pagos.DataTable.Active then
|
||||
actRefrescar.Execute;
|
||||
end;
|
||||
|
||||
end.
|
||||
|
||||
|
||||
@ -9,12 +9,14 @@ 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_InformeCabeceraPago = '{15DB645D-82F8-47D2-B265-F96587E77C7B}';
|
||||
RID_Pagos = '{B164F992-38BF-4CC5-89D1-01472F107C3E}';
|
||||
RID_Refresh_Pagos = '{CBBD3913-987D-4199-9F0D-F76BB9557BA3}';
|
||||
RID_InformeCabeceraPago = '{B59F93CF-6EAF-4991-B028-BB0CCE36364E}';
|
||||
RID_ListaAnosPagos = '{850055F7-8D08-4539-AB66-5DA63D40E26A}';
|
||||
RID_Pagos = '{29B2AF5B-087B-4E74-83F7-8D96ECEC370C}';
|
||||
RID_Refresh_Pagos = '{7E9A215E-D8F2-452C-83EB-36815D1F2E30}';
|
||||
|
||||
{ Data table names }
|
||||
nme_InformeCabeceraPago = 'InformeCabeceraPago';
|
||||
nme_ListaAnosPagos = 'ListaAnosPagos';
|
||||
nme_Pagos = 'Pagos';
|
||||
nme_Refresh_Pagos = 'Refresh_Pagos';
|
||||
|
||||
@ -50,6 +52,12 @@ const
|
||||
idx_InformeCabeceraPagoPOBLACION = 12;
|
||||
idx_InformeCabeceraPagoPROVINCIA = 13;
|
||||
|
||||
{ ListaAnosPagos fields }
|
||||
fld_ListaAnosPagosANO = 'ANO';
|
||||
|
||||
{ ListaAnosPagos field indexes }
|
||||
idx_ListaAnosPagosANO = 0;
|
||||
|
||||
{ Pagos fields }
|
||||
fld_PagosCODIGOEMPRESA = 'CODIGOEMPRESA';
|
||||
fld_PagosCODIGO = 'CODIGO';
|
||||
@ -117,7 +125,7 @@ const
|
||||
type
|
||||
{ IInformeCabeceraPago }
|
||||
IInformeCabeceraPago = interface(IDAStronglyTypedDataTable)
|
||||
['{D34C282C-0A16-4856-93A2-761BCC9E74B6}']
|
||||
['{148B6411-0D8B-49BB-BB6D-B7EC3E511B59}']
|
||||
{ Property getters and setters }
|
||||
function GetCODIGOEMPRESAValue: Integer;
|
||||
procedure SetCODIGOEMPRESAValue(const aValue: Integer);
|
||||
@ -222,9 +230,38 @@ type
|
||||
|
||||
end;
|
||||
|
||||
{ IListaAnosPagos }
|
||||
IListaAnosPagos = interface(IDAStronglyTypedDataTable)
|
||||
['{1FB6B43B-966A-47CA-BACF-1BC4BBF28F54}']
|
||||
{ Property getters and setters }
|
||||
function GetANOValue: String;
|
||||
procedure SetANOValue(const aValue: String);
|
||||
|
||||
|
||||
{ Properties }
|
||||
property ANO: String read GetANOValue write SetANOValue;
|
||||
end;
|
||||
|
||||
{ TListaAnosPagosDataTableRules }
|
||||
TListaAnosPagosDataTableRules = class(TDADataTableRules, IListaAnosPagos)
|
||||
private
|
||||
protected
|
||||
{ Property getters and setters }
|
||||
function GetANOValue: String; virtual;
|
||||
procedure SetANOValue(const aValue: String); virtual;
|
||||
|
||||
{ Properties }
|
||||
property ANO: String read GetANOValue write SetANOValue;
|
||||
|
||||
public
|
||||
constructor Create(aDataTable: TDADataTable); override;
|
||||
destructor Destroy; override;
|
||||
|
||||
end;
|
||||
|
||||
{ IPagos }
|
||||
IPagos = interface(IDAStronglyTypedDataTable)
|
||||
['{0B093D73-8029-4287-A384-410C43F01D94}']
|
||||
['{26CF2773-53D4-4547-A06B-7E5C1A131C5A}']
|
||||
{ Property getters and setters }
|
||||
function GetCODIGOEMPRESAValue: Integer;
|
||||
procedure SetCODIGOEMPRESAValue(const aValue: Integer);
|
||||
@ -331,7 +368,7 @@ type
|
||||
|
||||
{ IRefresh_Pagos }
|
||||
IRefresh_Pagos = interface(IDAStronglyTypedDataTable)
|
||||
['{62CDC2A7-3320-400F-817E-059D1FCB917E}']
|
||||
['{D6BB1255-4087-475E-AC3E-54FD4FA60158}']
|
||||
{ Property getters and setters }
|
||||
function GetCODIGOEMPRESAValue: Integer;
|
||||
procedure SetCODIGOEMPRESAValue(const aValue: Integer);
|
||||
@ -592,6 +629,28 @@ begin
|
||||
end;
|
||||
|
||||
|
||||
{ TListaAnosPagosDataTableRules }
|
||||
constructor TListaAnosPagosDataTableRules.Create(aDataTable: TDADataTable);
|
||||
begin
|
||||
inherited;
|
||||
end;
|
||||
|
||||
destructor TListaAnosPagosDataTableRules.Destroy;
|
||||
begin
|
||||
inherited;
|
||||
end;
|
||||
|
||||
function TListaAnosPagosDataTableRules.GetANOValue: String;
|
||||
begin
|
||||
result := DataTable.Fields[idx_ListaAnosPagosANO].AsString;
|
||||
end;
|
||||
|
||||
procedure TListaAnosPagosDataTableRules.SetANOValue(const aValue: String);
|
||||
begin
|
||||
DataTable.Fields[idx_ListaAnosPagosANO].AsString := aValue;
|
||||
end;
|
||||
|
||||
|
||||
{ TPagosDataTableRules }
|
||||
constructor TPagosDataTableRules.Create(aDataTable: TDADataTable);
|
||||
begin
|
||||
@ -900,6 +959,7 @@ end;
|
||||
|
||||
initialization
|
||||
RegisterDataTableRules(RID_InformeCabeceraPago, TInformeCabeceraPagoDataTableRules);
|
||||
RegisterDataTableRules(RID_ListaAnosPagos, TListaAnosPagosDataTableRules);
|
||||
RegisterDataTableRules(RID_Pagos, TPagosDataTableRules);
|
||||
RegisterDataTableRules(RID_Refresh_Pagos, TRefresh_PagosDataTableRules);
|
||||
|
||||
|
||||
@ -9,14 +9,15 @@ 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_InformeCabeceraPagoDelta = '{435D82E6-79DC-40E5-8832-EA15AE38CFB2}';
|
||||
RID_PagosDelta = '{C8AD6796-7481-4F57-AF85-C283AAF1DF27}';
|
||||
RID_Refresh_PagosDelta = '{3A452B1A-45BD-4837-8F96-86D8F5B8F80E}';
|
||||
RID_InformeCabeceraPagoDelta = '{FC7F498A-8050-4BDE-A554-9C74657C161A}';
|
||||
RID_ListaAnosPagosDelta = '{FB96D6D8-C3F2-4F99-B469-E697516F65C6}';
|
||||
RID_PagosDelta = '{4F690594-2042-436F-B8F7-EA4D4E766C33}';
|
||||
RID_Refresh_PagosDelta = '{BBAE7331-5759-4693-A233-6EBD8A2B340E}';
|
||||
|
||||
type
|
||||
{ IInformeCabeceraPagoDelta }
|
||||
IInformeCabeceraPagoDelta = interface(IInformeCabeceraPago)
|
||||
['{435D82E6-79DC-40E5-8832-EA15AE38CFB2}']
|
||||
['{FC7F498A-8050-4BDE-A554-9C74657C161A}']
|
||||
{ Property getters and setters }
|
||||
function GetOldCODIGOEMPRESAValue : Integer;
|
||||
function GetOldCODIGOValue : Integer;
|
||||
@ -134,9 +135,38 @@ type
|
||||
|
||||
end;
|
||||
|
||||
{ IListaAnosPagosDelta }
|
||||
IListaAnosPagosDelta = interface(IListaAnosPagos)
|
||||
['{FB96D6D8-C3F2-4F99-B469-E697516F65C6}']
|
||||
{ Property getters and setters }
|
||||
function GetOldANOValue : String;
|
||||
|
||||
{ Properties }
|
||||
property OldANO : String read GetOldANOValue;
|
||||
end;
|
||||
|
||||
{ TListaAnosPagosBusinessProcessorRules }
|
||||
TListaAnosPagosBusinessProcessorRules = class(TDABusinessProcessorRules, IListaAnosPagos, IListaAnosPagosDelta)
|
||||
private
|
||||
protected
|
||||
{ Property getters and setters }
|
||||
function GetANOValue: String; virtual;
|
||||
function GetOldANOValue: String; virtual;
|
||||
procedure SetANOValue(const aValue: String); virtual;
|
||||
|
||||
{ Properties }
|
||||
property ANO : String read GetANOValue write SetANOValue;
|
||||
property OldANO : String read GetOldANOValue;
|
||||
|
||||
public
|
||||
constructor Create(aBusinessProcessor: TDABusinessProcessor); override;
|
||||
destructor Destroy; override;
|
||||
|
||||
end;
|
||||
|
||||
{ IPagosDelta }
|
||||
IPagosDelta = interface(IPagos)
|
||||
['{C8AD6796-7481-4F57-AF85-C283AAF1DF27}']
|
||||
['{4F690594-2042-436F-B8F7-EA4D4E766C33}']
|
||||
{ Property getters and setters }
|
||||
function GetOldCODIGOEMPRESAValue : Integer;
|
||||
function GetOldCODIGOValue : Integer;
|
||||
@ -256,7 +286,7 @@ type
|
||||
|
||||
{ IRefresh_PagosDelta }
|
||||
IRefresh_PagosDelta = interface(IRefresh_Pagos)
|
||||
['{3A452B1A-45BD-4837-8F96-86D8F5B8F80E}']
|
||||
['{BBAE7331-5759-4693-A233-6EBD8A2B340E}']
|
||||
{ Property getters and setters }
|
||||
function GetOldCODIGOEMPRESAValue : Integer;
|
||||
function GetOldCODIGOValue : Integer;
|
||||
@ -601,6 +631,33 @@ begin
|
||||
end;
|
||||
|
||||
|
||||
{ TListaAnosPagosBusinessProcessorRules }
|
||||
constructor TListaAnosPagosBusinessProcessorRules.Create(aBusinessProcessor: TDABusinessProcessor);
|
||||
begin
|
||||
inherited;
|
||||
end;
|
||||
|
||||
destructor TListaAnosPagosBusinessProcessorRules.Destroy;
|
||||
begin
|
||||
inherited;
|
||||
end;
|
||||
|
||||
function TListaAnosPagosBusinessProcessorRules.GetANOValue: String;
|
||||
begin
|
||||
result := BusinessProcessor.CurrentChange.NewValueByName[fld_ListaAnosPagosANO];
|
||||
end;
|
||||
|
||||
function TListaAnosPagosBusinessProcessorRules.GetOldANOValue: String;
|
||||
begin
|
||||
result := BusinessProcessor.CurrentChange.OldValueByName[fld_ListaAnosPagosANO];
|
||||
end;
|
||||
|
||||
procedure TListaAnosPagosBusinessProcessorRules.SetANOValue(const aValue: String);
|
||||
begin
|
||||
BusinessProcessor.CurrentChange.NewValueByName[fld_ListaAnosPagosANO] := aValue;
|
||||
end;
|
||||
|
||||
|
||||
{ TPagosBusinessProcessorRules }
|
||||
constructor TPagosBusinessProcessorRules.Create(aBusinessProcessor: TDABusinessProcessor);
|
||||
begin
|
||||
@ -1051,6 +1108,7 @@ end;
|
||||
|
||||
initialization
|
||||
RegisterBusinessProcessorRules(RID_InformeCabeceraPagoDelta, TInformeCabeceraPagoBusinessProcessorRules);
|
||||
RegisterBusinessProcessorRules(RID_ListaAnosPagosDelta, TListaAnosPagosBusinessProcessorRules);
|
||||
RegisterBusinessProcessorRules(RID_PagosDelta, TPagosBusinessProcessorRules);
|
||||
RegisterBusinessProcessorRules(RID_Refresh_PagosDelta, TRefresh_PagosBusinessProcessorRules);
|
||||
|
||||
|
||||
@ -7,7 +7,7 @@ object srvPagos: TsrvPagos
|
||||
ServiceSchema = schPagos
|
||||
ServiceAdapter = DABINAdapter
|
||||
Left = 345
|
||||
Top = 452
|
||||
Top = 394
|
||||
Height = 300
|
||||
Width = 300
|
||||
object schPagos: TDASchema
|
||||
@ -259,6 +259,39 @@ object srvPagos: TsrvPagos
|
||||
BusinessRulesClient.ScriptLanguage = rslPascalScript
|
||||
BusinessRulesServer.ScriptLanguage = rslPascalScript
|
||||
end
|
||||
item
|
||||
Params = <>
|
||||
Statements = <
|
||||
item
|
||||
Connection = 'IBX'
|
||||
SQL =
|
||||
'select ANO from'#10'(select distinct(substr(FECHAPago, 1,4)) as ANO'#10 +
|
||||
'from pagos'#10'order by 1 desc)'#10#10'UNION ALL'#10#10'select distinct '#39'Todos'#39' ' +
|
||||
'as ANO'#10'from empresas'
|
||||
StatementType = stSQL
|
||||
ColumnMappings = <
|
||||
item
|
||||
DatasetField = 'ANO'
|
||||
TableField = 'ANO'
|
||||
end>
|
||||
end>
|
||||
Name = 'ListaAnosPagos'
|
||||
Fields = <
|
||||
item
|
||||
Name = 'ANO'
|
||||
DataType = datString
|
||||
Size = 254
|
||||
BlobType = dabtUnknown
|
||||
DisplayWidth = 0
|
||||
Alignment = taLeftJustify
|
||||
InPrimaryKey = False
|
||||
Calculated = False
|
||||
Lookup = False
|
||||
LookupCache = False
|
||||
end>
|
||||
BusinessRulesClient.ScriptLanguage = rslPascalScript
|
||||
BusinessRulesServer.ScriptLanguage = rslPascalScript
|
||||
end
|
||||
item
|
||||
Params = <>
|
||||
Statements = <
|
||||
@ -931,7 +964,7 @@ object srvPagos: TsrvPagos
|
||||
Top = 16
|
||||
end
|
||||
object frxReport1: TfrxReport
|
||||
Version = '3.15'
|
||||
Version = '3.23.7'
|
||||
DotMatrixReport = False
|
||||
EngineOptions.DoublePass = True
|
||||
IniFile = '\Software\Fast Reports'
|
||||
|
||||
@ -26,8 +26,8 @@ type
|
||||
tbl_Pagos: TDACDSDataTable;
|
||||
DADataCabecera: TDADataSource;
|
||||
frxReport1: TfrxReport;
|
||||
schPagos: TDASchema;
|
||||
DABINAdapter: TDABINAdapter;
|
||||
schPagos: TDASchema;
|
||||
private
|
||||
protected
|
||||
function GetNextAutoinc: Integer;
|
||||
|
||||
Binary file not shown.
@ -611,4 +611,113 @@ object dmPedidos: TdmPedidos
|
||||
Left = 288
|
||||
Top = 24
|
||||
end
|
||||
object tbl_ListaAnosPedidos: TDACDSDataTable
|
||||
RemoteUpdatesOptions = []
|
||||
Fields = <
|
||||
item
|
||||
Name = 'ANO'
|
||||
DataType = datString
|
||||
Size = 254
|
||||
BlobType = dabtUnknown
|
||||
DisplayWidth = 0
|
||||
Alignment = taLeftJustify
|
||||
InPrimaryKey = False
|
||||
Calculated = False
|
||||
Lookup = False
|
||||
LookupCache = False
|
||||
end>
|
||||
Params = <>
|
||||
MasterMappingMode = mmDataRequest
|
||||
StreamingOptions = [soDisableEventsWhileStreaming]
|
||||
SchemaCall.MethodName = 'GetDatasetSchema'
|
||||
SchemaCall.Params = <
|
||||
item
|
||||
Name = 'Result'
|
||||
ParamType = fResult
|
||||
DataType = rtBinary
|
||||
end
|
||||
item
|
||||
Name = 'aDatasetName'
|
||||
ParamType = fIn
|
||||
DataType = rtString
|
||||
Value = 'ListaAnosPedidos'
|
||||
end>
|
||||
DataRequestCall.MethodName = 'GetDatasetDataEx'
|
||||
DataRequestCall.Params = <
|
||||
item
|
||||
Name = 'Result'
|
||||
ParamType = fResult
|
||||
DataType = rtBinary
|
||||
end
|
||||
item
|
||||
Name = 'DatasetName'
|
||||
ParamType = fIn
|
||||
DataType = rtString
|
||||
Value = 'ListaAnosPedidos'
|
||||
end
|
||||
item
|
||||
Name = 'Params'
|
||||
ParamType = fIn
|
||||
DataType = rtUserDefined
|
||||
UserClassName = 'TDADatasetParamArray'
|
||||
end
|
||||
item
|
||||
Name = 'UserFilter'
|
||||
ParamType = fIn
|
||||
DataType = rtString
|
||||
Value = ''
|
||||
end
|
||||
item
|
||||
Name = 'IncludeSchema'
|
||||
ParamType = fIn
|
||||
DataType = rtBoolean
|
||||
Value = False
|
||||
end
|
||||
item
|
||||
Name = 'MaxRecords'
|
||||
ParamType = fIn
|
||||
DataType = rtInteger
|
||||
Value = -1
|
||||
end>
|
||||
DataUpdateCall.MethodName = 'UpdateData'
|
||||
DataUpdateCall.Params = <
|
||||
item
|
||||
Name = 'Result'
|
||||
ParamType = fResult
|
||||
DataType = rtBinary
|
||||
end
|
||||
item
|
||||
Name = 'Delta'
|
||||
ParamType = fIn
|
||||
DataType = rtBinary
|
||||
end>
|
||||
ScriptCall.MethodName = 'GetDatasetScripts'
|
||||
ScriptCall.Params = <
|
||||
item
|
||||
Name = 'Result'
|
||||
ParamType = fResult
|
||||
DataType = rtString
|
||||
Value = ''
|
||||
end
|
||||
item
|
||||
Name = 'DatasetNames'
|
||||
ParamType = fIn
|
||||
DataType = rtString
|
||||
Value = 'ListaAnosPedidos'
|
||||
end>
|
||||
ReadOnly = False
|
||||
RemoteService = RORemoteService
|
||||
Adapter = DABinAdapter
|
||||
DetailOptions = [dtCascadeOpenClose, dtCascadeApplyUpdates, dtAutoFetch, dtCascadeDelete, dtCascadeUpdate, dtDisableLogOfCascadeDeletes, dtDisableLogOfCascadeUpdates, dtIncludeInAllInOneFetch]
|
||||
MasterOptions = [moCascadeOpenClose, moCascadeApplyUpdates, moCascadeDelete, moCascadeUpdate, moDisableLogOfCascadeDeletes, moDisableLogOfCascadeUpdates]
|
||||
LogicalName = 'ListaAnosPedidos'
|
||||
IndexDefs = <>
|
||||
Left = 56
|
||||
Top = 184
|
||||
end
|
||||
object ds_ListaAnosPedidos: TDADataSource
|
||||
DataTable = tbl_ListaAnosPedidos
|
||||
Left = 48
|
||||
Top = 136
|
||||
end
|
||||
end
|
||||
|
||||
@ -16,6 +16,8 @@ type
|
||||
ds_DetallesPedidosProveedor: TDADataSource;
|
||||
tbl_PedidosProveedor: TDACDSDataTable;
|
||||
ds_PedidosProveedor: TDADataSource;
|
||||
tbl_ListaAnosPedidos: TDACDSDataTable;
|
||||
ds_ListaAnosPedidos: TDADataSource;
|
||||
procedure DAClientDataModuleCreate(Sender: TObject);
|
||||
{ private
|
||||
procedure Fax (AFile : String);}
|
||||
@ -28,7 +30,10 @@ type
|
||||
function GetItemsPendientesRecepcion: IBizPedidosProveedor;
|
||||
function GetItem(Codigo : Integer): IBizPedidosProveedor;
|
||||
function DarNuevaReferencia : String;
|
||||
function PuedoEliminarPedido(Codigo : Integer) : Boolean;
|
||||
function PuedoEliminarPedido(Codigo : Integer) : Boolean;
|
||||
|
||||
function DarListaAnosPedidos: TStringList;
|
||||
procedure FiltrarAno(APedidos: IBizPedidosProveedor; AWhereDataTable: String; const Ano: String);
|
||||
end;
|
||||
|
||||
var
|
||||
@ -39,7 +44,7 @@ implementation
|
||||
{$R *.DFM}
|
||||
|
||||
uses
|
||||
Forms, Controls, uDataTableUtils, uBizContacto, FactuGES_Intf,
|
||||
Forms, Controls, cxControls, uDataTableUtils, uBizContacto, FactuGES_Intf,
|
||||
uDataModuleContactos, uDataModuleBase, schPedidosProveedorClient_Intf,
|
||||
uDAInterfaces, uEditorPreview, Dialogs;
|
||||
|
||||
@ -199,6 +204,55 @@ begin
|
||||
end;
|
||||
end;}
|
||||
|
||||
function TdmPedidos.DarListaAnosPedidos: TStringList;
|
||||
var
|
||||
AListaAnos: TStringList;
|
||||
begin
|
||||
AListaAnos := TStringList.Create;
|
||||
ShowHourglassCursor;
|
||||
try
|
||||
with tbl_ListaAnosPedidos do
|
||||
begin
|
||||
Open;
|
||||
First;
|
||||
while not eof do
|
||||
begin
|
||||
AListaAnos.Add(Format('%s=%s', [Fields[0].AsString, Fields[0].AsString]));
|
||||
Next;
|
||||
end;
|
||||
Close;
|
||||
end;
|
||||
Result := AListaAnos;
|
||||
finally
|
||||
HideHourglassCursor;
|
||||
end;
|
||||
end;
|
||||
|
||||
procedure TdmPedidos.FiltrarAno(APedidos: IBizPedidosProveedor; AWhereDataTable: String; const Ano: String);
|
||||
var
|
||||
FechaIni: String;
|
||||
FechaFin: String;
|
||||
|
||||
begin
|
||||
APedidos.DataTable.Where.Clear;
|
||||
APedidos.DataTable.Where.AddText(AWhereDataTable);
|
||||
|
||||
if (Ano <> 'Todos') then
|
||||
begin
|
||||
// Filtrar los pedidos actuales por años
|
||||
FechaIni := '01.01.' + Ano;
|
||||
FechaFin := '31.12.' + Ano;
|
||||
with APedidos.DataTable.Where do
|
||||
begin
|
||||
if NotEmpty then
|
||||
AddOperator(opAND);
|
||||
AddCondition(fld_PedidosProveedorFECHAPEDIDO, cMajorOrEqual, FechaIni);
|
||||
AddOperator(opAND);
|
||||
AddCondition(fld_PedidosProveedorFECHAPEDIDO, cLessOrEqual, FechaFin);
|
||||
end;
|
||||
end;
|
||||
end;
|
||||
|
||||
initialization
|
||||
dmPedidos := TdmPedidos.Create(nil);
|
||||
|
||||
|
||||
@ -35,13 +35,21 @@ inherited fEditorPedidosProveedor: TfEditorPedidosProveedor
|
||||
end
|
||||
inherited TBXDock: TTBXDock
|
||||
inherited tbxFiltro: TTBXToolbar
|
||||
Left = 482
|
||||
inherited lblAno: TTBXLabelItem
|
||||
Visible = True
|
||||
end
|
||||
inherited cbxListaAnos: TTBXComboBoxItem
|
||||
Visible = True
|
||||
end
|
||||
inherited sepAno: TTBXSeparatorItem
|
||||
Visible = True
|
||||
end
|
||||
end
|
||||
end
|
||||
inline frViewBarraSeleccion: TfrViewBarraSeleccion [3]
|
||||
Left = 0
|
||||
Top = 395
|
||||
Width = 707
|
||||
Width = 706
|
||||
Height = 37
|
||||
Align = alBottom
|
||||
AutoScroll = False
|
||||
@ -56,7 +64,7 @@ inherited fEditorPedidosProveedor: TfEditorPedidosProveedor
|
||||
ReadOnly = False
|
||||
inherited pnlSeleccion: TPanel
|
||||
Top = 0
|
||||
Width = 707
|
||||
Width = 706
|
||||
inherited bSeleccionar: TButton
|
||||
Left = 550
|
||||
end
|
||||
|
||||
@ -29,21 +29,24 @@ type
|
||||
procedure frViewBarraSeleccionactSeleccionarExecute(Sender: TObject);
|
||||
procedure frViewBarraSeleccionbCancelarClick(Sender: TObject);
|
||||
procedure actDuplicarExecute(Sender: TObject);
|
||||
procedure OnListaAnosChange(Sender: TObject; const Text: string);
|
||||
procedure FormShow(Sender: TObject);
|
||||
|
||||
private
|
||||
FPedidosProveedor: IBizPedidosProveedor;
|
||||
|
||||
protected
|
||||
function GetPedidosProveedor: IBizPedidosProveedor;
|
||||
function GetSelectionBarVisible: Boolean;
|
||||
procedure SetPedidosProveedor(const Value: IBizPedidosProveedor);
|
||||
procedure SetSelectionBarVisible(const Value: Boolean);
|
||||
procedure SetViewGrid(const Value: IViewGrid); override;
|
||||
|
||||
public
|
||||
constructor Create(AOwner: TComponent); override;
|
||||
destructor Destroy; override;
|
||||
property PedidosProveedor: IBizPedidosProveedor read GetPedidosProveedor write
|
||||
SetPedidosProveedor;
|
||||
property SelectionBarVisible: Boolean read GetSelectionBarVisible write
|
||||
SetSelectionBarVisible;
|
||||
property PedidosProveedor: IBizPedidosProveedor read GetPedidosProveedor write SetPedidosProveedor;
|
||||
property SelectionBarVisible: Boolean read GetSelectionBarVisible write SetSelectionBarVisible;
|
||||
end;
|
||||
|
||||
var
|
||||
@ -184,6 +187,22 @@ begin
|
||||
// ViewGrid.GotoFirst;
|
||||
end;
|
||||
|
||||
procedure TfEditorPedidosProveedor.OnListaAnosChange(Sender: TObject;
|
||||
const Text: string);
|
||||
begin
|
||||
dmPedidos.FiltrarAno(PedidosProveedor, WhereDataTable, Text);
|
||||
if PedidosProveedor.DataTable.Active then
|
||||
actRefrescar.Execute;
|
||||
end;
|
||||
|
||||
procedure TfEditorPedidosProveedor.FormShow(Sender: TObject);
|
||||
begin
|
||||
ListaAnos := dmPedidos.DarListaAnosPedidos;
|
||||
cbxListaAnos.OnChange := OnListaAnosChange; //OJO SIEMPRE ANTES DEL INHERITED
|
||||
|
||||
inherited;
|
||||
end;
|
||||
|
||||
initialization
|
||||
RegisterEditor(IBizPedidosProveedor, ShowEditorPedidosProveedor, etItems);
|
||||
RegisterEditor(IBizPedidosProveedor, ShowSelectEditorPedidosProveedor, etSelectItems);
|
||||
|
||||
@ -9,16 +9,18 @@ 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_darReferenciaPedido = '{505FD1BA-CDDC-4703-8DD7-3D2BDD241D2E}';
|
||||
RID_DetallesPedidosProveedor = '{FBD0F0E0-3295-4D79-863F-FC778E6787E2}';
|
||||
RID_PedidosProveedor = '{45DBB351-50FF-4444-A2BA-305E6D011C02}';
|
||||
RID_Refresh_PedidosProveedor = '{139C4281-92C5-4431-B4BB-E51B6D4CBC8A}';
|
||||
RID_InformeCabeceraPedido = '{4D5A204C-EE0C-4C02-B954-C305CE082250}';
|
||||
RID_InformeDetallesPedido = '{5EB109BB-A440-4768-A612-6A04E27E451D}';
|
||||
RID_darReferenciaPedido = '{3B002028-795E-4D3E-AFC5-A1D21AC442E3}';
|
||||
RID_DetallesPedidosProveedor = '{3052F8C1-9E64-4C97-AC67-3CBDCD3B7E2E}';
|
||||
RID_ListaAnosPedidos = '{954E9284-FE16-4847-8094-359A86E7F733}';
|
||||
RID_PedidosProveedor = '{40ACE341-D7B5-4619-9D19-D3A0BEAD3A3E}';
|
||||
RID_Refresh_PedidosProveedor = '{808987D2-D222-43AB-B8B5-4180683C7955}';
|
||||
RID_InformeCabeceraPedido = '{2C8C37B1-EE18-4CA7-8078-D8BA9B4355C6}';
|
||||
RID_InformeDetallesPedido = '{3C6B060F-68EB-4A3C-8DC4-5EF3C99BFD5B}';
|
||||
|
||||
{ Data table names }
|
||||
nme_darReferenciaPedido = 'darReferenciaPedido';
|
||||
nme_DetallesPedidosProveedor = 'DetallesPedidosProveedor';
|
||||
nme_ListaAnosPedidos = 'ListaAnosPedidos';
|
||||
nme_PedidosProveedor = 'PedidosProveedor';
|
||||
nme_Refresh_PedidosProveedor = 'Refresh_PedidosProveedor';
|
||||
nme_InformeCabeceraPedido = 'InformeCabeceraPedido';
|
||||
@ -48,6 +50,12 @@ const
|
||||
idx_DetallesPedidosProveedorPOSICION = 6;
|
||||
idx_DetallesPedidosProveedorTIPO = 7;
|
||||
|
||||
{ ListaAnosPedidos fields }
|
||||
fld_ListaAnosPedidosANO = 'ANO';
|
||||
|
||||
{ ListaAnosPedidos field indexes }
|
||||
idx_ListaAnosPedidosANO = 0;
|
||||
|
||||
{ PedidosProveedor fields }
|
||||
fld_PedidosProveedorCODIGOEMPRESA = 'CODIGOEMPRESA';
|
||||
fld_PedidosProveedorCODIGO = 'CODIGO';
|
||||
@ -199,7 +207,7 @@ const
|
||||
type
|
||||
{ IdarReferenciaPedido }
|
||||
IdarReferenciaPedido = interface(IDAStronglyTypedDataTable)
|
||||
['{0F22273C-9C50-4C0B-A525-91B8A4A2B810}']
|
||||
['{18C748BC-1317-4E78-B489-08E7B08EE6DC}']
|
||||
{ Property getters and setters }
|
||||
|
||||
|
||||
@ -222,7 +230,7 @@ type
|
||||
|
||||
{ IDetallesPedidosProveedor }
|
||||
IDetallesPedidosProveedor = interface(IDAStronglyTypedDataTable)
|
||||
['{85D589DA-23C9-4E5C-A8D5-E9C5FE0C299C}']
|
||||
['{7F82D076-A16A-4224-8E51-C0B633DE871A}']
|
||||
{ Property getters and setters }
|
||||
function GetCODIGOPEDIDOValue: Integer;
|
||||
procedure SetCODIGOPEDIDOValue(const aValue: Integer);
|
||||
@ -291,9 +299,38 @@ type
|
||||
|
||||
end;
|
||||
|
||||
{ IListaAnosPedidos }
|
||||
IListaAnosPedidos = interface(IDAStronglyTypedDataTable)
|
||||
['{F60E3C70-E432-46AC-A1A9-179DED53654C}']
|
||||
{ Property getters and setters }
|
||||
function GetANOValue: String;
|
||||
procedure SetANOValue(const aValue: String);
|
||||
|
||||
|
||||
{ Properties }
|
||||
property ANO: String read GetANOValue write SetANOValue;
|
||||
end;
|
||||
|
||||
{ TListaAnosPedidosDataTableRules }
|
||||
TListaAnosPedidosDataTableRules = class(TDADataTableRules, IListaAnosPedidos)
|
||||
private
|
||||
protected
|
||||
{ Property getters and setters }
|
||||
function GetANOValue: String; virtual;
|
||||
procedure SetANOValue(const aValue: String); virtual;
|
||||
|
||||
{ Properties }
|
||||
property ANO: String read GetANOValue write SetANOValue;
|
||||
|
||||
public
|
||||
constructor Create(aDataTable: TDADataTable); override;
|
||||
destructor Destroy; override;
|
||||
|
||||
end;
|
||||
|
||||
{ IPedidosProveedor }
|
||||
IPedidosProveedor = interface(IDAStronglyTypedDataTable)
|
||||
['{A3234350-6EC1-44E2-914A-4F402CAD1C21}']
|
||||
['{F3788442-CDBC-42DC-A0E7-9694796FC10B}']
|
||||
{ Property getters and setters }
|
||||
function GetCODIGOEMPRESAValue: Integer;
|
||||
procedure SetCODIGOEMPRESAValue(const aValue: Integer);
|
||||
@ -442,7 +479,7 @@ type
|
||||
|
||||
{ IRefresh_PedidosProveedor }
|
||||
IRefresh_PedidosProveedor = interface(IDAStronglyTypedDataTable)
|
||||
['{6F81940D-E091-4CCF-87B5-3D18484BF359}']
|
||||
['{BDBAF845-6E60-4488-9165-A5D2BDB6355D}']
|
||||
{ Property getters and setters }
|
||||
function GetCODIGOEMPRESAValue: Integer;
|
||||
procedure SetCODIGOEMPRESAValue(const aValue: Integer);
|
||||
@ -591,7 +628,7 @@ type
|
||||
|
||||
{ IInformeCabeceraPedido }
|
||||
IInformeCabeceraPedido = interface(IDAStronglyTypedDataTable)
|
||||
['{D3E6B5DA-06AA-442B-89E8-53CF2ACC19ED}']
|
||||
['{6F1EB595-8513-4BCA-BC28-6D939D39E2A2}']
|
||||
{ Property getters and setters }
|
||||
function GetCODIGOEMPRESAValue: Integer;
|
||||
procedure SetCODIGOEMPRESAValue(const aValue: Integer);
|
||||
@ -710,7 +747,7 @@ type
|
||||
|
||||
{ IInformeDetallesPedido }
|
||||
IInformeDetallesPedido = interface(IDAStronglyTypedDataTable)
|
||||
['{7800BEA2-1E81-406B-9107-3E56B0A796B6}']
|
||||
['{4461E273-1874-4E87-84F3-C8A69C2F5F81}']
|
||||
{ Property getters and setters }
|
||||
function GetCODIGOPEDIDOValue: Integer;
|
||||
procedure SetCODIGOPEDIDOValue(const aValue: Integer);
|
||||
@ -887,6 +924,28 @@ begin
|
||||
end;
|
||||
|
||||
|
||||
{ TListaAnosPedidosDataTableRules }
|
||||
constructor TListaAnosPedidosDataTableRules.Create(aDataTable: TDADataTable);
|
||||
begin
|
||||
inherited;
|
||||
end;
|
||||
|
||||
destructor TListaAnosPedidosDataTableRules.Destroy;
|
||||
begin
|
||||
inherited;
|
||||
end;
|
||||
|
||||
function TListaAnosPedidosDataTableRules.GetANOValue: String;
|
||||
begin
|
||||
result := DataTable.Fields[idx_ListaAnosPedidosANO].AsString;
|
||||
end;
|
||||
|
||||
procedure TListaAnosPedidosDataTableRules.SetANOValue(const aValue: String);
|
||||
begin
|
||||
DataTable.Fields[idx_ListaAnosPedidosANO].AsString := aValue;
|
||||
end;
|
||||
|
||||
|
||||
{ TPedidosProveedorDataTableRules }
|
||||
constructor TPedidosProveedorDataTableRules.Create(aDataTable: TDADataTable);
|
||||
begin
|
||||
@ -1606,6 +1665,7 @@ end;
|
||||
initialization
|
||||
RegisterDataTableRules(RID_darReferenciaPedido, TdarReferenciaPedidoDataTableRules);
|
||||
RegisterDataTableRules(RID_DetallesPedidosProveedor, TDetallesPedidosProveedorDataTableRules);
|
||||
RegisterDataTableRules(RID_ListaAnosPedidos, TListaAnosPedidosDataTableRules);
|
||||
RegisterDataTableRules(RID_PedidosProveedor, TPedidosProveedorDataTableRules);
|
||||
RegisterDataTableRules(RID_Refresh_PedidosProveedor, TRefresh_PedidosProveedorDataTableRules);
|
||||
RegisterDataTableRules(RID_InformeCabeceraPedido, TInformeCabeceraPedidoDataTableRules);
|
||||
|
||||
@ -9,17 +9,18 @@ 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_darReferenciaPedidoDelta = '{BD698220-2611-41EB-89F0-E844371835DD}';
|
||||
RID_DetallesPedidosProveedorDelta = '{A69EEC04-2DA2-41D3-90B3-F3DDFDF124AB}';
|
||||
RID_PedidosProveedorDelta = '{C14C1230-236A-46C3-91AF-903D77FA30EE}';
|
||||
RID_Refresh_PedidosProveedorDelta = '{9FC9D322-C920-4E9A-8CEA-23CD43B052ED}';
|
||||
RID_InformeCabeceraPedidoDelta = '{FF0381B3-8498-47B0-96EA-FE9723B370A6}';
|
||||
RID_InformeDetallesPedidoDelta = '{011AA7C9-CDEC-493F-BA61-F01B37E0F0C3}';
|
||||
RID_darReferenciaPedidoDelta = '{6B5B16E9-5B36-4082-A757-7B0429D1B110}';
|
||||
RID_DetallesPedidosProveedorDelta = '{43C91112-A2EE-4A9E-83B2-BEF9CB6A2DE3}';
|
||||
RID_ListaAnosPedidosDelta = '{081EB504-A5DD-4B18-B47C-13DBF134B88D}';
|
||||
RID_PedidosProveedorDelta = '{1DDF0247-6AED-4F12-AB3D-187CD8742029}';
|
||||
RID_Refresh_PedidosProveedorDelta = '{1FA69710-D78F-4702-BB9C-FED9D0EF34FF}';
|
||||
RID_InformeCabeceraPedidoDelta = '{AAA39823-20B1-40CA-B150-B1DD9366F5F9}';
|
||||
RID_InformeDetallesPedidoDelta = '{48CFF8AA-9EEB-4068-AB9E-362E5700810A}';
|
||||
|
||||
type
|
||||
{ IdarReferenciaPedidoDelta }
|
||||
IdarReferenciaPedidoDelta = interface(IdarReferenciaPedido)
|
||||
['{BD698220-2611-41EB-89F0-E844371835DD}']
|
||||
['{6B5B16E9-5B36-4082-A757-7B0429D1B110}']
|
||||
{ Property getters and setters }
|
||||
|
||||
{ Properties }
|
||||
@ -41,7 +42,7 @@ type
|
||||
|
||||
{ IDetallesPedidosProveedorDelta }
|
||||
IDetallesPedidosProveedorDelta = interface(IDetallesPedidosProveedor)
|
||||
['{A69EEC04-2DA2-41D3-90B3-F3DDFDF124AB}']
|
||||
['{43C91112-A2EE-4A9E-83B2-BEF9CB6A2DE3}']
|
||||
{ Property getters and setters }
|
||||
function GetOldCODIGOPEDIDOValue : Integer;
|
||||
function GetOldNUMCONCEPTOValue : Integer;
|
||||
@ -117,9 +118,38 @@ type
|
||||
|
||||
end;
|
||||
|
||||
{ IListaAnosPedidosDelta }
|
||||
IListaAnosPedidosDelta = interface(IListaAnosPedidos)
|
||||
['{081EB504-A5DD-4B18-B47C-13DBF134B88D}']
|
||||
{ Property getters and setters }
|
||||
function GetOldANOValue : String;
|
||||
|
||||
{ Properties }
|
||||
property OldANO : String read GetOldANOValue;
|
||||
end;
|
||||
|
||||
{ TListaAnosPedidosBusinessProcessorRules }
|
||||
TListaAnosPedidosBusinessProcessorRules = class(TDABusinessProcessorRules, IListaAnosPedidos, IListaAnosPedidosDelta)
|
||||
private
|
||||
protected
|
||||
{ Property getters and setters }
|
||||
function GetANOValue: String; virtual;
|
||||
function GetOldANOValue: String; virtual;
|
||||
procedure SetANOValue(const aValue: String); virtual;
|
||||
|
||||
{ Properties }
|
||||
property ANO : String read GetANOValue write SetANOValue;
|
||||
property OldANO : String read GetOldANOValue;
|
||||
|
||||
public
|
||||
constructor Create(aBusinessProcessor: TDABusinessProcessor); override;
|
||||
destructor Destroy; override;
|
||||
|
||||
end;
|
||||
|
||||
{ IPedidosProveedorDelta }
|
||||
IPedidosProveedorDelta = interface(IPedidosProveedor)
|
||||
['{C14C1230-236A-46C3-91AF-903D77FA30EE}']
|
||||
['{1DDF0247-6AED-4F12-AB3D-187CD8742029}']
|
||||
{ Property getters and setters }
|
||||
function GetOldCODIGOEMPRESAValue : Integer;
|
||||
function GetOldCODIGOValue : Integer;
|
||||
@ -288,7 +318,7 @@ type
|
||||
|
||||
{ IRefresh_PedidosProveedorDelta }
|
||||
IRefresh_PedidosProveedorDelta = interface(IRefresh_PedidosProveedor)
|
||||
['{9FC9D322-C920-4E9A-8CEA-23CD43B052ED}']
|
||||
['{1FA69710-D78F-4702-BB9C-FED9D0EF34FF}']
|
||||
{ Property getters and setters }
|
||||
function GetOldCODIGOEMPRESAValue : Integer;
|
||||
function GetOldCODIGOValue : Integer;
|
||||
@ -457,7 +487,7 @@ type
|
||||
|
||||
{ IInformeCabeceraPedidoDelta }
|
||||
IInformeCabeceraPedidoDelta = interface(IInformeCabeceraPedido)
|
||||
['{FF0381B3-8498-47B0-96EA-FE9723B370A6}']
|
||||
['{AAA39823-20B1-40CA-B150-B1DD9366F5F9}']
|
||||
{ Property getters and setters }
|
||||
function GetOldCODIGOEMPRESAValue : Integer;
|
||||
function GetOldCODIGOValue : Integer;
|
||||
@ -591,7 +621,7 @@ type
|
||||
|
||||
{ IInformeDetallesPedidoDelta }
|
||||
IInformeDetallesPedidoDelta = interface(IInformeDetallesPedido)
|
||||
['{011AA7C9-CDEC-493F-BA61-F01B37E0F0C3}']
|
||||
['{48CFF8AA-9EEB-4068-AB9E-362E5700810A}']
|
||||
{ Property getters and setters }
|
||||
function GetOldCODIGOPEDIDOValue : Integer;
|
||||
function GetOldNUMCONCEPTOValue : Integer;
|
||||
@ -816,6 +846,33 @@ begin
|
||||
end;
|
||||
|
||||
|
||||
{ TListaAnosPedidosBusinessProcessorRules }
|
||||
constructor TListaAnosPedidosBusinessProcessorRules.Create(aBusinessProcessor: TDABusinessProcessor);
|
||||
begin
|
||||
inherited;
|
||||
end;
|
||||
|
||||
destructor TListaAnosPedidosBusinessProcessorRules.Destroy;
|
||||
begin
|
||||
inherited;
|
||||
end;
|
||||
|
||||
function TListaAnosPedidosBusinessProcessorRules.GetANOValue: String;
|
||||
begin
|
||||
result := BusinessProcessor.CurrentChange.NewValueByName[fld_ListaAnosPedidosANO];
|
||||
end;
|
||||
|
||||
function TListaAnosPedidosBusinessProcessorRules.GetOldANOValue: String;
|
||||
begin
|
||||
result := BusinessProcessor.CurrentChange.OldValueByName[fld_ListaAnosPedidosANO];
|
||||
end;
|
||||
|
||||
procedure TListaAnosPedidosBusinessProcessorRules.SetANOValue(const aValue: String);
|
||||
begin
|
||||
BusinessProcessor.CurrentChange.NewValueByName[fld_ListaAnosPedidosANO] := aValue;
|
||||
end;
|
||||
|
||||
|
||||
{ TPedidosProveedorBusinessProcessorRules }
|
||||
constructor TPedidosProveedorBusinessProcessorRules.Create(aBusinessProcessor: TDABusinessProcessor);
|
||||
begin
|
||||
@ -1873,6 +1930,7 @@ end;
|
||||
initialization
|
||||
RegisterBusinessProcessorRules(RID_darReferenciaPedidoDelta, TdarReferenciaPedidoBusinessProcessorRules);
|
||||
RegisterBusinessProcessorRules(RID_DetallesPedidosProveedorDelta, TDetallesPedidosProveedorBusinessProcessorRules);
|
||||
RegisterBusinessProcessorRules(RID_ListaAnosPedidosDelta, TListaAnosPedidosBusinessProcessorRules);
|
||||
RegisterBusinessProcessorRules(RID_PedidosProveedorDelta, TPedidosProveedorBusinessProcessorRules);
|
||||
RegisterBusinessProcessorRules(RID_Refresh_PedidosProveedorDelta, TRefresh_PedidosProveedorBusinessProcessorRules);
|
||||
RegisterBusinessProcessorRules(RID_InformeCabeceraPedidoDelta, TInformeCabeceraPedidoBusinessProcessorRules);
|
||||
|
||||
@ -7,7 +7,7 @@ object srvPedidosProveedor: TsrvPedidosProveedor
|
||||
ServiceSchema = schPedidosProveedor
|
||||
ServiceAdapter = DABINAdapter
|
||||
Left = 445
|
||||
Top = 306
|
||||
Top = 267
|
||||
Height = 459
|
||||
Width = 300
|
||||
object schPedidosProveedor: TDASchema
|
||||
@ -169,6 +169,39 @@ object srvPedidosProveedor: TsrvPedidosProveedor
|
||||
BusinessRulesClient.ScriptLanguage = rslPascalScript
|
||||
BusinessRulesServer.ScriptLanguage = rslPascalScript
|
||||
end
|
||||
item
|
||||
Params = <>
|
||||
Statements = <
|
||||
item
|
||||
Connection = 'IBX'
|
||||
SQL =
|
||||
'select ANO from'#10'(select distinct(substr(FECHAPEDIDO, 1,4)) as AN' +
|
||||
'O'#10'from pedidos'#10'order by 1 desc)'#10#10'UNION ALL'#10#10'select distinct '#39'Tod' +
|
||||
'os'#39' as ANO'#10'from empresas'
|
||||
StatementType = stSQL
|
||||
ColumnMappings = <
|
||||
item
|
||||
DatasetField = 'ANO'
|
||||
TableField = 'ANO'
|
||||
end>
|
||||
end>
|
||||
Name = 'ListaAnosPedidos'
|
||||
Fields = <
|
||||
item
|
||||
Name = 'ANO'
|
||||
DataType = datString
|
||||
Size = 254
|
||||
BlobType = dabtUnknown
|
||||
DisplayWidth = 0
|
||||
Alignment = taLeftJustify
|
||||
InPrimaryKey = False
|
||||
Calculated = False
|
||||
Lookup = False
|
||||
LookupCache = False
|
||||
end>
|
||||
BusinessRulesClient.ScriptLanguage = rslPascalScript
|
||||
BusinessRulesServer.ScriptLanguage = rslPascalScript
|
||||
end
|
||||
item
|
||||
Params = <>
|
||||
Statements = <
|
||||
|
||||
@ -34,9 +34,9 @@ type
|
||||
IBDataSet2: TIBDataSet;
|
||||
DataSource1: TDataSource;
|
||||
DataSource2: TDataSource;
|
||||
schPedidosProveedor: TDASchema;
|
||||
DABINAdapter: TDABINAdapter;
|
||||
frxReport1: TfrxReport;
|
||||
schPedidosProveedor: TDASchema;
|
||||
private
|
||||
protected
|
||||
function GetNextAutoinc: Integer;
|
||||
|
||||
Binary file not shown.
Binary file not shown.
@ -702,4 +702,113 @@ object dmPresupuestos: TdmPresupuestos
|
||||
Left = 296
|
||||
Top = 40
|
||||
end
|
||||
object tbl_ListaAnosPresupuestos: TDACDSDataTable
|
||||
RemoteUpdatesOptions = []
|
||||
Fields = <
|
||||
item
|
||||
Name = 'ANO'
|
||||
DataType = datString
|
||||
Size = 254
|
||||
BlobType = dabtUnknown
|
||||
DisplayWidth = 0
|
||||
Alignment = taLeftJustify
|
||||
InPrimaryKey = False
|
||||
Calculated = False
|
||||
Lookup = False
|
||||
LookupCache = False
|
||||
end>
|
||||
Params = <>
|
||||
MasterMappingMode = mmDataRequest
|
||||
StreamingOptions = [soDisableEventsWhileStreaming]
|
||||
SchemaCall.MethodName = 'GetDatasetSchema'
|
||||
SchemaCall.Params = <
|
||||
item
|
||||
Name = 'Result'
|
||||
ParamType = fResult
|
||||
DataType = rtBinary
|
||||
end
|
||||
item
|
||||
Name = 'aDatasetName'
|
||||
ParamType = fIn
|
||||
DataType = rtString
|
||||
Value = 'ListaAnosPresupuestos'
|
||||
end>
|
||||
DataRequestCall.MethodName = 'GetDatasetDataEx'
|
||||
DataRequestCall.Params = <
|
||||
item
|
||||
Name = 'Result'
|
||||
ParamType = fResult
|
||||
DataType = rtBinary
|
||||
end
|
||||
item
|
||||
Name = 'DatasetName'
|
||||
ParamType = fIn
|
||||
DataType = rtString
|
||||
Value = 'ListaAnosPresupuestos'
|
||||
end
|
||||
item
|
||||
Name = 'Params'
|
||||
ParamType = fIn
|
||||
DataType = rtUserDefined
|
||||
UserClassName = 'TDADatasetParamArray'
|
||||
end
|
||||
item
|
||||
Name = 'UserFilter'
|
||||
ParamType = fIn
|
||||
DataType = rtString
|
||||
Value = ''
|
||||
end
|
||||
item
|
||||
Name = 'IncludeSchema'
|
||||
ParamType = fIn
|
||||
DataType = rtBoolean
|
||||
Value = False
|
||||
end
|
||||
item
|
||||
Name = 'MaxRecords'
|
||||
ParamType = fIn
|
||||
DataType = rtInteger
|
||||
Value = -1
|
||||
end>
|
||||
DataUpdateCall.MethodName = 'UpdateData'
|
||||
DataUpdateCall.Params = <
|
||||
item
|
||||
Name = 'Result'
|
||||
ParamType = fResult
|
||||
DataType = rtBinary
|
||||
end
|
||||
item
|
||||
Name = 'Delta'
|
||||
ParamType = fIn
|
||||
DataType = rtBinary
|
||||
end>
|
||||
ScriptCall.MethodName = 'GetDatasetScripts'
|
||||
ScriptCall.Params = <
|
||||
item
|
||||
Name = 'Result'
|
||||
ParamType = fResult
|
||||
DataType = rtString
|
||||
Value = ''
|
||||
end
|
||||
item
|
||||
Name = 'DatasetNames'
|
||||
ParamType = fIn
|
||||
DataType = rtString
|
||||
Value = 'ListaAnosPresupuestos'
|
||||
end>
|
||||
ReadOnly = False
|
||||
RemoteService = RORemoteService
|
||||
Adapter = DABinAdapter
|
||||
DetailOptions = [dtCascadeOpenClose, dtCascadeApplyUpdates, dtAutoFetch, dtCascadeDelete, dtCascadeUpdate, dtDisableLogOfCascadeDeletes, dtDisableLogOfCascadeUpdates, dtIncludeInAllInOneFetch]
|
||||
MasterOptions = [moCascadeOpenClose, moCascadeApplyUpdates, moCascadeDelete, moCascadeUpdate, moDisableLogOfCascadeDeletes, moDisableLogOfCascadeUpdates]
|
||||
LogicalName = 'ListaAnosPresupuestos'
|
||||
IndexDefs = <>
|
||||
Left = 72
|
||||
Top = 192
|
||||
end
|
||||
object ds_ListaAnosPresupuestos: TDADataSource
|
||||
DataTable = tbl_ListaAnosPresupuestos
|
||||
Left = 72
|
||||
Top = 136
|
||||
end
|
||||
end
|
||||
|
||||
@ -53,6 +53,8 @@ type
|
||||
ds_DetallesPresupuestos: TDADataSource;
|
||||
tbl_Presupuestos: TDACDSDataTable;
|
||||
ds_Presupuestos: TDADataSource;
|
||||
tbl_ListaAnosPresupuestos: TDACDSDataTable;
|
||||
ds_ListaAnosPresupuestos: TDADataSource;
|
||||
procedure DAClientDataModuleCreate(Sender: TObject);
|
||||
public
|
||||
function PuedoEliminarPresupuesto (CodigoPresupuesto : Integer) : Boolean;
|
||||
@ -67,6 +69,9 @@ type
|
||||
procedure Refrescar(lReport: TfrxReport; Const Codigo: Integer; const TamLetra: Integer);
|
||||
procedure Print(Const Codigo: Integer);
|
||||
function GetItemsSeleccionados(ASource : IBizPresupuestos): IBizPresupuestos;
|
||||
|
||||
function DarListaAnosPresupuestos: TStringList;
|
||||
procedure FiltrarAno(APresupuestos: IBizPresupuestos; AWhereDataTable: String; const Ano: String);
|
||||
end;
|
||||
|
||||
var
|
||||
@ -77,7 +82,7 @@ implementation
|
||||
{$R *.DFM}
|
||||
|
||||
uses
|
||||
Forms, Controls, uDataTableUtils, uBizContacto, Dialogs, Variants,
|
||||
Forms, Controls, cxControls, uDataTableUtils, uBizContacto, Dialogs, Variants,
|
||||
uDataModuleContactos, uDataModuleBase, schPresupuestosClient_Intf,
|
||||
uDAInterfaces, uEditorPreview, uEditorPreviewPresupuesto, uROTypes,
|
||||
uDBSelectionList;
|
||||
@ -320,6 +325,55 @@ begin
|
||||
lReport.ShowPreparedReport;
|
||||
end;
|
||||
|
||||
procedure TdmPresupuestos.FiltrarAno(APresupuestos: IBizPresupuestos; AWhereDataTable: String; const Ano: String);
|
||||
var
|
||||
FechaIni: String;
|
||||
FechaFin: String;
|
||||
|
||||
begin
|
||||
APresupuestos.DataTable.Where.Clear;
|
||||
APresupuestos.DataTable.Where.AddText(AWhereDataTable);
|
||||
|
||||
if (Ano <> 'Todos') then
|
||||
begin
|
||||
// Filtrar los presupuestos actuales por años
|
||||
FechaIni := '01.01.' + Ano;
|
||||
FechaFin := '31.12.' + Ano;
|
||||
with APresupuestos.DataTable.Where do
|
||||
begin
|
||||
if NotEmpty then
|
||||
AddOperator(opAND);
|
||||
AddCondition(fld_PresupuestosFECHAPRESUPUESTO, cMajorOrEqual, FechaIni);
|
||||
AddOperator(opAND);
|
||||
AddCondition(fld_PresupuestosFECHAPRESUPUESTO, cLessOrEqual, FechaFin);
|
||||
end;
|
||||
end;
|
||||
end;
|
||||
|
||||
function TdmPresupuestos.DarListaAnosPresupuestos: TStringList;
|
||||
var
|
||||
AListaAnos: TStringList;
|
||||
begin
|
||||
AListaAnos := TStringList.Create;
|
||||
ShowHourglassCursor;
|
||||
try
|
||||
with tbl_ListaAnosPresupuestos do
|
||||
begin
|
||||
Open;
|
||||
First;
|
||||
while not eof do
|
||||
begin
|
||||
AListaAnos.Add(Format('%s=%s', [Fields[0].AsString, Fields[0].AsString]));
|
||||
Next;
|
||||
end;
|
||||
Close;
|
||||
end;
|
||||
Result := AListaAnos;
|
||||
finally
|
||||
HideHourglassCursor;
|
||||
end;
|
||||
end;
|
||||
|
||||
initialization
|
||||
dmPresupuestos := TdmPresupuestos.Create(nil);
|
||||
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
inherited fEditorPresupuestos: TfEditorPresupuestos
|
||||
Left = 221
|
||||
Top = 235
|
||||
Top = 205
|
||||
Width = 781
|
||||
Caption = 'Lista de presupuestos'
|
||||
PixelsPerInch = 96
|
||||
@ -41,7 +41,15 @@ inherited fEditorPresupuestos: TfEditorPresupuestos
|
||||
end
|
||||
end
|
||||
inherited tbxFiltro: TTBXToolbar
|
||||
Left = 471
|
||||
inherited lblAno: TTBXLabelItem
|
||||
Visible = True
|
||||
end
|
||||
inherited cbxListaAnos: TTBXComboBoxItem
|
||||
Visible = True
|
||||
end
|
||||
inherited sepAno: TTBXSeparatorItem
|
||||
Visible = True
|
||||
end
|
||||
end
|
||||
end
|
||||
inherited StatusBar: TStatusBar
|
||||
|
||||
@ -20,7 +20,7 @@ type
|
||||
property Presupuestos: IBizPresupuestos read GetPresupuestos write
|
||||
SetPresupuestos;
|
||||
end;
|
||||
|
||||
|
||||
TfEditorPresupuestos = class(TfEditorGrid, IEditorPresupuestos)
|
||||
frViewBarraSeleccion: TfrViewBarraSeleccion;
|
||||
actAceptado: TAction;
|
||||
@ -42,8 +42,12 @@ type
|
||||
procedure actAceptadoExecute(Sender: TObject);
|
||||
procedure actRechazadoExecute(Sender: TObject);
|
||||
procedure actPendienteExecute(Sender: TObject);
|
||||
procedure OnListaAnosChange(Sender: TObject; const Text: string);
|
||||
procedure FormShow(Sender: TObject);
|
||||
|
||||
private
|
||||
FPresupuestos: IBizPresupuestos;
|
||||
|
||||
protected
|
||||
function GetPresupuestos: IBizPresupuestos;
|
||||
function GetSelectionBarVisible: Boolean;
|
||||
@ -171,9 +175,17 @@ end;
|
||||
procedure TfEditorPresupuestos.SetPresupuestos(const Value: IBizPresupuestos);
|
||||
begin
|
||||
FPresupuestos := Value;
|
||||
dsDataTable.DataTable := FPresupuestos.DataTable;
|
||||
if Assigned(ViewGrid) then
|
||||
(ViewGrid as IViewPresupuestos).Presupuestos := Presupuestos;
|
||||
|
||||
if Assigned(FPresupuestos) 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))
|
||||
WhereDataTable := FPresupuestos.DataTable.Where.Clause;
|
||||
|
||||
dsDataTable.DataTable := FPresupuestos.DataTable;
|
||||
if Assigned(ViewGrid) then
|
||||
(ViewGrid as IViewPresupuestos).Presupuestos := Presupuestos;
|
||||
end;
|
||||
end;
|
||||
|
||||
procedure TfEditorPresupuestos.SetSelectionBarVisible(const Value: Boolean);
|
||||
@ -249,6 +261,21 @@ begin
|
||||
end;
|
||||
end;
|
||||
|
||||
procedure TfEditorPresupuestos.OnListaAnosChange(Sender: TObject; const Text: string);
|
||||
begin
|
||||
dmPresupuestos.FiltrarAno(Presupuestos, WhereDataTable, Text);
|
||||
if Presupuestos.DataTable.Active then
|
||||
actRefrescar.Execute;
|
||||
end;
|
||||
|
||||
procedure TfEditorPresupuestos.FormShow(Sender: TObject);
|
||||
begin
|
||||
ListaAnos := dmPresupuestos.DarListaAnosPresupuestos;
|
||||
cbxListaAnos.OnChange := OnListaAnosChange; //OJO SIEMPRE ANTES DEL INHERITED
|
||||
|
||||
inherited;
|
||||
end;
|
||||
|
||||
initialization
|
||||
RegisterEditor(IBizPresupuestos, ShowEditorPresupuestos, etItems);
|
||||
RegisterEditor(IBizPresupuestos, ShowSelectEditorPresupuestos, etSelectItems);
|
||||
|
||||
@ -9,19 +9,27 @@ 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_DetallesPresupuestos = '{A6A79145-2CF4-404F-AF3C-216C6C1C6220}';
|
||||
RID_Presupuestos = '{5B155DB3-9C72-4E74-AF1E-2F5F54B8C085}';
|
||||
RID_Presupuestos_RefreshDataset = '{A4DBCB7A-51D7-4CC6-AE4C-4F3E92E621C3}';
|
||||
RID_InformeCabeceraPresupuesto = '{264277A9-3681-40C0-90A1-E3164B449B02}';
|
||||
RID_InformeDetallesPresupuesto = '{31CD6A31-A8D3-4D6E-9AA5-FD7D0B85DDBA}';
|
||||
RID_ListaAnosPresupuestos = '{95031149-82C7-4C73-BC10-9B1285B42FD8}';
|
||||
RID_DetallesPresupuestos = '{4155E7A3-B36F-440C-9232-FCDA6E0E57D3}';
|
||||
RID_Presupuestos = '{3C692B06-401D-4BB5-9E59-1029ECE88CCA}';
|
||||
RID_Presupuestos_RefreshDataset = '{4DDAA5E9-1786-49E9-82E4-92A8E5A30D2E}';
|
||||
RID_InformeCabeceraPresupuesto = '{3826E313-F328-47E3-AFF6-4C02E162BD3C}';
|
||||
RID_InformeDetallesPresupuesto = '{363E9ABE-D657-4094-A45A-1F44E3CC35DE}';
|
||||
|
||||
{ Data table names }
|
||||
nme_ListaAnosPresupuestos = 'ListaAnosPresupuestos';
|
||||
nme_DetallesPresupuestos = 'DetallesPresupuestos';
|
||||
nme_Presupuestos = 'Presupuestos';
|
||||
nme_Presupuestos_RefreshDataset = 'Presupuestos_RefreshDataset';
|
||||
nme_InformeCabeceraPresupuesto = 'InformeCabeceraPresupuesto';
|
||||
nme_InformeDetallesPresupuesto = 'InformeDetallesPresupuesto';
|
||||
|
||||
{ ListaAnosPresupuestos fields }
|
||||
fld_ListaAnosPresupuestosANO = 'ANO';
|
||||
|
||||
{ ListaAnosPresupuestos field indexes }
|
||||
idx_ListaAnosPresupuestosANO = 0;
|
||||
|
||||
{ DetallesPresupuestos fields }
|
||||
fld_DetallesPresupuestosCODIGOPRESUPUESTO = 'CODIGOPRESUPUESTO';
|
||||
fld_DetallesPresupuestosNUMCONCEPTO = 'NUMCONCEPTO';
|
||||
@ -203,9 +211,38 @@ const
|
||||
idx_InformeDetallesPresupuestoPOSICION = 7;
|
||||
|
||||
type
|
||||
{ IListaAnosPresupuestos }
|
||||
IListaAnosPresupuestos = interface(IDAStronglyTypedDataTable)
|
||||
['{6D5B13E0-C373-43E8-B599-1AD86BD6ABF2}']
|
||||
{ Property getters and setters }
|
||||
function GetANOValue: String;
|
||||
procedure SetANOValue(const aValue: String);
|
||||
|
||||
|
||||
{ Properties }
|
||||
property ANO: String read GetANOValue write SetANOValue;
|
||||
end;
|
||||
|
||||
{ TListaAnosPresupuestosDataTableRules }
|
||||
TListaAnosPresupuestosDataTableRules = class(TDADataTableRules, IListaAnosPresupuestos)
|
||||
private
|
||||
protected
|
||||
{ Property getters and setters }
|
||||
function GetANOValue: String; virtual;
|
||||
procedure SetANOValue(const aValue: String); virtual;
|
||||
|
||||
{ Properties }
|
||||
property ANO: String read GetANOValue write SetANOValue;
|
||||
|
||||
public
|
||||
constructor Create(aDataTable: TDADataTable); override;
|
||||
destructor Destroy; override;
|
||||
|
||||
end;
|
||||
|
||||
{ IDetallesPresupuestos }
|
||||
IDetallesPresupuestos = interface(IDAStronglyTypedDataTable)
|
||||
['{44CD0F43-9391-4901-9C68-B711CBCB7FDC}']
|
||||
['{18414808-5E3F-4017-8DCF-885665361C3C}']
|
||||
{ Property getters and setters }
|
||||
function GetCODIGOPRESUPUESTOValue: Integer;
|
||||
procedure SetCODIGOPRESUPUESTOValue(const aValue: Integer);
|
||||
@ -294,7 +331,7 @@ type
|
||||
|
||||
{ IPresupuestos }
|
||||
IPresupuestos = interface(IDAStronglyTypedDataTable)
|
||||
['{27C72B9E-C122-4FA0-A412-B2681821A051}']
|
||||
['{3B57E67A-BCF1-4A9C-8DE3-680F3FC7E851}']
|
||||
{ Property getters and setters }
|
||||
function GetCODIGOEMPRESAValue: Integer;
|
||||
procedure SetCODIGOEMPRESAValue(const aValue: Integer);
|
||||
@ -461,7 +498,7 @@ type
|
||||
|
||||
{ IPresupuestos_RefreshDataset }
|
||||
IPresupuestos_RefreshDataset = interface(IDAStronglyTypedDataTable)
|
||||
['{36CACFE6-C6B9-497D-A821-2ABF5E3298F0}']
|
||||
['{5097F042-BB92-4714-98E3-38D672728B8B}']
|
||||
{ Property getters and setters }
|
||||
function GetCODIGOValue: Integer;
|
||||
procedure SetCODIGOValue(const aValue: Integer);
|
||||
@ -514,7 +551,7 @@ type
|
||||
|
||||
{ IInformeCabeceraPresupuesto }
|
||||
IInformeCabeceraPresupuesto = interface(IDAStronglyTypedDataTable)
|
||||
['{B0CC1F1A-3AC1-4696-A03F-15F309307109}']
|
||||
['{68F7F7E4-616C-464B-A795-E4ACAFC2D708}']
|
||||
{ Property getters and setters }
|
||||
function GetCODIGOEMPRESAValue: Integer;
|
||||
procedure SetCODIGOEMPRESAValue(const aValue: Integer);
|
||||
@ -729,7 +766,7 @@ type
|
||||
|
||||
{ IInformeDetallesPresupuesto }
|
||||
IInformeDetallesPresupuesto = interface(IDAStronglyTypedDataTable)
|
||||
['{331BAA43-0C6C-45D7-A7C2-098D7686A53F}']
|
||||
['{25CACDCE-E4DB-42FC-B0B8-78493C06240D}']
|
||||
{ Property getters and setters }
|
||||
function GetCODIGOPRESUPUESTOValue: Integer;
|
||||
procedure SetCODIGOPRESUPUESTOValue(const aValue: Integer);
|
||||
@ -802,6 +839,28 @@ implementation
|
||||
|
||||
uses Variants;
|
||||
|
||||
{ TListaAnosPresupuestosDataTableRules }
|
||||
constructor TListaAnosPresupuestosDataTableRules.Create(aDataTable: TDADataTable);
|
||||
begin
|
||||
inherited;
|
||||
end;
|
||||
|
||||
destructor TListaAnosPresupuestosDataTableRules.Destroy;
|
||||
begin
|
||||
inherited;
|
||||
end;
|
||||
|
||||
function TListaAnosPresupuestosDataTableRules.GetANOValue: String;
|
||||
begin
|
||||
result := DataTable.Fields[idx_ListaAnosPresupuestosANO].AsString;
|
||||
end;
|
||||
|
||||
procedure TListaAnosPresupuestosDataTableRules.SetANOValue(const aValue: String);
|
||||
begin
|
||||
DataTable.Fields[idx_ListaAnosPresupuestosANO].AsString := aValue;
|
||||
end;
|
||||
|
||||
|
||||
{ TDetallesPresupuestosDataTableRules }
|
||||
constructor TDetallesPresupuestosDataTableRules.Create(aDataTable: TDADataTable);
|
||||
begin
|
||||
@ -1669,6 +1728,7 @@ end;
|
||||
|
||||
|
||||
initialization
|
||||
RegisterDataTableRules(RID_ListaAnosPresupuestos, TListaAnosPresupuestosDataTableRules);
|
||||
RegisterDataTableRules(RID_DetallesPresupuestos, TDetallesPresupuestosDataTableRules);
|
||||
RegisterDataTableRules(RID_Presupuestos, TPresupuestosDataTableRules);
|
||||
RegisterDataTableRules(RID_Presupuestos_RefreshDataset, TPresupuestos_RefreshDatasetDataTableRules);
|
||||
|
||||
@ -9,16 +9,46 @@ 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_DetallesPresupuestosDelta = '{27189DEC-DB55-4CFF-90D4-3CCC8C3789B7}';
|
||||
RID_PresupuestosDelta = '{AD80280F-15D4-422B-9E7C-B413BD6D9270}';
|
||||
RID_Presupuestos_RefreshDatasetDelta = '{F4E70462-4089-44C8-AFAA-B6FDEFE43DB9}';
|
||||
RID_InformeCabeceraPresupuestoDelta = '{41A03000-031E-4727-B794-E79D553EC52B}';
|
||||
RID_InformeDetallesPresupuestoDelta = '{741759BF-9981-4B00-A217-C5C769B36552}';
|
||||
RID_ListaAnosPresupuestosDelta = '{CBA70605-3C3B-48A1-A28C-B1E97902006E}';
|
||||
RID_DetallesPresupuestosDelta = '{A06F07C8-8609-4E0C-A202-CDFD98C02B75}';
|
||||
RID_PresupuestosDelta = '{475CF11F-7C34-4390-B427-291574D72D01}';
|
||||
RID_Presupuestos_RefreshDatasetDelta = '{7B057008-D651-4A1C-B4B7-08C7C4A566F9}';
|
||||
RID_InformeCabeceraPresupuestoDelta = '{749B0EED-D424-4553-BE62-F24B9EE4B0DE}';
|
||||
RID_InformeDetallesPresupuestoDelta = '{322F58BC-E445-4DF9-9BFB-86086B38356B}';
|
||||
|
||||
type
|
||||
{ IListaAnosPresupuestosDelta }
|
||||
IListaAnosPresupuestosDelta = interface(IListaAnosPresupuestos)
|
||||
['{CBA70605-3C3B-48A1-A28C-B1E97902006E}']
|
||||
{ Property getters and setters }
|
||||
function GetOldANOValue : String;
|
||||
|
||||
{ Properties }
|
||||
property OldANO : String read GetOldANOValue;
|
||||
end;
|
||||
|
||||
{ TListaAnosPresupuestosBusinessProcessorRules }
|
||||
TListaAnosPresupuestosBusinessProcessorRules = class(TDABusinessProcessorRules, IListaAnosPresupuestos, IListaAnosPresupuestosDelta)
|
||||
private
|
||||
protected
|
||||
{ Property getters and setters }
|
||||
function GetANOValue: String; virtual;
|
||||
function GetOldANOValue: String; virtual;
|
||||
procedure SetANOValue(const aValue: String); virtual;
|
||||
|
||||
{ Properties }
|
||||
property ANO : String read GetANOValue write SetANOValue;
|
||||
property OldANO : String read GetOldANOValue;
|
||||
|
||||
public
|
||||
constructor Create(aBusinessProcessor: TDABusinessProcessor); override;
|
||||
destructor Destroy; override;
|
||||
|
||||
end;
|
||||
|
||||
{ IDetallesPresupuestosDelta }
|
||||
IDetallesPresupuestosDelta = interface(IDetallesPresupuestos)
|
||||
['{27189DEC-DB55-4CFF-90D4-3CCC8C3789B7}']
|
||||
['{A06F07C8-8609-4E0C-A202-CDFD98C02B75}']
|
||||
{ Property getters and setters }
|
||||
function GetOldCODIGOPRESUPUESTOValue : Integer;
|
||||
function GetOldNUMCONCEPTOValue : Integer;
|
||||
@ -117,7 +147,7 @@ type
|
||||
|
||||
{ IPresupuestosDelta }
|
||||
IPresupuestosDelta = interface(IPresupuestos)
|
||||
['{AD80280F-15D4-422B-9E7C-B413BD6D9270}']
|
||||
['{475CF11F-7C34-4390-B427-291574D72D01}']
|
||||
{ Property getters and setters }
|
||||
function GetOldCODIGOEMPRESAValue : Integer;
|
||||
function GetOldCODIGOValue : Integer;
|
||||
@ -307,7 +337,7 @@ type
|
||||
|
||||
{ IPresupuestos_RefreshDatasetDelta }
|
||||
IPresupuestos_RefreshDatasetDelta = interface(IPresupuestos_RefreshDataset)
|
||||
['{F4E70462-4089-44C8-AFAA-B6FDEFE43DB9}']
|
||||
['{7B057008-D651-4A1C-B4B7-08C7C4A566F9}']
|
||||
{ Property getters and setters }
|
||||
function GetOldCODIGOValue : Integer;
|
||||
function GetOldNOMBREValue : String;
|
||||
@ -364,7 +394,7 @@ type
|
||||
|
||||
{ IInformeCabeceraPresupuestoDelta }
|
||||
IInformeCabeceraPresupuestoDelta = interface(IInformeCabeceraPresupuesto)
|
||||
['{41A03000-031E-4727-B794-E79D553EC52B}']
|
||||
['{749B0EED-D424-4553-BE62-F24B9EE4B0DE}']
|
||||
{ Property getters and setters }
|
||||
function GetOldCODIGOEMPRESAValue : Integer;
|
||||
function GetOldCODIGOValue : Integer;
|
||||
@ -610,7 +640,7 @@ type
|
||||
|
||||
{ IInformeDetallesPresupuestoDelta }
|
||||
IInformeDetallesPresupuestoDelta = interface(IInformeDetallesPresupuesto)
|
||||
['{741759BF-9981-4B00-A217-C5C769B36552}']
|
||||
['{322F58BC-E445-4DF9-9BFB-86086B38356B}']
|
||||
{ Property getters and setters }
|
||||
function GetOldCODIGOPRESUPUESTOValue : Integer;
|
||||
function GetOldNUMCONCEPTOValue : Integer;
|
||||
@ -691,6 +721,33 @@ implementation
|
||||
uses
|
||||
Variants, uROBinaryHelpers;
|
||||
|
||||
{ TListaAnosPresupuestosBusinessProcessorRules }
|
||||
constructor TListaAnosPresupuestosBusinessProcessorRules.Create(aBusinessProcessor: TDABusinessProcessor);
|
||||
begin
|
||||
inherited;
|
||||
end;
|
||||
|
||||
destructor TListaAnosPresupuestosBusinessProcessorRules.Destroy;
|
||||
begin
|
||||
inherited;
|
||||
end;
|
||||
|
||||
function TListaAnosPresupuestosBusinessProcessorRules.GetANOValue: String;
|
||||
begin
|
||||
result := BusinessProcessor.CurrentChange.NewValueByName[fld_ListaAnosPresupuestosANO];
|
||||
end;
|
||||
|
||||
function TListaAnosPresupuestosBusinessProcessorRules.GetOldANOValue: String;
|
||||
begin
|
||||
result := BusinessProcessor.CurrentChange.OldValueByName[fld_ListaAnosPresupuestosANO];
|
||||
end;
|
||||
|
||||
procedure TListaAnosPresupuestosBusinessProcessorRules.SetANOValue(const aValue: String);
|
||||
begin
|
||||
BusinessProcessor.CurrentChange.NewValueByName[fld_ListaAnosPresupuestosANO] := aValue;
|
||||
end;
|
||||
|
||||
|
||||
{ TDetallesPresupuestosBusinessProcessorRules }
|
||||
constructor TDetallesPresupuestosBusinessProcessorRules.Create(aBusinessProcessor: TDABusinessProcessor);
|
||||
begin
|
||||
@ -1964,6 +2021,7 @@ end;
|
||||
|
||||
|
||||
initialization
|
||||
RegisterBusinessProcessorRules(RID_ListaAnosPresupuestosDelta, TListaAnosPresupuestosBusinessProcessorRules);
|
||||
RegisterBusinessProcessorRules(RID_DetallesPresupuestosDelta, TDetallesPresupuestosBusinessProcessorRules);
|
||||
RegisterBusinessProcessorRules(RID_PresupuestosDelta, TPresupuestosBusinessProcessorRules);
|
||||
RegisterBusinessProcessorRules(RID_Presupuestos_RefreshDatasetDelta, TPresupuestos_RefreshDatasetBusinessProcessorRules);
|
||||
|
||||
@ -6,8 +6,8 @@ object srvPresupuestos: TsrvPresupuestos
|
||||
ConnectionName = 'IBX'
|
||||
ServiceSchema = schPresupuestos
|
||||
ServiceAdapter = DABINAdapter
|
||||
Left = 729
|
||||
Top = 363
|
||||
Left = 728
|
||||
Top = 316
|
||||
Height = 359
|
||||
Width = 328
|
||||
object schPresupuestos: TDASchema
|
||||
@ -15,6 +15,39 @@ object srvPresupuestos: TsrvPresupuestos
|
||||
DataDictionary = dmServer.DataDictionary
|
||||
Diagrams = dmServer.DADiagrams
|
||||
Datasets = <
|
||||
item
|
||||
Params = <>
|
||||
Statements = <
|
||||
item
|
||||
Connection = 'IBX'
|
||||
SQL =
|
||||
'select ANO from'#10'(select distinct(substr(FECHAPRESUPUESTO, 1,4)) ' +
|
||||
'as ANO'#10'from presupuestos'#10'order by 1 desc)'#10#10'UNION ALL'#10#10'select dis' +
|
||||
'tinct '#39'Todos'#39' as ANO'#10'from empresas'
|
||||
StatementType = stSQL
|
||||
ColumnMappings = <
|
||||
item
|
||||
DatasetField = 'ANO'
|
||||
TableField = 'ANO'
|
||||
end>
|
||||
end>
|
||||
Name = 'ListaAnosPresupuestos'
|
||||
Fields = <
|
||||
item
|
||||
Name = 'ANO'
|
||||
DataType = datString
|
||||
Size = 254
|
||||
BlobType = dabtUnknown
|
||||
DisplayWidth = 0
|
||||
Alignment = taLeftJustify
|
||||
InPrimaryKey = False
|
||||
Calculated = False
|
||||
Lookup = False
|
||||
LookupCache = False
|
||||
end>
|
||||
BusinessRulesClient.ScriptLanguage = rslPascalScript
|
||||
BusinessRulesServer.ScriptLanguage = rslPascalScript
|
||||
end
|
||||
item
|
||||
Params = <
|
||||
item
|
||||
|
||||
Binary file not shown.
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user