Integrar gestión de usuarios
git-svn-id: https://192.168.0.254/svn/Proyectos.Varela_PuntosVenta/trunk@108 1c943782-d109-9647-9548-93b3ac332352
This commit is contained in:
parent
75ab5245cb
commit
19aed4c9ee
592
Build/Build.fbp5
592
Build/Build.fbp5
@ -531,149 +531,6 @@ source_path
|
|||||||
<Property name="RetryPauseInterval" type="Cardinal">1000</Property>
|
<Property name="RetryPauseInterval" type="Cardinal">1000</Property>
|
||||||
<Property name="SuppressStatusMessages" type="Boolean">False</Property>
|
<Property name="SuppressStatusMessages" type="Boolean">False</Property>
|
||||||
</Object>
|
</Object>
|
||||||
<Object Class="TGroupAction" XMLID="{16BBD182-B44C-4EA2-BD93-D93C06B9A41D}"><Property MultiValue="0" name="ActionComment" type="string"></Property>
|
|
||||||
<Property MultiValue="0" name="ActionDescription" type="string">Servidor</Property>
|
|
||||||
<Property name="ActionTextColor" type="Cardinal">0</Property>
|
|
||||||
<Property MultiValue="0" name="ActionTypeID" type="string"></Property>
|
|
||||||
<Property MultiValue="0" name="Description" type="string">Servidor</Property>
|
|
||||||
<Property name="Enabled" type="WordBool">True</Property>
|
|
||||||
<Property name="ExpandActionLogTitle" type="Boolean">True</Property>
|
|
||||||
<Property name="IgnoreFailure" type="WordBool">False</Property>
|
|
||||||
<Property name="IsAction" type="Boolean">True</Property>
|
|
||||||
<Property name="IsBreakPoint" type="WordBool">False</Property>
|
|
||||||
<Property MultiValue="0" name="LogToVariable" type="string"></Property>
|
|
||||||
<Property name="MaxRetryAttempts" type="Cardinal">0</Property>
|
|
||||||
<Property name="NodeCollapsed" type="Boolean">False</Property>
|
|
||||||
<Property name="PauseInterval" type="Cardinal">0</Property>
|
|
||||||
<Property name="RetryPauseInterval" type="Cardinal">1000</Property>
|
|
||||||
<Property name="SuppressStatusMessages" type="Boolean">False</Property>
|
|
||||||
<Object Class="TDelphiCompilerAction" XMLID="{BCC90A20-6E68-4CF0-B93D-1182528436DC}"><Property MultiValue="0" name="ActionComment" type="string"></Property>
|
|
||||||
<Property MultiValue="1" name="ActionDescription" type="string"><![CDATA[Compile Servidor\AdminPV_Server.dpr]]>
|
|
||||||
</Property>
|
|
||||||
<Property name="ActionTextColor" type="Cardinal">0</Property>
|
|
||||||
<Property MultiValue="0" name="ActionTypeID" type="string"></Property>
|
|
||||||
<Property name="AllowImplicitImport" type="Boolean">True</Property>
|
|
||||||
<Property name="AlwaysUseConditionalsFromDOF" type="WordBool">False</Property>
|
|
||||||
<Property name="AutoIncBuild" type="WordBool">False</Property>
|
|
||||||
<Property name="AutoUpdateFileVersion" type="Boolean">True</Property>
|
|
||||||
<Property name="BuildAll" type="WordBool">True</Property>
|
|
||||||
<Property name="BuildVersion" type="Integer">0</Property>
|
|
||||||
<Property name="CodePage" type="Integer">1252</Property>
|
|
||||||
<Property name="CompilerVersion" type="Integer">12</Property>
|
|
||||||
<Property MultiValue="0" name="ConfigName" type="string">Release</Property>
|
|
||||||
<Property name="DebugVersionNumbers" type="Boolean">False</Property>
|
|
||||||
<Property MultiValue="1" name="Description" type="string"><![CDATA[Compile Servidor\AdminPV_Server.dpr]]>
|
|
||||||
</Property>
|
|
||||||
<Property name="Enabled" type="WordBool">True</Property>
|
|
||||||
<Property name="ExpandActionLogTitle" type="Boolean">True</Property>
|
|
||||||
<Property MultiValue="0" name="ExtraCommandline" type="WideString"></Property>
|
|
||||||
<Property name="HintsAsError" type="Boolean">False</Property>
|
|
||||||
<Property MultiValue="0" name="IconFile" type="WideString">%project_path%\Resources\Iconos\Servidor.ico</Property>
|
|
||||||
<Property name="IgnoreFailure" type="WordBool">False</Property>
|
|
||||||
<Property name="IncludeCompileDate" type="WordBool">True</Property>
|
|
||||||
<Property name="IncludeVerInfo" type="WordBool">True</Property>
|
|
||||||
<Property name="IsAction" type="Boolean">True</Property>
|
|
||||||
<Property name="IsBreakPoint" type="WordBool">False</Property>
|
|
||||||
<Property name="IsDebug" type="WordBool">False</Property>
|
|
||||||
<Property name="IsDLL" type="WordBool">False</Property>
|
|
||||||
<Property name="IsPreRelease" type="WordBool">False</Property>
|
|
||||||
<Property name="IsPrivate" type="WordBool">False</Property>
|
|
||||||
<Property name="IsSpecial" type="WordBool">False</Property>
|
|
||||||
<Property name="KeepCFG" type="Boolean">False</Property>
|
|
||||||
<Property name="LinkProductVersionToFileVersion" type="Boolean">True</Property>
|
|
||||||
<Property name="Locale" type="Integer">3082</Property>
|
|
||||||
<Property MultiValue="0" name="LogToVariable" type="string"></Property>
|
|
||||||
<Property name="MajorVersion" type="Integer">2</Property>
|
|
||||||
<Property name="MaxRetryAttempts" type="Cardinal">0</Property>
|
|
||||||
<Property name="MinorVersion" type="Integer">0</Property>
|
|
||||||
<Property name="NodeCollapsed" type="Boolean">False</Property>
|
|
||||||
<Property name="PauseInterval" type="Cardinal">0</Property>
|
|
||||||
<Property MultiValue="0" name="ProjectFile" type="WideString">%source_path%\Servidor\AdminPV_Server.dpr</Property>
|
|
||||||
<Property name="RegenerateResource" type="WordBool">True</Property>
|
|
||||||
<Property name="ReleaseVersion" type="Integer">0</Property>
|
|
||||||
<Property MultiValue="0" name="ResourceCompilerOptions" type="string"></Property>
|
|
||||||
<Property MultiValue="0" name="ResourceCompilerPath" type="string"></Property>
|
|
||||||
<Property name="ResourceCompilerType" type="TFBDelphiResourceCompiler">rcBorland</Property>
|
|
||||||
<Property name="RetryPauseInterval" type="Cardinal">1000</Property>
|
|
||||||
<Property MultiValue="0" name="StartingDir" type="WideString">%source_path%\Servidor\</Property>
|
|
||||||
<Property name="SuppressStatusMessages" type="Boolean">False</Property>
|
|
||||||
<Property name="UpdateDofFile" type="Boolean">True</Property>
|
|
||||||
<Property name="UpdatePackageSource" type="Boolean">False</Property>
|
|
||||||
<Property name="UseEurekaLogCompiler" type="Boolean">False</Property>
|
|
||||||
<Property name="UseProjectSettings" type="TFBUseProjectSettings">[usPackages,usCompiler,usLinker,usVersionInfo]</Property>
|
|
||||||
<Property name="UsePropertySet" type="Boolean">False</Property>
|
|
||||||
<Property name="UseVersionFromDOF" type="Boolean">True</Property>
|
|
||||||
<Property MultiValue="1" name="VersionInfoKeys" type="WideString"><![CDATA[CompanyName=Rodax Software S.L.
|
|
||||||
FileDescription=
|
|
||||||
FileVersion=2.0.0.0
|
|
||||||
InternalName=
|
|
||||||
LegalCopyright=
|
|
||||||
LegalTrademarks=
|
|
||||||
OriginalFilename=
|
|
||||||
ProductName=AdminPV_Server
|
|
||||||
ProductVersion=1.2.5.0
|
|
||||||
Comments=
|
|
||||||
CompileDate=miércoles, 12 de septiembre de 2007 18:52
|
|
||||||
]]>
|
|
||||||
</Property>
|
|
||||||
<Property MultiValue="0" name="VersionInfoPropertySetName" type="string"></Property>
|
|
||||||
<Property name="WarningsAsError" type="Boolean">False</Property>
|
|
||||||
<Property name="WorkAroundD5Bug" type="WordBool">False</Property>
|
|
||||||
<Object Class="TDelphiCompilerOptions" XMLID="{50F8565E-B514-4194-9050-D3B469F29817}"><Property name="AlwaysUseConditionalsFromDOF" type="WordBool">False</Property>
|
|
||||||
<Property name="AlwaysUseDelphiLibraryPath" type="WordBool">False</Property>
|
|
||||||
<Property name="AlwaysUseDOFSearchPath" type="WordBool">False</Property>
|
|
||||||
<Property name="Assertions" type="WordBool">True</Property>
|
|
||||||
<Property name="AssignableConst" type="WordBool">False</Property>
|
|
||||||
<Property name="BoolEval" type="WordBool">False</Property>
|
|
||||||
<Property MultiValue="0" name="BPLOutputDir" type="WideString"></Property>
|
|
||||||
<Property name="CompilerWarnings" type="TStrings"><![CDATA[]]>
|
|
||||||
</Property>
|
|
||||||
<Property MultiValue="0" name="Conditionals" type="WideString"></Property>
|
|
||||||
<Property name="ConsoleApp" type="WordBool">False</Property>
|
|
||||||
<Property MultiValue="0" name="DCPOutputDir" type="WideString"></Property>
|
|
||||||
<Property name="DebugInfo" type="WordBool">False</Property>
|
|
||||||
<Property MultiValue="0" name="DefaultNamespace" type="string"></Property>
|
|
||||||
<Property name="DefinitionsOnly" type="WordBool">False</Property>
|
|
||||||
<Property MultiValue="0" name="ExeDescription" type="WideString"></Property>
|
|
||||||
<Property name="ExportAllSymbols" type="WordBool">False</Property>
|
|
||||||
<Property name="ExtendedSyntax" type="WordBool">True</Property>
|
|
||||||
<Property name="GenerateDocumentation" type="Boolean">False</Property>
|
|
||||||
<Property name="GenerateHPP" type="WordBool">False</Property>
|
|
||||||
<Property name="HugeStrings" type="WordBool">True</Property>
|
|
||||||
<Property name="ImageBase" type="Cardinal">4194304</Property>
|
|
||||||
<Property name="IncludeNamespaces" type="WordBool">False</Property>
|
|
||||||
<Property name="IncludeRemoteSymbols" type="WordBool">False</Property>
|
|
||||||
<Property name="IncludeTD32" type="WordBool">False</Property>
|
|
||||||
<Property name="IOChecking" type="WordBool">True</Property>
|
|
||||||
<Property MultiValue="0" name="LibraryPath" type="WideString">%library_path%</Property>
|
|
||||||
<Property name="LinkerOutput" type="Integer">0</Property>
|
|
||||||
<Property name="LocalSymbols" type="WordBool">False</Property>
|
|
||||||
<Property name="Mapfile" type="Integer">3</Property>
|
|
||||||
<Property name="MaxStackSize" type="Cardinal">1048576</Property>
|
|
||||||
<Property name="MinStackSize" type="Cardinal">16384</Property>
|
|
||||||
<Property MultiValue="0" name="NamespacePrefixes" type="string"></Property>
|
|
||||||
<Property name="OpenStrings" type="WordBool">True</Property>
|
|
||||||
<Property name="Optimisation" type="WordBool">True</Property>
|
|
||||||
<Property MultiValue="0" name="OutputDir" type="WideString">%output_path%\Servidor</Property>
|
|
||||||
<Property name="OverflowChecking" type="WordBool">False</Property>
|
|
||||||
<Property MultiValue="0" name="Packages" type="WideString"></Property>
|
|
||||||
<Property name="RangeChecking" type="WordBool">False</Property>
|
|
||||||
<Property name="RecordFieldAlign" type="TFieldAlign">fa8</Property>
|
|
||||||
<Property name="ReferenceInfo" type="WordBool">False</Property>
|
|
||||||
<Property name="SafeDivide" type="WordBool">False</Property>
|
|
||||||
<Property MultiValue="0" name="SearchPath" type="WideString">.\</Property>
|
|
||||||
<Property name="ShowHints" type="WordBool">True</Property>
|
|
||||||
<Property name="ShowWarnings" type="WordBool">True</Property>
|
|
||||||
<Property name="StackFrames" type="WordBool">True</Property>
|
|
||||||
<Property name="TypedPointers" type="WordBool">False</Property>
|
|
||||||
<Property MultiValue="0" name="UnitAliases" type="WideString">WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE;</Property>
|
|
||||||
<Property MultiValue="0" name="UnitOutputDir" type="WideString">.\</Property>
|
|
||||||
<Property name="UseDebugDCU" type="WordBool">False</Property>
|
|
||||||
<Property name="UsePackages" type="WordBool">False</Property>
|
|
||||||
<Property name="VarStringChecks" type="WordBool">True</Property>
|
|
||||||
</Object>
|
|
||||||
</Object>
|
|
||||||
</Object>
|
|
||||||
<Object Class="TCommentAction" XMLID="{A239B00D-1E95-4D41-AF84-C1825C39CDE0}"><Property MultiValue="0" name="ActionComment" type="string"></Property>
|
<Object Class="TCommentAction" XMLID="{A239B00D-1E95-4D41-AF84-C1825C39CDE0}"><Property MultiValue="0" name="ActionComment" type="string"></Property>
|
||||||
<Property MultiValue="0" name="ActionDescription" type="string">#</Property>
|
<Property MultiValue="0" name="ActionDescription" type="string">#</Property>
|
||||||
<Property name="ActionTextColor" type="Cardinal">16711680</Property>
|
<Property name="ActionTextColor" type="Cardinal">16711680</Property>
|
||||||
@ -739,7 +596,7 @@ CompileDate=miércoles, 12 de septiembre de 2007 18:52
|
|||||||
<Property name="IsBreakPoint" type="WordBool">False</Property>
|
<Property name="IsBreakPoint" type="WordBool">False</Property>
|
||||||
<Property MultiValue="0" name="LogToVariable" type="string"></Property>
|
<Property MultiValue="0" name="LogToVariable" type="string"></Property>
|
||||||
<Property name="MaxRetryAttempts" type="Cardinal">0</Property>
|
<Property name="MaxRetryAttempts" type="Cardinal">0</Property>
|
||||||
<Property name="NodeCollapsed" type="Boolean">False</Property>
|
<Property name="NodeCollapsed" type="Boolean">True</Property>
|
||||||
<Property name="PauseInterval" type="Cardinal">0</Property>
|
<Property name="PauseInterval" type="Cardinal">0</Property>
|
||||||
<Property name="RetryPauseInterval" type="Cardinal">1000</Property>
|
<Property name="RetryPauseInterval" type="Cardinal">1000</Property>
|
||||||
<Property name="SuppressStatusMessages" type="Boolean">False</Property>
|
<Property name="SuppressStatusMessages" type="Boolean">False</Property>
|
||||||
@ -1017,7 +874,7 @@ Comments=
|
|||||||
<Property MultiValue="0" name="IconFile" type="WideString"></Property>
|
<Property MultiValue="0" name="IconFile" type="WideString"></Property>
|
||||||
<Property name="IgnoreFailure" type="WordBool">False</Property>
|
<Property name="IgnoreFailure" type="WordBool">False</Property>
|
||||||
<Property name="IncludeCompileDate" type="WordBool">False</Property>
|
<Property name="IncludeCompileDate" type="WordBool">False</Property>
|
||||||
<Property name="IncludeVerInfo" type="WordBool">False</Property>
|
<Property name="IncludeVerInfo" type="WordBool">True</Property>
|
||||||
<Property name="IsAction" type="Boolean">True</Property>
|
<Property name="IsAction" type="Boolean">True</Property>
|
||||||
<Property name="IsBreakPoint" type="WordBool">False</Property>
|
<Property name="IsBreakPoint" type="WordBool">False</Property>
|
||||||
<Property name="IsDebug" type="WordBool">False</Property>
|
<Property name="IsDebug" type="WordBool">False</Property>
|
||||||
@ -1027,7 +884,7 @@ Comments=
|
|||||||
<Property name="IsSpecial" type="WordBool">False</Property>
|
<Property name="IsSpecial" type="WordBool">False</Property>
|
||||||
<Property name="KeepCFG" type="Boolean">False</Property>
|
<Property name="KeepCFG" type="Boolean">False</Property>
|
||||||
<Property name="LinkProductVersionToFileVersion" type="Boolean">False</Property>
|
<Property name="LinkProductVersionToFileVersion" type="Boolean">False</Property>
|
||||||
<Property name="Locale" type="Integer">3081</Property>
|
<Property name="Locale" type="Integer">3082</Property>
|
||||||
<Property MultiValue="0" name="LogToVariable" type="string"></Property>
|
<Property MultiValue="0" name="LogToVariable" type="string"></Property>
|
||||||
<Property name="MajorVersion" type="Integer">1</Property>
|
<Property name="MajorVersion" type="Integer">1</Property>
|
||||||
<Property name="MaxRetryAttempts" type="Cardinal">0</Property>
|
<Property name="MaxRetryAttempts" type="Cardinal">0</Property>
|
||||||
@ -1049,7 +906,16 @@ Comments=
|
|||||||
<Property name="UseProjectSettings" type="TFBUseProjectSettings">[usPackages,usCompiler,usLinker,usVersionInfo]</Property>
|
<Property name="UseProjectSettings" type="TFBUseProjectSettings">[usPackages,usCompiler,usLinker,usVersionInfo]</Property>
|
||||||
<Property name="UsePropertySet" type="Boolean">False</Property>
|
<Property name="UsePropertySet" type="Boolean">False</Property>
|
||||||
<Property name="UseVersionFromDOF" type="Boolean">False</Property>
|
<Property name="UseVersionFromDOF" type="Boolean">False</Property>
|
||||||
<Property MultiValue="1" name="VersionInfoKeys" type="WideString"><![CDATA[FileVersion=1.0.0.0
|
<Property MultiValue="1" name="VersionInfoKeys" type="WideString"><![CDATA[CompanyName=
|
||||||
|
FileDescription=
|
||||||
|
FileVersion=1.0.0.0
|
||||||
|
InternalName=
|
||||||
|
LegalCopyright=
|
||||||
|
LegalTrademarks=
|
||||||
|
OriginalFilename=
|
||||||
|
ProductName=
|
||||||
|
ProductVersion=1.0.0.0
|
||||||
|
Comments=
|
||||||
]]>
|
]]>
|
||||||
</Property>
|
</Property>
|
||||||
<Property MultiValue="0" name="VersionInfoPropertySetName" type="string"></Property>
|
<Property MultiValue="0" name="VersionInfoPropertySetName" type="string"></Property>
|
||||||
@ -1110,7 +976,7 @@ Comments=
|
|||||||
</Object>
|
</Object>
|
||||||
</Object>
|
</Object>
|
||||||
<Object Class="TDelphiCompilerAction" XMLID="{8EA2A3AA-98DB-48CB-8B9A-118FE22A444F}"><Property MultiValue="0" name="ActionComment" type="string"></Property>
|
<Object Class="TDelphiCompilerAction" XMLID="{8EA2A3AA-98DB-48CB-8B9A-118FE22A444F}"><Property MultiValue="0" name="ActionComment" type="string"></Property>
|
||||||
<Property MultiValue="1" name="ActionDescription" type="string"><![CDATA[Compile Usuarios\Usuarios.dpk]]>
|
<Property MultiValue="1" name="ActionDescription" type="string"><![CDATA[Compile ApplicationBase\ApplicationBase.dpk]]>
|
||||||
</Property>
|
</Property>
|
||||||
<Property name="ActionTextColor" type="Cardinal">0</Property>
|
<Property name="ActionTextColor" type="Cardinal">0</Property>
|
||||||
<Property MultiValue="0" name="ActionTypeID" type="string"></Property>
|
<Property MultiValue="0" name="ActionTypeID" type="string"></Property>
|
||||||
@ -1124,7 +990,7 @@ Comments=
|
|||||||
<Property name="CompilerVersion" type="Integer">12</Property>
|
<Property name="CompilerVersion" type="Integer">12</Property>
|
||||||
<Property MultiValue="0" name="ConfigName" type="string">Debug</Property>
|
<Property MultiValue="0" name="ConfigName" type="string">Debug</Property>
|
||||||
<Property name="DebugVersionNumbers" type="Boolean">False</Property>
|
<Property name="DebugVersionNumbers" type="Boolean">False</Property>
|
||||||
<Property MultiValue="1" name="Description" type="string"><![CDATA[Compile Usuarios\Usuarios.dpk]]>
|
<Property MultiValue="1" name="Description" type="string"><![CDATA[Compile ApplicationBase\ApplicationBase.dpk]]>
|
||||||
</Property>
|
</Property>
|
||||||
<Property name="Enabled" type="WordBool">True</Property>
|
<Property name="Enabled" type="WordBool">True</Property>
|
||||||
<Property name="ExpandActionLogTitle" type="Boolean">True</Property>
|
<Property name="ExpandActionLogTitle" type="Boolean">True</Property>
|
||||||
@ -1150,9 +1016,9 @@ Comments=
|
|||||||
<Property name="MinorVersion" type="Integer">0</Property>
|
<Property name="MinorVersion" type="Integer">0</Property>
|
||||||
<Property name="NodeCollapsed" type="Boolean">False</Property>
|
<Property name="NodeCollapsed" type="Boolean">False</Property>
|
||||||
<Property name="PauseInterval" type="Cardinal">0</Property>
|
<Property name="PauseInterval" type="Cardinal">0</Property>
|
||||||
<Property MultiValue="0" name="ProjectFile" type="WideString">%source_path%\Usuarios\Usuarios.dpk</Property>
|
<Property MultiValue="0" name="ProjectFile" type="WideString">%source_path%\ApplicationBase\ApplicationBase.dpk</Property>
|
||||||
<Property name="RegenerateResource" type="WordBool">True</Property>
|
<Property name="RegenerateResource" type="WordBool">True</Property>
|
||||||
<Property name="ReleaseVersion" type="Integer">3</Property>
|
<Property name="ReleaseVersion" type="Integer">0</Property>
|
||||||
<Property MultiValue="0" name="ResourceCompilerOptions" type="string"></Property>
|
<Property MultiValue="0" name="ResourceCompilerOptions" type="string"></Property>
|
||||||
<Property MultiValue="0" name="ResourceCompilerPath" type="string"></Property>
|
<Property MultiValue="0" name="ResourceCompilerPath" type="string"></Property>
|
||||||
<Property name="ResourceCompilerType" type="TFBDelphiResourceCompiler">rcBorland</Property>
|
<Property name="ResourceCompilerType" type="TFBDelphiResourceCompiler">rcBorland</Property>
|
||||||
@ -1167,7 +1033,7 @@ Comments=
|
|||||||
<Property name="UseVersionFromDOF" type="Boolean">False</Property>
|
<Property name="UseVersionFromDOF" type="Boolean">False</Property>
|
||||||
<Property MultiValue="1" name="VersionInfoKeys" type="WideString"><![CDATA[CompanyName=
|
<Property MultiValue="1" name="VersionInfoKeys" type="WideString"><![CDATA[CompanyName=
|
||||||
FileDescription=
|
FileDescription=
|
||||||
FileVersion=1.0.3.0
|
FileVersion=1.0.0.0
|
||||||
InternalName=
|
InternalName=
|
||||||
LegalCopyright=
|
LegalCopyright=
|
||||||
LegalTrademarks=
|
LegalTrademarks=
|
||||||
@ -1204,17 +1070,17 @@ Comments=
|
|||||||
<Property name="ImageBase" type="Cardinal">4194304</Property>
|
<Property name="ImageBase" type="Cardinal">4194304</Property>
|
||||||
<Property name="IncludeNamespaces" type="WordBool">False</Property>
|
<Property name="IncludeNamespaces" type="WordBool">False</Property>
|
||||||
<Property name="IncludeRemoteSymbols" type="WordBool">False</Property>
|
<Property name="IncludeRemoteSymbols" type="WordBool">False</Property>
|
||||||
<Property name="IncludeTD32" type="WordBool">False</Property>
|
<Property name="IncludeTD32" type="WordBool">True</Property>
|
||||||
<Property name="IOChecking" type="WordBool">True</Property>
|
<Property name="IOChecking" type="WordBool">True</Property>
|
||||||
<Property MultiValue="0" name="LibraryPath" type="WideString">%library_path%</Property>
|
<Property MultiValue="0" name="LibraryPath" type="WideString">%library_path%</Property>
|
||||||
<Property name="LinkerOutput" type="Integer">0</Property>
|
<Property name="LinkerOutput" type="Integer">0</Property>
|
||||||
<Property name="LocalSymbols" type="WordBool">True</Property>
|
<Property name="LocalSymbols" type="WordBool">True</Property>
|
||||||
<Property name="Mapfile" type="Integer">3</Property>
|
<Property name="Mapfile" type="Integer">0</Property>
|
||||||
<Property name="MaxStackSize" type="Cardinal">1048576</Property>
|
<Property name="MaxStackSize" type="Cardinal">1048576</Property>
|
||||||
<Property name="MinStackSize" type="Cardinal">16384</Property>
|
<Property name="MinStackSize" type="Cardinal">16384</Property>
|
||||||
<Property MultiValue="0" name="NamespacePrefixes" type="string"></Property>
|
<Property MultiValue="0" name="NamespacePrefixes" type="string"></Property>
|
||||||
<Property name="OpenStrings" type="WordBool">True</Property>
|
<Property name="OpenStrings" type="WordBool">True</Property>
|
||||||
<Property name="Optimisation" type="WordBool">True</Property>
|
<Property name="Optimisation" type="WordBool">False</Property>
|
||||||
<Property MultiValue="0" name="OutputDir" type="WideString">%output_path%\Cliente</Property>
|
<Property MultiValue="0" name="OutputDir" type="WideString">%output_path%\Cliente</Property>
|
||||||
<Property name="OverflowChecking" type="WordBool">False</Property>
|
<Property name="OverflowChecking" type="WordBool">False</Property>
|
||||||
<Property MultiValue="0" name="Packages" type="WideString"></Property>
|
<Property MultiValue="0" name="Packages" type="WideString"></Property>
|
||||||
@ -1234,122 +1100,6 @@ Comments=
|
|||||||
<Property name="VarStringChecks" type="WordBool">True</Property>
|
<Property name="VarStringChecks" type="WordBool">True</Property>
|
||||||
</Object>
|
</Object>
|
||||||
</Object>
|
</Object>
|
||||||
<Object Class="TDelphiCompilerAction" XMLID="{FAE0CC1A-C74E-4136-B371-B96AD443C8C3}"><Property MultiValue="0" name="ActionComment" type="string"></Property>
|
|
||||||
<Property MultiValue="1" name="ActionDescription" type="string"><![CDATA[Compile Configuracion\Configuracion.dpk]]>
|
|
||||||
</Property>
|
|
||||||
<Property name="ActionTextColor" type="Cardinal">0</Property>
|
|
||||||
<Property MultiValue="0" name="ActionTypeID" type="string"></Property>
|
|
||||||
<Property name="AllowImplicitImport" type="Boolean">True</Property>
|
|
||||||
<Property name="AlwaysUseConditionalsFromDOF" type="WordBool">False</Property>
|
|
||||||
<Property name="AutoIncBuild" type="WordBool">False</Property>
|
|
||||||
<Property name="AutoUpdateFileVersion" type="Boolean">True</Property>
|
|
||||||
<Property name="BuildAll" type="WordBool">True</Property>
|
|
||||||
<Property name="BuildVersion" type="Integer">0</Property>
|
|
||||||
<Property name="CodePage" type="Integer">1252</Property>
|
|
||||||
<Property name="CompilerVersion" type="Integer">12</Property>
|
|
||||||
<Property MultiValue="0" name="ConfigName" type="string">Debug</Property>
|
|
||||||
<Property name="DebugVersionNumbers" type="Boolean">False</Property>
|
|
||||||
<Property MultiValue="1" name="Description" type="string"><![CDATA[Compile Configuracion\Configuracion.dpk]]>
|
|
||||||
</Property>
|
|
||||||
<Property name="Enabled" type="WordBool">True</Property>
|
|
||||||
<Property name="ExpandActionLogTitle" type="Boolean">True</Property>
|
|
||||||
<Property MultiValue="0" name="ExtraCommandline" type="WideString"></Property>
|
|
||||||
<Property name="HintsAsError" type="Boolean">False</Property>
|
|
||||||
<Property MultiValue="0" name="IconFile" type="WideString"></Property>
|
|
||||||
<Property name="IgnoreFailure" type="WordBool">False</Property>
|
|
||||||
<Property name="IncludeCompileDate" type="WordBool">False</Property>
|
|
||||||
<Property name="IncludeVerInfo" type="WordBool">False</Property>
|
|
||||||
<Property name="IsAction" type="Boolean">True</Property>
|
|
||||||
<Property name="IsBreakPoint" type="WordBool">False</Property>
|
|
||||||
<Property name="IsDebug" type="WordBool">False</Property>
|
|
||||||
<Property name="IsDLL" type="WordBool">False</Property>
|
|
||||||
<Property name="IsPreRelease" type="WordBool">False</Property>
|
|
||||||
<Property name="IsPrivate" type="WordBool">False</Property>
|
|
||||||
<Property name="IsSpecial" type="WordBool">False</Property>
|
|
||||||
<Property name="KeepCFG" type="Boolean">False</Property>
|
|
||||||
<Property name="LinkProductVersionToFileVersion" type="Boolean">False</Property>
|
|
||||||
<Property name="Locale" type="Integer">3081</Property>
|
|
||||||
<Property MultiValue="0" name="LogToVariable" type="string"></Property>
|
|
||||||
<Property name="MajorVersion" type="Integer">1</Property>
|
|
||||||
<Property name="MaxRetryAttempts" type="Cardinal">0</Property>
|
|
||||||
<Property name="MinorVersion" type="Integer">0</Property>
|
|
||||||
<Property name="NodeCollapsed" type="Boolean">False</Property>
|
|
||||||
<Property name="PauseInterval" type="Cardinal">0</Property>
|
|
||||||
<Property MultiValue="0" name="ProjectFile" type="WideString">%source_path%\Configuracion\Configuracion.dpk</Property>
|
|
||||||
<Property name="RegenerateResource" type="WordBool">True</Property>
|
|
||||||
<Property name="ReleaseVersion" type="Integer">0</Property>
|
|
||||||
<Property MultiValue="0" name="ResourceCompilerOptions" type="string"></Property>
|
|
||||||
<Property MultiValue="0" name="ResourceCompilerPath" type="string"></Property>
|
|
||||||
<Property name="ResourceCompilerType" type="TFBDelphiResourceCompiler">rcBorland</Property>
|
|
||||||
<Property name="RetryPauseInterval" type="Cardinal">1000</Property>
|
|
||||||
<Property MultiValue="0" name="StartingDir" type="WideString"></Property>
|
|
||||||
<Property name="SuppressStatusMessages" type="Boolean">False</Property>
|
|
||||||
<Property name="UpdateDofFile" type="Boolean">False</Property>
|
|
||||||
<Property name="UpdatePackageSource" type="Boolean">False</Property>
|
|
||||||
<Property name="UseEurekaLogCompiler" type="Boolean">False</Property>
|
|
||||||
<Property name="UseProjectSettings" type="TFBUseProjectSettings">[usPackages,usCompiler,usLinker,usVersionInfo]</Property>
|
|
||||||
<Property name="UsePropertySet" type="Boolean">False</Property>
|
|
||||||
<Property name="UseVersionFromDOF" type="Boolean">False</Property>
|
|
||||||
<Property MultiValue="1" name="VersionInfoKeys" type="WideString"><![CDATA[FileVersion=1.0.0.0
|
|
||||||
]]>
|
|
||||||
</Property>
|
|
||||||
<Property MultiValue="0" name="VersionInfoPropertySetName" type="string"></Property>
|
|
||||||
<Property name="WarningsAsError" type="Boolean">False</Property>
|
|
||||||
<Property name="WorkAroundD5Bug" type="WordBool">False</Property>
|
|
||||||
<Object Class="TDelphiCompilerOptions" XMLID="{8D02CDDF-9851-475C-BEF3-538FFBD93680}"><Property name="AlwaysUseConditionalsFromDOF" type="WordBool">False</Property>
|
|
||||||
<Property name="AlwaysUseDelphiLibraryPath" type="WordBool">False</Property>
|
|
||||||
<Property name="AlwaysUseDOFSearchPath" type="WordBool">False</Property>
|
|
||||||
<Property name="Assertions" type="WordBool">True</Property>
|
|
||||||
<Property name="AssignableConst" type="WordBool">False</Property>
|
|
||||||
<Property name="BoolEval" type="WordBool">False</Property>
|
|
||||||
<Property MultiValue="0" name="BPLOutputDir" type="WideString">%package_path%</Property>
|
|
||||||
<Property name="CompilerWarnings" type="TStrings"><![CDATA[]]>
|
|
||||||
</Property>
|
|
||||||
<Property MultiValue="0" name="Conditionals" type="WideString"></Property>
|
|
||||||
<Property name="ConsoleApp" type="WordBool">False</Property>
|
|
||||||
<Property MultiValue="0" name="DCPOutputDir" type="WideString">%modules_dcp_path%</Property>
|
|
||||||
<Property name="DebugInfo" type="WordBool">True</Property>
|
|
||||||
<Property MultiValue="0" name="DefaultNamespace" type="string"></Property>
|
|
||||||
<Property name="DefinitionsOnly" type="WordBool">True</Property>
|
|
||||||
<Property MultiValue="0" name="ExeDescription" type="WideString"></Property>
|
|
||||||
<Property name="ExportAllSymbols" type="WordBool">False</Property>
|
|
||||||
<Property name="ExtendedSyntax" type="WordBool">True</Property>
|
|
||||||
<Property name="GenerateDocumentation" type="Boolean">False</Property>
|
|
||||||
<Property name="GenerateHPP" type="WordBool">False</Property>
|
|
||||||
<Property name="HugeStrings" type="WordBool">True</Property>
|
|
||||||
<Property name="ImageBase" type="Cardinal">4194304</Property>
|
|
||||||
<Property name="IncludeNamespaces" type="WordBool">False</Property>
|
|
||||||
<Property name="IncludeRemoteSymbols" type="WordBool">False</Property>
|
|
||||||
<Property name="IncludeTD32" type="WordBool">False</Property>
|
|
||||||
<Property name="IOChecking" type="WordBool">True</Property>
|
|
||||||
<Property MultiValue="0" name="LibraryPath" type="WideString">%library_path%</Property>
|
|
||||||
<Property name="LinkerOutput" type="Integer">0</Property>
|
|
||||||
<Property name="LocalSymbols" type="WordBool">True</Property>
|
|
||||||
<Property name="Mapfile" type="Integer">3</Property>
|
|
||||||
<Property name="MaxStackSize" type="Cardinal">1048576</Property>
|
|
||||||
<Property name="MinStackSize" type="Cardinal">16384</Property>
|
|
||||||
<Property MultiValue="0" name="NamespacePrefixes" type="string"></Property>
|
|
||||||
<Property name="OpenStrings" type="WordBool">True</Property>
|
|
||||||
<Property name="Optimisation" type="WordBool">True</Property>
|
|
||||||
<Property MultiValue="0" name="OutputDir" type="WideString">%output_path%\Cliente</Property>
|
|
||||||
<Property name="OverflowChecking" type="WordBool">False</Property>
|
|
||||||
<Property MultiValue="0" name="Packages" type="WideString"></Property>
|
|
||||||
<Property name="RangeChecking" type="WordBool">False</Property>
|
|
||||||
<Property name="RecordFieldAlign" type="TFieldAlign">fa8</Property>
|
|
||||||
<Property name="ReferenceInfo" type="WordBool">True</Property>
|
|
||||||
<Property name="SafeDivide" type="WordBool">False</Property>
|
|
||||||
<Property MultiValue="0" name="SearchPath" type="WideString"></Property>
|
|
||||||
<Property name="ShowHints" type="WordBool">True</Property>
|
|
||||||
<Property name="ShowWarnings" type="WordBool">True</Property>
|
|
||||||
<Property name="StackFrames" type="WordBool">False</Property>
|
|
||||||
<Property name="TypedPointers" type="WordBool">False</Property>
|
|
||||||
<Property MultiValue="0" name="UnitAliases" type="WideString">WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE;</Property>
|
|
||||||
<Property MultiValue="0" name="UnitOutputDir" type="WideString"></Property>
|
|
||||||
<Property name="UseDebugDCU" type="WordBool">False</Property>
|
|
||||||
<Property name="UsePackages" type="WordBool">False</Property>
|
|
||||||
<Property name="VarStringChecks" type="WordBool">True</Property>
|
|
||||||
</Object>
|
|
||||||
</Object>
|
|
||||||
</Object>
|
</Object>
|
||||||
<Object Class="TGroupAction" XMLID="{B06E72B1-4F77-4ACA-AAAE-DE2674896609}"><Property MultiValue="0" name="ActionComment" type="string"></Property>
|
<Object Class="TGroupAction" XMLID="{B06E72B1-4F77-4ACA-AAAE-DE2674896609}"><Property MultiValue="0" name="ActionComment" type="string"></Property>
|
||||||
<Property MultiValue="0" name="ActionDescription" type="string">Módulos</Property>
|
<Property MultiValue="0" name="ActionDescription" type="string">Módulos</Property>
|
||||||
@ -1363,7 +1113,7 @@ Comments=
|
|||||||
<Property name="IsBreakPoint" type="WordBool">False</Property>
|
<Property name="IsBreakPoint" type="WordBool">False</Property>
|
||||||
<Property MultiValue="0" name="LogToVariable" type="string"></Property>
|
<Property MultiValue="0" name="LogToVariable" type="string"></Property>
|
||||||
<Property name="MaxRetryAttempts" type="Cardinal">0</Property>
|
<Property name="MaxRetryAttempts" type="Cardinal">0</Property>
|
||||||
<Property name="NodeCollapsed" type="Boolean">False</Property>
|
<Property name="NodeCollapsed" type="Boolean">True</Property>
|
||||||
<Property name="PauseInterval" type="Cardinal">0</Property>
|
<Property name="PauseInterval" type="Cardinal">0</Property>
|
||||||
<Property name="RetryPauseInterval" type="Cardinal">1000</Property>
|
<Property name="RetryPauseInterval" type="Cardinal">1000</Property>
|
||||||
<Property name="SuppressStatusMessages" type="Boolean">False</Property>
|
<Property name="SuppressStatusMessages" type="Boolean">False</Property>
|
||||||
@ -1391,7 +1141,7 @@ Comments=
|
|||||||
<Property MultiValue="0" name="IconFile" type="WideString"></Property>
|
<Property MultiValue="0" name="IconFile" type="WideString"></Property>
|
||||||
<Property name="IgnoreFailure" type="WordBool">False</Property>
|
<Property name="IgnoreFailure" type="WordBool">False</Property>
|
||||||
<Property name="IncludeCompileDate" type="WordBool">False</Property>
|
<Property name="IncludeCompileDate" type="WordBool">False</Property>
|
||||||
<Property name="IncludeVerInfo" type="WordBool">False</Property>
|
<Property name="IncludeVerInfo" type="WordBool">True</Property>
|
||||||
<Property name="IsAction" type="Boolean">True</Property>
|
<Property name="IsAction" type="Boolean">True</Property>
|
||||||
<Property name="IsBreakPoint" type="WordBool">False</Property>
|
<Property name="IsBreakPoint" type="WordBool">False</Property>
|
||||||
<Property name="IsDebug" type="WordBool">False</Property>
|
<Property name="IsDebug" type="WordBool">False</Property>
|
||||||
@ -1401,7 +1151,7 @@ Comments=
|
|||||||
<Property name="IsSpecial" type="WordBool">False</Property>
|
<Property name="IsSpecial" type="WordBool">False</Property>
|
||||||
<Property name="KeepCFG" type="Boolean">False</Property>
|
<Property name="KeepCFG" type="Boolean">False</Property>
|
||||||
<Property name="LinkProductVersionToFileVersion" type="Boolean">False</Property>
|
<Property name="LinkProductVersionToFileVersion" type="Boolean">False</Property>
|
||||||
<Property name="Locale" type="Integer">3081</Property>
|
<Property name="Locale" type="Integer">3082</Property>
|
||||||
<Property MultiValue="0" name="LogToVariable" type="string"></Property>
|
<Property MultiValue="0" name="LogToVariable" type="string"></Property>
|
||||||
<Property name="MajorVersion" type="Integer">1</Property>
|
<Property name="MajorVersion" type="Integer">1</Property>
|
||||||
<Property name="MaxRetryAttempts" type="Cardinal">0</Property>
|
<Property name="MaxRetryAttempts" type="Cardinal">0</Property>
|
||||||
@ -1410,7 +1160,7 @@ Comments=
|
|||||||
<Property name="PauseInterval" type="Cardinal">0</Property>
|
<Property name="PauseInterval" type="Cardinal">0</Property>
|
||||||
<Property MultiValue="0" name="ProjectFile" type="WideString">%source_path%\Modulos\FicherosEDI\Cliente\FicherosEDI.dpk</Property>
|
<Property MultiValue="0" name="ProjectFile" type="WideString">%source_path%\Modulos\FicherosEDI\Cliente\FicherosEDI.dpk</Property>
|
||||||
<Property name="RegenerateResource" type="WordBool">True</Property>
|
<Property name="RegenerateResource" type="WordBool">True</Property>
|
||||||
<Property name="ReleaseVersion" type="Integer">0</Property>
|
<Property name="ReleaseVersion" type="Integer">3</Property>
|
||||||
<Property MultiValue="0" name="ResourceCompilerOptions" type="string"></Property>
|
<Property MultiValue="0" name="ResourceCompilerOptions" type="string"></Property>
|
||||||
<Property MultiValue="0" name="ResourceCompilerPath" type="string"></Property>
|
<Property MultiValue="0" name="ResourceCompilerPath" type="string"></Property>
|
||||||
<Property name="ResourceCompilerType" type="TFBDelphiResourceCompiler">rcBorland</Property>
|
<Property name="ResourceCompilerType" type="TFBDelphiResourceCompiler">rcBorland</Property>
|
||||||
@ -1423,7 +1173,16 @@ Comments=
|
|||||||
<Property name="UseProjectSettings" type="TFBUseProjectSettings">[usPackages,usCompiler,usLinker,usVersionInfo]</Property>
|
<Property name="UseProjectSettings" type="TFBUseProjectSettings">[usPackages,usCompiler,usLinker,usVersionInfo]</Property>
|
||||||
<Property name="UsePropertySet" type="Boolean">False</Property>
|
<Property name="UsePropertySet" type="Boolean">False</Property>
|
||||||
<Property name="UseVersionFromDOF" type="Boolean">False</Property>
|
<Property name="UseVersionFromDOF" type="Boolean">False</Property>
|
||||||
<Property MultiValue="1" name="VersionInfoKeys" type="WideString"><![CDATA[FileVersion=1.0.0.0
|
<Property MultiValue="1" name="VersionInfoKeys" type="WideString"><![CDATA[CompanyName=
|
||||||
|
FileDescription=
|
||||||
|
FileVersion=1.0.3.0
|
||||||
|
InternalName=
|
||||||
|
LegalCopyright=
|
||||||
|
LegalTrademarks=
|
||||||
|
OriginalFilename=
|
||||||
|
ProductName=
|
||||||
|
ProductVersion=1.0.0.0
|
||||||
|
Comments=
|
||||||
]]>
|
]]>
|
||||||
</Property>
|
</Property>
|
||||||
<Property MultiValue="0" name="VersionInfoPropertySetName" type="string"></Property>
|
<Property MultiValue="0" name="VersionInfoPropertySetName" type="string"></Property>
|
||||||
@ -1632,7 +1391,7 @@ Comments=
|
|||||||
<Property MultiValue="0" name="IconFile" type="WideString"></Property>
|
<Property MultiValue="0" name="IconFile" type="WideString"></Property>
|
||||||
<Property name="IgnoreFailure" type="WordBool">False</Property>
|
<Property name="IgnoreFailure" type="WordBool">False</Property>
|
||||||
<Property name="IncludeCompileDate" type="WordBool">False</Property>
|
<Property name="IncludeCompileDate" type="WordBool">False</Property>
|
||||||
<Property name="IncludeVerInfo" type="WordBool">False</Property>
|
<Property name="IncludeVerInfo" type="WordBool">True</Property>
|
||||||
<Property name="IsAction" type="Boolean">True</Property>
|
<Property name="IsAction" type="Boolean">True</Property>
|
||||||
<Property name="IsBreakPoint" type="WordBool">False</Property>
|
<Property name="IsBreakPoint" type="WordBool">False</Property>
|
||||||
<Property name="IsDebug" type="WordBool">False</Property>
|
<Property name="IsDebug" type="WordBool">False</Property>
|
||||||
@ -1642,7 +1401,7 @@ Comments=
|
|||||||
<Property name="IsSpecial" type="WordBool">False</Property>
|
<Property name="IsSpecial" type="WordBool">False</Property>
|
||||||
<Property name="KeepCFG" type="Boolean">False</Property>
|
<Property name="KeepCFG" type="Boolean">False</Property>
|
||||||
<Property name="LinkProductVersionToFileVersion" type="Boolean">False</Property>
|
<Property name="LinkProductVersionToFileVersion" type="Boolean">False</Property>
|
||||||
<Property name="Locale" type="Integer">3081</Property>
|
<Property name="Locale" type="Integer">3082</Property>
|
||||||
<Property MultiValue="0" name="LogToVariable" type="string"></Property>
|
<Property MultiValue="0" name="LogToVariable" type="string"></Property>
|
||||||
<Property name="MajorVersion" type="Integer">1</Property>
|
<Property name="MajorVersion" type="Integer">1</Property>
|
||||||
<Property name="MaxRetryAttempts" type="Cardinal">0</Property>
|
<Property name="MaxRetryAttempts" type="Cardinal">0</Property>
|
||||||
@ -1651,7 +1410,7 @@ Comments=
|
|||||||
<Property name="PauseInterval" type="Cardinal">0</Property>
|
<Property name="PauseInterval" type="Cardinal">0</Property>
|
||||||
<Property MultiValue="0" name="ProjectFile" type="WideString">%source_path%\Modulos\VentasProceso\Cliente\VentasProceso.dpk</Property>
|
<Property MultiValue="0" name="ProjectFile" type="WideString">%source_path%\Modulos\VentasProceso\Cliente\VentasProceso.dpk</Property>
|
||||||
<Property name="RegenerateResource" type="WordBool">True</Property>
|
<Property name="RegenerateResource" type="WordBool">True</Property>
|
||||||
<Property name="ReleaseVersion" type="Integer">0</Property>
|
<Property name="ReleaseVersion" type="Integer">3</Property>
|
||||||
<Property MultiValue="0" name="ResourceCompilerOptions" type="string"></Property>
|
<Property MultiValue="0" name="ResourceCompilerOptions" type="string"></Property>
|
||||||
<Property MultiValue="0" name="ResourceCompilerPath" type="string"></Property>
|
<Property MultiValue="0" name="ResourceCompilerPath" type="string"></Property>
|
||||||
<Property name="ResourceCompilerType" type="TFBDelphiResourceCompiler">rcBorland</Property>
|
<Property name="ResourceCompilerType" type="TFBDelphiResourceCompiler">rcBorland</Property>
|
||||||
@ -1664,7 +1423,16 @@ Comments=
|
|||||||
<Property name="UseProjectSettings" type="TFBUseProjectSettings">[usPackages,usCompiler,usLinker,usVersionInfo]</Property>
|
<Property name="UseProjectSettings" type="TFBUseProjectSettings">[usPackages,usCompiler,usLinker,usVersionInfo]</Property>
|
||||||
<Property name="UsePropertySet" type="Boolean">False</Property>
|
<Property name="UsePropertySet" type="Boolean">False</Property>
|
||||||
<Property name="UseVersionFromDOF" type="Boolean">False</Property>
|
<Property name="UseVersionFromDOF" type="Boolean">False</Property>
|
||||||
<Property MultiValue="1" name="VersionInfoKeys" type="WideString"><![CDATA[FileVersion=1.0.0.0
|
<Property MultiValue="1" name="VersionInfoKeys" type="WideString"><![CDATA[CompanyName=
|
||||||
|
FileDescription=
|
||||||
|
FileVersion=1.0.3.0
|
||||||
|
InternalName=
|
||||||
|
LegalCopyright=
|
||||||
|
LegalTrademarks=
|
||||||
|
OriginalFilename=
|
||||||
|
ProductName=
|
||||||
|
ProductVersion=1.0.0.0
|
||||||
|
Comments=
|
||||||
]]>
|
]]>
|
||||||
</Property>
|
</Property>
|
||||||
<Property MultiValue="0" name="VersionInfoPropertySetName" type="string"></Property>
|
<Property MultiValue="0" name="VersionInfoPropertySetName" type="string"></Property>
|
||||||
@ -1748,7 +1516,7 @@ Comments=
|
|||||||
<Property MultiValue="0" name="IconFile" type="WideString"></Property>
|
<Property MultiValue="0" name="IconFile" type="WideString"></Property>
|
||||||
<Property name="IgnoreFailure" type="WordBool">False</Property>
|
<Property name="IgnoreFailure" type="WordBool">False</Property>
|
||||||
<Property name="IncludeCompileDate" type="WordBool">False</Property>
|
<Property name="IncludeCompileDate" type="WordBool">False</Property>
|
||||||
<Property name="IncludeVerInfo" type="WordBool">False</Property>
|
<Property name="IncludeVerInfo" type="WordBool">True</Property>
|
||||||
<Property name="IsAction" type="Boolean">True</Property>
|
<Property name="IsAction" type="Boolean">True</Property>
|
||||||
<Property name="IsBreakPoint" type="WordBool">False</Property>
|
<Property name="IsBreakPoint" type="WordBool">False</Property>
|
||||||
<Property name="IsDebug" type="WordBool">False</Property>
|
<Property name="IsDebug" type="WordBool">False</Property>
|
||||||
@ -1758,7 +1526,7 @@ Comments=
|
|||||||
<Property name="IsSpecial" type="WordBool">False</Property>
|
<Property name="IsSpecial" type="WordBool">False</Property>
|
||||||
<Property name="KeepCFG" type="Boolean">False</Property>
|
<Property name="KeepCFG" type="Boolean">False</Property>
|
||||||
<Property name="LinkProductVersionToFileVersion" type="Boolean">False</Property>
|
<Property name="LinkProductVersionToFileVersion" type="Boolean">False</Property>
|
||||||
<Property name="Locale" type="Integer">3081</Property>
|
<Property name="Locale" type="Integer">3082</Property>
|
||||||
<Property MultiValue="0" name="LogToVariable" type="string"></Property>
|
<Property MultiValue="0" name="LogToVariable" type="string"></Property>
|
||||||
<Property name="MajorVersion" type="Integer">1</Property>
|
<Property name="MajorVersion" type="Integer">1</Property>
|
||||||
<Property name="MaxRetryAttempts" type="Cardinal">0</Property>
|
<Property name="MaxRetryAttempts" type="Cardinal">0</Property>
|
||||||
@ -1767,7 +1535,7 @@ Comments=
|
|||||||
<Property name="PauseInterval" type="Cardinal">0</Property>
|
<Property name="PauseInterval" type="Cardinal">0</Property>
|
||||||
<Property MultiValue="0" name="ProjectFile" type="WideString">%source_path%\Modulos\ReferenciaGenerica\Cliente\ReferenciaGenerica.dpk</Property>
|
<Property MultiValue="0" name="ProjectFile" type="WideString">%source_path%\Modulos\ReferenciaGenerica\Cliente\ReferenciaGenerica.dpk</Property>
|
||||||
<Property name="RegenerateResource" type="WordBool">True</Property>
|
<Property name="RegenerateResource" type="WordBool">True</Property>
|
||||||
<Property name="ReleaseVersion" type="Integer">0</Property>
|
<Property name="ReleaseVersion" type="Integer">3</Property>
|
||||||
<Property MultiValue="0" name="ResourceCompilerOptions" type="string"></Property>
|
<Property MultiValue="0" name="ResourceCompilerOptions" type="string"></Property>
|
||||||
<Property MultiValue="0" name="ResourceCompilerPath" type="string"></Property>
|
<Property MultiValue="0" name="ResourceCompilerPath" type="string"></Property>
|
||||||
<Property name="ResourceCompilerType" type="TFBDelphiResourceCompiler">rcBorland</Property>
|
<Property name="ResourceCompilerType" type="TFBDelphiResourceCompiler">rcBorland</Property>
|
||||||
@ -1780,7 +1548,16 @@ Comments=
|
|||||||
<Property name="UseProjectSettings" type="TFBUseProjectSettings">[usPackages,usCompiler,usLinker,usVersionInfo]</Property>
|
<Property name="UseProjectSettings" type="TFBUseProjectSettings">[usPackages,usCompiler,usLinker,usVersionInfo]</Property>
|
||||||
<Property name="UsePropertySet" type="Boolean">False</Property>
|
<Property name="UsePropertySet" type="Boolean">False</Property>
|
||||||
<Property name="UseVersionFromDOF" type="Boolean">False</Property>
|
<Property name="UseVersionFromDOF" type="Boolean">False</Property>
|
||||||
<Property MultiValue="1" name="VersionInfoKeys" type="WideString"><![CDATA[FileVersion=1.0.0.0
|
<Property MultiValue="1" name="VersionInfoKeys" type="WideString"><![CDATA[CompanyName=
|
||||||
|
FileDescription=
|
||||||
|
FileVersion=1.0.3.0
|
||||||
|
InternalName=
|
||||||
|
LegalCopyright=
|
||||||
|
LegalTrademarks=
|
||||||
|
OriginalFilename=
|
||||||
|
ProductName=
|
||||||
|
ProductVersion=1.0.0.0
|
||||||
|
Comments=
|
||||||
]]>
|
]]>
|
||||||
</Property>
|
</Property>
|
||||||
<Property MultiValue="0" name="VersionInfoPropertySetName" type="string"></Property>
|
<Property MultiValue="0" name="VersionInfoPropertySetName" type="string"></Property>
|
||||||
@ -1864,7 +1641,7 @@ Comments=
|
|||||||
<Property MultiValue="0" name="IconFile" type="WideString"></Property>
|
<Property MultiValue="0" name="IconFile" type="WideString"></Property>
|
||||||
<Property name="IgnoreFailure" type="WordBool">False</Property>
|
<Property name="IgnoreFailure" type="WordBool">False</Property>
|
||||||
<Property name="IncludeCompileDate" type="WordBool">False</Property>
|
<Property name="IncludeCompileDate" type="WordBool">False</Property>
|
||||||
<Property name="IncludeVerInfo" type="WordBool">False</Property>
|
<Property name="IncludeVerInfo" type="WordBool">True</Property>
|
||||||
<Property name="IsAction" type="Boolean">True</Property>
|
<Property name="IsAction" type="Boolean">True</Property>
|
||||||
<Property name="IsBreakPoint" type="WordBool">False</Property>
|
<Property name="IsBreakPoint" type="WordBool">False</Property>
|
||||||
<Property name="IsDebug" type="WordBool">False</Property>
|
<Property name="IsDebug" type="WordBool">False</Property>
|
||||||
@ -1874,7 +1651,7 @@ Comments=
|
|||||||
<Property name="IsSpecial" type="WordBool">False</Property>
|
<Property name="IsSpecial" type="WordBool">False</Property>
|
||||||
<Property name="KeepCFG" type="Boolean">False</Property>
|
<Property name="KeepCFG" type="Boolean">False</Property>
|
||||||
<Property name="LinkProductVersionToFileVersion" type="Boolean">False</Property>
|
<Property name="LinkProductVersionToFileVersion" type="Boolean">False</Property>
|
||||||
<Property name="Locale" type="Integer">3081</Property>
|
<Property name="Locale" type="Integer">3082</Property>
|
||||||
<Property MultiValue="0" name="LogToVariable" type="string"></Property>
|
<Property MultiValue="0" name="LogToVariable" type="string"></Property>
|
||||||
<Property name="MajorVersion" type="Integer">1</Property>
|
<Property name="MajorVersion" type="Integer">1</Property>
|
||||||
<Property name="MaxRetryAttempts" type="Cardinal">0</Property>
|
<Property name="MaxRetryAttempts" type="Cardinal">0</Property>
|
||||||
@ -1883,7 +1660,7 @@ Comments=
|
|||||||
<Property name="PauseInterval" type="Cardinal">0</Property>
|
<Property name="PauseInterval" type="Cardinal">0</Property>
|
||||||
<Property MultiValue="0" name="ProjectFile" type="WideString">%source_path%\Modulos\Recepciones\Cliente\Recepciones.dpk</Property>
|
<Property MultiValue="0" name="ProjectFile" type="WideString">%source_path%\Modulos\Recepciones\Cliente\Recepciones.dpk</Property>
|
||||||
<Property name="RegenerateResource" type="WordBool">True</Property>
|
<Property name="RegenerateResource" type="WordBool">True</Property>
|
||||||
<Property name="ReleaseVersion" type="Integer">0</Property>
|
<Property name="ReleaseVersion" type="Integer">3</Property>
|
||||||
<Property MultiValue="0" name="ResourceCompilerOptions" type="string"></Property>
|
<Property MultiValue="0" name="ResourceCompilerOptions" type="string"></Property>
|
||||||
<Property MultiValue="0" name="ResourceCompilerPath" type="string"></Property>
|
<Property MultiValue="0" name="ResourceCompilerPath" type="string"></Property>
|
||||||
<Property name="ResourceCompilerType" type="TFBDelphiResourceCompiler">rcBorland</Property>
|
<Property name="ResourceCompilerType" type="TFBDelphiResourceCompiler">rcBorland</Property>
|
||||||
@ -1896,7 +1673,16 @@ Comments=
|
|||||||
<Property name="UseProjectSettings" type="TFBUseProjectSettings">[usPackages,usCompiler,usLinker,usVersionInfo]</Property>
|
<Property name="UseProjectSettings" type="TFBUseProjectSettings">[usPackages,usCompiler,usLinker,usVersionInfo]</Property>
|
||||||
<Property name="UsePropertySet" type="Boolean">False</Property>
|
<Property name="UsePropertySet" type="Boolean">False</Property>
|
||||||
<Property name="UseVersionFromDOF" type="Boolean">False</Property>
|
<Property name="UseVersionFromDOF" type="Boolean">False</Property>
|
||||||
<Property MultiValue="1" name="VersionInfoKeys" type="WideString"><![CDATA[FileVersion=1.0.0.0
|
<Property MultiValue="1" name="VersionInfoKeys" type="WideString"><![CDATA[CompanyName=
|
||||||
|
FileDescription=
|
||||||
|
FileVersion=1.0.3.0
|
||||||
|
InternalName=
|
||||||
|
LegalCopyright=
|
||||||
|
LegalTrademarks=
|
||||||
|
OriginalFilename=
|
||||||
|
ProductName=
|
||||||
|
ProductVersion=1.0.0.0
|
||||||
|
Comments=
|
||||||
]]>
|
]]>
|
||||||
</Property>
|
</Property>
|
||||||
<Property MultiValue="0" name="VersionInfoPropertySetName" type="string"></Property>
|
<Property MultiValue="0" name="VersionInfoPropertySetName" type="string"></Property>
|
||||||
@ -1980,7 +1766,7 @@ Comments=
|
|||||||
<Property MultiValue="0" name="IconFile" type="WideString"></Property>
|
<Property MultiValue="0" name="IconFile" type="WideString"></Property>
|
||||||
<Property name="IgnoreFailure" type="WordBool">False</Property>
|
<Property name="IgnoreFailure" type="WordBool">False</Property>
|
||||||
<Property name="IncludeCompileDate" type="WordBool">False</Property>
|
<Property name="IncludeCompileDate" type="WordBool">False</Property>
|
||||||
<Property name="IncludeVerInfo" type="WordBool">False</Property>
|
<Property name="IncludeVerInfo" type="WordBool">True</Property>
|
||||||
<Property name="IsAction" type="Boolean">True</Property>
|
<Property name="IsAction" type="Boolean">True</Property>
|
||||||
<Property name="IsBreakPoint" type="WordBool">False</Property>
|
<Property name="IsBreakPoint" type="WordBool">False</Property>
|
||||||
<Property name="IsDebug" type="WordBool">False</Property>
|
<Property name="IsDebug" type="WordBool">False</Property>
|
||||||
@ -1990,7 +1776,7 @@ Comments=
|
|||||||
<Property name="IsSpecial" type="WordBool">False</Property>
|
<Property name="IsSpecial" type="WordBool">False</Property>
|
||||||
<Property name="KeepCFG" type="Boolean">False</Property>
|
<Property name="KeepCFG" type="Boolean">False</Property>
|
||||||
<Property name="LinkProductVersionToFileVersion" type="Boolean">False</Property>
|
<Property name="LinkProductVersionToFileVersion" type="Boolean">False</Property>
|
||||||
<Property name="Locale" type="Integer">3081</Property>
|
<Property name="Locale" type="Integer">3082</Property>
|
||||||
<Property MultiValue="0" name="LogToVariable" type="string"></Property>
|
<Property MultiValue="0" name="LogToVariable" type="string"></Property>
|
||||||
<Property name="MajorVersion" type="Integer">1</Property>
|
<Property name="MajorVersion" type="Integer">1</Property>
|
||||||
<Property name="MaxRetryAttempts" type="Cardinal">0</Property>
|
<Property name="MaxRetryAttempts" type="Cardinal">0</Property>
|
||||||
@ -2012,7 +1798,16 @@ Comments=
|
|||||||
<Property name="UseProjectSettings" type="TFBUseProjectSettings">[usPackages,usCompiler,usLinker,usVersionInfo]</Property>
|
<Property name="UseProjectSettings" type="TFBUseProjectSettings">[usPackages,usCompiler,usLinker,usVersionInfo]</Property>
|
||||||
<Property name="UsePropertySet" type="Boolean">False</Property>
|
<Property name="UsePropertySet" type="Boolean">False</Property>
|
||||||
<Property name="UseVersionFromDOF" type="Boolean">False</Property>
|
<Property name="UseVersionFromDOF" type="Boolean">False</Property>
|
||||||
<Property MultiValue="1" name="VersionInfoKeys" type="WideString"><![CDATA[FileVersion=1.0.0.0
|
<Property MultiValue="1" name="VersionInfoKeys" type="WideString"><![CDATA[CompanyName=
|
||||||
|
FileDescription=
|
||||||
|
FileVersion=1.0.0.0
|
||||||
|
InternalName=
|
||||||
|
LegalCopyright=
|
||||||
|
LegalTrademarks=
|
||||||
|
OriginalFilename=
|
||||||
|
ProductName=
|
||||||
|
ProductVersion=1.0.0.0
|
||||||
|
Comments=
|
||||||
]]>
|
]]>
|
||||||
</Property>
|
</Property>
|
||||||
<Property MultiValue="0" name="VersionInfoPropertySetName" type="string"></Property>
|
<Property MultiValue="0" name="VersionInfoPropertySetName" type="string"></Property>
|
||||||
@ -2096,7 +1891,7 @@ Comments=
|
|||||||
<Property MultiValue="0" name="IconFile" type="WideString"></Property>
|
<Property MultiValue="0" name="IconFile" type="WideString"></Property>
|
||||||
<Property name="IgnoreFailure" type="WordBool">False</Property>
|
<Property name="IgnoreFailure" type="WordBool">False</Property>
|
||||||
<Property name="IncludeCompileDate" type="WordBool">False</Property>
|
<Property name="IncludeCompileDate" type="WordBool">False</Property>
|
||||||
<Property name="IncludeVerInfo" type="WordBool">False</Property>
|
<Property name="IncludeVerInfo" type="WordBool">True</Property>
|
||||||
<Property name="IsAction" type="Boolean">True</Property>
|
<Property name="IsAction" type="Boolean">True</Property>
|
||||||
<Property name="IsBreakPoint" type="WordBool">False</Property>
|
<Property name="IsBreakPoint" type="WordBool">False</Property>
|
||||||
<Property name="IsDebug" type="WordBool">False</Property>
|
<Property name="IsDebug" type="WordBool">False</Property>
|
||||||
@ -2106,7 +1901,7 @@ Comments=
|
|||||||
<Property name="IsSpecial" type="WordBool">False</Property>
|
<Property name="IsSpecial" type="WordBool">False</Property>
|
||||||
<Property name="KeepCFG" type="Boolean">False</Property>
|
<Property name="KeepCFG" type="Boolean">False</Property>
|
||||||
<Property name="LinkProductVersionToFileVersion" type="Boolean">False</Property>
|
<Property name="LinkProductVersionToFileVersion" type="Boolean">False</Property>
|
||||||
<Property name="Locale" type="Integer">3081</Property>
|
<Property name="Locale" type="Integer">3082</Property>
|
||||||
<Property MultiValue="0" name="LogToVariable" type="string"></Property>
|
<Property MultiValue="0" name="LogToVariable" type="string"></Property>
|
||||||
<Property name="MajorVersion" type="Integer">1</Property>
|
<Property name="MajorVersion" type="Integer">1</Property>
|
||||||
<Property name="MaxRetryAttempts" type="Cardinal">0</Property>
|
<Property name="MaxRetryAttempts" type="Cardinal">0</Property>
|
||||||
@ -2115,7 +1910,7 @@ Comments=
|
|||||||
<Property name="PauseInterval" type="Cardinal">0</Property>
|
<Property name="PauseInterval" type="Cardinal">0</Property>
|
||||||
<Property MultiValue="0" name="ProjectFile" type="WideString">%source_path%\Modulos\Traspasos\Cliente\Traspasos.dpk</Property>
|
<Property MultiValue="0" name="ProjectFile" type="WideString">%source_path%\Modulos\Traspasos\Cliente\Traspasos.dpk</Property>
|
||||||
<Property name="RegenerateResource" type="WordBool">True</Property>
|
<Property name="RegenerateResource" type="WordBool">True</Property>
|
||||||
<Property name="ReleaseVersion" type="Integer">0</Property>
|
<Property name="ReleaseVersion" type="Integer">3</Property>
|
||||||
<Property MultiValue="0" name="ResourceCompilerOptions" type="string"></Property>
|
<Property MultiValue="0" name="ResourceCompilerOptions" type="string"></Property>
|
||||||
<Property MultiValue="0" name="ResourceCompilerPath" type="string"></Property>
|
<Property MultiValue="0" name="ResourceCompilerPath" type="string"></Property>
|
||||||
<Property name="ResourceCompilerType" type="TFBDelphiResourceCompiler">rcBorland</Property>
|
<Property name="ResourceCompilerType" type="TFBDelphiResourceCompiler">rcBorland</Property>
|
||||||
@ -2128,7 +1923,16 @@ Comments=
|
|||||||
<Property name="UseProjectSettings" type="TFBUseProjectSettings">[usPackages,usCompiler,usLinker,usVersionInfo]</Property>
|
<Property name="UseProjectSettings" type="TFBUseProjectSettings">[usPackages,usCompiler,usLinker,usVersionInfo]</Property>
|
||||||
<Property name="UsePropertySet" type="Boolean">False</Property>
|
<Property name="UsePropertySet" type="Boolean">False</Property>
|
||||||
<Property name="UseVersionFromDOF" type="Boolean">False</Property>
|
<Property name="UseVersionFromDOF" type="Boolean">False</Property>
|
||||||
<Property MultiValue="1" name="VersionInfoKeys" type="WideString"><![CDATA[FileVersion=1.0.0.0
|
<Property MultiValue="1" name="VersionInfoKeys" type="WideString"><![CDATA[CompanyName=
|
||||||
|
FileDescription=
|
||||||
|
FileVersion=1.0.3.0
|
||||||
|
InternalName=
|
||||||
|
LegalCopyright=
|
||||||
|
LegalTrademarks=
|
||||||
|
OriginalFilename=
|
||||||
|
ProductName=
|
||||||
|
ProductVersion=1.0.0.0
|
||||||
|
Comments=
|
||||||
]]>
|
]]>
|
||||||
</Property>
|
</Property>
|
||||||
<Property MultiValue="0" name="VersionInfoPropertySetName" type="string"></Property>
|
<Property MultiValue="0" name="VersionInfoPropertySetName" type="string"></Property>
|
||||||
@ -2212,7 +2016,7 @@ Comments=
|
|||||||
<Property MultiValue="0" name="IconFile" type="WideString"></Property>
|
<Property MultiValue="0" name="IconFile" type="WideString"></Property>
|
||||||
<Property name="IgnoreFailure" type="WordBool">False</Property>
|
<Property name="IgnoreFailure" type="WordBool">False</Property>
|
||||||
<Property name="IncludeCompileDate" type="WordBool">False</Property>
|
<Property name="IncludeCompileDate" type="WordBool">False</Property>
|
||||||
<Property name="IncludeVerInfo" type="WordBool">False</Property>
|
<Property name="IncludeVerInfo" type="WordBool">True</Property>
|
||||||
<Property name="IsAction" type="Boolean">True</Property>
|
<Property name="IsAction" type="Boolean">True</Property>
|
||||||
<Property name="IsBreakPoint" type="WordBool">False</Property>
|
<Property name="IsBreakPoint" type="WordBool">False</Property>
|
||||||
<Property name="IsDebug" type="WordBool">False</Property>
|
<Property name="IsDebug" type="WordBool">False</Property>
|
||||||
@ -2222,7 +2026,7 @@ Comments=
|
|||||||
<Property name="IsSpecial" type="WordBool">False</Property>
|
<Property name="IsSpecial" type="WordBool">False</Property>
|
||||||
<Property name="KeepCFG" type="Boolean">False</Property>
|
<Property name="KeepCFG" type="Boolean">False</Property>
|
||||||
<Property name="LinkProductVersionToFileVersion" type="Boolean">False</Property>
|
<Property name="LinkProductVersionToFileVersion" type="Boolean">False</Property>
|
||||||
<Property name="Locale" type="Integer">3081</Property>
|
<Property name="Locale" type="Integer">3082</Property>
|
||||||
<Property MultiValue="0" name="LogToVariable" type="string"></Property>
|
<Property MultiValue="0" name="LogToVariable" type="string"></Property>
|
||||||
<Property name="MajorVersion" type="Integer">1</Property>
|
<Property name="MajorVersion" type="Integer">1</Property>
|
||||||
<Property name="MaxRetryAttempts" type="Cardinal">0</Property>
|
<Property name="MaxRetryAttempts" type="Cardinal">0</Property>
|
||||||
@ -2231,7 +2035,7 @@ Comments=
|
|||||||
<Property name="PauseInterval" type="Cardinal">0</Property>
|
<Property name="PauseInterval" type="Cardinal">0</Property>
|
||||||
<Property MultiValue="0" name="ProjectFile" type="WideString">%source_path%\Modulos\Stock\Cliente\Stock.dpk</Property>
|
<Property MultiValue="0" name="ProjectFile" type="WideString">%source_path%\Modulos\Stock\Cliente\Stock.dpk</Property>
|
||||||
<Property name="RegenerateResource" type="WordBool">True</Property>
|
<Property name="RegenerateResource" type="WordBool">True</Property>
|
||||||
<Property name="ReleaseVersion" type="Integer">0</Property>
|
<Property name="ReleaseVersion" type="Integer">2</Property>
|
||||||
<Property MultiValue="0" name="ResourceCompilerOptions" type="string"></Property>
|
<Property MultiValue="0" name="ResourceCompilerOptions" type="string"></Property>
|
||||||
<Property MultiValue="0" name="ResourceCompilerPath" type="string"></Property>
|
<Property MultiValue="0" name="ResourceCompilerPath" type="string"></Property>
|
||||||
<Property name="ResourceCompilerType" type="TFBDelphiResourceCompiler">rcBorland</Property>
|
<Property name="ResourceCompilerType" type="TFBDelphiResourceCompiler">rcBorland</Property>
|
||||||
@ -2244,7 +2048,16 @@ Comments=
|
|||||||
<Property name="UseProjectSettings" type="TFBUseProjectSettings">[usPackages,usCompiler,usLinker,usVersionInfo]</Property>
|
<Property name="UseProjectSettings" type="TFBUseProjectSettings">[usPackages,usCompiler,usLinker,usVersionInfo]</Property>
|
||||||
<Property name="UsePropertySet" type="Boolean">False</Property>
|
<Property name="UsePropertySet" type="Boolean">False</Property>
|
||||||
<Property name="UseVersionFromDOF" type="Boolean">False</Property>
|
<Property name="UseVersionFromDOF" type="Boolean">False</Property>
|
||||||
<Property MultiValue="1" name="VersionInfoKeys" type="WideString"><![CDATA[FileVersion=1.0.0.0
|
<Property MultiValue="1" name="VersionInfoKeys" type="WideString"><![CDATA[CompanyName=
|
||||||
|
FileDescription=
|
||||||
|
FileVersion=1.0.2.0
|
||||||
|
InternalName=
|
||||||
|
LegalCopyright=
|
||||||
|
LegalTrademarks=
|
||||||
|
OriginalFilename=
|
||||||
|
ProductName=
|
||||||
|
ProductVersion=1.0.0.0
|
||||||
|
Comments=
|
||||||
]]>
|
]]>
|
||||||
</Property>
|
</Property>
|
||||||
<Property MultiValue="0" name="VersionInfoPropertySetName" type="string"></Property>
|
<Property MultiValue="0" name="VersionInfoPropertySetName" type="string"></Property>
|
||||||
@ -2347,7 +2160,7 @@ Comments=
|
|||||||
<Property MultiValue="0" name="IconFile" type="WideString">%project_path%\Resources\Iconos\Cliente.ico</Property>
|
<Property MultiValue="0" name="IconFile" type="WideString">%project_path%\Resources\Iconos\Cliente.ico</Property>
|
||||||
<Property name="IgnoreFailure" type="WordBool">False</Property>
|
<Property name="IgnoreFailure" type="WordBool">False</Property>
|
||||||
<Property name="IncludeCompileDate" type="WordBool">True</Property>
|
<Property name="IncludeCompileDate" type="WordBool">True</Property>
|
||||||
<Property name="IncludeVerInfo" type="WordBool">False</Property>
|
<Property name="IncludeVerInfo" type="WordBool">True</Property>
|
||||||
<Property name="IsAction" type="Boolean">True</Property>
|
<Property name="IsAction" type="Boolean">True</Property>
|
||||||
<Property name="IsBreakPoint" type="WordBool">False</Property>
|
<Property name="IsBreakPoint" type="WordBool">False</Property>
|
||||||
<Property name="IsDebug" type="WordBool">False</Property>
|
<Property name="IsDebug" type="WordBool">False</Property>
|
||||||
@ -2357,16 +2170,16 @@ Comments=
|
|||||||
<Property name="IsSpecial" type="WordBool">False</Property>
|
<Property name="IsSpecial" type="WordBool">False</Property>
|
||||||
<Property name="KeepCFG" type="Boolean">False</Property>
|
<Property name="KeepCFG" type="Boolean">False</Property>
|
||||||
<Property name="LinkProductVersionToFileVersion" type="Boolean">False</Property>
|
<Property name="LinkProductVersionToFileVersion" type="Boolean">False</Property>
|
||||||
<Property name="Locale" type="Integer">3081</Property>
|
<Property name="Locale" type="Integer">3082</Property>
|
||||||
<Property MultiValue="0" name="LogToVariable" type="string"></Property>
|
<Property MultiValue="0" name="LogToVariable" type="string"></Property>
|
||||||
<Property name="MajorVersion" type="Integer">1</Property>
|
<Property name="MajorVersion" type="Integer">2</Property>
|
||||||
<Property name="MaxRetryAttempts" type="Cardinal">0</Property>
|
<Property name="MaxRetryAttempts" type="Cardinal">0</Property>
|
||||||
<Property name="MinorVersion" type="Integer">0</Property>
|
<Property name="MinorVersion" type="Integer">1</Property>
|
||||||
<Property name="NodeCollapsed" type="Boolean">False</Property>
|
<Property name="NodeCollapsed" type="Boolean">False</Property>
|
||||||
<Property name="PauseInterval" type="Cardinal">0</Property>
|
<Property name="PauseInterval" type="Cardinal">0</Property>
|
||||||
<Property MultiValue="0" name="ProjectFile" type="WideString">%source_path%\Cliente\AdminPV.dpr</Property>
|
<Property MultiValue="0" name="ProjectFile" type="WideString">%source_path%\Cliente\AdminPV.dpr</Property>
|
||||||
<Property name="RegenerateResource" type="WordBool">True</Property>
|
<Property name="RegenerateResource" type="WordBool">True</Property>
|
||||||
<Property name="ReleaseVersion" type="Integer">0</Property>
|
<Property name="ReleaseVersion" type="Integer">1</Property>
|
||||||
<Property MultiValue="0" name="ResourceCompilerOptions" type="string"></Property>
|
<Property MultiValue="0" name="ResourceCompilerOptions" type="string"></Property>
|
||||||
<Property MultiValue="0" name="ResourceCompilerPath" type="string"></Property>
|
<Property MultiValue="0" name="ResourceCompilerPath" type="string"></Property>
|
||||||
<Property name="ResourceCompilerType" type="TFBDelphiResourceCompiler">rcBorland</Property>
|
<Property name="ResourceCompilerType" type="TFBDelphiResourceCompiler">rcBorland</Property>
|
||||||
@ -2379,7 +2192,17 @@ Comments=
|
|||||||
<Property name="UseProjectSettings" type="TFBUseProjectSettings">[usCompiler,usLinker,usVersionInfo]</Property>
|
<Property name="UseProjectSettings" type="TFBUseProjectSettings">[usCompiler,usLinker,usVersionInfo]</Property>
|
||||||
<Property name="UsePropertySet" type="Boolean">True</Property>
|
<Property name="UsePropertySet" type="Boolean">True</Property>
|
||||||
<Property name="UseVersionFromDOF" type="Boolean">True</Property>
|
<Property name="UseVersionFromDOF" type="Boolean">True</Property>
|
||||||
<Property MultiValue="1" name="VersionInfoKeys" type="WideString"><![CDATA[FileVersion=1.0.0.0
|
<Property MultiValue="1" name="VersionInfoKeys" type="WideString"><![CDATA[CompanyName=Rodax Software S.L.
|
||||||
|
FileDescription=
|
||||||
|
FileVersion=2.1.1.0
|
||||||
|
InternalName=Administración de puntos de venta
|
||||||
|
LegalCopyright=
|
||||||
|
LegalTrademarks=
|
||||||
|
OriginalFilename=
|
||||||
|
ProductName=Administración de puntos de venta
|
||||||
|
ProductVersion=1.0.0.0
|
||||||
|
Comments=
|
||||||
|
CompileDate=miércoles, 12 de marzo de 2008 12:35
|
||||||
]]>
|
]]>
|
||||||
</Property>
|
</Property>
|
||||||
<Property MultiValue="0" name="VersionInfoPropertySetName" type="string"></Property>
|
<Property MultiValue="0" name="VersionInfoPropertySetName" type="string"></Property>
|
||||||
@ -2414,7 +2237,7 @@ Comments=
|
|||||||
<Property MultiValue="0" name="LibraryPath" type="WideString">%library_path%;%modules_dcp_path%</Property>
|
<Property MultiValue="0" name="LibraryPath" type="WideString">%library_path%;%modules_dcp_path%</Property>
|
||||||
<Property name="LinkerOutput" type="Integer">0</Property>
|
<Property name="LinkerOutput" type="Integer">0</Property>
|
||||||
<Property name="LocalSymbols" type="WordBool">True</Property>
|
<Property name="LocalSymbols" type="WordBool">True</Property>
|
||||||
<Property name="Mapfile" type="Integer">0</Property>
|
<Property name="Mapfile" type="Integer">3</Property>
|
||||||
<Property name="MaxStackSize" type="Cardinal">1048576</Property>
|
<Property name="MaxStackSize" type="Cardinal">1048576</Property>
|
||||||
<Property name="MinStackSize" type="Cardinal">16384</Property>
|
<Property name="MinStackSize" type="Cardinal">16384</Property>
|
||||||
<Property MultiValue="0" name="NamespacePrefixes" type="string"></Property>
|
<Property MultiValue="0" name="NamespacePrefixes" type="string"></Property>
|
||||||
@ -2422,7 +2245,7 @@ Comments=
|
|||||||
<Property name="Optimisation" type="WordBool">True</Property>
|
<Property name="Optimisation" type="WordBool">True</Property>
|
||||||
<Property MultiValue="0" name="OutputDir" type="WideString">%output_path%\Cliente</Property>
|
<Property MultiValue="0" name="OutputDir" type="WideString">%output_path%\Cliente</Property>
|
||||||
<Property name="OverflowChecking" type="WordBool">False</Property>
|
<Property name="OverflowChecking" type="WordBool">False</Property>
|
||||||
<Property MultiValue="0" name="Packages" type="WideString">BaseD10;Configuracion;ControlesBaseD10;Usuarios;FicherosEDI;VentasProceso;VentasTerminadas;ReferenciaGenerica</Property>
|
<Property MultiValue="0" name="Packages" type="WideString">BaseD10;ControlesBaseD10;ApplicationBase;FicherosEDI;VentasProceso;VentasTerminadas;ReferenciaGenerica</Property>
|
||||||
<Property name="RangeChecking" type="WordBool">False</Property>
|
<Property name="RangeChecking" type="WordBool">False</Property>
|
||||||
<Property name="RecordFieldAlign" type="TFieldAlign">fa8</Property>
|
<Property name="RecordFieldAlign" type="TFieldAlign">fa8</Property>
|
||||||
<Property name="ReferenceInfo" type="WordBool">True</Property>
|
<Property name="ReferenceInfo" type="WordBool">True</Property>
|
||||||
@ -2479,12 +2302,12 @@ Comments=
|
|||||||
<Property MultiValue="0" name="LogToVariable" type="string"></Property>
|
<Property MultiValue="0" name="LogToVariable" type="string"></Property>
|
||||||
<Property name="MajorVersion" type="Integer">2</Property>
|
<Property name="MajorVersion" type="Integer">2</Property>
|
||||||
<Property name="MaxRetryAttempts" type="Cardinal">0</Property>
|
<Property name="MaxRetryAttempts" type="Cardinal">0</Property>
|
||||||
<Property name="MinorVersion" type="Integer">0</Property>
|
<Property name="MinorVersion" type="Integer">1</Property>
|
||||||
<Property name="NodeCollapsed" type="Boolean">False</Property>
|
<Property name="NodeCollapsed" type="Boolean">False</Property>
|
||||||
<Property name="PauseInterval" type="Cardinal">0</Property>
|
<Property name="PauseInterval" type="Cardinal">0</Property>
|
||||||
<Property MultiValue="0" name="ProjectFile" type="WideString">%source_path%\CargaEDI\CargaEDI.dpr</Property>
|
<Property MultiValue="0" name="ProjectFile" type="WideString">%source_path%\CargaEDI\CargaEDI.dpr</Property>
|
||||||
<Property name="RegenerateResource" type="WordBool">True</Property>
|
<Property name="RegenerateResource" type="WordBool">True</Property>
|
||||||
<Property name="ReleaseVersion" type="Integer">0</Property>
|
<Property name="ReleaseVersion" type="Integer">1</Property>
|
||||||
<Property MultiValue="0" name="ResourceCompilerOptions" type="string"></Property>
|
<Property MultiValue="0" name="ResourceCompilerOptions" type="string"></Property>
|
||||||
<Property MultiValue="0" name="ResourceCompilerPath" type="string"></Property>
|
<Property MultiValue="0" name="ResourceCompilerPath" type="string"></Property>
|
||||||
<Property name="ResourceCompilerType" type="TFBDelphiResourceCompiler">rcBorland</Property>
|
<Property name="ResourceCompilerType" type="TFBDelphiResourceCompiler">rcBorland</Property>
|
||||||
@ -2499,7 +2322,7 @@ Comments=
|
|||||||
<Property name="UseVersionFromDOF" type="Boolean">False</Property>
|
<Property name="UseVersionFromDOF" type="Boolean">False</Property>
|
||||||
<Property MultiValue="1" name="VersionInfoKeys" type="WideString"><![CDATA[CompanyName=
|
<Property MultiValue="1" name="VersionInfoKeys" type="WideString"><![CDATA[CompanyName=
|
||||||
FileDescription=
|
FileDescription=
|
||||||
FileVersion=2.0.0.0
|
FileVersion=2.1.1.0
|
||||||
InternalName=
|
InternalName=
|
||||||
LegalCopyright=
|
LegalCopyright=
|
||||||
LegalTrademarks=
|
LegalTrademarks=
|
||||||
@ -2549,7 +2372,7 @@ Comments=
|
|||||||
<Property name="Optimisation" type="WordBool">True</Property>
|
<Property name="Optimisation" type="WordBool">True</Property>
|
||||||
<Property MultiValue="0" name="OutputDir" type="WideString">%output_path%\Cliente</Property>
|
<Property MultiValue="0" name="OutputDir" type="WideString">%output_path%\Cliente</Property>
|
||||||
<Property name="OverflowChecking" type="WordBool">False</Property>
|
<Property name="OverflowChecking" type="WordBool">False</Property>
|
||||||
<Property MultiValue="0" name="Packages" type="WideString">BaseD10;Configuracion;FicherosEDI</Property>
|
<Property MultiValue="0" name="Packages" type="WideString">BaseD10;FicherosEDI</Property>
|
||||||
<Property name="RangeChecking" type="WordBool">False</Property>
|
<Property name="RangeChecking" type="WordBool">False</Property>
|
||||||
<Property name="RecordFieldAlign" type="TFieldAlign">fa8</Property>
|
<Property name="RecordFieldAlign" type="TFieldAlign">fa8</Property>
|
||||||
<Property name="ReferenceInfo" type="WordBool">True</Property>
|
<Property name="ReferenceInfo" type="WordBool">True</Property>
|
||||||
@ -2567,6 +2390,149 @@ Comments=
|
|||||||
</Object>
|
</Object>
|
||||||
</Object>
|
</Object>
|
||||||
</Object>
|
</Object>
|
||||||
|
<Object Class="TGroupAction" XMLID="{16BBD182-B44C-4EA2-BD93-D93C06B9A41D}"><Property MultiValue="0" name="ActionComment" type="string"></Property>
|
||||||
|
<Property MultiValue="0" name="ActionDescription" type="string">Servidor</Property>
|
||||||
|
<Property name="ActionTextColor" type="Cardinal">0</Property>
|
||||||
|
<Property MultiValue="0" name="ActionTypeID" type="string"></Property>
|
||||||
|
<Property MultiValue="0" name="Description" type="string">Servidor</Property>
|
||||||
|
<Property name="Enabled" type="WordBool">True</Property>
|
||||||
|
<Property name="ExpandActionLogTitle" type="Boolean">True</Property>
|
||||||
|
<Property name="IgnoreFailure" type="WordBool">False</Property>
|
||||||
|
<Property name="IsAction" type="Boolean">True</Property>
|
||||||
|
<Property name="IsBreakPoint" type="WordBool">False</Property>
|
||||||
|
<Property MultiValue="0" name="LogToVariable" type="string"></Property>
|
||||||
|
<Property name="MaxRetryAttempts" type="Cardinal">0</Property>
|
||||||
|
<Property name="NodeCollapsed" type="Boolean">False</Property>
|
||||||
|
<Property name="PauseInterval" type="Cardinal">0</Property>
|
||||||
|
<Property name="RetryPauseInterval" type="Cardinal">1000</Property>
|
||||||
|
<Property name="SuppressStatusMessages" type="Boolean">False</Property>
|
||||||
|
<Object Class="TDelphiCompilerAction" XMLID="{BCC90A20-6E68-4CF0-B93D-1182528436DC}"><Property MultiValue="0" name="ActionComment" type="string"></Property>
|
||||||
|
<Property MultiValue="1" name="ActionDescription" type="string"><![CDATA[Compile Servidor\AdminPV_Server.dpr]]>
|
||||||
|
</Property>
|
||||||
|
<Property name="ActionTextColor" type="Cardinal">0</Property>
|
||||||
|
<Property MultiValue="0" name="ActionTypeID" type="string"></Property>
|
||||||
|
<Property name="AllowImplicitImport" type="Boolean">True</Property>
|
||||||
|
<Property name="AlwaysUseConditionalsFromDOF" type="WordBool">False</Property>
|
||||||
|
<Property name="AutoIncBuild" type="WordBool">False</Property>
|
||||||
|
<Property name="AutoUpdateFileVersion" type="Boolean">True</Property>
|
||||||
|
<Property name="BuildAll" type="WordBool">True</Property>
|
||||||
|
<Property name="BuildVersion" type="Integer">0</Property>
|
||||||
|
<Property name="CodePage" type="Integer">1252</Property>
|
||||||
|
<Property name="CompilerVersion" type="Integer">12</Property>
|
||||||
|
<Property MultiValue="0" name="ConfigName" type="string">Release</Property>
|
||||||
|
<Property name="DebugVersionNumbers" type="Boolean">False</Property>
|
||||||
|
<Property MultiValue="1" name="Description" type="string"><![CDATA[Compile Servidor\AdminPV_Server.dpr]]>
|
||||||
|
</Property>
|
||||||
|
<Property name="Enabled" type="WordBool">True</Property>
|
||||||
|
<Property name="ExpandActionLogTitle" type="Boolean">True</Property>
|
||||||
|
<Property MultiValue="0" name="ExtraCommandline" type="WideString"></Property>
|
||||||
|
<Property name="HintsAsError" type="Boolean">False</Property>
|
||||||
|
<Property MultiValue="0" name="IconFile" type="WideString">%project_path%\Resources\Iconos\Servidor.ico</Property>
|
||||||
|
<Property name="IgnoreFailure" type="WordBool">False</Property>
|
||||||
|
<Property name="IncludeCompileDate" type="WordBool">True</Property>
|
||||||
|
<Property name="IncludeVerInfo" type="WordBool">True</Property>
|
||||||
|
<Property name="IsAction" type="Boolean">True</Property>
|
||||||
|
<Property name="IsBreakPoint" type="WordBool">False</Property>
|
||||||
|
<Property name="IsDebug" type="WordBool">False</Property>
|
||||||
|
<Property name="IsDLL" type="WordBool">False</Property>
|
||||||
|
<Property name="IsPreRelease" type="WordBool">False</Property>
|
||||||
|
<Property name="IsPrivate" type="WordBool">False</Property>
|
||||||
|
<Property name="IsSpecial" type="WordBool">False</Property>
|
||||||
|
<Property name="KeepCFG" type="Boolean">False</Property>
|
||||||
|
<Property name="LinkProductVersionToFileVersion" type="Boolean">True</Property>
|
||||||
|
<Property name="Locale" type="Integer">3082</Property>
|
||||||
|
<Property MultiValue="0" name="LogToVariable" type="string"></Property>
|
||||||
|
<Property name="MajorVersion" type="Integer">2</Property>
|
||||||
|
<Property name="MaxRetryAttempts" type="Cardinal">0</Property>
|
||||||
|
<Property name="MinorVersion" type="Integer">1</Property>
|
||||||
|
<Property name="NodeCollapsed" type="Boolean">False</Property>
|
||||||
|
<Property name="PauseInterval" type="Cardinal">0</Property>
|
||||||
|
<Property MultiValue="0" name="ProjectFile" type="WideString">%source_path%\Servidor\AdminPV_Server.dpr</Property>
|
||||||
|
<Property name="RegenerateResource" type="WordBool">True</Property>
|
||||||
|
<Property name="ReleaseVersion" type="Integer">1</Property>
|
||||||
|
<Property MultiValue="0" name="ResourceCompilerOptions" type="string"></Property>
|
||||||
|
<Property MultiValue="0" name="ResourceCompilerPath" type="string"></Property>
|
||||||
|
<Property name="ResourceCompilerType" type="TFBDelphiResourceCompiler">rcBorland</Property>
|
||||||
|
<Property name="RetryPauseInterval" type="Cardinal">1000</Property>
|
||||||
|
<Property MultiValue="0" name="StartingDir" type="WideString">%source_path%\Servidor\</Property>
|
||||||
|
<Property name="SuppressStatusMessages" type="Boolean">False</Property>
|
||||||
|
<Property name="UpdateDofFile" type="Boolean">True</Property>
|
||||||
|
<Property name="UpdatePackageSource" type="Boolean">False</Property>
|
||||||
|
<Property name="UseEurekaLogCompiler" type="Boolean">False</Property>
|
||||||
|
<Property name="UseProjectSettings" type="TFBUseProjectSettings">[usPackages,usCompiler,usLinker,usVersionInfo]</Property>
|
||||||
|
<Property name="UsePropertySet" type="Boolean">False</Property>
|
||||||
|
<Property name="UseVersionFromDOF" type="Boolean">True</Property>
|
||||||
|
<Property MultiValue="1" name="VersionInfoKeys" type="WideString"><![CDATA[CompanyName=Rodax Software S.L.
|
||||||
|
FileDescription=
|
||||||
|
FileVersion=2.1.1.0
|
||||||
|
InternalName=
|
||||||
|
LegalCopyright=
|
||||||
|
LegalTrademarks=
|
||||||
|
OriginalFilename=
|
||||||
|
ProductName=AdminPV_Server
|
||||||
|
ProductVersion=2.1.0.0
|
||||||
|
Comments=
|
||||||
|
CompileDate=lunes, 10 de marzo de 2008 13:15
|
||||||
|
]]>
|
||||||
|
</Property>
|
||||||
|
<Property MultiValue="0" name="VersionInfoPropertySetName" type="string"></Property>
|
||||||
|
<Property name="WarningsAsError" type="Boolean">False</Property>
|
||||||
|
<Property name="WorkAroundD5Bug" type="WordBool">False</Property>
|
||||||
|
<Object Class="TDelphiCompilerOptions" XMLID="{50F8565E-B514-4194-9050-D3B469F29817}"><Property name="AlwaysUseConditionalsFromDOF" type="WordBool">False</Property>
|
||||||
|
<Property name="AlwaysUseDelphiLibraryPath" type="WordBool">False</Property>
|
||||||
|
<Property name="AlwaysUseDOFSearchPath" type="WordBool">False</Property>
|
||||||
|
<Property name="Assertions" type="WordBool">True</Property>
|
||||||
|
<Property name="AssignableConst" type="WordBool">False</Property>
|
||||||
|
<Property name="BoolEval" type="WordBool">False</Property>
|
||||||
|
<Property MultiValue="0" name="BPLOutputDir" type="WideString"></Property>
|
||||||
|
<Property name="CompilerWarnings" type="TStrings"><![CDATA[]]>
|
||||||
|
</Property>
|
||||||
|
<Property MultiValue="0" name="Conditionals" type="WideString"></Property>
|
||||||
|
<Property name="ConsoleApp" type="WordBool">False</Property>
|
||||||
|
<Property MultiValue="0" name="DCPOutputDir" type="WideString"></Property>
|
||||||
|
<Property name="DebugInfo" type="WordBool">False</Property>
|
||||||
|
<Property MultiValue="0" name="DefaultNamespace" type="string"></Property>
|
||||||
|
<Property name="DefinitionsOnly" type="WordBool">False</Property>
|
||||||
|
<Property MultiValue="0" name="ExeDescription" type="WideString"></Property>
|
||||||
|
<Property name="ExportAllSymbols" type="WordBool">False</Property>
|
||||||
|
<Property name="ExtendedSyntax" type="WordBool">True</Property>
|
||||||
|
<Property name="GenerateDocumentation" type="Boolean">False</Property>
|
||||||
|
<Property name="GenerateHPP" type="WordBool">False</Property>
|
||||||
|
<Property name="HugeStrings" type="WordBool">True</Property>
|
||||||
|
<Property name="ImageBase" type="Cardinal">4194304</Property>
|
||||||
|
<Property name="IncludeNamespaces" type="WordBool">False</Property>
|
||||||
|
<Property name="IncludeRemoteSymbols" type="WordBool">False</Property>
|
||||||
|
<Property name="IncludeTD32" type="WordBool">False</Property>
|
||||||
|
<Property name="IOChecking" type="WordBool">True</Property>
|
||||||
|
<Property MultiValue="0" name="LibraryPath" type="WideString">%library_path%</Property>
|
||||||
|
<Property name="LinkerOutput" type="Integer">0</Property>
|
||||||
|
<Property name="LocalSymbols" type="WordBool">False</Property>
|
||||||
|
<Property name="Mapfile" type="Integer">3</Property>
|
||||||
|
<Property name="MaxStackSize" type="Cardinal">1048576</Property>
|
||||||
|
<Property name="MinStackSize" type="Cardinal">16384</Property>
|
||||||
|
<Property MultiValue="0" name="NamespacePrefixes" type="string"></Property>
|
||||||
|
<Property name="OpenStrings" type="WordBool">True</Property>
|
||||||
|
<Property name="Optimisation" type="WordBool">True</Property>
|
||||||
|
<Property MultiValue="0" name="OutputDir" type="WideString">%output_path%\Servidor</Property>
|
||||||
|
<Property name="OverflowChecking" type="WordBool">False</Property>
|
||||||
|
<Property MultiValue="0" name="Packages" type="WideString"></Property>
|
||||||
|
<Property name="RangeChecking" type="WordBool">False</Property>
|
||||||
|
<Property name="RecordFieldAlign" type="TFieldAlign">fa8</Property>
|
||||||
|
<Property name="ReferenceInfo" type="WordBool">False</Property>
|
||||||
|
<Property name="SafeDivide" type="WordBool">False</Property>
|
||||||
|
<Property MultiValue="0" name="SearchPath" type="WideString">.\</Property>
|
||||||
|
<Property name="ShowHints" type="WordBool">True</Property>
|
||||||
|
<Property name="ShowWarnings" type="WordBool">True</Property>
|
||||||
|
<Property name="StackFrames" type="WordBool">True</Property>
|
||||||
|
<Property name="TypedPointers" type="WordBool">False</Property>
|
||||||
|
<Property MultiValue="0" name="UnitAliases" type="WideString">WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE;</Property>
|
||||||
|
<Property MultiValue="0" name="UnitOutputDir" type="WideString">.\</Property>
|
||||||
|
<Property name="UseDebugDCU" type="WordBool">False</Property>
|
||||||
|
<Property name="UsePackages" type="WordBool">False</Property>
|
||||||
|
<Property name="VarStringChecks" type="WordBool">True</Property>
|
||||||
|
</Object>
|
||||||
|
</Object>
|
||||||
|
</Object>
|
||||||
<Object Class="TGroupAction" XMLID="{B6FF24D6-FAF7-4A2C-A3DD-82476DA27DD2}"><Property MultiValue="0" name="ActionComment" type="string"></Property>
|
<Object Class="TGroupAction" XMLID="{B6FF24D6-FAF7-4A2C-A3DD-82476DA27DD2}"><Property MultiValue="0" name="ActionComment" type="string"></Property>
|
||||||
<Property MultiValue="1" name="ActionDescription" type="string"><![CDATA[Comprimir ejecutables]]>
|
<Property MultiValue="1" name="ActionDescription" type="string"><![CDATA[Comprimir ejecutables]]>
|
||||||
</Property>
|
</Property>
|
||||||
@ -2581,7 +2547,7 @@ Comments=
|
|||||||
<Property name="IsBreakPoint" type="WordBool">False</Property>
|
<Property name="IsBreakPoint" type="WordBool">False</Property>
|
||||||
<Property MultiValue="0" name="LogToVariable" type="string"></Property>
|
<Property MultiValue="0" name="LogToVariable" type="string"></Property>
|
||||||
<Property name="MaxRetryAttempts" type="Cardinal">0</Property>
|
<Property name="MaxRetryAttempts" type="Cardinal">0</Property>
|
||||||
<Property name="NodeCollapsed" type="Boolean">False</Property>
|
<Property name="NodeCollapsed" type="Boolean">True</Property>
|
||||||
<Property name="PauseInterval" type="Cardinal">0</Property>
|
<Property name="PauseInterval" type="Cardinal">0</Property>
|
||||||
<Property name="RetryPauseInterval" type="Cardinal">1000</Property>
|
<Property name="RetryPauseInterval" type="Cardinal">1000</Property>
|
||||||
<Property name="SuppressStatusMessages" type="Boolean">False</Property>
|
<Property name="SuppressStatusMessages" type="Boolean">False</Property>
|
||||||
@ -2834,7 +2800,7 @@ Comments=
|
|||||||
<Property name="VariableType" type="TFBVariableType">vtProject</Property>
|
<Property name="VariableType" type="TFBVariableType">vtProject</Property>
|
||||||
</Object>
|
</Object>
|
||||||
<Object Class="TFBVariable" XMLID="{E1F16954-518E-44DB-8598-32BD70D0B552}"><Property MultiValue="0" name="Comment" type="string"></Property>
|
<Object Class="TFBVariable" XMLID="{E1F16954-518E-44DB-8598-32BD70D0B552}"><Property MultiValue="0" name="Comment" type="string"></Property>
|
||||||
<Property MultiValue="0" name="DefaultValue" type="string">%DELPHI2007DIR%\Lib\Indy10;%project_path%\Lib;%project_path%\Lib\RemObjects\RemObjects_SDK;%project_path%\Lib\RemObjects\Data_Abstract;%project_path%\Lib\CCPack;%project_path%\Lib\CFPack;%project_path%\Lib\GUISDK;%project_path%\Lib\PluginSDK;%project_path%\Lib\DevExpressVCL;%project_path%\Lib\FastReport3;%project_path%\Lib\JCL;%project_path%\Lib\JVCL;%project_path%\Lib\PngComponents;%project_path%\Lib\cxIntl5;%project_path%\Lib\cxIntlPrintSys3;%project_path%\Lib\TB2k+TBX;%project_path%\Lib\Mustangpeak\MPCommonLib;%project_path%\Lib\Mustangpeak\EasyListview;%project_path%\Lib\SDAC;</Property>
|
<Property MultiValue="0" name="DefaultValue" type="string">%DELPHI2007DIR%\Lib\Indy10;%project_path%\Lib;%project_path%\Lib\RemObjects\RemObjects_SDK;%project_path%\Lib\RemObjects\Data_Abstract;%project_path%\Lib\CCPack;%project_path%\Lib\CFPack;%project_path%\Lib\GUISDK;%project_path%\Lib\PluginSDK;%project_path%\Lib\DevExpressVCL;%project_path%\Lib\FastReport3;%project_path%\Lib\JCL;%project_path%\Lib\JVCL;%project_path%\Lib\PngComponents;%project_path%\Lib\cxIntl5;%project_path%\Lib\cxIntlPrintSys3;%project_path%\Lib\TB2k+TBX;%project_path%\Lib\Mustangpeak\MPCommonLib;%project_path%\Lib\Mustangpeak\EasyListview;%project_path%\Lib\JSDialog;%project_path%\Lib\UserControl</Property>
|
||||||
<Property name="IsMacro" type="Boolean">True</Property>
|
<Property name="IsMacro" type="Boolean">True</Property>
|
||||||
<Property name="IsPersistent" type="Boolean">False</Property>
|
<Property name="IsPersistent" type="Boolean">False</Property>
|
||||||
<Property name="MakeEnv" type="Boolean">False</Property>
|
<Property name="MakeEnv" type="Boolean">False</Property>
|
||||||
|
|||||||
@ -873,6 +873,118 @@ ON [RDX_VENTASEDI]
|
|||||||
TO [public]
|
TO [public]
|
||||||
GO
|
GO
|
||||||
|
|
||||||
|
|
||||||
|
/*--------------- SQL ---------------*/
|
||||||
|
|
||||||
|
IF EXISTS (SELECT * FROM dbo.sysobjects WHERE id = OBJECT_ID(N'[RDX_USUARIOS]') AND OBJECTPROPERTY(id, N'IsUserTable') = 1)
|
||||||
|
DROP TABLE [RDX_USUARIOS]
|
||||||
|
GO
|
||||||
|
|
||||||
|
CREATE TABLE [RDX_USUARIOS](
|
||||||
|
[ID] int NOT NULL,
|
||||||
|
[USERNAME] varchar(30) NULL,
|
||||||
|
[LOGIN] varchar(30) NULL,
|
||||||
|
[PASS] varchar(255) NULL,
|
||||||
|
[PASSEXPIRED] datetime NULL,
|
||||||
|
[BLOQUEADO] smallint NULL,
|
||||||
|
[EMAIL] varchar(150) NULL,
|
||||||
|
[USERDAYSSUN] int NULL,
|
||||||
|
[PRIVILEGED] int NULL,
|
||||||
|
[TIPO] char(1) NULL,
|
||||||
|
[ID_PERFIL] int NULL,
|
||||||
|
[CHECKSUM] varchar(250) NULL
|
||||||
|
) ON [PRIMARY]
|
||||||
|
GO
|
||||||
|
|
||||||
|
ALTER TABLE [RDX_USUARIOS]
|
||||||
|
ADD CONSTRAINT [RDX_USUARIOS_PK]
|
||||||
|
PRIMARY KEY CLUSTERED ([ID])
|
||||||
|
ON [PRIMARY]
|
||||||
|
GO
|
||||||
|
|
||||||
|
|
||||||
|
IF EXISTS (SELECT * FROM dbo.sysobjects WHERE id = OBJECT_ID(N'[RDX_USUARIOS_EVENTOS]') AND OBJECTPROPERTY(id, N'IsUserTable') = 1)
|
||||||
|
DROP TABLE [RDX_USUARIOS_EVENTOS]
|
||||||
|
GO
|
||||||
|
|
||||||
|
CREATE TABLE [RDX_USUARIOS_EVENTOS](
|
||||||
|
[APLICACION] VARCHAR(250),
|
||||||
|
[ID_USUARIO] INT,
|
||||||
|
[FECHA] CHAR(10),
|
||||||
|
[HORA] CHAR(8),
|
||||||
|
[FORM] VARCHAR(250),
|
||||||
|
[TITULO_FORM] VARCHAR(100),
|
||||||
|
[EVENTO] VARCHAR(50),
|
||||||
|
[NOTAS] TEXT,
|
||||||
|
[TNAME] VARCHAR(20)
|
||||||
|
) ON [PRIMARY]
|
||||||
|
GO
|
||||||
|
|
||||||
|
|
||||||
|
IF EXISTS (SELECT * FROM dbo.sysobjects WHERE id = OBJECT_ID(N'[RDX_USUARIOS_LOGON]') AND OBJECTPROPERTY(id, N'IsUserTable') = 1)
|
||||||
|
DROP TABLE [RDX_USUARIOS_LOGON]
|
||||||
|
GO
|
||||||
|
|
||||||
|
CREATE TABLE [RDX_USUARIOS_LOGON] (
|
||||||
|
[LOGONID] CHAR(38) NOT NULL,
|
||||||
|
[ID_USUARIO] INT,
|
||||||
|
[APLICACION] VARCHAR(50),
|
||||||
|
[EQUIPO] VARCHAR(50),
|
||||||
|
[DATA] VARCHAR(14)
|
||||||
|
)
|
||||||
|
GO
|
||||||
|
|
||||||
|
ALTER TABLE [RDX_USUARIOS_LOGON]
|
||||||
|
ADD CONSTRAINT [RDX_USUARIOS_LOGON_PK]
|
||||||
|
PRIMARY KEY CLUSTERED ([LOGONID])
|
||||||
|
ON [PRIMARY]
|
||||||
|
GO
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
IF EXISTS (SELECT * FROM dbo.sysobjects WHERE id = OBJECT_ID(N'[RDX_PERMISOS]') AND OBJECTPROPERTY(id, N'IsUserTable') = 1)
|
||||||
|
DROP TABLE [RDX_PERMISOS]
|
||||||
|
GO
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TABLE [RDX_PERMISOS] (
|
||||||
|
[ID] INT NOT NULL,
|
||||||
|
[ID_USUARIO] INT,
|
||||||
|
[MODULO] VARCHAR(50),
|
||||||
|
[NOMBRECOMP] VARCHAR(50),
|
||||||
|
[CHECKSUM] VARCHAR(250)
|
||||||
|
)
|
||||||
|
GO
|
||||||
|
|
||||||
|
ALTER TABLE [RDX_PERMISOS]
|
||||||
|
ADD CONSTRAINT [RDX_PERMISOS_PK]
|
||||||
|
PRIMARY KEY CLUSTERED ([ID])
|
||||||
|
ON [PRIMARY]
|
||||||
|
GO
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
IF EXISTS (SELECT * FROM dbo.sysobjects WHERE id = OBJECT_ID(N'[RDX_PERMISOSEX]') AND OBJECTPROPERTY(id, N'IsUserTable') = 1)
|
||||||
|
DROP TABLE [RDX_PERMISOSEX]
|
||||||
|
GO
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TABLE [RDX_PERMISOSEX] (
|
||||||
|
[ID] INT NOT NULL,
|
||||||
|
[ID_USUARIO] INT,
|
||||||
|
[MODULO] VARCHAR(50),
|
||||||
|
[NOMBRECOMP] VARCHAR(50),
|
||||||
|
[NOMBREFORM] VARCHAR(50),
|
||||||
|
[CHECKSUM] VARCHAR(250)
|
||||||
|
)
|
||||||
|
GO
|
||||||
|
|
||||||
|
ALTER TABLE [RDX_PERMISOSEX]
|
||||||
|
ADD CONSTRAINT [RDX_PERMISOSEX_PK]
|
||||||
|
PRIMARY KEY CLUSTERED ([ID])
|
||||||
|
ON [PRIMARY]
|
||||||
|
GO
|
||||||
|
|
||||||
/* EOF */
|
/* EOF */
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -4,10 +4,10 @@
|
|||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<ItemGroup />
|
<ItemGroup />
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
<Projects Include="ApplicationBase\ApplicationBase.dproj" />
|
||||||
<Projects Include="Base\BaseD10.dproj" />
|
<Projects Include="Base\BaseD10.dproj" />
|
||||||
<Projects Include="CargaEDI\CargaEDI.dproj" />
|
<Projects Include="CargaEDI\CargaEDI.dproj" />
|
||||||
<Projects Include="Cliente\AdminPV.dproj" />
|
<Projects Include="Cliente\AdminPV.dproj" />
|
||||||
<Projects Include="Configuracion\Configuracion.dproj" />
|
|
||||||
<Projects Include="ControlesBase\ControlesBaseD10.dproj" />
|
<Projects Include="ControlesBase\ControlesBaseD10.dproj" />
|
||||||
<Projects Include="Modulos\Devoluciones\Cliente\Devoluciones.dproj" />
|
<Projects Include="Modulos\Devoluciones\Cliente\Devoluciones.dproj" />
|
||||||
<Projects Include="Modulos\FicherosEDI\Cliente\FicherosEDI.dproj" />
|
<Projects Include="Modulos\FicherosEDI\Cliente\FicherosEDI.dproj" />
|
||||||
@ -19,7 +19,6 @@
|
|||||||
<Projects Include="Modulos\VentasProceso\Cliente\VentasProceso.dproj" />
|
<Projects Include="Modulos\VentasProceso\Cliente\VentasProceso.dproj" />
|
||||||
<Projects Include="Modulos\VentasTerminadas\Cliente\VentasTerminadas.dproj" />
|
<Projects Include="Modulos\VentasTerminadas\Cliente\VentasTerminadas.dproj" />
|
||||||
<Projects Include="Servidor\AdminPV_Server.dproj" />
|
<Projects Include="Servidor\AdminPV_Server.dproj" />
|
||||||
<Projects Include="Usuarios\Usuarios.dproj" />
|
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ProjectExtensions>
|
<ProjectExtensions>
|
||||||
<Borland.Personality>Default.Personality</Borland.Personality>
|
<Borland.Personality>Default.Personality</Borland.Personality>
|
||||||
@ -27,15 +26,6 @@
|
|||||||
<BorlandProject>
|
<BorlandProject>
|
||||||
<BorlandProject xmlns=""><Default.Personality></Default.Personality></BorlandProject></BorlandProject>
|
<BorlandProject xmlns=""><Default.Personality></Default.Personality></BorlandProject></BorlandProject>
|
||||||
</ProjectExtensions>
|
</ProjectExtensions>
|
||||||
<Target Name="AdminPV_Server">
|
|
||||||
<MSBuild Projects="Servidor\AdminPV_Server.dproj" Targets="" />
|
|
||||||
</Target>
|
|
||||||
<Target Name="AdminPV_Server:Clean">
|
|
||||||
<MSBuild Projects="Servidor\AdminPV_Server.dproj" Targets="Clean" />
|
|
||||||
</Target>
|
|
||||||
<Target Name="AdminPV_Server:Make">
|
|
||||||
<MSBuild Projects="Servidor\AdminPV_Server.dproj" Targets="Make" />
|
|
||||||
</Target>
|
|
||||||
<Target Name="BaseD10">
|
<Target Name="BaseD10">
|
||||||
<MSBuild Projects="Base\BaseD10.dproj" Targets="" />
|
<MSBuild Projects="Base\BaseD10.dproj" Targets="" />
|
||||||
</Target>
|
</Target>
|
||||||
@ -63,23 +53,14 @@
|
|||||||
<Target Name="Parametros:Make">
|
<Target Name="Parametros:Make">
|
||||||
<MSBuild Projects="Modulos\Parametros\Cliente\Parametros.dproj" Targets="Make" />
|
<MSBuild Projects="Modulos\Parametros\Cliente\Parametros.dproj" Targets="Make" />
|
||||||
</Target>
|
</Target>
|
||||||
<Target Name="Usuarios">
|
<Target Name="ApplicationBase">
|
||||||
<MSBuild Projects="Usuarios\Usuarios.dproj" Targets="" />
|
<MSBuild Projects="ApplicationBase\ApplicationBase.dproj" Targets="" />
|
||||||
</Target>
|
</Target>
|
||||||
<Target Name="Usuarios:Clean">
|
<Target Name="ApplicationBase:Clean">
|
||||||
<MSBuild Projects="Usuarios\Usuarios.dproj" Targets="Clean" />
|
<MSBuild Projects="ApplicationBase\ApplicationBase.dproj" Targets="Clean" />
|
||||||
</Target>
|
</Target>
|
||||||
<Target Name="Usuarios:Make">
|
<Target Name="ApplicationBase:Make">
|
||||||
<MSBuild Projects="Usuarios\Usuarios.dproj" Targets="Make" />
|
<MSBuild Projects="ApplicationBase\ApplicationBase.dproj" Targets="Make" />
|
||||||
</Target>
|
|
||||||
<Target Name="Configuracion">
|
|
||||||
<MSBuild Projects="Configuracion\Configuracion.dproj" Targets="" />
|
|
||||||
</Target>
|
|
||||||
<Target Name="Configuracion:Clean">
|
|
||||||
<MSBuild Projects="Configuracion\Configuracion.dproj" Targets="Clean" />
|
|
||||||
</Target>
|
|
||||||
<Target Name="Configuracion:Make">
|
|
||||||
<MSBuild Projects="Configuracion\Configuracion.dproj" Targets="Make" />
|
|
||||||
</Target>
|
</Target>
|
||||||
<Target Name="FicherosEDI">
|
<Target Name="FicherosEDI">
|
||||||
<MSBuild Projects="Modulos\FicherosEDI\Cliente\FicherosEDI.dproj" Targets="" />
|
<MSBuild Projects="Modulos\FicherosEDI\Cliente\FicherosEDI.dproj" Targets="" />
|
||||||
@ -171,14 +152,23 @@
|
|||||||
<Target Name="AdminPV:Make">
|
<Target Name="AdminPV:Make">
|
||||||
<MSBuild Projects="Cliente\AdminPV.dproj" Targets="Make" />
|
<MSBuild Projects="Cliente\AdminPV.dproj" Targets="Make" />
|
||||||
</Target>
|
</Target>
|
||||||
|
<Target Name="AdminPV_Server">
|
||||||
|
<MSBuild Projects="Servidor\AdminPV_Server.dproj" Targets="" />
|
||||||
|
</Target>
|
||||||
|
<Target Name="AdminPV_Server:Clean">
|
||||||
|
<MSBuild Projects="Servidor\AdminPV_Server.dproj" Targets="Clean" />
|
||||||
|
</Target>
|
||||||
|
<Target Name="AdminPV_Server:Make">
|
||||||
|
<MSBuild Projects="Servidor\AdminPV_Server.dproj" Targets="Make" />
|
||||||
|
</Target>
|
||||||
<Target Name="Build">
|
<Target Name="Build">
|
||||||
<CallTarget Targets="AdminPV_Server;BaseD10;ControlesBaseD10;Parametros;Usuarios;Configuracion;FicherosEDI;VentasTerminadas;VentasProceso;ReferenciaGenerica;Recepciones;Devoluciones;Traspasos;Stock;CargaEDI;AdminPV" />
|
<CallTarget Targets="BaseD10;ControlesBaseD10;Parametros;ApplicationBase;FicherosEDI;VentasTerminadas;VentasProceso;ReferenciaGenerica;Recepciones;Devoluciones;Traspasos;Stock;CargaEDI;AdminPV;AdminPV_Server" />
|
||||||
</Target>
|
</Target>
|
||||||
<Target Name="Clean">
|
<Target Name="Clean">
|
||||||
<CallTarget Targets="AdminPV_Server:Clean;BaseD10:Clean;ControlesBaseD10:Clean;Parametros:Clean;Usuarios:Clean;Configuracion:Clean;FicherosEDI:Clean;VentasTerminadas:Clean;VentasProceso:Clean;ReferenciaGenerica:Clean;Recepciones:Clean;Devoluciones:Clean;Traspasos:Clean;Stock:Clean;CargaEDI:Clean;AdminPV:Clean" />
|
<CallTarget Targets="BaseD10:Clean;ControlesBaseD10:Clean;Parametros:Clean;ApplicationBase:Clean;FicherosEDI:Clean;VentasTerminadas:Clean;VentasProceso:Clean;ReferenciaGenerica:Clean;Recepciones:Clean;Devoluciones:Clean;Traspasos:Clean;Stock:Clean;CargaEDI:Clean;AdminPV:Clean;AdminPV_Server:Clean" />
|
||||||
</Target>
|
</Target>
|
||||||
<Target Name="Make">
|
<Target Name="Make">
|
||||||
<CallTarget Targets="AdminPV_Server:Make;BaseD10:Make;ControlesBaseD10:Make;Parametros:Make;Usuarios:Make;Configuracion:Make;FicherosEDI:Make;VentasTerminadas:Make;VentasProceso:Make;ReferenciaGenerica:Make;Recepciones:Make;Devoluciones:Make;Traspasos:Make;Stock:Make;CargaEDI:Make;AdminPV:Make" />
|
<CallTarget Targets="BaseD10:Make;ControlesBaseD10:Make;Parametros:Make;ApplicationBase:Make;FicherosEDI:Make;VentasTerminadas:Make;VentasProceso:Make;ReferenciaGenerica:Make;Recepciones:Make;Devoluciones:Make;Traspasos:Make;Stock:Make;CargaEDI:Make;AdminPV:Make;AdminPV_Server:Make" />
|
||||||
</Target>
|
</Target>
|
||||||
<Import Condition="Exists('$(MSBuildBinPath)\Borland.Group.Targets')" Project="$(MSBuildBinPath)\Borland.Group.Targets" />
|
<Import Condition="Exists('$(MSBuildBinPath)\Borland.Group.Targets')" Project="$(MSBuildBinPath)\Borland.Group.Targets" />
|
||||||
</Project>
|
</Project>
|
||||||
2
Source/AdminPVGroup_prjgroup.tvsconfig
Normal file
2
Source/AdminPVGroup_prjgroup.tvsconfig
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
<?xml version="1.0"?>
|
||||||
|
<TgConfig Version="3" SubLevelDisabled="False" />
|
||||||
697
Source/ApplicationBase/ApplicationBase.bdsproj
Normal file
697
Source/ApplicationBase/ApplicationBase.bdsproj
Normal file
@ -0,0 +1,697 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<BorlandProject>
|
||||||
|
<PersonalityInfo>
|
||||||
|
<Option>
|
||||||
|
<Option Name="Personality">Delphi.Personality</Option>
|
||||||
|
<Option Name="ProjectType"></Option>
|
||||||
|
<Option Name="Version">1.0</Option>
|
||||||
|
<Option Name="GUID">{14A25028-EC1A-430C-ADE3-13C264E9BAC2}</Option>
|
||||||
|
</Option>
|
||||||
|
</PersonalityInfo>
|
||||||
|
<Delphi.Personality>
|
||||||
|
<Source>
|
||||||
|
<Source Name="MainSource">ApplicationBase.dpk</Source>
|
||||||
|
</Source>
|
||||||
|
<FileVersion>
|
||||||
|
<FileVersion Name="Version">7.0</FileVersion>
|
||||||
|
</FileVersion>
|
||||||
|
<Compiler>
|
||||||
|
<Compiler Name="A">8</Compiler>
|
||||||
|
<Compiler Name="B">0</Compiler>
|
||||||
|
<Compiler Name="C">1</Compiler>
|
||||||
|
<Compiler Name="D">1</Compiler>
|
||||||
|
<Compiler Name="E">0</Compiler>
|
||||||
|
<Compiler Name="F">0</Compiler>
|
||||||
|
<Compiler Name="G">1</Compiler>
|
||||||
|
<Compiler Name="H">1</Compiler>
|
||||||
|
<Compiler Name="I">1</Compiler>
|
||||||
|
<Compiler Name="J">0</Compiler>
|
||||||
|
<Compiler Name="K">0</Compiler>
|
||||||
|
<Compiler Name="L">1</Compiler>
|
||||||
|
<Compiler Name="M">0</Compiler>
|
||||||
|
<Compiler Name="N">1</Compiler>
|
||||||
|
<Compiler Name="O">1</Compiler>
|
||||||
|
<Compiler Name="P">1</Compiler>
|
||||||
|
<Compiler Name="Q">0</Compiler>
|
||||||
|
<Compiler Name="R">0</Compiler>
|
||||||
|
<Compiler Name="S">0</Compiler>
|
||||||
|
<Compiler Name="T">0</Compiler>
|
||||||
|
<Compiler Name="U">0</Compiler>
|
||||||
|
<Compiler Name="V">1</Compiler>
|
||||||
|
<Compiler Name="W">0</Compiler>
|
||||||
|
<Compiler Name="X">1</Compiler>
|
||||||
|
<Compiler Name="Y">1</Compiler>
|
||||||
|
<Compiler Name="Z">1</Compiler>
|
||||||
|
<Compiler Name="ShowHints">True</Compiler>
|
||||||
|
<Compiler Name="ShowWarnings">True</Compiler>
|
||||||
|
<Compiler Name="UnitAliases">WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE;</Compiler>
|
||||||
|
<Compiler Name="NamespacePrefix"></Compiler>
|
||||||
|
<Compiler Name="GenerateDocumentation">False</Compiler>
|
||||||
|
<Compiler Name="DefaultNamespace"></Compiler>
|
||||||
|
<Compiler Name="SymbolDeprecated">True</Compiler>
|
||||||
|
<Compiler Name="SymbolLibrary">True</Compiler>
|
||||||
|
<Compiler Name="SymbolPlatform">True</Compiler>
|
||||||
|
<Compiler Name="SymbolExperimental">True</Compiler>
|
||||||
|
<Compiler Name="UnitLibrary">True</Compiler>
|
||||||
|
<Compiler Name="UnitPlatform">True</Compiler>
|
||||||
|
<Compiler Name="UnitDeprecated">True</Compiler>
|
||||||
|
<Compiler Name="UnitExperimental">True</Compiler>
|
||||||
|
<Compiler Name="HResultCompat">True</Compiler>
|
||||||
|
<Compiler Name="HidingMember">True</Compiler>
|
||||||
|
<Compiler Name="HiddenVirtual">True</Compiler>
|
||||||
|
<Compiler Name="Garbage">True</Compiler>
|
||||||
|
<Compiler Name="BoundsError">True</Compiler>
|
||||||
|
<Compiler Name="ZeroNilCompat">True</Compiler>
|
||||||
|
<Compiler Name="StringConstTruncated">True</Compiler>
|
||||||
|
<Compiler Name="ForLoopVarVarPar">True</Compiler>
|
||||||
|
<Compiler Name="TypedConstVarPar">True</Compiler>
|
||||||
|
<Compiler Name="AsgToTypedConst">True</Compiler>
|
||||||
|
<Compiler Name="CaseLabelRange">True</Compiler>
|
||||||
|
<Compiler Name="ForVariable">True</Compiler>
|
||||||
|
<Compiler Name="ConstructingAbstract">True</Compiler>
|
||||||
|
<Compiler Name="ComparisonFalse">True</Compiler>
|
||||||
|
<Compiler Name="ComparisonTrue">True</Compiler>
|
||||||
|
<Compiler Name="ComparingSignedUnsigned">True</Compiler>
|
||||||
|
<Compiler Name="CombiningSignedUnsigned">True</Compiler>
|
||||||
|
<Compiler Name="UnsupportedConstruct">True</Compiler>
|
||||||
|
<Compiler Name="FileOpen">True</Compiler>
|
||||||
|
<Compiler Name="FileOpenUnitSrc">True</Compiler>
|
||||||
|
<Compiler Name="BadGlobalSymbol">True</Compiler>
|
||||||
|
<Compiler Name="DuplicateConstructorDestructor">True</Compiler>
|
||||||
|
<Compiler Name="InvalidDirective">True</Compiler>
|
||||||
|
<Compiler Name="PackageNoLink">True</Compiler>
|
||||||
|
<Compiler Name="PackageThreadVar">True</Compiler>
|
||||||
|
<Compiler Name="ImplicitImport">True</Compiler>
|
||||||
|
<Compiler Name="HPPEMITIgnored">True</Compiler>
|
||||||
|
<Compiler Name="NoRetVal">True</Compiler>
|
||||||
|
<Compiler Name="UseBeforeDef">True</Compiler>
|
||||||
|
<Compiler Name="ForLoopVarUndef">True</Compiler>
|
||||||
|
<Compiler Name="UnitNameMismatch">True</Compiler>
|
||||||
|
<Compiler Name="NoCFGFileFound">True</Compiler>
|
||||||
|
<Compiler Name="ImplicitVariants">True</Compiler>
|
||||||
|
<Compiler Name="UnicodeToLocale">True</Compiler>
|
||||||
|
<Compiler Name="LocaleToUnicode">True</Compiler>
|
||||||
|
<Compiler Name="ImagebaseMultiple">True</Compiler>
|
||||||
|
<Compiler Name="SuspiciousTypecast">True</Compiler>
|
||||||
|
<Compiler Name="PrivatePropAccessor">True</Compiler>
|
||||||
|
<Compiler Name="UnsafeType">False</Compiler>
|
||||||
|
<Compiler Name="UnsafeCode">False</Compiler>
|
||||||
|
<Compiler Name="UnsafeCast">False</Compiler>
|
||||||
|
<Compiler Name="OptionTruncated">True</Compiler>
|
||||||
|
<Compiler Name="WideCharReduced">True</Compiler>
|
||||||
|
<Compiler Name="DuplicatesIgnored">True</Compiler>
|
||||||
|
<Compiler Name="UnitInitSeq">True</Compiler>
|
||||||
|
<Compiler Name="LocalPInvoke">True</Compiler>
|
||||||
|
<Compiler Name="MessageDirective">True</Compiler>
|
||||||
|
<Compiler Name="TypeInfoImplicitlyAdded">True</Compiler>
|
||||||
|
<Compiler Name="XMLWhitespaceNotAllowed">True</Compiler>
|
||||||
|
<Compiler Name="XMLUnknownEntity">True</Compiler>
|
||||||
|
<Compiler Name="XMLInvalidNameStart">True</Compiler>
|
||||||
|
<Compiler Name="XMLInvalidName">True</Compiler>
|
||||||
|
<Compiler Name="XMLExpectedCharacter">True</Compiler>
|
||||||
|
<Compiler Name="XMLCRefNoResolve">True</Compiler>
|
||||||
|
<Compiler Name="XMLNoParm">True</Compiler>
|
||||||
|
<Compiler Name="XMLNoMatchingParm">True</Compiler>
|
||||||
|
<Compiler Name="CodePage"></Compiler>
|
||||||
|
</Compiler>
|
||||||
|
<Linker>
|
||||||
|
<Linker Name="MapFile">0</Linker>
|
||||||
|
<Linker Name="OutputObjs">0</Linker>
|
||||||
|
<Linker Name="GenerateHpps">False</Linker>
|
||||||
|
<Linker Name="ConsoleApp">1</Linker>
|
||||||
|
<Linker Name="DebugInfo">False</Linker>
|
||||||
|
<Linker Name="RemoteSymbols">False</Linker>
|
||||||
|
<Linker Name="GenerateDRC">False</Linker>
|
||||||
|
<Linker Name="MinStackSize">16384</Linker>
|
||||||
|
<Linker Name="MaxStackSize">1048576</Linker>
|
||||||
|
<Linker Name="ImageBase">4194304</Linker>
|
||||||
|
<Linker Name="ExeDescription"></Linker>
|
||||||
|
</Linker>
|
||||||
|
<Directories>
|
||||||
|
<Directories Name="OutputDir"></Directories>
|
||||||
|
<Directories Name="UnitOutputDir">.\</Directories>
|
||||||
|
<Directories Name="PackageDLLOutputDir">..\..\..\..\Output\Debug\Cliente</Directories>
|
||||||
|
<Directories Name="PackageDCPOutputDir">..\Lib</Directories>
|
||||||
|
<Directories Name="SearchPath">..\Lib</Directories>
|
||||||
|
<Directories Name="Packages"></Directories>
|
||||||
|
<Directories Name="Conditionals"></Directories>
|
||||||
|
<Directories Name="DebugSourceDirs"></Directories>
|
||||||
|
<Directories Name="UsePackages">False</Directories>
|
||||||
|
</Directories>
|
||||||
|
<Parameters>
|
||||||
|
<Parameters Name="RunParams"></Parameters>
|
||||||
|
<Parameters Name="HostApplication"></Parameters>
|
||||||
|
<Parameters Name="Launcher"></Parameters>
|
||||||
|
<Parameters Name="UseLauncher">False</Parameters>
|
||||||
|
<Parameters Name="DebugCWD"></Parameters>
|
||||||
|
<Parameters Name="Debug Symbols Search Path"></Parameters>
|
||||||
|
<Parameters Name="LoadAllSymbols">True</Parameters>
|
||||||
|
<Parameters Name="LoadUnspecifiedSymbols">False</Parameters>
|
||||||
|
</Parameters>
|
||||||
|
<Signing>
|
||||||
|
<Signing Name="SignAssembly">False</Signing>
|
||||||
|
</Signing>
|
||||||
|
<VersionInfo>
|
||||||
|
<VersionInfo Name="IncludeVerInfo">True</VersionInfo>
|
||||||
|
<VersionInfo Name="AutoIncBuild">False</VersionInfo>
|
||||||
|
<VersionInfo Name="MajorVer">1</VersionInfo>
|
||||||
|
<VersionInfo Name="MinorVer">0</VersionInfo>
|
||||||
|
<VersionInfo Name="Release">0</VersionInfo>
|
||||||
|
<VersionInfo Name="Build">0</VersionInfo>
|
||||||
|
<VersionInfo Name="Debug">False</VersionInfo>
|
||||||
|
<VersionInfo Name="PreRelease">False</VersionInfo>
|
||||||
|
<VersionInfo Name="Special">False</VersionInfo>
|
||||||
|
<VersionInfo Name="Private">False</VersionInfo>
|
||||||
|
<VersionInfo Name="DLL">False</VersionInfo>
|
||||||
|
<VersionInfo Name="Locale">3082</VersionInfo>
|
||||||
|
<VersionInfo Name="CodePage">1252</VersionInfo>
|
||||||
|
</VersionInfo>
|
||||||
|
<VersionInfoKeys>
|
||||||
|
<VersionInfoKeys Name="CompanyName"></VersionInfoKeys>
|
||||||
|
<VersionInfoKeys Name="FileDescription"></VersionInfoKeys>
|
||||||
|
<VersionInfoKeys Name="FileVersion">1.0.0.0</VersionInfoKeys>
|
||||||
|
<VersionInfoKeys Name="InternalName"></VersionInfoKeys>
|
||||||
|
<VersionInfoKeys Name="LegalCopyright"></VersionInfoKeys>
|
||||||
|
<VersionInfoKeys Name="LegalTrademarks"></VersionInfoKeys>
|
||||||
|
<VersionInfoKeys Name="OriginalFilename"></VersionInfoKeys>
|
||||||
|
<VersionInfoKeys Name="ProductName"></VersionInfoKeys>
|
||||||
|
<VersionInfoKeys Name="ProductVersion">1.0.0.0</VersionInfoKeys>
|
||||||
|
<VersionInfoKeys Name="Comments"></VersionInfoKeys>
|
||||||
|
</VersionInfoKeys>
|
||||||
|
<Excluded_Packages>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<Excluded_Packages Name="$(BDS)\Bin\dclintraweb_90_100.bpl">VCL for the Web Design Package for CodeGear RAD Studio</Excluded_Packages>
|
||||||
|
<Excluded_Packages Name="$(BDS)\bin\dclwebsnap100.bpl">CodeGear WebSnap Components</Excluded_Packages>
|
||||||
|
<Excluded_Packages Name="$(BDS)\bin\dclsoap100.bpl">CodeGear SOAP Components</Excluded_Packages>
|
||||||
|
<Excluded_Packages Name="$(BDS)\bin\dclofficexp100.bpl">Microsoft Office XP Sample Automation Server Wrapper Components</Excluded_Packages>
|
||||||
|
<Excluded_Packages Name="$(BDS)\bin\dcloffice2k100.bpl">Microsoft Office 2000 Sample Automation Server Wrapper Components</Excluded_Packages>
|
||||||
|
<Excluded_Packages Name="$(BDS)\bin\bcboffice2k100.bpl">CodeGear C++Builder Office 2000 Servers Package</Excluded_Packages>
|
||||||
|
<Excluded_Packages Name="$(BDS)\bin\bcbofficexp100.bpl">CodeGear C++Builder Office XP Servers Package</Excluded_Packages>
|
||||||
|
</Excluded_Packages>
|
||||||
|
<buildevents/>
|
||||||
|
</Delphi.Personality>
|
||||||
|
</BorlandProject>
|
||||||
|
|
||||||
|
<!-- EurekaLog First Line
|
||||||
|
[Exception Log]
|
||||||
|
EurekaLog Version=6006
|
||||||
|
Activate=0
|
||||||
|
Activate Handle=1
|
||||||
|
Save Log File=1
|
||||||
|
Foreground Tab=0
|
||||||
|
Freeze Activate=0
|
||||||
|
Freeze Timeout=0
|
||||||
|
SMTP From=eurekalog@email.com
|
||||||
|
SMTP Host=
|
||||||
|
SMTP Port=25
|
||||||
|
SMTP UserID=
|
||||||
|
SMTP Password=
|
||||||
|
Append to Log=0
|
||||||
|
TerminateBtn Operation=2
|
||||||
|
Errors Number=32
|
||||||
|
Errors Terminate=3
|
||||||
|
Email Address=
|
||||||
|
Email Object=
|
||||||
|
Email Send Options=0
|
||||||
|
Output Path=
|
||||||
|
Encrypt Password=
|
||||||
|
AutoCloseDialogSecs=0
|
||||||
|
WebSendMode=0
|
||||||
|
SupportULR=
|
||||||
|
HTMLLayout Count=15
|
||||||
|
HTMLLine0="%3Chtml%3E"
|
||||||
|
HTMLLine1=" %3Chead%3E"
|
||||||
|
HTMLLine2=" %3C/head%3E"
|
||||||
|
HTMLLine3=" %3Cbody TopMargin=10 LeftMargin=10%3E"
|
||||||
|
HTMLLine4=" %3Ctable width="100%%" border="0"%3E"
|
||||||
|
HTMLLine5=" %3Ctr%3E"
|
||||||
|
HTMLLine6=" %3Ctd nowrap%3E"
|
||||||
|
HTMLLine7=" %3Cfont face="Lucida Console, Courier" size="2"%3E"
|
||||||
|
HTMLLine8=" %3C%%HTML_TAG%%%3E"
|
||||||
|
HTMLLine9=" %3C/font%3E"
|
||||||
|
HTMLLine10=" %3C/td%3E"
|
||||||
|
HTMLLine11=" %3C/tr%3E"
|
||||||
|
HTMLLine12=" %3C/table%3E"
|
||||||
|
HTMLLine13=" %3C/body%3E"
|
||||||
|
HTMLLine14="%3C/html%3E"
|
||||||
|
AutoCrashOperation=2
|
||||||
|
AutoCrashNumber=10
|
||||||
|
AutoCrashMinutes=1
|
||||||
|
WebURL=
|
||||||
|
WebUserID=
|
||||||
|
WebPassword=
|
||||||
|
WebPort=0
|
||||||
|
AttachedFiles=
|
||||||
|
ProxyURL=
|
||||||
|
ProxyUser=
|
||||||
|
ProxyPassword=
|
||||||
|
ProxyPort=8080
|
||||||
|
TrakerUser=
|
||||||
|
TrakerPassword=
|
||||||
|
TrakerAssignTo=
|
||||||
|
TrakerProject=
|
||||||
|
TrakerCategory=
|
||||||
|
TrakerTrialID=
|
||||||
|
ZipPassword=
|
||||||
|
PreBuildEvent=
|
||||||
|
PostSuccessfulBuildEvent=
|
||||||
|
PostFailureBuildEvent=
|
||||||
|
ExceptionDialogType=2
|
||||||
|
Count=0
|
||||||
|
EMail Message Line Count=0
|
||||||
|
loNoDuplicateErrors=0
|
||||||
|
loAppendReproduceText=0
|
||||||
|
loDeleteLogAtVersionChange=0
|
||||||
|
loAddComputerNameInLogFileName=0
|
||||||
|
loSaveModulesAndProcessesSections=1
|
||||||
|
loSaveAssemblerAndCPUSections=1
|
||||||
|
soAppStartDate=1
|
||||||
|
soAppName=1
|
||||||
|
soAppVersionNumber=1
|
||||||
|
soAppParameters=1
|
||||||
|
soAppCompilationDate=1
|
||||||
|
soAppUpTime=1
|
||||||
|
soExcDate=1
|
||||||
|
soExcAddress=1
|
||||||
|
soExcModuleName=1
|
||||||
|
soExcModuleVersion=1
|
||||||
|
soExcType=1
|
||||||
|
soExcMessage=1
|
||||||
|
soExcID=1
|
||||||
|
soExcCount=1
|
||||||
|
soExcStatus=1
|
||||||
|
soExcNote=1
|
||||||
|
soUserID=1
|
||||||
|
soUserName=1
|
||||||
|
soUserEmail=1
|
||||||
|
soUserPrivileges=1
|
||||||
|
soUserCompany=1
|
||||||
|
soActCtlsFormClass=1
|
||||||
|
soActCtlsFormText=1
|
||||||
|
soActCtlsControlClass=1
|
||||||
|
soActCtlsControlText=1
|
||||||
|
soCmpName=1
|
||||||
|
soCmpTotalMemory=1
|
||||||
|
soCmpFreeMemory=1
|
||||||
|
soCmpTotalDisk=1
|
||||||
|
soCmpFreeDisk=1
|
||||||
|
soCmpSysUpTime=1
|
||||||
|
soCmpProcessor=1
|
||||||
|
soCmpDisplayMode=1
|
||||||
|
soCmpDisplayDPI=1
|
||||||
|
soCmpVideoCard=1
|
||||||
|
soCmpPrinter=1
|
||||||
|
soOSType=1
|
||||||
|
soOSBuildN=1
|
||||||
|
soOSUpdate=1
|
||||||
|
soOSLanguage=1
|
||||||
|
soOSCharset=1
|
||||||
|
soNetIP=1
|
||||||
|
soNetSubmask=1
|
||||||
|
soNetGateway=1
|
||||||
|
soNetDNS1=1
|
||||||
|
soNetDNS2=1
|
||||||
|
soNetDHCP=1
|
||||||
|
soCustomData=1
|
||||||
|
sndShowSendDialog=1
|
||||||
|
sndShowSuccessFailureMsg=0
|
||||||
|
sndSendEntireLog=0
|
||||||
|
sndSendXMLLogCopy=0
|
||||||
|
sndSendScreenshot=1
|
||||||
|
sndUseOnlyActiveWindow=0
|
||||||
|
sndSendLastHTMLPage=1
|
||||||
|
sndSendInSeparatedThread=0
|
||||||
|
sndAddDateInFileName=0
|
||||||
|
sndAddComputerNameInFileName=0
|
||||||
|
edoSendErrorReportChecked=1
|
||||||
|
edoAttachScreenshotChecked=1
|
||||||
|
edoShowCopyToClipOption=1
|
||||||
|
edoShowDetailsButton=1
|
||||||
|
edoShowInDetailedMode=0
|
||||||
|
edoShowInTopMostMode=0
|
||||||
|
edoUseEurekaLogLookAndFeel=0
|
||||||
|
edoShowSendErrorReportOption=1
|
||||||
|
edoShowAttachScreenshotOption=1
|
||||||
|
edoShowCustomButton=0
|
||||||
|
csoShowDLLs=1
|
||||||
|
csoShowBPLs=1
|
||||||
|
csoShowBorlandThreads=1
|
||||||
|
csoShowWindowsThreads=1
|
||||||
|
csoDoNotStoreProcNames=0
|
||||||
|
boPauseBorlandThreads=0
|
||||||
|
boDoNotPauseMainThread=0
|
||||||
|
boPauseWindowsThreads=0
|
||||||
|
boUseMainModuleOptions=1
|
||||||
|
boCopyLogInCaseOfError=1
|
||||||
|
boSaveCompressedCopyInCaseOfError=0
|
||||||
|
boHandleSafeCallExceptions=1
|
||||||
|
boCallRTLExceptionEvent=0
|
||||||
|
boCatchHandledExceptions=0
|
||||||
|
loCatchLeaks=0
|
||||||
|
loGroupsSonLeaks=1
|
||||||
|
loHideBorlandLeaks=1
|
||||||
|
loFreeAllLeaks=1
|
||||||
|
loCatchLeaksExceptions=1
|
||||||
|
cfoReduceFileSize=1
|
||||||
|
cfoCheckFileCorruption=0
|
||||||
|
Count mtInformationMsgCaption=1
|
||||||
|
mtInformationMsgCaption0="Information."
|
||||||
|
Count mtQuestionMsgCaption=1
|
||||||
|
mtQuestionMsgCaption0="Question."
|
||||||
|
Count mtErrorMsgCaption=1
|
||||||
|
mtErrorMsgCaption0="Error."
|
||||||
|
Count mtDialog_Caption=1
|
||||||
|
mtDialog_Caption0="Error occurred"
|
||||||
|
Count mtDialog_ErrorMsgCaption=2
|
||||||
|
mtDialog_ErrorMsgCaption0="An error has occurred during program execution."
|
||||||
|
mtDialog_ErrorMsgCaption1="Please read the following information for further details."
|
||||||
|
Count mtDialog_GeneralCaption=1
|
||||||
|
mtDialog_GeneralCaption0="General"
|
||||||
|
Count mtDialog_GeneralHeader=1
|
||||||
|
mtDialog_GeneralHeader0="General Information"
|
||||||
|
Count mtDialog_CallStackCaption=1
|
||||||
|
mtDialog_CallStackCaption0="Call Stack"
|
||||||
|
Count mtDialog_CallStackHeader=1
|
||||||
|
mtDialog_CallStackHeader0="Call Stack Information"
|
||||||
|
Count mtDialog_ModulesCaption=1
|
||||||
|
mtDialog_ModulesCaption0="Modules"
|
||||||
|
Count mtDialog_ModulesHeader=1
|
||||||
|
mtDialog_ModulesHeader0="Modules Information"
|
||||||
|
Count mtDialog_ProcessesCaption=1
|
||||||
|
mtDialog_ProcessesCaption0="Processes"
|
||||||
|
Count mtDialog_ProcessesHeader=1
|
||||||
|
mtDialog_ProcessesHeader0="Processes Information"
|
||||||
|
Count mtDialog_AsmCaption=1
|
||||||
|
mtDialog_AsmCaption0="Assembler"
|
||||||
|
Count mtDialog_AsmHeader=1
|
||||||
|
mtDialog_AsmHeader0="Assembler Information"
|
||||||
|
Count mtDialog_CPUCaption=1
|
||||||
|
mtDialog_CPUCaption0="CPU"
|
||||||
|
Count mtDialog_CPUHeader=1
|
||||||
|
mtDialog_CPUHeader0="CPU Information"
|
||||||
|
Count mtDialog_OKButtonCaption=1
|
||||||
|
mtDialog_OKButtonCaption0="%26OK"
|
||||||
|
Count mtDialog_TerminateButtonCaption=1
|
||||||
|
mtDialog_TerminateButtonCaption0="%26Terminate"
|
||||||
|
Count mtDialog_RestartButtonCaption=1
|
||||||
|
mtDialog_RestartButtonCaption0="%26Restart"
|
||||||
|
Count mtDialog_DetailsButtonCaption=1
|
||||||
|
mtDialog_DetailsButtonCaption0="%26Details"
|
||||||
|
Count mtDialog_CustomButtonCaption=1
|
||||||
|
mtDialog_CustomButtonCaption0="%26Help"
|
||||||
|
Count mtDialog_SendMessage=1
|
||||||
|
mtDialog_SendMessage0="%26Send this error via Internet"
|
||||||
|
Count mtDialog_ScreenshotMessage=1
|
||||||
|
mtDialog_ScreenshotMessage0="%26Attach a Screenshot image"
|
||||||
|
Count mtDialog_CopyMessage=1
|
||||||
|
mtDialog_CopyMessage0="%26Copy to Clipboard"
|
||||||
|
Count mtDialog_SupportMessage=1
|
||||||
|
mtDialog_SupportMessage0="Go to the Support Page"
|
||||||
|
Count mtMSDialog_ErrorMsgCaption=1
|
||||||
|
mtMSDialog_ErrorMsgCaption0="The application has encountered a problem. We are sorry for the inconvenience."
|
||||||
|
Count mtMSDialog_RestartCaption=1
|
||||||
|
mtMSDialog_RestartCaption0="Restart application."
|
||||||
|
Count mtMSDialog_TerminateCaption=1
|
||||||
|
mtMSDialog_TerminateCaption0="Terminate application."
|
||||||
|
Count mtMSDialog_PleaseCaption=1
|
||||||
|
mtMSDialog_PleaseCaption0="Please tell us about this problem."
|
||||||
|
Count mtMSDialog_DescriptionCaption=1
|
||||||
|
mtMSDialog_DescriptionCaption0="We have created an error report that you can send to us. We will treat this report as confidential and anonymous."
|
||||||
|
Count mtMSDialog_SeeDetailsCaption=1
|
||||||
|
mtMSDialog_SeeDetailsCaption0="To see what data the error report contains,"
|
||||||
|
Count mtMSDialog_SeeClickCaption=1
|
||||||
|
mtMSDialog_SeeClickCaption0="click here."
|
||||||
|
Count mtMSDialog_HowToReproduceCaption=1
|
||||||
|
mtMSDialog_HowToReproduceCaption0="What were you doing when the problem happended (optional)?"
|
||||||
|
Count mtMSDialog_EmailCaption=1
|
||||||
|
mtMSDialog_EmailCaption0="Email address (optional):"
|
||||||
|
Count mtMSDialog_SendButtonCaption=1
|
||||||
|
mtMSDialog_SendButtonCaption0="%26Send Error Report"
|
||||||
|
Count mtMSDialog_NoSendButtonCaption=1
|
||||||
|
mtMSDialog_NoSendButtonCaption0="%26Don't Send"
|
||||||
|
Count mtLog_AppHeader=1
|
||||||
|
mtLog_AppHeader0="Application"
|
||||||
|
Count mtLog_AppStartDate=1
|
||||||
|
mtLog_AppStartDate0="Start Date"
|
||||||
|
Count mtLog_AppName=1
|
||||||
|
mtLog_AppName0="Name/Description"
|
||||||
|
Count mtLog_AppVersionNumber=1
|
||||||
|
mtLog_AppVersionNumber0="Version Number"
|
||||||
|
Count mtLog_AppParameters=1
|
||||||
|
mtLog_AppParameters0="Parameters"
|
||||||
|
Count mtLog_AppCompilationDate=1
|
||||||
|
mtLog_AppCompilationDate0="Compilation Date"
|
||||||
|
Count mtLog_AppUpTime=1
|
||||||
|
mtLog_AppUpTime0="Up Time"
|
||||||
|
Count mtLog_ExcHeader=1
|
||||||
|
mtLog_ExcHeader0="Exception"
|
||||||
|
Count mtLog_ExcDate=1
|
||||||
|
mtLog_ExcDate0="Date"
|
||||||
|
Count mtLog_ExcAddress=1
|
||||||
|
mtLog_ExcAddress0="Address"
|
||||||
|
Count mtLog_ExcModuleName=1
|
||||||
|
mtLog_ExcModuleName0="Module Name"
|
||||||
|
Count mtLog_ExcModuleVersion=1
|
||||||
|
mtLog_ExcModuleVersion0="Module Version"
|
||||||
|
Count mtLog_ExcType=1
|
||||||
|
mtLog_ExcType0="Type"
|
||||||
|
Count mtLog_ExcMessage=1
|
||||||
|
mtLog_ExcMessage0="Message"
|
||||||
|
Count mtLog_ExcID=1
|
||||||
|
mtLog_ExcID0="ID"
|
||||||
|
Count mtLog_ExcCount=1
|
||||||
|
mtLog_ExcCount0="Count"
|
||||||
|
Count mtLog_ExcStatus=1
|
||||||
|
mtLog_ExcStatus0="Status"
|
||||||
|
Count mtLog_ExcNote=1
|
||||||
|
mtLog_ExcNote0="Note"
|
||||||
|
Count mtLog_UserHeader=1
|
||||||
|
mtLog_UserHeader0="User"
|
||||||
|
Count mtLog_UserID=1
|
||||||
|
mtLog_UserID0="ID"
|
||||||
|
Count mtLog_UserName=1
|
||||||
|
mtLog_UserName0="Name"
|
||||||
|
Count mtLog_UserEmail=1
|
||||||
|
mtLog_UserEmail0="Email"
|
||||||
|
Count mtLog_UserCompany=1
|
||||||
|
mtLog_UserCompany0="Company"
|
||||||
|
Count mtLog_UserPrivileges=1
|
||||||
|
mtLog_UserPrivileges0="Privileges"
|
||||||
|
Count mtLog_ActCtrlsHeader=1
|
||||||
|
mtLog_ActCtrlsHeader0="Active Controls"
|
||||||
|
Count mtLog_ActCtrlsFormClass=1
|
||||||
|
mtLog_ActCtrlsFormClass0="Form Class"
|
||||||
|
Count mtLog_ActCtrlsFormText=1
|
||||||
|
mtLog_ActCtrlsFormText0="Form Text"
|
||||||
|
Count mtLog_ActCtrlsControlClass=1
|
||||||
|
mtLog_ActCtrlsControlClass0="Control Class"
|
||||||
|
Count mtLog_ActCtrlsControlText=1
|
||||||
|
mtLog_ActCtrlsControlText0="Control Text"
|
||||||
|
Count mtLog_CmpHeader=1
|
||||||
|
mtLog_CmpHeader0="Computer"
|
||||||
|
Count mtLog_CmpName=1
|
||||||
|
mtLog_CmpName0="Name"
|
||||||
|
Count mtLog_CmpTotalMemory=1
|
||||||
|
mtLog_CmpTotalMemory0="Total Memory"
|
||||||
|
Count mtLog_CmpFreeMemory=1
|
||||||
|
mtLog_CmpFreeMemory0="Free Memory"
|
||||||
|
Count mtLog_CmpTotalDisk=1
|
||||||
|
mtLog_CmpTotalDisk0="Total Disk"
|
||||||
|
Count mtLog_CmpFreeDisk=1
|
||||||
|
mtLog_CmpFreeDisk0="Free Disk"
|
||||||
|
Count mtLog_CmpSystemUpTime=1
|
||||||
|
mtLog_CmpSystemUpTime0="System Up Time"
|
||||||
|
Count mtLog_CmpProcessor=1
|
||||||
|
mtLog_CmpProcessor0="Processor"
|
||||||
|
Count mtLog_CmpDisplayMode=1
|
||||||
|
mtLog_CmpDisplayMode0="Display Mode"
|
||||||
|
Count mtLog_CmpDisplayDPI=1
|
||||||
|
mtLog_CmpDisplayDPI0="Display DPI"
|
||||||
|
Count mtLog_CmpVideoCard=1
|
||||||
|
mtLog_CmpVideoCard0="Video Card"
|
||||||
|
Count mtLog_CmpPrinter=1
|
||||||
|
mtLog_CmpPrinter0="Printer"
|
||||||
|
Count mtLog_OSHeader=1
|
||||||
|
mtLog_OSHeader0="Operating System"
|
||||||
|
Count mtLog_OSType=1
|
||||||
|
mtLog_OSType0="Type"
|
||||||
|
Count mtLog_OSBuildN=1
|
||||||
|
mtLog_OSBuildN0="Build #"
|
||||||
|
Count mtLog_OSUpdate=1
|
||||||
|
mtLog_OSUpdate0="Update"
|
||||||
|
Count mtLog_OSLanguage=1
|
||||||
|
mtLog_OSLanguage0="Language"
|
||||||
|
Count mtLog_OSCharset=1
|
||||||
|
mtLog_OSCharset0="Charset"
|
||||||
|
Count mtLog_NetHeader=1
|
||||||
|
mtLog_NetHeader0="Network"
|
||||||
|
Count mtLog_NetIP=1
|
||||||
|
mtLog_NetIP0="IP Address"
|
||||||
|
Count mtLog_NetSubmask=1
|
||||||
|
mtLog_NetSubmask0="Submask"
|
||||||
|
Count mtLog_NetGateway=1
|
||||||
|
mtLog_NetGateway0="Gateway"
|
||||||
|
Count mtLog_NetDNS1=1
|
||||||
|
mtLog_NetDNS10="DNS 1"
|
||||||
|
Count mtLog_NetDNS2=1
|
||||||
|
mtLog_NetDNS20="DNS 2"
|
||||||
|
Count mtLog_NetDHCP=1
|
||||||
|
mtLog_NetDHCP0="DHCP"
|
||||||
|
Count mtLog_CustInfoHeader=1
|
||||||
|
mtLog_CustInfoHeader0="Custom Information"
|
||||||
|
Count mtCallStack_Address=1
|
||||||
|
mtCallStack_Address0="Address"
|
||||||
|
Count mtCallStack_Name=1
|
||||||
|
mtCallStack_Name0="Module"
|
||||||
|
Count mtCallStack_Unit=1
|
||||||
|
mtCallStack_Unit0="Unit"
|
||||||
|
Count mtCallStack_Class=1
|
||||||
|
mtCallStack_Class0="Class"
|
||||||
|
Count mtCallStack_Procedure=1
|
||||||
|
mtCallStack_Procedure0="Procedure/Method"
|
||||||
|
Count mtCallStack_Line=1
|
||||||
|
mtCallStack_Line0="Line"
|
||||||
|
Count mtCallStack_MainThread=1
|
||||||
|
mtCallStack_MainThread0="Main"
|
||||||
|
Count mtCallStack_ExceptionThread=1
|
||||||
|
mtCallStack_ExceptionThread0="Exception Thread"
|
||||||
|
Count mtCallStack_RunningThread=1
|
||||||
|
mtCallStack_RunningThread0="Running Thread"
|
||||||
|
Count mtCallStack_CallingThread=1
|
||||||
|
mtCallStack_CallingThread0="Calling Thread"
|
||||||
|
Count mtCallStack_ThreadID=1
|
||||||
|
mtCallStack_ThreadID0="ID"
|
||||||
|
Count mtCallStack_ThreadPriority=1
|
||||||
|
mtCallStack_ThreadPriority0="Priority"
|
||||||
|
Count mtCallStack_ThreadClass=1
|
||||||
|
mtCallStack_ThreadClass0="Class"
|
||||||
|
Count mtCallStack_LeakCaption=1
|
||||||
|
mtCallStack_LeakCaption0="Memory Leak"
|
||||||
|
Count mtCallStack_LeakData=1
|
||||||
|
mtCallStack_LeakData0="Data"
|
||||||
|
Count mtCallStack_LeakType=1
|
||||||
|
mtCallStack_LeakType0="Type"
|
||||||
|
Count mtCallStack_LeakSize=1
|
||||||
|
mtCallStack_LeakSize0="Total size"
|
||||||
|
Count mtCallStack_LeakCount=1
|
||||||
|
mtCallStack_LeakCount0="Count"
|
||||||
|
Count mtSendDialog_Caption=1
|
||||||
|
mtSendDialog_Caption0="Send."
|
||||||
|
Count mtSendDialog_Message=1
|
||||||
|
mtSendDialog_Message0="Message"
|
||||||
|
Count mtSendDialog_Resolving=1
|
||||||
|
mtSendDialog_Resolving0="Resolving DNS..."
|
||||||
|
Count mtSendDialog_Login=1
|
||||||
|
mtSendDialog_Login0="Login..."
|
||||||
|
Count mtSendDialog_Connecting=1
|
||||||
|
mtSendDialog_Connecting0="Connecting with server..."
|
||||||
|
Count mtSendDialog_Connected=1
|
||||||
|
mtSendDialog_Connected0="Connected with server."
|
||||||
|
Count mtSendDialog_Sending=1
|
||||||
|
mtSendDialog_Sending0="Sending message..."
|
||||||
|
Count mtSendDialog_Sent=1
|
||||||
|
mtSendDialog_Sent0="Message sent."
|
||||||
|
Count mtSendDialog_SelectProject=1
|
||||||
|
mtSendDialog_SelectProject0="Select project..."
|
||||||
|
Count mtSendDialog_Searching=1
|
||||||
|
mtSendDialog_Searching0="Searching..."
|
||||||
|
Count mtSendDialog_Modifying=1
|
||||||
|
mtSendDialog_Modifying0="Modifying..."
|
||||||
|
Count mtSendDialog_Disconnecting=1
|
||||||
|
mtSendDialog_Disconnecting0="Disconnecting..."
|
||||||
|
Count mtSendDialog_Disconnected=1
|
||||||
|
mtSendDialog_Disconnected0="Disconnected."
|
||||||
|
Count mtReproduceDialog_Caption=1
|
||||||
|
mtReproduceDialog_Caption0="Request"
|
||||||
|
Count mtReproduceDialog_Request=1
|
||||||
|
mtReproduceDialog_Request0="Please describe the steps to reproduce the error:"
|
||||||
|
Count mtReproduceDialog_OKButtonCaption=1
|
||||||
|
mtReproduceDialog_OKButtonCaption0="%26OK"
|
||||||
|
Count mtModules_Handle=1
|
||||||
|
mtModules_Handle0="Handle"
|
||||||
|
Count mtModules_Name=1
|
||||||
|
mtModules_Name0="Name"
|
||||||
|
Count mtModules_Description=1
|
||||||
|
mtModules_Description0="Description"
|
||||||
|
Count mtModules_Version=1
|
||||||
|
mtModules_Version0="Version"
|
||||||
|
Count mtModules_Size=1
|
||||||
|
mtModules_Size0="Size"
|
||||||
|
Count mtModules_LastModified=1
|
||||||
|
mtModules_LastModified0="Modified"
|
||||||
|
Count mtModules_Path=1
|
||||||
|
mtModules_Path0="Path"
|
||||||
|
Count mtProcesses_ID=1
|
||||||
|
mtProcesses_ID0="ID"
|
||||||
|
Count mtProcesses_Name=1
|
||||||
|
mtProcesses_Name0="Name"
|
||||||
|
Count mtProcesses_Description=1
|
||||||
|
mtProcesses_Description0="Description"
|
||||||
|
Count mtProcesses_Version=1
|
||||||
|
mtProcesses_Version0="Version"
|
||||||
|
Count mtProcesses_Memory=1
|
||||||
|
mtProcesses_Memory0="Memory"
|
||||||
|
Count mtProcesses_Priority=1
|
||||||
|
mtProcesses_Priority0="Priority"
|
||||||
|
Count mtProcesses_Threads=1
|
||||||
|
mtProcesses_Threads0="Threads"
|
||||||
|
Count mtProcesses_Path=1
|
||||||
|
mtProcesses_Path0="Path"
|
||||||
|
Count mtCPU_Registers=1
|
||||||
|
mtCPU_Registers0="Registers"
|
||||||
|
Count mtCPU_Stack=1
|
||||||
|
mtCPU_Stack0="Stack"
|
||||||
|
Count mtCPU_MemoryDump=1
|
||||||
|
mtCPU_MemoryDump0="Memory Dump"
|
||||||
|
Count mtSend_SuccessMsg=1
|
||||||
|
mtSend_SuccessMsg0="The message was sent successfully."
|
||||||
|
Count mtSend_FailureMsg=1
|
||||||
|
mtSend_FailureMsg0="Sorry, sending the message didn't work."
|
||||||
|
Count mtSend_BugClosedMsg=2
|
||||||
|
mtSend_BugClosedMsg0="These BUG is just closed."
|
||||||
|
mtSend_BugClosedMsg1="Contact the program support to obtain an update."
|
||||||
|
Count mtSend_UnknownErrorMsg=1
|
||||||
|
mtSend_UnknownErrorMsg0="Unknown error."
|
||||||
|
Count mtSend_InvalidLoginMsg=1
|
||||||
|
mtSend_InvalidLoginMsg0="Invalid login request."
|
||||||
|
Count mtSend_InvalidSearchMsg=1
|
||||||
|
mtSend_InvalidSearchMsg0="Invalid search request."
|
||||||
|
Count mtSend_InvalidSelectionMsg=1
|
||||||
|
mtSend_InvalidSelectionMsg0="Invalid selection request."
|
||||||
|
Count mtSend_InvalidInsertMsg=1
|
||||||
|
mtSend_InvalidInsertMsg0="Invalid insert request."
|
||||||
|
Count mtSend_InvalidModifyMsg=1
|
||||||
|
mtSend_InvalidModifyMsg0="Invalid modify request."
|
||||||
|
Count mtFileCrackedMsg=2
|
||||||
|
mtFileCrackedMsg0="This file is cracked."
|
||||||
|
mtFileCrackedMsg1="The application will be closed."
|
||||||
|
Count mtException_LeakMultiFree=1
|
||||||
|
mtException_LeakMultiFree0="Multi Free memory leak."
|
||||||
|
Count mtException_LeakMemoryOverrun=1
|
||||||
|
mtException_LeakMemoryOverrun0="Memory Overrun leak."
|
||||||
|
Count mtException_AntiFreeze=1
|
||||||
|
mtException_AntiFreeze0="The application seems to be frozen."
|
||||||
|
Count mtInvalidEmailMsg=1
|
||||||
|
mtInvalidEmailMsg0="Invalid email."
|
||||||
|
TextsCollection=English
|
||||||
|
EurekaLog Last Line -->
|
||||||
40
Source/ApplicationBase/ApplicationBase.cfg
Normal file
40
Source/ApplicationBase/ApplicationBase.cfg
Normal file
@ -0,0 +1,40 @@
|
|||||||
|
-$A8
|
||||||
|
-$B-
|
||||||
|
-$C+
|
||||||
|
-$D+
|
||||||
|
-$E-
|
||||||
|
-$F-
|
||||||
|
-$G+
|
||||||
|
-$H+
|
||||||
|
-$I+
|
||||||
|
-$J-
|
||||||
|
-$K-
|
||||||
|
-$L+
|
||||||
|
-$M-
|
||||||
|
-$N+
|
||||||
|
-$O+
|
||||||
|
-$P+
|
||||||
|
-$Q-
|
||||||
|
-$R-
|
||||||
|
-$S-
|
||||||
|
-$T-
|
||||||
|
-$U-
|
||||||
|
-$V+
|
||||||
|
-$W-
|
||||||
|
-$X+
|
||||||
|
-$YD
|
||||||
|
-$Z1
|
||||||
|
-cg
|
||||||
|
-AWinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE;
|
||||||
|
-H+
|
||||||
|
-W+
|
||||||
|
-M
|
||||||
|
-$M16384,1048576
|
||||||
|
-K$00400000
|
||||||
|
-N0".\"
|
||||||
|
-LE"..\..\..\..\Output\Debug\Cliente"
|
||||||
|
-LN"..\Lib"
|
||||||
|
-U"..\Lib"
|
||||||
|
-O"..\Lib"
|
||||||
|
-I"..\Lib"
|
||||||
|
-R"..\Lib"
|
||||||
63
Source/ApplicationBase/ApplicationBase.dpk
Normal file
63
Source/ApplicationBase/ApplicationBase.dpk
Normal file
@ -0,0 +1,63 @@
|
|||||||
|
package ApplicationBase;
|
||||||
|
|
||||||
|
{$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 ON}
|
||||||
|
{$TYPEDADDRESS OFF}
|
||||||
|
{$VARSTRINGCHECKS ON}
|
||||||
|
{$WRITEABLECONST OFF}
|
||||||
|
{$MINENUMSIZE 1}
|
||||||
|
{$IMAGEBASE $400000}
|
||||||
|
{$IMPLICITBUILD OFF}
|
||||||
|
{$DEFINE DEBUG}
|
||||||
|
|
||||||
|
requires
|
||||||
|
rtl,
|
||||||
|
vcl,
|
||||||
|
dbrtl,
|
||||||
|
PLuginSDK_D10R,
|
||||||
|
BaseD10,
|
||||||
|
pckMD5,
|
||||||
|
pckUserControl_RT;
|
||||||
|
|
||||||
|
contains
|
||||||
|
uAdminPV_App in 'uAdminPV_App.pas',
|
||||||
|
uIDataModuleUsuarios in 'Usuarios\Model\Data\uIDataModuleUsuarios.pas',
|
||||||
|
uDataModuleUsuarios in 'Usuarios\Data\uDataModuleUsuarios.pas' {DataModuleUsuarios},
|
||||||
|
uUCROConn in 'Usuarios\Data\uUCROConn.pas',
|
||||||
|
uUsuariosController in 'Usuarios\Controller\uUsuariosController.pas',
|
||||||
|
uBizUsuarios in 'Usuarios\Model\uBizUsuarios.pas',
|
||||||
|
uIEditorLogin in 'Usuarios\Controller\View\uIEditorLogin.pas',
|
||||||
|
uEditorLogin in 'Usuarios\Views\uEditorLogin.pas' {fEditorLogin},
|
||||||
|
uUsuariosViewRegister in 'Usuarios\Views\uUsuariosViewRegister.pas',
|
||||||
|
uViewPerfilesUsuario in 'Usuarios\Views\uViewPerfilesUsuario.pas' {frViewPerfilesUsuario: TFrame},
|
||||||
|
uEditorPerfilesUsuario in 'Usuarios\Views\uEditorPerfilesUsuario.pas' {fEditorPerfilesUsuario},
|
||||||
|
uIEditorUsuarios in 'Usuarios\Controller\View\uIEditorUsuarios.pas',
|
||||||
|
uEditorPerfilUsuario in 'Usuarios\Views\uEditorPerfilUsuario.pas' {fEditorPerfilUsuario},
|
||||||
|
uIEditorUsuario in 'Usuarios\Controller\View\uIEditorUsuario.pas',
|
||||||
|
uViewPerfilUsuario in 'Usuarios\Views\uViewPerfilUsuario.pas' {frViewPerfilUsuario: TFrame},
|
||||||
|
uIEditorPerfilesUsuario in 'Usuarios\Controller\View\uIEditorPerfilesUsuario.pas',
|
||||||
|
uIEditorPerfilUsuario in 'Usuarios\Controller\View\uIEditorPerfilUsuario.pas',
|
||||||
|
uEditorUsuarios in 'Usuarios\Views\uEditorUsuarios.pas' {fEditorUsuarios},
|
||||||
|
uViewUsuarios in 'Usuarios\Views\uViewUsuarios.pas' {frViewUsuarios: TFrame},
|
||||||
|
uEditorUsuario in 'Usuarios\Views\uEditorUsuario.pas' {fEditorUsuario: TFrame},
|
||||||
|
uViewUsuario in 'Usuarios\Views\uViewUsuario.pas' {frViewUsuario: TFrame},
|
||||||
|
uEditorCambiarPassword in 'Usuarios\Views\uEditorCambiarPassword.pas' {fEditorCambiarPassword},
|
||||||
|
schUsuariosClient_Intf in 'Usuarios\Model\schUsuariosClient_Intf.pas',
|
||||||
|
schUsuariosServer_Intf in 'Usuarios\Model\schUsuariosServer_Intf.pas';
|
||||||
|
|
||||||
|
end.
|
||||||
625
Source/ApplicationBase/ApplicationBase.dproj
Normal file
625
Source/ApplicationBase/ApplicationBase.dproj
Normal file
@ -0,0 +1,625 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
|
<PropertyGroup>
|
||||||
|
<ProjectGuid>{14a25028-ec1a-430c-ade3-13c264e9bac2}</ProjectGuid>
|
||||||
|
<MainSource>ApplicationBase.dpk</MainSource>
|
||||||
|
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||||
|
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
||||||
|
<DCC_DCCCompiler>DCC32</DCC_DCCCompiler>
|
||||||
|
<DCC_DependencyCheckOutputName>..\..\Output\Debug\Cliente\ApplicationBase.bpl</DCC_DependencyCheckOutputName>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||||
|
<Version>7.0</Version>
|
||||||
|
<DCC_DebugInformation>False</DCC_DebugInformation>
|
||||||
|
<DCC_LocalDebugSymbols>False</DCC_LocalDebugSymbols>
|
||||||
|
<DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo>
|
||||||
|
<DCC_DcuOutput>.\</DCC_DcuOutput>
|
||||||
|
<DCC_ObjOutput>.\</DCC_ObjOutput>
|
||||||
|
<DCC_HppOutput>.\</DCC_HppOutput>
|
||||||
|
<DCC_BplOutput>..\..\Output\Release\Cliente</DCC_BplOutput>
|
||||||
|
<DCC_DcpOutput>..\Lib</DCC_DcpOutput>
|
||||||
|
<DCC_UnitSearchPath>..\Lib</DCC_UnitSearchPath>
|
||||||
|
<DCC_ResourcePath>..\Lib</DCC_ResourcePath>
|
||||||
|
<DCC_ObjPath>..\Lib</DCC_ObjPath>
|
||||||
|
<DCC_IncludePath>..\Lib</DCC_IncludePath>
|
||||||
|
<DCC_Define>RELEASE</DCC_Define>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||||
|
<Version>7.0</Version>
|
||||||
|
<DCC_DcuOutput>.\</DCC_DcuOutput>
|
||||||
|
<DCC_ObjOutput>.\</DCC_ObjOutput>
|
||||||
|
<DCC_HppOutput>.\</DCC_HppOutput>
|
||||||
|
<DCC_BplOutput>..\..\Output\Debug\Cliente</DCC_BplOutput>
|
||||||
|
<DCC_DcpOutput>..\Lib</DCC_DcpOutput>
|
||||||
|
<DCC_UnitSearchPath>$(BDS)\lib\Debug;$(BDS)\Lib\Debug\Indy10;T:\COMPON~1\jcl\lib\d11\debug;$(BDSCOMMONDIR)\Dcp;..\Lib</DCC_UnitSearchPath>
|
||||||
|
<DCC_ResourcePath>$(BDS)\lib\Debug;$(BDS)\Lib\Debug\Indy10;T:\COMPON~1\jcl\lib\d11\debug;$(BDSCOMMONDIR)\Dcp;..\Lib</DCC_ResourcePath>
|
||||||
|
<DCC_ObjPath>$(BDS)\lib\Debug;$(BDS)\Lib\Debug\Indy10;T:\COMPON~1\jcl\lib\d11\debug;$(BDSCOMMONDIR)\Dcp;..\Lib</DCC_ObjPath>
|
||||||
|
<DCC_IncludePath>$(BDS)\lib\Debug;$(BDS)\Lib\Debug\Indy10;T:\COMPON~1\jcl\lib\d11\debug;$(BDSCOMMONDIR)\Dcp;..\Lib</DCC_IncludePath>
|
||||||
|
<DCC_Define>DEBUG</DCC_Define>
|
||||||
|
<DCC_Optimize>False</DCC_Optimize>
|
||||||
|
<DCC_GenerateStackFrames>True</DCC_GenerateStackFrames>
|
||||||
|
<DCC_DebugInfoInExe>True</DCC_DebugInfoInExe>
|
||||||
|
<DCC_DebugVN>True</DCC_DebugVN>
|
||||||
|
</PropertyGroup>
|
||||||
|
<ProjectExtensions>
|
||||||
|
<Borland.Personality>Delphi.Personality</Borland.Personality>
|
||||||
|
<Borland.ProjectType>Package</Borland.ProjectType>
|
||||||
|
<BorlandProject>
|
||||||
|
<BorlandProject><Delphi.Personality><Parameters><Parameters Name="UseLauncher">False</Parameters><Parameters Name="LoadAllSymbols">True</Parameters><Parameters Name="LoadUnspecifiedSymbols">False</Parameters></Parameters><Package_Options><Package_Options Name="ImplicitBuild">False</Package_Options><Package_Options Name="DesigntimeOnly">False</Package_Options><Package_Options Name="RuntimeOnly">False</Package_Options></Package_Options><VersionInfo><VersionInfo Name="IncludeVerInfo">True</VersionInfo><VersionInfo Name="AutoIncBuild">False</VersionInfo><VersionInfo Name="MajorVer">1</VersionInfo><VersionInfo Name="MinorVer">0</VersionInfo><VersionInfo Name="Release">0</VersionInfo><VersionInfo Name="Build">0</VersionInfo><VersionInfo Name="Debug">False</VersionInfo><VersionInfo Name="PreRelease">False</VersionInfo><VersionInfo Name="Special">False</VersionInfo><VersionInfo Name="Private">False</VersionInfo><VersionInfo Name="DLL">False</VersionInfo><VersionInfo Name="Locale">3082</VersionInfo><VersionInfo Name="CodePage">1252</VersionInfo></VersionInfo><VersionInfoKeys><VersionInfoKeys Name="CompanyName"></VersionInfoKeys><VersionInfoKeys Name="FileDescription"></VersionInfoKeys><VersionInfoKeys Name="FileVersion">1.0.0.0</VersionInfoKeys><VersionInfoKeys Name="InternalName"></VersionInfoKeys><VersionInfoKeys Name="LegalCopyright"></VersionInfoKeys><VersionInfoKeys Name="LegalTrademarks"></VersionInfoKeys><VersionInfoKeys Name="OriginalFilename"></VersionInfoKeys><VersionInfoKeys Name="ProductName"></VersionInfoKeys><VersionInfoKeys Name="ProductVersion">1.0.0.0</VersionInfoKeys><VersionInfoKeys Name="Comments"></VersionInfoKeys></VersionInfoKeys><Excluded_Packages>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<Excluded_Packages Name="$(BDS)\Bin\dclintraweb_90_100.bpl">VCL for the Web Design Package for CodeGear RAD Studio</Excluded_Packages>
|
||||||
|
<Excluded_Packages Name="$(BDS)\bin\dclwebsnap100.bpl">CodeGear WebSnap Components</Excluded_Packages>
|
||||||
|
<Excluded_Packages Name="$(BDS)\bin\dclsoap100.bpl">CodeGear SOAP Components</Excluded_Packages>
|
||||||
|
<Excluded_Packages Name="$(BDS)\bin\dclofficexp100.bpl">Microsoft Office XP Sample Automation Server Wrapper Components</Excluded_Packages>
|
||||||
|
<Excluded_Packages Name="$(BDS)\bin\dcloffice2k100.bpl">Microsoft Office 2000 Sample Automation Server Wrapper Components</Excluded_Packages>
|
||||||
|
<Excluded_Packages Name="$(BDS)\bin\bcboffice2k100.bpl">CodeGear C++Builder Office 2000 Servers Package</Excluded_Packages>
|
||||||
|
<Excluded_Packages Name="$(BDS)\bin\bcbofficexp100.bpl">CodeGear C++Builder Office XP Servers Package</Excluded_Packages>
|
||||||
|
</Excluded_Packages><Source><Source Name="MainSource">ApplicationBase.dpk</Source></Source></Delphi.Personality><ModelSupport>False</ModelSupport></BorlandProject></BorlandProject>
|
||||||
|
</ProjectExtensions>
|
||||||
|
<Import Project="$(MSBuildBinPath)\Borland.Delphi.Targets" />
|
||||||
|
<ItemGroup>
|
||||||
|
<DelphiCompile Include="ApplicationBase.dpk">
|
||||||
|
<MainSource>MainSource</MainSource>
|
||||||
|
</DelphiCompile>
|
||||||
|
<DCCReference Include="Empresas\Data\uDataModuleEmpresas.pas">
|
||||||
|
<Form>DataModuleEmpresasObj</Form>
|
||||||
|
</DCCReference>
|
||||||
|
<DCCReference Include="Empresas\Model\Data\uIDataModuleEmpresas.pas" />
|
||||||
|
<DCCReference Include="Empresas\Model\schEmpresasClient_Intf.pas" />
|
||||||
|
<DCCReference Include="Empresas\Model\schEmpresasServer_Intf.pas" />
|
||||||
|
<DCCReference Include="Empresas\Model\uBizEmpresas.pas" />
|
||||||
|
<DCCReference Include="Empresas\Model\uBizEmpresasDatosBancarios.pas" />
|
||||||
|
<DCCReference Include="Empresas\Views\uEditorDatosBancariosEmpresa.pas" />
|
||||||
|
<DCCReference Include="Empresas\Views\uEditorEmpresa.pas" />
|
||||||
|
<DCCReference Include="Empresas\Views\uEmpresasViewRegister.pas" />
|
||||||
|
<DCCReference Include="Empresas\Views\uViewDatosBancarios.pas" />
|
||||||
|
<DCCReference Include="Empresas\Views\uViewEmpresa.pas" />
|
||||||
|
<DCCReference Include="uAdminPV_App.pas" />
|
||||||
|
<DCCReference Include="Usuarios\Controller\uUsuariosController.pas" />
|
||||||
|
<DCCReference Include="Usuarios\Controller\View\uIEditorLogin.pas" />
|
||||||
|
<DCCReference Include="Usuarios\Controller\View\uIEditorPerfilesUsuario.pas" />
|
||||||
|
<DCCReference Include="Usuarios\Controller\View\uIEditorPerfilUsuario.pas" />
|
||||||
|
<DCCReference Include="Usuarios\Controller\View\uIEditorUsuario.pas" />
|
||||||
|
<DCCReference Include="Usuarios\Controller\View\uIEditorUsuarios.pas" />
|
||||||
|
<DCCReference Include="Usuarios\Data\uDataModuleUsuarios.pas">
|
||||||
|
<Form>DataModuleUsuarios</Form>
|
||||||
|
</DCCReference>
|
||||||
|
<DCCReference Include="Usuarios\Data\uUCROConn.pas" />
|
||||||
|
<DCCReference Include="Usuarios\Model\BaseD10.dcp" />
|
||||||
|
<DCCReference Include="Usuarios\Model\Data\uIDataModuleUsuarios.pas" />
|
||||||
|
<DCCReference Include="Usuarios\Model\dbrtl.dcp" />
|
||||||
|
<DCCReference Include="Usuarios\Model\pckMD5.dcp" />
|
||||||
|
<DCCReference Include="Usuarios\Model\pckUserControl_RT.dcp" />
|
||||||
|
<DCCReference Include="Usuarios\Model\PLuginSDK_D10R.dcp" />
|
||||||
|
<DCCReference Include="Usuarios\Model\rtl.dcp" />
|
||||||
|
<DCCReference Include="Usuarios\Model\schUsuariosClient_Intf.pas" />
|
||||||
|
<DCCReference Include="Usuarios\Model\schUsuariosServer_Intf.pas" />
|
||||||
|
<DCCReference Include="Usuarios\Model\uBizUsuarios.pas" />
|
||||||
|
<DCCReference Include="Usuarios\Model\vcl.dcp" />
|
||||||
|
<DCCReference Include="Usuarios\Views\uEditorCambiarPassword.pas">
|
||||||
|
<Form>fEditorCambiarPassword</Form>
|
||||||
|
</DCCReference>
|
||||||
|
<DCCReference Include="Usuarios\Views\uEditorLogin.pas">
|
||||||
|
<Form>fEditorLogin</Form>
|
||||||
|
</DCCReference>
|
||||||
|
<DCCReference Include="Usuarios\Views\uEditorPerfilesUsuario.pas">
|
||||||
|
<Form>fEditorPerfilesUsuario</Form>
|
||||||
|
</DCCReference>
|
||||||
|
<DCCReference Include="Usuarios\Views\uEditorPerfilUsuario.pas">
|
||||||
|
<Form>fEditorPerfilUsuario</Form>
|
||||||
|
</DCCReference>
|
||||||
|
<DCCReference Include="Usuarios\Views\uEditorUsuario.pas">
|
||||||
|
<Form>fEditorUsuario</Form>
|
||||||
|
<DesignClass>TFrame</DesignClass>
|
||||||
|
</DCCReference>
|
||||||
|
<DCCReference Include="Usuarios\Views\uEditorUsuarios.pas">
|
||||||
|
<Form>fEditorUsuarios</Form>
|
||||||
|
</DCCReference>
|
||||||
|
<DCCReference Include="Usuarios\Views\uUsuariosViewRegister.pas" />
|
||||||
|
<DCCReference Include="Usuarios\Views\uViewPerfilesUsuario.pas">
|
||||||
|
<Form>frViewPerfilesUsuario</Form>
|
||||||
|
<DesignClass>TFrame</DesignClass>
|
||||||
|
</DCCReference>
|
||||||
|
<DCCReference Include="Usuarios\Views\uViewPerfilUsuario.pas">
|
||||||
|
<Form>frViewPerfilUsuario</Form>
|
||||||
|
<DesignClass>TFrame</DesignClass>
|
||||||
|
</DCCReference>
|
||||||
|
<DCCReference Include="Usuarios\Views\uViewUsuario.pas">
|
||||||
|
<Form>frViewUsuario</Form>
|
||||||
|
<DesignClass>TFrame</DesignClass>
|
||||||
|
</DCCReference>
|
||||||
|
<DCCReference Include="Usuarios\Views\uViewUsuarios.pas">
|
||||||
|
<Form>frViewUsuarios</Form>
|
||||||
|
<DesignClass>TFrame</DesignClass>
|
||||||
|
</DCCReference>
|
||||||
|
</ItemGroup>
|
||||||
|
</Project>
|
||||||
|
<!-- EurekaLog First Line
|
||||||
|
[Exception Log]
|
||||||
|
EurekaLog Version=6006
|
||||||
|
Activate=0
|
||||||
|
Activate Handle=1
|
||||||
|
Save Log File=1
|
||||||
|
Foreground Tab=0
|
||||||
|
Freeze Activate=0
|
||||||
|
Freeze Timeout=0
|
||||||
|
SMTP From=eurekalog@email.com
|
||||||
|
SMTP Host=
|
||||||
|
SMTP Port=25
|
||||||
|
SMTP UserID=
|
||||||
|
SMTP Password=
|
||||||
|
Append to Log=0
|
||||||
|
TerminateBtn Operation=2
|
||||||
|
Errors Number=32
|
||||||
|
Errors Terminate=3
|
||||||
|
Email Address=
|
||||||
|
Email Object=
|
||||||
|
Email Send Options=0
|
||||||
|
Output Path=
|
||||||
|
Encrypt Password=
|
||||||
|
AutoCloseDialogSecs=0
|
||||||
|
WebSendMode=0
|
||||||
|
SupportULR=
|
||||||
|
HTMLLayout Count=15
|
||||||
|
HTMLLine0="%3Chtml%3E"
|
||||||
|
HTMLLine1=" %3Chead%3E"
|
||||||
|
HTMLLine2=" %3C/head%3E"
|
||||||
|
HTMLLine3=" %3Cbody TopMargin=10 LeftMargin=10%3E"
|
||||||
|
HTMLLine4=" %3Ctable width="100%%" border="0"%3E"
|
||||||
|
HTMLLine5=" %3Ctr%3E"
|
||||||
|
HTMLLine6=" %3Ctd nowrap%3E"
|
||||||
|
HTMLLine7=" %3Cfont face="Lucida Console, Courier" size="2"%3E"
|
||||||
|
HTMLLine8=" %3C%%HTML_TAG%%%3E"
|
||||||
|
HTMLLine9=" %3C/font%3E"
|
||||||
|
HTMLLine10=" %3C/td%3E"
|
||||||
|
HTMLLine11=" %3C/tr%3E"
|
||||||
|
HTMLLine12=" %3C/table%3E"
|
||||||
|
HTMLLine13=" %3C/body%3E"
|
||||||
|
HTMLLine14="%3C/html%3E"
|
||||||
|
AutoCrashOperation=2
|
||||||
|
AutoCrashNumber=10
|
||||||
|
AutoCrashMinutes=1
|
||||||
|
WebURL=
|
||||||
|
WebUserID=
|
||||||
|
WebPassword=
|
||||||
|
WebPort=0
|
||||||
|
AttachedFiles=
|
||||||
|
ProxyURL=
|
||||||
|
ProxyUser=
|
||||||
|
ProxyPassword=
|
||||||
|
ProxyPort=8080
|
||||||
|
TrakerUser=
|
||||||
|
TrakerPassword=
|
||||||
|
TrakerAssignTo=
|
||||||
|
TrakerProject=
|
||||||
|
TrakerCategory=
|
||||||
|
TrakerTrialID=
|
||||||
|
ZipPassword=
|
||||||
|
PreBuildEvent=
|
||||||
|
PostSuccessfulBuildEvent=
|
||||||
|
PostFailureBuildEvent=
|
||||||
|
ExceptionDialogType=2
|
||||||
|
Count=0
|
||||||
|
EMail Message Line Count=0
|
||||||
|
loNoDuplicateErrors=0
|
||||||
|
loAppendReproduceText=0
|
||||||
|
loDeleteLogAtVersionChange=0
|
||||||
|
loAddComputerNameInLogFileName=0
|
||||||
|
loSaveModulesAndProcessesSections=1
|
||||||
|
loSaveAssemblerAndCPUSections=1
|
||||||
|
soAppStartDate=1
|
||||||
|
soAppName=1
|
||||||
|
soAppVersionNumber=1
|
||||||
|
soAppParameters=1
|
||||||
|
soAppCompilationDate=1
|
||||||
|
soAppUpTime=1
|
||||||
|
soExcDate=1
|
||||||
|
soExcAddress=1
|
||||||
|
soExcModuleName=1
|
||||||
|
soExcModuleVersion=1
|
||||||
|
soExcType=1
|
||||||
|
soExcMessage=1
|
||||||
|
soExcID=1
|
||||||
|
soExcCount=1
|
||||||
|
soExcStatus=1
|
||||||
|
soExcNote=1
|
||||||
|
soUserID=1
|
||||||
|
soUserName=1
|
||||||
|
soUserEmail=1
|
||||||
|
soUserPrivileges=1
|
||||||
|
soUserCompany=1
|
||||||
|
soActCtlsFormClass=1
|
||||||
|
soActCtlsFormText=1
|
||||||
|
soActCtlsControlClass=1
|
||||||
|
soActCtlsControlText=1
|
||||||
|
soCmpName=1
|
||||||
|
soCmpTotalMemory=1
|
||||||
|
soCmpFreeMemory=1
|
||||||
|
soCmpTotalDisk=1
|
||||||
|
soCmpFreeDisk=1
|
||||||
|
soCmpSysUpTime=1
|
||||||
|
soCmpProcessor=1
|
||||||
|
soCmpDisplayMode=1
|
||||||
|
soCmpDisplayDPI=1
|
||||||
|
soCmpVideoCard=1
|
||||||
|
soCmpPrinter=1
|
||||||
|
soOSType=1
|
||||||
|
soOSBuildN=1
|
||||||
|
soOSUpdate=1
|
||||||
|
soOSLanguage=1
|
||||||
|
soOSCharset=1
|
||||||
|
soNetIP=1
|
||||||
|
soNetSubmask=1
|
||||||
|
soNetGateway=1
|
||||||
|
soNetDNS1=1
|
||||||
|
soNetDNS2=1
|
||||||
|
soNetDHCP=1
|
||||||
|
soCustomData=1
|
||||||
|
sndShowSendDialog=1
|
||||||
|
sndShowSuccessFailureMsg=0
|
||||||
|
sndSendEntireLog=0
|
||||||
|
sndSendXMLLogCopy=0
|
||||||
|
sndSendScreenshot=1
|
||||||
|
sndUseOnlyActiveWindow=0
|
||||||
|
sndSendLastHTMLPage=1
|
||||||
|
sndSendInSeparatedThread=0
|
||||||
|
sndAddDateInFileName=0
|
||||||
|
sndAddComputerNameInFileName=0
|
||||||
|
edoSendErrorReportChecked=1
|
||||||
|
edoAttachScreenshotChecked=1
|
||||||
|
edoShowCopyToClipOption=1
|
||||||
|
edoShowDetailsButton=1
|
||||||
|
edoShowInDetailedMode=0
|
||||||
|
edoShowInTopMostMode=0
|
||||||
|
edoUseEurekaLogLookAndFeel=0
|
||||||
|
edoShowSendErrorReportOption=1
|
||||||
|
edoShowAttachScreenshotOption=1
|
||||||
|
edoShowCustomButton=0
|
||||||
|
csoShowDLLs=1
|
||||||
|
csoShowBPLs=1
|
||||||
|
csoShowBorlandThreads=1
|
||||||
|
csoShowWindowsThreads=1
|
||||||
|
csoDoNotStoreProcNames=0
|
||||||
|
boPauseBorlandThreads=0
|
||||||
|
boDoNotPauseMainThread=0
|
||||||
|
boPauseWindowsThreads=0
|
||||||
|
boUseMainModuleOptions=1
|
||||||
|
boCopyLogInCaseOfError=1
|
||||||
|
boSaveCompressedCopyInCaseOfError=0
|
||||||
|
boHandleSafeCallExceptions=1
|
||||||
|
boCallRTLExceptionEvent=0
|
||||||
|
boCatchHandledExceptions=0
|
||||||
|
loCatchLeaks=0
|
||||||
|
loGroupsSonLeaks=1
|
||||||
|
loHideBorlandLeaks=1
|
||||||
|
loFreeAllLeaks=1
|
||||||
|
loCatchLeaksExceptions=1
|
||||||
|
cfoReduceFileSize=1
|
||||||
|
cfoCheckFileCorruption=0
|
||||||
|
Count mtInformationMsgCaption=1
|
||||||
|
mtInformationMsgCaption0="Information."
|
||||||
|
Count mtQuestionMsgCaption=1
|
||||||
|
mtQuestionMsgCaption0="Question."
|
||||||
|
Count mtErrorMsgCaption=1
|
||||||
|
mtErrorMsgCaption0="Error."
|
||||||
|
Count mtDialog_Caption=1
|
||||||
|
mtDialog_Caption0="Error occurred"
|
||||||
|
Count mtDialog_ErrorMsgCaption=2
|
||||||
|
mtDialog_ErrorMsgCaption0="An error has occurred during program execution."
|
||||||
|
mtDialog_ErrorMsgCaption1="Please read the following information for further details."
|
||||||
|
Count mtDialog_GeneralCaption=1
|
||||||
|
mtDialog_GeneralCaption0="General"
|
||||||
|
Count mtDialog_GeneralHeader=1
|
||||||
|
mtDialog_GeneralHeader0="General Information"
|
||||||
|
Count mtDialog_CallStackCaption=1
|
||||||
|
mtDialog_CallStackCaption0="Call Stack"
|
||||||
|
Count mtDialog_CallStackHeader=1
|
||||||
|
mtDialog_CallStackHeader0="Call Stack Information"
|
||||||
|
Count mtDialog_ModulesCaption=1
|
||||||
|
mtDialog_ModulesCaption0="Modules"
|
||||||
|
Count mtDialog_ModulesHeader=1
|
||||||
|
mtDialog_ModulesHeader0="Modules Information"
|
||||||
|
Count mtDialog_ProcessesCaption=1
|
||||||
|
mtDialog_ProcessesCaption0="Processes"
|
||||||
|
Count mtDialog_ProcessesHeader=1
|
||||||
|
mtDialog_ProcessesHeader0="Processes Information"
|
||||||
|
Count mtDialog_AsmCaption=1
|
||||||
|
mtDialog_AsmCaption0="Assembler"
|
||||||
|
Count mtDialog_AsmHeader=1
|
||||||
|
mtDialog_AsmHeader0="Assembler Information"
|
||||||
|
Count mtDialog_CPUCaption=1
|
||||||
|
mtDialog_CPUCaption0="CPU"
|
||||||
|
Count mtDialog_CPUHeader=1
|
||||||
|
mtDialog_CPUHeader0="CPU Information"
|
||||||
|
Count mtDialog_OKButtonCaption=1
|
||||||
|
mtDialog_OKButtonCaption0="%26OK"
|
||||||
|
Count mtDialog_TerminateButtonCaption=1
|
||||||
|
mtDialog_TerminateButtonCaption0="%26Terminate"
|
||||||
|
Count mtDialog_RestartButtonCaption=1
|
||||||
|
mtDialog_RestartButtonCaption0="%26Restart"
|
||||||
|
Count mtDialog_DetailsButtonCaption=1
|
||||||
|
mtDialog_DetailsButtonCaption0="%26Details"
|
||||||
|
Count mtDialog_CustomButtonCaption=1
|
||||||
|
mtDialog_CustomButtonCaption0="%26Help"
|
||||||
|
Count mtDialog_SendMessage=1
|
||||||
|
mtDialog_SendMessage0="%26Send this error via Internet"
|
||||||
|
Count mtDialog_ScreenshotMessage=1
|
||||||
|
mtDialog_ScreenshotMessage0="%26Attach a Screenshot image"
|
||||||
|
Count mtDialog_CopyMessage=1
|
||||||
|
mtDialog_CopyMessage0="%26Copy to Clipboard"
|
||||||
|
Count mtDialog_SupportMessage=1
|
||||||
|
mtDialog_SupportMessage0="Go to the Support Page"
|
||||||
|
Count mtMSDialog_ErrorMsgCaption=1
|
||||||
|
mtMSDialog_ErrorMsgCaption0="The application has encountered a problem. We are sorry for the inconvenience."
|
||||||
|
Count mtMSDialog_RestartCaption=1
|
||||||
|
mtMSDialog_RestartCaption0="Restart application."
|
||||||
|
Count mtMSDialog_TerminateCaption=1
|
||||||
|
mtMSDialog_TerminateCaption0="Terminate application."
|
||||||
|
Count mtMSDialog_PleaseCaption=1
|
||||||
|
mtMSDialog_PleaseCaption0="Please tell us about this problem."
|
||||||
|
Count mtMSDialog_DescriptionCaption=1
|
||||||
|
mtMSDialog_DescriptionCaption0="We have created an error report that you can send to us. We will treat this report as confidential and anonymous."
|
||||||
|
Count mtMSDialog_SeeDetailsCaption=1
|
||||||
|
mtMSDialog_SeeDetailsCaption0="To see what data the error report contains,"
|
||||||
|
Count mtMSDialog_SeeClickCaption=1
|
||||||
|
mtMSDialog_SeeClickCaption0="click here."
|
||||||
|
Count mtMSDialog_HowToReproduceCaption=1
|
||||||
|
mtMSDialog_HowToReproduceCaption0="What were you doing when the problem happended (optional)?"
|
||||||
|
Count mtMSDialog_EmailCaption=1
|
||||||
|
mtMSDialog_EmailCaption0="Email address (optional):"
|
||||||
|
Count mtMSDialog_SendButtonCaption=1
|
||||||
|
mtMSDialog_SendButtonCaption0="%26Send Error Report"
|
||||||
|
Count mtMSDialog_NoSendButtonCaption=1
|
||||||
|
mtMSDialog_NoSendButtonCaption0="%26Don't Send"
|
||||||
|
Count mtLog_AppHeader=1
|
||||||
|
mtLog_AppHeader0="Application"
|
||||||
|
Count mtLog_AppStartDate=1
|
||||||
|
mtLog_AppStartDate0="Start Date"
|
||||||
|
Count mtLog_AppName=1
|
||||||
|
mtLog_AppName0="Name/Description"
|
||||||
|
Count mtLog_AppVersionNumber=1
|
||||||
|
mtLog_AppVersionNumber0="Version Number"
|
||||||
|
Count mtLog_AppParameters=1
|
||||||
|
mtLog_AppParameters0="Parameters"
|
||||||
|
Count mtLog_AppCompilationDate=1
|
||||||
|
mtLog_AppCompilationDate0="Compilation Date"
|
||||||
|
Count mtLog_AppUpTime=1
|
||||||
|
mtLog_AppUpTime0="Up Time"
|
||||||
|
Count mtLog_ExcHeader=1
|
||||||
|
mtLog_ExcHeader0="Exception"
|
||||||
|
Count mtLog_ExcDate=1
|
||||||
|
mtLog_ExcDate0="Date"
|
||||||
|
Count mtLog_ExcAddress=1
|
||||||
|
mtLog_ExcAddress0="Address"
|
||||||
|
Count mtLog_ExcModuleName=1
|
||||||
|
mtLog_ExcModuleName0="Module Name"
|
||||||
|
Count mtLog_ExcModuleVersion=1
|
||||||
|
mtLog_ExcModuleVersion0="Module Version"
|
||||||
|
Count mtLog_ExcType=1
|
||||||
|
mtLog_ExcType0="Type"
|
||||||
|
Count mtLog_ExcMessage=1
|
||||||
|
mtLog_ExcMessage0="Message"
|
||||||
|
Count mtLog_ExcID=1
|
||||||
|
mtLog_ExcID0="ID"
|
||||||
|
Count mtLog_ExcCount=1
|
||||||
|
mtLog_ExcCount0="Count"
|
||||||
|
Count mtLog_ExcStatus=1
|
||||||
|
mtLog_ExcStatus0="Status"
|
||||||
|
Count mtLog_ExcNote=1
|
||||||
|
mtLog_ExcNote0="Note"
|
||||||
|
Count mtLog_UserHeader=1
|
||||||
|
mtLog_UserHeader0="User"
|
||||||
|
Count mtLog_UserID=1
|
||||||
|
mtLog_UserID0="ID"
|
||||||
|
Count mtLog_UserName=1
|
||||||
|
mtLog_UserName0="Name"
|
||||||
|
Count mtLog_UserEmail=1
|
||||||
|
mtLog_UserEmail0="Email"
|
||||||
|
Count mtLog_UserCompany=1
|
||||||
|
mtLog_UserCompany0="Company"
|
||||||
|
Count mtLog_UserPrivileges=1
|
||||||
|
mtLog_UserPrivileges0="Privileges"
|
||||||
|
Count mtLog_ActCtrlsHeader=1
|
||||||
|
mtLog_ActCtrlsHeader0="Active Controls"
|
||||||
|
Count mtLog_ActCtrlsFormClass=1
|
||||||
|
mtLog_ActCtrlsFormClass0="Form Class"
|
||||||
|
Count mtLog_ActCtrlsFormText=1
|
||||||
|
mtLog_ActCtrlsFormText0="Form Text"
|
||||||
|
Count mtLog_ActCtrlsControlClass=1
|
||||||
|
mtLog_ActCtrlsControlClass0="Control Class"
|
||||||
|
Count mtLog_ActCtrlsControlText=1
|
||||||
|
mtLog_ActCtrlsControlText0="Control Text"
|
||||||
|
Count mtLog_CmpHeader=1
|
||||||
|
mtLog_CmpHeader0="Computer"
|
||||||
|
Count mtLog_CmpName=1
|
||||||
|
mtLog_CmpName0="Name"
|
||||||
|
Count mtLog_CmpTotalMemory=1
|
||||||
|
mtLog_CmpTotalMemory0="Total Memory"
|
||||||
|
Count mtLog_CmpFreeMemory=1
|
||||||
|
mtLog_CmpFreeMemory0="Free Memory"
|
||||||
|
Count mtLog_CmpTotalDisk=1
|
||||||
|
mtLog_CmpTotalDisk0="Total Disk"
|
||||||
|
Count mtLog_CmpFreeDisk=1
|
||||||
|
mtLog_CmpFreeDisk0="Free Disk"
|
||||||
|
Count mtLog_CmpSystemUpTime=1
|
||||||
|
mtLog_CmpSystemUpTime0="System Up Time"
|
||||||
|
Count mtLog_CmpProcessor=1
|
||||||
|
mtLog_CmpProcessor0="Processor"
|
||||||
|
Count mtLog_CmpDisplayMode=1
|
||||||
|
mtLog_CmpDisplayMode0="Display Mode"
|
||||||
|
Count mtLog_CmpDisplayDPI=1
|
||||||
|
mtLog_CmpDisplayDPI0="Display DPI"
|
||||||
|
Count mtLog_CmpVideoCard=1
|
||||||
|
mtLog_CmpVideoCard0="Video Card"
|
||||||
|
Count mtLog_CmpPrinter=1
|
||||||
|
mtLog_CmpPrinter0="Printer"
|
||||||
|
Count mtLog_OSHeader=1
|
||||||
|
mtLog_OSHeader0="Operating System"
|
||||||
|
Count mtLog_OSType=1
|
||||||
|
mtLog_OSType0="Type"
|
||||||
|
Count mtLog_OSBuildN=1
|
||||||
|
mtLog_OSBuildN0="Build #"
|
||||||
|
Count mtLog_OSUpdate=1
|
||||||
|
mtLog_OSUpdate0="Update"
|
||||||
|
Count mtLog_OSLanguage=1
|
||||||
|
mtLog_OSLanguage0="Language"
|
||||||
|
Count mtLog_OSCharset=1
|
||||||
|
mtLog_OSCharset0="Charset"
|
||||||
|
Count mtLog_NetHeader=1
|
||||||
|
mtLog_NetHeader0="Network"
|
||||||
|
Count mtLog_NetIP=1
|
||||||
|
mtLog_NetIP0="IP Address"
|
||||||
|
Count mtLog_NetSubmask=1
|
||||||
|
mtLog_NetSubmask0="Submask"
|
||||||
|
Count mtLog_NetGateway=1
|
||||||
|
mtLog_NetGateway0="Gateway"
|
||||||
|
Count mtLog_NetDNS1=1
|
||||||
|
mtLog_NetDNS10="DNS 1"
|
||||||
|
Count mtLog_NetDNS2=1
|
||||||
|
mtLog_NetDNS20="DNS 2"
|
||||||
|
Count mtLog_NetDHCP=1
|
||||||
|
mtLog_NetDHCP0="DHCP"
|
||||||
|
Count mtLog_CustInfoHeader=1
|
||||||
|
mtLog_CustInfoHeader0="Custom Information"
|
||||||
|
Count mtCallStack_Address=1
|
||||||
|
mtCallStack_Address0="Address"
|
||||||
|
Count mtCallStack_Name=1
|
||||||
|
mtCallStack_Name0="Module"
|
||||||
|
Count mtCallStack_Unit=1
|
||||||
|
mtCallStack_Unit0="Unit"
|
||||||
|
Count mtCallStack_Class=1
|
||||||
|
mtCallStack_Class0="Class"
|
||||||
|
Count mtCallStack_Procedure=1
|
||||||
|
mtCallStack_Procedure0="Procedure/Method"
|
||||||
|
Count mtCallStack_Line=1
|
||||||
|
mtCallStack_Line0="Line"
|
||||||
|
Count mtCallStack_MainThread=1
|
||||||
|
mtCallStack_MainThread0="Main"
|
||||||
|
Count mtCallStack_ExceptionThread=1
|
||||||
|
mtCallStack_ExceptionThread0="Exception Thread"
|
||||||
|
Count mtCallStack_RunningThread=1
|
||||||
|
mtCallStack_RunningThread0="Running Thread"
|
||||||
|
Count mtCallStack_CallingThread=1
|
||||||
|
mtCallStack_CallingThread0="Calling Thread"
|
||||||
|
Count mtCallStack_ThreadID=1
|
||||||
|
mtCallStack_ThreadID0="ID"
|
||||||
|
Count mtCallStack_ThreadPriority=1
|
||||||
|
mtCallStack_ThreadPriority0="Priority"
|
||||||
|
Count mtCallStack_ThreadClass=1
|
||||||
|
mtCallStack_ThreadClass0="Class"
|
||||||
|
Count mtCallStack_LeakCaption=1
|
||||||
|
mtCallStack_LeakCaption0="Memory Leak"
|
||||||
|
Count mtCallStack_LeakData=1
|
||||||
|
mtCallStack_LeakData0="Data"
|
||||||
|
Count mtCallStack_LeakType=1
|
||||||
|
mtCallStack_LeakType0="Type"
|
||||||
|
Count mtCallStack_LeakSize=1
|
||||||
|
mtCallStack_LeakSize0="Total size"
|
||||||
|
Count mtCallStack_LeakCount=1
|
||||||
|
mtCallStack_LeakCount0="Count"
|
||||||
|
Count mtSendDialog_Caption=1
|
||||||
|
mtSendDialog_Caption0="Send."
|
||||||
|
Count mtSendDialog_Message=1
|
||||||
|
mtSendDialog_Message0="Message"
|
||||||
|
Count mtSendDialog_Resolving=1
|
||||||
|
mtSendDialog_Resolving0="Resolving DNS..."
|
||||||
|
Count mtSendDialog_Login=1
|
||||||
|
mtSendDialog_Login0="Login..."
|
||||||
|
Count mtSendDialog_Connecting=1
|
||||||
|
mtSendDialog_Connecting0="Connecting with server..."
|
||||||
|
Count mtSendDialog_Connected=1
|
||||||
|
mtSendDialog_Connected0="Connected with server."
|
||||||
|
Count mtSendDialog_Sending=1
|
||||||
|
mtSendDialog_Sending0="Sending message..."
|
||||||
|
Count mtSendDialog_Sent=1
|
||||||
|
mtSendDialog_Sent0="Message sent."
|
||||||
|
Count mtSendDialog_SelectProject=1
|
||||||
|
mtSendDialog_SelectProject0="Select project..."
|
||||||
|
Count mtSendDialog_Searching=1
|
||||||
|
mtSendDialog_Searching0="Searching..."
|
||||||
|
Count mtSendDialog_Modifying=1
|
||||||
|
mtSendDialog_Modifying0="Modifying..."
|
||||||
|
Count mtSendDialog_Disconnecting=1
|
||||||
|
mtSendDialog_Disconnecting0="Disconnecting..."
|
||||||
|
Count mtSendDialog_Disconnected=1
|
||||||
|
mtSendDialog_Disconnected0="Disconnected."
|
||||||
|
Count mtReproduceDialog_Caption=1
|
||||||
|
mtReproduceDialog_Caption0="Request"
|
||||||
|
Count mtReproduceDialog_Request=1
|
||||||
|
mtReproduceDialog_Request0="Please describe the steps to reproduce the error:"
|
||||||
|
Count mtReproduceDialog_OKButtonCaption=1
|
||||||
|
mtReproduceDialog_OKButtonCaption0="%26OK"
|
||||||
|
Count mtModules_Handle=1
|
||||||
|
mtModules_Handle0="Handle"
|
||||||
|
Count mtModules_Name=1
|
||||||
|
mtModules_Name0="Name"
|
||||||
|
Count mtModules_Description=1
|
||||||
|
mtModules_Description0="Description"
|
||||||
|
Count mtModules_Version=1
|
||||||
|
mtModules_Version0="Version"
|
||||||
|
Count mtModules_Size=1
|
||||||
|
mtModules_Size0="Size"
|
||||||
|
Count mtModules_LastModified=1
|
||||||
|
mtModules_LastModified0="Modified"
|
||||||
|
Count mtModules_Path=1
|
||||||
|
mtModules_Path0="Path"
|
||||||
|
Count mtProcesses_ID=1
|
||||||
|
mtProcesses_ID0="ID"
|
||||||
|
Count mtProcesses_Name=1
|
||||||
|
mtProcesses_Name0="Name"
|
||||||
|
Count mtProcesses_Description=1
|
||||||
|
mtProcesses_Description0="Description"
|
||||||
|
Count mtProcesses_Version=1
|
||||||
|
mtProcesses_Version0="Version"
|
||||||
|
Count mtProcesses_Memory=1
|
||||||
|
mtProcesses_Memory0="Memory"
|
||||||
|
Count mtProcesses_Priority=1
|
||||||
|
mtProcesses_Priority0="Priority"
|
||||||
|
Count mtProcesses_Threads=1
|
||||||
|
mtProcesses_Threads0="Threads"
|
||||||
|
Count mtProcesses_Path=1
|
||||||
|
mtProcesses_Path0="Path"
|
||||||
|
Count mtCPU_Registers=1
|
||||||
|
mtCPU_Registers0="Registers"
|
||||||
|
Count mtCPU_Stack=1
|
||||||
|
mtCPU_Stack0="Stack"
|
||||||
|
Count mtCPU_MemoryDump=1
|
||||||
|
mtCPU_MemoryDump0="Memory Dump"
|
||||||
|
Count mtSend_SuccessMsg=1
|
||||||
|
mtSend_SuccessMsg0="The message was sent successfully."
|
||||||
|
Count mtSend_FailureMsg=1
|
||||||
|
mtSend_FailureMsg0="Sorry, sending the message didn't work."
|
||||||
|
Count mtSend_BugClosedMsg=2
|
||||||
|
mtSend_BugClosedMsg0="These BUG is just closed."
|
||||||
|
mtSend_BugClosedMsg1="Contact the program support to obtain an update."
|
||||||
|
Count mtSend_UnknownErrorMsg=1
|
||||||
|
mtSend_UnknownErrorMsg0="Unknown error."
|
||||||
|
Count mtSend_InvalidLoginMsg=1
|
||||||
|
mtSend_InvalidLoginMsg0="Invalid login request."
|
||||||
|
Count mtSend_InvalidSearchMsg=1
|
||||||
|
mtSend_InvalidSearchMsg0="Invalid search request."
|
||||||
|
Count mtSend_InvalidSelectionMsg=1
|
||||||
|
mtSend_InvalidSelectionMsg0="Invalid selection request."
|
||||||
|
Count mtSend_InvalidInsertMsg=1
|
||||||
|
mtSend_InvalidInsertMsg0="Invalid insert request."
|
||||||
|
Count mtSend_InvalidModifyMsg=1
|
||||||
|
mtSend_InvalidModifyMsg0="Invalid modify request."
|
||||||
|
Count mtFileCrackedMsg=2
|
||||||
|
mtFileCrackedMsg0="This file is cracked."
|
||||||
|
mtFileCrackedMsg1="The application will be closed."
|
||||||
|
Count mtException_LeakMultiFree=1
|
||||||
|
mtException_LeakMultiFree0="Multi Free memory leak."
|
||||||
|
Count mtException_LeakMemoryOverrun=1
|
||||||
|
mtException_LeakMemoryOverrun0="Memory Overrun leak."
|
||||||
|
Count mtException_AntiFreeze=1
|
||||||
|
mtException_AntiFreeze0="The application seems to be frozen."
|
||||||
|
Count mtInvalidEmailMsg=1
|
||||||
|
mtInvalidEmailMsg0="Invalid email."
|
||||||
|
TextsCollection=
|
||||||
|
EurekaLog Last Line -->
|
||||||
22
Source/ApplicationBase/ApplicationBase.rc
Normal file
22
Source/ApplicationBase/ApplicationBase.rc
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
1 VERSIONINFO
|
||||||
|
FILEVERSION 1,0,0,0
|
||||||
|
PRODUCTVERSION 1,0,0,0
|
||||||
|
FILEFLAGSMASK 0x3FL
|
||||||
|
FILEFLAGS 0x00L
|
||||||
|
FILEOS 0x40004L
|
||||||
|
FILETYPE 0x1L
|
||||||
|
FILESUBTYPE 0x0L
|
||||||
|
BEGIN
|
||||||
|
BLOCK "StringFileInfo"
|
||||||
|
BEGIN
|
||||||
|
BLOCK "0C0A04E4"
|
||||||
|
BEGIN
|
||||||
|
VALUE "FileVersion", "1.0.0.0\0"
|
||||||
|
VALUE "ProductVersion", "1.0.0.0\0"
|
||||||
|
END
|
||||||
|
END
|
||||||
|
BLOCK "VarFileInfo"
|
||||||
|
BEGIN
|
||||||
|
VALUE "Translation", 0x0C0A, 1252
|
||||||
|
END
|
||||||
|
END
|
||||||
BIN
Source/ApplicationBase/ApplicationBase.res
Normal file
BIN
Source/ApplicationBase/ApplicationBase.res
Normal file
Binary file not shown.
@ -0,0 +1,22 @@
|
|||||||
|
unit uIEditorLogin;
|
||||||
|
|
||||||
|
interface
|
||||||
|
|
||||||
|
uses
|
||||||
|
uEditorBase, uUsuariosController;
|
||||||
|
|
||||||
|
type
|
||||||
|
IEditorLogin = interface
|
||||||
|
['{96513A0B-679D-4DD6-8821-C99003DAD2A3}']
|
||||||
|
function ShowModal : Integer;
|
||||||
|
procedure Release;
|
||||||
|
|
||||||
|
function GetController : IUsuariosController;
|
||||||
|
procedure SetController (const AValue : IUsuariosController);
|
||||||
|
property Controller : IUsuariosController read GetController write SetController;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
implementation
|
||||||
|
|
||||||
|
end.
|
||||||
@ -0,0 +1,23 @@
|
|||||||
|
unit uIEditorPerfilUsuario;
|
||||||
|
|
||||||
|
interface
|
||||||
|
|
||||||
|
uses
|
||||||
|
uEditorDBBase, uBizUsuarios, uUsuariosController;
|
||||||
|
|
||||||
|
type
|
||||||
|
IEditorPerfilUsuario = interface(IEditorDBBase)
|
||||||
|
['{1DE19CC0-E4FA-4FD7-AE70-6430781CAFE4}']
|
||||||
|
function GetPerfilUsuario: IBizPerfilUsuario;
|
||||||
|
procedure SetPerfilUsuario(const Value: IBizPerfilUsuario);
|
||||||
|
property PerfilUsuario: IBizPerfilUsuario read GetPerfilUsuario write SetPerfilUsuario;
|
||||||
|
|
||||||
|
function GetController : IUsuariosController;
|
||||||
|
procedure SetController (const Value : IUsuariosController);
|
||||||
|
property Controller : IUsuariosController read GetController write SetController;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
implementation
|
||||||
|
|
||||||
|
end.
|
||||||
@ -0,0 +1,23 @@
|
|||||||
|
unit uIEditorPerfilesUsuario;
|
||||||
|
|
||||||
|
interface
|
||||||
|
|
||||||
|
uses
|
||||||
|
uEditorDBBase, uBizUsuarios, uUsuariosController;
|
||||||
|
|
||||||
|
type
|
||||||
|
IEditorPerfilesUsuario = interface(IEditorDBBase)
|
||||||
|
['{A4EDC876-8290-4AFF-B307-E935CD750842}']
|
||||||
|
function GetPerfilesUsuario: IBizPerfilUsuario;
|
||||||
|
procedure SetPerfilesUsuario(const Value: IBizPerfilUsuario);
|
||||||
|
property PerfilesUsuario: IBizPerfilUsuario read GetPerfilesUsuario write SetPerfilesUsuario;
|
||||||
|
|
||||||
|
function GetController : IUsuariosController;
|
||||||
|
procedure SetController (const Value : IUsuariosController);
|
||||||
|
property Controller : IUsuariosController read GetController write SetController;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
implementation
|
||||||
|
|
||||||
|
end.
|
||||||
@ -0,0 +1,22 @@
|
|||||||
|
unit uIEditorUsuario;
|
||||||
|
|
||||||
|
interface
|
||||||
|
|
||||||
|
uses
|
||||||
|
uEditorDBItem, uUsuariosController, uBizUsuarios;
|
||||||
|
|
||||||
|
type
|
||||||
|
IEditorUsuario = interface(IEditorDBItem)
|
||||||
|
['{D016C4C2-F204-47AA-9327-00379CFFFB14}']
|
||||||
|
function GetController : IUsuariosController;
|
||||||
|
procedure SetController (const Value : IUsuariosController);
|
||||||
|
property Controller : IUsuariosController read GetController write SetController;
|
||||||
|
|
||||||
|
function GetUsuario: IBizUsuario;
|
||||||
|
procedure SetUsuario(const Value: IBizUsuario);
|
||||||
|
property Usuario: IBizUsuario read GetUsuario write SetUsuario;
|
||||||
|
end;
|
||||||
|
|
||||||
|
implementation
|
||||||
|
|
||||||
|
end.
|
||||||
@ -0,0 +1,23 @@
|
|||||||
|
unit uIEditorUsuarios;
|
||||||
|
|
||||||
|
interface
|
||||||
|
|
||||||
|
uses
|
||||||
|
uEditorGridBase, uUsuariosController, uBizUsuarios;
|
||||||
|
|
||||||
|
type
|
||||||
|
IEditorUsuarios = interface(IEditorGridBase)
|
||||||
|
['{236534A8-F225-4EA0-8917-4228E530C604}']
|
||||||
|
function GetController : IUsuariosController;
|
||||||
|
procedure SetController (const Value : IUsuariosController);
|
||||||
|
property Controller : IUsuariosController read GetController write SetController;
|
||||||
|
|
||||||
|
function GetUsuarios: IBizUsuario;
|
||||||
|
procedure SetUsuarios(const Value: IBizUsuario);
|
||||||
|
property Usuarios: IBizUsuario read GetUsuarios write SetUsuarios;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
implementation
|
||||||
|
|
||||||
|
end.
|
||||||
@ -0,0 +1,287 @@
|
|||||||
|
unit uPerfilesUsuarioController;
|
||||||
|
|
||||||
|
interface
|
||||||
|
|
||||||
|
|
||||||
|
uses
|
||||||
|
Classes, SysUtils, uDADataTable, uControllerBase, uEditorDBItem,
|
||||||
|
uIDataModuleUsuarios, uBizUsuarios;
|
||||||
|
|
||||||
|
type
|
||||||
|
IPerfilesUsuarioController = interface(IObservador)
|
||||||
|
['{3D60BC4E-B244-4C08-9A1A-00A7C3B74558}']
|
||||||
|
function BuscarTodos: IBizPerfilUsuario;
|
||||||
|
procedure VerTodos;
|
||||||
|
procedure Ver(const AIDPerfil : Integer);
|
||||||
|
procedure Anadir(APerfilUsuario : IBizPerfilUsuario);
|
||||||
|
function Eliminar(APerfilUsuario : IBizPerfilUsuario): Boolean; overload;
|
||||||
|
function Eliminar(const AIDPerfil : Integer): Boolean; overload;
|
||||||
|
function Guardar(APerfilUsuario : IBizPerfilUsuario): Boolean;
|
||||||
|
procedure DescartarCambios(APerfilUsuario : IBizPerfilUsuario);
|
||||||
|
function Localizar(APerfilesUsuario: IBizPerfilUsuario; ADescripcion:String): Boolean;
|
||||||
|
function DarListaPerfilesUsuario: TStringList;
|
||||||
|
end;
|
||||||
|
|
||||||
|
TPerfilesUsuarioController = class(TObservador, IPerfilesUsuarioController)
|
||||||
|
protected
|
||||||
|
FDataModule : IDataModuleUsuarios;
|
||||||
|
|
||||||
|
procedure RecibirAviso(ASujeto: ISujeto; ADataTable: IDAStronglyTypedDataTable); override;
|
||||||
|
function CreateEditor(const AName : String; const IID: TGUID; out Intf): Boolean;
|
||||||
|
|
||||||
|
//Estos son los tres métodos a sobre escribir si se desea heredar toda la logica de
|
||||||
|
//este controller
|
||||||
|
procedure AsignarDataModule; virtual;
|
||||||
|
procedure ValidarObjetos; virtual;
|
||||||
|
|
||||||
|
public
|
||||||
|
constructor Create; override;
|
||||||
|
destructor Destroy; override;
|
||||||
|
|
||||||
|
function Eliminar(APerfilUsuario : IBizPerfilUsuario): Boolean; overload;
|
||||||
|
function Eliminar(const AIDPerfil : Integer): Boolean; overload;
|
||||||
|
function Guardar(APerfilUsuario : IBizPerfilUsuario): Boolean;
|
||||||
|
procedure DescartarCambios(APerfilUsuario : IBizPerfilUsuario); virtual;
|
||||||
|
procedure Anadir(APerfilUsuario : IBizPerfilUsuario);
|
||||||
|
function BuscarTodos: IBizPerfilUsuario;
|
||||||
|
procedure VerTodos;
|
||||||
|
procedure Ver(const AIDPerfil : Integer);
|
||||||
|
function Localizar(APerfilesUsuario: IBizPerfilUsuario; ADescripcion:String): Boolean;
|
||||||
|
function DarListaPerfilesUsuario: TStringList;
|
||||||
|
end;
|
||||||
|
|
||||||
|
implementation
|
||||||
|
|
||||||
|
uses
|
||||||
|
cxControls, DB, uEditorRegistryUtils,
|
||||||
|
uDAInterfaces, uDataTableUtils,
|
||||||
|
uDateUtils, uROTypes, DateUtils, Controls, Windows, schUsuariosClient_Intf,
|
||||||
|
uDataModuleUsuarios, uIEditorPerfilesUsuario, uIEditorPerfilUsuario;
|
||||||
|
|
||||||
|
{ TPerfilesUsuarioController }
|
||||||
|
|
||||||
|
procedure TPerfilesUsuarioController.Anadir(APerfilUsuario: IBizPerfilUsuario);
|
||||||
|
begin
|
||||||
|
APerfilUsuario.Insert;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TPerfilesUsuarioController.AsignarDataModule;
|
||||||
|
begin
|
||||||
|
FDataModule := TDataModuleUsuarios.Create(Nil);
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TPerfilesUsuarioController.BuscarTodos: IBizPerfilUsuario;
|
||||||
|
begin
|
||||||
|
Result := FDataModule.GetPerfiles;
|
||||||
|
end;
|
||||||
|
|
||||||
|
constructor TPerfilesUsuarioController.Create;
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
AsignarDataModule;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TPerfilesUsuarioController.CreateEditor(const AName: String; const IID: TGUID; out Intf): Boolean;
|
||||||
|
begin
|
||||||
|
Result := Supports(EditorRegistry.CreateEditor(AName), IID, Intf);
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TPerfilesUsuarioController.DarListaPerfilesUsuario: TStringList;
|
||||||
|
var
|
||||||
|
APerfilesUsuario: IBizPerfilUsuario;
|
||||||
|
begin
|
||||||
|
APerfilesUsuario := BuscarTodos;
|
||||||
|
APerfilesUsuario.DataTable.Active := True;
|
||||||
|
Result := TStringList.Create;
|
||||||
|
try
|
||||||
|
with Result do
|
||||||
|
begin
|
||||||
|
APerfilesUsuario.DataTable.First;
|
||||||
|
while not APerfilesUsuario.DataTable.EOF do
|
||||||
|
begin
|
||||||
|
Add(APerfilesUsuario.USERNAME);
|
||||||
|
APerfilesUsuario.DataTable.Next;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
finally
|
||||||
|
APerfilesUsuario := NIL;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TPerfilesUsuarioController.DescartarCambios(APerfilUsuario: IBizPerfilUsuario);
|
||||||
|
begin
|
||||||
|
if not Assigned(APerfilUsuario) then
|
||||||
|
raise Exception.Create ('Perfil no asignado');
|
||||||
|
|
||||||
|
ShowHourglassCursor;
|
||||||
|
try
|
||||||
|
if (APerfilUsuario.State in dsEditModes) then
|
||||||
|
APerfilUsuario.Cancel;
|
||||||
|
|
||||||
|
APerfilUsuario.DataTable.CancelUpdates;
|
||||||
|
finally
|
||||||
|
HideHourglassCursor;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
destructor TPerfilesUsuarioController.Destroy;
|
||||||
|
begin
|
||||||
|
FDataModule := Nil;
|
||||||
|
inherited;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TPerfilesUsuarioController.Eliminar(const AIDPerfil: Integer): Boolean;
|
||||||
|
begin
|
||||||
|
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TPerfilesUsuarioController.ValidarObjetos;
|
||||||
|
var
|
||||||
|
AEditor : IEditorPerfilesUsuario;
|
||||||
|
APerfilesUsuario: IBizPerfilUsuario;
|
||||||
|
begin
|
||||||
|
APerfilesUsuario := FDataModule.GetPerfiles;
|
||||||
|
if Assigned(APerfilesUsuario) then
|
||||||
|
begin
|
||||||
|
APerfilesUsuario.Active := True;
|
||||||
|
ShowHourglassCursor;
|
||||||
|
try
|
||||||
|
CreateEditor('EditorPerfilesUsuario', IEditorPerfilesUsuario, AEditor);
|
||||||
|
if Assigned(AEditor) then
|
||||||
|
with (AEditor as IEditorPerfilesUsuario) do
|
||||||
|
begin
|
||||||
|
Controller := Self; //OJO ORDEN MUY IMPORTANTE
|
||||||
|
PerfilesUsuario := APerfilesUsuario;
|
||||||
|
ShowEmbedded;
|
||||||
|
end;
|
||||||
|
finally
|
||||||
|
AEditor := NIL;
|
||||||
|
APerfilesUsuario := NIL;
|
||||||
|
HideHourglassCursor;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TPerfilesUsuarioController.Ver(const AIDPerfil: Integer);
|
||||||
|
var
|
||||||
|
AEditor : IEditorPerfilUsuario;
|
||||||
|
FPerfil : IBizPerfilUsuario;
|
||||||
|
begin
|
||||||
|
FPerfil := FDataModule.GetPerfil(AIDPerfil);
|
||||||
|
if Assigned(FPerfil) then
|
||||||
|
begin
|
||||||
|
FPerfil.Active := True;
|
||||||
|
ShowHourglassCursor;
|
||||||
|
try
|
||||||
|
CreateEditor('EditorPerfilUsuario', IEditorPerfilUsuario, AEditor);
|
||||||
|
if Assigned(AEditor) then
|
||||||
|
with (AEditor as IEditorPerfilUsuario) do
|
||||||
|
begin
|
||||||
|
Controller := Self; //OJO ORDEN MUY IMPORTANTE
|
||||||
|
PerfilUsuario := FPerfil;
|
||||||
|
ShowModal;
|
||||||
|
Release;
|
||||||
|
end;
|
||||||
|
finally
|
||||||
|
AEditor := NIL;
|
||||||
|
FPerfil := NIL;
|
||||||
|
HideHourglassCursor;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TPerfilesUsuarioController.VerTodos;
|
||||||
|
var
|
||||||
|
AEditor : IEditorPerfilesUsuario;
|
||||||
|
APerfilesUsuario: IBizPerfilUsuario;
|
||||||
|
begin
|
||||||
|
APerfilesUsuario := FDataModule.GetPerfiles;
|
||||||
|
if Assigned(APerfilesUsuario) then
|
||||||
|
begin
|
||||||
|
APerfilesUsuario.Active := True;
|
||||||
|
ShowHourglassCursor;
|
||||||
|
try
|
||||||
|
CreateEditor('EditorPerfilesUsuario', IEditorPerfilesUsuario, AEditor);
|
||||||
|
if Assigned(AEditor) then
|
||||||
|
with (AEditor as IEditorPerfilesUsuario) do
|
||||||
|
begin
|
||||||
|
Controller := Self; //OJO ORDEN MUY IMPORTANTE
|
||||||
|
PerfilesUsuario := APerfilesUsuario;
|
||||||
|
ShowEmbedded;
|
||||||
|
end;
|
||||||
|
finally
|
||||||
|
AEditor := NIL;
|
||||||
|
APerfilesUsuario := NIL;
|
||||||
|
HideHourglassCursor;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TPerfilesUsuarioController.Eliminar(APerfilUsuario: IBizPerfilUsuario): Boolean;
|
||||||
|
begin
|
||||||
|
Result := False;
|
||||||
|
|
||||||
|
if not Assigned(APerfilUsuario) then
|
||||||
|
raise Exception.Create ('Perfil no asignado');
|
||||||
|
|
||||||
|
ShowHourglassCursor;
|
||||||
|
try
|
||||||
|
if (APerfilUsuario.State in dsEditModes) then
|
||||||
|
APerfilUsuario.Cancel;
|
||||||
|
|
||||||
|
APerfilUsuario.Delete;
|
||||||
|
APerfilUsuario.DataTable.ApplyUpdates;
|
||||||
|
HideHourglassCursor;
|
||||||
|
Result := True;
|
||||||
|
finally
|
||||||
|
HideHourglassCursor;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TPerfilesUsuarioController.RecibirAviso(ASujeto: ISujeto; ADataTable: IDAStronglyTypedDataTable);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
//
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TPerfilesUsuarioController.Guardar(APerfilUsuario: IBizPerfilUsuario): Boolean;
|
||||||
|
begin
|
||||||
|
Result := False;
|
||||||
|
|
||||||
|
if not Assigned(APerfilUsuario) then
|
||||||
|
raise Exception.Create ('Perfil no asignado');
|
||||||
|
|
||||||
|
ValidarObjetos;
|
||||||
|
|
||||||
|
ShowHourglassCursor;
|
||||||
|
try
|
||||||
|
if (APerfilUsuario.DataTable.State in dsEditModes) then
|
||||||
|
APerfilUsuario.DataTable.Post;
|
||||||
|
|
||||||
|
APerfilUsuario.DataTable.ApplyUpdates;
|
||||||
|
|
||||||
|
Result := True;
|
||||||
|
finally
|
||||||
|
HideHourglassCursor;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TPerfilesUsuarioController.Localizar(APerfilesUsuario: IBizPerfilUsuario; ADescripcion: String): Boolean;
|
||||||
|
begin
|
||||||
|
Result := True;
|
||||||
|
ShowHourglassCursor;
|
||||||
|
try
|
||||||
|
with APerfilesUsuario.DataTable do
|
||||||
|
begin
|
||||||
|
DisableControls;
|
||||||
|
First;
|
||||||
|
if not Locate(fld_PERFILESUSERNAME, ADescripcion, []) then
|
||||||
|
Result := False;
|
||||||
|
EnableControls;
|
||||||
|
end;
|
||||||
|
finally
|
||||||
|
HideHourglassCursor;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
end.
|
||||||
@ -0,0 +1,923 @@
|
|||||||
|
unit uUsuariosController;
|
||||||
|
|
||||||
|
interface
|
||||||
|
|
||||||
|
|
||||||
|
uses
|
||||||
|
Classes, SysUtils, Forms, uDADataTable, uControllerBase,
|
||||||
|
uIDataModuleUsuarios, uDataModuleUsuarios, UCBase, uBizUsuarios;
|
||||||
|
|
||||||
|
type
|
||||||
|
TUCCriptografia = (ucStandard, ucMD5);
|
||||||
|
|
||||||
|
IUsuariosController = interface(IControllerBase)
|
||||||
|
['{DD963EEC-5880-4DE7-AF55-B5080B538D84}']
|
||||||
|
|
||||||
|
procedure Logoff;
|
||||||
|
function StartLogin : Boolean;
|
||||||
|
procedure VerUsuarios;
|
||||||
|
procedure VerPerfiles;
|
||||||
|
procedure VerUsuario(const AIDUser: Integer); overload;
|
||||||
|
procedure VerUsuario(AUser : IBizUsuario); overload;
|
||||||
|
|
||||||
|
procedure VerPerfil(const AIDPerfil: Integer); overload;
|
||||||
|
procedure VerPerfil(APerfil : IBizPerfilUsuario); overload;
|
||||||
|
|
||||||
|
procedure _ShowUserManager;
|
||||||
|
procedure _ShowProfileManager;
|
||||||
|
procedure _ShowLogManager;
|
||||||
|
procedure _ShowChangePassword;
|
||||||
|
function ComprobarUsuario(const User : String; const Password: String): Boolean;
|
||||||
|
function CambiarPassword(const AIDUser: Integer): Boolean;
|
||||||
|
|
||||||
|
function GetMaxIntentosLogin: Integer;
|
||||||
|
procedure SetMaxIntentosLogin(const Value: Integer);
|
||||||
|
property MaxIntentosLogin : Integer read GetMaxIntentosLogin write SetMaxIntentosLogin;
|
||||||
|
|
||||||
|
function GetCurrentUser: IBizUsuario;
|
||||||
|
property CurrentUser: IBizUsuario read GetCurrentUser;
|
||||||
|
|
||||||
|
function GuardarPerfil(APerfil : IBizPerfilUsuario): Boolean;
|
||||||
|
function GuardarUsuario(AUser : IBizUsuario): Boolean;
|
||||||
|
|
||||||
|
function EliminarUsuario(const AIDUser : integer): Boolean; overload;
|
||||||
|
function EliminarUsuario(AUser : IBizUsuario): Boolean; overload;
|
||||||
|
|
||||||
|
function EliminarPerfil(APerfil : IBizPerfilUsuario): Boolean; overload;
|
||||||
|
function EliminarPerfil(const AIDPerfil : integer): Boolean; overload;
|
||||||
|
|
||||||
|
function HayUsuarioConPerfil(const AIDPerfil : integer): Boolean;
|
||||||
|
|
||||||
|
function BuscarUsuario(const AIDUser: Integer): IBizUsuario;
|
||||||
|
function BuscarTodosUsuarios: IBizUsuario;
|
||||||
|
|
||||||
|
function DarListaPerfilesUsuario: TStringList;
|
||||||
|
function DarListaUsuarios: TStringList;
|
||||||
|
|
||||||
|
function ValidarPassword(const APassword : string; const ALogin : String;
|
||||||
|
const ANombre: String; out AMsg : String): boolean;
|
||||||
|
|
||||||
|
function NuevoUsuario : IBizUsuario;
|
||||||
|
function NuevoPerfil : IBizPerfilUsuario;
|
||||||
|
|
||||||
|
function GetCriptografia : TUCCriptografia;
|
||||||
|
property Criptografia: TUCCriptografia read GetCriptografia;
|
||||||
|
|
||||||
|
function GetUsarPasswordsSeguras: Boolean;
|
||||||
|
procedure SetUsarPasswordsSeguras(const Value: Boolean);
|
||||||
|
property UsarPasswordsSeguras : Boolean read GetUsarPasswordsSeguras write SetUsarPasswordsSeguras;
|
||||||
|
|
||||||
|
{
|
||||||
|
procedure ChangePassword(IDUser: Integer; NewPassword: String);
|
||||||
|
procedure AddRight(idUser: Integer; ItemRight: TObject; FullPath: Boolean = True); overload;
|
||||||
|
procedure AddRight(idUser: Integer; ItemRight: String); overload;
|
||||||
|
procedure AddRightEX(idUser: Integer; Module, FormName, ObjName: String);
|
||||||
|
function VerificaLogin(User, Password: String): Boolean;
|
||||||
|
function GetLocalUserName: String;
|
||||||
|
function GetLocalComputerName: String;
|
||||||
|
function AddUser(Login, Password, Name, Mail: String; Profile , UserExpired , DaysExpired : Integer; PrivUser: Boolean): Integer;
|
||||||
|
function ExisteUsuario(Login: String): Boolean;
|
||||||
|
property CurrentUser: TUCCurrentUser read FCurrentUser write FCurrentUser;
|
||||||
|
property CurrentEmpresa : TEmpresaDef read FEmpresaAtual write FEmpresaAtual;
|
||||||
|
property UserSettings: TUCUserSettings read FUserSettings write SetUserSettings;}
|
||||||
|
|
||||||
|
end;
|
||||||
|
|
||||||
|
TUsuariosController = class(TControllerBase, IUsuariosController)
|
||||||
|
private
|
||||||
|
procedure FiltrarEmpresa(AUsuario: IBizUsuario);
|
||||||
|
protected
|
||||||
|
FDataModule : IDataModuleUsuarios;
|
||||||
|
FUserControl: TUserControl;
|
||||||
|
FCurrentUser : IBizUsuario;
|
||||||
|
FUsarPasswordsSeguras : Boolean;
|
||||||
|
|
||||||
|
function GetMaxIntentosLogin: Integer;
|
||||||
|
procedure SetMaxIntentosLogin(const Value: Integer);
|
||||||
|
|
||||||
|
procedure RecibirAviso(ASujeto: ISujeto; ADataTable: IDAStronglyTypedDataTable); override;
|
||||||
|
function CreateEditor(const AName : String; const IID: TGUID; out Intf): Boolean;
|
||||||
|
|
||||||
|
procedure AsignarDataModule;
|
||||||
|
procedure InicializarUserControl;
|
||||||
|
function GetCurrentUser: IBizUsuario;
|
||||||
|
|
||||||
|
function AnadirUsuario(AUser : IBizUsuario): Boolean;
|
||||||
|
function ModificarUsuario(AUser : IBizUsuario): Boolean;
|
||||||
|
|
||||||
|
function AnadirPerfil(APerfil : IBizPerfilUsuario): Boolean;
|
||||||
|
function ModificarPerfil(APerfil : IBizPerfilUsuario): Boolean;
|
||||||
|
|
||||||
|
function ValidarUsuario(AUser: IBizUsuario): Boolean;
|
||||||
|
function ValidarPerfil(APerfil: IBizPerfilUsuario): Boolean;
|
||||||
|
|
||||||
|
function GetCriptografia : TUCCriptografia;
|
||||||
|
function CambiarPassword(const AIDUser: Integer; const ANewPassword: String): Boolean; overload;
|
||||||
|
|
||||||
|
function GetUsarPasswordsSeguras: Boolean;
|
||||||
|
procedure SetUsarPasswordsSeguras(const Value: Boolean);
|
||||||
|
public
|
||||||
|
constructor Create; virtual;
|
||||||
|
destructor Destroy; override;
|
||||||
|
|
||||||
|
procedure Logoff;
|
||||||
|
function StartLogin : Boolean;
|
||||||
|
procedure VerUsuarios;
|
||||||
|
procedure VerPerfiles;
|
||||||
|
|
||||||
|
procedure VerUsuario(const AIDUser: Integer); overload;
|
||||||
|
procedure VerUsuario(AUser : IBizUsuario); overload;
|
||||||
|
|
||||||
|
procedure VerPerfil(const AIDPerfil: Integer); overload;
|
||||||
|
procedure VerPerfil(APerfil : IBizPerfilUsuario); overload;
|
||||||
|
|
||||||
|
procedure _ShowUserManager;
|
||||||
|
procedure _ShowProfileManager;
|
||||||
|
procedure _ShowLogManager;
|
||||||
|
procedure _ShowChangePassword;
|
||||||
|
function ComprobarUsuario(const User : String; const Password: String): Boolean;
|
||||||
|
function CambiarPassword(const AIDUser: Integer): Boolean; overload;
|
||||||
|
|
||||||
|
function EliminarUsuario(const AIDUser : integer): Boolean; overload;
|
||||||
|
function EliminarUsuario(AUser : IBizUsuario): Boolean; overload;
|
||||||
|
|
||||||
|
function EliminarPerfil(APerfil : IBizPerfilUsuario): Boolean; overload;
|
||||||
|
function EliminarPerfil(const AIDPerfil : integer): Boolean; overload;
|
||||||
|
|
||||||
|
function NuevoUsuario : IBizUsuario;
|
||||||
|
function NuevoPerfil : IBizPerfilUsuario;
|
||||||
|
|
||||||
|
function GuardarPerfil(APerfil : IBizPerfilUsuario): Boolean;
|
||||||
|
function GuardarUsuario(AUser : IBizUsuario): Boolean;
|
||||||
|
|
||||||
|
function BuscarUsuario(const AIDUser: Integer): IBizUsuario;
|
||||||
|
function BuscarTodosUsuarios: IBizUsuario;
|
||||||
|
|
||||||
|
function DarListaPerfilesUsuario: TStringList;
|
||||||
|
function DarListaUsuarios: TStringList;
|
||||||
|
|
||||||
|
function HayUsuarioConPerfil(const AIDPerfil : integer): Boolean;
|
||||||
|
function ValidarPassword(const APassword : string; const ALogin : String;
|
||||||
|
const ANombre: String; out AMsg : String): boolean;
|
||||||
|
|
||||||
|
property UsarPasswordsSeguras : Boolean read GetUsarPasswordsSeguras write SetUsarPasswordsSeguras;
|
||||||
|
property UserControl : TUserControl read FUserControl;
|
||||||
|
property MaxIntentosLogin : Integer read GetMaxIntentosLogin write SetMaxIntentosLogin;
|
||||||
|
property CurrentUser: IBizUsuario read GetCurrentUser;
|
||||||
|
property Criptografia: TUCCriptografia read GetCriptografia;
|
||||||
|
end;
|
||||||
|
|
||||||
|
implementation
|
||||||
|
|
||||||
|
uses
|
||||||
|
cxControls, DB, uEditorRegistryUtils, schUsuariosClient_Intf,
|
||||||
|
uDAInterfaces, uDataTableUtils, uDialogUtils, uAdminPV_App, Dialogs,
|
||||||
|
uDateUtils, uROTypes, DateUtils, Controls, Windows, uIEditorLogin,
|
||||||
|
uIEditorUsuarios, uIEditorUsuario, uIEditorPerfilesUsuario,
|
||||||
|
uIEditorPerfilUsuario, uEditorCambiarPassword;
|
||||||
|
|
||||||
|
{ TUsuariosController }
|
||||||
|
|
||||||
|
function TUsuariosController.AnadirPerfil(APerfil: IBizPerfilUsuario): Boolean;
|
||||||
|
|
||||||
|
function GetNewIdUser: Integer;
|
||||||
|
var
|
||||||
|
TempDs: TDataset;
|
||||||
|
begin
|
||||||
|
with FUserControl do
|
||||||
|
TempDS := DataConnector.UCGetSQLDataSet('SELECT ' + TableUsers.FieldUserID + ' as MaxUserID from ' + TableUsers.TableName +
|
||||||
|
' ORDER BY ' + TableUsers.FieldUserID + ' DESC');
|
||||||
|
Result := TempDs.FieldByName('MaxUserID').AsInteger + 1;
|
||||||
|
TempDS.Close;
|
||||||
|
FreeAndNil(TempDS);
|
||||||
|
end;
|
||||||
|
|
||||||
|
var
|
||||||
|
ANuevoID : Integer;
|
||||||
|
begin
|
||||||
|
Result := False;
|
||||||
|
|
||||||
|
if not Assigned(APerfil) then
|
||||||
|
raise Exception.Create('No hay perfil asignado (AnadirPerfil)');
|
||||||
|
|
||||||
|
if ValidarPerfil(APerfil) then
|
||||||
|
begin
|
||||||
|
ShowHourglassCursor;
|
||||||
|
try
|
||||||
|
ANuevoID := GetNewIdUser;
|
||||||
|
with FUserControl do
|
||||||
|
begin
|
||||||
|
DataConnector.UCExecSQL(Format('INSERT INTO %s(%s, %s, %s) Values(%d,%s,%s)',
|
||||||
|
[TableUsers.TableName,
|
||||||
|
TableUsers.FieldUserID,
|
||||||
|
TableUsers.FieldUserName,
|
||||||
|
TableUsers.FieldTypeRec,
|
||||||
|
ANuevoID,
|
||||||
|
QuotedStr(APerfil.USERNAME),
|
||||||
|
QuotedStr('P')]));
|
||||||
|
end;
|
||||||
|
|
||||||
|
Result := (ANuevoID > 0);
|
||||||
|
|
||||||
|
if Result then
|
||||||
|
begin
|
||||||
|
APerfil.Edit;
|
||||||
|
APerfil.ID := ANuevoID;
|
||||||
|
APerfil.Post;
|
||||||
|
end;
|
||||||
|
finally
|
||||||
|
HideHourglassCursor;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TUsuariosController.AnadirUsuario(AUser: IBizUsuario): Boolean;
|
||||||
|
var
|
||||||
|
ANuevoID : Integer;
|
||||||
|
begin
|
||||||
|
Result := False;
|
||||||
|
|
||||||
|
if not Assigned(AUser) then
|
||||||
|
raise Exception.Create('No hay usuario asignado (AnadirUsuario)');
|
||||||
|
|
||||||
|
if FUserControl.ExisteUsuario(AUser.LOGIN) then
|
||||||
|
begin
|
||||||
|
MessageDlg(Format(FUserControl.UserSettings.CommonMessages.UsuarioExiste, [AUser.LOGIN]), mtWarning, [mbOK], 0);
|
||||||
|
Exit;
|
||||||
|
end;
|
||||||
|
|
||||||
|
if ValidarUsuario(AUser) then
|
||||||
|
begin
|
||||||
|
ShowHourglassCursor;
|
||||||
|
try
|
||||||
|
ANuevoID := FUserControl.AddUser(AUser.LOGIN, AUser.PASS, AUser.USERNAME, AUser.EMAIL,
|
||||||
|
AUser.ID_PERFIL, AUser.BLOQUEADO, AUser.USERDAYSSUN, (AUser.PRIVILEGED = 1));
|
||||||
|
|
||||||
|
Result := (ANuevoID > 0);
|
||||||
|
|
||||||
|
if Result then
|
||||||
|
begin
|
||||||
|
AUser.Edit;
|
||||||
|
AUser.ID := ANuevoID;
|
||||||
|
AUser.Post;
|
||||||
|
end;
|
||||||
|
|
||||||
|
{ TODO -oLuiz -cUpgrade : Consertar a Senha para poder avisar MD5 }
|
||||||
|
{if (Assigned(MailUserControl)) and (MailUserControl.AdicionaUsuario.Ativo) then
|
||||||
|
try
|
||||||
|
MailUserControl.EnviaEmailAdicionaUsuario(vNome, vLogin, Encrypt(vNovaSenha, EncryptKey), vEmail, IntToStr(vPerfil), EncryptKey);
|
||||||
|
except
|
||||||
|
on E: Exception do
|
||||||
|
Log(E.Message, llMedio);
|
||||||
|
end;}
|
||||||
|
finally
|
||||||
|
HideHourglassCursor;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TUsuariosController.AsignarDataModule;
|
||||||
|
begin
|
||||||
|
FDataModule := TDataModuleUsuarios.Create(Nil);
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TUsuariosController.BuscarTodosUsuarios: IBizUsuario;
|
||||||
|
begin
|
||||||
|
Result := FDataModule.GetUsuarios;
|
||||||
|
FiltrarEmpresa(Result);
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TUsuariosController.BuscarUsuario(const AIDUser: Integer): IBizUsuario;
|
||||||
|
begin
|
||||||
|
Result := FDataModule.GetUsuario(AIDUser);
|
||||||
|
FiltrarEmpresa(Result);
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TUsuariosController.CambiarPassword(const AIDUser: Integer;
|
||||||
|
const ANewPassword: String): Boolean;
|
||||||
|
begin
|
||||||
|
FUserControl.ChangePassword(AIDUser, ANewPassword);
|
||||||
|
Result := True;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TUsuariosController.CambiarPassword(const AIDUser: Integer) : Boolean;
|
||||||
|
var
|
||||||
|
AUser : IBizUsuario;
|
||||||
|
AEditorCambiar : TfEditorCambiarPassword;
|
||||||
|
begin
|
||||||
|
AUser := FDataModule.GetUsuario(AIDUser);
|
||||||
|
if Assigned(AUser) then
|
||||||
|
begin
|
||||||
|
AUser.Active := True;
|
||||||
|
|
||||||
|
AEditorCambiar := TfEditorCambiarPassword.Create(NIL);
|
||||||
|
with AEditorCambiar do
|
||||||
|
try
|
||||||
|
Controller := Self;
|
||||||
|
Usuario := AUser;
|
||||||
|
CambioObligatorio := False;
|
||||||
|
if (Length(Trim(AUser.PASS)) = 0) then
|
||||||
|
EditAtu.Enabled := False;
|
||||||
|
if (ShowModal = mrOk) then
|
||||||
|
Result := CambiarPassword(AIDUser, EditNova.Text);
|
||||||
|
finally
|
||||||
|
Release;
|
||||||
|
AUser.Active := False;
|
||||||
|
AUser := NIL;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TUsuariosController.ComprobarUsuario(const User,
|
||||||
|
Password: String): Boolean;
|
||||||
|
begin
|
||||||
|
Result := FUserControl.VerificaLogin(User, Password);
|
||||||
|
if not Result then
|
||||||
|
begin
|
||||||
|
if User = 'admin' then
|
||||||
|
begin
|
||||||
|
if not FUserControl.ExisteUsuario('admin') then
|
||||||
|
begin
|
||||||
|
FUserControl.AddUser('admin', '1', 'Administrador', 'admin@correo.net', 0, 0 , 30, True);
|
||||||
|
Result := ComprobarUsuario(User, Password);
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
constructor TUsuariosController.Create;
|
||||||
|
begin
|
||||||
|
AsignarDataModule;
|
||||||
|
FCurrentUser := NIL;
|
||||||
|
FUserControl := TUserControl.Create(nil);
|
||||||
|
FUsarPasswordsSeguras := False;
|
||||||
|
InicializarUserControl;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TUsuariosController.CreateEditor(const AName: String; const IID: TGUID; out Intf): Boolean;
|
||||||
|
begin
|
||||||
|
Result := Supports(EditorRegistry.CreateEditor(AName), IID, Intf);
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TUsuariosController.DarListaPerfilesUsuario: TStringList;
|
||||||
|
var
|
||||||
|
APerfilesUsuario: IBizPerfilUsuario;
|
||||||
|
i : integer;
|
||||||
|
begin
|
||||||
|
APerfilesUsuario := FDataModule.GetPerfiles;
|
||||||
|
APerfilesUsuario.DataTable.Active := True;
|
||||||
|
|
||||||
|
Result := TStringList.Create;
|
||||||
|
try
|
||||||
|
with Result do
|
||||||
|
begin
|
||||||
|
APerfilesUsuario.DataTable.First;
|
||||||
|
while not APerfilesUsuario.DataTable.EOF do
|
||||||
|
begin
|
||||||
|
Add(Format('%s=%d', [APerfilesUsuario.USERNAME, APerfilesUsuario.ID]));
|
||||||
|
APerfilesUsuario.DataTable.Next;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
finally
|
||||||
|
APerfilesUsuario := NIL;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TUsuariosController.DarListaUsuarios: TStringList;
|
||||||
|
var
|
||||||
|
AUsuarios: IBizUsuario;
|
||||||
|
i : integer;
|
||||||
|
begin
|
||||||
|
AUsuarios := FDataModule.GetUsuarios;
|
||||||
|
AUsuarios.DataTable.Active := True;
|
||||||
|
|
||||||
|
Result := TStringList.Create;
|
||||||
|
try
|
||||||
|
with Result do
|
||||||
|
begin
|
||||||
|
AUsuarios.DataTable.First;
|
||||||
|
while not AUsuarios.DataTable.EOF do
|
||||||
|
begin
|
||||||
|
Add(Format('%s=%d', [AUsuarios.USERNAME, AUsuarios.ID]));
|
||||||
|
AUsuarios.DataTable.Next;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
finally
|
||||||
|
AUsuarios := NIL;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
destructor TUsuariosController.Destroy;
|
||||||
|
begin
|
||||||
|
FreeAndNIL(FUserControl);
|
||||||
|
FDataModule := NIL;
|
||||||
|
|
||||||
|
inherited;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TUsuariosController.EliminarPerfil(
|
||||||
|
APerfil: IBizPerfilUsuario): Boolean;
|
||||||
|
var
|
||||||
|
CanDelete: Boolean;
|
||||||
|
ErrorMsg: String;
|
||||||
|
begin
|
||||||
|
Result := False;
|
||||||
|
|
||||||
|
if not Assigned(APerfil) then
|
||||||
|
raise Exception.Create('No hay perfil asignado (EliminarPerfil)');
|
||||||
|
|
||||||
|
if not APerfil.Active then
|
||||||
|
APerfil.Active := True;
|
||||||
|
|
||||||
|
if APerfil.DataTable.RecordCount = 0 then
|
||||||
|
Exit;
|
||||||
|
|
||||||
|
if HayUsuarioConPerfil(APerfil.ID) then
|
||||||
|
begin
|
||||||
|
//changed by fduenas: PromptDelete_WindowCaption
|
||||||
|
if MessageBox(Application.Handle, PChar(Format(FUserControl.UserSettings.UsersProfile.PromptDelete, [APerfil.USERNAME])),
|
||||||
|
PChar(FUserControl.UserSettings.UsersProfile.PromptDelete_WindowCaption), MB_ICONQUESTION or MB_YESNO or MB_DEFBUTTON2) <> idYes then
|
||||||
|
Exit;
|
||||||
|
end;
|
||||||
|
|
||||||
|
CanDelete := True;
|
||||||
|
if Assigned(FUserControl.onDeleteProfile) then
|
||||||
|
FUserControl.onDeleteProfile(NIL, APerfil.ID, CanDelete, ErrorMsg);
|
||||||
|
if not CanDelete then
|
||||||
|
begin
|
||||||
|
MessageDlg(ErrorMSG, mtWarning, [mbOK], 0);
|
||||||
|
Exit;
|
||||||
|
end;
|
||||||
|
|
||||||
|
with FUserControl do
|
||||||
|
begin
|
||||||
|
DataConnector.UCExecSQL('Delete from ' + TableUsers.TableName + ' where ' + TableUsers.FieldUserID + ' = ' + IntToStr(APerfil.ID));
|
||||||
|
DataConnector.UCExecSQL('Delete from ' + TableRights.TableName + ' where ' + TableRights.FieldUserID + ' = ' + IntToStr(APerfil.ID));
|
||||||
|
DataConnector.UCExecSQL('Delete from ' + TableRights.TableName + 'EX where ' + TableRights.FieldUserID + ' = ' + IntToStr(APerfil.ID));
|
||||||
|
DataConnector.UCExecSQL('Update ' + TableUsers.TableName +
|
||||||
|
' Set ' + TableUsers.FieldProfile + ' = null where ' + TableUsers.FieldUserID + ' = ' + IntToStr(APerfil.ID));
|
||||||
|
end;
|
||||||
|
Result := True;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TUsuariosController.EliminarPerfil(const AIDPerfil: integer): Boolean;
|
||||||
|
begin
|
||||||
|
Result := EliminarPerfil(FDataModule.GetPerfil(AIDPerfil));
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TUsuariosController.EliminarUsuario(AUser: IBizUsuario): Boolean;
|
||||||
|
begin
|
||||||
|
if not Assigned(AUser) then
|
||||||
|
raise Exception.Create('No hay usuario asignado (EliminarUsuario)');
|
||||||
|
|
||||||
|
if not AUser.Active then
|
||||||
|
AUser.Active := True;
|
||||||
|
|
||||||
|
if AUser.DataTable.RecordCount > 0 then
|
||||||
|
Result := EliminarUsuario(AUser.ID);
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TUsuariosController.EliminarUsuario(const AIDUser: integer): Boolean;
|
||||||
|
begin
|
||||||
|
FUserControl.DataConnector.UCExecSQL('Delete from ' + FUserControl.TableRights.TableName + ' where ' + FUserControl.TableRights.FieldUserID + ' = ' + IntToStr(AIDUser));
|
||||||
|
FUserControl.DataConnector.UCExecSQL('Delete from ' + FUserControl.TableUsers.TableName + ' where ' + FUserControl.TableUsers.FieldUserID + ' = ' + IntToStr(AIDUser));
|
||||||
|
Result := True;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TUsuariosController.GetCriptografia: TUCCriptografia;
|
||||||
|
begin
|
||||||
|
case FUserControl.Criptografia of
|
||||||
|
cPadrao: Result := ucStandard;
|
||||||
|
cMD5: Result := ucMD5;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TUsuariosController.GetCurrentUser: IBizUsuario;
|
||||||
|
begin
|
||||||
|
if not Assigned(FCurrentUser) or (FCurrentUser.ID <> FUserControl.CurrentUser.UserID) then
|
||||||
|
FCurrentUser := BuscarUsuario(FUserControl.CurrentUser.UserID);
|
||||||
|
|
||||||
|
if not FCurrentUser.Active then
|
||||||
|
FCurrentUser.Active := True;
|
||||||
|
|
||||||
|
Result := FCurrentUser;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TUsuariosController.GetMaxIntentosLogin: Integer;
|
||||||
|
begin
|
||||||
|
Result := FUserControl.Login.MaxLoginAttempts;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TUsuariosController.GetUsarPasswordsSeguras: Boolean;
|
||||||
|
begin
|
||||||
|
Result := FUsarPasswordsSeguras;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TUsuariosController.GuardarPerfil(APerfil: IBizPerfilUsuario): Boolean;
|
||||||
|
begin
|
||||||
|
Result := False;
|
||||||
|
|
||||||
|
if not Assigned(APerfil) then
|
||||||
|
raise Exception.Create('No hay perfil asignado (GuardarPerfil)');
|
||||||
|
|
||||||
|
if APerfil.EsNuevo then
|
||||||
|
Result := AnadirPerfil(APerfil)
|
||||||
|
else
|
||||||
|
Result := ModificarPerfil(APerfil);
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TUsuariosController.GuardarUsuario(AUser: IBizUsuario): Boolean;
|
||||||
|
begin
|
||||||
|
Result := False;
|
||||||
|
|
||||||
|
if not Assigned(AUser) then
|
||||||
|
raise Exception.Create('No hay usuario asignado (GuardarUsuario)');
|
||||||
|
|
||||||
|
if AUser.EsNuevo then
|
||||||
|
Result := AnadirUsuario(AUser)
|
||||||
|
else
|
||||||
|
Result := ModificarUsuario(AUser);
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TUsuariosController.HayUsuarioConPerfil(
|
||||||
|
const AIDPerfil: integer): Boolean;
|
||||||
|
var
|
||||||
|
TempDS: TDataset;
|
||||||
|
begin
|
||||||
|
Result := False;
|
||||||
|
|
||||||
|
try
|
||||||
|
TempDS := FUserControl.DataConnector.UCGetSQLDataset('Select ' + FUserControl.TableUsers.FieldUserID + ' as IdUser from ' +
|
||||||
|
FUserControl.TableUsers.TableName +
|
||||||
|
' Where ' + FUserControl.TableUsers.FieldTypeRec + ' = ' + QuotedStr('U') +
|
||||||
|
' AND ' + FUserControl.TableUsers.FieldProfile + ' = ' + IntToStr(AIDPerfil));
|
||||||
|
|
||||||
|
Result := (TempDS.FieldByName('IdUser').AsInteger > 0);
|
||||||
|
TempDS.Close;
|
||||||
|
finally
|
||||||
|
FreeAndNil(TempDS);
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TUsuariosController.InicializarUserControl;
|
||||||
|
begin
|
||||||
|
with FUserControl do
|
||||||
|
begin
|
||||||
|
ApplicationID := Application.ExeName;
|
||||||
|
AutoStart := False;
|
||||||
|
Criptografia := cMD5;
|
||||||
|
CheckValidationKey := True;
|
||||||
|
Login.MaxLoginAttempts := 3;
|
||||||
|
UserPasswordChange.ForcePassword := True;
|
||||||
|
UserPasswordChange.MinPasswordLength := 3;
|
||||||
|
end;
|
||||||
|
FDataModule.InicializarUserControl(FUserControl);
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TUsuariosController.Logoff;
|
||||||
|
begin
|
||||||
|
FUserControl.Logoff;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TUsuariosController.ModificarPerfil(
|
||||||
|
APerfil: IBizPerfilUsuario): Boolean;
|
||||||
|
begin
|
||||||
|
Result := False;
|
||||||
|
|
||||||
|
if not Assigned(APerfil) then
|
||||||
|
raise Exception.Create('No hay perfil asignado (ModificarPerfil)');
|
||||||
|
|
||||||
|
if ValidarPerfil(APerfil) then
|
||||||
|
begin
|
||||||
|
ShowHourglassCursor;
|
||||||
|
try
|
||||||
|
with FUserControl do
|
||||||
|
begin
|
||||||
|
DataConnector.UCExecSQL(Format('UPDATE %s SET %s = %s WHERE %s = %d',
|
||||||
|
[TableUsers.TableName,
|
||||||
|
TableUsers.FieldUserName,
|
||||||
|
QuotedStr(APerfil.USERNAME),
|
||||||
|
TableUsers.FieldUserID,
|
||||||
|
APerfil.ID]));
|
||||||
|
end;
|
||||||
|
|
||||||
|
Result := True;
|
||||||
|
finally
|
||||||
|
HideHourglassCursor;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TUsuariosController.ModificarUsuario(AUser: IBizUsuario): Boolean;
|
||||||
|
begin
|
||||||
|
Result := False;
|
||||||
|
|
||||||
|
if not Assigned(AUser) then
|
||||||
|
raise Exception.Create('No hay usuario asignado (ModificarUsuario)');
|
||||||
|
|
||||||
|
if ValidarUsuario(AUser) then
|
||||||
|
begin
|
||||||
|
ShowHourglassCursor;
|
||||||
|
try
|
||||||
|
FUserControl.ChangeUser(AUser.ID, AUser.LOGIN, AUser.USERNAME, AUser.EMAIL,
|
||||||
|
AUser.ID_PERFIL, AUser.BLOQUEADO , AUser.USERDAYSSUN, (AUser.PRIVILEGED = 1));
|
||||||
|
|
||||||
|
Result := True;
|
||||||
|
|
||||||
|
{ TODO -oLuiz -cUpgrade : Consertar a Senha para poder avisar MD5 }
|
||||||
|
{if (Assigned(MailUserControl)) and (MailUserControl.AlteraUsuario.Ativo) then
|
||||||
|
try
|
||||||
|
MailUserControl.EnviaEmailAlteraUsuario(vNome,
|
||||||
|
vLogin,
|
||||||
|
TfrmCadastrarUsuario(Self.Owner).FDataSetCadastroUsuario.FieldByName('SENHA').AsString,
|
||||||
|
vEmail,
|
||||||
|
IntToStr(vPerfil),
|
||||||
|
EncryptKey);
|
||||||
|
except
|
||||||
|
on E: Exception do
|
||||||
|
Log(E.Message, 2);
|
||||||
|
end;}
|
||||||
|
finally
|
||||||
|
HideHourglassCursor;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TUsuariosController.NuevoPerfil: IBizPerfilUsuario;
|
||||||
|
var
|
||||||
|
APerfil : IBizPerfilUsuario;
|
||||||
|
begin
|
||||||
|
APerfil := FDataModule.NuevoPerfil;
|
||||||
|
APerfil.DataTable.Active := True;
|
||||||
|
APerfil.Insert;
|
||||||
|
Result := APerfil;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TUsuariosController.NuevoUsuario: IBizUsuario;
|
||||||
|
var
|
||||||
|
AUsuario : IBizUsuario;
|
||||||
|
begin
|
||||||
|
AUsuario := FDataModule.NuevoUsuario;
|
||||||
|
AUsuario.DataTable.Active := True;
|
||||||
|
AUsuario.Insert;
|
||||||
|
Result := AUsuario;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TUsuariosController.RecibirAviso(ASujeto: ISujeto; ADataTable: IDAStronglyTypedDataTable);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
//
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TUsuariosController.SetMaxIntentosLogin(const Value: Integer);
|
||||||
|
begin
|
||||||
|
FUserControl.Login.MaxLoginAttempts := Value;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TUsuariosController.SetUsarPasswordsSeguras(const Value: Boolean);
|
||||||
|
begin
|
||||||
|
FUsarPasswordsSeguras := Value;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TUsuariosController._ShowChangePassword;
|
||||||
|
begin
|
||||||
|
FUserControl.ShowChangePassword;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TUsuariosController._ShowLogManager;
|
||||||
|
begin
|
||||||
|
FUserControl.ShowLogManager;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TUsuariosController._ShowProfileManager;
|
||||||
|
begin
|
||||||
|
FUserControl.ShowProfileManager;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TUsuariosController.ValidarPassword(const APassword : string;
|
||||||
|
const ALogin : String; const ANombre: String; out AMsg : String): boolean;
|
||||||
|
begin
|
||||||
|
Result := False;
|
||||||
|
AMsg := '';
|
||||||
|
if (FUserControl.UserPasswordChange.ForcePassword) and (Length(Trim(APassword)) = 0) then
|
||||||
|
AMsg := FUserControl.UserSettings.CommonMessages.ChangePasswordError.PasswordRequired
|
||||||
|
else
|
||||||
|
if (Length(Trim(APassword)) < FUserControl.UserPasswordChange.MinPasswordLength) then
|
||||||
|
AMsg := Format(FUserControl.UserSettings.CommonMessages.ChangePasswordError.MinPasswordLength, [FUserControl.UserPasswordChange.MinPasswordLength])
|
||||||
|
else
|
||||||
|
if FUsarPasswordsSeguras and (Pos(LowerCase(APassword), 'abcdeasdfqwerzxcv1234567890321654987test' + LowerCase(ALogin) + LowerCase(AMsg)) > 0) then
|
||||||
|
AMsg := FUserControl.UserSettings.CommonMessages.ChangePasswordError.InvalidNewPassword
|
||||||
|
else
|
||||||
|
Result := true;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TUsuariosController.ValidarPerfil(APerfil: IBizPerfilUsuario): Boolean;
|
||||||
|
begin
|
||||||
|
Result := False;
|
||||||
|
|
||||||
|
if not Assigned(APerfil) then
|
||||||
|
raise Exception.Create ('Perfil no asignado (ValidarPerfil)');
|
||||||
|
|
||||||
|
if (APerfil.DataTable.State in dsEditModes) then
|
||||||
|
APerfil.DataTable.Post;
|
||||||
|
|
||||||
|
if Length(APerfil.USERNAME) = 0 then
|
||||||
|
raise Exception.Create('Debe indicar el nombre del perfil.');
|
||||||
|
|
||||||
|
Result := True;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TUsuariosController.ValidarUsuario(AUser: IBizUsuario): Boolean;
|
||||||
|
begin
|
||||||
|
Result := False;
|
||||||
|
|
||||||
|
if not Assigned(AUser) then
|
||||||
|
raise Exception.Create ('Usuario no asignado (ValidarUsuario)');
|
||||||
|
|
||||||
|
if (AUser.DataTable.State in dsEditModes) then
|
||||||
|
AUser.DataTable.Post;
|
||||||
|
|
||||||
|
if Length(AUser.USERNAME) = 0 then
|
||||||
|
raise Exception.Create('Debe indicar el nombre completo del usuario.');
|
||||||
|
|
||||||
|
if Length(AUser.LOGIN) = 0 then
|
||||||
|
raise Exception.Create('Debe indicar un login para el usuario.');
|
||||||
|
|
||||||
|
Result := True;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
procedure TUsuariosController.VerPerfil(const AIDPerfil: Integer);
|
||||||
|
var
|
||||||
|
FPerfil : IBizPerfilUsuario;
|
||||||
|
begin
|
||||||
|
FPerfil := FDataModule.GetPerfil(AIDPerfil);
|
||||||
|
VerPerfil(FPerfil);
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TUsuariosController.VerPerfil(APerfil: IBizPerfilUsuario);
|
||||||
|
var
|
||||||
|
AEditor : IEditorPerfilUsuario;
|
||||||
|
begin
|
||||||
|
if not Assigned(APerfil) then
|
||||||
|
raise Exception.Create('Perfil no asignado (VerPerfil)');
|
||||||
|
|
||||||
|
APerfil.Active := True;
|
||||||
|
ShowHourglassCursor;
|
||||||
|
try
|
||||||
|
CreateEditor('EditorPerfilUsuario', IEditorPerfilUsuario, AEditor);
|
||||||
|
if Assigned(AEditor) then
|
||||||
|
with (AEditor as IEditorPerfilUsuario) do
|
||||||
|
begin
|
||||||
|
Controller := Self; //OJO ORDEN MUY IMPORTANTE
|
||||||
|
PerfilUsuario := APerfil;
|
||||||
|
ShowModal;
|
||||||
|
Release;
|
||||||
|
end;
|
||||||
|
finally
|
||||||
|
AEditor := NIL;
|
||||||
|
HideHourglassCursor;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TUsuariosController.VerPerfiles;
|
||||||
|
var
|
||||||
|
AEditor : IEditorPerfilesUsuario;
|
||||||
|
APerfilesUsuario: IBizPerfilUsuario;
|
||||||
|
begin
|
||||||
|
APerfilesUsuario := FDataModule.GetPerfiles;
|
||||||
|
if Assigned(APerfilesUsuario) then
|
||||||
|
begin
|
||||||
|
APerfilesUsuario.Active := True;
|
||||||
|
ShowHourglassCursor;
|
||||||
|
try
|
||||||
|
CreateEditor('EditorPerfilesUsuario', IEditorPerfilesUsuario, AEditor);
|
||||||
|
if Assigned(AEditor) then
|
||||||
|
with (AEditor as IEditorPerfilesUsuario) do
|
||||||
|
begin
|
||||||
|
Controller := Self; //OJO ORDEN MUY IMPORTANTE
|
||||||
|
PerfilesUsuario := APerfilesUsuario;
|
||||||
|
ShowEmbedded;
|
||||||
|
end;
|
||||||
|
finally
|
||||||
|
AEditor := NIL;
|
||||||
|
APerfilesUsuario := NIL;
|
||||||
|
HideHourglassCursor;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TUsuariosController.VerUsuario(const AIDUser: Integer);
|
||||||
|
var
|
||||||
|
FUsuario : IBizUsuario;
|
||||||
|
begin
|
||||||
|
FUsuario := FDataModule.GetUsuario(AIDUser);
|
||||||
|
VerUsuario(FUsuario);
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TUsuariosController.VerUsuario(AUser: IBizUsuario);
|
||||||
|
var
|
||||||
|
AEditor : IEditorUsuario;
|
||||||
|
begin
|
||||||
|
if not Assigned(AUser) then
|
||||||
|
raise Exception.Create('Usuario no asignado (VerUsuario)');
|
||||||
|
|
||||||
|
AUser.Active := True;
|
||||||
|
ShowHourglassCursor;
|
||||||
|
try
|
||||||
|
CreateEditor('EditorUsuario', IEditorUsuario, AEditor);
|
||||||
|
if Assigned(AEditor) then
|
||||||
|
with (AEditor as IEditorUsuario) do
|
||||||
|
begin
|
||||||
|
Controller := Self; //OJO ORDEN MUY IMPORTANTE
|
||||||
|
Usuario := AUser;
|
||||||
|
ShowModal;
|
||||||
|
Release;
|
||||||
|
end;
|
||||||
|
finally
|
||||||
|
AEditor := NIL;
|
||||||
|
HideHourglassCursor;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TUsuariosController.VerUsuarios;
|
||||||
|
var
|
||||||
|
AEditor : IEditorUsuarios;
|
||||||
|
FUsuarios : IBizUsuario;
|
||||||
|
begin
|
||||||
|
FUsuarios := FDataModule.GetUsuarios;
|
||||||
|
if Assigned(FUsuarios) then
|
||||||
|
begin
|
||||||
|
FUsuarios.Active := True;
|
||||||
|
ShowHourglassCursor;
|
||||||
|
try
|
||||||
|
CreateEditor('EditorUsuarios', IEditorUsuarios, AEditor);
|
||||||
|
if Assigned(AEditor) then
|
||||||
|
with (AEditor as IEditorUsuarios) do
|
||||||
|
begin
|
||||||
|
Controller := Self; //OJO ORDEN MUY IMPORTANTE
|
||||||
|
Usuarios := FUsuarios;
|
||||||
|
ShowEmbedded;
|
||||||
|
end;
|
||||||
|
finally
|
||||||
|
AEditor := NIL;
|
||||||
|
FUsuarios := NIL;
|
||||||
|
HideHourglassCursor;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TUsuariosController._ShowUserManager;
|
||||||
|
begin
|
||||||
|
FUserControl.ShowUserManager;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TUsuariosController.StartLogin : Boolean;
|
||||||
|
var
|
||||||
|
AEditor : IEditorLogin;
|
||||||
|
begin
|
||||||
|
Result := False;
|
||||||
|
AEditor := NIL;
|
||||||
|
ShowHourglassCursor;
|
||||||
|
try
|
||||||
|
CreateEditor('EditorLogin', IEditorLogin, AEditor);
|
||||||
|
if Assigned(AEditor) then
|
||||||
|
with AEditor do
|
||||||
|
begin
|
||||||
|
Controller := Self;
|
||||||
|
Result := (AEditor.ShowModal = mrOk);
|
||||||
|
Release;
|
||||||
|
end;
|
||||||
|
finally
|
||||||
|
AEditor := NIL;
|
||||||
|
HideHourglassCursor;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TUsuariosController.FiltrarEmpresa(AUsuario: IBizUsuario);
|
||||||
|
var
|
||||||
|
Condicion: TDAWhereExpression;
|
||||||
|
begin
|
||||||
|
|
||||||
|
// AQUI HAY QUE TENER EN CUENTA QUE UN USUARIO PUEDE QUE NO TENGA ACCESO
|
||||||
|
// EN UNA DETERMINADA EMPRESA
|
||||||
|
|
||||||
|
|
||||||
|
{ if AUsuario.DataTable.Active then
|
||||||
|
AUsuario.DataTable.Active := False;
|
||||||
|
|
||||||
|
// Filtrar los contactos actuales por empresa
|
||||||
|
with AUsuario.DataTable.DynamicWhere do
|
||||||
|
begin
|
||||||
|
Condicion := NewBinaryExpression(NewField('', fld_U
|
||||||
|
ContactosID_EMPRESA), NewConstant(AppFactuGES.EmpresaActiva.ID, datInteger), dboEqual);
|
||||||
|
|
||||||
|
if IsEmpty then
|
||||||
|
Expression := Condicion
|
||||||
|
else
|
||||||
|
Expression := NewBinaryExpression(Expression, Condicion, dboAnd);
|
||||||
|
end;}
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
end.
|
||||||
426
Source/ApplicationBase/Usuarios/Data/uDataModuleUsuarios.dfm
Normal file
426
Source/ApplicationBase/Usuarios/Data/uDataModuleUsuarios.dfm
Normal file
@ -0,0 +1,426 @@
|
|||||||
|
inherited DataModuleUsuarios: TDataModuleUsuarios
|
||||||
|
OnCreate = DataModuleCreate
|
||||||
|
Height = 215
|
||||||
|
Width = 331
|
||||||
|
object srvUsuarios: TRORemoteService
|
||||||
|
Message = dmBase.ROMessage
|
||||||
|
Channel = dmBase.ROChannel
|
||||||
|
ServiceName = 'srvUsuarios'
|
||||||
|
Left = 40
|
||||||
|
Top = 80
|
||||||
|
end
|
||||||
|
object UCSettingsSpanish: TUCSettings
|
||||||
|
AppMessages.MsgsForm_BtNew = '&Nuevo Mensaje'
|
||||||
|
AppMessages.MsgsForm_BtReplay = '&Responder'
|
||||||
|
AppMessages.MsgsForm_BtForward = '&Reenviar'
|
||||||
|
AppMessages.MsgsForm_BtDelete = '&Borrar'
|
||||||
|
AppMessages.MsgsForm_BtClose = '&Cerrar'
|
||||||
|
AppMessages.MsgsForm_WindowCaption = 'Mensajes de Sistema'
|
||||||
|
AppMessages.MsgsForm_ColFrom = 'Remitente'
|
||||||
|
AppMessages.MsgsForm_ColSubject = 'Asunto'
|
||||||
|
AppMessages.MsgsForm_ColDate = 'Fecha'
|
||||||
|
AppMessages.MsgsForm_PromptDelete = #191'Est'#225' seguro de eliminar los mensajes seleccionados?'
|
||||||
|
AppMessages.MsgsForm_PromptDelete_WindowCaption = 'Eliminar mensajes'
|
||||||
|
AppMessages.MsgsForm_NoMessagesSelected = '!Ning'#250'n mensaje seleccionado'#161
|
||||||
|
AppMessages.MsgsForm_NoMessagesSelected_WindowCaption = 'Informaci'#243'n'
|
||||||
|
AppMessages.MsgRec_BtClose = '&Cerrar'
|
||||||
|
AppMessages.MsgRec_WindowCaption = 'Mensaje'
|
||||||
|
AppMessages.MsgRec_Title = 'Mensaje Recibido'
|
||||||
|
AppMessages.MsgRec_LabelFrom = 'De:'
|
||||||
|
AppMessages.MsgRec_LabelDate = 'Fecha'
|
||||||
|
AppMessages.MsgRec_LabelSubject = 'Asunto'
|
||||||
|
AppMessages.MsgRec_LabelMessage = 'Mensaje'
|
||||||
|
AppMessages.MsgSend_BtSend = '&Enviar'
|
||||||
|
AppMessages.MsgSend_BtCancel = '&Cancelar'
|
||||||
|
AppMessages.MsgSend_WindowCaption = 'Mensaje'
|
||||||
|
AppMessages.MsgSend_Title = 'Enviar Nuevo Mensaje'
|
||||||
|
AppMessages.MsgSend_GroupTo = 'Para:'
|
||||||
|
AppMessages.MsgSend_RadioUser = 'Usuario:'
|
||||||
|
AppMessages.MsgSend_RadioAll = 'Todos'
|
||||||
|
AppMessages.MsgSend_GroupMessage = 'Mensaje'
|
||||||
|
AppMessages.MsgSend_LabelSubject = 'Asunto'
|
||||||
|
AppMessages.MsgSend_LabelMessageText = 'Texto del mensaje'
|
||||||
|
CommonMessages.AutoLogonError =
|
||||||
|
'Error de Ingreso Autom'#225'tico!'#13#10'Especifique un Usuario y Contrase'#241 +
|
||||||
|
'a V'#225'lidos.'
|
||||||
|
CommonMessages.ChangePasswordError.InvalidCurrentPassword = #161'Contrase'#241'a Actual Incorrecta!'
|
||||||
|
CommonMessages.ChangePasswordError.NewPasswordError =
|
||||||
|
'Los campos Contrase'#241'a Nueva y Confirme Contrase'#241'a deben ser igua' +
|
||||||
|
'les'
|
||||||
|
CommonMessages.ChangePasswordError.NewEqualCurrent = 'Nueva Contrase'#241'a y Contrase'#241'a Actual deben ser diferentes'
|
||||||
|
CommonMessages.ChangePasswordError.PasswordRequired = #161'La Contrase'#241'a es obligatoria!'
|
||||||
|
CommonMessages.ChangePasswordError.MinPasswordLength = 'La Contrase'#241'a debe tener un m'#237'nimo de %d caracteres'
|
||||||
|
CommonMessages.ChangePasswordError.InvalidNewPassword = #161'Prohibido utilizar contrase'#241'as NO Seguras!'
|
||||||
|
CommonMessages.InvalidLogin = 'Usuario y/o Contrase'#241'a Incorrectos!'
|
||||||
|
CommonMessages.InitialMessage.Strings = (
|
||||||
|
'ATENCION! Conecci'#243'n Inicial:'
|
||||||
|
''
|
||||||
|
'Usuario : :user'
|
||||||
|
'Contrase'#241'a : :password'
|
||||||
|
''
|
||||||
|
'Defina permisos para este usuario')
|
||||||
|
CommonMessages.MaxLoginAttemptsError = '%d Intentos de conecci'#243'n inv'#225'lidos !'
|
||||||
|
CommonMessages.PasswordChanged = #161'Se ha cambiado la Contrase'#241'a con '#233'xito!'
|
||||||
|
CommonMessages.BlankPassword = 'Contrase'#241'a vac'#237'a para el Usuario %s'
|
||||||
|
CommonMessages.UsuarioExiste = 'O Usu'#225'rio "%s" j'#225' est'#225' cadastrado no sistema !!'
|
||||||
|
CommonMessages.PasswordExpired = 'Aten'#231#227'o, sua senha expirou, favor troca-la'
|
||||||
|
CommonMessages.ForcaTrocaSenha = 'Mudan'#231'a de senha obrigat'#243'ria'
|
||||||
|
Login.WindowCaption = 'Conecci'#243'n'
|
||||||
|
Login.LabelUser = 'Usuario: '
|
||||||
|
Login.LabelPassword = 'Contrase'#241'a:'
|
||||||
|
Login.BtOk = 'Aceptar'
|
||||||
|
Login.BtCancel = '&Cancelar'
|
||||||
|
Login.LeftImage.Data = {
|
||||||
|
07544269746D617016090000424D160900000000000036040000280000003200
|
||||||
|
0000180000000100080000000000E00400000000000000000000000100000000
|
||||||
|
000000000000000080000080000000808000800000008000800080800000C0C0
|
||||||
|
C000C0DCC000F0CAA6000020400000206000002080000020A0000020C0000020
|
||||||
|
E00000400000004020000040400000406000004080000040A0000040C0000040
|
||||||
|
E00000600000006020000060400000606000006080000060A0000060C0000060
|
||||||
|
E00000800000008020000080400000806000008080000080A0000080C0000080
|
||||||
|
E00000A0000000A0200000A0400000A0600000A0800000A0A00000A0C00000A0
|
||||||
|
E00000C0000000C0200000C0400000C0600000C0800000C0A00000C0C00000C0
|
||||||
|
E00000E0000000E0200000E0400000E0600000E0800000E0A00000E0C00000E0
|
||||||
|
E00040000000400020004000400040006000400080004000A0004000C0004000
|
||||||
|
E00040200000402020004020400040206000402080004020A0004020C0004020
|
||||||
|
E00040400000404020004040400040406000404080004040A0004040C0004040
|
||||||
|
E00040600000406020004060400040606000406080004060A0004060C0004060
|
||||||
|
E00040800000408020004080400040806000408080004080A0004080C0004080
|
||||||
|
E00040A0000040A0200040A0400040A0600040A0800040A0A00040A0C00040A0
|
||||||
|
E00040C0000040C0200040C0400040C0600040C0800040C0A00040C0C00040C0
|
||||||
|
E00040E0000040E0200040E0400040E0600040E0800040E0A00040E0C00040E0
|
||||||
|
E00080000000800020008000400080006000800080008000A0008000C0008000
|
||||||
|
E00080200000802020008020400080206000802080008020A0008020C0008020
|
||||||
|
E00080400000804020008040400080406000804080008040A0008040C0008040
|
||||||
|
E00080600000806020008060400080606000806080008060A0008060C0008060
|
||||||
|
E00080800000808020008080400080806000808080008080A0008080C0008080
|
||||||
|
E00080A0000080A0200080A0400080A0600080A0800080A0A00080A0C00080A0
|
||||||
|
E00080C0000080C0200080C0400080C0600080C0800080C0A00080C0C00080C0
|
||||||
|
E00080E0000080E0200080E0400080E0600080E0800080E0A00080E0C00080E0
|
||||||
|
E000C0000000C0002000C0004000C0006000C0008000C000A000C000C000C000
|
||||||
|
E000C0200000C0202000C0204000C0206000C0208000C020A000C020C000C020
|
||||||
|
E000C0400000C0402000C0404000C0406000C0408000C040A000C040C000C040
|
||||||
|
E000C0600000C0602000C0604000C0606000C0608000C060A000C060C000C060
|
||||||
|
E000C0800000C0802000C0804000C0806000C0808000C080A000C080C000C080
|
||||||
|
E000C0A00000C0A02000C0A04000C0A06000C0A08000C0A0A000C0A0C000C0A0
|
||||||
|
E000C0C00000C0C02000C0C04000C0C06000C0C08000C0C0A000F0FBFF00A4A0
|
||||||
|
A000808080000000FF0000FF000000FFFF00FF000000FF00FF00FFFF0000FFFF
|
||||||
|
FF00FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFD
|
||||||
|
FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFD0000FDFDFDFDFDFDFDFDFDFD
|
||||||
|
FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFD525252525252525252525252
|
||||||
|
5252FDFDFDFDFDFD0000FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFD
|
||||||
|
FDFDFDFDFDFDFDAFB75E5E5E66666767676F6F6F6FB752FDFDFDFDFD0000FDFD
|
||||||
|
FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDAFBF6FBFBF
|
||||||
|
BFBFBFBFBFBFBFBFBFB752FDFDFDFDFD0000FDFDFDFDFDFDFDFDFDFDFDFDFDFD
|
||||||
|
FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDAFB76F676F6FB7B7B7B7B7776F5EB752FD
|
||||||
|
FDFDFDFD0000FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFD
|
||||||
|
FDFDFDAFBF6FBFBFBFBFBFBFBFBFBFBFBFB752FDFDFDFDFD0000FDFDFDFDFDFD
|
||||||
|
FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDAFB76F676F6F6FB7B7
|
||||||
|
B7B7776F5EB752FDFDFDFDFD0000FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFD
|
||||||
|
FDFDFDFDFDFDFDFDFDFDFDAFBF6FBFBFBFBFBFBFBFBFBFBFBFBF52FDFDFDFDFD
|
||||||
|
0000FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDAF
|
||||||
|
B76767676F6F6FB7B7B7776F5EB752FDFDFDFDFD0000FDFDFDFDFDFDFDFDFDFD
|
||||||
|
FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDAFBF6FBFBFBFBFBFBFBFBFBFBF
|
||||||
|
BFBF52FDFDFDFDFD0000FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFD
|
||||||
|
FDFDFDFDFDFDFDAFB76767676F6F6F6FB7B7776F5EB752FDFDFDFDFD0000FDFD
|
||||||
|
FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDAFBF6FBFBF
|
||||||
|
BFBFBFBFBFBFBFBFBFBF52FDFDFDFDFD0000FDFDFDFDFDFDFDFDFDFDFDFDFDFD
|
||||||
|
FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDAFBFB7AFAFB7B7B7B7BFBFBFBFB7B752FD
|
||||||
|
FDFDFDFD0000FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFD
|
||||||
|
FDFDFDFDAFB76F675E5E5E5E5E5E676FB7A5FDFDFDFDFDFD0000FDFDFDFDFDFD
|
||||||
|
FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDF7F79BFDFDFDFD
|
||||||
|
FDFDA4F7A3FDFDFDFDFDFDFD0000FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFD
|
||||||
|
FDFDFDFDFDFDFDFDFDFDFDFDFDF7F79BFDFDFDFDFDFDA407A3FDFDFDFDFDFDFD
|
||||||
|
0000FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFD
|
||||||
|
FDF7F79BFDFDFDFDFDFDA407A3FDFDFDFDFDFDFD0000FDFDFDFDFDFDFDFDFDFD
|
||||||
|
FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDF7F7A4FDFDFDFDFDFDF707
|
||||||
|
A3FDFDFDFDFDFDFD0000FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFD
|
||||||
|
FDFDFDFDFDFDFDFDFDF707A49AFDFDFDFDA30707A3FDFDFDFDFDFDFD0000FDFD
|
||||||
|
FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDF7F6A4
|
||||||
|
A49B9A9AA3A407079AFDFDFDFDFDFDFD0000FDFDFDFDFDFDFDFDFDFDFDFDFDFD
|
||||||
|
FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDF7F6F7F7A4A4F70707A3FDFDFDFD
|
||||||
|
FDFDFDFD0000FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFD
|
||||||
|
FDFDFDFDFDFDFDF7F6F6F6F6F607A3FDFDFDFDFDFDFDFDFD0000FDFDFDFDFDFD
|
||||||
|
FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDF7A3A3A3
|
||||||
|
A3A3FDFDFDFDFDFDFDFDFDFD0000FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFD
|
||||||
|
FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFD
|
||||||
|
0000}
|
||||||
|
Login.LabelTentativa = 'Tentativa : '
|
||||||
|
Login.LabelTentativas = 'M'#225'ximo de Tentativas : '
|
||||||
|
Log.WindowCaption = 'Seguridad'
|
||||||
|
Log.LabelDescription = 'Visor de Eventos'
|
||||||
|
Log.LabelUser = 'Usuario:'
|
||||||
|
Log.LabelDate = 'Fecha:'
|
||||||
|
Log.LabelLevel = 'Nivel M'#237'nimo: '
|
||||||
|
Log.ColAppID = 'AppID'
|
||||||
|
Log.ColLevel = 'Nivel'
|
||||||
|
Log.ColMessage = 'Mensaje'
|
||||||
|
Log.ColUser = 'Usuario'
|
||||||
|
Log.ColDate = 'Fecha'
|
||||||
|
Log.BtFilter = '&Aplicar Filtro'
|
||||||
|
Log.BtDelete = '&Borrar Bit'#225'cora'
|
||||||
|
Log.BtClose = '&Cerrar'
|
||||||
|
Log.PromptDelete =
|
||||||
|
#191'Est'#225' seguro de Eliminar todos todos los registros de Bit'#225'cora s' +
|
||||||
|
'eleccionados?'
|
||||||
|
Log.PromptDelete_WindowCaption = 'Confirmaci'#243'n'
|
||||||
|
Log.OptionUserAll = 'Todos'
|
||||||
|
Log.OptionLevelLow = 'Bajo'
|
||||||
|
Log.OptionLevelNormal = 'Normal'
|
||||||
|
Log.OptionLevelHigh = 'Alto'
|
||||||
|
Log.OptionLevelCritic = 'Cr'#237'tico'
|
||||||
|
Log.DeletePerformed =
|
||||||
|
'Borrado de registros de bit'#225'cora realizado: Usuario = "%s" | Fec' +
|
||||||
|
'ha = %s a %s | Nivel <= %s'
|
||||||
|
UsersForm.WindowCaption = 'Seguridad'
|
||||||
|
UsersForm.LabelDescription = 'Administraci'#243'n de Usuarios'
|
||||||
|
UsersForm.ColName = 'Nombre'
|
||||||
|
UsersForm.ColLogin = 'Usuario'
|
||||||
|
UsersForm.ColEmail = 'Correo'
|
||||||
|
UsersForm.BtAdd = '&Nuevo'
|
||||||
|
UsersForm.BtChange = '&Editar'
|
||||||
|
UsersForm.BtDelete = 'E&liminar'
|
||||||
|
UsersForm.PromptDelete = #191'Est'#225' seguro de Eliminar al Usuario "%s"?'
|
||||||
|
UsersForm.PromptDelete_WindowCaption = 'Eliminar usuario'
|
||||||
|
UsersForm.BtRights = '&Accesos'
|
||||||
|
UsersForm.BtPassword = 'C&ontrase'#241'a'
|
||||||
|
UsersForm.BtClose = '&Cerrar'
|
||||||
|
AddChangeUser.WindowCaption = 'Administraci'#243'n de Usuarios'
|
||||||
|
AddChangeUser.LabelAdd = 'Nuevo Usuario'
|
||||||
|
AddChangeUser.LabelChange = 'Editar Usuario'
|
||||||
|
AddChangeUser.LabelName = 'Nombre:'
|
||||||
|
AddChangeUser.LabelLogin = 'Usuario: '
|
||||||
|
AddChangeUser.LabelEmail = 'Correo: '
|
||||||
|
AddChangeUser.LabelPerfil = 'Perfil: '
|
||||||
|
AddChangeUser.CheckPrivileged = 'Usuario Privilegiado'
|
||||||
|
AddChangeUser.BtSave = '&Guardar'
|
||||||
|
AddChangeUser.BtCancel = 'Cancelar'
|
||||||
|
AddChangeUser.CheckExpira = 'Senha do usu'#225'rio n'#227'o expira'
|
||||||
|
AddChangeUser.Day = 'Dias'
|
||||||
|
AddChangeUser.ExpiredIn = 'Expira em'
|
||||||
|
AddChangeProfile.WindowCaption = 'Perfiles de Usuarios'
|
||||||
|
AddChangeProfile.LabelAdd = 'Nuevo Perfil'
|
||||||
|
AddChangeProfile.LabelChange = 'Editar Perfil'
|
||||||
|
AddChangeProfile.LabelName = 'Descripci'#243'n: '
|
||||||
|
AddChangeProfile.BtSave = '&Guardar'
|
||||||
|
AddChangeProfile.BtCancel = 'Cancelar'
|
||||||
|
UsersProfile.WindowCaption = 'Seguridad'
|
||||||
|
UsersProfile.LabelDescription = 'Perfil de Usuario'
|
||||||
|
UsersProfile.ColProfile = 'Perfil'
|
||||||
|
UsersProfile.BtAdd = '&Nuevo'
|
||||||
|
UsersProfile.BtChange = '&Editar'
|
||||||
|
UsersProfile.BtDelete = 'E&liminar'
|
||||||
|
UsersProfile.BtRights = '&Accesos'
|
||||||
|
UsersProfile.PromptDelete =
|
||||||
|
'Existe(n) usuario(s) con el Perfil "%s". '#191'Est'#225' seguro de elimina' +
|
||||||
|
'r el perfil?'
|
||||||
|
UsersProfile.PromptDelete_WindowCaption = 'Eliminar perfil'
|
||||||
|
UsersProfile.BtClose = '&Cerrar'
|
||||||
|
Rights.WindowCaption = 'Seguridad'
|
||||||
|
Rights.LabelUser = 'Permisos de Usuario : '
|
||||||
|
Rights.LabelProfile = 'Permisos del Perfil : '
|
||||||
|
Rights.PageMenu = 'Elementos del Men'#250
|
||||||
|
Rights.PageActions = 'Acciones'
|
||||||
|
Rights.PageControls = 'Controles'
|
||||||
|
Rights.BtUnlock = '&Permitir'
|
||||||
|
Rights.BtLock = '&Bloquear'
|
||||||
|
Rights.BtSave = '&Guardar'
|
||||||
|
Rights.BtCancel = '&Cancelar'
|
||||||
|
ChangePassword.WindowCaption = 'Seguridad'
|
||||||
|
ChangePassword.LabelDescription = 'Cambiar Contrase'#241'a'
|
||||||
|
ChangePassword.LabelCurrentPassword = 'Contrase'#241'a Actual:'
|
||||||
|
ChangePassword.LabelNewPassword = 'Nueva Contrase'#241'a:'
|
||||||
|
ChangePassword.LabelConfirm = 'Confirme Contrase'#241'a:'
|
||||||
|
ChangePassword.BtSave = '&Guardar'
|
||||||
|
ChangePassword.BtCancel = 'Cancelar'
|
||||||
|
ResetPassword.WindowCaption = 'Ingrese Contrase'#241'a de Usuario: "%s"'
|
||||||
|
ResetPassword.LabelPassword = 'Contrase'#241'a: '
|
||||||
|
History.Evento_Insert = 'Nuevo'
|
||||||
|
History.Evento_Delete = 'Eliminar'
|
||||||
|
History.Evento_Edit = 'Editar'
|
||||||
|
History.Evento_NewRecord = 'Nuevo registro'
|
||||||
|
History.Hist_All = 'Todos'
|
||||||
|
History.Msg_LimpHistorico = 'Excluir el contenido entero del hist'#243'rico ?'
|
||||||
|
History.Msg_MensConfirma = 'Confirme'
|
||||||
|
History.Msg_LogEmptyHistory = 'El usuario %s borra la historia de mesa en %s '
|
||||||
|
History.LabelDescricao = 'Hist'#243'rico de tabelas'
|
||||||
|
History.LabelUser = 'Usuario'
|
||||||
|
History.LabelForm = 'Formul'#225'rio'
|
||||||
|
History.LabelEvento = 'Evento'
|
||||||
|
History.LabelTabela = 'Tabela'
|
||||||
|
History.LabelDataEvento = 'Data'
|
||||||
|
History.LabelHoraEvento = 'Hora'
|
||||||
|
History.Msg_NewRecord = '%s Inserte el nuevo registro'
|
||||||
|
History.Hist_MsgExceptPropr = 'Por favor informe la propiedad %s'
|
||||||
|
History.Hist_BtnFiltro = '&Aplicar Filtro'
|
||||||
|
History.Hist_BtnExcluir = '&Borrar Hist'#243'rico'
|
||||||
|
History.Hist_BtnFechar = '&Cerrar'
|
||||||
|
TypeFieldsDB.Type_VarChar = 'VarChar'
|
||||||
|
TypeFieldsDB.Type_Char = 'Char'
|
||||||
|
TypeFieldsDB.Type_Int = 'Int'
|
||||||
|
TypeFieldsDB.Type_MemoField = 'BLOB SUB_TYPE 1 SEGMENT SIZE 1024'
|
||||||
|
Language = ucSpanish
|
||||||
|
Left = 40
|
||||||
|
Top = 16
|
||||||
|
end
|
||||||
|
object rda_Usuarios: TDARemoteDataAdapter
|
||||||
|
GetSchemaCall.RemoteService = srvUsuarios
|
||||||
|
GetDataCall.RemoteService = srvUsuarios
|
||||||
|
UpdateDataCall.RemoteService = srvUsuarios
|
||||||
|
GetScriptsCall.RemoteService = srvUsuarios
|
||||||
|
RemoteService = srvUsuarios
|
||||||
|
DataStreamer = Bin2DataStreamer
|
||||||
|
Left = 176
|
||||||
|
Top = 16
|
||||||
|
end
|
||||||
|
object Bin2DataStreamer: TDABin2DataStreamer
|
||||||
|
Left = 40
|
||||||
|
Top = 144
|
||||||
|
end
|
||||||
|
object tbl_USUARIOS: TDAMemDataTable
|
||||||
|
RemoteUpdatesOptions = []
|
||||||
|
Fields = <
|
||||||
|
item
|
||||||
|
Name = 'ID'
|
||||||
|
DataType = datAutoInc
|
||||||
|
GeneratorName = 'GEN_USUARIOS_ID'
|
||||||
|
Required = True
|
||||||
|
DictionaryEntry = 'USUARIOS_ID'
|
||||||
|
InPrimaryKey = True
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'USERNAME'
|
||||||
|
DataType = datString
|
||||||
|
Size = 30
|
||||||
|
DisplayLabel = 'Nombre'
|
||||||
|
DictionaryEntry = 'USUARIOS_USERNAME'
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'LOGIN'
|
||||||
|
DataType = datString
|
||||||
|
Size = 30
|
||||||
|
DisplayLabel = 'Login'
|
||||||
|
DictionaryEntry = 'USUARIOS_LOGIN'
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'PASS'
|
||||||
|
DataType = datString
|
||||||
|
Size = 250
|
||||||
|
DisplayLabel = 'Password'
|
||||||
|
DictionaryEntry = 'USUARIOS_PASS'
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'PASSEXPIRED'
|
||||||
|
DataType = datDateTime
|
||||||
|
DisplayLabel = 'Expiraci'#243'n de password'
|
||||||
|
DictionaryEntry = 'USUARIOS_PASSEXPIRED'
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'BLOQUEADO'
|
||||||
|
DataType = datSmallInt
|
||||||
|
DisplayLabel = 'Bloqueado'
|
||||||
|
DictionaryEntry = 'USUARIOS_BLOQUEADO'
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'EMAIL'
|
||||||
|
DataType = datString
|
||||||
|
Size = 150
|
||||||
|
DisplayLabel = 'Correo electr'#243'nico'
|
||||||
|
DictionaryEntry = 'USUARIOS_EMAIL'
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'USERDAYSSUN'
|
||||||
|
DataType = datInteger
|
||||||
|
DisplayLabel = 'USUARIOS_USERDAYSSUN'
|
||||||
|
DictionaryEntry = 'USUARIOS_USERDAYSSUN'
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'PRIVILEGED'
|
||||||
|
DataType = datInteger
|
||||||
|
DisplayLabel = 'Privilegiado'
|
||||||
|
DictionaryEntry = 'USUARIOS_PRIVILEGED'
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'TIPO'
|
||||||
|
DataType = datString
|
||||||
|
Size = 1
|
||||||
|
DisplayLabel = 'Tipo'
|
||||||
|
DictionaryEntry = 'USUARIOS_TIPO'
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'ID_PERFIL'
|
||||||
|
DataType = datInteger
|
||||||
|
DictionaryEntry = 'USUARIOS_ID_PERFIL'
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'CHECKSUM'
|
||||||
|
DataType = datString
|
||||||
|
Size = 250
|
||||||
|
DisplayLabel = 'Checksum'
|
||||||
|
DictionaryEntry = 'USUARIOS_CHECKSUM'
|
||||||
|
end>
|
||||||
|
Params = <>
|
||||||
|
StreamingOptions = [soDisableEventsWhileStreaming]
|
||||||
|
RemoteDataAdapter = rda_Usuarios
|
||||||
|
DetailOptions = [dtCascadeOpenClose, dtCascadeApplyUpdates, dtAutoFetch, dtCascadeDelete, dtCascadeUpdate, dtDisableLogOfCascadeDeletes, dtDisableLogOfCascadeUpdates, dtIncludeInAllInOneFetch]
|
||||||
|
MasterOptions = [moCascadeOpenClose, moCascadeApplyUpdates, moCascadeDelete, moCascadeUpdate, moDisableLogOfCascadeDeletes, moDisableLogOfCascadeUpdates]
|
||||||
|
LogicalName = 'USUARIOS'
|
||||||
|
IndexDefs = <>
|
||||||
|
Left = 176
|
||||||
|
Top = 80
|
||||||
|
end
|
||||||
|
object ds_USUARIOS: TDADataSource
|
||||||
|
DataSet = tbl_USUARIOS.Dataset
|
||||||
|
DataTable = tbl_USUARIOS
|
||||||
|
Left = 176
|
||||||
|
Top = 136
|
||||||
|
end
|
||||||
|
object tbl_PERFILES: TDAMemDataTable
|
||||||
|
RemoteUpdatesOptions = []
|
||||||
|
Fields = <
|
||||||
|
item
|
||||||
|
Name = 'ID'
|
||||||
|
DataType = datAutoInc
|
||||||
|
GeneratorName = 'GEN_USUARIOS_ID'
|
||||||
|
Required = True
|
||||||
|
DictionaryEntry = 'PERFILES_ID'
|
||||||
|
InPrimaryKey = True
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'USERNAME'
|
||||||
|
DataType = datString
|
||||||
|
Size = 30
|
||||||
|
DisplayLabel = 'Nombre'
|
||||||
|
DictionaryEntry = 'PERFILES_USERNAME'
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'LOGIN'
|
||||||
|
DataType = datString
|
||||||
|
Size = 30
|
||||||
|
DisplayLabel = 'Login'
|
||||||
|
DictionaryEntry = 'PERFILES_LOGIN'
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'TIPO'
|
||||||
|
DataType = datString
|
||||||
|
Size = 1
|
||||||
|
DisplayLabel = 'Tipo'
|
||||||
|
DictionaryEntry = 'PERFILES_TIPO'
|
||||||
|
end>
|
||||||
|
Params = <>
|
||||||
|
StreamingOptions = [soDisableEventsWhileStreaming]
|
||||||
|
RemoteDataAdapter = rda_Usuarios
|
||||||
|
DetailOptions = [dtCascadeOpenClose, dtCascadeApplyUpdates, dtAutoFetch, dtCascadeDelete, dtCascadeUpdate, dtDisableLogOfCascadeDeletes, dtDisableLogOfCascadeUpdates, dtIncludeInAllInOneFetch]
|
||||||
|
MasterOptions = [moCascadeOpenClose, moCascadeApplyUpdates, moCascadeDelete, moCascadeUpdate, moDisableLogOfCascadeDeletes, moDisableLogOfCascadeUpdates]
|
||||||
|
LogicalName = 'PERFILES'
|
||||||
|
IndexDefs = <>
|
||||||
|
Left = 272
|
||||||
|
Top = 80
|
||||||
|
end
|
||||||
|
object ds_PERFILES: TDADataSource
|
||||||
|
DataSet = tbl_PERFILES.Dataset
|
||||||
|
DataTable = tbl_PERFILES
|
||||||
|
Left = 272
|
||||||
|
Top = 136
|
||||||
|
end
|
||||||
|
end
|
||||||
465
Source/ApplicationBase/Usuarios/Data/uDataModuleUsuarios.pas
Normal file
465
Source/ApplicationBase/Usuarios/Data/uDataModuleUsuarios.pas
Normal file
@ -0,0 +1,465 @@
|
|||||||
|
unit uDataModuleUsuarios;
|
||||||
|
|
||||||
|
interface
|
||||||
|
|
||||||
|
uses
|
||||||
|
SysUtils, Classes, DB, DBClient, uDADataTable,
|
||||||
|
VARELA_Intf,
|
||||||
|
UCBase, UCDataConnector, uUCROConn, uDARemoteDataAdapter,
|
||||||
|
uDARemoteCommand, uROClient, uRORemoteService, uDADataStreamer,
|
||||||
|
uDABin2DataStreamer, uDAScriptingProvider, uIDataModuleUsuarios, UCSettings,
|
||||||
|
uDataModuleBase, uDAInterfaces, uDAMemDataTable, uBizUsuarios;
|
||||||
|
|
||||||
|
type
|
||||||
|
TDataModuleUsuarios = class(TDataModuleBase, IDataModuleUsuarios)
|
||||||
|
srvUsuarios: TRORemoteService;
|
||||||
|
UCSettingsSpanish: TUCSettings;
|
||||||
|
rda_Usuarios: TDARemoteDataAdapter;
|
||||||
|
Bin2DataStreamer: TDABin2DataStreamer;
|
||||||
|
tbl_USUARIOS: TDAMemDataTable;
|
||||||
|
ds_USUARIOS: TDADataSource;
|
||||||
|
tbl_PERFILES: TDAMemDataTable;
|
||||||
|
ds_PERFILES: TDADataSource;
|
||||||
|
procedure DataModuleCreate(Sender: TObject);
|
||||||
|
private
|
||||||
|
procedure InicializarCamposUserControl(AUserControl: TUserControl);
|
||||||
|
procedure InicializarSettingsUserControl(AUserControl: TUserControl);
|
||||||
|
function CreateConnectorInstance : TUCDataConnector;
|
||||||
|
public
|
||||||
|
function GetUsuario(const ID : Integer) : IBizUsuario;
|
||||||
|
function NuevoUsuario : IBizUsuario;
|
||||||
|
function GetUsuarios : IBizUsuario;
|
||||||
|
|
||||||
|
function NuevoPerfil : IBizPerfilUsuario;
|
||||||
|
function GetPerfiles : IBizPerfilUsuario;
|
||||||
|
function GetPerfil (const ID : Integer) : IBizPerfilUsuario;
|
||||||
|
|
||||||
|
procedure InicializarUserControl (AUserControl : TUserControl);
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
implementation
|
||||||
|
|
||||||
|
{$R *.DFM}
|
||||||
|
|
||||||
|
uses
|
||||||
|
Forms, Controls, uDataTableUtils, uDMBase,
|
||||||
|
Dialogs, Windows, cxControls,
|
||||||
|
schUsuariosClient_Intf;
|
||||||
|
|
||||||
|
const
|
||||||
|
ID_NULO = -9000;
|
||||||
|
|
||||||
|
|
||||||
|
{ TDataModuleUsuarios }
|
||||||
|
|
||||||
|
function TDataModuleUsuarios.CreateConnectorInstance: TUCDataConnector;
|
||||||
|
begin
|
||||||
|
// El propietario (Owner) es Application para que se encarge de la
|
||||||
|
// liberación del conector que estamos creando.
|
||||||
|
Result := TUCROConn.Create(Application);
|
||||||
|
with TUCROConn(Result) do
|
||||||
|
begin
|
||||||
|
ROServiceName := srvUsuarios.ServiceName;
|
||||||
|
ROChannel := dmBase.ROChannel;
|
||||||
|
ROMessage := dmBase.ROMessage;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TDataModuleUsuarios.NuevoPerfil: IBizPerfilUsuario;
|
||||||
|
begin
|
||||||
|
Result := GetPerfil(ID_NULO)
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TDataModuleUsuarios.NuevoUsuario: IBizUsuario;
|
||||||
|
begin
|
||||||
|
Result := GetUsuario(ID_NULO)
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TDataModuleUsuarios.DataModuleCreate(Sender: TObject);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
srvUsuarios.Channel := dmBase.Channel;
|
||||||
|
srvUsuarios.Message := dmBase.Message;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TDataModuleUsuarios.GetPerfil(const ID: Integer): IBizPerfilUsuario;
|
||||||
|
begin
|
||||||
|
ShowHourglassCursor;
|
||||||
|
try
|
||||||
|
Result := Self.GetPerfiles;
|
||||||
|
|
||||||
|
with Result.DataTable.DynamicWhere do
|
||||||
|
begin
|
||||||
|
Clear;
|
||||||
|
// (ID = :ID)
|
||||||
|
Expression := NewBinaryExpression(NewField('', fld_PERFILESID), NewConstant(ID, datInteger), dboEqual);
|
||||||
|
end;
|
||||||
|
finally
|
||||||
|
HideHourglassCursor;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TDataModuleUsuarios.GetPerfiles: IBizPerfilUsuario;
|
||||||
|
var
|
||||||
|
AUsuarios : TDAMemDataTable;
|
||||||
|
begin
|
||||||
|
ShowHourglassCursor;
|
||||||
|
try
|
||||||
|
AUsuarios := CloneDataTable(tbl_PERFILES);
|
||||||
|
AUsuarios.BusinessRulesID := BIZ_CLIENT_PERFIL_USUARIO;
|
||||||
|
|
||||||
|
Result := (AUsuarios as IBizPerfilUsuario);
|
||||||
|
finally
|
||||||
|
HideHourglassCursor;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TDataModuleUsuarios.GetUsuario(const ID: Integer): IBizUsuario;
|
||||||
|
begin
|
||||||
|
ShowHourglassCursor;
|
||||||
|
try
|
||||||
|
Result := Self.GetUsuarios;
|
||||||
|
|
||||||
|
with Result.DataTable.DynamicWhere do
|
||||||
|
begin
|
||||||
|
Clear;
|
||||||
|
// (ID = :ID)
|
||||||
|
Expression := NewBinaryExpression(NewField('', fld_USUARIOSID), NewConstant(ID, datInteger), dboEqual);
|
||||||
|
end;
|
||||||
|
finally
|
||||||
|
HideHourglassCursor;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TDataModuleUsuarios.GetUsuarios: IBizUsuario;
|
||||||
|
var
|
||||||
|
AUsuarios : TDAMemDataTable;
|
||||||
|
begin
|
||||||
|
ShowHourglassCursor;
|
||||||
|
try
|
||||||
|
AUsuarios := CloneDataTable(tbl_Usuarios);
|
||||||
|
AUsuarios.BusinessRulesID := BIZ_CLIENT_USUARIO;
|
||||||
|
|
||||||
|
Result := (AUsuarios as IBizUsuario);
|
||||||
|
finally
|
||||||
|
HideHourglassCursor;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TDataModuleUsuarios.InicializarCamposUserControl(
|
||||||
|
AUserControl: TUserControl);
|
||||||
|
begin
|
||||||
|
if not Assigned(AUserControl) then
|
||||||
|
raise Exception.Create('UserControl no asignado (InicializarUserControl)');
|
||||||
|
|
||||||
|
with AUserControl do
|
||||||
|
begin
|
||||||
|
DataConnector := CreateConnectorInstance;
|
||||||
|
|
||||||
|
with TableUsers do
|
||||||
|
begin
|
||||||
|
TableName := 'RDX_USUARIOS'; //nme_USUARIOS;
|
||||||
|
FieldUserID := fld_USUARIOSID;
|
||||||
|
FieldUserName := fld_USUARIOSUSERNAME;
|
||||||
|
FieldLogin := fld_USUARIOSLOGIN;
|
||||||
|
FieldPassword := fld_USUARIOSPASS;
|
||||||
|
FieldEmail := fld_USUARIOSEMAIL;
|
||||||
|
FieldPrivileged := fld_USUARIOSPRIVILEGED;
|
||||||
|
FieldTypeRec := fld_USUARIOSTIPO;
|
||||||
|
FieldProfile := fld_USUARIOSID_PERFIL;
|
||||||
|
FieldUserExpired := fld_USUARIOSBLOQUEADO;
|
||||||
|
FieldDateExpired := fld_USUARIOSPASSEXPIRED;
|
||||||
|
FieldUserDaysSun := fld_USUARIOSUSERDAYSSUN;
|
||||||
|
FieldKey := fld_USUARIOSCHECKSUM;
|
||||||
|
end;
|
||||||
|
|
||||||
|
with TableRights do
|
||||||
|
begin
|
||||||
|
TableName := 'RDX_PERMISOS'; //nme_PERMISOS;
|
||||||
|
FieldUserID := fld_PERMISOSID_USUARIO;
|
||||||
|
FieldModule := fld_PERMISOSMODULO;
|
||||||
|
FieldComponentName := fld_PERMISOSNOMBRECOMP;
|
||||||
|
FieldFormName := fld_PERMISOSEXNOMBREFORM;
|
||||||
|
FieldKey := fld_PERMISOSCHECKSUM;
|
||||||
|
end;
|
||||||
|
|
||||||
|
with TableUsersLogged do
|
||||||
|
begin
|
||||||
|
TableName := 'RDX_USUARIOS_LOGON'; //nme_USUARIOS_LOGON;
|
||||||
|
FieldLogonID := fld_USUARIOS_LOGONLOGONID;
|
||||||
|
FieldUserID := fld_USUARIOS_LOGONID_USUARIO;
|
||||||
|
FieldApplicationID := fld_USUARIOS_LOGONAPLICACION;
|
||||||
|
FieldMachineName := fld_USUARIOS_LOGONEQUIPO;
|
||||||
|
FieldData := fld_USUARIOS_LOGONDATA;
|
||||||
|
end;
|
||||||
|
|
||||||
|
with TableHistory do
|
||||||
|
begin
|
||||||
|
TableName := 'RDX_USUARIOS_EVENTOS'; //nme_USUARIOS_EVENTOS;
|
||||||
|
FieldApplicationID := fld_USUARIOS_EVENTOSAPLICACION;
|
||||||
|
FieldUserID := fld_USUARIOS_EVENTOSID_USUARIO;
|
||||||
|
FieldEventDate := fld_USUARIOS_EVENTOSFECHA;
|
||||||
|
FieldEventTime := fld_USUARIOS_EVENTOSHORA;
|
||||||
|
FieldForm := fld_USUARIOS_EVENTOSFORM;
|
||||||
|
FieldCaptionForm := fld_USUARIOS_EVENTOSTITULO_FORM;
|
||||||
|
FieldEvent := fld_USUARIOS_EVENTOSEVENTO;
|
||||||
|
FieldObs := fld_USUARIOS_EVENTOSNOTAS;
|
||||||
|
FieldTableName := fld_USUARIOS_EVENTOSTNAME;
|
||||||
|
end;
|
||||||
|
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TDataModuleUsuarios.InicializarSettingsUserControl(
|
||||||
|
AUserControl: TUserControl);
|
||||||
|
var
|
||||||
|
SourceSettings : TUCSettings;
|
||||||
|
begin
|
||||||
|
SourceSettings := UCSettingsSpanish;
|
||||||
|
|
||||||
|
with AUserControl do
|
||||||
|
begin
|
||||||
|
with UserSettings.CommonMessages do
|
||||||
|
begin
|
||||||
|
BlankPassword := SourceSettings.CommonMessages.BlankPassword;
|
||||||
|
PasswordChanged := SourceSettings.CommonMessages.PasswordChanged;
|
||||||
|
InitialMessage.Text := SourceSettings.CommonMessages.InitialMessage.Text;
|
||||||
|
MaxLoginAttemptsError := SourceSettings.CommonMessages.MaxLoginAttemptsError;
|
||||||
|
InvalidLogin := SourceSettings.CommonMessages.InvalidLogin;
|
||||||
|
AutoLogonError := SourceSettings.CommonMessages.AutoLogonError;
|
||||||
|
UsuarioExiste := SourceSettings.CommonMessages.UsuarioExiste; // Luiz Benevenuto 20/04/06
|
||||||
|
PasswordExpired := SourceSettings.CommonMessages.PasswordExpired; // vicente barros leonel
|
||||||
|
ForcaTrocaSenha := SourceSettings.CommonMessages.ForcaTrocaSenha;
|
||||||
|
end;
|
||||||
|
|
||||||
|
with UserSettings.Login do
|
||||||
|
begin
|
||||||
|
BtCancel := SourceSettings.Login.BtCancel;
|
||||||
|
BtOK := SourceSettings.Login.BtOK;
|
||||||
|
LabelPassword := SourceSettings.Login.LabelPassword;
|
||||||
|
LabelUser := SourceSettings.Login.LabelUser;
|
||||||
|
WindowCaption := SourceSettings.Login.WindowCaption;
|
||||||
|
LabelTentativa := SourceSettings.Login.LabelTentativa;
|
||||||
|
LabelTentativas := SourceSettings.Login.LabelTentativas;
|
||||||
|
|
||||||
|
if Assigned(SourceSettings.Login.LeftImage.Bitmap) then
|
||||||
|
LeftImage.Bitmap := SourceSettings.Login.LeftImage.Bitmap
|
||||||
|
else
|
||||||
|
LeftImage.Bitmap := nil;
|
||||||
|
|
||||||
|
if Assigned(SourceSettings.Login.TopImage.Bitmap) then
|
||||||
|
TopImage.Bitmap := SourceSettings.Login.TopImage.Bitmap
|
||||||
|
else
|
||||||
|
TopImage.Bitmap := nil;
|
||||||
|
|
||||||
|
if Assigned(SourceSettings.Login.BottomImage.Bitmap) then
|
||||||
|
BottomImage.Bitmap := SourceSettings.Login.BottomImage.Bitmap
|
||||||
|
else
|
||||||
|
BottomImage.Bitmap := nil;
|
||||||
|
end;
|
||||||
|
|
||||||
|
with UserSettings.UsersForm do
|
||||||
|
begin
|
||||||
|
WindowCaption := SourceSettings.UsersForm.WindowCaption;
|
||||||
|
LabelDescription := SourceSettings.UsersForm.LabelDescription;
|
||||||
|
ColName := SourceSettings.UsersForm.ColName;
|
||||||
|
ColLogin := SourceSettings.UsersForm.ColLogin;
|
||||||
|
ColEmail := SourceSettings.UsersForm.ColEmail;
|
||||||
|
BtAdd := SourceSettings.UsersForm.BtAdd;
|
||||||
|
BtChange := SourceSettings.UsersForm.BtChange;
|
||||||
|
BtDelete := SourceSettings.UsersForm.BtDelete;
|
||||||
|
BtRights := SourceSettings.UsersForm.BtRights;
|
||||||
|
BtPassword := SourceSettings.UsersForm.BtPassword;
|
||||||
|
BtClose := SourceSettings.UsersForm.BtClose;
|
||||||
|
PromptDelete := SourceSettings.UsersForm.PromptDelete;
|
||||||
|
PromptDelete_WindowCaption := SourceSettings.UsersForm.PromptDelete_WindowCaption; //added by fduenas
|
||||||
|
end;
|
||||||
|
|
||||||
|
with UserSettings.UsersProfile do
|
||||||
|
begin
|
||||||
|
WindowCaption := SourceSettings.UsersProfile.WindowCaption;
|
||||||
|
LabelDescription := SourceSettings.UsersProfile.LabelDescription;
|
||||||
|
ColProfile := SourceSettings.UsersProfile.ColProfile;
|
||||||
|
BtAdd := SourceSettings.UsersProfile.BtAdd;
|
||||||
|
BtChange := SourceSettings.UsersProfile.BtChange;
|
||||||
|
BtDelete := SourceSettings.UsersProfile.BtDelete;
|
||||||
|
BtRights := SourceSettings.UsersProfile.BtRights; //added by fduenas
|
||||||
|
BtClose := SourceSettings.UsersProfile.BtClose;
|
||||||
|
PromptDelete := SourceSettings.UsersProfile.PromptDelete;
|
||||||
|
PromptDelete_WindowCaption := SourceSettings.UsersProfile.PromptDelete_WindowCaption; //added by fduenas
|
||||||
|
end;
|
||||||
|
|
||||||
|
with UserSettings.AddChangeUser do
|
||||||
|
begin
|
||||||
|
WindowCaption := SourceSettings.AddChangeUser.WindowCaption;
|
||||||
|
LabelAdd := SourceSettings.AddChangeUser.LabelAdd;
|
||||||
|
LabelChange := SourceSettings.AddChangeUser.LabelChange;
|
||||||
|
LabelName := SourceSettings.AddChangeUser.LabelName;
|
||||||
|
LabelLogin := SourceSettings.AddChangeUser.LabelLogin;
|
||||||
|
LabelEmail := SourceSettings.AddChangeUser.LabelEmail;
|
||||||
|
CheckPrivileged := SourceSettings.AddChangeUser.CheckPrivileged;
|
||||||
|
BtSave := SourceSettings.AddChangeUser.BtSave;
|
||||||
|
BtCancel := SourceSettings.AddChangeUser.BtCancel;
|
||||||
|
CheckExpira := SourceSettings.AddChangeUser.CheckExpira;
|
||||||
|
Day := SourceSettings.AddChangeUser.Day;
|
||||||
|
ExpiredIn := SourceSettings.AddChangeUser.ExpiredIn;
|
||||||
|
end;
|
||||||
|
|
||||||
|
with UserSettings.AddChangeProfile do
|
||||||
|
begin
|
||||||
|
WindowCaption := SourceSettings.AddChangeProfile.WindowCaption;
|
||||||
|
LabelAdd := SourceSettings.AddChangeProfile.LabelAdd;
|
||||||
|
LabelChange := SourceSettings.AddChangeProfile.LabelChange;
|
||||||
|
LabelName := SourceSettings.AddChangeProfile.LabelName;
|
||||||
|
BtSave := SourceSettings.AddChangeProfile.BtSave;
|
||||||
|
BtCancel := SourceSettings.AddChangeProfile.BtCancel;
|
||||||
|
end;
|
||||||
|
|
||||||
|
with UserSettings.Rights do
|
||||||
|
begin
|
||||||
|
WindowCaption := SourceSettings.Rights.WindowCaption;
|
||||||
|
LabelUser := SourceSettings.Rights.LabelUser;
|
||||||
|
LabelProfile := SourceSettings.Rights.LabelProfile;
|
||||||
|
PageMenu := SourceSettings.Rights.PageMenu;
|
||||||
|
PageActions := SourceSettings.Rights.PageActions;
|
||||||
|
PageControls := SourceSettings.Rights.PageControls;
|
||||||
|
BtUnlock := SourceSettings.Rights.BtUnlock;
|
||||||
|
BtLock := SourceSettings.Rights.BtLock;
|
||||||
|
BtSave := SourceSettings.Rights.BtSave;
|
||||||
|
BtCancel := SourceSettings.Rights.BtCancel;
|
||||||
|
end;
|
||||||
|
|
||||||
|
with UserSettings.ChangePassword do
|
||||||
|
begin
|
||||||
|
WindowCaption := SourceSettings.ChangePassword.WindowCaption;
|
||||||
|
LabelDescription := SourceSettings.ChangePassword.LabelDescription;
|
||||||
|
LabelCurrentPassword := SourceSettings.ChangePassword.LabelCurrentPassword;
|
||||||
|
LabelNewPassword := SourceSettings.ChangePassword.LabelNewPassword;
|
||||||
|
LabelConfirm := SourceSettings.ChangePassword.LabelConfirm;
|
||||||
|
BtSave := SourceSettings.ChangePassword.BtSave;
|
||||||
|
BtCancel := SourceSettings.ChangePassword.BtCancel;
|
||||||
|
end;
|
||||||
|
|
||||||
|
with UserSettings.CommonMessages.ChangePasswordError do
|
||||||
|
begin
|
||||||
|
InvalidCurrentPassword := SourceSettings.CommonMessages.ChangePasswordError.InvalidCurrentPassword;
|
||||||
|
NewPasswordError := SourceSettings.CommonMessages.ChangePasswordError.NewPasswordError;
|
||||||
|
NewEqualCurrent := SourceSettings.CommonMessages.ChangePasswordError.NewEqualCurrent;
|
||||||
|
PasswordRequired := SourceSettings.CommonMessages.ChangePasswordError.PasswordRequired;
|
||||||
|
MinPasswordLength := SourceSettings.CommonMessages.ChangePasswordError.MinPasswordLength;
|
||||||
|
InvalidNewPassword := SourceSettings.CommonMessages.ChangePasswordError.InvalidNewPassword;
|
||||||
|
end;
|
||||||
|
|
||||||
|
with UserSettings.ResetPassword do
|
||||||
|
begin
|
||||||
|
WindowCaption := SourceSettings.ResetPassword.WindowCaption;
|
||||||
|
LabelPassword := SourceSettings.ResetPassword.LabelPassword;
|
||||||
|
end;
|
||||||
|
|
||||||
|
with UserSettings.Log do
|
||||||
|
begin
|
||||||
|
WindowCaption := SourceSettings.Log.WindowCaption;
|
||||||
|
LabelDescription := SourceSettings.Log.LabelDescription;
|
||||||
|
LabelUser := SourceSettings.Log.LabelUser;
|
||||||
|
LabelDate := SourceSettings.Log.LabelDate;
|
||||||
|
LabelLevel := SourceSettings.Log.LabelLevel;
|
||||||
|
ColLevel := SourceSettings.Log.ColLevel;
|
||||||
|
ColMessage := SourceSettings.Log.ColMessage;
|
||||||
|
ColUser := SourceSettings.Log.ColUser;
|
||||||
|
ColDate := SourceSettings.Log.ColDate;
|
||||||
|
BtFilter := SourceSettings.Log.BtFilter;
|
||||||
|
BtDelete := SourceSettings.Log.BtDelete;
|
||||||
|
BtClose := SourceSettings.Log.BtClose;
|
||||||
|
PromptDelete := SourceSettings.Log.PromptDelete;
|
||||||
|
PromptDelete_WindowCaption := SourceSettings.Log.PromptDelete_WindowCaption; //added by fduenas
|
||||||
|
OptionUserAll := SourceSettings.Log.OptionUserAll; //added by fduenas
|
||||||
|
OptionLevelLow := SourceSettings.Log.OptionLevelLow; //added by fduenas
|
||||||
|
OptionLevelNormal := SourceSettings.Log.OptionLevelNormal; //added by fduenas
|
||||||
|
OptionLevelHigh := SourceSettings.Log.OptionLevelHigh; //added by fduenas
|
||||||
|
OptionLevelCritic := SourceSettings.Log.OptionLevelCritic; //added by fduenas
|
||||||
|
DeletePerformed := SourceSettings.Log.DeletePerformed; //added by fduenas
|
||||||
|
end;
|
||||||
|
|
||||||
|
with UserSettings.AppMessages do
|
||||||
|
begin
|
||||||
|
MsgsForm_BtNew := SourceSettings.AppMessages.MsgsForm_BtNew;
|
||||||
|
MsgsForm_BtReplay := SourceSettings.AppMessages.MsgsForm_BtReplay;
|
||||||
|
MsgsForm_BtForward := SourceSettings.AppMessages.MsgsForm_BtForward;
|
||||||
|
MsgsForm_BtDelete := SourceSettings.AppMessages.MsgsForm_BtDelete;
|
||||||
|
MsgsForm_BtClose := SourceSettings.AppMessages.MsgsForm_BtClose; //added by fduenas
|
||||||
|
MsgsForm_WindowCaption := SourceSettings.AppMessages.MsgsForm_WindowCaption;
|
||||||
|
MsgsForm_ColFrom := SourceSettings.AppMessages.MsgsForm_ColFrom;
|
||||||
|
MsgsForm_ColSubject := SourceSettings.AppMessages.MsgsForm_ColSubject;
|
||||||
|
MsgsForm_ColDate := SourceSettings.AppMessages.MsgsForm_ColDate;
|
||||||
|
MsgsForm_PromptDelete := SourceSettings.AppMessages.MsgsForm_PromptDelete;
|
||||||
|
MsgsForm_PromptDelete_WindowCaption := SourceSettings.AppMessages.MsgsForm_PromptDelete_WindowCaption; //added by fduenas
|
||||||
|
MsgsForm_NoMessagesSelected := SourceSettings.AppMessages.MsgsForm_NoMessagesSelected; //added by fduenas
|
||||||
|
MsgsForm_NoMessagesSelected_WindowCaption := SourceSettings.AppMessages.MsgsForm_NoMessagesSelected_WindowCaption; //added by fduenas
|
||||||
|
|
||||||
|
MsgRec_BtClose := SourceSettings.AppMessages.MsgRec_BtClose;
|
||||||
|
MsgRec_WindowCaption := SourceSettings.AppMessages.MsgRec_WindowCaption;
|
||||||
|
MsgRec_Title := SourceSettings.AppMessages.MsgRec_Title;
|
||||||
|
MsgRec_LabelFrom := SourceSettings.AppMessages.MsgRec_LabelFrom;
|
||||||
|
MsgRec_LabelDate := SourceSettings.AppMessages.MsgRec_LabelDate;
|
||||||
|
MsgRec_LabelSubject := SourceSettings.AppMessages.MsgRec_LabelSubject;
|
||||||
|
MsgRec_LabelMessage := SourceSettings.AppMessages.MsgRec_LabelMessage;
|
||||||
|
MsgSend_BtSend := SourceSettings.AppMessages.MsgSend_BtSend;
|
||||||
|
MsgSend_BtCancel := SourceSettings.AppMessages.MsgSend_BtCancel;
|
||||||
|
MsgSend_WindowCaption := SourceSettings.AppMessages.MsgSend_WindowCaption;
|
||||||
|
MsgSend_Title := SourceSettings.AppMessages.MsgSend_Title;
|
||||||
|
MsgSend_GroupTo := SourceSettings.AppMessages.MsgSend_GroupTo;
|
||||||
|
MsgSend_RadioUser := SourceSettings.AppMessages.MsgSend_RadioUser;
|
||||||
|
MsgSend_RadioAll := SourceSettings.AppMessages.MsgSend_RadioAll;
|
||||||
|
MsgSend_GroupMessage := SourceSettings.AppMessages.MsgSend_GroupMessage;
|
||||||
|
MsgSend_LabelSubject := SourceSettings.AppMessages.MsgSend_LabelSubject; //added by fduenas
|
||||||
|
MsgSend_LabelMessageText := SourceSettings.AppMessages.MsgSend_LabelMessageText; //added by fduenas
|
||||||
|
end;
|
||||||
|
|
||||||
|
With UserSettings.History do
|
||||||
|
Begin
|
||||||
|
Evento_edit := SourceSettings.History.Evento_edit;
|
||||||
|
Evento_NewRecord := SourceSettings.History.Evento_NewRecord;
|
||||||
|
Evento_Insert := SourceSettings.History.Evento_Insert;
|
||||||
|
Evento_delete := SourceSettings.History.Evento_Delete;
|
||||||
|
LabelTabela := SourceSettings.History.LabelTabela;
|
||||||
|
Msg_LogEmptyHistory := SourceSettings.History.Msg_LogEmptyHistory;
|
||||||
|
Msg_MensConfirma := SourceSettings.History.Msg_MensConfirma;
|
||||||
|
LabelDescricao := SourceSettings.History.LabelDescricao;
|
||||||
|
Hist_BtnExcluir := SourceSettings.History.Hist_BtnExcluir;
|
||||||
|
Hist_BtnFiltro := SourceSettings.History.Hist_BtnFiltro;
|
||||||
|
LabelForm := SourceSettings.History.LabelForm;
|
||||||
|
Hist_BtnFechar := SourceSettings.History.Hist_BtnFechar;
|
||||||
|
LabelDataEvento := SourceSettings.History.LabelDataEvento;
|
||||||
|
LabelEvento := SourceSettings.History.LabelEvento;
|
||||||
|
Msg_NewRecord := SourceSettings.History.Msg_NewRecord;
|
||||||
|
Hist_All := SourceSettings.History.Hist_All;
|
||||||
|
Msg_LimpHistorico := SourceSettings.History.Msg_LimpHistorico;
|
||||||
|
LabelHoraEvento := SourceSettings.History.LabelHoraEvento;
|
||||||
|
LabelUser := SourceSettings.History.LabelUser;
|
||||||
|
Hist_MsgExceptPropr := SourceSettings.History.Hist_MsgExceptPropr;
|
||||||
|
End;
|
||||||
|
|
||||||
|
with UserSettings.TypeFieldsDB do
|
||||||
|
Begin
|
||||||
|
Type_VarChar := SourceSettings.TypeFieldsDB.Type_VarChar;
|
||||||
|
Type_Char := SourceSettings.TypeFieldsDB.Type_Char;
|
||||||
|
Type_Int := SourceSettings.TypeFieldsDB.Type_Int;
|
||||||
|
Type_MemoField := SourceSettings.TypeFieldsDB.Type_MemoField;
|
||||||
|
end;
|
||||||
|
|
||||||
|
UserSettings.WindowsPosition := SourceSettings.WindowsPosition;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TDataModuleUsuarios.InicializarUserControl(AUserControl: TUserControl);
|
||||||
|
begin
|
||||||
|
if Assigned(AUserControl) then
|
||||||
|
begin
|
||||||
|
InicializarCamposUserControl(AUserControl);
|
||||||
|
InicializarSettingsUserControl(AUserControl);
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
end.
|
||||||
224
Source/ApplicationBase/Usuarios/Data/uUCROConn.pas
Normal file
224
Source/ApplicationBase/Usuarios/Data/uUCROConn.pas
Normal file
@ -0,0 +1,224 @@
|
|||||||
|
{-----------------------------------------------------------------------------
|
||||||
|
Unit Name: UCMidasConn
|
||||||
|
Author : Luiz Benevenuto
|
||||||
|
Date : 31/07/2005
|
||||||
|
Purpose : Midas Suporte ( DataSnap )
|
||||||
|
E-mail : luiz@siffra.com
|
||||||
|
URL : www.siffra.com
|
||||||
|
UC : www.usercontrol.com.br
|
||||||
|
Forum : http://www.usercontrol.com.br/modules.php?name=Forums
|
||||||
|
|
||||||
|
registered in UCMidasConnReg.pas
|
||||||
|
-----------------------------------------------------------------------------}
|
||||||
|
|
||||||
|
unit uUCROConn;
|
||||||
|
|
||||||
|
interface
|
||||||
|
|
||||||
|
//{$I 'UserControl.inc'}
|
||||||
|
|
||||||
|
uses
|
||||||
|
Classes,
|
||||||
|
DB,
|
||||||
|
DBClient,
|
||||||
|
SysUtils,
|
||||||
|
uRORemoteService, uDADataStreamer, uROBinMessage, uROWinInetHttpChannel,
|
||||||
|
uDABin2DataStreamer, uDARemoteDataAdapter, UCDataConnector, uROClient;
|
||||||
|
|
||||||
|
type
|
||||||
|
TUCROConn = class(TUCDataConnector)
|
||||||
|
private
|
||||||
|
FMessage: TROBinMessage;
|
||||||
|
FChannel: TROWinInetHTTPChannel;
|
||||||
|
FRemoteService: TRORemoteService;
|
||||||
|
FDataAdapter : TDARemoteDataAdapter;
|
||||||
|
FDataStreamer : TDABin2DataStreamer;
|
||||||
|
procedure SetServiceName(const Value: String);
|
||||||
|
function GetServiceName: String;
|
||||||
|
procedure SetChannel(const Value: TROWinInetHTTPChannel);
|
||||||
|
procedure SetMessage(const Value: TROBinMessage);
|
||||||
|
protected
|
||||||
|
procedure Notification(AComponent: TComponent; Operation: TOperation); override;
|
||||||
|
procedure RefreshROConnection;
|
||||||
|
public
|
||||||
|
function GetDBObjectName: String; override;
|
||||||
|
function GetTransObjectName: String; override;
|
||||||
|
function UCFindDataConnection: Boolean; override;
|
||||||
|
function UCFindTable(const Tablename: String): Boolean; override;
|
||||||
|
function UCGetSQLDataset(FSQL: String): TDataset; override;
|
||||||
|
procedure UCExecSQL(FSQL: String); override;
|
||||||
|
constructor Create(AOwner: TComponent); override;
|
||||||
|
destructor Destroy; override;
|
||||||
|
published
|
||||||
|
property ROServiceName : String read GetServiceName write SetServiceName;
|
||||||
|
property ROMessage : TROBinMessage read FMessage write SetMessage;
|
||||||
|
property ROChannel : TROWinInetHTTPChannel read FChannel write SetChannel;
|
||||||
|
end;
|
||||||
|
|
||||||
|
implementation
|
||||||
|
|
||||||
|
uses
|
||||||
|
Forms, Dialogs, VARELA_Intf, uROTypes, uDAClasses, uDADataTable,
|
||||||
|
uDACDSDataTable, uROEncryption;
|
||||||
|
|
||||||
|
{ TUCROConn }
|
||||||
|
|
||||||
|
constructor TUCROConn.Create(AOwner: TComponent);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
FRemoteService := TRORemoteService.Create(nil);
|
||||||
|
FDataStreamer := TDABin2DataStreamer.Create(nil);
|
||||||
|
FDataAdapter := TDARemoteDataAdapter.Create(nil);
|
||||||
|
FDataAdapter.DataStreamer := FDataStreamer;
|
||||||
|
FDataAdapter.SetupDefaultRequest;
|
||||||
|
end;
|
||||||
|
|
||||||
|
destructor TUCROConn.Destroy;
|
||||||
|
begin
|
||||||
|
FreeAndNil(FRemoteService);
|
||||||
|
FreeAndNil(FDataAdapter);
|
||||||
|
FreeAndNil(FDataStreamer);
|
||||||
|
inherited;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TUCROConn.GetDBObjectName: String;
|
||||||
|
begin
|
||||||
|
if Assigned(FRemoteService) then
|
||||||
|
begin
|
||||||
|
if Owner = FRemoteService.Owner then
|
||||||
|
Result := FRemoteService.Name
|
||||||
|
else
|
||||||
|
Result := FRemoteService.Owner.Name + '.' + FRemoteService.Name;
|
||||||
|
end
|
||||||
|
else
|
||||||
|
Result := '';
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TUCROConn.GetServiceName: String;
|
||||||
|
begin
|
||||||
|
Result := FRemoteService.ServiceName;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TUCROConn.GetTransObjectName: String;
|
||||||
|
begin
|
||||||
|
Result := '';
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TUCROConn.Notification(AComponent: TComponent; Operation: TOperation);
|
||||||
|
begin
|
||||||
|
if (Operation = opRemove) and (AComponent = FRemoteService) then
|
||||||
|
begin
|
||||||
|
FreeAndNil(FDataAdapter);
|
||||||
|
FRemoteService := nil;
|
||||||
|
end;
|
||||||
|
inherited Notification(AComponent, Operation);
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TUCROConn.RefreshROConnection;
|
||||||
|
begin
|
||||||
|
with FRemoteService do
|
||||||
|
begin
|
||||||
|
FRemoteService.Message := FMessage;
|
||||||
|
FRemoteService.Channel := FChannel;
|
||||||
|
|
||||||
|
with FDataAdapter do
|
||||||
|
begin
|
||||||
|
RemoteService := FRemoteService;
|
||||||
|
GetSchemaCall.RemoteService := FRemoteService;
|
||||||
|
GetDataCall.RemoteService := FRemoteService;
|
||||||
|
UpdateDataCall.RemoteService := FRemoteService;
|
||||||
|
GetScriptsCall.RemoteService := FRemoteService;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TUCROConn.SetChannel(const Value: TROWinInetHTTPChannel);
|
||||||
|
begin
|
||||||
|
FChannel := Value;
|
||||||
|
RefreshROConnection;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TUCROConn.SetMessage(const Value: TROBinMessage);
|
||||||
|
begin
|
||||||
|
FMessage := Value;
|
||||||
|
RefreshROConnection;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TUCROConn.SetServiceName(const Value: String);
|
||||||
|
begin
|
||||||
|
FRemoteService.ServiceName := Value;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TUCROConn.UCExecSQL(FSQL: String);
|
||||||
|
var
|
||||||
|
ASQL : String;
|
||||||
|
begin
|
||||||
|
ASQL := AnsiToUtf8(FSQL);
|
||||||
|
(FRemoteService as IsrvUsuarios).SQLExecuteCommand(ASQL);
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TUCROConn.UCFindDataConnection: Boolean;
|
||||||
|
begin
|
||||||
|
Result := False;
|
||||||
|
if Assigned(FRemoteService) then
|
||||||
|
begin
|
||||||
|
FRemoteService.CheckCanConnect;
|
||||||
|
Result := True;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TUCROConn.UCFindTable(const Tablename: String): Boolean;
|
||||||
|
var
|
||||||
|
ASchema : TDASchema;
|
||||||
|
begin
|
||||||
|
ASchema := FDataAdapter.ReadSchema;
|
||||||
|
try
|
||||||
|
Result := Assigned(ASchema.FindDataset(TableName));
|
||||||
|
finally
|
||||||
|
FreeAndNil(ASchema);
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
function TUCROConn.UCGetSQLDataset(FSQL: String): TDataset;
|
||||||
|
var
|
||||||
|
AStream: TMemoryStream;
|
||||||
|
ADataStreamer: TDABin2DataStreamer;
|
||||||
|
ADataTable: TDACDSDataTable;
|
||||||
|
begin
|
||||||
|
Result := NIL;
|
||||||
|
ADataStreamer := TDABin2DataStreamer.Create(NIL);
|
||||||
|
AStream := (FRemoteService as IsrvUsuarios).SQLGetData(FSQL, True, -1);
|
||||||
|
|
||||||
|
if AStream <> nil then
|
||||||
|
try
|
||||||
|
ADataTable := TDACDSDataTable.Create(Application);
|
||||||
|
|
||||||
|
// Generar un nombre aleatorio
|
||||||
|
Randomize;
|
||||||
|
ADataTable.Name := 'SQLResult' + '_' + IntToStr(Random(MAXINT));
|
||||||
|
|
||||||
|
ADataTable.LocalDataStreamer := ADataStreamer;
|
||||||
|
ADataTable.RemoteFetchEnabled := False;
|
||||||
|
try
|
||||||
|
ADataStreamer.ReadDataset(AStream, ADataTable, True);
|
||||||
|
ADataTable.Open;
|
||||||
|
|
||||||
|
{ ¡¡OJO!! Trapicheo!!!!!
|
||||||
|
Forzamos a recuperar en Dataset todas las tuplas
|
||||||
|
recorriendonos toda la tabla.}
|
||||||
|
ADataTable.Last;
|
||||||
|
ADataTable.First;
|
||||||
|
|
||||||
|
Result := ADataTable.Dataset;
|
||||||
|
finally
|
||||||
|
//FreeAndNIL(ADataTable); <-- No liberar, lo hace Application
|
||||||
|
end;
|
||||||
|
finally
|
||||||
|
FreeAndNIL(AStream);
|
||||||
|
FreeAndNIL(ADataStreamer);
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
end.
|
||||||
|
|
||||||
@ -0,0 +1,25 @@
|
|||||||
|
unit uIDataModuleUsuarios;
|
||||||
|
|
||||||
|
interface
|
||||||
|
|
||||||
|
uses
|
||||||
|
UCBase, UCSettings, uBizUsuarios;
|
||||||
|
|
||||||
|
type
|
||||||
|
IDataModuleUsuarios = interface
|
||||||
|
['{C0A8481F-4920-414D-A906-EE1EB18DE946}']
|
||||||
|
procedure InicializarUserControl (AUserControl : TUserControl);
|
||||||
|
|
||||||
|
function GetUsuario(const ID : Integer) : IBizUsuario;
|
||||||
|
function NuevoUsuario : IBizUsuario;
|
||||||
|
function GetUsuarios : IBizUsuario;
|
||||||
|
|
||||||
|
function NuevoPerfil : IBizPerfilUsuario;
|
||||||
|
function GetPerfiles : IBizPerfilUsuario;
|
||||||
|
function GetPerfil(const ID : Integer) : IBizPerfilUsuario;
|
||||||
|
end;
|
||||||
|
|
||||||
|
implementation
|
||||||
|
|
||||||
|
end.
|
||||||
|
|
||||||
1716
Source/ApplicationBase/Usuarios/Model/schUsuariosClient_Intf.pas
Normal file
1716
Source/ApplicationBase/Usuarios/Model/schUsuariosClient_Intf.pas
Normal file
File diff suppressed because it is too large
Load Diff
2009
Source/ApplicationBase/Usuarios/Model/schUsuariosServer_Intf.pas
Normal file
2009
Source/ApplicationBase/Usuarios/Model/schUsuariosServer_Intf.pas
Normal file
File diff suppressed because it is too large
Load Diff
90
Source/ApplicationBase/Usuarios/Model/uBizUsuarios.pas
Normal file
90
Source/ApplicationBase/Usuarios/Model/uBizUsuarios.pas
Normal file
@ -0,0 +1,90 @@
|
|||||||
|
unit uBizUsuarios;
|
||||||
|
|
||||||
|
interface
|
||||||
|
|
||||||
|
uses
|
||||||
|
UCBase, uDAInterfaces, uDADataTable, schUsuariosClient_Intf;
|
||||||
|
|
||||||
|
const
|
||||||
|
BIZ_CLIENT_USUARIO = 'Client.Usuario';
|
||||||
|
BIZ_CLIENT_PERFIL_USUARIO = 'Client.PerfilUsuario';
|
||||||
|
|
||||||
|
type
|
||||||
|
TUsuario = TUCCurrentUser;
|
||||||
|
|
||||||
|
IBizUsuario = interface (IUSUARIOS)
|
||||||
|
['{1DB69F36-969C-4078-B862-6D697670BCFD}']
|
||||||
|
function EsNuevo : Boolean;
|
||||||
|
end;
|
||||||
|
|
||||||
|
IBizPerfilUsuario = interface (IPERFILES)
|
||||||
|
['{D14DF996-A8CD-400A-BF74-C8B660199C74}']
|
||||||
|
function EsNuevo : Boolean;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
TBizUsuario = class(TUsuariosDataTableRules, IBizUsuario)
|
||||||
|
protected
|
||||||
|
procedure OnNewRecord(Sender: TDADataTable); override;
|
||||||
|
public
|
||||||
|
function EsNuevo : Boolean;
|
||||||
|
procedure IniciarValoresUsuarioNuevo;
|
||||||
|
end;
|
||||||
|
|
||||||
|
TBizPerfilUsuario = class(TPerfilesDataTableRules, IBizPerfilUsuario)
|
||||||
|
protected
|
||||||
|
procedure OnNewRecord(Sender: TDADataTable); override;
|
||||||
|
public
|
||||||
|
function EsNuevo : Boolean;
|
||||||
|
procedure IniciarValoresPerfilNuevo;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
implementation
|
||||||
|
|
||||||
|
{ TBizUsuario }
|
||||||
|
|
||||||
|
function TBizUsuario.EsNuevo: Boolean;
|
||||||
|
begin
|
||||||
|
Result := (ID < 0);
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TBizUsuario.IniciarValoresUsuarioNuevo;
|
||||||
|
begin
|
||||||
|
TIPO := 'U'; // Usuario;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TBizUsuario.OnNewRecord(Sender: TDADataTable);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
IniciarValoresUsuarioNuevo;
|
||||||
|
end;
|
||||||
|
|
||||||
|
{ TBizPerfilUsuario }
|
||||||
|
|
||||||
|
function TBizPerfilUsuario.EsNuevo: Boolean;
|
||||||
|
begin
|
||||||
|
Result := (ID < 0);
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TBizPerfilUsuario.IniciarValoresPerfilNuevo;
|
||||||
|
begin
|
||||||
|
TIPO := 'P'; // Perfil
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TBizPerfilUsuario.OnNewRecord(Sender: TDADataTable);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
IniciarValoresPerfilNuevo;
|
||||||
|
end;
|
||||||
|
|
||||||
|
initialization
|
||||||
|
RegisterDataTableRules(BIZ_CLIENT_USUARIO, TBizUsuario);
|
||||||
|
RegisterDataTableRules(BIZ_CLIENT_PERFIL_USUARIO, TBizPerfilUsuario);
|
||||||
|
|
||||||
|
finalization
|
||||||
|
|
||||||
|
end.
|
||||||
|
|
||||||
|
|
||||||
600
Source/ApplicationBase/Usuarios/Servidor/srvUsuarios_Impl.dfm
Normal file
600
Source/ApplicationBase/Usuarios/Servidor/srvUsuarios_Impl.dfm
Normal file
@ -0,0 +1,600 @@
|
|||||||
|
object srvUsuarios: TsrvUsuarios
|
||||||
|
OldCreateOrder = True
|
||||||
|
OnCreate = DataAbstractServiceCreate
|
||||||
|
SessionManager = dmServer.SessionManager
|
||||||
|
ServiceSchema = schUsuarios
|
||||||
|
ServiceDataStreamer = Bin2DataStreamer
|
||||||
|
AllowExecuteSQL = True
|
||||||
|
AllowWhereSQL = True
|
||||||
|
ExportedDataTables = <>
|
||||||
|
BeforeAcquireConnection = DataAbstractServiceBeforeAcquireConnection
|
||||||
|
Height = 163
|
||||||
|
Width = 300
|
||||||
|
object Diagrams: TDADiagrams
|
||||||
|
Left = 150
|
||||||
|
Top = 88
|
||||||
|
DiagramData = '<Diagrams>'#13#10'</Diagrams>'#13#10
|
||||||
|
end
|
||||||
|
object DataDictionary: TDADataDictionary
|
||||||
|
Fields = <
|
||||||
|
item
|
||||||
|
Name = 'USUARIOS_ID'
|
||||||
|
DataType = datAutoInc
|
||||||
|
GeneratorName = 'GEN_USUARIOS_ID'
|
||||||
|
Required = True
|
||||||
|
DisplayLabel = 'ID'
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'USUARIOS_USERNAME'
|
||||||
|
DataType = datString
|
||||||
|
Size = 30
|
||||||
|
DisplayLabel = 'Nombre'
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'USUARIOS_LOGIN'
|
||||||
|
DataType = datString
|
||||||
|
Size = 30
|
||||||
|
DisplayLabel = 'Login'
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'USUARIOS_PASS'
|
||||||
|
DataType = datString
|
||||||
|
Size = 250
|
||||||
|
DisplayLabel = 'Password'
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'USUARIOS_PASSEXPIRED'
|
||||||
|
DataType = datDateTime
|
||||||
|
DisplayLabel = 'Expiraci'#243'n de password'
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'USUARIOS_BLOQUEADO'
|
||||||
|
DataType = datSmallInt
|
||||||
|
DisplayLabel = 'Bloqueado'
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'USUARIOS_EMAIL'
|
||||||
|
DataType = datString
|
||||||
|
Size = 150
|
||||||
|
DisplayLabel = 'Correo electr'#243'nico'
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'USUARIOS_USERDAYSSUN'
|
||||||
|
DataType = datInteger
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'USUARIOS_PRIVILEGED'
|
||||||
|
DataType = datInteger
|
||||||
|
DisplayLabel = 'Privilegiado'
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'USUARIOS_TIPO'
|
||||||
|
DataType = datString
|
||||||
|
Size = 1
|
||||||
|
DisplayLabel = 'Tipo'
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'USUARIOS_ID_PERFIL'
|
||||||
|
DataType = datInteger
|
||||||
|
DisplayLabel = 'ID_PERFIL'
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'USUARIOS_CHECKSUM'
|
||||||
|
DataType = datString
|
||||||
|
Size = 250
|
||||||
|
DisplayLabel = 'Checksum'
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'PERFILES_ID'
|
||||||
|
DataType = datAutoInc
|
||||||
|
GeneratorName = 'GEN_USUARIOS_ID'
|
||||||
|
Required = True
|
||||||
|
DisplayLabel = 'ID'
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'PERFILES_USERNAME'
|
||||||
|
DataType = datString
|
||||||
|
Size = 30
|
||||||
|
DisplayLabel = 'Nombre'
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'PERFILES_LOGIN'
|
||||||
|
DataType = datString
|
||||||
|
Size = 30
|
||||||
|
DisplayLabel = 'Login'
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'PERFILES_TIPO'
|
||||||
|
DataType = datString
|
||||||
|
Size = 1
|
||||||
|
DisplayLabel = 'Tipo'
|
||||||
|
end>
|
||||||
|
Left = 150
|
||||||
|
Top = 24
|
||||||
|
end
|
||||||
|
object schUsuarios: TDASchema
|
||||||
|
ConnectionManager = dmServer.ConnectionManager
|
||||||
|
DataDictionary = DataDictionary
|
||||||
|
Diagrams = Diagrams
|
||||||
|
Datasets = <
|
||||||
|
item
|
||||||
|
Params = <>
|
||||||
|
Statements = <
|
||||||
|
item
|
||||||
|
Connection = 'GFT_VARELA'
|
||||||
|
Default = True
|
||||||
|
TargetTable = 'RDX_USUARIOS'
|
||||||
|
SQL =
|
||||||
|
'SELECT'#10' ID, USERNAME, LOGIN, PASS, PASSEXPIRED, BLOQUEADO,'#10' ' +
|
||||||
|
' EMAIL, USERDAYSSUN, PRIVILEGED, TIPO, ID_PERFIL, CHECKSUM'#10' FR' +
|
||||||
|
'OM'#10' RDX_USUARIOS'#10' WHERE TIPO = '#39'U'#39' AND {Where}'#10' ORDER BY US' +
|
||||||
|
'ERNAME'#10
|
||||||
|
StatementType = stSQL
|
||||||
|
ColumnMappings = <
|
||||||
|
item
|
||||||
|
DatasetField = 'ID'
|
||||||
|
TableField = 'ID'
|
||||||
|
end
|
||||||
|
item
|
||||||
|
DatasetField = 'USERNAME'
|
||||||
|
TableField = 'USERNAME'
|
||||||
|
end
|
||||||
|
item
|
||||||
|
DatasetField = 'LOGIN'
|
||||||
|
TableField = 'LOGIN'
|
||||||
|
end
|
||||||
|
item
|
||||||
|
DatasetField = 'PASS'
|
||||||
|
TableField = 'PASS'
|
||||||
|
end
|
||||||
|
item
|
||||||
|
DatasetField = 'PASSEXPIRED'
|
||||||
|
TableField = 'PASSEXPIRED'
|
||||||
|
end
|
||||||
|
item
|
||||||
|
DatasetField = 'BLOQUEADO'
|
||||||
|
TableField = 'BLOQUEADO'
|
||||||
|
end
|
||||||
|
item
|
||||||
|
DatasetField = 'EMAIL'
|
||||||
|
TableField = 'EMAIL'
|
||||||
|
end
|
||||||
|
item
|
||||||
|
DatasetField = 'USERDAYSSUN'
|
||||||
|
TableField = 'USERDAYSSUN'
|
||||||
|
end
|
||||||
|
item
|
||||||
|
DatasetField = 'PRIVILEGED'
|
||||||
|
TableField = 'PRIVILEGED'
|
||||||
|
end
|
||||||
|
item
|
||||||
|
DatasetField = 'TIPO'
|
||||||
|
TableField = 'TIPO'
|
||||||
|
end
|
||||||
|
item
|
||||||
|
DatasetField = 'ID_PERFIL'
|
||||||
|
TableField = 'ID_PERFIL'
|
||||||
|
end
|
||||||
|
item
|
||||||
|
DatasetField = 'CHECKSUM'
|
||||||
|
TableField = 'CHECKSUM'
|
||||||
|
end>
|
||||||
|
end>
|
||||||
|
Name = 'USUARIOS'
|
||||||
|
Fields = <
|
||||||
|
item
|
||||||
|
Name = 'ID'
|
||||||
|
DataType = datAutoInc
|
||||||
|
GeneratorName = 'GEN_USUARIOS_ID'
|
||||||
|
DictionaryEntry = 'USUARIOS_ID'
|
||||||
|
InPrimaryKey = True
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'USERNAME'
|
||||||
|
DataType = datString
|
||||||
|
Size = 30
|
||||||
|
DictionaryEntry = 'USUARIOS_USERNAME'
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'LOGIN'
|
||||||
|
DataType = datString
|
||||||
|
Size = 30
|
||||||
|
DictionaryEntry = 'USUARIOS_LOGIN'
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'PASS'
|
||||||
|
DataType = datString
|
||||||
|
Size = 250
|
||||||
|
DictionaryEntry = 'USUARIOS_PASS'
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'PASSEXPIRED'
|
||||||
|
DataType = datDateTime
|
||||||
|
DictionaryEntry = 'USUARIOS_PASSEXPIRED'
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'BLOQUEADO'
|
||||||
|
DataType = datSmallInt
|
||||||
|
DictionaryEntry = 'USUARIOS_BLOQUEADO'
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'EMAIL'
|
||||||
|
DataType = datString
|
||||||
|
Size = 150
|
||||||
|
DictionaryEntry = 'USUARIOS_EMAIL'
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'USERDAYSSUN'
|
||||||
|
DataType = datInteger
|
||||||
|
DictionaryEntry = 'USUARIOS_USERDAYSSUN'
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'PRIVILEGED'
|
||||||
|
DataType = datInteger
|
||||||
|
DictionaryEntry = 'USUARIOS_PRIVILEGED'
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'TIPO'
|
||||||
|
DataType = datString
|
||||||
|
Size = 1
|
||||||
|
DictionaryEntry = 'USUARIOS_TIPO'
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'ID_PERFIL'
|
||||||
|
DataType = datInteger
|
||||||
|
DictionaryEntry = 'USUARIOS_ID_PERFIL'
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'CHECKSUM'
|
||||||
|
DataType = datString
|
||||||
|
Size = 250
|
||||||
|
DictionaryEntry = 'USUARIOS_CHECKSUM'
|
||||||
|
end>
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Params = <>
|
||||||
|
Statements = <
|
||||||
|
item
|
||||||
|
Connection = 'GFT_VARELA'
|
||||||
|
Default = True
|
||||||
|
TargetTable = 'RDX_USUARIOS_EVENTOS'
|
||||||
|
StatementType = stAutoSQL
|
||||||
|
ColumnMappings = <
|
||||||
|
item
|
||||||
|
DatasetField = 'APLICACION'
|
||||||
|
TableField = 'APLICACION'
|
||||||
|
end
|
||||||
|
item
|
||||||
|
DatasetField = 'ID_USUARIO'
|
||||||
|
TableField = 'ID_USUARIO'
|
||||||
|
end
|
||||||
|
item
|
||||||
|
DatasetField = 'FECHA'
|
||||||
|
TableField = 'FECHA'
|
||||||
|
end
|
||||||
|
item
|
||||||
|
DatasetField = 'HORA'
|
||||||
|
TableField = 'HORA'
|
||||||
|
end
|
||||||
|
item
|
||||||
|
DatasetField = 'FORM'
|
||||||
|
TableField = 'FORM'
|
||||||
|
end
|
||||||
|
item
|
||||||
|
DatasetField = 'TITULO_FORM'
|
||||||
|
TableField = 'TITULO_FORM'
|
||||||
|
end
|
||||||
|
item
|
||||||
|
DatasetField = 'EVENTO'
|
||||||
|
TableField = 'EVENTO'
|
||||||
|
end
|
||||||
|
item
|
||||||
|
DatasetField = 'NOTAS'
|
||||||
|
TableField = 'NOTAS'
|
||||||
|
end
|
||||||
|
item
|
||||||
|
DatasetField = 'TNAME'
|
||||||
|
TableField = 'TNAME'
|
||||||
|
end>
|
||||||
|
end>
|
||||||
|
Name = 'USUARIOS_EVENTOS'
|
||||||
|
Fields = <
|
||||||
|
item
|
||||||
|
Name = 'APLICACION'
|
||||||
|
DataType = datString
|
||||||
|
Size = 250
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'ID_USUARIO'
|
||||||
|
DataType = datInteger
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'FECHA'
|
||||||
|
DataType = datString
|
||||||
|
Size = 10
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'HORA'
|
||||||
|
DataType = datString
|
||||||
|
Size = 8
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'FORM'
|
||||||
|
DataType = datString
|
||||||
|
Size = 250
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'TITULO_FORM'
|
||||||
|
DataType = datString
|
||||||
|
Size = 100
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'EVENTO'
|
||||||
|
DataType = datString
|
||||||
|
Size = 50
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'NOTAS'
|
||||||
|
DataType = datMemo
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'TNAME'
|
||||||
|
DataType = datString
|
||||||
|
Size = 20
|
||||||
|
end>
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Params = <>
|
||||||
|
Statements = <
|
||||||
|
item
|
||||||
|
Connection = 'GFT_VARELA'
|
||||||
|
TargetTable = 'RDX_USUARIOS_LOGON'
|
||||||
|
StatementType = stAutoSQL
|
||||||
|
ColumnMappings = <
|
||||||
|
item
|
||||||
|
DatasetField = 'LOGONID'
|
||||||
|
TableField = 'LOGONID'
|
||||||
|
end
|
||||||
|
item
|
||||||
|
DatasetField = 'ID_USUARIO'
|
||||||
|
TableField = 'ID_USUARIO'
|
||||||
|
end
|
||||||
|
item
|
||||||
|
DatasetField = 'APLICACION'
|
||||||
|
TableField = 'APLICACION'
|
||||||
|
end
|
||||||
|
item
|
||||||
|
DatasetField = 'EQUIPO'
|
||||||
|
TableField = 'EQUIPO'
|
||||||
|
end
|
||||||
|
item
|
||||||
|
DatasetField = 'DATA'
|
||||||
|
TableField = 'DATA'
|
||||||
|
end>
|
||||||
|
end>
|
||||||
|
Name = 'USUARIOS_LOGON'
|
||||||
|
Fields = <
|
||||||
|
item
|
||||||
|
Name = 'LOGONID'
|
||||||
|
DataType = datString
|
||||||
|
Size = 38
|
||||||
|
Required = True
|
||||||
|
InPrimaryKey = True
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'ID_USUARIO'
|
||||||
|
DataType = datInteger
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'APLICACION'
|
||||||
|
DataType = datString
|
||||||
|
Size = 50
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'EQUIPO'
|
||||||
|
DataType = datString
|
||||||
|
Size = 50
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'DATA'
|
||||||
|
DataType = datString
|
||||||
|
Size = 14
|
||||||
|
end>
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Params = <>
|
||||||
|
Statements = <
|
||||||
|
item
|
||||||
|
Connection = 'GFT_VARELA'
|
||||||
|
TargetTable = 'RDX_USUARIOS'
|
||||||
|
SQL =
|
||||||
|
'SELECT '#10' ID, USERNAME, LOGIN, TIPO'#10' FROM'#10' RDX_USUARIOS'#10' ' +
|
||||||
|
'WHERE TIPO = '#39'P'#39' AND {Where}'#10' ORDER BY USERNAME'#10
|
||||||
|
StatementType = stSQL
|
||||||
|
ColumnMappings = <
|
||||||
|
item
|
||||||
|
DatasetField = 'ID'
|
||||||
|
TableField = 'ID'
|
||||||
|
end
|
||||||
|
item
|
||||||
|
DatasetField = 'USERNAME'
|
||||||
|
TableField = 'USERNAME'
|
||||||
|
end
|
||||||
|
item
|
||||||
|
DatasetField = 'LOGIN'
|
||||||
|
TableField = 'LOGIN'
|
||||||
|
end
|
||||||
|
item
|
||||||
|
DatasetField = 'TIPO'
|
||||||
|
TableField = 'TIPO'
|
||||||
|
end>
|
||||||
|
end>
|
||||||
|
Name = 'PERFILES'
|
||||||
|
Fields = <
|
||||||
|
item
|
||||||
|
Name = 'ID'
|
||||||
|
DataType = datAutoInc
|
||||||
|
GeneratorName = 'GEN_USUARIOS_ID'
|
||||||
|
DictionaryEntry = 'PERFILES_ID'
|
||||||
|
InPrimaryKey = True
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'USERNAME'
|
||||||
|
DataType = datString
|
||||||
|
Size = 30
|
||||||
|
DictionaryEntry = 'PERFILES_USERNAME'
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'LOGIN'
|
||||||
|
DataType = datString
|
||||||
|
Size = 30
|
||||||
|
DictionaryEntry = 'PERFILES_LOGIN'
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'TIPO'
|
||||||
|
DataType = datString
|
||||||
|
Size = 1
|
||||||
|
DictionaryEntry = 'PERFILES_TIPO'
|
||||||
|
end>
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Params = <>
|
||||||
|
Statements = <
|
||||||
|
item
|
||||||
|
Connection = 'GFT_VARELA'
|
||||||
|
ConnectionType = 'MSSQL'
|
||||||
|
Default = True
|
||||||
|
TargetTable = 'RDX_PERMISOS'
|
||||||
|
StatementType = stAutoSQL
|
||||||
|
ColumnMappings = <
|
||||||
|
item
|
||||||
|
DatasetField = 'ID'
|
||||||
|
TableField = 'ID'
|
||||||
|
end
|
||||||
|
item
|
||||||
|
DatasetField = 'ID_USUARIO'
|
||||||
|
TableField = 'ID_USUARIO'
|
||||||
|
end
|
||||||
|
item
|
||||||
|
DatasetField = 'MODULO'
|
||||||
|
TableField = 'MODULO'
|
||||||
|
end
|
||||||
|
item
|
||||||
|
DatasetField = 'NOMBRECOMP'
|
||||||
|
TableField = 'NOMBRECOMP'
|
||||||
|
end
|
||||||
|
item
|
||||||
|
DatasetField = 'CHECKSUM'
|
||||||
|
TableField = 'CHECKSUM'
|
||||||
|
end>
|
||||||
|
end>
|
||||||
|
Name = 'PERMISOS'
|
||||||
|
Fields = <
|
||||||
|
item
|
||||||
|
Name = 'ID'
|
||||||
|
DataType = datInteger
|
||||||
|
Required = True
|
||||||
|
InPrimaryKey = True
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'ID_USUARIO'
|
||||||
|
DataType = datInteger
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'MODULO'
|
||||||
|
DataType = datString
|
||||||
|
Size = 50
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'NOMBRECOMP'
|
||||||
|
DataType = datString
|
||||||
|
Size = 50
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'CHECKSUM'
|
||||||
|
DataType = datString
|
||||||
|
Size = 250
|
||||||
|
end>
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Params = <>
|
||||||
|
Statements = <
|
||||||
|
item
|
||||||
|
Connection = 'GFT_VARELA'
|
||||||
|
ConnectionType = 'MSSQL'
|
||||||
|
Default = True
|
||||||
|
TargetTable = 'RDX_PERMISOSEX'
|
||||||
|
StatementType = stAutoSQL
|
||||||
|
ColumnMappings = <
|
||||||
|
item
|
||||||
|
DatasetField = 'ID'
|
||||||
|
TableField = 'ID'
|
||||||
|
end
|
||||||
|
item
|
||||||
|
DatasetField = 'ID_USUARIO'
|
||||||
|
TableField = 'ID_USUARIO'
|
||||||
|
end
|
||||||
|
item
|
||||||
|
DatasetField = 'MODULO'
|
||||||
|
TableField = 'MODULO'
|
||||||
|
end
|
||||||
|
item
|
||||||
|
DatasetField = 'NOMBRECOMP'
|
||||||
|
TableField = 'NOMBRECOMP'
|
||||||
|
end
|
||||||
|
item
|
||||||
|
DatasetField = 'NOMBREFORM'
|
||||||
|
TableField = 'NOMBREFORM'
|
||||||
|
end
|
||||||
|
item
|
||||||
|
DatasetField = 'CHECKSUM'
|
||||||
|
TableField = 'CHECKSUM'
|
||||||
|
end>
|
||||||
|
end>
|
||||||
|
Name = 'PERMISOSEX'
|
||||||
|
Fields = <
|
||||||
|
item
|
||||||
|
Name = 'ID'
|
||||||
|
DataType = datInteger
|
||||||
|
Required = True
|
||||||
|
InPrimaryKey = True
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'ID_USUARIO'
|
||||||
|
DataType = datInteger
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'MODULO'
|
||||||
|
DataType = datString
|
||||||
|
Size = 50
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'NOMBRECOMP'
|
||||||
|
DataType = datString
|
||||||
|
Size = 50
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'NOMBREFORM'
|
||||||
|
DataType = datString
|
||||||
|
Size = 50
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'CHECKSUM'
|
||||||
|
DataType = datString
|
||||||
|
Size = 250
|
||||||
|
end>
|
||||||
|
end>
|
||||||
|
JoinDataTables = <>
|
||||||
|
UnionDataTables = <>
|
||||||
|
Commands = <>
|
||||||
|
RelationShips = <>
|
||||||
|
UpdateRules = <>
|
||||||
|
Version = 0
|
||||||
|
Left = 48
|
||||||
|
Top = 24
|
||||||
|
end
|
||||||
|
object Bin2DataStreamer: TDABin2DataStreamer
|
||||||
|
Left = 48
|
||||||
|
Top = 88
|
||||||
|
end
|
||||||
|
end
|
||||||
@ -0,0 +1,65 @@
|
|||||||
|
unit srvUsuarios_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. }
|
||||||
|
{----------------------------------------------------------------------------}
|
||||||
|
|
||||||
|
{$I Remobjects.inc}
|
||||||
|
|
||||||
|
interface
|
||||||
|
|
||||||
|
uses
|
||||||
|
{vcl:} Classes, SysUtils,
|
||||||
|
{RemObjects:} uROXMLIntf, uROClientIntf, uROTypes, uROServer, uROServerIntf, uROSessions,
|
||||||
|
{Required:} uRORemoteDataModule,
|
||||||
|
{Ancestor Implementation:} DataAbstractService_Impl,
|
||||||
|
{Used RODLs:} DataAbstract4_Intf,
|
||||||
|
{Generated:} VARELA_Intf, uDADataStreamer, uDABin2DataStreamer, uDAClasses;
|
||||||
|
|
||||||
|
type
|
||||||
|
{ TsrvUsuarios }
|
||||||
|
TsrvUsuarios = class(TDataAbstractService, IsrvUsuarios)
|
||||||
|
Diagrams: TDADiagrams;
|
||||||
|
Bin2DataStreamer: TDABin2DataStreamer;
|
||||||
|
schUsuarios: TDASchema;
|
||||||
|
DataDictionary: TDADataDictionary;
|
||||||
|
procedure DataAbstractServiceBeforeAcquireConnection(aSender: TObject;
|
||||||
|
var aConnectionName: string);
|
||||||
|
procedure DataAbstractServiceCreate(Sender: TObject);
|
||||||
|
private
|
||||||
|
protected
|
||||||
|
{ IsrvUsuarios methods }
|
||||||
|
end;
|
||||||
|
|
||||||
|
implementation
|
||||||
|
|
||||||
|
{$R *.dfm}
|
||||||
|
uses
|
||||||
|
{Generated:} VARELA_Invk, uDataModuleServer;
|
||||||
|
|
||||||
|
procedure Create_srvUsuarios(out anInstance : IUnknown);
|
||||||
|
begin
|
||||||
|
anInstance := TsrvUsuarios.Create(nil);
|
||||||
|
end;
|
||||||
|
|
||||||
|
{ srvUsuarios }
|
||||||
|
procedure TsrvUsuarios.DataAbstractServiceBeforeAcquireConnection(
|
||||||
|
aSender: TObject; var aConnectionName: string);
|
||||||
|
begin
|
||||||
|
ConnectionName := dmServer.ConnectionName;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TsrvUsuarios.DataAbstractServiceCreate(Sender: TObject);
|
||||||
|
begin
|
||||||
|
SessionManager := dmServer.SessionManager;
|
||||||
|
end;
|
||||||
|
|
||||||
|
initialization
|
||||||
|
TROClassFactory.Create('srvUsuarios', Create_srvUsuarios, TsrvUsuarios_Invoker);
|
||||||
|
|
||||||
|
finalization
|
||||||
|
|
||||||
|
end.
|
||||||
45
Source/ApplicationBase/Usuarios/Usuarios.cfg
Normal file
45
Source/ApplicationBase/Usuarios/Usuarios.cfg
Normal file
@ -0,0 +1,45 @@
|
|||||||
|
-$A8
|
||||||
|
-$B-
|
||||||
|
-$C+
|
||||||
|
-$D+
|
||||||
|
-$E-
|
||||||
|
-$F-
|
||||||
|
-$G+
|
||||||
|
-$H+
|
||||||
|
-$I+
|
||||||
|
-$J-
|
||||||
|
-$K-
|
||||||
|
-$L+
|
||||||
|
-$M-
|
||||||
|
-$N+
|
||||||
|
-$O+
|
||||||
|
-$P+
|
||||||
|
-$Q-
|
||||||
|
-$R-
|
||||||
|
-$S-
|
||||||
|
-$T-
|
||||||
|
-$U-
|
||||||
|
-$V+
|
||||||
|
-$W-
|
||||||
|
-$X+
|
||||||
|
-$YD
|
||||||
|
-$Z1
|
||||||
|
-GD
|
||||||
|
-cg
|
||||||
|
-AWinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE;
|
||||||
|
-H+
|
||||||
|
-W+
|
||||||
|
-M
|
||||||
|
-$M16384,1048576
|
||||||
|
-K$00400000
|
||||||
|
-N".\"
|
||||||
|
-LE"..\..\Output\Cliente"
|
||||||
|
-LN"..\Lib"
|
||||||
|
-U"..\Lib"
|
||||||
|
-O"..\Lib"
|
||||||
|
-I"..\Lib"
|
||||||
|
-R"..\Lib"
|
||||||
|
-Z
|
||||||
|
-w-UNSAFE_TYPE
|
||||||
|
-w-UNSAFE_CODE
|
||||||
|
-w-UNSAFE_CAST
|
||||||
471
Source/ApplicationBase/Usuarios/Usuarios.dof
Normal file
471
Source/ApplicationBase/Usuarios/Usuarios.dof
Normal file
@ -0,0 +1,471 @@
|
|||||||
|
[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=1
|
||||||
|
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=Pedidos a proveedor
|
||||||
|
[Directories]
|
||||||
|
OutputDir=
|
||||||
|
UnitOutputDir=.\
|
||||||
|
PackageDLLOutputDir=..\..\Output\Cliente
|
||||||
|
PackageDCPOutputDir=..\Lib
|
||||||
|
SearchPath=..\Lib
|
||||||
|
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\Bin\designdgm70.bpl=Borland Module Diagram Editview
|
||||||
|
T:\BPL_D7\dxPSCoreD7.bpl=ExpressPrinting System by Developer Express Inc.
|
||||||
|
[HistoryLists\hlUnitAliases]
|
||||||
|
Count=1
|
||||||
|
Item0=WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE;
|
||||||
|
[HistoryLists\hlSearchPath]
|
||||||
|
Count=1
|
||||||
|
Item0=..\Lib
|
||||||
|
[HistoryLists\hlUnitOutputDirectory]
|
||||||
|
Count=1
|
||||||
|
Item0=.\
|
||||||
|
[HistoryLists\hlBPLOutput]
|
||||||
|
Count=1
|
||||||
|
Item0=..\..\Output\Cliente
|
||||||
|
[HistoryLists\hlDCPOutput]
|
||||||
|
Count=1
|
||||||
|
Item0=..\Lib
|
||||||
|
[Exception Log]
|
||||||
|
EurekaLog Version=519
|
||||||
|
Activate=1
|
||||||
|
Activate Handle=1
|
||||||
|
Save Log File=1
|
||||||
|
Foreground Tab=0
|
||||||
|
Freeze Activate=0
|
||||||
|
Freeze Timeout=60
|
||||||
|
Freeze Message=The application seems to be frozen.
|
||||||
|
SMTP From=eurekalog@email.com
|
||||||
|
SMTP Host=
|
||||||
|
SMTP Port=25
|
||||||
|
SMTP UserID=
|
||||||
|
SMTP Password=
|
||||||
|
Append to Log=0
|
||||||
|
Show TerminateBtn=1
|
||||||
|
TerminateBtn Operation=1
|
||||||
|
Errors Number=32
|
||||||
|
Errors Terminate=3
|
||||||
|
Email Address=
|
||||||
|
Email Object=
|
||||||
|
Email Send Options=0
|
||||||
|
Output Path=
|
||||||
|
Encrypt Password=
|
||||||
|
AutoCloseDialogSecs=0
|
||||||
|
WebSendMode=0
|
||||||
|
SupportULR=
|
||||||
|
HTMLLayout Count=15
|
||||||
|
HTMLLine0="%3Chtml%3E"
|
||||||
|
HTMLLine1=" %3Chead%3E"
|
||||||
|
HTMLLine2=" %3C/head%3E"
|
||||||
|
HTMLLine3=" %3Cbody TopMargin=10 LeftMargin=10%3E"
|
||||||
|
HTMLLine4=" %3Ctable width="100%%" border="0"%3E"
|
||||||
|
HTMLLine5=" %3Ctr%3E"
|
||||||
|
HTMLLine6=" %3Ctd nowrap%3E"
|
||||||
|
HTMLLine7=" %3Cfont face="Lucida Console, Courier" size="2"%3E"
|
||||||
|
HTMLLine8=" %3C%%HTML_TAG%%%3E"
|
||||||
|
HTMLLine9=" %3C/font%3E"
|
||||||
|
HTMLLine10=" %3C/td%3E"
|
||||||
|
HTMLLine11=" %3C/tr%3E"
|
||||||
|
HTMLLine12=" %3C/table%3E"
|
||||||
|
HTMLLine13=" %3C/body%3E"
|
||||||
|
HTMLLine14="%3C/html%3E"
|
||||||
|
AutoCrashOperation=1
|
||||||
|
AutoCrashNumber=10
|
||||||
|
AutoCrashMinutes=1
|
||||||
|
WebURL=
|
||||||
|
WebUserID=
|
||||||
|
WebPassword=
|
||||||
|
WebPort=0
|
||||||
|
AttachedFiles=
|
||||||
|
Count=0
|
||||||
|
EMail Message Line Count=0
|
||||||
|
loNoDuplicateErrors=0
|
||||||
|
loAppendReproduceText=0
|
||||||
|
loDeleteLogAtVersionChange=0
|
||||||
|
loAddComputerNameInLogFileName=0
|
||||||
|
loSaveModulesSection=1
|
||||||
|
loSaveCPUSection=1
|
||||||
|
soAppStartDate=1
|
||||||
|
soAppName=1
|
||||||
|
soAppVersionNumber=1
|
||||||
|
soAppParameters=1
|
||||||
|
soAppCompilationDate=1
|
||||||
|
soExcDate=1
|
||||||
|
soExcAddress=1
|
||||||
|
soExcModule=1
|
||||||
|
soExcType=1
|
||||||
|
soExcMessage=1
|
||||||
|
soActCtlsFormClass=1
|
||||||
|
soActCtlsFormText=1
|
||||||
|
soActCtlsControlClass=1
|
||||||
|
soActCtlsControlText=1
|
||||||
|
soCmpName=1
|
||||||
|
soCmpUser=1
|
||||||
|
soCmpTotalMemory=1
|
||||||
|
soCmpFreeMemory=1
|
||||||
|
soCmpTotalDisk=1
|
||||||
|
soCmpFreeDisk=1
|
||||||
|
soCmpSysUpTime=1
|
||||||
|
soCmpProcessor=1
|
||||||
|
soCmpDisplayMode=1
|
||||||
|
soOSType=1
|
||||||
|
soOSBuildN=1
|
||||||
|
soOSUpdate=1
|
||||||
|
soOSLanguage=1
|
||||||
|
soNetIP=1
|
||||||
|
soNetSubmask=1
|
||||||
|
soNetGateway=1
|
||||||
|
soNetDNS1=1
|
||||||
|
soNetDNS2=1
|
||||||
|
soNetDHCP=1
|
||||||
|
sndShowSendDialog=1
|
||||||
|
sndShowSuccessFailureMsg=0
|
||||||
|
sndSendEntireLog=0
|
||||||
|
sndSendXMLLogCopy=0
|
||||||
|
sndSendScreenshot=1
|
||||||
|
sndUseOnlyActiveWindow=0
|
||||||
|
sndSendLastHTMLPage=1
|
||||||
|
sndSendInSeparatedThread=0
|
||||||
|
sndAddDateInFileName=0
|
||||||
|
sndCompressAllFiles=0
|
||||||
|
edoShowExceptionDialog=1
|
||||||
|
edoSendEmailChecked=1
|
||||||
|
edoAttachScreenshotChecked=1
|
||||||
|
edoShowCopyToClipOption=1
|
||||||
|
edoShowDetailsButton=1
|
||||||
|
edoShowInDetailedMode=0
|
||||||
|
edoShowInTopMostMode=0
|
||||||
|
edoUseEurekaLogLookAndFeel=0
|
||||||
|
csoShowDLLs=1
|
||||||
|
csoShowBPLs=1
|
||||||
|
csoShowBorlandThreads=1
|
||||||
|
csoShowWindowsThreads=1
|
||||||
|
csoShowProcedureOffset=0
|
||||||
|
boActivateCrashDetection=0
|
||||||
|
boPauseBorlandThreads=0
|
||||||
|
boDoNotPauseMainThread=0
|
||||||
|
boPauseWindowsThreads=0
|
||||||
|
boUseMainModuleOptions=1
|
||||||
|
boCopyLogInCaseOfError=1
|
||||||
|
boSaveCompressedCopyInCaseOfError=0
|
||||||
|
Count mtInformationMsgCaption=1
|
||||||
|
mtInformationMsgCaption0="Information."
|
||||||
|
Count mtQuestionMsgCaption=1
|
||||||
|
mtQuestionMsgCaption0="Question."
|
||||||
|
Count mtDialog_Caption=1
|
||||||
|
mtDialog_Caption0="Error."
|
||||||
|
Count mtDialog_ErrorMsgCaption=2
|
||||||
|
mtDialog_ErrorMsgCaption0="An error has occurred during program execution."
|
||||||
|
mtDialog_ErrorMsgCaption1="Please read the following information for further details."
|
||||||
|
Count mtDialog_GeneralCaption=1
|
||||||
|
mtDialog_GeneralCaption0="General"
|
||||||
|
Count mtDialog_GeneralHeader=1
|
||||||
|
mtDialog_GeneralHeader0="General Information"
|
||||||
|
Count mtDialog_CallStackCaption=1
|
||||||
|
mtDialog_CallStackCaption0="Call Stack"
|
||||||
|
Count mtDialog_CallStackHeader=1
|
||||||
|
mtDialog_CallStackHeader0="Call Stack Information"
|
||||||
|
Count mtDialog_ModulesCaption=1
|
||||||
|
mtDialog_ModulesCaption0="Modules"
|
||||||
|
Count mtDialog_ModulesHeader=1
|
||||||
|
mtDialog_ModulesHeader0="Modules Information"
|
||||||
|
Count mtDialog_CPUCaption=1
|
||||||
|
mtDialog_CPUCaption0="CPU"
|
||||||
|
Count mtDialog_CPUHeader=1
|
||||||
|
mtDialog_CPUHeader0="CPU Information"
|
||||||
|
Count mtDialog_CustomDataCaption=1
|
||||||
|
mtDialog_CustomDataCaption0="Other"
|
||||||
|
Count mtDialog_CustomDataHeader=1
|
||||||
|
mtDialog_CustomDataHeader0="Other Information"
|
||||||
|
Count mtDialog_OKButtonCaption=1
|
||||||
|
mtDialog_OKButtonCaption0="%26OK"
|
||||||
|
Count mtDialog_TerminateButtonCaption=1
|
||||||
|
mtDialog_TerminateButtonCaption0="%26Terminate"
|
||||||
|
Count mtDialog_RestartButtonCaption=1
|
||||||
|
mtDialog_RestartButtonCaption0="%26Restart"
|
||||||
|
Count mtDialog_DetailsButtonCaption=1
|
||||||
|
mtDialog_DetailsButtonCaption0="%26Details"
|
||||||
|
Count mtDialog_SendMessage=1
|
||||||
|
mtDialog_SendMessage0="%26Send this error via Internet"
|
||||||
|
Count mtDialog_ScreenshotMessage=1
|
||||||
|
mtDialog_ScreenshotMessage0="%26Attach a Screenshot image"
|
||||||
|
Count mtDialog_CopyMessage=1
|
||||||
|
mtDialog_CopyMessage0="%26Copy to Clipboard"
|
||||||
|
Count mtDialog_SupportMessage=1
|
||||||
|
mtDialog_SupportMessage0="Go to the Support Page"
|
||||||
|
Count mtLog_AppHeader=1
|
||||||
|
mtLog_AppHeader0="Application"
|
||||||
|
Count mtLog_AppStartDate=1
|
||||||
|
mtLog_AppStartDate0="Start Date"
|
||||||
|
Count mtLog_AppName=1
|
||||||
|
mtLog_AppName0="Name/Description"
|
||||||
|
Count mtLog_AppVersionNumber=1
|
||||||
|
mtLog_AppVersionNumber0="Version Number"
|
||||||
|
Count mtLog_AppParameters=1
|
||||||
|
mtLog_AppParameters0="Parameters"
|
||||||
|
Count mtLog_AppCompilationDate=1
|
||||||
|
mtLog_AppCompilationDate0="Compilation Date"
|
||||||
|
Count mtLog_ExcHeader=1
|
||||||
|
mtLog_ExcHeader0="Exception"
|
||||||
|
Count mtLog_ExcDate=1
|
||||||
|
mtLog_ExcDate0="Date"
|
||||||
|
Count mtLog_ExcAddress=1
|
||||||
|
mtLog_ExcAddress0="Address"
|
||||||
|
Count mtLog_ExcModule=1
|
||||||
|
mtLog_ExcModule0="Module"
|
||||||
|
Count mtLog_ExcType=1
|
||||||
|
mtLog_ExcType0="Type"
|
||||||
|
Count mtLog_ExcMessage=1
|
||||||
|
mtLog_ExcMessage0="Message"
|
||||||
|
Count mtLog_ActCtrlsHeader=1
|
||||||
|
mtLog_ActCtrlsHeader0="Active Controls"
|
||||||
|
Count mtLog_ActCtrlsFormClass=1
|
||||||
|
mtLog_ActCtrlsFormClass0="Form Class"
|
||||||
|
Count mtLog_ActCtrlsFormText=1
|
||||||
|
mtLog_ActCtrlsFormText0="Form Text"
|
||||||
|
Count mtLog_ActCtrlsControlClass=1
|
||||||
|
mtLog_ActCtrlsControlClass0="Control Class"
|
||||||
|
Count mtLog_ActCtrlsControlText=1
|
||||||
|
mtLog_ActCtrlsControlText0="Control Text"
|
||||||
|
Count mtLog_CmpHeader=1
|
||||||
|
mtLog_CmpHeader0="Computer"
|
||||||
|
Count mtLog_CmpName=1
|
||||||
|
mtLog_CmpName0="Name"
|
||||||
|
Count mtLog_CmpUser=1
|
||||||
|
mtLog_CmpUser0="User"
|
||||||
|
Count mtLog_CmpTotalMemory=1
|
||||||
|
mtLog_CmpTotalMemory0="Total Memory"
|
||||||
|
Count mtLog_CmpFreeMemory=1
|
||||||
|
mtLog_CmpFreeMemory0="Free Memory"
|
||||||
|
Count mtLog_CmpTotalDisk=1
|
||||||
|
mtLog_CmpTotalDisk0="Total Disk"
|
||||||
|
Count mtLog_CmpFreeDisk=1
|
||||||
|
mtLog_CmpFreeDisk0="Free Disk"
|
||||||
|
Count mtLog_CmpSystemUpTime=1
|
||||||
|
mtLog_CmpSystemUpTime0="System Up Time"
|
||||||
|
Count mtLog_CmpProcessor=1
|
||||||
|
mtLog_CmpProcessor0="Processor"
|
||||||
|
Count mtLog_CmpDisplayMode=1
|
||||||
|
mtLog_CmpDisplayMode0="Display Mode"
|
||||||
|
Count mtLog_OSHeader=1
|
||||||
|
mtLog_OSHeader0="Operating System"
|
||||||
|
Count mtLog_OSType=1
|
||||||
|
mtLog_OSType0="Type"
|
||||||
|
Count mtLog_OSBuildN=1
|
||||||
|
mtLog_OSBuildN0="Build #"
|
||||||
|
Count mtLog_OSUpdate=1
|
||||||
|
mtLog_OSUpdate0="Update"
|
||||||
|
Count mtLog_OSLanguage=1
|
||||||
|
mtLog_OSLanguage0="Language"
|
||||||
|
Count mtLog_NetHeader=1
|
||||||
|
mtLog_NetHeader0="Network"
|
||||||
|
Count mtLog_NetIP=1
|
||||||
|
mtLog_NetIP0="IP Address"
|
||||||
|
Count mtLog_NetSubmask=1
|
||||||
|
mtLog_NetSubmask0="Submask"
|
||||||
|
Count mtLog_NetGateway=1
|
||||||
|
mtLog_NetGateway0="Gateway"
|
||||||
|
Count mtLog_NetDNS1=1
|
||||||
|
mtLog_NetDNS10="DNS 1"
|
||||||
|
Count mtLog_NetDNS2=1
|
||||||
|
mtLog_NetDNS20="DNS 2"
|
||||||
|
Count mtLog_NetDHCP=1
|
||||||
|
mtLog_NetDHCP0="DHCP"
|
||||||
|
Count mtLog_CustInfoHeader=1
|
||||||
|
mtLog_CustInfoHeader0="Custom Information"
|
||||||
|
Count mtCallStack_Address=1
|
||||||
|
mtCallStack_Address0="Address"
|
||||||
|
Count mtCallStack_Name=1
|
||||||
|
mtCallStack_Name0="Module"
|
||||||
|
Count mtCallStack_Unit=1
|
||||||
|
mtCallStack_Unit0="Unit"
|
||||||
|
Count mtCallStack_Class=1
|
||||||
|
mtCallStack_Class0="Class"
|
||||||
|
Count mtCallStack_Procedure=1
|
||||||
|
mtCallStack_Procedure0="Procedure/Method"
|
||||||
|
Count mtCallStack_Line=1
|
||||||
|
mtCallStack_Line0="Line"
|
||||||
|
Count mtCallStack_MainThread=1
|
||||||
|
mtCallStack_MainThread0="Main"
|
||||||
|
Count mtCallStack_ExceptionThread=1
|
||||||
|
mtCallStack_ExceptionThread0="Exception Thread"
|
||||||
|
Count mtCallStack_RunningThread=1
|
||||||
|
mtCallStack_RunningThread0="Running Thread"
|
||||||
|
Count mtCallStack_CallingThread=1
|
||||||
|
mtCallStack_CallingThread0="Calling Thread"
|
||||||
|
Count mtCallStack_ThreadID=1
|
||||||
|
mtCallStack_ThreadID0="ID"
|
||||||
|
Count mtCallStack_ThreadPriority=1
|
||||||
|
mtCallStack_ThreadPriority0="Priority"
|
||||||
|
Count mtCallStack_ThreadClass=1
|
||||||
|
mtCallStack_ThreadClass0="Class"
|
||||||
|
Count mtSendDialog_Caption=1
|
||||||
|
mtSendDialog_Caption0="Send."
|
||||||
|
Count mtSendDialog_Message=1
|
||||||
|
mtSendDialog_Message0="Message"
|
||||||
|
Count mtSendDialog_Resolving=1
|
||||||
|
mtSendDialog_Resolving0="Resolving DNS..."
|
||||||
|
Count mtSendDialog_Connecting=1
|
||||||
|
mtSendDialog_Connecting0="Connecting with server..."
|
||||||
|
Count mtSendDialog_Connected=1
|
||||||
|
mtSendDialog_Connected0="Connected with server."
|
||||||
|
Count mtSendDialog_Sending=1
|
||||||
|
mtSendDialog_Sending0="Sending message..."
|
||||||
|
Count mtReproduceDialog_Caption=1
|
||||||
|
mtReproduceDialog_Caption0="Request"
|
||||||
|
Count mtReproduceDialog_Request=1
|
||||||
|
mtReproduceDialog_Request0="Please describe the steps to reproduce the error:"
|
||||||
|
Count mtReproduceDialog_OKButtonCaption=1
|
||||||
|
mtReproduceDialog_OKButtonCaption0="%26OK"
|
||||||
|
Count mtModules_Handle=1
|
||||||
|
mtModules_Handle0="Handle"
|
||||||
|
Count mtModules_Name=1
|
||||||
|
mtModules_Name0="Name"
|
||||||
|
Count mtModules_Description=1
|
||||||
|
mtModules_Description0="Description"
|
||||||
|
Count mtModules_Version=1
|
||||||
|
mtModules_Version0="Version"
|
||||||
|
Count mtModules_Size=1
|
||||||
|
mtModules_Size0="Size"
|
||||||
|
Count mtModules_LastModified=1
|
||||||
|
mtModules_LastModified0="Modified"
|
||||||
|
Count mtModules_Path=1
|
||||||
|
mtModules_Path0="Path"
|
||||||
|
Count mtCPU_Registers=1
|
||||||
|
mtCPU_Registers0="Registers"
|
||||||
|
Count mtCPU_Stack=1
|
||||||
|
mtCPU_Stack0="Stack"
|
||||||
|
Count mtCPU_MemoryDump=1
|
||||||
|
mtCPU_MemoryDump0="Memory Dump"
|
||||||
|
Count mtSend_SuccessMsg=1
|
||||||
|
mtSend_SuccessMsg0="The message was sent successfully."
|
||||||
|
Count mtSend_FailureMsg=1
|
||||||
|
mtSend_FailureMsg0="Sorry, sending the message didn't work."
|
||||||
|
|
||||||
|
|
||||||
67
Source/ApplicationBase/Usuarios/Usuarios.dpk
Normal file
67
Source/ApplicationBase/Usuarios/Usuarios.dpk
Normal file
@ -0,0 +1,67 @@
|
|||||||
|
package Usuarios;
|
||||||
|
|
||||||
|
{$R *.res}
|
||||||
|
{$ALIGN 8}
|
||||||
|
{$ASSERTIONS ON}
|
||||||
|
{$BOOLEVAL OFF}
|
||||||
|
{$DEBUGINFO ON}
|
||||||
|
{$EXTENDEDSYNTAX ON}
|
||||||
|
{$IMPORTEDDATA ON}
|
||||||
|
{$IOCHECKS ON}
|
||||||
|
{$LOCALSYMBOLS ON}
|
||||||
|
{$LONGSTRINGS ON}
|
||||||
|
{$OPENSTRINGS ON}
|
||||||
|
{$OPTIMIZATION ON}
|
||||||
|
{$OVERFLOWCHECKS OFF}
|
||||||
|
{$RANGECHECKS OFF}
|
||||||
|
{$REFERENCEINFO ON}
|
||||||
|
{$SAFEDIVIDE OFF}
|
||||||
|
{$STACKFRAMES ON}
|
||||||
|
{$TYPEDADDRESS OFF}
|
||||||
|
{$VARSTRINGCHECKS ON}
|
||||||
|
{$WRITEABLECONST OFF}
|
||||||
|
{$MINENUMSIZE 1}
|
||||||
|
{$IMAGEBASE $400000}
|
||||||
|
{$DESCRIPTION 'Pedidos a proveedor'}
|
||||||
|
{$IMPLICITBUILD ON}
|
||||||
|
{$DEFINE DEBUG}
|
||||||
|
|
||||||
|
requires
|
||||||
|
vcl,
|
||||||
|
vcldb,
|
||||||
|
PngComponentsD10,
|
||||||
|
PNG_D10,
|
||||||
|
vclactnband,
|
||||||
|
vclx,
|
||||||
|
vcljpg,
|
||||||
|
BaseD10;
|
||||||
|
|
||||||
|
contains
|
||||||
|
uUsuariosController in 'Controller\uUsuariosController.pas',
|
||||||
|
uPerfilesUsuarioController in 'Controller\uPerfilesUsuarioController.pas',
|
||||||
|
uUCROConn in 'Data\uUCROConn.pas',
|
||||||
|
uDataModuleUsuarios in 'Data\uDataModuleUsuarios.pas',
|
||||||
|
uBizUsuarios in 'Model\uBizUsuarios.pas',
|
||||||
|
uIEditorUsuarios in 'Controller\View\uIEditorUsuarios.pas',
|
||||||
|
uIEditorLogin in 'Controller\View\uIEditorLogin.pas',
|
||||||
|
uIEditorPerfilesUsuario in 'Controller\View\uIEditorPerfilesUsuario.pas',
|
||||||
|
uIEditorPerfilUsuario in 'Controller\View\uIEditorPerfilUsuario.pas',
|
||||||
|
uIEditorUsuario in 'Controller\View\uIEditorUsuario.pas',
|
||||||
|
uIDataModuleUsuarios in 'Model\Data\uIDataModuleUsuarios.pas',
|
||||||
|
uViewUsuarios in 'Views\uViewUsuarios.pas',
|
||||||
|
uEditorCambiarPassword in 'Views\uEditorCambiarPassword.pas',
|
||||||
|
uEditorLogin in 'Views\uEditorLogin.pas',
|
||||||
|
uEditorPerfilesUsuario in 'Views\uEditorPerfilesUsuario.pas',
|
||||||
|
uEditorPerfilUsuario in 'Views\uEditorPerfilUsuario.pas',
|
||||||
|
uEditorUsuario in 'Views\uEditorUsuario.pas',
|
||||||
|
uEditorUsuarios in 'Views\uEditorUsuarios.pas',
|
||||||
|
uUsuario in 'Views\uUsuario.pas',
|
||||||
|
uUsuarios in 'Views\uUsuarios.pas',
|
||||||
|
uUsuariosViewRegister in 'Views\uUsuariosViewRegister.pas',
|
||||||
|
uViewPerfilesUsuario in 'Views\uViewPerfilesUsuario.pas',
|
||||||
|
uViewPerfilUsuario in 'Views\uViewPerfilUsuario.pas',
|
||||||
|
uViewUsuario in 'Views\uViewUsuario.pas',
|
||||||
|
schUsuariosClient_Intf in 'Model\schUsuariosClient_Intf.pas',
|
||||||
|
schUsuariosServer_Intf in 'Model\schUsuariosServer_Intf.pas';
|
||||||
|
|
||||||
|
end.
|
||||||
598
Source/ApplicationBase/Usuarios/Usuarios.dproj
Normal file
598
Source/ApplicationBase/Usuarios/Usuarios.dproj
Normal file
@ -0,0 +1,598 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
|
<PropertyGroup>
|
||||||
|
<ProjectGuid>{c2514fab-bd64-47eb-ac2d-4b0b5460f98f}</ProjectGuid>
|
||||||
|
<MainSource>Usuarios.dpk</MainSource>
|
||||||
|
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||||
|
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
||||||
|
<DCC_DCCCompiler>DCC32</DCC_DCCCompiler>
|
||||||
|
<DCC_DependencyCheckOutputName>..\..\Output\Debug\Cliente\Usuarios.bpl</DCC_DependencyCheckOutputName>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||||
|
<Version>7.0</Version>
|
||||||
|
<DCC_DebugInformation>False</DCC_DebugInformation>
|
||||||
|
<DCC_LocalDebugSymbols>False</DCC_LocalDebugSymbols>
|
||||||
|
<DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo>
|
||||||
|
<DCC_MapFile>3</DCC_MapFile>
|
||||||
|
<DCC_DcuOutput>.\</DCC_DcuOutput>
|
||||||
|
<DCC_ObjOutput>.\</DCC_ObjOutput>
|
||||||
|
<DCC_HppOutput>.\</DCC_HppOutput>
|
||||||
|
<DCC_BplOutput>..\..\Output\Debug\Cliente</DCC_BplOutput>
|
||||||
|
<DCC_DcpOutput>..\Lib</DCC_DcpOutput>
|
||||||
|
<DCC_UnitSearchPath>..\Lib;..\Base</DCC_UnitSearchPath>
|
||||||
|
<DCC_ResourcePath>..\Lib;..\Base</DCC_ResourcePath>
|
||||||
|
<DCC_ObjPath>..\Lib;..\Base</DCC_ObjPath>
|
||||||
|
<DCC_IncludePath>..\Lib;..\Base</DCC_IncludePath>
|
||||||
|
<DCC_Define>RELEASE</DCC_Define>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||||
|
<Version>7.0</Version>
|
||||||
|
<DCC_MapFile>3</DCC_MapFile>
|
||||||
|
<DCC_DcuOutput>.\</DCC_DcuOutput>
|
||||||
|
<DCC_ObjOutput>.\</DCC_ObjOutput>
|
||||||
|
<DCC_HppOutput>.\</DCC_HppOutput>
|
||||||
|
<DCC_BplOutput>..\..\Output\Debug\Cliente</DCC_BplOutput>
|
||||||
|
<DCC_DcpOutput>..\Lib</DCC_DcpOutput>
|
||||||
|
<DCC_UnitSearchPath>..\Lib;..\Base</DCC_UnitSearchPath>
|
||||||
|
<DCC_ResourcePath>..\Lib;..\Base</DCC_ResourcePath>
|
||||||
|
<DCC_ObjPath>..\Lib;..\Base</DCC_ObjPath>
|
||||||
|
<DCC_IncludePath>..\Lib;..\Base</DCC_IncludePath>
|
||||||
|
<DCC_Define>DEBUG</DCC_Define>
|
||||||
|
<DCC_GenerateStackFrames>True</DCC_GenerateStackFrames>
|
||||||
|
</PropertyGroup>
|
||||||
|
<ProjectExtensions>
|
||||||
|
<Borland.Personality>Delphi.Personality</Borland.Personality>
|
||||||
|
<Borland.ProjectType>Package</Borland.ProjectType>
|
||||||
|
<BorlandProject>
|
||||||
|
<BorlandProject><Delphi.Personality><Parameters><Parameters Name="UseLauncher">False</Parameters><Parameters Name="LoadAllSymbols">True</Parameters><Parameters Name="LoadUnspecifiedSymbols">False</Parameters></Parameters><Package_Options><Package_Options Name="PackageDescription">Pedidos a proveedor</Package_Options><Package_Options Name="ImplicitBuild">True</Package_Options><Package_Options Name="DesigntimeOnly">False</Package_Options><Package_Options Name="RuntimeOnly">False</Package_Options></Package_Options><Language><Language Name="RootDir">C:\Archivos de programa\Borland\Delphi7\Bin\</Language></Language><VersionInfo><VersionInfo Name="IncludeVerInfo">True</VersionInfo><VersionInfo Name="AutoIncBuild">False</VersionInfo><VersionInfo Name="MajorVer">1</VersionInfo><VersionInfo Name="MinorVer">0</VersionInfo><VersionInfo Name="Release">3</VersionInfo><VersionInfo Name="Build">0</VersionInfo><VersionInfo Name="Debug">False</VersionInfo><VersionInfo Name="PreRelease">False</VersionInfo><VersionInfo Name="Special">False</VersionInfo><VersionInfo Name="Private">False</VersionInfo><VersionInfo Name="DLL">False</VersionInfo><VersionInfo Name="Locale">3082</VersionInfo><VersionInfo Name="CodePage">1252</VersionInfo></VersionInfo><VersionInfoKeys><VersionInfoKeys Name="CompanyName"></VersionInfoKeys><VersionInfoKeys Name="FileDescription"></VersionInfoKeys><VersionInfoKeys Name="FileVersion">1.0.3.0</VersionInfoKeys><VersionInfoKeys Name="InternalName"></VersionInfoKeys><VersionInfoKeys Name="LegalCopyright"></VersionInfoKeys><VersionInfoKeys Name="LegalTrademarks"></VersionInfoKeys><VersionInfoKeys Name="OriginalFilename"></VersionInfoKeys><VersionInfoKeys Name="ProductName"></VersionInfoKeys><VersionInfoKeys Name="ProductVersion">1.0.0.0</VersionInfoKeys><VersionInfoKeys Name="Comments"></VersionInfoKeys></VersionInfoKeys><Source><Source Name="MainSource">Usuarios.dpk</Source></Source><Excluded_Packages>
|
||||||
|
<Excluded_Packages Name="$(BDS)\bin\dclwebsnap100.bpl">CodeGear WebSnap Components</Excluded_Packages>
|
||||||
|
<Excluded_Packages Name="$(BDS)\bin\dclsoap100.bpl">CodeGear SOAP Components</Excluded_Packages>
|
||||||
|
<Excluded_Packages Name="$(BDS)\bin\dclofficexp100.bpl">Microsoft Office XP Sample Automation Server Wrapper Components</Excluded_Packages>
|
||||||
|
<Excluded_Packages Name="$(BDS)\bin\dcloffice2k100.bpl">Microsoft Office 2000 Sample Automation Server Wrapper Components</Excluded_Packages>
|
||||||
|
<Excluded_Packages Name="$(BDS)\bin\bcboffice2k100.bpl">CodeGear C++Builder Office 2000 Servers Package</Excluded_Packages>
|
||||||
|
<Excluded_Packages Name="$(BDS)\bin\bcbofficexp100.bpl">CodeGear C++Builder Office XP Servers Package</Excluded_Packages>
|
||||||
|
</Excluded_Packages></Delphi.Personality></BorlandProject></BorlandProject>
|
||||||
|
</ProjectExtensions>
|
||||||
|
<Import Project="$(MSBuildBinPath)\Borland.Delphi.Targets" />
|
||||||
|
<ItemGroup>
|
||||||
|
<DelphiCompile Include="Usuarios.dpk">
|
||||||
|
<MainSource>MainSource</MainSource>
|
||||||
|
</DelphiCompile>
|
||||||
|
<DCCReference Include="Controller\uPerfilesUsuarioController.pas" />
|
||||||
|
<DCCReference Include="Controller\uUsuariosController.pas" />
|
||||||
|
<DCCReference Include="Controller\View\uIEditorLogin.pas" />
|
||||||
|
<DCCReference Include="Controller\View\uIEditorPerfilesUsuario.pas" />
|
||||||
|
<DCCReference Include="Controller\View\uIEditorPerfilUsuario.pas" />
|
||||||
|
<DCCReference Include="Controller\View\uIEditorUsuario.pas" />
|
||||||
|
<DCCReference Include="Controller\View\uIEditorUsuarios.pas" />
|
||||||
|
<DCCReference Include="Data\uDataModuleUsuarios.pas" />
|
||||||
|
<DCCReference Include="Data\uUCROConn.pas" />
|
||||||
|
<DCCReference Include="Model\BaseD10.dcp" />
|
||||||
|
<DCCReference Include="Model\Data\uIDataModuleUsuarios.pas" />
|
||||||
|
<DCCReference Include="Model\PngComponentsD10.dcp" />
|
||||||
|
<DCCReference Include="Model\PNG_D10.dcp" />
|
||||||
|
<DCCReference Include="Model\schUsuariosClient_Intf.pas" />
|
||||||
|
<DCCReference Include="Model\schUsuariosServer_Intf.pas" />
|
||||||
|
<DCCReference Include="Model\uBizUsuarios.pas" />
|
||||||
|
<DCCReference Include="Model\vcl.dcp" />
|
||||||
|
<DCCReference Include="Model\vclactnband.dcp" />
|
||||||
|
<DCCReference Include="Model\vcldb.dcp" />
|
||||||
|
<DCCReference Include="Model\vcljpg.dcp" />
|
||||||
|
<DCCReference Include="Model\vclx.dcp" />
|
||||||
|
<DCCReference Include="Views\uEditorCambiarPassword.pas" />
|
||||||
|
<DCCReference Include="Views\uEditorLogin.pas" />
|
||||||
|
<DCCReference Include="Views\uEditorPerfilesUsuario.pas" />
|
||||||
|
<DCCReference Include="Views\uEditorPerfilUsuario.pas" />
|
||||||
|
<DCCReference Include="Views\uEditorUsuario.pas" />
|
||||||
|
<DCCReference Include="Views\uEditorUsuarios.pas" />
|
||||||
|
<DCCReference Include="Views\uUsuario.pas" />
|
||||||
|
<DCCReference Include="Views\uUsuarios.pas" />
|
||||||
|
<DCCReference Include="Views\uUsuariosViewRegister.pas" />
|
||||||
|
<DCCReference Include="Views\uViewPerfilesUsuario.pas" />
|
||||||
|
<DCCReference Include="Views\uViewPerfilUsuario.pas" />
|
||||||
|
<DCCReference Include="Views\uViewUsuario.pas" />
|
||||||
|
<DCCReference Include="Views\uViewUsuarios.pas" />
|
||||||
|
</ItemGroup>
|
||||||
|
</Project>
|
||||||
|
<!-- EurekaLog First Line
|
||||||
|
[Exception Log]
|
||||||
|
EurekaLog Version=6006
|
||||||
|
Activate=1
|
||||||
|
Activate Handle=1
|
||||||
|
Save Log File=1
|
||||||
|
Foreground Tab=0
|
||||||
|
Freeze Activate=0
|
||||||
|
Freeze Timeout=60
|
||||||
|
Freeze Message=The application seems to be frozen.
|
||||||
|
SMTP From=eurekalog@email.com
|
||||||
|
SMTP Host=
|
||||||
|
SMTP Port=25
|
||||||
|
SMTP UserID=
|
||||||
|
SMTP Password=
|
||||||
|
Append to Log=0
|
||||||
|
Show TerminateBtn=1
|
||||||
|
TerminateBtn Operation=1
|
||||||
|
Errors Number=32
|
||||||
|
Errors Terminate=3
|
||||||
|
Email Address=
|
||||||
|
Email Object=
|
||||||
|
Email Send Options=0
|
||||||
|
Output Path=
|
||||||
|
Encrypt Password=
|
||||||
|
AutoCloseDialogSecs=0
|
||||||
|
WebSendMode=0
|
||||||
|
SupportULR=
|
||||||
|
HTMLLayout Count=15
|
||||||
|
HTMLLine0="%3Chtml%3E"
|
||||||
|
HTMLLine1=" %3Chead%3E"
|
||||||
|
HTMLLine2=" %3C/head%3E"
|
||||||
|
HTMLLine3=" %3Cbody TopMargin=10 LeftMargin=10%3E"
|
||||||
|
HTMLLine4=" %3Ctable width="100%%" border="0"%3E"
|
||||||
|
HTMLLine5=" %3Ctr%3E"
|
||||||
|
HTMLLine6=" %3Ctd nowrap%3E"
|
||||||
|
HTMLLine7=" %3Cfont face="Lucida Console, Courier" size="2"%3E"
|
||||||
|
HTMLLine8=" %3C%%HTML_TAG%%%3E"
|
||||||
|
HTMLLine9=" %3C/font%3E"
|
||||||
|
HTMLLine10=" %3C/td%3E"
|
||||||
|
HTMLLine11=" %3C/tr%3E"
|
||||||
|
HTMLLine12=" %3C/table%3E"
|
||||||
|
HTMLLine13=" %3C/body%3E"
|
||||||
|
HTMLLine14="%3C/html%3E"
|
||||||
|
AutoCrashOperation=1
|
||||||
|
AutoCrashNumber=10
|
||||||
|
AutoCrashMinutes=1
|
||||||
|
WebURL=
|
||||||
|
WebUserID=
|
||||||
|
WebPassword=
|
||||||
|
WebPort=0
|
||||||
|
AttachedFiles=
|
||||||
|
Count=0
|
||||||
|
EMail Message Line Count=0
|
||||||
|
loNoDuplicateErrors=0
|
||||||
|
loAppendReproduceText=0
|
||||||
|
loDeleteLogAtVersionChange=0
|
||||||
|
loAddComputerNameInLogFileName=0
|
||||||
|
loSaveModulesSection=1
|
||||||
|
loSaveCPUSection=1
|
||||||
|
soAppStartDate=1
|
||||||
|
soAppName=1
|
||||||
|
soAppVersionNumber=1
|
||||||
|
soAppParameters=1
|
||||||
|
soAppCompilationDate=1
|
||||||
|
soExcDate=1
|
||||||
|
soExcAddress=1
|
||||||
|
soExcModule=1
|
||||||
|
soExcType=1
|
||||||
|
soExcMessage=1
|
||||||
|
soActCtlsFormClass=1
|
||||||
|
soActCtlsFormText=1
|
||||||
|
soActCtlsControlClass=1
|
||||||
|
soActCtlsControlText=1
|
||||||
|
soCmpName=1
|
||||||
|
soCmpUser=1
|
||||||
|
soCmpTotalMemory=1
|
||||||
|
soCmpFreeMemory=1
|
||||||
|
soCmpTotalDisk=1
|
||||||
|
soCmpFreeDisk=1
|
||||||
|
soCmpSysUpTime=1
|
||||||
|
soCmpProcessor=1
|
||||||
|
soCmpDisplayMode=1
|
||||||
|
soOSType=1
|
||||||
|
soOSBuildN=1
|
||||||
|
soOSUpdate=1
|
||||||
|
soOSLanguage=1
|
||||||
|
soNetIP=1
|
||||||
|
soNetSubmask=1
|
||||||
|
soNetGateway=1
|
||||||
|
soNetDNS1=1
|
||||||
|
soNetDNS2=1
|
||||||
|
soNetDHCP=1
|
||||||
|
sndShowSendDialog=1
|
||||||
|
sndShowSuccessFailureMsg=0
|
||||||
|
sndSendEntireLog=0
|
||||||
|
sndSendXMLLogCopy=0
|
||||||
|
sndSendScreenshot=1
|
||||||
|
sndUseOnlyActiveWindow=0
|
||||||
|
sndSendLastHTMLPage=1
|
||||||
|
sndSendInSeparatedThread=0
|
||||||
|
sndAddDateInFileName=0
|
||||||
|
sndCompressAllFiles=0
|
||||||
|
edoShowExceptionDialog=1
|
||||||
|
edoSendEmailChecked=1
|
||||||
|
edoAttachScreenshotChecked=1
|
||||||
|
edoShowCopyToClipOption=1
|
||||||
|
edoShowDetailsButton=1
|
||||||
|
edoShowInDetailedMode=0
|
||||||
|
edoShowInTopMostMode=0
|
||||||
|
edoUseEurekaLogLookAndFeel=0
|
||||||
|
csoShowDLLs=1
|
||||||
|
csoShowBPLs=1
|
||||||
|
csoShowBorlandThreads=1
|
||||||
|
csoShowWindowsThreads=1
|
||||||
|
csoShowProcedureOffset=0
|
||||||
|
boActivateCrashDetection=0
|
||||||
|
boPauseBorlandThreads=0
|
||||||
|
boDoNotPauseMainThread=0
|
||||||
|
boPauseWindowsThreads=0
|
||||||
|
boUseMainModuleOptions=1
|
||||||
|
boCopyLogInCaseOfError=1
|
||||||
|
boSaveCompressedCopyInCaseOfError=0
|
||||||
|
Count mtInformationMsgCaption=1
|
||||||
|
mtInformationMsgCaption0="Information."
|
||||||
|
Count mtQuestionMsgCaption=1
|
||||||
|
mtQuestionMsgCaption0="Question."
|
||||||
|
Count mtDialog_Caption=1
|
||||||
|
mtDialog_Caption0="Error occurred"
|
||||||
|
Count mtDialog_ErrorMsgCaption=2
|
||||||
|
mtDialog_ErrorMsgCaption0="An error has occurred during program execution."
|
||||||
|
mtDialog_ErrorMsgCaption1="Please read the following information for further details."
|
||||||
|
Count mtDialog_GeneralCaption=1
|
||||||
|
mtDialog_GeneralCaption0="General"
|
||||||
|
Count mtDialog_GeneralHeader=1
|
||||||
|
mtDialog_GeneralHeader0="General Information"
|
||||||
|
Count mtDialog_CallStackCaption=1
|
||||||
|
mtDialog_CallStackCaption0="Call Stack"
|
||||||
|
Count mtDialog_CallStackHeader=1
|
||||||
|
mtDialog_CallStackHeader0="Call Stack Information"
|
||||||
|
Count mtDialog_ModulesCaption=1
|
||||||
|
mtDialog_ModulesCaption0="Modules"
|
||||||
|
Count mtDialog_ModulesHeader=1
|
||||||
|
mtDialog_ModulesHeader0="Modules Information"
|
||||||
|
Count mtDialog_CPUCaption=1
|
||||||
|
mtDialog_CPUCaption0="CPU"
|
||||||
|
Count mtDialog_CPUHeader=1
|
||||||
|
mtDialog_CPUHeader0="CPU Information"
|
||||||
|
Count mtDialog_CustomDataCaption=1
|
||||||
|
mtDialog_CustomDataCaption0="Other"
|
||||||
|
Count mtDialog_CustomDataHeader=1
|
||||||
|
mtDialog_CustomDataHeader0="Other Information"
|
||||||
|
Count mtDialog_OKButtonCaption=1
|
||||||
|
mtDialog_OKButtonCaption0="%26OK"
|
||||||
|
Count mtDialog_TerminateButtonCaption=1
|
||||||
|
mtDialog_TerminateButtonCaption0="%26Terminate"
|
||||||
|
Count mtDialog_RestartButtonCaption=1
|
||||||
|
mtDialog_RestartButtonCaption0="%26Restart"
|
||||||
|
Count mtDialog_DetailsButtonCaption=1
|
||||||
|
mtDialog_DetailsButtonCaption0="%26Details"
|
||||||
|
Count mtDialog_SendMessage=1
|
||||||
|
mtDialog_SendMessage0="%26Send this error via Internet"
|
||||||
|
Count mtDialog_ScreenshotMessage=1
|
||||||
|
mtDialog_ScreenshotMessage0="%26Attach a Screenshot image"
|
||||||
|
Count mtDialog_CopyMessage=1
|
||||||
|
mtDialog_CopyMessage0="%26Copy to Clipboard"
|
||||||
|
Count mtDialog_SupportMessage=1
|
||||||
|
mtDialog_SupportMessage0="Go to the Support Page"
|
||||||
|
Count mtLog_AppHeader=1
|
||||||
|
mtLog_AppHeader0="Application"
|
||||||
|
Count mtLog_AppStartDate=1
|
||||||
|
mtLog_AppStartDate0="Start Date"
|
||||||
|
Count mtLog_AppName=1
|
||||||
|
mtLog_AppName0="Name/Description"
|
||||||
|
Count mtLog_AppVersionNumber=1
|
||||||
|
mtLog_AppVersionNumber0="Version Number"
|
||||||
|
Count mtLog_AppParameters=1
|
||||||
|
mtLog_AppParameters0="Parameters"
|
||||||
|
Count mtLog_AppCompilationDate=1
|
||||||
|
mtLog_AppCompilationDate0="Compilation Date"
|
||||||
|
Count mtLog_ExcHeader=1
|
||||||
|
mtLog_ExcHeader0="Exception"
|
||||||
|
Count mtLog_ExcDate=1
|
||||||
|
mtLog_ExcDate0="Date"
|
||||||
|
Count mtLog_ExcAddress=1
|
||||||
|
mtLog_ExcAddress0="Address"
|
||||||
|
Count mtLog_ExcModule=1
|
||||||
|
mtLog_ExcModule0="Module"
|
||||||
|
Count mtLog_ExcType=1
|
||||||
|
mtLog_ExcType0="Type"
|
||||||
|
Count mtLog_ExcMessage=1
|
||||||
|
mtLog_ExcMessage0="Message"
|
||||||
|
Count mtLog_ActCtrlsHeader=1
|
||||||
|
mtLog_ActCtrlsHeader0="Active Controls"
|
||||||
|
Count mtLog_ActCtrlsFormClass=1
|
||||||
|
mtLog_ActCtrlsFormClass0="Form Class"
|
||||||
|
Count mtLog_ActCtrlsFormText=1
|
||||||
|
mtLog_ActCtrlsFormText0="Form Text"
|
||||||
|
Count mtLog_ActCtrlsControlClass=1
|
||||||
|
mtLog_ActCtrlsControlClass0="Control Class"
|
||||||
|
Count mtLog_ActCtrlsControlText=1
|
||||||
|
mtLog_ActCtrlsControlText0="Control Text"
|
||||||
|
Count mtLog_CmpHeader=1
|
||||||
|
mtLog_CmpHeader0="Computer"
|
||||||
|
Count mtLog_CmpName=1
|
||||||
|
mtLog_CmpName0="Name"
|
||||||
|
Count mtLog_CmpUser=1
|
||||||
|
mtLog_CmpUser0="User"
|
||||||
|
Count mtLog_CmpTotalMemory=1
|
||||||
|
mtLog_CmpTotalMemory0="Total Memory"
|
||||||
|
Count mtLog_CmpFreeMemory=1
|
||||||
|
mtLog_CmpFreeMemory0="Free Memory"
|
||||||
|
Count mtLog_CmpTotalDisk=1
|
||||||
|
mtLog_CmpTotalDisk0="Total Disk"
|
||||||
|
Count mtLog_CmpFreeDisk=1
|
||||||
|
mtLog_CmpFreeDisk0="Free Disk"
|
||||||
|
Count mtLog_CmpSystemUpTime=1
|
||||||
|
mtLog_CmpSystemUpTime0="System Up Time"
|
||||||
|
Count mtLog_CmpProcessor=1
|
||||||
|
mtLog_CmpProcessor0="Processor"
|
||||||
|
Count mtLog_CmpDisplayMode=1
|
||||||
|
mtLog_CmpDisplayMode0="Display Mode"
|
||||||
|
Count mtLog_OSHeader=1
|
||||||
|
mtLog_OSHeader0="Operating System"
|
||||||
|
Count mtLog_OSType=1
|
||||||
|
mtLog_OSType0="Type"
|
||||||
|
Count mtLog_OSBuildN=1
|
||||||
|
mtLog_OSBuildN0="Build #"
|
||||||
|
Count mtLog_OSUpdate=1
|
||||||
|
mtLog_OSUpdate0="Update"
|
||||||
|
Count mtLog_OSLanguage=1
|
||||||
|
mtLog_OSLanguage0="Language"
|
||||||
|
Count mtLog_NetHeader=1
|
||||||
|
mtLog_NetHeader0="Network"
|
||||||
|
Count mtLog_NetIP=1
|
||||||
|
mtLog_NetIP0="IP Address"
|
||||||
|
Count mtLog_NetSubmask=1
|
||||||
|
mtLog_NetSubmask0="Submask"
|
||||||
|
Count mtLog_NetGateway=1
|
||||||
|
mtLog_NetGateway0="Gateway"
|
||||||
|
Count mtLog_NetDNS1=1
|
||||||
|
mtLog_NetDNS10="DNS 1"
|
||||||
|
Count mtLog_NetDNS2=1
|
||||||
|
mtLog_NetDNS20="DNS 2"
|
||||||
|
Count mtLog_NetDHCP=1
|
||||||
|
mtLog_NetDHCP0="DHCP"
|
||||||
|
Count mtLog_CustInfoHeader=1
|
||||||
|
mtLog_CustInfoHeader0="Custom Information"
|
||||||
|
Count mtCallStack_Address=1
|
||||||
|
mtCallStack_Address0="Address"
|
||||||
|
Count mtCallStack_Name=1
|
||||||
|
mtCallStack_Name0="Module"
|
||||||
|
Count mtCallStack_Unit=1
|
||||||
|
mtCallStack_Unit0="Unit"
|
||||||
|
Count mtCallStack_Class=1
|
||||||
|
mtCallStack_Class0="Class"
|
||||||
|
Count mtCallStack_Procedure=1
|
||||||
|
mtCallStack_Procedure0="Procedure/Method"
|
||||||
|
Count mtCallStack_Line=1
|
||||||
|
mtCallStack_Line0="Line"
|
||||||
|
Count mtCallStack_MainThread=1
|
||||||
|
mtCallStack_MainThread0="Main"
|
||||||
|
Count mtCallStack_ExceptionThread=1
|
||||||
|
mtCallStack_ExceptionThread0="Exception Thread"
|
||||||
|
Count mtCallStack_RunningThread=1
|
||||||
|
mtCallStack_RunningThread0="Running Thread"
|
||||||
|
Count mtCallStack_CallingThread=1
|
||||||
|
mtCallStack_CallingThread0="Calling Thread"
|
||||||
|
Count mtCallStack_ThreadID=1
|
||||||
|
mtCallStack_ThreadID0="ID"
|
||||||
|
Count mtCallStack_ThreadPriority=1
|
||||||
|
mtCallStack_ThreadPriority0="Priority"
|
||||||
|
Count mtCallStack_ThreadClass=1
|
||||||
|
mtCallStack_ThreadClass0="Class"
|
||||||
|
Count mtSendDialog_Caption=1
|
||||||
|
mtSendDialog_Caption0="Send."
|
||||||
|
Count mtSendDialog_Message=1
|
||||||
|
mtSendDialog_Message0="Message"
|
||||||
|
Count mtSendDialog_Resolving=1
|
||||||
|
mtSendDialog_Resolving0="Resolving DNS..."
|
||||||
|
Count mtSendDialog_Connecting=1
|
||||||
|
mtSendDialog_Connecting0="Connecting with server..."
|
||||||
|
Count mtSendDialog_Connected=1
|
||||||
|
mtSendDialog_Connected0="Connected with server."
|
||||||
|
Count mtSendDialog_Sending=1
|
||||||
|
mtSendDialog_Sending0="Sending message..."
|
||||||
|
Count mtReproduceDialog_Caption=1
|
||||||
|
mtReproduceDialog_Caption0="Request"
|
||||||
|
Count mtReproduceDialog_Request=1
|
||||||
|
mtReproduceDialog_Request0="Please describe the steps to reproduce the error:"
|
||||||
|
Count mtReproduceDialog_OKButtonCaption=1
|
||||||
|
mtReproduceDialog_OKButtonCaption0="%26OK"
|
||||||
|
Count mtModules_Handle=1
|
||||||
|
mtModules_Handle0="Handle"
|
||||||
|
Count mtModules_Name=1
|
||||||
|
mtModules_Name0="Name"
|
||||||
|
Count mtModules_Description=1
|
||||||
|
mtModules_Description0="Description"
|
||||||
|
Count mtModules_Version=1
|
||||||
|
mtModules_Version0="Version"
|
||||||
|
Count mtModules_Size=1
|
||||||
|
mtModules_Size0="Size"
|
||||||
|
Count mtModules_LastModified=1
|
||||||
|
mtModules_LastModified0="Modified"
|
||||||
|
Count mtModules_Path=1
|
||||||
|
mtModules_Path0="Path"
|
||||||
|
Count mtCPU_Registers=1
|
||||||
|
mtCPU_Registers0="Registers"
|
||||||
|
Count mtCPU_Stack=1
|
||||||
|
mtCPU_Stack0="Stack"
|
||||||
|
Count mtCPU_MemoryDump=1
|
||||||
|
mtCPU_MemoryDump0="Memory Dump"
|
||||||
|
Count mtSend_SuccessMsg=1
|
||||||
|
mtSend_SuccessMsg0="The message was sent successfully."
|
||||||
|
Count mtSend_FailureMsg=1
|
||||||
|
mtSend_FailureMsg0="Sorry, sending the message didn't work."
|
||||||
|
ProxyURL=
|
||||||
|
ProxyUser=
|
||||||
|
ProxyPassword=
|
||||||
|
ProxyPort=8080
|
||||||
|
TrakerUser=
|
||||||
|
TrakerPassword=
|
||||||
|
TrakerAssignTo=
|
||||||
|
TrakerProject=
|
||||||
|
TrakerCategory=
|
||||||
|
TrakerTrialID=
|
||||||
|
ZipPassword=
|
||||||
|
PreBuildEvent=
|
||||||
|
PostSuccessfulBuildEvent=
|
||||||
|
PostFailureBuildEvent=
|
||||||
|
ExceptionDialogType=2
|
||||||
|
loSaveModulesAndProcessesSections=1
|
||||||
|
loSaveAssemblerAndCPUSections=1
|
||||||
|
soAppUpTime=1
|
||||||
|
soExcModuleName=1
|
||||||
|
soExcModuleVersion=1
|
||||||
|
soExcID=1
|
||||||
|
soExcCount=1
|
||||||
|
soExcStatus=1
|
||||||
|
soExcNote=1
|
||||||
|
soUserID=1
|
||||||
|
soUserName=1
|
||||||
|
soUserEmail=1
|
||||||
|
soUserPrivileges=1
|
||||||
|
soUserCompany=1
|
||||||
|
soCmpDisplayDPI=1
|
||||||
|
soCmpVideoCard=1
|
||||||
|
soCmpPrinter=1
|
||||||
|
soOSCharset=1
|
||||||
|
soCustomData=1
|
||||||
|
sndAddComputerNameInFileName=0
|
||||||
|
edoSendErrorReportChecked=1
|
||||||
|
edoShowSendErrorReportOption=1
|
||||||
|
edoShowAttachScreenshotOption=1
|
||||||
|
edoShowCustomButton=0
|
||||||
|
csoDoNotStoreProcNames=0
|
||||||
|
boHandleSafeCallExceptions=1
|
||||||
|
boCallRTLExceptionEvent=0
|
||||||
|
boCatchHandledExceptions=0
|
||||||
|
loCatchLeaks=1
|
||||||
|
loGroupsSonLeaks=1
|
||||||
|
loHideBorlandLeaks=1
|
||||||
|
loFreeAllLeaks=1
|
||||||
|
loCatchLeaksExceptions=1
|
||||||
|
cfoReduceFileSize=1
|
||||||
|
cfoCheckFileCorruption=0
|
||||||
|
Count mtErrorMsgCaption=1
|
||||||
|
mtErrorMsgCaption0="Error."
|
||||||
|
Count mtDialog_ProcessesCaption=1
|
||||||
|
mtDialog_ProcessesCaption0="Processes"
|
||||||
|
Count mtDialog_ProcessesHeader=1
|
||||||
|
mtDialog_ProcessesHeader0="Processes Information"
|
||||||
|
Count mtDialog_AsmCaption=1
|
||||||
|
mtDialog_AsmCaption0="Assembler"
|
||||||
|
Count mtDialog_AsmHeader=1
|
||||||
|
mtDialog_AsmHeader0="Assembler Information"
|
||||||
|
Count mtDialog_CustomButtonCaption=1
|
||||||
|
mtDialog_CustomButtonCaption0="%26Help"
|
||||||
|
Count mtMSDialog_ErrorMsgCaption=1
|
||||||
|
mtMSDialog_ErrorMsgCaption0="The application has encountered a problem. We are sorry for the inconvenience."
|
||||||
|
Count mtMSDialog_RestartCaption=1
|
||||||
|
mtMSDialog_RestartCaption0="Restart application."
|
||||||
|
Count mtMSDialog_TerminateCaption=1
|
||||||
|
mtMSDialog_TerminateCaption0="Terminate application."
|
||||||
|
Count mtMSDialog_PleaseCaption=1
|
||||||
|
mtMSDialog_PleaseCaption0="Please tell us about this problem."
|
||||||
|
Count mtMSDialog_DescriptionCaption=1
|
||||||
|
mtMSDialog_DescriptionCaption0="We have created an error report that you can send to us. We will treat this report as confidential and anonymous."
|
||||||
|
Count mtMSDialog_SeeDetailsCaption=1
|
||||||
|
mtMSDialog_SeeDetailsCaption0="To see what data the error report contains,"
|
||||||
|
Count mtMSDialog_SeeClickCaption=1
|
||||||
|
mtMSDialog_SeeClickCaption0="click here."
|
||||||
|
Count mtMSDialog_HowToReproduceCaption=1
|
||||||
|
mtMSDialog_HowToReproduceCaption0="What were you doing when the problem happended (optional)?"
|
||||||
|
Count mtMSDialog_EmailCaption=1
|
||||||
|
mtMSDialog_EmailCaption0="Email address (optional):"
|
||||||
|
Count mtMSDialog_SendButtonCaption=1
|
||||||
|
mtMSDialog_SendButtonCaption0="%26Send Error Report"
|
||||||
|
Count mtMSDialog_NoSendButtonCaption=1
|
||||||
|
mtMSDialog_NoSendButtonCaption0="%26Don't Send"
|
||||||
|
Count mtLog_AppUpTime=1
|
||||||
|
mtLog_AppUpTime0="Up Time"
|
||||||
|
Count mtLog_ExcModuleName=1
|
||||||
|
mtLog_ExcModuleName0="Module Name"
|
||||||
|
Count mtLog_ExcModuleVersion=1
|
||||||
|
mtLog_ExcModuleVersion0="Module Version"
|
||||||
|
Count mtLog_ExcID=1
|
||||||
|
mtLog_ExcID0="ID"
|
||||||
|
Count mtLog_ExcCount=1
|
||||||
|
mtLog_ExcCount0="Count"
|
||||||
|
Count mtLog_ExcStatus=1
|
||||||
|
mtLog_ExcStatus0="Status"
|
||||||
|
Count mtLog_ExcNote=1
|
||||||
|
mtLog_ExcNote0="Note"
|
||||||
|
Count mtLog_UserHeader=1
|
||||||
|
mtLog_UserHeader0="User"
|
||||||
|
Count mtLog_UserID=1
|
||||||
|
mtLog_UserID0="ID"
|
||||||
|
Count mtLog_UserName=1
|
||||||
|
mtLog_UserName0="Name"
|
||||||
|
Count mtLog_UserEmail=1
|
||||||
|
mtLog_UserEmail0="Email"
|
||||||
|
Count mtLog_UserCompany=1
|
||||||
|
mtLog_UserCompany0="Company"
|
||||||
|
Count mtLog_UserPrivileges=1
|
||||||
|
mtLog_UserPrivileges0="Privileges"
|
||||||
|
Count mtLog_CmpDisplayDPI=1
|
||||||
|
mtLog_CmpDisplayDPI0="Display DPI"
|
||||||
|
Count mtLog_CmpVideoCard=1
|
||||||
|
mtLog_CmpVideoCard0="Video Card"
|
||||||
|
Count mtLog_CmpPrinter=1
|
||||||
|
mtLog_CmpPrinter0="Printer"
|
||||||
|
Count mtLog_OSCharset=1
|
||||||
|
mtLog_OSCharset0="Charset"
|
||||||
|
Count mtCallStack_LeakCaption=1
|
||||||
|
mtCallStack_LeakCaption0="Memory Leak"
|
||||||
|
Count mtCallStack_LeakData=1
|
||||||
|
mtCallStack_LeakData0="Data"
|
||||||
|
Count mtCallStack_LeakType=1
|
||||||
|
mtCallStack_LeakType0="Type"
|
||||||
|
Count mtCallStack_LeakSize=1
|
||||||
|
mtCallStack_LeakSize0="Total size"
|
||||||
|
Count mtCallStack_LeakCount=1
|
||||||
|
mtCallStack_LeakCount0="Count"
|
||||||
|
Count mtSendDialog_Login=1
|
||||||
|
mtSendDialog_Login0="Login..."
|
||||||
|
Count mtSendDialog_Sent=1
|
||||||
|
mtSendDialog_Sent0="Message sent."
|
||||||
|
Count mtSendDialog_SelectProject=1
|
||||||
|
mtSendDialog_SelectProject0="Select project..."
|
||||||
|
Count mtSendDialog_Searching=1
|
||||||
|
mtSendDialog_Searching0="Searching..."
|
||||||
|
Count mtSendDialog_Modifying=1
|
||||||
|
mtSendDialog_Modifying0="Modifying..."
|
||||||
|
Count mtSendDialog_Disconnecting=1
|
||||||
|
mtSendDialog_Disconnecting0="Disconnecting..."
|
||||||
|
Count mtSendDialog_Disconnected=1
|
||||||
|
mtSendDialog_Disconnected0="Disconnected."
|
||||||
|
Count mtProcesses_ID=1
|
||||||
|
mtProcesses_ID0="ID"
|
||||||
|
Count mtProcesses_Name=1
|
||||||
|
mtProcesses_Name0="Name"
|
||||||
|
Count mtProcesses_Description=1
|
||||||
|
mtProcesses_Description0="Description"
|
||||||
|
Count mtProcesses_Version=1
|
||||||
|
mtProcesses_Version0="Version"
|
||||||
|
Count mtProcesses_Memory=1
|
||||||
|
mtProcesses_Memory0="Memory"
|
||||||
|
Count mtProcesses_Priority=1
|
||||||
|
mtProcesses_Priority0="Priority"
|
||||||
|
Count mtProcesses_Threads=1
|
||||||
|
mtProcesses_Threads0="Threads"
|
||||||
|
Count mtProcesses_Path=1
|
||||||
|
mtProcesses_Path0="Path"
|
||||||
|
Count mtSend_BugClosedMsg=2
|
||||||
|
mtSend_BugClosedMsg0="These BUG is just closed."
|
||||||
|
mtSend_BugClosedMsg1="Contact the program support to obtain an update."
|
||||||
|
Count mtSend_UnknownErrorMsg=1
|
||||||
|
mtSend_UnknownErrorMsg0="Unknown error."
|
||||||
|
Count mtSend_InvalidLoginMsg=1
|
||||||
|
mtSend_InvalidLoginMsg0="Invalid login request."
|
||||||
|
Count mtSend_InvalidSearchMsg=1
|
||||||
|
mtSend_InvalidSearchMsg0="Invalid search request."
|
||||||
|
Count mtSend_InvalidSelectionMsg=1
|
||||||
|
mtSend_InvalidSelectionMsg0="Invalid selection request."
|
||||||
|
Count mtSend_InvalidInsertMsg=1
|
||||||
|
mtSend_InvalidInsertMsg0="Invalid insert request."
|
||||||
|
Count mtSend_InvalidModifyMsg=1
|
||||||
|
mtSend_InvalidModifyMsg0="Invalid modify request."
|
||||||
|
Count mtFileCrackedMsg=2
|
||||||
|
mtFileCrackedMsg0="This file is cracked."
|
||||||
|
mtFileCrackedMsg1="The application will be closed."
|
||||||
|
Count mtException_LeakMultiFree=1
|
||||||
|
mtException_LeakMultiFree0="Multi Free memory leak."
|
||||||
|
Count mtException_LeakMemoryOverrun=1
|
||||||
|
mtException_LeakMemoryOverrun0="Memory Overrun leak."
|
||||||
|
Count mtException_AntiFreeze=1
|
||||||
|
mtException_AntiFreeze0="The application seems to be frozen."
|
||||||
|
Count mtInvalidEmailMsg=1
|
||||||
|
mtInvalidEmailMsg0="Invalid email."
|
||||||
|
TextsCollection=
|
||||||
|
EurekaLog Last Line -->
|
||||||
21
Source/ApplicationBase/Usuarios/Usuarios.drc
Normal file
21
Source/ApplicationBase/Usuarios/Usuarios.drc
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
/* VER185
|
||||||
|
Generated by the CodeGear 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
|
||||||
|
|
||||||
|
/* C:\Varela_D2007\Source\Usuarios\uLoginForm.dfm */
|
||||||
|
/* C:\Varela_D2007\Source\Usuarios\uCambiarPassword.dfm */
|
||||||
|
/* C:\Varela_D2007\Source\Usuarios\uDataModuleUsuarios.dfm */
|
||||||
|
/* C:\Varela_D2007\Source\Usuarios\uUsuarios.dfm */
|
||||||
|
/* C:\Varela_D2007\Source\Usuarios\uUsuario.dfm */
|
||||||
|
/* C:\Varela_D2007\Source\Usuarios\Usuarios.res */
|
||||||
|
/* C:\DOCUME~1\Usuario\CONFIG~1\Temp\dtfF.tmp */
|
||||||
22
Source/ApplicationBase/Usuarios/Usuarios.rc
Normal file
22
Source/ApplicationBase/Usuarios/Usuarios.rc
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
1 VERSIONINFO
|
||||||
|
FILEVERSION 1,0,3,0
|
||||||
|
PRODUCTVERSION 1,0,3,0
|
||||||
|
FILEFLAGSMASK 0x3FL
|
||||||
|
FILEFLAGS 0x00L
|
||||||
|
FILEOS 0x40004L
|
||||||
|
FILETYPE 0x1L
|
||||||
|
FILESUBTYPE 0x0L
|
||||||
|
BEGIN
|
||||||
|
BLOCK "StringFileInfo"
|
||||||
|
BEGIN
|
||||||
|
BLOCK "0C0A04E4"
|
||||||
|
BEGIN
|
||||||
|
VALUE "FileVersion", "1.0.3.0\0"
|
||||||
|
VALUE "ProductVersion", "1.0.0.0\0"
|
||||||
|
END
|
||||||
|
END
|
||||||
|
BLOCK "VarFileInfo"
|
||||||
|
BEGIN
|
||||||
|
VALUE "Translation", 0x0C0A, 1252
|
||||||
|
END
|
||||||
|
END
|
||||||
BIN
Source/ApplicationBase/Usuarios/Usuarios.res
Normal file
BIN
Source/ApplicationBase/Usuarios/Usuarios.res
Normal file
Binary file not shown.
123
Source/ApplicationBase/Usuarios/Views/uEditorCambiarPassword.dfm
Normal file
123
Source/ApplicationBase/Usuarios/Views/uEditorCambiarPassword.dfm
Normal file
@ -0,0 +1,123 @@
|
|||||||
|
object fEditorCambiarPassword: TfEditorCambiarPassword
|
||||||
|
Left = 398
|
||||||
|
Top = 263
|
||||||
|
BorderStyle = bsDialog
|
||||||
|
Caption = 'Cambiar la contrase'#241'a'
|
||||||
|
ClientHeight = 217
|
||||||
|
ClientWidth = 406
|
||||||
|
Color = clBtnFace
|
||||||
|
Font.Charset = DEFAULT_CHARSET
|
||||||
|
Font.Color = clWindowText
|
||||||
|
Font.Height = -11
|
||||||
|
Font.Name = 'MS Sans Serif'
|
||||||
|
Font.Style = []
|
||||||
|
OldCreateOrder = False
|
||||||
|
Position = poScreenCenter
|
||||||
|
OnClose = FormClose
|
||||||
|
OnCloseQuery = FormCloseQuery
|
||||||
|
PixelsPerInch = 96
|
||||||
|
TextHeight = 13
|
||||||
|
object Bevel4: TBevel
|
||||||
|
Left = 8
|
||||||
|
Top = 154
|
||||||
|
Width = 388
|
||||||
|
Height = 10
|
||||||
|
Shape = bsBottomLine
|
||||||
|
end
|
||||||
|
object lbConfirma: TLabel
|
||||||
|
Left = 35
|
||||||
|
Top = 88
|
||||||
|
Width = 103
|
||||||
|
Height = 13
|
||||||
|
Alignment = taRightJustify
|
||||||
|
Caption = 'Confirmar contrase'#241'a:'
|
||||||
|
end
|
||||||
|
object lbNovaSenha: TLabel
|
||||||
|
Left = 47
|
||||||
|
Top = 57
|
||||||
|
Width = 91
|
||||||
|
Height = 13
|
||||||
|
Alignment = taRightJustify
|
||||||
|
Caption = 'Nueva contrase'#241'a:'
|
||||||
|
end
|
||||||
|
object lbSenhaAtu: TLabel
|
||||||
|
Left = 49
|
||||||
|
Top = 27
|
||||||
|
Width = 89
|
||||||
|
Height = 13
|
||||||
|
Alignment = taRightJustify
|
||||||
|
Caption = 'Contrase'#241'a actual:'
|
||||||
|
end
|
||||||
|
object Label1: TLabel
|
||||||
|
Left = 19
|
||||||
|
Top = 132
|
||||||
|
Width = 360
|
||||||
|
Height = 13
|
||||||
|
Caption =
|
||||||
|
'Si hace clic en Cancelar, no se realizar'#225' ning'#250'n cambio sobre la' +
|
||||||
|
' contrase'#241'a.'
|
||||||
|
end
|
||||||
|
object bAceptar: TButton
|
||||||
|
Left = 234
|
||||||
|
Top = 178
|
||||||
|
Width = 75
|
||||||
|
Height = 23
|
||||||
|
Action = actAceptar
|
||||||
|
TabOrder = 0
|
||||||
|
end
|
||||||
|
object bCancelar: TButton
|
||||||
|
Left = 319
|
||||||
|
Top = 178
|
||||||
|
Width = 75
|
||||||
|
Height = 23
|
||||||
|
Action = actCancelar
|
||||||
|
Cancel = True
|
||||||
|
ModalResult = 2
|
||||||
|
TabOrder = 1
|
||||||
|
end
|
||||||
|
object EditAtu: TEdit
|
||||||
|
Left = 143
|
||||||
|
Top = 24
|
||||||
|
Width = 202
|
||||||
|
Height = 21
|
||||||
|
Ctl3D = True
|
||||||
|
MaxLength = 10
|
||||||
|
ParentCtl3D = False
|
||||||
|
PasswordChar = '*'
|
||||||
|
TabOrder = 2
|
||||||
|
end
|
||||||
|
object EditConfirma: TEdit
|
||||||
|
Left = 143
|
||||||
|
Top = 85
|
||||||
|
Width = 202
|
||||||
|
Height = 21
|
||||||
|
Ctl3D = True
|
||||||
|
MaxLength = 10
|
||||||
|
ParentCtl3D = False
|
||||||
|
PasswordChar = '*'
|
||||||
|
TabOrder = 4
|
||||||
|
end
|
||||||
|
object EditNova: TEdit
|
||||||
|
Left = 143
|
||||||
|
Top = 54
|
||||||
|
Width = 202
|
||||||
|
Height = 21
|
||||||
|
Ctl3D = True
|
||||||
|
MaxLength = 10
|
||||||
|
ParentCtl3D = False
|
||||||
|
PasswordChar = '*'
|
||||||
|
TabOrder = 3
|
||||||
|
end
|
||||||
|
object ActionList1: TActionList
|
||||||
|
Left = 136
|
||||||
|
Top = 169
|
||||||
|
object actAceptar: TAction
|
||||||
|
Caption = 'C&ambiar'
|
||||||
|
OnExecute = actAceptarExecute
|
||||||
|
end
|
||||||
|
object actCancelar: TAction
|
||||||
|
Caption = '&Cancelar'
|
||||||
|
OnExecute = actCancelarExecute
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
101
Source/ApplicationBase/Usuarios/Views/uEditorCambiarPassword.pas
Normal file
101
Source/ApplicationBase/Usuarios/Views/uEditorCambiarPassword.pas
Normal file
@ -0,0 +1,101 @@
|
|||||||
|
unit uEditorCambiarPassword;
|
||||||
|
|
||||||
|
interface
|
||||||
|
|
||||||
|
uses
|
||||||
|
Forms, UCBase, ExtCtrls, Classes, ActnList, StdCtrls, Controls, Buttons,
|
||||||
|
uBizUsuarios, uUsuariosController;
|
||||||
|
|
||||||
|
type
|
||||||
|
TfEditorCambiarPassword = class(TForm)
|
||||||
|
lbSenhaAtu: TLabel;
|
||||||
|
lbNovaSenha: TLabel;
|
||||||
|
lbConfirma: TLabel;
|
||||||
|
EditAtu: TEdit;
|
||||||
|
EditNova: TEdit;
|
||||||
|
EditConfirma: TEdit;
|
||||||
|
ActionList1: TActionList;
|
||||||
|
actAceptar: TAction;
|
||||||
|
actCancelar: TAction;
|
||||||
|
Bevel4: TBevel;
|
||||||
|
bAceptar: TButton;
|
||||||
|
bCancelar: TButton;
|
||||||
|
Label1: TLabel;
|
||||||
|
procedure FormClose(Sender: TObject; var Action: TCloseAction);
|
||||||
|
procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean);
|
||||||
|
procedure actCancelarExecute(Sender: TObject);
|
||||||
|
procedure actAceptarExecute(Sender: TObject);
|
||||||
|
public
|
||||||
|
Usuario : IBizUsuario;
|
||||||
|
Controller : IUsuariosController;
|
||||||
|
CambioObligatorio : Boolean;
|
||||||
|
end;
|
||||||
|
|
||||||
|
implementation
|
||||||
|
|
||||||
|
{$R *.dfm}
|
||||||
|
|
||||||
|
uses
|
||||||
|
uDialogUtils;
|
||||||
|
|
||||||
|
procedure TfEditorCambiarPassword.FormClose(Sender: TObject; var Action: TCloseAction);
|
||||||
|
begin
|
||||||
|
Action := caHide;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorCambiarPassword.actAceptarExecute(Sender: TObject);
|
||||||
|
var
|
||||||
|
AuxPass : String;
|
||||||
|
AMensaje : String;
|
||||||
|
begin
|
||||||
|
case Controller.Criptografia of
|
||||||
|
ucStandard: AuxPass := EditAtu.Text;
|
||||||
|
ucMD5: AuxPass := MD5Sum(EditAtu.Text);
|
||||||
|
end;
|
||||||
|
|
||||||
|
if Usuario.PASS <> AuxPass then
|
||||||
|
begin
|
||||||
|
ShowWarningMessage('Cambiar la contraseña', 'La contraseña actual no es correcta.' + #10#13 +
|
||||||
|
'Asegúrese de que la contraseña actual está bien introduccida.');
|
||||||
|
EditAtu.SetFocus;
|
||||||
|
Exit;
|
||||||
|
end;
|
||||||
|
|
||||||
|
if (EditNova.Text <> EditConfirma.Text) then
|
||||||
|
begin
|
||||||
|
ShowWarningMessage('Cambiar la contraseña', 'La contraseña no se confirmó correctamente' + #10#13 +
|
||||||
|
'Asegúrese de que la contraseña y su confirmación sean iguales.');
|
||||||
|
EditNova.SetFocus;
|
||||||
|
Exit;
|
||||||
|
end
|
||||||
|
else begin
|
||||||
|
if not Controller.ValidarPassword(EditNova.Text, Usuario.LOGIN, Usuario.USERNAME, AMensaje) then
|
||||||
|
begin
|
||||||
|
ShowWarningMessage('Cambiar la contraseña', AMensaje);
|
||||||
|
EditNova.SetFocus;
|
||||||
|
Exit;
|
||||||
|
end
|
||||||
|
else begin
|
||||||
|
if CambioObligatorio = True then
|
||||||
|
CambioObligatorio := False;
|
||||||
|
ModalResult := mrOK;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorCambiarPassword.actCancelarExecute(Sender: TObject);
|
||||||
|
begin
|
||||||
|
Close;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorCambiarPassword.FormCloseQuery(Sender: TObject;
|
||||||
|
var CanClose: Boolean);
|
||||||
|
begin
|
||||||
|
if CambioObligatorio then
|
||||||
|
begin
|
||||||
|
CanClose := False;
|
||||||
|
ShowWarningMessage('Cambiar la contraseña', 'El cambio de la contraseña es obligatorio');
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
end.
|
||||||
1101
Source/ApplicationBase/Usuarios/Views/uEditorLogin.dfm
Normal file
1101
Source/ApplicationBase/Usuarios/Views/uEditorLogin.dfm
Normal file
File diff suppressed because it is too large
Load Diff
140
Source/ApplicationBase/Usuarios/Views/uEditorLogin.pas
Normal file
140
Source/ApplicationBase/Usuarios/Views/uEditorLogin.pas
Normal file
@ -0,0 +1,140 @@
|
|||||||
|
unit uEditorLogin;
|
||||||
|
|
||||||
|
interface
|
||||||
|
|
||||||
|
uses
|
||||||
|
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
||||||
|
Dialogs, StdCtrls, ExtCtrls, ComCtrls, cxGraphics, cxControls,
|
||||||
|
cxContainer, cxEdit, cxTextEdit, cxMaskEdit, cxDropDownEdit,
|
||||||
|
cxImageComboBox, ImgList, PngImageList, pngimage, ToolWin, JvExControls,
|
||||||
|
JvComponent, JvGradient, JvGIF, JvComponentBase, JvFormPlacement,
|
||||||
|
JvAppStorage, JvAppRegistryStorage, uIEditorLogin, uUsuariosController;
|
||||||
|
|
||||||
|
type
|
||||||
|
TfEditorLogin = class(TForm, IEditorLogin)
|
||||||
|
Panel1: TPanel;
|
||||||
|
Label3: TLabel;
|
||||||
|
Label4: TLabel;
|
||||||
|
edtPassword: TEdit;
|
||||||
|
bAceptar: TButton;
|
||||||
|
bCancelar: TButton;
|
||||||
|
Label1: TLabel;
|
||||||
|
edtUser: TEdit;
|
||||||
|
JvGradient1: TJvGradient;
|
||||||
|
Button1: TButton;
|
||||||
|
Timer1: TTimer;
|
||||||
|
JvAppRegistryStorage1: TJvAppRegistryStorage;
|
||||||
|
JvFormStorage1: TJvFormStorage;
|
||||||
|
Image1: TImage;
|
||||||
|
procedure bAceptarClick(Sender: TObject);
|
||||||
|
procedure ToolButton4Click(Sender: TObject);
|
||||||
|
procedure FormShow(Sender: TObject);
|
||||||
|
procedure Timer1Timer(Sender: TObject);
|
||||||
|
procedure FormCreate(Sender: TObject);
|
||||||
|
procedure FormDestroy(Sender: TObject);
|
||||||
|
procedure edtUserKeyPress(Sender: TObject; var Key: Char);
|
||||||
|
private
|
||||||
|
FController : IUsuariosController;
|
||||||
|
FIntentos : Integer;
|
||||||
|
function GetController : IUsuariosController;
|
||||||
|
procedure SetController (const AValue : IUsuariosController);
|
||||||
|
published
|
||||||
|
property Controller : IUsuariosController read GetController write SetController;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
implementation
|
||||||
|
|
||||||
|
uses
|
||||||
|
uAdminPV_App, uDMBase;
|
||||||
|
|
||||||
|
{$R *.dfm}
|
||||||
|
|
||||||
|
{
|
||||||
|
********************************* TfEditorLogin **********************************
|
||||||
|
}
|
||||||
|
procedure TfEditorLogin.bAceptarClick(Sender: TObject);
|
||||||
|
var
|
||||||
|
bOk : Boolean;
|
||||||
|
begin
|
||||||
|
Timer1.Enabled := False;
|
||||||
|
|
||||||
|
ShowHourglassCursor;
|
||||||
|
try
|
||||||
|
bOK := FController.ComprobarUsuario(edtUser.Text, edtPassword.Text);
|
||||||
|
finally
|
||||||
|
HideHourglassCursor;
|
||||||
|
end;
|
||||||
|
|
||||||
|
if bOk then
|
||||||
|
ModalResult := mrOK
|
||||||
|
else begin
|
||||||
|
Application.MessageBox('Usuario no válido. Compruebe si ha escrito correctamente'
|
||||||
|
+ #13 + #10 + 'el usuario y la contraseña.', 'Atención', MB_OK);
|
||||||
|
Inc(FIntentos);
|
||||||
|
if (Controller.MaxIntentosLogin > 0) and (FIntentos = Controller.MaxIntentosLogin) then
|
||||||
|
ModalResult := mrCancel;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorLogin.ToolButton4Click(Sender: TObject);
|
||||||
|
var
|
||||||
|
ATimer : Boolean;
|
||||||
|
begin
|
||||||
|
ATimer := False;
|
||||||
|
if Timer1.Enabled then
|
||||||
|
begin
|
||||||
|
ATimer := True;
|
||||||
|
Timer1.Enabled := False;
|
||||||
|
end;
|
||||||
|
|
||||||
|
dmBase.ConfigurarConexion;
|
||||||
|
|
||||||
|
if ATimer then
|
||||||
|
Timer1.Enabled := True;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorLogin.edtUserKeyPress(Sender: TObject; var Key: Char);
|
||||||
|
begin
|
||||||
|
// Desactivar el timer cuando el usuario empieza a escribir
|
||||||
|
Timer1.Enabled := False;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorLogin.FormCreate(Sender: TObject);
|
||||||
|
begin
|
||||||
|
FIntentos := 0;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorLogin.FormDestroy(Sender: TObject);
|
||||||
|
begin
|
||||||
|
FController := NIL;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorLogin.FormShow(Sender: TObject);
|
||||||
|
begin
|
||||||
|
Self.Caption := AppAdminPV.AppFullName;
|
||||||
|
JvFormStorage1.RestoreFormPlacement;
|
||||||
|
|
||||||
|
// Hacer login automática si hay usuario/password y no hay más de una base
|
||||||
|
// de datos como opción para conectarse.
|
||||||
|
if ((Length(edtUser.Text) > 0) and (Length(edtPassword.Text) > 0)) then
|
||||||
|
Timer1.Enabled := True;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TfEditorLogin.GetController: IUsuariosController;
|
||||||
|
begin
|
||||||
|
Result := FController;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorLogin.SetController(const AValue: IUsuariosController);
|
||||||
|
begin
|
||||||
|
FController := AValue;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorLogin.Timer1Timer(Sender: TObject);
|
||||||
|
begin
|
||||||
|
Timer1.Enabled := False;
|
||||||
|
bAceptar.Click;
|
||||||
|
end;
|
||||||
|
|
||||||
|
end.
|
||||||
@ -0,0 +1,48 @@
|
|||||||
|
inherited fEditorPerfilUsuario: TfEditorPerfilUsuario
|
||||||
|
Caption = 'fEditorPerfilUsuario'
|
||||||
|
ExplicitHeight = 492
|
||||||
|
PixelsPerInch = 96
|
||||||
|
TextHeight = 13
|
||||||
|
inherited TBXDock: TTBXDock
|
||||||
|
inherited tbxMain: TTBXToolbar
|
||||||
|
ExplicitWidth = 273
|
||||||
|
end
|
||||||
|
end
|
||||||
|
inherited StatusBar: TStatusBar
|
||||||
|
Panels = <
|
||||||
|
item
|
||||||
|
Width = 200
|
||||||
|
end>
|
||||||
|
Visible = True
|
||||||
|
end
|
||||||
|
inherited EditorActionList: TActionList
|
||||||
|
inherited actNuevo: TAction
|
||||||
|
Visible = False
|
||||||
|
end
|
||||||
|
inherited actModificar: TAction
|
||||||
|
Visible = False
|
||||||
|
end
|
||||||
|
inherited actPrevisualizar: TAction
|
||||||
|
Visible = False
|
||||||
|
end
|
||||||
|
inherited actImprimir: TAction
|
||||||
|
Visible = False
|
||||||
|
end
|
||||||
|
end
|
||||||
|
inherited dsDataTable: TDADataSource
|
||||||
|
OnDataChange = dsDataTableDataChange
|
||||||
|
end
|
||||||
|
object dxLayoutLookAndFeelList1: TdxLayoutLookAndFeelList
|
||||||
|
Left = 248
|
||||||
|
Top = 168
|
||||||
|
object dxLayoutOfficeLookAndFeel1: TdxLayoutOfficeLookAndFeel
|
||||||
|
GroupOptions.CaptionOptions.Font.Charset = DEFAULT_CHARSET
|
||||||
|
GroupOptions.CaptionOptions.Font.Color = clWindowText
|
||||||
|
GroupOptions.CaptionOptions.Font.Height = -11
|
||||||
|
GroupOptions.CaptionOptions.Font.Name = 'Tahoma'
|
||||||
|
GroupOptions.CaptionOptions.Font.Style = [fsBold]
|
||||||
|
GroupOptions.CaptionOptions.TextColor = clHighlight
|
||||||
|
GroupOptions.CaptionOptions.UseDefaultFont = False
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
240
Source/ApplicationBase/Usuarios/Views/uEditorPerfilUsuario.pas
Normal file
240
Source/ApplicationBase/Usuarios/Views/uEditorPerfilUsuario.pas
Normal file
@ -0,0 +1,240 @@
|
|||||||
|
unit uEditorPerfilUsuario;
|
||||||
|
|
||||||
|
interface
|
||||||
|
|
||||||
|
uses
|
||||||
|
Windows, Menus, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
||||||
|
Dialogs, uEditorDBItem, JvAppStorage, JvAppRegistryStorage, DB, uDAInterfaces,
|
||||||
|
uDADataTable, JvComponentBase, JvFormPlacement, ImgList, PngImageList,
|
||||||
|
StdActns, ActnList, ComCtrls, JvExComCtrls, JvStatusBar, TBX, TB2Item,
|
||||||
|
TB2Dock, TB2Toolbar, pngimage, ExtCtrls, JvExControls, JvNavigationPane,
|
||||||
|
uIEditorPerfilUsuario, uUsuariosController, uCustomView, uViewBase,
|
||||||
|
uViewPerfilUsuario, uBizUsuarios, dxLayoutLookAndFeels;
|
||||||
|
|
||||||
|
type
|
||||||
|
TfEditorPerfilUsuario = class(TfEditorDBItem, IEditorPerfilUsuario)
|
||||||
|
dxLayoutLookAndFeelList1: TdxLayoutLookAndFeelList;
|
||||||
|
dxLayoutOfficeLookAndFeel1: TdxLayoutOfficeLookAndFeel;
|
||||||
|
procedure actGuardarExecute(Sender: TObject);
|
||||||
|
procedure actGuardarCerrarExecute(Sender: TObject);
|
||||||
|
procedure dsDataTableDataChange(Sender: TObject; Field: TField);
|
||||||
|
procedure FormShow(Sender: TObject);
|
||||||
|
private
|
||||||
|
FController : IUsuariosController;
|
||||||
|
FPerfilUsuario : IBizPerfilUsuario;
|
||||||
|
FViewPerfilUsuario : IViewPerfilUsuario;
|
||||||
|
protected
|
||||||
|
function GetController : IUsuariosController;
|
||||||
|
procedure SetController (const Value : IUsuariosController);
|
||||||
|
|
||||||
|
function GetPerfilUsuario: IBizPerfilUsuario;
|
||||||
|
procedure SetPerfilUsuario(const Value: IBizPerfilUsuario);
|
||||||
|
|
||||||
|
procedure GuardarInterno;
|
||||||
|
procedure EliminarInterno;
|
||||||
|
procedure ActualizarEstadoEditor;
|
||||||
|
function HayDatos: Boolean;
|
||||||
|
//Si queremos crear otra vista para el editor heredado solo tendriamos que
|
||||||
|
//sobreescribir este metodo
|
||||||
|
procedure AsignarVista; virtual;
|
||||||
|
procedure PonerTitulos(const ATitulo: string = '');
|
||||||
|
|
||||||
|
function GetViewPerfilUsuario: IViewPerfilUsuario;
|
||||||
|
procedure SetViewPerfilUsuario(const Value: IViewPerfilUsuario);
|
||||||
|
property ViewPerfilUsuario: IViewPerfilUsuario read GetViewPerfilUsuario write SetViewPerfilUsuario;
|
||||||
|
public
|
||||||
|
constructor Create(AOwner: TComponent); override;
|
||||||
|
destructor Destroy; override;
|
||||||
|
property Controller : IUsuariosController read GetController write SetController;
|
||||||
|
property PerfilUsuario: IBizPerfilUsuario read GetPerfilUsuario write SetPerfilUsuario;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
implementation
|
||||||
|
|
||||||
|
{$R *.dfm}
|
||||||
|
|
||||||
|
{ TfEditorUsuario }
|
||||||
|
|
||||||
|
uses
|
||||||
|
cxControls, uDialogUtils;
|
||||||
|
|
||||||
|
var
|
||||||
|
FIDNuevoGuardado : Integer = -1;
|
||||||
|
|
||||||
|
procedure TfEditorPerfilUsuario.actGuardarCerrarExecute(Sender: TObject);
|
||||||
|
begin
|
||||||
|
ShowHourglassCursor;
|
||||||
|
try
|
||||||
|
if actGuardar.Execute then
|
||||||
|
actCerrar.Execute;
|
||||||
|
finally
|
||||||
|
HideHourglassCursor;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorPerfilUsuario.actGuardarExecute(Sender: TObject);
|
||||||
|
begin
|
||||||
|
if actGuardar.Enabled then
|
||||||
|
begin
|
||||||
|
GuardarInterno;
|
||||||
|
ActualizarEstadoEditor;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorPerfilUsuario.ActualizarEstadoEditor;
|
||||||
|
begin
|
||||||
|
PonerTitulos;
|
||||||
|
if HayDatos then
|
||||||
|
begin
|
||||||
|
if (Self.Modified) and (dsDataTable.DataTable.State <> dsInsert) then
|
||||||
|
StatusBar.Panels[0].Text := ' Se han producido cambios'
|
||||||
|
else
|
||||||
|
StatusBar.Panels[0].Text := '';
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorPerfilUsuario.AsignarVista;
|
||||||
|
var
|
||||||
|
AViewPerfilUsuario: TfrViewPerfilUsuario;
|
||||||
|
begin
|
||||||
|
AViewPerfilUsuario := TfrViewPerfilUsuario.Create(Self);
|
||||||
|
with AViewPerfilUsuario do
|
||||||
|
begin
|
||||||
|
Parent := Self;
|
||||||
|
Align := alClient;
|
||||||
|
dxLayoutControlArticulo.LookAndFeel := dxLayoutOfficeLookAndFeel1;
|
||||||
|
end;
|
||||||
|
ViewPerfilUsuario := AViewPerfilUsuario;
|
||||||
|
end;
|
||||||
|
|
||||||
|
constructor TfEditorPerfilUsuario.Create(AOwner: TComponent);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
AsignarVista;
|
||||||
|
end;
|
||||||
|
|
||||||
|
destructor TfEditorPerfilUsuario.Destroy;
|
||||||
|
begin
|
||||||
|
// Utilizar mejor OnClose;
|
||||||
|
inherited;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorPerfilUsuario.dsDataTableDataChange(Sender: TObject;
|
||||||
|
Field: TField);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
ActualizarEstadoEditor;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorPerfilUsuario.EliminarInterno;
|
||||||
|
begin
|
||||||
|
if (ShowConfirmMessage('Eliminar el perfil', '¿Desea eliminar este perfil?') = IDYES) then
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
if not FController.EliminarPerfil(FPerfilUsuario) then
|
||||||
|
actRefrescar.Execute;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorPerfilUsuario.FormShow(Sender: TObject);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
ActualizarEstadoEditor;
|
||||||
|
if Assigned(Parent) then
|
||||||
|
begin
|
||||||
|
StatusBar.Visible := False;
|
||||||
|
actCerrar.ShortCut := 0
|
||||||
|
end
|
||||||
|
else begin
|
||||||
|
StatusBar.Visible := True;
|
||||||
|
actCerrar.ShortCut := ShortCut(VK_ESCAPE, []);
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TfEditorPerfilUsuario.GetController: IUsuariosController;
|
||||||
|
begin
|
||||||
|
Result := FController;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TfEditorPerfilUsuario.GetPerfilUsuario: IBizPerfilUsuario;
|
||||||
|
begin
|
||||||
|
Result := FPerfilUsuario;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TfEditorPerfilUsuario.GetViewPerfilUsuario: IViewPerfilUsuario;
|
||||||
|
begin
|
||||||
|
Result := FViewPerfilUsuario;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorPerfilUsuario.GuardarInterno;
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
if FController.GuardarPerfil(FPerfilUsuario) then
|
||||||
|
begin
|
||||||
|
FIDNuevoGuardado := FPerfilUsuario.ID;
|
||||||
|
FPerfilUsuario.DataTable.CancelUpdates;
|
||||||
|
Modified := False;
|
||||||
|
actRefrescar.Execute;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TfEditorPerfilUsuario.HayDatos: Boolean;
|
||||||
|
begin
|
||||||
|
Result := Assigned(dsDataTable.DataTable) and (dsDataTable.DataTable.State <> dsInactive)
|
||||||
|
and (not dsDataTable.DataTable.IsEmpty);
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorPerfilUsuario.PonerTitulos(const ATitulo: string);
|
||||||
|
var
|
||||||
|
FTitulo : String;
|
||||||
|
begin
|
||||||
|
if Assigned(FPerfilUsuario) then
|
||||||
|
begin
|
||||||
|
if FPerfilUsuario.EsNuevo then
|
||||||
|
FTitulo := 'Nuevo perfil'
|
||||||
|
else
|
||||||
|
FTitulo := 'Perfil';
|
||||||
|
|
||||||
|
if Length(FPerfilUsuario.USERNAME) > 0 then
|
||||||
|
FTitulo := FTitulo + ' - ' + FPerfilUsuario.USERNAME;
|
||||||
|
end;
|
||||||
|
|
||||||
|
if ReadOnly then
|
||||||
|
begin
|
||||||
|
JvNavPanelHeader.Caption := FTitulo + ' (NO MODIFICABLE)';
|
||||||
|
Caption := FTitulo + ' (NO MODIFICABLE)';
|
||||||
|
end
|
||||||
|
else
|
||||||
|
begin
|
||||||
|
JvNavPanelHeader.Caption := FTitulo;
|
||||||
|
Caption := FTitulo;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorPerfilUsuario.SetController(const Value: IUsuariosController);
|
||||||
|
begin
|
||||||
|
FController := Value;
|
||||||
|
if Assigned(FViewPerfilUsuario) and Assigned(FController) then
|
||||||
|
FViewPerfilUsuario.Controller := FController;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorPerfilUsuario.SetPerfilUsuario(
|
||||||
|
const Value: IBizPerfilUsuario);
|
||||||
|
begin
|
||||||
|
FPerfilUsuario := Value;
|
||||||
|
dsDataTable.DataTable := FPerfilUsuario.DataTable;
|
||||||
|
|
||||||
|
if Assigned(FViewPerfilUsuario) and Assigned(FPerfilUsuario) then
|
||||||
|
FViewPerfilUsuario.PerfilUsuario := FPerfilUsuario;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorPerfilUsuario.SetViewPerfilUsuario(const Value: IViewPerfilUsuario);
|
||||||
|
begin
|
||||||
|
FViewPerfilUsuario := Value;
|
||||||
|
|
||||||
|
if Assigned(FViewPerfilUsuario) and Assigned(FPerfilUsuario) then
|
||||||
|
FViewPerfilUsuario.PerfilUsuario := FPerfilUsuario;
|
||||||
|
end;
|
||||||
|
|
||||||
|
end.
|
||||||
@ -0,0 +1,59 @@
|
|||||||
|
inherited fEditorPerfilesUsuario: TfEditorPerfilesUsuario
|
||||||
|
Caption = 'fEditorPerfilesUsuario'
|
||||||
|
ClientHeight = 493
|
||||||
|
ClientWidth = 840
|
||||||
|
ExplicitWidth = 848
|
||||||
|
ExplicitHeight = 520
|
||||||
|
PixelsPerInch = 96
|
||||||
|
TextHeight = 13
|
||||||
|
inherited JvNavPanelHeader: TJvNavPanelHeader
|
||||||
|
Width = 840
|
||||||
|
ExplicitWidth = 840
|
||||||
|
inherited Image1: TImage
|
||||||
|
Left = 813
|
||||||
|
ExplicitLeft = 813
|
||||||
|
end
|
||||||
|
end
|
||||||
|
inherited TBXDock: TTBXDock
|
||||||
|
Width = 840
|
||||||
|
ExplicitWidth = 840
|
||||||
|
inherited tbxMain: TTBXToolbar
|
||||||
|
ExplicitWidth = 213
|
||||||
|
end
|
||||||
|
inherited tbxMenu: TTBXToolbar
|
||||||
|
ExplicitWidth = 840
|
||||||
|
end
|
||||||
|
inherited tbxFiltro: TTBXToolbar
|
||||||
|
Left = 213
|
||||||
|
DockPos = 208
|
||||||
|
Visible = False
|
||||||
|
ExplicitLeft = 213
|
||||||
|
end
|
||||||
|
end
|
||||||
|
inherited StatusBar: TStatusBar
|
||||||
|
Top = 474
|
||||||
|
Width = 840
|
||||||
|
ExplicitTop = 474
|
||||||
|
ExplicitWidth = 840
|
||||||
|
end
|
||||||
|
inherited EditorActionList: TActionList
|
||||||
|
inherited actNuevo: TAction
|
||||||
|
OnExecute = actNuevoExecute
|
||||||
|
end
|
||||||
|
inherited actModificar: TAction
|
||||||
|
OnExecute = actModificarExecute
|
||||||
|
end
|
||||||
|
inherited actPrevisualizar: TAction
|
||||||
|
Visible = False
|
||||||
|
end
|
||||||
|
inherited actImprimir: TAction
|
||||||
|
Visible = False
|
||||||
|
end
|
||||||
|
inherited actDuplicar: TAction
|
||||||
|
Visible = False
|
||||||
|
end
|
||||||
|
end
|
||||||
|
inherited dsDataTable: TDADataSource
|
||||||
|
OnDataChange = dsDataTableDataChange
|
||||||
|
end
|
||||||
|
end
|
||||||
199
Source/ApplicationBase/Usuarios/Views/uEditorPerfilesUsuario.pas
Normal file
199
Source/ApplicationBase/Usuarios/Views/uEditorPerfilesUsuario.pas
Normal file
@ -0,0 +1,199 @@
|
|||||||
|
unit uEditorPerfilesUsuario;
|
||||||
|
|
||||||
|
interface
|
||||||
|
|
||||||
|
uses
|
||||||
|
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
||||||
|
Dialogs, uEditorGridBase, Menus, JvAppStorage, JvAppRegistryStorage, DB,
|
||||||
|
uDAInterfaces, uDADataTable, JvComponentBase, JvFormPlacement, ImgList,
|
||||||
|
PngImageList, StdActns, ActnList, ComCtrls, JvExComCtrls, JvStatusBar, TBX,
|
||||||
|
TB2ExtItems, TBXExtItems, TB2Item, TB2Dock, TB2Toolbar, pngimage, ExtCtrls,
|
||||||
|
JvExControls, JvNavigationPane, uIEditorPerfilesUsuario,
|
||||||
|
uUsuariosController, uBizUsuarios, uViewPerfilesUsuario;
|
||||||
|
|
||||||
|
type
|
||||||
|
TfEditorPerfilesUsuario = class(TfEditorGridBase, IEditorPerfilesUsuario)
|
||||||
|
procedure actNuevoExecute(Sender: TObject);
|
||||||
|
procedure actModificarExecute(Sender: TObject);
|
||||||
|
procedure actEliminarExecute(Sender: TObject);
|
||||||
|
procedure dsDataTableDataChange(Sender: TObject; Field: TField);
|
||||||
|
procedure FormShow(Sender: TObject);
|
||||||
|
private
|
||||||
|
FPerfiles : IBizPerfilUsuario;
|
||||||
|
FController : IUsuariosController;
|
||||||
|
protected
|
||||||
|
function GetController : IUsuariosController;
|
||||||
|
procedure SetController (const Value : IUsuariosController);
|
||||||
|
|
||||||
|
function GetPerfilesUsuario: IBizPerfilUsuario;
|
||||||
|
procedure SetPerfilesUsuario(const Value: IBizPerfilUsuario);
|
||||||
|
|
||||||
|
procedure NuevoInterno;
|
||||||
|
procedure EliminarInterno;
|
||||||
|
procedure ModificarInterno;
|
||||||
|
procedure ActualizarEstadoEditor;
|
||||||
|
//Si queremos crear otra vista para el editor heredado solo tendriamos que
|
||||||
|
//sobreescribir este metodo
|
||||||
|
procedure AsignarVista; virtual;
|
||||||
|
public
|
||||||
|
procedure PonerTitulos(const ATitulo: string = '');
|
||||||
|
property PerfilesUsuario: IBizPerfilUsuario read GetPerfilesUsuario write SetPerfilesUsuario;
|
||||||
|
property Controller : IUsuariosController read GetController write SetController;
|
||||||
|
constructor Create(AOwner: TComponent); override;
|
||||||
|
destructor Destroy; override;
|
||||||
|
end;
|
||||||
|
|
||||||
|
implementation
|
||||||
|
|
||||||
|
{$R *.dfm}
|
||||||
|
|
||||||
|
uses
|
||||||
|
uDialogUtils;
|
||||||
|
|
||||||
|
{ TfEditorUsuarios }
|
||||||
|
|
||||||
|
procedure TfEditorPerfilesUsuario.actEliminarExecute(Sender: TObject);
|
||||||
|
begin
|
||||||
|
if actEliminar.Enabled then
|
||||||
|
begin
|
||||||
|
EliminarInterno;
|
||||||
|
ActualizarEstadoEditor;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorPerfilesUsuario.actModificarExecute(Sender: TObject);
|
||||||
|
begin
|
||||||
|
if actModificar.Enabled then
|
||||||
|
begin
|
||||||
|
ModificarInterno;
|
||||||
|
ActualizarEstadoEditor;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorPerfilesUsuario.actNuevoExecute(Sender: TObject);
|
||||||
|
begin
|
||||||
|
if actNuevo.Enabled then
|
||||||
|
begin
|
||||||
|
NuevoInterno;
|
||||||
|
ActualizarEstadoEditor;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorPerfilesUsuario.ActualizarEstadoEditor;
|
||||||
|
begin
|
||||||
|
PonerTitulos;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorPerfilesUsuario.AsignarVista;
|
||||||
|
begin
|
||||||
|
ViewGrid := CreateView(TfrViewPerfilesUsuario) as IViewPerfilesUsuario;
|
||||||
|
end;
|
||||||
|
|
||||||
|
constructor TfEditorPerfilesUsuario.Create(AOwner: TComponent);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
AsignarVista;
|
||||||
|
end;
|
||||||
|
|
||||||
|
destructor TfEditorPerfilesUsuario.Destroy;
|
||||||
|
begin
|
||||||
|
FPerfiles := NIL;
|
||||||
|
FController := NIl;
|
||||||
|
|
||||||
|
inherited;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorPerfilesUsuario.dsDataTableDataChange(Sender: TObject;
|
||||||
|
Field: TField);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
ActualizarEstadoEditor
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorPerfilesUsuario.EliminarInterno;
|
||||||
|
begin
|
||||||
|
if (ShowConfirmMessage('Eliminar un perfil', Format('¿Desea eliminar el perfil %s?', [FPerfiles.USERNAME])) = IDYES) then
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
//Para que en el caso de no poderse realizar la operación se refresquen
|
||||||
|
//los datos y no nos permita eliminar un registro a la segunda
|
||||||
|
FController.EliminarPerfil(FPerfiles);
|
||||||
|
actRefrescar.Execute;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorPerfilesUsuario.FormShow(Sender: TObject);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
ActualizarEstadoEditor;
|
||||||
|
if Assigned(Parent) then
|
||||||
|
begin
|
||||||
|
StatusBar.Visible := False;
|
||||||
|
actCerrar.ShortCut := 0
|
||||||
|
end
|
||||||
|
else begin
|
||||||
|
StatusBar.Visible := True;
|
||||||
|
actCerrar.ShortCut := ShortCut(VK_ESCAPE, []);
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TfEditorPerfilesUsuario.GetController: IUsuariosController;
|
||||||
|
begin
|
||||||
|
Result := FController;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TfEditorPerfilesUsuario.GetPerfilesUsuario: IBizPerfilUsuario;
|
||||||
|
begin
|
||||||
|
Result := FPerfiles;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorPerfilesUsuario.ModificarInterno;
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
FController.VerPerfil(FPerfiles.ID);
|
||||||
|
actRefrescar.Execute;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorPerfilesUsuario.NuevoInterno;
|
||||||
|
var
|
||||||
|
ANuevoPerfil : IBizPerfilUsuario;
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
ANuevoPerfil := FController.NuevoPerfil;
|
||||||
|
FController.VerPerfil(ANuevoPerfil);
|
||||||
|
actRefrescar.Execute;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorPerfilesUsuario.PonerTitulos(const ATitulo: string);
|
||||||
|
var
|
||||||
|
FTitulo : String;
|
||||||
|
begin
|
||||||
|
FTitulo := 'Lista de perfiles de usuario';
|
||||||
|
|
||||||
|
if ReadOnly then
|
||||||
|
begin
|
||||||
|
JvNavPanelHeader.Caption := FTitulo + ' (NO MODIFICABLE)';
|
||||||
|
Caption := FTitulo + ' (NO MODIFICABLE)';
|
||||||
|
end
|
||||||
|
else
|
||||||
|
begin
|
||||||
|
JvNavPanelHeader.Caption := FTitulo;
|
||||||
|
Caption := FTitulo;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorPerfilesUsuario.SetController(const Value: IUsuariosController);
|
||||||
|
begin
|
||||||
|
FController := Value;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorPerfilesUsuario.SetPerfilesUsuario(
|
||||||
|
const Value: IBizPerfilUsuario);
|
||||||
|
begin
|
||||||
|
FPerfiles := Value;
|
||||||
|
dsDataTable.DataTable := FPerfiles.DataTable;
|
||||||
|
if Assigned(ViewGrid) then
|
||||||
|
(ViewGrid as IViewPerfilesUsuario).PerfilesUsuario := FPerfiles;
|
||||||
|
end;
|
||||||
|
|
||||||
|
end.
|
||||||
139
Source/ApplicationBase/Usuarios/Views/uEditorUsuario.dfm
Normal file
139
Source/ApplicationBase/Usuarios/Views/uEditorUsuario.dfm
Normal file
@ -0,0 +1,139 @@
|
|||||||
|
inherited fEditorUsuario: TfEditorUsuario
|
||||||
|
Caption = 'fEditorUsuario'
|
||||||
|
ExplicitHeight = 492
|
||||||
|
PixelsPerInch = 96
|
||||||
|
TextHeight = 13
|
||||||
|
inherited TBXDock: TTBXDock
|
||||||
|
inherited tbxMain: TTBXToolbar
|
||||||
|
ExplicitWidth = 408
|
||||||
|
object TBXItem33: TTBXItem [7]
|
||||||
|
Action = actCambiarPassword
|
||||||
|
end
|
||||||
|
end
|
||||||
|
inherited tbxMenu: TTBXToolbar
|
||||||
|
object TBXSubmenuItem2: TTBXSubmenuItem [4]
|
||||||
|
Caption = '&Herramientas'
|
||||||
|
object TBXItem7: TTBXItem
|
||||||
|
Action = actCambiarPassword
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
inherited StatusBar: TStatusBar
|
||||||
|
Panels = <
|
||||||
|
item
|
||||||
|
Width = 200
|
||||||
|
end>
|
||||||
|
Visible = True
|
||||||
|
end
|
||||||
|
inline frViewUsuario1: TfrViewUsuario [3]
|
||||||
|
Left = 0
|
||||||
|
Top = 76
|
||||||
|
Width = 656
|
||||||
|
Height = 370
|
||||||
|
Align = alClient
|
||||||
|
Font.Charset = DEFAULT_CHARSET
|
||||||
|
Font.Color = clWindowText
|
||||||
|
Font.Height = -11
|
||||||
|
Font.Name = 'Tahoma'
|
||||||
|
Font.Style = []
|
||||||
|
ParentFont = False
|
||||||
|
TabOrder = 3
|
||||||
|
ReadOnly = False
|
||||||
|
ExplicitTop = 76
|
||||||
|
ExplicitWidth = 656
|
||||||
|
ExplicitHeight = 370
|
||||||
|
inherited dxLayoutControlArticulo: TdxLayoutControl
|
||||||
|
Width = 656
|
||||||
|
ExplicitWidth = 656
|
||||||
|
inherited PngSpeedButton3: TPngSpeedButton
|
||||||
|
Top = 84
|
||||||
|
ExplicitTop = 84
|
||||||
|
end
|
||||||
|
inherited eNombre: TcxDBTextEdit
|
||||||
|
Top = 30
|
||||||
|
ExplicitTop = 30
|
||||||
|
ExplicitWidth = 164
|
||||||
|
Width = 164
|
||||||
|
end
|
||||||
|
inherited eUsuario: TcxDBTextEdit
|
||||||
|
Top = 57
|
||||||
|
ExplicitTop = 57
|
||||||
|
ExplicitWidth = 108
|
||||||
|
Width = 108
|
||||||
|
end
|
||||||
|
inherited eMail: TcxDBHyperLinkEdit
|
||||||
|
Top = 84
|
||||||
|
Properties.Prefix = 'mailto:'
|
||||||
|
ExplicitTop = 84
|
||||||
|
end
|
||||||
|
inherited ePassword: TcxTextEdit
|
||||||
|
Top = 163
|
||||||
|
ExplicitTop = 163
|
||||||
|
ExplicitWidth = 121
|
||||||
|
Width = 121
|
||||||
|
end
|
||||||
|
inherited eConfirmarPassword: TcxTextEdit
|
||||||
|
Top = 190
|
||||||
|
ExplicitTop = 190
|
||||||
|
ExplicitWidth = 372
|
||||||
|
Width = 372
|
||||||
|
end
|
||||||
|
inherited cbPerfil: TcxComboBox
|
||||||
|
Top = 112
|
||||||
|
ExplicitTop = 112
|
||||||
|
end
|
||||||
|
inherited dxLayoutGroup1: TdxLayoutGroup
|
||||||
|
LookAndFeel = dxLayoutOfficeLookAndFeel1
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
inherited EditorActionList: TActionList [4]
|
||||||
|
inherited actNuevo: TAction
|
||||||
|
Visible = False
|
||||||
|
end
|
||||||
|
inherited actModificar: TAction
|
||||||
|
Visible = False
|
||||||
|
end
|
||||||
|
inherited actConfPagina: TAction
|
||||||
|
Visible = False
|
||||||
|
end
|
||||||
|
inherited actPrevisualizar: TAction
|
||||||
|
Visible = False
|
||||||
|
end
|
||||||
|
inherited actImprimir: TAction
|
||||||
|
Visible = False
|
||||||
|
end
|
||||||
|
object actCambiarPassword: TAction
|
||||||
|
Category = 'Herramientas'
|
||||||
|
Caption = 'Cambiar la contrase'#241'a...'
|
||||||
|
OnExecute = actCambiarPasswordExecute
|
||||||
|
OnUpdate = actCambiarPasswordUpdate
|
||||||
|
end
|
||||||
|
end
|
||||||
|
inherited SmallImages: TPngImageList [5]
|
||||||
|
end
|
||||||
|
inherited LargeImages: TPngImageList [6]
|
||||||
|
end
|
||||||
|
inherited JvFormStorage: TJvFormStorage [7]
|
||||||
|
end
|
||||||
|
inherited JvAppRegistryStorage: TJvAppRegistryStorage [8]
|
||||||
|
end
|
||||||
|
inherited dsDataTable: TDADataSource
|
||||||
|
OnDataChange = dsDataTableDataChange
|
||||||
|
Top = 80
|
||||||
|
end
|
||||||
|
object dxLayoutLookAndFeelList1: TdxLayoutLookAndFeelList
|
||||||
|
Left = 336
|
||||||
|
Top = 160
|
||||||
|
object dxLayoutOfficeLookAndFeel1: TdxLayoutOfficeLookAndFeel
|
||||||
|
GroupOptions.CaptionOptions.Font.Charset = DEFAULT_CHARSET
|
||||||
|
GroupOptions.CaptionOptions.Font.Color = clWindowText
|
||||||
|
GroupOptions.CaptionOptions.Font.Height = -11
|
||||||
|
GroupOptions.CaptionOptions.Font.Name = 'Tahoma'
|
||||||
|
GroupOptions.CaptionOptions.Font.Style = [fsBold]
|
||||||
|
GroupOptions.CaptionOptions.TextColor = clHighlight
|
||||||
|
GroupOptions.CaptionOptions.UseDefaultFont = False
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
308
Source/ApplicationBase/Usuarios/Views/uEditorUsuario.pas
Normal file
308
Source/ApplicationBase/Usuarios/Views/uEditorUsuario.pas
Normal file
@ -0,0 +1,308 @@
|
|||||||
|
unit uEditorUsuario;
|
||||||
|
|
||||||
|
interface
|
||||||
|
|
||||||
|
uses
|
||||||
|
Windows, Menus, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
||||||
|
Dialogs, uEditorDBItem, JvAppStorage, JvAppRegistryStorage, DB, uDAInterfaces,
|
||||||
|
uDADataTable, JvComponentBase, JvFormPlacement, ImgList, PngImageList,
|
||||||
|
StdActns, ActnList, ComCtrls, JvExComCtrls, JvStatusBar, TBX, TB2Item,
|
||||||
|
TB2Dock, TB2Toolbar, pngimage, ExtCtrls, JvExControls, JvNavigationPane,
|
||||||
|
uIEditorUsuario, uUsuariosController, uCustomView, uViewBase, uViewUsuario,
|
||||||
|
uBizUsuarios, dxLayoutLookAndFeels;
|
||||||
|
|
||||||
|
type
|
||||||
|
TfEditorUsuario = class(TfEditorDBItem, IEditorUsuario)
|
||||||
|
dxLayoutLookAndFeelList1: TdxLayoutLookAndFeelList;
|
||||||
|
dxLayoutOfficeLookAndFeel1: TdxLayoutOfficeLookAndFeel;
|
||||||
|
actCambiarPassword: TAction;
|
||||||
|
TBXSubmenuItem2: TTBXSubmenuItem;
|
||||||
|
TBXItem7: TTBXItem;
|
||||||
|
TBXItem33: TTBXItem;
|
||||||
|
frViewUsuario1: TfrViewUsuario;
|
||||||
|
procedure actEliminarUpdate(Sender: TObject);
|
||||||
|
procedure actCambiarPasswordExecute(Sender: TObject);
|
||||||
|
procedure actCambiarPasswordUpdate(Sender: TObject);
|
||||||
|
procedure actGuardarCerrarExecute(Sender: TObject);
|
||||||
|
procedure actGuardarExecute(Sender: TObject);
|
||||||
|
procedure dsDataTableDataChange(Sender: TObject; Field: TField);
|
||||||
|
procedure actRefrescarExecute(Sender: TObject);
|
||||||
|
procedure FormShow(Sender: TObject);
|
||||||
|
private
|
||||||
|
FController : IUsuariosController;
|
||||||
|
FUsuario : IBizUsuario;
|
||||||
|
FViewUsuario : IViewUsuario;
|
||||||
|
protected
|
||||||
|
function GetController : IUsuariosController;
|
||||||
|
procedure SetController (const Value : IUsuariosController);
|
||||||
|
|
||||||
|
function GetUsuario: IBizUsuario;
|
||||||
|
procedure SetUsuario(const Value: IBizUsuario);
|
||||||
|
|
||||||
|
procedure GuardarInterno;
|
||||||
|
procedure EliminarInterno;
|
||||||
|
procedure RefrescarInterno;
|
||||||
|
|
||||||
|
procedure ActualizarEstadoEditor;
|
||||||
|
procedure PonerTitulos(const ATitulo: string = '');
|
||||||
|
function HayDatos: Boolean;
|
||||||
|
function GetViewUsuario: IViewUsuario;
|
||||||
|
procedure SetViewUsuario(const Value: IViewUsuario);
|
||||||
|
property ViewUsuario: IViewUsuario read GetViewUsuario write SetViewUsuario;
|
||||||
|
public
|
||||||
|
constructor Create(AOwner: TComponent); override;
|
||||||
|
destructor Destroy; override;
|
||||||
|
property Controller : IUsuariosController read GetController write SetController;
|
||||||
|
property Usuario: IBizUsuario read GetUsuario write SetUsuario;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
implementation
|
||||||
|
|
||||||
|
{$R *.dfm}
|
||||||
|
|
||||||
|
uses
|
||||||
|
uDialogUtils, cxControls;
|
||||||
|
|
||||||
|
{ TfEditorUsuario }
|
||||||
|
|
||||||
|
var
|
||||||
|
FIDNuevoGuardado : Integer = -1;
|
||||||
|
|
||||||
|
procedure TfEditorUsuario.actCambiarPasswordExecute(Sender: TObject);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
FController.CambiarPassword(FUsuario.ID);
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorUsuario.actCambiarPasswordUpdate(Sender: TObject);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
(Sender as TAction).Enabled := not FUsuario.EsNuevo;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorUsuario.actEliminarUpdate(Sender: TObject);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
if (Sender as TAction).Enabled then
|
||||||
|
(Sender as TAction).Enabled := (FUsuario.PRIVILEGED = 0);
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorUsuario.actGuardarCerrarExecute(Sender: TObject);
|
||||||
|
begin
|
||||||
|
ShowHourglassCursor;
|
||||||
|
try
|
||||||
|
if actGuardar.Execute then
|
||||||
|
actCerrar.Execute;
|
||||||
|
finally
|
||||||
|
HideHourglassCursor;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorUsuario.actGuardarExecute(Sender: TObject);
|
||||||
|
begin
|
||||||
|
if actModificar.Enabled then
|
||||||
|
begin
|
||||||
|
GuardarInterno;
|
||||||
|
ActualizarEstadoEditor;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorUsuario.actRefrescarExecute(Sender: TObject);
|
||||||
|
begin
|
||||||
|
if actRefrescar.Enabled then
|
||||||
|
begin
|
||||||
|
RefrescarInterno;
|
||||||
|
ActualizarEstadoEditor;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorUsuario.ActualizarEstadoEditor;
|
||||||
|
begin
|
||||||
|
PonerTitulos;
|
||||||
|
if HayDatos then
|
||||||
|
begin
|
||||||
|
if (Self.Modified) and (dsDataTable.DataTable.State <> dsInsert) then
|
||||||
|
StatusBar.Panels[0].Text := ' Se han producido cambios'
|
||||||
|
else
|
||||||
|
StatusBar.Panels[0].Text := '';
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
constructor TfEditorUsuario.Create(AOwner: TComponent);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
//pgPaginas.ActivePageIndex := 0;
|
||||||
|
FViewUsuario := frViewUsuario1;
|
||||||
|
end;
|
||||||
|
|
||||||
|
destructor TfEditorUsuario.Destroy;
|
||||||
|
begin
|
||||||
|
// Utilizar mejor OnClose;
|
||||||
|
inherited;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorUsuario.dsDataTableDataChange(Sender: TObject; Field: TField);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
ActualizarEstadoEditor;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorUsuario.EliminarInterno;
|
||||||
|
begin
|
||||||
|
if (Application.MessageBox('¿Desea borrar este usuario?', 'Atención', MB_YESNO) = IDYES) then
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
if not FController.EliminarUsuario(FUsuario.ID) then
|
||||||
|
actRefrescar.Execute;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorUsuario.FormShow(Sender: TObject);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
ActualizarEstadoEditor;
|
||||||
|
if Assigned(Parent) then
|
||||||
|
begin
|
||||||
|
StatusBar.Visible := False;
|
||||||
|
actCerrar.ShortCut := 0
|
||||||
|
end
|
||||||
|
else begin
|
||||||
|
StatusBar.Visible := True;
|
||||||
|
actCerrar.ShortCut := ShortCut(VK_ESCAPE, []);
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TfEditorUsuario.GetController: IUsuariosController;
|
||||||
|
begin
|
||||||
|
Result := FController;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TfEditorUsuario.GetUsuario: IBizUsuario;
|
||||||
|
begin
|
||||||
|
Result := FUsuario;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TfEditorUsuario.GetViewUsuario: IViewUsuario;
|
||||||
|
begin
|
||||||
|
Result := FViewUsuario;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorUsuario.GuardarInterno;
|
||||||
|
var
|
||||||
|
AMensaje : String;
|
||||||
|
AContinuar : Boolean;
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
if FUsuario.EsNuevo then
|
||||||
|
begin
|
||||||
|
if (frViewUsuario1.ePassword.Text <> frViewUsuario1.eConfirmarPassword.Text) then
|
||||||
|
raise Exception.Create('La contraseña no se confirmó correctamente' + #10#13 +
|
||||||
|
'Asegúrese de que la contraseña y su confirmación sean iguales.')
|
||||||
|
else
|
||||||
|
if not FController.ValidarPassword(frViewUsuario1.ePassword.Text,
|
||||||
|
frViewUsuario1.eUsuario.Text, frViewUsuario1.eNombre.Text, AMensaje) then
|
||||||
|
raise Exception.Create(AMensaje)
|
||||||
|
else begin
|
||||||
|
FUsuario.Edit;
|
||||||
|
FUsuario.PASS := frViewUsuario1.ePassword.Text;
|
||||||
|
FUsuario.Edit;
|
||||||
|
AContinuar := True;
|
||||||
|
end;
|
||||||
|
end
|
||||||
|
else
|
||||||
|
AContinuar := True;
|
||||||
|
|
||||||
|
if AContinuar then
|
||||||
|
begin
|
||||||
|
if FController.GuardarUsuario(FUsuario) then
|
||||||
|
begin
|
||||||
|
FIDNuevoGuardado := FUsuario.ID;
|
||||||
|
FUsuario.DataTable.CancelUpdates;
|
||||||
|
Modified := False;
|
||||||
|
actRefrescar.Execute;
|
||||||
|
end;
|
||||||
|
end
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TfEditorUsuario.HayDatos: Boolean;
|
||||||
|
begin
|
||||||
|
Result := Assigned(dsDataTable.DataTable) and (dsDataTable.DataTable.State <> dsInactive)
|
||||||
|
and (not dsDataTable.DataTable.IsEmpty);
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorUsuario.PonerTitulos(const ATitulo: string);
|
||||||
|
var
|
||||||
|
FTitulo : String;
|
||||||
|
begin
|
||||||
|
if Assigned(Usuario) then
|
||||||
|
begin
|
||||||
|
if Usuario.EsNuevo then
|
||||||
|
FTitulo := 'Nuevo usuario'
|
||||||
|
else
|
||||||
|
FTitulo := 'Usuario';
|
||||||
|
|
||||||
|
if Length(Usuario.USERNAME) > 0 then
|
||||||
|
FTitulo := FTitulo + ' - ' + Usuario.USERNAME;
|
||||||
|
end;
|
||||||
|
|
||||||
|
if ReadOnly then
|
||||||
|
begin
|
||||||
|
JvNavPanelHeader.Caption := FTitulo + ' (NO MODIFICABLE)';
|
||||||
|
Caption := FTitulo + ' (NO MODIFICABLE)';
|
||||||
|
end
|
||||||
|
else
|
||||||
|
begin
|
||||||
|
JvNavPanelHeader.Caption := FTitulo;
|
||||||
|
Caption := FTitulo;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorUsuario.RefrescarInterno;
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
|
||||||
|
if (FIDNuevoGuardado > 0) and (FUsuario.ID <> FIDNuevoGuardado) then
|
||||||
|
begin
|
||||||
|
if (dsDataTable.DataTable.IsEmpty) or (not ModifiedQuery) then
|
||||||
|
Exit; // No continuar con el refresco
|
||||||
|
|
||||||
|
dsDataTable.DataTable.DisableControls; //<- No descomentar
|
||||||
|
ShowHourglassCursor;
|
||||||
|
try
|
||||||
|
dsDataTable.DataTable.First;
|
||||||
|
if dsDataTable.DataTable.Locate('ID', FIDNuevoGuardado, []) then
|
||||||
|
FIDNuevoGuardado := -1;
|
||||||
|
finally
|
||||||
|
dsDataTable.DataTable.EnableControls; //<- No descomentar
|
||||||
|
HideHourglassCursor;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorUsuario.SetController(const Value: IUsuariosController);
|
||||||
|
begin
|
||||||
|
FController := Value;
|
||||||
|
if Assigned(FViewUsuario) and Assigned(FController) then
|
||||||
|
FViewUsuario.Controller := FController;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorUsuario.SetUsuario(const Value: IBizUsuario);
|
||||||
|
begin
|
||||||
|
FUsuario := Value;
|
||||||
|
dsDataTable.DataTable := FUsuario.DataTable;
|
||||||
|
|
||||||
|
if Assigned(FViewUsuario) and Assigned(Usuario) then
|
||||||
|
FViewUsuario.Usuario := Usuario;
|
||||||
|
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorUsuario.SetViewUsuario(const Value: IViewUsuario);
|
||||||
|
begin
|
||||||
|
FViewUsuario := Value;
|
||||||
|
|
||||||
|
if Assigned(FViewUsuario) and Assigned(Usuario) then
|
||||||
|
FViewUsuario.Usuario := Usuario;
|
||||||
|
end;
|
||||||
|
|
||||||
|
end.
|
||||||
71
Source/ApplicationBase/Usuarios/Views/uEditorUsuarios.dfm
Normal file
71
Source/ApplicationBase/Usuarios/Views/uEditorUsuarios.dfm
Normal file
@ -0,0 +1,71 @@
|
|||||||
|
inherited fEditorUsuarios: TfEditorUsuarios
|
||||||
|
Caption = 'fEditorUsuarios'
|
||||||
|
ClientHeight = 493
|
||||||
|
ClientWidth = 840
|
||||||
|
ExplicitWidth = 848
|
||||||
|
ExplicitHeight = 520
|
||||||
|
PixelsPerInch = 96
|
||||||
|
TextHeight = 13
|
||||||
|
inherited JvNavPanelHeader: TJvNavPanelHeader
|
||||||
|
Width = 840
|
||||||
|
ExplicitWidth = 840
|
||||||
|
inherited Image1: TImage
|
||||||
|
Left = 813
|
||||||
|
ExplicitLeft = 813
|
||||||
|
end
|
||||||
|
end
|
||||||
|
inherited TBXDock: TTBXDock
|
||||||
|
Width = 840
|
||||||
|
ExplicitWidth = 840
|
||||||
|
inherited tbxMain: TTBXToolbar
|
||||||
|
ExplicitWidth = 348
|
||||||
|
object TBXItem39: TTBXItem [8]
|
||||||
|
Action = actCambiarPassword
|
||||||
|
end
|
||||||
|
end
|
||||||
|
inherited tbxMenu: TTBXToolbar
|
||||||
|
ExplicitWidth = 840
|
||||||
|
object TBXSubmenuItem2: TTBXSubmenuItem [4]
|
||||||
|
Caption = '&Herramientas'
|
||||||
|
object TBXItem38: TTBXItem
|
||||||
|
Action = actCambiarPassword
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
inherited tbxFiltro: TTBXToolbar
|
||||||
|
Left = 348
|
||||||
|
DockPos = 346
|
||||||
|
Visible = False
|
||||||
|
ExplicitLeft = 348
|
||||||
|
end
|
||||||
|
end
|
||||||
|
inherited StatusBar: TStatusBar
|
||||||
|
Top = 474
|
||||||
|
Width = 840
|
||||||
|
ExplicitTop = 474
|
||||||
|
ExplicitWidth = 840
|
||||||
|
end
|
||||||
|
inherited EditorActionList: TActionList
|
||||||
|
inherited actNuevo: TAction
|
||||||
|
OnExecute = actNuevoExecute
|
||||||
|
end
|
||||||
|
inherited actModificar: TAction
|
||||||
|
OnExecute = actModificarExecute
|
||||||
|
end
|
||||||
|
inherited actPrevisualizar: TAction
|
||||||
|
Visible = False
|
||||||
|
end
|
||||||
|
inherited actImprimir: TAction
|
||||||
|
Visible = False
|
||||||
|
end
|
||||||
|
inherited actDuplicar: TAction
|
||||||
|
Visible = False
|
||||||
|
end
|
||||||
|
object actCambiarPassword: TAction
|
||||||
|
Category = 'Herramientas'
|
||||||
|
Caption = 'Cambiar la contrase'#241'a...'
|
||||||
|
OnExecute = actCambiarPasswordExecute
|
||||||
|
OnUpdate = actCambiarPasswordUpdate
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
239
Source/ApplicationBase/Usuarios/Views/uEditorUsuarios.pas
Normal file
239
Source/ApplicationBase/Usuarios/Views/uEditorUsuarios.pas
Normal file
@ -0,0 +1,239 @@
|
|||||||
|
unit uEditorUsuarios;
|
||||||
|
|
||||||
|
interface
|
||||||
|
|
||||||
|
uses
|
||||||
|
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
||||||
|
Dialogs, uEditorGridBase, Menus, JvAppStorage, JvAppRegistryStorage, DB,
|
||||||
|
uDAInterfaces, uDADataTable, JvComponentBase, JvFormPlacement, ImgList,
|
||||||
|
PngImageList, StdActns, ActnList, ComCtrls, JvExComCtrls, JvStatusBar, TBX,
|
||||||
|
TB2ExtItems, TBXExtItems, TB2Item, TB2Dock, TB2Toolbar, pngimage, ExtCtrls,
|
||||||
|
JvExControls, JvNavigationPane, uCustomView, uViewBase, uViewGridBase,
|
||||||
|
uViewGrid, uViewUsuarios, uIEditorUsuarios, uUsuariosController,
|
||||||
|
uBizUsuarios;
|
||||||
|
|
||||||
|
type
|
||||||
|
TfEditorUsuarios = class(TfEditorGridBase, IEditorUsuarios)
|
||||||
|
actCambiarPassword: TAction;
|
||||||
|
TBXSubmenuItem2: TTBXSubmenuItem;
|
||||||
|
TBXItem38: TTBXItem;
|
||||||
|
TBXItem39: TTBXItem;
|
||||||
|
procedure actEliminarUpdate(Sender: TObject);
|
||||||
|
procedure actCambiarPasswordUpdate(Sender: TObject);
|
||||||
|
procedure actCambiarPasswordExecute(Sender: TObject);
|
||||||
|
procedure actNuevoExecute(Sender: TObject);
|
||||||
|
procedure actEliminarExecute(Sender: TObject);
|
||||||
|
procedure actModificarExecute(Sender: TObject);
|
||||||
|
procedure FormShow(Sender: TObject);
|
||||||
|
private
|
||||||
|
FUsuarios : IBizUsuario;
|
||||||
|
FController : IUsuariosController;
|
||||||
|
protected
|
||||||
|
function GetController : IUsuariosController;
|
||||||
|
procedure SetController (const Value : IUsuariosController);
|
||||||
|
|
||||||
|
function GetUsuarios: IBizUsuario;
|
||||||
|
procedure SetUsuarios(const Value: IBizUsuario);
|
||||||
|
|
||||||
|
procedure ActualizarEstadoEditor;
|
||||||
|
procedure NuevoInterno;
|
||||||
|
procedure EliminarInterno;
|
||||||
|
procedure ModificarInterno;
|
||||||
|
procedure ImprimirInterno;
|
||||||
|
procedure PrevisualizarInterno;
|
||||||
|
procedure DuplicarInterno;
|
||||||
|
|
||||||
|
//Si queremos crear otra vista para el editor heredado solo tendriamos que
|
||||||
|
//sobreescribir este metodo
|
||||||
|
procedure AsignarVista; virtual;
|
||||||
|
public
|
||||||
|
procedure PonerTitulos(const ATitulo: string = '');
|
||||||
|
property Usuarios: IBizUsuario read GetUsuarios write SetUsuarios;
|
||||||
|
property Controller : IUsuariosController read GetController write SetController;
|
||||||
|
constructor Create(AOwner: TComponent); override;
|
||||||
|
destructor Destroy; override;
|
||||||
|
end;
|
||||||
|
|
||||||
|
implementation
|
||||||
|
|
||||||
|
{$R *.dfm}
|
||||||
|
|
||||||
|
uses
|
||||||
|
uDialogUtils;
|
||||||
|
|
||||||
|
{ TfEditorUsuarios }
|
||||||
|
|
||||||
|
procedure TfEditorUsuarios.actCambiarPasswordExecute(Sender: TObject);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
FController.CambiarPassword(FUsuarios.ID);
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorUsuarios.actCambiarPasswordUpdate(Sender: TObject);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
{ if (Sender as TAction).Enabled then
|
||||||
|
(Sender as TAction).Enabled := HayDatos;}
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorUsuarios.actEliminarExecute(Sender: TObject);
|
||||||
|
begin
|
||||||
|
if actEliminar.Enabled then
|
||||||
|
begin
|
||||||
|
EliminarInterno;
|
||||||
|
ActualizarEstadoEditor;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorUsuarios.actEliminarUpdate(Sender: TObject);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
if (Sender as TAction).Enabled then
|
||||||
|
(Sender as TAction).Enabled := (FUsuarios.PRIVILEGED = 0);
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorUsuarios.actModificarExecute(Sender: TObject);
|
||||||
|
begin
|
||||||
|
if actModificar.Enabled then
|
||||||
|
begin
|
||||||
|
ModificarInterno;
|
||||||
|
ActualizarEstadoEditor;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorUsuarios.actNuevoExecute(Sender: TObject);
|
||||||
|
begin
|
||||||
|
if actNuevo.Enabled then
|
||||||
|
begin
|
||||||
|
NuevoInterno;
|
||||||
|
ActualizarEstadoEditor;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorUsuarios.ActualizarEstadoEditor;
|
||||||
|
begin
|
||||||
|
PonerTitulos;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorUsuarios.AsignarVista;
|
||||||
|
begin
|
||||||
|
ViewGrid := CreateView(TfrViewUsuarios) as IViewUsuarios;
|
||||||
|
end;
|
||||||
|
|
||||||
|
constructor TfEditorUsuarios.Create(AOwner: TComponent);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
AsignarVista;
|
||||||
|
end;
|
||||||
|
|
||||||
|
destructor TfEditorUsuarios.Destroy;
|
||||||
|
begin
|
||||||
|
FUsuarios := NIL;
|
||||||
|
FController := NIl;
|
||||||
|
|
||||||
|
inherited;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorUsuarios.DuplicarInterno;
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorUsuarios.EliminarInterno;
|
||||||
|
begin
|
||||||
|
if (ShowConfirmMessage('Eliminar un usuario', Format('¿Desea borrar el usuario %s?', [FUsuarios.USERNAME])) = IDYES) then
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
//Para que en el caso de no poderse realizar la operación se refresquen
|
||||||
|
//los datos y no nos permita eliminar un registro a la segunda
|
||||||
|
FController.EliminarUsuario(FUsuarios.ID);
|
||||||
|
actRefrescar.Execute;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorUsuarios.FormShow(Sender: TObject);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
ActualizarEstadoEditor;
|
||||||
|
if Assigned(Parent) then
|
||||||
|
begin
|
||||||
|
StatusBar.Visible := False;
|
||||||
|
actCerrar.ShortCut := 0
|
||||||
|
end
|
||||||
|
else begin
|
||||||
|
StatusBar.Visible := True;
|
||||||
|
actCerrar.ShortCut := ShortCut(VK_ESCAPE, []);
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TfEditorUsuarios.GetController: IUsuariosController;
|
||||||
|
begin
|
||||||
|
Result := FController;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TfEditorUsuarios.GetUsuarios: IBizUsuario;
|
||||||
|
begin
|
||||||
|
Result := FUsuarios;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorUsuarios.ImprimirInterno;
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorUsuarios.ModificarInterno;
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
FController.VerUsuario(FUsuarios.ID);
|
||||||
|
actRefrescar.Execute;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorUsuarios.NuevoInterno;
|
||||||
|
var
|
||||||
|
ANuevoUsuario : IBizUsuario;
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
ANuevoUsuario := FController.NuevoUsuario;
|
||||||
|
FController.VerUsuario(ANuevoUsuario);
|
||||||
|
actRefrescar.Execute;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorUsuarios.PonerTitulos(const ATitulo: string);
|
||||||
|
var
|
||||||
|
FTitulo : String;
|
||||||
|
begin
|
||||||
|
FTitulo := 'Lista de usuarios';
|
||||||
|
|
||||||
|
if ReadOnly then
|
||||||
|
begin
|
||||||
|
JvNavPanelHeader.Caption := FTitulo + ' (NO MODIFICABLE)';
|
||||||
|
Caption := FTitulo + ' (NO MODIFICABLE)';
|
||||||
|
end
|
||||||
|
else
|
||||||
|
begin
|
||||||
|
JvNavPanelHeader.Caption := FTitulo;
|
||||||
|
Caption := FTitulo;
|
||||||
|
end;
|
||||||
|
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorUsuarios.PrevisualizarInterno;
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
//
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorUsuarios.SetController(const Value: IUsuariosController);
|
||||||
|
begin
|
||||||
|
FController := Value;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorUsuarios.SetUsuarios(const Value: IBizUsuario);
|
||||||
|
begin
|
||||||
|
FUsuarios := Value;
|
||||||
|
dsDataTable.DataTable := FUsuarios.DataTable;
|
||||||
|
if Assigned(ViewGrid) then
|
||||||
|
(ViewGrid as IViewUsuarios).Usuarios := FUsuarios;
|
||||||
|
end;
|
||||||
|
|
||||||
|
end.
|
||||||
123
Source/ApplicationBase/Usuarios/Views/uUsuario.dfm
Normal file
123
Source/ApplicationBase/Usuarios/Views/uUsuario.dfm
Normal file
@ -0,0 +1,123 @@
|
|||||||
|
object fUsuario: TfUsuario
|
||||||
|
Left = 523
|
||||||
|
Top = 415
|
||||||
|
BorderStyle = bsDialog
|
||||||
|
Caption = 'Datos del usuario'
|
||||||
|
ClientHeight = 309
|
||||||
|
ClientWidth = 308
|
||||||
|
Color = clBtnFace
|
||||||
|
Font.Charset = DEFAULT_CHARSET
|
||||||
|
Font.Color = clWindowText
|
||||||
|
Font.Height = -11
|
||||||
|
Font.Name = 'MS Sans Serif'
|
||||||
|
Font.Style = []
|
||||||
|
OldCreateOrder = False
|
||||||
|
Position = poScreenCenter
|
||||||
|
PixelsPerInch = 96
|
||||||
|
TextHeight = 13
|
||||||
|
object Button1: TButton
|
||||||
|
Left = 138
|
||||||
|
Top = 273
|
||||||
|
Width = 75
|
||||||
|
Height = 25
|
||||||
|
Action = actAceptar
|
||||||
|
TabOrder = 1
|
||||||
|
end
|
||||||
|
object Button2: TButton
|
||||||
|
Left = 226
|
||||||
|
Top = 273
|
||||||
|
Width = 75
|
||||||
|
Height = 25
|
||||||
|
Action = actCancelar
|
||||||
|
TabOrder = 2
|
||||||
|
end
|
||||||
|
object TabControl1: TPageControl
|
||||||
|
Left = 8
|
||||||
|
Top = 8
|
||||||
|
Width = 293
|
||||||
|
Height = 257
|
||||||
|
ActivePage = pagUsuario
|
||||||
|
TabOrder = 0
|
||||||
|
object pagUsuario: TTabSheet
|
||||||
|
Caption = 'Usuario'
|
||||||
|
object GroupBox1: TGroupBox
|
||||||
|
Left = 6
|
||||||
|
Top = 5
|
||||||
|
Width = 274
|
||||||
|
Height = 99
|
||||||
|
Caption = 'GroupBox1'
|
||||||
|
TabOrder = 0
|
||||||
|
DesignSize = (
|
||||||
|
274
|
||||||
|
99)
|
||||||
|
object Label4: TLabel
|
||||||
|
Left = 34
|
||||||
|
Top = 28
|
||||||
|
Width = 39
|
||||||
|
Height = 13
|
||||||
|
Caption = 'Usuario:'
|
||||||
|
Transparent = False
|
||||||
|
end
|
||||||
|
object Label5: TLabel
|
||||||
|
Left = 16
|
||||||
|
Top = 60
|
||||||
|
Width = 57
|
||||||
|
Height = 13
|
||||||
|
Caption = 'Contrase'#241'a:'
|
||||||
|
Transparent = False
|
||||||
|
end
|
||||||
|
object edtUser: TEdit
|
||||||
|
Left = 88
|
||||||
|
Top = 24
|
||||||
|
Width = 169
|
||||||
|
Height = 21
|
||||||
|
Anchors = [akLeft, akTop, akRight]
|
||||||
|
TabOrder = 0
|
||||||
|
end
|
||||||
|
object edtPassword: TEdit
|
||||||
|
Left = 88
|
||||||
|
Top = 56
|
||||||
|
Width = 169
|
||||||
|
Height = 21
|
||||||
|
Anchors = [akLeft, akTop, akRight]
|
||||||
|
PasswordChar = '*'
|
||||||
|
TabOrder = 1
|
||||||
|
end
|
||||||
|
end
|
||||||
|
object GroupBox2: TGroupBox
|
||||||
|
Left = 7
|
||||||
|
Top = 111
|
||||||
|
Width = 273
|
||||||
|
Height = 110
|
||||||
|
Caption = 'Permisos y seguridad'
|
||||||
|
TabOrder = 1
|
||||||
|
object Label1: TLabel
|
||||||
|
Left = 47
|
||||||
|
Top = 36
|
||||||
|
Width = 26
|
||||||
|
Height = 13
|
||||||
|
Caption = 'Perfil:'
|
||||||
|
Transparent = False
|
||||||
|
end
|
||||||
|
object cbPerfil: TComboBox
|
||||||
|
Left = 88
|
||||||
|
Top = 28
|
||||||
|
Width = 169
|
||||||
|
Height = 21
|
||||||
|
ItemHeight = 13
|
||||||
|
TabOrder = 0
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
object ActionList: TActionList
|
||||||
|
Left = 8
|
||||||
|
Top = 272
|
||||||
|
object actAceptar: TAction
|
||||||
|
Caption = '&Aceptar'
|
||||||
|
end
|
||||||
|
object actCancelar: TAction
|
||||||
|
Caption = '&Cancelar'
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
39
Source/ApplicationBase/Usuarios/Views/uUsuario.pas
Normal file
39
Source/ApplicationBase/Usuarios/Views/uUsuario.pas
Normal file
@ -0,0 +1,39 @@
|
|||||||
|
unit uUsuario;
|
||||||
|
|
||||||
|
interface
|
||||||
|
|
||||||
|
uses
|
||||||
|
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
||||||
|
Dialogs, StdCtrls, ComCtrls, ActnList;
|
||||||
|
|
||||||
|
type
|
||||||
|
TfUsuario = class(TForm)
|
||||||
|
Button1: TButton;
|
||||||
|
Button2: TButton;
|
||||||
|
TabControl1: TPageControl;
|
||||||
|
pagUsuario: TTabSheet;
|
||||||
|
GroupBox1: TGroupBox;
|
||||||
|
Label4: TLabel;
|
||||||
|
Label5: TLabel;
|
||||||
|
edtUser: TEdit;
|
||||||
|
edtPassword: TEdit;
|
||||||
|
GroupBox2: TGroupBox;
|
||||||
|
Label1: TLabel;
|
||||||
|
cbPerfil: TComboBox;
|
||||||
|
ActionList: TActionList;
|
||||||
|
actAceptar: TAction;
|
||||||
|
actCancelar: TAction;
|
||||||
|
private
|
||||||
|
{ Private declarations }
|
||||||
|
public
|
||||||
|
{ Public declarations }
|
||||||
|
end;
|
||||||
|
|
||||||
|
var
|
||||||
|
fUsuario: TfUsuario;
|
||||||
|
|
||||||
|
implementation
|
||||||
|
|
||||||
|
{$R *.dfm}
|
||||||
|
|
||||||
|
end.
|
||||||
118
Source/ApplicationBase/Usuarios/Views/uUsuarios.dfm
Normal file
118
Source/ApplicationBase/Usuarios/Views/uUsuarios.dfm
Normal file
@ -0,0 +1,118 @@
|
|||||||
|
object fUsuarios: TfUsuarios
|
||||||
|
Left = 490
|
||||||
|
Top = 417
|
||||||
|
BorderStyle = bsDialog
|
||||||
|
Caption = 'Administraci'#243'n de usuarios'
|
||||||
|
ClientHeight = 401
|
||||||
|
ClientWidth = 550
|
||||||
|
Color = clBtnFace
|
||||||
|
Font.Charset = DEFAULT_CHARSET
|
||||||
|
Font.Color = clWindowText
|
||||||
|
Font.Height = -11
|
||||||
|
Font.Name = 'MS Sans Serif'
|
||||||
|
Font.Style = []
|
||||||
|
OldCreateOrder = False
|
||||||
|
Position = poScreenCenter
|
||||||
|
OnCreate = FormCreate
|
||||||
|
PixelsPerInch = 96
|
||||||
|
TextHeight = 13
|
||||||
|
object Grid: TDBGrid
|
||||||
|
Left = 8
|
||||||
|
Top = 40
|
||||||
|
Width = 425
|
||||||
|
Height = 313
|
||||||
|
DataSource = DADataSource
|
||||||
|
TabOrder = 0
|
||||||
|
TitleFont.Charset = DEFAULT_CHARSET
|
||||||
|
TitleFont.Color = clWindowText
|
||||||
|
TitleFont.Height = -11
|
||||||
|
TitleFont.Name = 'MS Sans Serif'
|
||||||
|
TitleFont.Style = []
|
||||||
|
end
|
||||||
|
object JvNavPanelHeader1: TJvNavPanelHeader
|
||||||
|
Left = 0
|
||||||
|
Top = 0
|
||||||
|
Width = 550
|
||||||
|
Align = alTop
|
||||||
|
Caption = 'Panel de control'
|
||||||
|
Font.Charset = DEFAULT_CHARSET
|
||||||
|
Font.Color = clWindow
|
||||||
|
Font.Height = -16
|
||||||
|
Font.Name = 'Arial'
|
||||||
|
Font.Style = [fsBold]
|
||||||
|
ParentFont = False
|
||||||
|
ColorFrom = 8684164
|
||||||
|
ColorTo = 8684164
|
||||||
|
ImageIndex = 0
|
||||||
|
StyleManager = dmBase.StyleManager
|
||||||
|
ParentStyleManager = False
|
||||||
|
end
|
||||||
|
object Button1: TButton
|
||||||
|
Left = 448
|
||||||
|
Top = 40
|
||||||
|
Width = 91
|
||||||
|
Height = 25
|
||||||
|
Action = actNuevo
|
||||||
|
TabOrder = 2
|
||||||
|
end
|
||||||
|
object Button2: TButton
|
||||||
|
Left = 448
|
||||||
|
Top = 136
|
||||||
|
Width = 91
|
||||||
|
Height = 25
|
||||||
|
Action = actModificar
|
||||||
|
TabOrder = 3
|
||||||
|
end
|
||||||
|
object Button3: TButton
|
||||||
|
Left = 448
|
||||||
|
Top = 176
|
||||||
|
Width = 91
|
||||||
|
Height = 25
|
||||||
|
Action = actEliminar
|
||||||
|
TabOrder = 4
|
||||||
|
end
|
||||||
|
object Button4: TButton
|
||||||
|
Left = 448
|
||||||
|
Top = 368
|
||||||
|
Width = 91
|
||||||
|
Height = 25
|
||||||
|
Action = actCerrar
|
||||||
|
TabOrder = 5
|
||||||
|
end
|
||||||
|
object Button5: TButton
|
||||||
|
Left = 448
|
||||||
|
Top = 96
|
||||||
|
Width = 91
|
||||||
|
Height = 25
|
||||||
|
Action = actCambiarPassword
|
||||||
|
TabOrder = 6
|
||||||
|
end
|
||||||
|
object DADataSource: TDADataSource
|
||||||
|
Left = 368
|
||||||
|
Top = 40
|
||||||
|
end
|
||||||
|
object ActionList: TActionList
|
||||||
|
Left = 8
|
||||||
|
Top = 360
|
||||||
|
object actCerrar: TAction
|
||||||
|
Caption = '&Cerrar'
|
||||||
|
OnExecute = actCerrarExecute
|
||||||
|
end
|
||||||
|
object actNuevo: TAction
|
||||||
|
Caption = 'Nuevo usuario'
|
||||||
|
OnUpdate = actNuevoUpdate
|
||||||
|
end
|
||||||
|
object actCambiarPassword: TAction
|
||||||
|
Caption = 'Cambiar contrase'#241'a'
|
||||||
|
OnUpdate = actCambiarPasswordUpdate
|
||||||
|
end
|
||||||
|
object actModificar: TAction
|
||||||
|
Caption = 'Modificar usuario'
|
||||||
|
OnUpdate = actModificarUpdate
|
||||||
|
end
|
||||||
|
object actEliminar: TAction
|
||||||
|
Caption = 'Eliminar usuario'
|
||||||
|
OnUpdate = actEliminarUpdate
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
89
Source/ApplicationBase/Usuarios/Views/uUsuarios.pas
Normal file
89
Source/ApplicationBase/Usuarios/Views/uUsuarios.pas
Normal file
@ -0,0 +1,89 @@
|
|||||||
|
unit uUsuarios;
|
||||||
|
|
||||||
|
interface
|
||||||
|
|
||||||
|
uses
|
||||||
|
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
||||||
|
Dialogs, DB, uDADataTable, dbcgrids, uDataModuleUsuarios, StdCtrls,
|
||||||
|
DBCtrls, JvExControls, JvComponent, JvNavigationPane,
|
||||||
|
Grids, DBGrids, ActnList, uDAInterfaces;
|
||||||
|
|
||||||
|
type
|
||||||
|
TfUsuarios = class(TForm)
|
||||||
|
DADataSource: TDADataSource;
|
||||||
|
Grid: TDBGrid;
|
||||||
|
JvNavPanelHeader1: TJvNavPanelHeader;
|
||||||
|
Button1: TButton;
|
||||||
|
Button2: TButton;
|
||||||
|
Button3: TButton;
|
||||||
|
Button4: TButton;
|
||||||
|
Button5: TButton;
|
||||||
|
ActionList: TActionList;
|
||||||
|
actCerrar: TAction;
|
||||||
|
actNuevo: TAction;
|
||||||
|
actCambiarPassword: TAction;
|
||||||
|
actModificar: TAction;
|
||||||
|
actEliminar: TAction;
|
||||||
|
procedure actCerrarExecute(Sender: TObject);
|
||||||
|
procedure FormCreate(Sender: TObject);
|
||||||
|
procedure actEliminarUpdate(Sender: TObject);
|
||||||
|
procedure actModificarUpdate(Sender: TObject);
|
||||||
|
procedure actCambiarPasswordUpdate(Sender: TObject);
|
||||||
|
procedure actNuevoUpdate(Sender: TObject);
|
||||||
|
private
|
||||||
|
{ Private declarations }
|
||||||
|
public
|
||||||
|
{ Public declarations }
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure AdministrarUsuarios;
|
||||||
|
|
||||||
|
implementation
|
||||||
|
|
||||||
|
{$R *.dfm}
|
||||||
|
|
||||||
|
|
||||||
|
procedure AdministrarUsuarios;
|
||||||
|
var
|
||||||
|
fUsuarios: TfUsuarios;
|
||||||
|
begin
|
||||||
|
fUsuarios := TfUsuarios.Create(NIL);
|
||||||
|
try
|
||||||
|
fUsuarios.ShowModal;
|
||||||
|
finally
|
||||||
|
fUsuarios.Free;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfUsuarios.actCerrarExecute(Sender: TObject);
|
||||||
|
begin
|
||||||
|
Close;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfUsuarios.FormCreate(Sender: TObject);
|
||||||
|
begin
|
||||||
|
{ DADataSource.DataTable := dmUsuarios.tbl_Usuarios;
|
||||||
|
DADataSource.DataTable.Active := True;}
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfUsuarios.actEliminarUpdate(Sender: TObject);
|
||||||
|
begin
|
||||||
|
(Sender as TAction).Enabled := not (DADataSource.DataTable.IsEmpty);
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfUsuarios.actModificarUpdate(Sender: TObject);
|
||||||
|
begin
|
||||||
|
(Sender as TAction).Enabled := not (DADataSource.DataTable.IsEmpty);
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfUsuarios.actCambiarPasswordUpdate(Sender: TObject);
|
||||||
|
begin
|
||||||
|
(Sender as TAction).Enabled := not (DADataSource.DataTable.IsEmpty);
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfUsuarios.actNuevoUpdate(Sender: TObject);
|
||||||
|
begin
|
||||||
|
(Sender as TAction).Enabled := Assigned(DADataSource.DataTable);
|
||||||
|
end;
|
||||||
|
|
||||||
|
end.
|
||||||
@ -0,0 +1,33 @@
|
|||||||
|
unit uUsuariosViewRegister;
|
||||||
|
|
||||||
|
interface
|
||||||
|
|
||||||
|
procedure RegisterViews;
|
||||||
|
procedure UnregisterViews;
|
||||||
|
|
||||||
|
implementation
|
||||||
|
|
||||||
|
uses
|
||||||
|
uEditorRegistryUtils, uEditorLogin, Dialogs, uEditorUsuario, uEditorUsuarios,
|
||||||
|
uEditorPerfilesUsuario, uEditorPerfilUsuario;
|
||||||
|
|
||||||
|
procedure RegisterViews;
|
||||||
|
begin
|
||||||
|
EditorRegistry.RegisterClass(TfEditorLogin, 'EditorLogin');
|
||||||
|
EditorRegistry.RegisterClass(TfEditorUsuarios, 'EditorUsuarios');
|
||||||
|
EditorRegistry.RegisterClass(TfEditorUsuario, 'EditorUsuario');
|
||||||
|
EditorRegistry.RegisterClass(TfEditorPerfilesUsuario, 'EditorPerfilesUsuario');
|
||||||
|
EditorRegistry.RegisterClass(TfEditorPerfilUsuario, 'EditorPerfilUsuario');
|
||||||
|
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure UnregisterViews;
|
||||||
|
begin
|
||||||
|
EditorRegistry.UnRegisterClass(TfEditorLogin);
|
||||||
|
EditorRegistry.UnRegisterClass(TfEditorUsuarios);
|
||||||
|
EditorRegistry.UnRegisterClass(TfEditorUsuario);
|
||||||
|
EditorRegistry.UnRegisterClass(TfEditorPerfilesUsuario);
|
||||||
|
EditorRegistry.UnRegisterClass(TfEditorPerfilUsuario);
|
||||||
|
end;
|
||||||
|
|
||||||
|
end.
|
||||||
68
Source/ApplicationBase/Usuarios/Views/uViewPerfilUsuario.dfm
Normal file
68
Source/ApplicationBase/Usuarios/Views/uViewPerfilUsuario.dfm
Normal file
@ -0,0 +1,68 @@
|
|||||||
|
inherited frViewPerfilUsuario: TfrViewPerfilUsuario
|
||||||
|
Width = 509
|
||||||
|
Height = 122
|
||||||
|
ExplicitWidth = 509
|
||||||
|
ExplicitHeight = 122
|
||||||
|
object dxLayoutControlArticulo: TdxLayoutControl
|
||||||
|
Left = 0
|
||||||
|
Top = 0
|
||||||
|
Width = 509
|
||||||
|
Height = 113
|
||||||
|
Align = alTop
|
||||||
|
ParentBackground = True
|
||||||
|
TabOrder = 0
|
||||||
|
AutoContentSizes = [acsWidth]
|
||||||
|
DesignSize = (
|
||||||
|
509
|
||||||
|
113)
|
||||||
|
object eNombre: TcxDBTextEdit
|
||||||
|
Left = 68
|
||||||
|
Top = 28
|
||||||
|
Anchors = [akLeft, akTop, akRight]
|
||||||
|
DataBinding.DataField = 'USERNAME'
|
||||||
|
DataBinding.DataSource = dsUsuario
|
||||||
|
Style.BorderColor = clWindowFrame
|
||||||
|
Style.BorderStyle = ebs3D
|
||||||
|
Style.Color = 14745599
|
||||||
|
Style.HotTrack = False
|
||||||
|
Style.LookAndFeel.Kind = lfStandard
|
||||||
|
Style.LookAndFeel.NativeStyle = True
|
||||||
|
StyleDisabled.LookAndFeel.Kind = lfStandard
|
||||||
|
StyleDisabled.LookAndFeel.NativeStyle = True
|
||||||
|
StyleFocused.LookAndFeel.Kind = lfStandard
|
||||||
|
StyleFocused.LookAndFeel.NativeStyle = True
|
||||||
|
StyleHot.LookAndFeel.Kind = lfStandard
|
||||||
|
StyleHot.LookAndFeel.NativeStyle = True
|
||||||
|
TabOrder = 0
|
||||||
|
Width = 164
|
||||||
|
end
|
||||||
|
object dxLayoutGroup1: TdxLayoutGroup
|
||||||
|
ShowCaption = False
|
||||||
|
Hidden = True
|
||||||
|
ShowBorder = False
|
||||||
|
object dxLayoutGroup2: TdxLayoutGroup
|
||||||
|
AutoAligns = []
|
||||||
|
AlignHorz = ahClient
|
||||||
|
AlignVert = avClient
|
||||||
|
Caption = 'Datos del perfil'
|
||||||
|
object dxLayoutControlArticuloItem3: TdxLayoutItem
|
||||||
|
AutoAligns = [aaVertical]
|
||||||
|
AlignHorz = ahClient
|
||||||
|
Caption = 'Nombre:'
|
||||||
|
Control = eNombre
|
||||||
|
ControlOptions.ShowBorder = False
|
||||||
|
end
|
||||||
|
end
|
||||||
|
object dxLayoutControlArticuloGroup3: TdxLayoutGroup
|
||||||
|
Caption = 'New Group'
|
||||||
|
ShowCaption = False
|
||||||
|
LayoutDirection = ldHorizontal
|
||||||
|
ShowBorder = False
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
object dsUsuario: TDADataSource
|
||||||
|
Left = 152
|
||||||
|
Top = 24
|
||||||
|
end
|
||||||
|
end
|
||||||
82
Source/ApplicationBase/Usuarios/Views/uViewPerfilUsuario.pas
Normal file
82
Source/ApplicationBase/Usuarios/Views/uViewPerfilUsuario.pas
Normal file
@ -0,0 +1,82 @@
|
|||||||
|
unit uViewPerfilUsuario;
|
||||||
|
|
||||||
|
interface
|
||||||
|
|
||||||
|
uses
|
||||||
|
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
||||||
|
Dialogs, uViewBase, uUsuariosController, cxGraphics, ImgList, PngImageList,
|
||||||
|
dxLayoutControl, cxCurrencyEdit, uCustomView, cxControls, DB, uDAInterfaces,
|
||||||
|
uDADataTable, ActnList, cxCheckBox, cxDBEdit, cxMaskEdit, cxSpinEdit,
|
||||||
|
cxHyperLinkEdit, cxContainer, cxEdit, cxTextEdit, Buttons, PngSpeedButton,
|
||||||
|
uBizUsuarios, cxDropDownEdit;
|
||||||
|
|
||||||
|
type
|
||||||
|
IViewPerfilUsuario = interface(IViewBase)
|
||||||
|
['{555B4B64-BE32-4036-B741-DCC7AD80D7B9}']
|
||||||
|
function GetController : IUsuariosController;
|
||||||
|
procedure SetController (const Value : IUsuariosController);
|
||||||
|
property Controller : IUsuariosController read GetController write SetController;
|
||||||
|
|
||||||
|
function GetPerfilUsuario: IBizPerfilUsuario;
|
||||||
|
procedure SetPerfilUsuario(const Value: IBizPerfilUsuario);
|
||||||
|
property PerfilUsuario: IBizPerfilUsuario read GetPerfilUsuario write SetPerfilUsuario;
|
||||||
|
end;
|
||||||
|
|
||||||
|
TfrViewPerfilUsuario = class(TfrViewBase, IViewPerfilUsuario)
|
||||||
|
dsUsuario: TDADataSource;
|
||||||
|
dxLayoutControlArticulo: TdxLayoutControl;
|
||||||
|
eNombre: TcxDBTextEdit;
|
||||||
|
dxLayoutGroup1: TdxLayoutGroup;
|
||||||
|
dxLayoutGroup2: TdxLayoutGroup;
|
||||||
|
dxLayoutControlArticuloItem3: TdxLayoutItem;
|
||||||
|
dxLayoutControlArticuloGroup3: TdxLayoutGroup;
|
||||||
|
protected
|
||||||
|
FController: IUsuariosController;
|
||||||
|
FPerfilUsuario : IBizPerfilUsuario;
|
||||||
|
|
||||||
|
function GetController : IUsuariosController;
|
||||||
|
procedure SetController (const Value : IUsuariosController);
|
||||||
|
|
||||||
|
function GetPerfilUsuario: IBizPerfilUsuario;
|
||||||
|
procedure SetPerfilUsuario(const Value: IBizPerfilUsuario);
|
||||||
|
public
|
||||||
|
property PerfilUsuario: IBizPerfilUsuario read GetPerfilUsuario write SetPerfilUsuario;
|
||||||
|
property Controller : IUsuariosController read GetController write SetController;
|
||||||
|
end;
|
||||||
|
|
||||||
|
implementation
|
||||||
|
|
||||||
|
{$R *.dfm}
|
||||||
|
|
||||||
|
|
||||||
|
{ TfrViewUsuario }
|
||||||
|
|
||||||
|
function TfrViewPerfilUsuario.GetController: IUsuariosController;
|
||||||
|
begin
|
||||||
|
Result := FController;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TfrViewPerfilUsuario.GetPerfilUsuario: IBizPerfilUsuario;
|
||||||
|
begin
|
||||||
|
Result := FPerfilUsuario;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewPerfilUsuario.SetController(const Value: IUsuariosController);
|
||||||
|
begin
|
||||||
|
FController := Value;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewPerfilUsuario.SetPerfilUsuario(const Value: IBizPerfilUsuario);
|
||||||
|
begin
|
||||||
|
FPerfilUsuario := Value;
|
||||||
|
|
||||||
|
if Assigned(FPerfilUsuario) then
|
||||||
|
dsUsuario.DataTable := FPerfilUsuario.DataTable
|
||||||
|
else begin
|
||||||
|
dsUsuario.DataTable := NIL;
|
||||||
|
FPerfilUsuario := NIL;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
end.
|
||||||
@ -0,0 +1,38 @@
|
|||||||
|
inherited frViewPerfilesUsuario: TfrViewPerfilesUsuario
|
||||||
|
Width = 426
|
||||||
|
Height = 247
|
||||||
|
ExplicitWidth = 426
|
||||||
|
ExplicitHeight = 247
|
||||||
|
inherited cxGrid: TcxGrid
|
||||||
|
Width = 426
|
||||||
|
Height = 247
|
||||||
|
inherited cxGridView: TcxGridDBTableView
|
||||||
|
object cxGridViewID: TcxGridDBColumn
|
||||||
|
DataBinding.FieldName = 'ID'
|
||||||
|
Visible = False
|
||||||
|
BestFitMaxWidth = 20
|
||||||
|
Width = 20
|
||||||
|
end
|
||||||
|
object cxGridViewUSERNAME: TcxGridDBColumn
|
||||||
|
DataBinding.FieldName = 'USERNAME'
|
||||||
|
Width = 150
|
||||||
|
end
|
||||||
|
object cxGridViewTIPO: TcxGridDBColumn
|
||||||
|
DataBinding.FieldName = 'TIPO'
|
||||||
|
Visible = False
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
inherited dxComponentPrinter: TdxComponentPrinter
|
||||||
|
Left = 40
|
||||||
|
Top = 16
|
||||||
|
end
|
||||||
|
inherited dxPSEngineController1: TdxPSEngineController
|
||||||
|
Left = 304
|
||||||
|
Top = 168
|
||||||
|
end
|
||||||
|
inherited cxStyleRepository1: TcxStyleRepository
|
||||||
|
Left = 280
|
||||||
|
Top = 160
|
||||||
|
end
|
||||||
|
end
|
||||||
@ -0,0 +1,56 @@
|
|||||||
|
unit uViewPerfilesUsuario;
|
||||||
|
|
||||||
|
interface
|
||||||
|
|
||||||
|
uses
|
||||||
|
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
||||||
|
Dialogs, uViewGrid, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData,
|
||||||
|
cxDataStorage, cxEdit, DB, cxDBData, dxPSGlbl, dxPSUtl, dxPSEngn, dxPrnPg,
|
||||||
|
dxBkgnd, dxWrap, dxPrnDev, dxPSCompsProvider, dxPSFillPatterns,
|
||||||
|
dxPSEdgePatterns, dxPgsDlg, dxPSCore, ImgList, PngImageList, ActnList,
|
||||||
|
cxGridCustomPopupMenu, cxGridPopupMenu,
|
||||||
|
uDAInterfaces, uDADataTable, TB2Item, TBX, TB2Toolbar, TBXDkPanels, TB2Dock,
|
||||||
|
cxGridLevel, cxClasses, cxControls, cxGridCustomView,
|
||||||
|
cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxGrid,
|
||||||
|
uBizUsuarios;
|
||||||
|
|
||||||
|
type
|
||||||
|
IViewPerfilesUsuario = interface(IViewGrid)
|
||||||
|
['{C6125F2F-5EDC-4019-BD5F-9AC9741F0F77}']
|
||||||
|
function GetPerfilesUsuario: IBizPerfilUsuario;
|
||||||
|
procedure SetPerfilesUsuario(const Value: IBizPerfilUsuario);
|
||||||
|
property PerfilesUsuario: IBizPerfilUsuario read GetPerfilesUsuario write SetPerfilesUsuario;
|
||||||
|
end;
|
||||||
|
|
||||||
|
TfrViewPerfilesUsuario = class(TfrViewGrid, IViewPerfilesUsuario)
|
||||||
|
cxGridViewID: TcxGridDBColumn;
|
||||||
|
cxGridViewUSERNAME: TcxGridDBColumn;
|
||||||
|
cxGridViewTIPO: TcxGridDBColumn;
|
||||||
|
protected
|
||||||
|
FPerfiles : IBizPerfilUsuario;
|
||||||
|
function GetPerfilesUsuario: IBizPerfilUsuario;
|
||||||
|
procedure SetPerfilesUsuario(const Value: IBizPerfilUsuario);
|
||||||
|
public
|
||||||
|
property PerfilesUsuario: IBizPerfilUsuario read GetPerfilesUsuario write SetPerfilesUsuario;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
implementation
|
||||||
|
|
||||||
|
{$R *.dfm}
|
||||||
|
|
||||||
|
{ TfrViewPerfilesUsuario }
|
||||||
|
|
||||||
|
function TfrViewPerfilesUsuario.GetPerfilesUsuario: IBizPerfilUsuario;
|
||||||
|
begin
|
||||||
|
Result := FPerfiles;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewPerfilesUsuario.SetPerfilesUsuario(const Value: IBizPerfilUsuario);
|
||||||
|
begin
|
||||||
|
FPerfiles := Value;
|
||||||
|
if Assigned(FPerfiles) then
|
||||||
|
dsDataSource.DataTable := FPerfiles.DataTable;
|
||||||
|
end;
|
||||||
|
|
||||||
|
end.
|
||||||
300
Source/ApplicationBase/Usuarios/Views/uViewUsuario.dfm
Normal file
300
Source/ApplicationBase/Usuarios/Views/uViewUsuario.dfm
Normal file
@ -0,0 +1,300 @@
|
|||||||
|
inherited frViewUsuario: TfrViewUsuario
|
||||||
|
Width = 509
|
||||||
|
Height = 275
|
||||||
|
OnCreate = CustomViewCreate
|
||||||
|
OnDestroy = CustomViewDestroy
|
||||||
|
ExplicitWidth = 509
|
||||||
|
ExplicitHeight = 275
|
||||||
|
object dxLayoutControlArticulo: TdxLayoutControl
|
||||||
|
Left = 0
|
||||||
|
Top = 0
|
||||||
|
Width = 509
|
||||||
|
Height = 249
|
||||||
|
Align = alTop
|
||||||
|
ParentBackground = True
|
||||||
|
TabOrder = 0
|
||||||
|
AutoContentSizes = [acsWidth]
|
||||||
|
DesignSize = (
|
||||||
|
509
|
||||||
|
249)
|
||||||
|
object PngSpeedButton3: TPngSpeedButton
|
||||||
|
Left = 335
|
||||||
|
Top = 82
|
||||||
|
Width = 23
|
||||||
|
Height = 22
|
||||||
|
PngImage.Data = {
|
||||||
|
89504E470D0A1A0A0000000D49484452000000100000001008060000001FF3FF
|
||||||
|
610000000970485973000017120000171201679FD252000001964944415478DA
|
||||||
|
63FCFFFF3F03232323033A58BCE9F87F647EAC9F258622B05E6C068034873B8A
|
||||||
|
80D92019C62F8F194C1356339CDF399D91A0014B361FFB1FE6208AA299E1F323
|
||||||
|
306D52F90CC5100C03566E3DFC3FD04E02A2F9F727064690462066006A66FC02
|
||||||
|
64FFFAC8603451096E088A01CB361FFDFF8F819981183077D11A86FDAB7B18E1
|
||||||
|
062CDD7CE27F14573FC3B2EF450CD13E86181ABE7DFFCDF0F5DB6F866FDFFE30
|
||||||
|
1CB97897218AB38FC1B85B98E1DC8E698C600396000D8861696058FAB7116CC0
|
||||||
|
94C5FBB0DAEC6CAECF70EED6238668E67AB057500CF8F0E10383A0A0208A0B90
|
||||||
|
6D06B1BF01D9379E3C67387AFE09C389A37BD15CE06B01B47907434EAC13C3EF
|
||||||
|
3F7F19662E3F8862BB898606C3EFDFFF1896EF3DCFA0A5C0CD306FE9265403FC
|
||||||
|
9D20362F5CB71F4CE7C47AA01890D5BC164C7716F980D56018606BAC0656B079
|
||||||
|
EF2986F82047AC6150DEB785A13CD911AC06C300234D05867DC72F30B8D818E1
|
||||||
|
8DC2494B0E63F702281075D455884A07576EDEC134404A5480E1DAED07441900
|
||||||
|
021806F44D5D44B46618801B400900007F4518F05E90AAF20000000049454E44
|
||||||
|
AE426082}
|
||||||
|
PngOptions = [pngBlendOnDisabled, pngGrayscaleOnDisabled]
|
||||||
|
end
|
||||||
|
object eNombre: TcxDBTextEdit
|
||||||
|
Left = 135
|
||||||
|
Top = 28
|
||||||
|
Anchors = [akLeft, akTop, akRight]
|
||||||
|
DataBinding.DataField = 'USERNAME'
|
||||||
|
DataBinding.DataSource = dsUsuario
|
||||||
|
Style.BorderColor = clWindowFrame
|
||||||
|
Style.BorderStyle = ebs3D
|
||||||
|
Style.Color = 14745599
|
||||||
|
Style.HotTrack = False
|
||||||
|
Style.LookAndFeel.Kind = lfStandard
|
||||||
|
Style.LookAndFeel.NativeStyle = True
|
||||||
|
StyleDisabled.LookAndFeel.Kind = lfStandard
|
||||||
|
StyleDisabled.LookAndFeel.NativeStyle = True
|
||||||
|
StyleFocused.LookAndFeel.Kind = lfStandard
|
||||||
|
StyleFocused.LookAndFeel.NativeStyle = True
|
||||||
|
StyleHot.LookAndFeel.Kind = lfStandard
|
||||||
|
StyleHot.LookAndFeel.NativeStyle = True
|
||||||
|
TabOrder = 0
|
||||||
|
Width = 164
|
||||||
|
end
|
||||||
|
object eUsuario: TcxDBTextEdit
|
||||||
|
Left = 135
|
||||||
|
Top = 55
|
||||||
|
DataBinding.DataField = 'LOGIN'
|
||||||
|
DataBinding.DataSource = dsUsuario
|
||||||
|
Style.BorderColor = clWindowFrame
|
||||||
|
Style.BorderStyle = ebs3D
|
||||||
|
Style.Color = 14745599
|
||||||
|
Style.HotTrack = False
|
||||||
|
Style.LookAndFeel.Kind = lfStandard
|
||||||
|
Style.LookAndFeel.NativeStyle = True
|
||||||
|
StyleDisabled.LookAndFeel.Kind = lfStandard
|
||||||
|
StyleDisabled.LookAndFeel.NativeStyle = True
|
||||||
|
StyleFocused.LookAndFeel.Kind = lfStandard
|
||||||
|
StyleFocused.LookAndFeel.NativeStyle = True
|
||||||
|
StyleHot.LookAndFeel.Kind = lfStandard
|
||||||
|
StyleHot.LookAndFeel.NativeStyle = True
|
||||||
|
TabOrder = 1
|
||||||
|
Width = 108
|
||||||
|
end
|
||||||
|
object eMail: TcxDBHyperLinkEdit
|
||||||
|
Left = 135
|
||||||
|
Top = 82
|
||||||
|
DataBinding.DataField = 'EMAIL'
|
||||||
|
DataBinding.DataSource = dsUsuario
|
||||||
|
Properties.ValidateOnEnter = True
|
||||||
|
Properties.OnEditValueChanged = eMailPropertiesEditValueChanged
|
||||||
|
Properties.OnValidate = eMailPropertiesValidate
|
||||||
|
Properties.Prefix = 'mailto:'
|
||||||
|
Style.BorderColor = clWindowFrame
|
||||||
|
Style.BorderStyle = ebs3D
|
||||||
|
Style.HotTrack = False
|
||||||
|
Style.LookAndFeel.Kind = lfStandard
|
||||||
|
Style.LookAndFeel.NativeStyle = True
|
||||||
|
StyleDisabled.LookAndFeel.Kind = lfStandard
|
||||||
|
StyleDisabled.LookAndFeel.NativeStyle = True
|
||||||
|
StyleFocused.LookAndFeel.Kind = lfStandard
|
||||||
|
StyleFocused.LookAndFeel.NativeStyle = True
|
||||||
|
StyleHot.LookAndFeel.Kind = lfStandard
|
||||||
|
StyleHot.LookAndFeel.NativeStyle = True
|
||||||
|
TabOrder = 2
|
||||||
|
Width = 194
|
||||||
|
end
|
||||||
|
object ePassword: TcxTextEdit
|
||||||
|
Left = 135
|
||||||
|
Top = 167
|
||||||
|
Properties.EchoMode = eemPassword
|
||||||
|
Properties.PasswordChar = '*'
|
||||||
|
Style.LookAndFeel.Kind = lfStandard
|
||||||
|
Style.LookAndFeel.NativeStyle = True
|
||||||
|
StyleDisabled.LookAndFeel.Kind = lfStandard
|
||||||
|
StyleDisabled.LookAndFeel.NativeStyle = True
|
||||||
|
StyleFocused.LookAndFeel.Kind = lfStandard
|
||||||
|
StyleFocused.LookAndFeel.NativeStyle = True
|
||||||
|
StyleHot.LookAndFeel.Kind = lfStandard
|
||||||
|
StyleHot.LookAndFeel.NativeStyle = True
|
||||||
|
TabOrder = 4
|
||||||
|
Width = 121
|
||||||
|
end
|
||||||
|
object eConfirmarPassword: TcxTextEdit
|
||||||
|
Left = 135
|
||||||
|
Top = 194
|
||||||
|
Properties.EchoMode = eemPassword
|
||||||
|
Properties.PasswordChar = '*'
|
||||||
|
Style.LookAndFeel.Kind = lfStandard
|
||||||
|
Style.LookAndFeel.NativeStyle = True
|
||||||
|
StyleDisabled.LookAndFeel.Kind = lfStandard
|
||||||
|
StyleDisabled.LookAndFeel.NativeStyle = True
|
||||||
|
StyleFocused.LookAndFeel.Kind = lfStandard
|
||||||
|
StyleFocused.LookAndFeel.NativeStyle = True
|
||||||
|
StyleHot.LookAndFeel.Kind = lfStandard
|
||||||
|
StyleHot.LookAndFeel.NativeStyle = True
|
||||||
|
TabOrder = 5
|
||||||
|
Width = 372
|
||||||
|
end
|
||||||
|
object cbPerfil: TcxComboBox
|
||||||
|
Left = 135
|
||||||
|
Top = 110
|
||||||
|
Properties.DropDownListStyle = lsEditFixedList
|
||||||
|
Properties.ImmediatePost = True
|
||||||
|
Properties.ImmediateUpdateText = True
|
||||||
|
Properties.PostPopupValueOnTab = True
|
||||||
|
Properties.OnValidate = cbPerfilPropertiesValidate
|
||||||
|
Style.LookAndFeel.Kind = lfStandard
|
||||||
|
Style.LookAndFeel.NativeStyle = True
|
||||||
|
StyleDisabled.LookAndFeel.Kind = lfStandard
|
||||||
|
StyleDisabled.LookAndFeel.NativeStyle = True
|
||||||
|
StyleFocused.LookAndFeel.Kind = lfStandard
|
||||||
|
StyleFocused.LookAndFeel.NativeStyle = True
|
||||||
|
StyleHot.LookAndFeel.Kind = lfStandard
|
||||||
|
StyleHot.LookAndFeel.NativeStyle = True
|
||||||
|
TabOrder = 3
|
||||||
|
Width = 194
|
||||||
|
end
|
||||||
|
object dxLayoutGroup1: TdxLayoutGroup
|
||||||
|
ShowCaption = False
|
||||||
|
Hidden = True
|
||||||
|
ShowBorder = False
|
||||||
|
object dxLayoutGroup2: TdxLayoutGroup
|
||||||
|
AutoAligns = []
|
||||||
|
AlignHorz = ahClient
|
||||||
|
AlignVert = avClient
|
||||||
|
Caption = 'Datos del usuario'
|
||||||
|
object dxLayoutControlArticuloItem3: TdxLayoutItem
|
||||||
|
AutoAligns = [aaVertical]
|
||||||
|
AlignHorz = ahClient
|
||||||
|
Caption = 'Nombre completo:'
|
||||||
|
Control = eNombre
|
||||||
|
ControlOptions.ShowBorder = False
|
||||||
|
end
|
||||||
|
object dxLayoutControlArticuloItem8: TdxLayoutItem
|
||||||
|
AutoAligns = [aaVertical]
|
||||||
|
AlignHorz = ahClient
|
||||||
|
Caption = 'Usuario:'
|
||||||
|
Control = eUsuario
|
||||||
|
ControlOptions.ShowBorder = False
|
||||||
|
end
|
||||||
|
object dxLayoutControlArticuloGroup2: TdxLayoutGroup
|
||||||
|
ShowCaption = False
|
||||||
|
Hidden = True
|
||||||
|
LayoutDirection = ldHorizontal
|
||||||
|
ShowBorder = False
|
||||||
|
object dxLayoutControlArticuloItem4: TdxLayoutItem
|
||||||
|
AutoAligns = [aaVertical]
|
||||||
|
Caption = 'Correo electr'#243'nico'
|
||||||
|
Control = eMail
|
||||||
|
ControlOptions.ShowBorder = False
|
||||||
|
end
|
||||||
|
object dxLayoutControlArticuloItem5: TdxLayoutItem
|
||||||
|
ShowCaption = False
|
||||||
|
Control = PngSpeedButton3
|
||||||
|
ControlOptions.ShowBorder = False
|
||||||
|
end
|
||||||
|
end
|
||||||
|
object dxLayoutControlArticuloItem1: TdxLayoutItem
|
||||||
|
AutoAligns = [aaVertical]
|
||||||
|
Caption = 'Perfil de usuario:'
|
||||||
|
Control = cbPerfil
|
||||||
|
ControlOptions.ShowBorder = False
|
||||||
|
end
|
||||||
|
end
|
||||||
|
object dxLayoutControlArticuloGroup5: TdxLayoutGroup
|
||||||
|
Caption = 'Seguridad'
|
||||||
|
object dxLayoutControlArticuloItem11: TdxLayoutItem
|
||||||
|
Caption = 'Contrase'#241'a:'
|
||||||
|
Control = ePassword
|
||||||
|
ControlOptions.ShowBorder = False
|
||||||
|
end
|
||||||
|
object dxLayoutControlArticuloItem12: TdxLayoutItem
|
||||||
|
Caption = 'Confirmar contrase'#241'a:'
|
||||||
|
Control = eConfirmarPassword
|
||||||
|
ControlOptions.ShowBorder = False
|
||||||
|
end
|
||||||
|
end
|
||||||
|
object dxLayoutControlArticuloGroup3: TdxLayoutGroup
|
||||||
|
Caption = 'New Group'
|
||||||
|
ShowCaption = False
|
||||||
|
LayoutDirection = ldHorizontal
|
||||||
|
ShowBorder = False
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
object ActionList1: TActionList
|
||||||
|
Images = SmallImages
|
||||||
|
Left = 72
|
||||||
|
Top = 48
|
||||||
|
object actMandarCorreo: TAction
|
||||||
|
Caption = 'Mandar un correo'
|
||||||
|
ImageIndex = 0
|
||||||
|
OnExecute = actMandarCorreoExecute
|
||||||
|
OnUpdate = actMandarCorreoUpdate
|
||||||
|
end
|
||||||
|
end
|
||||||
|
object dsUsuario: TDADataSource
|
||||||
|
Left = 104
|
||||||
|
Top = 48
|
||||||
|
end
|
||||||
|
object SmallImages: TPngImageList
|
||||||
|
PngImages = <
|
||||||
|
item
|
||||||
|
PngImage.Data = {
|
||||||
|
89504E470D0A1A0A0000000D49484452000000100000001008060000001FF3FF
|
||||||
|
610000000970485973000017120000171201679FD252000001EB4944415478DA
|
||||||
|
A5D34B68135114C6F1FF746692462D24D5A8F5B52B81B448501475E142D4EAA2
|
||||||
|
3420E8C68A0A45345BC19DE24A74D50AE2424A11041105DD28A8881411174A70
|
||||||
|
E58BA4149A1A0D8D1D9B669E997B9D14B1A44491E6C2D9DDF3BB1F877B94DB8F
|
||||||
|
5E4B5A384A1D3831B06759CDDB0E9D5B04865FD9CD6F49C95A374B4ADC20AAE4
|
||||||
|
9936B6F244CF70299DFA3F40F5AB1C74CEB225FE1C654E4796DA7963A6D977F2
|
||||||
|
FABF81E061EAC3D1EC0247C531A27A017E846026CC844890CC3CFE3B506F1641
|
||||||
|
D9025CCFA4DF384FD27F419BA1231C9D67917ED267AE3507A414E4BF8DD3B1AA
|
||||||
|
07A97562F92A31EB037B8D313658137CD292DC5D719A7B83C9E640AEF892F1DC
|
||||||
|
454A5FABEC4E5D21BEBE0FD397411217E15599911D547C8DEC60A411B8FC34C7
|
||||||
|
C3F7C71710BD73927CB686E785D87FE01D22483267FDC45156620A0DAB069F4F
|
||||||
|
B53702A9ABBB08AF2E20DB7C1CB386517698FE52A56BE31136272EF0F16D1F44
|
||||||
|
7610EF7D802554A68696003B6F6D42517DAC6A0D3B006CCB67B6686356248944
|
||||||
|
0F8635C9F7A90A91F800E1EE51CA99D81260B40B27C8F607307DECF91AF38687
|
||||||
|
A6AB74A7A2940A26E5A28B164FE38CDC67FBE1CC22D03BB226007E2708202700
|
||||||
|
5CAB5E62E14344D785084734664B0EBE8CE18D951A81967661F8E69DE56FA394
|
||||||
|
2D6D33BF00C89C2C72EBA3BC190000000049454E44AE426082}
|
||||||
|
Name = 'PngImage0'
|
||||||
|
Background = clWindow
|
||||||
|
end
|
||||||
|
item
|
||||||
|
PngImage.Data = {
|
||||||
|
89504E470D0A1A0A0000000D49484452000000100000001008060000001FF3FF
|
||||||
|
61000000097048597300000AEB00000AEB01828B0D5A000002854944415478DA
|
||||||
|
A5935D48536118C7FFAFDB8CCD557E7F34B33167F9119617A91596495D781304
|
||||||
|
451021A651362821B1ABA49B6EA4460961D88542055D84DD6545415992174994
|
||||||
|
9625CC8F9C329D9B5F3BE9CED9D9797BCEA1C932A3A0079EC3CBE13CBFE7FF7F
|
||||||
|
9FF330CE39FE2798FAB80BA4E61559EB2551E67B07279AE8D51FA98F2CC99546
|
||||||
|
031A3D6E5FF329993F631D80B52227A6D7929F9BAEA459D1D73BE8DC3330D6B8
|
||||||
|
1AD206641414DA5A6224E1E8ECA47779660955D532EF642F1371BD74331A14FA
|
||||||
|
9C27A4439F5D88777DAE1B65FD230D11485786B9363D65FD35C1EB4B9817427E
|
||||||
|
9F80C335C05BD53E23B2A934132FB23662B71406C2B14698F38AF0E9EB9473E8
|
||||||
|
E3C8655BD686D6F858A5DA3F27B04511E37E0195B5C0A00AD6003FE5259758F0
|
||||||
|
3AD1843C15125218CCB6AD707FF34EAC93973217041154ECF608D8770E188BD8
|
||||||
|
5A01A8A1DEC5F60CF4980CB0A890E8A47AFFF477EC3F037C8EBE975F006ADC37
|
||||||
|
60A7351E3D061DE222C522A5270047AD82DBAB27B21AC09EDA373525E9A52BCB
|
||||||
|
7E5F4CB4822509BE80848AB3C0C09A806380EE7CA1BDC55EB4CDE17AF2984932
|
||||||
|
75A60CCA088739742A84CE1E49C1010730F41BA03B27CD595C517CB1FFF92B04
|
||||||
|
E6035AF142101DCB12DA743AB413243FA468331D0F01E51780D1154057AAF148
|
||||||
|
D92E7BE794778E8DB92634C901116FA6451CAA27214EC06802AE5227AA839ED2
|
||||||
|
45A0729AC6A406182DD9329C10A7B7F57D18D63A93DF99D92076905F4FB4DF56
|
||||||
|
A08C20ED9476027CD1209C7BD9FBDC947BC1C0E2C9596A4B003E27E2F8E9301E
|
||||||
|
AEB507B700334968A6631D019C759C5F627780822413BA194312CDFB41958C13
|
||||||
|
7FDB4052739000430ECEDD913F313B568F9B8B326AC8F7CCBFAEB27A073F0058
|
||||||
|
5538F0EAB25B380000000049454E44AE426082}
|
||||||
|
Name = 'PngImage1'
|
||||||
|
Background = clWindow
|
||||||
|
end>
|
||||||
|
PngOptions = [pngBlendOnDisabled, pngGrayscaleOnDisabled]
|
||||||
|
Left = 43
|
||||||
|
Top = 48
|
||||||
|
Bitmap = {}
|
||||||
|
end
|
||||||
|
end
|
||||||
210
Source/ApplicationBase/Usuarios/Views/uViewUsuario.pas
Normal file
210
Source/ApplicationBase/Usuarios/Views/uViewUsuario.pas
Normal file
@ -0,0 +1,210 @@
|
|||||||
|
unit uViewUsuario;
|
||||||
|
|
||||||
|
interface
|
||||||
|
|
||||||
|
uses
|
||||||
|
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
||||||
|
Dialogs, uViewBase, uUsuariosController, cxGraphics, ImgList, PngImageList,
|
||||||
|
dxLayoutControl, cxCurrencyEdit, uCustomView, cxControls, DB, uDAInterfaces,
|
||||||
|
uDADataTable, ActnList, cxCheckBox, cxDBEdit, cxMaskEdit, cxSpinEdit,
|
||||||
|
cxHyperLinkEdit, cxContainer, cxEdit, cxTextEdit, Buttons, PngSpeedButton,
|
||||||
|
uBizUsuarios, cxDropDownEdit, ExtCtrls;
|
||||||
|
|
||||||
|
type
|
||||||
|
IViewUsuario = interface(IViewBase)
|
||||||
|
['{E47D5136-A50C-4757-9352-4745518A899D}']
|
||||||
|
function GetController : IUsuariosController;
|
||||||
|
procedure SetController (const Value : IUsuariosController);
|
||||||
|
property Controller : IUsuariosController read GetController write SetController;
|
||||||
|
|
||||||
|
function GetUsuario: IBizUsuario;
|
||||||
|
procedure SetUsuario(const Value: IBizUsuario);
|
||||||
|
property Usuario: IBizUsuario read GetUsuario write SetUsuario;
|
||||||
|
end;
|
||||||
|
|
||||||
|
TfrViewUsuario = class(TfrViewBase, IViewUsuario)
|
||||||
|
ActionList1: TActionList;
|
||||||
|
dsUsuario: TDADataSource;
|
||||||
|
dxLayoutControlArticulo: TdxLayoutControl;
|
||||||
|
eNombre: TcxDBTextEdit;
|
||||||
|
eUsuario: TcxDBTextEdit;
|
||||||
|
dxLayoutGroup1: TdxLayoutGroup;
|
||||||
|
dxLayoutGroup2: TdxLayoutGroup;
|
||||||
|
dxLayoutControlArticuloItem3: TdxLayoutItem;
|
||||||
|
dxLayoutControlArticuloItem8: TdxLayoutItem;
|
||||||
|
dxLayoutControlArticuloGroup3: TdxLayoutGroup;
|
||||||
|
SmallImages: TPngImageList;
|
||||||
|
dxLayoutControlArticuloItem4: TdxLayoutItem;
|
||||||
|
eMail: TcxDBHyperLinkEdit;
|
||||||
|
dxLayoutControlArticuloItem5: TdxLayoutItem;
|
||||||
|
PngSpeedButton3: TPngSpeedButton;
|
||||||
|
actMandarCorreo: TAction;
|
||||||
|
dxLayoutControlArticuloGroup2: TdxLayoutGroup;
|
||||||
|
ePassword: TcxTextEdit;
|
||||||
|
dxLayoutControlArticuloItem11: TdxLayoutItem;
|
||||||
|
dxLayoutControlArticuloItem12: TdxLayoutItem;
|
||||||
|
eConfirmarPassword: TcxTextEdit;
|
||||||
|
dxLayoutControlArticuloGroup5: TdxLayoutGroup;
|
||||||
|
cbPerfil: TcxComboBox;
|
||||||
|
dxLayoutControlArticuloItem1: TdxLayoutItem;
|
||||||
|
procedure actMandarCorreoExecute(Sender: TObject);
|
||||||
|
procedure actMandarCorreoUpdate(Sender: TObject);
|
||||||
|
procedure cbPerfilPropertiesValidate(Sender: TObject;
|
||||||
|
var DisplayValue: Variant; var ErrorText: TCaption; var Error: Boolean);
|
||||||
|
procedure CustomViewCreate(Sender: TObject);
|
||||||
|
procedure CustomViewDestroy(Sender: TObject);
|
||||||
|
procedure eMailPropertiesEditValueChanged(Sender: TObject);
|
||||||
|
procedure eMailPropertiesValidate(Sender: TObject;
|
||||||
|
var DisplayValue: Variant; var ErrorText: TCaption; var Error: Boolean);
|
||||||
|
protected
|
||||||
|
FController: IUsuariosController;
|
||||||
|
FUsuario : IBizUsuario;
|
||||||
|
FListaPerfiles : TStringList;
|
||||||
|
|
||||||
|
function GetController : IUsuariosController;
|
||||||
|
procedure SetController (const Value : IUsuariosController);
|
||||||
|
|
||||||
|
function GetUsuario: IBizUsuario;
|
||||||
|
procedure SetUsuario(const Value: IBizUsuario);
|
||||||
|
public
|
||||||
|
property Usuario: IBizUsuario read GetUsuario write SetUsuario;
|
||||||
|
property Controller : IUsuariosController read GetController write SetController;
|
||||||
|
end;
|
||||||
|
|
||||||
|
implementation
|
||||||
|
|
||||||
|
{$R *.dfm}
|
||||||
|
|
||||||
|
type
|
||||||
|
THackcxDBHyperLinkEdit = class(TcxDBHyperLinkEdit);
|
||||||
|
|
||||||
|
{ TfrViewUsuario }
|
||||||
|
|
||||||
|
procedure TfrViewUsuario.actMandarCorreoExecute(Sender: TObject);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
THackcxDBHyperLinkEdit(eMail).DoStart;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewUsuario.actMandarCorreoUpdate(Sender: TObject);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
(Sender as TAction).Enabled := (Length(eMail.Text) > 0)
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewUsuario.cbPerfilPropertiesValidate(Sender: TObject;
|
||||||
|
var DisplayValue: Variant; var ErrorText: TCaption; var Error: Boolean);
|
||||||
|
var
|
||||||
|
AIndex : integer;
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
|
||||||
|
if Assigned(FUsuario) and FUsuario.Active then
|
||||||
|
begin
|
||||||
|
if DisplayValue = cbPerfil.Properties.Items[0] then
|
||||||
|
AIndex := 0
|
||||||
|
else
|
||||||
|
AIndex := StrToInt(FListaPerfiles.Values[DisplayValue]);
|
||||||
|
|
||||||
|
FUsuario.Edit;
|
||||||
|
FUsuario.ID_PERFIL := AIndex;
|
||||||
|
FUsuario.Post;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
procedure TfrViewUsuario.CustomViewCreate(Sender: TObject);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
FListaPerfiles := NIL;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewUsuario.CustomViewDestroy(Sender: TObject);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
FreeAndNIL(FListaPerfiles);
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewUsuario.eMailPropertiesEditValueChanged(Sender: TObject);
|
||||||
|
begin
|
||||||
|
if not VarIsNull((Sender as TcxDBHyperLinkEdit).EditValue) then
|
||||||
|
(Sender as TcxDBHyperLinkEdit).EditValue := StringReplace((Sender as TcxDBHyperLinkEdit).EditValue, (Sender as TcxDBHyperLinkEdit).Properties.Prefix, '', []);
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewUsuario.eMailPropertiesValidate(Sender: TObject;
|
||||||
|
var DisplayValue: Variant; var ErrorText: TCaption; var Error: Boolean);
|
||||||
|
begin
|
||||||
|
if not VarIsNull(DisplayValue) then
|
||||||
|
DisplayValue := StringReplace(DisplayValue, (Sender as TcxDBHyperLinkEdit).Properties.Prefix, '', []);
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TfrViewUsuario.GetController: IUsuariosController;
|
||||||
|
begin
|
||||||
|
Result := FController;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TfrViewUsuario.GetUsuario: IBizUsuario;
|
||||||
|
begin
|
||||||
|
Result := FUsuario;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewUsuario.SetController(const Value: IUsuariosController);
|
||||||
|
var
|
||||||
|
i : integer;
|
||||||
|
begin
|
||||||
|
FController := Value;
|
||||||
|
|
||||||
|
if Assigned(FController) then
|
||||||
|
begin
|
||||||
|
FListaPerfiles := FController.DarListaPerfilesUsuario;
|
||||||
|
|
||||||
|
with cbPerfil.Properties.Items do
|
||||||
|
begin
|
||||||
|
BeginUpdate;
|
||||||
|
try
|
||||||
|
Clear;
|
||||||
|
Add('<Ninguno>');
|
||||||
|
for i := 0 to FListaPerfiles.Count - 1 do
|
||||||
|
Add(FListaPerfiles.Names[i]);
|
||||||
|
finally
|
||||||
|
EndUpdate;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewUsuario.SetUsuario(const Value: IBizUsuario);
|
||||||
|
var
|
||||||
|
i : integer;
|
||||||
|
begin
|
||||||
|
FUsuario := Value;
|
||||||
|
|
||||||
|
if Assigned(FUsuario) then
|
||||||
|
begin
|
||||||
|
dsUsuario.DataTable := FUsuario.DataTable;
|
||||||
|
if FUsuario.EsNuevo then
|
||||||
|
begin
|
||||||
|
dxLayoutControlArticuloGroup5.Visible := True;
|
||||||
|
cbPerfil.Text := cbPerfil.Properties.Items[0];
|
||||||
|
end
|
||||||
|
else begin
|
||||||
|
dxLayoutControlArticuloGroup5.Visible := False;
|
||||||
|
|
||||||
|
cbPerfil.Text := cbPerfil.Properties.Items[0];
|
||||||
|
for i := 0 to FListaPerfiles.Count-1 do
|
||||||
|
begin
|
||||||
|
if FListaPerfiles.ValueFromIndex[i] = IntToStr(FUsuario.ID_PERFIL) then
|
||||||
|
begin
|
||||||
|
cbPerfil.Text := FListaPerfiles.Names[i];
|
||||||
|
break;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
end
|
||||||
|
else begin
|
||||||
|
dsUsuario.DataTable := NIL;
|
||||||
|
FUsuario := NIL;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
end.
|
||||||
70
Source/ApplicationBase/Usuarios/Views/uViewUsuarios.dfm
Normal file
70
Source/ApplicationBase/Usuarios/Views/uViewUsuarios.dfm
Normal file
@ -0,0 +1,70 @@
|
|||||||
|
inherited frViewUsuarios: TfrViewUsuarios
|
||||||
|
inherited cxGrid: TcxGrid
|
||||||
|
inherited cxGridView: TcxGridDBTableView
|
||||||
|
object cxGridViewID: TcxGridDBColumn
|
||||||
|
DataBinding.FieldName = 'ID'
|
||||||
|
Visible = False
|
||||||
|
BestFitMaxWidth = 20
|
||||||
|
Width = 20
|
||||||
|
end
|
||||||
|
object cxGridViewUSERNAME: TcxGridDBColumn
|
||||||
|
DataBinding.FieldName = 'USERNAME'
|
||||||
|
Width = 150
|
||||||
|
end
|
||||||
|
object cxGridViewLOGIN: TcxGridDBColumn
|
||||||
|
DataBinding.FieldName = 'LOGIN'
|
||||||
|
BestFitMaxWidth = 75
|
||||||
|
Width = 75
|
||||||
|
end
|
||||||
|
object cxGridViewPASS: TcxGridDBColumn
|
||||||
|
DataBinding.FieldName = 'PASS'
|
||||||
|
Visible = False
|
||||||
|
end
|
||||||
|
object cxGridViewPASSEXPIRED: TcxGridDBColumn
|
||||||
|
DataBinding.FieldName = 'PASSEXPIRED'
|
||||||
|
Visible = False
|
||||||
|
end
|
||||||
|
object cxGridViewBLOQUEADO: TcxGridDBColumn
|
||||||
|
DataBinding.FieldName = 'BLOQUEADO'
|
||||||
|
Visible = False
|
||||||
|
end
|
||||||
|
object cxGridViewEMAIL: TcxGridDBColumn
|
||||||
|
DataBinding.FieldName = 'EMAIL'
|
||||||
|
BestFitMaxWidth = 120
|
||||||
|
Width = 120
|
||||||
|
end
|
||||||
|
object cxGridViewUSERDAYSSUN: TcxGridDBColumn
|
||||||
|
DataBinding.FieldName = 'USERDAYSSUN'
|
||||||
|
Visible = False
|
||||||
|
end
|
||||||
|
object cxGridViewPRIVILEGED: TcxGridDBColumn
|
||||||
|
DataBinding.FieldName = 'PRIVILEGED'
|
||||||
|
Visible = False
|
||||||
|
end
|
||||||
|
object cxGridViewTIPO: TcxGridDBColumn
|
||||||
|
DataBinding.FieldName = 'TIPO'
|
||||||
|
Visible = False
|
||||||
|
end
|
||||||
|
object cxGridViewID_PERFIL: TcxGridDBColumn
|
||||||
|
DataBinding.FieldName = 'ID_PERFIL'
|
||||||
|
Visible = False
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
inherited dsDataSource: TDADataSource
|
||||||
|
Left = 360
|
||||||
|
Top = 136
|
||||||
|
end
|
||||||
|
inherited dxComponentPrinter: TdxComponentPrinter
|
||||||
|
Left = 328
|
||||||
|
Top = 136
|
||||||
|
end
|
||||||
|
inherited dxPSEngineController1: TdxPSEngineController
|
||||||
|
Left = 296
|
||||||
|
Top = 136
|
||||||
|
end
|
||||||
|
inherited cxStyleRepository1: TcxStyleRepository
|
||||||
|
Left = 264
|
||||||
|
Top = 136
|
||||||
|
end
|
||||||
|
end
|
||||||
64
Source/ApplicationBase/Usuarios/Views/uViewUsuarios.pas
Normal file
64
Source/ApplicationBase/Usuarios/Views/uViewUsuarios.pas
Normal file
@ -0,0 +1,64 @@
|
|||||||
|
unit uViewUsuarios;
|
||||||
|
|
||||||
|
interface
|
||||||
|
|
||||||
|
uses
|
||||||
|
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
||||||
|
Dialogs, uViewGrid, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData,
|
||||||
|
cxDataStorage, cxEdit, DB, cxDBData, dxPSGlbl, dxPSUtl, dxPSEngn, dxPrnPg,
|
||||||
|
dxBkgnd, dxWrap, dxPrnDev, dxPSCompsProvider, dxPSFillPatterns,
|
||||||
|
dxPSEdgePatterns, dxPgsDlg, dxPSCore, ImgList, PngImageList, ActnList,
|
||||||
|
cxGridCustomPopupMenu, cxGridPopupMenu, dxPScxCommon,
|
||||||
|
uDAInterfaces, uDADataTable, TB2Item, TBX, TB2Toolbar, TBXDkPanels, TB2Dock,
|
||||||
|
cxGridLevel, cxClasses, cxControls, cxGridCustomView,
|
||||||
|
cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxGrid,
|
||||||
|
uBizUsuarios;
|
||||||
|
|
||||||
|
type
|
||||||
|
IViewUsuarios = interface(IViewGrid)
|
||||||
|
['{2F46A4FC-6501-47B2-AAB3-28B552DDA455}']
|
||||||
|
function GetUsuarios: IBizUsuario;
|
||||||
|
procedure SetUsuarios(const Value: IBizUsuario);
|
||||||
|
property Usuarios: IBizUsuario read GetUsuarios write SetUsuarios;
|
||||||
|
end;
|
||||||
|
|
||||||
|
TfrViewUsuarios = class(TfrViewGrid, IViewUsuarios)
|
||||||
|
cxGridViewID: TcxGridDBColumn;
|
||||||
|
cxGridViewUSERNAME: TcxGridDBColumn;
|
||||||
|
cxGridViewLOGIN: TcxGridDBColumn;
|
||||||
|
cxGridViewPASS: TcxGridDBColumn;
|
||||||
|
cxGridViewPASSEXPIRED: TcxGridDBColumn;
|
||||||
|
cxGridViewBLOQUEADO: TcxGridDBColumn;
|
||||||
|
cxGridViewEMAIL: TcxGridDBColumn;
|
||||||
|
cxGridViewUSERDAYSSUN: TcxGridDBColumn;
|
||||||
|
cxGridViewPRIVILEGED: TcxGridDBColumn;
|
||||||
|
cxGridViewTIPO: TcxGridDBColumn;
|
||||||
|
cxGridViewID_PERFIL: TcxGridDBColumn;
|
||||||
|
protected
|
||||||
|
FUsuarios : IBizUsuario;
|
||||||
|
function GetUsuarios: IBizUsuario;
|
||||||
|
procedure SetUsuarios(const Value: IBizUsuario);
|
||||||
|
public
|
||||||
|
property Usuarios: IBizUsuario read GetUsuarios write SetUsuarios;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
implementation
|
||||||
|
|
||||||
|
{$R *.dfm}
|
||||||
|
|
||||||
|
{ TfrViewUsuarios }
|
||||||
|
|
||||||
|
function TfrViewUsuarios.GetUsuarios: IBizUsuario;
|
||||||
|
begin
|
||||||
|
Result := FUsuarios;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewUsuarios.SetUsuarios(const Value: IBizUsuario);
|
||||||
|
begin
|
||||||
|
FUsuarios := Value;
|
||||||
|
if Assigned(FUsuarios) then
|
||||||
|
dsDataSource.DataTable := FUsuarios.DataTable;
|
||||||
|
end;
|
||||||
|
|
||||||
|
end.
|
||||||
326
Source/ApplicationBase/uAdminPV_App.pas
Normal file
326
Source/ApplicationBase/uAdminPV_App.pas
Normal file
@ -0,0 +1,326 @@
|
|||||||
|
unit uAdminPV_App;
|
||||||
|
|
||||||
|
interface
|
||||||
|
|
||||||
|
uses
|
||||||
|
SysUtils, Classes, Forms, uBizUsuarios, uControllerBase,
|
||||||
|
uUsuariosController, uHostManager;
|
||||||
|
|
||||||
|
type
|
||||||
|
TDoLoadModulesEvent = procedure;
|
||||||
|
TDoMainFormEvent = procedure;
|
||||||
|
|
||||||
|
IAppSplashForm = interface
|
||||||
|
['{9905DF57-4476-42E6-A7CD-B1479A84E220}']
|
||||||
|
procedure Show;
|
||||||
|
procedure Hide;
|
||||||
|
procedure Update;
|
||||||
|
function GetMensaje: String;
|
||||||
|
procedure SetMensaje(const AMensaje : String);
|
||||||
|
property Mensaje : String read GetMensaje write SetMensaje;
|
||||||
|
end;
|
||||||
|
|
||||||
|
IAppAdminPV = interface
|
||||||
|
['{FB6A0F3C-C1D1-462D-AFD4-2A368F85E920}']
|
||||||
|
function GetMainForm: TCustomForm;
|
||||||
|
function GetUsuariosController: IUsuariosController;
|
||||||
|
function GetAppName: String;
|
||||||
|
function GetAppVersion: String;
|
||||||
|
function GetAppFullName: String;
|
||||||
|
function GetUsuarioActivo: IBizUsuario;
|
||||||
|
function GetModuleManager : THostManager;
|
||||||
|
function GetTerminated: Boolean;
|
||||||
|
|
||||||
|
function GetLoadModulesEvent : TDoLoadModulesEvent;
|
||||||
|
procedure SetLoadModulesEvent (ALoadModulesEvent : TDoLoadModulesEvent);
|
||||||
|
|
||||||
|
function GetDoMainFormEvent : TDoMainFormEvent;
|
||||||
|
procedure SetDoMainFormEvent (AMainFormEvent : TDoMainFormEvent);
|
||||||
|
|
||||||
|
function GetAppSplashForm : IAppSplashForm;
|
||||||
|
procedure SetAppSplashForm (AAppSplashForm : IAppSplashForm);
|
||||||
|
|
||||||
|
procedure ShowSplashForm;
|
||||||
|
procedure HideSplashForm;
|
||||||
|
|
||||||
|
procedure Run;
|
||||||
|
procedure Terminate;
|
||||||
|
|
||||||
|
property AppVersion : String read GetAppVersion;
|
||||||
|
property AppName : String read GetAppName;
|
||||||
|
property AppFullName : String read GetAppFullName;
|
||||||
|
property MainForm : TCustomForm read GetMainForm;
|
||||||
|
property UsuarioActivo : IBizUsuario read GetUsuarioActivo;
|
||||||
|
property UsuariosController : IUsuariosController read GetUsuariosController;
|
||||||
|
property AppSplashForm : IAppSplashForm read GetAppSplashForm write SetAppSplashForm;
|
||||||
|
property ModuleManager : THostManager read GetModuleManager;
|
||||||
|
property DoMainFormEvent : TDoMainFormEvent read GetDoMainFormEvent write SetDoMainFormEvent;
|
||||||
|
property DoLoadModulesEvent : TDoLoadModulesEvent read GetLoadModulesEvent write SetLoadModulesEvent;
|
||||||
|
property Terminated : Boolean read GetTerminated;
|
||||||
|
|
||||||
|
procedure ShowCapado;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
TAppAdminPV = class(TInterfacedObject, IAppAdminPV)
|
||||||
|
private
|
||||||
|
FUsuariosController: IUsuariosController;
|
||||||
|
FAppSplashForm : IAppSplashForm;
|
||||||
|
FHostManager : THostManager;
|
||||||
|
FTerminated : Boolean;
|
||||||
|
|
||||||
|
FDoMainFormEvent: TDoMainFormEvent;
|
||||||
|
FDoLoadModulesEvent: TDoMainFormEvent;
|
||||||
|
|
||||||
|
function GetMainForm: TCustomForm;
|
||||||
|
function GetUsuariosController: IUsuariosController;
|
||||||
|
function GetAppName: String;
|
||||||
|
function GetAppVersion: String;
|
||||||
|
function GetAppFullName: String;
|
||||||
|
function GetUsuarioActivo: IBizUsuario;
|
||||||
|
function GetModuleManager : THostManager;
|
||||||
|
function GetTerminated: Boolean;
|
||||||
|
|
||||||
|
function GetLoadModulesEvent : TDoLoadModulesEvent;
|
||||||
|
procedure SetLoadModulesEvent (ALoadModulesEvent : TDoLoadModulesEvent);
|
||||||
|
|
||||||
|
function GetDoMainFormEvent : TDoMainFormEvent;
|
||||||
|
procedure SetDoMainFormEvent (AMainFormEvent : TDoMainFormEvent);
|
||||||
|
|
||||||
|
function GetAppSplashForm : IAppSplashForm;
|
||||||
|
procedure SetAppSplashForm (AAppSplashForm : IAppSplashForm);
|
||||||
|
|
||||||
|
procedure AfterLoadModule(Sender: TObject; AModuleInfo: TModuleInfo);
|
||||||
|
procedure RegisterModule(AModuleInfo : TModuleInfo);
|
||||||
|
protected
|
||||||
|
procedure DoMainForm;
|
||||||
|
|
||||||
|
procedure CargarModulos;
|
||||||
|
procedure ShowSplashForm;
|
||||||
|
procedure HideSplashForm;
|
||||||
|
procedure UpdateSplashForm;
|
||||||
|
public
|
||||||
|
constructor Create; virtual;
|
||||||
|
destructor Destroy; override;
|
||||||
|
|
||||||
|
procedure Run;
|
||||||
|
procedure Terminate;
|
||||||
|
|
||||||
|
property AppVersion : String read GetAppVersion;
|
||||||
|
property AppName : String read GetAppName;
|
||||||
|
property AppFullName : String read GetAppFullName;
|
||||||
|
property MainForm : TCustomForm read GetMainForm;
|
||||||
|
property AppSplashForm : IAppSplashForm read GetAppSplashForm write SetAppSplashForm;
|
||||||
|
property UsuarioActivo : IBizUsuario read GetUsuarioActivo;
|
||||||
|
property UsuariosController : IUsuariosController read GetUsuariosController;
|
||||||
|
property ModuleManager : THostManager read GetModuleManager;
|
||||||
|
property DoMainFormEvent : TDoMainFormEvent read GetDoMainFormEvent write SetDoMainFormEvent;
|
||||||
|
property DoLoadModulesEvent : TDoLoadModulesEvent read GetLoadModulesEvent write SetLoadModulesEvent;
|
||||||
|
property Terminated : Boolean read GetTerminated;
|
||||||
|
|
||||||
|
procedure ShowCapado;
|
||||||
|
end;
|
||||||
|
|
||||||
|
var
|
||||||
|
AppAdminPV : IAppAdminPV = nil;
|
||||||
|
|
||||||
|
implementation
|
||||||
|
|
||||||
|
uses
|
||||||
|
Dialogs, uDialogUtils, cxControls, uUsuariosViewRegister,
|
||||||
|
uAppInfoUtils;
|
||||||
|
|
||||||
|
|
||||||
|
procedure TAppAdminPV.CargarModulos;
|
||||||
|
begin
|
||||||
|
if not Assigned(FDoLoadModulesEvent) then
|
||||||
|
raise Exception.Create('Evento para la carga de los módulos de la aplicación no asignado (CargarModulos)');
|
||||||
|
|
||||||
|
FDoLoadModulesEvent();
|
||||||
|
end;
|
||||||
|
|
||||||
|
constructor TAppAdminPV.Create;
|
||||||
|
begin
|
||||||
|
FTerminated := False;
|
||||||
|
FDoMainFormEvent := NIL;
|
||||||
|
FDoLoadModulesEvent := NIL;
|
||||||
|
FAppSplashForm := NIL;
|
||||||
|
FUsuariosController := NIL; // Se crea la primera vez que se usa
|
||||||
|
|
||||||
|
|
||||||
|
FHostManager := THostManager.Create(NIL);
|
||||||
|
with FHostManager do
|
||||||
|
begin
|
||||||
|
OnAfterLoad := AfterLoadModule;
|
||||||
|
// Ruta por defecto de los módulos
|
||||||
|
BPLPath := ExtractFilePath(Application.ExeName) + PathDelim;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
destructor TAppAdminPV.Destroy;
|
||||||
|
begin
|
||||||
|
FAppSplashForm := NIL;
|
||||||
|
|
||||||
|
FHostManager.UnloadModules;
|
||||||
|
FreeAndNIL(FHostManager);
|
||||||
|
|
||||||
|
FUsuariosController := NIL;
|
||||||
|
|
||||||
|
inherited;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TAppAdminPV.DoMainForm;
|
||||||
|
begin
|
||||||
|
if not Assigned(FDoMainFormEvent) then
|
||||||
|
raise Exception.Create('Evento para la creación del formulario principal no asignado (DoMainForm)');
|
||||||
|
|
||||||
|
FDoMainFormEvent();
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TAppAdminPV.GetMainForm: TCustomForm;
|
||||||
|
begin
|
||||||
|
Result := Application.MainForm;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TAppAdminPV.GetDoMainFormEvent: TDoMainFormEvent;
|
||||||
|
begin
|
||||||
|
Result := FDoMainFormEvent;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TAppAdminPV.GetAppFullName: String;
|
||||||
|
begin
|
||||||
|
Result := uAppInfoUtils.GetAppFullName;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TAppAdminPV.GetAppName: String;
|
||||||
|
begin
|
||||||
|
Result := uAppInfoUtils.GetAppName;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TAppAdminPV.GetAppSplashForm: IAppSplashForm;
|
||||||
|
begin
|
||||||
|
Result := FAppSplashForm;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TAppAdminPV.GetAppVersion: String;
|
||||||
|
begin
|
||||||
|
Result := uAppInfoUtils.GetAppVersion;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TAppAdminPV.GetLoadModulesEvent: TDoLoadModulesEvent;
|
||||||
|
begin
|
||||||
|
Result := FDoLoadModulesEvent;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TAppAdminPV.GetModuleManager: THostManager;
|
||||||
|
begin
|
||||||
|
Result := FHostManager;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TAppAdminPV.GetTerminated: Boolean;
|
||||||
|
begin
|
||||||
|
Result := FTerminated;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TAppAdminPV.GetUsuarioActivo: IBizUsuario;
|
||||||
|
begin
|
||||||
|
Result := UsuariosController.CurrentUser;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TAppAdminPV.GetUsuariosController: IUsuariosController;
|
||||||
|
begin
|
||||||
|
if not Assigned(FUsuariosController) then
|
||||||
|
FUsuariosController := TUsuariosController.Create;
|
||||||
|
|
||||||
|
Result := FUsuariosController;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TAppAdminPV.HideSplashForm;
|
||||||
|
begin
|
||||||
|
if not Assigned(FAppSplashForm) then
|
||||||
|
raise Exception.Create('AppSplashForm no asignado (HideSplashForm)');
|
||||||
|
|
||||||
|
FAppSplashForm.Hide;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TAppAdminPV.AfterLoadModule(Sender: TObject;
|
||||||
|
AModuleInfo: TModuleInfo);
|
||||||
|
begin
|
||||||
|
RegisterModule(AModuleInfo);
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TAppAdminPV.RegisterModule(AModuleInfo: TModuleInfo);
|
||||||
|
begin
|
||||||
|
AppSplashForm.Mensaje := 'Cargando ''' + AModuleInfo.Module.ModuleName + '''...';
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TAppAdminPV.Run;
|
||||||
|
begin
|
||||||
|
if UsuariosController.StartLogin then
|
||||||
|
begin
|
||||||
|
ShowHourglassCursor;
|
||||||
|
try
|
||||||
|
CargarModulos;
|
||||||
|
DoMainForm;
|
||||||
|
finally
|
||||||
|
HideHourglassCursor;
|
||||||
|
HideSplashForm;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
Application.Run;
|
||||||
|
Terminate;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TAppAdminPV.SetDoMainFormEvent(
|
||||||
|
AMainFormEvent: TDoMainFormEvent);
|
||||||
|
begin
|
||||||
|
FDoMainFormEvent := AMainFormEvent;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TAppAdminPV.SetAppSplashForm(AAppSplashForm: IAppSplashForm);
|
||||||
|
begin
|
||||||
|
FAppSplashForm := AAppSplashForm;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TAppAdminPV.SetLoadModulesEvent(
|
||||||
|
ALoadModulesEvent: TDoLoadModulesEvent);
|
||||||
|
begin
|
||||||
|
FDoLoadModulesEvent := ALoadModulesEvent;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TAppAdminPV.ShowCapado;
|
||||||
|
begin
|
||||||
|
ShowInfoMessage('Sin Acceso', 'Funcionalidad en desarrollo, disculpen las molestias');
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TAppAdminPV.ShowSplashForm;
|
||||||
|
begin
|
||||||
|
if not Assigned(FAppSplashForm) then
|
||||||
|
raise Exception.Create('AppSplashForm no asignado (ShowSplashForm)');
|
||||||
|
|
||||||
|
FAppSplashForm.Show;
|
||||||
|
FAppSplashForm.Update;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TAppAdminPV.Terminate;
|
||||||
|
begin
|
||||||
|
ModuleManager.UnloadModules;
|
||||||
|
FTerminated := True;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TAppAdminPV.UpdateSplashForm;
|
||||||
|
begin
|
||||||
|
FAppSplashForm.Update;
|
||||||
|
end;
|
||||||
|
|
||||||
|
initialization
|
||||||
|
// Pongo esto aquí por ahora
|
||||||
|
uUsuariosViewRegister.RegisterViews;
|
||||||
|
|
||||||
|
finalization
|
||||||
|
// Pongo esto aquí por ahora
|
||||||
|
AppAdminPV := NIL;
|
||||||
|
|
||||||
|
uUsuariosViewRegister.UnregisterViews;
|
||||||
|
|
||||||
|
end.
|
||||||
@ -77,16 +77,15 @@ requires
|
|||||||
dxPSLnksD10,
|
dxPSLnksD10,
|
||||||
vclshlctrls,
|
vclshlctrls,
|
||||||
dclcxLibraryD10,
|
dclcxLibraryD10,
|
||||||
RemObjects_Core_D10,
|
RemObjects_Core_D11,
|
||||||
DataAbstract_Core_D10;
|
DataAbstract_Core_D11,
|
||||||
|
JSDialog100;
|
||||||
|
|
||||||
contains
|
contains
|
||||||
uDataModuleBase in 'uDataModuleBase.pas' {dmBase: TDAClientDataModule},
|
uDMBase in 'uDMBase.pas' {dmBase: TDAClientDataModule},
|
||||||
uEditorBase in 'uEditorBase.pas' {fEditorBase},
|
uEditorBase in 'uEditorBase.pas' {fEditorBase},
|
||||||
uEditorGridBase in 'uEditorGridBase.pas' {fEditorGridBase},
|
uEditorGridBase in 'uEditorGridBase.pas' {fEditorGridBase},
|
||||||
uEditorItem in 'uEditorItem.pas' {fEditorItem},
|
uEditorItem in 'uEditorItem.pas' {fEditorItem},
|
||||||
uDataTableUtils in 'uDataTableUtils.pas',
|
|
||||||
uEditorUtils in 'uEditorUtils.pas',
|
|
||||||
uEditorPreview in 'uEditorPreview.pas' {fEditorPreview},
|
uEditorPreview in 'uEditorPreview.pas' {fEditorPreview},
|
||||||
uViewPreview in 'uViewPreview.pas' {frViewPreview: TFrame},
|
uViewPreview in 'uViewPreview.pas' {frViewPreview: TFrame},
|
||||||
uViewBase in 'uViewBase.pas' {frViewBase: TCustomView},
|
uViewBase in 'uViewBase.pas' {frViewBase: TCustomView},
|
||||||
@ -95,15 +94,24 @@ contains
|
|||||||
uEditorDBItem in 'uEditorDBItem.pas' {fEditorDBItem: TCustomEditor},
|
uEditorDBItem in 'uEditorDBItem.pas' {fEditorDBItem: TCustomEditor},
|
||||||
uExceptions in 'uExceptions.pas',
|
uExceptions in 'uExceptions.pas',
|
||||||
uViewBarraSeleccion in 'uViewBarraSeleccion.pas' {frViewBarraSeleccion: TFrame},
|
uViewBarraSeleccion in 'uViewBarraSeleccion.pas' {frViewBarraSeleccion: TFrame},
|
||||||
uDBSelectionList in 'uDBSelectionList.pas',
|
|
||||||
uConfigurarConexion in 'uConfigurarConexion.pas' {fConfigurarConexion},
|
uConfigurarConexion in 'uConfigurarConexion.pas' {fConfigurarConexion},
|
||||||
uBizInformesBase in 'uBizInformesBase.pas',
|
uBizInformesBase in 'uBizInformesBase.pas',
|
||||||
uSysFunc in 'uSysFunc.pas',
|
|
||||||
VARELA_Intf in '..\Servidor\VARELA_Intf.pas',
|
|
||||||
uViewGrid in 'uViewGrid.pas' {frViewGrid: TCustomView},
|
uViewGrid in 'uViewGrid.pas' {frViewGrid: TCustomView},
|
||||||
uIntegerList in 'uIntegerList.pas',
|
VARELA_Intf in '..\Servicios\VARELA_Intf.pas',
|
||||||
schStockClient_Intf in '..\Modulos\Stock\Reglas\schStockClient_Intf.pas',
|
uControllerBase in 'Controladores\uControllerBase.pas',
|
||||||
schStockServer_Intf in '..\Modulos\Stock\Reglas\schStockServer_Intf.pas',
|
uDataModuleBase in 'uDataModuleBase.pas' {fDataModuleBase: TDataModuleBase},
|
||||||
uGridUtils in 'uGridUtils.pas';
|
uSysFunc in 'Utiles\uSysFunc.pas',
|
||||||
|
uDataTableUtils in 'Utiles\uDataTableUtils.pas',
|
||||||
|
uDBSelectionList in 'Utiles\uDBSelectionList.pas',
|
||||||
|
uDialogUtils in 'Utiles\uDialogUtils.pas',
|
||||||
|
uEditorUtils in 'Utiles\uEditorUtils.pas',
|
||||||
|
uGridUtils in 'Utiles\uGridUtils.pas',
|
||||||
|
uIntegerList in 'Utiles\uIntegerList.pas',
|
||||||
|
uViewRegistryUtils in 'ClassRegistry\uViewRegistryUtils.pas',
|
||||||
|
uClassRegistryUtils in 'ClassRegistry\uClassRegistryUtils.pas',
|
||||||
|
uEditorRegistryUtils in 'ClassRegistry\uEditorRegistryUtils.pas',
|
||||||
|
uInformeRegistryUtils in 'ClassRegistry\uInformeRegistryUtils.pas',
|
||||||
|
uAppInfoUtils in 'Utiles\uAppInfoUtils.pas',
|
||||||
|
uDateUtils in 'Utiles\uDateUtils.pas';
|
||||||
|
|
||||||
end.
|
end.
|
||||||
|
|||||||
@ -53,9 +53,7 @@
|
|||||||
<DelphiCompile Include="BaseD10.dpk">
|
<DelphiCompile Include="BaseD10.dpk">
|
||||||
<MainSource>MainSource</MainSource>
|
<MainSource>MainSource</MainSource>
|
||||||
</DelphiCompile>
|
</DelphiCompile>
|
||||||
<DCCReference Include="..\Modulos\Stock\Reglas\schStockClient_Intf.pas" />
|
<DCCReference Include="..\Servicios\VARELA_Intf.pas" />
|
||||||
<DCCReference Include="..\Modulos\Stock\Reglas\schStockServer_Intf.pas" />
|
|
||||||
<DCCReference Include="..\Servidor\VARELA_Intf.pas" />
|
|
||||||
<DCCReference Include="C:\Documents and Settings\Usuario\adortl.dcp" />
|
<DCCReference Include="C:\Documents and Settings\Usuario\adortl.dcp" />
|
||||||
<DCCReference Include="C:\Documents and Settings\Usuario\ccpack10.dcp" />
|
<DCCReference Include="C:\Documents and Settings\Usuario\ccpack10.dcp" />
|
||||||
<DCCReference Include="C:\Documents and Settings\Usuario\cxDataD10.dcp" />
|
<DCCReference Include="C:\Documents and Settings\Usuario\cxDataD10.dcp" />
|
||||||
@ -67,7 +65,7 @@
|
|||||||
<DCCReference Include="C:\Documents and Settings\Usuario\cxIntlPrintSys3D10.dcp" />
|
<DCCReference Include="C:\Documents and Settings\Usuario\cxIntlPrintSys3D10.dcp" />
|
||||||
<DCCReference Include="C:\Documents and Settings\Usuario\cxLibraryD10.dcp" />
|
<DCCReference Include="C:\Documents and Settings\Usuario\cxLibraryD10.dcp" />
|
||||||
<DCCReference Include="C:\Documents and Settings\Usuario\cxPageControlD10.dcp" />
|
<DCCReference Include="C:\Documents and Settings\Usuario\cxPageControlD10.dcp" />
|
||||||
<DCCReference Include="C:\Documents and Settings\Usuario\DataAbstract_Core_D10.dcp" />
|
<DCCReference Include="C:\Documents and Settings\Usuario\DataAbstract_Core_D11.dcp" />
|
||||||
<DCCReference Include="C:\Documents and Settings\Usuario\dbrtl.dcp" />
|
<DCCReference Include="C:\Documents and Settings\Usuario\dbrtl.dcp" />
|
||||||
<DCCReference Include="C:\Documents and Settings\Usuario\dclcxLibraryD10.dcp" />
|
<DCCReference Include="C:\Documents and Settings\Usuario\dclcxLibraryD10.dcp" />
|
||||||
<DCCReference Include="C:\Documents and Settings\Usuario\designide.dcp" />
|
<DCCReference Include="C:\Documents and Settings\Usuario\designide.dcp" />
|
||||||
@ -84,12 +82,11 @@
|
|||||||
<DCCReference Include="C:\Documents and Settings\Usuario\dxThemeD10.dcp" />
|
<DCCReference Include="C:\Documents and Settings\Usuario\dxThemeD10.dcp" />
|
||||||
<DCCReference Include="C:\Documents and Settings\Usuario\frx10.dcp" />
|
<DCCReference Include="C:\Documents and Settings\Usuario\frx10.dcp" />
|
||||||
<DCCReference Include="C:\Documents and Settings\Usuario\frxe10.dcp" />
|
<DCCReference Include="C:\Documents and Settings\Usuario\frxe10.dcp" />
|
||||||
<DCCReference Include="C:\Documents and Settings\Usuario\frxTee10.dcp" />
|
|
||||||
<DCCReference Include="C:\Documents and Settings\Usuario\fs10.dcp" />
|
<DCCReference Include="C:\Documents and Settings\Usuario\fs10.dcp" />
|
||||||
<DCCReference Include="C:\Documents and Settings\Usuario\fsTee10.dcp" />
|
|
||||||
<DCCReference Include="C:\Documents and Settings\Usuario\GUISDK_D10.dcp" />
|
<DCCReference Include="C:\Documents and Settings\Usuario\GUISDK_D10.dcp" />
|
||||||
<DCCReference Include="C:\Documents and Settings\Usuario\Jcl.dcp" />
|
<DCCReference Include="C:\Documents and Settings\Usuario\Jcl.dcp" />
|
||||||
<DCCReference Include="C:\Documents and Settings\Usuario\JclVcl.dcp" />
|
<DCCReference Include="C:\Documents and Settings\Usuario\JclVcl.dcp" />
|
||||||
|
<DCCReference Include="C:\Documents and Settings\Usuario\JSDialog100.dcp" />
|
||||||
<DCCReference Include="C:\Documents and Settings\Usuario\JvAppFrmD10R.dcp" />
|
<DCCReference Include="C:\Documents and Settings\Usuario\JvAppFrmD10R.dcp" />
|
||||||
<DCCReference Include="C:\Documents and Settings\Usuario\JvCoreD10R.dcp" />
|
<DCCReference Include="C:\Documents and Settings\Usuario\JvCoreD10R.dcp" />
|
||||||
<DCCReference Include="C:\Documents and Settings\Usuario\JvCtrlsD10R.dcp" />
|
<DCCReference Include="C:\Documents and Settings\Usuario\JvCtrlsD10R.dcp" />
|
||||||
@ -99,35 +96,44 @@
|
|||||||
<DCCReference Include="C:\Documents and Settings\Usuario\JvSystemD10R.dcp" />
|
<DCCReference Include="C:\Documents and Settings\Usuario\JvSystemD10R.dcp" />
|
||||||
<DCCReference Include="C:\Documents and Settings\Usuario\PngComponentsD10.dcp" />
|
<DCCReference Include="C:\Documents and Settings\Usuario\PngComponentsD10.dcp" />
|
||||||
<DCCReference Include="C:\Documents and Settings\Usuario\PNG_D10.dcp" />
|
<DCCReference Include="C:\Documents and Settings\Usuario\PNG_D10.dcp" />
|
||||||
<DCCReference Include="C:\Documents and Settings\Usuario\RemObjects_Core_D10.dcp" />
|
<DCCReference Include="C:\Documents and Settings\Usuario\RemObjects_Core_D11.dcp" />
|
||||||
<DCCReference Include="C:\Documents and Settings\Usuario\rtl.dcp" />
|
<DCCReference Include="C:\Documents and Settings\Usuario\rtl.dcp" />
|
||||||
<DCCReference Include="C:\Documents and Settings\Usuario\tb2k_D10.dcp" />
|
<DCCReference Include="C:\Documents and Settings\Usuario\tb2k_D10.dcp" />
|
||||||
<DCCReference Include="C:\Documents and Settings\Usuario\tbx_D10.dcp" />
|
<DCCReference Include="C:\Documents and Settings\Usuario\tbx_D10.dcp" />
|
||||||
<DCCReference Include="C:\Documents and Settings\Usuario\tee.dcp" />
|
<DCCReference Include="C:\Documents and Settings\Usuario\tee.dcp" />
|
||||||
<DCCReference Include="C:\Documents and Settings\Usuario\teeui.dcp" />
|
|
||||||
<DCCReference Include="C:\Documents and Settings\Usuario\vcl.dcp" />
|
<DCCReference Include="C:\Documents and Settings\Usuario\vcl.dcp" />
|
||||||
<DCCReference Include="C:\Documents and Settings\Usuario\vclactnband.dcp" />
|
<DCCReference Include="C:\Documents and Settings\Usuario\vclactnband.dcp" />
|
||||||
<DCCReference Include="C:\Documents and Settings\Usuario\vcldb.dcp" />
|
<DCCReference Include="C:\Documents and Settings\Usuario\vcldb.dcp" />
|
||||||
<DCCReference Include="C:\Documents and Settings\Usuario\vcljpg.dcp" />
|
<DCCReference Include="C:\Documents and Settings\Usuario\vcljpg.dcp" />
|
||||||
<DCCReference Include="C:\Documents and Settings\Usuario\vclshlctrls.dcp" />
|
<DCCReference Include="C:\Documents and Settings\Usuario\vclshlctrls.dcp" />
|
||||||
<DCCReference Include="C:\Documents and Settings\Usuario\vclx.dcp" />
|
<DCCReference Include="C:\Documents and Settings\Usuario\vclx.dcp" />
|
||||||
|
<DCCReference Include="ClassRegistry\uClassRegistryUtils.pas" />
|
||||||
|
<DCCReference Include="ClassRegistry\uEditorRegistryUtils.pas" />
|
||||||
|
<DCCReference Include="ClassRegistry\uInformeRegistryUtils.pas" />
|
||||||
|
<DCCReference Include="ClassRegistry\uViewRegistryUtils.pas" />
|
||||||
|
<DCCReference Include="Controladores\uControllerBase.pas" />
|
||||||
<DCCReference Include="uBizInformesBase.pas" />
|
<DCCReference Include="uBizInformesBase.pas" />
|
||||||
<DCCReference Include="uConfigurarConexion.pas">
|
<DCCReference Include="uConfigurarConexion.pas">
|
||||||
<Form>fConfigurarConexion</Form>
|
<Form>fConfigurarConexion</Form>
|
||||||
</DCCReference>
|
</DCCReference>
|
||||||
<DCCReference Include="uDataModuleBase.pas">
|
<DCCReference Include="uDataModuleBase.pas">
|
||||||
<Form>dmBase</Form>
|
<Form>fDataModuleBase</Form>
|
||||||
|
<DesignClass>TDataModuleBase</DesignClass>
|
||||||
|
</DCCReference>
|
||||||
|
<DCCReference Include="uDMBase.pas">
|
||||||
|
<Form>dmBase</Form>
|
||||||
|
<DesignClass>TDAClientDataModule</DesignClass>
|
||||||
</DCCReference>
|
</DCCReference>
|
||||||
<DCCReference Include="uDataTableUtils.pas" />
|
|
||||||
<DCCReference Include="uDBSelectionList.pas" />
|
|
||||||
<DCCReference Include="uEditorBase.pas">
|
<DCCReference Include="uEditorBase.pas">
|
||||||
<Form>fEditorBase</Form>
|
<Form>fEditorBase</Form>
|
||||||
</DCCReference>
|
</DCCReference>
|
||||||
<DCCReference Include="uEditorDBBase.pas">
|
<DCCReference Include="uEditorDBBase.pas">
|
||||||
<Form>fEditorDBBase</Form>
|
<Form>fEditorDBBase</Form>
|
||||||
|
<DesignClass>TCustomEditor</DesignClass>
|
||||||
</DCCReference>
|
</DCCReference>
|
||||||
<DCCReference Include="uEditorDBItem.pas">
|
<DCCReference Include="uEditorDBItem.pas">
|
||||||
<Form>fEditorDBItem</Form>
|
<Form>fEditorDBItem</Form>
|
||||||
|
<DesignClass>TCustomEditor</DesignClass>
|
||||||
</DCCReference>
|
</DCCReference>
|
||||||
<DCCReference Include="uEditorGridBase.pas">
|
<DCCReference Include="uEditorGridBase.pas">
|
||||||
<Form>fEditorGridBase</Form>
|
<Form>fEditorGridBase</Form>
|
||||||
@ -138,25 +144,35 @@
|
|||||||
<DCCReference Include="uEditorPreview.pas">
|
<DCCReference Include="uEditorPreview.pas">
|
||||||
<Form>fEditorPreview</Form>
|
<Form>fEditorPreview</Form>
|
||||||
</DCCReference>
|
</DCCReference>
|
||||||
<DCCReference Include="uEditorUtils.pas" />
|
|
||||||
<DCCReference Include="uExceptions.pas" />
|
<DCCReference Include="uExceptions.pas" />
|
||||||
<DCCReference Include="uGridUtils.pas" />
|
<DCCReference Include="Utiles\uAppInfoUtils.pas" />
|
||||||
<DCCReference Include="uIntegerList.pas" />
|
<DCCReference Include="Utiles\uDataTableUtils.pas" />
|
||||||
<DCCReference Include="uSysFunc.pas" />
|
<DCCReference Include="Utiles\uDateUtils.pas" />
|
||||||
|
<DCCReference Include="Utiles\uDBSelectionList.pas" />
|
||||||
|
<DCCReference Include="Utiles\uDialogUtils.pas" />
|
||||||
|
<DCCReference Include="Utiles\uEditorUtils.pas" />
|
||||||
|
<DCCReference Include="Utiles\uGridUtils.pas" />
|
||||||
|
<DCCReference Include="Utiles\uIntegerList.pas" />
|
||||||
|
<DCCReference Include="Utiles\uSysFunc.pas" />
|
||||||
<DCCReference Include="uViewBarraSeleccion.pas">
|
<DCCReference Include="uViewBarraSeleccion.pas">
|
||||||
<Form>frViewBarraSeleccion</Form>
|
<Form>frViewBarraSeleccion</Form>
|
||||||
|
<DesignClass>TFrame</DesignClass>
|
||||||
</DCCReference>
|
</DCCReference>
|
||||||
<DCCReference Include="uViewBase.pas">
|
<DCCReference Include="uViewBase.pas">
|
||||||
<Form>frViewBase</Form>
|
<Form>frViewBase</Form>
|
||||||
|
<DesignClass>TCustomView</DesignClass>
|
||||||
</DCCReference>
|
</DCCReference>
|
||||||
<DCCReference Include="uViewGrid.pas">
|
<DCCReference Include="uViewGrid.pas">
|
||||||
<Form>frViewGrid</Form>
|
<Form>frViewGrid</Form>
|
||||||
|
<DesignClass>TCustomView</DesignClass>
|
||||||
</DCCReference>
|
</DCCReference>
|
||||||
<DCCReference Include="uViewGridBase.pas">
|
<DCCReference Include="uViewGridBase.pas">
|
||||||
<Form>frViewGridBase</Form>
|
<Form>frViewGridBase</Form>
|
||||||
|
<DesignClass>TCustomView</DesignClass>
|
||||||
</DCCReference>
|
</DCCReference>
|
||||||
<DCCReference Include="uViewPreview.pas">
|
<DCCReference Include="uViewPreview.pas">
|
||||||
<Form>frViewPreview</Form>
|
<Form>frViewPreview</Form>
|
||||||
|
<DesignClass>TFrame</DesignClass>
|
||||||
</DCCReference>
|
</DCCReference>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
</Project>
|
</Project>
|
||||||
|
|||||||
@ -8,14 +8,17 @@
|
|||||||
resources were bound to the produced executable.
|
resources were bound to the produced executable.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
#define uClassRegistryUtils_eClassnotFound 65520
|
||||||
STRINGTABLE
|
STRINGTABLE
|
||||||
BEGIN
|
BEGIN
|
||||||
|
uClassRegistryUtils_eClassnotFound, "Class \"%s\" was not found in the registry."
|
||||||
END
|
END
|
||||||
|
|
||||||
/* C:\Varela_D2007\Source\Base\uConfigurarConexion.dfm */
|
/* C:\Varela_D2007\Source\Base\uConfigurarConexion.dfm */
|
||||||
/* C:\Varela_D2007\Source\Base\uDataModuleBase.dfm */
|
/* C:\Varela_D2007\Source\Base\uDMBase.dfm */
|
||||||
/* C:\Varela_D2007\Source\Base\uViewBase.dfm */
|
/* C:\Varela_D2007\Source\Base\uViewBase.dfm */
|
||||||
/* C:\Varela_D2007\Source\Base\uEditorBase.dfm */
|
/* C:\Varela_D2007\Source\Base\uEditorBase.dfm */
|
||||||
|
/* C:\Varela_D2007\Source\Base\uDataModuleBase.dfm */
|
||||||
/* C:\Varela_D2007\Source\Base\uViewGridBase.dfm */
|
/* C:\Varela_D2007\Source\Base\uViewGridBase.dfm */
|
||||||
/* C:\Varela_D2007\Source\Base\uEditorItem.dfm */
|
/* C:\Varela_D2007\Source\Base\uEditorItem.dfm */
|
||||||
/* C:\Varela_D2007\Source\Base\uEditorDBBase.dfm */
|
/* C:\Varela_D2007\Source\Base\uEditorDBBase.dfm */
|
||||||
@ -26,4 +29,4 @@ END
|
|||||||
/* C:\Varela_D2007\Source\Base\uViewBarraSeleccion.dfm */
|
/* C:\Varela_D2007\Source\Base\uViewBarraSeleccion.dfm */
|
||||||
/* C:\Varela_D2007\Source\Base\uViewGrid.dfm */
|
/* C:\Varela_D2007\Source\Base\uViewGrid.dfm */
|
||||||
/* C:\Varela_D2007\Source\Base\BaseD10.res */
|
/* C:\Varela_D2007\Source\Base\BaseD10.res */
|
||||||
/* C:\DOCUME~1\Usuario\CONFIG~1\Temp\dtf9.tmp */
|
/* C:\DOCUME~1\Usuario\CONFIG~1\Temp\dtf21.tmp */
|
||||||
|
|||||||
Binary file not shown.
336
Source/Base/ClassRegistry/uClassRegistryUtils.pas
Normal file
336
Source/Base/ClassRegistry/uClassRegistryUtils.pas
Normal file
@ -0,0 +1,336 @@
|
|||||||
|
unit uClassRegistryUtils;
|
||||||
|
|
||||||
|
interface
|
||||||
|
|
||||||
|
uses
|
||||||
|
Classes, SysUtils, Forms, uGUIBase;
|
||||||
|
|
||||||
|
type
|
||||||
|
IClassRegistry = Interface
|
||||||
|
['{FD23C946-4103-4C67-9C3F-644B52826833}']
|
||||||
|
procedure RegisterClass( aClass: TClass; const aDisplayname: String = '');
|
||||||
|
procedure RegisterClasses( const aClasses: array of TClass;
|
||||||
|
const aDisplaynames: array of String );
|
||||||
|
procedure UnRegisterClass( aClass: TClass );
|
||||||
|
function FindClass( const aClassOrDisplayname: String ): Tclass;
|
||||||
|
function IsClassRegistered( aClass: TClass ): Boolean; overload;
|
||||||
|
function IsClassRegistered( const aDisplayname: String ): Boolean; overload;
|
||||||
|
procedure GetRegisteredClasses( aList: TStrings; aMinClass: TClass = nil);
|
||||||
|
function CreateObject( const aClassOrDisplayname: String ): TObject;
|
||||||
|
end;
|
||||||
|
|
||||||
|
IComponentRegistry = Interface( IClassRegistry )
|
||||||
|
['{04BAA01F-9AF4-4E60-9922-641E127A35C2}']
|
||||||
|
function CreateComponent( const aClassOrDisplayname: String;
|
||||||
|
aOwner:TComponent = nil ): TComponent;
|
||||||
|
end;
|
||||||
|
|
||||||
|
IFormRegistry = Interface( IComponentRegistry )
|
||||||
|
['{28E3BF72-1378-4136-B1FB-027FBB8FE99B}']
|
||||||
|
function CreateForm( const aClassOrDisplayname: String;
|
||||||
|
aOwner: TComponent = nil ): TForm;
|
||||||
|
end;
|
||||||
|
|
||||||
|
IDataModuleRegistry = Interface( IComponentRegistry )
|
||||||
|
['{9D8D1D23-6A5C-4351-9393-093CD8B76788}']
|
||||||
|
function CreateDatamodule( const aClassOrDisplayname: String;
|
||||||
|
aOwner: TComponent = nil ): TDatamodule;
|
||||||
|
end;
|
||||||
|
|
||||||
|
IReportRegistry = Interface( IComponentRegistry )
|
||||||
|
['{49D3C8D5-8FEE-4F15-A6D2-51CB1DB29F8D}']
|
||||||
|
function CreateReport( const aClassOrDisplayname: String;
|
||||||
|
aOwner: TComponent = nil ): TInterfacedObject;
|
||||||
|
end;
|
||||||
|
|
||||||
|
TClassRegistry = class( TInterfacedObject, IClassRegistry )
|
||||||
|
private
|
||||||
|
FList: TStringlist;
|
||||||
|
FMinAcceptableClass: TClass;
|
||||||
|
|
||||||
|
function FindClassByClassname( const aClassname: String ): Tclass;
|
||||||
|
function FindClassByDisplayname( const aDisplayname: String ): TClass;
|
||||||
|
function IsClassAcceptable( aClass: TClass ): Boolean;
|
||||||
|
function GetClasses(index: integer): TClass;
|
||||||
|
function GetCount: Integer;
|
||||||
|
protected
|
||||||
|
procedure ValidateMinAcceptableClass(var aMinAcceptableClass: TClass ); virtual;
|
||||||
|
procedure RegisterClass( aClass: TClass; const aDisplayname: String = '');
|
||||||
|
procedure RegisterClasses( const aClasses: array of TClass;
|
||||||
|
const aDisplaynames: array of String );
|
||||||
|
procedure UnRegisterClass( aClass: TClass );
|
||||||
|
function FindClass( const aClassOrDisplayname: String ): Tclass;
|
||||||
|
function IsClassRegistered( aClass: TClass ): Boolean; overload;
|
||||||
|
function IsClassRegistered( const aDisplayname: String ): Boolean; overload;
|
||||||
|
procedure GetRegisteredClasses( aList: TStrings; aMinClass: TClass = nil);
|
||||||
|
function CreateObject( const aClassOrDisplayname: String ): TObject;
|
||||||
|
property MinAcceptableClass: TClass read FMinAcceptableClass;
|
||||||
|
property List: TStringlist read FList;
|
||||||
|
property Count: Integer read GetCount;
|
||||||
|
property Classes[ index: integer ]: TClass read GetClasses;
|
||||||
|
public
|
||||||
|
constructor Create( minAcceptableClass: TClass = nil ); virtual;
|
||||||
|
destructor Destroy; override;
|
||||||
|
end;
|
||||||
|
|
||||||
|
TComponentRegistry = class( TClassRegistry, IComponentRegistry )
|
||||||
|
protected
|
||||||
|
procedure ValidateMinAcceptableClass(var aMinAcceptableClass: TClass ); override;
|
||||||
|
function CreateComponent( const aClassOrDisplayname: String;
|
||||||
|
aOwner: TComponent = nil ): TComponent;
|
||||||
|
end;
|
||||||
|
|
||||||
|
TFormRegistry = class( TComponentRegistry, IFormRegistry )
|
||||||
|
protected
|
||||||
|
procedure ValidateMinAcceptableClass(var aMinAcceptableClass: TClass ); override;
|
||||||
|
function CreateForm( const aClassOrDisplayname: String;
|
||||||
|
aOwner: TComponent = nil ): TForm;
|
||||||
|
end;
|
||||||
|
|
||||||
|
TDataModuleRegistry = class( TComponentRegistry, IDataModuleRegistry )
|
||||||
|
protected
|
||||||
|
procedure ValidateMinAcceptableClass(var aMinAcceptableClass: TClass); override;
|
||||||
|
function CreateDatamodule( const aClassOrDisplayname: String;
|
||||||
|
aOwner: TComponent = nil ): TDatamodule;
|
||||||
|
end;
|
||||||
|
|
||||||
|
TReportRegistry = class( TComponentRegistry, IReportRegistry )
|
||||||
|
protected
|
||||||
|
procedure ValidateMinAcceptableClass(var aMinAcceptableClass: TClass ); override;
|
||||||
|
function CreateReport( const aClassOrDisplayname: String;
|
||||||
|
aOwner: TComponent = nil ): TInterfacedObject;
|
||||||
|
end;
|
||||||
|
|
||||||
|
EClassRegistryError = class( Exception );
|
||||||
|
|
||||||
|
implementation
|
||||||
|
|
||||||
|
{ TClassRegistry }
|
||||||
|
|
||||||
|
ResourceString
|
||||||
|
eClassnotFound = 'Class "%s" was not found in the registry.';
|
||||||
|
|
||||||
|
constructor TClassRegistry.Create(minAcceptableClass: TClass);
|
||||||
|
begin
|
||||||
|
inherited Create;
|
||||||
|
FList := Tstringlist.Create;
|
||||||
|
ValidateMinAcceptableClass( minAcceptableClass );
|
||||||
|
FMinAcceptableClass := minAcceptableClass;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TClassRegistry.CreateObject(
|
||||||
|
const aClassOrDisplayname: String): TObject;
|
||||||
|
begin
|
||||||
|
Result := FindClass( aClassOrDisplayname ).Create;
|
||||||
|
end;
|
||||||
|
|
||||||
|
destructor TClassRegistry.Destroy;
|
||||||
|
begin
|
||||||
|
Flist.Free;
|
||||||
|
inherited;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TClassRegistry.FindClass(
|
||||||
|
const aClassOrDisplayname: String): Tclass;
|
||||||
|
begin
|
||||||
|
Result := FindClassByDisplayname( aClassOrDisplayname );
|
||||||
|
If not Assigned( Result ) Then
|
||||||
|
Result := FindClassByClassname( aClassOrDisplayname );
|
||||||
|
If not Assigned( Result ) Then
|
||||||
|
raise EClassRegistryError.CreateFmt
|
||||||
|
( eClassnotFound, [ aClassOrDisplayname ] );
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TClassRegistry.FindClassByClassname(
|
||||||
|
const aClassname: String): Tclass;
|
||||||
|
var
|
||||||
|
i: Integer;
|
||||||
|
begin
|
||||||
|
for i:= 0 to count-1 do begin
|
||||||
|
Result := classes[i];
|
||||||
|
If Result.ClassNameIs( aClassname ) Then
|
||||||
|
Exit;
|
||||||
|
end;
|
||||||
|
Result := nil;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TClassRegistry.FindClassByDisplayname(
|
||||||
|
const aDisplayname: String): TClass;
|
||||||
|
var
|
||||||
|
i: Integer;
|
||||||
|
begin
|
||||||
|
i:= List.IndexOf( aDisplayname );
|
||||||
|
If i >= 0 Then
|
||||||
|
Result := Classes[i]
|
||||||
|
Else
|
||||||
|
Result := nil;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TClassRegistry.GetClasses(index: integer): TClass;
|
||||||
|
begin
|
||||||
|
Result := TClass( List.Objects[index] );
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TClassRegistry.GetCount: Integer;
|
||||||
|
begin
|
||||||
|
Result := List.Count;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TClassRegistry.GetRegisteredClasses(aList: TStrings;
|
||||||
|
aMinClass: TClass);
|
||||||
|
var
|
||||||
|
i: Integer;
|
||||||
|
aClass: TClass;
|
||||||
|
begin
|
||||||
|
Assert( Assigned( aList ));
|
||||||
|
aList.BeginUpdate;
|
||||||
|
try
|
||||||
|
aList.Clear;
|
||||||
|
If not Assigned( aMinClass ) Then
|
||||||
|
aList.Assign( List )
|
||||||
|
else begin
|
||||||
|
For i:= 0 To Count-1 Do Begin
|
||||||
|
aClass := Classes[i];
|
||||||
|
If aClass.InheritsFrom( aMinClass ) Then
|
||||||
|
aList.AddObject( List[i], TObject( aClass ));
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
finally
|
||||||
|
aList.EndUpdate
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TClassRegistry.IsClassAcceptable(aClass: TClass): Boolean;
|
||||||
|
begin
|
||||||
|
Result := Assigned( aClass ) and
|
||||||
|
aClass.InheritsFrom( MinAcceptableClass );
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TClassRegistry.IsClassRegistered(const aDisplayname: String): Boolean;
|
||||||
|
begin
|
||||||
|
Result := List.IndexOf(aDisplayname) >= 0;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TClassRegistry.IsClassRegistered(aClass: TClass): Boolean;
|
||||||
|
begin
|
||||||
|
Result := List.IndexOfObject( TObject( aClass )) >= 0;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TClassRegistry.RegisterClass(aClass: TClass;
|
||||||
|
const aDisplayname: String);
|
||||||
|
begin
|
||||||
|
Assert( Assigned( aClass ), 'Cannot register Nil class' );
|
||||||
|
If aDisplayname = '' Then
|
||||||
|
RegisterClass( aClass, aClass.Classname )
|
||||||
|
else begin
|
||||||
|
Assert( IsClassAcceptable( aClass ),
|
||||||
|
format('Cannot register %s since it does not inherit from %s',
|
||||||
|
[aclass.classname, MinAcceptableClass.classname] ));
|
||||||
|
Assert( not IsClassRegistered( aClass ),
|
||||||
|
Format('Class %s is already registered.', [aClass.Classname]));
|
||||||
|
List.AddObject( aDisplayname, TObject( aClass ));
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TClassRegistry.RegisterClasses(const aClasses: array of TClass;
|
||||||
|
const aDisplaynames: array of String);
|
||||||
|
var
|
||||||
|
i: Integer;
|
||||||
|
begin
|
||||||
|
Assert( High( aClasses ) = High( aDisplaynames ),
|
||||||
|
'Size of both parameter arrays has to be the same.' );
|
||||||
|
for i:= Low( aClasses ) to High( aClasses ) do
|
||||||
|
RegisterClass( aClasses[i], aDisplaynames[i] );
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TClassRegistry.UnRegisterClass(aClass: TClass);
|
||||||
|
var
|
||||||
|
i: Integer;
|
||||||
|
begin
|
||||||
|
i:= List.IndexOfObject( TObject( aClass ));
|
||||||
|
If i >= 0 Then
|
||||||
|
List.Delete( i );
|
||||||
|
// does not consider attempt to unregister a class that is not
|
||||||
|
// registered as an error.
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TClassRegistry.ValidateMinAcceptableClass(
|
||||||
|
var aMinAcceptableClass: TClass);
|
||||||
|
begin
|
||||||
|
If not Assigned( aMinAcceptableClass ) Then
|
||||||
|
aMinAcceptableClass := TObject;
|
||||||
|
end;
|
||||||
|
|
||||||
|
{ TComponentRegistry }
|
||||||
|
|
||||||
|
function TComponentRegistry.CreateComponent(
|
||||||
|
const aClassOrDisplayname: String; aOwner: TComponent): TComponent;
|
||||||
|
var
|
||||||
|
aClass: TComponentClass;
|
||||||
|
begin
|
||||||
|
aClass := TComponentClass( FindClass( aClassOrDisplayname ));
|
||||||
|
Result := aClass.Create( aOwner );
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TComponentRegistry.ValidateMinAcceptableClass(
|
||||||
|
var aMinAcceptableClass: TClass);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
If not aMinAcceptableClass.InheritsFrom( TComponent )
|
||||||
|
Then
|
||||||
|
aMinAcceptableClass := TComponent;
|
||||||
|
end;
|
||||||
|
|
||||||
|
{ TFormRegistry }
|
||||||
|
|
||||||
|
function TFormRegistry.CreateForm(const aClassOrDisplayname: String;
|
||||||
|
aOwner: TComponent): TForm;
|
||||||
|
begin
|
||||||
|
Result := CreateComponent( aClassOrDisplayname, aOwner ) As TForm;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TFormRegistry.ValidateMinAcceptableClass(
|
||||||
|
var aMinAcceptableClass: TClass);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
If not aMinAcceptableClass.InheritsFrom( TForm )
|
||||||
|
Then
|
||||||
|
aMinAcceptableClass := TForm;
|
||||||
|
end;
|
||||||
|
|
||||||
|
{ TDataModuleRegistry }
|
||||||
|
|
||||||
|
function TDataModuleRegistry.CreateDatamodule(
|
||||||
|
const aClassOrDisplayname: String; aOwner: TComponent): TDatamodule;
|
||||||
|
begin
|
||||||
|
Result := CreateComponent( aClassOrDisplayname, aOwner ) As TDatamodule;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TDataModuleRegistry.ValidateMinAcceptableClass(
|
||||||
|
var aMinAcceptableClass: TClass);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
If not aMinAcceptableClass.InheritsFrom( TDatamodule )
|
||||||
|
Then
|
||||||
|
aMinAcceptableClass := TDatamodule;
|
||||||
|
end;
|
||||||
|
|
||||||
|
{ TReportRegistry }
|
||||||
|
|
||||||
|
function TReportRegistry.CreateReport(const aClassOrDisplayname: String;
|
||||||
|
aOwner: TComponent): TInterfacedObject;
|
||||||
|
begin
|
||||||
|
Result := CreateObject( aClassOrDisplayname) As TInterfacedObject;
|
||||||
|
// Result := CreateComponent( aClassOrDisplayname, aOwner ) As TInterfacedObject;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TReportRegistry.ValidateMinAcceptableClass(
|
||||||
|
var aMinAcceptableClass: TClass);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
If not aMinAcceptableClass.InheritsFrom( TInterfacedObject )
|
||||||
|
Then
|
||||||
|
aMinAcceptableClass := TInterfacedObject;
|
||||||
|
end;
|
||||||
|
|
||||||
|
end.
|
||||||
81
Source/Base/ClassRegistry/uEditorRegistryUtils.pas
Normal file
81
Source/Base/ClassRegistry/uEditorRegistryUtils.pas
Normal file
@ -0,0 +1,81 @@
|
|||||||
|
unit uEditorRegistryUtils;
|
||||||
|
|
||||||
|
interface
|
||||||
|
|
||||||
|
uses
|
||||||
|
Classes, Forms, uClassRegistryUtils, uCustomEditor;
|
||||||
|
|
||||||
|
type
|
||||||
|
{
|
||||||
|
IEditorRegistry = interface (IComponentRegistry)
|
||||||
|
22F14B82-AC61-4987-847E-AF8513DE2A10
|
||||||
|
function CreateEditor(const aClassOrDisplayname: String;
|
||||||
|
aOwner: TComponent = NIL): TCustomEditor;
|
||||||
|
end;
|
||||||
|
|
||||||
|
TEditorRegistry = class(TComponentRegistry, IEditorRegistry)
|
||||||
|
protected
|
||||||
|
procedure ValidateMinAcceptableClass(var aMinAcceptableClass: TClass); override;
|
||||||
|
function CreateEditor(const aClassOrDisplayname: String;
|
||||||
|
aOwner: TComponent = nil): TCustomEditor;
|
||||||
|
end;
|
||||||
|
}
|
||||||
|
|
||||||
|
IEditorRegistry = interface (IFormRegistry)
|
||||||
|
['{F6AC050F-5547-4E1F-AA44-DA0D06EDA4D7}']
|
||||||
|
function CreateEditor(const aClassOrDisplayname: String;
|
||||||
|
aOwner: TComponent = NIL): TForm;
|
||||||
|
end;
|
||||||
|
|
||||||
|
TEditorRegistry = class(TFormRegistry, IEditorRegistry)
|
||||||
|
protected
|
||||||
|
function CreateEditor(const aClassOrDisplayname: String;
|
||||||
|
aOwner: TComponent = nil): TForm;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function CreateEditor(const AName: String; const IID: TGUID; out Intf): Boolean;
|
||||||
|
|
||||||
|
var
|
||||||
|
EditorRegistry : IEditorRegistry;
|
||||||
|
|
||||||
|
implementation
|
||||||
|
|
||||||
|
uses
|
||||||
|
SysUtils, cxControls;
|
||||||
|
|
||||||
|
function CreateEditor(const AName: String; const IID: TGUID; out Intf): Boolean;
|
||||||
|
begin
|
||||||
|
ShowHourglassCursor;
|
||||||
|
try
|
||||||
|
Result := Supports(EditorRegistry.CreateEditor(AName, Application), IID, Intf);
|
||||||
|
finally
|
||||||
|
HideHourglassCursor;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
{ TEditorRegistry }
|
||||||
|
|
||||||
|
function TEditorRegistry.CreateEditor(const aClassOrDisplayname: String;
|
||||||
|
aOwner: TComponent): TForm;
|
||||||
|
begin
|
||||||
|
if not Assigned(AOwner) then
|
||||||
|
AOwner := Application;
|
||||||
|
Result := CreateComponent( aClassOrDisplayname, aOwner ) as TForm;
|
||||||
|
end;
|
||||||
|
|
||||||
|
{procedure TEditorRegistry.ValidateMinAcceptableClass(
|
||||||
|
var aMinAcceptableClass: TClass);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
if not aMinAcceptableClass.InheritsFrom(TCustomEditor) then
|
||||||
|
aMinAcceptableClass := TCustomEditor;
|
||||||
|
end;}
|
||||||
|
|
||||||
|
initialization
|
||||||
|
EditorRegistry := TEditorRegistry.Create;
|
||||||
|
|
||||||
|
finalization
|
||||||
|
EditorRegistry := NIL;
|
||||||
|
|
||||||
|
end.
|
||||||
59
Source/Base/ClassRegistry/uInformeRegistryUtils.pas
Normal file
59
Source/Base/ClassRegistry/uInformeRegistryUtils.pas
Normal file
@ -0,0 +1,59 @@
|
|||||||
|
unit uInformeRegistryUtils;
|
||||||
|
|
||||||
|
interface
|
||||||
|
|
||||||
|
uses
|
||||||
|
Classes, Forms, uClassRegistryUtils;
|
||||||
|
|
||||||
|
type
|
||||||
|
IInformeRegistry = interface (IReportRegistry)
|
||||||
|
['{F6AC050F-5547-4E1F-AA44-DA0D06EDA4D7}']
|
||||||
|
function CreateInforme(const aClassOrDisplayname: String;
|
||||||
|
aOwner: TComponent = NIL): TInterfacedObject;
|
||||||
|
end;
|
||||||
|
|
||||||
|
TInformeRegistry = class(TReportRegistry, IInformeRegistry)
|
||||||
|
protected
|
||||||
|
function CreateInforme(const aClassOrDisplayname: String;
|
||||||
|
aOwner: TComponent = nil): TInterfacedObject;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function CreateInforme(const AName: String; const IID: TGUID; out Intf): Boolean;
|
||||||
|
|
||||||
|
var
|
||||||
|
InformeRegistry : IInformeRegistry;
|
||||||
|
|
||||||
|
implementation
|
||||||
|
|
||||||
|
uses
|
||||||
|
SysUtils, cxControls;
|
||||||
|
|
||||||
|
function CreateInforme(const AName: String; const IID: TGUID; out Intf): Boolean;
|
||||||
|
begin
|
||||||
|
ShowHourglassCursor;
|
||||||
|
try
|
||||||
|
Result := Supports(InformeRegistry.CreateInforme(AName, Application), IID, Intf);
|
||||||
|
finally
|
||||||
|
HideHourglassCursor;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
{ TInformeRegistry }
|
||||||
|
|
||||||
|
function TInformeRegistry.CreateInforme(const aClassOrDisplayname: String;
|
||||||
|
aOwner: TComponent): TInterfacedObject;
|
||||||
|
begin
|
||||||
|
{ if not Assigned(AOwner) then
|
||||||
|
AOwner := Application;}
|
||||||
|
Result := CreateObject( aClassOrDisplayname) as TInterfacedObject;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
initialization
|
||||||
|
InformeRegistry := TInformeRegistry.Create;
|
||||||
|
|
||||||
|
finalization
|
||||||
|
InformeRegistry := NIL;
|
||||||
|
|
||||||
|
end.
|
||||||
50
Source/Base/ClassRegistry/uViewRegistryUtils.pas
Normal file
50
Source/Base/ClassRegistry/uViewRegistryUtils.pas
Normal file
@ -0,0 +1,50 @@
|
|||||||
|
unit uViewRegistryUtils;
|
||||||
|
|
||||||
|
interface
|
||||||
|
|
||||||
|
uses
|
||||||
|
Classes, Forms, uClassRegistryUtils, uCustomView;
|
||||||
|
|
||||||
|
type
|
||||||
|
IViewRegistry = interface (IComponentRegistry)
|
||||||
|
['{F49AE52F-47EC-42AF-8365-A09270E4B45D}']
|
||||||
|
function CreateView(const aClassOrDisplayname: String;
|
||||||
|
aOwner: TComponent = nil): TCustomView;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
TViewRegistry = class(TComponentRegistry, IViewRegistry)
|
||||||
|
protected
|
||||||
|
procedure ValidateMinAcceptableClass(var aMinAcceptableClass: TClass); override;
|
||||||
|
function CreateView( const aClassOrDisplayname: String;
|
||||||
|
aOwner: TComponent = nil ): TCustomView;
|
||||||
|
end;
|
||||||
|
|
||||||
|
var
|
||||||
|
ViewRegistry : IViewRegistry;
|
||||||
|
|
||||||
|
implementation
|
||||||
|
|
||||||
|
{ TViewRegistry }
|
||||||
|
|
||||||
|
function TViewRegistry.CreateView(const aClassOrDisplayname: String;
|
||||||
|
aOwner: TComponent): TCustomView;
|
||||||
|
begin
|
||||||
|
Result := CreateComponent( aClassOrDisplayname, aOwner ) as TCustomView;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TViewRegistry.ValidateMinAcceptableClass(
|
||||||
|
var aMinAcceptableClass: TClass);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
if not aMinAcceptableClass.InheritsFrom(TCustomView) then
|
||||||
|
aMinAcceptableClass := TCustomView;
|
||||||
|
end;
|
||||||
|
|
||||||
|
initialization
|
||||||
|
ViewRegistry := TViewRegistry.Create;
|
||||||
|
|
||||||
|
finalization
|
||||||
|
ViewRegistry := NIL;
|
||||||
|
|
||||||
|
end.
|
||||||
280
Source/Base/Controladores/uControllerBase.pas
Normal file
280
Source/Base/Controladores/uControllerBase.pas
Normal file
@ -0,0 +1,280 @@
|
|||||||
|
unit uControllerBase;
|
||||||
|
|
||||||
|
interface
|
||||||
|
|
||||||
|
uses
|
||||||
|
Classes, uDADataTable, Forms;
|
||||||
|
|
||||||
|
type
|
||||||
|
ISujeto = interface;
|
||||||
|
|
||||||
|
IObservador = interface (IInterface)
|
||||||
|
['{679D5CF2-D5DC-4A52-9FF3-04AD91402483}']
|
||||||
|
procedure AddSujeto(Sujeto: ISujeto);
|
||||||
|
procedure DeleteSujeto(Sujeto: ISujeto);
|
||||||
|
procedure RecibirAviso(ASujeto: ISujeto); overload;
|
||||||
|
procedure RecibirAviso(ASujeto: ISujeto; ADataTable: IDAStronglyTypedDataTable); overload;
|
||||||
|
end;
|
||||||
|
|
||||||
|
ISujeto = interface (IInterface)
|
||||||
|
['{CDB691CD-D1D6-4F2E-AA34-93B1CD0E6030}']
|
||||||
|
procedure AddObservador(Observador: IObservador);
|
||||||
|
procedure DeleteObservador(Observador: IObservador);
|
||||||
|
end;
|
||||||
|
|
||||||
|
{ ******************* PARA PRUEBAS ******************************************}
|
||||||
|
TMiInterfacedObject = class(TObject, IInterface)
|
||||||
|
protected
|
||||||
|
FRefCount: Integer;
|
||||||
|
function QueryInterface(const IID: TGUID; out Obj): HResult; stdcall;
|
||||||
|
function _AddRef: Integer; stdcall;
|
||||||
|
function _Release: Integer; virtual; stdcall;
|
||||||
|
function GetRefCount : Integer;
|
||||||
|
public
|
||||||
|
procedure AfterConstruction; override;
|
||||||
|
procedure BeforeDestruction; override;
|
||||||
|
class function NewInstance: TObject; override;
|
||||||
|
property RefCount: Integer read FRefCount;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
{ ***************************************************************************}
|
||||||
|
|
||||||
|
|
||||||
|
TObservador = class(TObject, IObservador)
|
||||||
|
private
|
||||||
|
fSujetos: IInterfaceList;
|
||||||
|
protected
|
||||||
|
FRefCount: Integer;
|
||||||
|
procedure RecibirAviso(ASujeto: ISujeto); overload; virtual;
|
||||||
|
procedure RecibirAviso(ASujeto: ISujeto; ADataTable: IDAStronglyTypedDataTable); overload; virtual; abstract;
|
||||||
|
function QueryInterface(const IID: TGUID; out Obj): HResult; stdcall;
|
||||||
|
function _AddRef: Integer; stdcall;
|
||||||
|
function _Release: Integer; stdcall;
|
||||||
|
function GetRefCount : Integer;
|
||||||
|
public
|
||||||
|
constructor Create; virtual;
|
||||||
|
procedure AddSujeto(Sujeto: ISujeto);
|
||||||
|
procedure DeleteSujeto(Sujeto: ISujeto);
|
||||||
|
destructor Destroy; override;
|
||||||
|
|
||||||
|
procedure AfterConstruction; override;
|
||||||
|
procedure BeforeDestruction; override;
|
||||||
|
class function NewInstance: TObject; override;
|
||||||
|
property RefCount: Integer read FRefCount;
|
||||||
|
end;
|
||||||
|
|
||||||
|
TSujeto = class(TInterfacedObject, ISujeto)
|
||||||
|
private
|
||||||
|
fObservadores: IInterfaceList;
|
||||||
|
protected
|
||||||
|
procedure AvisarObservadores; overload;
|
||||||
|
procedure AvisarObservadores(ADataTable: IDAStronglyTypedDataTable); overload;
|
||||||
|
public
|
||||||
|
constructor Create; virtual;
|
||||||
|
procedure AddObservador(Observador: IObservador);
|
||||||
|
procedure DeleteObservador(Observador: IObservador);
|
||||||
|
destructor Destroy; override;
|
||||||
|
end;
|
||||||
|
|
||||||
|
IControllerBase = IObservador;
|
||||||
|
TControllerBase = TObservador;
|
||||||
|
|
||||||
|
implementation
|
||||||
|
|
||||||
|
uses
|
||||||
|
Dialogs, SysUtils;
|
||||||
|
|
||||||
|
|
||||||
|
function InterlockedIncrement(var I: Integer): Integer;
|
||||||
|
asm
|
||||||
|
MOV EDX,1
|
||||||
|
XCHG EAX,EDX
|
||||||
|
LOCK XADD [EDX],EAX
|
||||||
|
INC EAX
|
||||||
|
end;
|
||||||
|
|
||||||
|
function InterlockedDecrement(var I: Integer): Integer;
|
||||||
|
asm
|
||||||
|
MOV EDX,-1
|
||||||
|
XCHG EAX,EDX
|
||||||
|
LOCK XADD [EDX],EAX
|
||||||
|
DEC EAX
|
||||||
|
end;
|
||||||
|
|
||||||
|
{ TMiInterfacedObject }
|
||||||
|
|
||||||
|
procedure TMiInterfacedObject.AfterConstruction;
|
||||||
|
begin
|
||||||
|
// Release the constructor's implicit refcount
|
||||||
|
InterlockedDecrement(FRefCount);
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TMiInterfacedObject.BeforeDestruction;
|
||||||
|
begin
|
||||||
|
// if RefCount <> 0 then
|
||||||
|
// Error(reInvalidPtr);
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TMiInterfacedObject.GetRefCount: Integer;
|
||||||
|
begin
|
||||||
|
Result := FRefCount;
|
||||||
|
end;
|
||||||
|
|
||||||
|
// Set an implicit refcount so that refcounting
|
||||||
|
// during construction won't destroy the object.
|
||||||
|
class function TMiInterfacedObject.NewInstance: TObject;
|
||||||
|
begin
|
||||||
|
Result := inherited NewInstance;
|
||||||
|
TMiInterfacedObject(Result).FRefCount := 1;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TMiInterfacedObject.QueryInterface(const IID: TGUID; out Obj): HResult;
|
||||||
|
begin
|
||||||
|
if GetInterface(IID, Obj) then
|
||||||
|
Result := 0
|
||||||
|
else
|
||||||
|
Result := E_NOINTERFACE;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TMiInterfacedObject._AddRef: Integer;
|
||||||
|
begin
|
||||||
|
Result := InterlockedIncrement(FRefCount);
|
||||||
|
// ShowMessage('_AddRef: ' + ClassName + ' - RefCount: ' + IntToStr(FRefCount));
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TMiInterfacedObject._Release: Integer;
|
||||||
|
begin
|
||||||
|
Result := InterlockedDecrement(FRefCount);
|
||||||
|
// ShowMessage('_Release: ' + ClassName + ' - RefCount: ' + IntToStr(FRefCount));
|
||||||
|
if Result = 0 then
|
||||||
|
Destroy;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
{ TSujeto }
|
||||||
|
|
||||||
|
procedure TSujeto.addObservador(Observador: IObservador);
|
||||||
|
begin
|
||||||
|
FObservadores.Add(Observador);
|
||||||
|
Observador.AddSujeto(Self);
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TSujeto.AvisarObservadores;
|
||||||
|
var
|
||||||
|
i: Integer;
|
||||||
|
AObs : IObservador;
|
||||||
|
begin
|
||||||
|
for i := 0 to Pred(FObservadores.Count) do
|
||||||
|
begin
|
||||||
|
if Supports(FObservadores[i], IObservador, AObs) then
|
||||||
|
AObs.RecibirAviso(Self);
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TSujeto.AvisarObservadores(ADataTable: IDAStronglyTypedDataTable);
|
||||||
|
var
|
||||||
|
i: Integer;
|
||||||
|
AObs : IObservador;
|
||||||
|
begin
|
||||||
|
for i := 0 to Pred(FObservadores.Count) do
|
||||||
|
begin
|
||||||
|
if Supports(FObservadores[i], IObservador, AObs) then
|
||||||
|
AObs.RecibirAviso(Self, ADataTable);
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
constructor TSujeto.Create;
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
FObservadores := TInterfaceList.Create;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TSujeto.DeleteObservador(Observador: IObservador);
|
||||||
|
begin
|
||||||
|
FObservadores.Remove(Observador);
|
||||||
|
end;
|
||||||
|
|
||||||
|
destructor TSujeto.Destroy;
|
||||||
|
begin
|
||||||
|
FObservadores := NIL;
|
||||||
|
inherited;
|
||||||
|
end;
|
||||||
|
|
||||||
|
{ TObservador }
|
||||||
|
|
||||||
|
procedure TObservador.RecibirAviso(ASujeto: ISujeto);
|
||||||
|
begin
|
||||||
|
//
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TObservador._AddRef: Integer;
|
||||||
|
begin
|
||||||
|
Result := InterlockedIncrement(FRefCount);
|
||||||
|
// ShowMessage('_AddRef: ' + ClassName + ' - RefCount: ' + IntToStr(FRefCount));
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TObservador._Release: Integer;
|
||||||
|
begin
|
||||||
|
Result := InterlockedDecrement(FRefCount);
|
||||||
|
// ShowMessage('_Release: ' + ClassName + ' - RefCount: ' + IntToStr(FRefCount));
|
||||||
|
// if (Result = 0)
|
||||||
|
if (Assigned(fSujetos) and (fSujetos.Count = FRefCount)) then
|
||||||
|
Destroy;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TObservador.AddSujeto(Sujeto: ISujeto);
|
||||||
|
begin
|
||||||
|
FSujetos.Add(Sujeto);
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TObservador.AfterConstruction;
|
||||||
|
begin
|
||||||
|
// Release the constructor's implicit refcount
|
||||||
|
InterlockedDecrement(FRefCount);
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TObservador.BeforeDestruction;
|
||||||
|
begin
|
||||||
|
// if RefCount <> 0 then
|
||||||
|
// Error(reInvalidPtr);
|
||||||
|
end;
|
||||||
|
|
||||||
|
constructor TObservador.Create;
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
FSujetos := TInterfaceList.Create;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TObservador.DeleteSujeto(Sujeto: ISujeto);
|
||||||
|
begin
|
||||||
|
FSujetos.Remove(Sujeto);
|
||||||
|
end;
|
||||||
|
|
||||||
|
destructor TObservador.Destroy;
|
||||||
|
begin
|
||||||
|
FSujetos := NIL;
|
||||||
|
inherited;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TObservador.GetRefCount: Integer;
|
||||||
|
begin
|
||||||
|
Result := FRefCount;
|
||||||
|
end;
|
||||||
|
|
||||||
|
class function TObservador.NewInstance: TObject;
|
||||||
|
begin
|
||||||
|
Result := inherited NewInstance;
|
||||||
|
TObservador(Result).FRefCount := 1;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TObservador.QueryInterface(const IID: TGUID; out Obj): HResult;
|
||||||
|
begin
|
||||||
|
if GetInterface(IID, Obj) then
|
||||||
|
Result := 0
|
||||||
|
else
|
||||||
|
Result := E_NOINTERFACE;
|
||||||
|
end;
|
||||||
|
|
||||||
|
end.
|
||||||
52
Source/Base/Utiles/uAppInfoUtils.pas
Normal file
52
Source/Base/Utiles/uAppInfoUtils.pas
Normal file
@ -0,0 +1,52 @@
|
|||||||
|
unit uAppInfoUtils;
|
||||||
|
|
||||||
|
interface
|
||||||
|
|
||||||
|
function GetAppName: String;
|
||||||
|
function GetAppVersion: String;
|
||||||
|
function GetAppFullName: String;
|
||||||
|
|
||||||
|
implementation
|
||||||
|
|
||||||
|
uses
|
||||||
|
Forms, SysUtils, JclFileUtils;
|
||||||
|
|
||||||
|
function GetAppName: String;
|
||||||
|
var
|
||||||
|
FAppInfo : TJclFileVersionInfo;
|
||||||
|
begin
|
||||||
|
FAppInfo := TJclFileVersionInfo.Create(Application.ExeName);
|
||||||
|
try
|
||||||
|
Result := FAppInfo.ProductName;
|
||||||
|
finally
|
||||||
|
FreeANDNil(FAppInfo);
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
function GetAppVersion: String;
|
||||||
|
var
|
||||||
|
FAppInfo : TJclFileVersionInfo;
|
||||||
|
begin
|
||||||
|
FAppInfo := TJclFileVersionInfo.Create(Application.ExeName);
|
||||||
|
try
|
||||||
|
Result := FAppInfo.ProductVersion;
|
||||||
|
finally
|
||||||
|
FreeANDNil(FAppInfo);
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function GetAppFullName: String;
|
||||||
|
var
|
||||||
|
FAppInfo : TJclFileVersionInfo;
|
||||||
|
begin
|
||||||
|
FAppInfo := TJclFileVersionInfo.Create(Application.ExeName);
|
||||||
|
try
|
||||||
|
Result := FAppInfo.ProductName + ' ' + FAppInfo.ProductVersion;
|
||||||
|
finally
|
||||||
|
FreeANDNil(FAppInfo);
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
end.
|
||||||
@ -3,22 +3,27 @@ unit uDataTableUtils;
|
|||||||
interface
|
interface
|
||||||
|
|
||||||
uses
|
uses
|
||||||
uDACDSDataTable, uDADataTable, uDAInterfaces, uDADelta;
|
uDACDSDataTable, uDADataTable, uDAInterfaces, uDADelta, uDAMemDataTable;
|
||||||
|
|
||||||
procedure CloneDataTable(const ASource : TDACDSDataTable;
|
procedure CloneDataTable(const ASource : TDACDSDataTable;
|
||||||
var ATarget : TDACDSDataTable;
|
var ATarget : TDACDSDataTable;
|
||||||
RemoteUpdate: Boolean = True);
|
RemoteUpdate: Boolean = True); overload;
|
||||||
|
|
||||||
|
function CloneDataTable(const ASource : TDAMemDataTable;
|
||||||
|
RemoteUpdate: Boolean = True): TDAMemDataTable; overload;
|
||||||
|
|
||||||
procedure CopyDataTable(ASource : IDADataset; ATarget : TDADataTable;
|
procedure CopyDataTable(ASource : IDADataset; ATarget : TDADataTable;
|
||||||
const OnlySelectedRows : Boolean = False);
|
const OnlySelectedRows : Boolean = False);
|
||||||
procedure DeleteAllTable(const ADataTable : TDADataTable);
|
procedure DeleteAllTable(const ADataTable : TDADataTable);
|
||||||
function DeltaValuesAreDifferent(const aDelta : IDADelta): boolean;
|
function DeltaValuesAreDifferent(const aDelta : IDADelta): boolean;
|
||||||
|
|
||||||
|
function DataTableModified (const ADataTable : TDADataTable): Boolean;
|
||||||
|
|
||||||
implementation
|
implementation
|
||||||
|
|
||||||
uses
|
uses
|
||||||
uDAClasses, SysUtils, uDABINAdapter, uROTypes, uDBSelectionList, cxControls,
|
DB, Classes, uDAClasses, SysUtils, uDABINAdapter, uROTypes, uDBSelectionList,
|
||||||
Dialogs, Variants, uDADataStreamer;
|
cxControls, Dialogs, Variants, uDADataStreamer;
|
||||||
|
|
||||||
|
|
||||||
{procedure EliminarNoSeleccionados(const ASource : IDADataset;
|
{procedure EliminarNoSeleccionados(const ASource : IDADataset;
|
||||||
@ -144,6 +149,80 @@ begin
|
|||||||
end;
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
function CloneDataTable(const ASource : TDAMemDataTable;
|
||||||
|
RemoteUpdate: Boolean = True): TDAMemDataTable;
|
||||||
|
var
|
||||||
|
i : Integer;
|
||||||
|
ATarget : TDAMemDataTable;
|
||||||
|
begin
|
||||||
|
if not Assigned(ASource) then
|
||||||
|
raise Exception.Create ('No se ha asignado la tabla de origen (CloneDataTable)');
|
||||||
|
|
||||||
|
ATarget := TDAMemDataTable.Create(NIL);
|
||||||
|
with ATarget do
|
||||||
|
begin
|
||||||
|
|
||||||
|
{ ATENCIÓN !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
||||||
|
--------------------------------------------------------------------
|
||||||
|
DA5 tiene un fallo en el cual las tablas definidas como detalle no
|
||||||
|
tienen asociados los eventos internos before... y after... por lo
|
||||||
|
que los campos AutoInc no funcionan (no pone el -1, -2...).
|
||||||
|
La forma de arreglarlo es llamar a DisableEventHandlers/EnableEventHandlers
|
||||||
|
que realiza la asociación de los eventos.
|
||||||
|
}
|
||||||
|
ATarget.DisableEventHandlers; // <--- INDISPENSABLE!!!!!!!!!!!!!!!!!!!!
|
||||||
|
|
||||||
|
|
||||||
|
try
|
||||||
|
if not Assigned(ASource.RemoteDataAdapter) then
|
||||||
|
raise Exception.Create('No está asignado RemoteDataAdapter (' + ASource.Name + ')');
|
||||||
|
|
||||||
|
LogicalName := ASource.LogicalName;
|
||||||
|
CustomAttributes.Assign(ASource.CustomAttributes);
|
||||||
|
Fields.AssignFieldCollection(ASource.Fields); // o también ATarget.LoadSchema;
|
||||||
|
Params.AssignParamCollection(ASource.Params);
|
||||||
|
|
||||||
|
RemoteDataAdapter := ASource.RemoteDataAdapter;
|
||||||
|
|
||||||
|
Randomize;
|
||||||
|
Name := ASource.Name + '_' + IntToStr(Random(MAXINT));
|
||||||
|
|
||||||
|
BusinessRulesID := ASource.BusinessRulesID;
|
||||||
|
|
||||||
|
with MasterParamsMappings do
|
||||||
|
for i := 0 to ASource.MasterParamsMappings.Count - 1 do
|
||||||
|
Add(ASource.MasterParamsMappings.Strings[i]);
|
||||||
|
|
||||||
|
with MasterRequestMappings do
|
||||||
|
for i := 0 to ASource.MasterRequestMappings.Count - 1 do
|
||||||
|
Add(ASource.MasterRequestMappings.Strings[i]);
|
||||||
|
|
||||||
|
MasterMappingMode := ASource.MasterMappingMode;
|
||||||
|
|
||||||
|
MasterFields := ASource.MasterFields;
|
||||||
|
MasterOptions := ASource.MasterOptions;
|
||||||
|
|
||||||
|
DetailFields := ASource.DetailFields;
|
||||||
|
DetailOptions := ASource.DetailOptions;
|
||||||
|
|
||||||
|
RemoteUpdatesOptions := ASource.RemoteUpdatesOptions;
|
||||||
|
StreamingOptions := ASource.StreamingOptions;
|
||||||
|
RemoteFetchEnabled := ASource.RemoteFetchEnabled;
|
||||||
|
finally
|
||||||
|
ATarget.EnableEventHandlers; // <--- INDISPENSABLE!!!!!!!!!!!!!!!!!!!!!!!!!
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
if not RemoteUpdate then
|
||||||
|
begin
|
||||||
|
ATarget.LogChanges := False;
|
||||||
|
ATarget.RemoteFetchEnabled := False;
|
||||||
|
end;
|
||||||
|
|
||||||
|
Result := ATarget;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
procedure CloneDataTable(const ASource : TDACDSDataTable;
|
procedure CloneDataTable(const ASource : TDACDSDataTable;
|
||||||
var ATarget : TDACDSDataTable; RemoteUpdate: Boolean);
|
var ATarget : TDACDSDataTable; RemoteUpdate: Boolean);
|
||||||
var
|
var
|
||||||
@ -194,131 +273,36 @@ begin
|
|||||||
end;
|
end;
|
||||||
|
|
||||||
|
|
||||||
end.
|
function DataTableModified (const ADataTable : TDADataTable): Boolean;
|
||||||
|
|
||||||
procedure CloneDataTable(const ASource : TDACDSDataTable;
|
|
||||||
var ATarget : TDACDSDataTable; RemoteUpdate: Boolean);
|
|
||||||
var
|
var
|
||||||
i : Integer;
|
bCambiado : Boolean;
|
||||||
|
dtDetails : TList;
|
||||||
|
i : integer;
|
||||||
begin
|
begin
|
||||||
with ATarget do
|
bCambiado := False;
|
||||||
|
|
||||||
|
if Assigned(ADataTable) and (ADataTable.Active) then
|
||||||
begin
|
begin
|
||||||
// ****** Inicio migración DA 5
|
bCambiado :=(ADataTable.State = dsEdit) or
|
||||||
|
(ADataTable.HasDelta and DeltaValuesAreDifferent(ADataTable.Delta));
|
||||||
|
|
||||||
//RemoteService := ASource.GetRemoteService;
|
if (not bCambiado) then
|
||||||
//Adapter := ASource.GetAdapter;
|
|
||||||
RemoteDataAdapter.Assign(ASource.RemoteDataAdapter);
|
|
||||||
// ****** Fin migración DA 5
|
|
||||||
|
|
||||||
BusinessRulesID := ASource.BusinessRulesID;
|
|
||||||
Randomize;
|
|
||||||
Name := ASource.Name + '_' + IntToStr(Random(MAXINT));
|
|
||||||
LogicalName := ASource.LogicalName;
|
|
||||||
|
|
||||||
Params.AssignParamCollection(ASource.Params);
|
|
||||||
|
|
||||||
if Assigned(ASource.LocalSchema) then
|
|
||||||
LocalSchema := ASource.LocalSchema
|
|
||||||
else begin
|
|
||||||
// ****** Inicio migración DA 5
|
|
||||||
{
|
|
||||||
with SchemaCall do
|
|
||||||
begin
|
|
||||||
MethodName := ASource.SchemaCall.MethodName;
|
|
||||||
for i := 0 to ASource.SchemaCall.Params.Count - 1 do
|
|
||||||
begin
|
|
||||||
with Params.Add do begin
|
|
||||||
Name := ASource.SchemaCall.Params[i].Name;
|
|
||||||
ParamType := ASource.SchemaCall.Params[i].ParamType;
|
|
||||||
DataType := ASource.SchemaCall.Params[i].DataType;
|
|
||||||
Value := ASource.SchemaCall.Params[i].Value;
|
|
||||||
UserClassName := ASource.SchemaCall.Params[i].UserClassName;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
}
|
|
||||||
// ****** Fin migración DA 5
|
|
||||||
ATarget.Fields.AssignFieldCollection(ASource.Fields); // o también ATarget.LoadSchema;
|
|
||||||
end;
|
|
||||||
|
|
||||||
// ****** Inicio migración DA 5
|
|
||||||
{
|
|
||||||
with DataUpdateCall do
|
|
||||||
begin
|
begin
|
||||||
MethodName := ASource.DataUpdateCall.MethodName;
|
dtDetails := ADataTable.GetDetailDataTables;
|
||||||
for i := 0 to ASource.DataUpdateCall.Params.Count - 1 do
|
for i := 0 to dtDetails.Count - 1 do
|
||||||
begin
|
begin
|
||||||
with Params.Add do begin
|
bCambiado := bCambiado or
|
||||||
Name := ASource.DataUpdateCall.Params[i].Name;
|
((TDADataTable(dtDetails.Items[i])).State in dsEditModes) or
|
||||||
ParamType := ASource.DataUpdateCall.Params[i].ParamType;
|
((TDADataTable(dtDetails.Items[i])).HasDelta and
|
||||||
DataType := ASource.DataUpdateCall.Params[i].DataType;
|
DeltaValuesAreDifferent((TDADataTable(dtDetails.Items[i])).Delta));
|
||||||
Value := ASource.DataUpdateCall.Params[i].Value;
|
if bCambiado then
|
||||||
UserClassName := ASource.DataUpdateCall.Params[i].UserClassName;
|
Break;
|
||||||
end;
|
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
with ScriptCall do
|
|
||||||
begin
|
|
||||||
MethodName := ASource.ScriptCall.MethodName;
|
|
||||||
for i := 0 to ASource.ScriptCall.Params.Count - 1 do
|
|
||||||
begin
|
|
||||||
with Params.Add do begin
|
|
||||||
Name := ASource.ScriptCall.Params[i].Name;
|
|
||||||
ParamType := ASource.ScriptCall.Params[i].ParamType;
|
|
||||||
DataType := ASource.ScriptCall.Params[i].DataType;
|
|
||||||
Value := ASource.ScriptCall.Params[i].Value;
|
|
||||||
UserClassName := ASource.ScriptCall.Params[i].UserClassName;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
with DataRequestCall do
|
|
||||||
begin
|
|
||||||
MethodName := ASource.DataRequestCall.MethodName;
|
|
||||||
for i := 0 to ASource.DataRequestCall.Params.Count - 1 do
|
|
||||||
begin
|
|
||||||
with Params.Add do begin
|
|
||||||
begin
|
|
||||||
Name := ASource.DataRequestCall.Params[i].Name;
|
|
||||||
ParamType := ASource.DataRequestCall.Params[i].ParamType;
|
|
||||||
DataType := ASource.DataRequestCall.Params[i].DataType;
|
|
||||||
Value := ASource.DataRequestCall.Params[i].Value;
|
|
||||||
UserClassName := ASource.DataRequestCall.Params[i].UserClassName;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
}
|
|
||||||
// ****** Fin migración DA 5
|
|
||||||
|
|
||||||
with MasterParamsMappings do
|
|
||||||
for i := 0 to ASource.MasterParamsMappings.Count - 1 do
|
|
||||||
Add(ASource.MasterParamsMappings.Strings[i]);
|
|
||||||
|
|
||||||
with MasterRequestMappings do
|
|
||||||
for i := 0 to ASource.MasterRequestMappings.Count - 1 do
|
|
||||||
Add(ASource.MasterRequestMappings.Strings[i]);
|
|
||||||
|
|
||||||
MasterMappingMode := ASource.MasterMappingMode;
|
|
||||||
|
|
||||||
MasterFields := ASource.MasterFields;
|
|
||||||
MasterOptions := ASource.MasterOptions;
|
|
||||||
|
|
||||||
DetailFields := ASource.DetailFields;
|
|
||||||
DetailOptions := ASource.DetailOptions;
|
|
||||||
|
|
||||||
RemoteUpdatesOptions := ASource.RemoteUpdatesOptions;
|
|
||||||
StreamingOptions := ASource.StreamingOptions;
|
|
||||||
RemoteFetchEnabled := ASource.RemoteFetchEnabled;
|
|
||||||
end;
|
|
||||||
|
|
||||||
if not RemoteUpdate then
|
|
||||||
begin
|
|
||||||
ATarget.LogChanges := False;
|
|
||||||
ATarget.RemoteFetchEnabled := False;
|
|
||||||
end;
|
end;
|
||||||
|
Result := bCambiado;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
end.
|
||||||
|
|
||||||
@ -1,15 +1,13 @@
|
|||||||
{*******************************************************}
|
|
||||||
{ }
|
|
||||||
{ Administración de puntos de venta }
|
|
||||||
{ }
|
|
||||||
{ Copyright (C) 2006 Rodax Software S.L. }
|
|
||||||
{ }
|
|
||||||
{*******************************************************}
|
|
||||||
|
|
||||||
unit uDateUtils;
|
unit uDateUtils;
|
||||||
|
|
||||||
interface
|
interface
|
||||||
|
|
||||||
|
uses
|
||||||
|
SysUtils, Classes;
|
||||||
|
|
||||||
|
function DarFechaPrimerDia(Date: TDateTime): TDateTime;
|
||||||
|
function DarFechaUltimoDia(Date: TDateTime): TDateTime;
|
||||||
|
function EsFechaVacia(AFecha : TDateTime): Boolean;
|
||||||
function NumberDayOfTheWeek(const ADay : String) : Word;
|
function NumberDayOfTheWeek(const ADay : String) : Word;
|
||||||
function NumberMonthOfTheYear(const AMonth : String) : Word;
|
function NumberMonthOfTheYear(const AMonth : String) : Word;
|
||||||
|
|
||||||
@ -18,6 +16,9 @@ implementation
|
|||||||
uses
|
uses
|
||||||
DateUtils;
|
DateUtils;
|
||||||
|
|
||||||
|
const
|
||||||
|
FECHA_NULA = -700000;
|
||||||
|
|
||||||
function NumberDayOfTheWeek(const ADay : String) : Word;
|
function NumberDayOfTheWeek(const ADay : String) : Word;
|
||||||
begin
|
begin
|
||||||
if (ADay = 'Monday') or (ADay = 'Lunes') then
|
if (ADay = 'Monday') or (ADay = 'Lunes') then
|
||||||
@ -64,5 +65,29 @@ begin
|
|||||||
Result := 12;
|
Result := 12;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
end.
|
|
||||||
|
|
||||||
|
function EsFechaVacia(AFecha : TDateTime): Boolean;
|
||||||
|
begin
|
||||||
|
Result := (AFecha = FECHA_NULA) or (AFecha = 0);
|
||||||
|
end;
|
||||||
|
|
||||||
|
function DarFechaPrimerDia(Date: TDateTime): TDateTime;
|
||||||
|
var
|
||||||
|
Year, Month, Day: Word;
|
||||||
|
begin
|
||||||
|
DecodeDate(Date, Year, Month, Day);
|
||||||
|
Result := EncodeDate(Year, Month, 1);
|
||||||
|
end;
|
||||||
|
|
||||||
|
function DarFechaUltimoDia(Date: TDateTime): TDateTime;
|
||||||
|
var
|
||||||
|
Year, Month, Day: Word;
|
||||||
|
begin
|
||||||
|
DecodeDate(Date, Year, Month, Day);
|
||||||
|
// (if Month < 12 then inc(Month)
|
||||||
|
// else begin Month := 1; inc(Year) end;
|
||||||
|
// Result := EncodeDate(Year, Month, 1) - 1;
|
||||||
|
Result := EncodeDate(Year, Month,
|
||||||
|
MonthDays[IsLeapYear(Year), Month]);
|
||||||
|
end;
|
||||||
|
end.
|
||||||
287
Source/Base/Utiles/uDialogUtils.pas
Normal file
287
Source/Base/Utiles/uDialogUtils.pas
Normal file
@ -0,0 +1,287 @@
|
|||||||
|
unit uDialogUtils;
|
||||||
|
|
||||||
|
interface
|
||||||
|
|
||||||
|
uses
|
||||||
|
Windows, Controls, SysUtils;
|
||||||
|
|
||||||
|
type
|
||||||
|
TDlgButton = (TDlgButton_SI, TDlgButton_NO, TDlgButton_CANCELAR,
|
||||||
|
TDlgButton_ACEPTAR, TDlgButton_OK, TDlgButton_CERRAR);
|
||||||
|
TDlgButtonSet = set of TDlgButton;
|
||||||
|
|
||||||
|
|
||||||
|
//For example:
|
||||||
|
//1. to display the "OpenDialog" for text files
|
||||||
|
//
|
||||||
|
// s := 'aaa.txt';
|
||||||
|
// if OpenFileDialog(Application.Handle, 'txt', 'Text Files|*.txt', 'c:\', 'Select text file', s) then
|
||||||
|
// ShowMessage(s + ' file was selected for open')
|
||||||
|
//
|
||||||
|
//2. to display the "Save dialog":
|
||||||
|
//
|
||||||
|
// s := 'data.dbf';
|
||||||
|
// if SaveFileDialog(Application.Handle, 'dbf', 'dBase tables|*.dbf|All files|*.*', 'c:\', 'Select table', s) then
|
||||||
|
// ShowMessage(s + ' table was selected for save')
|
||||||
|
|
||||||
|
function OpenFileDialog(ParentHandle: THandle; const DefExt, Filter, InitialDir, Title: string; var FileName: string): Boolean;
|
||||||
|
function SaveFileDialog(ParentHandle: THandle; const DefExt, Filter, InitialDir, Title: string; var FileName: string): Boolean;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
procedure ShowInfoMessage(const AMessage : String); overload;
|
||||||
|
procedure ShowInfoMessage(const AHeader : String; const AMessage : String); overload;
|
||||||
|
procedure ShowWarningMessage(const AMessage : String); overload;
|
||||||
|
procedure ShowWarningMessage(const AHeader : String; const AMessage : String); overload;
|
||||||
|
procedure ShowErrorMessage(const AHeader : String; const AMessage : String); overload;
|
||||||
|
procedure ShowErrorMessage(const AHeader : String; const AMessage : String; AException: Exception); overload;
|
||||||
|
|
||||||
|
function ShowConfirmMessage(const AHeader : String;
|
||||||
|
const AMessage : String) : TModalResult; overload;
|
||||||
|
|
||||||
|
function ShowConfirmMessage(const ATitle : String;
|
||||||
|
const AHeader : String;
|
||||||
|
const AMessage : String;
|
||||||
|
const AButtonSet: TDlgButtonSet) : TModalResult; overload;
|
||||||
|
|
||||||
|
implementation
|
||||||
|
|
||||||
|
uses
|
||||||
|
Forms,
|
||||||
|
CommDlg,
|
||||||
|
JSDialog,
|
||||||
|
JSDialogs,
|
||||||
|
Classes,
|
||||||
|
StrUtils;
|
||||||
|
|
||||||
|
const
|
||||||
|
sBtnSi = '&Si';
|
||||||
|
sBtnNo = '&No';
|
||||||
|
sBtnCancelar = '&Cancelar';
|
||||||
|
sBtnAceptar = '&Aceptar';
|
||||||
|
sBtnOK = '&OK';
|
||||||
|
sBtnCerrar = '&Cerrar';
|
||||||
|
|
||||||
|
|
||||||
|
function CharReplace(const Source: string; oldChar, newChar: Char): string;
|
||||||
|
var
|
||||||
|
i: Integer;
|
||||||
|
begin
|
||||||
|
Result := Source;
|
||||||
|
for i := 1 to Length(Result) do
|
||||||
|
if Result[i] = oldChar then
|
||||||
|
Result[i] := newChar
|
||||||
|
end;
|
||||||
|
|
||||||
|
function OpenSaveFileDialog(ParentHandle: THandle; const DefExt, Filter, InitialDir, Title: string; var FileName: string;
|
||||||
|
MustExist, OverwritePrompt, NoChangeDir, DoOpen: Boolean): Boolean;
|
||||||
|
var
|
||||||
|
ofn: TOpenFileName;
|
||||||
|
szFile: array[0..MAX_PATH] of Char;
|
||||||
|
begin
|
||||||
|
Result := False;
|
||||||
|
FillChar(ofn, SizeOf(TOpenFileName), 0);
|
||||||
|
FillChar(szFile, SizeOf(szFile), 0);
|
||||||
|
with ofn do
|
||||||
|
begin
|
||||||
|
lStructSize := SizeOf(TOpenFileName);
|
||||||
|
hwndOwner := ParentHandle;
|
||||||
|
lpstrFile := szFile;
|
||||||
|
nMaxFile := SizeOf(szFile);
|
||||||
|
if (Title <> '') then
|
||||||
|
lpstrTitle := PChar(Title);
|
||||||
|
if (InitialDir <> '') then
|
||||||
|
lpstrInitialDir := PChar(InitialDir);
|
||||||
|
StrPCopy(lpstrFile, FileName);
|
||||||
|
lpstrFilter := PChar(ReplaceStr(Filter, '|', #0)+#0#0);
|
||||||
|
if DefExt <> '' then
|
||||||
|
lpstrDefExt := PChar(DefExt);
|
||||||
|
end;
|
||||||
|
|
||||||
|
if MustExist then
|
||||||
|
ofn.Flags := ofn.Flags or OFN_FILEMUSTEXIST;
|
||||||
|
|
||||||
|
if OverwritePrompt then
|
||||||
|
ofn.Flags := ofn.Flags or OFN_OVERWRITEPROMPT;
|
||||||
|
|
||||||
|
if NoChangeDir then
|
||||||
|
ofn.Flags := ofn.Flags or OFN_NOCHANGEDIR;
|
||||||
|
|
||||||
|
if DoOpen then
|
||||||
|
begin
|
||||||
|
if GetOpenFileName(ofn) then
|
||||||
|
begin
|
||||||
|
Result := True;
|
||||||
|
FileName := StrPas(szFile);
|
||||||
|
end;
|
||||||
|
end
|
||||||
|
else
|
||||||
|
begin
|
||||||
|
if GetSaveFileName(ofn) then
|
||||||
|
begin
|
||||||
|
Result := True;
|
||||||
|
FileName := StrPas(szFile);
|
||||||
|
end;
|
||||||
|
end
|
||||||
|
end;
|
||||||
|
|
||||||
|
function OpenFileDialog(ParentHandle: THandle; const DefExt, Filter, InitialDir, Title: string; var FileName: string): Boolean;
|
||||||
|
begin
|
||||||
|
Result := OpenSaveFileDialog(ParentHandle, DefExt, Filter, InitialDir, Title, FileName, True, False, False, True);
|
||||||
|
end;
|
||||||
|
|
||||||
|
function SaveFileDialog(ParentHandle: THandle; const DefExt, Filter, InitialDir, Title: string; var FileName: string): Boolean;
|
||||||
|
begin
|
||||||
|
Result := OpenSaveFileDialog(ParentHandle, DefExt, Filter, InitialDir, Title, FileName, False, True, True, False);
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
function CreateTaskDialog(const ATitle: String;
|
||||||
|
const AInstruction: String;
|
||||||
|
const AMessage: String;
|
||||||
|
const AIcon: TTaskDialogIcon): TJSDialog;
|
||||||
|
var
|
||||||
|
ADialog : TJSDialog;
|
||||||
|
begin
|
||||||
|
ADialog := TJSDialog.Create(NIL);
|
||||||
|
with ADialog do
|
||||||
|
begin
|
||||||
|
Position := dpScreenCenter;
|
||||||
|
ButtonBar.Buttons := [];
|
||||||
|
DialogOptions := [doModal, doTopMost];
|
||||||
|
|
||||||
|
Title := ATitle;
|
||||||
|
Instruction.Text := AInstruction;
|
||||||
|
Content.Text := AMessage;
|
||||||
|
MainIcon := AIcon;
|
||||||
|
end;
|
||||||
|
Result := ADialog;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure CreateCustomButtons(const AButtonSet: TDlgButtonSet;
|
||||||
|
ACustomButtons : TJSCustomButtons);
|
||||||
|
|
||||||
|
function CreateButton(const ACaption: String; const AModalResult: TModalResult): TJSCustomButtonItem;
|
||||||
|
begin
|
||||||
|
Result := ACustomButtons.Add;
|
||||||
|
Result.Caption := ACaption;
|
||||||
|
Result.ModalResult := AModalResult;
|
||||||
|
end;
|
||||||
|
|
||||||
|
begin
|
||||||
|
with ACustomButtons do
|
||||||
|
begin
|
||||||
|
Clear;
|
||||||
|
|
||||||
|
if TDlgButton_SI in AButtonSet then
|
||||||
|
CreateButton(sBtnSi, mrYes);
|
||||||
|
|
||||||
|
if TDlgButton_NO in AButtonSet then
|
||||||
|
CreateButton(sBtnNo, mrNo);
|
||||||
|
|
||||||
|
if TDlgButton_CANCELAR in AButtonSet then
|
||||||
|
CreateButton(sBtnCancelar, mrCancel);
|
||||||
|
|
||||||
|
if TDlgButton_ACEPTAR in AButtonSet then
|
||||||
|
CreateButton(sBtnAceptar, mrOk);
|
||||||
|
|
||||||
|
if TDlgButton_OK in AButtonSet then
|
||||||
|
CreateButton(sBtnOK, mrOk);
|
||||||
|
|
||||||
|
if TDlgButton_CERRAR in AButtonSet then
|
||||||
|
CreateButton(sBtnCerrar, mrNone);
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure ShowInfoMessage(const AHeader : String; const AMessage : String); overload;
|
||||||
|
var
|
||||||
|
ADialog : TJSDialog;
|
||||||
|
begin
|
||||||
|
ADialog := CreateTaskDialog('Información', AHeader, AMessage, tdiInformation);
|
||||||
|
try
|
||||||
|
CreateCustomButtons([TDlgButton_CERRAR], ADialog.CustomButtons);
|
||||||
|
ADialog.Execute;
|
||||||
|
finally
|
||||||
|
FreeAndNIL(ADialog);
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure ShowInfoMessage(const AMessage : String);
|
||||||
|
begin
|
||||||
|
ShowInfoMessage('', AMessage);
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure ShowWarningMessage(const AHeader : String; const AMessage : String); overload;
|
||||||
|
var
|
||||||
|
ADialog : TJSDialog;
|
||||||
|
begin
|
||||||
|
ADialog := CreateTaskDialog('¡Atención!', AHeader, AMessage, tdiWarning);
|
||||||
|
try
|
||||||
|
CreateCustomButtons([TDlgButton_CERRAR], ADialog.CustomButtons);
|
||||||
|
ADialog.Execute;
|
||||||
|
finally
|
||||||
|
FreeAndNIL(ADialog);
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure ShowWarningMessage(const AMessage : String);
|
||||||
|
begin
|
||||||
|
ShowWarningMessage('', AMessage);
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure ShowErrorMessage(const AHeader : String; const AMessage : String);
|
||||||
|
var
|
||||||
|
ADialog : TJSDialog;
|
||||||
|
begin
|
||||||
|
ADialog := CreateTaskDialog(Application.Title, AHeader, AMessage, tdiError);
|
||||||
|
try
|
||||||
|
CreateCustomButtons([TDlgButton_CERRAR], ADialog.CustomButtons);
|
||||||
|
ADialog.Execute;
|
||||||
|
finally
|
||||||
|
FreeAndNIL(ADialog);
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure ShowErrorMessage(const AHeader : String; const AMessage : String; AException: Exception);
|
||||||
|
var
|
||||||
|
ADialog : TJSDialog;
|
||||||
|
begin
|
||||||
|
ADialog := CreateTaskDialog(Application.Title, AHeader, AMessage, tdiError);
|
||||||
|
try
|
||||||
|
CreateCustomButtons([TDlgButton_CERRAR], ADialog.CustomButtons);
|
||||||
|
ADialog.Expando.Lines.Text := #13#13 + AException.Message;
|
||||||
|
ADialog.Expando.ShowText := 'Mostrar información sobre el error';
|
||||||
|
ADialog.Expando.HideText := 'No mostrar información sobre el error';
|
||||||
|
ADialog.Expando.Visible := True;
|
||||||
|
ADialog.Execute;
|
||||||
|
finally
|
||||||
|
FreeAndNIL(ADialog);
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function ShowConfirmMessage(const AHeader : String;
|
||||||
|
const AMessage : String) : TModalResult;
|
||||||
|
begin
|
||||||
|
Result := ShowConfirmMessage(Application.Title, AHeader,
|
||||||
|
AMessage, [TDlgButton_SI, TDlgButton_NO]);
|
||||||
|
end;
|
||||||
|
|
||||||
|
function ShowConfirmMessage(const ATitle : String;
|
||||||
|
const AHeader : String;
|
||||||
|
const AMessage : String;
|
||||||
|
const AButtonSet: TDlgButtonSet) : TModalResult;
|
||||||
|
var
|
||||||
|
ADialog : TJSDialog;
|
||||||
|
begin
|
||||||
|
ADialog := CreateTaskDialog(Application.Title, AHeader, AMessage, tdiConfirmation);
|
||||||
|
try
|
||||||
|
CreateCustomButtons(AButtonSet, ADialog.CustomButtons);
|
||||||
|
Result := ADialog.Execute;
|
||||||
|
finally
|
||||||
|
FreeAndNIL(ADialog);
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
end.
|
||||||
|
|
||||||
@ -2,7 +2,6 @@ object fConfigurarConexion: TfConfigurarConexion
|
|||||||
Left = 663
|
Left = 663
|
||||||
Top = 468
|
Top = 468
|
||||||
ActiveControl = edtServer
|
ActiveControl = edtServer
|
||||||
AutoScroll = False
|
|
||||||
Caption = 'Configuraci'#243'n de la conexi'#243'n'
|
Caption = 'Configuraci'#243'n de la conexi'#243'n'
|
||||||
ClientHeight = 149
|
ClientHeight = 149
|
||||||
ClientWidth = 392
|
ClientWidth = 392
|
||||||
@ -90,12 +89,10 @@ object fConfigurarConexion: TfConfigurarConexion
|
|||||||
TabOrder = 3
|
TabOrder = 3
|
||||||
end
|
end
|
||||||
object HTTPChannel: TROWinInetHTTPChannel
|
object HTTPChannel: TROWinInetHTTPChannel
|
||||||
ServerLocators = <>
|
|
||||||
DispatchOptions = []
|
|
||||||
ProbeServers = False
|
|
||||||
ProbeFrequency = 60000
|
|
||||||
UserAgent = 'AdminPV'
|
UserAgent = 'AdminPV'
|
||||||
TargetURL = 'http://localhost:8099/BIN'
|
TargetURL = 'http://localhost:8099/BIN'
|
||||||
|
ServerLocators = <>
|
||||||
|
DispatchOptions = []
|
||||||
Left = 120
|
Left = 120
|
||||||
Top = 112
|
Top = 112
|
||||||
end
|
end
|
||||||
@ -104,9 +101,9 @@ object fConfigurarConexion: TfConfigurarConexion
|
|||||||
Top = 112
|
Top = 112
|
||||||
end
|
end
|
||||||
object CoService: TRORemoteService
|
object CoService: TRORemoteService
|
||||||
ServiceName = 'srvLogin'
|
|
||||||
Message = ROBinMessage
|
Message = ROBinMessage
|
||||||
Channel = HTTPChannel
|
Channel = HTTPChannel
|
||||||
|
ServiceName = 'srvLogin'
|
||||||
Left = 184
|
Left = 184
|
||||||
Top = 112
|
Top = 112
|
||||||
end
|
end
|
||||||
|
|||||||
@ -36,7 +36,7 @@ var
|
|||||||
implementation
|
implementation
|
||||||
|
|
||||||
uses
|
uses
|
||||||
StrUtils, JclStrings, uDataModuleBase, VARELA_Intf;
|
StrUtils, JclStrings, uDMBase, VARELA_Intf;
|
||||||
|
|
||||||
{$R *.dfm}
|
{$R *.dfm}
|
||||||
|
|
||||||
|
|||||||
1660
Source/Base/uDMBase.dfm
Normal file
1660
Source/Base/uDMBase.dfm
Normal file
File diff suppressed because it is too large
Load Diff
254
Source/Base/uDMBase.pas
Normal file
254
Source/Base/uDMBase.pas
Normal file
@ -0,0 +1,254 @@
|
|||||||
|
unit uDMBase;
|
||||||
|
|
||||||
|
interface
|
||||||
|
|
||||||
|
uses
|
||||||
|
Controls, PngImageList, JvComponent, JvNavigationPane, TBXSwitcher,
|
||||||
|
TBXOffice2003Theme, Classes, ImgList, uROClient, uROBinMessage,
|
||||||
|
uROServiceComponent, uRORemoteService, uROWinInetHttpChannel,
|
||||||
|
DataAbstract3_Intf, uDADataTable, uDABINAdapter, cxintl, cxIntlPrintSys3,
|
||||||
|
JvAppStorage, JvAppRegistryStorage, SysUtils,
|
||||||
|
JvComponentBase, uDADataStreamer;
|
||||||
|
|
||||||
|
type
|
||||||
|
TdmBase = class(TDataModule)
|
||||||
|
ROChannel: TROWinInetHTTPChannel;
|
||||||
|
SmallImages: TPngImageList;
|
||||||
|
StyleManager: TJvNavPaneStyleManager;
|
||||||
|
TBXSwitcher: TTBXSwitcher;
|
||||||
|
cxIntl: TcxIntl;
|
||||||
|
cxIntlPrintSys3: TcxIntlPrintSys3;
|
||||||
|
ROMessage: TROBinMessage;
|
||||||
|
DABINAdapter: TDABINAdapter;
|
||||||
|
JvAppRegistryStorage: TJvAppRegistryStorage;
|
||||||
|
RORemoteService: TRORemoteService;
|
||||||
|
procedure DAClientDataModuleCreate(Sender: TObject);
|
||||||
|
procedure ROChannelFailure(Sender: TROTransportChannel;
|
||||||
|
anException: Exception; var Retry: Boolean);
|
||||||
|
procedure ROChannelProgress(iSender: TObject; iType: TProgressType;
|
||||||
|
iDirection: TProgressDirection; iTransferred, iTotal: Integer);
|
||||||
|
private
|
||||||
|
FOnThemeChange: TNotifyEvent;
|
||||||
|
function GetAdapter: TDABINAdapter;
|
||||||
|
function GetChannel: TROWinInetHTTPChannel;
|
||||||
|
function GetCodigoEmpresa: Integer;
|
||||||
|
function GetMessage: TROBinMessage;
|
||||||
|
procedure InitStyleManager;
|
||||||
|
procedure OnTBXThemeChange(Sender: TObject);
|
||||||
|
procedure LeerConfiguracion;
|
||||||
|
procedure SalvarConfiguracion;
|
||||||
|
public
|
||||||
|
function DarVersion : String;
|
||||||
|
procedure ConfigurarConexion;
|
||||||
|
function HayConexion(const ATargetURL : String = ''): Boolean;
|
||||||
|
property Adapter: TDABINAdapter read GetAdapter;
|
||||||
|
property Channel: TROWinInetHTTPChannel read GetChannel;
|
||||||
|
property CodigoEmpresa: Integer read GetCodigoEmpresa;
|
||||||
|
property Message: TROBinMessage read GetMessage;
|
||||||
|
property OnThemeChange: TNotifyEvent read FOnThemeChange write
|
||||||
|
FOnThemeChange;
|
||||||
|
end;
|
||||||
|
|
||||||
|
var
|
||||||
|
dmBase: TdmBase;
|
||||||
|
|
||||||
|
implementation
|
||||||
|
|
||||||
|
{$R *.DFM}
|
||||||
|
|
||||||
|
uses
|
||||||
|
Dialogs, TBX, TBXThemes, uConfigurarConexion, WinInet, Forms, Windows,
|
||||||
|
JclFileUtils, VARELA_Intf, cxControls;
|
||||||
|
|
||||||
|
const
|
||||||
|
SERVER_URL = 'http://localhost:8099/bin';
|
||||||
|
IE_OFFLINE_ERROR = 'Unexpected error in WinInet HTTP Channel (2)';
|
||||||
|
|
||||||
|
{
|
||||||
|
*********************************** TdmBase ************************************
|
||||||
|
}
|
||||||
|
procedure TdmBase.ConfigurarConexion;
|
||||||
|
begin
|
||||||
|
with TfConfigurarConexion.Create(NIL) do
|
||||||
|
try
|
||||||
|
TargetURL := ROChannel.TargetURL;
|
||||||
|
if ShowModal = mrOk then
|
||||||
|
begin
|
||||||
|
ROChannel.TargetURL := TargetURL;
|
||||||
|
ROChannel.Connected := False;
|
||||||
|
ROChannel.Connected := True;
|
||||||
|
SalvarConfiguracion;
|
||||||
|
end;
|
||||||
|
finally
|
||||||
|
Free;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TdmBase.DAClientDataModuleCreate(Sender: TObject);
|
||||||
|
begin
|
||||||
|
TBXSwitcher.OnThemeChange := OnTBXThemeChange;
|
||||||
|
TBXSetTheme('Office2003');
|
||||||
|
|
||||||
|
LeerConfiguracion;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TdmBase.GetAdapter: TDABINAdapter;
|
||||||
|
begin
|
||||||
|
Result := DABinAdapter;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TdmBase.GetChannel: TROWinInetHTTPChannel;
|
||||||
|
begin
|
||||||
|
Result := ROChannel;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TdmBase.GetCodigoEmpresa: Integer;
|
||||||
|
begin
|
||||||
|
Result := 1;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TdmBase.GetMessage: TROBinMessage;
|
||||||
|
begin
|
||||||
|
Result := ROMessage;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TdmBase.InitStyleManager;
|
||||||
|
begin
|
||||||
|
if not USE_THEMES then
|
||||||
|
begin
|
||||||
|
TBXSwitcher.EnableXPStyles := False;
|
||||||
|
StyleManager.Theme := nptStandard;
|
||||||
|
end
|
||||||
|
else begin
|
||||||
|
TBXSwitcher.EnableXPStyles := True;
|
||||||
|
with StyleManager do
|
||||||
|
begin
|
||||||
|
if CurrentTheme is TTBXOffice2003Theme then
|
||||||
|
begin
|
||||||
|
case GetOffice2003Scheme of
|
||||||
|
osBlue : Theme := nptXPBlue;
|
||||||
|
osMetallic : Theme := nptXPSilver;
|
||||||
|
osGreen : Theme := nptXPOlive;
|
||||||
|
else
|
||||||
|
Theme := nptStandard;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
procedure TdmBase.LeerConfiguracion;
|
||||||
|
begin
|
||||||
|
ROChannel.TargetURL := JvAppRegistryStorage.ReadString('ServerURL', SERVER_URL);
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TdmBase.OnTBXThemeChange(Sender: TObject);
|
||||||
|
begin
|
||||||
|
InitStyleManager;
|
||||||
|
|
||||||
|
if Assigned(FOnThemeChange) then
|
||||||
|
FOnThemeChange(Sender);
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TdmBase.SalvarConfiguracion;
|
||||||
|
begin
|
||||||
|
JvAppRegistryStorage.BeginUpdate;
|
||||||
|
try
|
||||||
|
JvAppRegistryStorage.WriteString('ServerURL', ROChannel.TargetURL);
|
||||||
|
finally
|
||||||
|
JvAppRegistryStorage.EndUpdate;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TdmBase.ROChannelFailure(Sender: TROTransportChannel;
|
||||||
|
anException: Exception; var Retry: Boolean);
|
||||||
|
begin
|
||||||
|
if (Pos(anException.Message, IE_OFFLINE_ERROR) > 0) then
|
||||||
|
begin
|
||||||
|
// Preguntar al usuario si se quiere conectar
|
||||||
|
if InternetGoOnline(PAnsiChar(ROChannel.TargetURL), GetDesktopWindow(), 0) then
|
||||||
|
Retry := True // Si el usuario pulsa en 'Conectar' reintentar la operación
|
||||||
|
else
|
||||||
|
Abort; // Si el usuario pulsa en 'Seguir desconectado' parar todo
|
||||||
|
end
|
||||||
|
else
|
||||||
|
Retry := True;
|
||||||
|
// raise Exception.Create(anException.Message);
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TdmBase.ROChannelProgress(iSender: TObject; iType: TProgressType;
|
||||||
|
iDirection: TProgressDirection; iTransferred, iTotal: Integer);
|
||||||
|
begin
|
||||||
|
{ if iType = ptInProgress then
|
||||||
|
begin
|
||||||
|
if not Form1.Visible then
|
||||||
|
Form1.Show;
|
||||||
|
end
|
||||||
|
else
|
||||||
|
Form1.Hide;}
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TdmBase.DarVersion: String;
|
||||||
|
var
|
||||||
|
Obj : TJclFileVersionInfo;
|
||||||
|
begin
|
||||||
|
Obj := TJclFileVersionInfo.Create(Application.ExeName);
|
||||||
|
try
|
||||||
|
Result := 'v' + Obj.FileVersion;
|
||||||
|
finally
|
||||||
|
FreeAndNil(Obj);
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TdmBase.HayConexion(const ATargetURL: String): Boolean;
|
||||||
|
var
|
||||||
|
AHTTPChannel: TROWinInetHTTPChannel;
|
||||||
|
AROBinMessage: TROBinMessage;
|
||||||
|
ACoService: TRORemoteService;
|
||||||
|
begin
|
||||||
|
AHTTPChannel := TROWinInetHTTPChannel.Create(Self);
|
||||||
|
AROBinMessage := TROBinMessage.Create(Self);
|
||||||
|
ACoService := TRORemoteService.Create(Self);
|
||||||
|
|
||||||
|
ShowHourglassCursor;
|
||||||
|
try
|
||||||
|
with AHTTPChannel do
|
||||||
|
begin
|
||||||
|
Name := 'HTTPChannel';
|
||||||
|
UserAgent := 'AdminPV';
|
||||||
|
if Length(ATargetURL) > 0 then
|
||||||
|
TargetURL := ATargetURL
|
||||||
|
else
|
||||||
|
TargetURL := ROChannel.TargetURL;
|
||||||
|
end;
|
||||||
|
|
||||||
|
with ACoService do
|
||||||
|
begin
|
||||||
|
ServiceName := 'srvLogin';
|
||||||
|
Message := AROBinMessage;
|
||||||
|
Channel := AHTTPChannel;
|
||||||
|
end;
|
||||||
|
|
||||||
|
try
|
||||||
|
(ACoService as IsrvLogin).Ping;
|
||||||
|
Result := True;
|
||||||
|
except
|
||||||
|
Result := False;
|
||||||
|
end;
|
||||||
|
finally
|
||||||
|
AHTTPChannel.Connected := False;
|
||||||
|
FreeAndNil(AHTTPChannel);
|
||||||
|
FreeAndNil(ACoService);
|
||||||
|
FreeAndNil(AROBinMessage);
|
||||||
|
HideHourglassCursor;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
initialization
|
||||||
|
dmBase := TdmBase.Create(NIL);
|
||||||
|
|
||||||
|
finalization
|
||||||
|
dmBase.Free;
|
||||||
|
|
||||||
|
end.
|
||||||
File diff suppressed because it is too large
Load Diff
@ -3,252 +3,48 @@ unit uDataModuleBase;
|
|||||||
interface
|
interface
|
||||||
|
|
||||||
uses
|
uses
|
||||||
Controls, PngImageList, JvComponent, JvNavigationPane, TBXSwitcher,
|
Classes;
|
||||||
TBXOffice2003Theme, Classes, ImgList, uROClient, uROBinMessage,
|
|
||||||
uROServiceComponent, uRORemoteService, uROWinInetHttpChannel,
|
|
||||||
DataAbstract3_Intf, uDADataTable, uDABINAdapter, cxintl, cxIntlPrintSys3,
|
|
||||||
JvAppStorage, JvAppRegistryStorage, SysUtils,
|
|
||||||
JvComponentBase, uDADataStreamer;
|
|
||||||
|
|
||||||
type
|
type
|
||||||
TdmBase = class(TDataModule)
|
TDataModuleBase = class(TDataModule)
|
||||||
ROChannel: TROWinInetHTTPChannel;
|
|
||||||
SmallImages: TPngImageList;
|
|
||||||
StyleManager: TJvNavPaneStyleManager;
|
|
||||||
TBXSwitcher: TTBXSwitcher;
|
|
||||||
cxIntl: TcxIntl;
|
|
||||||
cxIntlPrintSys3: TcxIntlPrintSys3;
|
|
||||||
ROMessage: TROBinMessage;
|
|
||||||
DABINAdapter: TDABINAdapter;
|
|
||||||
JvAppRegistryStorage: TJvAppRegistryStorage;
|
|
||||||
RORemoteService: TRORemoteService;
|
|
||||||
procedure DAClientDataModuleCreate(Sender: TObject);
|
|
||||||
procedure ROChannelFailure(Sender: TROTransportChannel;
|
|
||||||
anException: Exception; var Retry: Boolean);
|
|
||||||
procedure ROChannelProgress(iSender: TObject; iType: TProgressType;
|
|
||||||
iDirection: TProgressDirection; iTransferred, iTotal: Integer);
|
|
||||||
private
|
private
|
||||||
FOnThemeChange: TNotifyEvent;
|
FRefCount: Integer;
|
||||||
function GetAdapter: TDABINAdapter;
|
protected
|
||||||
function GetChannel: TROWinInetHTTPChannel;
|
function QueryInterface(const IID: TGUID; out Obj): HResult; override; stdcall;
|
||||||
function GetCodigoEmpresa: Integer;
|
function _AddRef: Integer; stdcall;
|
||||||
function GetMessage: TROBinMessage;
|
function _Release: Integer; stdcall;
|
||||||
procedure InitStyleManager;
|
|
||||||
procedure OnTBXThemeChange(Sender: TObject);
|
|
||||||
procedure LeerConfiguracion;
|
|
||||||
procedure SalvarConfiguracion;
|
|
||||||
public
|
public
|
||||||
function DarVersion : String;
|
property RefCount: integer read fRefCount write fRefCount;
|
||||||
procedure ConfigurarConexion;
|
|
||||||
function HayConexion(const ATargetURL : String = ''): Boolean;
|
|
||||||
property Adapter: TDABINAdapter read GetAdapter;
|
|
||||||
property Channel: TROWinInetHTTPChannel read GetChannel;
|
|
||||||
property CodigoEmpresa: Integer read GetCodigoEmpresa;
|
|
||||||
property Message: TROBinMessage read GetMessage;
|
|
||||||
property OnThemeChange: TNotifyEvent read FOnThemeChange write
|
|
||||||
FOnThemeChange;
|
|
||||||
end;
|
|
||||||
|
|
||||||
var
|
end;
|
||||||
dmBase: TdmBase;
|
|
||||||
|
|
||||||
implementation
|
implementation
|
||||||
|
|
||||||
|
|
||||||
{$R *.DFM}
|
{$R *.DFM}
|
||||||
|
|
||||||
uses
|
// Set an implicit refcount so that refcounting
|
||||||
Dialogs, TBX, TBXThemes, uConfigurarConexion, WinInet, Forms, Windows,
|
// during construction won't destroy the object.
|
||||||
JclFileUtils, VARELA_Intf, cxControls;
|
|
||||||
|
|
||||||
const
|
function TDataModuleBase.QueryInterface( const IID: TGUID; out Obj): HResult;
|
||||||
SERVER_URL = 'http://localhost:8099/bin';
|
|
||||||
IE_OFFLINE_ERROR = 'Unexpected error in WinInet HTTP Channel (2)';
|
|
||||||
|
|
||||||
{
|
|
||||||
*********************************** TdmBase ************************************
|
|
||||||
}
|
|
||||||
procedure TdmBase.ConfigurarConexion;
|
|
||||||
begin
|
begin
|
||||||
with TfConfigurarConexion.Create(NIL) do
|
if GetInterface(IID, Obj)
|
||||||
try
|
then Result := 0
|
||||||
TargetURL := ROChannel.TargetURL;
|
else Result := E_NOINTERFACE;
|
||||||
if ShowModal = mrOk then
|
|
||||||
begin
|
|
||||||
ROChannel.TargetURL := TargetURL;
|
|
||||||
ROChannel.Connected := False;
|
|
||||||
ROChannel.Connected := True;
|
|
||||||
SalvarConfiguracion;
|
|
||||||
end;
|
|
||||||
finally
|
|
||||||
Free;
|
|
||||||
end;
|
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TdmBase.DAClientDataModuleCreate(Sender: TObject);
|
function TDataModuleBase._AddRef: Integer;
|
||||||
begin
|
begin
|
||||||
TBXSwitcher.OnThemeChange := OnTBXThemeChange;
|
Inc(fRefCount);
|
||||||
TBXSetTheme('Office2003');
|
Result := fRefCount;
|
||||||
|
|
||||||
LeerConfiguracion;
|
|
||||||
end;
|
end;
|
||||||
|
|
||||||
function TdmBase.GetAdapter: TDABINAdapter;
|
function TDataModuleBase._Release: Integer;
|
||||||
begin
|
begin
|
||||||
Result := DABinAdapter;
|
Dec(fRefCount);
|
||||||
|
Result := fRefCount;
|
||||||
|
if fRefCount = 0 then Destroy;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
function TdmBase.GetChannel: TROWinInetHTTPChannel;
|
|
||||||
begin
|
|
||||||
Result := ROChannel;
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TdmBase.GetCodigoEmpresa: Integer;
|
|
||||||
begin
|
|
||||||
Result := 1;
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TdmBase.GetMessage: TROBinMessage;
|
|
||||||
begin
|
|
||||||
Result := ROMessage;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TdmBase.InitStyleManager;
|
|
||||||
begin
|
|
||||||
if not USE_THEMES then
|
|
||||||
begin
|
|
||||||
TBXSwitcher.EnableXPStyles := False;
|
|
||||||
StyleManager.Theme := nptStandard;
|
|
||||||
end
|
|
||||||
else begin
|
|
||||||
TBXSwitcher.EnableXPStyles := True;
|
|
||||||
with StyleManager do
|
|
||||||
begin
|
|
||||||
if CurrentTheme is TTBXOffice2003Theme then
|
|
||||||
begin
|
|
||||||
case GetOffice2003Scheme of
|
|
||||||
osBlue : Theme := nptXPBlue;
|
|
||||||
osMetallic : Theme := nptXPSilver;
|
|
||||||
osGreen : Theme := nptXPOlive;
|
|
||||||
else
|
|
||||||
Theme := nptStandard;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
|
|
||||||
procedure TdmBase.LeerConfiguracion;
|
|
||||||
begin
|
|
||||||
ROChannel.TargetURL := JvAppRegistryStorage.ReadString('ServerURL', SERVER_URL);
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TdmBase.OnTBXThemeChange(Sender: TObject);
|
|
||||||
begin
|
|
||||||
InitStyleManager;
|
|
||||||
|
|
||||||
if Assigned(FOnThemeChange) then
|
|
||||||
FOnThemeChange(Sender);
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TdmBase.SalvarConfiguracion;
|
|
||||||
begin
|
|
||||||
JvAppRegistryStorage.BeginUpdate;
|
|
||||||
try
|
|
||||||
JvAppRegistryStorage.WriteString('ServerURL', ROChannel.TargetURL);
|
|
||||||
finally
|
|
||||||
JvAppRegistryStorage.EndUpdate;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TdmBase.ROChannelFailure(Sender: TROTransportChannel;
|
|
||||||
anException: Exception; var Retry: Boolean);
|
|
||||||
begin
|
|
||||||
if (Pos(anException.Message, IE_OFFLINE_ERROR) > 0) then
|
|
||||||
begin
|
|
||||||
// Preguntar al usuario si se quiere conectar
|
|
||||||
if InternetGoOnline(PAnsiChar(ROChannel.TargetURL), GetDesktopWindow(), 0) then
|
|
||||||
Retry := True // Si el usuario pulsa en 'Conectar' reintentar la operación
|
|
||||||
else
|
|
||||||
Abort; // Si el usuario pulsa en 'Seguir desconectado' parar todo
|
|
||||||
end
|
|
||||||
else
|
|
||||||
Retry := True;
|
|
||||||
// raise Exception.Create(anException.Message);
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TdmBase.ROChannelProgress(iSender: TObject; iType: TProgressType;
|
|
||||||
iDirection: TProgressDirection; iTransferred, iTotal: Integer);
|
|
||||||
begin
|
|
||||||
{ if iType = ptInProgress then
|
|
||||||
begin
|
|
||||||
if not Form1.Visible then
|
|
||||||
Form1.Show;
|
|
||||||
end
|
|
||||||
else
|
|
||||||
Form1.Hide;}
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TdmBase.DarVersion: String;
|
|
||||||
var
|
|
||||||
Obj : TJclFileVersionInfo;
|
|
||||||
begin
|
|
||||||
Obj := TJclFileVersionInfo.Create(Application.ExeName);
|
|
||||||
try
|
|
||||||
Result := 'v' + Obj.FileVersion;
|
|
||||||
finally
|
|
||||||
FreeAndNil(Obj);
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TdmBase.HayConexion(const ATargetURL: String): Boolean;
|
|
||||||
var
|
|
||||||
AHTTPChannel: TROWinInetHTTPChannel;
|
|
||||||
AROBinMessage: TROBinMessage;
|
|
||||||
ACoService: TRORemoteService;
|
|
||||||
begin
|
|
||||||
AHTTPChannel := TROWinInetHTTPChannel.Create(Self);
|
|
||||||
AROBinMessage := TROBinMessage.Create(Self);
|
|
||||||
ACoService := TRORemoteService.Create(Self);
|
|
||||||
|
|
||||||
ShowHourglassCursor;
|
|
||||||
try
|
|
||||||
with AHTTPChannel do
|
|
||||||
begin
|
|
||||||
Name := 'HTTPChannel';
|
|
||||||
UserAgent := 'AdminPV';
|
|
||||||
if Length(ATargetURL) > 0 then
|
|
||||||
TargetURL := ATargetURL
|
|
||||||
else
|
|
||||||
TargetURL := ROChannel.TargetURL;
|
|
||||||
end;
|
|
||||||
|
|
||||||
with ACoService do
|
|
||||||
begin
|
|
||||||
ServiceName := 'srvLogin';
|
|
||||||
Message := AROBinMessage;
|
|
||||||
Channel := AHTTPChannel;
|
|
||||||
end;
|
|
||||||
|
|
||||||
try
|
|
||||||
(ACoService as IsrvLogin).Ping;
|
|
||||||
Result := True;
|
|
||||||
except
|
|
||||||
Result := False;
|
|
||||||
end;
|
|
||||||
finally
|
|
||||||
AHTTPChannel.Connected := False;
|
|
||||||
FreeAndNil(AHTTPChannel);
|
|
||||||
FreeAndNil(ACoService);
|
|
||||||
FreeAndNil(AROBinMessage);
|
|
||||||
HideHourglassCursor;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
initialization
|
|
||||||
dmBase := TdmBase.Create(NIL);
|
|
||||||
|
|
||||||
finalization
|
|
||||||
dmBase.Free;
|
|
||||||
|
|
||||||
end.
|
end.
|
||||||
|
|||||||
Binary file not shown.
Binary file not shown.
@ -13,7 +13,6 @@ inherited fEditorDBBase: TfEditorDBBase
|
|||||||
ExplicitWidth = 652
|
ExplicitWidth = 652
|
||||||
inherited Image1: TImage
|
inherited Image1: TImage
|
||||||
Left = 625
|
Left = 625
|
||||||
Picture.Data = {00}
|
|
||||||
ExplicitLeft = 625
|
ExplicitLeft = 625
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|||||||
@ -39,9 +39,6 @@ type
|
|||||||
published
|
published
|
||||||
end;
|
end;
|
||||||
|
|
||||||
var
|
|
||||||
fEditorDBBase: TfEditorDBBase;
|
|
||||||
|
|
||||||
implementation
|
implementation
|
||||||
|
|
||||||
uses
|
uses
|
||||||
@ -196,35 +193,11 @@ begin
|
|||||||
end;
|
end;
|
||||||
|
|
||||||
function TfEditorDBBase.GetModified: Boolean;
|
function TfEditorDBBase.GetModified: Boolean;
|
||||||
var
|
|
||||||
dtDetails : TList;
|
|
||||||
i : integer;
|
|
||||||
bCambiado : Boolean;
|
|
||||||
begin
|
begin
|
||||||
bCambiado := False;
|
if ReadOnly then
|
||||||
if Assigned(dsDataTable.DataTable) then
|
Result := False
|
||||||
begin
|
else
|
||||||
bCambiado := (dsDataTable.DataTable.State = dsEdit) or
|
Result := DataTableModified(dsDataTable.DataTable) or inherited GetModified;
|
||||||
DeltaValuesAreDifferent(dsDataTable.DataTable.Delta);
|
|
||||||
|
|
||||||
if (not bCambiado) then
|
|
||||||
begin
|
|
||||||
dtDetails := dsDataTable.DataTable.GetDetailDataTables;
|
|
||||||
for i := 0 to dtDetails.Count - 1 do
|
|
||||||
begin
|
|
||||||
bCambiado := bCambiado or
|
|
||||||
((TDADataTable(dtDetails.Items[i])).State = dsEdit) or
|
|
||||||
DeltaValuesAreDifferent((TDADataTable(dtDetails.Items[i])).Delta);
|
|
||||||
if bCambiado then
|
|
||||||
Break;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
if (not bCambiado) then
|
|
||||||
bCambiado := inherited GetModified;
|
|
||||||
|
|
||||||
Result := bCambiado;
|
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TfEditorDBBase.FormCloseQuery(Sender: TObject;
|
procedure TfEditorDBBase.FormCloseQuery(Sender: TObject;
|
||||||
|
|||||||
Binary file not shown.
Binary file not shown.
@ -1,38 +1,50 @@
|
|||||||
inherited fEditorItem: TfEditorItem
|
inherited fEditorItem: TfEditorItem
|
||||||
Left = 423
|
Left = 423
|
||||||
Top = 273
|
Top = 273
|
||||||
Width = 686
|
|
||||||
Height = 535
|
|
||||||
Caption = 'fEditorItem'
|
Caption = 'fEditorItem'
|
||||||
|
ClientHeight = 508
|
||||||
|
ClientWidth = 678
|
||||||
|
ExplicitWidth = 686
|
||||||
|
ExplicitHeight = 535
|
||||||
PixelsPerInch = 96
|
PixelsPerInch = 96
|
||||||
TextHeight = 13
|
TextHeight = 13
|
||||||
inherited JvNavPanelHeader: TJvNavPanelHeader
|
inherited JvNavPanelHeader: TJvNavPanelHeader
|
||||||
Width = 678
|
Width = 678
|
||||||
Visible = False
|
Visible = False
|
||||||
|
ExplicitWidth = 678
|
||||||
inherited Image1: TImage
|
inherited Image1: TImage
|
||||||
Left = 651
|
Left = 651
|
||||||
|
ExplicitLeft = 651
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
object pgPaginas: TPageControl [1]
|
object pgPaginas: TPageControl [1]
|
||||||
Left = 0
|
Left = 0
|
||||||
Top = 76
|
Top = 76
|
||||||
Width = 678
|
Width = 678
|
||||||
Height = 406
|
Height = 413
|
||||||
ActivePage = pagGeneral
|
ActivePage = pagGeneral
|
||||||
Align = alClient
|
Align = alClient
|
||||||
TabOrder = 1
|
TabOrder = 1
|
||||||
|
ExplicitHeight = 406
|
||||||
object pagGeneral: TTabSheet
|
object pagGeneral: TTabSheet
|
||||||
Caption = 'General'
|
Caption = 'General'
|
||||||
|
ExplicitLeft = 0
|
||||||
|
ExplicitTop = 0
|
||||||
|
ExplicitWidth = 0
|
||||||
|
ExplicitHeight = 0
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
inherited TBXDock: TTBXDock
|
inherited TBXDock: TTBXDock
|
||||||
Width = 678
|
Width = 678
|
||||||
|
ExplicitWidth = 678
|
||||||
inherited tbxMain: TTBXToolbar
|
inherited tbxMain: TTBXToolbar
|
||||||
|
ExplicitWidth = 524
|
||||||
inherited TBXItem5: TTBXItem
|
inherited TBXItem5: TTBXItem
|
||||||
Visible = False
|
Visible = False
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
inherited tbxMenu: TTBXToolbar
|
inherited tbxMenu: TTBXToolbar
|
||||||
|
ExplicitWidth = 678
|
||||||
inherited TBXSubmenuItem4: TTBXSubmenuItem
|
inherited TBXSubmenuItem4: TTBXSubmenuItem
|
||||||
inherited TBXItem10: TTBXItem
|
inherited TBXItem10: TTBXItem
|
||||||
Visible = False
|
Visible = False
|
||||||
@ -41,8 +53,10 @@ inherited fEditorItem: TfEditorItem
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
inherited StatusBar: TStatusBar
|
inherited StatusBar: TStatusBar
|
||||||
Top = 482
|
Top = 489
|
||||||
Width = 678
|
Width = 678
|
||||||
|
ExplicitTop = 482
|
||||||
|
ExplicitWidth = 678
|
||||||
end
|
end
|
||||||
inherited EditorActionList: TActionList
|
inherited EditorActionList: TActionList
|
||||||
Top = 104
|
Top = 104
|
||||||
|
|||||||
@ -26,7 +26,7 @@ var
|
|||||||
|
|
||||||
implementation
|
implementation
|
||||||
|
|
||||||
uses uDataModuleBase;
|
uses uDMBase;
|
||||||
|
|
||||||
{$R *.dfm}
|
{$R *.dfm}
|
||||||
|
|
||||||
|
|||||||
Binary file not shown.
@ -6,7 +6,7 @@
|
|||||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||||
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
||||||
<DCC_EnabledPackages>true</DCC_EnabledPackages>
|
<DCC_EnabledPackages>true</DCC_EnabledPackages>
|
||||||
<DCC_UsePackage>BaseD10;Configuracion;FicherosEDI</DCC_UsePackage>
|
<DCC_UsePackage>BaseD10;FicherosEDI</DCC_UsePackage>
|
||||||
<DCC_DCCCompiler>DCC32</DCC_DCCCompiler>
|
<DCC_DCCCompiler>DCC32</DCC_DCCCompiler>
|
||||||
<DCC_DependencyCheckOutputName>..\..\Output\Debug\Cliente\CargaEDI.exe</DCC_DependencyCheckOutputName>
|
<DCC_DependencyCheckOutputName>..\..\Output\Debug\Cliente\CargaEDI.exe</DCC_DependencyCheckOutputName>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
@ -50,9 +50,11 @@
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<Excluded_Packages Name="$(BDS)\bin\dclwebsnap100.bpl">CodeGear WebSnap Components</Excluded_Packages>
|
<Excluded_Packages Name="$(BDS)\bin\dclwebsnap100.bpl">CodeGear WebSnap Components</Excluded_Packages>
|
||||||
<Excluded_Packages Name="$(BDS)\bin\dclsoap100.bpl">CodeGear SOAP Components</Excluded_Packages>
|
<Excluded_Packages Name="$(BDS)\bin\dclsoap100.bpl">CodeGear SOAP Components</Excluded_Packages>
|
||||||
<Excluded_Packages Name="$(BDS)\bin\dclofficexp100.bpl">Microsoft Office XP Sample Automation Server Wrapper Components</Excluded_Packages>
|
<Excluded_Packages Name="$(BDS)\bin\dclofficexp100.bpl">Microsoft Office XP Sample Automation Server Wrapper Components</Excluded_Packages>
|
||||||
|
<Excluded_Packages Name="$(BDS)\Bin\dclintraweb_90_100.bpl">VCL for the Web Design Package for CodeGear RAD Studio</Excluded_Packages>
|
||||||
<Excluded_Packages Name="$(BDS)\bin\dcloffice2k100.bpl">Microsoft Office 2000 Sample Automation Server Wrapper Components</Excluded_Packages>
|
<Excluded_Packages Name="$(BDS)\bin\dcloffice2k100.bpl">Microsoft Office 2000 Sample Automation Server Wrapper Components</Excluded_Packages>
|
||||||
<Excluded_Packages Name="$(BDS)\bin\bcboffice2k100.bpl">CodeGear C++Builder Office 2000 Servers Package</Excluded_Packages>
|
<Excluded_Packages Name="$(BDS)\bin\bcboffice2k100.bpl">CodeGear C++Builder Office 2000 Servers Package</Excluded_Packages>
|
||||||
<Excluded_Packages Name="$(BDS)\bin\bcbofficexp100.bpl">CodeGear C++Builder Office XP Servers Package</Excluded_Packages>
|
<Excluded_Packages Name="$(BDS)\bin\bcbofficexp100.bpl">CodeGear C++Builder Office XP Servers Package</Excluded_Packages>
|
||||||
|
|||||||
@ -15,4 +15,4 @@ END
|
|||||||
/* C:\Archivos de programa\CodeGear\RAD Studio\5.0\Lib\WindowsXP.res */
|
/* C:\Archivos de programa\CodeGear\RAD Studio\5.0\Lib\WindowsXP.res */
|
||||||
/* C:\Varela_D2007\Source\CargaEDI\uCargaEDI.dfm */
|
/* C:\Varela_D2007\Source\CargaEDI\uCargaEDI.dfm */
|
||||||
/* C:\Varela_D2007\Source\CargaEDI\CargaEDI.res */
|
/* C:\Varela_D2007\Source\CargaEDI\CargaEDI.res */
|
||||||
/* C:\DOCUME~1\Usuario\CONFIG~1\Temp\dtf26.tmp */
|
/* C:\DOCUME~1\Usuario\CONFIG~1\Temp\dtf3B.tmp */
|
||||||
|
|||||||
Binary file not shown.
Binary file not shown.
@ -47,7 +47,7 @@ implementation
|
|||||||
{$R *.dfm}
|
{$R *.dfm}
|
||||||
|
|
||||||
uses
|
uses
|
||||||
uCargarFicheros, uDataModuleBase;
|
uCargarFicheros, uDMBase;
|
||||||
|
|
||||||
procedure TfCargaEDI.FormShow(Sender: TObject);
|
procedure TfCargaEDI.FormShow(Sender: TObject);
|
||||||
begin
|
begin
|
||||||
|
|||||||
@ -2,22 +2,26 @@ program AdminPV;
|
|||||||
|
|
||||||
uses
|
uses
|
||||||
Forms,
|
Forms,
|
||||||
uLoginForm,
|
|
||||||
uPantallaPrincipal in 'uPantallaPrincipal.pas' {fPantallaPrincipal},
|
uPantallaPrincipal in 'uPantallaPrincipal.pas' {fPantallaPrincipal},
|
||||||
uMenuUtils in 'uMenuUtils.pas',
|
uSplash in 'uSplash.pas' {AppSplashForm},
|
||||||
uSplash in 'uSplash.pas' {SplashScreen},
|
|
||||||
uAcercaDe in 'uAcercaDe.pas' {fAcercaDe},
|
uAcercaDe in 'uAcercaDe.pas' {fAcercaDe},
|
||||||
uIntegerList in '..\Base\uIntegerList.pas';
|
uMenuUtils in 'Utiles\uMenuUtils.pas',
|
||||||
|
uBootStrap in 'uBootStrap.pas',
|
||||||
|
uNavPaneUtils in 'Utiles\uNavPaneUtils.pas',
|
||||||
|
uMainMenuController in 'uMainMenuController.pas',
|
||||||
|
uNavPaneController in 'uNavPaneController.pas',
|
||||||
|
uClienteUtils in 'Utiles\uClienteUtils.pas';
|
||||||
|
|
||||||
{$R *.res}
|
{$R *.res}
|
||||||
|
|
||||||
begin
|
begin
|
||||||
Application.Initialize;
|
Application.Initialize;
|
||||||
|
|
||||||
Application.Title := 'Administración de puntos de venta';
|
Application.Title := 'Administración de puntos de venta';
|
||||||
Application.CreateForm(TfPantallaPrincipal, fPantallaPrincipal);
|
|
||||||
Application.MainFormOnTaskBar := True;
|
uBootStrap.Initialize;
|
||||||
Application.Run;
|
uBootStrap.Run; // <- Aquí dentro esta Application.Run
|
||||||
Application.Terminate;
|
uBootStrap.Terminate;
|
||||||
|
|
||||||
|
Application.Terminate; //<- No descomentar para así ver los Memory Leaks
|
||||||
end.
|
end.
|
||||||
|
|
||||||
|
|||||||
@ -8,7 +8,7 @@
|
|||||||
<DCC_DCCCompiler>DCC32</DCC_DCCCompiler>
|
<DCC_DCCCompiler>DCC32</DCC_DCCCompiler>
|
||||||
<DCC_DependencyCheckOutputName>..\..\Output\Debug\Cliente\AdminPV.exe</DCC_DependencyCheckOutputName>
|
<DCC_DependencyCheckOutputName>..\..\Output\Debug\Cliente\AdminPV.exe</DCC_DependencyCheckOutputName>
|
||||||
<DCC_EnabledPackages>true</DCC_EnabledPackages>
|
<DCC_EnabledPackages>true</DCC_EnabledPackages>
|
||||||
<DCC_UsePackage>BaseD10;Configuracion;ControlesBaseD10;Usuarios;FicherosEDI;VentasProceso;VentasTerminadas;ReferenciaGenerica</DCC_UsePackage>
|
<DCC_UsePackage>BaseD10;ControlesBaseD10;Parametros;ApplicationBase;FicherosEDI</DCC_UsePackage>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||||
<Version>7.0</Version>
|
<Version>7.0</Version>
|
||||||
@ -42,10 +42,11 @@
|
|||||||
<Borland.Personality>Delphi.Personality</Borland.Personality>
|
<Borland.Personality>Delphi.Personality</Borland.Personality>
|
||||||
<Borland.ProjectType>VCLApplication</Borland.ProjectType>
|
<Borland.ProjectType>VCLApplication</Borland.ProjectType>
|
||||||
<BorlandProject>
|
<BorlandProject>
|
||||||
<BorlandProject><Delphi.Personality><Parameters><Parameters Name="UseLauncher">False</Parameters><Parameters Name="LoadAllSymbols">True</Parameters><Parameters Name="LoadUnspecifiedSymbols">False</Parameters></Parameters><VersionInfo><VersionInfo Name="IncludeVerInfo">True</VersionInfo><VersionInfo Name="AutoIncBuild">False</VersionInfo><VersionInfo Name="MajorVer">2</VersionInfo><VersionInfo Name="MinorVer">1</VersionInfo><VersionInfo Name="Release">1</VersionInfo><VersionInfo Name="Build">0</VersionInfo><VersionInfo Name="Debug">False</VersionInfo><VersionInfo Name="PreRelease">False</VersionInfo><VersionInfo Name="Special">False</VersionInfo><VersionInfo Name="Private">False</VersionInfo><VersionInfo Name="DLL">False</VersionInfo><VersionInfo Name="Locale">3082</VersionInfo><VersionInfo Name="CodePage">1252</VersionInfo></VersionInfo><VersionInfoKeys><VersionInfoKeys Name="CompanyName">Rodax Software S.L.</VersionInfoKeys><VersionInfoKeys Name="FileDescription"></VersionInfoKeys><VersionInfoKeys Name="FileVersion">2.1.1.0</VersionInfoKeys><VersionInfoKeys Name="InternalName">Administración de puntos de venta</VersionInfoKeys><VersionInfoKeys Name="LegalCopyright"></VersionInfoKeys><VersionInfoKeys Name="LegalTrademarks"></VersionInfoKeys><VersionInfoKeys Name="OriginalFilename"></VersionInfoKeys><VersionInfoKeys Name="ProductName">Administración de puntos de venta</VersionInfoKeys><VersionInfoKeys Name="ProductVersion">1.0.0.0</VersionInfoKeys><VersionInfoKeys Name="Comments"></VersionInfoKeys><VersionInfoKeys Name="CompileDate">martes, 11 de marzo de 2008 18:44</VersionInfoKeys></VersionInfoKeys><Excluded_Packages>
|
<BorlandProject><Delphi.Personality><Parameters><Parameters Name="UseLauncher">False</Parameters><Parameters Name="LoadAllSymbols">True</Parameters><Parameters Name="LoadUnspecifiedSymbols">False</Parameters></Parameters><VersionInfo><VersionInfo Name="IncludeVerInfo">True</VersionInfo><VersionInfo Name="AutoIncBuild">False</VersionInfo><VersionInfo Name="MajorVer">2</VersionInfo><VersionInfo Name="MinorVer">1</VersionInfo><VersionInfo Name="Release">1</VersionInfo><VersionInfo Name="Build">0</VersionInfo><VersionInfo Name="Debug">False</VersionInfo><VersionInfo Name="PreRelease">False</VersionInfo><VersionInfo Name="Special">False</VersionInfo><VersionInfo Name="Private">False</VersionInfo><VersionInfo Name="DLL">False</VersionInfo><VersionInfo Name="Locale">3082</VersionInfo><VersionInfo Name="CodePage">1252</VersionInfo></VersionInfo><VersionInfoKeys><VersionInfoKeys Name="CompanyName">Rodax Software S.L.</VersionInfoKeys><VersionInfoKeys Name="FileDescription"></VersionInfoKeys><VersionInfoKeys Name="FileVersion">2.1.1.0</VersionInfoKeys><VersionInfoKeys Name="InternalName">Administración de puntos de venta</VersionInfoKeys><VersionInfoKeys Name="LegalCopyright"></VersionInfoKeys><VersionInfoKeys Name="LegalTrademarks"></VersionInfoKeys><VersionInfoKeys Name="OriginalFilename"></VersionInfoKeys><VersionInfoKeys Name="ProductName">Administración de puntos de venta</VersionInfoKeys><VersionInfoKeys Name="ProductVersion">1.0.0.0</VersionInfoKeys><VersionInfoKeys Name="Comments"></VersionInfoKeys><VersionInfoKeys Name="CompileDate">miércoles, 12 de marzo de 2008 12:35</VersionInfoKeys></VersionInfoKeys><Excluded_Packages>
|
||||||
<Excluded_Packages Name="$(BDS)\bin\dclwebsnap100.bpl">CodeGear WebSnap Components</Excluded_Packages>
|
<Excluded_Packages Name="$(BDS)\bin\dclwebsnap100.bpl">CodeGear WebSnap Components</Excluded_Packages>
|
||||||
<Excluded_Packages Name="$(BDS)\bin\dclsoap100.bpl">CodeGear SOAP Components</Excluded_Packages>
|
<Excluded_Packages Name="$(BDS)\bin\dclsoap100.bpl">CodeGear SOAP Components</Excluded_Packages>
|
||||||
<Excluded_Packages Name="$(BDS)\bin\dclofficexp100.bpl">Microsoft Office XP Sample Automation Server Wrapper Components</Excluded_Packages>
|
<Excluded_Packages Name="$(BDS)\bin\dclofficexp100.bpl">Microsoft Office XP Sample Automation Server Wrapper Components</Excluded_Packages>
|
||||||
|
<Excluded_Packages Name="$(BDS)\Bin\dclintraweb_90_100.bpl">VCL for the Web Design Package for CodeGear RAD Studio</Excluded_Packages>
|
||||||
<Excluded_Packages Name="$(BDS)\bin\dcloffice2k100.bpl">Microsoft Office 2000 Sample Automation Server Wrapper Components</Excluded_Packages>
|
<Excluded_Packages Name="$(BDS)\bin\dcloffice2k100.bpl">Microsoft Office 2000 Sample Automation Server Wrapper Components</Excluded_Packages>
|
||||||
<Excluded_Packages Name="$(BDS)\bin\bcboffice2k100.bpl">CodeGear C++Builder Office 2000 Servers Package</Excluded_Packages>
|
<Excluded_Packages Name="$(BDS)\bin\bcboffice2k100.bpl">CodeGear C++Builder Office 2000 Servers Package</Excluded_Packages>
|
||||||
<Excluded_Packages Name="$(BDS)\bin\bcbofficexp100.bpl">CodeGear C++Builder Office XP Servers Package</Excluded_Packages>
|
<Excluded_Packages Name="$(BDS)\bin\bcbofficexp100.bpl">CodeGear C++Builder Office XP Servers Package</Excluded_Packages>
|
||||||
@ -56,17 +57,21 @@
|
|||||||
<DelphiCompile Include="AdminPV.dpr">
|
<DelphiCompile Include="AdminPV.dpr">
|
||||||
<MainSource>MainSource</MainSource>
|
<MainSource>MainSource</MainSource>
|
||||||
</DelphiCompile>
|
</DelphiCompile>
|
||||||
<DCCReference Include="..\Base\uIntegerList.pas"/>
|
|
||||||
<DCCReference Include="uAcercaDe.pas">
|
<DCCReference Include="uAcercaDe.pas">
|
||||||
<Form>fAcercaDe</Form>
|
<Form>fAcercaDe</Form>
|
||||||
</DCCReference>
|
</DCCReference>
|
||||||
<DCCReference Include="uMenuUtils.pas"/>
|
<DCCReference Include="uBootStrap.pas"/>
|
||||||
|
<DCCReference Include="uMainMenuController.pas"/>
|
||||||
|
<DCCReference Include="uNavPaneController.pas"/>
|
||||||
<DCCReference Include="uPantallaPrincipal.pas">
|
<DCCReference Include="uPantallaPrincipal.pas">
|
||||||
<Form>fPantallaPrincipal</Form>
|
<Form>fPantallaPrincipal</Form>
|
||||||
</DCCReference>
|
</DCCReference>
|
||||||
<DCCReference Include="uSplash.pas">
|
<DCCReference Include="uSplash.pas">
|
||||||
<Form>SplashScreen</Form>
|
<Form>AppSplashForm</Form>
|
||||||
</DCCReference>
|
</DCCReference>
|
||||||
|
<DCCReference Include="Utiles\uClienteUtils.pas"/>
|
||||||
|
<DCCReference Include="Utiles\uMenuUtils.pas"/>
|
||||||
|
<DCCReference Include="Utiles\uNavPaneUtils.pas"/>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
</Project>
|
</Project>
|
||||||
<!-- EurekaLog First Line
|
<!-- EurekaLog First Line
|
||||||
|
|||||||
@ -12,11 +12,10 @@ STRINGTABLE
|
|||||||
BEGIN
|
BEGIN
|
||||||
END
|
END
|
||||||
|
|
||||||
/* C:\Archivos de programa\CodeGear\RAD Studio\5.0\Lib\WindowsXP.res */
|
/* c:\archivos de programa\codegear\rad studio\5.0\Lib\WindowsXP.res */
|
||||||
/* C:\Varela_D2007\Lib\JVCL\JvXPCore.res */
|
/* C:\Varela_D2007\Lib\JVCL\JvXPCore.res */
|
||||||
/* C:\Varela_D2007\Lib\JVCL\JvXPBar.res */
|
/* uSplash.dfm */
|
||||||
/* C:\Varela_D2007\Source\Cliente\uSplash.dfm */
|
/* uAcercaDe.dfm */
|
||||||
/* C:\Varela_D2007\Source\Cliente\uAcercaDe.dfm */
|
|
||||||
/* C:\Varela_D2007\Source\Cliente\uPantallaPrincipal.dfm */
|
/* C:\Varela_D2007\Source\Cliente\uPantallaPrincipal.dfm */
|
||||||
/* C:\Varela_D2007\Source\Cliente\AdminPV.res */
|
/* C:\Varela_D2007\Source\Cliente\AdminPV.res */
|
||||||
/* C:\DOCUME~1\Usuario\CONFIG~1\Temp\dtf24.tmp */
|
/* C:\Varela_D2007\Source\Cliente\AdminPV.drf */
|
||||||
|
|||||||
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user