Removed file/folder

git-svn-id: https://192.168.0.254/svn/Proyectos.LuisLeon_FactuGES/trunk@86 c93665c3-c93d-084d-9b98-7d5f4a9c3376
This commit is contained in:
roberto 2007-07-11 15:23:16 +00:00
parent 8d2615a90d
commit 307facca22
36 changed files with 0 additions and 9835 deletions

View File

@ -1,150 +0,0 @@
[FileVersion]
Version=7.0
[Compiler]
A=8
B=0
C=1
D=1
E=0
F=0
G=1
H=1
I=1
J=0
K=0
L=1
M=0
N=1
O=0
P=1
Q=0
R=0
S=0
T=0
U=0
V=1
W=0
X=1
Y=1
Z=1
ShowHints=1
ShowWarnings=1
UnitAliases=WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE;
NamespacePrefix=
SymbolDeprecated=1
SymbolLibrary=1
SymbolPlatform=1
UnitLibrary=1
UnitPlatform=1
UnitDeprecated=1
HResultCompat=1
HidingMember=1
HiddenVirtual=1
Garbage=1
BoundsError=1
ZeroNilCompat=1
StringConstTruncated=1
ForLoopVarVarPar=1
TypedConstVarPar=1
AsgToTypedConst=1
CaseLabelRange=1
ForVariable=1
ConstructingAbstract=1
ComparisonFalse=1
ComparisonTrue=1
ComparingSignedUnsigned=1
CombiningSignedUnsigned=1
UnsupportedConstruct=1
FileOpen=1
FileOpenUnitSrc=1
BadGlobalSymbol=1
DuplicateConstructorDestructor=1
InvalidDirective=1
PackageNoLink=1
PackageThreadVar=1
ImplicitImport=1
HPPEMITIgnored=1
NoRetVal=1
UseBeforeDef=1
ForLoopVarUndef=1
UnitNameMismatch=1
NoCFGFileFound=1
MessageDirective=1
ImplicitVariants=1
UnicodeToLocale=1
LocaleToUnicode=1
ImagebaseMultiple=1
SuspiciousTypecast=1
PrivatePropAccessor=1
UnsafeType=0
UnsafeCode=0
UnsafeCast=0
[Linker]
MapFile=3
OutputObjs=0
ConsoleApp=1
DebugInfo=0
RemoteSymbols=0
MinStackSize=16384
MaxStackSize=1048576
ImageBase=4194304
ExeDescription=
[Directories]
OutputDir=
UnitOutputDir=.\
PackageDLLOutputDir=..\..\..\Output\Cliente
PackageDCPOutputDir=.\
SearchPath=..\..\..\Base;..\..\..\ControlesBase
Packages=vcl;rtl;vclx;indy;inet;xmlrtl;vclie;inetdbbde;inetdbxpress;dbrtl;dsnap;dsnapcon;vcldb;soaprtl;VclSmp;dbexpress;dbxcds;inetdb;bdertl;vcldbx;webdsnap;websnap;adortl;ibxpress;teeui;teedb;tee;dss;visualclx;visualdbclx;vclactnband;vclshlctrls;dclOfficeXP;cxLibraryVCLD7;dxThemeD7;cxTreeListVCLD7;cxEditorsVCLD7;cxDataD7;cxExtEditorsVCLD7;cxGridVCLD7;cxPageControlVCLD7;cxSchedulerVCLD7;dxComnD7;dxsbD7;dxBarD7;dxBarDBNavD7;dxBarExtDBItemsD7;dxBarExtItemsD7;dxDockingD7;dxLayoutControlD7;dxNavBarD7;dxPSCoreD7;cxExportVCLD7;cxIntl5D7;cxIntlPrintSys3D7;cxIntlSchedulerD7;fsIBX7;fs7;fqb70;frx7;frxADO7;frxBDE7;frxcs7;frxDB7;frxDBX7;frxe7;frxIBX7;fsADO7;fsBDE7;fsDB7;cxVerticalGridVCLD7
Conditionals=
DebugSourceDirs=
UsePackages=0
[Parameters]
RunParams=
HostApplication=
Launcher=
UseLauncher=0
DebugCWD=
[Language]
ActiveLang=
ProjectLang=
RootDir=C:\Archivos de programa\Borland\Delphi7\Bin\
[Version Info]
IncludeVerInfo=1
AutoIncBuild=0
MajorVer=1
MinorVer=0
Release=3
Build=0
Debug=0
PreRelease=0
Special=0
Private=0
DLL=0
Locale=3082
CodePage=1252
[Version Info Keys]
CompanyName=
FileDescription=
FileVersion=1.0.3.0
InternalName=
LegalCopyright=
LegalTrademarks=
OriginalFilename=
ProductName=
ProductVersion=1.0.0.0
Comments=
[Excluded Packages]
C:\Archivos de programa\Borland\Delphi7\Projects\Bpl\dxPSCoreD7.bpl=ExpressPrinting System by Developer Express Inc.
D:\Proyectos\Componentes\cxGridTools\Lib\D7\xcxGridConfigPkg7.bpl=xcxGridTools - Config Dialog
D:\Proyectos\Componentes\cxGridTools\Lib\D7\xcxGridSummaryConfig7.bpl=xcxGridTools - Summary Config
D:\Proyectos\Componentes\cxGridTools\Lib\D7\xcxGridEnhancedPropertiesStorePkg7.bpl=xcxGridTools - Enhanced Grid Properties Store
D:\Proyectos\Componentes\cxGridTools\Lib\D7\xcxGridQuickSearch7.bpl=xcxGridTools - Quick Search
D:\Proyectos\Componentes\cxGridTools\Lib\D7\xcxGridActionsPkg7.bpl=xcxGridTools - Actions
c:\archivos de programa\borland\delphi7\Projects\Bpl\NextBaseD7.bpl=(untitled)
c:\archivos de programa\borland\delphi7\Projects\Bpl\NextCollectionD7.bpl=(untitled)
c:\archivos de programa\borland\delphi7\Projects\Bpl\NextAddOnsD7.bpl=(untitled)
c:\archivos de programa\borland\delphi7\Projects\Bpl\NextTBXD7.bpl=(untitled)
c:\archivos de programa\borland\delphi7\Projects\Bpl\NextGridD7.bpl=(untitled)
c:\archivos de programa\borland\delphi7\Projects\Bpl\RodaxFrameD7.bpl=Frames Acana (D7)
c:\archivos de programa\borland\delphi7\Projects\Bpl\dclIndy70.bpl=Internet Direct (Indy) for D7 Property and Component Editors

View File

@ -1,84 +0,0 @@
package VentasTerminadas;
{$R *.res}
{$ALIGN 8}
{$ASSERTIONS ON}
{$BOOLEVAL OFF}
{$DEBUGINFO ON}
{$EXTENDEDSYNTAX ON}
{$IMPORTEDDATA ON}
{$IOCHECKS ON}
{$LOCALSYMBOLS ON}
{$LONGSTRINGS ON}
{$OPENSTRINGS ON}
{$OPTIMIZATION OFF}
{$OVERFLOWCHECKS OFF}
{$RANGECHECKS OFF}
{$REFERENCEINFO ON}
{$SAFEDIVIDE OFF}
{$STACKFRAMES OFF}
{$TYPEDADDRESS OFF}
{$VARSTRINGCHECKS ON}
{$WRITEABLECONST OFF}
{$MINENUMSIZE 1}
{$IMAGEBASE $400000}
{$IMPLICITBUILD OFF}
requires
BaseD7,
rtl,
vcl,
PluginSDK_D7R,
PngComponentsD7,
PNG_D7,
vclactnband,
vclx,
GUISDK_D7,
dbrtl,
dsnap,
adortl,
tb2k_d7,
tbx_d7,
JvCoreD7R,
vcljpg,
Jcl,
JclVcl,
JvSystemD7R,
JvPageCompsD7R,
JvStdCtrlsD7R,
cxTreeListVCLD7,
dxThemeD7,
cxLibraryVCLD7,
cxExportVCLD7,
cxEditorsVCLD7,
cxDataD7,
vcldb,
cxGridVCLD7,
cxPageControlVCLD7,
cxExtEditorsVCLD7,
dxPSCoreD7,
dxComnD7,
dxPScxCommonD7,
dxPSLnksD7,
designide,
vclshlctrls,
dxPScxGridLnkD7,
dclcxLibraryVCLD7,
ControlesBaseD7;
contains
uPluginControllerVentasTerminadas in 'uPluginControllerVentasTerminadas.pas' {ModuleVentasTerminadas: TModuleController},
uDataModuleVentasTerminadas in 'uDataModuleVentasTerminadas.pas' {dmVentasTerminadas: TDAClientDataModule},
uBizVentasTerminadas in '..\Reglas\uBizVentasTerminadas.pas',
uBizControlVentasTerminadas in '..\Reglas\uBizControlVentasTerminadas.pas',
schVentasTerminadasClient_Intf in '..\Reglas\schVentasTerminadasClient_Intf.pas',
uEditorControlesVentasTerminadas in 'uEditorControlesVentasTerminadas.pas' {fEditorControlesVentasTerminadas: TCustomEditor},
uViewControlesVentasTerminadas in 'uViewControlesVentasTerminadas.pas' {frViewControlesVentasTerminadas: TCustomView},
uViewControlVentasTerminadas in 'uViewControlVentasTerminadas.pas' {frViewControlVentasTerminadas: TCustomView},
uEditorControlVentasTerminadas in 'uEditorControlVentasTerminadas.pas' {fEditorControlVentasTerminadas: TCustomEditor},
uViewControGridlVentasTerminadas in 'uViewControGridlVentasTerminadas.pas' {frViewControlGridVentasTerminadas: TCustomView},
uViewControGridResumenVentas in 'uViewControGridResumenVentas.pas' {frViewControlGridResumenVentas: TCustomView},
uEditorControlResumenVentas in 'uEditorControlResumenVentas.pas' {fEditorControlResumenVentas: TCustomEditor},
schVentasTerminadasServer_Intf in '..\Reglas\schVentasTerminadasServer_Intf.pas';
end.

View File

@ -1,14 +0,0 @@
/* VER150
Generated by the Borland Delphi Pascal Compiler
because -GD or --drc was supplied to the compiler.
This file contains compiler-generated resources that
were bound to the executable.
If this file is empty, then no compiler-generated
resources were bound to the produced executable.
*/
STRINGTABLE
BEGIN
END

View File

@ -1,975 +0,0 @@
object dmVentasTerminadas: TdmVentasTerminadas
OldCreateOrder = True
OnCreate = DAClientDataModuleCreate
RemoteService = RORemoteService
SchemaCall.MethodName = 'GetSchemaAsXML'
SchemaCall.Params = <
item
Name = 'Result'
ParamType = fResult
DataType = rtString
end>
Height = 299
Width = 464
object RORemoteService: TRORemoteService
ServiceName = 'srvVentasTerminadas'
Left = 48
Top = 20
end
object tbl_VentasTerminadas: TDACDSDataTable
RemoteUpdatesOptions = []
Fields = <
item
Name = 'NUMINF'
DataType = datString
Size = 35
BlobType = dabtUnknown
DisplayWidth = 0
Alignment = taLeftJustify
InPrimaryKey = True
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'CLAVE1'
DataType = datFloat
BlobType = dabtUnknown
DisplayWidth = 0
Alignment = taLeftJustify
InPrimaryKey = True
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'CLAVE2'
DataType = datInteger
BlobType = dabtUnknown
DisplayWidth = 0
Alignment = taLeftJustify
InPrimaryKey = True
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'CLAVE3'
DataType = datInteger
BlobType = dabtUnknown
DisplayWidth = 0
Alignment = taLeftJustify
InPrimaryKey = True
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'FECHA'
DataType = datDateTime
BlobType = dabtUnknown
DisplayWidth = 0
DisplayLabel = 'Fecha'
Alignment = taLeftJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'DIA'
DataType = datInteger
BlobType = dabtUnknown
DisplayWidth = 0
DisplayLabel = 'D'#237'a'
Alignment = taLeftJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'DIASEMANA'
DataType = datString
Size = 30
BlobType = dabtUnknown
DisplayWidth = 0
DisplayLabel = 'D'#237'a de la semana'
Alignment = taLeftJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'MES'
DataType = datString
Size = 30
BlobType = dabtUnknown
DisplayWidth = 0
DisplayLabel = 'Mes'
Alignment = taLeftJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'ANO'
DataType = datInteger
BlobType = dabtUnknown
DisplayWidth = 0
DisplayLabel = 'A'#241'o'
Alignment = taLeftJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'CENTRO'
DataType = datString
Size = 25
BlobType = dabtUnknown
DisplayWidth = 0
DisplayLabel = 'Centro'
Alignment = taLeftJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'VENDEDOR'
DataType = datString
Size = 66
BlobType = dabtUnknown
DisplayWidth = 0
DisplayLabel = 'Vendedor'
Alignment = taLeftJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'NUMTALON'
DataType = datString
Size = 35
BlobType = dabtUnknown
DisplayWidth = 0
Alignment = taLeftJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'CODIGO'
DataType = datString
Size = 12
BlobType = dabtUnknown
DisplayWidth = 0
DisplayLabel = 'C'#243'digo producto'
Alignment = taLeftJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'PRODUCTO'
DataType = datString
Size = 40
BlobType = dabtUnknown
DisplayWidth = 0
DisplayLabel = 'Producto'
Alignment = taLeftJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'GRUPOPRODUCTO'
DataType = datString
Size = 25
BlobType = dabtUnknown
DisplayWidth = 0
DisplayLabel = 'Grupo'
Alignment = taLeftJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'TIPOPRODUCTO'
DataType = datString
Size = 25
BlobType = dabtUnknown
DisplayWidth = 0
DisplayLabel = 'Tipo'
Alignment = taLeftJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'COLECCION'
DataType = datString
Size = 40
BlobType = dabtUnknown
DisplayWidth = 0
DisplayLabel = 'Colecci'#243'n'
Alignment = taLeftJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'COLOR'
DataType = datString
Size = 10
BlobType = dabtUnknown
DisplayWidth = 0
DisplayLabel = 'Color'
Alignment = taLeftJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'TALLA'
DataType = datString
Size = 8
BlobType = dabtUnknown
DisplayWidth = 0
DisplayLabel = 'Talla'
Alignment = taRightJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'TALLA38'
DataType = datFloat
BlobType = dabtUnknown
DisplayWidth = 0
DisplayLabel = '38'
Alignment = taRightJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'TALLA40'
DataType = datFloat
BlobType = dabtUnknown
DisplayWidth = 0
DisplayLabel = '40'
Alignment = taRightJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'TALLA42'
DataType = datFloat
BlobType = dabtUnknown
DisplayWidth = 0
DisplayLabel = '42'
Alignment = taRightJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'TALLA44'
DataType = datFloat
BlobType = dabtUnknown
DisplayWidth = 0
DisplayLabel = '44'
Alignment = taRightJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'TALLA46'
DataType = datFloat
BlobType = dabtUnknown
DisplayWidth = 0
DisplayLabel = '46'
Alignment = taRightJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'TALLA48'
DataType = datFloat
BlobType = dabtUnknown
DisplayWidth = 0
DisplayLabel = '48'
Alignment = taRightJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'VTATERMDEV'
DataType = datFloat
BlobType = dabtUnknown
DisplayWidth = 0
DisplayLabel = 'Vta.Term/Dev'
Alignment = taRightJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'VTAFINALRESC'
DataType = datFloat
BlobType = dabtUnknown
DisplayWidth = 0
DisplayLabel = 'Vta.Final/Resc'
Alignment = taRightJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'VENTAS'
DataType = datFloat
BlobType = dabtUnknown
DisplayWidth = 0
DisplayLabel = 'Ventas'
Alignment = taRightJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'DEVOLUCIONES'
DataType = datFloat
BlobType = dabtUnknown
DisplayWidth = 0
DisplayLabel = 'Devoluciones'
Alignment = taRightJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'TOTAL'
DataType = datFloat
BlobType = dabtUnknown
DisplayWidth = 0
DisplayLabel = 'Total ventas'
Alignment = taRightJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'VALTERMDEV'
DataType = datFloat
BlobType = dabtUnknown
DisplayWidth = 0
DisplayLabel = 'Val.Term/Dev'
Alignment = taRightJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'VALFINALRESC'
DataType = datFloat
BlobType = dabtUnknown
DisplayWidth = 0
DisplayLabel = 'Val.Final/Resc'
Alignment = taRightJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'VALVEN'
DataType = datFloat
BlobType = dabtUnknown
DisplayWidth = 0
DisplayLabel = 'Imp. ventas'
Alignment = taRightJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'VALDEV'
DataType = datFloat
BlobType = dabtUnknown
DisplayWidth = 0
DisplayLabel = 'Imp. devoluciones'
Alignment = taRightJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'VALTOT'
DataType = datFloat
BlobType = dabtUnknown
DisplayWidth = 0
DisplayLabel = 'Imp. Total'
Alignment = taRightJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end>
Params = <
item
Name = 'FECHAINI'
BlobType = dabtUnknown
Value = '2006/01/01'
ParamType = daptInput
end
item
Name = 'FECHAFIN'
BlobType = dabtUnknown
Value = '2006/12/12'
ParamType = daptInput
end>
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 = 'VentasTerminadas'
end>
DataRequestCall.MethodName = 'GetDatasetDataEx'
DataRequestCall.Params = <
item
Name = 'Result'
ParamType = fResult
DataType = rtBinary
end
item
Name = 'DatasetName'
ParamType = fIn
DataType = rtString
Value = 'VentasTerminadas'
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 = 'VentasTerminadas'
end>
ReadOnly = False
RemoteService = RORemoteService
DetailOptions = [dtCascadeOpenClose, dtCascadeApplyUpdates, dtAutoFetch, dtCascadeDelete, dtCascadeUpdate, dtDisableLogOfCascadeDeletes, dtDisableLogOfCascadeUpdates, dtIncludeInAllInOneFetch]
MasterOptions = [moCascadeOpenClose, moCascadeApplyUpdates, moCascadeDelete, moCascadeUpdate, moDisableLogOfCascadeDeletes, moDisableLogOfCascadeUpdates]
LogicalName = 'VentasTerminadas'
IndexDefs = <>
Left = 216
Top = 24
end
object tbl_VentasTerminadas2: TDACDSDataTable
RemoteUpdatesOptions = []
Fields = <>
Params = <
item
Name = 'FECHAINI'
DataType = datDateTime
BlobType = dabtUnknown
Value = ''
ParamType = daptInput
end
item
Name = 'FECHAFIN'
DataType = datDateTime
BlobType = dabtUnknown
Value = ''
ParamType = daptInput
end>
MasterMappingMode = mmDataRequest
StreamingOptions = [soDisableEventsWhileStreaming]
SchemaCall.MethodName = 'GetSchema'
SchemaCall.Params = <
item
Name = 'Result'
ParamType = fResult
DataType = rtBinary
end
item
Name = 'DatasetName'
ParamType = fIn
DataType = rtString
Value = 'VentasTerminadas'
end
item
Name = 'Columns'
ParamType = fIn
DataType = rtString
Value = ''
end>
DataRequestCall.MethodName = 'GetData'
DataRequestCall.Params = <
item
Name = 'Result'
ParamType = fResult
DataType = rtBinary
end
item
Name = 'DatasetName'
ParamType = fIn
DataType = rtString
Value = 'VentasTerminadas'
end
item
Name = 'MaxRecords'
ParamType = fIn
DataType = rtInteger
Value = -1
end
item
Name = 'Columns'
ParamType = fIn
DataType = rtString
Value = ''
end
item
Name = 'Params'
ParamType = fIn
DataType = rtUserDefined
UserClassName = 'TDADatasetParamArray'
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 = 'Ventas'
end>
ReadOnly = False
RemoteService = RORemoteService
DetailOptions = [dtCascadeOpenClose, dtCascadeApplyUpdates, dtAutoFetch, dtCascadeDelete, dtCascadeUpdate, dtDisableLogOfCascadeDeletes, dtDisableLogOfCascadeUpdates, dtIncludeInAllInOneFetch]
MasterOptions = [moCascadeOpenClose, moCascadeApplyUpdates, moCascadeDelete, moCascadeUpdate, moDisableLogOfCascadeDeletes, moDisableLogOfCascadeUpdates]
LogicalName = 'VentasTerminadas'
IndexDefs = <>
Left = 336
Top = 24
end
object tbl_VentasTerminadasCrossTab: TDACDSDataTable
RemoteUpdatesOptions = []
Fields = <
item
Name = 'DIA'
DataType = datInteger
BlobType = dabtUnknown
DisplayWidth = 0
Alignment = taLeftJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'TOTAL'
DataType = datFloat
BlobType = dabtUnknown
DisplayWidth = 0
Alignment = taLeftJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = '8422416102352'
DataType = datFloat
BlobType = dabtUnknown
DisplayWidth = 0
Alignment = taLeftJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = '8422416200034'
DataType = datFloat
BlobType = dabtUnknown
DisplayWidth = 0
Alignment = taLeftJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = '8422416200201'
DataType = datFloat
BlobType = dabtUnknown
DisplayWidth = 0
Alignment = taLeftJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = '8422416201055'
DataType = datFloat
BlobType = dabtUnknown
DisplayWidth = 0
Alignment = taLeftJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'C. INGLES BARCELONA '
DataType = datFloat
BlobType = dabtUnknown
DisplayWidth = 0
Alignment = taLeftJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'C. INGLES BILBAO '
DataType = datFloat
BlobType = dabtUnknown
DisplayWidth = 0
Alignment = taLeftJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'C. INGLES CASTELLANA '
DataType = datFloat
BlobType = dabtUnknown
DisplayWidth = 0
Alignment = taLeftJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'C. INGLES LA CORU'#209'A '
DataType = datFloat
BlobType = dabtUnknown
DisplayWidth = 0
Alignment = taLeftJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'C. INGLES LAS PALMAS '
DataType = datFloat
BlobType = dabtUnknown
DisplayWidth = 0
Alignment = taLeftJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'C. INGLES MALAGA '
DataType = datFloat
BlobType = dabtUnknown
DisplayWidth = 0
Alignment = taLeftJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'C. INGLES MARBELLA '
DataType = datFloat
BlobType = dabtUnknown
DisplayWidth = 0
Alignment = taLeftJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'C. INGLES PRINCESA '
DataType = datFloat
BlobType = dabtUnknown
DisplayWidth = 0
Alignment = taLeftJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'C. INGLES SANCHINARRO '
DataType = datFloat
BlobType = dabtUnknown
DisplayWidth = 0
Alignment = taLeftJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'C. INGLES SERRANO MADRID '
DataType = datFloat
BlobType = dabtUnknown
DisplayWidth = 0
Alignment = taLeftJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'C. INGLES SEVILLA '
DataType = datFloat
BlobType = dabtUnknown
DisplayWidth = 0
Alignment = taLeftJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'C. INGLES ZARAGOZA '
DataType = datFloat
BlobType = dabtUnknown
DisplayWidth = 0
Alignment = taLeftJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'C.INGLES VALENCIA '
DataType = datFloat
BlobType = dabtUnknown
DisplayWidth = 0
Alignment = taLeftJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end>
Params = <
item
Name = 'fechaini'
DataType = datString
BlobType = dabtUnknown
Value = ''
ParamType = daptInput
end
item
Name = 'fechafin'
DataType = datString
BlobType = dabtUnknown
Value = ''
ParamType = daptInput
end
item
Name = 'coleccion'
DataType = datString
BlobType = dabtUnknown
Value = '%'
ParamType = daptInput
end>
MasterMappingMode = mmDataRequest
StreamingOptions = [soDisableEventsWhileStreaming]
SchemaCall.MethodName = 'GetSchemaCrossTab'
SchemaCall.Params = <
item
Name = 'Result'
ParamType = fResult
DataType = rtBinary
end
item
Name = 'FechaIni'
ParamType = fIn
DataType = rtString
Value = ''
end
item
Name = 'FechaFin'
ParamType = fIn
DataType = rtString
Value = ''
end>
DataRequestCall.MethodName = 'GetDataCrossTab'
DataRequestCall.Params = <
item
Name = 'Result'
ParamType = fResult
DataType = rtBinary
end
item
Name = 'FechaIni'
ParamType = fIn
DataType = rtString
Value = ''
end
item
Name = 'FechaFin'
ParamType = fIn
DataType = rtString
Value = ''
end
item
Name = 'Coleccion'
ParamType = fIn
DataType = rtString
Value = '%'
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 = ''
end>
ReadOnly = False
RemoteService = RORemoteService
DetailOptions = [dtCascadeOpenClose, dtCascadeApplyUpdates, dtAutoFetch, dtCascadeDelete, dtCascadeUpdate, dtDisableLogOfCascadeDeletes, dtDisableLogOfCascadeUpdates, dtIncludeInAllInOneFetch]
MasterOptions = [moCascadeOpenClose, moCascadeApplyUpdates, moCascadeDelete, moCascadeUpdate, moDisableLogOfCascadeDeletes, moDisableLogOfCascadeUpdates]
LogicalName = 'VentasTerminadasCrossTab'
IndexDefs = <>
Left = 336
Top = 96
end
object ds_VentasTerminadasCrossTab: TDADataSource
DataTable = tbl_VentasTerminadasCrossTab
Left = 216
Top = 96
end
end

View File

@ -1,122 +0,0 @@
unit uDataModuleVentasTerminadas;
interface
uses {vcl:} SysUtils, Classes, DB, DBClient,
{RemObjects:} uDAClientDataModule, uDADataTable, uDABINAdapter,
uROServiceComponent, uRORemoteService, uROClient, uROBinMessage,
uROWinInetHttpChannel, uDAScriptingProvider, uDACDSDataTable,
uBizVentasTerminadas, uBizControlVentasTerminadas;
const
CATEGORIA_VENTA_TERMINADA = 'VENTATERMINADA';
type
TdmVentasTerminadas = class(TDAClientDataModule)
RORemoteService: TRORemoteService;
tbl_VentasTerminadas: TDACDSDataTable;
tbl_VentasTerminadas2: TDACDSDataTable;
tbl_VentasTerminadasCrossTab: TDACDSDataTable;
ds_VentasTerminadasCrossTab: TDADataSource;
procedure DAClientDataModuleCreate(Sender: TObject);
protected
function GetItems : IBizVentasTerminadas;
public
function GetNameColumns: String;
function GetControl: IBizControlVentasTerminadas;
function GetItemsCrossTab : IBizResumenVentas;
end;
var
dmVentasTerminadas: TdmVentasTerminadas;
implementation
{$R *.DFM}
uses
Controls, Forms, uDAInterfaces, DataAbstract_Intf, uDataTableUtils,
uROTypes, uEditorPreview, Dialogs, uDataModuleControles,
uDataModuleBase, uDBSelectionList, schVentasTerminadasClient_Intf, cxControls;
procedure TdmVentasTerminadas.DAClientDataModuleCreate(Sender: TObject);
begin
RORemoteService.Channel := dmBase.Channel;
RORemoteService.Message := dmBase.Message;
end;
function TdmVentasTerminadas.GetControl: IBizControlVentasTerminadas;
var
aDataTable : TDACDSDataTable;
begin
aDataTable := dmControles.GetItems(CATEGORIA_VENTA_TERMINADA);
aDataTable.BusinessRulesID := BIZ_CONTROL_VENTASTERMINADAS;
(aDataTable as IBizControlVentasTerminadas).Items := GetItems;
Result := (aDataTable as IBizControlVentasTerminadas);
end;
function TdmVentasTerminadas.GetItems: IBizVentasTerminadas;
var
dtVentas: TDACDSDataTable;
begin
ShowHourglassCursor;
try
dtVentas := TDACDSDataTable.Create(NIL);
CloneDataTable(tbl_VentasTerminadas2, dtVentas);
dtVentas.Fields.AssignFieldCollection(tbl_VentasTerminadas.Fields);
dtVentas.BusinessRulesID := BIZ_VENTASTERMINADAS;
dtVentas.FieldByName(fld_VentasTerminadasNUMINF).Visible := False;
dtVentas.FieldByName(fld_VentasTerminadasCLAVE1).Visible := False;
dtVentas.FieldByName(fld_VentasTerminadasCLAVE2).Visible := False;
dtVentas.FieldByName(fld_VentasTerminadasCLAVE3).Visible := False;
dtVentas.LoadSchema;
Result := (dtVentas as IBizVentasTerminadas);
finally
HideHourglassCursor;
end;
end;
function TdmVentasTerminadas.GetItemsCrossTab: IBizResumenVentas;
var
dtVentas: TDACDSDataTable;
begin
ShowHourglassCursor;
try
dtVentas := TDACDSDataTable.Create(NIL);
CloneDataTable(tbl_VentasTerminadasCrossTab, dtVentas);
dtVentas.BusinessRulesID := BIZ_RESUMENVENTAS;
Result := (dtVentas as IBizResumenVentas);
finally
HideHourglassCursor;
end;
end;
function TdmVentasTerminadas.GetNameColumns: String;
var
AList : TStringList;
i : integer;
begin
AList := TStringList.Create;
try
for i := 0 to tbl_VentasTerminadas.FieldCount - 1 do
if tbl_VentasTerminadas.Fields[i].Visible then
AList.Add(tbl_VentasTerminadas.Fields[i].Name);
Result := AList.CommaText;
finally
FreeAndNil(AList);
end;
end;
initialization
dmVentasTerminadas := TdmVentasTerminadas.Create(nil);
finalization
FreeAndNil(dmVentasTerminadas);
end.

View File

@ -1,155 +0,0 @@
unit uEditorControlResumenVentas;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, uEditorControlBase, DB, uDADataTable, JvAppStorage,
JvAppRegistryStorage, JvComponentBase, JvFormPlacement, ImgList,
PngImageList, StdActns, ActnList, ComCtrls, TBX, TB2Item, TB2Dock,
TB2Toolbar, ExtCtrls, JvExControls, JvComponent, JvNavigationPane, uBizControlesBase,
uCustomView, uViewBase, uViewControlBase, Grids, DBGrids, pngimage,
uViewControlVentasTerminadas, uEditorGridBase, uViewGridBase, uViewGrid,
uViewControGridResumenVentas, Menus, TB2ExtItems, TBXExtItems,
uBizVentasTerminadas, StdCtrls;
type
IEditorControlResumenVentas = interface(IEditorGridBase)
['{FC3218D5-319A-4ECF-88E9-0CB8655EDFA9}']
function GetItems: IBizResumenVentas;
procedure SetItems(const Value: IBizResumenVentas);
property Items: IBizResumenVentas read GetItems write SetItems;
end;
TfEditorControlResumenVentas = class(TfEditorGridBase, IEditorControlResumenVentas)
dsVentasTerminadas: TDADataSource;
TBXSeparatorItem16: TTBXSeparatorItem;
tbxiExpandir: TTBXItem;
tbxiContraer: TTBXItem;
tbxiAnchoAuto: TTBXItem;
actExpandir: TAction;
actContraer: TAction;
actAnchoAuto: TAction;
TBXItem37: TTBXItem;
TBXItem36: TTBXItem;
TBXItem35: TTBXItem;
TBXSeparatorItem17: TTBXSeparatorItem;
edtMes: TTBXComboBoxItem;
edtAno: TTBXSpinEditItem;
frViewControlGridResumenVentas1: TfrViewControlGridResumenVentas;
TBXLabelItem2: TTBXLabelItem;
TBXLabelItem3: TTBXLabelItem;
TBXSeparatorItem18: TTBXSeparatorItem;
edtColeccion: TTBXEditItem;
TBXLabelItem4: TTBXLabelItem;
TBXSeparatorItem19: TTBXSeparatorItem;
procedure actAnchoAutoExecute(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure actRefrescarExecute(Sender: TObject);
procedure actPrevisualizarExecute(Sender: TObject);
procedure actImprimirExecute(Sender: TObject);
protected
FItems : IBizResumenVentas;
function GetItems: IBizResumenVentas;
procedure SetItems(const Value: IBizResumenVentas);
public
property Items: IBizResumenVentas read GetItems write SetItems;
constructor Create(AOwner: TComponent); override;
end;
implementation
uses
cxControls, uEditorUtils, DateUtils, uROClasses, cxGridTableView, uCustomEditor, uEditorBase;
{$R *.dfm}
{ TfEditorControlVentasTerminadas }
procedure TfEditorControlResumenVentas.actAnchoAutoExecute(Sender: TObject);
begin
inherited;
frViewControlGridResumenVentas1.AjustarAncho;
end;
procedure TfEditorControlResumenVentas.FormShow(Sender: TObject);
begin
inherited;
if not Assigned(FItems) then
raise Exception.Create('No hay items asignados');
if not Assigned(ViewGrid) then
raise Exception.Create('No hay una vista asignada');
//Inicializar
edtMes.ItemIndex := (MonthOf(Today)-1);
edtAno.Value := YearOf(Today);
end;
procedure TfEditorControlResumenVentas.actImprimirExecute(Sender: TObject);
begin
inherited;
frViewControlGridResumenVentas1.Print(edtMes.Text, edtAno.Text);
end;
constructor TfEditorControlResumenVentas.Create(AOwner: TComponent);
begin
inherited;
ViewGrid := frViewControlGridResumenVentas1;
Self.Caption := 'Resumen de ventas mensuales por centro';
JvNavPanelHeader.Caption := Self.Caption;
end;
function TfEditorControlResumenVentas.GetItems: IBizResumenVentas;
begin
Result := FItems;
end;
procedure TfEditorControlResumenVentas.SetItems(
const Value: IBizResumenVentas);
begin
FItems := Value;
if Assigned(FItems) then
begin
dsDataTable.DataTable := FItems.DataTable;
frViewControlGridResumenVentas1.dsDataSource.DataTable := FItems.DataTable;
end;
end;
procedure TfEditorControlResumenVentas.actRefrescarExecute(Sender: TObject);
var
AuxDate: TDateTime;
UltimoDia: Integer;
i : Integer;
begin
AuxDate := EncodeDate(edtAno.AsInteger , (edtMes.ItemIndex + 1), 1);
ShowHourglassCursor;
try
with FItems do
begin
if DataTable.Active then
DataTable.Active := False;
DataTable.ParamByName('FECHAINI').AsString := DateToStr(StartOfTheMonth(AuxDate));
DataTable.ParamByName('FECHAFIN').AsString := DateToStr(EndOfTheMonth(AuxDate));
DataTable.ParamByName('COLECCION').AsString := edtColeccion.Text;
if not DataTable.Active then
DataTable.Active := True;
end;
finally
HideHourglassCursor;
end;
end;
procedure TfEditorControlResumenVentas.actPrevisualizarExecute(Sender: TObject);
begin
frViewControlGridResumenVentas1.Preview(edtMes.Text, edtAno.Text);
end;
end.

View File

@ -1,241 +0,0 @@
unit uEditorControlVentasTerminadas;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, uEditorControlBase, DB, uDADataTable, JvAppStorage,
JvAppRegistryStorage, JvComponentBase, JvFormPlacement, ImgList,
PngImageList, StdActns, ActnList, ComCtrls, TBX, TB2Item, TB2Dock,
TB2Toolbar, ExtCtrls, JvExControls, JvComponent, JvNavigationPane, uBizControlesBase,
uCustomView, uViewBase, uViewControlBase, uViewControlVentasTerminadas,
Grids, DBGrids, pngimage;
type
IEditorControlVentasTerminadas = interface(IEditorControlBase)
['{721FAE24-2440-44FA-B681-6E3C2BD656FE}']
end;
TfEditorControlVentasTerminadas = class(TfEditorControlBase, IEditorControlVentasTerminadas)
dsVentasTerminadas: TDADataSource;
TBXSeparatorItem16: TTBXSeparatorItem;
tbxiExpandir: TTBXItem;
tbxiContraer: TTBXItem;
tbxiAnchoAuto: TTBXItem;
actExpandir: TAction;
actContraer: TAction;
actAnchoAuto: TAction;
TBXItem37: TTBXItem;
TBXItem36: TTBXItem;
TBXItem35: TTBXItem;
TBXSeparatorItem17: TTBXSeparatorItem;
frViewControlVentasTerminadas1: TfrViewControlVentasTerminadas;
procedure actRefrescarExecute(Sender: TObject);
procedure actExpandirExecute(Sender: TObject);
procedure actContraerExecute(Sender: TObject);
procedure actAnchoAutoExecute(Sender: TObject);
procedure CustomEditorCreate(Sender: TObject);
procedure CustomEditorGetModified(Sender: TObject;
var Modified: Boolean);
procedure actGuardarExecute(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure actPrevisualizarExecute(Sender: TObject);
procedure actImprimirExecute(Sender: TObject);
procedure actConfPaginaExecute(Sender: TObject);
procedure frViewControlVentasTerminadas1bRefrescarClick(
Sender: TObject);
private
procedure RestaurarConfiguracion;
procedure GuardarConfiguracion;
protected
FModificado : Boolean;
procedure OnViewControlChanged(Sender: TObject);
procedure SetControl(const Value: IBizControlBase); override;
procedure RellenarCabeceraInforme; override;
public
constructor Create(AOwner: TComponent); override;
end;
implementation
uses
uEditorUtils, uBizControlVentasTerminadas, uROClasses,
cxGridTableView, uCustomEditor;
{$R *.dfm}
function ShowEditorVentasTerminadas (ABizObject : TDADataTableRules): TModalResult;
var
AEditor: IEditorControlVentasTerminadas;
begin
AEditor := TfEditorControlVentasTerminadas.Create(Application);
try
AEditor.Control := (ABizObject as IBizControlVentasTerminadas);
Result := AEditor.ShowModal;
finally
AEditor.Release;
end;
end;
{ TfEditorControlVentasTerminadas }
procedure TfEditorControlVentasTerminadas.SetControl(
const Value: IBizControlBase);
begin
inherited;
RefrescarTituloEditor;
if Assigned(FControl) then
begin
frViewControlVentasTerminadas1.OnViewChanged := OnViewControlChanged;
with (FControl as IBizControlVentasTerminadas) do
begin
Items.DataTable.Active := False; // No se abre la tabla hasta que no se pulse en 'Refrescar'
dsVentasTerminadas.DataTable := Items.DataTable;
frViewControlVentasTerminadas1.frViewControlGridVentasTerminadas1.FocusedView.DataController.DataSource := dsVentasTerminadas;
end;
end;
end;
procedure TfEditorControlVentasTerminadas.actRefrescarExecute(Sender: TObject);
begin
inherited;
frViewControlVentasTerminadas1.Refresh;
while (frViewControlVentasTerminadas1.frViewControlGridVentasTerminadas1.FocusedView.Controller.FocusedRecord is TcxGridGroupRow) do
begin
frViewControlVentasTerminadas1.frViewControlGridVentasTerminadas1.FocusedView.Controller.FocusedRecord.Expand(True);
if (frViewControlVentasTerminadas1.frViewControlGridVentasTerminadas1.FocusedView.Controller.FocusedRecordIndex <
frViewControlVentasTerminadas1.frViewControlGridVentasTerminadas1.FocusedView.DataController.RowCount - 1) then
frViewControlVentasTerminadas1.frViewControlGridVentasTerminadas1.FocusedView.Controller.GoToNext(False, True)
else
Exit;
end;
end;
procedure TfEditorControlVentasTerminadas.actExpandirExecute(Sender: TObject);
begin
inherited;
frViewControlVentasTerminadas1.frViewControlGridVentasTerminadas1.ExpandirTodo;
end;
procedure TfEditorControlVentasTerminadas.actContraerExecute(Sender: TObject);
begin
inherited;
frViewControlVentasTerminadas1.frViewControlGridVentasTerminadas1.ContraerTodo;
end;
procedure TfEditorControlVentasTerminadas.actAnchoAutoExecute(Sender: TObject);
begin
inherited;
frViewControlVentasTerminadas1.frViewControlGridVentasTerminadas1.AjustarAncho;
end;
procedure TfEditorControlVentasTerminadas.OnViewControlChanged(
Sender: TObject);
begin
if FControl.EsModificable then
FModificado := True;
end;
procedure TfEditorControlVentasTerminadas.CustomEditorCreate(Sender: TObject);
begin
inherited;
FModificado := False;
end;
procedure TfEditorControlVentasTerminadas.CustomEditorGetModified(
Sender: TObject; var Modified: Boolean);
begin
inherited;
Modified := FModificado;
end;
procedure TfEditorControlVentasTerminadas.actGuardarExecute(Sender: TObject);
begin
if FModificado then
GuardarConfiguracion;
inherited;
FModificado := False;
end;
procedure TfEditorControlVentasTerminadas.GuardarConfiguracion;
var
Aux : IROStrings;
begin
Aux := NewROStrings();
Aux.Add(frViewControlVentasTerminadas1.frViewControlGridVentasTerminadas1.ViewProperties);
if not (FControl.DataTable.State in dsEditModes) then
FControl.Edit;
FControl.VISTA := Aux;
end;
procedure TfEditorControlVentasTerminadas.RestaurarConfiguracion;
begin
frViewControlVentasTerminadas1.frViewControlGridVentasTerminadas1.ViewProperties := FControl.VISTA.Text;
end;
procedure TfEditorControlVentasTerminadas.FormShow(Sender: TObject);
begin
inherited;
if FControl.DataTable.State <> dsInsert then // No restaurar si estamos insertando
RestaurarConfiguracion;
frViewControlVentasTerminadas1.frViewColumnas1.Refresh;
frViewControlVentasTerminadas1.frViewAgrupaciones1.Refresh;
end;
procedure TfEditorControlVentasTerminadas.actPrevisualizarExecute(
Sender: TObject);
begin
inherited;
frViewControlVentasTerminadas1.frViewControlGridVentasTerminadas1.Preview;
end;
procedure TfEditorControlVentasTerminadas.actImprimirExecute(Sender: TObject);
begin
inherited;
frViewControlVentasTerminadas1.frViewControlGridVentasTerminadas1.Print;
end;
procedure TfEditorControlVentasTerminadas.actConfPaginaExecute(
Sender: TObject);
begin
inherited;
frViewControlVentasTerminadas1.frViewControlGridVentasTerminadas1.PrintSetup;
end;
procedure TfEditorControlVentasTerminadas.frViewControlVentasTerminadas1bRefrescarClick(
Sender: TObject);
begin
inherited;
frViewControlVentasTerminadas1.actRefrescarExecute(Sender);
end;
constructor TfEditorControlVentasTerminadas.Create(AOwner: TComponent);
begin
inherited;
FViewControl := frViewControlVentasTerminadas1;
Self.Caption := 'Nueva consulta de ventas terminadas';
JvNavPanelHeader.Caption := Self.Caption;
end;
procedure TfEditorControlVentasTerminadas.RellenarCabeceraInforme;
begin
inherited;
with frViewControlVentasTerminadas1.frViewControlGridVentasTerminadas1.dxPrintStyleManager1Style1.PrinterPage.PageHeader do
begin
LeftTitle.Clear;
LeftTitle.Add(FControl.NOMBRE);
RightTitle.Clear;
RightTitle.Add(DateToStr(frViewControlVentasTerminadas1.frViewPeriodoFechas1.edtFechaIni.Date) +
' - ' + DateToStr(frViewControlVentasTerminadas1.frViewPeriodoFechas1.edtFechaFin.Date));
RightTitle.Add(frViewControlVentasTerminadas1.frViewControlGridVentasTerminadas1.FocusedView.DataController.Filter.FilterText);
end;
end;
initialization
RegisterEditor(IBizControlVentasTerminadas, ShowEditorVentasTerminadas, etItem);
end.

View File

@ -1,168 +0,0 @@
inherited fEditorControlesVentasTerminadas: TfEditorControlesVentasTerminadas
Left = 470
Top = 325
ActiveControl = frViewControlesVentasTerminadas1.EasyListview
Caption = 'fEditorControlesVentasTerminadas'
PixelsPerInch = 96
TextHeight = 13
inherited JvNavPanelHeader: TJvNavPanelHeader
Caption = 'Control de ventas terminadas'
inherited Image1: TImage
Picture.Data = {
0A54504E474F626A65637489504E470D0A1A0A0000000D494844520000001800
0000180806000000E0773DF80000000970485973000017120000171201679FD2
5200000A4D6943435050686F746F73686F70204943432070726F66696C650000
78DA9D53775893F7163EDFF7650F5642D8F0B1976C81002223AC08C81059A210
92006184101240C585880A561415119C4855C482D50A489D88E2A028B867418A
885A8B555C38EE1FDCA7B57D7AEFEDEDFBD7FBBCE79CE7FCCE79CF0F80111226
91E6A26A003952853C3AD81F8F4F48C4C9BD80021548E0042010E6CBC26705C5
0000F00379787E74B03FFC01AF6F00020070D52E2412C7E1FF83BA5026570020
9100E02212E70B01905200C82E54C81400C81800B053B3640A009400006C797C
422200AA0D00ECF4493E0500D8A993DC1700D8A21CA908008D01009928472402
40BB00605581522C02C0C200A0AC40222E04C0AE018059B632470280BD050076
8E58900F4060008099422CCC0020380200431E13CD03204C03A030D2BFE0A95F
7085B8480100C0CB95CD974BD23314B895D01A77F2F0E0E221E2C26CB1426117
29106609E4229C979B231348E7034CCE0C00001AF9D1C1FE383F90E7E6E4E1E6
66E76CEFF4C5A2FE6BF06F223E21F1DFFEBC8C020400104ECFEFDA5FE5E5D603
70C701B075BF6BA95B00DA560068DFF95D33DB09A05A0AD07AF98B7938FC401E
9EA150C83C1D1C0A0B0BED2562A1BD30E38B3EFF33E16FE08B7EF6FC401EFEDB
7AF000719A4099ADC0A383FD71616E76AE528EE7CB0442316EF7E723FEC7857F
FD8E29D1E234B15C2C158AF15889B850224DC779B952914421C995E212E97F32
F11F96FD0993770D00AC864FC04EB607B5CB6CC07EEE01028B0E58D27600407E
F32D8C1A0B91001067343279F7000093BFF98F402B0100CD97A4E30000BCE818
5CA894174CC608000044A0812AB041070CC114ACC00E9CC11DBCC01702610644
400C24C03C104206E4801C0AA11896411954C03AD804B5B0031AA0119AE110B4
C131380DE7E0125C81EB70170660189EC218BC86090441C8081361213A881162
8ED822CE0817998E04226148349280A420E988145122C5C872A402A9426A915D
4823F22D7214398D5C40FA90DBC820328AFC8ABC47319481B25103D4027540B9
A81F1A8AC6A073D174340F5D8096A26BD11AB41E3D80B6A2A7D14BE87574007D
8A8E6380D1310E668CD9615C8C87456089581A26C71663E55835568F35631D58
3776151BC09E61EF0824028B8013EC085E8410C26C82909047584C5843A825EC
23B412BA085709838431C2272293A84FB4257A12F9C478623AB1905846AC26EE
211E219E255E270E135F9348240EC992E44E0A21259032490B496B48DB482DA4
53A43ED210699C4C26EB906DC9DEE408B280AC209791B7900F904F92FBC9C3E4
B7143AC588E24C09A22452A494124A35653FE504A59F324299A0AA51CDA99ED4
08AA883A9F5A496DA076502F5387A91334759A25CD9B1643CBA42DA3D5D09A69
6769F7682FE974BA09DD831E4597D097D26BE807E9E7E983F4770C0D860D83C7
486228196B197B19A718B7192F994CA605D39799C85430D7321B9967980F986F
55582AF62A7C1591CA12953A9556957E95E7AA545573553FD579AA0B54AB550F
AB5E567DA64655B350E3A909D416ABD5A91D55BBA936AECE5277528F50CF515F
A3BE5FFD82FA630DB2868546A08648A35463B7C6198D2116C63265F15842D672
5603EB2C6B984D625BB2F9EC4C7605FB1B762F7B4C534373AA66AC6691669DE6
71CD010EC6B1E0F039D99C4ACE21CE0DCE7B2D032D3F2DB1D66AAD66AD7EAD37
DA7ADABEDA62ED72ED16EDEBDAEF75709D409D2C9DF53A6D3AF77509BA36BA51
BA85BADB75CFEA3ED363EB79E909F5CAF50EE9DDD147F56DF4A3F517EAEFD6EF
D11F373034083690196C313863F0CC9063E86B9869B8D1F084E1A811CB68BA91
C468A3D149A327B826EE8767E33578173E66AC6F1C62AC34DE65DC6B3C616269
32DBA4C4A4C5E4BE29CD946B9A66BAD1B4D374CCCCC82CDCACD8ACC9EC8E39D5
9C6B9E61BED9BCDBFC8D85A5459CC54A8B368BC796DA967CCB05964D96F7AC98
563E567956F556D7AC49D65CEB2CEB6DD6576C501B579B0C9B3A9BCBB6A8AD9B
ADC4769B6DDF14E2148F29D229F5536EDA31ECFCEC0AEC9AEC06ED39F661F625
F66DF6CF1DCC1C121DD63B743B7C727475CC766C70BCEBA4E134C3A9C4A9C3E9
57671B67A1739DF33517A64B90CB1297769717536DA78AA76E9F7ACB95E51AEE
BAD2B5D3F5A39BBB9BDCADD96DD4DDCC3DC57DABFB4D2E9B1BC95DC33DEF41F4
F0F758E271CCE39DA79BA7C2F390E72F5E765E595EFBBD1E4FB39C269ED6306D
C8DBC45BE0BDCB7B603A3E3D65FACEE9033EC63E029F7A9F87BEA6BE22DF3DBE
237ED67E997E07FC9EFB3BFACBFD8FF8BFE179F216F14E056001C101E501BD81
1A81B3036B031F049904A50735058D05BB062F0C3E15420C090D591F72936FC0
17F21BF96333DC672C9AD115CA089D155A1BFA30CC264C1ED6118E86CF08DF10
7E6FA6F94CE9CCB60888E0476C88B81F69199917F97D14292A32AA2EEA51B453
747174F72CD6ACE459FB67BD8EF18FA98CB93BDB6AB6727667AC6A6C526C63EC
9BB880B8AAB8817887F845F1971274132409ED89E4C4D8C43D89E37302E76C9A
339CE49A54967463AEE5DCA2B917E6E9CECB9E773C593559907C3885981297B2
3FE5832042502F184FE5A76E4D1D13F2849B854F45BEA28DA251B1B7B84A3C92
E69D5695F638DD3B7D43FA68864F4675C633094F522B79911992B923F34D5644
D6DEACCFD971D92D39949C949CA3520D6996B42BD730B728B74F662B2B930DE4
79E66DCA1B9387CAF7E423F973F3DB156C854CD1A3B452AE500E164C2FA82B78
5B185B78B848BD485AD433DF66FEEAF9230B82167CBD90B050B8B0B3D8B87859
F1E022BF45BB16238B5317772E315D52BA647869F0D27DCB68CBB296FD50E258
5255F26A79DCF28E5283D2A5A5432B82573495A994C9CB6EAEF45AB963156195
6455EF6A97D55B567F2A17955FAC70ACA8AEF8B046B8E6E2574E5FD57CF5796D
DADADE4AB7CAEDEB48EBA4EB6EACF759BFAF4ABD6A41D5D086F00DAD1BF18DE5
1B5F6D4ADE74A17A6AF58ECDB4CDCACD03356135ED5BCCB6ACDBF2A136A3F67A
9D7F5DCB56FDADABB7BED926DAD6BFDD777BF30E831D153BDEEF94ECBCB52B78
576BBD457DF56ED2EE82DD8F1A621BBABFE67EDDB847774FC59E8F7BA57B07F6
45EFEB6A746F6CDCAFBFBFB2096D52368D1E483A70E59B806FDA9BED9A77B570
5A2A0EC241E5C127DFA67C7BE350E8A1CEC3DCC3CDDF997FB7F508EB48792BD2
3ABF75AC2DA36DA03DA1BDEFE88CA39D1D5E1D47BEB7FF7EEF31E36375C7358F
579EA09D283DF1F9E48293E3A764A79E9D4E3F3DD499DC79F74CFC996B5D515D
BD6743CF9E3F1774EE4CB75FF7C9F3DEE78F5DF0BC70F422F762DB25B74BAD3D
AE3D477E70FDE148AF5B6FEB65F7CBED573CAE74F44DEB3BD1EFD37FFA6AC0D5
73D7F8D72E5D9F79BDEFC6EC1BB76E26DD1CB825BAF5F876F6ED17770AEE4CDC
5D7A8F78AFFCBEDAFDEA07FA0FEA7FB4FEB165C06DE0F860C060CFC3590FEF0E
09879EFE94FFD387E1D247CC47D52346238D8F9D1F1F1B0D1ABDF264CE93E1A7
B2A713CFCA7E56FF79EB73ABE7DFFDE2FB4BCF58FCD8F00BF98BCFBFAE79A9F3
72EFABA9AF3AC723C71FBCCE793DF1A6FCADCEDB7DEFB8EFBADFC7BD1F9928FC
40FE50F3D1FA63C7A7D04FF73EE77CFEFC2FF784F3FB25D29F33000000046741
4D410000B18E7CFB5193000002944944415478DAD5955F4853511CC7BFD7CD9C
9BD21F4188FECFA83443E262BED5831689249688BA60E0934F3D582441B58782
0A02291641050A8E1C150B8C454669181269AC2D3398D9C31E940C9B685A5EEF
EEBDEB9CB3EEDA656EAE720FFDE0C7EF1CCEBDDFCFFDFDCEF99DCB85C361A4D3
B8FF1FD0E51E4A1BA1B1AA94630032F8A31725390C5956B0284A2C4A8AC2221B
13174332EA9B6D78DB73F337A06970EFB2C23229A728CB102589C579518CCCA9
1388BA765274A2FDEE232DC0F9F84DFAF64005A4A3547180952ED592808E32AF
06B42158850B9517E3400A11A35EF9E0006673024C7CB86612E67B6B19E48C7C
3F31801A1DC78AFB382FF8411E1825939D80A7CC8342A10822C9E098FB3026B2
C6E0AF9D62CFE63B4CB0C1953C03555C379401799FC22215F7583DE0DB096837
30573C8FDC911C4C6DFF8AFAA747D06B7985BC4E23CBE0B2BE3BF91E44014E02
682400474644BC8B87C742E26D1E330DB358E35E8DC98A2FB03CAF814FF2A1E4
5B3EDAFACD18A86E4D11109BC107B260202E806510DC318DBC8FEB30BE711CD6
FE3AB4751BA19314EC39F40276E393E54F910A9149CAEFF5C3913D7847164A22
7BB039B8058B82C0C4AFBB0CEC1D2A4E2D2120F614D15A6E9BA9C6B9F2F30CA2
B0B32E479DCE8FF71E8D8A17BBFAC0DDE2B480ABF60E9C3ED1149741F46C139F
5E58D0CC63FDD9C352CD97ABC600EA754D32D05C7A6A974ABF3AF38720B23877
A905D24400592D5720ADDF0AE5AC154A4882D06A4728333BD2C9242B6A23A39F
E201371C3D49BB98F7B96108F8910905FEFD0D2878499AC9948B8183CD4BDF45
B1005AAA54ACD3E427D783846CBD0EBA0C0ED6EFBB123EFB577FB431DBA95582
F7F5673AD61714D5155EBBD3B7A20056DFDA7245B7C95C914CFC9F00A95ADA01
3F01A44422D9EF203E7B0000000049454E44AE426082}
end
end
inline frViewControlesVentasTerminadas1: TfrViewControlesVentasTerminadas [3]
Left = 0
Top = 76
Width = 652
Height = 365
Align = alClient
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'Tahoma'
Font.Style = []
ParentFont = False
TabOrder = 3
ReadOnly = False
inherited EasyListview: TEasyListview
Width = 652
Height = 365
Groups.Items = {
000000000200000080080000000000000000010000000E000000730064006600
7300200061006400660020006100730064006600200000000000000000000000
0000800800000000000000000100000013000000200073006400660061007300
6400200020006100730020007400340074002000740034003300000000000000
000000000000}
Header.Columns.Items = {
0000000004000000800800010000000000320000000101000000050000004900
63006F006E006F00000000000000000000000000800800000000000000320000
000101000000060000004E006F006D0062007200650000000000000000000000
00008008000200000000003200000001010000000B0000004400650073006300
72006900700063006900F3006E00000000000000000000000000800800030000
000100320000000101000000050000004F007200640065006E00000000000000
000000000000}
end
end
inherited EditorActionList: TActionList [4]
end
inherited SmallImages: TPngImageList [5]
end
inherited LargeImages: TPngImageList [6]
end
inherited JvFormStorage: TJvFormStorage [7]
end
inherited JvAppRegistryStorage: TJvAppRegistryStorage [8]
end
inherited dsDataTable: TDADataSource [9]
end
inherited ViewPopupMenu: TPopupMenu [10]
end
end

View File

@ -1,43 +0,0 @@
unit uEditorControlesVentasTerminadas;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, uEditorControlesBase, JvAppStorage, JvAppRegistryStorage,
JvComponentBase, JvFormPlacement, ImgList, PngImageList, StdActns,
ActnList, ComCtrls, TBX, TB2Item, TB2Dock, TB2Toolbar, pngimage,
ExtCtrls, JvExControls, JvComponent, JvNavigationPane, uCustomView,
uViewBase, uViewControlesBase, Menus, DB, EasyListview,
uDADataTable, uViewControlesVentasTerminadas;
type
IEditorControlesVentasTerminadas = interface(IEditorControlesBase)
['{6FF8D6DA-A997-40E9-8482-B0E4A77ECCC6}']
end;
TfEditorControlesVentasTerminadas = class(TfEditorControlesBase, IEditorControlesVentasTerminadas)
frViewControlesVentasTerminadas1: TfrViewControlesVentasTerminadas;
private
{ Private declarations }
public
constructor Create(AOwner: TComponent); override;
end;
implementation
{$R *.dfm}
uses
uEditorBase;
{ TfEditorControlesVentasTerminadas }
constructor TfEditorControlesVentasTerminadas.Create(AOwner: TComponent);
begin
inherited;
FViewControl := frViewControlesVentasTerminadas1;
end;
end.

View File

@ -1,329 +0,0 @@
object ModuleVentasTerminadas: TModuleVentasTerminadas
OldCreateOrder = True
Description = 'Control de ventas terminadas'
ModuleMenu = MainMenu
ModuleName = 'Control de ventas terminadas'
SmallImages = SmallImages
LargeImages = LargeImages
Author = 'Rodax Software'
Version = '1.0.5'
Left = 701
Top = 547
Height = 252
Width = 401
object LargeImages: TPngImageList
Height = 24
Width = 24
PngImages = <
item
PngImage.Data = {
89504E470D0A1A0A0000000D4948445200000018000000180806000000E0773D
F80000000970485973000017120000171201679FD25200000A4D694343505068
6F746F73686F70204943432070726F66696C65000078DA9D53775893F7163EDF
F7650F5642D8F0B1976C81002223AC08C81059A21092006184101240C585880A
561415119C4855C482D50A489D88E2A028B867418A885A8B555C38EE1FDCA7B5
7D7AEFEDEDFBD7FBBCE79CE7FCCE79CF0F8011122691E6A26A003952853C3AD8
1F8F4F48C4C9BD80021548E0042010E6CBC26705C50000F00379787E74B03FFC
01AF6F00020070D52E2412C7E1FF83BA50265700209100E02212E70B01905200
C82E54C81400C81800B053B3640A009400006C797C422200AA0D00ECF4493E05
00D8A993DC1700D8A21CA908008D0100992847240240BB00605581522C02C0C2
00A0AC40222E04C0AE018059B632470280BD0500768E58900F4060008099422C
CC0020380200431E13CD03204C03A030D2BFE0A95F7085B8480100C0CB95CD97
4BD23314B895D01A77F2F0E0E221E2C26CB142611729106609E4229C979B2313
48E7034CCE0C00001AF9D1C1FE383F90E7E6E4E1E666E76CEFF4C5A2FE6BF06F
223E21F1DFFEBC8C020400104ECFEFDA5FE5E5D60370C701B075BF6BA95B00DA
560068DFF95D33DB09A05A0AD07AF98B7938FC401E9EA150C83C1D1C0A0B0BED
2562A1BD30E38B3EFF33E16FE08B7EF6FC401EFEDB7AF000719A4099ADC0A383
FD71616E76AE528EE7CB0442316EF7E723FEC7857FFD8E29D1E234B15C2C158A
F15889B850224DC779B952914421C995E212E97F32F11F96FD0993770D00AC86
4FC04EB607B5CB6CC07EEE01028B0E58D27600407EF32D8C1A0B910010673432
79F7000093BFF98F402B0100CD97A4E30000BCE8185CA894174CC608000044A0
812AB041070CC114ACC00E9CC11DBCC01702610644400C24C03C104206E4801C
0AA11896411954C03AD804B5B0031AA0119AE110B4C131380DE7E0125C81EB70
170660189EC218BC86090441C8081361213A8811628ED822CE0817998E042261
48349280A420E988145122C5C872A402A9426A915D4823F22D7214398D5C40FA
90DBC820328AFC8ABC47319481B25103D4027540B9A81F1A8AC6A073D174340F
5D8096A26BD11AB41E3D80B6A2A7D14BE87574007D8A8E6380D1310E668CD961
5C8C87456089581A26C71663E55835568F35631D583776151BC09E61EF082402
8B8013EC085E8410C26C82909047584C5843A825EC23B412BA085709838431C2
272293A84FB4257A12F9C478623AB1905846AC26EE211E219E255E270E135F93
48240EC992E44E0A21259032490B496B48DB482DA453A43ED210699C4C26EB90
6DC9DEE408B280AC209791B7900F904F92FBC9C3E4B7143AC588E24C09A22452
A494124A35653FE504A59F324299A0AA51CDA99ED408AA883A9F5A496DA07650
2F5387A91334759A25CD9B1643CBA42DA3D5D09A696769F7682FE974BA09DD83
1E4597D097D26BE807E9E7E983F4770C0D860D83C7486228196B197B19A718B7
192F994CA605D39799C85430D7321B9967980F986F55582AF62A7C1591CA1295
3A9556957E95E7AA545573553FD579AA0B54AB550FAB5E567DA64655B350E3A9
09D416ABD5A91D55BBA936AECE5277528F50CF515FA3BE5FFD82FA630DB28685
46A08648A35463B7C6198D2116C63265F15842D6725603EB2C6B984D625BB2F9
EC4C7605FB1B762F7B4C534373AA66AC6691669DE671CD010EC6B1E0F039D99C
4ACE21CE0DCE7B2D032D3F2DB1D66AAD66AD7EAD37DA7ADABEDA62ED72ED16ED
EBDAEF75709D409D2C9DF53A6D3AF77509BA36BA51BA85BADB75CFEA3ED363EB
79E909F5CAF50EE9DDD147F56DF4A3F517EAEFD6EFD11F373034083690196C31
3863F0CC9063E86B9869B8D1F084E1A811CB68BA91C468A3D149A327B826EE87
67E33578173E66AC6F1C62AC34DE65DC6B3C61626932DBA4C4A4C5E4BE29CD94
6B9A66BAD1B4D374CCCCC82CDCACD8ACC9EC8E39D59C6B9E61BED9BCDBFC8D85
A5459CC54A8B368BC796DA967CCB05964D96F7AC98563E567956F556D7AC49D6
5CEB2CEB6DD6576C501B579B0C9B3A9BCBB6A8AD9BADC4769B6DDF14E2148F29
D229F5536EDA31ECFCEC0AEC9AEC06ED39F661F625F66DF6CF1DCC1C121DD63B
743B7C727475CC766C70BCEBA4E134C3A9C4A9C3E957671B67A1739DF33517A6
4B90CB1297769717536DA78AA76E9F7ACB95E51AEEBAD2B5D3F5A39BBB9BDCAD
D96DD4DDCC3DC57DABFB4D2E9B1BC95DC33DEF41F4F0F758E271CCE39DA79BA7
C2F390E72F5E765E595EFBBD1E4FB39C269ED6306DC8DBC45BE0BDCB7B603A3E
3D65FACEE9033EC63E029F7A9F87BEA6BE22DF3DBE237ED67E997E07FC9EFB3B
FACBFD8FF8BFE179F216F14E056001C101E501BD811A81B3036B031F049904A5
0735058D05BB062F0C3E15420C090D591F72936FC017F21BF96333DC672C9AD1
15CA089D155A1BFA30CC264C1ED6118E86CF08DF107E6FA6F94CE9CCB60888E0
476C88B81F69199917F97D14292A32AA2EEA51B453747174F72CD6ACE459FB67
BD8EF18FA98CB93BDB6AB6727667AC6A6C526C63EC9BB880B8AAB8817887F845
F1971274132409ED89E4C4D8C43D89E37302E76C9A339CE49A54967463AEE5DC
A2B917E6E9CECB9E773C593559907C3885981297B23FE5832042502F184FE5A7
6E4D1D13F2849B854F45BEA28DA251B1B7B84A3C92E69D5695F638DD3B7D43FA
68864F4675C633094F522B79911992B923F34D5644D6DEACCFD971D92D39949C
949CA3520D6996B42BD730B728B74F662B2B930DE479E66DCA1B9387CAF7E423
F973F3DB156C854CD1A3B452AE500E164C2FA82B785B185B78B848BD485AD433
DF66FEEAF9230B82167CBD90B050B8B0B3D8B87859F1E022BF45BB16238B5317
772E315D52BA647869F0D27DCB68CBB296FD50E2585255F26A79DCF28E5283D2
A5A5432B82573495A994C9CB6EAEF45AB9631561956455EF6A97D55B567F2A17
955FAC70ACA8AEF8B046B8E6E2574E5FD57CF5796DDADADE4AB7CAEDEB48EBA4
EB6EACF759BFAF4ABD6A41D5D086F00DAD1BF18DE51B5F6D4ADE74A17A6AF58E
CDB4CDCACD03356135ED5BCCB6ACDBF2A136A3F67A9D7F5DCB56FDADABB7BED9
26DAD6BFDD777BF30E831D153BDEEF94ECBCB52B78576BBD457DF56ED2EE82DD
8F1A621BBABFE67EDDB847774FC59E8F7BA57B07F645EFEB6A746F6CDCAFBFBF
B2096D52368D1E483A70E59B806FDA9BED9A77B5705A2A0EC241E5C127DFA67C
7BE350E8A1CEC3DCC3CDDF997FB7F508EB48792BD23ABF75AC2DA36DA03DA1BD
EFE88CA39D1D5E1D47BEB7FF7EEF31E36375C7358F579EA09D283DF1F9E48293
E3A764A79E9D4E3F3DD499DC79F74CFC996B5D515DBD6743CF9E3F1774EE4CB7
5FF7C9F3DEE78F5DF0BC70F422F762DB25B74BAD3DAE3D477E70FDE148AF5B6F
EB65F7CBED573CAE74F44DEB3BD1EFD37FFA6AC0D573D7F8D72E5D9F79BDEFC6
EC1BB76E26DD1CB825BAF5F876F6ED17770AEE4CDC5D7A8F78AFFCBEDAFDEA07
FA0FEA7FB4FEB165C06DE0F860C060CFC3590FEF0E09879EFE94FFD387E1D247
CC47D52346238D8F9D1F1F1B0D1ABDF264CE93E1A7B2A713CFCA7E56FF79EB73
ABE7DFFDE2FB4BCF58FCD8F00BF98BCFBFAE79A9F372EFABA9AF3AC723C71FBC
CE793DF1A6FCADCEDB7DEFB8EFBADFC7BD1F9928FC40FE50F3D1FA63C7A7D04F
F73EE77CFEFC2FF784F3FB25D29F33000002944944415478DAD5955F4853511C
C7BFD7CD9C9BD21F4188FECFA83443E262BED5831689249688BA60E0934F3D58
2441B587820A02291641050A8E1C150B8C454669181269AC2D3398D9C31E940C
9B685A5EEFEEBDEB9CB3EEDA656EAE720FFDE0C7EF1CCEBDDFCFFDFDCEF99DCB
85C361A4D3B8FF1FD0E51E4A1BA1B1AA94630032F8A31725390C5956B0284A2C
4A8AC2221B13174332EA9B6D78DB73F337A06970EFB2C23229A728CB102589C5
79518CCCA91388BA765274A2FDEE232DC0F9F84DFAF64005A4A3547180952ED5
92808E32AF06B42158850B9517E3400A11A35EF9E0006673024C7CB86612E67B
6B19E48C7C3F31801A1DC78AFB382FF8411E1825939D80A7CC8342A10822C9E0
98FB3026B2C6E0AF9D62CFE63B4CB0C1953C03555C379401799FC22215F7583D
E0DB09683730573C8FDC911C4C6DFF8AFAA747D06B7985BC4E23CBE0B2BE3BF9
1E44014E02682400474644BC8B87C742E26D1E330DB358E35E8DC98A2FB03CAF
814FF2A1E45B3EDAFACD18A86E4D11109BC107B260202E806510DC318DBC8FEB
30BE711CD6FE3AB4751BA19314EC39F40276E393E54F910A9149CAEFF5C3913D
7847164A227BB039B8058B82C0C4AFBB0CEC1D2A4E2D2120F614D15A6E9BA9C6
B9F2F30CA2B0B32E479DCE8FF71E8D8A17BBFAC0DDE2B480ABF60E9C3ED11497
41F46C139F5E58D0CC63FDD9C352CD97ABC600EA754D32D05C7A6A974ABF3AF3
8720B23877A905D24400592D5720ADDF0AE5AC154A4882D06A4728333BD2C924
2B6A23A39FE201371C3D49BB98F7B96108F8910905FEFD0D2878499AC9948B81
83CD4BDF45B1005AAA54ACD3E427D783846CBD0EBA0C0ED6EFBB123EFB577FB4
31DBA95582F7F5673AD61714D5155EBBD3B7A20056DFDA7245B7C95C914CFC9F
00A95ADA013F01A44422D9EF203E7B0000000049454E44AE426082}
Name = 'PngImage0'
Background = clWindow
end
item
PngImage.Data = {
89504E470D0A1A0A0000000D4948445200000018000000180806000000E0773D
F80000000970485973000017120000171201679FD252000001924944415478DA
63FCFFFF3F032D01235D2C58BEED344D6C89F43265845B00E49065C8DF7FFF18
FEFEFD0FA5A1F8DF7F0697F01286733BA661B7807126234390A62656033FFFFA
C5F0F9E74F862F40FA0B12FB4DD457B8E1CB361D6298B774137E0B48051FA2BE
810DFF03B464D5D623F82D4089A444DC967D9BF10B2558FE40D96B771C23DE02
74F0E9F727866F7FBE81B118B33486E1A0B8D8B0EB04760BF0B99658F0A0F52D
C3E6BDA7705BF07F3E24C55E5C69C8A01F7E1E838D0CD0C541FAEF34BE66D87E
F00C6E0B12320CC08A0B1E30304C5060C060230374F105332E30DCAC7BC5B0EB
C859DAF9E05AF50B86BDC7CFD3CE07972A9F311C3C7991763E385FF684E1C899
CBB4F3C199E2470CC7CF5FA59D0F8EE7DF673873F906A605119E260C4C494C14
FBE070EE5D860B576F615A10EC6AC4C09EC642B10F0E64DD66B87CE30EA60501
CE060C5C196C14FB607FE66D862B37B158E0EBA0C7C09BCDC14029C0698197AD
0E46A105A2FF812B13247120FEF30F938D5CF362B5C0DD5A1B5C51500B6058D0
3D693ED50C8701B805B40400A09529EFB6636A250000000049454E44AE426082}
Name = 'PngImage1'
Background = clWindow
end>
Left = 232
Top = 16
Bitmap = {}
end
object ModuleActionList: TActionList
Images = LargeImages
Left = 40
Top = 72
object actVentas: TAction
Category = 'Ventas'
Caption = 'Control de ventas terminadas'
ImageIndex = 0
OnExecute = actVentasExecute
end
object actResumenVentas: TAction
Category = 'Ventas'
Caption = 'Resumen de ventas mensuales'
ImageIndex = 1
OnExecute = actResumenVentasExecute
end
end
object MainMenu: TMainMenu
Tag = 1000
Images = LargeImages
Left = 40
Top = 16
object menu: TMenuItem
Tag = 100
Caption = '&Ventas'
GroupIndex = 1
ImageIndex = 4
OnClick = actVentasExecute
object Ventas1: TMenuItem
Tag = 100
Action = actVentas
end
object N1: TMenuItem
Tag = 9998
Caption = '-'
end
object Resumenventasmensual1: TMenuItem
Tag = 9999
Action = actResumenVentas
end
end
end
object SmallImages: TPngImageList
PngImages = <
item
PngImage.Data = {
89504E470D0A1A0A0000000D49484452000000100000001008060000001FF3FF
610000000970485973000017120000171201679FD25200000A4D694343505068
6F746F73686F70204943432070726F66696C65000078DA9D53775893F7163EDF
F7650F5642D8F0B1976C81002223AC08C81059A21092006184101240C585880A
561415119C4855C482D50A489D88E2A028B867418A885A8B555C38EE1FDCA7B5
7D7AEFEDEDFBD7FBBCE79CE7FCCE79CF0F8011122691E6A26A003952853C3AD8
1F8F4F48C4C9BD80021548E0042010E6CBC26705C50000F00379787E74B03FFC
01AF6F00020070D52E2412C7E1FF83BA50265700209100E02212E70B01905200
C82E54C81400C81800B053B3640A009400006C797C422200AA0D00ECF4493E05
00D8A993DC1700D8A21CA908008D0100992847240240BB00605581522C02C0C2
00A0AC40222E04C0AE018059B632470280BD0500768E58900F4060008099422C
CC0020380200431E13CD03204C03A030D2BFE0A95F7085B8480100C0CB95CD97
4BD23314B895D01A77F2F0E0E221E2C26CB142611729106609E4229C979B2313
48E7034CCE0C00001AF9D1C1FE383F90E7E6E4E1E666E76CEFF4C5A2FE6BF06F
223E21F1DFFEBC8C020400104ECFEFDA5FE5E5D60370C701B075BF6BA95B00DA
560068DFF95D33DB09A05A0AD07AF98B7938FC401E9EA150C83C1D1C0A0B0BED
2562A1BD30E38B3EFF33E16FE08B7EF6FC401EFEDB7AF000719A4099ADC0A383
FD71616E76AE528EE7CB0442316EF7E723FEC7857FFD8E29D1E234B15C2C158A
F15889B850224DC779B952914421C995E212E97F32F11F96FD0993770D00AC86
4FC04EB607B5CB6CC07EEE01028B0E58D27600407EF32D8C1A0B910010673432
79F7000093BFF98F402B0100CD97A4E30000BCE8185CA894174CC608000044A0
812AB041070CC114ACC00E9CC11DBCC01702610644400C24C03C104206E4801C
0AA11896411954C03AD804B5B0031AA0119AE110B4C131380DE7E0125C81EB70
170660189EC218BC86090441C8081361213A8811628ED822CE0817998E042261
48349280A420E988145122C5C872A402A9426A915D4823F22D7214398D5C40FA
90DBC820328AFC8ABC47319481B25103D4027540B9A81F1A8AC6A073D174340F
5D8096A26BD11AB41E3D80B6A2A7D14BE87574007D8A8E6380D1310E668CD961
5C8C87456089581A26C71663E55835568F35631D583776151BC09E61EF082402
8B8013EC085E8410C26C82909047584C5843A825EC23B412BA085709838431C2
272293A84FB4257A12F9C478623AB1905846AC26EE211E219E255E270E135F93
48240EC992E44E0A21259032490B496B48DB482DA453A43ED210699C4C26EB90
6DC9DEE408B280AC209791B7900F904F92FBC9C3E4B7143AC588E24C09A22452
A494124A35653FE504A59F324299A0AA51CDA99ED408AA883A9F5A496DA07650
2F5387A91334759A25CD9B1643CBA42DA3D5D09A696769F7682FE974BA09DD83
1E4597D097D26BE807E9E7E983F4770C0D860D83C7486228196B197B19A718B7
192F994CA605D39799C85430D7321B9967980F986F55582AF62A7C1591CA1295
3A9556957E95E7AA545573553FD579AA0B54AB550FAB5E567DA64655B350E3A9
09D416ABD5A91D55BBA936AECE5277528F50CF515FA3BE5FFD82FA630DB28685
46A08648A35463B7C6198D2116C63265F15842D6725603EB2C6B984D625BB2F9
EC4C7605FB1B762F7B4C534373AA66AC6691669DE671CD010EC6B1E0F039D99C
4ACE21CE0DCE7B2D032D3F2DB1D66AAD66AD7EAD37DA7ADABEDA62ED72ED16ED
EBDAEF75709D409D2C9DF53A6D3AF77509BA36BA51BA85BADB75CFEA3ED363EB
79E909F5CAF50EE9DDD147F56DF4A3F517EAEFD6EFD11F373034083690196C31
3863F0CC9063E86B9869B8D1F084E1A811CB68BA91C468A3D149A327B826EE87
67E33578173E66AC6F1C62AC34DE65DC6B3C61626932DBA4C4A4C5E4BE29CD94
6B9A66BAD1B4D374CCCCC82CDCACD8ACC9EC8E39D59C6B9E61BED9BCDBFC8D85
A5459CC54A8B368BC796DA967CCB05964D96F7AC98563E567956F556D7AC49D6
5CEB2CEB6DD6576C501B579B0C9B3A9BCBB6A8AD9BADC4769B6DDF14E2148F29
D229F5536EDA31ECFCEC0AEC9AEC06ED39F661F625F66DF6CF1DCC1C121DD63B
743B7C727475CC766C70BCEBA4E134C3A9C4A9C3E957671B67A1739DF33517A6
4B90CB1297769717536DA78AA76E9F7ACB95E51AEEBAD2B5D3F5A39BBB9BDCAD
D96DD4DDCC3DC57DABFB4D2E9B1BC95DC33DEF41F4F0F758E271CCE39DA79BA7
C2F390E72F5E765E595EFBBD1E4FB39C269ED6306DC8DBC45BE0BDCB7B603A3E
3D65FACEE9033EC63E029F7A9F87BEA6BE22DF3DBE237ED67E997E07FC9EFB3B
FACBFD8FF8BFE179F216F14E056001C101E501BD811A81B3036B031F049904A5
0735058D05BB062F0C3E15420C090D591F72936FC017F21BF96333DC672C9AD1
15CA089D155A1BFA30CC264C1ED6118E86CF08DF107E6FA6F94CE9CCB60888E0
476C88B81F69199917F97D14292A32AA2EEA51B453747174F72CD6ACE459FB67
BD8EF18FA98CB93BDB6AB6727667AC6A6C526C63EC9BB880B8AAB8817887F845
F1971274132409ED89E4C4D8C43D89E37302E76C9A339CE49A54967463AEE5DC
A2B917E6E9CECB9E773C593559907C3885981297B23FE5832042502F184FE5A7
6E4D1D13F2849B854F45BEA28DA251B1B7B84A3C92E69D5695F638DD3B7D43FA
68864F4675C633094F522B79911992B923F34D5644D6DEACCFD971D92D39949C
949CA3520D6996B42BD730B728B74F662B2B930DE479E66DCA1B9387CAF7E423
F973F3DB156C854CD1A3B452AE500E164C2FA82B785B185B78B848BD485AD433
DF66FEEAF9230B82167CBD90B050B8B0B3D8B87859F1E022BF45BB16238B5317
772E315D52BA647869F0D27DCB68CBB296FD50E2585255F26A79DCF28E5283D2
A5A5432B82573495A994C9CB6EAEF45AB9631561956455EF6A97D55B567F2A17
955FAC70ACA8AEF8B046B8E6E2574E5FD57CF5796DDADADE4AB7CAEDEB48EBA4
EB6EACF759BFAF4ABD6A41D5D086F00DAD1BF18DE51B5F6D4ADE74A17A6AF58E
CDB4CDCACD03356135ED5BCCB6ACDBF2A136A3F67A9D7F5DCB56FDADABB7BED9
26DAD6BFDD777BF30E831D153BDEEF94ECBCB52B78576BBD457DF56ED2EE82DD
8F1A621BBABFE67EDDB847774FC59E8F7BA57B07F645EFEB6A746F6CDCAFBFBF
B2096D52368D1E483A70E59B806FDA9BED9A77B5705A2A0EC241E5C127DFA67C
7BE350E8A1CEC3DCC3CDDF997FB7F508EB48792BD23ABF75AC2DA36DA03DA1BD
EFE88CA39D1D5E1D47BEB7FF7EEF31E36375C7358F579EA09D283DF1F9E48293
E3A764A79E9D4E3F3DD499DC79F74CFC996B5D515DBD6743CF9E3F1774EE4CB7
5FF7C9F3DEE78F5DF0BC70F422F762DB25B74BAD3DAE3D477E70FDE148AF5B6F
EB65F7CBED573CAE74F44DEB3BD1EFD37FFA6AC0D573D7F8D72E5D9F79BDEFC6
EC1BB76E26DD1CB825BAF5F876F6ED17770AEE4CDC5D7A8F78AFFCBEDAFDEA07
FA0FEA7FB4FEB165C06DE0F860C060CFC3590FEF0E09879EFE94FFD387E1D247
CC47D52346238D8F9D1F1F1B0D1ABDF264CE93E1A7B2A713CFCA7E56FF79EB73
ABE7DFFDE2FB4BCF58FCD8F00BF98BCFBFAE79A9F372EFABA9AF3AC723C71FBC
CE793DF1A6FCADCEDB7DEFB8EFBADFC7BD1F9928FC40FE50F3D1FA63C7A7D04F
F73EE77CFEFC2FF784F3FB25D29F33000001624944415478DA63FCFFFF3F0325
8071D99653649B10E96DCA083640DD9B9961F2C964AC8A7EFFFDCBF0FDCF1F86
6FBF7F337CFCF103CC9EEBBF9521C5630EC3B91DD310068000CC90B966E7300C
B2D92607D70C02280650250CC8F5068A01A47883F9CE5306868A8908037689A4
C115C234339F6282085C6560F89BF80FCCD45C2BCAB06A8D0103F3EF7F0C715F
358830E02A440C66C0B51067306DE675984163752A032328212DDF7AFA3FB201
20BF2EB7BE8CE10564CD20AF18AECF4418000B4490E6EF40FC0D8A6181B776B9
1E8AE6B3E96721810833A07BF27CB84D13845F30F07F7BC7D0CBACC970E50B23
C302BE3B0CBF7FFE6428F9ABCDF0F10F5A3462CB0B3792430EFE7EF55C87918D
5D88555621EAD7DD9B539878F818B4976F17C64807B832D39560A7FFFF7FFD7C
C7C8C2CAC7C0C4C4A2B3761F23D68484CB80DB75C56C3FCE9F780E62B3286B85
6A4E98BD8F240320AE70FEC72CABE4824B33080000E911EEC1FB93056C000000
0049454E44AE426082}
Name = 'PngImage0'
Background = clWindow
end
item
PngImage.Data = {
89504E470D0A1A0A0000000D49484452000000100000001008060000001FF3FF
610000000970485973000017120000171201679FD252000001334944415478DA
63FCFFFF3F0325801164C0F26DA7C936056E40A49729511A7EFFF9CBF0FBF75F
30ED185A8CDD00C64446AC9A7FCCFC0DD7BC74D32186794B3711E7827FFFFE01
35FD836B06E155DB8E621A80CB6674F0A4E33DC3FA5D27B01BF07FFE7F868B2B
0D19F4C3CF836DBEBCDA9841D9E704DC66F1123E86FB2D6F19B6EC3B85DD8084
0C038682070C0C131420B621B34160C18C0B0CB71A5E31EC3C7416BF0B34024F
83FD7C778B0583A4CB21A80BFE3128D608335CAE7CC670E0E445F25D70AEF431
C3D1B357B01BF075DA4F86DB9BCC19A4DD8E806D7DB5CF9E81D76A373C1674DB
A5184E163E603875F13AAA01216E460C6CA92C44C5C291DCBB0CE7AFDE4235C0
DF511FEE4F5888FF81F191E21FA6E6CACD3BA80678D9EA302CDE7090A47C8062
40F7A4F9246986277B4AB333009B9C2E9EBC2508450000000049454E44AE4260
82}
Name = 'PngImage1'
Background = clWindow
end>
PngOptions = [pngBlendOnDisabled, pngGrayscaleOnDisabled]
Left = 308
Top = 16
Bitmap = {}
end
object ExtraImages: TPngImageList
Height = 28
Width = 28
PngImages = <>
Left = 232
Top = 80
end
end

View File

@ -1,96 +0,0 @@
unit uPluginControllerVentasTerminadas;
interface
uses
uModuleController, uInterfaces, uHostManager, Menus, Classes, ActnList,
ImgList, Controls, PngImageList;
type
IMCVentasTerminadas = interface(IInterface)
['{D7C41472-C5C7-43C1-849F-2056CC98D9B1}']
end;
TModuleVentasTerminadas = class(TModuleController, IMCVentasTerminadas)
actVentas: TAction;
menu: TMenuItem;
ExtraImages: TPngImageList;
LargeImages: TPngImageList;
MainMenu: TMainMenu;
ModuleActionList: TActionList;
Ventas1: TMenuItem;
SmallImages: TPngImageList;
actResumenVentas: TAction;
Resumenventasmensual1: TMenuItem;
N1: TMenuItem;
procedure actVentasExecute(Sender: TObject);
procedure actResumenVentasExecute(Sender: TObject);
public
end;
implementation
{$R *.dfm}
uses
Forms, Dialogs, uGUIBase, SysUtils, uDataModuleVentasTerminadas,
uEditorControlesVentasTerminadas, uEditorControlResumenVentas,
uBizControlVentasTerminadas, uBizVentasTerminadas, uEditorControlesBase;
function GetModule : TModuleController;
begin
Result := TModuleVentasTerminadas.Create(NIL);
end;
exports
GetModule name GET_MODULE_FUNC;
{
******************************* TModuleContactos *******************************
}
procedure TModuleVentasTerminadas.actVentasExecute(Sender: TObject);
var
aControl: IBizControlVentasTerminadas;
aObj: IEditorControlesVentasTerminadas;
begin
aControl := dmVentasTerminadas.GetControl;
aObj := TfEditorControlesVentasTerminadas.Create(Application);
try
with aObj do
begin
Control := aControl;
ShowEmbedded;
end;
finally
aControl := NIL;
aObj := NIL;
end;
end;
procedure TModuleVentasTerminadas.actResumenVentasExecute(Sender: TObject);
var
aControl: IBizResumenVentas;
aObj: IEditorControlResumenVentas;
begin
aControl := dmVentasTerminadas.GetItemsCrossTab;
aObj := TfEditorControlResumenVentas.Create(Application);
try
with aObj do
begin
Items := aControl;
ShowEmbedded;
end;
finally
aControl := NIL;
aObj := NIL;
end;
end;
initialization
RegisterModuleClass(TModuleVentasTerminadas);
finalization
UnRegisterModuleClass(TModuleVentasTerminadas);
end.

View File

@ -1,211 +0,0 @@
inherited frViewControlGridResumenVentas: TfrViewControlGridResumenVentas
inherited cxGrid: TcxGrid
inherited cxGridView: TcxGridDBTableView
OnCustomDrawCell = cxGridViewCustomDrawCell
DataController.Summary.FooterSummaryItems = <
item
Format = ',0.00 '#8364';-,0.00 '#8364
Kind = skSum
end
item
Format = ',0.00 '#8364';-,0.00 '#8364
Kind = skSum
end
item
Format = ',0.00 '#8364';-,0.00 '#8364
Kind = skSum
end
item
Format = ',0.00 '#8364';-,0.00 '#8364
Kind = skSum
end
item
Format = ',0.00 '#8364';-,0.00 '#8364
Kind = skSum
end
item
Format = ',0.00 '#8364';-,0.00 '#8364
Kind = skSum
end
item
Format = ',0.00 '#8364';-,0.00 '#8364
Kind = skSum
end
item
Format = ',0.00 '#8364';-,0.00 '#8364
Kind = skSum
end
item
Format = ',0.00 '#8364';-,0.00 '#8364
Kind = skSum
end
item
Format = ',0.00 '#8364';-,0.00 '#8364
Kind = skSum
end
item
Format = ',0.00 '#8364';-,0.00 '#8364
Kind = skSum
end
item
Format = ',0.00 '#8364';-,0.00 '#8364
Kind = skSum
end
item
Format = ',0.00 '#8364';-,0.00 '#8364
Kind = skSum
end
item
Format = ',0.00 '#8364';-,0.00 '#8364
Kind = skSum
end
item
Format = ',0.00 '#8364';-,0.00 '#8364
Kind = skSum
end
item
Format = ',0.00 '#8364';-,0.00 '#8364
Kind = skSum
end
item
Format = ',0.00 '#8364';-,0.00 '#8364
Kind = skSum
end
item
Format = ',0.00 '#8364';-,0.00 '#8364
Kind = skSum
end
item
Format = ',0.00 '#8364';-,0.00 '#8364
Kind = skSum
end
item
Format = ',0.00 '#8364';-,0.00 '#8364
Kind = skSum
end
item
Format = ',0.00 '#8364';-,0.00 '#8364
Kind = skSum
end
item
Format = ',0.00 '#8364';-,0.00 '#8364
Kind = skSum
end
item
Format = ',0.00 '#8364';-,0.00 '#8364
Kind = skSum
end
item
Format = ',0.00 '#8364';-,0.00 '#8364
Kind = skSum
end
item
Format = ',0.00 '#8364';-,0.00 '#8364
Kind = skSum
end
item
Format = '0,0 '#8364
Kind = skSum
end
item
Format = ',0.00 '#8364';-,0.00 '#8364
Kind = skSum
end
item
Format = ',0.00 '#8364';-,0.00 '#8364
Kind = skSum
end
item
Format = ',0.00 '#8364';-,0.00 '#8364
Kind = skSum
end
item
Format = ',0.00 '#8364';-,0.00 '#8364
Kind = skSum
end
item
Format = ',0.00 '#8364';-,0.00 '#8364
Kind = skSum
end
item
Format = ',0.00 '#8364';-,0.00 '#8364
Kind = skSum
end
item
Format = ',0.00 '#8364';-,0.00 '#8364
Kind = skSum
end>
OptionsView.CellAutoHeight = False
OptionsView.FooterAutoHeight = False
Preview.AutoHeight = False
end
end
inherited dsDataSource: TDADataSource
OnStateChange = dsDataSourceStateChange
end
inherited dxComponentPrinter: TdxComponentPrinter
CurrentLink = dxComponentPrinterLink1
object dxComponentPrinterLink1: TdxGridReportLink
Active = True
Component = cxGrid
PrinterPage.DMPaper = 9
PrinterPage.Footer = 6350
PrinterPage.Header = 6350
PrinterPage.Margins.Bottom = 12700
PrinterPage.Margins.Left = 12700
PrinterPage.Margins.Right = 12700
PrinterPage.Margins.Top = 12700
PrinterPage.Orientation = poLandscape
PrinterPage.PageSize.X = 210000
PrinterPage.PageSize.Y = 297000
PrinterPage._dxMeasurementUnits_ = 0
PrinterPage._dxLastMU_ = 2
ReportDocument.Caption = 'Venta mensual'
ReportDocument.CreationDate = 39000.462467372680000000
ReportTitle.Text = 'Venta mensual'
Font.Charset = DEFAULT_CHARSET
Font.Color = clBlack
Font.Height = 10
Font.Name = 'Tahoma'
Font.Style = []
OptionsFormatting.UseNativeStyles = True
OptionsView.Caption = False
OptionsView.FilterBar = False
BuiltInReportLink = True
end
end
inherited cxStyleRepository1: TcxStyleRepository
object cxStyleDia: TcxStyle
AssignedValues = [svColor, svFont, svTextColor]
Color = cl3DLight
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'MS Sans Serif'
Font.Style = [fsBold]
TextColor = clWindowText
end
object cxStyleTotal: TcxStyle
AssignedValues = [svFont]
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'MS Sans Serif'
Font.Style = [fsBold]
end
object cxStyleImporte: TcxStyle
end
end
object cxEditRepository1: TcxEditRepository
Left = 32
Top = 88
object cxEditDia: TcxEditRepositoryTextItem
Properties.Alignment.Horz = taRightJustify
end
object cxEditImporte: TcxEditRepositoryCurrencyItem
Properties.Alignment.Horz = taRightJustify
Properties.DisplayFormat = ',0.## '#8364';-,0.## '#8364
Properties.UseThousandSeparator = True
end
end
end

View File

@ -1,143 +0,0 @@
unit uViewControGridResumenVentas;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, uViewControlGrid, DB, uDADataTable, cxStyles, cxCustomData,
cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, cxDBData,
cxTextEdit, cxGridLevel, cxGridCustomTableView, cxGridTableView,
cxGridDBTableView, cxClasses, cxControls, cxGridCustomView, cxGrid,
cxCurrencyEdit, cxCalendar, dxPSGlbl, dxPSUtl, dxPrnPg, dxBkgnd, dxWrap,
dxPrnDev, dxPSEngn, dxPSCompsProvider, dxPSFillPatterns,
dxPSEdgePatterns, dxPSCore, dxPScxCommon, dxPScxGridLnk, dxPgsDlg,
cxDropDownEdit, StdCtrls, cxSpinEdit, uViewGrid, cxMemo,
cxEditRepositoryItems;
type
IViewControlGridResumenVentas = interface(IViewGrid)
['{E6D7FF0F-7E64-4E8C-8844-CAC011A62CDE}']
end;
TfrViewControlGridResumenVentas = class(TfrViewGrid, IViewControlGridResumenVentas)
dxComponentPrinterLink1: TdxGridReportLink;
cxEditRepository1: TcxEditRepository;
cxEditDia: TcxEditRepositoryTextItem;
cxEditImporte: TcxEditRepositoryCurrencyItem;
cxStyleDia: TcxStyle;
cxStyleTotal: TcxStyle;
cxStyleImporte: TcxStyle;
procedure cxGridViewCustomDrawCell(Sender: TcxCustomGridTableView;
ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo;
var ADone: Boolean);
procedure dsDataSourceStateChange(Sender: TObject);
private
procedure LimpiarGrid;
procedure GenerarGrid;
public
procedure Preview(Mes: String; Ano: String); overload;
procedure Print(Mes: String; Ano: String); overload;
end;
implementation
{$R *.dfm}
uses schVentasTerminadasClient_Intf, uViewGridBase;
{ TfrViewControlGridResumenVentas }
procedure TfrViewControlGridResumenVentas.Preview(Mes: String; Ano: String);
begin
inherited Preview;
dxComponentPrinterLink1.ReportTitle.Text := 'Ventas terminadas ' + Mes + ' de ' + Ano;
dxComponentPrinterLink1.Preview;
end;
procedure TfrViewControlGridResumenVentas.cxGridViewCustomDrawCell(
Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean);
begin
if not VarIsNull(AViewInfo.Value) then
if Pos('-', AViewInfo.Value) > 0 then
ACanvas.Canvas.Font.Color := $000000CC;
end;
procedure TfrViewControlGridResumenVentas.dsDataSourceStateChange(Sender: TObject);
begin
if dsDataSource.State = dsInactive
then LimpiarGrid
else GenerarGrid;
end;
procedure TfrViewControlGridResumenVentas.GenerarGrid;
var
i, AuxPos, AuxLen: Integer;
begin
cxGridView.BeginUpdate;
try
cxGridView.DataController.CreateAllItems;
for i := 0 to cxGridView.ColumnCount - 1 do
begin
case i of
0: cxGridView.Columns[i].Visible := False;
1: begin
cxGridView.Columns[i].Styles.Content := cxStyleDia;
cxGridView.Columns[i].Properties := cxEditDia.Properties;
cxGridView.Columns[i].HeaderAlignmentHorz := taRightJustify;
cxGridView.Columns[i].FooterAlignmentHorz := taRightJustify;
cxGridView.Columns[i].Width := 30;
cxGridView.Columns[i].SortIndex := 0;
cxGridView.Columns[i].SortOrder := soAscending;
end;
else begin
cxGridView.Columns[i].Styles.Content := cxStyleImporte;
cxGridView.Columns[i].PropertiesClassName := 'TcxCurrencyEditProperties';
cxGridView.Columns[i].Properties := cxEditImporte.Properties;
cxGridView.Columns[i].Summary.FooterKind := skSum;
cxGridView.Columns[i].Summary.FooterFormat := ',0.## €;-,0.## €';
cxGridView.Columns[i].HeaderAlignmentHorz := taRightJustify;
cxGridView.Columns[i].FooterAlignmentHorz := taRightJustify;
cxGridView.Columns[i].Width := 175;
end;
end;
if i = 2 then
begin
cxGridView.Columns[i].HeaderAlignmentHorz := taLeftJustify;
cxGridView.Columns[i].Styles.Content := cxStyleTotal;
end;
//Dejamos de la descripción del centro lo más corta y representativa posible
AuxPos := Pos('INGLES', cxGridView.Columns[i].Caption);
if AuxPos > 0 then AuxPos := AuxPos + 6;
AuxLen := Length(cxGridView.Columns[i].Caption) - AuxPos;
cxGridView.Columns[i].Caption := Trim(Copy(cxGridView.Columns[i].Caption, AuxPos, AuxLen));
end;
finally
cxGridView.EndUpdate;
end;
end;
procedure TfrViewControlGridResumenVentas.LimpiarGrid;
begin
cxGridView.BeginUpdate;
try
cxGridView.ClearItems;
finally
cxGridView.EndUpdate;
end;
end;
procedure TfrViewControlGridResumenVentas.Print(Mes, Ano: String);
begin
inherited Print;
dxComponentPrinterLink1.ReportTitle.Text := 'Ventas terminadas ' + Mes + ' de ' + Ano;
dxComponentPrinterLink1.Print(True, Nil);
end;
end.

View File

@ -1,278 +0,0 @@
inherited frViewControlGridVentasTerminadas: TfrViewControlGridVentasTerminadas
Width = 733
Height = 572
object cxGrid: TcxGrid [0]
Left = 0
Top = 0
Width = 733
Height = 572
Align = alClient
TabOrder = 0
LookAndFeel.Kind = lfStandard
LookAndFeel.NativeStyle = True
object cxGridView: TcxGridDBTableView
NavigatorButtons.ConfirmDelete = False
FilterBox.CustomizeDialog = False
DataController.Filter.Options = [fcoCaseInsensitive]
DataController.Filter.OnChanged = cxGridViewDataControllerFilterChanged
DataController.Options = [dcoAnsiSort, dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoSortByDisplayText]
DataController.Summary.DefaultGroupSummaryItems = <>
DataController.Summary.FooterSummaryItems = <>
DataController.Summary.SummaryGroups = <>
DataController.Summary.OnAfterSummary = cxGridViewDataControllerSummaryAfterSummary
DataController.OnCompare = cxGridViewDataControllerCompare
DataController.OnGroupingChanged = cxGridViewDataControllerGroupingChanged
DataController.OnSortingChanged = cxGridViewDataControllerSortingChanged
OptionsBehavior.CellHints = True
OptionsCustomize.ColumnFiltering = False
OptionsCustomize.ColumnGrouping = False
OptionsCustomize.DataRowSizing = True
OptionsCustomize.GroupRowSizing = True
OptionsData.Deleting = False
OptionsData.DeletingConfirmation = False
OptionsData.Editing = False
OptionsData.Inserting = False
OptionsSelection.CellSelect = False
OptionsSelection.UnselectFocusedRecordOnExit = False
OptionsView.CellEndEllipsis = True
OptionsView.CellAutoHeight = True
OptionsView.ColumnAutoWidth = True
OptionsView.Footer = True
OptionsView.FooterAutoHeight = True
OptionsView.GridLineColor = cl3DLight
OptionsView.GroupByBox = False
OptionsView.GroupFooters = gfAlwaysVisible
OptionsView.HeaderEndEllipsis = True
Styles.FilterBox = cxStyleFilterBox
Styles.OnGetContentStyle = cxGridViewStylesGetContentStyle
OnColumnPosChanged = cxGridViewColumnPosChanged
OnColumnSizeChanged = cxGridViewColumnSizeChanged
object cxGridViewFECHA: TcxGridDBColumn
Caption = 'Fecha'
DataBinding.FieldName = 'FECHA'
end
object cxGridViewDIA: TcxGridDBColumn
Caption = 'Dia'
DataBinding.FieldName = 'DIA'
end
object cxGridViewDIASEMANA: TcxGridDBColumn
Caption = 'Dia de la semana'
DataBinding.FieldName = 'DIASEMANA'
PropertiesClassName = 'TcxComboBoxProperties'
Properties.OnInitPopup = cxGridViewDIASEMANAPropertiesInitPopup
end
object cxGridViewMES: TcxGridDBColumn
Caption = 'Mes'
DataBinding.FieldName = 'MES'
PropertiesClassName = 'TcxComboBoxProperties'
Properties.OnInitPopup = cxGridViewMESPropertiesInitPopup
end
object cxGridViewANO: TcxGridDBColumn
Caption = 'A'#241'o'
DataBinding.FieldName = 'ANO'
end
object cxGridViewCENTRO: TcxGridDBColumn
Caption = 'Centro'
DataBinding.FieldName = 'CENTRO'
PropertiesClassName = 'TcxComboBoxProperties'
Properties.OnInitPopup = cxGridViewCENTROPropertiesInitPopup
end
object cxGridViewVENDEDOR: TcxGridDBColumn
Caption = 'Vendedor'
DataBinding.FieldName = 'VENDEDOR'
PropertiesClassName = 'TcxComboBoxProperties'
Properties.OnInitPopup = cxGridViewVENDEDORPropertiesInitPopup
end
object cxGridViewNUMTALON: TcxGridDBColumn
Caption = 'Tal'#243'n'
DataBinding.FieldName = 'NUMTALON'
end
object cxGridViewCODIGO: TcxGridDBColumn
Caption = 'Codigo'
DataBinding.FieldName = 'CODIGO'
end
object cxGridViewPRODUCTO: TcxGridDBColumn
Caption = 'Producto'
DataBinding.FieldName = 'PRODUCTO'
PropertiesClassName = 'TcxComboBoxProperties'
Properties.OnInitPopup = cxGridViewPRODUCTOPropertiesInitPopup
end
object cxGridViewGRUPOPRODUCTO: TcxGridDBColumn
Caption = 'Grupo'
DataBinding.FieldName = 'GRUPOPRODUCTO'
PropertiesClassName = 'TcxComboBoxProperties'
Properties.OnInitPopup = cxGridViewGRUPOPRODUCTOPropertiesInitPopup
end
object cxGridViewTIPOPRODUCTO: TcxGridDBColumn
Caption = 'Tipo'
DataBinding.FieldName = 'TIPOPRODUCTO'
PropertiesClassName = 'TcxComboBoxProperties'
Properties.OnInitPopup = cxGridViewTIPOPRODUCTOPropertiesInitPopup
end
object cxGridViewCOLECCION: TcxGridDBColumn
Caption = 'Coleccion'
DataBinding.FieldName = 'COLECCION'
PropertiesClassName = 'TcxComboBoxProperties'
Properties.OnInitPopup = cxGridViewCOLECCIONPropertiesInitPopup
end
object cxGridViewCOLOR: TcxGridDBColumn
Caption = 'Color'
DataBinding.FieldName = 'COLOR'
end
object cxGridViewTALLA: TcxGridDBColumn
Caption = 'Talla'
DataBinding.FieldName = 'TALLA'
PropertiesClassName = 'TcxSpinEditProperties'
Properties.Alignment.Horz = taRightJustify
HeaderAlignmentHorz = taRightJustify
end
object cxGridViewTALLA38: TcxGridDBColumn
Caption = '38'
DataBinding.FieldName = 'TALLA38'
PropertiesClassName = 'TcxSpinEditProperties'
Properties.Alignment.Horz = taRightJustify
HeaderAlignmentHorz = taRightJustify
end
object cxGridViewTALLA40: TcxGridDBColumn
Caption = '40'
DataBinding.FieldName = 'TALLA40'
PropertiesClassName = 'TcxSpinEditProperties'
Properties.Alignment.Horz = taRightJustify
HeaderAlignmentHorz = taRightJustify
end
object cxGridViewTALLA42: TcxGridDBColumn
Caption = '42'
DataBinding.FieldName = 'TALLA42'
PropertiesClassName = 'TcxSpinEditProperties'
Properties.Alignment.Horz = taRightJustify
HeaderAlignmentHorz = taRightJustify
end
object cxGridViewTALLA44: TcxGridDBColumn
Caption = '44'
DataBinding.FieldName = 'TALLA44'
PropertiesClassName = 'TcxSpinEditProperties'
Properties.Alignment.Horz = taRightJustify
HeaderAlignmentHorz = taRightJustify
end
object cxGridViewTALLA46: TcxGridDBColumn
Caption = '46'
DataBinding.FieldName = 'TALLA46'
PropertiesClassName = 'TcxSpinEditProperties'
Properties.Alignment.Horz = taRightJustify
HeaderAlignmentHorz = taRightJustify
end
object cxGridViewTALLA48: TcxGridDBColumn
Caption = '48'
DataBinding.FieldName = 'TALLA48'
PropertiesClassName = 'TcxSpinEditProperties'
Properties.Alignment.Horz = taRightJustify
HeaderAlignmentHorz = taRightJustify
end
object cxGridViewVTATERMDEV: TcxGridDBColumn
Caption = 'Vta. Term/Dev'
DataBinding.FieldName = 'VTATERMDEV'
PropertiesClassName = 'TcxSpinEditProperties'
Properties.Alignment.Horz = taRightJustify
FooterAlignmentHorz = taRightJustify
HeaderAlignmentHorz = taRightJustify
end
object cxGridViewVTAFINALRESC: TcxGridDBColumn
Caption = 'Vta. Final/Resc'
DataBinding.FieldName = 'VTAFINALRESC'
PropertiesClassName = 'TcxSpinEditProperties'
Properties.Alignment.Horz = taRightJustify
FooterAlignmentHorz = taRightJustify
HeaderAlignmentHorz = taRightJustify
end
object cxGridViewVENTAS: TcxGridDBColumn
Caption = 'Ventas'
DataBinding.FieldName = 'VENTAS'
PropertiesClassName = 'TcxSpinEditProperties'
Properties.Alignment.Horz = taRightJustify
HeaderAlignmentHorz = taRightJustify
end
object cxGridViewDEVOLUCIONES: TcxGridDBColumn
Caption = 'Devoluciones'
DataBinding.FieldName = 'DEVOLUCIONES'
PropertiesClassName = 'TcxSpinEditProperties'
Properties.Alignment.Horz = taRightJustify
HeaderAlignmentHorz = taRightJustify
end
object cxGridViewTOTAL: TcxGridDBColumn
Caption = 'Total'
DataBinding.FieldName = 'TOTAL'
PropertiesClassName = 'TcxSpinEditProperties'
Properties.Alignment.Horz = taRightJustify
HeaderAlignmentHorz = taRightJustify
end
object cxGridViewVALTERMDEV: TcxGridDBColumn
Caption = 'Val. Term/Dev'
DataBinding.FieldName = 'VALTERMDEV'
PropertiesClassName = 'TcxCurrencyEditProperties'
Properties.Alignment.Horz = taRightJustify
FooterAlignmentHorz = taRightJustify
HeaderAlignmentHorz = taRightJustify
end
object cxGridViewVALFINALRESC: TcxGridDBColumn
Caption = 'Val. Final/Resc'
DataBinding.FieldName = 'VALFINALRESC'
PropertiesClassName = 'TcxCurrencyEditProperties'
Properties.Alignment.Horz = taRightJustify
FooterAlignmentHorz = taRightJustify
HeaderAlignmentHorz = taRightJustify
end
object cxGridViewIMPVEN: TcxGridDBColumn
Caption = 'Imp. ventas'
DataBinding.FieldName = 'VALVEN'
PropertiesClassName = 'TcxCurrencyEditProperties'
Properties.Alignment.Horz = taRightJustify
HeaderAlignmentHorz = taRightJustify
end
object cxGridViewIMPDEV: TcxGridDBColumn
Caption = 'Imp. devoluciones'
DataBinding.FieldName = 'VALDEV'
PropertiesClassName = 'TcxCurrencyEditProperties'
Properties.Alignment.Horz = taRightJustify
HeaderAlignmentHorz = taRightJustify
end
object cxGridViewIMPTOT: TcxGridDBColumn
Caption = 'Imp. total'
DataBinding.FieldName = 'VALTOT'
PropertiesClassName = 'TcxCurrencyEditProperties'
Properties.Alignment.Horz = taRightJustify
HeaderAlignmentHorz = taRightJustify
end
end
object cxGridLevel: TcxGridLevel
GridView = cxGridView
end
end
inherited dxPrintStyleManager1: TdxPrintStyleManager
inherited dxPrintStyleManager1Style1: TdxPSPrintStyle
BuiltInStyle = True
end
end
inherited dxComponentPrinter: TdxComponentPrinter
inherited dxPrinterLinkcxGrid: TdxGridReportLink
Component = cxGrid
BuiltInReportLink = True
end
end
object cxStyleRepository1: TcxStyleRepository
Left = 16
Top = 48
object cxStyleRed: TcxStyle
AssignedValues = [svTextColor]
TextColor = clRed
end
object cxStyleBlue: TcxStyle
AssignedValues = [svTextColor]
TextColor = clBlue
end
object cxStyleFilterBox: TcxStyle
AssignedValues = [svColor, svTextColor]
Color = clInfoBk
TextColor = clWindowText
end
end
end

View File

@ -1,385 +0,0 @@
unit uViewControGridlVentasTerminadas;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, uViewControlGrid, DB, uDADataTable, cxStyles, cxCustomData,
cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, cxDBData,
cxTextEdit, cxGridLevel, cxGridCustomTableView, cxGridTableView,
cxGridDBTableView, cxClasses, cxControls, cxGridCustomView, cxGrid,
cxCurrencyEdit, cxCalendar, dxPSGlbl, dxPSUtl, dxPrnPg, dxBkgnd, dxWrap,
dxPrnDev, dxPSEngn, dxPSCompsProvider, dxPSFillPatterns,
dxPSEdgePatterns, dxPSCore, dxPScxCommon, dxPScxGridLnk, dxPgsDlg,
cxDropDownEdit, StdCtrls, cxSpinEdit;
type
IViewControlGridVentasTerminadas = interface(IViewControlGrid)
['{95B6857B-0F06-470B-8099-CDB07017B63F}']
end;
TfrViewControlGridVentasTerminadas = class(TfrViewControlGrid, IViewControlGridVentasTerminadas)
cxGrid: TcxGrid;
cxGridView: TcxGridDBTableView;
cxGridLevel: TcxGridLevel;
cxStyleRepository1: TcxStyleRepository;
cxStyleRed: TcxStyle;
cxStyleBlue: TcxStyle;
cxStyleFilterBox: TcxStyle;
cxGridViewFECHA: TcxGridDBColumn;
cxGridViewDIA: TcxGridDBColumn;
cxGridViewDIASEMANA: TcxGridDBColumn;
cxGridViewMES: TcxGridDBColumn;
cxGridViewANO: TcxGridDBColumn;
cxGridViewCENTRO: TcxGridDBColumn;
cxGridViewVENDEDOR: TcxGridDBColumn;
cxGridViewCODIGO: TcxGridDBColumn;
cxGridViewPRODUCTO: TcxGridDBColumn;
cxGridViewGRUPOPRODUCTO: TcxGridDBColumn;
cxGridViewTIPOPRODUCTO: TcxGridDBColumn;
cxGridViewCOLECCION: TcxGridDBColumn;
cxGridViewCOLOR: TcxGridDBColumn;
cxGridViewTALLA: TcxGridDBColumn;
cxGridViewTALLA38: TcxGridDBColumn;
cxGridViewTALLA40: TcxGridDBColumn;
cxGridViewTALLA42: TcxGridDBColumn;
cxGridViewTALLA44: TcxGridDBColumn;
cxGridViewTALLA46: TcxGridDBColumn;
cxGridViewTALLA48: TcxGridDBColumn;
cxGridViewVENTAS: TcxGridDBColumn;
cxGridViewDEVOLUCIONES: TcxGridDBColumn;
cxGridViewTOTAL: TcxGridDBColumn;
cxGridViewIMPVEN: TcxGridDBColumn;
cxGridViewIMPDEV: TcxGridDBColumn;
cxGridViewIMPTOT: TcxGridDBColumn;
cxGridViewNUMTALON: TcxGridDBColumn;
cxGridViewVTATERMDEV: TcxGridDBColumn;
cxGridViewVTAFINALRESC: TcxGridDBColumn;
cxGridViewVALTERMDEV: TcxGridDBColumn;
cxGridViewVALFINALRESC: TcxGridDBColumn;
procedure cxGridViewStylesGetContentStyle(
Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord;
AItem: TcxCustomGridTableItem; out AStyle: TcxStyle);
procedure cxGridViewColumnPosChanged(Sender: TcxGridTableView;
AColumn: TcxGridColumn);
procedure cxGridViewColumnSizeChanged(Sender: TcxGridTableView;
AColumn: TcxGridColumn);
procedure cxGridViewDataControllerGroupingChanged(Sender: TObject);
procedure cxGridViewDataControllerSortingChanged(Sender: TObject);
procedure cxGridViewDataControllerSummaryAfterSummary(
ASender: TcxDataSummary);
procedure cxGridViewCENTROPropertiesInitPopup(Sender: TObject);
procedure cxGridViewVENDEDORPropertiesInitPopup(Sender: TObject);
procedure cxGridViewPRODUCTOPropertiesInitPopup(Sender: TObject);
procedure cxGridViewDataControllerFilterChanged(Sender: TObject);
procedure cxGridViewDIASEMANAPropertiesInitPopup(Sender: TObject);
procedure cxGridViewMESPropertiesInitPopup(Sender: TObject);
procedure cxGridViewGRUPOPRODUCTOPropertiesInitPopup(Sender: TObject);
procedure cxGridViewTIPOPRODUCTOPropertiesInitPopup(Sender: TObject);
procedure cxGridViewCOLECCIONPropertiesInitPopup(Sender: TObject);
procedure cxGridViewDataControllerCompare(
ADataController: TcxCustomDataController; ARecordIndex1,
ARecordIndex2, AItemIndex: Integer; const V1, V2: Variant;
var Compare: Integer);
protected
procedure ActivarEventos; override;
procedure DesactivarEventos; override;
function GetFocusedView : TcxGridDBTableView; override;
public
procedure Refresh; override;
constructor Create(AOwner: TComponent); override;
end;
implementation
uses
cxVariants, uDateUtils;
{$R *.dfm}
{ TfrViewControlGridVentasTerminadas }
function TfrViewControlGridVentasTerminadas.GetFocusedView: TcxGridDBTableView;
begin
Result := cxGridView;
end;
procedure TfrViewControlGridVentasTerminadas.Refresh;
var
FocusedRow, TopRow : Integer;
begin
inherited;
{ Refrescar las filas del grid a partir del dataset y colocar la fila
seleccionada donde estaba }
if FocusedView.DataController.DataSource.DataSet.State = dsBrowse then
begin
TopRow := FocusedView.Controller.TopRowIndex;
FocusedRow := FocusedView.DataController.FocusedRowIndex;
FocusedView.DataController.UpdateItems(False); // <- Refresco
FocusedView.DataController.FocusedRowIndex := FocusedRow;
FocusedView.Controller.TopRowIndex := TopRow;
{ Esta chapuzilla es para que se rellenen los combobox de los filtros
por que el cxFilterControl no coge los valores la 1ª vez si los
combos están vacíos. }
TcxComboBoxProperties(cxGridViewPRODUCTO.Properties).OnInitPopup(nil);
TcxComboBoxProperties(cxGridViewCENTRO.Properties).OnInitPopup(nil);
TcxComboBoxProperties(cxGridViewVENDEDOR.Properties).OnInitPopup(nil);
TcxComboBoxProperties(cxGridViewDIASEMANA.Properties).OnInitPopup(nil);
TcxComboBoxProperties(cxGridViewMES.Properties).OnInitPopup(nil);
TcxComboBoxProperties(cxGridViewGRUPOPRODUCTO.Properties).OnInitPopup(nil);
TcxComboBoxProperties(cxGridViewTIPOPRODUCTO.Properties).OnInitPopup(nil);
TcxComboBoxProperties(cxGridViewCOLECCION.Properties).OnInitPopup(nil);
end;
end;
procedure TfrViewControlGridVentasTerminadas.cxGridViewStylesGetContentStyle(
Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord;
AItem: TcxCustomGridTableItem; out AStyle: TcxStyle);
var
AColumn : TcxGridDBColumn;
AFecha : TDateTime;
begin
inherited;
// La fila es la cabecera de un grupo
{ if ARecord.Expandable then
Exit;
AColumn := FocusedView.GetColumnByFieldName('FECHA');
if Assigned(AColumn) and (AColumn.Visible) then
begin
try
AFecha := VarToDateTime(ARecord.Values[AColumn.Index]);
except
on Exception do
ShowMessage(VarToStr(ARecord.Values[AColumn.Index]));
end;
if DaysBetween(Now, AFecha) > 14 then
AStyle := cxStyleRed
else
if DaysBetween(Now, AFecha) > 7 then
AStyle := cxStyleBlue
end; }
end;
procedure TfrViewControlGridVentasTerminadas.cxGridViewColumnPosChanged(
Sender: TcxGridTableView; AColumn: TcxGridColumn);
begin
inherited;
if Assigned(FOnViewChanged) then
FOnViewChanged(Self);
end;
procedure TfrViewControlGridVentasTerminadas.cxGridViewColumnSizeChanged(
Sender: TcxGridTableView; AColumn: TcxGridColumn);
begin
inherited;
if Assigned(FOnViewChanged) then
FOnViewChanged(Self);
end;
procedure TfrViewControlGridVentasTerminadas.cxGridViewDataControllerGroupingChanged(
Sender: TObject);
begin
inherited;
if Assigned(FOnViewChanged) then
FOnViewChanged(Self);
end;
procedure TfrViewControlGridVentasTerminadas.cxGridViewDataControllerSortingChanged(
Sender: TObject);
begin
inherited;
if Assigned(FOnViewChanged) then
FOnViewChanged(Self);
end;
procedure TfrViewControlGridVentasTerminadas.cxGridViewDataControllerSummaryAfterSummary(
ASender: TcxDataSummary);
begin
inherited;
if Assigned(FOnViewChanged) then
FOnViewChanged(Self);
end;
procedure TfrViewControlGridVentasTerminadas.cxGridViewCENTROPropertiesInitPopup(
Sender: TObject);
begin
inherited;
with TcxComboBoxProperties(cxGridViewCENTRO.Properties) do
begin
Items.Clear;
Items.AddStrings(FilterValueList[cxGridViewCENTRO.Index]);
Items.Delete(1); // "Personalizado"
Items.Delete(0); // "Todos"
end;
end;
procedure TfrViewControlGridVentasTerminadas.cxGridViewVENDEDORPropertiesInitPopup(
Sender: TObject);
begin
inherited;
with TcxComboBoxProperties(cxGridViewVENDEDOR.Properties) do
begin
Items.Clear;
Items.AddStrings(FilterValueList[cxGridViewVENDEDOR.Index]);
Items.Delete(1); // "Personalizado"
Items.Delete(0); // "Todos"
end;
end;
procedure TfrViewControlGridVentasTerminadas.cxGridViewPRODUCTOPropertiesInitPopup(
Sender: TObject);
begin
inherited;
with TcxComboBoxProperties(cxGridViewPRODUCTO.Properties) do
begin
Items.Clear;
Items.AddStrings(FilterValueList[cxGridViewPRODUCTO.Index]);
Items.Delete(1); // "Personalizado"
Items.Delete(0); // "Todos"
end;
end;
procedure TfrViewControlGridVentasTerminadas.cxGridViewDataControllerFilterChanged(
Sender: TObject);
begin
if Assigned(FOnFilterChanged) then
FOnFilterChanged(Self);
end;
constructor TfrViewControlGridVentasTerminadas.Create(AOwner: TComponent);
begin
inherited;
end;
procedure TfrViewControlGridVentasTerminadas.ActivarEventos;
begin
inherited;
with cxGridView do
begin
DataController.Filter.OnChanged := cxGridViewDataControllerFilterChanged;
DataController.Summary.OnAfterSummary := cxGridViewDataControllerSummaryAfterSummary;
DataController.OnGroupingChanged := cxGridViewDataControllerGroupingChanged;
DataController.OnSortingChanged := cxGridViewDataControllerSortingChanged;
OnColumnPosChanged := cxGridViewColumnPosChanged;
OnColumnSizeChanged := cxGridViewColumnSizeChanged;
end;
end;
procedure TfrViewControlGridVentasTerminadas.DesactivarEventos;
begin
inherited;
with cxGridView do
begin
DataController.Filter.OnChanged := nil;
DataController.Summary.OnAfterSummary := nil;
DataController.OnGroupingChanged := nil;
DataController.OnSortingChanged := nil;
OnColumnPosChanged := nil;
OnColumnSizeChanged := nil;
end;
end;
procedure TfrViewControlGridVentasTerminadas.cxGridViewDIASEMANAPropertiesInitPopup(
Sender: TObject);
begin
inherited;
with TcxComboBoxProperties(cxGridViewDIASEMANA.Properties) do
begin
Items.Clear;
Items.AddStrings(FilterValueList[cxGridViewDIASEMANA.Index]);
Items.Delete(1); // "Personalizado"
Items.Delete(0); // "Todos"
end;
end;
procedure TfrViewControlGridVentasTerminadas.cxGridViewMESPropertiesInitPopup(
Sender: TObject);
begin
inherited;
with TcxComboBoxProperties(cxGridViewMES.Properties) do
begin
Items.Clear;
Items.AddStrings(FilterValueList[cxGridViewMES.Index]);
Items.Delete(1); // "Personalizado"
Items.Delete(0); // "Todos"
end;
end;
procedure TfrViewControlGridVentasTerminadas.cxGridViewGRUPOPRODUCTOPropertiesInitPopup(
Sender: TObject);
begin
inherited;
with TcxComboBoxProperties(cxGridViewGRUPOPRODUCTO.Properties) do
begin
Items.Clear;
Items.AddStrings(FilterValueList[cxGridViewGRUPOPRODUCTO.Index]);
Items.Delete(1); // "Personalizado"
Items.Delete(0); // "Todos"
end;
end;
procedure TfrViewControlGridVentasTerminadas.cxGridViewTIPOPRODUCTOPropertiesInitPopup(
Sender: TObject);
begin
inherited;
with TcxComboBoxProperties(cxGridViewTIPOPRODUCTO.Properties) do
begin
Items.Clear;
Items.AddStrings(FilterValueList[cxGridViewTIPOPRODUCTO.Index]);
Items.Delete(1); // "Personalizado"
Items.Delete(0); // "Todos"
end;
end;
procedure TfrViewControlGridVentasTerminadas.cxGridViewCOLECCIONPropertiesInitPopup(
Sender: TObject);
begin
inherited;
with TcxComboBoxProperties(cxGridViewCOLECCION.Properties) do
begin
Items.Clear;
Items.AddStrings(FilterValueList[cxGridViewCOLECCION.Index]);
Items.Delete(1); // "Personalizado"
Items.Delete(0); // "Todos"
end;
end;
procedure TfrViewControlGridVentasTerminadas.cxGridViewDataControllerCompare(
ADataController: TcxCustomDataController; ARecordIndex1, ARecordIndex2,
AItemIndex: Integer; const V1, V2: Variant; var Compare: Integer);
var
AValue1,
AValue2 : Variant;
begin
// Por defecto
Compare := VarCompare(V1, V2);
try
if (AItemIndex = cxGridViewDIASEMANA.Index) then
begin
AValue1 := ADataController.Values[ARecordIndex1, cxGridViewDIASEMANA.Index];
AValue2 := ADataController.Values[ARecordIndex2, cxGridViewDIASEMANA.Index];
if (not VarIsNull(AValue1)) and (not VarIsNull(AValue2)) then
Compare := VarCompare(NumberDayOfTheWeek(AValue1), NumberDayOfTheWeek(AValue2))
end
else begin
if (AItemIndex = cxGridViewMES.Index) then
begin
AValue1 := ADataController.Values[ARecordIndex1, cxGridViewMES.Index];
AValue2 := ADataController.Values[ARecordIndex2, cxGridViewMES.Index];
if (not VarIsNull(AValue1)) and (not VarIsNull(AValue2)) then
Compare := VarCompare(NumberMonthOfTheYear(AValue1), NumberMonthOfTheYear(AValue2))
end
end;
except
//ShowMessage(VarToStr(ARecordIndex1) + ' ' + VarToStr(ARecordIndex1));
end;
end;
end.

View File

@ -1,190 +0,0 @@
inherited frViewControlVentasTerminadas: TfrViewControlVentasTerminadas
Height = 608
inherited TBXMultiDock1: TTBXMultiDock
Width = 232
Height = 608
inherited pnlParametros: TTBXDockablePanel
DockedWidth = 228
inherited TBXAlignmentPanel2: TTBXAlignmentPanel
Width = 228
Height = 68
inherited TBXLink1: TTBXLink
Width = 220
Height = 20
Action = actPeriodoFechas
ImageIndex = 4
Images = SmallImages
end
inherited TBXLink5: TTBXLink
Top = 24
Width = 220
end
inherited TBXLink2: TTBXLink
Top = 44
Width = 220
end
end
inherited pcParametros: TPageControl
Top = 68
Width = 228
inherited TabSheet5: TTabSheet
inline frViewPeriodoFechas1: TfrViewPeriodoFechas
Left = 0
Top = 0
Width = 220
Height = 159
Align = alClient
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'MS Sans Serif'
Font.Style = []
ParentFont = False
TabOrder = 0
ReadOnly = False
inherited TBXLabel1: TTBXLabel
Width = 220
end
inherited TBXLabel2: TTBXLabel
Width = 220
end
inherited TBXAlignmentPanel1: TTBXAlignmentPanel
Width = 220
inherited cbPeriodo: TcxComboBox
Width = 176
end
end
inherited TBXAlignmentPanel2: TTBXAlignmentPanel
Width = 220
end
end
end
inherited tsColumnas: TTabSheet
inherited frViewColumnas1: TfrViewColumnas
Width = 220
inherited TBXLabel1: TTBXLabel
Width = 220
end
inherited lbColumnas: TcxCheckListBox
Width = 220
end
end
end
inherited tsAgrupacion: TTabSheet
inherited frViewAgrupaciones1: TfrViewAgrupaciones
Width = 220
inherited TBXLabel1: TTBXLabel
Width = 220
end
inherited pnlAgrupaciones: TTBXAlignmentPanel
Width = 220
DesignSize = (
220
77)
end
end
end
end
inherited TBXAlignmentPanel3: TTBXAlignmentPanel
Top = 237
Width = 228
end
end
inherited pnlTareas: TTBXDockablePanel
Top = 289
DockedWidth = 228
DockPos = 289
Visible = False
inherited TBXPageScroller1: TTBXPageScroller
Width = 228
inherited TBXAlignmentPanel1: TTBXAlignmentPanel
Width = 228
inherited bFiltros: TTBXLink
Width = 220
end
inherited bSumarios: TTBXLink
Width = 220
end
end
inherited pcTareas: TPageControl
Width = 228
inherited tsSumarios: TTabSheet
inherited frViewSumarios1: TfrViewSumarios
Width = 220
inherited TBXLabel1: TTBXLabel
Width = 220
end
inherited vgSumarios: TcxVerticalGrid
Width = 220
end
end
end
inherited tsFiltros: TTabSheet
inherited frViewFiltros1: TfrViewFiltros
Width = 220
inherited TBXLabel1: TTBXLabel
Width = 220
end
inherited cxFilterControl1: TcxFilterControl
Width = 220
end
inherited TBXAlignmentPanel3: TTBXAlignmentPanel
Width = 220
end
inherited cxStyleRepository1: TcxStyleRepository
Left = 136
Top = 64
end
end
end
end
end
end
end
inline frViewControlGridVentasTerminadas1: TfrViewControlGridVentasTerminadas [1]
Left = 232
Top = 0
Width = 467
Height = 608
Align = alClient
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'Tahoma'
Font.Style = []
ParentFont = False
TabOrder = 1
ReadOnly = False
inherited cxGrid: TcxGrid
Width = 467
Height = 608
end
inherited dxPrintStyleManager1: TdxPrintStyleManager
inherited dxPrintStyleManager1Style1: TdxPSPrintStyle
BuiltInStyle = True
end
end
inherited dxComponentPrinter: TdxComponentPrinter
inherited dxPrinterLinkcxGrid: TdxGridReportLink
BuiltInReportLink = True
end
end
end
inherited SmallImages: TPngImageList [2]
end
inherited LargeImages: TPngImageList [3]
end
inherited EditorActionList: TActionList
Left = 248
Top = 72
inherited actRefrescar: TAction
OnExecute = actRefrescarExecute
end
object actPeriodoFechas: TAction
Category = 'Tareas'
Caption = 'Periodo de fechas'
ImageIndex = 4
OnExecute = actPeriodoFechasExecute
end
end
end

View File

@ -1,148 +0,0 @@
unit uViewControlVentasTerminadas;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, uViewControlBase, ActnList, ImgList, PngImageList, uViewGrid,
uViewControlGrid, uViewSumarios, TBXDkPanels, StdCtrls,
uViewAgrupaciones, uCustomView, uViewBase, uViewColumnas, ComCtrls,
TB2Dock, uViewParametrosControlGrid, uBizControlesBase, cxStyles,
cxCustomData, cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB,
cxDBData, cxGridLevel, cxClasses, cxControls, cxGridCustomView,
cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxGrid,
cxTextEdit, uViewFiltros,
uViewControGridlVentasTerminadas, uViewPeriodoFechas;
type
IViewControlVentasTerminadas = interface(IViewControlBase)
['{B8B9105B-E833-4E7D-BA36-EB9A7EBDCE69}']
end;
TfrViewControlVentasTerminadas = class(TfrViewControlBase, IViewControlVentasTerminadas)
frViewPeriodoFechas1: TfrViewPeriodoFechas;
actPeriodoFechas: TAction;
frViewControlGridVentasTerminadas1: TfrViewControlGridVentasTerminadas;
procedure actRefrescarExecute(Sender: TObject);
procedure actPeriodoFechasExecute(Sender: TObject);
protected
FModificado : Boolean;
procedure OnViewControlGridChanged(Sender : TObject);
procedure OnFilterChanged(Sender : TObject);
procedure ActivarTarea(const ATarea: Integer); override;
public
constructor Create(AOwner: TComponent); override;
procedure Refresh; override;
end;
implementation
uses
uDataModuleVentasTerminadas, uBizControlVentasTerminadas, uBizVentasTerminadas;
const
PERIODO = 0;
{$R *.dfm}
{ TfrViewControlVentasTerminadas }
constructor TfrViewControlVentasTerminadas.Create(AOwner: TComponent);
begin
inherited;
frViewControlGridVentasTerminadas1.OnViewChanged := OnViewControlGridChanged;
frViewControlGridVentasTerminadas1.OnFilterChanged := OnFilterChanged;
frViewColumnas1.ViewControlGrid := frViewControlGridVentasTerminadas1;
frViewAgrupaciones1.ViewControlGrid := frViewControlGridVentasTerminadas1;
frViewSumarios1.ViewControlGrid := frViewControlGridVentasTerminadas1;
frViewFiltros1.ViewControlGrid := frViewControlGridVentasTerminadas1;
pcParametros.ActivePage := TabSheet5;
end;
procedure TfrViewControlVentasTerminadas.Refresh;
var
AColumns : TStringList;
begin
inherited;
ShowHourglassCursor;
actRefrescar.Enabled := False;
frViewControlGridVentasTerminadas1.OnViewChanged := nil;
frViewControlGridVentasTerminadas1.OnFilterChanged := nil;
try
// Calcular las columnas a pedir al servidor
AColumns := frViewColumnas1.GetCheckedColumns;
AColumns.Duplicates := dupIgnore;
AColumns.AddStrings(frViewAgrupaciones1.GetAgrupaciones);
(Control as IBizControlVentasTerminadas).Items.VisibleColumns := AColumns.CommaText;
with (Control as IBizControlVentasTerminadas).Items.DataTable do
begin
DisableControls;
try
Active := False;
LoadSchema;
ParamByName('FECHAINI').AsDateTime := frViewPeriodoFechas1.FechaInicial;
ParamByName('FECHAFIN').AsDateTime := frViewPeriodoFechas1.FechaFinal;
Active := True;
frViewColumnas1.Execute;
frViewAgrupaciones1.Execute;
frViewSumarios1.Refresh;
frViewFiltros1.Refresh;
pnlTareas.Visible := True;
if Assigned(FOnViewChanged) then
FOnViewChanged(Self);
finally
EnableControls;
frViewControlGridVentasTerminadas1.Refresh;
frViewControlGridVentasTerminadas1.ExpandirTodo;
frViewControlGridVentasTerminadas1.GotoFirst;
end;
end;
finally
FreeAndNil(AColumns);
frViewControlGridVentasTerminadas1.OnViewChanged := OnViewControlGridChanged;
frViewControlGridVentasTerminadas1.OnFilterChanged := OnFilterChanged;
actRefrescar.Enabled := True;
HideHourglassCursor;
end;
end;
procedure TfrViewControlVentasTerminadas.actRefrescarExecute(Sender: TObject);
begin
inherited;
Refresh;
end;
procedure TfrViewControlVentasTerminadas.OnViewControlGridChanged(
Sender: TObject);
begin
if Assigned(Self.OnViewChanged) then
Self.OnViewChanged(Self);
end;
procedure TfrViewControlVentasTerminadas.OnFilterChanged(Sender: TObject);
begin
frViewFiltros1.Refresh;
end;
procedure TfrViewControlVentasTerminadas.actPeriodoFechasExecute(
Sender: TObject);
begin
inherited;
ActivarTarea(PERIODO);
end;
procedure TfrViewControlVentasTerminadas.ActivarTarea(
const ATarea: Integer);
begin
inherited;
case ATarea of
PERIODO : pcParametros.ActivePage := TabSheet5;
end;
end;
end.

View File

@ -1,10 +0,0 @@
inherited frViewControlesVentasTerminadas: TfrViewControlesVentasTerminadas
inherited EasyListview: TEasyListview
Header.Columns.Items = {
0000000002000000800800000000000100320000000101000000060000004E00
6F006D0062007200650000000000000000000000000080080001000000000032
00000001010000000B000000440065007300630072006900700063006900F300
6E00000000000000000000000000}
Header.Visible = True
end
end

View File

@ -1,24 +0,0 @@
unit uViewControlesVentasTerminadas;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, uViewControlesBase, cxGraphics, cxCustomData, cxStyles, cxTL,
cxImageComboBox, cxMaskEdit, cxTextEdit, DB, uDADataTable, ImgList,
PngImageList, cxInplaceContainer, cxDBTL, cxControls, cxTLData,
EasyLVCommonObjects, EasyListview;
type
IViewControlesVentasTerminadas = interface(IViewControlesBase)
['{0AFCCF6C-F5FB-4E88-9E8C-5B27D84F0D56}']
end;
TfrViewControlesVentasTerminadas = class(TfrViewControlesBase, IViewControlesVentasTerminadas)
end;
implementation
{$R *.dfm}
end.

View File

@ -1,736 +0,0 @@
unit schVentasTerminadasClient_Intf;
interface
uses
Classes, DB, SysUtils, uROClasses, uDADataTable;
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_VentasTerminadasCrossTab = '{CB7ED815-B25C-406C-AC94-F6011D81D7F7}';
RID_VentasTerminadas = '{DC08830B-E517-4CB1-A709-B8B9606E065E}';
{ Data table names }
nme_VentasTerminadasCrossTab = 'VentasTerminadasCrossTab';
nme_VentasTerminadas = 'VentasTerminadas';
{ VentasTerminadasCrossTab fields }
{ VentasTerminadasCrossTab field indexes }
{ VentasTerminadas fields }
fld_VentasTerminadasNUMINF = 'NUMINF';
fld_VentasTerminadasCLAVE1 = 'CLAVE1';
fld_VentasTerminadasCLAVE2 = 'CLAVE2';
fld_VentasTerminadasCLAVE3 = 'CLAVE3';
fld_VentasTerminadasFECHA = 'FECHA';
fld_VentasTerminadasDIA = 'DIA';
fld_VentasTerminadasDIASEMANA = 'DIASEMANA';
fld_VentasTerminadasMES = 'MES';
fld_VentasTerminadasANO = 'ANO';
fld_VentasTerminadasCENTRO = 'CENTRO';
fld_VentasTerminadasVENDEDOR = 'VENDEDOR';
fld_VentasTerminadasNUMTALON = 'NUMTALON';
fld_VentasTerminadasCODIGO = 'CODIGO';
fld_VentasTerminadasPRODUCTO = 'PRODUCTO';
fld_VentasTerminadasGRUPOPRODUCTO = 'GRUPOPRODUCTO';
fld_VentasTerminadasTIPOPRODUCTO = 'TIPOPRODUCTO';
fld_VentasTerminadasCOLECCION = 'COLECCION';
fld_VentasTerminadasCOLOR = 'COLOR';
fld_VentasTerminadasTALLA = 'TALLA';
fld_VentasTerminadasTALLA38 = 'TALLA38';
fld_VentasTerminadasTALLA40 = 'TALLA40';
fld_VentasTerminadasTALLA42 = 'TALLA42';
fld_VentasTerminadasTALLA44 = 'TALLA44';
fld_VentasTerminadasTALLA46 = 'TALLA46';
fld_VentasTerminadasTALLA48 = 'TALLA48';
fld_VentasTerminadasVTATERMDEV = 'VTATERMDEV';
fld_VentasTerminadasVTAFINALRESC = 'VTAFINALRESC';
fld_VentasTerminadasVENTAS = 'VENTAS';
fld_VentasTerminadasDEVOLUCIONES = 'DEVOLUCIONES';
fld_VentasTerminadasTOTAL = 'TOTAL';
fld_VentasTerminadasVALTERMDEV = 'VALTERMDEV';
fld_VentasTerminadasVALFINALRESC = 'VALFINALRESC';
fld_VentasTerminadasVALVEN = 'VALVEN';
fld_VentasTerminadasVALDEV = 'VALDEV';
fld_VentasTerminadasVALTOT = 'VALTOT';
{ VentasTerminadas field indexes }
idx_VentasTerminadasNUMINF = 0;
idx_VentasTerminadasCLAVE1 = 1;
idx_VentasTerminadasCLAVE2 = 2;
idx_VentasTerminadasCLAVE3 = 3;
idx_VentasTerminadasFECHA = 4;
idx_VentasTerminadasDIA = 5;
idx_VentasTerminadasDIASEMANA = 6;
idx_VentasTerminadasMES = 7;
idx_VentasTerminadasANO = 8;
idx_VentasTerminadasCENTRO = 9;
idx_VentasTerminadasVENDEDOR = 10;
idx_VentasTerminadasNUMTALON = 11;
idx_VentasTerminadasCODIGO = 12;
idx_VentasTerminadasPRODUCTO = 13;
idx_VentasTerminadasGRUPOPRODUCTO = 14;
idx_VentasTerminadasTIPOPRODUCTO = 15;
idx_VentasTerminadasCOLECCION = 16;
idx_VentasTerminadasCOLOR = 17;
idx_VentasTerminadasTALLA = 18;
idx_VentasTerminadasTALLA38 = 19;
idx_VentasTerminadasTALLA40 = 20;
idx_VentasTerminadasTALLA42 = 21;
idx_VentasTerminadasTALLA44 = 22;
idx_VentasTerminadasTALLA46 = 23;
idx_VentasTerminadasTALLA48 = 24;
idx_VentasTerminadasVTATERMDEV = 25;
idx_VentasTerminadasVTAFINALRESC = 26;
idx_VentasTerminadasVENTAS = 27;
idx_VentasTerminadasDEVOLUCIONES = 28;
idx_VentasTerminadasTOTAL = 29;
idx_VentasTerminadasVALTERMDEV = 30;
idx_VentasTerminadasVALFINALRESC = 31;
idx_VentasTerminadasVALVEN = 32;
idx_VentasTerminadasVALDEV = 33;
idx_VentasTerminadasVALTOT = 34;
type
{ IVentasTerminadasCrossTab }
IVentasTerminadasCrossTab = interface(IDAStronglyTypedDataTable)
['{EF1D0240-B945-4A63-AB9C-C2584843DCC6}']
{ Property getters and setters }
{ Properties }
end;
{ TVentasTerminadasCrossTabDataTableRules }
TVentasTerminadasCrossTabDataTableRules = class(TDADataTableRules, IVentasTerminadasCrossTab)
private
protected
{ Property getters and setters }
{ Properties }
public
constructor Create(aDataTable: TDADataTable); override;
destructor Destroy; override;
end;
{ IVentasTerminadas }
IVentasTerminadas = interface(IDAStronglyTypedDataTable)
['{EA7C15A8-75FD-4440-A504-0800A6BC8AE8}']
{ Property getters and setters }
function GetNUMINFValue: String;
procedure SetNUMINFValue(const aValue: String);
function GetCLAVE1Value: Float;
procedure SetCLAVE1Value(const aValue: Float);
function GetCLAVE2Value: Integer;
procedure SetCLAVE2Value(const aValue: Integer);
function GetCLAVE3Value: Integer;
procedure SetCLAVE3Value(const aValue: Integer);
function GetFECHAValue: DateTime;
procedure SetFECHAValue(const aValue: DateTime);
function GetDIAValue: Integer;
procedure SetDIAValue(const aValue: Integer);
function GetDIASEMANAValue: String;
procedure SetDIASEMANAValue(const aValue: String);
function GetMESValue: String;
procedure SetMESValue(const aValue: String);
function GetANOValue: Integer;
procedure SetANOValue(const aValue: Integer);
function GetCENTROValue: String;
procedure SetCENTROValue(const aValue: String);
function GetVENDEDORValue: String;
procedure SetVENDEDORValue(const aValue: String);
function GetNUMTALONValue: String;
procedure SetNUMTALONValue(const aValue: String);
function GetCODIGOValue: String;
procedure SetCODIGOValue(const aValue: String);
function GetPRODUCTOValue: String;
procedure SetPRODUCTOValue(const aValue: String);
function GetGRUPOPRODUCTOValue: String;
procedure SetGRUPOPRODUCTOValue(const aValue: String);
function GetTIPOPRODUCTOValue: String;
procedure SetTIPOPRODUCTOValue(const aValue: String);
function GetCOLECCIONValue: String;
procedure SetCOLECCIONValue(const aValue: String);
function GetCOLORValue: String;
procedure SetCOLORValue(const aValue: String);
function GetTALLAValue: String;
procedure SetTALLAValue(const aValue: String);
function GetTALLA38Value: Float;
procedure SetTALLA38Value(const aValue: Float);
function GetTALLA40Value: Float;
procedure SetTALLA40Value(const aValue: Float);
function GetTALLA42Value: Float;
procedure SetTALLA42Value(const aValue: Float);
function GetTALLA44Value: Float;
procedure SetTALLA44Value(const aValue: Float);
function GetTALLA46Value: Float;
procedure SetTALLA46Value(const aValue: Float);
function GetTALLA48Value: Float;
procedure SetTALLA48Value(const aValue: Float);
function GetVTATERMDEVValue: Float;
procedure SetVTATERMDEVValue(const aValue: Float);
function GetVTAFINALRESCValue: Float;
procedure SetVTAFINALRESCValue(const aValue: Float);
function GetVENTASValue: Float;
procedure SetVENTASValue(const aValue: Float);
function GetDEVOLUCIONESValue: Float;
procedure SetDEVOLUCIONESValue(const aValue: Float);
function GetTOTALValue: Float;
procedure SetTOTALValue(const aValue: Float);
function GetVALTERMDEVValue: Float;
procedure SetVALTERMDEVValue(const aValue: Float);
function GetVALFINALRESCValue: Float;
procedure SetVALFINALRESCValue(const aValue: Float);
function GetVALVENValue: Float;
procedure SetVALVENValue(const aValue: Float);
function GetVALDEVValue: Float;
procedure SetVALDEVValue(const aValue: Float);
function GetVALTOTValue: Float;
procedure SetVALTOTValue(const aValue: Float);
{ Properties }
property NUMINF: String read GetNUMINFValue write SetNUMINFValue;
property CLAVE1: Float read GetCLAVE1Value write SetCLAVE1Value;
property CLAVE2: Integer read GetCLAVE2Value write SetCLAVE2Value;
property CLAVE3: Integer read GetCLAVE3Value write SetCLAVE3Value;
property FECHA: DateTime read GetFECHAValue write SetFECHAValue;
property DIA: Integer read GetDIAValue write SetDIAValue;
property DIASEMANA: String read GetDIASEMANAValue write SetDIASEMANAValue;
property MES: String read GetMESValue write SetMESValue;
property ANO: Integer read GetANOValue write SetANOValue;
property CENTRO: String read GetCENTROValue write SetCENTROValue;
property VENDEDOR: String read GetVENDEDORValue write SetVENDEDORValue;
property NUMTALON: String read GetNUMTALONValue write SetNUMTALONValue;
property CODIGO: String read GetCODIGOValue write SetCODIGOValue;
property PRODUCTO: String read GetPRODUCTOValue write SetPRODUCTOValue;
property GRUPOPRODUCTO: String read GetGRUPOPRODUCTOValue write SetGRUPOPRODUCTOValue;
property TIPOPRODUCTO: String read GetTIPOPRODUCTOValue write SetTIPOPRODUCTOValue;
property COLECCION: String read GetCOLECCIONValue write SetCOLECCIONValue;
property COLOR: String read GetCOLORValue write SetCOLORValue;
property TALLA: String read GetTALLAValue write SetTALLAValue;
property TALLA38: Float read GetTALLA38Value write SetTALLA38Value;
property TALLA40: Float read GetTALLA40Value write SetTALLA40Value;
property TALLA42: Float read GetTALLA42Value write SetTALLA42Value;
property TALLA44: Float read GetTALLA44Value write SetTALLA44Value;
property TALLA46: Float read GetTALLA46Value write SetTALLA46Value;
property TALLA48: Float read GetTALLA48Value write SetTALLA48Value;
property VTATERMDEV: Float read GetVTATERMDEVValue write SetVTATERMDEVValue;
property VTAFINALRESC: Float read GetVTAFINALRESCValue write SetVTAFINALRESCValue;
property VENTAS: Float read GetVENTASValue write SetVENTASValue;
property DEVOLUCIONES: Float read GetDEVOLUCIONESValue write SetDEVOLUCIONESValue;
property TOTAL: Float read GetTOTALValue write SetTOTALValue;
property VALTERMDEV: Float read GetVALTERMDEVValue write SetVALTERMDEVValue;
property VALFINALRESC: Float read GetVALFINALRESCValue write SetVALFINALRESCValue;
property VALVEN: Float read GetVALVENValue write SetVALVENValue;
property VALDEV: Float read GetVALDEVValue write SetVALDEVValue;
property VALTOT: Float read GetVALTOTValue write SetVALTOTValue;
end;
{ TVentasTerminadasDataTableRules }
TVentasTerminadasDataTableRules = class(TDADataTableRules, IVentasTerminadas)
private
protected
{ Property getters and setters }
function GetNUMINFValue: String; virtual;
procedure SetNUMINFValue(const aValue: String); virtual;
function GetCLAVE1Value: Float; virtual;
procedure SetCLAVE1Value(const aValue: Float); virtual;
function GetCLAVE2Value: Integer; virtual;
procedure SetCLAVE2Value(const aValue: Integer); virtual;
function GetCLAVE3Value: Integer; virtual;
procedure SetCLAVE3Value(const aValue: Integer); virtual;
function GetFECHAValue: DateTime; virtual;
procedure SetFECHAValue(const aValue: DateTime); virtual;
function GetDIAValue: Integer; virtual;
procedure SetDIAValue(const aValue: Integer); virtual;
function GetDIASEMANAValue: String; virtual;
procedure SetDIASEMANAValue(const aValue: String); virtual;
function GetMESValue: String; virtual;
procedure SetMESValue(const aValue: String); virtual;
function GetANOValue: Integer; virtual;
procedure SetANOValue(const aValue: Integer); virtual;
function GetCENTROValue: String; virtual;
procedure SetCENTROValue(const aValue: String); virtual;
function GetVENDEDORValue: String; virtual;
procedure SetVENDEDORValue(const aValue: String); virtual;
function GetNUMTALONValue: String; virtual;
procedure SetNUMTALONValue(const aValue: String); virtual;
function GetCODIGOValue: String; virtual;
procedure SetCODIGOValue(const aValue: String); virtual;
function GetPRODUCTOValue: String; virtual;
procedure SetPRODUCTOValue(const aValue: String); virtual;
function GetGRUPOPRODUCTOValue: String; virtual;
procedure SetGRUPOPRODUCTOValue(const aValue: String); virtual;
function GetTIPOPRODUCTOValue: String; virtual;
procedure SetTIPOPRODUCTOValue(const aValue: String); virtual;
function GetCOLECCIONValue: String; virtual;
procedure SetCOLECCIONValue(const aValue: String); virtual;
function GetCOLORValue: String; virtual;
procedure SetCOLORValue(const aValue: String); virtual;
function GetTALLAValue: String; virtual;
procedure SetTALLAValue(const aValue: String); virtual;
function GetTALLA38Value: Float; virtual;
procedure SetTALLA38Value(const aValue: Float); virtual;
function GetTALLA40Value: Float; virtual;
procedure SetTALLA40Value(const aValue: Float); virtual;
function GetTALLA42Value: Float; virtual;
procedure SetTALLA42Value(const aValue: Float); virtual;
function GetTALLA44Value: Float; virtual;
procedure SetTALLA44Value(const aValue: Float); virtual;
function GetTALLA46Value: Float; virtual;
procedure SetTALLA46Value(const aValue: Float); virtual;
function GetTALLA48Value: Float; virtual;
procedure SetTALLA48Value(const aValue: Float); virtual;
function GetVTATERMDEVValue: Float; virtual;
procedure SetVTATERMDEVValue(const aValue: Float); virtual;
function GetVTAFINALRESCValue: Float; virtual;
procedure SetVTAFINALRESCValue(const aValue: Float); virtual;
function GetVENTASValue: Float; virtual;
procedure SetVENTASValue(const aValue: Float); virtual;
function GetDEVOLUCIONESValue: Float; virtual;
procedure SetDEVOLUCIONESValue(const aValue: Float); virtual;
function GetTOTALValue: Float; virtual;
procedure SetTOTALValue(const aValue: Float); virtual;
function GetVALTERMDEVValue: Float; virtual;
procedure SetVALTERMDEVValue(const aValue: Float); virtual;
function GetVALFINALRESCValue: Float; virtual;
procedure SetVALFINALRESCValue(const aValue: Float); virtual;
function GetVALVENValue: Float; virtual;
procedure SetVALVENValue(const aValue: Float); virtual;
function GetVALDEVValue: Float; virtual;
procedure SetVALDEVValue(const aValue: Float); virtual;
function GetVALTOTValue: Float; virtual;
procedure SetVALTOTValue(const aValue: Float); virtual;
{ Properties }
property NUMINF: String read GetNUMINFValue write SetNUMINFValue;
property CLAVE1: Float read GetCLAVE1Value write SetCLAVE1Value;
property CLAVE2: Integer read GetCLAVE2Value write SetCLAVE2Value;
property CLAVE3: Integer read GetCLAVE3Value write SetCLAVE3Value;
property FECHA: DateTime read GetFECHAValue write SetFECHAValue;
property DIA: Integer read GetDIAValue write SetDIAValue;
property DIASEMANA: String read GetDIASEMANAValue write SetDIASEMANAValue;
property MES: String read GetMESValue write SetMESValue;
property ANO: Integer read GetANOValue write SetANOValue;
property CENTRO: String read GetCENTROValue write SetCENTROValue;
property VENDEDOR: String read GetVENDEDORValue write SetVENDEDORValue;
property NUMTALON: String read GetNUMTALONValue write SetNUMTALONValue;
property CODIGO: String read GetCODIGOValue write SetCODIGOValue;
property PRODUCTO: String read GetPRODUCTOValue write SetPRODUCTOValue;
property GRUPOPRODUCTO: String read GetGRUPOPRODUCTOValue write SetGRUPOPRODUCTOValue;
property TIPOPRODUCTO: String read GetTIPOPRODUCTOValue write SetTIPOPRODUCTOValue;
property COLECCION: String read GetCOLECCIONValue write SetCOLECCIONValue;
property COLOR: String read GetCOLORValue write SetCOLORValue;
property TALLA: String read GetTALLAValue write SetTALLAValue;
property TALLA38: Float read GetTALLA38Value write SetTALLA38Value;
property TALLA40: Float read GetTALLA40Value write SetTALLA40Value;
property TALLA42: Float read GetTALLA42Value write SetTALLA42Value;
property TALLA44: Float read GetTALLA44Value write SetTALLA44Value;
property TALLA46: Float read GetTALLA46Value write SetTALLA46Value;
property TALLA48: Float read GetTALLA48Value write SetTALLA48Value;
property VTATERMDEV: Float read GetVTATERMDEVValue write SetVTATERMDEVValue;
property VTAFINALRESC: Float read GetVTAFINALRESCValue write SetVTAFINALRESCValue;
property VENTAS: Float read GetVENTASValue write SetVENTASValue;
property DEVOLUCIONES: Float read GetDEVOLUCIONESValue write SetDEVOLUCIONESValue;
property TOTAL: Float read GetTOTALValue write SetTOTALValue;
property VALTERMDEV: Float read GetVALTERMDEVValue write SetVALTERMDEVValue;
property VALFINALRESC: Float read GetVALFINALRESCValue write SetVALFINALRESCValue;
property VALVEN: Float read GetVALVENValue write SetVALVENValue;
property VALDEV: Float read GetVALDEVValue write SetVALDEVValue;
property VALTOT: Float read GetVALTOTValue write SetVALTOTValue;
public
constructor Create(aDataTable: TDADataTable); override;
destructor Destroy; override;
end;
implementation
uses Variants;
{ TVentasTerminadasCrossTabDataTableRules }
constructor TVentasTerminadasCrossTabDataTableRules.Create(aDataTable: TDADataTable);
begin
inherited;
end;
destructor TVentasTerminadasCrossTabDataTableRules.Destroy;
begin
inherited;
end;
{ TVentasTerminadasDataTableRules }
constructor TVentasTerminadasDataTableRules.Create(aDataTable: TDADataTable);
begin
inherited;
end;
destructor TVentasTerminadasDataTableRules.Destroy;
begin
inherited;
end;
function TVentasTerminadasDataTableRules.GetNUMINFValue: String;
begin
result := DataTable.Fields[idx_VentasTerminadasNUMINF].AsString;
end;
procedure TVentasTerminadasDataTableRules.SetNUMINFValue(const aValue: String);
begin
DataTable.Fields[idx_VentasTerminadasNUMINF].AsString := aValue;
end;
function TVentasTerminadasDataTableRules.GetCLAVE1Value: Float;
begin
result := DataTable.Fields[idx_VentasTerminadasCLAVE1].AsFloat;
end;
procedure TVentasTerminadasDataTableRules.SetCLAVE1Value(const aValue: Float);
begin
DataTable.Fields[idx_VentasTerminadasCLAVE1].AsFloat := aValue;
end;
function TVentasTerminadasDataTableRules.GetCLAVE2Value: Integer;
begin
result := DataTable.Fields[idx_VentasTerminadasCLAVE2].AsInteger;
end;
procedure TVentasTerminadasDataTableRules.SetCLAVE2Value(const aValue: Integer);
begin
DataTable.Fields[idx_VentasTerminadasCLAVE2].AsInteger := aValue;
end;
function TVentasTerminadasDataTableRules.GetCLAVE3Value: Integer;
begin
result := DataTable.Fields[idx_VentasTerminadasCLAVE3].AsInteger;
end;
procedure TVentasTerminadasDataTableRules.SetCLAVE3Value(const aValue: Integer);
begin
DataTable.Fields[idx_VentasTerminadasCLAVE3].AsInteger := aValue;
end;
function TVentasTerminadasDataTableRules.GetFECHAValue: DateTime;
begin
result := DataTable.Fields[idx_VentasTerminadasFECHA].AsDateTime;
end;
procedure TVentasTerminadasDataTableRules.SetFECHAValue(const aValue: DateTime);
begin
DataTable.Fields[idx_VentasTerminadasFECHA].AsDateTime := aValue;
end;
function TVentasTerminadasDataTableRules.GetDIAValue: Integer;
begin
result := DataTable.Fields[idx_VentasTerminadasDIA].AsInteger;
end;
procedure TVentasTerminadasDataTableRules.SetDIAValue(const aValue: Integer);
begin
DataTable.Fields[idx_VentasTerminadasDIA].AsInteger := aValue;
end;
function TVentasTerminadasDataTableRules.GetDIASEMANAValue: String;
begin
result := DataTable.Fields[idx_VentasTerminadasDIASEMANA].AsString;
end;
procedure TVentasTerminadasDataTableRules.SetDIASEMANAValue(const aValue: String);
begin
DataTable.Fields[idx_VentasTerminadasDIASEMANA].AsString := aValue;
end;
function TVentasTerminadasDataTableRules.GetMESValue: String;
begin
result := DataTable.Fields[idx_VentasTerminadasMES].AsString;
end;
procedure TVentasTerminadasDataTableRules.SetMESValue(const aValue: String);
begin
DataTable.Fields[idx_VentasTerminadasMES].AsString := aValue;
end;
function TVentasTerminadasDataTableRules.GetANOValue: Integer;
begin
result := DataTable.Fields[idx_VentasTerminadasANO].AsInteger;
end;
procedure TVentasTerminadasDataTableRules.SetANOValue(const aValue: Integer);
begin
DataTable.Fields[idx_VentasTerminadasANO].AsInteger := aValue;
end;
function TVentasTerminadasDataTableRules.GetCENTROValue: String;
begin
result := DataTable.Fields[idx_VentasTerminadasCENTRO].AsString;
end;
procedure TVentasTerminadasDataTableRules.SetCENTROValue(const aValue: String);
begin
DataTable.Fields[idx_VentasTerminadasCENTRO].AsString := aValue;
end;
function TVentasTerminadasDataTableRules.GetVENDEDORValue: String;
begin
result := DataTable.Fields[idx_VentasTerminadasVENDEDOR].AsString;
end;
procedure TVentasTerminadasDataTableRules.SetVENDEDORValue(const aValue: String);
begin
DataTable.Fields[idx_VentasTerminadasVENDEDOR].AsString := aValue;
end;
function TVentasTerminadasDataTableRules.GetNUMTALONValue: String;
begin
result := DataTable.Fields[idx_VentasTerminadasNUMTALON].AsString;
end;
procedure TVentasTerminadasDataTableRules.SetNUMTALONValue(const aValue: String);
begin
DataTable.Fields[idx_VentasTerminadasNUMTALON].AsString := aValue;
end;
function TVentasTerminadasDataTableRules.GetCODIGOValue: String;
begin
result := DataTable.Fields[idx_VentasTerminadasCODIGO].AsString;
end;
procedure TVentasTerminadasDataTableRules.SetCODIGOValue(const aValue: String);
begin
DataTable.Fields[idx_VentasTerminadasCODIGO].AsString := aValue;
end;
function TVentasTerminadasDataTableRules.GetPRODUCTOValue: String;
begin
result := DataTable.Fields[idx_VentasTerminadasPRODUCTO].AsString;
end;
procedure TVentasTerminadasDataTableRules.SetPRODUCTOValue(const aValue: String);
begin
DataTable.Fields[idx_VentasTerminadasPRODUCTO].AsString := aValue;
end;
function TVentasTerminadasDataTableRules.GetGRUPOPRODUCTOValue: String;
begin
result := DataTable.Fields[idx_VentasTerminadasGRUPOPRODUCTO].AsString;
end;
procedure TVentasTerminadasDataTableRules.SetGRUPOPRODUCTOValue(const aValue: String);
begin
DataTable.Fields[idx_VentasTerminadasGRUPOPRODUCTO].AsString := aValue;
end;
function TVentasTerminadasDataTableRules.GetTIPOPRODUCTOValue: String;
begin
result := DataTable.Fields[idx_VentasTerminadasTIPOPRODUCTO].AsString;
end;
procedure TVentasTerminadasDataTableRules.SetTIPOPRODUCTOValue(const aValue: String);
begin
DataTable.Fields[idx_VentasTerminadasTIPOPRODUCTO].AsString := aValue;
end;
function TVentasTerminadasDataTableRules.GetCOLECCIONValue: String;
begin
result := DataTable.Fields[idx_VentasTerminadasCOLECCION].AsString;
end;
procedure TVentasTerminadasDataTableRules.SetCOLECCIONValue(const aValue: String);
begin
DataTable.Fields[idx_VentasTerminadasCOLECCION].AsString := aValue;
end;
function TVentasTerminadasDataTableRules.GetCOLORValue: String;
begin
result := DataTable.Fields[idx_VentasTerminadasCOLOR].AsString;
end;
procedure TVentasTerminadasDataTableRules.SetCOLORValue(const aValue: String);
begin
DataTable.Fields[idx_VentasTerminadasCOLOR].AsString := aValue;
end;
function TVentasTerminadasDataTableRules.GetTALLAValue: String;
begin
result := DataTable.Fields[idx_VentasTerminadasTALLA].AsString;
end;
procedure TVentasTerminadasDataTableRules.SetTALLAValue(const aValue: String);
begin
DataTable.Fields[idx_VentasTerminadasTALLA].AsString := aValue;
end;
function TVentasTerminadasDataTableRules.GetTALLA38Value: Float;
begin
result := DataTable.Fields[idx_VentasTerminadasTALLA38].AsFloat;
end;
procedure TVentasTerminadasDataTableRules.SetTALLA38Value(const aValue: Float);
begin
DataTable.Fields[idx_VentasTerminadasTALLA38].AsFloat := aValue;
end;
function TVentasTerminadasDataTableRules.GetTALLA40Value: Float;
begin
result := DataTable.Fields[idx_VentasTerminadasTALLA40].AsFloat;
end;
procedure TVentasTerminadasDataTableRules.SetTALLA40Value(const aValue: Float);
begin
DataTable.Fields[idx_VentasTerminadasTALLA40].AsFloat := aValue;
end;
function TVentasTerminadasDataTableRules.GetTALLA42Value: Float;
begin
result := DataTable.Fields[idx_VentasTerminadasTALLA42].AsFloat;
end;
procedure TVentasTerminadasDataTableRules.SetTALLA42Value(const aValue: Float);
begin
DataTable.Fields[idx_VentasTerminadasTALLA42].AsFloat := aValue;
end;
function TVentasTerminadasDataTableRules.GetTALLA44Value: Float;
begin
result := DataTable.Fields[idx_VentasTerminadasTALLA44].AsFloat;
end;
procedure TVentasTerminadasDataTableRules.SetTALLA44Value(const aValue: Float);
begin
DataTable.Fields[idx_VentasTerminadasTALLA44].AsFloat := aValue;
end;
function TVentasTerminadasDataTableRules.GetTALLA46Value: Float;
begin
result := DataTable.Fields[idx_VentasTerminadasTALLA46].AsFloat;
end;
procedure TVentasTerminadasDataTableRules.SetTALLA46Value(const aValue: Float);
begin
DataTable.Fields[idx_VentasTerminadasTALLA46].AsFloat := aValue;
end;
function TVentasTerminadasDataTableRules.GetTALLA48Value: Float;
begin
result := DataTable.Fields[idx_VentasTerminadasTALLA48].AsFloat;
end;
procedure TVentasTerminadasDataTableRules.SetTALLA48Value(const aValue: Float);
begin
DataTable.Fields[idx_VentasTerminadasTALLA48].AsFloat := aValue;
end;
function TVentasTerminadasDataTableRules.GetVTATERMDEVValue: Float;
begin
result := DataTable.Fields[idx_VentasTerminadasVTATERMDEV].AsFloat;
end;
procedure TVentasTerminadasDataTableRules.SetVTATERMDEVValue(const aValue: Float);
begin
DataTable.Fields[idx_VentasTerminadasVTATERMDEV].AsFloat := aValue;
end;
function TVentasTerminadasDataTableRules.GetVTAFINALRESCValue: Float;
begin
result := DataTable.Fields[idx_VentasTerminadasVTAFINALRESC].AsFloat;
end;
procedure TVentasTerminadasDataTableRules.SetVTAFINALRESCValue(const aValue: Float);
begin
DataTable.Fields[idx_VentasTerminadasVTAFINALRESC].AsFloat := aValue;
end;
function TVentasTerminadasDataTableRules.GetVENTASValue: Float;
begin
result := DataTable.Fields[idx_VentasTerminadasVENTAS].AsFloat;
end;
procedure TVentasTerminadasDataTableRules.SetVENTASValue(const aValue: Float);
begin
DataTable.Fields[idx_VentasTerminadasVENTAS].AsFloat := aValue;
end;
function TVentasTerminadasDataTableRules.GetDEVOLUCIONESValue: Float;
begin
result := DataTable.Fields[idx_VentasTerminadasDEVOLUCIONES].AsFloat;
end;
procedure TVentasTerminadasDataTableRules.SetDEVOLUCIONESValue(const aValue: Float);
begin
DataTable.Fields[idx_VentasTerminadasDEVOLUCIONES].AsFloat := aValue;
end;
function TVentasTerminadasDataTableRules.GetTOTALValue: Float;
begin
result := DataTable.Fields[idx_VentasTerminadasTOTAL].AsFloat;
end;
procedure TVentasTerminadasDataTableRules.SetTOTALValue(const aValue: Float);
begin
DataTable.Fields[idx_VentasTerminadasTOTAL].AsFloat := aValue;
end;
function TVentasTerminadasDataTableRules.GetVALTERMDEVValue: Float;
begin
result := DataTable.Fields[idx_VentasTerminadasVALTERMDEV].AsFloat;
end;
procedure TVentasTerminadasDataTableRules.SetVALTERMDEVValue(const aValue: Float);
begin
DataTable.Fields[idx_VentasTerminadasVALTERMDEV].AsFloat := aValue;
end;
function TVentasTerminadasDataTableRules.GetVALFINALRESCValue: Float;
begin
result := DataTable.Fields[idx_VentasTerminadasVALFINALRESC].AsFloat;
end;
procedure TVentasTerminadasDataTableRules.SetVALFINALRESCValue(const aValue: Float);
begin
DataTable.Fields[idx_VentasTerminadasVALFINALRESC].AsFloat := aValue;
end;
function TVentasTerminadasDataTableRules.GetVALVENValue: Float;
begin
result := DataTable.Fields[idx_VentasTerminadasVALVEN].AsFloat;
end;
procedure TVentasTerminadasDataTableRules.SetVALVENValue(const aValue: Float);
begin
DataTable.Fields[idx_VentasTerminadasVALVEN].AsFloat := aValue;
end;
function TVentasTerminadasDataTableRules.GetVALDEVValue: Float;
begin
result := DataTable.Fields[idx_VentasTerminadasVALDEV].AsFloat;
end;
procedure TVentasTerminadasDataTableRules.SetVALDEVValue(const aValue: Float);
begin
DataTable.Fields[idx_VentasTerminadasVALDEV].AsFloat := aValue;
end;
function TVentasTerminadasDataTableRules.GetVALTOTValue: Float;
begin
result := DataTable.Fields[idx_VentasTerminadasVALTOT].AsFloat;
end;
procedure TVentasTerminadasDataTableRules.SetVALTOTValue(const aValue: Float);
begin
DataTable.Fields[idx_VentasTerminadasVALTOT].AsFloat := aValue;
end;
initialization
RegisterDataTableRules(RID_VentasTerminadasCrossTab, TVentasTerminadasCrossTabDataTableRules);
RegisterDataTableRules(RID_VentasTerminadas, TVentasTerminadasDataTableRules);
end.

View File

@ -1,863 +0,0 @@
unit schVentasTerminadasServer_Intf;
interface
uses
Classes, DB, SysUtils, uROClasses, uDADataTable, uDABusinessProcessor, schVentasTerminadasClient_Intf;
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_VentasTerminadasCrossTabDelta = '{D69FBA64-6F9E-4850-A61A-B1D060E04006}';
RID_VentasTerminadasDelta = '{B705B6A2-C1E0-4936-830A-D1375D7F9F49}';
type
{ IVentasTerminadasCrossTabDelta }
IVentasTerminadasCrossTabDelta = interface(IVentasTerminadasCrossTab)
['{D69FBA64-6F9E-4850-A61A-B1D060E04006}']
{ Property getters and setters }
{ Properties }
end;
{ TVentasTerminadasCrossTabBusinessProcessorRules }
TVentasTerminadasCrossTabBusinessProcessorRules = class(TDABusinessProcessorRules, IVentasTerminadasCrossTab, IVentasTerminadasCrossTabDelta)
private
protected
{ Property getters and setters }
{ Properties }
public
constructor Create(aBusinessProcessor: TDABusinessProcessor); override;
destructor Destroy; override;
end;
{ IVentasTerminadasDelta }
IVentasTerminadasDelta = interface(IVentasTerminadas)
['{B705B6A2-C1E0-4936-830A-D1375D7F9F49}']
{ Property getters and setters }
function GetOldNUMINFValue : String;
function GetOldCLAVE1Value : Float;
function GetOldCLAVE2Value : Integer;
function GetOldCLAVE3Value : Integer;
function GetOldFECHAValue : DateTime;
function GetOldDIAValue : Integer;
function GetOldDIASEMANAValue : String;
function GetOldMESValue : String;
function GetOldANOValue : Integer;
function GetOldCENTROValue : String;
function GetOldVENDEDORValue : String;
function GetOldNUMTALONValue : String;
function GetOldCODIGOValue : String;
function GetOldPRODUCTOValue : String;
function GetOldGRUPOPRODUCTOValue : String;
function GetOldTIPOPRODUCTOValue : String;
function GetOldCOLECCIONValue : String;
function GetOldCOLORValue : String;
function GetOldTALLAValue : String;
function GetOldTALLA38Value : Float;
function GetOldTALLA40Value : Float;
function GetOldTALLA42Value : Float;
function GetOldTALLA44Value : Float;
function GetOldTALLA46Value : Float;
function GetOldTALLA48Value : Float;
function GetOldVTATERMDEVValue : Float;
function GetOldVTAFINALRESCValue : Float;
function GetOldVENTASValue : Float;
function GetOldDEVOLUCIONESValue : Float;
function GetOldTOTALValue : Float;
function GetOldVALTERMDEVValue : Float;
function GetOldVALFINALRESCValue : Float;
function GetOldVALVENValue : Float;
function GetOldVALDEVValue : Float;
function GetOldVALTOTValue : Float;
{ Properties }
property OldNUMINF : String read GetOldNUMINFValue;
property OldCLAVE1 : Float read GetOldCLAVE1Value;
property OldCLAVE2 : Integer read GetOldCLAVE2Value;
property OldCLAVE3 : Integer read GetOldCLAVE3Value;
property OldFECHA : DateTime read GetOldFECHAValue;
property OldDIA : Integer read GetOldDIAValue;
property OldDIASEMANA : String read GetOldDIASEMANAValue;
property OldMES : String read GetOldMESValue;
property OldANO : Integer read GetOldANOValue;
property OldCENTRO : String read GetOldCENTROValue;
property OldVENDEDOR : String read GetOldVENDEDORValue;
property OldNUMTALON : String read GetOldNUMTALONValue;
property OldCODIGO : String read GetOldCODIGOValue;
property OldPRODUCTO : String read GetOldPRODUCTOValue;
property OldGRUPOPRODUCTO : String read GetOldGRUPOPRODUCTOValue;
property OldTIPOPRODUCTO : String read GetOldTIPOPRODUCTOValue;
property OldCOLECCION : String read GetOldCOLECCIONValue;
property OldCOLOR : String read GetOldCOLORValue;
property OldTALLA : String read GetOldTALLAValue;
property OldTALLA38 : Float read GetOldTALLA38Value;
property OldTALLA40 : Float read GetOldTALLA40Value;
property OldTALLA42 : Float read GetOldTALLA42Value;
property OldTALLA44 : Float read GetOldTALLA44Value;
property OldTALLA46 : Float read GetOldTALLA46Value;
property OldTALLA48 : Float read GetOldTALLA48Value;
property OldVTATERMDEV : Float read GetOldVTATERMDEVValue;
property OldVTAFINALRESC : Float read GetOldVTAFINALRESCValue;
property OldVENTAS : Float read GetOldVENTASValue;
property OldDEVOLUCIONES : Float read GetOldDEVOLUCIONESValue;
property OldTOTAL : Float read GetOldTOTALValue;
property OldVALTERMDEV : Float read GetOldVALTERMDEVValue;
property OldVALFINALRESC : Float read GetOldVALFINALRESCValue;
property OldVALVEN : Float read GetOldVALVENValue;
property OldVALDEV : Float read GetOldVALDEVValue;
property OldVALTOT : Float read GetOldVALTOTValue;
end;
{ TVentasTerminadasBusinessProcessorRules }
TVentasTerminadasBusinessProcessorRules = class(TDABusinessProcessorRules, IVentasTerminadas, IVentasTerminadasDelta)
private
protected
{ Property getters and setters }
function GetNUMINFValue: String; virtual;
function GetOldNUMINFValue: String; virtual;
procedure SetNUMINFValue(const aValue: String); virtual;
function GetCLAVE1Value: Float; virtual;
function GetOldCLAVE1Value: Float; virtual;
procedure SetCLAVE1Value(const aValue: Float); virtual;
function GetCLAVE2Value: Integer; virtual;
function GetOldCLAVE2Value: Integer; virtual;
procedure SetCLAVE2Value(const aValue: Integer); virtual;
function GetCLAVE3Value: Integer; virtual;
function GetOldCLAVE3Value: Integer; virtual;
procedure SetCLAVE3Value(const aValue: Integer); virtual;
function GetFECHAValue: DateTime; virtual;
function GetOldFECHAValue: DateTime; virtual;
procedure SetFECHAValue(const aValue: DateTime); virtual;
function GetDIAValue: Integer; virtual;
function GetOldDIAValue: Integer; virtual;
procedure SetDIAValue(const aValue: Integer); virtual;
function GetDIASEMANAValue: String; virtual;
function GetOldDIASEMANAValue: String; virtual;
procedure SetDIASEMANAValue(const aValue: String); virtual;
function GetMESValue: String; virtual;
function GetOldMESValue: String; virtual;
procedure SetMESValue(const aValue: String); virtual;
function GetANOValue: Integer; virtual;
function GetOldANOValue: Integer; virtual;
procedure SetANOValue(const aValue: Integer); virtual;
function GetCENTROValue: String; virtual;
function GetOldCENTROValue: String; virtual;
procedure SetCENTROValue(const aValue: String); virtual;
function GetVENDEDORValue: String; virtual;
function GetOldVENDEDORValue: String; virtual;
procedure SetVENDEDORValue(const aValue: String); virtual;
function GetNUMTALONValue: String; virtual;
function GetOldNUMTALONValue: String; virtual;
procedure SetNUMTALONValue(const aValue: String); virtual;
function GetCODIGOValue: String; virtual;
function GetOldCODIGOValue: String; virtual;
procedure SetCODIGOValue(const aValue: String); virtual;
function GetPRODUCTOValue: String; virtual;
function GetOldPRODUCTOValue: String; virtual;
procedure SetPRODUCTOValue(const aValue: String); virtual;
function GetGRUPOPRODUCTOValue: String; virtual;
function GetOldGRUPOPRODUCTOValue: String; virtual;
procedure SetGRUPOPRODUCTOValue(const aValue: String); virtual;
function GetTIPOPRODUCTOValue: String; virtual;
function GetOldTIPOPRODUCTOValue: String; virtual;
procedure SetTIPOPRODUCTOValue(const aValue: String); virtual;
function GetCOLECCIONValue: String; virtual;
function GetOldCOLECCIONValue: String; virtual;
procedure SetCOLECCIONValue(const aValue: String); virtual;
function GetCOLORValue: String; virtual;
function GetOldCOLORValue: String; virtual;
procedure SetCOLORValue(const aValue: String); virtual;
function GetTALLAValue: String; virtual;
function GetOldTALLAValue: String; virtual;
procedure SetTALLAValue(const aValue: String); virtual;
function GetTALLA38Value: Float; virtual;
function GetOldTALLA38Value: Float; virtual;
procedure SetTALLA38Value(const aValue: Float); virtual;
function GetTALLA40Value: Float; virtual;
function GetOldTALLA40Value: Float; virtual;
procedure SetTALLA40Value(const aValue: Float); virtual;
function GetTALLA42Value: Float; virtual;
function GetOldTALLA42Value: Float; virtual;
procedure SetTALLA42Value(const aValue: Float); virtual;
function GetTALLA44Value: Float; virtual;
function GetOldTALLA44Value: Float; virtual;
procedure SetTALLA44Value(const aValue: Float); virtual;
function GetTALLA46Value: Float; virtual;
function GetOldTALLA46Value: Float; virtual;
procedure SetTALLA46Value(const aValue: Float); virtual;
function GetTALLA48Value: Float; virtual;
function GetOldTALLA48Value: Float; virtual;
procedure SetTALLA48Value(const aValue: Float); virtual;
function GetVTATERMDEVValue: Float; virtual;
function GetOldVTATERMDEVValue: Float; virtual;
procedure SetVTATERMDEVValue(const aValue: Float); virtual;
function GetVTAFINALRESCValue: Float; virtual;
function GetOldVTAFINALRESCValue: Float; virtual;
procedure SetVTAFINALRESCValue(const aValue: Float); virtual;
function GetVENTASValue: Float; virtual;
function GetOldVENTASValue: Float; virtual;
procedure SetVENTASValue(const aValue: Float); virtual;
function GetDEVOLUCIONESValue: Float; virtual;
function GetOldDEVOLUCIONESValue: Float; virtual;
procedure SetDEVOLUCIONESValue(const aValue: Float); virtual;
function GetTOTALValue: Float; virtual;
function GetOldTOTALValue: Float; virtual;
procedure SetTOTALValue(const aValue: Float); virtual;
function GetVALTERMDEVValue: Float; virtual;
function GetOldVALTERMDEVValue: Float; virtual;
procedure SetVALTERMDEVValue(const aValue: Float); virtual;
function GetVALFINALRESCValue: Float; virtual;
function GetOldVALFINALRESCValue: Float; virtual;
procedure SetVALFINALRESCValue(const aValue: Float); virtual;
function GetVALVENValue: Float; virtual;
function GetOldVALVENValue: Float; virtual;
procedure SetVALVENValue(const aValue: Float); virtual;
function GetVALDEVValue: Float; virtual;
function GetOldVALDEVValue: Float; virtual;
procedure SetVALDEVValue(const aValue: Float); virtual;
function GetVALTOTValue: Float; virtual;
function GetOldVALTOTValue: Float; virtual;
procedure SetVALTOTValue(const aValue: Float); virtual;
{ Properties }
property NUMINF : String read GetNUMINFValue write SetNUMINFValue;
property OldNUMINF : String read GetOldNUMINFValue;
property CLAVE1 : Float read GetCLAVE1Value write SetCLAVE1Value;
property OldCLAVE1 : Float read GetOldCLAVE1Value;
property CLAVE2 : Integer read GetCLAVE2Value write SetCLAVE2Value;
property OldCLAVE2 : Integer read GetOldCLAVE2Value;
property CLAVE3 : Integer read GetCLAVE3Value write SetCLAVE3Value;
property OldCLAVE3 : Integer read GetOldCLAVE3Value;
property FECHA : DateTime read GetFECHAValue write SetFECHAValue;
property OldFECHA : DateTime read GetOldFECHAValue;
property DIA : Integer read GetDIAValue write SetDIAValue;
property OldDIA : Integer read GetOldDIAValue;
property DIASEMANA : String read GetDIASEMANAValue write SetDIASEMANAValue;
property OldDIASEMANA : String read GetOldDIASEMANAValue;
property MES : String read GetMESValue write SetMESValue;
property OldMES : String read GetOldMESValue;
property ANO : Integer read GetANOValue write SetANOValue;
property OldANO : Integer read GetOldANOValue;
property CENTRO : String read GetCENTROValue write SetCENTROValue;
property OldCENTRO : String read GetOldCENTROValue;
property VENDEDOR : String read GetVENDEDORValue write SetVENDEDORValue;
property OldVENDEDOR : String read GetOldVENDEDORValue;
property NUMTALON : String read GetNUMTALONValue write SetNUMTALONValue;
property OldNUMTALON : String read GetOldNUMTALONValue;
property CODIGO : String read GetCODIGOValue write SetCODIGOValue;
property OldCODIGO : String read GetOldCODIGOValue;
property PRODUCTO : String read GetPRODUCTOValue write SetPRODUCTOValue;
property OldPRODUCTO : String read GetOldPRODUCTOValue;
property GRUPOPRODUCTO : String read GetGRUPOPRODUCTOValue write SetGRUPOPRODUCTOValue;
property OldGRUPOPRODUCTO : String read GetOldGRUPOPRODUCTOValue;
property TIPOPRODUCTO : String read GetTIPOPRODUCTOValue write SetTIPOPRODUCTOValue;
property OldTIPOPRODUCTO : String read GetOldTIPOPRODUCTOValue;
property COLECCION : String read GetCOLECCIONValue write SetCOLECCIONValue;
property OldCOLECCION : String read GetOldCOLECCIONValue;
property COLOR : String read GetCOLORValue write SetCOLORValue;
property OldCOLOR : String read GetOldCOLORValue;
property TALLA : String read GetTALLAValue write SetTALLAValue;
property OldTALLA : String read GetOldTALLAValue;
property TALLA38 : Float read GetTALLA38Value write SetTALLA38Value;
property OldTALLA38 : Float read GetOldTALLA38Value;
property TALLA40 : Float read GetTALLA40Value write SetTALLA40Value;
property OldTALLA40 : Float read GetOldTALLA40Value;
property TALLA42 : Float read GetTALLA42Value write SetTALLA42Value;
property OldTALLA42 : Float read GetOldTALLA42Value;
property TALLA44 : Float read GetTALLA44Value write SetTALLA44Value;
property OldTALLA44 : Float read GetOldTALLA44Value;
property TALLA46 : Float read GetTALLA46Value write SetTALLA46Value;
property OldTALLA46 : Float read GetOldTALLA46Value;
property TALLA48 : Float read GetTALLA48Value write SetTALLA48Value;
property OldTALLA48 : Float read GetOldTALLA48Value;
property VTATERMDEV : Float read GetVTATERMDEVValue write SetVTATERMDEVValue;
property OldVTATERMDEV : Float read GetOldVTATERMDEVValue;
property VTAFINALRESC : Float read GetVTAFINALRESCValue write SetVTAFINALRESCValue;
property OldVTAFINALRESC : Float read GetOldVTAFINALRESCValue;
property VENTAS : Float read GetVENTASValue write SetVENTASValue;
property OldVENTAS : Float read GetOldVENTASValue;
property DEVOLUCIONES : Float read GetDEVOLUCIONESValue write SetDEVOLUCIONESValue;
property OldDEVOLUCIONES : Float read GetOldDEVOLUCIONESValue;
property TOTAL : Float read GetTOTALValue write SetTOTALValue;
property OldTOTAL : Float read GetOldTOTALValue;
property VALTERMDEV : Float read GetVALTERMDEVValue write SetVALTERMDEVValue;
property OldVALTERMDEV : Float read GetOldVALTERMDEVValue;
property VALFINALRESC : Float read GetVALFINALRESCValue write SetVALFINALRESCValue;
property OldVALFINALRESC : Float read GetOldVALFINALRESCValue;
property VALVEN : Float read GetVALVENValue write SetVALVENValue;
property OldVALVEN : Float read GetOldVALVENValue;
property VALDEV : Float read GetVALDEVValue write SetVALDEVValue;
property OldVALDEV : Float read GetOldVALDEVValue;
property VALTOT : Float read GetVALTOTValue write SetVALTOTValue;
property OldVALTOT : Float read GetOldVALTOTValue;
public
constructor Create(aBusinessProcessor: TDABusinessProcessor); override;
destructor Destroy; override;
end;
implementation
uses
Variants, uROBinaryHelpers;
{ TVentasTerminadasCrossTabBusinessProcessorRules }
constructor TVentasTerminadasCrossTabBusinessProcessorRules.Create(aBusinessProcessor: TDABusinessProcessor);
begin
inherited;
end;
destructor TVentasTerminadasCrossTabBusinessProcessorRules.Destroy;
begin
inherited;
end;
{ TVentasTerminadasBusinessProcessorRules }
constructor TVentasTerminadasBusinessProcessorRules.Create(aBusinessProcessor: TDABusinessProcessor);
begin
inherited;
end;
destructor TVentasTerminadasBusinessProcessorRules.Destroy;
begin
inherited;
end;
function TVentasTerminadasBusinessProcessorRules.GetNUMINFValue: String;
begin
result := BusinessProcessor.CurrentChange.NewValueByName[fld_VentasTerminadasNUMINF];
end;
function TVentasTerminadasBusinessProcessorRules.GetOldNUMINFValue: String;
begin
result := BusinessProcessor.CurrentChange.OldValueByName[fld_VentasTerminadasNUMINF];
end;
procedure TVentasTerminadasBusinessProcessorRules.SetNUMINFValue(const aValue: String);
begin
BusinessProcessor.CurrentChange.NewValueByName[fld_VentasTerminadasNUMINF] := aValue;
end;
function TVentasTerminadasBusinessProcessorRules.GetCLAVE1Value: Float;
begin
result := BusinessProcessor.CurrentChange.NewValueByName[fld_VentasTerminadasCLAVE1];
end;
function TVentasTerminadasBusinessProcessorRules.GetOldCLAVE1Value: Float;
begin
result := BusinessProcessor.CurrentChange.OldValueByName[fld_VentasTerminadasCLAVE1];
end;
procedure TVentasTerminadasBusinessProcessorRules.SetCLAVE1Value(const aValue: Float);
begin
BusinessProcessor.CurrentChange.NewValueByName[fld_VentasTerminadasCLAVE1] := aValue;
end;
function TVentasTerminadasBusinessProcessorRules.GetCLAVE2Value: Integer;
begin
result := BusinessProcessor.CurrentChange.NewValueByName[fld_VentasTerminadasCLAVE2];
end;
function TVentasTerminadasBusinessProcessorRules.GetOldCLAVE2Value: Integer;
begin
result := BusinessProcessor.CurrentChange.OldValueByName[fld_VentasTerminadasCLAVE2];
end;
procedure TVentasTerminadasBusinessProcessorRules.SetCLAVE2Value(const aValue: Integer);
begin
BusinessProcessor.CurrentChange.NewValueByName[fld_VentasTerminadasCLAVE2] := aValue;
end;
function TVentasTerminadasBusinessProcessorRules.GetCLAVE3Value: Integer;
begin
result := BusinessProcessor.CurrentChange.NewValueByName[fld_VentasTerminadasCLAVE3];
end;
function TVentasTerminadasBusinessProcessorRules.GetOldCLAVE3Value: Integer;
begin
result := BusinessProcessor.CurrentChange.OldValueByName[fld_VentasTerminadasCLAVE3];
end;
procedure TVentasTerminadasBusinessProcessorRules.SetCLAVE3Value(const aValue: Integer);
begin
BusinessProcessor.CurrentChange.NewValueByName[fld_VentasTerminadasCLAVE3] := aValue;
end;
function TVentasTerminadasBusinessProcessorRules.GetFECHAValue: DateTime;
begin
result := BusinessProcessor.CurrentChange.NewValueByName[fld_VentasTerminadasFECHA];
end;
function TVentasTerminadasBusinessProcessorRules.GetOldFECHAValue: DateTime;
begin
result := BusinessProcessor.CurrentChange.OldValueByName[fld_VentasTerminadasFECHA];
end;
procedure TVentasTerminadasBusinessProcessorRules.SetFECHAValue(const aValue: DateTime);
begin
BusinessProcessor.CurrentChange.NewValueByName[fld_VentasTerminadasFECHA] := aValue;
end;
function TVentasTerminadasBusinessProcessorRules.GetDIAValue: Integer;
begin
result := BusinessProcessor.CurrentChange.NewValueByName[fld_VentasTerminadasDIA];
end;
function TVentasTerminadasBusinessProcessorRules.GetOldDIAValue: Integer;
begin
result := BusinessProcessor.CurrentChange.OldValueByName[fld_VentasTerminadasDIA];
end;
procedure TVentasTerminadasBusinessProcessorRules.SetDIAValue(const aValue: Integer);
begin
BusinessProcessor.CurrentChange.NewValueByName[fld_VentasTerminadasDIA] := aValue;
end;
function TVentasTerminadasBusinessProcessorRules.GetDIASEMANAValue: String;
begin
result := BusinessProcessor.CurrentChange.NewValueByName[fld_VentasTerminadasDIASEMANA];
end;
function TVentasTerminadasBusinessProcessorRules.GetOldDIASEMANAValue: String;
begin
result := BusinessProcessor.CurrentChange.OldValueByName[fld_VentasTerminadasDIASEMANA];
end;
procedure TVentasTerminadasBusinessProcessorRules.SetDIASEMANAValue(const aValue: String);
begin
BusinessProcessor.CurrentChange.NewValueByName[fld_VentasTerminadasDIASEMANA] := aValue;
end;
function TVentasTerminadasBusinessProcessorRules.GetMESValue: String;
begin
result := BusinessProcessor.CurrentChange.NewValueByName[fld_VentasTerminadasMES];
end;
function TVentasTerminadasBusinessProcessorRules.GetOldMESValue: String;
begin
result := BusinessProcessor.CurrentChange.OldValueByName[fld_VentasTerminadasMES];
end;
procedure TVentasTerminadasBusinessProcessorRules.SetMESValue(const aValue: String);
begin
BusinessProcessor.CurrentChange.NewValueByName[fld_VentasTerminadasMES] := aValue;
end;
function TVentasTerminadasBusinessProcessorRules.GetANOValue: Integer;
begin
result := BusinessProcessor.CurrentChange.NewValueByName[fld_VentasTerminadasANO];
end;
function TVentasTerminadasBusinessProcessorRules.GetOldANOValue: Integer;
begin
result := BusinessProcessor.CurrentChange.OldValueByName[fld_VentasTerminadasANO];
end;
procedure TVentasTerminadasBusinessProcessorRules.SetANOValue(const aValue: Integer);
begin
BusinessProcessor.CurrentChange.NewValueByName[fld_VentasTerminadasANO] := aValue;
end;
function TVentasTerminadasBusinessProcessorRules.GetCENTROValue: String;
begin
result := BusinessProcessor.CurrentChange.NewValueByName[fld_VentasTerminadasCENTRO];
end;
function TVentasTerminadasBusinessProcessorRules.GetOldCENTROValue: String;
begin
result := BusinessProcessor.CurrentChange.OldValueByName[fld_VentasTerminadasCENTRO];
end;
procedure TVentasTerminadasBusinessProcessorRules.SetCENTROValue(const aValue: String);
begin
BusinessProcessor.CurrentChange.NewValueByName[fld_VentasTerminadasCENTRO] := aValue;
end;
function TVentasTerminadasBusinessProcessorRules.GetVENDEDORValue: String;
begin
result := BusinessProcessor.CurrentChange.NewValueByName[fld_VentasTerminadasVENDEDOR];
end;
function TVentasTerminadasBusinessProcessorRules.GetOldVENDEDORValue: String;
begin
result := BusinessProcessor.CurrentChange.OldValueByName[fld_VentasTerminadasVENDEDOR];
end;
procedure TVentasTerminadasBusinessProcessorRules.SetVENDEDORValue(const aValue: String);
begin
BusinessProcessor.CurrentChange.NewValueByName[fld_VentasTerminadasVENDEDOR] := aValue;
end;
function TVentasTerminadasBusinessProcessorRules.GetNUMTALONValue: String;
begin
result := BusinessProcessor.CurrentChange.NewValueByName[fld_VentasTerminadasNUMTALON];
end;
function TVentasTerminadasBusinessProcessorRules.GetOldNUMTALONValue: String;
begin
result := BusinessProcessor.CurrentChange.OldValueByName[fld_VentasTerminadasNUMTALON];
end;
procedure TVentasTerminadasBusinessProcessorRules.SetNUMTALONValue(const aValue: String);
begin
BusinessProcessor.CurrentChange.NewValueByName[fld_VentasTerminadasNUMTALON] := aValue;
end;
function TVentasTerminadasBusinessProcessorRules.GetCODIGOValue: String;
begin
result := BusinessProcessor.CurrentChange.NewValueByName[fld_VentasTerminadasCODIGO];
end;
function TVentasTerminadasBusinessProcessorRules.GetOldCODIGOValue: String;
begin
result := BusinessProcessor.CurrentChange.OldValueByName[fld_VentasTerminadasCODIGO];
end;
procedure TVentasTerminadasBusinessProcessorRules.SetCODIGOValue(const aValue: String);
begin
BusinessProcessor.CurrentChange.NewValueByName[fld_VentasTerminadasCODIGO] := aValue;
end;
function TVentasTerminadasBusinessProcessorRules.GetPRODUCTOValue: String;
begin
result := BusinessProcessor.CurrentChange.NewValueByName[fld_VentasTerminadasPRODUCTO];
end;
function TVentasTerminadasBusinessProcessorRules.GetOldPRODUCTOValue: String;
begin
result := BusinessProcessor.CurrentChange.OldValueByName[fld_VentasTerminadasPRODUCTO];
end;
procedure TVentasTerminadasBusinessProcessorRules.SetPRODUCTOValue(const aValue: String);
begin
BusinessProcessor.CurrentChange.NewValueByName[fld_VentasTerminadasPRODUCTO] := aValue;
end;
function TVentasTerminadasBusinessProcessorRules.GetGRUPOPRODUCTOValue: String;
begin
result := BusinessProcessor.CurrentChange.NewValueByName[fld_VentasTerminadasGRUPOPRODUCTO];
end;
function TVentasTerminadasBusinessProcessorRules.GetOldGRUPOPRODUCTOValue: String;
begin
result := BusinessProcessor.CurrentChange.OldValueByName[fld_VentasTerminadasGRUPOPRODUCTO];
end;
procedure TVentasTerminadasBusinessProcessorRules.SetGRUPOPRODUCTOValue(const aValue: String);
begin
BusinessProcessor.CurrentChange.NewValueByName[fld_VentasTerminadasGRUPOPRODUCTO] := aValue;
end;
function TVentasTerminadasBusinessProcessorRules.GetTIPOPRODUCTOValue: String;
begin
result := BusinessProcessor.CurrentChange.NewValueByName[fld_VentasTerminadasTIPOPRODUCTO];
end;
function TVentasTerminadasBusinessProcessorRules.GetOldTIPOPRODUCTOValue: String;
begin
result := BusinessProcessor.CurrentChange.OldValueByName[fld_VentasTerminadasTIPOPRODUCTO];
end;
procedure TVentasTerminadasBusinessProcessorRules.SetTIPOPRODUCTOValue(const aValue: String);
begin
BusinessProcessor.CurrentChange.NewValueByName[fld_VentasTerminadasTIPOPRODUCTO] := aValue;
end;
function TVentasTerminadasBusinessProcessorRules.GetCOLECCIONValue: String;
begin
result := BusinessProcessor.CurrentChange.NewValueByName[fld_VentasTerminadasCOLECCION];
end;
function TVentasTerminadasBusinessProcessorRules.GetOldCOLECCIONValue: String;
begin
result := BusinessProcessor.CurrentChange.OldValueByName[fld_VentasTerminadasCOLECCION];
end;
procedure TVentasTerminadasBusinessProcessorRules.SetCOLECCIONValue(const aValue: String);
begin
BusinessProcessor.CurrentChange.NewValueByName[fld_VentasTerminadasCOLECCION] := aValue;
end;
function TVentasTerminadasBusinessProcessorRules.GetCOLORValue: String;
begin
result := BusinessProcessor.CurrentChange.NewValueByName[fld_VentasTerminadasCOLOR];
end;
function TVentasTerminadasBusinessProcessorRules.GetOldCOLORValue: String;
begin
result := BusinessProcessor.CurrentChange.OldValueByName[fld_VentasTerminadasCOLOR];
end;
procedure TVentasTerminadasBusinessProcessorRules.SetCOLORValue(const aValue: String);
begin
BusinessProcessor.CurrentChange.NewValueByName[fld_VentasTerminadasCOLOR] := aValue;
end;
function TVentasTerminadasBusinessProcessorRules.GetTALLAValue: String;
begin
result := BusinessProcessor.CurrentChange.NewValueByName[fld_VentasTerminadasTALLA];
end;
function TVentasTerminadasBusinessProcessorRules.GetOldTALLAValue: String;
begin
result := BusinessProcessor.CurrentChange.OldValueByName[fld_VentasTerminadasTALLA];
end;
procedure TVentasTerminadasBusinessProcessorRules.SetTALLAValue(const aValue: String);
begin
BusinessProcessor.CurrentChange.NewValueByName[fld_VentasTerminadasTALLA] := aValue;
end;
function TVentasTerminadasBusinessProcessorRules.GetTALLA38Value: Float;
begin
result := BusinessProcessor.CurrentChange.NewValueByName[fld_VentasTerminadasTALLA38];
end;
function TVentasTerminadasBusinessProcessorRules.GetOldTALLA38Value: Float;
begin
result := BusinessProcessor.CurrentChange.OldValueByName[fld_VentasTerminadasTALLA38];
end;
procedure TVentasTerminadasBusinessProcessorRules.SetTALLA38Value(const aValue: Float);
begin
BusinessProcessor.CurrentChange.NewValueByName[fld_VentasTerminadasTALLA38] := aValue;
end;
function TVentasTerminadasBusinessProcessorRules.GetTALLA40Value: Float;
begin
result := BusinessProcessor.CurrentChange.NewValueByName[fld_VentasTerminadasTALLA40];
end;
function TVentasTerminadasBusinessProcessorRules.GetOldTALLA40Value: Float;
begin
result := BusinessProcessor.CurrentChange.OldValueByName[fld_VentasTerminadasTALLA40];
end;
procedure TVentasTerminadasBusinessProcessorRules.SetTALLA40Value(const aValue: Float);
begin
BusinessProcessor.CurrentChange.NewValueByName[fld_VentasTerminadasTALLA40] := aValue;
end;
function TVentasTerminadasBusinessProcessorRules.GetTALLA42Value: Float;
begin
result := BusinessProcessor.CurrentChange.NewValueByName[fld_VentasTerminadasTALLA42];
end;
function TVentasTerminadasBusinessProcessorRules.GetOldTALLA42Value: Float;
begin
result := BusinessProcessor.CurrentChange.OldValueByName[fld_VentasTerminadasTALLA42];
end;
procedure TVentasTerminadasBusinessProcessorRules.SetTALLA42Value(const aValue: Float);
begin
BusinessProcessor.CurrentChange.NewValueByName[fld_VentasTerminadasTALLA42] := aValue;
end;
function TVentasTerminadasBusinessProcessorRules.GetTALLA44Value: Float;
begin
result := BusinessProcessor.CurrentChange.NewValueByName[fld_VentasTerminadasTALLA44];
end;
function TVentasTerminadasBusinessProcessorRules.GetOldTALLA44Value: Float;
begin
result := BusinessProcessor.CurrentChange.OldValueByName[fld_VentasTerminadasTALLA44];
end;
procedure TVentasTerminadasBusinessProcessorRules.SetTALLA44Value(const aValue: Float);
begin
BusinessProcessor.CurrentChange.NewValueByName[fld_VentasTerminadasTALLA44] := aValue;
end;
function TVentasTerminadasBusinessProcessorRules.GetTALLA46Value: Float;
begin
result := BusinessProcessor.CurrentChange.NewValueByName[fld_VentasTerminadasTALLA46];
end;
function TVentasTerminadasBusinessProcessorRules.GetOldTALLA46Value: Float;
begin
result := BusinessProcessor.CurrentChange.OldValueByName[fld_VentasTerminadasTALLA46];
end;
procedure TVentasTerminadasBusinessProcessorRules.SetTALLA46Value(const aValue: Float);
begin
BusinessProcessor.CurrentChange.NewValueByName[fld_VentasTerminadasTALLA46] := aValue;
end;
function TVentasTerminadasBusinessProcessorRules.GetTALLA48Value: Float;
begin
result := BusinessProcessor.CurrentChange.NewValueByName[fld_VentasTerminadasTALLA48];
end;
function TVentasTerminadasBusinessProcessorRules.GetOldTALLA48Value: Float;
begin
result := BusinessProcessor.CurrentChange.OldValueByName[fld_VentasTerminadasTALLA48];
end;
procedure TVentasTerminadasBusinessProcessorRules.SetTALLA48Value(const aValue: Float);
begin
BusinessProcessor.CurrentChange.NewValueByName[fld_VentasTerminadasTALLA48] := aValue;
end;
function TVentasTerminadasBusinessProcessorRules.GetVTATERMDEVValue: Float;
begin
result := BusinessProcessor.CurrentChange.NewValueByName[fld_VentasTerminadasVTATERMDEV];
end;
function TVentasTerminadasBusinessProcessorRules.GetOldVTATERMDEVValue: Float;
begin
result := BusinessProcessor.CurrentChange.OldValueByName[fld_VentasTerminadasVTATERMDEV];
end;
procedure TVentasTerminadasBusinessProcessorRules.SetVTATERMDEVValue(const aValue: Float);
begin
BusinessProcessor.CurrentChange.NewValueByName[fld_VentasTerminadasVTATERMDEV] := aValue;
end;
function TVentasTerminadasBusinessProcessorRules.GetVTAFINALRESCValue: Float;
begin
result := BusinessProcessor.CurrentChange.NewValueByName[fld_VentasTerminadasVTAFINALRESC];
end;
function TVentasTerminadasBusinessProcessorRules.GetOldVTAFINALRESCValue: Float;
begin
result := BusinessProcessor.CurrentChange.OldValueByName[fld_VentasTerminadasVTAFINALRESC];
end;
procedure TVentasTerminadasBusinessProcessorRules.SetVTAFINALRESCValue(const aValue: Float);
begin
BusinessProcessor.CurrentChange.NewValueByName[fld_VentasTerminadasVTAFINALRESC] := aValue;
end;
function TVentasTerminadasBusinessProcessorRules.GetVENTASValue: Float;
begin
result := BusinessProcessor.CurrentChange.NewValueByName[fld_VentasTerminadasVENTAS];
end;
function TVentasTerminadasBusinessProcessorRules.GetOldVENTASValue: Float;
begin
result := BusinessProcessor.CurrentChange.OldValueByName[fld_VentasTerminadasVENTAS];
end;
procedure TVentasTerminadasBusinessProcessorRules.SetVENTASValue(const aValue: Float);
begin
BusinessProcessor.CurrentChange.NewValueByName[fld_VentasTerminadasVENTAS] := aValue;
end;
function TVentasTerminadasBusinessProcessorRules.GetDEVOLUCIONESValue: Float;
begin
result := BusinessProcessor.CurrentChange.NewValueByName[fld_VentasTerminadasDEVOLUCIONES];
end;
function TVentasTerminadasBusinessProcessorRules.GetOldDEVOLUCIONESValue: Float;
begin
result := BusinessProcessor.CurrentChange.OldValueByName[fld_VentasTerminadasDEVOLUCIONES];
end;
procedure TVentasTerminadasBusinessProcessorRules.SetDEVOLUCIONESValue(const aValue: Float);
begin
BusinessProcessor.CurrentChange.NewValueByName[fld_VentasTerminadasDEVOLUCIONES] := aValue;
end;
function TVentasTerminadasBusinessProcessorRules.GetTOTALValue: Float;
begin
result := BusinessProcessor.CurrentChange.NewValueByName[fld_VentasTerminadasTOTAL];
end;
function TVentasTerminadasBusinessProcessorRules.GetOldTOTALValue: Float;
begin
result := BusinessProcessor.CurrentChange.OldValueByName[fld_VentasTerminadasTOTAL];
end;
procedure TVentasTerminadasBusinessProcessorRules.SetTOTALValue(const aValue: Float);
begin
BusinessProcessor.CurrentChange.NewValueByName[fld_VentasTerminadasTOTAL] := aValue;
end;
function TVentasTerminadasBusinessProcessorRules.GetVALTERMDEVValue: Float;
begin
result := BusinessProcessor.CurrentChange.NewValueByName[fld_VentasTerminadasVALTERMDEV];
end;
function TVentasTerminadasBusinessProcessorRules.GetOldVALTERMDEVValue: Float;
begin
result := BusinessProcessor.CurrentChange.OldValueByName[fld_VentasTerminadasVALTERMDEV];
end;
procedure TVentasTerminadasBusinessProcessorRules.SetVALTERMDEVValue(const aValue: Float);
begin
BusinessProcessor.CurrentChange.NewValueByName[fld_VentasTerminadasVALTERMDEV] := aValue;
end;
function TVentasTerminadasBusinessProcessorRules.GetVALFINALRESCValue: Float;
begin
result := BusinessProcessor.CurrentChange.NewValueByName[fld_VentasTerminadasVALFINALRESC];
end;
function TVentasTerminadasBusinessProcessorRules.GetOldVALFINALRESCValue: Float;
begin
result := BusinessProcessor.CurrentChange.OldValueByName[fld_VentasTerminadasVALFINALRESC];
end;
procedure TVentasTerminadasBusinessProcessorRules.SetVALFINALRESCValue(const aValue: Float);
begin
BusinessProcessor.CurrentChange.NewValueByName[fld_VentasTerminadasVALFINALRESC] := aValue;
end;
function TVentasTerminadasBusinessProcessorRules.GetVALVENValue: Float;
begin
result := BusinessProcessor.CurrentChange.NewValueByName[fld_VentasTerminadasVALVEN];
end;
function TVentasTerminadasBusinessProcessorRules.GetOldVALVENValue: Float;
begin
result := BusinessProcessor.CurrentChange.OldValueByName[fld_VentasTerminadasVALVEN];
end;
procedure TVentasTerminadasBusinessProcessorRules.SetVALVENValue(const aValue: Float);
begin
BusinessProcessor.CurrentChange.NewValueByName[fld_VentasTerminadasVALVEN] := aValue;
end;
function TVentasTerminadasBusinessProcessorRules.GetVALDEVValue: Float;
begin
result := BusinessProcessor.CurrentChange.NewValueByName[fld_VentasTerminadasVALDEV];
end;
function TVentasTerminadasBusinessProcessorRules.GetOldVALDEVValue: Float;
begin
result := BusinessProcessor.CurrentChange.OldValueByName[fld_VentasTerminadasVALDEV];
end;
procedure TVentasTerminadasBusinessProcessorRules.SetVALDEVValue(const aValue: Float);
begin
BusinessProcessor.CurrentChange.NewValueByName[fld_VentasTerminadasVALDEV] := aValue;
end;
function TVentasTerminadasBusinessProcessorRules.GetVALTOTValue: Float;
begin
result := BusinessProcessor.CurrentChange.NewValueByName[fld_VentasTerminadasVALTOT];
end;
function TVentasTerminadasBusinessProcessorRules.GetOldVALTOTValue: Float;
begin
result := BusinessProcessor.CurrentChange.OldValueByName[fld_VentasTerminadasVALTOT];
end;
procedure TVentasTerminadasBusinessProcessorRules.SetVALTOTValue(const aValue: Float);
begin
BusinessProcessor.CurrentChange.NewValueByName[fld_VentasTerminadasVALTOT] := aValue;
end;
initialization
RegisterBusinessProcessorRules(RID_VentasTerminadasCrossTabDelta, TVentasTerminadasCrossTabBusinessProcessorRules);
RegisterBusinessProcessorRules(RID_VentasTerminadasDelta, TVentasTerminadasBusinessProcessorRules);
end.

View File

@ -1,65 +0,0 @@
unit uBizControlVentasTerminadas;
interface
uses
Classes, DB, SysUtils, uROClasses, uDADataTable, uBizControlesBase,
uBizVentasTerminadas;
const
BIZ_CONTROL_VENTASTERMINADAS = 'Client.Control_VentasTerminadas';
type
IBizControlVentasTerminadas = interface(IBizControlBase)
['{BC0C313D-E667-4AC6-BB30-55469970F919}']
procedure SetItems(const Value : IBizVentasTerminadas);
function GetItems : IBizVentasTerminadas;
property Items : IBizVentasTerminadas read GetItems write SetItems;
end;
TBizControlVentasTerminadasTableRules = class(TBizControlBaseDataTableRules, IBizControlVentasTerminadas)
protected
FItems : IBizVentasTerminadas;
procedure OnNewRecord(Sender: TDADataTable); override;
procedure SetItems(const Value : IBizVentasTerminadas); virtual;
function GetItems : IBizVentasTerminadas; virtual;
public
procedure Show; override;
property Items : IBizVentasTerminadas read GetItems write SetItems;
end;
implementation
uses
uEditorUtils, uDataModuleVentasTerminadas;
{ TBizControlVentasTerminadasTableRules }
function TBizControlVentasTerminadasTableRules.GetItems: IBizVentasTerminadas;
begin
Result := FItems;
end;
procedure TBizControlVentasTerminadasTableRules.OnNewRecord(
Sender: TDADataTable);
begin
inherited;
CATEGORIA := CATEGORIA_VENTA_TERMINADA
end;
procedure TBizControlVentasTerminadasTableRules.SetItems(
const Value: IBizVentasTerminadas);
begin
FItems := Value;
end;
procedure TBizControlVentasTerminadasTableRules.Show;
begin
inherited;
ShowEditor(IBizControlVentasTerminadas, Self, etItem);
end;
initialization
RegisterDataTableRules(BIZ_CONTROL_VENTASTERMINADAS, TBizControlVentasTerminadasTableRules);
end.

View File

@ -1,82 +0,0 @@
unit uBizInformesVentas;
interface
uses
Classes, DB, SysUtils, uROClasses, schInformesVentasClient_Intf, uDADataTable;
const
BIZ_INFORMESVENTAS = 'Client.InformesVentas';
VALOR_CATEGORIA = 'VENTAS';
type
IBizInformesVentas = interface(IListaInformesPorCategoria)
['{78F747A5-9A35-44D6-8C73-8682A41FE573}']
procedure Show;
procedure VerPropiedades;
end;
TBizInformesVentasDataTableRules = class(TListaInformesPorCategoriaDataTableRules, IBizInformesVentas)
protected
function GetVISTAValue: IROStrings; override;
procedure BeforePost(Sender: TDADataTable); override;
public
procedure Show;
procedure VerPropiedades;
end;
implementation
uses
Windows, Dialogs, uDACDSDataTable, uDataModuleBase,
uEditorUtils, Variants, uFormPropiedadesInforme, Forms, Controls;
{ TBizInformesVentasDataTableRules }
procedure TBizInformesVentasDataTableRules.BeforePost(
Sender: TDADataTable);
begin
inherited;
if Length(CATEGORIA) = 0 then
begin
Edit;
CATEGORIA := VALOR_CATEGORIA;
end;
if Length(NOMBRE) = 0 then
VerPropiedades;
end;
function TBizInformesVentasDataTableRules.GetVISTAValue: IROStrings;
begin
result := NewROStrings();
result.Add(DataTable.Fields[idx_ListaInformesPorCategoriaVISTA].AsString);
end;
procedure TBizInformesVentasDataTableRules.Show;
begin
ShowEditor(IBizInformesVentas, Self, etItem);
end;
procedure TBizInformesVentasDataTableRules.VerPropiedades;
begin
with TfrPropiedadesInforme.Create(NIL) do
try
Nombre := Self.NOMBRE;
Descripcion := Self.DESCRIPCION;
if (ShowModal = mrOK) then
begin
DataTable.Edit;
Self.NOMBRE := Nombre;
Self.DESCRIPCION := Descripcion;
Self.ICONO := 2;
end;
finally
Free;
end;
end;
initialization
RegisterDataTableRules(BIZ_INFORMESVENTAS, TBizInformesVentasDataTableRules);
end.

View File

@ -1,115 +0,0 @@
unit uBizVentas;
interface
uses
Classes, DB, SysUtils, uROClasses, uDADataTable, uDAInterfaces,
DataAbstract_Intf, uROTypes;
const
BIZ_VENTAS = 'Client.Ventas';
{ ListaInformesPorCategoria fields }
fld_VentasCLAVE1 = 'CLAVE1';
fld_VentasCLAVE2 = 'CLAVE2';
fld_VentasCLAVE3 = 'CLAVE3';
fld_VentasNUMINF = 'NUMINF';
type
{ IRDX_ARTVEN }
IBizVentas = interface(IDAStronglyTypedDataTable)
['{E82C7F84-0CD4-4A27-80FB-BD608FDCA091}']
function GetVisibleColumns: String;
procedure SetVisibleColumns(AValue : String);
procedure Show;
property VisibleColumns : String read GetVisibleColumns write SetVisibleColumns;
end;
{ TRDX_ARTVENDataTableRules }
TBIZ_VENTASDataTableRules = class(TDADataTableRules, IBizVentas)
private
FVisibleColumns : String;
FDateParams : TDADatasetParamArray;
protected
function GetVisibleColumns: String;
procedure SetVisibleColumns(AValue : String);
procedure OnBeforeDataRequestCall(DataTable: TDADataTable;
Request: TDARemoteRequest);
procedure OnBeforeSchemaCall(DataTable: TDADataTable;
Request: TDARemoteRequest);
public
constructor Create(aDataTable: TDADataTable); override;
procedure Show;
property VisibleColumns : String read GetVisibleColumns write SetVisibleColumns;
destructor Destroy; override;
end;
implementation
{ TBIZ_VENTASDataTableRules }
uses
Dialogs, uEditorUtils, uDataModuleVentas;
constructor TBIZ_VENTASDataTableRules.Create(aDataTable: TDADataTable);
begin
inherited;
FDateParams := TDADatasetParamArray.Create;
if Assigned(DataTable) then
begin
DataTable.OnBeforeDataRequestCall := OnBeforeDataRequestCall;
DataTable.OnBeforeSchemaCall := OnBeforeSchemaCall;
end;
end;
destructor TBIZ_VENTASDataTableRules.Destroy;
begin
FreeAndNIL(FDateParams);
inherited;
end;
function TBIZ_VENTASDataTableRules.GetVisibleColumns: String;
begin
if Length(FVisibleColumns) = 0 then
FVisibleColumns := dmVentas.GetNameColumns;
Result := FVisibleColumns
end;
procedure TBIZ_VENTASDataTableRules.OnBeforeDataRequestCall(
DataTable: TDADataTable; Request: TDARemoteRequest);
begin
Request.ParamByName('Columns').AsString := VisibleColumns;
FDateParams.Clear;
NewDatasetParam(FDateParams, 'FECHAINI', DataTable.ParamByName('FECHAINI').AsDateTime);
NewDatasetParam(FDateParams, 'FECHAFIN', DataTable.ParamByName('FECHAFIN').AsDateTime);
Request.ParamByName('Params').AsComplexType := FDateParams;
end;
procedure TBIZ_VENTASDataTableRules.OnBeforeSchemaCall(
DataTable: TDADataTable; Request: TDARemoteRequest);
begin
Request.ParamByName('Columns').AsString := VisibleColumns;
end;
procedure TBIZ_VENTASDataTableRules.SetVisibleColumns(AValue: String);
begin
if Length(AValue) > 0 then
FVisibleColumns := Avalue
else
FVisibleColumns := dmVentas.GetNameColumns;
end;
procedure TBIZ_VENTASDataTableRules.Show;
begin
ShowEditor(IBizVentas, Self, etItem);
end;
initialization
RegisterDataTableRules(BIZ_VENTAS, TBIZ_VENTASDataTableRules);
finalization
end.

View File

@ -1,671 +0,0 @@
object srvVentasTerminadas: TsrvVentasTerminadas
OldCreateOrder = True
SessionManager = dmServer.SessionManager
AcquireConnection = True
ServiceSchema = schVentasTerminadas
ServiceAdapter = DABINAdapter
Left = 466
Top = 271
Height = 297
Width = 298
object schVentasTerminadas: TDASchema
ConnectionManager = dmServer.ConnectionManager
DataDictionary = dmServer.DataDictionary
Diagrams = dmServer.DADiagrams
Datasets = <
item
Params = <
item
Name = 'fechaini'
DataType = datString
BlobType = dabtUnknown
Value = ''
ParamType = daptInput
end
item
Name = 'fechafin'
DataType = datString
BlobType = dabtUnknown
Value = ''
ParamType = daptInput
end
item
Name = 'coleccion'
DataType = datString
BlobType = dabtUnknown
Value = ''
ParamType = daptInput
end>
Statements = <
item
Connection = 'GFT_VARELA'
SQL =
'begin'#10' declare @fechaini varchar(10)'#10' declare @fechafin ' +
'varchar(10)'#10' declare @coleccion varchar(10)'#10' declare @sq' +
'l varchar(8000)'#10#10' set @fechaini = :fechaini'#10' set @fechaf' +
'in = :fechafin'#10' set @coleccion = :coleccion'#10#10' select @sq' +
'l = '#39'SELECT DIA, SUM(VALTOT) AS TOTAL FROM RDX_V_VENTASTERMINADA' +
'S WHERE FECHA BETWEEN '#39#39#39' + @FECHAINI + '#39#39#39' AND '#39#39#39' + @FECHAFIN ' +
'+ '#39#39#39' AND COLECCION LIKE '#39#39#39' + @COLECCION + '#39#39#39' GROUP BY DIA'#39#10#10' ' +
' EXECUTE crosstab @sql,'#10' '#39'SUM(VALTOT)'#39','#10' ' +
' '#39'CENTRO'#39','#10' '#39'RDX_V_VENTASTERMINADAS'#39#10'end'
StatementType = stSQL
ColumnMappings = <>
end>
Name = 'VentasTerminadasCrossTab'
Fields = <>
BusinessRulesClient.ScriptLanguage = rslPascalScript
BusinessRulesServer.ScriptLanguage = rslPascalScript
end
item
Params = <
item
Name = 'FECHAINI'
BlobType = dabtUnknown
Value = '2006/01/01'
ParamType = daptInput
end
item
Name = 'FECHAFIN'
BlobType = dabtUnknown
Value = '2006/12/12'
ParamType = daptInput
end>
Statements = <
item
Connection = 'GFT_VARELA'
SQL =
'SELECT '#10' NUMINF, CLAVE1, CLAVE2, CLAVE3, FECHA, DIA, DIASEMAN' +
'A, '#10' MES, ANO, CENTRO, VENDEDOR, NUMTALON, CODIGO, PRODUCTO,'#10 +
' GRUPOPRODUCTO, TIPOPRODUCTO, COLECCION, COLOR,'#10' TALLA, TA' +
'LLA38, TALLA40, TALLA42, TALLA44, TALLA46, '#10' TALLA48, VTATERM' +
'DEV, VTAFINALRESC, VENTAS, DEVOLUCIONES, TOTAL,'#10' VALTERMDEV, ' +
'VALFINALRESC, VALVEN, VALDEV, VALTOT'#10' FROM'#10' RDX_V_VENTASTERM' +
'INADAS'#10' WHERE FECHA BETWEEN :FECHAINI AND :FECHAFIN'
StatementType = stSQL
ColumnMappings = <
item
DatasetField = 'FECHA'
TableField = 'FECHA'
end
item
DatasetField = 'CENTRO'
TableField = 'CENTRO'
end
item
DatasetField = 'VENDEDOR'
TableField = 'VENDEDOR'
end
item
DatasetField = 'PRODUCTO'
TableField = 'PRODUCTO'
end
item
DatasetField = 'COLOR'
TableField = 'COLOR'
end
item
DatasetField = 'TALLA'
TableField = 'TALLA'
end
item
DatasetField = 'TALLA38'
TableField = 'TALLA38'
end
item
DatasetField = 'TALLA40'
TableField = 'TALLA40'
end
item
DatasetField = 'TALLA42'
TableField = 'TALLA42'
end
item
DatasetField = 'TALLA44'
TableField = 'TALLA44'
end
item
DatasetField = 'TALLA46'
TableField = 'TALLA46'
end
item
DatasetField = 'TALLA48'
TableField = 'TALLA48'
end
item
DatasetField = 'VENTAS'
TableField = 'VENTAS'
end
item
DatasetField = 'DEVOLUCIONES'
TableField = 'DEVOLUCIONES'
end
item
DatasetField = 'TOTAL'
TableField = 'TOTAL'
end
item
DatasetField = 'NUMINF'
TableField = 'NUMINF'
end
item
DatasetField = 'CLAVE1'
TableField = 'CLAVE1'
end
item
DatasetField = 'CLAVE2'
TableField = 'CLAVE2'
end
item
DatasetField = 'CLAVE3'
TableField = 'CLAVE3'
end
item
DatasetField = 'CODIGO'
TableField = 'CODIGO'
end
item
DatasetField = 'DIA'
TableField = 'DIA'
end
item
DatasetField = 'DIASEMANA'
TableField = 'DIASEMANA'
end
item
DatasetField = 'MES'
TableField = 'MES'
end
item
DatasetField = 'ANO'
TableField = 'ANO'
end
item
DatasetField = 'GRUPOPRODUCTO'
TableField = 'GRUPOPRODUCTO'
end
item
DatasetField = 'TIPOPRODUCTO'
TableField = 'TIPOPRODUCTO'
end
item
DatasetField = 'COLECCION'
TableField = 'COLECCION'
end
item
DatasetField = 'VALVEN'
TableField = 'VALVEN'
end
item
DatasetField = 'VALDEV'
TableField = 'VALDEV'
end
item
DatasetField = 'VALTOT'
TableField = 'VALTOT'
end
item
DatasetField = 'NUMTALON'
TableField = 'NUMTALON'
end
item
DatasetField = 'VTATERMDEV'
TableField = 'VTATERMDEV'
end
item
DatasetField = 'VTAFINALRESC'
TableField = 'VTAFINALRESC'
end
item
DatasetField = 'VALTERMDEV'
TableField = 'VALTERMDEV'
end
item
DatasetField = 'VALFINALRESC'
TableField = 'VALFINALRESC'
end>
end>
Name = 'VentasTerminadas'
Fields = <
item
Name = 'NUMINF'
DataType = datString
Size = 35
BlobType = dabtUnknown
DisplayWidth = 0
Alignment = taLeftJustify
InPrimaryKey = True
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'CLAVE1'
DataType = datFloat
BlobType = dabtUnknown
DisplayWidth = 0
Alignment = taLeftJustify
InPrimaryKey = True
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'CLAVE2'
DataType = datInteger
BlobType = dabtUnknown
DisplayWidth = 0
Alignment = taLeftJustify
InPrimaryKey = True
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'CLAVE3'
DataType = datInteger
BlobType = dabtUnknown
DisplayWidth = 0
Alignment = taLeftJustify
InPrimaryKey = True
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'FECHA'
DataType = datDateTime
BlobType = dabtUnknown
DisplayWidth = 0
DisplayLabel = 'Fecha'
Alignment = taLeftJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'DIA'
DataType = datInteger
BlobType = dabtUnknown
DisplayWidth = 0
DisplayLabel = 'D'#237'a'
Alignment = taLeftJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'DIASEMANA'
DataType = datString
Size = 30
BlobType = dabtUnknown
DisplayWidth = 0
DisplayLabel = 'D'#237'a de la semana'
Alignment = taLeftJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'MES'
DataType = datString
Size = 30
BlobType = dabtUnknown
DisplayWidth = 0
DisplayLabel = 'Mes'
Alignment = taLeftJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'ANO'
DataType = datInteger
BlobType = dabtUnknown
DisplayWidth = 0
DisplayLabel = 'A'#241'o'
Alignment = taLeftJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'CENTRO'
DataType = datString
Size = 25
BlobType = dabtUnknown
DisplayWidth = 0
DisplayLabel = 'Centro'
Alignment = taLeftJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'VENDEDOR'
DataType = datString
Size = 66
BlobType = dabtUnknown
DisplayWidth = 0
DisplayLabel = 'Vendedor'
Alignment = taLeftJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'NUMTALON'
DataType = datString
Size = 35
BlobType = dabtUnknown
DisplayWidth = 0
Alignment = taLeftJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'CODIGO'
DataType = datString
Size = 12
BlobType = dabtUnknown
DisplayWidth = 0
DisplayLabel = 'C'#243'digo producto'
Alignment = taLeftJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'PRODUCTO'
DataType = datString
Size = 40
BlobType = dabtUnknown
DisplayWidth = 0
DisplayLabel = 'Producto'
Alignment = taLeftJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'GRUPOPRODUCTO'
DataType = datString
Size = 25
BlobType = dabtUnknown
DisplayWidth = 0
DisplayLabel = 'Grupo'
Alignment = taLeftJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'TIPOPRODUCTO'
DataType = datString
Size = 25
BlobType = dabtUnknown
DisplayWidth = 0
DisplayLabel = 'Tipo'
Alignment = taLeftJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'COLECCION'
DataType = datString
Size = 40
BlobType = dabtUnknown
DisplayWidth = 0
DisplayLabel = 'Colecci'#243'n'
Alignment = taLeftJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'COLOR'
DataType = datString
Size = 10
BlobType = dabtUnknown
DisplayWidth = 0
DisplayLabel = 'Color'
Alignment = taLeftJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'TALLA'
DataType = datString
Size = 8
BlobType = dabtUnknown
DisplayWidth = 0
DisplayLabel = 'Talla'
Alignment = taRightJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'TALLA38'
DataType = datFloat
BlobType = dabtUnknown
DisplayWidth = 0
DisplayLabel = '38'
Alignment = taRightJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'TALLA40'
DataType = datFloat
BlobType = dabtUnknown
DisplayWidth = 0
DisplayLabel = '40'
Alignment = taRightJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'TALLA42'
DataType = datFloat
BlobType = dabtUnknown
DisplayWidth = 0
DisplayLabel = '42'
Alignment = taRightJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'TALLA44'
DataType = datFloat
BlobType = dabtUnknown
DisplayWidth = 0
DisplayLabel = '44'
Alignment = taRightJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'TALLA46'
DataType = datFloat
BlobType = dabtUnknown
DisplayWidth = 0
DisplayLabel = '46'
Alignment = taRightJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'TALLA48'
DataType = datFloat
BlobType = dabtUnknown
DisplayWidth = 0
DisplayLabel = '48'
Alignment = taRightJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'VTATERMDEV'
DataType = datFloat
BlobType = dabtUnknown
DisplayWidth = 0
DisplayLabel = 'Vta.Term/Dev'
Alignment = taRightJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'VTAFINALRESC'
DataType = datFloat
BlobType = dabtUnknown
DisplayWidth = 0
DisplayLabel = 'Vta.Final/Resc'
Alignment = taRightJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'VENTAS'
DataType = datFloat
BlobType = dabtUnknown
DisplayWidth = 0
DisplayLabel = 'Ventas'
Alignment = taRightJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'DEVOLUCIONES'
DataType = datFloat
BlobType = dabtUnknown
DisplayWidth = 0
DisplayLabel = 'Devoluciones'
Alignment = taRightJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'TOTAL'
DataType = datFloat
BlobType = dabtUnknown
DisplayWidth = 0
DisplayLabel = 'Total ventas'
Alignment = taRightJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'VALTERMDEV'
DataType = datFloat
BlobType = dabtUnknown
DisplayWidth = 0
DisplayLabel = 'Val.Term/Dev'
Alignment = taRightJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'VALFINALRESC'
DataType = datFloat
BlobType = dabtUnknown
DisplayWidth = 0
DisplayLabel = 'Val.Final/Resc'
Alignment = taRightJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'VALVEN'
DataType = datFloat
BlobType = dabtUnknown
DisplayWidth = 0
DisplayLabel = 'Imp. ventas'
Alignment = taRightJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'VALDEV'
DataType = datFloat
BlobType = dabtUnknown
DisplayWidth = 0
DisplayLabel = 'Imp. devoluciones'
Alignment = taRightJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'VALTOT'
DataType = datFloat
BlobType = dabtUnknown
DisplayWidth = 0
DisplayLabel = 'Imp. Total'
Alignment = taRightJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end>
BusinessRulesClient.ScriptLanguage = rslPascalScript
BusinessRulesServer.ScriptLanguage = rslPascalScript
end>
Commands = <>
RelationShips = <>
UpdateRules = <>
Left = 56
Top = 32
end
object DABINAdapter: TDABINAdapter
Left = 56
Top = 96
end
end

View File

@ -1,156 +0,0 @@
unit srvVentasTerminadas_Impl;
{----------------------------------------------------------------------------}
{ This unit was automatically generated by the RemObjects SDK after reading }
{ the RODL file associated with this project . }
{ }
{ This is where you are supposed to code the implementation of your objects. }
{----------------------------------------------------------------------------}
interface
uses
{vcl:} Classes, SysUtils,
{RemObjects:} uROClientIntf, uROTypes, uROServer, uROServerIntf, uROSessions,
{Ancestor Implementation:} DARemoteService_Impl,
{Used RODLs:} DataAbstract_Intf,
{Generated:} VARELA_Intf, uDAClasses,
uDataModuleServer, uDAInterfaces, uDADataTable, uDABINAdapter;
type
{ TsrvVentasTerminadas }
TsrvVentasTerminadas = class(TDARemoteService, IsrvVentasTerminadas)
DABINAdapter: TDABINAdapter;
schVentasTerminadas: TDASchema;
private
protected
{ IsrvVentasTerminadas methods }
function GetData(const DatasetName: String; const MaxRecords: Integer; const Columns: String; const Params: TDADatasetParamArray): Binary;
function GetSchema(const DatasetName: String; const Columns: String): Binary;
function GetDataCrossTab(const FechaIni: String; const FechaFin: String; const Coleccion: String): Binary;
function GetSchemaCrossTab(const FechaIni: String; const FechaFin: String; const Coleccion: String): Binary;
end;
implementation
{$R *.dfm}
uses
{Generated:} VARELA_Invk, uSchemaUtilsServer, dialogs;
const
CAMPOS_SUMA = '#TALLA38#TALLA40#TALLA42#TALLA44#TALLA46#TALLA48#VENTAS#DEVOLUCIONES#TOTAL#VALVEN#VALDEV#VALTOT#VTATERMDEV#VTAFINALRESC#VALTERMDEV#VALFINALRESC#';
procedure Create_srvVentasTerminadas(out anInstance : IUnknown);
begin
anInstance := TsrvVentasTerminadas.Create(NIL);
end;
{ srvVentasTerminadas }
function TsrvVentasTerminadas.GetData(const DatasetName: String;
const MaxRecords: Integer; const Columns: String;
const Params: TDADatasetParamArray): TROBinaryMemoryStream;
var
ds : IDADataset;
i : integer;
begin
result := Binary.Create;
try
{ Prepares the parameter arrays}
with TReplicarDataSet.Create do
begin
SourceDataSetName := DatasetName;
Service := Self;
Columnas := Columns;
ColumnasQueSuman := CAMPOS_SUMA;
try
ds := GetNewDataSet;
finally
Free;
end;
end;
for i := 0 to (Params.Count-1) do
ds.ParamByName(Params[i].Name).Value := Params[i].Value;
ds.Open;
ServiceAdapter.WriteDataset(Result, ds, [woRows], MaxRecords);
except
FreeAndNIl(result);
raise;
end;
end;
function TsrvVentasTerminadas.GetDataCrossTab(const FechaIni, FechaFin: String; const Coleccion: String): Binary;
var
ds : IDADataset;
AColeccion : String;
begin
if (Length(Coleccion) = 0) or (UpperCase(Coleccion) = 'TODAS') then
AColeccion := '%'
else
AColeccion := Coleccion;
try
Result := Binary.Create;
ds := schVentasTerminadas.NewDataset(Connection, 'VentasTerminadasCrossTab', ['FECHAINI', 'FECHAFIN', 'COLECCION'], [FechaIni, FechaFin, AColeccion]);//['01/07/2006', '31/07/2006']);
ds.Open;
ServiceAdapter.WriteDataset(Result, ds, [woSchema, woRows], -1);
except
FreeAndNIl(result);
raise;
end;
end;
function TsrvVentasTerminadas.GetSchema(const DatasetName: String; const Columns: String): TROBinaryMemoryStream;
var
ds : IDADataset;
begin
result := Binary.Create;
try
with TReplicarDataSet.Create do
begin
SourceDataSetName := DatasetName;
Service := Self;
Columnas := Columns;
ColumnasQueSuman := CAMPOS_SUMA;
try
ds := GetNewDataSet;
finally
Free;
end;
end;
ServiceAdapter.WriteDataset(result, ds, [woSchema]);
except
FreeAndNIl(result);
raise;
end;
end;
function TsrvVentasTerminadas.GetSchemaCrossTab(const FechaIni, FechaFin: String; const Coleccion: String): Binary;
var
ds : IDADataset;
AColeccion : String;
begin
if (Length(Coleccion) = 0) or (UpperCase(Coleccion) = 'TODAS') then
AColeccion := '%'
else
AColeccion := Coleccion;
try
Result := Binary.Create;
ds := schVentasTerminadas.NewDataset(Connection, 'VentasTerminadasCrossTab', ['FECHAINI', 'FECHAFIN', 'COLECCION'], [FechaIni, FechaFin, AColeccion]);//['01/07/2006', '31/07/2006']);
ds.Open;
ServiceAdapter.WriteDataset(Result, ds, [woSchema]);
except
FreeAndNIl(result);
raise;
end;
end;
initialization
TROClassFactory.Create('srvVentasTerminadas', Create_srvVentasTerminadas, TsrvVentasTerminadas_Invoker);
finalization
end.